jamespot-react-components 1.3.105 → 1.3.107

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/jamespot-react-components.cjs +1863 -1541
  2. package/dist/jamespot-react-components.js +17532 -16410
  3. package/dist/src/components/Editors/components/EditorInputGroups.d.ts +8 -0
  4. package/dist/src/components/Editors/ensure.d.ts +1 -0
  5. package/dist/src/components/Editors/types.d.ts +9 -3
  6. package/dist/src/components/Form/Input/JRCInputColor/AlphaRange.d.ts +6 -0
  7. package/dist/src/components/Form/Input/JRCSelect/JRCInputAutocompleteViews.d.ts +2 -1
  8. package/dist/src/components/Form/Input/JRCSelect/JRCInputSelect.types.d.ts +3 -0
  9. package/dist/src/components/JRCFolders/JRCFolderBreadcrumb.d.ts +3 -3
  10. package/dist/src/components/JRCFolders/JRCFolderBreadcrumb.stories.d.ts +15 -0
  11. package/dist/src/components/JRCFolders/JRCFolders.d.ts +1 -1
  12. package/dist/src/components/JRCFolders/JRCFolders.stories.d.ts +5 -2
  13. package/dist/src/components/JRCFolders/JRCFoldersGallery.d.ts +19 -0
  14. package/dist/src/components/JRCFolders/JRCFoldersList.d.ts +8 -0
  15. package/dist/src/components/JRCFolders/components/DocumentList.d.ts +7 -0
  16. package/dist/src/components/JRCFolders/components/FileLittleList.d.ts +2 -3
  17. package/dist/src/components/JRCFolders/components/FolderList.d.ts +6 -0
  18. package/dist/src/components/JRCFolders/context/folderContext.d.ts +16 -0
  19. package/dist/src/components/JRCFolders/mocks.d.ts +111 -0
  20. package/dist/src/components/JRCFolders/styles.d.ts +15 -7
  21. package/dist/src/components/JRCFolders/types.d.ts +43 -6
  22. package/dist/src/components/JRCFolders/useFilebankApi.d.ts +21 -0
  23. package/dist/src/components/JRCFolders/useFilebankSearchApi.d.ts +8 -0
  24. package/dist/src/components/JRCFolders/useFolderSelection.d.ts +16 -0
  25. package/dist/src/components/JRCFolders/utils.d.ts +2 -0
  26. package/dist/src/components/JRCGroups/JRCGroups.d.ts +2 -1
  27. package/dist/src/components/JRCList/JRCList.d.ts +4 -0
  28. package/dist/src/components/JRCList/JRCList.styles.d.ts +3 -0
  29. package/dist/src/components/JRCObjectList/JRCObjectList.d.ts +3 -1
  30. package/dist/src/components/Widgets/JRCWidgetContact/JRCWidgetContact.const.d.ts +27 -0
  31. package/dist/src/components/Widgets/JRCWidgetContact/JRCWidgetContact.d.ts +11 -0
  32. package/dist/src/components/Widgets/JRCWidgetContact/JRCWidgetContact.stories.d.ts +11 -0
  33. package/dist/src/components/Widgets/JRCWidgetContact/JRCWidgetContactEditor.d.ts +7 -0
  34. package/dist/src/components/Widgets/JRCWidgetDocuments/JRCWidgetDocumentsEditor.d.ts +3 -0
  35. package/dist/src/components/Widgets/JRCWidgetDocuments/components/WidgetDocumentSelection.d.ts +7 -0
  36. package/dist/src/components/Widgets/JRCWidgetDocuments/components/WidgetModalSelection.d.ts +7 -0
  37. package/dist/src/components/Widgets/JRCWidgetMeteo/JRCWidgetMeteo.const.d.ts +4 -0
  38. package/dist/src/components/Widgets/JRCWidgetMeteo/JRCWidgetMeteo.d.ts +5 -0
  39. package/dist/src/components/Widgets/JRCWidgetMeteo/JRCWidgetMeteo.stories.d.ts +6 -0
  40. package/dist/src/components/Widgets/JRCWidgetMeteo/JRCWidgetMeteoEditor.d.ts +7 -0
  41. package/dist/src/components/Widgets/JRCWidgetNewsflash/JRCWidgetNewsflash.stories.d.ts +2 -0
  42. package/dist/src/components/Widgets/JRCWidgetNewsflash/JRCWidgetNewsflashEditor.d.ts +6 -2
  43. package/dist/src/components/Widgets/utils.d.ts +4 -0
  44. package/dist/src/components/index.d.ts +16 -11
  45. package/dist/src/styles/theme.d.ts +0 -2
  46. package/dist/src/translation/lang.json.d.ts +41 -3
  47. package/package.json +3 -3
