react-science 16.1.0 → 18.0.0

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 (51) hide show
  1. package/lib/components/accordion/accordion.d.ts +12 -1
  2. package/lib/components/accordion/accordion.d.ts.map +1 -1
  3. package/lib/components/accordion/accordion.js +12 -8
  4. package/lib/components/accordion/accordion.js.map +1 -1
  5. package/lib/components/accordion/accordion_context.d.ts +7 -13
  6. package/lib/components/accordion/accordion_context.d.ts.map +1 -1
  7. package/lib/components/accordion/accordion_context.js +4 -2
  8. package/lib/components/accordion/accordion_context.js.map +1 -1
  9. package/lib/components/accordion/accordion_context_provider.js.map +1 -1
  10. package/lib/components/accordion/accordion_context_utils.d.ts +7 -4
  11. package/lib/components/accordion/accordion_context_utils.d.ts.map +1 -1
  12. package/lib/components/accordion/accordion_context_utils.js.map +1 -1
  13. package/lib/components/accordion/index.d.ts +1 -0
  14. package/lib/components/accordion/index.d.ts.map +1 -1
  15. package/lib/components/fullscreen/fullscreen_context.provider.d.ts +14 -5
  16. package/lib/components/fullscreen/fullscreen_context.provider.d.ts.map +1 -1
  17. package/lib/components/fullscreen/fullscreen_context.provider.js +20 -56
  18. package/lib/components/fullscreen/fullscreen_context.provider.js.map +1 -1
  19. package/lib/components/pdnd.cjs +29 -0
  20. package/lib/components/pdnd.cjs.map +1 -0
  21. package/lib/components/pdnd.d.cts +10 -0
  22. package/lib/components/pdnd.d.cts.map +1 -0
  23. package/lib/components/root-layout/css-reset/customPreflight.d.ts.map +1 -1
  24. package/lib/components/root-layout/css-reset/customPreflight.js +6 -0
  25. package/lib/components/root-layout/css-reset/customPreflight.js.map +1 -1
  26. package/lib/components/root-layout/root_layout.d.ts +3 -1
  27. package/lib/components/root-layout/root_layout.d.ts.map +1 -1
  28. package/lib/components/root-layout/root_layout.js +12 -5
  29. package/lib/components/root-layout/root_layout.js.map +1 -1
  30. package/lib/components/table/reorder_rows/draggable_row_tr.d.ts.map +1 -1
  31. package/lib/components/table/reorder_rows/draggable_row_tr.js +1 -5
  32. package/lib/components/table/reorder_rows/draggable_row_tr.js.map +1 -1
  33. package/lib/components/table/reorder_rows/item_order_provider.d.ts.map +1 -1
  34. package/lib/components/table/reorder_rows/item_order_provider.js +1 -2
  35. package/lib/components/table/reorder_rows/item_order_provider.js.map +1 -1
  36. package/lib/components/table/reorder_rows/use_drop_monitor.d.ts.map +1 -1
  37. package/lib/components/table/reorder_rows/use_drop_monitor.js +1 -4
  38. package/lib/components/table/reorder_rows/use_drop_monitor.js.map +1 -1
  39. package/package.json +2 -1
  40. package/src/components/accordion/accordion.tsx +33 -9
  41. package/src/components/accordion/accordion_context.ts +13 -10
  42. package/src/components/accordion/accordion_context_provider.tsx +3 -3
  43. package/src/components/accordion/accordion_context_utils.ts +7 -4
  44. package/src/components/accordion/index.ts +3 -0
  45. package/src/components/fullscreen/fullscreen_context.provider.tsx +37 -81
  46. package/src/components/pdnd.cts +20 -0
  47. package/src/components/root-layout/css-reset/customPreflight.ts +6 -0
  48. package/src/components/root-layout/root_layout.tsx +34 -19
  49. package/src/components/table/reorder_rows/draggable_row_tr.tsx +9 -11
  50. package/src/components/table/reorder_rows/item_order_provider.tsx +2 -2
  51. package/src/components/table/reorder_rows/use_drop_monitor.ts +6 -4
@@ -1,7 +1,13 @@
1
1
  import type { ReactElement, ReactNode } from 'react';
2
+ import type { AccordionItemControls } from './accordion_context_utils.js';
2
3
  export interface AccordionProps<T extends string = string> {
3
4
  children?: Array<ReactElement<AccordionItemProps<T>>> | ReactElement<AccordionItemProps<T>> | boolean | null;
4
5
  }
6
+ export interface AccordionRenderToolbarProps<T extends string = string> {
7
+ id: T;
8
+ isOpen: boolean;
9
+ controls: AccordionItemControls;
10
+ }
5
11
  export interface AccordionItemProps<T extends string = string> {
6
12
  /**
7
13
  * A value uniquely identifying the accordion item.
@@ -33,7 +39,12 @@ export interface AccordionItemProps<T extends string = string> {
33
39
  * When not set or set to false, the item's children will be rendered but hidden when the item is closed.
34
40
  */
35
41
  unmountChildren?: boolean;
36
- renderToolbar?: (isOpen: boolean) => ReactNode;
42
+ /**
43
+ * A custom render function to display in the toolbar on the right of the accordion item.
44
+ * Click events will not be propagated down to the accordion item to prevent it from opening/closing.
45
+ * @param data
46
+ */
47
+ renderToolbar?: (renderProps: AccordionRenderToolbarProps<T>) => ReactNode;
37
48
  }
38
49
  export declare function Accordion<T extends string = string>(props: AccordionProps<T>): import("react/jsx-runtime").JSX.Element;
39
50
  export declare namespace Accordion {
@@ -1 +1 @@
1
- {"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../../src/components/accordion/accordion.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,YAAY,EACZ,SAAS,EACV,MAAM,OAAO,CAAC;AAKf,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACvD,QAAQ,CAAC,EACL,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,GAC1C,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GACnC,OAAO,GACP,IAAI,CAAC;CACV;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAC3D;;OAEG;IACH,EAAE,EAAE,CAAC,CAAC;IACN;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,SAAS,CAAC;CAChD;AAkCD,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,2CAE5E;yBAFe,SAAS;eAIe,CAAC,SAAS,MAAM,kBAC/C,kBAAkB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../../src/components/accordion/accordion.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,YAAY,EACZ,SAAS,EACV,MAAM,OAAO,CAAC;AAIf,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACvD,QAAQ,CAAC,EACL,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,GAC1C,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GACnC,OAAO,GACP,IAAI,CAAC;CACV;AAED,MAAM,WAAW,2BAA2B,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACpE,EAAE,EAAE,CAAC,CAAC;IACN,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,qBAAqB,CAAC;CACjC;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAC3D;;OAEG;IACH,EAAE,EAAE,CAAC,CAAC;IACN;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,2BAA2B,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;CAC5E;AAkCD,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,2CAE5E;yBAFe,SAAS;eAIe,CAAC,SAAS,MAAM,kBAC/C,kBAAkB,CAAC,CAAC,CAAC"}
@@ -2,8 +2,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Colors } from '@blueprintjs/core';
3
3
  import styled from '@emotion/styled';
4
4
  import { useControllableState } from '@radix-ui/react-use-controllable-state';
