@gouvfr-lasuite/ui-kit 0.1.3 → 0.1.4

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/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { Context } from 'react';
1
2
  import { CunninghamProvider as CunninghamProvider_2 } from '@openfun/cunningham-react';
2
3
  import { CursorProps } from 'react-arborist';
3
4
  import { Dispatch } from 'react';
@@ -9,6 +10,7 @@ import { NodeRendererProps } from 'react-arborist';
9
10
  import { PropsWithChildren } from 'react';
10
11
  import { ReactNode } from 'react';
11
12
  import { SetStateAction } from 'react';
13
+ import { TreeApi } from 'react-arborist';
12
14
 
13
15
  export declare type BaseTreeViewData<T> = {
14
16
  id: string;
@@ -17,12 +19,12 @@ export declare type BaseTreeViewData<T> = {
17
19
  children?: BaseTreeViewData<T>[];
18
20
  canDrop?: boolean;
19
21
  } & (({
20
- type: TreeViewNodeTypeEnum.TITLE;
21
- title: string;
22
+ nodeType: TreeViewNodeTypeEnum.TITLE;
23
+ headerTitle: string;
22
24
  }) | ({
23
- type: TreeViewNodeTypeEnum.SEPARATOR;
25
+ nodeType: TreeViewNodeTypeEnum.SEPARATOR;
24
26
  }) | ({
25
- type?: Exclude<TreeViewNodeTypeEnum, TreeViewNodeTypeEnum.TITLE | TreeViewNodeTypeEnum.SEPARATOR>;
27
+ nodeType?: Exclude<TreeViewNodeTypeEnum, TreeViewNodeTypeEnum.TITLE | TreeViewNodeTypeEnum.SEPARATOR>;
26
28
  } & T));
27
29
 
28
30
  export declare const cunninghamConfig: {
@@ -100,6 +102,7 @@ export declare const cunninghamConfig: {
100
102
  "warning-800": string;
101
103
  "warning-900": string;
102
104
  "danger-text": string;
105
+ "danger-050": string;
103
106
  "danger-100": string;
104
107
  "danger-200": string;
105
108
  "danger-300": string;
@@ -181,6 +184,10 @@ export declare const cunninghamConfig: {
181
184
  modal: {
182
185
  "width-small": string;
183
186
  };
187
+ tooltip: {
188
+ padding: string;
189
+ "background-color": string;
190
+ };
184
191
  button: {
185
192
  "medium-height": string;
186
193
  "medium-text-height": string;
@@ -389,17 +396,21 @@ export declare type LeftPanelProps = {
389
396
  isOpen?: boolean;
390
397
  };
391
398
 
392
- export declare const MainLayout: ({ icon, children, leftPanelContent, rightHeaderContent, languages, enableResize, }: PropsWithChildren<MainLayoutProps>) => JSX.Element;
399
+ export declare const MainLayout: ({ icon, children, leftPanelContent, rightPanelContent, rightHeaderContent, languages, enableResize, rightPanelIsOpen, }: PropsWithChildren<MainLayoutProps>) => JSX.Element;
393
400
 
394
401
  export declare type MainLayoutProps = {
395
402
  icon?: React.ReactNode;
396
403
  leftPanelContent?: React.ReactNode;
404
+ rightPanelContent?: React.ReactNode;
397
405
  rightHeaderContent?: React.ReactNode;
398
406
  languages?: DropdownMenuOption[];
399
- onTogglePanel?: () => void;
407
+ onToggleRightPanel?: () => void;
400
408
  enableResize?: boolean;
409
+ rightPanelIsOpen?: boolean;
401
410
  };
402
411
 
412
+ export { NodeRendererProps }
413
+
403
414
  export declare type OpenMap = {
404
415
  [id: string]: boolean;
405
416
  };
@@ -495,6 +506,19 @@ export declare type TabsProps = {
495
506
  fullWidth?: boolean;
496
507
  };
497
508
 
509
+ export { TreeApi }
510
+
511
+ export declare const TreeContext: Context<TreeContextType<any> | null>;
512
+
513
+ export declare type TreeContextType<T> = {
514
+ treeApiRef: React.RefObject<TreeApi<TreeDataItem<T>> | null>;
515
+ treeData: ReturnType<typeof useTree<T>>;
516
+ root: T | null;
517
+ initialTargetId: string | null;
518
+ setInitialTargetId: (id: string) => void;
519
+ setRoot: (root: T) => void;
520
+ };
521
+
498
522
  export declare type TreeDataItem<T> = {
499
523
  /** A unique key for the tree node. */
500
524
  key: string;
@@ -506,11 +530,21 @@ export declare type TreeDataItem<T> = {
506
530
  children: TreeDataItem<T>[] | null;
507
531
  };
508
532
 
509
- export declare const TreeView: <T>({ treeData, initialOpenState, selectedNodeId, rootNodeId, renderNode, handleMove, canDrop, canDrag, }: TreeViewProps<T>) => JSX.Element;
533
+ export declare const TreeProvider: <T>({ children, onRefresh: refreshCallback, initialNodeId, onLoadChildren: loadChildrenCallback, initialTreeData, }: TreeProviderProps<T>) => JSX.Element;
534
+
535
+ export declare type TreeProviderProps<T> = {
536
+ children: React.ReactNode;
537
+ initialTreeData?: TreeViewDataType<T>[];
538
+ initialNodeId?: string;
539
+ onRefresh?: (id: string) => Promise<Partial<TreeViewDataType<T>>>;
540
+ onLoadChildren?: (id: string) => Promise<TreeViewDataType<T>[]>;
541
+ };
542
+
543
+ export declare const TreeView: <T>({ initialOpenState, selectedNodeId, rootNodeId, renderNode, canDrop, canDrag, afterMove, }: TreeViewProps<T>) => JSX.Element | undefined;
510
544
 
511
545
  export declare type TreeViewDataType<T> = BaseTreeViewData<T>;
512
546
 
513
- export declare const TreeViewItem: <T>({ children, onClick, node, dragHandle, style, loadChildren, forceLoading, }: PropsWithChildren<TreeViewNodeProps<T>>) => JSX.Element;
547
+ export declare const TreeViewItem: <T>({ children, onClick, node, dragHandle, style, forceLoading, }: PropsWithChildren<TreeViewNodeProps<T>>) => JSX.Element;
514
548
 
515
549
  export declare enum TreeViewMoveModeEnum {
516
550
  FIRST_CHILD = "first-child",
@@ -531,7 +565,6 @@ export declare type TreeViewMoveResult = {
531
565
  export declare type TreeViewNodeProps<T> = NodeRendererProps<TreeDataItem<T>> & {
532
566
  onClick?: () => void;
533
567
  forceLoading?: boolean;
534
- loadChildren?: (node: TreeViewDataType<T>) => Promise<TreeViewDataType<T>[]>;
535
568
  };
536
569
 
537
570
  export declare enum TreeViewNodeTypeEnum {
@@ -541,7 +574,6 @@ export declare enum TreeViewNodeTypeEnum {
541
574
  }
542
575
 
543
576
  export declare type TreeViewProps<T> = {
544
- treeData: TreeDataItem<T>[];
545
577
  initialOpenState?: OpenMap;
546
578
  selectedNodeId?: string;
547
579
  rootNodeId: string;
@@ -551,7 +583,7 @@ export declare type TreeViewProps<T> = {
551
583
  index: number;
552
584
  }) => boolean;
553
585
  canDrag?: (node: TreeDataItem<T>) => boolean;
554
- handleMove?: (result: TreeViewMoveResult) => void;
586
+ afterMove?: (result: TreeViewMoveResult) => void;
555
587
  renderNode: (props: NodeRendererProps<TreeDataItem<T>>) => React.ReactNode;
556
588
  };
557
589
 
@@ -568,7 +600,7 @@ export declare const useResponsive: () => {
568
600
  isDesktop: boolean;
569
601
  };
570
602
 
571
- export declare const useTree: <T extends object>(initialItems: TreeViewDataType<T>[], refreshCallback?: (id: string) => Promise<Partial<TreeViewDataType<T>>>, loadChildrenCallback?: (id: string) => Promise<TreeViewDataType<T>[]>) => {
603
+ export declare const useTree: <T>(initialItems: TreeViewDataType<T>[], refreshCallback?: (id: string) => Promise<Partial<TreeViewDataType<T>>>, loadChildrenCallback?: (id: string) => Promise<TreeViewDataType<T>[]>) => {
572
604
  nodes: TreeDataItem<TreeViewDataType<T>>[];
573
605
  addChild: (parentId: string | null, newNode: TreeViewDataType<T>) => void;
574
606
  updateNode: (nodeId: string, updatedData: Partial<TreeViewDataType<T>>) => void;
@@ -588,8 +620,12 @@ export declare const useTree: <T extends object>(initialItems: TreeViewDataType<
588
620
  resetTree: (newItems?: TreeViewDataType<T>[]) => void;
589
621
  handleLoadChildren: (nodeId: string) => Promise<TreeViewDataType<T>[]>;
590
622
  selectNodeById: (nodeId: string) => void;
623
+ getParent: (nodeId: string) => TreeViewDataType<T> | null;
624
+ getParentId: (nodeId: string) => Key | null;
591
625
  };
592
626
 
627
+ export declare const useTreeContext: <T>() => TreeContextType<T> | null;
628
+
593
629
  export declare const WithLabel: ({ label, text, labelSide, children, }: PropsWithChildren<WithLabelProps>) => JSX.Element;
594
630
 
595
631
  export declare type WithLabelProps = {