@@ -0,0 +1,8 @@
1
+ import { jSpotAutocomplete } from 'jamespot-user-api';
2
+ import { AVProps } from '../../Form/Input/JRCSelect/JRCInputAutocompleteViews';
3
+ export declare const EditorInputGroups: ({ label, initialValues, onConfirm, handlers, }: {
4
+ label: string;
5
+ initialValues: AVProps["initialValues"];
6
+ onConfirm: (spots: jSpotAutocomplete[]) => void;
7
+ handlers: AVProps["handlers"];
8
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,5 @@
1
1
  export declare function ensureIsStringOrNumber(value: unknown): value is string | number;
2
+ export declare function ensureIsStringOrNumberOrBoolean(value: unknown): value is string | number | boolean;
2
3
  export declare function ensureIsString(value: unknown): value is string;
3
4
  export declare function ensureIsBoolean(value: unknown): value is boolean;
4
5
  export declare function ensureIsColor(value: unknown): value is string;
@@ -8,7 +8,8 @@ export declare enum EditorModelTypes {
8
8
  ToggleSelect = "toggle-select",
9
9
  Color = "color",
10
10
  Custom = "custom",
11
- ButtonToggle = "button-toggle"
11
+ ButtonToggle = "button-toggle",
12
+ Number = "number"
12
13
  }
13
14
  export type EditorModelBase = {
14
15
  label: string;
@@ -32,7 +33,7 @@ export type EditorModelButtonToggle = EditorModelBase & {
32
33
  type: EditorModelTypes.ButtonToggle;
33
34
  options: {
34
35
  label: string;
35
- value: string | number;
36
+ value: string | number | boolean;
36
37
  }[];
37
38
  };
38
39
  export type EditorModelToggleSelect = EditorModelBase & {
@@ -43,6 +44,11 @@ export type EditorModelToggleSelect = EditorModelBase & {
43
44
  color?: ButtonColors;
44
45
  }[];
45
46
  };
47
+ export type EditorModelNumber = EditorModelBase & {
48
+ type: EditorModelTypes.Number;
49
+ min?: number;
50
+ max?: number;
51
+ };
46
52
  export type EditorModelColor = EditorModelBase & {
47
53
  type: EditorModelTypes.Color;
48
54
  options: string[];
@@ -51,4 +57,4 @@ export type EditorModelCustom = EditorModelBase & {
51
57
  type: EditorModelTypes.Custom;
52
58
  component: ReactElement;
53
59
  };
54
- export type EditorModel = EditorModelSelect | EditorModelToggle | EditorModelColor | EditorModelToggleSelect | EditorModelButtonToggle | EditorModelCustom;
60
+ export type EditorModel = EditorModelSelect | EditorModelToggle | EditorModelColor | EditorModelToggleSelect | EditorModelButtonToggle | EditorModelNumber | EditorModelCustom;
@@ -0,0 +1,6 @@
1
+ export declare const AlphaRange: ({ height, baseColor, alpha, onChange, }: {
2
+ height: number;
3
+ baseColor: string;
4
+ alpha: number;
5
+ onChange: (alpha: number, mouseIsDown: boolean) => void;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -13,6 +13,7 @@ export type AVProps = {
13
13
  };
14
14
  onError?: (message?: string) => void;
15
15
  multiple?: boolean;
16
+ checkboxSelection?: boolean;
16
17
  };
17
- declare const JRCInputAutocompleteViews: ({ views, initialValues, onConfirm, open, closeHandler, handlers, onError, multiple, }: AVProps) => import("react/jsx-runtime").JSX.Element;
18
+ declare const JRCInputAutocompleteViews: ({ views, initialValues, onConfirm, open, closeHandler, handlers, onError, multiple, checkboxSelection, }: AVProps) => import("react/jsx-runtime").JSX.Element;
18
19
  export { JRCInputAutocompleteViews };
@@ -52,6 +52,9 @@ type SelectProps<T = any> = DataCy & {
52
52
  };
53
53
  onConfirm?: (values: any) => void;
54
54
  hideSelectedOption?: boolean;
55
+ /** Predicate to disable an option (greyed, non-selectable). Receives the full option object; runs at
56
+ * render so it re-evaluates when the consumer re-renders. */
57
+ isOptionDisabled?: (option: T) => boolean;
55
58
  hideDeleteIcon?: boolean;
56
59
  displayOption?: boolean;
57
60
  displayIndicator?: boolean;
@@ -1,6 +1,6 @@
1
- import { EntryType } from './types';
1
+ import { PathItem } from './types';
2
2
  declare const JRCFolderBreadcrumb: ({ entries, onPress, }: {
3
- entries: EntryType[];
4
- onPress: (entry: EntryType) => void;
3
+ entries: PathItem[];
4
+ onPress: (entry: PathItem) => void;
5
5
  }) => import("react/jsx-runtime").JSX.Element;
6
6
  export { JRCFolderBreadcrumb };
@@ -0,0 +1,15 @@
1
+ import { StoryObj } from '@storybook/react-vite';
2
+ import { JRCFolderBreadcrumb } from './JRCFolderBreadcrumb';
3
+ import { PathItem } from './types';
4
+ declare const _default: {
5
+ title: string;
6
+ component: ({ entries, onPress, }: {
7
+ entries: PathItem[];
8
+ onPress: (entry: PathItem) => void;
9
+ }) => import("react/jsx-runtime").JSX.Element;
10
+ };
11
+ export default _default;
12
+ type Story = StoryObj<typeof JRCFolderBreadcrumb>;
13
+ export declare const Primary: Story;
14
+ export declare const SingleRoot: Story;
15
+ export declare const DeepPathTitlesCollapsed: Story;
@@ -1,2 +1,2 @@
1
1
  import { JRCFoldersProps } from './types';
2
- export declare const JRCFolders: ({ loadDocuments, allowMultiSelection, initialFolders, initialDocuments, onSelectFolder, onSelectDocument, handlers, onError, searchable, }: JRCFoldersProps) => import("react/jsx-runtime").JSX.Element;
2
+ export declare const JRCFolders: ({ loadDocuments, allowMultiSelection, initialFolders, initialDocuments, initialUri, searchable, mode, settings, resolveFileUri, onSelectFolder, onSelectDocument, onFilesUpdate, onError, onClickFile, }: JRCFoldersProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,7 +1,10 @@
1
+ import { StoryObj } from '@storybook/react-vite';
1
2
  import { JRCFoldersProps } from './types';
2
3
  declare const _default: {
3
4
  title: string;
4
- component: ({ loadDocuments, allowMultiSelection, initialFolders, initialDocuments, onSelectFolder, onSelectDocument, handlers, onError, searchable, }: JRCFoldersProps) => import("react/jsx-runtime").JSX.Element;
5
+ component: ({ loadDocuments, allowMultiSelection, initialFolders, initialDocuments, initialUri, searchable, mode, settings, resolveFileUri, onSelectFolder, onSelectDocument, onFilesUpdate, onError, onClickFile, }: JRCFoldersProps) => import("react/jsx-runtime").JSX.Element;
5
6
  };
6
7
  export default _default;
7
- export declare const Folders: import('storybook/internal/csf').AnnotatedStoryFn<import('@storybook/react-vite').ReactRenderer, JRCFoldersProps>;
8
+ type Story = StoryObj<JRCFoldersProps>;
9
+ export declare const Primary: Story;
10
+ export declare const Gallery: Story;
@@ -0,0 +1,19 @@
1
+ import { FolderTreeItem } from './types';
2
+ export declare const StyleGallery: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
3
+ export declare const StyleGalleryItem: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
4
+ $cols: number;
5
+ $rows: number;
6
+ $maxHeight: number;
7
+ }>> & string;
8
+ export declare const StyleGalleryItemAvatar: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
9
+ export declare const StyleLabelEllipsis: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
10
+ $color?: string;
11
+ }>> & string;
12
+ type JRCFoldersListProps = {
13
+ item: FolderTreeItem;
14
+ cols: number;
15
+ rows: number;
16
+ maxHeight: number;
17
+ };
18
+ export declare const JRCFoldersGallery: ({ item, cols, rows, maxHeight }: JRCFoldersListProps) => import("react/jsx-runtime").JSX.Element;
19
+ export {};
@@ -0,0 +1,8 @@
1
+ import { jArticleView } from 'jamespot-user-api';
2
+ import { FolderTreeItem } from './types';
3
+ type JRCFoldersListProps = {
4
+ item: FolderTreeItem;
5
+ onClickDocumentAsFolder: (entry: jArticleView) => void;
6
+ };
7
+ export declare const JRCFoldersList: ({ item, onClickDocumentAsFolder }: JRCFoldersListProps) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,7 @@
1
+ import { jArticleView } from 'jamespot-user-api';
2
+ type DocumentListProps = {
3
+ documents: jArticleView[];
4
+ onClickDocumentAsFolder: (entry: jArticleView) => void;
5
+ };
6
+ export declare const DocumentList: ({ documents, onClickDocumentAsFolder }: DocumentListProps) => false | import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -1,9 +1,8 @@
1
1
  import { jFileLittle } from 'jamespot-user-api';
2
2
  type FileLittleListProps = {
3
3
  files: jFileLittle[];
4
- initialUris: string[];
5
- allowMultiSelection?: boolean;
6
4
  onSelectFile?: (uri: string[]) => void;
5
+ onClick?: (file: jFileLittle) => void;
7
6
  };
8
- export declare const FileLittleList: ({ files, initialUris, allowMultiSelection, onSelectFile }: FileLittleListProps) => import("react/jsx-runtime").JSX.Element;
7
+ export declare const FileLittleList: ({ files }: FileLittleListProps) => import("react/jsx-runtime").JSX.Element;
9
8
  export {};
@@ -0,0 +1,6 @@
1
+ import { jFolderList } from 'jamespot-user-api';
2
+ type FolderListProps = {
3
+ folders: jFolderList[];
4
+ };
5
+ export declare const FolderList: ({ folders }: FolderListProps) => false | import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,16 @@
1
+ import { jFileLittle, jFolderList } from 'jamespot-user-api';
2
+ import { JRCFoldersMode, JRCFoldersSettings } from '../types';
3
+ export type FolderContextType = {
4
+ mode: JRCFoldersMode;
5
+ urisDocument: string[];
6
+ urisFolder: string[];
7
+ allowMultiSelection: boolean;
8
+ settings: JRCFoldersSettings;
9
+ resolveFileUri?: (file: jFileLittle) => string | undefined;
10
+ setUrisFolder: React.Dispatch<React.SetStateAction<string[]>>;
11
+ setUrisDocument: React.Dispatch<React.SetStateAction<string[]>>;
12
+ onClickFolder: (folder: jFolderList) => void;
13
+ onClickFile?: (file: jFileLittle) => void;
14
+ };
15
+ export declare const noop: () => void;
16
+ export declare const FolderContext: import('react').Context<FolderContextType>;
@@ -0,0 +1,111 @@
1
+ export declare const FILEBANK_ROOT_FOLDER: {
2
+ id: number;
3
+ mainType: string;
4
+ type: string;
5
+ uri: string;
6
+ dateCreation: string;
7
+ dateModified: string;
8
+ title: string;
9
+ _url: string;
10
+ };
11
+ export declare const FILEBANK_FOLDER: {
12
+ id: number;
13
+ mainType: string;
14
+ type: string;
15
+ uri: string;
16
+ dateCreation: string;
17
+ dateModified: string;
18
+ title: string;
19
+ _url: string;
20
+ _right: {
21
+ create: boolean;
22
+ read: boolean;
23
+ publish: boolean;
24
+ administrate: boolean;
25
+ update: boolean;
26
+ delete: boolean;
27
+ comment: boolean;
28
+ member: boolean;
29
+ };
30
+ _user: {
31
+ id: number;
32
+ mainType: string;
33
+ type: string;
34
+ uri: string;
35
+ dateCreation: string;
36
+ dateModified: string;
37
+ title: string;
38
+ _url: string;
39
+ level: number;
40
+ function: string;
41
+ company: string;
42
+ };
43
+ _audience: {
44
+ id: number;
45
+ mainType: string;
46
+ type: string;
47
+ uri: string;
48
+ dateCreation: string;
49
+ dateModified: string;
50
+ title: string;
51
+ _url: string;
52
+ }[];
53
+ _nbItems: number;
54
+ };
55
+ export declare const FILEBANK_DOCUMENT: {
56
+ id: number;
57
+ mainType: string;
58
+ type: string;
59
+ uri: string;
60
+ dateCreation: string;
61
+ dateModified: string;
62
+ title: string;
63
+ _url: string;
64
+ _right: {
65
+ create: boolean;
66
+ read: boolean;
67
+ publish: boolean;
68
+ administrate: boolean;
69
+ update: boolean;
70
+ delete: boolean;
71
+ comment: boolean;
72
+ member: boolean;
73
+ };
74
+ _user: {
75
+ id: number;
76
+ mainType: string;
77
+ type: string;
78
+ uri: string;
79
+ dateCreation: string;
80
+ dateModified: string;
81
+ title: string;
82
+ _url: string;
83
+ level: number;
84
+ function: string;
85
+ company: string;
86
+ };
87
+ _audience: {
88
+ id: number;
89
+ mainType: string;
90
+ type: string;
91
+ uri: string;
92
+ dateCreation: string;
93
+ dateModified: string;
94
+ title: string;
95
+ _url: string;
96
+ }[];
97
+ _attachedFiles: {
98
+ id: number;
99
+ mainType: string;
100
+ type: string;
101
+ uri: string;
102
+ dateCreation: string;
103
+ dateModified: string;
104
+ title: string;
105
+ size: number;
106
+ mimetype: string;
107
+ _url: string;
108
+ }[];
109
+ tags: never[];
110
+ _nbAttachedFiles: number;
111
+ };
@@ -1,6 +1,18 @@
1
- export declare const CSSTitleAccessor: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>> & string;
2
- export declare const CSSTitle: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
3
- export declare const CSSSubTitle: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
1
+ export declare const StyleRow: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
2
+ $opacity?: number;
3
+ }>> & string;
4
+ export declare const StyleRowBtn: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>> & string;
5
+ export declare const StyleRowLabel: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
6
+ export declare const StyleRowTitle: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
7
+ $color: string | undefined;
8
+ }>> & string;
9
+ export declare const StyleGalleryItemTitle: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
10
+ $color: string | undefined;
11
+ }>> & string;
12
+ export declare const StyleColumnTitle: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
13
+ $color: string | undefined;
14
+ }>> & string;
15
+ export declare const StyleRowSubTitle: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
4
16
  export declare const CSSDocument: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
