@ouestfrance/sipa-bms-ui 7.14.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 +280 -0
- package/dist/assets/animated-icons/AnimatedActivityIcon.vue.d.ts +133 -0
- package/dist/assets/animated-icons/AnimatedCircleHelpIcon.vue.d.ts +133 -0
- package/dist/assets/animated-icons/AnimatedHomeIcon.vue.d.ts +133 -0
- package/dist/components/button/BmsButton.spec.d.ts +1 -0
- package/dist/components/button/BmsButton.vue.d.ts +24 -0
- package/dist/components/button/BmsIconButton.vue.d.ts +23 -0
- package/dist/components/button/UiButton.vue.d.ts +26 -0
- package/dist/components/button/UiButtonLink.vue.d.ts +20 -0
- package/dist/components/feedback/BmsAlert.vue.d.ts +24 -0
- package/dist/components/feedback/BmsBadge.vue.d.ts +18 -0
- package/dist/components/feedback/BmsCaption.vue.d.ts +6 -0
- package/dist/components/feedback/BmsCircularProgress.spec.d.ts +1 -0
- package/dist/components/feedback/BmsCircularProgress.vue.d.ts +6 -0
- package/dist/components/feedback/BmsLoader.spec.d.ts +1 -0
- package/dist/components/feedback/BmsLoader.vue.d.ts +9 -0
- package/dist/components/feedback/BmsTooltip.vue.d.ts +28 -0
- package/dist/components/feedback/UiTooltip.spec.d.ts +1 -0
- package/dist/components/feedback/UiTooltip.vue.d.ts +27 -0
- package/dist/components/feedback/tooltip.helper.d.ts +45 -0
- package/dist/components/feedback/tooltip.helper.spec.d.ts +1 -0
- package/dist/components/form/BmsAutocomplete.vue.d.ts +31 -0
- package/dist/components/form/BmsBetweenInput.vue.d.ts +32 -0
- package/dist/components/form/BmsChip.vue.d.ts +15 -0
- package/dist/components/form/BmsFilePicker.spec.d.ts +1 -0
- package/dist/components/form/BmsFilePicker.vue.d.ts +12 -0
- package/dist/components/form/BmsInputBooleanCheckbox.vue.d.ts +30 -0
- package/dist/components/form/BmsInputCheckboxCaption.spec.d.ts +1 -0
- package/dist/components/form/BmsInputCheckboxCaption.vue.d.ts +31 -0
- package/dist/components/form/BmsInputCheckboxCaptionGroup.vue.d.ts +25 -0
- package/dist/components/form/BmsInputCheckboxGroup.vue.d.ts +24 -0
- package/dist/components/form/BmsInputCode.vue.d.ts +27 -0
- package/dist/components/form/BmsInputDateTime.vue.d.ts +24 -0
- package/dist/components/form/BmsInputFile.spec.d.ts +1 -0
- package/dist/components/form/BmsInputFile.vue.d.ts +27 -0
- package/dist/components/form/BmsInputNumber.spec.d.ts +1 -0
- package/dist/components/form/BmsInputNumber.vue.d.ts +26 -0
- package/dist/components/form/BmsInputRadio.vue.d.ts +28 -0
- package/dist/components/form/BmsInputRadioCaption.vue.d.ts +30 -0
- package/dist/components/form/BmsInputRadioCaptionGroup.vue.d.ts +30 -0
- package/dist/components/form/BmsInputRadioGroup.vue.d.ts +30 -0
- package/dist/components/form/BmsInputText.spec.d.ts +1 -0
- package/dist/components/form/BmsInputText.vue.d.ts +128 -0
- package/dist/components/form/BmsInputToggle.vue.d.ts +15 -0
- package/dist/components/form/BmsSearch.spec.d.ts +1 -0
- package/dist/components/form/BmsSearch.vue.d.ts +187 -0
- package/dist/components/form/BmsSelect.spec.d.ts +1 -0
- package/dist/components/form/BmsSelect.vue.d.ts +34 -0
- package/dist/components/form/BmsTag.vue.d.ts +25 -0
- package/dist/components/form/BmsTextArea.spec.d.ts +1 -0
- package/dist/components/form/BmsTextArea.vue.d.ts +26 -0
- package/dist/components/form/RawAutocomplete.spec.d.ts +1 -0
- package/dist/components/form/RawAutocomplete.vue.d.ts +130 -0
- package/dist/components/form/RawInputText.vue.d.ts +42 -0
- package/dist/components/form/UiBmsInputCheckbox.vue.d.ts +28 -0
- package/dist/components/form/UiBmsSwitch.vue.d.ts +14 -0
- package/dist/components/layout/BmsCard.vue.d.ts +21 -0
- package/dist/components/layout/BmsContentPageLayout.vue.d.ts +17 -0
- package/dist/components/layout/BmsForm.vue.d.ts +7 -0
- package/dist/components/layout/BmsHeader.vue.d.ts +9 -0
- package/dist/components/layout/BmsHeaderTitle.vue.d.ts +22 -0
- package/dist/components/layout/BmsModal.spec.d.ts +1 -0
- package/dist/components/layout/BmsModal.vue.d.ts +60 -0
- package/dist/components/layout/BmsOverlay.vue.d.ts +13 -0
- package/dist/components/layout/BmsSection.vue.d.ts +15 -0
- package/dist/components/layout/BmsStep.vue.d.ts +27 -0
- package/dist/components/layout/BmsStepper.vue.d.ts +13 -0
- package/dist/components/layout/UiPopoverMenu.vue.d.ts +23 -0
- package/dist/components/navigation/BmsBackButton.vue.d.ts +13 -0
- package/dist/components/navigation/BmsBreadcrumb.vue.d.ts +12 -0
- package/dist/components/navigation/BmsLink.spec.d.ts +1 -0
- package/dist/components/navigation/BmsLink.vue.d.ts +22 -0
- package/dist/components/navigation/BmsMenu.spec.d.ts +1 -0
- package/dist/components/navigation/BmsMenu.vue.d.ts +21 -0
- package/dist/components/navigation/BmsMenuNav.spec.d.ts +1 -0
- package/dist/components/navigation/BmsMenuNav.vue.d.ts +23 -0
- package/dist/components/navigation/BmsShortLinkMenu.vue.d.ts +20 -0
- package/dist/components/navigation/BmsTabs.vue.d.ts +7 -0
- package/dist/components/navigation/BmsTenantSwitcher.vue.d.ts +22 -0
- package/dist/components/navigation/UiMenuItem.vue.d.ts +11 -0
- package/dist/components/navigation/UiTab.vue.d.ts +15 -0
- package/dist/components/navigation/UiTenantImage.vue.d.ts +6 -0
- package/dist/components/navigation/UiTenantLabel.vue.d.ts +12 -0
- package/dist/components/navigation/UiTenantSwitcher.spec.d.ts +1 -0
- package/dist/components/navigation/UiTenantSwitcher.vue.d.ts +189 -0
- package/dist/components/table/BmsEmptyScreen.vue.d.ts +6 -0
- package/dist/components/table/BmsPagination.spec.d.ts +1 -0
- package/dist/components/table/BmsPagination.vue.d.ts +35 -0
- package/dist/components/table/BmsServerTable.vue.d.ts +74 -0
- package/dist/components/table/BmsTable.spec.d.ts +1 -0
- package/dist/components/table/BmsTable.vue.d.ts +53 -0
- package/dist/components/table/BmsTableFilters.spec.d.ts +1 -0
- package/dist/components/table/BmsTableFilters.vue.d.ts +188 -0
- package/dist/components/table/DraggableList.vue.d.ts +26 -0
- package/dist/components/table/UiBmsTable.spec.d.ts +1 -0
- package/dist/components/table/UiBmsTable.vue.d.ts +66 -0
- package/dist/components/table/UiFilterButton.vue.d.ts +13 -0
- package/dist/components/utils/BmsCocarde.vue.d.ts +11 -0
- package/dist/components/utils/BmsProblem.vue.d.ts +9 -0
- package/dist/components/utils/BmsRelativeTime.spec.d.ts +1 -0
- package/dist/components/utils/BmsRelativeTime.vue.d.ts +11 -0
- package/dist/composables/clipboard.composable.d.ts +3 -0
- package/dist/composables/index.d.ts +5 -0
- package/dist/composables/pagination.composable.d.ts +14 -0
- package/dist/composables/pagination.composable.spec.d.ts +1 -0
- package/dist/composables/search.composable.d.ts +52 -0
- package/dist/composables/search.composable.spec.d.ts +1 -0
- package/dist/composables/search.helper.d.ts +7 -0
- package/dist/composables/search.helper.spec.d.ts +1 -0
- package/dist/composables/sort.composable.d.ts +10 -0
- package/dist/composables/sort.composable.spec.d.ts +1 -0
- package/dist/composables/userPref.composable.d.ts +6 -0
- package/dist/composables/userPref.composable.spec.d.ts +1 -0
- package/dist/favicon.ico +0 -0
- package/dist/helpers/cocarde.helper.d.ts +1 -0
- package/dist/helpers/cocarde.helper.spec.d.ts +1 -0
- package/dist/helpers/date.helper.d.ts +26 -0
- package/dist/helpers/date.helper.spec.d.ts +1 -0
- package/dist/helpers/file.helper.d.ts +5 -0
- package/dist/helpers/file.helper.spec.d.ts +1 -0
- package/dist/helpers/index.d.ts +6 -0
- package/dist/helpers/location.helper.d.ts +10 -0
- package/dist/helpers/location.helper.spec.d.ts +1 -0
- package/dist/helpers/problem.helper.d.ts +1 -0
- package/dist/helpers/problem.helper.spec.d.ts +1 -0
- package/dist/helpers/string.helper.d.ts +9 -0
- package/dist/helpers/string.helper.spec.d.ts +1 -0
- package/dist/helpers/table.helper.d.ts +16 -0
- package/dist/helpers/table.helper.spec.d.ts +1 -0
- package/dist/index.d.ts +72 -0
- package/dist/logo.png +0 -0
- package/dist/main.d.ts +0 -0
- package/dist/mockServiceWorker.js +344 -0
- package/dist/models/breadcrumb.model.d.ts +5 -0
- package/dist/models/caption.model.d.ts +6 -0
- package/dist/models/chip.model.d.ts +8 -0
- package/dist/models/cocarde.model.d.ts +4 -0
- package/dist/models/form.model.d.ts +25 -0
- package/dist/models/index.d.ts +14 -0
- package/dist/models/menu.model.d.ts +18 -0
- package/dist/models/modal.model.d.ts +8 -0
- package/dist/models/problem.model.d.ts +14 -0
- package/dist/models/sort.model.d.ts +11 -0
- package/dist/models/status-type.model.d.ts +7 -0
- package/dist/models/tab.model.d.ts +7 -0
- package/dist/models/table.model.d.ts +53 -0
- package/dist/models/tenant.model.d.ts +7 -0
- package/dist/models/tooltip.model.d.ts +6 -0
- package/dist/plugins/confirm/index.d.ts +9 -0
- package/dist/plugins/feature-flipper/FeatureFlipper.vue.d.ts +9 -0
- package/dist/plugins/feature-flipper/FeatureFlipperIndicator.vue.d.ts +6 -0
- package/dist/plugins/feature-flipper/FeatureFlipperModal.vue.d.ts +16 -0
- package/dist/plugins/feature-flipper/featureFlipper.composable.d.ts +10 -0
- package/dist/plugins/feature-flipper/featureFlipper.composable.spec.d.ts +1 -0
- package/dist/plugins/feature-flipper/featureFlipper.model.d.ts +3 -0
- package/dist/plugins/feature-flipper/index.d.ts +4 -0
- package/dist/plugins/field/FieldComponent.spec.d.ts +1 -0
- package/dist/plugins/field/FieldComponent.vue.d.ts +25 -0
- package/dist/plugins/field/FieldDatalist.vue.d.ts +27 -0
- package/dist/plugins/field/index.d.ts +2 -0
- package/dist/plugins/keycloak-auth-adapter/index.d.ts +20 -0
- package/dist/plugins/notifications/NotificationItem.vue.d.ts +12 -0
- package/dist/plugins/notifications/NotificationWidget.vue.d.ts +2 -0
- package/dist/plugins/notifications/index.d.ts +11 -0
- package/dist/plugins/notifications/notification.model.d.ts +20 -0
- package/dist/plugins/router-history/index.d.ts +6 -0
- package/dist/plugins/router-history/router-history.composable.d.ts +7 -0
- package/dist/plugins/router-history/router-history.composable.spec.d.ts +1 -0
- package/dist/plugins/runtime-env/index.d.ts +7 -0
- package/dist/services/index.d.ts +1 -0
- package/dist/services/konami.service.d.ts +2 -0
- package/dist/showroom/App.vue.d.ts +2 -0
- package/dist/showroom/router.d.ts +8 -0
- package/dist/sipa-bms-ui.css +3024 -0
- package/dist/sipa-bms-ui.es.js +102694 -0
- package/dist/sipa-bms-ui.es.js.map +1 -0
- package/dist/sipa-bms-ui.umd.js +102815 -0
- package/dist/sipa-bms-ui.umd.js.map +1 -0
- package/package.json +126 -0
- package/src/assets/animated-icons/AnimatedActivityIcon.vue +77 -0
- package/src/assets/animated-icons/AnimatedCircleHelpIcon.vue +67 -0
- package/src/assets/animated-icons/AnimatedHomeIcon.vue +69 -0
- package/src/assets/empty.svg +1 -0
- package/src/assets/scss/_conf.scss +203 -0
- package/src/assets/scss/_formkit.scss +353 -0
- package/src/assets/scss/app.scss +11 -0
- package/src/assets/scss/global-variables.scss +56 -0
- package/src/components/button/BmsAllButtons.stories.js +56 -0
- package/src/components/button/BmsButton.spec.ts +37 -0
- package/src/components/button/BmsButton.stories.js +84 -0
- package/src/components/button/BmsButton.vue +50 -0
- package/src/components/button/BmsIconButton.stories.js +67 -0
- package/src/components/button/BmsIconButton.vue +34 -0
- package/src/components/button/UiButton.stories.js +131 -0
- package/src/components/button/UiButton.vue +37 -0
- package/src/components/button/UiButtonLink.vue +186 -0
- package/src/components/feedback/BmsAlert.stories.js +75 -0
- package/src/components/feedback/BmsAlert.vue +91 -0
- package/src/components/feedback/BmsBadge.stories.js +34 -0
- package/src/components/feedback/BmsBadge.vue +76 -0
- package/src/components/feedback/BmsCaption.stories.js +59 -0
- package/src/components/feedback/BmsCaption.vue +88 -0
- package/src/components/feedback/BmsCircularProgress.spec.ts +14 -0
- package/src/components/feedback/BmsCircularProgress.stories.js +45 -0
- package/src/components/feedback/BmsCircularProgress.vue +64 -0
- package/src/components/feedback/BmsLoader.spec.ts +7 -0
- package/src/components/feedback/BmsLoader.stories.js +31 -0
- package/src/components/feedback/BmsLoader.vue +82 -0
- package/src/components/feedback/BmsTooltip.stories.js +65 -0
- package/src/components/feedback/BmsTooltip.vue +102 -0
- package/src/components/feedback/Notification.stories.js +37 -0
- package/src/components/feedback/UiTooltip.spec.ts +62 -0
- package/src/components/feedback/UiTooltip.stories.js +71 -0
- package/src/components/feedback/UiTooltip.vue +219 -0
- package/src/components/feedback/tooltip.helper.spec.ts +92 -0
- package/src/components/feedback/tooltip.helper.ts +121 -0
- package/src/components/form/BmsAutocomplete.stories.js +90 -0
- package/src/components/form/BmsAutocomplete.vue +100 -0
- package/src/components/form/BmsBetweenInput.stories.js +69 -0
- package/src/components/form/BmsBetweenInput.vue +146 -0
- package/src/components/form/BmsChip.stories.js +65 -0
- package/src/components/form/BmsChip.vue +92 -0
- package/src/components/form/BmsFilePicker.spec.ts +94 -0
- package/src/components/form/BmsFilePicker.stories.js +53 -0
- package/src/components/form/BmsFilePicker.vue +186 -0
- package/src/components/form/BmsInputBooleanCheckbox.stories.js +90 -0
- package/src/components/form/BmsInputBooleanCheckbox.vue +70 -0
- package/src/components/form/BmsInputCheckboxCaption.spec.ts +45 -0
- package/src/components/form/BmsInputCheckboxCaption.stories.js +92 -0
- package/src/components/form/BmsInputCheckboxCaption.vue +126 -0
- package/src/components/form/BmsInputCheckboxCaptionGroup.stories.js +153 -0
- package/src/components/form/BmsInputCheckboxCaptionGroup.vue +81 -0
- package/src/components/form/BmsInputCheckboxGroup.stories.js +94 -0
- package/src/components/form/BmsInputCheckboxGroup.vue +94 -0
- package/src/components/form/BmsInputCode.stories.js +43 -0
- package/src/components/form/BmsInputCode.vue +71 -0
- package/src/components/form/BmsInputDateTime.stories.js +71 -0
- package/src/components/form/BmsInputDateTime.vue +55 -0
- package/src/components/form/BmsInputFile.spec.ts +90 -0
- package/src/components/form/BmsInputFile.stories.js +156 -0
- package/src/components/form/BmsInputFile.vue +310 -0
- package/src/components/form/BmsInputNumber.spec.ts +40 -0
- package/src/components/form/BmsInputNumber.stories.js +79 -0
- package/src/components/form/BmsInputNumber.vue +67 -0
- package/src/components/form/BmsInputRadio.stories.js +79 -0
- package/src/components/form/BmsInputRadio.vue +121 -0
- package/src/components/form/BmsInputRadioCaption.stories.js +98 -0
- package/src/components/form/BmsInputRadioCaption.vue +110 -0
- package/src/components/form/BmsInputRadioCaptionGroup.stories.js +166 -0
- package/src/components/form/BmsInputRadioCaptionGroup.vue +81 -0
- package/src/components/form/BmsInputRadioGroup.stories.js +108 -0
- package/src/components/form/BmsInputRadioGroup.vue +93 -0
- package/src/components/form/BmsInputText.spec.ts +37 -0
- package/src/components/form/BmsInputText.stories.js +78 -0
- package/src/components/form/BmsInputText.vue +79 -0
- package/src/components/form/BmsInputToggle.stories.js +37 -0
- package/src/components/form/BmsInputToggle.vue +66 -0
- package/src/components/form/BmsSearch.spec.ts +41 -0
- package/src/components/form/BmsSearch.stories.js +70 -0
- package/src/components/form/BmsSearch.vue +62 -0
- package/src/components/form/BmsSelect.spec.ts +57 -0
- package/src/components/form/BmsSelect.stories.js +131 -0
- package/src/components/form/BmsSelect.vue +225 -0
- package/src/components/form/BmsTag.stories.js +64 -0
- package/src/components/form/BmsTag.vue +109 -0
- package/src/components/form/BmsTextArea.spec.ts +37 -0
- package/src/components/form/BmsTextArea.stories.js +74 -0
- package/src/components/form/BmsTextArea.vue +112 -0
- package/src/components/form/Form.stories.js +35 -0
- package/src/components/form/RawAutocomplete.spec.ts +103 -0
- package/src/components/form/RawAutocomplete.vue +218 -0
- package/src/components/form/RawInputText.vue +173 -0
- package/src/components/form/UiBmsInputCheckbox.stories.js +77 -0
- package/src/components/form/UiBmsInputCheckbox.vue +126 -0
- package/src/components/form/UiBmsSwitch.stories.js +40 -0
- package/src/components/form/UiBmsSwitch.vue +80 -0
- package/src/components/layout/BmsCard.stories.js +77 -0
- package/src/components/layout/BmsCard.vue +133 -0
- package/src/components/layout/BmsContentPageLayout.vue +92 -0
- package/src/components/layout/BmsForm.stories.js +30 -0
- package/src/components/layout/BmsForm.vue +42 -0
- package/src/components/layout/BmsHeader.stories.js +29 -0
- package/src/components/layout/BmsHeader.vue +16 -0
- package/src/components/layout/BmsHeaderTitle.stories.js +68 -0
- package/src/components/layout/BmsHeaderTitle.vue +76 -0
- package/src/components/layout/BmsModal.spec.ts +174 -0
- package/src/components/layout/BmsModal.stories.js +153 -0
- package/src/components/layout/BmsModal.vue +359 -0
- package/src/components/layout/BmsOverlay.stories.js +34 -0
- package/src/components/layout/BmsOverlay.vue +28 -0
- package/src/components/layout/BmsSection.stories.js +45 -0
- package/src/components/layout/BmsSection.vue +35 -0
- package/src/components/layout/BmsStep.stories.js +71 -0
- package/src/components/layout/BmsStep.vue +60 -0
- package/src/components/layout/BmsStepper.stories.js +57 -0
- package/src/components/layout/BmsStepper.vue +195 -0
- package/src/components/layout/UiPopoverMenu.vue +167 -0
- package/src/components/navigation/BmsBackButton.stories.js +27 -0
- package/src/components/navigation/BmsBackButton.vue +38 -0
- package/src/components/navigation/BmsBreadcrumb.stories.js +80 -0
- package/src/components/navigation/BmsBreadcrumb.vue +45 -0
- package/src/components/navigation/BmsLink.spec.ts +45 -0
- package/src/components/navigation/BmsLink.vue +59 -0
- package/src/components/navigation/BmsMenu.spec.ts +95 -0
- package/src/components/navigation/BmsMenu.stories.js +85 -0
- package/src/components/navigation/BmsMenu.vue +148 -0
- package/src/components/navigation/BmsMenuNav.spec.ts +140 -0
- package/src/components/navigation/BmsMenuNav.stories.js +187 -0
- package/src/components/navigation/BmsMenuNav.vue +217 -0
- package/src/components/navigation/BmsShortLinkMenu.stories.js +55 -0
- package/src/components/navigation/BmsShortLinkMenu.vue +59 -0
- package/src/components/navigation/BmsTabs.stories.js +30 -0
- package/src/components/navigation/BmsTabs.vue +46 -0
- package/src/components/navigation/BmsTenantSwitcher.stories.js +89 -0
- package/src/components/navigation/BmsTenantSwitcher.vue +135 -0
- package/src/components/navigation/UiMenuItem.stories.js +73 -0
- package/src/components/navigation/UiMenuItem.vue +116 -0
- package/src/components/navigation/UiMenuItemStatus.stories.js +58 -0
- package/src/components/navigation/UiTab.stories.js +56 -0
- package/src/components/navigation/UiTab.vue +71 -0
- package/src/components/navigation/UiTenantImage.vue +22 -0
- package/src/components/navigation/UiTenantLabel.vue +94 -0
- package/src/components/navigation/UiTenantSwitcher.spec.ts +167 -0
- package/src/components/navigation/UiTenantSwitcher.stories.js +70 -0
- package/src/components/navigation/UiTenantSwitcher.vue +161 -0
- package/src/components/table/BmsEmptyScreen.stories.js +32 -0
- package/src/components/table/BmsEmptyScreen.vue +54 -0
- package/src/components/table/BmsPagination.spec.ts +73 -0
- package/src/components/table/BmsPagination.stories.js +34 -0
- package/src/components/table/BmsPagination.vue +154 -0
- package/src/components/table/BmsServerTable.stories.js +422 -0
- package/src/components/table/BmsServerTable.vue +402 -0
- package/src/components/table/BmsTable.spec.ts +309 -0
- package/src/components/table/BmsTable.stories.js +930 -0
- package/src/components/table/BmsTable.vue +308 -0
- package/src/components/table/BmsTableFilters.spec.ts +494 -0
- package/src/components/table/BmsTableFilters.stories.js +114 -0
- package/src/components/table/BmsTableFilters.vue +268 -0
- package/src/components/table/DraggableList.stories.js +29 -0
- package/src/components/table/DraggableList.vue +179 -0
- package/src/components/table/UiBmsTable.spec.ts +373 -0
- package/src/components/table/UiBmsTable.stories.js +563 -0
- package/src/components/table/UiBmsTable.vue +617 -0
- package/src/components/table/UiFilterButton.stories.js +37 -0
- package/src/components/table/UiFilterButton.vue +85 -0
- package/src/components/utils/BmsCocarde.stories.js +47 -0
- package/src/components/utils/BmsCocarde.vue +66 -0
- package/src/components/utils/BmsProblem.stories.js +82 -0
- package/src/components/utils/BmsProblem.vue +223 -0
- package/src/components/utils/BmsRelativeTime.spec.ts +41 -0
- package/src/components/utils/BmsRelativeTime.stories.js +48 -0
- package/src/components/utils/BmsRelativeTime.vue +57 -0
- package/src/composables/clipboard.composable.ts +14 -0
- package/src/composables/index.ts +5 -0
- package/src/composables/pagination.composable.spec.ts +258 -0
- package/src/composables/pagination.composable.ts +111 -0
- package/src/composables/search.composable.spec.ts +1296 -0
- package/src/composables/search.composable.ts +316 -0
- package/src/composables/search.helper.spec.ts +339 -0
- package/src/composables/search.helper.ts +103 -0
- package/src/composables/sort.composable.spec.ts +349 -0
- package/src/composables/sort.composable.ts +129 -0
- package/src/composables/userPref.composable.spec.ts +115 -0
- package/src/composables/userPref.composable.ts +43 -0
- package/src/documentation/ColorTile.vue +23 -0
- package/src/documentation/assets/BmsIcon.png +0 -0
- package/src/documentation/assets/CoverBmsUI.png +0 -0
- package/src/documentation/assets/button/CoverPrimaryButton.png +0 -0
- package/src/documentation/assets/button/CoverSecondaryButton.png +0 -0
- package/src/documentation/assets/button/DoButtonLabel.png +0 -0
- package/src/documentation/assets/button/DontButtonLabel.png +0 -0
- package/src/documentation/assets/button/PrimaryButtonRepresentation.png +0 -0
- package/src/documentation/assets/cards/CardRepresentation.png +0 -0
- package/src/documentation/assets/cards/CoverCard.png +0 -0
- package/src/documentation/assets/chip/ChipRepresentation.png +0 -0
- package/src/documentation/assets/chip/CoverChips.png +0 -0
- package/src/documentation/assets/fields/Anatomy.png +0 -0
- package/src/documentation/assets/fields/CaptionRepresentation.png +0 -0
- package/src/documentation/assets/fields/CaptionTextRepresentation.png +0 -0
- package/src/documentation/assets/fields/CoverFieldsAnatomy.png +0 -0
- package/src/documentation/assets/fields/CoverInputFile.png +0 -0
- package/src/documentation/assets/fields/CoverInputText.png +0 -0
- package/src/documentation/assets/fields/CoverRadioCaptionGroup.png +0 -0
- package/src/documentation/assets/fields/CoverRadioGroup.png +0 -0
- package/src/documentation/assets/fields/CoverSearch.png +0 -0
- package/src/documentation/assets/fields/CoverSelect.png +0 -0
- package/src/documentation/assets/fields/CoverTextArea.png +0 -0
- package/src/documentation/assets/fields/FieldLabel.png +0 -0
- package/src/documentation/assets/fields/InputMediaRepresentation.png +0 -0
- package/src/documentation/assets/fields/InputRepresentation.png +0 -0
- package/src/documentation/assets/fields/InputSearchRepresentation.png +0 -0
- package/src/documentation/assets/fields/InputText.png +0 -0
- package/src/documentation/assets/fields/InputTextAreaRepresentation.png +0 -0
- package/src/documentation/assets/fields/LabelDo.png +0 -0
- package/src/documentation/assets/fields/LabelDont.png +0 -0
- package/src/documentation/assets/fields/LabelRepresentation.png +0 -0
- package/src/documentation/assets/fields/RadioCaptionGroupRepresentation.png +0 -0
- package/src/documentation/assets/fields/RadioGroupRepresentation.png +0 -0
- package/src/documentation/assets/fields/SelectRepresentation.png +0 -0
- package/src/documentation/assets/tag/CoverTag.png +0 -0
- package/src/documentation/assets/tag/TagRepresentation.png +0 -0
- package/src/documentation/button.mdx +24 -0
- package/src/documentation/card.mdx +28 -0
- package/src/documentation/chip.mdx +28 -0
- package/src/documentation/colors.mdx +118 -0
- package/src/documentation/fields.mdx +52 -0
- package/src/documentation/fields_text.mdx +31 -0
- package/src/documentation/icons.mdx +33 -0
- package/src/documentation/inputFile.mdx +28 -0
- package/src/documentation/primaryButton.mdx +20 -0
- package/src/documentation/principles.mdx +23 -0
- package/src/documentation/radioCaptionGroup.mdx +34 -0
- package/src/documentation/radioGroup.mdx +34 -0
- package/src/documentation/search.mdx +28 -0
- package/src/documentation/secondaryButton.mdx +17 -0
- package/src/documentation/select.mdx +31 -0
- package/src/documentation/tag.mdx +28 -0
- package/src/documentation/template_field_dependency.mdx +19 -0
- package/src/documentation/textArea.mdx +27 -0
- package/src/documentation/typography.mdx +93 -0
- package/src/documentation/typography.stories.js +26 -0
- package/src/helpers/cocarde.helper.spec.ts +14 -0
- package/src/helpers/cocarde.helper.ts +22 -0
- package/src/helpers/date.helper.spec.ts +91 -0
- package/src/helpers/date.helper.ts +105 -0
- package/src/helpers/file.helper.spec.ts +60 -0
- package/src/helpers/file.helper.ts +24 -0
- package/src/helpers/index.ts +6 -0
- package/src/helpers/location.helper.spec.ts +195 -0
- package/src/helpers/location.helper.ts +53 -0
- package/src/helpers/problem.helper.spec.ts +21 -0
- package/src/helpers/problem.helper.ts +4 -0
- package/src/helpers/string.helper.spec.ts +186 -0
- package/src/helpers/string.helper.ts +83 -0
- package/src/helpers/table.helper.spec.ts +141 -0
- package/src/helpers/table.helper.ts +88 -0
- package/src/index.ts +203 -0
- package/src/main.ts +25 -0
- package/src/models/breadcrumb.model.ts +6 -0
- package/src/models/caption.model.ts +7 -0
- package/src/models/chip.model.ts +8 -0
- package/src/models/cocarde.model.ts +4 -0
- package/src/models/form.model.ts +30 -0
- package/src/models/index.ts +14 -0
- package/src/models/menu.model.ts +20 -0
- package/src/models/modal.model.ts +9 -0
- package/src/models/problem.model.ts +10 -0
- package/src/models/sort.model.ts +13 -0
- package/src/models/status-type.model.ts +7 -0
- package/src/models/tab.model.ts +7 -0
- package/src/models/table.model.ts +58 -0
- package/src/models/tenant.model.ts +7 -0
- package/src/models/tooltip.model.ts +6 -0
- package/src/pages/Form.stories.js +83 -0
- package/src/pages/List.stories.js +88 -0
- package/src/plugins/confirm/index.ts +109 -0
- package/src/plugins/feature-flipper/FeatureFlipper.vue +23 -0
- package/src/plugins/feature-flipper/FeatureFlipperIndicator.vue +27 -0
- package/src/plugins/feature-flipper/FeatureFlipperModal.vue +68 -0
- package/src/plugins/feature-flipper/featureFlipper.composable.spec.ts +107 -0
- package/src/plugins/feature-flipper/featureFlipper.composable.ts +68 -0
- package/src/plugins/feature-flipper/featureFlipper.model.ts +1 -0
- package/src/plugins/feature-flipper/index.ts +15 -0
- package/src/plugins/field/FieldComponent.spec.ts +34 -0
- package/src/plugins/field/FieldComponent.stories.js +78 -0
- package/src/plugins/field/FieldComponent.vue +208 -0
- package/src/plugins/field/FieldDatalist.stories.js +35 -0
- package/src/plugins/field/FieldDatalist.vue +68 -0
- package/src/plugins/field/index.ts +31 -0
- package/src/plugins/keycloak-auth-adapter/index.ts +102 -0
- package/src/plugins/notifications/NotificationItem.stories.js +60 -0
- package/src/plugins/notifications/NotificationItem.vue +116 -0
- package/src/plugins/notifications/NotificationWidget.vue +129 -0
- package/src/plugins/notifications/index.ts +83 -0
- package/src/plugins/notifications/notification.model.ts +24 -0
- package/src/plugins/notifications/notifications.spec.js +78 -0
- package/src/plugins/router-history/index.ts +23 -0
- package/src/plugins/router-history/router-history.composable.spec.ts +323 -0
- package/src/plugins/router-history/router-history.composable.ts +47 -0
- package/src/plugins/runtime-env/index.ts +19 -0
- package/src/services/index.ts +1 -0
- package/src/services/konami.service.ts +28 -0
- package/src/showroom/App.vue +109 -0
- package/src/showroom/db.json +1967 -0
- package/src/showroom/pages/autocomplete.vue +54 -0
- package/src/showroom/pages/draggable-list.vue +20 -0
- package/src/showroom/pages/file-picker.vue +74 -0
- package/src/showroom/pages/forms.vue +389 -0
- package/src/showroom/pages/index.vue +209 -0
- package/src/showroom/pages/paginated-cards.vue +48 -0
- package/src/showroom/pages/server-table.vue +160 -0
- package/src/showroom/pages/stepper.vue +37 -0
- package/src/showroom/pages/table.vue +192 -0
- package/src/showroom/pages/tabs/[tabName].vue +28 -0
- package/src/showroom/router.ts +15 -0
- package/src/showroom/server.js +45 -0
- package/src/vite-env.d.ts +9 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
const LOCAL_STORAGE_USER_PREF_KEY = 'userPref';
|
|
2
|
+
|
|
3
|
+
export const useUserPref = () => {
|
|
4
|
+
const saveUserPref = (
|
|
5
|
+
key: string,
|
|
6
|
+
value: any,
|
|
7
|
+
path: string = 'global',
|
|
8
|
+
): void => {
|
|
9
|
+
const userPref = getUserPrefFromLocalStorage();
|
|
10
|
+
const pathPref = userPref[path] || {};
|
|
11
|
+
pathPref[key] = value;
|
|
12
|
+
userPref[path] = pathPref;
|
|
13
|
+
setUserPrefFromLocalStorage(userPref);
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
const getUserPref = (key: string, path: string = 'global'): any => {
|
|
17
|
+
const userPref = getUserPrefFromLocalStorage();
|
|
18
|
+
const pathPref = userPref[path];
|
|
19
|
+
if (!pathPref) {
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
return pathPref[key] || undefined;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
return {
|
|
26
|
+
saveUserPref,
|
|
27
|
+
getUserPref,
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export const getUserPrefFromLocalStorage = (): any => {
|
|
32
|
+
try {
|
|
33
|
+
return JSON.parse(
|
|
34
|
+
localStorage.getItem(LOCAL_STORAGE_USER_PREF_KEY) || '{}',
|
|
35
|
+
);
|
|
36
|
+
} catch (e) {
|
|
37
|
+
return {};
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export const setUserPrefFromLocalStorage = (userPref: any): void => {
|
|
42
|
+
localStorage.setItem(LOCAL_STORAGE_USER_PREF_KEY, JSON.stringify(userPref));
|
|
43
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<span class="color-tile" :style="{ '--current-color': `var(${color})` }">
|
|
3
|
+
{{ color }}
|
|
4
|
+
</span>
|
|
5
|
+
</template>
|
|
6
|
+
|
|
7
|
+
<script setup lang="ts">
|
|
8
|
+
defineProps<{ color: string }>();
|
|
9
|
+
</script>
|
|
10
|
+
|
|
11
|
+
<style scoped>
|
|
12
|
+
.color-tile {
|
|
13
|
+
background-color: var(--current-color);
|
|
14
|
+
width: 100px;
|
|
15
|
+
height: 100px;
|
|
16
|
+
color: black;
|
|
17
|
+
display: flex;
|
|
18
|
+
margin: 4px;
|
|
19
|
+
font-size: 12px;
|
|
20
|
+
align-items: center;
|
|
21
|
+
justify-content: center;
|
|
22
|
+
}
|
|
23
|
+
</style>
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Canvas, Meta, Story } from '@storybook/addon-docs/blocks';
|
|
2
|
+
|
|
3
|
+
<Meta title="Documentation/Buttons/Anatomy" />
|
|
4
|
+
|
|
5
|
+
# <img src="./BmsIcon.png" /> Anatomy
|
|
6
|
+
|
|
7
|
+
Buttons allow users to perform an action or to navigate to another page. They have multiple styles for various needs, and are ideal for calling attention to where a user needs to do something in order to move forward in a flow.
|
|
8
|
+
|
|
9
|
+

|
|
10
|
+
|
|
11
|
+
## Rules
|
|
12
|
+
|
|
13
|
+
<table>
|
|
14
|
+
<tr>
|
|
15
|
+
<td>✅ Do</td>
|
|
16
|
+
<td>⛔ Don't</td>
|
|
17
|
+
</tr>
|
|
18
|
+
<tr>
|
|
19
|
+
<td></td>
|
|
20
|
+
<td></td>
|
|
21
|
+
</tr>
|
|
22
|
+
</table>
|
|
23
|
+
|
|
24
|
+
_Limit to maximum three words in button label_
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
Stories,
|
|
6
|
+
Controls,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
import { Default as CardDefault } from '../components/layout/BmsCard.stories.js';
|
|
9
|
+
|
|
10
|
+
<Meta title="Documentation/Organisms/Card" />
|
|
11
|
+
|
|
12
|
+
# <img src="./BmsIcon.png" /> Card
|
|
13
|
+
|
|
14
|
+
Card group informations into flexible containers, allowing users to browse elements in a more visual way than a table. They present a taste of the information, and provide access to more detail if required.
|
|
15
|
+
|
|
16
|
+

|
|
17
|
+
|
|
18
|
+
## Anatomy
|
|
19
|
+
|
|
20
|
+

|
|
21
|
+
|
|
22
|
+
## Component
|
|
23
|
+
|
|
24
|
+
<Canvas of={CardDefault} args={{ label: 'toto' }} />
|
|
25
|
+
|
|
26
|
+
### Table of props
|
|
27
|
+
|
|
28
|
+
<Controls of={CardDefault} />
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
Stories,
|
|
6
|
+
Controls,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
import { Default as ChipDefault } from '../components/form/BmsChip.stories.js';
|
|
9
|
+
|
|
10
|
+
<Meta title="Documentation/Chip" />
|
|
11
|
+
|
|
12
|
+
# <img src="./BmsIcon.png" /> Chip
|
|
13
|
+
|
|
14
|
+
A Chip is a component to make data representation, there is no actions attached to him.
|
|
15
|
+
|
|
16
|
+

|
|
17
|
+
|
|
18
|
+
## Anatomy
|
|
19
|
+
|
|
20
|
+

|
|
21
|
+
|
|
22
|
+
## Component
|
|
23
|
+
|
|
24
|
+
<Canvas of={ChipDefault} args={{ label: 'toto' }} />
|
|
25
|
+
|
|
26
|
+
### Table of props
|
|
27
|
+
|
|
28
|
+
<Controls of={ChipDefault} />
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
ColorPalette,
|
|
6
|
+
ColorItem,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
|
|
9
|
+
<Meta title="Documentation/Style/Colors" />
|
|
10
|
+
|
|
11
|
+
# <img src="./BmsIcon.png" /> Colors
|
|
12
|
+
|
|
13
|
+
The BMS UI color system is based around a primary color that is defined by the product, the other colors are agnostic and should not change.
|
|
14
|
+
The tone of a color is characterized by a percentage of its transparency which gives it its name.
|
|
15
|
+
For example, the primary color is always Main-100 its next tone will be at 75% which will give a lighter color that will be named Main-75.
|
|
16
|
+
|
|
17
|
+
We keep "System" colors, these colors are reserved to give information that comes from the product, they should only be used to accentuate information:
|
|
18
|
+
|
|
19
|
+
- System / Green: Validation information
|
|
20
|
+
- System / Orange: Warning information
|
|
21
|
+
- System / Red: Danger or problem information
|
|
22
|
+
|
|
23
|
+
## Colors
|
|
24
|
+
|
|
25
|
+
<ColorPalette>
|
|
26
|
+
<ColorItem
|
|
27
|
+
title="Main"
|
|
28
|
+
subtitle=""
|
|
29
|
+
colors={{
|
|
30
|
+
'main-140': '#3F91D9',
|
|
31
|
+
'main-100': '#69A9E1',
|
|
32
|
+
'main-75': '#8EBEE8',
|
|
33
|
+
'main-50': '#B2D2EE',
|
|
34
|
+
'main-25': '#D7E7F5',
|
|
35
|
+
'main-10': '#EDF4F9',
|
|
36
|
+
}}
|
|
37
|
+
/>
|
|
38
|
+
<ColorItem
|
|
39
|
+
title="Main analog"
|
|
40
|
+
subtitle=""
|
|
41
|
+
colors={{
|
|
42
|
+
'main-analog-140': '#5153AC',
|
|
43
|
+
'main-analog-100': '#696CE0',
|
|
44
|
+
'main-analog-75': '#8E90E7',
|
|
45
|
+
'main-analog-50': '#B2B4EE',
|
|
46
|
+
'main-analog-25': '#D7D8F5',
|
|
47
|
+
'main-analog-10': '#EDEEF9',
|
|
48
|
+
}}
|
|
49
|
+
/>
|
|
50
|
+
<ColorItem
|
|
51
|
+
title="Grey"
|
|
52
|
+
subtitle=""
|
|
53
|
+
colors={{
|
|
54
|
+
'grey-140': '#333333',
|
|
55
|
+
'grey-100': '#526476',
|
|
56
|
+
'grey-75': '#7C8A97',
|
|
57
|
+
'grey-50': '#A7B0B9',
|
|
58
|
+
'grey-25': '#D1D6DA',
|
|
59
|
+
'grey-10': '#EBEDEF',
|
|
60
|
+
}}
|
|
61
|
+
/>
|
|
62
|
+
<ColorItem
|
|
63
|
+
title="Green"
|
|
64
|
+
subtitle="System"
|
|
65
|
+
colors={{
|
|
66
|
+
'green-140': '#27731B',
|
|
67
|
+
'green-100': '#57B47D',
|
|
68
|
+
'green-75': '#80C69D',
|
|
69
|
+
'green-50': '#A9D8BC',
|
|
70
|
+
'green-25': '#D3EADC',
|
|
71
|
+
'green-10': '#EFF9EE',
|
|
72
|
+
}}
|
|
73
|
+
/>
|
|
74
|
+
<ColorItem
|
|
75
|
+
title="Orange"
|
|
76
|
+
subtitle="System"
|
|
77
|
+
colors={{
|
|
78
|
+
'orange-140': '#90550b',
|
|
79
|
+
'orange-100': '#F08E13',
|
|
80
|
+
'orange-75': '#F3A94D',
|
|
81
|
+
'orange-50': '#F6C587',
|
|
82
|
+
'orange-25': '#F9E0C2',
|
|
83
|
+
'orange-10': '#FBF1E5',
|
|
84
|
+
}}
|
|
85
|
+
/>
|
|
86
|
+
<ColorItem
|
|
87
|
+
title="Red"
|
|
88
|
+
subtitle="System"
|
|
89
|
+
colors={{
|
|
90
|
+
'red-140': '#7C1212',
|
|
91
|
+
'red-100': '#DC474C',
|
|
92
|
+
'red-75': '#E47478',
|
|
93
|
+
'red-50': '#ECA1A4',
|
|
94
|
+
'red-25': '#F4CFD0',
|
|
95
|
+
'red-10': '#F9EAEB',
|
|
96
|
+
}}
|
|
97
|
+
/>
|
|
98
|
+
<ColorItem
|
|
99
|
+
title="White"
|
|
100
|
+
subtitle=""
|
|
101
|
+
colors={{
|
|
102
|
+
'white': '#FCFCFC',
|
|
103
|
+
|
|
104
|
+
}}
|
|
105
|
+
|
|
106
|
+
/>
|
|
107
|
+
|
|
108
|
+
<ColorItem
|
|
109
|
+
title="Background"
|
|
110
|
+
subtitle=""
|
|
111
|
+
colors={{
|
|
112
|
+
'background': '#F6F6F8',
|
|
113
|
+
|
|
114
|
+
}}
|
|
115
|
+
|
|
116
|
+
/>
|
|
117
|
+
|
|
118
|
+
</ColorPalette>
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
Stories,
|
|
6
|
+
Controls,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
import { Default as FieldDefault } from '../plugins/field/FieldComponent.stories.js';
|
|
9
|
+
import { Default as TextDefault } from '../components/form/BmsInputText.stories.js';
|
|
10
|
+
import { Default as SelectDefault } from '../components/form/BmsSelect.stories.js';
|
|
11
|
+
|
|
12
|
+
<Meta title="Documentation/Fields/Anatomy" />
|
|
13
|
+
|
|
14
|
+
# <img src="./BmsIcon.png" /> Fields
|
|
15
|
+
|
|
16
|
+
Field labels give context to the information that a user needs to input. They're commonly used in forms.
|
|
17
|
+
|
|
18
|
+

|
|
19
|
+
|
|
20
|
+
## Label
|
|
21
|
+
|
|
22
|
+
### Anatomy
|
|
23
|
+
|
|
24
|
+
Labels give context to the information that a user needs to input. They're commonly used in forms.
|
|
25
|
+
|
|
26
|
+

|
|
27
|
+
|
|
28
|
+
#### Usage
|
|
29
|
+
|
|
30
|
+
Inputs should always have a label. In rare cases where context is sufficient and an accessibility expert has reviewed the design, the label could be undefined. For exemple the input search.
|
|
31
|
+
|
|
32
|
+
#### Rules
|
|
33
|
+
|
|
34
|
+
<table>
|
|
35
|
+
<tr>
|
|
36
|
+
<td>✅ Do</td>
|
|
37
|
+
<td>⛔ Don't</td>
|
|
38
|
+
</tr>
|
|
39
|
+
<tr>
|
|
40
|
+
<td></td>
|
|
41
|
+
<td></td>
|
|
42
|
+
</tr>
|
|
43
|
+
</table>
|
|
44
|
+
*Don’t add a colon at the end of a field label*
|
|
45
|
+
|
|
46
|
+
## Caption Text
|
|
47
|
+
|
|
48
|
+

|
|
49
|
+
|
|
50
|
+
#### Usage
|
|
51
|
+
|
|
52
|
+
#### Rules
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
Stories,
|
|
6
|
+
Controls,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
import { Default as FieldDefault } from '../plugins/field/FieldComponent.stories.js';
|
|
9
|
+
import { Default as TextDefault } from '../components/form/BmsInputText.stories.js';
|
|
10
|
+
import BmsInputText from '../components/form/BmsInputText.vue';
|
|
11
|
+
import { Default as SelectDefault } from '../components/form/BmsSelect.stories.js';
|
|
12
|
+
|
|
13
|
+
<Meta title="Documentation/Fields/Input Text" />
|
|
14
|
+
|
|
15
|
+
# <img src="./BmsIcon.png" /> Input Text
|
|
16
|
+
|
|
17
|
+
Text fields allow users to input custom text entries with a keyboard. Various options can be shown with the field to communicate the input requirements.
|
|
18
|
+
|
|
19
|
+

|
|
20
|
+
|
|
21
|
+
## Anatomy
|
|
22
|
+
|
|
23
|
+

|
|
24
|
+
|
|
25
|
+
## Component
|
|
26
|
+
|
|
27
|
+
<Canvas of={TextDefault} args={{ label: 'toto' }} />
|
|
28
|
+
|
|
29
|
+
### Table of props
|
|
30
|
+
|
|
31
|
+
<Controls of={TextDefault} />
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
Stories,
|
|
6
|
+
Controls,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
|
|
9
|
+
<Meta title="Documentation/Style/Icons" />
|
|
10
|
+
|
|
11
|
+
# <img src="./BmsIcon.png" /> Icons
|
|
12
|
+
|
|
13
|
+
BMS UI uses the Lucide library for icons, and we recommend you do the same for visual consistency.
|
|
14
|
+
|
|
15
|
+
All the available icons : <a href="https://lucide.dev/icons/">https://lucide.dev/icons/</a>
|
|
16
|
+
|
|
17
|
+
Installation guide : <a href="https://lucide.dev/guide/installation#vue">https://lucide.dev/guide/installation#vue</a>
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
npm i -D lucide-vue-next
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Usage exemple
|
|
24
|
+
|
|
25
|
+
```jsx
|
|
26
|
+
<script>
|
|
27
|
+
import { ChefHat } from 'lucide-vue-next'
|
|
28
|
+
</script>
|
|
29
|
+
|
|
30
|
+
<template>
|
|
31
|
+
<h2> <ChefHat /> My recipes </h2>
|
|
32
|
+
</template>
|
|
33
|
+
```
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
Stories,
|
|
6
|
+
Controls,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
import { Empty as InputFileDefault } from '../components/form/BmsInputFile.stories.js';
|
|
9
|
+
|
|
10
|
+
<Meta title="Documentation/Fields/Input File" />
|
|
11
|
+
|
|
12
|
+
# <img src="./BmsIcon.png" /> Input File
|
|
13
|
+
|
|
14
|
+
InputFile is a component for uploading one file. After upload its show the result.
|
|
15
|
+
|
|
16
|
+

|
|
17
|
+
|
|
18
|
+
## Anatomy
|
|
19
|
+
|
|
20
|
+

|
|
21
|
+
|
|
22
|
+
## Component
|
|
23
|
+
|
|
24
|
+
<Canvas of={InputFileDefault} args={{ label: 'toto' }} />
|
|
25
|
+
|
|
26
|
+
### Table of props
|
|
27
|
+
|
|
28
|
+
<Controls of={InputFileDefault} />
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Canvas, Meta, Story } from '@storybook/addon-docs/blocks';
|
|
2
|
+
import { Primary as BmsButton } from '../components/button/BmsButton.stories.js';
|
|
3
|
+
|
|
4
|
+
<Meta title="Documentation/Buttons/Primary Button" />
|
|
5
|
+
|
|
6
|
+
# <img src="./BmsIcon.png" /> Primary Button
|
|
7
|
+
|
|
8
|
+
The primary button should represent the main action on a screen, there should only be one primary button on an interface, if multiple actions are possible then it is essential to create a hierarchy of actions and use a primary and several secondary or tertiary.
|
|
9
|
+
|
|
10
|
+

|
|
11
|
+
|
|
12
|
+
## Anatomy
|
|
13
|
+
|
|
14
|
+
Buttons allow users to perform an action or to navigate to another page. They have multiple styles for various needs, and are ideal for calling attention to where a user needs to do something in order to move forward in a flow.
|
|
15
|
+
|
|
16
|
+

|
|
17
|
+
|
|
18
|
+
## Component
|
|
19
|
+
|
|
20
|
+
<Canvas of={BmsButton} args={{ type: 'primary' }} />
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
Stories,
|
|
6
|
+
Controls,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
|
|
9
|
+

|
|
10
|
+
|
|
11
|
+
<Meta title="Documentation/Principles" />
|
|
12
|
+
|
|
13
|
+
# <img src="./BmsIcon.png" /> Principles
|
|
14
|
+
|
|
15
|
+
The principle of bms UI is to provide a unique Design System for the Sipa group, which is solely dedicated to the Back Office tools of the group. Its goal is to limit the use of the Vue Framework and to offer a unique approach in interface design and construction in order to streamline costs and provide uniform interfaces to users.
|
|
16
|
+
|
|
17
|
+
## Focused
|
|
18
|
+
|
|
19
|
+
bms UI focuses on the essentials, we concentrate on what is useful for interfaces and only what is necessary, we aim to offer a simple and effective Design System.
|
|
20
|
+
|
|
21
|
+
## Design System by constraint
|
|
22
|
+
|
|
23
|
+
A constraint-based design system is designed to offer a consistent user experience across all products that use it. By limiting possible interpretations, this type of design system provides a clear and consistent logic that facilitates understanding and use of the products. Constraints can be applied to visual elements such as colors, typography, and font sizes, as well as interactive elements such as buttons and menus. By using a constraint-based design system, users can interact with products with confidence, knowing that the design elements will be consistent and predictable.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
Stories,
|
|
6
|
+
Controls,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
import { DefaultRow as InputRadioCaptionGroupRow } from '../components/form/BmsInputRadioCaptionGroup.stories.js';
|
|
9
|
+
import { DefaultColumn as InputRadioCaptionGroupColumn } from '../components/form/BmsInputRadioCaptionGroup.stories.js';
|
|
10
|
+
|
|
11
|
+
<Meta title="Documentation/Fields/Radio Caption Group" />
|
|
12
|
+
|
|
13
|
+
# <img src="./BmsIcon.png" /> Radio Group
|
|
14
|
+
|
|
15
|
+
A radio caption group consists of a set of interconnected radio buttons. But the caption is set on earch radio input.
|
|
16
|
+
|
|
17
|
+

|
|
18
|
+
|
|
19
|
+
## Anatomy
|
|
20
|
+
|
|
21
|
+

|
|
22
|
+
|
|
23
|
+
## Component
|
|
24
|
+
|
|
25
|
+
### Row representation
|
|
26
|
+
|
|
27
|
+
<Canvas of={InputRadioCaptionGroupRow} args={{ label: 'toto' }} />
|
|
28
|
+
|
|
29
|
+
### Column representation
|
|
30
|
+
|
|
31
|
+
<Canvas of={InputRadioCaptionGroupColumn} args={{ label: 'toto' }} />
|
|
32
|
+
### Table of props
|
|
33
|
+
|
|
34
|
+
<Controls of={InputRadioCaptionGroupRow} />
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
Stories,
|
|
6
|
+
Controls,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
import { DefaultRow as InputRadioCaptionGroupRow } from '../components/form/BmsInputRadioGroup.stories.js';
|
|
9
|
+
import { DefaultColumn as InputRadioCaptionGroupColumn } from '../components/form/BmsInputRadioGroup.stories.js';
|
|
10
|
+
|
|
11
|
+
<Meta title="Documentation/Fields/Radio Group" />
|
|
12
|
+
|
|
13
|
+
# <img src="./BmsIcon.png" /> Radio Group
|
|
14
|
+
|
|
15
|
+
A radio group consists of a set of interconnected radio buttons.
|
|
16
|
+
|
|
17
|
+

|
|
18
|
+
|
|
19
|
+
## Anatomy
|
|
20
|
+
|
|
21
|
+

|
|
22
|
+
|
|
23
|
+
## Component
|
|
24
|
+
|
|
25
|
+
### Row representation
|
|
26
|
+
|
|
27
|
+
<Canvas of={InputRadioCaptionGroupRow} args={{ label: 'toto' }} />
|
|
28
|
+
|
|
29
|
+
### Column representation
|
|
30
|
+
|
|
31
|
+
<Canvas of={InputRadioCaptionGroupColumn} args={{ label: 'toto' }} />
|
|
32
|
+
### Table of props
|
|
33
|
+
|
|
34
|
+
<Controls of={InputRadioCaptionGroupRow} />
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Canvas,
|
|
3
|
+
Meta,
|
|
4
|
+
Story,
|
|
5
|
+
Stories,
|
|
6
|
+
Controls,
|
|
7
|
+
} from '@storybook/addon-docs/blocks';
|
|
8
|
+
import { Default as SearchInputDefault } from '../components/form/BmsSearch.stories.js';
|
|
9
|
+
|
|
10
|
+
<Meta title="Documentation/Fields/Search" />
|
|
11
|
+
|
|
12
|
+
# <img src="./BmsIcon.png" /> Search
|
|
13
|
+
|
|
14
|
+
It allows users to enter text to perform a search among the data, content, or elements present in the interface they are viewing or the system.
|
|
15
|
+
|
|
16
|
+

|
|
17
|
+
|
|
18
|
+
## Anatomy
|
|
19
|
+
|
|
20
|
+

|
|
21
|
+
|
|
22
|
+
## Component
|
|
23
|
+
|
|
24
|
+
<Canvas of={SearchInputDefault} args={{ label: 'toto' }} />
|
|
25
|
+
|
|
26
|
+
### Table of props
|
|
27
|
+
|
|
28
|
+
<Controls of={SearchInputDefault} />
|