@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.
- package/README.md +6 -0
- package/fesm2022/lucca-front-ng-approbation-inbox.mjs +5 -4
- package/fesm2022/lucca-front-ng-approbation-inbox.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-dialog.mjs +22 -15
- package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-filter-pills.mjs +4 -4
- package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-scroll.mjs +2 -3
- package/fesm2022/lucca-front-ng-scroll.mjs.map +1 -1
- package/llms/SKILL.md +248 -0
- package/llms/references/components/activity-feed/activity-feed.component.md +292 -0
- package/llms/references/components/activity-feed/activity-feed.md +90 -0
- package/llms/references/components/animations/animations.component.md +11 -0
- package/llms/references/components/animations/animations.md +7 -0
- package/llms/references/components/api-select/api-select.md +40 -0
- package/llms/references/components/app-layout/app-layout.component.md +65 -0
- package/llms/references/components/app-layout/app-layout.md +81 -0
- package/llms/references/components/approbation-inbox/approbation-inbox.component.md +960 -0
- package/llms/references/components/approbation-inbox/approbation-inbox.md +135 -0
- package/llms/references/components/avatar/avatar.component.md +563 -0
- package/llms/references/components/avatar/avatar.md +93 -0
- package/llms/references/components/box/box.component.md +119 -0
- package/llms/references/components/box/box.md +88 -0
- package/llms/references/components/breadcrumbs/breadcrumbs.component.md +59 -0
- package/llms/references/components/breadcrumbs/breadcrumbs.md +87 -0
- package/llms/references/components/bubble-icon/bubble-icon.component.md +56 -0
- package/llms/references/components/bubble-icon/bubble-icon.md +72 -0
- package/llms/references/components/bubble-illustration/bubble-illustration.component.md +54 -0
- package/llms/references/components/bubble-illustration/bubble-illustration.md +77 -0
- package/llms/references/components/button/button.component.md +252 -0
- package/llms/references/components/button/button.md +124 -0
- package/llms/references/components/calendar/calendar.component.md +708 -0
- package/llms/references/components/calendar/calendar.md +104 -0
- package/llms/references/components/calendar2/calendar2.md +64 -0
- package/llms/references/components/callout/callout.component.md +237 -0
- package/llms/references/components/callout/callout.md +243 -0
- package/llms/references/components/callout-disclosure/callout-disclosure.component.md +230 -0
- package/llms/references/components/callout-disclosure/callout-disclosure.md +196 -0
- package/llms/references/components/callout-popover/callout-popover.component.md +170 -0
- package/llms/references/components/callout-popover/callout-popover.md +201 -0
- package/llms/references/components/card/card.component.md +62 -0
- package/llms/references/components/card/card.md +8 -0
- package/llms/references/components/checkbox/checkbox.component.md +50 -0
- package/llms/references/components/checkbox/checkbox.md +74 -0
- package/llms/references/components/chip/chip.component.md +131 -0
- package/llms/references/components/chip/chip.md +95 -0
- package/llms/references/components/clear/clear.component.md +38 -0
- package/llms/references/components/clear/clear.md +79 -0
- package/llms/references/components/code/code.component.md +33 -0
- package/llms/references/components/code/code.md +47 -0
- package/llms/references/components/color/color.md +32 -0
- package/llms/references/components/color-input/color-input.md +33 -0
- package/llms/references/components/color-picker/color-picker.component.md +29 -0
- package/llms/references/components/color-picker/color-picker.md +25 -0
- package/llms/references/components/comment/comment.component.md +436 -0
- package/llms/references/components/comment/comment.md +125 -0
- package/llms/references/components/container/container.component.md +41 -0
- package/llms/references/components/container/container.md +74 -0
- package/llms/references/components/core-select-department/core-select-department.md +37 -0
- package/llms/references/components/core-select-establishment/core-select-establishment.md +40 -0
- package/llms/references/components/core-select-job-qualification/core-select-job-qualification.md +25 -0
- package/llms/references/components/core-select-occupation-category/core-select-occupation-category.md +25 -0
- package/llms/references/components/core-select-user/core-select-user.md +75 -0
- package/llms/references/components/data-presentation/data-presentation.component.md +47 -0
- package/llms/references/components/data-presentation/data-presentation.md +49 -0
- package/llms/references/components/data-table/data-table.component.md +1603 -0
- package/llms/references/components/data-table/data-table.md +290 -0
- package/llms/references/components/date/date.component.md +31 -0
- package/llms/references/components/date/date.md +140 -0
- package/llms/references/components/dateinput/dateinput.component.md +99 -0
- package/llms/references/components/dateinput/dateinput.md +198 -0
- package/llms/references/components/daterangeinput/daterangeinput.component.md +49 -0
- package/llms/references/components/daterangeinput/daterangeinput.md +186 -0
- package/llms/references/components/departmentselect/departmentselect.component.md +43 -0
- package/llms/references/components/departmentselect/departmentselect.md +43 -0
- package/llms/references/components/dialog/dialog.component.md +462 -0
- package/llms/references/components/dialog/dialog.md +335 -0
- package/llms/references/components/divider/divider.component.md +35 -0
- package/llms/references/components/divider/divider.md +88 -0
- package/llms/references/components/dropdown/dropdown.component.md +272 -0
- package/llms/references/components/dropdown/dropdown.md +172 -0
- package/llms/references/components/duration-picker/duration-picker.md +155 -0
- package/llms/references/components/empty-state/empty-state.component.md +226 -0
- package/llms/references/components/empty-state/empty-state.md +62 -0
- package/llms/references/components/errorpage/errorpage.component.md +57 -0
- package/llms/references/components/errorpage/errorpage.md +75 -0
- package/llms/references/components/establishmentselect/establishmentselect.component.md +30 -0
- package/llms/references/components/establishmentselect/establishmentselect.md +42 -0
- package/llms/references/components/fancy-dialog/fancy-dialog.component.md +9 -0
- package/llms/references/components/fancy-dialog/fancy-dialog.md +107 -0
- package/llms/references/components/fancybox/fancybox.component.md +48 -0
- package/llms/references/components/fancybox/fancybox.md +75 -0
- package/llms/references/components/fieldset/fieldset.component.md +86 -0
- package/llms/references/components/fieldset/fieldset.md +119 -0
- package/llms/references/components/filedropzone/filedropzone.component.md +16 -0
- package/llms/references/components/filedropzone/filedropzone.md +61 -0
- package/llms/references/components/fileentry/fileentry.component.md +58 -0
- package/llms/references/components/fileentry/fileentry.md +246 -0
- package/llms/references/components/fileupload/fileupload.component.md +91 -0
- package/llms/references/components/fileupload/fileupload.md +246 -0
- package/llms/references/components/filterbar/filterbar.component.md +302 -0
- package/llms/references/components/filterbar/filterbar.md +134 -0
- package/llms/references/components/filterpills/filterpills.component.md +60 -0
- package/llms/references/components/filterpills/filterpills.md +180 -0
- package/llms/references/components/footer/footer.component.md +66 -0
- package/llms/references/components/footer/footer.md +115 -0
- package/llms/references/components/form/form.md +37 -0
- package/llms/references/components/form-field/form-field.component.md +46 -0
- package/llms/references/components/form-field/form-field.md +231 -0
- package/llms/references/components/form-header/form-header.md +29 -0
- package/llms/references/components/form-label/form-label.component.md +106 -0
- package/llms/references/components/form-label/form-label.md +98 -0
- package/llms/references/components/gauge/gauge.component.md +55 -0
- package/llms/references/components/gauge/gauge.md +73 -0
- package/llms/references/components/grid/grid.component.md +15 -0
- package/llms/references/components/grid/grid.md +112 -0
- package/llms/references/components/highlight-data/highlight-data.component.md +279 -0
- package/llms/references/components/highlight-data/highlight-data.md +115 -0
- package/llms/references/components/highlight-section/highlight-section.component.md +185 -0
- package/llms/references/components/highlight-section/highlight-section.md +48 -0
- package/llms/references/components/highlight-text/highlight-text.component.md +49 -0
- package/llms/references/components/highlight-text/highlight-text.md +29 -0
- package/llms/references/components/horizontalnavigation/horizontalnavigation.component.md +232 -0
- package/llms/references/components/horizontalnavigation/horizontalnavigation.md +95 -0
- package/llms/references/components/icons/icons.component.md +59 -0
- package/llms/references/components/icons/icons.md +185 -0
- package/llms/references/components/impersonation/impersonation.component.md +52 -0
- package/llms/references/components/impersonation/impersonation.md +52 -0
- package/llms/references/components/index-table/index-table.component.md +2528 -0
- package/llms/references/components/index-table/index-table.md +243 -0
- package/llms/references/components/inlinemessage/inlinemessage.component.md +58 -0
- package/llms/references/components/inlinemessage/inlinemessage.md +57 -0
- package/llms/references/components/input-framed/input-framed.component.md +714 -0
- package/llms/references/components/input-framed/input-framed.md +50 -0
- package/llms/references/components/link/link.component.md +153 -0
- package/llms/references/components/link/link.md +124 -0
- package/llms/references/components/listbox/listbox.component.md +11 -0
- package/llms/references/components/listbox/listbox.md +101 -0
- package/llms/references/components/listing/listing.component.md +366 -0
- package/llms/references/components/listing/listing.md +105 -0
- package/llms/references/components/loading/loading.component.md +37 -0
- package/llms/references/components/loading/loading.md +91 -0
- package/llms/references/components/main-layout/main-layout.component.md +146 -0
- package/llms/references/components/main-layout/main-layout.md +78 -0
- package/llms/references/components/mobile-push/mobile-push.component.md +62 -0
- package/llms/references/components/mobile-push/mobile-push.md +70 -0
- package/llms/references/components/mobileheader/mobileheader.component.md +31 -0
- package/llms/references/components/mobileheader/mobileheader.md +8 -0
- package/llms/references/components/mobilenavigation/mobilenavigation.component.md +43 -0
- package/llms/references/components/mobilenavigation/mobilenavigation.md +8 -0
- package/llms/references/components/modal/modal.component.md +37 -0
- package/llms/references/components/modal/modal.md +61 -0
- package/llms/references/components/multi-select/multi-select.component.md +39 -0
- package/llms/references/components/multi-select/multi-select.md +426 -0
- package/llms/references/components/multilanguagefield/multilanguagefield.component.md +84 -0
- package/llms/references/components/multilanguagefield/multilanguagefield.md +362 -0
- package/llms/references/components/newbadge/newbadge.component.md +23 -0
- package/llms/references/components/newbadge/newbadge.md +38 -0
- package/llms/references/components/number-format-input/number-format-input.md +46 -0
- package/llms/references/components/number-input/number-input.md +49 -0
- package/llms/references/components/numbers/numbers.component.md +46 -0
- package/llms/references/components/numbers/numbers.md +7 -0
- package/llms/references/components/numericbadge/numericbadge.component.md +66 -0
- package/llms/references/components/numericbadge/numericbadge.md +84 -0
- package/llms/references/components/onboarding-empty-state/onboarding-empty-state.md +47 -0
- package/llms/references/components/pageheader/pageheader.component.md +389 -0
- package/llms/references/components/pageheader/pageheader.md +144 -0
- package/llms/references/components/pagination/pagination.component.md +96 -0
- package/llms/references/components/pagination/pagination.md +107 -0
- package/llms/references/components/phonenumberfield/phonenumberfield.component.md +35 -0
- package/llms/references/components/phonenumberfield/phonenumberfield.md +131 -0
- package/llms/references/components/plg-push/plg-push.component.md +91 -0
- package/llms/references/components/plg-push/plg-push.md +82 -0
- package/llms/references/components/popover/popover.component.md +130 -0
- package/llms/references/components/popover/popover.md +235 -0
- package/llms/references/components/popover2/popover2.component.md +103 -0
- package/llms/references/components/popover2/popover2.md +89 -0
- package/llms/references/components/progress-bar/progress-bar.component.md +33 -0
- package/llms/references/components/progress-bar/progress-bar.md +51 -0
- package/llms/references/components/progress-stepper/progress-stepper.component.md +281 -0
- package/llms/references/components/progress-stepper/progress-stepper.md +70 -0
- package/llms/references/components/radiofield/radiofield.component.md +295 -0
- package/llms/references/components/radiofield/radiofield.md +122 -0
- package/llms/references/components/readmore/readmore.component.md +60 -0
- package/llms/references/components/readmore/readmore.md +88 -0
- package/llms/references/components/resource-card/resource-card.component.md +216 -0
- package/llms/references/components/resource-card/resource-card.md +106 -0
- package/llms/references/components/richtextinput/richtextinput.component.md +298 -0
- package/llms/references/components/richtextinput/richtextinput.md +275 -0
- package/llms/references/components/scroll/scroll.md +45 -0
- package/llms/references/components/scrollbox/scrollbox.component.md +63 -0
- package/llms/references/components/scrollbox/scrollbox.md +49 -0
- package/llms/references/components/section-empty-state/section-empty-state.component.md +9 -0
- package/llms/references/components/section-empty-state/section-empty-state.md +41 -0
- package/llms/references/components/segmented-control-tabs/segmented-control-tabs.md +50 -0
- package/llms/references/components/segmentedcontrol/segmentedcontrol.component.md +198 -0
- package/llms/references/components/segmentedcontrol/segmentedcontrol.md +108 -0
- package/llms/references/components/select/select.component.md +237 -0
- package/llms/references/components/select/select.md +57 -0
- package/llms/references/components/select-templating/select-templating.md +117 -0
- package/llms/references/components/sidepanel/sidepanel.component.md +56 -0
- package/llms/references/components/sidepanel/sidepanel.md +7 -0
- package/llms/references/components/simple-select/simple-select.component.md +39 -0
- package/llms/references/components/simple-select/simple-select.md +291 -0
- package/llms/references/components/skeleton/skeleton.component.md +133 -0
- package/llms/references/components/skeleton/skeleton.md +212 -0
- package/llms/references/components/skiplinks/skiplinks.component.md +91 -0
- package/llms/references/components/skiplinks/skiplinks.md +73 -0
- package/llms/references/components/software-icon/software-icon.component.md +61 -0
- package/llms/references/components/software-icon/software-icon.md +107 -0
- package/llms/references/components/sortable-list/sortable-list.component.md +141 -0
- package/llms/references/components/sortable-list/sortable-list.md +84 -0
- package/llms/references/components/statusbadge/statusbadge.component.md +56 -0
- package/llms/references/components/statusbadge/statusbadge.md +63 -0
- package/llms/references/components/switchfield/switchfield.component.md +114 -0
- package/llms/references/components/switchfield/switchfield.md +56 -0
- package/llms/references/components/tableofcontent/tableofcontent.component.md +55 -0
- package/llms/references/components/tableofcontent/tableofcontent.md +41 -0
- package/llms/references/components/tags/tags.component.md +112 -0
- package/llms/references/components/tags/tags.md +115 -0
- package/llms/references/components/text-flow/text-flow.component.md +71 -0
- package/llms/references/components/text-flow/text-flow.md +63 -0
- package/llms/references/components/textareafield/textareafield.component.md +69 -0
- package/llms/references/components/textareafield/textareafield.md +113 -0
- package/llms/references/components/textfield/textfield.component.md +617 -0
- package/llms/references/components/textfield/textfield.md +161 -0
- package/llms/references/components/tile/tile.component.md +91 -0
- package/llms/references/components/tile/tile.md +92 -0
- package/llms/references/components/time/time.component.md +270 -0
- package/llms/references/components/time/time.md +127 -0
- package/llms/references/components/time-picker/time-picker.md +63 -0
- package/llms/references/components/timelines/timelines.component.md +159 -0
- package/llms/references/components/timelines/timelines.md +8 -0
- package/llms/references/components/title-and-text/title-and-text.component.md +14 -0
- package/llms/references/components/title-and-text/title-and-text.md +60 -0
- package/llms/references/components/toasts/toasts.component.md +54 -0
- package/llms/references/components/toasts/toasts.md +112 -0
- package/llms/references/components/tooltip/tooltip.component.md +86 -0
- package/llms/references/components/tooltip/tooltip.md +217 -0
- package/llms/references/components/treeselect/treeselect.component.md +62 -0
- package/llms/references/components/treeselect/treeselect.md +58 -0
- package/llms/references/components/user-select/user-select.md +52 -0
- package/llms/references/components/userpopover/userpopover.component.md +50 -0
- package/llms/references/components/userpopover/userpopover.md +136 -0
- package/llms/references/components/verticalnavigation/verticalnavigation.component.md +236 -0
- package/llms/references/components/verticalnavigation/verticalnavigation.md +115 -0
- package/llms/references/migrations.md +32 -0
- package/llms/references/tools/angular-api.md +337 -0
- package/llms/references/tools/animations.md +173 -0
- package/llms/references/tools/mixins.md +106 -0
- package/llms/references/tools/numbers.md +81 -0
- package/llms/references/tools/scrollbox.md +59 -0
- package/llms/references/tools/utilitaires.md +951 -0
- package/llms/references/types/BubbleIllustration.md +5 -0
- package/llms/references/types/DecorativePalette.md +5 -0
- package/llms/references/types/Gap.md +5 -0
- package/llms/references/types/HighlightDataIllustration.md +5 -0
- package/llms/references/types/HighlightSectionIllustration.md +5 -0
- package/llms/references/types/LuccaIcon.md +5 -0
- package/llms/references/types/MainLayoutIllustrationEndStart.md +5 -0
- package/llms/references/types/MainLayoutIllustrationStartEnd.md +5 -0
- package/llms.txt +221 -0
- package/package.json +12 -6
- 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,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
|
+
```
|