5
17
  export declare const CSSDocumentTitle: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
6
18
  export declare const CSSDocumentOption: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
@@ -8,10 +20,6 @@ export declare const CSSActionElements: import('styled-components/dist/types').I
8
20
  export declare const CSSIconAccessor: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
9
21
  export declare const CSSActionAccessor: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
10
22
  export declare const CSSEmptyWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
11
- export declare const CSSOpacityFilter: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
12
- opacity?: number;
13
- }>> & string;
14
23
  export declare const CSSPool: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
15
24
  export declare const CSSListNoHead: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
16
25
  export declare const CSSLoader: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
17
- export declare const Hr: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLHRElement>, HTMLHRElement>, never>> & string;
@@ -1,7 +1,27 @@
1
- import { jFolderList, jFileLittle, jArticleView, JFilebankApi } from 'jamespot-user-api';
2
- export type EntryType = jFolderList | jArticleView;
1
+ import { JArticleApi, jArticleView, JFilebankApi, jFileLittle, jFolderList, JObjectApi, WidgetDocumentsContent } from 'jamespot-user-api';
2
+ export type EntryType = {
3
+ title: string;
4
+ uri: string;
5
+ type: string;
6
+ folderColor?: string;
7
+ _attachedFiles?: jFileLittle[];
8
+ _nbAttachedFiles?: number;
9
+ };
3
10
  export type FoldersHandlers = {
4
11
  filebank: Pick<JFilebankApi, 'getFolders' | 'getDocuments' | 'getRootFolders' | 'searchContent'>;
12
+ article?: Pick<JArticleApi, 'get'>;
13
+ object?: Pick<JObjectApi, 'getAccessHash'>;
14
+ };
15
+ export type JRCFoldersMode = 'view' | 'folder-selection' | 'document-selection' | 'all-selection';
16
+ export type JRCFoldersSettings = {
17
+ hidePreview?: boolean;
18
+ hideExtension?: boolean;
19
+ textColor?: string;
20
+ view?: WidgetDocumentsContent['view'];
21
+ maxHeight?: number;
22
+ rows?: number;
23
+ cols?: number;
24
+ sortBy?: 'title' | 'dateCreation';
5
25
  };