5
- import { useCallback } from 'react';
6
- import { useAccordionContext } from './accordion_context.js';
5
+ import { useCallback, useRef } from 'react';
6
+ import { useAccordionItemContext } from './accordion_context.js';
7
7
  const AccordionItemHeader = styled.div `
8
8
  cursor: pointer;
9
9
  display: flex;
@@ -44,26 +44,27 @@ Accordion.Item = function AccordionItem(props) {
44
44
  defaultProp: defaultOpen,
45
45
  onChange: onOpenChange,
46
46
  });
47
- const { utils, unmountChildren } = useAccordionContext(id, setIsOpen);
47
+ const { controls, unmountChildren } = useAccordionItemContext(id, setIsOpen);
48
+ const headerRef = useRef(null);
48
49
  const shouldUnmountChildren = props.unmountChildren === undefined
49
50
  ? unmountChildren
50
51
  : props.unmountChildren;
51
52
  const onClickHandle = useCallback((event) => {
52
53
  if (event.shiftKey) {
53
- utils.closeOthers();
54
+ controls.closeOthers();
54
55
  }
55
56
  else {
56
- utils.toggle();
57
+ controls.toggle();
57
58
  }
58
- }, [utils]);
59
+ }, [controls]);
59
60
  return (_jsxs("div", { style: {
60
61
  flex: isOpen ? '1 1 1px' : 'none',
61
62
  display: 'flex',
62
63
  flexDirection: 'column',
63
64
  isolation: 'isolate',
64
- }, children: [_jsxs(AccordionItemHeader, { onClick: onClickHandle, role: "button", children: [_jsx("div", { style: {
65
+ }, children: [_jsxs(AccordionItemHeader, { onClick: onClickHandle, role: "button", ref: headerRef, children: [_jsx("div", { style: {
65
66
  padding: '5px 0px',
66
- }, children: title }), renderToolbar?.(isOpen ?? false)] }), !isOpen && shouldUnmountChildren ? null : (_jsx("div", { style: {
67
+ }, children: title }), _jsx(ToolbarContainer, { onClick: (event) => event.stopPropagation(), children: renderToolbar?.({ id, isOpen: isOpen ?? false, controls }) })] }), !isOpen && shouldUnmountChildren ? null : (_jsx("div", { style: {
67
68
  display: isOpen ? 'flex' : 'none',
68
69
  flex: isOpen ? '1 1 1px' : 'none',
69
70
  backgroundColor: 'white',
@@ -77,4 +78,7 @@ Accordion.Item = function AccordionItem(props) {
77
78
  flexDirection: 'column',
78
79
  }, children: children }) }))] }));
79
80
  };
81
+ const ToolbarContainer = styled.div `
82
+ display: flex;
83
+ `;
80
84
  //# sourceMappingURL=accordion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"accordion.js","sourceRoot":"","sources":["../../../src/components/accordion/accordion.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"accordion.js","sourceRoot":"","sources":["../../../src/components/accordion/accordion.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
- import type { AccordionItemSetIsOpen, AccordionState } from './accordion_context_utils.js';
2
- export type ContextType = [
3
- AccordionContext,
1
+ import type { AccordionItemContextValue, AccordionItemSetIsOpen } from './accordion_context_utils.js';
2
+ export type AccordionContextValue = [
3
+ {
4
+ unmountChildren: boolean;
5
+ },
4
6
  {
5
7
  closeAllExcept: (except: string) => void;
6
8
  toggle: (id: string) => void;
@@ -9,14 +11,6 @@ export type ContextType = [
9
11
  change: (id: string, isOpen: boolean) => void;
10
12
  }
11
13
  ];
12
- type AccordionContext = AccordionState;
13
- export declare const accordionContext: import("react").Context<ContextType | null>;
14
- export declare function useAccordionContext(id: string, setIsOpen: AccordionItemSetIsOpen): {
15
- unmountChildren: boolean;
16
- utils: {
17
- closeOthers: () => void;
18
- toggle: () => void;
19
- };
20
- };
21
- export {};
14
+ export declare const accordionContext: import("react").Context<AccordionContextValue | null>;
15
+ export declare function useAccordionItemContext(id: string, setIsOpen: AccordionItemSetIsOpen): AccordionItemContextValue;
22
16
  //# sourceMappingURL=accordion_context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accordion_context.d.ts","sourceRoot":"","sources":["../../../src/components/accordion/accordion_context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EACtB,cAAc,EACf,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,WAAW,GAAG;IACxB,gBAAgB;IAChB;QACE,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;QACzC,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;QAC7B,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;QACjC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,sBAAsB,KAAK,IAAI,CAAC;QAClE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;KAC/C;CACF,CAAC;AAEF,KAAK,gBAAgB,GAAG,cAAc,CAAC;AAEvC,eAAO,MAAM,gBAAgB,6CAA0C,CAAC;AAExE,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,sBAAsB;;;;;;EAyBlC"}
1
+ {"version":3,"file":"accordion_context.d.ts","sourceRoot":"","sources":["../../../src/components/accordion/accordion_context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,qBAAqB,GAAG;IAClC;QACE,eAAe,EAAE,OAAO,CAAC;KAC1B;IACD;QACE,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;QACzC,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;QAC7B,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;QACjC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,sBAAsB,KAAK,IAAI,CAAC;QAClE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;KAC/C;CACF,CAAC;AACF,eAAO,MAAM,gBAAgB,uDAE5B,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,sBAAsB,GAChC,yBAAyB,CA0B3B"}
@@ -1,6 +1,6 @@
1
1
  import { createContext, useContext, useEffect, useMemo } from 'react';
2
2
  export const accordionContext = createContext(null);
3
- export function useAccordionContext(id, setIsOpen) {
3
+ export function useAccordionItemContext(id, setIsOpen) {
4
4
  const context = useContext(accordionContext);
5
5
  if (!context) {
6
6
  throw new Error('AccordionContext was not found');
@@ -12,9 +12,11 @@ export function useAccordionContext(id, setIsOpen) {
12
12
  }, [id, utils, setIsOpen]);
13
13
  return useMemo(() => ({
14
14
  unmountChildren: state.unmountChildren,
15
- utils: {
15
+ controls: {
16
16
  closeOthers: () => utils.closeAllExcept(id),
17
17
  toggle: () => utils.toggle(id),
18
+ open: () => utils.change(id, true),
19
+ close: () => utils.change(id, false),
18
20
  },
19
21
  }), [id, utils, state.unmountChildren]);
20
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"accordion_context.js","sourceRoot":"","sources":["../../../src/components/accordion/accordion_context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAoBtE,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAqB,IAAI,CAAC,CAAC;AAExE,MAAM,UAAU,mBAAmB,CACjC,EAAU,EACV,SAAiC;IAEjC,MAAM,OAAO,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAE7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC;IAE/B,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC9B,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAE3B,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,KAAK,EAAE;YACL,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;YAC3C,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;SAC/B;KACF,CAAC,EACF,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,CACnC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"accordion_context.js","sourceRoot":"","sources":["../../../src/components/accordion/accordion_context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAmBtE,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAC3C,IAAI,CACL,CAAC;AAEF,MAAM,UAAU,uBAAuB,CACrC,EAAU,EACV,SAAiC;IAEjC,MAAM,OAAO,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAE7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC;IAE/B,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC9B,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAE3B,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,QAAQ,EAAE;YACR,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;YAC3C,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9B,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC;YAClC,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC;SACrC;KACF,CAAC,EACF,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,CACnC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"accordion_context_provider.js","sourceRoot":"","sources":["../../../src/components/accordion/accordion_context_provider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"accordion_context_provider.js","sourceRoot":"","sources":["../../../src/components/accordion/accordion_context_provider.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,13 @@
1
1
  import type { Dispatch, SetStateAction } from 'react';
2
- export interface AccordionItemState {
3
- title: string;
4
- onChange: AccordionItemSetIsOpen;
2
+ export interface AccordionItemControls {
3
+ closeOthers: () => void;
4
+ toggle: () => void;
5
+ open: () => void;
6
+ close: () => void;
5
7
  }
6
- export interface AccordionState {
8
+ export interface AccordionItemContextValue {
7
9
  unmountChildren: boolean;
10
+ controls: AccordionItemControls;
8
11
  }
9
12
  export type AccordionItemSetIsOpen = Dispatch<SetStateAction<boolean | undefined>>;
10
13
  interface AccordionRegisteredItem {
@@ -1 +1 @@
1
- {"version":3,"file":"accordion_context_utils.d.ts","sourceRoot":"","sources":["../../../src/components/accordion/accordion_context_utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEtD,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,sBAAsB,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAC3C,cAAc,CAAC,OAAO,GAAG,SAAS,CAAC,CACpC,CAAC;AAEF,UAAU,uBAAuB;IAC/B,SAAS,EAAE,sBAAsB,CAAC;CACnC;AAED,wBAAgB,oBAAoB,yCAEnC"}
1
+ {"version":3,"file":"accordion_context_utils.d.ts","sourceRoot":"","sources":["../../../src/components/accordion/accordion_context_utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,yBAAyB;IACxC,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,qBAAqB,CAAC;CACjC;AAED,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAC3C,cAAc,CAAC,OAAO,GAAG,SAAS,CAAC,CACpC,CAAC;AAEF,UAAU,uBAAuB;IAC/B,SAAS,EAAE,sBAAsB,CAAC;CACnC;AAED,wBAAgB,oBAAoB,yCAEnC"}
@@ -1 +1 @@
1
- {"version":3,"file":"accordion_context_utils.js","sourceRoot":"","sources":["../../../src/components/accordion/accordion_context_utils.ts"],"names":[],"mappings":"AAmBA,MAAM,UAAU,oBAAoB;IAClC,OAAO,IAAI,GAAG,EAAmC,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"accordion_context_utils.js","sourceRoot":"","sources":["../../../src/components/accordion/accordion_context_utils.ts"],"names":[],"mappings":"AAsBA,MAAM,UAAU,oBAAoB;IAClC,OAAO,IAAI,GAAG,EAAmC,CAAC;AACpD,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from './accordion.js';
2
2
  export * from './accordion_context_provider.js';
3
3
  export * from './accordion_hooks.js';
4
+ export type { AccordionItemControls } from './accordion_context_utils.js';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/accordion/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iCAAiC,CAAC;AAChD,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/accordion/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iCAAiC,CAAC;AAChD,cAAc,sBAAsB,CAAC;AAGrC,YAAY,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC"}
@@ -1,7 +1,16 @@
1
- import type { ReactNode } from 'react';
2
- interface FullscreenProps {
3
- children: ReactNode;
1
+ import type { MutableRefObject, ReactNode } from 'react';
2
+ export interface FullscreenProviderProps {
3
+ /**
4
+ * Callback providing the ref which should be passed to the element that can be displayed fullscreen.
5
+ * @param ref
6
+ */
7
+ children: (ref: MutableRefObject<HTMLDivElement | null>) => ReactNode;
8
+ /**
9
+ * Callback which will be called in case toggling results in an error.
10
+ * @param error - The error that happened. Value is not necessarily an instance of `Error` and may even be `undefined`.
11
+ * @param step - Indicates if the error happened when entering or exiting the full screen.
12
+ */
13
+ onToggleError?: (error: unknown, step: 'enter' | 'exit') => void;
4
14
  }
5
- export declare function FullScreenProvider(props: FullscreenProps): import("react/jsx-runtime").JSX.Element;
6
- export {};
15
+ export declare function FullScreenProvider(props: FullscreenProviderProps): import("react/jsx-runtime").JSX.Element;
7
16
  //# sourceMappingURL=fullscreen_context.provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fullscreen_context.provider.d.ts","sourceRoot":"","sources":["../../../src/components/fullscreen/fullscreen_context.provider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAavC,UAAU,eAAe;IACvB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,eAAe,2CAYxD"}
1
+ {"version":3,"file":"fullscreen_context.provider.d.ts","sourceRoot":"","sources":["../../../src/components/fullscreen/fullscreen_context.provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMzD,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,SAAS,CAAC;IACtE;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,KAAK,IAAI,CAAC;CAClE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,2CA4BhE"}
@@ -1,64 +1,28 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useEffect, useMemo, useReducer, useRef } from 'react';
3
- import { fullscreenContext, useFullscreen } from './fullscreen_context.js';
2
+ import { useMemo } from 'react';
3
+ import { useFullScreenHandle } from 'react-full-screen';
4
+ import { fullscreenContext } from './fullscreen_context.js';
4
5
  export function FullScreenProvider(props) {
5
- const [isFullScreen, toggle] = useReducer((value) => !value, false);
6
- const value = useMemo(() => ({ isFullScreen, toggle }), [isFullScreen, toggle]);
7
- return (_jsx(fullscreenContext.Provider, { value: value, children: _jsx(FullscreenInner, { ...props }) }));
8
- }
9
- function FullscreenInner(props) {
10
- const { children } = props;
11
- const { isFullScreen, toggle } = useFullscreen();
12
- const ref = useRef(null);
13
- useEffect(() => {
14
- function onFullscreenChange() {
15
- const document = window.document;
16
- const value = Boolean(document.fullscreenElement || document.webkitFullscreenElement);
17
- if (!value && isFullScreen)
18
- toggle();
19
- }
20
- const div = ref.current;
21
- if (!div) {
22
- return;
23
- }
24
- div.addEventListener('fullscreenchange', onFullscreenChange);
25
- div.addEventListener('webkitfullscreenchange', onFullscreenChange);
26
- return () => {
27
- div.removeEventListener('fullscreenchange', onFullscreenChange);
28
- div.removeEventListener('webkitfullscreenchange', onFullscreenChange);
29
- };
30
- }, [isFullScreen, toggle]);
31
- useEffect(() => {
32
- if (isFullScreen && ref.current) {
33
- if (ref.current.requestFullscreen) {
34
- ref.current.requestFullscreen().catch(() => {
35
- window.alert('Fullscreen is not supported');
36
- });
6
+ const { children, onToggleError } = props;
7
+ const handle = useFullScreenHandle();
8
+ const value = useMemo(() => {
9
+ function toggle() {
10
+ const handleToggle = handle.active ? handle.exit : handle.enter;
11
+ function handleError(error) {
12
+ onToggleError?.(error, handle.active ? 'exit' : 'enter');
37
13
  }
38
- else if (ref.current.webkitRequestFullscreen) {
39
- ref.current.webkitRequestFullscreen()?.catch(() => {
40
- window.alert('Fullscreen is not supported');
41
- });
14
+ try {
15
+ handleToggle().catch(handleError);
42
16
  }
43
- }
44
- const document = window.document;
45
- if (!isFullScreen && document.fullscreenElement) {
46
- if (document.exitFullscreen) {
47
- document.exitFullscreen().catch(() => {
48
- window.alert("Can't exit fullscreen");
49
- });
50
- }
51
- else if (document.webkitExitFullscreen) {
52
- document.webkitExitFullscreen().catch(() => {
53
- window.alert("Can't exit fullscreen");
54
- });
17
+ catch (error) {
18
+ handleError(error);
55
19
  }
56
20
  }
57
- }, [isFullScreen]);
58
- return (_jsx("div", { ref: ref, style: {
59
- width: '100%',
60
- height: '100%',
61
- backgroundColor: 'white',
62
- }, children: children }));
21
+ return {
22
+ isFullScreen: handle.active,
23
+ toggle,
24
+ };
25
+ }, [handle, onToggleError]);
26
+ return (_jsx(fullscreenContext.Provider, { value: value, children: children(handle.node) }));
63
27
  }
64
28
  //# sourceMappingURL=fullscreen_context.provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fullscreen_context.provider.js","sourceRoot":"","sources":["../../../src/components/fullscreen/fullscreen_context.provider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fullscreen_context.provider.js","sourceRoot":"","sources":["../../../src/components/fullscreen/fullscreen_context.provider.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAgB5D,MAAM,UAAU,kBAAkB,CAAC,KAA8B;IAC/D,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IAE1C,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;IAErC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE;QACzB,SAAS,MAAM;YACb,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YAChE,SAAS,WAAW,CAAC,KAAc;gBACjC,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC3D,CAAC;YACD,IAAI,CAAC;gBACH,YAAY,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,WAAW,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QACD,OAAO;YACL,YAAY,EAAE,MAAM,CAAC,MAAM;YAC3B,MAAM;SACP,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;IAE5B,OAAO,CACL,KAAC,iBAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YACrC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GACK,CAC9B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getReorderDestinationIndex = exports.attachClosestEdge = exports.extractClosestEdge = exports.autoScrollForElements = exports.monitorForElements = exports.dropTargetForElements = exports.draggable = exports.reorder = exports.combine = exports.setCustomNativeDragPreview = exports.pointerOutsideOfPreview = void 0;
4
+ // https://github.com/atlassian/pragmatic-drag-and-drop/issues/27
5
+ // Given how `@atlaskit/pragmatic-drag-and-drop` publishes ESM in a non-native way,
6
+ // we have to trick TS into using the CJS build so that our build is compatible
7
+ // with native ESM.
8
+ // We cannot use `verbatimModuleSyntax` ts config option with this pattern.
9
+ var pointer_outside_of_preview_1 = require("@atlaskit/pragmatic-drag-and-drop/element/pointer-outside-of-preview");
10
+ Object.defineProperty(exports, "pointerOutsideOfPreview", { enumerable: true, get: function () { return pointer_outside_of_preview_1.pointerOutsideOfPreview; } });
11
+ var set_custom_native_drag_preview_1 = require("@atlaskit/pragmatic-drag-and-drop/element/set-custom-native-drag-preview");
12
+ Object.defineProperty(exports, "setCustomNativeDragPreview", { enumerable: true, get: function () { return set_custom_native_drag_preview_1.setCustomNativeDragPreview; } });
13
+ var combine_1 = require("@atlaskit/pragmatic-drag-and-drop/combine");
14
+ Object.defineProperty(exports, "combine", { enumerable: true, get: function () { return combine_1.combine; } });
15
+ var reorder_1 = require("@atlaskit/pragmatic-drag-and-drop/reorder");
16
+ Object.defineProperty(exports, "reorder", { enumerable: true, get: function () { return reorder_1.reorder; } });
17
+ var adapter_1 = require("@atlaskit/pragmatic-drag-and-drop/element/adapter");
18
+ Object.defineProperty(exports, "draggable", { enumerable: true, get: function () { return adapter_1.draggable; } });
19
+ Object.defineProperty(exports, "dropTargetForElements", { enumerable: true, get: function () { return adapter_1.dropTargetForElements; } });
20
+ var adapter_2 = require("@atlaskit/pragmatic-drag-and-drop/element/adapter");
21
+ Object.defineProperty(exports, "monitorForElements", { enumerable: true, get: function () { return adapter_2.monitorForElements; } });
22
+ var element_1 = require("@atlaskit/pragmatic-drag-and-drop-auto-scroll/element");
23
+ Object.defineProperty(exports, "autoScrollForElements", { enumerable: true, get: function () { return element_1.autoScrollForElements; } });
24
+ var closest_edge_1 = require("@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge");
25
+ Object.defineProperty(exports, "extractClosestEdge", { enumerable: true, get: function () { return closest_edge_1.extractClosestEdge; } });
26
+ Object.defineProperty(exports, "attachClosestEdge", { enumerable: true, get: function () { return closest_edge_1.attachClosestEdge; } });
27
+ var get_reorder_destination_index_1 = require("@atlaskit/pragmatic-drag-and-drop-hitbox/util/get-reorder-destination-index");
28
+ Object.defineProperty(exports, "getReorderDestinationIndex", { enumerable: true, get: function () { return get_reorder_destination_index_1.getReorderDestinationIndex; } });
29
+ //# sourceMappingURL=pdnd.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdnd.cjs","sourceRoot":"","sources":["../../src/components/pdnd.cts"],"names":[],"mappings":";;;AAAA,iEAAiE;AACjE,mFAAmF;AACnF,+EAA+E;AAC/E,mBAAmB;AACnB,2EAA2E;AAC3E,mHAA+G;AAAtG,qIAAA,uBAAuB,OAAA;AAChC,2HAAsH;AAA7G,4IAAA,0BAA0B,OAAA;AACnC,qEAAoE;AAA3D,kGAAA,OAAO,OAAA;AAChB,qEAAoE;AAA3D,kGAAA,OAAO,OAAA;AAChB,6EAG2D;AAFzD,oGAAA,SAAS,OAAA;AACT,gHAAA,qBAAqB,OAAA;AAEvB,6EAAuF;AAA9E,6GAAA,kBAAkB,OAAA;AAC3B,iFAA8F;AAArF,gHAAA,qBAAqB,OAAA;AAC9B,sFAG+D;AAF7D,kHAAA,kBAAkB,OAAA;AAClB,iHAAA,iBAAiB,OAAA;AAEnB,6HAAyH;AAAhH,2IAAA,0BAA0B,OAAA"}
@@ -0,0 +1,10 @@
1
+ export { pointerOutsideOfPreview } from '@atlaskit/pragmatic-drag-and-drop/element/pointer-outside-of-preview';
2
+ export { setCustomNativeDragPreview } from '@atlaskit/pragmatic-drag-and-drop/element/set-custom-native-drag-preview';
3
+ export { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
4
+ export { reorder } from '@atlaskit/pragmatic-drag-and-drop/reorder';
5
+ export { draggable, dropTargetForElements, } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
6
+ export { monitorForElements } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
7
+ export { autoScrollForElements } from '@atlaskit/pragmatic-drag-and-drop-auto-scroll/element';
8
+ export { extractClosestEdge, attachClosestEdge, } from '@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge';
9
+ export { getReorderDestinationIndex } from '@atlaskit/pragmatic-drag-and-drop-hitbox/util/get-reorder-destination-index';
10
+ //# sourceMappingURL=pdnd.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdnd.d.cts","sourceRoot":"","sources":["../../src/components/pdnd.cts"],"names":[],"mappings":"AAKA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sEAAsE,CAAC;AAC/G,OAAO,EAAE,0BAA0B,EAAE,MAAM,0EAA0E,CAAC;AACtH,OAAO,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAC;AACpE,OAAO,EACL,SAAS,EACT,qBAAqB,GACtB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAC9F,OAAO,EACL,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,uDAAuD,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,6EAA6E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"customPreflight.d.ts","sourceRoot":"","sources":["../../../../src/components/root-layout/css-reset/customPreflight.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kBAAkB;;SAsBtB,MAAO,WAEd;yGADD,CAAC"}
1
+ {"version":3,"file":"customPreflight.d.ts","sourceRoot":"","sources":["../../../../src/components/root-layout/css-reset/customPreflight.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kBAAkB;;SAsBtB,MAAO,WAEZ;yGAKH,CAAC"}
@@ -23,5 +23,11 @@ export const CustomDivPreflight = styled.div `
23
23
  width: 100%;
