jamespot-react-components 1.3.83 → 1.3.85
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/CLAUDE.md +62 -0
- package/README.md +2 -116
- package/dist/jamespot-react-components.cjs +1191 -1184
- package/dist/jamespot-react-components.js +14084 -14070
- package/dist/src/components/404/JRC404.stories.d.ts +4 -0
- package/dist/src/components/Common/JRCConditionalWrapper.stories.d.ts +1 -1
- package/dist/src/components/Common/LimitLines.d.ts +1 -1
- package/dist/src/components/Common/Outline.stories.d.ts +1 -1
- package/dist/src/components/Deprecated/Deprecated_ClickAwayListener/ClickAwayListener.stories.d.ts +1 -1
- package/dist/src/components/Deprecated/Deprecated_JRCEllipsis/JRCEllipsis.stories.d.ts +1 -1
- package/dist/src/components/Drives/Dropbox/DropboxDocuments.d.ts +1 -4
- package/dist/src/components/Drives/JRCDriveDropbox.d.ts +2 -5
- package/dist/src/components/Drives/JRCDriveMSGraph.d.ts +2 -5
- package/dist/src/components/Drives/MicrosoftGraph/MSGraphDocuments.d.ts +1 -4
- package/dist/src/components/Drives/MicrosoftGraph/MSGraphGroups.d.ts +2 -5
- package/dist/src/components/Drives/MicrosoftGraph/MSGraphTenants.d.ts +2 -5
- package/dist/src/components/Drives/components/DriveAccountHeader.d.ts +2 -5
- package/dist/src/components/Drives/hooks.d.ts +1 -5
- package/dist/src/components/Editors/components/EditorButtonToggle.stories.d.ts +7 -0
- package/dist/src/components/Editors/components/EditorImageUpload.d.ts +2 -5
- package/dist/src/components/Editors/components/EditorInputCheckbox.stories.d.ts +8 -0
- package/dist/src/components/Editors/components/EditorInputImage.d.ts +1 -4
- package/dist/src/components/Editors/components/EditorInputNumber.stories.d.ts +8 -0
- package/dist/src/components/Editors/components/EditorInputToggle.stories.d.ts +7 -0
- package/dist/src/components/Editors/components/EditorRichText.d.ts +1 -5
- package/dist/src/components/Editors/components/EditorRichTextDialog.d.ts +1 -5
- package/dist/src/components/Form/Common/ClickAwayListener.stories.d.ts +1 -1
- package/dist/src/components/Form/Common/FormMessageFeedback.stories.d.ts +1 -1
- package/dist/src/components/Form/Input/Common/JRCFormErrors.stories.d.ts +1 -1
- package/dist/src/components/Form/Input/JRCInputCheckbox/JRCInputCheckbox.stories.d.ts +4 -4
- package/dist/src/components/Form/Input/JRCInputCheckbox/JRCInputReorderCheckbox.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputCheckbox/JRCInputToggle.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputColor/JRCInputColor.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputColor/JRCInputColorRaw.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputDate/JRCInputDate.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputDateMulti/JRCInputDateMulti.stories.d.ts +1 -1
- package/dist/src/components/Form/Input/JRCInputDateTime/JRCInputDateTIme.stories.d.ts +1 -1
- package/dist/src/components/Form/Input/JRCInputEmail/JRCInputEmail.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputFile/JRCInputFile.d.ts +3 -3
- package/dist/src/components/Form/Input/JRCInputFile/JRCInputFile.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputFileAdvanced/JRCInputFileAdvanced.stories.d.ts +3 -3
- package/dist/src/components/Form/Input/JRCInputFileAdvanced/JRCInputFileAdvancedRaw.d.ts +1 -6
- package/dist/src/components/Form/Input/JRCInputImage/JRCInputImage.stories.d.ts +3 -3
- package/dist/src/components/Form/Input/JRCInputRange/JRCInputRange.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputSearchRaw/JRCInputSearchRaw.stories.d.ts +1 -1
- package/dist/src/components/Form/Input/JRCInputSimpleFile/JRCInputSimpleFile.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputText/JRCInputPassword.stories.d.ts +10 -0
- package/dist/src/components/Form/Input/JRCInputText/JRCInputText.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputTextRaw/JRCInputTextRaw.stories.d.ts +45 -0
- package/dist/src/components/Form/Input/JRCInputTextarea/JRCInputTextarea.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputTime/JRCInputTime.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputTinyMCE/JRCInputTinyMCE.d.ts +2 -5
- package/dist/src/components/Form/Input/JRCInputTinyMCE/JRCInputTinyMCE.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputTinyMCERaw/JRCInputTinyMCERaw.d.ts +1 -4
- package/dist/src/components/Form/Input/JRCInputTinyMCERaw/JRCInputTinyMCERaw.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCInputTinyMCERaw/extensions/JIAExtension/JIATextGenerationExtension.d.ts +1 -0
- package/dist/src/components/Form/Input/JRCInputUrl/JRCInputUrl.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCSelect/JRCAutocomplete.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCSelect/JRCAutocompleteCommunity.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCSelect/JRCInputAudience.d.ts +0 -4
- package/dist/src/components/Form/Input/JRCSelect/JRCInputAudience.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCSelect/JRCInputSelect.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCSelect/JRCInputSelectAsync.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCSelect/JRCInputSelectHierarchicalTree.stories.d.ts +2 -2
- package/dist/src/components/Form/Input/JRCSelect/JRCInputSelectList.stories.d.ts +2 -2
- package/dist/src/components/JRCAlbum/JRCAlbum.stories.d.ts +1 -1
- package/dist/src/components/JRCAlbum/components/AlbumItem.d.ts +2 -2
- package/dist/src/components/JRCAlbum/components/AlbumX1.d.ts +1 -1
- package/dist/src/components/JRCAlbum/styles.d.ts +4 -16
- package/dist/src/components/JRCAlbum/types.d.ts +1 -2
- package/dist/src/components/JRCAlert/JRCAlert.stories.d.ts +5 -5
- package/dist/src/components/JRCAppHeader/JRCAppHeader.stories.d.ts +2 -2
- package/dist/src/components/JRCAttachments/JRCAttachments.d.ts +3 -2
- package/dist/src/components/JRCAttachments/JRCAttachments.stories.d.ts +3 -2
- package/dist/src/components/JRCAvatar/JRCAvatar.d.ts +1 -1
- package/dist/src/components/JRCAvatar/JRCAvatar.stories.d.ts +2 -2
- package/dist/src/components/JRCAvatars/JRCAvatars.stories.d.ts +1 -1
- package/dist/src/components/JRCBreadcrumb/JRCBreadcrumb.stories.d.ts +2 -2
- package/dist/src/components/JRCBusinessContactList/JRCBusinessContactList.stories.d.ts +2 -2
- package/dist/src/components/JRCBusinessContacts/JRCBusinessContacts.stories.d.ts +1 -1
- package/dist/src/components/JRCButtonDownload/JRCButtonDownload.stories.d.ts +5 -5
- package/dist/src/components/JRCButtonDropdown/JRCButtonDropdown.stories.d.ts +1 -1
- package/dist/src/components/JRCButtonFile/JRCButtonFile.stories.d.ts +4 -4
- package/dist/src/components/JRCCalendar/JRCCalendar.d.ts +1 -1
- package/dist/src/components/JRCCalendar/JRCCalendar.stories.d.ts +1 -1
- package/dist/src/components/JRCCalendar/JRCCalendarModal.d.ts +2 -7
- package/dist/src/components/JRCCalendar/types.d.ts +1 -8
- package/dist/src/components/JRCCard/JRCCard.stories.d.ts +2 -2
- package/dist/src/components/JRCCard/JRCCardImg.stories.d.ts +2 -2
- package/dist/src/components/JRCCollapse/JRCCollapse.stories.d.ts +1 -1
- package/dist/src/components/JRCCommentsBloc/JRCComment.d.ts +2 -12
- package/dist/src/components/JRCCommentsBloc/JRCCommentsBloc.d.ts +2 -12
- package/dist/src/components/JRCCommentsBloc/JRCCommentsBloc.stories.d.ts +2 -2
- package/dist/src/components/JRCCommentsBloc/components/EditComment.d.ts +2 -7
- package/dist/src/components/JRCCommentsBloc/components/NewComment.d.ts +2 -7
- package/dist/src/components/JRCConfirmationModal/JRCConfirmationModal.stories.d.ts +6 -0
- package/dist/src/components/JRCCropImage/JRCCropImage.stories.d.ts +2 -2
- package/dist/src/components/JRCDate/JRCDate.stories.d.ts +1 -1
- package/dist/src/components/JRCDisplayCard/JRCDisplayCard.stories.d.ts +2 -2
- package/dist/src/components/JRCDragNDrop/JRCDndOneLevel.stories.d.ts +1 -1
- package/dist/src/components/JRCDragNDrop/JRCDndOneLevelWithStack.stories.d.ts +1 -1
- package/dist/src/components/JRCDragNDrop/JRCDndTwoLevelWithStack.stories.d.ts +1 -1
- package/dist/src/components/JRCDropDown/JRCDropDown.stories.d.ts +1 -1
- package/dist/src/components/JRCEditor/JRCEditor.stories.d.ts +1 -1
- package/dist/src/components/JRCEmptySpace/JRCEmptySpace.stories.d.ts +2 -2
- package/dist/src/components/JRCFile/JRCFile.stories.d.ts +2 -2
- package/dist/src/components/JRCFile/JRCFileAvatar.d.ts +7 -1
- package/dist/src/components/JRCFileViewer/JRCFileViewer.stories.d.ts +2 -2
- package/dist/src/components/JRCFileViewer/JRCFileViewerOpenWithOptions.stories.d.ts +7 -0
- package/dist/src/components/JRCFlex/JRCFlexBox.stories.d.ts +1 -1
- package/dist/src/components/JRCFolders/JRCFolders.stories.d.ts +1 -1
- package/dist/src/components/JRCGifSelector/JRCGifSelector.stories.d.ts +1 -1
- package/dist/src/components/JRCGroupList/JRCGroupList.stories.d.ts +2 -2
- package/dist/src/components/JRCGroups/JRCGroups.stories.d.ts +1 -1
- package/dist/src/components/JRCHtml/JRCHtml.d.ts +8 -6
- package/dist/src/components/JRCHtml/JRCHtml.stories.d.ts +4 -2
- package/dist/src/components/JRCIcon/JRCIcon.stories.d.ts +1 -1
- package/dist/src/components/JRCIconButton/JRCIconButton.stories.d.ts +2 -2
- package/dist/src/components/JRCImg/JRCImg.stories.d.ts +3 -3
- package/dist/src/components/JRCList/JRCList.stories.d.ts +3 -3
- package/dist/src/components/JRCList/JRCListMockData.stories.d.ts +8 -2
- package/dist/src/components/JRCLoadMore/JRCLoadMore.stories.d.ts +1 -1
- package/dist/src/components/JRCLoader/JRCLoader.stories.d.ts +1 -1
- package/dist/src/components/JRCMediaLoader/JRCMediaLoader.stories.d.ts +1 -1
- package/dist/src/components/JRCMessage/JRCMessage.stories.d.ts +5 -5
- package/dist/src/components/JRCMetas/JRCMetas.d.ts +2 -1
- package/dist/src/components/JRCMetas/JRCMetas.stories.d.ts +3 -0
- package/dist/src/components/JRCModal/templates/JRCModal.stories.d.ts +2 -2
- package/dist/src/components/JRCModal/templates/JRCModalForm.stories.d.ts +2 -2
- package/dist/src/components/JRCModalImg/JRCModalImg.stories.d.ts +2 -2
- package/dist/src/components/JRCPagination/JRCPagination.stories.d.ts +2 -2
- package/dist/src/components/JRCProvider/JRCContext.d.ts +5 -0
- package/dist/src/components/JRCProvider/JRCProvider.d.ts +9 -0
- package/dist/src/components/JRCPublishButton/JRCPublishButton.stories.d.ts +1 -1
- package/dist/src/components/JRCQRCode/JRCQRCode.stories.d.ts +1 -1
- package/dist/src/components/JRCSidePanelModal/JRCSidePanelModal.stories.d.ts +2 -2
- package/dist/src/components/JRCSidePanelModal/JRCSidePanelModalForm.stories.d.ts +2 -2
- package/dist/src/components/JRCSkeleton/JRCSkeletonList.stories.d.ts +7 -0
- package/dist/src/components/JRCSlider/JRCSlider.stories.d.ts +2 -2
- package/dist/src/components/JRCSocialActions/JRCSocialActions.d.ts +2 -5
- package/dist/src/components/JRCStyledHref/JRCStyledHref.stories.d.ts +2 -2
- package/dist/src/components/JRCTabs/JRCTabs.stories.d.ts +2 -2
- package/dist/src/components/JRCTag/JRCTag.stories.d.ts +2 -2
- package/dist/src/components/JRCTooltip/JRCTooltip.stories.d.ts +1 -1
- package/dist/src/components/JRCTypography/JRCTypography.stories.d.ts +1 -1
- package/dist/src/components/JRCUserList/JRCUserList.stories.d.ts +2 -2
- package/dist/src/components/JRCUserPopup/JRCUserPopup.d.ts +2 -5
- package/dist/src/components/JRCUserPopup/JRCUserPopup.stories.d.ts +5 -4
- package/dist/src/components/JRCUsers/JRCUsers.stories.d.ts +1 -1
- package/dist/src/components/Stepper/JRCStepper.stories.d.ts +1 -1
- package/dist/src/components/Templates/JRCTemplate.stories.d.ts +3 -3
- package/dist/src/components/Templates/JRCTwoColumns.template.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetAccessibility/JRCWidgetAccessibility.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetAccessibility/JRCWidgetAccessibilityEditor.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetArticleGallery/JRCWidgetArticleGallery.stories.d.ts +2 -2
- package/dist/src/components/Widgets/JRCWidgetArticleSlider/JRCWidgetArticleSliderEditor.d.ts +2 -5
- package/dist/src/components/Widgets/JRCWidgetArticleSlider/JRCWidgetArticleSliderEditorSlide.d.ts +2 -5
- package/dist/src/components/Widgets/JRCWidgetArticleSlider/JRCWidgetArticleSliderEditorSlideRemove.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetArticleText/JRCWidgetArticleText.d.ts +2 -5
- package/dist/src/components/Widgets/JRCWidgetArticleText/JRCWidgetArticleText.stories.d.ts +2 -2
- package/dist/src/components/Widgets/JRCWidgetArticleTitle/JRCWidgetArticleTitle.stories.d.ts +8 -0
- package/dist/src/components/Widgets/JRCWidgetAttachment/JRCWidgetAttachment.d.ts +23 -5
- package/dist/src/components/Widgets/JRCWidgetAttachment/JRCWidgetAttachment.stories.d.ts +3 -4
- package/dist/src/components/Widgets/JRCWidgetButton/JRCWidgetButton.stories.d.ts +2 -2
- package/dist/src/components/Widgets/JRCWidgetCalendarCalDav/JRCWidgetCalendarCalDav.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetCalendarCalDav/JRCWidgetCalendarCalDavEditor.stories.d.ts +6 -0
- package/dist/src/components/Widgets/JRCWidgetCheckList/JRCWidgetCheckList.stories.d.ts +2 -2
- package/dist/src/components/Widgets/JRCWidgetCheckList/JRCWidgetCheckListEditor.d.ts +2 -5
- package/dist/src/components/Widgets/JRCWidgetCheckList/JRCWidgetCheckListImage.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetCheckList/JRCWidgetCheckListItem.d.ts +1 -4
- package/dist/src/components/Widgets/JRCWidgetColor/JRCWidgetColor.stories.d.ts +8 -0
- package/dist/src/components/Widgets/JRCWidgetColor/JRCWidgetColorEditor.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetContactCardDav/JRCWidgetContactCardDav.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetContactCardDav/JRCWidgetContactCardDavEditor.stories.d.ts +6 -0
- package/dist/src/components/Widgets/JRCWidgetCover/JRCWidgetCoverEditor.d.ts +1 -1
- package/dist/src/components/Widgets/JRCWidgetEmailsImap/JRCWidgetEmailsImap.stories.d.ts +8 -0
- package/dist/src/components/Widgets/JRCWidgetEmailsImap/JRCWidgetEmailsImapEditor.stories.d.ts +6 -0
- package/dist/src/components/Widgets/JRCWidgetEmailsImap/JRCWidgetEmailsImapLevel2.stories.d.ts +8 -0
- package/dist/src/components/Widgets/JRCWidgetEmptyInplace.stories.d.ts +6 -0
- package/dist/src/components/Widgets/JRCWidgetExtension/JRCWidgetExtensionEditor.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetIcon.stories.d.ts +8 -0
- package/dist/src/components/Widgets/JRCWidgetImage/JRCWidgetArticleImageEditor.d.ts +2 -5
- package/dist/src/components/Widgets/JRCWidgetImage/JRCWidgetImage.stories.d.ts +2 -2
- package/dist/src/components/Widgets/JRCWidgetLuccaAbsence/JRCWidgetLuccaAbsence.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetLuccaAbsence/JRCWidgetLuccaAbsenceEditor.stories.d.ts +6 -0
- package/dist/src/components/Widgets/JRCWidgetPresence/JRCWidgetPresenceEditor.stories.d.ts +8 -0
- package/dist/src/components/Widgets/JRCWidgetQuickSurvey/JRCWidgetQuickSurvey.stories.d.ts +2 -2
- package/dist/src/components/Widgets/JRCWidgetQuickSurvey/JRCWidgetQuickSurveyEditor.d.ts +2 -5
- package/dist/src/components/Widgets/JRCWidgetQuickSurvey/JRCWidgetQuickSurveyEditorAddEntry.stories.d.ts +6 -0
- package/dist/src/components/Widgets/JRCWidgetQuickSurvey/JRCWidgetQuickSurveyEditorEntries.d.ts +2 -5
- package/dist/src/components/Widgets/JRCWidgetQuickSurvey/JRCWidgetQuickSurveyImage.stories.d.ts +7 -0
- package/dist/src/components/Widgets/JRCWidgetQuickSurvey/JRCWidgetQuickSurveyItemWrapper.d.ts +1 -4
- package/dist/src/components/Widgets/JRCWidgetSlider/JRCWidgetSliderEditor.d.ts +2 -5
- package/dist/src/components/Widgets/JRCWidgetSlider/JRCWidgetSliderEditorSlide.d.ts +2 -5
- package/dist/src/components/Widgets/JRCWidgetSlider/components/CoverSliderSlide.stories.d.ts +6 -0
- package/dist/src/components/Widgets/JRCWidgetSurveyDate/JRCWidgetSurveyDate.stories.d.ts +2 -2
- package/dist/src/components/Widgets/JRCWidgetTable/JRCWidgetTable.stories.d.ts +4 -4
- package/dist/src/components/Widgets/JRCWidgetText/JRCWidgetText.stories.d.ts +8 -0
- package/dist/src/components/Widgets/JRCWidgetText/JRCWidgetTextEditor.d.ts +3 -6
- package/dist/src/components/Widgets/JRCWidgetUserProfile/JRCWidgetUserProfile.stories.d.ts +6 -6
- package/dist/src/components/Widgets/JRCWidgetWelcome/JRCWidgetWelcome.stories.d.ts +9 -9
- package/dist/src/hooks/UseDebounce.stories.d.ts +1 -1
- package/dist/src/hooks/UseImageLoader.stories.d.ts +7 -0
- package/dist/src/hooks/index.d.ts +2 -1
- package/dist/src/hooks/useApi.d.ts +2 -0
- package/dist/src/hooks/useRefSize.stories.d.ts +4 -0
- package/dist/src/index.d.ts +2 -2
- package/dist/src/styles/theme.d.ts +9 -7
- package/dist/src/translation/lang.json.d.ts +5 -0
- package/dist/src/types.d.ts +1 -1
- package/dist/src/utils/utils.html.d.ts +4 -0
- package/package.json +24 -52
- package/dist/src/components/JRCThemeProvider/JRCThemeProvider.d.ts +0 -10
- package/jamespot-react-components@1.3.14 +0 -0
- package/vite +0 -0
- /package/dist/src/components/404/{index.d.ts → JRC404.d.ts} +0 -0
package/CLAUDE.md
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# CLAUDE.md — jamespot-react-components
|
|
2
|
+
|
|
3
|
+
Design system : composants UI réutilisables, Storybook, conformité RGAA. Consommé via le registre par core et extensions.
|
|
4
|
+
|
|
5
|
+
## Structure
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
src/
|
|
9
|
+
├── components/
|
|
10
|
+
│ └── JRC{Name}/
|
|
11
|
+
│ ├── JRC{Name}.tsx # Composant (préfixe JRC)
|
|
12
|
+
│ ├── JRC{Name}.stories.tsx # Story Storybook
|
|
13
|
+
│ ├── JRC{Name}.styles.tsx # Optionnel : styled-components séparés
|
|
14
|
+
│ └── JRC{Name}.test.tsx # Optionnel : test Jest unitaire
|
|
15
|
+
├── hooks/ # useDebounce, useThemeContext, …
|
|
16
|
+
├── styles/
|
|
17
|
+
│ ├── theme.tsx # ThemeType + initTheme()
|
|
18
|
+
│ └── styled-components.d.ts # Augmentation DefaultTheme
|
|
19
|
+
├── translation/
|
|
20
|
+
│ └── lang.json
|
|
21
|
+
└── types.ts # Re-exports des props
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Spécificités
|
|
25
|
+
|
|
26
|
+
- TS flags : `noImplicitOverride`, `noUnusedLocals`, `noUnusedParameters` (TODO : `exactOptionalPropertyTypes`)
|
|
27
|
+
- Couverture : 100% statements + functions (exclus : `Deprecated/`, `utils/utils.misc.ts`)
|
|
28
|
+
- Build : Vite library (ESM + CJS) avec `vite-plugin-css-injected-by-js` — CSS injecté dans le JS, pas de fichier séparé
|
|
29
|
+
|
|
30
|
+
### Cycle de vie des composants
|
|
31
|
+
|
|
32
|
+
| Préfixe / dossier | Statut | Obligation tests |
|
|
33
|
+
|-------------------|--------|------------------|
|
|
34
|
+
| `0-RGAA/Category/` | conforme | tests d'interaction + 100% statement |
|
|
35
|
+
| `untested/` | en cours | doit viser conformité |
|
|
36
|
+
| `BETA_` (dans `Beta/`) | expérimental | aucune |
|
|
37
|
+
| `Deprecated_` (dans `Deprecated/`) | à supprimer | aucune |
|
|
38
|
+
|
|
39
|
+
### Conventions Storybook spécifiques
|
|
40
|
+
|
|
41
|
+
- **Stories `0-RGAA/`** : `tags: ['testing']` (filtre du test runner) + `parameters: { mode: 'test' }` obligatoires
|
|
42
|
+
- Spy : `fn()` de `storybook/test`, **jamais** `jest.fn()`
|
|
43
|
+
- Setup : `IntlProvider` (locale: 'en') + `JRCThemeProvider`, portail `<div id="react-modal" />` pour modals, `@storybook/addon-a11y`
|
|
44
|
+
|
|
45
|
+
### Tokens du thème exposés
|
|
46
|
+
|
|
47
|
+
`ThemeType` est exporté pour augmentation `DefaultTheme` côté apps. La liste exhaustive des tokens (color/space/size/font/zIndex) est dans `ui/styled-components.md`.
|
|
48
|
+
|
|
49
|
+
### Scripts spécifiques
|
|
50
|
+
|
|
51
|
+
- `pnpm storybook` — dev port 6006
|
|
52
|
+
- `pnpm test:jest` — Jest unitaires uniquement (`--runInBand`)
|
|
53
|
+
- `pnpm test:storybook` — interaction tests (lance Storybook automatiquement)
|
|
54
|
+
- `pnpm test` — tout (jest + storybook)
|
|
55
|
+
|
|
56
|
+
## Voir aussi
|
|
57
|
+
|
|
58
|
+
- `.claude/rules/frontend/_shared/` — règles universelles
|
|
59
|
+
- `.claude/rules/frontend/ui/` — composants, styled-components, accessibilité, navigation, displayer
|
|
60
|
+
- `.claude/rules/frontend/ui/components.md` — réutilisation, registre, composition Raw/Wrapper
|
|
61
|
+
- `.claude/rules/frontend/ui/styled-components.md` — props transientes, theme, tokens
|
|
62
|
+
- `.claude/rules/frontend/ui/accessibility.md` — RGAA, tests Storybook, helpers (SROnly, SkipToContent)
|
package/README.md
CHANGED
|
@@ -1,119 +1,5 @@
|
|
|
1
|
-
#
|
|
1
|
+
# JAMESPOT REACT COMPONENTS
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
```
|
|
6
|
-
npm ci
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
## Usage
|
|
10
|
-
|
|
11
|
-
```
|
|
12
|
-
// build the bundle
|
|
13
|
-
npm run build
|
|
14
|
-
npm run build-theme
|
|
15
|
-
npm run build-dev-vm
|
|
16
|
-
|
|
17
|
-
// build the storybook
|
|
18
|
-
npm run build-storybook
|
|
19
|
-
|
|
20
|
-
// serve the bundle
|
|
21
|
-
npm run local
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
## Tests et storybook
|
|
25
|
-
|
|
26
|
-
Le storybook peut-être lancé avec la commande
|
|
27
|
-
|
|
28
|
-
```
|
|
29
|
-
pnpm storybook
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
Les composants sont répartis en deux grandes catégories dans le storybook:
|
|
34
|
-
|
|
35
|
-
1. untested/:
|
|
36
|
-
Tous les composants dans untested/ sont exclus des tests storybook et doivent progressivement être migré vers RGAA et testé.
|
|
37
|
-
|
|
38
|
-
2. 0-RGAA/:
|
|
39
|
-
Les composants dans RGAA doivent aussi avoir le tag 'testing' dans leur story et doivent être testé.
|
|
40
|
-
Toute story ayant le tag 'rgaa' sera exécuté comme test pendant les tests storybook,
|
|
41
|
-
le coverage sera calculé et devra atteindre 100% pour les statements.
|
|
42
|
-
Il est aussi attendu de ces composants qu'ils respectent au maximum les règles du RGAA pour l'accessibilité.
|
|
43
|
-
|
|
44
|
-
Toute story avec le tag 'testing' sera exécutée pendant les tests, et le coverage de ce qu'elle utilise sera calculé.
|
|
45
|
-
|
|
46
|
-
JRCPublishButton est le premier composant écrit et testé directement avec la nouvelle version de storybook.
|
|
47
|
-
N'hésitez pas à vous en inspirer pour le nouveaux composant aujourd'hui (Mai 2025).
|
|
48
|
-
|
|
49
|
-
Une fois le storybook lancé, les tests storybook peuvent être lancé avec la commande
|
|
50
|
-
|
|
51
|
-
```
|
|
52
|
-
pnpm test:storybook
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
/!\ LE STORYBOOK DOIT ETRE EN COURS D'EXECUTION /!\
|
|
56
|
-
|
|
57
|
-
Si vous devez développer des utilitaires qui ne sont pas des composants react, ceux-ci doivent se trouver dans un dossier utils
|
|
58
|
-
et faire l'objet de tests jest. Le coverage devra là aussi atteindre 100% pour les statements
|
|
59
|
-
Les tests jest peuvent être exécutés avec la commande:
|
|
60
|
-
|
|
61
|
-
```
|
|
62
|
-
pnpm test:jest
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
Vous pouvez lancé l'ensemble des tests et voir le coverage total si le storybook est en cours d'exécution avec
|
|
66
|
-
|
|
67
|
-
```
|
|
68
|
-
pnpm test:all
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
Lors d'une merge request, le test-all sera exécuté, un coverage de 100% sera attendu avec tous les tests au vert.
|
|
72
|
-
La même chose sera attendu lors de l'exécution de la pipeline pour une MEP.
|
|
73
|
-
|
|
74
|
-
La ci utilisera la commande
|
|
75
|
-
|
|
76
|
-
```
|
|
77
|
-
pnpm test
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
qui s'occupe de lancer le storybook puis de faire un test:all.
|
|
81
|
-
Cette commande n'est pas adapté au développement local car elle arrête le storybook immédiatement après avoir
|
|
82
|
-
terminé les tests. Mais elle peut être utile pour lancer les tests 1 fois, avant une release par exemple.
|
|
83
|
-
|
|
84
|
-
## Contributing (Requires updating)
|
|
85
|
-
|
|
86
|
-
- Les développements sont suivis sur le board [react-components](https://ecosysteme.jamespot.pro/ng/app/boardcard/167684) :
|
|
87
|
-
- La branche develop est protégé
|
|
88
|
-
- Une github action permet de vérifier le build et les tests de chaque branche
|
|
89
|
-
- Les PR ont un template
|
|
90
|
-
|
|
91
|
-
## Commons
|
|
92
|
-
|
|
93
|
-
### Component
|
|
94
|
-
|
|
95
|
-
`Outline.tsx`
|
|
96
|
-
|
|
97
|
-
The component is intended to be a focus-style wrapper
|
|
98
|
-
|
|
99
|
-
### Beta Component
|
|
100
|
-
|
|
101
|
-
Si vous avez besoin de développer un composant qui n'existe pas encore et que vous avez besoin d'en avoir une version minimale, il est primoridal de l'ajouter au dossier "Beta" et de bien préfixer votre composant de BETA_MyComponent
|
|
102
|
-
|
|
103
|
-
Il est aussi important d'ajouter ce préfix dans la registry de jamespot-react-core !
|
|
104
|
-
|
|
105
|
-
Il est aussi conseillé d'ajouter un petit texte explicatif //TODO dans le code de votre composant pour informer les autres sur ce qu'il reste à faire.
|
|
106
|
-
|
|
107
|
-
### Utils for URL
|
|
108
|
-
|
|
109
|
-
`url.util.ts`
|
|
110
|
-
|
|
111
|
-
### Utils for colors
|
|
112
|
-
|
|
113
|
-
`styles/utils.tsx`
|
|
114
|
-
|
|
115
|
-
### Story for the color theme
|
|
116
|
-
|
|
117
|
-
`Theme.stories.tsx`
|
|
3
|
+
Ce projet expose les composants UI de jamespot
|
|
118
4
|
|
|
119
5
|
# Fin
|