6
26
  export type JRCFoldersProps = {
7
27
  loadDocuments?: boolean;
@@ -9,10 +29,27 @@ export type JRCFoldersProps = {
9
29
  initialDocuments?: string[];
10
30
  initialBankFolder?: jFolderList;
11
31
  allowMultiSelection?: boolean;
32
+ initialUri?: string;
33
+ mode?: JRCFoldersMode;
34
+ searchable?: boolean;
35
+ settings?: JRCFoldersSettings;
36
+ resolveFileUri?: (file: jFileLittle) => string | undefined;
37
+ onError?: (message?: string) => void;
12
38
  onSelectFolder?: (folder: jFolderList[]) => void;
13
39
  onSelectDocument?: (document: jFileLittle[]) => void;
14
- handlers?: FoldersHandlers;
15
- onError?: (message?: string) => void;
16
- searchable?: boolean;
17
- multiple?: boolean;
40
+ onFilesUpdate?: (files: jFileLittle[]) => void;
41
+ onClickFile?: (file: jFileLittle) => void;
42
+ };
43
+ export type PathItem = {
44
+ uri: string;
45
+ type: string;
46
+ folderColor?: string;
47
+ title: string;
48
+ };
49
+ export type FolderTreeItem = {
50
+ parentUri: string | undefined;
51
+ folders: jFolderList[];
52
+ documents: jArticleView[];
53
+ files?: jFileLittle[];
18
54
  };
55
+ export type FolderTree = Record<string, FolderTreeItem>;
@@ -0,0 +1,21 @@
1
+ import { jArticleView, jFolderList } from 'jamespot-user-api';
2
+ import { FolderTree, JRCFoldersMode, PathItem } from './types';
3
+ export declare const useFilebankApi: ({ mode, abortController, handleError, }: {
4
+ mode: JRCFoldersMode;
5
+ abortController: AbortController;
6
+ handleError?: (message: string) => void;
7
+ }) => {
8
+ fetchRoot: (uri: string) => Promise<void>;
9
+ fetchBanks: () => Promise<void>;
10
+ fetchFolders: (uri: string) => Promise<void>;
11
+ fetchDocuments: (uri: string) => Promise<void>;
12
+ fetchAll: (uri?: string, fetchWithDocuments?: boolean) => Promise<void>;
13
+ setFolderTree: import('react').Dispatch<import('react').SetStateAction<FolderTree>>;
14
+ setPath: (entry: jFolderList | jArticleView) => void;
15
+ goBack: (item: PathItem) => void;
16
+ allDocuments: jArticleView[];
17
+ allFolders: jFolderList[];
18
+ isLoading: boolean | undefined;
19
+ folderTree: FolderTree;
20
+ path: PathItem[];
21
+ };
@@ -0,0 +1,8 @@
1
+ import { jFolderList } from 'jamespot-user-api';
2
+ export declare const useFilebankSearchApi: ({ abortController }: {
3
+ abortController: AbortController;
4
+ }) => {
5
+ isSearchLoading: boolean;
6
+ searchResult: jFolderList[];
7
+ searchContent: (query: string, uri: string, isRoot: boolean) => void;
8
+ };
@@ -0,0 +1,16 @@
1
+ import { jFileLittle, jFolderList } from 'jamespot-user-api';
2
+ type UseFolderSelectionParams = {
3
+ initialDocuments: string[];
4
+ initialFolders: string[];
5
+ allFiles: jFileLittle[];
6
+ allFolders: jFolderList[];
7
+ onSelectDocument?: (documents: jFileLittle[]) => void;
8
+ onSelectFolder?: (folders: jFolderList[]) => void;
9
+ };
10
+ export declare const useFolderSelection: ({ initialDocuments, initialFolders, allFiles, allFolders, onSelectDocument, onSelectFolder, }: UseFolderSelectionParams) => {
11
+ urisDocument: string[];
12
+ urisFolder: string[];
13
+ setUrisDocument: import('react').Dispatch<import('react').SetStateAction<string[]>>;
14
+ setUrisFolder: import('react').Dispatch<import('react').SetStateAction<string[]>>;
15
+ };
16
+ export {};
@@ -1,2 +1,4 @@
1
1
  export declare const inUriArray: (arr: Array<string>, uriValue: string) => boolean;
2
2
  export declare const updateUriArray: (arr: string[], uriValue: string) => Array<string>;
3
+ export declare function hideTitleExtension(title: string): string;
4
+ export declare const uriList: (uris: string[], uri: string, allowMultiSelection: boolean) => string[];
@@ -8,6 +8,7 @@ type JRCGroupsProps = {
8
8
  onSelectGroup?: (group: AudienceAutocomplete[]) => void;
9
9
  publicOnly?: boolean;
10
10
  multiple?: boolean;
11
+ checkboxSelection?: boolean;
11
12
  };
12
- export declare const JRCGroups: ({ handlers, onError, initialGroups, onSelectGroup, publicOnly, multiple, }: JRCGroupsProps) => import("react/jsx-runtime").JSX.Element;
13
+ export declare const JRCGroups: ({ handlers, onError, initialGroups, onSelectGroup, publicOnly, multiple, checkboxSelection, }: JRCGroupsProps) => import("react/jsx-runtime").JSX.Element;
13
14
  export {};
@@ -39,6 +39,10 @@ export type JRCListProps<T extends Record<string, unknown>> = {
39
39
  draggableDisabled?: boolean;
40
40
  pagination?: LoadMorePagination | PaginationPagination;
41
41
  orders?: Orders;
42
+ noHeader?: boolean;
43
+ styles?: {
44
+ hideBottomBorder?: boolean;
45
+ };
42
46
  };
43
47
  className?: string;
44
48
  loading?: boolean;
@@ -1,5 +1,6 @@
1
1
  export declare const Table: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').TableHTMLAttributes<HTMLTableElement>, HTMLTableElement>, {
2
2
  loading?: boolean;
3
+ $hideBottomBorder?: boolean;
3
4
  }>> & string;