24
24
  height: 100%;
25
25
  position: relative;
26
+
27
+ &:fullscreen::backdrop,
28
+ *:fullscreen::backdrop {
29
+ /* Override user agent default */
30
+ background-color: white;
31
+ }
26
32
  `;
27
33
  //# sourceMappingURL=customPreflight.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"customPreflight.js","sourceRoot":"","sources":["../../../../src/components/root-layout/css-reset/customPreflight.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,qFAAqF;AACrF,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;CAuB3C,CAAC"}
1
+ {"version":3,"file":"customPreflight.js","sourceRoot":"","sources":["../../../../src/components/root-layout/css-reset/customPreflight.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,qFAAqF;AACrF,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B3C,CAAC"}
@@ -1,7 +1,9 @@
1
1
  import type { CSSProperties, ReactNode } from 'react';
2
+ import type { FullscreenProviderProps } from '../fullscreen/index.js';
2
3
  interface RootLayoutProps {
3
- style?: CSSProperties;
4
4
  children: ReactNode;
5
+ style?: CSSProperties;
6
+ onFullscreenToggleError?: FullscreenProviderProps['onToggleError'];
5
7
  }
6
8
  export declare function RootLayout(props: RootLayoutProps): import("react/jsx-runtime").JSX.Element;
7
9
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"root_layout.d.ts","sourceRoot":"","sources":["../../../src/components/root-layout/root_layout.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAUtD,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAUD,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,2CA6BhD"}
1
+ {"version":3,"file":"root_layout.d.ts","sourceRoot":"","sources":["../../../src/components/root-layout/root_layout.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAoB,SAAS,EAAE,MAAM,OAAO,CAAC;AAIxE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAQtE,UAAU,eAAe;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,uBAAuB,CAAC,EAAE,uBAAuB,CAAC,eAAe,CAAC,CAAC;CACpE;AAUD,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,2CAyChD"}
@@ -2,6 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { BlueprintProvider, FocusStyleManager } from '@blueprintjs/core';
3
3
  import { useCallback, useState } from 'react';
4
4
  import { AccordionProvider } from '../accordion/index.js';
5
+ import { FullScreenProvider } from '../fullscreen/index.js';
5
6
  import { CustomDivPreflight } from './css-reset/customPreflight.js';
6
7
  import { RootLayoutProvider } from './root_layout_context.provider.js';
7
8
  FocusStyleManager.onlyShowFocusOnTabs();
@@ -14,14 +15,20 @@ const style = {
14
15
  };
15
16
  export function RootLayout(props) {
16
17
  const [rootRef, setRootRef] = useState(typeof document !== 'undefined' ? document.body : null);
17
- const ref = useCallback((node) => {
18
+ const refCallback = useCallback((node) => {
18
19
  if (node !== null) {
19
20
  setRootRef(node);
20
21
  }
21
22
  }, []);
22
- return (_jsx(CustomDivPreflight, { ref: ref, style: {
23
- ...style,
24
- ...props.style,
25
- }, translate: "no", children: _jsx(BlueprintProvider, { ...(rootRef ? { portalContainer: rootRef } : undefined), children: _jsx(RootLayoutProvider, { innerRef: rootRef, children: _jsx(AccordionProvider, { children: props.children }) }) }) }));
23
+ return (_jsx(FullScreenProvider, { onToggleError: props.onFullscreenToggleError, children: (fullscreenRef) => (_jsx(CustomDivPreflight, { id: "root-layout", ref: (node) => {
24
+ if (node) {
25
+ const mutableRef = fullscreenRef;
26
+ mutableRef.current = node;
27
+ refCallback(node);
28
+ }
29
+ }, style: {
30
+ ...style,
31
+ ...props.style,
32
+ }, translate: "no", children: _jsx(BlueprintProvider, { ...(rootRef ? { portalContainer: rootRef } : undefined), children: _jsx(RootLayoutProvider, { innerRef: rootRef, children: _jsx(AccordionProvider, { children: props.children }) }) }) })) }));
26
33
  }
27
34
  //# sourceMappingURL=root_layout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"root_layout.js","sourceRoot":"","sources":["../../../src/components/root-layout/root_layout.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE,iBAAiB,CAAC,mBAAmB,EAAE,CAAC;AAOxC,MAAM,KAAK,GAAkB;IAC3B,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,QAAQ,EAAE,MAAM;IAChB,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;CACxB,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,KAAsB;IAC/C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CACpC,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CACvD,CAAC;IAEF,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,IAAoB,EAAE,EAAE;QAC/C,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,UAAU,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,KAAC,kBAAkB,IACjB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE;YACL,GAAG,KAAK;YACR,GAAG,KAAK,CAAC,KAAK;SACf,EACD,SAAS,EAAC,IAAI,YAEd,KAAC,iBAAiB,OACZ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,YAExD,KAAC,kBAAkB,IAAC,QAAQ,EAAE,OAAO,YACnC,KAAC,iBAAiB,cAAE,KAAK,CAAC,QAAQ,GAAqB,GACpC,GACH,GACD,CACtB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"root_layout.js","sourceRoot":"","sources":["../../../src/components/root-layout/root_layout.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE,iBAAiB,CAAC,mBAAmB,EAAE,CAAC;AAQxC,MAAM,KAAK,GAAkB;IAC3B,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,QAAQ,EAAE,MAAM;IAChB,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;CACxB,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,KAAsB;IAC/C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CACpC,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CACvD,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,IAAoB,EAAE,EAAE;QACvD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,UAAU,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,KAAC,kBAAkB,IAAC,aAAa,EAAE,KAAK,CAAC,uBAAuB,YAC7D,CAAC,aAAa,EAAE,EAAE,CAAC,CAClB,KAAC,kBAAkB,IACjB,EAAE,EAAC,aAAa,EAChB,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;gBACZ,IAAI,IAAI,EAAE,CAAC;oBACT,MAAM,UAAU,GACd,aAAiD,CAAC;oBACpD,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;oBAC1B,WAAW,CAAC,IAAI,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC,EACD,KAAK,EAAE;gBACL,GAAG,KAAK;gBACR,GAAG,KAAK,CAAC,KAAK;aACf,EACD,SAAS,EAAC,IAAI,YAEd,KAAC,iBAAiB,OACZ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,YAExD,KAAC,kBAAkB,IAAC,QAAQ,EAAE,OAAO,YACnC,KAAC,iBAAiB,cAAE,KAAK,CAAC,QAAQ,GAAqB,GACpC,GACH,GACD,CACtB,GACkB,CACtB,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"draggable_row_tr.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/draggable_row_tr.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAQ1D,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAQ3B,MAAM,WAAW,wBAAwB,CAAC,KAAK,SAAS,OAAO;IAC7D;;OAEG;IACH,OAAO,EAAE,qBAAqB,CAAC;IAC/B;;OAEG;IACH,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAChB;;OAEG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;CACnD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,SAAS,OAAO,EACvD,KAAK,EAAE,wBAAwB,CAAC,KAAK,CAAC,2CA6GvC"}
1
+ {"version":3,"file":"draggable_row_tr.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/draggable_row_tr.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAiB1D,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAQ3B,MAAM,WAAW,wBAAwB,CAAC,KAAK,SAAS,OAAO;IAC7D;;OAEG;IACH,OAAO,EAAE,qBAAqB,CAAC;IAC/B;;OAEG;IACH,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAChB;;OAEG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;CACnD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,SAAS,OAAO,EACvD,KAAK,EAAE,wBAAwB,CAAC,KAAK,CAAC,2CA6GvC"}
@@ -1,11 +1,7 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
3
- import { draggable, dropTargetForElements, } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
4
- import { pointerOutsideOfPreview } from '@atlaskit/pragmatic-drag-and-drop/element/pointer-outside-of-preview';
5
- import { setCustomNativeDragPreview } from '@atlaskit/pragmatic-drag-and-drop/element/set-custom-native-drag-preview';
6
- import { attachClosestEdge, extractClosestEdge, } from '@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge';
7
2
  import { useEffect, useMemo, useRef, useState } from 'react';
8
3
  import { createPortal } from 'react-dom';
4
+ import { attachClosestEdge, combine, draggable, dropTargetForElements, extractClosestEdge, pointerOutsideOfPreview, setCustomNativeDragPreview, } from '../../pdnd.cjs';
9
5
  import { assert } from '../../utils/index.js';
10
6
  import { useFlashRowEffect } from '../flash_row/use_flash_row_effect.js';
11
7
  import { PreviewTable } from '../preview_table.js';
@@ -1 +1 @@
1
- {"version":3,"file":"draggable_row_tr.js","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/draggable_row_tr.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"draggable_row_tr.js","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/draggable_row_tr.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"item_order_provider.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/item_order_provider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMvC,UAAU,sBAAsB,CAAC,CAAC;IAChC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrB,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC/C,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAC3C,KAAK,EAAE,sBAAsB,CAAC,CAAC,CAAC,2CA4CjC"}
1
+ {"version":3,"file":"item_order_provider.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/item_order_provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQvC,UAAU,sBAAsB,CAAC,CAAC;IAChC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrB,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC/C,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAC3C,KAAK,EAAE,sBAAsB,CAAC,CAAC,CAAC,2CA4CjC"}
@@ -1,7 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { reorder } from '@atlaskit/pragmatic-drag-and-drop/reorder';
3
- import { getReorderDestinationIndex } from '@atlaskit/pragmatic-drag-and-drop-hitbox/util/get-reorder-destination-index';
4
2
  import { useCallback, useMemo, useState } from 'react';
3
+ import { getReorderDestinationIndex, reorder } from '../../pdnd.cjs';
5
4
  import { itemOrderContext } from './item_order_context.js';
6
5
  export function ItemOrderProvider(props) {
7
6
  // Isolated instances of this component from one another
@@ -1 +1 @@
1
- {"version":3,"file":"item_order_provider.js","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/item_order_provider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6EAA6E,CAAC;AAGzH,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAQ3D,MAAM,UAAU,iBAAiB,CAC/B,KAAgC;IAEhC,wDAAwD;IACxD,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACjE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAClD,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,mBAAmB,EAAE,EAAE,EAAE;QACrD,MAAM,WAAW,GAAG,0BAA0B,CAAC;YAC7C,UAAU;YACV,mBAAmB;YACnB,aAAa;YACb,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;QAEH,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;YAC/B,4CAA4C;YAC5C,OAAO;QACT,CAAC;QAED,cAAc,CACZ,OAAO,CAAC;YACN,IAAI,EAAE,KAAK;YACX,UAAU;YACV,WAAW;SACZ,CAAC,CACH,CAAC;IACJ,CAAC,EACD,CAAC,KAAK,EAAE,cAAc,CAAC,CACxB,CAAC;IAEF,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CAAC,CAAC;QACL,WAAW;QACX,KAAK,EAAE,KAA4B;QACnC,UAAU;KACX,CAAC,EACF,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,CACjC,CAAC;IAEF,OAAO,CACL,KAAC,gBAAgB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YACpC,QAAQ,GACiB,CAC7B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"item_order_provider.js","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/item_order_provider.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAQ3D,MAAM,UAAU,iBAAiB,CAC/B,KAAgC;IAEhC,wDAAwD;IACxD,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACjE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAClD,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,mBAAmB,EAAE,EAAE,EAAE;QACrD,MAAM,WAAW,GAAG,0BAA0B,CAAC;YAC7C,UAAU;YACV,mBAAmB;YACnB,aAAa;YACb,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;QAEH,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;YAC/B,4CAA4C;YAC5C,OAAO;QACT,CAAC;QAED,cAAc,CACZ,OAAO,CAAC;YACN,IAAI,EAAE,KAAK;YACX,UAAU;YACV,WAAW;SACZ,CAAC,CACH,CAAC;IACJ,CAAC,EACD,CAAC,KAAK,EAAE,cAAc,CAAC,CACxB,CAAC;IAEF,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CAAC,CAAC;QACL,WAAW;QACX,KAAK,EAAE,KAA4B;QACnC,UAAU;KACX,CAAC,EACF,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,CACjC,CAAC;IAEF,OAAO,CACL,KAAC,gBAAgB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YACpC,QAAQ,GACiB,CAC7B,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use_drop_monitor.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/use_drop_monitor.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AASvC;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,gBAAgB,EAAE,SAAS,CAAC,OAAO,CAAC,EACpC,OAAO,EAAE,OAAO,QAmDjB"}
1
+ {"version":3,"file":"use_drop_monitor.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/use_drop_monitor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAevC;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,gBAAgB,EAAE,SAAS,CAAC,OAAO,CAAC,EACpC,OAAO,EAAE,OAAO,QAmDjB"}
@@ -1,8 +1,5 @@
1
- import { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
2
- import { monitorForElements } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
3
- import { autoScrollForElements } from '@atlaskit/pragmatic-drag-and-drop-auto-scroll/element';
4
- import { extractClosestEdge } from '@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge';
5
1
  import { useEffect } from 'react';
2
+ import { autoScrollForElements, combine, extractClosestEdge, monitorForElements, } from '../../pdnd.cjs';
6
3
  import { assert } from '../../utils/index.js';
7
4
  import { useFlashedRowContext } from '../flash_row/flashed_row_context.js';
8
5
  import { isItemData } from './item_data.js';
@@ -1 +1 @@
1
- {"version":3,"file":"use_drop_monitor.js","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/use_drop_monitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAC;AAEpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,uDAAuD,CAAC;AAE3F,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,gBAAoC,EACpC,OAAgB;IAEhB,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAC;IAC9C,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,oBAAoB,EAAE,CAAC;IACjD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC;QACjD,MAAM,CAAC,eAAe,EAAE,8BAA8B,CAAC,CAAC;QAExD,IAAI,OAAO,EAAE,CAAC;YACZ,SAAS,UAAU,CAAC,EAAE,MAAM,EAAkC;gBAC5D,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC;YACD,OAAO,OAAO,CACZ,kBAAkB,CAAC;gBACjB,UAAU,EAAE,UAAU;gBACtB,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE;oBACzB,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,OAAO;oBACT,CAAC;oBAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;wBACvD,OAAO;oBACT,CAAC;oBAED,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CACnC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CACpC,CAAC;oBACF,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;wBACzB,OAAO;oBACT,CAAC;oBAED,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;oBAE3D,WAAW,CAAC;wBACV,UAAU,EAAE,UAAU,CAAC,KAAK;wBAC5B,aAAa;wBACb,mBAAmB;qBACpB,CAAC,CAAC;oBACH,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBAC/B,CAAC;aACF,CAAC,EACF,qBAAqB,CAAC;gBACpB,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,eAAe;aACzB,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"use_drop_monitor.js","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/use_drop_monitor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EACL,qBAAqB,EACrB,OAAO,EACP,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,gBAAoC,EACpC,OAAgB;IAEhB,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAC;IAC9C,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,oBAAoB,EAAE,CAAC;IACjD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC;QACjD,MAAM,CAAC,eAAe,EAAE,8BAA8B,CAAC,CAAC;QAExD,IAAI,OAAO,EAAE,CAAC;YACZ,SAAS,UAAU,CAAC,EAAE,MAAM,EAAkC;gBAC5D,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC;YACD,OAAO,OAAO,CACZ,kBAAkB,CAAC;gBACjB,UAAU,EAAE,UAAU;gBACtB,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE;oBACzB,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,OAAO;oBACT,CAAC;oBAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;wBACvD,OAAO;oBACT,CAAC;oBAED,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CACnC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CACpC,CAAC;oBACF,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;wBACzB,OAAO;oBACT,CAAC;oBAED,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;oBAE3D,WAAW,CAAC;wBACV,UAAU,EAAE,UAAU,CAAC,KAAK;wBAC5B,aAAa;wBACb,mBAAmB;qBACpB,CAAC,CAAC;oBACH,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBAC/B,CAAC;aACF,CAAC,EACF,qBAAqB,CAAC;gBACpB,SAAS,EAAE,UAAU;gBACrB,OAAO,EAAE,eAAe;aACzB,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;AACrE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-science",
3
- "version": "16.1.0",
3
+ "version": "18.0.0",
4
4
  "description": "React components to build scientific applications UI",
5
5
  "type": "module",
6
6
  "exports": {
@@ -65,6 +65,7 @@
65
65
  "@tanstack/react-virtual": "^3.13.2",
66
66
  "d3-scale-chromatic": "^3.1.0",
67
67
  "react-dropzone": "^14.3.8",
68
+ "react-full-screen": "^1.1.1",
68
69
  "react-icons": "^5.5.0",
69
70
  "react-inspector": "^6.0.2",
70
71
  "tinycolor2": "^1.6.0",
@@ -6,9 +6,10 @@ import type {
6
6
  ReactElement,
7
7
  ReactNode,
8
8
  } from 'react';
9
- import { useCallback } from 'react';
9
+ import { useCallback, useRef } from 'react';
10
10
 
11
- import { useAccordionContext } from './accordion_context.js';
11
+ import { useAccordionItemContext } from './accordion_context.js';
12
+ import type { AccordionItemControls } from './accordion_context_utils.js';
12
13
 
13
14
  export interface AccordionProps<T extends string = string> {
14
15
  children?:
@@ -18,6 +19,12 @@ export interface AccordionProps<T extends string = string> {
18
19
  | null;
19
20
  }
20
21
 
22
+ export interface AccordionRenderToolbarProps<T extends string = string> {
23
+ id: T;
24
+ isOpen: boolean;
25
+ controls: AccordionItemControls;
26
+ }
27
+
21
28
  export interface AccordionItemProps<T extends string = string> {
22
29
  /**
23
30
  * A value uniquely identifying the accordion item.
@@ -49,7 +56,12 @@ export interface AccordionItemProps<T extends string = string> {
49
56
  * When not set or set to false, the item's children will be rendered but hidden when the item is closed.
50
57
  */
51
58
  unmountChildren?: boolean;
52
- renderToolbar?: (isOpen: boolean) => ReactNode;
59
+ /**
60
+ * A custom render function to display in the toolbar on the right of the accordion item.
61
+ * Click events will not be propagated down to the accordion item to prevent it from opening/closing.
62
+ * @param data
63
+ */
64
+ renderToolbar?: (renderProps: AccordionRenderToolbarProps<T>) => ReactNode;
53
65
  }
54
66
 
55
67
  const AccordionItemHeader = styled.div`
