@lucca-front/ng 22.0.5 → 22.0.6-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. package/README.md +6 -0
  2. package/fesm2022/lucca-front-ng-approbation-inbox.mjs +5 -4
  3. package/fesm2022/lucca-front-ng-approbation-inbox.mjs.map +1 -1
  4. package/fesm2022/lucca-front-ng-dialog.mjs +22 -15
  5. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  6. package/fesm2022/lucca-front-ng-filter-pills.mjs +4 -4
  7. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  8. package/fesm2022/lucca-front-ng-scroll.mjs +2 -3
  9. package/fesm2022/lucca-front-ng-scroll.mjs.map +1 -1
  10. package/llms/SKILL.md +248 -0
  11. package/llms/references/components/activity-feed/activity-feed.component.md +292 -0
  12. package/llms/references/components/activity-feed/activity-feed.md +90 -0
  13. package/llms/references/components/animations/animations.component.md +11 -0
  14. package/llms/references/components/animations/animations.md +7 -0
  15. package/llms/references/components/api-select/api-select.md +40 -0
  16. package/llms/references/components/app-layout/app-layout.component.md +65 -0
  17. package/llms/references/components/app-layout/app-layout.md +81 -0
  18. package/llms/references/components/approbation-inbox/approbation-inbox.component.md +960 -0
  19. package/llms/references/components/approbation-inbox/approbation-inbox.md +135 -0
  20. package/llms/references/components/avatar/avatar.component.md +563 -0
  21. package/llms/references/components/avatar/avatar.md +93 -0
  22. package/llms/references/components/box/box.component.md +119 -0
  23. package/llms/references/components/box/box.md +88 -0
  24. package/llms/references/components/breadcrumbs/breadcrumbs.component.md +59 -0
  25. package/llms/references/components/breadcrumbs/breadcrumbs.md +87 -0
  26. package/llms/references/components/bubble-icon/bubble-icon.component.md +56 -0
  27. package/llms/references/components/bubble-icon/bubble-icon.md +72 -0
  28. package/llms/references/components/bubble-illustration/bubble-illustration.component.md +54 -0
  29. package/llms/references/components/bubble-illustration/bubble-illustration.md +77 -0
  30. package/llms/references/components/button/button.component.md +252 -0
  31. package/llms/references/components/button/button.md +124 -0
  32. package/llms/references/components/calendar/calendar.component.md +708 -0
  33. package/llms/references/components/calendar/calendar.md +104 -0
  34. package/llms/references/components/calendar2/calendar2.md +64 -0
  35. package/llms/references/components/callout/callout.component.md +237 -0
  36. package/llms/references/components/callout/callout.md +243 -0
  37. package/llms/references/components/callout-disclosure/callout-disclosure.component.md +230 -0
  38. package/llms/references/components/callout-disclosure/callout-disclosure.md +196 -0
  39. package/llms/references/components/callout-popover/callout-popover.component.md +170 -0
  40. package/llms/references/components/callout-popover/callout-popover.md +201 -0
  41. package/llms/references/components/card/card.component.md +62 -0
  42. package/llms/references/components/card/card.md +8 -0
  43. package/llms/references/components/checkbox/checkbox.component.md +50 -0
  44. package/llms/references/components/checkbox/checkbox.md +74 -0
  45. package/llms/references/components/chip/chip.component.md +131 -0
  46. package/llms/references/components/chip/chip.md +95 -0
  47. package/llms/references/components/clear/clear.component.md +38 -0
  48. package/llms/references/components/clear/clear.md +79 -0
  49. package/llms/references/components/code/code.component.md +33 -0
  50. package/llms/references/components/code/code.md +47 -0
  51. package/llms/references/components/color/color.md +32 -0
  52. package/llms/references/components/color-input/color-input.md +33 -0
  53. package/llms/references/components/color-picker/color-picker.component.md +29 -0
  54. package/llms/references/components/color-picker/color-picker.md +25 -0
  55. package/llms/references/components/comment/comment.component.md +436 -0
  56. package/llms/references/components/comment/comment.md +125 -0
  57. package/llms/references/components/container/container.component.md +41 -0
  58. package/llms/references/components/container/container.md +74 -0
  59. package/llms/references/components/core-select-department/core-select-department.md +37 -0
  60. package/llms/references/components/core-select-establishment/core-select-establishment.md +40 -0
  61. package/llms/references/components/core-select-job-qualification/core-select-job-qualification.md +25 -0
  62. package/llms/references/components/core-select-occupation-category/core-select-occupation-category.md +25 -0
  63. package/llms/references/components/core-select-user/core-select-user.md +75 -0
  64. package/llms/references/components/data-presentation/data-presentation.component.md +47 -0
  65. package/llms/references/components/data-presentation/data-presentation.md +49 -0
  66. package/llms/references/components/data-table/data-table.component.md +1603 -0
  67. package/llms/references/components/data-table/data-table.md +290 -0
  68. package/llms/references/components/date/date.component.md +31 -0
  69. package/llms/references/components/date/date.md +140 -0
  70. package/llms/references/components/dateinput/dateinput.component.md +99 -0
  71. package/llms/references/components/dateinput/dateinput.md +198 -0
  72. package/llms/references/components/daterangeinput/daterangeinput.component.md +49 -0
  73. package/llms/references/components/daterangeinput/daterangeinput.md +186 -0
  74. package/llms/references/components/departmentselect/departmentselect.component.md +43 -0
  75. package/llms/references/components/departmentselect/departmentselect.md +43 -0
  76. package/llms/references/components/dialog/dialog.component.md +462 -0
  77. package/llms/references/components/dialog/dialog.md +335 -0
  78. package/llms/references/components/divider/divider.component.md +35 -0
  79. package/llms/references/components/divider/divider.md +88 -0
  80. package/llms/references/components/dropdown/dropdown.component.md +272 -0
  81. package/llms/references/components/dropdown/dropdown.md +172 -0
  82. package/llms/references/components/duration-picker/duration-picker.md +155 -0
  83. package/llms/references/components/empty-state/empty-state.component.md +226 -0
  84. package/llms/references/components/empty-state/empty-state.md +62 -0
  85. package/llms/references/components/errorpage/errorpage.component.md +57 -0
  86. package/llms/references/components/errorpage/errorpage.md +75 -0
  87. package/llms/references/components/establishmentselect/establishmentselect.component.md +30 -0
  88. package/llms/references/components/establishmentselect/establishmentselect.md +42 -0
  89. package/llms/references/components/fancy-dialog/fancy-dialog.component.md +9 -0
  90. package/llms/references/components/fancy-dialog/fancy-dialog.md +107 -0
  91. package/llms/references/components/fancybox/fancybox.component.md +48 -0
  92. package/llms/references/components/fancybox/fancybox.md +75 -0
  93. package/llms/references/components/fieldset/fieldset.component.md +86 -0
  94. package/llms/references/components/fieldset/fieldset.md +119 -0
  95. package/llms/references/components/filedropzone/filedropzone.component.md +16 -0
  96. package/llms/references/components/filedropzone/filedropzone.md +61 -0
  97. package/llms/references/components/fileentry/fileentry.component.md +58 -0
  98. package/llms/references/components/fileentry/fileentry.md +246 -0
  99. package/llms/references/components/fileupload/fileupload.component.md +91 -0
  100. package/llms/references/components/fileupload/fileupload.md +246 -0
  101. package/llms/references/components/filterbar/filterbar.component.md +302 -0
  102. package/llms/references/components/filterbar/filterbar.md +134 -0
  103. package/llms/references/components/filterpills/filterpills.component.md +60 -0
  104. package/llms/references/components/filterpills/filterpills.md +180 -0
  105. package/llms/references/components/footer/footer.component.md +66 -0
  106. package/llms/references/components/footer/footer.md +115 -0
  107. package/llms/references/components/form/form.md +37 -0
  108. package/llms/references/components/form-field/form-field.component.md +46 -0
  109. package/llms/references/components/form-field/form-field.md +231 -0
  110. package/llms/references/components/form-header/form-header.md +29 -0
  111. package/llms/references/components/form-label/form-label.component.md +106 -0
  112. package/llms/references/components/form-label/form-label.md +98 -0
  113. package/llms/references/components/gauge/gauge.component.md +55 -0
  114. package/llms/references/components/gauge/gauge.md +73 -0
  115. package/llms/references/components/grid/grid.component.md +15 -0
  116. package/llms/references/components/grid/grid.md +112 -0
  117. package/llms/references/components/highlight-data/highlight-data.component.md +279 -0
  118. package/llms/references/components/highlight-data/highlight-data.md +115 -0
  119. package/llms/references/components/highlight-section/highlight-section.component.md +185 -0
  120. package/llms/references/components/highlight-section/highlight-section.md +48 -0
  121. package/llms/references/components/highlight-text/highlight-text.component.md +49 -0
  122. package/llms/references/components/highlight-text/highlight-text.md +29 -0
  123. package/llms/references/components/horizontalnavigation/horizontalnavigation.component.md +232 -0
  124. package/llms/references/components/horizontalnavigation/horizontalnavigation.md +95 -0
  125. package/llms/references/components/icons/icons.component.md +59 -0
  126. package/llms/references/components/icons/icons.md +185 -0
  127. package/llms/references/components/impersonation/impersonation.component.md +52 -0
  128. package/llms/references/components/impersonation/impersonation.md +52 -0
  129. package/llms/references/components/index-table/index-table.component.md +2528 -0
  130. package/llms/references/components/index-table/index-table.md +243 -0
  131. package/llms/references/components/inlinemessage/inlinemessage.component.md +58 -0
  132. package/llms/references/components/inlinemessage/inlinemessage.md +57 -0
  133. package/llms/references/components/input-framed/input-framed.component.md +714 -0
  134. package/llms/references/components/input-framed/input-framed.md +50 -0
  135. package/llms/references/components/link/link.component.md +153 -0
  136. package/llms/references/components/link/link.md +124 -0
  137. package/llms/references/components/listbox/listbox.component.md +11 -0
  138. package/llms/references/components/listbox/listbox.md +101 -0
  139. package/llms/references/components/listing/listing.component.md +366 -0
  140. package/llms/references/components/listing/listing.md +105 -0
  141. package/llms/references/components/loading/loading.component.md +37 -0
  142. package/llms/references/components/loading/loading.md +91 -0
  143. package/llms/references/components/main-layout/main-layout.component.md +146 -0
  144. package/llms/references/components/main-layout/main-layout.md +78 -0
  145. package/llms/references/components/mobile-push/mobile-push.component.md +62 -0
  146. package/llms/references/components/mobile-push/mobile-push.md +70 -0
  147. package/llms/references/components/mobileheader/mobileheader.component.md +31 -0
  148. package/llms/references/components/mobileheader/mobileheader.md +8 -0
  149. package/llms/references/components/mobilenavigation/mobilenavigation.component.md +43 -0
  150. package/llms/references/components/mobilenavigation/mobilenavigation.md +8 -0
  151. package/llms/references/components/modal/modal.component.md +37 -0
  152. package/llms/references/components/modal/modal.md +61 -0
  153. package/llms/references/components/multi-select/multi-select.component.md +39 -0
  154. package/llms/references/components/multi-select/multi-select.md +426 -0
  155. package/llms/references/components/multilanguagefield/multilanguagefield.component.md +84 -0
  156. package/llms/references/components/multilanguagefield/multilanguagefield.md +362 -0
  157. package/llms/references/components/newbadge/newbadge.component.md +23 -0
  158. package/llms/references/components/newbadge/newbadge.md +38 -0
  159. package/llms/references/components/number-format-input/number-format-input.md +46 -0
  160. package/llms/references/components/number-input/number-input.md +49 -0
  161. package/llms/references/components/numbers/numbers.component.md +46 -0
  162. package/llms/references/components/numbers/numbers.md +7 -0
  163. package/llms/references/components/numericbadge/numericbadge.component.md +66 -0
  164. package/llms/references/components/numericbadge/numericbadge.md +84 -0
  165. package/llms/references/components/onboarding-empty-state/onboarding-empty-state.md +47 -0
  166. package/llms/references/components/pageheader/pageheader.component.md +389 -0
  167. package/llms/references/components/pageheader/pageheader.md +144 -0
  168. package/llms/references/components/pagination/pagination.component.md +96 -0
  169. package/llms/references/components/pagination/pagination.md +107 -0
  170. package/llms/references/components/phonenumberfield/phonenumberfield.component.md +35 -0
  171. package/llms/references/components/phonenumberfield/phonenumberfield.md +131 -0
  172. package/llms/references/components/plg-push/plg-push.component.md +91 -0
  173. package/llms/references/components/plg-push/plg-push.md +82 -0
  174. package/llms/references/components/popover/popover.component.md +130 -0
  175. package/llms/references/components/popover/popover.md +235 -0
  176. package/llms/references/components/popover2/popover2.component.md +103 -0
  177. package/llms/references/components/popover2/popover2.md +89 -0
  178. package/llms/references/components/progress-bar/progress-bar.component.md +33 -0
  179. package/llms/references/components/progress-bar/progress-bar.md +51 -0
  180. package/llms/references/components/progress-stepper/progress-stepper.component.md +281 -0
  181. package/llms/references/components/progress-stepper/progress-stepper.md +70 -0
  182. package/llms/references/components/radiofield/radiofield.component.md +295 -0
  183. package/llms/references/components/radiofield/radiofield.md +122 -0
  184. package/llms/references/components/readmore/readmore.component.md +60 -0
  185. package/llms/references/components/readmore/readmore.md +88 -0
  186. package/llms/references/components/resource-card/resource-card.component.md +216 -0
  187. package/llms/references/components/resource-card/resource-card.md +106 -0
  188. package/llms/references/components/richtextinput/richtextinput.component.md +298 -0
  189. package/llms/references/components/richtextinput/richtextinput.md +275 -0
  190. package/llms/references/components/scroll/scroll.md +45 -0
  191. package/llms/references/components/scrollbox/scrollbox.component.md +63 -0
  192. package/llms/references/components/scrollbox/scrollbox.md +49 -0
  193. package/llms/references/components/section-empty-state/section-empty-state.component.md +9 -0
  194. package/llms/references/components/section-empty-state/section-empty-state.md +41 -0
  195. package/llms/references/components/segmented-control-tabs/segmented-control-tabs.md +50 -0
  196. package/llms/references/components/segmentedcontrol/segmentedcontrol.component.md +198 -0
  197. package/llms/references/components/segmentedcontrol/segmentedcontrol.md +108 -0
  198. package/llms/references/components/select/select.component.md +237 -0
  199. package/llms/references/components/select/select.md +57 -0
  200. package/llms/references/components/select-templating/select-templating.md +117 -0
  201. package/llms/references/components/sidepanel/sidepanel.component.md +56 -0
  202. package/llms/references/components/sidepanel/sidepanel.md +7 -0
  203. package/llms/references/components/simple-select/simple-select.component.md +39 -0
  204. package/llms/references/components/simple-select/simple-select.md +291 -0
  205. package/llms/references/components/skeleton/skeleton.component.md +133 -0
  206. package/llms/references/components/skeleton/skeleton.md +212 -0
  207. package/llms/references/components/skiplinks/skiplinks.component.md +91 -0
  208. package/llms/references/components/skiplinks/skiplinks.md +73 -0
  209. package/llms/references/components/software-icon/software-icon.component.md +61 -0
  210. package/llms/references/components/software-icon/software-icon.md +107 -0
  211. package/llms/references/components/sortable-list/sortable-list.component.md +141 -0
  212. package/llms/references/components/sortable-list/sortable-list.md +84 -0
  213. package/llms/references/components/statusbadge/statusbadge.component.md +56 -0
  214. package/llms/references/components/statusbadge/statusbadge.md +63 -0
  215. package/llms/references/components/switchfield/switchfield.component.md +114 -0
  216. package/llms/references/components/switchfield/switchfield.md +56 -0
  217. package/llms/references/components/tableofcontent/tableofcontent.component.md +55 -0
  218. package/llms/references/components/tableofcontent/tableofcontent.md +41 -0
  219. package/llms/references/components/tags/tags.component.md +112 -0
  220. package/llms/references/components/tags/tags.md +115 -0
  221. package/llms/references/components/text-flow/text-flow.component.md +71 -0
  222. package/llms/references/components/text-flow/text-flow.md +63 -0
  223. package/llms/references/components/textareafield/textareafield.component.md +69 -0
  224. package/llms/references/components/textareafield/textareafield.md +113 -0
  225. package/llms/references/components/textfield/textfield.component.md +617 -0
  226. package/llms/references/components/textfield/textfield.md +161 -0
  227. package/llms/references/components/tile/tile.component.md +91 -0
  228. package/llms/references/components/tile/tile.md +92 -0
  229. package/llms/references/components/time/time.component.md +270 -0
  230. package/llms/references/components/time/time.md +127 -0
  231. package/llms/references/components/time-picker/time-picker.md +63 -0
  232. package/llms/references/components/timelines/timelines.component.md +159 -0
  233. package/llms/references/components/timelines/timelines.md +8 -0
  234. package/llms/references/components/title-and-text/title-and-text.component.md +14 -0
  235. package/llms/references/components/title-and-text/title-and-text.md +60 -0
  236. package/llms/references/components/toasts/toasts.component.md +54 -0
  237. package/llms/references/components/toasts/toasts.md +112 -0
  238. package/llms/references/components/tooltip/tooltip.component.md +86 -0
  239. package/llms/references/components/tooltip/tooltip.md +217 -0
  240. package/llms/references/components/treeselect/treeselect.component.md +62 -0
  241. package/llms/references/components/treeselect/treeselect.md +58 -0
  242. package/llms/references/components/user-select/user-select.md +52 -0
  243. package/llms/references/components/userpopover/userpopover.component.md +50 -0
  244. package/llms/references/components/userpopover/userpopover.md +136 -0
  245. package/llms/references/components/verticalnavigation/verticalnavigation.component.md +236 -0
  246. package/llms/references/components/verticalnavigation/verticalnavigation.md +115 -0
  247. package/llms/references/migrations.md +32 -0
  248. package/llms/references/tools/angular-api.md +337 -0
  249. package/llms/references/tools/animations.md +173 -0
  250. package/llms/references/tools/mixins.md +106 -0
  251. package/llms/references/tools/numbers.md +81 -0
  252. package/llms/references/tools/scrollbox.md +59 -0
  253. package/llms/references/tools/utilitaires.md +951 -0
  254. package/llms/references/types/BubbleIllustration.md +5 -0
  255. package/llms/references/types/DecorativePalette.md +5 -0
  256. package/llms/references/types/Gap.md +5 -0
  257. package/llms/references/types/HighlightDataIllustration.md +5 -0
  258. package/llms/references/types/HighlightSectionIllustration.md +5 -0
  259. package/llms/references/types/LuccaIcon.md +5 -0
  260. package/llms/references/types/MainLayoutIllustrationEndStart.md +5 -0
  261. package/llms/references/types/MainLayoutIllustrationStartEnd.md +5 -0
  262. package/llms.txt +221 -0
  263. package/package.json +12 -6
  264. package/types/lucca-front-ng-approbation-inbox.d.ts +3 -3