4
5
  export declare const Thead: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLTableSectionElement>, HTMLTableSectionElement>, never>> & string;
5
6
  export declare const TBody: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLTableSectionElement>, HTMLTableSectionElement>, never>> & string;
@@ -8,11 +9,13 @@ export declare const Th: import('styled-components/dist/types').IStyledComponent
8
9
  $minWidth?: number;
9
10
  $sortable?: boolean;
10
11
  }>> & string;
12
+ export declare const ThContent: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
11
13
  export declare const Tr: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>, {
12
14
  $isHead?: boolean;
13
15
  }>> & string;
14
16
  export declare const Td: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').TdHTMLAttributes<HTMLTableDataCellElement>, HTMLTableDataCellElement>, {
15
17
  width?: number | string;
16
18
  $minWidth?: number;
19
+ $hideBottomBorder?: boolean;
17
20
  }>> & string;
18
21
  export declare const LoadMore: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
@@ -12,5 +12,7 @@ export type JRCObjectListProps<T extends jObjectLittle = jObjectLittle> = {
12
12
  onClick?: (obj: T) => void;
13
13
  onSearch?: (query: string) => void;
14
14
  isLoading?: boolean;
15
+ checkboxSelection?: boolean;
16
+ isSelected?: (obj: T) => boolean;
15
17
  };