@@ -106,7 +118,9 @@ Accordion.Item = function AccordionItem<T extends string = string>(
106
118
  defaultProp: defaultOpen,
107
119
  onChange: onOpenChange,
108
120
  });
109
- const { utils, unmountChildren } = useAccordionContext(id, setIsOpen);
121
+ const { controls, unmountChildren } = useAccordionItemContext(id, setIsOpen);
122
+
123
+ const headerRef = useRef<HTMLDivElement>(null);
110
124
 
111
125
  const shouldUnmountChildren =
112
126
  props.unmountChildren === undefined
@@ -116,12 +130,12 @@ Accordion.Item = function AccordionItem<T extends string = string>(
116
130
  const onClickHandle = useCallback(
117
131
  (event: ReactMouseEvent<HTMLDivElement>) => {
118
132
  if (event.shiftKey) {
119
- utils.closeOthers();
133
+ controls.closeOthers();
120
134
  } else {
121
- utils.toggle();
135
+ controls.toggle();
122
136
  }
123
137
  },
124
- [utils],
138
+ [controls],
125
139
  );
126
140
 
127
141
  return (
@@ -133,7 +147,11 @@ Accordion.Item = function AccordionItem<T extends string = string>(
133
147
  isolation: 'isolate',
134
148
  }}
135
149
  >
136
- <AccordionItemHeader onClick={onClickHandle} role="button">
150
+ <AccordionItemHeader
151
+ onClick={onClickHandle}
152
+ role="button"
153
+ ref={headerRef}
154
+ >
137
155
  <div
138
156
  style={{
139
157
  padding: '5px 0px',
@@ -141,7 +159,9 @@ Accordion.Item = function AccordionItem<T extends string = string>(
141
159
  >
142
160
  {title}
143
161
  </div>
144
- {renderToolbar?.(isOpen ?? false)}
162
+ <ToolbarContainer onClick={(event) => event.stopPropagation()}>
163
+ {renderToolbar?.({ id, isOpen: isOpen ?? false, controls })}
164
+ </ToolbarContainer>
145
165
  </AccordionItemHeader>
146
166
  {!isOpen && shouldUnmountChildren ? null : (
147
167
  <div
@@ -169,3 +189,7 @@ Accordion.Item = function AccordionItem<T extends string = string>(
169
189
  </div>
170
190
  );
171
191
  };
192
+
193
+ const ToolbarContainer = styled.div`
194
+ display: flex;
195
+ `;
@@ -1,12 +1,14 @@
1
1
  import { createContext, useContext, useEffect, useMemo } from 'react';
2
2
 
3
3
  import type {
4
+ AccordionItemContextValue,
4
5
  AccordionItemSetIsOpen,
5
- AccordionState,
6
6
  } from './accordion_context_utils.js';
7
7
 
8
- export type ContextType = [
9
- AccordionContext,
8
+ export type AccordionContextValue = [
9
+ {
10
+ unmountChildren: boolean;
11
+ },
10
12
  {
11
13
  closeAllExcept: (except: string) => void;
12
14
  toggle: (id: string) => void;
@@ -15,15 +17,14 @@ export type ContextType = [
15
17
  change: (id: string, isOpen: boolean) => void;
16
18
  },
17
19
  ];
20
+ export const accordionContext = createContext<AccordionContextValue | null>(
21
+ null,
22
+ );
18
23
 
19
- type AccordionContext = AccordionState;
20
-
21
- export const accordionContext = createContext<ContextType | null>(null);
22
-
23
- export function useAccordionContext(
24
+ export function useAccordionItemContext(
24
25
  id: string,
25
26
  setIsOpen: AccordionItemSetIsOpen,
26
- ) {
27
+ ): AccordionItemContextValue {
27
28
  const context = useContext(accordionContext);
28
29
 
29
30
  if (!context) {
@@ -40,9 +41,11 @@ export function useAccordionContext(
40
41
  return useMemo(
41
42
  () => ({
42
43
  unmountChildren: state.unmountChildren,
43
- utils: {
44
+ controls: {
44
45
  closeOthers: () => utils.closeAllExcept(id),
45
46
  toggle: () => utils.toggle(id),
47
+ open: () => utils.change(id, true),
48
+ close: () => utils.change(id, false),
46
49
  },
47
50
  }),
48
51
  [id, utils, state.unmountChildren],
@@ -3,7 +3,7 @@ import { useMemo, useRef } from 'react';
3
3
 
4
4
  import { assert } from '../utils/index.js';
5
5
 
6
- import type { ContextType } from './accordion_context.js';
6
+ import type { AccordionContextValue } from './accordion_context.js';
7
7
  import { accordionContext } from './accordion_context.js';
8
8
  import type { AccordionItemSetIsOpen } from './accordion_context_utils.js';
9
9
  import { getAccordionRegister } from './accordion_context_utils.js';
@@ -17,7 +17,7 @@ export function AccordionProvider(props: AccordionProviderProps) {
17
17
  const { unmountChildren = false, children } = props;
18
18
  const registerRef = useRef(getAccordionRegister());
19
19
 
20
- const utils = useMemo<ContextType[1]>(() => {
20
+ const utils = useMemo<AccordionContextValue[1]>(() => {
21
21
  return {
22
22
  change: (id: string, isOpen: boolean) => {
23
23
  assert(registerRef.current);
@@ -62,7 +62,7 @@ export function AccordionProvider(props: AccordionProviderProps) {
62
62
  };
63
63
  }, [registerRef]);
64
64
 
65
- const contextValue = useMemo<ContextType>(() => {
65
+ const contextValue = useMemo<AccordionContextValue>(() => {
66
66
  return [
67
67
  {
68
68
  unmountChildren,
@@ -1,12 +1,15 @@
1
1
  import type { Dispatch, SetStateAction } from 'react';
2
2
 
3
- export interface AccordionItemState {
4
- title: string;
5
- onChange: AccordionItemSetIsOpen;
3
+ export interface AccordionItemControls {
4
+ closeOthers: () => void;
5
+ toggle: () => void;
6
+ open: () => void;
7
+ close: () => void;
6
8
  }
7
9
 
8
- export interface AccordionState {
10
+ export interface AccordionItemContextValue {
9
11
  unmountChildren: boolean;
12
+ controls: AccordionItemControls;
10
13
  }
11
14
 
12
15
  export type AccordionItemSetIsOpen = Dispatch<
@@ -1,3 +1,6 @@
1
1
  export * from './accordion.js';
2
2
  export * from './accordion_context_provider.js';
3
3
  export * from './accordion_hooks.js';
4
+
5
+ // Exported because part of AccordionRenderToolbarProps, which is also exported.
6
+ export type { AccordionItemControls } from './accordion_context_utils.js';
@@ -1,93 +1,49 @@
1
- /* eslint-disable no-alert */
2
- import type { ReactNode } from 'react';
3
- import { useEffect, useMemo, useReducer, useRef } from 'react';
1
+ import type { MutableRefObject, ReactNode } from 'react';
2
+ import { useMemo } from 'react';
3
+ import { useFullScreenHandle } from 'react-full-screen';
4
4
 
5
- import { fullscreenContext, useFullscreen } from './fullscreen_context.js';
5
+ import { fullscreenContext } from './fullscreen_context.js';
6
6
 
7
- type ElementType = HTMLDivElement & {
8
- webkitRequestFullscreen(): Promise<void>;
9
- };
10
-
11
- type DocumentType = Document & {
12
- webkitExitFullscreen(): Promise<void>;
13
- webkitFullscreenElement: Element | null;
14
- };
15
- interface FullscreenProps {
16
- children: ReactNode;
7
+ export interface FullscreenProviderProps {
8
+ /**
9
+ * Callback providing the ref which should be passed to the element that can be displayed fullscreen.
10
+ * @param ref
11
+ */
12
+ children: (ref: MutableRefObject<HTMLDivElement | null>) => ReactNode;
13
+ /**
14
+ * Callback which will be called in case toggling results in an error.
15
+ * @param error - The error that happened. Value is not necessarily an instance of `Error` and may even be `undefined`.
16
+ * @param step - Indicates if the error happened when entering or exiting the full screen.
17
+ */
18
+ onToggleError?: (error: unknown, step: 'enter' | 'exit') => void;
17
19
  }
18
20
 
19
- export function FullScreenProvider(props: FullscreenProps) {
20
- const [isFullScreen, toggle] = useReducer((value: boolean) => !value, false);
21
+ export function FullScreenProvider(props: FullscreenProviderProps) {
22
+ const { children, onToggleError } = props;
21
23
 
22
- const value = useMemo(
23
- () => ({ isFullScreen, toggle }),
24
- [isFullScreen, toggle],
25
- );
26
- return (
27
- <fullscreenContext.Provider value={value}>
28
- <FullscreenInner {...props} />
29
- </fullscreenContext.Provider>
30
- );
31
- }
32
- function FullscreenInner(props: FullscreenProps) {
33
- const { children } = props;
34
- const { isFullScreen, toggle } = useFullscreen();
35
- const ref = useRef<ElementType>(null);
36
- useEffect(() => {
37
- function onFullscreenChange() {
38
- const document = window.document as DocumentType;
39
- const value = Boolean(
40
- document.fullscreenElement || document.webkitFullscreenElement,
41
- );
42
- if (!value && isFullScreen) toggle();
43
- }
44
- const div = ref.current;
45
- if (!div) {
46
- return;
47
- }
48
- div.addEventListener('fullscreenchange', onFullscreenChange);
49
- div.addEventListener('webkitfullscreenchange', onFullscreenChange);
24
+ const handle = useFullScreenHandle();
50
25
 
51
- return () => {
52
- div.removeEventListener('fullscreenchange', onFullscreenChange);
53
- div.removeEventListener('webkitfullscreenchange', onFullscreenChange);
54
- };
55
- }, [isFullScreen, toggle]);
56
- useEffect(() => {
57
- if (isFullScreen && ref.current) {
58
- if (ref.current.requestFullscreen) {
59
- ref.current.requestFullscreen().catch(() => {
60
- window.alert('Fullscreen is not supported');
61
- });
62
- } else if (ref.current.webkitRequestFullscreen) {
63
- ref.current.webkitRequestFullscreen()?.catch(() => {
64
- window.alert('Fullscreen is not supported');
65
- });
26
+ const value = useMemo(() => {
27
+ function toggle() {
28
+ const handleToggle = handle.active ? handle.exit : handle.enter;
29
+ function handleError(error: unknown) {
30
+ onToggleError?.(error, handle.active ? 'exit' : 'enter');
66
31
  }
67
- }
68
- const document = window.document as DocumentType;
69
- if (!isFullScreen && document.fullscreenElement) {
70
- if (document.exitFullscreen) {
71
- document.exitFullscreen().catch(() => {
72
- window.alert("Can't exit fullscreen");
73
- });
74
- } else if (document.webkitExitFullscreen) {
75
- document.webkitExitFullscreen().catch(() => {
76
- window.alert("Can't exit fullscreen");
77
- });
32
+ try {
33
+ handleToggle().catch(handleError);
34
+ } catch (error) {
35
+ handleError(error);
78
36
  }
79
37
  }
80
- }, [isFullScreen]);
38
+ return {
39
+ isFullScreen: handle.active,
40
+ toggle,
41
+ };
42
+ }, [handle, onToggleError]);
43
+
81
44
  return (
82
- <div
83
- ref={ref}
84
- style={{
85
- width: '100%',
86
- height: '100%',
87
- backgroundColor: 'white',
88
- }}
89
- >
90
- {children}
91
- </div>
45
+ <fullscreenContext.Provider value={value}>
46
+ {children(handle.node)}
47
+ </fullscreenContext.Provider>
92
48
  );
93
49
  }
@@ -0,0 +1,20 @@
1
+ // https://github.com/atlassian/pragmatic-drag-and-drop/issues/27
2
+ // Given how `@atlaskit/pragmatic-drag-and-drop` publishes ESM in a non-native way,
3
+ // we have to trick TS into using the CJS build so that our build is compatible
4
+ // with native ESM.
5
+ // We cannot use `verbatimModuleSyntax` ts config option with this pattern.
6
+ export { pointerOutsideOfPreview } from '@atlaskit/pragmatic-drag-and-drop/element/pointer-outside-of-preview';
7
+ export { setCustomNativeDragPreview } from '@atlaskit/pragmatic-drag-and-drop/element/set-custom-native-drag-preview';
8
+ export { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
9
+ export { reorder } from '@atlaskit/pragmatic-drag-and-drop/reorder';
10
+ export {
11
+ draggable,
12
+ dropTargetForElements,
13
+ } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
14
+ export { monitorForElements } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
15
+ export { autoScrollForElements } from '@atlaskit/pragmatic-drag-and-drop-auto-scroll/element';
16
+ export {
17
+ extractClosestEdge,
18
+ attachClosestEdge,
19
+ } from '@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge';
20
+ export { getReorderDestinationIndex } from '@atlaskit/pragmatic-drag-and-drop-hitbox/util/get-reorder-destination-index';
@@ -24,4 +24,10 @@ export const CustomDivPreflight = styled.div`
24
24
  width: 100%;
25
25
  height: 100%;
26
26
  position: relative;
27
+
28
+ &:fullscreen::backdrop,
29
+ *:fullscreen::backdrop {
30
+ /* Override user agent default */
31
+ background-color: white;
32
+ }
27
33
  `;
@@ -1,8 +1,10 @@
1
1
  import { BlueprintProvider, FocusStyleManager } from '@blueprintjs/core';
2
- import type { CSSProperties, ReactNode } from 'react';
2
+ import type { CSSProperties, MutableRefObject, ReactNode } from 'react';
3
3
  import { useCallback, useState } from 'react';
4
4
 
5
5
  import { AccordionProvider } from '../accordion/index.js';
6
+ import type { FullscreenProviderProps } from '../fullscreen/index.js';
7
+ import { FullScreenProvider } from '../fullscreen/index.js';
6
8
 
7
9
  import { CustomDivPreflight } from './css-reset/customPreflight.js';
8
10
  import { RootLayoutProvider } from './root_layout_context.provider.js';
@@ -10,8 +12,9 @@ import { RootLayoutProvider } from './root_layout_context.provider.js';
10
12
  FocusStyleManager.onlyShowFocusOnTabs();
11
13
 
12
14
  interface RootLayoutProps {
13
- style?: CSSProperties;
14
15
  children: ReactNode;
16
+ style?: CSSProperties;
17
+ onFullscreenToggleError?: FullscreenProviderProps['onToggleError'];
15
18
  }
16
19
 
17
20
  const style: CSSProperties = {
@@ -27,28 +30,40 @@ export function RootLayout(props: RootLayoutProps) {
27
30
  typeof document !== 'undefined' ? document.body : null,
28
31
  );
29
32
 
30
- const ref = useCallback((node: HTMLDivElement) => {
33
+ const refCallback = useCallback((node: HTMLDivElement) => {
31
34
  if (node !== null) {
32
35
  setRootRef(node);
33
36
  }
34
37
  }, []);
35
38
 
36
39
  return (
37
- <CustomDivPreflight
38
- ref={ref}
39
- style={{
40
- ...style,
41
- ...props.style,
42
- }}
43
- translate="no"
44
- >
45
- <BlueprintProvider
46
- {...(rootRef ? { portalContainer: rootRef } : undefined)}
47
- >
48
- <RootLayoutProvider innerRef={rootRef}>
49
- <AccordionProvider>{props.children}</AccordionProvider>
50
- </RootLayoutProvider>
51
- </BlueprintProvider>
52
- </CustomDivPreflight>
40
+ <FullScreenProvider onToggleError={props.onFullscreenToggleError}>
41
+ {(fullscreenRef) => (
42
+ <CustomDivPreflight
43
+ id="root-layout"
44
+ ref={(node) => {
45
+ if (node) {
46
+ const mutableRef =
47
+ fullscreenRef as MutableRefObject<HTMLDivElement>;
48
+ mutableRef.current = node;
49
+ refCallback(node);
50
+ }
51
+ }}
52
+ style={{
53
+ ...style,
54
+ ...props.style,
55
+ }}
56
+ translate="no"
57
+ >
58
+ <BlueprintProvider
59
+ {...(rootRef ? { portalContainer: rootRef } : undefined)}
60
+ >
61
+ <RootLayoutProvider innerRef={rootRef}>
62
+ <AccordionProvider>{props.children}</AccordionProvider>
63
+ </RootLayoutProvider>
64
+ </BlueprintProvider>
65
+ </CustomDivPreflight>
66
+ )}
67
+ </FullScreenProvider>
53
68
  );
54
69
  }
@@ -1,19 +1,17 @@
1
- import { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
2
1
  import type { ElementDragPayload } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
3
- import {
4
- draggable,
5
- dropTargetForElements,
6
- } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
7
- import { pointerOutsideOfPreview } from '@atlaskit/pragmatic-drag-and-drop/element/pointer-outside-of-preview';
8
- import { setCustomNativeDragPreview } from '@atlaskit/pragmatic-drag-and-drop/element/set-custom-native-drag-preview';
9
- import {
10
- attachClosestEdge,
11
- extractClosestEdge,
12
- } from '@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge';
13
2
  import type { Row, RowData } from '@tanstack/react-table';
14
3
  import { useEffect, useMemo, useRef, useState } from 'react';
15
4
  import { createPortal } from 'react-dom';
16
5
 
6
+ import {
7
+ attachClosestEdge,
8
+ combine,
9
+ draggable,
10
+ dropTargetForElements,
11
+ extractClosestEdge,
12
+ pointerOutsideOfPreview,
13
+ setCustomNativeDragPreview,
14
+ } from '../../pdnd.cjs';
17
15
  import { assert } from '../../utils/index.js';
18
16
  import { useFlashRowEffect } from '../flash_row/use_flash_row_effect.js';
19
17
  import { PreviewTable } from '../preview_table.js';
@@ -1,9 +1,9 @@
1
- import { reorder } from '@atlaskit/pragmatic-drag-and-drop/reorder';
2
- import { getReorderDestinationIndex } from '@atlaskit/pragmatic-drag-and-drop-hitbox/util/get-reorder-destination-index';
3
1
  import type { Row } from '@tanstack/react-table';
4
2
  import type { ReactNode } from 'react';
5
3
  import { useCallback, useMemo, useState } from 'react';
6
4
 
5
+ import { getReorderDestinationIndex, reorder } from '../../pdnd.cjs';
6
+
7
7
  import type { ReorderItemCallback } from './item_order_context.js';
8
8
  import { itemOrderContext } from './item_order_context.js';
9
9
 
@@ -1,11 +1,13 @@
1
- import { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
2
1
  import type { ElementDragPayload } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
3
- import { monitorForElements } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
4
- import { autoScrollForElements } from '@atlaskit/pragmatic-drag-and-drop-auto-scroll/element';
5
- import { extractClosestEdge } from '@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge';
6
2
  import type { RefObject } from 'react';
7
3
  import { useEffect } from 'react';
8
4
 
5
+ import {
6
+ autoScrollForElements,
7
+ combine,
8
+ extractClosestEdge,
9
+ monitorForElements,
10
+ } from '../../pdnd.cjs';
9
11
  import { assert } from '../../utils/index.js';
10
12
  import { useFlashedRowContext } from '../flash_row/flashed_row_context.js';
11
13