@@ -0,0 +1,237 @@
1
+ # select — Code & Implementation
2
+
3
+ 📖 [Storybook documentation](https://lucca-front.lucca.io/v22.0.0/storybook/?path=/docs/documentation-forms-api-select--docs)
4
+
5
+ ## Angular
6
+
7
+ ### Api select
8
+
9
+ ```js
10
+ import { provideHttpClient } from '@angular/common/http';
11
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
12
+ import { provideAnimations } from '@angular/platform-browser/animations';
13
+ import { LuApiSelectInputComponent } from '@lucca-front/ng/api';
14
+ ```
15
+
16
+ ```html
17
+ <label class="textfield">
18
+ <lu-api-select data-testid="lu-select" class="textfield-input" [api]="apiV3" />
19
+ <span class="textfield-label">Api V3 Select</span>
20
+ </label>
21
+
22
+ <label class="textfield pr-u-marginBlockStart300">
23
+ <lu-api-select class="textfield-input" standard="v4" [api]="apiV4" sort="job.name,level.position" />
24
+ <span class="textfield-label">Api V4 Select</span>
25
+ </label>
26
+
27
+ <label class="textfield pr-u-marginBlockStart300">
28
+ <lu-api-select class="textfield-input" [disabled]="true" standard="v4" [api]="apiV4" sort="job.name,level.position" />
29
+ <span class="textfield-label">Api V4 Select</span>
30
+ </label>
31
+ ```
32
+
33
+ ### Date select
34
+
35
+ ```js
36
+ import { FormsModule } from '@angular/forms';
37
+ import { provideAnimations } from '@angular/platform-browser/animations';
38
+ import { ALuDateAdapter, ELuDateGranularity, LuStringDateAdapter } from '@lucca-front/ng/core';
39
+ import { LuDateSelectInputComponent } from '@lucca-front/ng/date';
40
+ import { LuInputDisplayerDirective } from '@lucca-front/ng/input';
41
+ import { ALuDateAdapter, LuStringDateAdapter } from '@lucca-front/ng/core';
42
+ ```
43
+
44
+ ```html
45
+ <label class="textfield">
46
+ <lu-date-select
47
+ class="textfield-input"
48
+ [(ngModel)]="selectedDate"
49
+ [granularity]="granularity"
50
+ [min]="min"
51
+ [max]="max"
52
+ [placeholder]="placeholder"
53
+ [startOn]="startOn"
54
+ [disabled]="disabled"
55
+ [hideClearer]="hideClearer"
56
+ [pickerOverlap]="pickerOverlap"
57
+ ></lu-date-select>
58
+ <span class="textfield-label">Label</span>
59
+ </label>
60
+ ```
61
+
62
+ ```html
63
+ <label class="textfield">
64
+ <lu-date-select class="textfield-input" [(ngModel)]="selectedDate" />
65
+ <span class="textfield-label">Label</span>
66
+ </label>
67
+ ```
68
+
69
+ ```html
70
+ <label class="textfield">
71
+ <lu-date-select
72
+ class="textfield-input"
73
+ [(ngModel)]="selectedDate"
74
+ [max]="secondSelectedDate"
75
+ [placeholder]="secondSelectedDate ? 'max : ' + secondSelectedDate : undefined"
76
+ ></lu-date-select>
77
+ <span class="textfield-label">Start</span>
78
+ </label>
79
+ <label class="textfield">
80
+ <lu-date-select
81
+ class="textfield-input"
82
+ [(ngModel)]="secondSelectedDate"
83
+ [min]="selectedDate"
84
+ [startOn]="selectedDate"
85
+ [placeholder]="selectedDate ? 'min : ' + selectedDate : undefined"
86
+ ></lu-date-select>
87
+ <span class="textfield-label">End</span>
88
+ </label>
89
+ ```
90
+
91
+ ```html
92
+ <label class="textfield">
93
+ <lu-date-select class="textfield-input" [(ngModel)]="selectedDate">
94
+ <ng-container *luDisplayer="let value">Birthday: {{ value | date: "LL" }}</ng-container>
95
+ </lu-date-select>
96
+ <span class="textfield-label">Label</span>
97
+ </label>
98
+ ```
99
+
100
+ ```html
101
+ <label class="textfield">
102
+ <lu-date-select class="textfield-input" [(ngModel)]="selectedDate" [granularity]="granularity">
103
+ <ng-container *luDisplayer="let value">start of {{ value | date: "MM/yyyy" }}</ng-container>
104
+ </lu-date-select>
105
+ <span class="textfield-label">Label</span>
106
+ </label>
107
+ ```
108
+
109
+ ### Filter pill
110
+
111
+ ```js
112
+ import { JsonPipe } from '@angular/common';
113
+ import { provideHttpClient } from '@angular/common/http';
114
+ import { FormsModule } from '@angular/forms';
115
+ import { provideAnimations } from '@angular/platform-browser/animations';
116
+ import { LuCoreSelectUsersDirective, provideCoreSelectCurrentUserId } from '@lucca-front/ng/core-select/user';
117
+ import { FilterPillComponent } from '@lucca-front/ng/filter-pills';
118
+ import { LuMultiSelectInputComponent } from '@lucca-front/ng/multi-select';
119
+ import { LuSimpleSelectInputComponent } from '@lucca-front/ng/simple-select';
120
+ ```
121
+
122
+ ```html
123
+ <lu-filter-pill label="Légume" name="legume">
124
+ <lu-simple-select [(ngModel)]="example" [options]="legumes | filterLegumes: clue" (clueChange)="clue = $event" />
125
+ </lu-filter-pill>
126
+
127
+ <pr-story-model-display>{{ example | json }}</pr-story-model-display>
128
+
129
+ <hr class="divider pr-u-marginBlock400" />
130
+
131
+ <lu-filter-pill label="Légume" name="legume">
132
+ <lu-multi-select
133
+ [(ngModel)]="examples"
134
+ [options]="legumes | filterLegumes: clue"
135
+ (clueChange)="clue = $event"
136
+ filterPillLabelPlural="légumes"
137
+ />
138
+ </lu-filter-pill>
139
+
140
+ <pr-story-model-display>{{ examples | json }}</pr-story-model-display>
141
+
142
+ <hr class="divider pr-u-marginBlock400" />
143
+
144
+ <lu-filter-pill label="Utilisateur" name="user">
145
+ <lu-simple-select [(ngModel)]="user" users enableFormerEmployees />
146
+ </lu-filter-pill>
147
+
148
+ <pr-story-model-display>{{ user | json }}</pr-story-model-display>
149
+ ```
150
+
151
+ ### Select
152
+
153
+ ```js
154
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
155
+ import { FormsModule } from '@angular/forms';
156
+ import { provideAnimations } from '@angular/platform-browser/animations';
157
+ import { LuInputDisplayerDirective } from '@lucca-front/ng/input';
158
+ import { LuOptionItemComponent, LuOptionPickerComponent } from '@lucca-front/ng/option';
159
+ import { LuSelectInputComponent } from '@lucca-front/ng/select';
160
+ ```
161
+
162
+ ```html
163
+ <div class="pr-u-displayFlex">
164
+ <label class="textfield pr-u-marginInlineEnd200">
165
+ <lu-select class="textfield-input" placeholder="Select an item">
166
+ <ng-container *luDisplayer="let value">{{ value }}</ng-container>
167
+ <lu-option-picker>
168
+ <lu-option [value]="1">1</lu-option>
169
+ <lu-option [value]="2">2</lu-option>
170
+ <lu-option [value]="3">3</lu-option>
171
+ </lu-option-picker>
172
+ </lu-select>
173
+ <span class="textfield-label">Select</span>
174
+ </label>
175
+ <label class="textfield pr-u-marginInlineEnd200">
176
+ <lu-select class="textfield-input" placeholder="Select an item" [multiple]="true">
177
+ <ng-container *luDisplayer="let value">{{ value }}</ng-container>
178
+ <lu-option-picker>
179
+ <lu-option [value]="1">1</lu-option>
180
+ <lu-option [value]="2">2</lu-option>
181
+ <lu-option [value]="3">3</lu-option>
182
+ </lu-option-picker>
183
+ </lu-select>
184
+ <span class="textfield-label">Multiple Select</span>
185
+ </label>
186
+ <label class="textfield pr-u-marginInlineEnd200">
187
+ <lu-select [(ngModel)]="item" class="textfield-input">
188
+ <ng-container *luDisplayer="let value">{{ value.name }}</ng-container>
189
+ <lu-option-picker>
190
+ <lu-option [value]="green">{{ green.name }}</lu-option>
191
+ <lu-option [value]="red">{{ red.name }}</lu-option>
192
+ <lu-option [value]="yellow" [disabled]="true">{{ yellow.name }}</lu-option>
193
+ <lu-option [value]="blue" [disabled]="true">{{ blue.name }}</lu-option>
194
+ <lu-option [value]="purple">{{ purple.name }}</lu-option>
195
+ <lu-option [value]="orange">{{ orange.name }}</lu-option>
196
+ <lu-option [value]="cyan" [disabled]="true">{{ cyan.name }}</lu-option>
197
+ <lu-option [value]="grey">{{ grey.name }}</lu-option>
198
+ </lu-option-picker>
199
+ </lu-select>
200
+ <span class="textfield-label">Disabled options</span>
201
+ </label>
202
+ <label class="textfield">
203
+ <lu-select [(ngModel)]="item" class="textfield-input" [disabled]="true">
204
+ <ng-container *luDisplayer="let value">{{ value.name }}</ng-container>
205
+ <lu-option-picker>
206
+ <lu-option [value]="green">{{ green.name }}</lu-option>
207
+ <lu-option [value]="red">{{ red.name }}</lu-option>
208
+ <lu-option [value]="yellow">{{ yellow.name }}</lu-option>
209
+ <lu-option [value]="blue">{{ blue.name }}</lu-option>
210
+ </lu-option-picker>
211
+ </lu-select>
212
+ <span class="textfield-label">Disabled field</span>
213
+ </label>
214
+ </div>
215
+ ```
216
+
217
+ ## HTML/CSS
218
+
219
+ ### Basic
220
+
221
+ ```css
222
+ @forward '@lucca-front/scss/src/components/clear';
223
+ @forward '@lucca-front/scss/src/components/filterPill';
224
+ ```
225
+
226
+ ```html
227
+ <div class="filterPillWrapper">
228
+ <button type="button" class="filterPill is-filled" aria-expanded="false" aria-controls="panel">
229
+ <span class="filterPill-label">Lorem ipsum:</span>
230
+ <span class="filterPill-value">Lorem ipsum</span>
231
+ <span class="filterPill-toggle">
232
+ <span class="lucca-icon icon-arrowChevronBottom mod-S"></span>
233
+ </span>
234
+ </button>
235
+ <button type="button" class="filterPill_clear clear"><span class="pr-u-mask">Vider ce champ</span></button>
236
+ </div>
237
+ ```
@@ -0,0 +1,57 @@
1
+ # select
2
+
3
+ ## Import
4
+
5
+ ```typescript
6
+ import { LuSelectInputComponent } from '@lucca-front/ng/select';
7
+ ```
8
+
9
+ ## API Reference
10
+
11
+ ### LuSelectInputComponent (component)
12
+
13
+ **Selector:** `lu-select`
14
+
15
+ > ⚠️ **Déprécié** : prefer SimpleSelect or MultipleSelect
16
+
17
+ #### Inputs
18
+
19
+ | Property | Binding name | Type | Default | Required | Transform | Description |
20
+ |----------|-------------|------|---------|----------|-----------|-------------|
21
+ | `pickerOverlap` | `pickerOverlap` | `boolean` | `false` | — | `luBooleanAttribute` | — |
22
+ | `placeholderInput` | `placeholder` | `string` | `''` | — | — | — |
23
+ | `multipleInput` | `multiple` | `boolean \| string` | `false` | — | — | — |
24
+ | `disabledInput` | `disabled` | `boolean` | `false` | — | — | — |
25
+
26
+ #### Outputs
27
+
28
+ | Property | Binding name | Type | Notes |
29
+ |----------|-------------|------|-------|
30
+ | `onOpenOutput` | `onOpenOutput` | `void` | — |
31
+ | `onCloseOutput` | `onCloseOutput` | `void` | — |
32
+
33
+ ### Modules dépréciés
34
+
35
+ - ⚠️ `LuSelectModule` — prefer SimpleSelect or MultipleSelect
36
+ - ⚠️ `LuSelectInputModule` — prefer SimpleSelect or MultipleSelect
37
+
38
+ ## Related files
39
+
40
+ - 📝 [Code & implementation](./select.component.md)
41
+
42
+ - 📖 [Storybook documentation](https://lucca-front.lucca.io/v22.0.0/storybook/?path=/docs/documentation-forms-api-select--docs)
43
+
44
+ ## Changelog
45
+
46
+ > Diff structurel de l'API (selectors, inputs, outputs, models) entre versions stables, depuis `v21.4.2` jusqu'à `v22.0.0`. Les versions sans changement d'API sont omises.
47
+
48
+ ### 22.0.0
49
+
50
+ ~ `pickerOverlap` : défaut ∅ → false, transform ∅ → luBooleanAttribute
51
+ ~ `placeholder` : défaut ∅ → ''
52
+ ~ `multiple` : défaut ∅ → false
53
+ ~ `disabled` : défaut ∅ → false
54
+ + (output) `onOpenOutput` : void
55
+ + (output) `onCloseOutput` : void
56
+ - (output) `onOpen`
57
+ - (output) `onClose`
@@ -0,0 +1,117 @@
1
+ # select-templating
2
+
3
+ ## Import
4
+
5
+ ```typescript
6
+ import { LuCoreSelectTotalCountDirective, LuCoreSelectNoClueDirective, LuDisabledOptionDirective, LuOptionGroupDirective, LuOptionDirective, LuCoreSelectPanelHeaderDirective } from '@lucca-front/ng/core-select';
7
+ ```
8
+
9
+ ## API Reference
10
+
11
+ ### LuCoreSelectTotalCountDirective (directive)
12
+
13
+ **Selectors:** `lu-simple-select[totalCount]`, `lu-multi-select[totalCount]`
14
+
15
+ #### Inputs
16
+
17
+ | Property | Binding name | Type | Default | Required | Transform | Description |
18
+ |----------|-------------|------|---------|----------|-----------|-------------|
19
+ | `totalCount` | `totalCount` | `number` | — | ✅ | — | — |
20
+
21
+ ### LuCoreSelectNoClueDirective (directive)
22
+
23
+ **Selectors:** `lu-simple-select[noClue]`, `lu-multi-select[noClue]`
24
+
25
+ ### LuDisabledOptionDirective (directive)
26
+
27
+ **Selector:** `[luDisabledOption]`
28
+
29
+ #### Inputs
30
+
31
+ | Property | Binding name | Type | Default | Required | Transform | Description |
32
+ |----------|-------------|------|---------|----------|-----------|-------------|
33
+ | `isDisabled` | `luDisabledOption` | `boolean` | `undefined` | — | — | — |
34
+
35
+ ### LuOptionGroupDirective (directive)
36
+
37
+ **Selector:** `[luOptionGroup]`
38
+
39
+ #### Inputs
40
+
41
+ | Property | Binding name | Type | Default | Required | Transform | Description |
42
+ |----------|-------------|------|---------|----------|-----------|-------------|
43
+ | `select` | `luOptionGroupSelect` | `ALuSelectInputComponent<TOption, TValue>` | — | ✅ | — | — |
44
+ | `selector` | `luOptionGroupBy` | `(option: TOption) => TGroup` | — | ✅ | — | — |
45
+
46
+ ### LuOptionDirective (directive)
47
+
48
+ **Selector:** `[luOption]`
49
+
50
+ #### Inputs
51
+
52
+ | Property | Binding name | Type | Default | Required | Transform | Description |
53
+ |----------|-------------|------|---------|----------|-----------|-------------|
54
+ | `select` | `luOptionSelect` | `ALuSelectInputComponent<TOption, TValue>` | `undefined` | — | — | — |
55
+
56
+ ### LuCoreSelectPanelHeaderDirective (directive)
57
+
58
+ **Selector:** `[luSelectPanelHeader]`
59
+
60
+ #### Inputs
61
+
62
+ | Property | Binding name | Type | Default | Required | Transform | Description |
63
+ |----------|-------------|------|---------|----------|-----------|-------------|
64
+ | `select` | `luSelectPanelHeader` | `ALuSelectInputComponent<unknown, unknown> \| ALuSelectInputComponent<unknown, unknown[]>` | — | ✅ | — | — |
65
+
66
+ ### Providers
67
+
68
+ | Fonction | Signature | Description |
69
+ |----------|-----------|-------------|
70
+ | `provideLuSelectLabelsAndIds` | `(): Provider[]` | — |
71
+ | `provideOptionContext` | `(): Provider` | — |
72
+
73
+ ### Injection tokens
74
+
75
+ | Token | Type | Description |
76
+ |-------|------|-------------|
77
+ | `LU_OPTION_CONTEXT` | `ILuOptionContext<unknown>` | — |
78
+ | `SELECT_PANEL_INSTANCE` | `CoreSelectPanelInstance` | — |
79
+ | `SELECT_ID` | `number` | — |
80
+ | `SELECT_LABEL` | `HTMLLabelElement \| undefined` | — |
81
+ | `SELECT_LABEL_ID` | `string` | — |
82
+ | `CORE_SELECT_API_TOTAL_COUNT_PROVIDER` | `CoreSelectApiTotalCountProvider` | — |
83
+ | `LU_CORE_SELECT_TRANSLATIONS` | `unknown` | — |
84
+
85
+ ### Pipes
86
+
87
+ | Pipe | Classe | transform | Description |
88
+ |------|--------|-----------|-------------|
89
+ | `luTreeDisplay` | `TreeDisplayPipe` | `(items: T[], treeGenerator: TreeGenerator<T, TreeNode<T>>): TreeNode<T>[]` | — |
90
+ | `luOptionGroup` | `LuOptionGroupPipe` | `(options: T[], selector: (option: T) => TGroup)` | — |
91
+ | `luIsOptionSelected` | `LuIsOptionSelectedPipe` | `(option: T, comparer: LuOptionComparer<T>, selectedOptions: T[]): boolean` | — |
92
+
93
+ ### Services
94
+
95
+ #### CoreSelectKeyManager
96
+
97
+ - `init(options: CoreSelectKeyManagerOptions<T>): void`
98
+ - `onKeydown(event: KeyboardEvent): void`
99
+ - `setActiveItem(index: number): void`
100
+ - `setActiveItemByElement(item: CoreSelectPanelElement<T>): void`
101
+ - `highlightOption(option: T): void`
102
+
103
+ ## Related files
104
+
105
+ ## Changelog
106
+
107
+ > Diff structurel de l'API (selectors, inputs, outputs, models) entre versions stables, depuis `v21.4.2` jusqu'à `v22.0.0`. Les versions sans changement d'API sont omises.
108
+
109
+ ### 22.0.0
110
+
111
+ `LuDisabledOptionDirective` :
112
+ ~ `luDisabledOption` : boolean | null → boolean, défaut ∅ → undefined
113
+ `LuOptionGroupDirective` :
114
+ ~ `luOptionGroupSelect` : devient requis
115
+ ~ `luOptionGroupBy` : (option: TOption) → (option: TOption) => TGroup, devient requis, défaut > TGroup → ∅
116
+ `LuOptionDirective` :
117
+ ~ `luOptionSelect` : défaut ∅ → undefined
@@ -0,0 +1,56 @@
1
+ # sidepanel — Code & Implementation
2
+
3
+ 📖 [Storybook documentation](https://lucca-front.lucca.io/v22.0.0/storybook/?path=/docs/documentation-navigation-sidepanel--docs)
4
+
5
+ ## Angular
6
+
7
+ ### Navigation sidepanel
8
+
9
+ ```js
10
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
11
+ import { provideAnimations } from '@angular/platform-browser/animations';
12
+ import { ILuModalContent } from '@lucca-front/ng/modal';
13
+ import { LuSidepanel, LuSidepanelModule } from '@lucca-front/ng/sidepanel';
14
+ import { ILuSidepanelContent, LuSidepanel, LuSidepanelModule } from '@lucca-front/ng/sidepanel';
15
+ ```
16
+
17
+ ```html
18
+ <p>General Kenobi</p>
19
+ ```
20
+
21
+ ```html
22
+ <h1>Sidepanels</h1>
23
+
24
+ <button type="button" class="button" (click)="openSidepanel()">Open sidepanel</button>
25
+ ```
26
+
27
+ ### Overlays sidepanel
28
+
29
+ ```js
30
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
31
+ import { provideAnimations } from '@angular/platform-browser/animations';
32
+ import { ILuModalContent, LuModal, LuModalModule } from '@lucca-front/ng/modal';
33
+ import { LuSidepanel, LuSidepanelModule } from '@lucca-front/ng/sidepanel';
34
+ import { LuToastsModule, LuToastsService } from '@lucca-front/ng/toast';
35
+ import { map, shareReplay, timer } from 'rxjs';
36
+ import { LuSidepanelModule } from '@lucca-front/ng/sidepanel';
37
+ ```
38
+
39
+ ```html
40
+ <p>General Kenobi</p>
41
+ ```
42
+
43
+ ```html
44
+ <lu-toasts [sources]="[]" />
45
+ <div class="pr-u-marginBlockEnd200">
46
+ <button type="button" class="button" (click)="openSidepanel()">Open</button>
47
+ <button type="button" class="button" (click)="openDynamicContentSidepanel()">Open (Dynamic)</button>
48
+ <button type="button" class="button" (click)="openUndismissableSidepanel()">Open (Backdrop event)</button>
49
+ </div>
50
+ <div>
51
+ <button type="button" class="button mod-outlined" (click)="openLegacySidepanel()">Open (Legacy)</button>
52
+ <button type="button" class="button mod-outlined" (click)="openLegacyDynamicContentSidepanel()">
53
+ Open (Legacy & dynamic)
54
+ </button>
55
+ </div>
56
+ ```
@@ -0,0 +1,7 @@
1
+ # sidepanel
2
+
3
+ ## Related files
4
+
5
+ - 📝 [Code & implementation](./sidepanel.component.md)
6
+
7
+ - 📖 [Storybook documentation](https://lucca-front.lucca.io/v22.0.0/storybook/?path=/docs/documentation-navigation-sidepanel--docs)
@@ -0,0 +1,39 @@
1
+ # simple-select — Code & Implementation
2
+
3
+ 📖 [Storybook documentation](https://lucca-front.lucca.io/v22.0.0/storybook/?path=/docs/documentation-forms-fields-simple-select-angular--docs)
4
+
5
+ ## Angular
6
+
7
+ Component selector : `lu-simple-select`
8
+
9
+ ### Appeler une API
10
+
11
+ Pour un format de retour V3 ou V4 sans customisation de l'affichage (l'entité doit avoir une propriété `name`), il suffit de donner l'API à appeler :
12
+
13
+ ### Personnaliser l'affichage
14
+
15
+ Dans le cas d'une personnalisation de l'option et/ou de la valeur affichée, il est nécessaire de créer votre propre directive en s'aidant de `LuCoreSelectApiV4Directive` ou de `LuCoreSelectApiV3Directive` :
16
+
17
+ ### API non conventionnelle (sans id)
18
+
19
+ Dans le cas d'un appel API ne rentrant pas dans le moule habituel, il est nécessaire de créer votre propre directive en s'aidant de `ALuCoreSelectApiDirective` :
20
+
21
+ ### Select
22
+
23
+ ```js
24
+ import { FormFieldComponent } from '@lucca-front/ng/form-field';
25
+ import { LuSimpleSelectInputComponent } from '@lucca-front/ng/simple-select';
26
+ ```
27
+
28
+ ```html
29
+ <lu-form-field label="Label" tooltip="Tooltip message" inlineMessage="Helper text" inlineMessageState="default">
30
+ <lu-simple-select
31
+ placeholder="Placeholder"
32
+ clearable
33
+ [options]="legumes | filterLegumes: clue"
34
+ (clueChange)="clue = $event"
35
+ [(ngModel)]="model.example"
36
+ ></lu-simple-select>
37
+ </lu-form-field>
38
+ <pr-story-model-display>{{ model.example | json }}</pr-story-model-display>
39
+ ```