16
- export declare const JRCObjectList: <T extends jObjectLittle = jObjectLittle>({ list, onPageChange, onClick, actionComponent, onSearch, isLoading, }: JRCObjectListProps<T>) => import("react/jsx-runtime").JSX.Element;
18
+ export declare const JRCObjectList: <T extends jObjectLittle = jObjectLittle>({ list, onPageChange, onClick, actionComponent, onSearch, isLoading, checkboxSelection, isSelected, }: JRCObjectListProps<T>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,27 @@
1
+ export declare const CONTACT_AVATAR_DISPLAY_SIZE = 4;
2
+ export declare const CONTACT_AVATAR_EDITOR_SIZE = 3;
3
+ export declare const CONTACT_AVATAR_DISPLAY_PX: number;
4
+ export declare const CONTACT_AVATAR_EDITOR_PX: number;
5
+ export declare const CONTACT_PLACEHOLDER_IMG = "/img/fast-intranet/widget-contact-not-contact.png";
6
+ export declare const FLAG_NOT_IN_CONTACT = "USER_Not_In_Contact";
7
+ export declare const FLAG_NOT_ACTIVE = "USER_Not_Active";
8
+ export declare const FIELD_NOT_SPECIFIED_KEY = "USER_Not_Specified";
9
+ export declare const FIELD_DESCRIPTION = "description";
10
+ export declare const FIELD_MAIL = "mail";
11
+ export declare const FIELD_WEBSITE = "webSite";
12
+ export declare const CONTACT_COLOR_FIELDS: readonly [{
13
+ readonly key: "textNameColor";
14
+ readonly label: "SELECTION_Panel_Text_Color";
15
+ }, {
16
+ readonly key: "linkColor";
17
+ readonly label: "SELECTION_Panel_Link_Color";
18
+ }, {
19
+ readonly key: "buttonColor";
20
+ readonly label: "SELECTION_Panel_Button_Color";
21
+ }, {
22
+ readonly key: "backgroundCardContact";
23
+ readonly label: "SELECTION_Panel_Background_Card_Contact_Color";
24
+ }, {
25
+ readonly key: "background";
26
+ readonly label: "SELECTION_Panel_Background_Color";
27
+ }];
@@ -0,0 +1,11 @@
1
+ import { ContactEntry, WidgetContactCss } from 'jamespot-user-api';
2
+ export type JRCWidgetContactProps = {
3
+ contacts: ContactEntry[];
4
+ displayFields: string[];
5
+ css?: WidgetContactCss | undefined;
6
+ messengerActive?: boolean | undefined;
7
+ onInvite: (idUser: number) => void;
8
+ onMessage?: ((idUser: number) => void) | undefined;
9
+ isLoading?: boolean | undefined;
10
+ };
11
+ export declare const JRCWidgetContact: ({ contacts, displayFields, css, messengerActive, onInvite, onMessage, isLoading, }: JRCWidgetContactProps) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,11 @@
1
+ import { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { JRCWidgetContact } from './JRCWidgetContact';
3
+ declare const meta: Meta<typeof JRCWidgetContact>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof JRCWidgetContact>;
6
+ export declare const Normal: Story;
7
+ export declare const NotSpecifiedFields: Story;
8
+ export declare const NotInContact: Story;
9
+ export declare const Inactive: Story;
10
+ export declare const MixedList: Story;
11
+ export declare const Empty: Story;
@@ -0,0 +1,7 @@
1
+ import { WidgetContactContent } from 'jamespot-user-api';
2
+ export interface JRCWidgetContactEditorProps {
3
+ uniqid: string;
4
+ content: WidgetContactContent;
5
+ onChangeContent: (uniqid: string, content: WidgetContactContent) => void;
6
+ }
7
+ export declare const JRCWidgetContactEditor: ({ uniqid, content, onChangeContent }: JRCWidgetContactEditorProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ import { WidgetDocumentsContent, WidgetEditorActions } from 'jamespot-user-api';
2
+ export declare const StyleWithBottomLine: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
3
+ export declare const JRCWidgetDocumentsEditor: ({ uri, textColor, view, cols, rows, hideExtension, hidePreview, sortBy, onChange, }: WidgetDocumentsContent & WidgetEditorActions<WidgetDocumentsContent>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ export declare const StyleWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
2
+ export declare const StyleLabelWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
3
+ export declare const StyleLabelEllipsis: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
4
+ export declare const WidgetDocumentSelection: ({ uri, onDelete }: {
5
+ uri: string;
6
+ onDelete: () => void;
7
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import { JRCFoldersProps } from '../../../JRCFolders/types';
2
+ export declare const WidgetModalSelection: ({ label, mode, allowMultiSelection, onChange, }: {
3
+ label: string;
4
+ mode: JRCFoldersProps["mode"];
5
+ allowMultiSelection?: boolean;
6
+ onChange: (uri: string) => void;
7
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ export declare const METEO_IFRAME_BASE = "https://meteofrance.com/widget/prevision/";
2
+ export declare const DEFAULT_BACKGROUND_COLOR = "#3ec3ef";
3
+ export declare const METEO_IFRAME_HEIGHT = 400;
4
+ export declare const METEO_PREVIEW_MAX_HEIGHT = 155;