@dgui/react-shared 1.7.6 → 1.8.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 (216) hide show
  1. package/dist/cjs/Contexts/DrawerContext.js +11 -0
  2. package/dist/cjs/Contexts/DrawerContext.js.map +1 -0
  3. package/dist/cjs/Contexts/DrawerIndexContext.js +9 -0
  4. package/dist/cjs/Contexts/DrawerIndexContext.js.map +1 -0
  5. package/dist/cjs/Contexts/DrawerToggleContext.js +9 -0
  6. package/dist/cjs/Contexts/DrawerToggleContext.js.map +1 -0
  7. package/dist/cjs/Contexts/TabContext.js +13 -0
  8. package/dist/cjs/Contexts/TabContext.js.map +1 -0
  9. package/dist/cjs/Contexts/TabIndexContext.js +9 -0
  10. package/dist/cjs/Contexts/TabIndexContext.js.map +1 -0
  11. package/dist/cjs/Contexts/index.js +6 -0
  12. package/dist/cjs/Contexts/index.js.map +1 -0
  13. package/dist/cjs/Hooks/index.js +17 -0
  14. package/dist/cjs/Hooks/index.js.map +1 -0
  15. package/dist/cjs/Hooks/useAddDrawer.js +8 -0
  16. package/dist/cjs/Hooks/useAddDrawer.js.map +1 -0
  17. package/dist/cjs/Hooks/useAddTab.js +8 -0
  18. package/dist/cjs/Hooks/useAddTab.js.map +1 -0
  19. package/dist/cjs/Hooks/useDrawerIndex.js +8 -0
  20. package/dist/cjs/Hooks/useDrawerIndex.js.map +1 -0
  21. package/dist/cjs/Hooks/useDrawerOpen.js +8 -0
  22. package/dist/cjs/Hooks/useDrawerOpen.js.map +1 -0
  23. package/dist/cjs/Hooks/useDrawerOrder.js +8 -0
  24. package/dist/cjs/Hooks/useDrawerOrder.js.map +1 -0
  25. package/dist/cjs/Hooks/useDrawerStatus.js +8 -0
  26. package/dist/cjs/Hooks/useDrawerStatus.js.map +1 -0
  27. package/dist/cjs/Hooks/useDrawers.js +8 -0
  28. package/dist/cjs/Hooks/useDrawers.js.map +1 -0
  29. package/dist/cjs/Hooks/useRemoveDrawer.js +8 -0
  30. package/dist/cjs/Hooks/useRemoveDrawer.js.map +1 -0
  31. package/dist/cjs/Hooks/useRemoveTab.js +8 -0
  32. package/dist/cjs/Hooks/useRemoveTab.js.map +1 -0
  33. package/dist/cjs/Hooks/useSelectDrawer.js +8 -0
  34. package/dist/cjs/Hooks/useSelectDrawer.js.map +1 -0
  35. package/dist/cjs/Hooks/useSelectTab.js +8 -0
  36. package/dist/cjs/Hooks/useSelectTab.js.map +1 -0
  37. package/dist/cjs/Hooks/useSelectedTabID.js +10 -0
  38. package/dist/cjs/Hooks/useSelectedTabID.js.map +1 -0
  39. package/dist/cjs/Hooks/useTabIndex.js +8 -0
  40. package/dist/cjs/Hooks/useTabIndex.js.map +1 -0
  41. package/dist/cjs/Hooks/useTabOrder.js +8 -0
  42. package/dist/cjs/Hooks/useTabOrder.js.map +1 -0
  43. package/dist/cjs/Hooks/useTabs.js +8 -0
  44. package/dist/cjs/Hooks/useTabs.js.map +1 -0
  45. package/dist/cjs/Hooks/useToggleDrawer.js +8 -0
  46. package/dist/cjs/Hooks/useToggleDrawer.js.map +1 -0
  47. package/dist/{Providers → cjs/Providers}/DrawerIndexProvider.js +9 -11
  48. package/dist/cjs/Providers/DrawerIndexProvider.js.map +1 -0
  49. package/dist/cjs/Providers/DrawerProvider.js +110 -0
  50. package/dist/cjs/Providers/DrawerProvider.js.map +1 -0
  51. package/dist/{Providers → cjs/Providers}/DrawerToggleProvider.js +9 -11
  52. package/dist/cjs/Providers/DrawerToggleProvider.js.map +1 -0
  53. package/dist/cjs/Providers/TabIndexProvider.js +36 -0
  54. package/dist/cjs/Providers/TabIndexProvider.js.map +1 -0
  55. package/dist/{Providers → cjs/Providers}/TabProvider.js +26 -32
  56. package/dist/cjs/Providers/TabProvider.js.map +1 -0
  57. package/dist/cjs/Providers/index.js +12 -0
  58. package/dist/cjs/Providers/index.js.map +1 -0
  59. package/dist/cjs/Types.js +2 -0
  60. package/dist/cjs/Types.js.map +1 -0
  61. package/dist/cjs/index.js +3 -0
  62. package/dist/cjs/index.js.map +1 -0
  63. package/dist/esm/Contexts/DrawerContext.js +11 -0
  64. package/dist/esm/Contexts/DrawerContext.js.map +1 -0
  65. package/dist/esm/Contexts/DrawerIndexContext.js +9 -0
  66. package/dist/esm/Contexts/DrawerIndexContext.js.map +1 -0
  67. package/dist/esm/Contexts/DrawerToggleContext.js +9 -0
  68. package/dist/esm/Contexts/DrawerToggleContext.js.map +1 -0
  69. package/dist/esm/Contexts/TabContext.js +13 -0
  70. package/dist/esm/Contexts/TabContext.js.map +1 -0
  71. package/dist/esm/Contexts/TabIndexContext.js +9 -0
  72. package/dist/esm/Contexts/TabIndexContext.js.map +1 -0
  73. package/dist/esm/Contexts/index.js +6 -0
  74. package/dist/esm/Contexts/index.js.map +1 -0
  75. package/dist/esm/Hooks/index.js +17 -0
  76. package/dist/esm/Hooks/index.js.map +1 -0
  77. package/dist/esm/Hooks/useAddDrawer.js +8 -0
  78. package/dist/esm/Hooks/useAddDrawer.js.map +1 -0
  79. package/dist/esm/Hooks/useAddTab.js +8 -0
  80. package/dist/esm/Hooks/useAddTab.js.map +1 -0
  81. package/dist/esm/Hooks/useDrawerIndex.js +8 -0
  82. package/dist/esm/Hooks/useDrawerIndex.js.map +1 -0
  83. package/dist/esm/Hooks/useDrawerOpen.js +8 -0
  84. package/dist/esm/Hooks/useDrawerOpen.js.map +1 -0
  85. package/dist/esm/Hooks/useDrawerOrder.js +8 -0
  86. package/dist/esm/Hooks/useDrawerOrder.js.map +1 -0
  87. package/dist/esm/Hooks/useDrawerStatus.js +8 -0
  88. package/dist/esm/Hooks/useDrawerStatus.js.map +1 -0
  89. package/dist/esm/Hooks/useDrawers.js +8 -0
  90. package/dist/esm/Hooks/useDrawers.js.map +1 -0
  91. package/dist/esm/Hooks/useRemoveDrawer.js +8 -0
  92. package/dist/esm/Hooks/useRemoveDrawer.js.map +1 -0
  93. package/dist/esm/Hooks/useRemoveTab.js +8 -0
  94. package/dist/esm/Hooks/useRemoveTab.js.map +1 -0
  95. package/dist/esm/Hooks/useSelectDrawer.js +8 -0
  96. package/dist/esm/Hooks/useSelectDrawer.js.map +1 -0
  97. package/dist/esm/Hooks/useSelectTab.js +8 -0
  98. package/dist/esm/Hooks/useSelectTab.js.map +1 -0
  99. package/dist/esm/Hooks/useSelectedTabID.d.ts +2 -0
  100. package/dist/esm/Hooks/useSelectedTabID.js +10 -0
  101. package/dist/esm/Hooks/useSelectedTabID.js.map +1 -0
  102. package/dist/esm/Hooks/useTabIndex.js +8 -0
  103. package/dist/esm/Hooks/useTabIndex.js.map +1 -0
  104. package/dist/esm/Hooks/useTabOrder.js +8 -0
  105. package/dist/esm/Hooks/useTabOrder.js.map +1 -0
  106. package/dist/esm/Hooks/useTabs.js +8 -0
  107. package/dist/esm/Hooks/useTabs.js.map +1 -0
  108. package/dist/esm/Hooks/useToggleDrawer.js +8 -0
  109. package/dist/esm/Hooks/useToggleDrawer.js.map +1 -0
  110. package/dist/esm/Providers/DrawerIndexProvider.js +36 -0
  111. package/dist/esm/Providers/DrawerIndexProvider.js.map +1 -0
  112. package/dist/esm/Providers/DrawerProvider.js +110 -0
  113. package/dist/esm/Providers/DrawerProvider.js.map +1 -0
  114. package/dist/esm/Providers/DrawerToggleProvider.js +43 -0
  115. package/dist/esm/Providers/DrawerToggleProvider.js.map +1 -0
  116. package/dist/esm/Providers/TabIndexProvider.js +36 -0
  117. package/dist/esm/Providers/TabIndexProvider.js.map +1 -0
  118. package/dist/esm/Providers/TabProvider.js +123 -0
  119. package/dist/esm/Providers/TabProvider.js.map +1 -0
  120. package/dist/esm/Providers/index.js +12 -0
  121. package/dist/esm/Providers/index.js.map +1 -0
  122. package/dist/{Types.d.ts → esm/Types.d.ts} +1 -1
  123. package/dist/esm/Types.js +2 -0
  124. package/dist/esm/Types.js.map +1 -0
  125. package/dist/esm/index.js +3 -0
  126. package/dist/esm/index.js.map +1 -0
  127. package/package.json +11 -8
  128. package/dist/Contexts/DrawerContext.js +0 -15
  129. package/dist/Contexts/DrawerContext.js.map +0 -1
  130. package/dist/Contexts/DrawerIndexContext.js +0 -13
  131. package/dist/Contexts/DrawerIndexContext.js.map +0 -1
  132. package/dist/Contexts/DrawerToggleContext.js +0 -13
  133. package/dist/Contexts/DrawerToggleContext.js.map +0 -1
  134. package/dist/Contexts/TabContext.js +0 -17
  135. package/dist/Contexts/TabContext.js.map +0 -1
  136. package/dist/Contexts/TabIndexContext.js +0 -13
  137. package/dist/Contexts/TabIndexContext.js.map +0 -1
  138. package/dist/Contexts/index.js +0 -22
  139. package/dist/Contexts/index.js.map +0 -1
  140. package/dist/Hooks/index.js +0 -33
  141. package/dist/Hooks/index.js.map +0 -1
  142. package/dist/Hooks/useAddDrawer.js +0 -11
  143. package/dist/Hooks/useAddDrawer.js.map +0 -1
  144. package/dist/Hooks/useAddTab.js +0 -11
  145. package/dist/Hooks/useAddTab.js.map +0 -1
  146. package/dist/Hooks/useDrawerIndex.js +0 -10
  147. package/dist/Hooks/useDrawerIndex.js.map +0 -1
  148. package/dist/Hooks/useDrawerOpen.js +0 -10
  149. package/dist/Hooks/useDrawerOpen.js.map +0 -1
  150. package/dist/Hooks/useDrawerOrder.js +0 -11
  151. package/dist/Hooks/useDrawerOrder.js.map +0 -1
  152. package/dist/Hooks/useDrawerStatus.js +0 -11
  153. package/dist/Hooks/useDrawerStatus.js.map +0 -1
  154. package/dist/Hooks/useDrawers.js +0 -10
  155. package/dist/Hooks/useDrawers.js.map +0 -1
  156. package/dist/Hooks/useRemoveDrawer.js +0 -11
  157. package/dist/Hooks/useRemoveDrawer.js.map +0 -1
  158. package/dist/Hooks/useRemoveTab.js +0 -11
  159. package/dist/Hooks/useRemoveTab.js.map +0 -1
  160. package/dist/Hooks/useSelectDrawer.js +0 -11
  161. package/dist/Hooks/useSelectDrawer.js.map +0 -1
  162. package/dist/Hooks/useSelectTab.js +0 -11
  163. package/dist/Hooks/useSelectTab.js.map +0 -1
  164. package/dist/Hooks/useSelectedTabID.d.ts +0 -2
  165. package/dist/Hooks/useSelectedTabID.js +0 -13
  166. package/dist/Hooks/useSelectedTabID.js.map +0 -1
  167. package/dist/Hooks/useTabIndex.js +0 -11
  168. package/dist/Hooks/useTabIndex.js.map +0 -1
  169. package/dist/Hooks/useTabOrder.js +0 -11
  170. package/dist/Hooks/useTabOrder.js.map +0 -1
  171. package/dist/Hooks/useTabs.js +0 -11
  172. package/dist/Hooks/useTabs.js.map +0 -1
  173. package/dist/Hooks/useToggleDrawer.js +0 -11
  174. package/dist/Hooks/useToggleDrawer.js.map +0 -1
  175. package/dist/Providers/DrawerIndexProvider.js.map +0 -1
  176. package/dist/Providers/DrawerProvider.js +0 -106
  177. package/dist/Providers/DrawerProvider.js.map +0 -1
  178. package/dist/Providers/DrawerToggleProvider.js.map +0 -1
  179. package/dist/Providers/TabIndexProvider.js +0 -38
  180. package/dist/Providers/TabIndexProvider.js.map +0 -1
  181. package/dist/Providers/TabProvider.js.map +0 -1
  182. package/dist/Providers/index.js +0 -18
  183. package/dist/Providers/index.js.map +0 -1
  184. package/dist/Types.js +0 -3
  185. package/dist/Types.js.map +0 -1
  186. package/dist/index.js +0 -19
  187. package/dist/index.js.map +0 -1
  188. /package/dist/{Contexts → esm/Contexts}/DrawerContext.d.ts +0 -0
  189. /package/dist/{Contexts → esm/Contexts}/DrawerIndexContext.d.ts +0 -0
  190. /package/dist/{Contexts → esm/Contexts}/DrawerToggleContext.d.ts +0 -0
  191. /package/dist/{Contexts → esm/Contexts}/TabContext.d.ts +0 -0
  192. /package/dist/{Contexts → esm/Contexts}/TabIndexContext.d.ts +0 -0
  193. /package/dist/{Contexts → esm/Contexts}/index.d.ts +0 -0
  194. /package/dist/{Hooks → esm/Hooks}/index.d.ts +0 -0
  195. /package/dist/{Hooks → esm/Hooks}/useAddDrawer.d.ts +0 -0
  196. /package/dist/{Hooks → esm/Hooks}/useAddTab.d.ts +0 -0
  197. /package/dist/{Hooks → esm/Hooks}/useDrawerIndex.d.ts +0 -0
  198. /package/dist/{Hooks → esm/Hooks}/useDrawerOpen.d.ts +0 -0
  199. /package/dist/{Hooks → esm/Hooks}/useDrawerOrder.d.ts +0 -0
  200. /package/dist/{Hooks → esm/Hooks}/useDrawerStatus.d.ts +0 -0
  201. /package/dist/{Hooks → esm/Hooks}/useDrawers.d.ts +0 -0
  202. /package/dist/{Hooks → esm/Hooks}/useRemoveDrawer.d.ts +0 -0
  203. /package/dist/{Hooks → esm/Hooks}/useRemoveTab.d.ts +0 -0
  204. /package/dist/{Hooks → esm/Hooks}/useSelectDrawer.d.ts +0 -0
  205. /package/dist/{Hooks → esm/Hooks}/useSelectTab.d.ts +0 -0
  206. /package/dist/{Hooks → esm/Hooks}/useTabIndex.d.ts +0 -0
  207. /package/dist/{Hooks → esm/Hooks}/useTabOrder.d.ts +0 -0
  208. /package/dist/{Hooks → esm/Hooks}/useTabs.d.ts +0 -0
  209. /package/dist/{Hooks → esm/Hooks}/useToggleDrawer.d.ts +0 -0
  210. /package/dist/{Providers → esm/Providers}/DrawerIndexProvider.d.ts +0 -0
  211. /package/dist/{Providers → esm/Providers}/DrawerProvider.d.ts +0 -0
  212. /package/dist/{Providers → esm/Providers}/DrawerToggleProvider.d.ts +0 -0
  213. /package/dist/{Providers → esm/Providers}/TabIndexProvider.d.ts +0 -0
  214. /package/dist/{Providers → esm/Providers}/TabProvider.d.ts +0 -0
  215. /package/dist/{Providers → esm/Providers}/index.d.ts +0 -0
  216. /package/dist/{index.d.ts → esm/index.d.ts} +0 -0
@@ -0,0 +1,110 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { DrawerContext, drawerDefaults } from '../Contexts';
3
+ import { useCallback, useMemo, useState } from 'react';
4
+ const DrawerProvider = ({ children }) => {
5
+ const [drawers, setDrawers] = useState(drawerDefaults.drawers);
6
+ const [drawerOrder, setDrawerOrder] = useState(drawerDefaults.drawerOrder);
7
+ const addDrawer = useCallback((drawer, position) => {
8
+ const { drawerId, tabId, ...restOfDrawer } = drawer;
9
+ setDrawers((previousDrawers) => {
10
+ const existingDrawer = previousDrawers[drawerId];
11
+ if (existingDrawer) {
12
+ if (tabId) {
13
+ const newDrawers = {
14
+ ...previousDrawers,
15
+ [drawerId]: {
16
+ ...existingDrawer,
17
+ tabs: [
18
+ ...existingDrawer.tabs ?? [],
19
+ tabId
20
+ ]
21
+ }
22
+ };
23
+ return newDrawers;
24
+ }
25
+ else {
26
+ return previousDrawers;
27
+ }
28
+ }
29
+ else if (tabId) {
30
+ return {
31
+ ...previousDrawers,
32
+ [drawerId]: {
33
+ drawerId,
34
+ ...restOfDrawer,
35
+ tabs: [
36
+ tabId
37
+ ]
38
+ }
39
+ };
40
+ }
41
+ else {
42
+ return {
43
+ ...previousDrawers,
44
+ [drawerId]: {
45
+ ...drawer
46
+ }
47
+ };
48
+ }
49
+ });
50
+ setDrawerOrder((previousDrawerOrder) => {
51
+ if (previousDrawerOrder.includes(drawerId)) {
52
+ return previousDrawerOrder;
53
+ }
54
+ else if (Number.isSafeInteger(position) &&
55
+ Number(position) > 0) {
56
+ return [
57
+ ...previousDrawerOrder
58
+ ].splice(Number(position), 0, drawerId);
59
+ }
60
+ else {
61
+ return [
62
+ ...previousDrawerOrder,
63
+ drawerId
64
+ ];
65
+ }
66
+ });
67
+ }, []);
68
+ const removeDrawer = useCallback((drawerId) => {
69
+ let emptyDrawer = true;
70
+ setDrawers((previousDrawers) => {
71
+ const tabs = previousDrawers[drawerId]?.tabs;
72
+ if (tabs &&
73
+ tabs.length !== 0) {
74
+ emptyDrawer = false;
75
+ return previousDrawers;
76
+ }
77
+ else {
78
+ const { [drawerId]: omit, ...filteredDrawers } = previousDrawers;
79
+ return filteredDrawers;
80
+ }
81
+ });
82
+ setDrawerOrder((previousDrawerOrder) => {
83
+ if (emptyDrawer) {
84
+ return previousDrawerOrder.filter((id) => {
85
+ return id !== drawerId;
86
+ });
87
+ }
88
+ else {
89
+ return previousDrawerOrder;
90
+ }
91
+ });
92
+ }, []);
93
+ const value = useMemo(() => {
94
+ return {
95
+ addDrawer,
96
+ drawerOrder,
97
+ drawers,
98
+ removeDrawer
99
+ };
100
+ }, [
101
+ addDrawer,
102
+ drawerOrder,
103
+ drawers,
104
+ removeDrawer
105
+ ]);
106
+ return (_jsx(DrawerContext.Provider, { value: value, children: children }));
107
+ };
108
+ DrawerProvider.displayName = 'DrawerProvider';
109
+ export default DrawerProvider;
110
+ //# sourceMappingURL=DrawerProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DrawerProvider.js","sourceRoot":"","sources":["../../../src/Providers/DrawerProvider.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { DrawerToggleContext } from '../Contexts';
3
+ import { useCallback, useEffect, useMemo, useState } from 'react';
4
+ const DrawerToggleProvider = ({ children, drawerOpen: givenDrawerOpen, onDrawerToggle }) => {
5
+ const [drawerOpen, setDrawerOpen] = useState(givenDrawerOpen);
6
+ useEffect(() => {
7
+ setDrawerOpen(givenDrawerOpen);
8
+ }, [
9
+ givenDrawerOpen
10
+ ]);
11
+ const toggleDrawer = useCallback((open) => {
12
+ if (open === undefined) {
13
+ setDrawerOpen((currentDrawerOpen) => {
14
+ const toggleOpen = !currentDrawerOpen;
15
+ if (onDrawerToggle) {
16
+ onDrawerToggle(toggleOpen);
17
+ }
18
+ return toggleOpen;
19
+ });
20
+ }
21
+ else {
22
+ if (onDrawerToggle) {
23
+ onDrawerToggle(open);
24
+ }
25
+ setDrawerOpen(open);
26
+ }
27
+ }, [
28
+ onDrawerToggle
29
+ ]);
30
+ const value = useMemo(() => {
31
+ return {
32
+ drawerOpen: Boolean(drawerOpen),
33
+ toggleDrawer
34
+ };
35
+ }, [
36
+ drawerOpen,
37
+ toggleDrawer
38
+ ]);
39
+ return (_jsx(DrawerToggleContext.Provider, { value: value, children: children }));
40
+ };
41
+ DrawerToggleProvider.displayName = 'DrawerToggleProvider';
42
+ export default DrawerToggleProvider;
43
+ //# sourceMappingURL=DrawerToggleProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DrawerToggleProvider.js","sourceRoot":"","sources":["../../../src/Providers/DrawerToggleProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAIrB,OAAO,EAEL,WAAW,EACX,SAAS,EACT,OAAO,EACP,QAAQ,EACT,MAAM,OAAO,CAAC;AAEf,MAAM,oBAAoB,GAAiD,CAAC,EAC1E,QAAQ,EACR,UAAU,EAAE,eAAe,EAC3B,cAAc,EACf,EAAE,EAAE;IACH,MAAM,CACJ,UAAU,EACV,aAAa,CACd,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;IAE9B,SAAS,CACP,GAAG,EAAE;QACH,aAAa,CAAC,eAAe,CAAC,CAAC;IACjC,CAAC,EACD;QACE,eAAe;KAChB,CACF,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAC9B,CACE,IAAc,EACd,EAAE;QACF,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,aAAa,CACX,CAAC,iBAAiB,EAAE,EAAE;gBACpB,MAAM,UAAU,GAAG,CAAC,iBAAiB,CAAC;gBAEtC,IAAI,cAAc,EAAE,CAAC;oBACnB,cAAc,CAAC,UAAU,CAAC,CAAC;gBAC7B,CAAC;gBAED,OAAO,UAAU,CAAC;YACpB,CAAC,CACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,cAAc,EAAE,CAAC;gBACnB,cAAc,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;YAED,aAAa,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,EACD;QACE,cAAc;KACf,CACF,CAAC;IAEF,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE;QACH,OAAO;YACL,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC;YAC/B,YAAY;SACb,CAAC;IACJ,CAAC,EACD;QACE,UAAU;QACV,YAAY;KACb,CACF,CAAC;IAEF,OAAO,CACL,KAAC,mBAAmB,CAAC,QAAQ,IAC3B,KAAK,EAAE,KAAK,YAEX,QAAQ,GACoB,CAChC,CAAC;AACJ,CAAC,CAAC;AAEF,oBAAoB,CAAC,WAAW,GAAG,sBAAsB,CAAC;AAE1D,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { TabIndexContext, tabIndexDefaults } from '../Contexts/TabIndexContext';
3
+ import { useEffect, useMemo, useState } from 'react';
4
+ const TabIndexProvider = ({ children, onSelectTab, tabIndex: givenTabIndex }) => {
5
+ const [tabIndex, setTabIndex] = useState(tabIndexDefaults.tabIndex);
6
+ useEffect(() => {
7
+ const safeIndex = Number.isSafeInteger(givenTabIndex) &&
8
+ Number(givenTabIndex);
9
+ if (safeIndex) {
10
+ setTabIndex(safeIndex);
11
+ }
12
+ }, [
13
+ givenTabIndex
14
+ ]);
15
+ useEffect(() => {
16
+ if (onSelectTab) {
17
+ onSelectTab(tabIndex);
18
+ }
19
+ }, [
20
+ onSelectTab,
21
+ tabIndex
22
+ ]);
23
+ const value = useMemo(() => {
24
+ return {
25
+ selectTab: setTabIndex,
26
+ tabIndex
27
+ };
28
+ }, [
29
+ setTabIndex,
30
+ tabIndex
31
+ ]);
32
+ return (_jsx(TabIndexContext.Provider, { value: value, children: children }));
33
+ };
34
+ export default TabIndexProvider;
35
+ TabIndexProvider.displayName = 'TabIndexProvider';
36
+ //# sourceMappingURL=TabIndexProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabIndexProvider.js","sourceRoot":"","sources":["../../../src/Providers/TabIndexProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,eAAe,EACf,gBAAgB,EACjB,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAEL,SAAS,EACT,OAAO,EACP,QAAQ,EACT,MAAM,OAAO,CAAC;AAEf,MAAM,gBAAgB,GAA6C,CAAC,EAClE,QAAQ,EACR,WAAW,EACX,QAAQ,EAAE,aAAa,EACxB,EAAE,EAAE;IACH,MAAM,CACJ,QAAQ,EACR,WAAW,CACZ,GAAG,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAExC,SAAS,CACP,GAAG,EAAE;QACH,MAAM,SAAS,GAAG,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC;YACnD,MAAM,CAAC,aAAa,CAAC,CAAC;QAExB,IACE,SAAS,EACT,CAAC;YACD,WAAW,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC;IACH,CAAC,EACD;QACE,aAAa;KACd,CACF,CAAC;IAEF,SAAS,CACP,GAAG,EAAE;QACH,IAAI,WAAW,EAAE,CAAC;YAChB,WAAW,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,EACD;QACE,WAAW;QACX,QAAQ;KACT,CACF,CAAC;IAEF,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE;QACH,OAAO;YACL,SAAS,EAAE,WAAW;YACtB,QAAQ;SACT,CAAC;IACJ,CAAC,EACD;QACE,WAAW;QACX,QAAQ;KACT,CACF,CAAC;IAEF,OAAO,CACL,KAAC,eAAe,CAAC,QAAQ,IACvB,KAAK,EAAE,KAAK,YAEX,QAAQ,GACgB,CAC5B,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC;AAEhC,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC"}
@@ -0,0 +1,123 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { TabContext, tabDefaults, TabIndexContext } from '../Contexts';
3
+ import { useCallback, useContext, useMemo, useState } from 'react';
4
+ const TabProvider = ({ children }) => {
5
+ const { selectTab, tabIndex } = useContext(TabIndexContext);
6
+ const [tabs, setTabs] = useState(tabDefaults.tabs);
7
+ const [tabOrder, setTabOrder] = useState(tabDefaults.tabOrder);
8
+ const addTab = useCallback((tab, goto, position) => {
9
+ const { tabId } = tab;
10
+ setTabs((previousTabs) => {
11
+ return {
12
+ ...previousTabs,
13
+ [tabId]: tab
14
+ };
15
+ });
16
+ const index = Number.isSafeInteger(position) && Number(position);
17
+ let goToIndex = null;
18
+ setTabOrder((previousTabOrder) => {
19
+ if (index &&
20
+ index > 0) {
21
+ const newTabOrder = [
22
+ ...previousTabOrder
23
+ ].splice(index, 0, tabId);
24
+ if (goto) {
25
+ goToIndex = index;
26
+ }
27
+ return newTabOrder;
28
+ }
29
+ else {
30
+ const newTabOrder = [
31
+ ...previousTabOrder,
32
+ tabId
33
+ ];
34
+ if (goto) {
35
+ goToIndex = newTabOrder.length - 1;
36
+ }
37
+ return newTabOrder;
38
+ }
39
+ });
40
+ if (goToIndex) {
41
+ selectTab(goToIndex);
42
+ }
43
+ }, [
44
+ selectTab
45
+ ]);
46
+ const updateTab = useCallback(({ tabId, ...tabProperties }) => {
47
+ setTabs((previousTabs) => {
48
+ if (previousTabs[tabId]) {
49
+ const updatedTabs = {
50
+ ...previousTabs,
51
+ [tabId]: {
52
+ ...previousTabs[tabId],
53
+ ...tabProperties
54
+ }
55
+ };
56
+ return updatedTabs;
57
+ }
58
+ else {
59
+ return previousTabs;
60
+ }
61
+ });
62
+ }, []);
63
+ const removeTab = useCallback((tabId) => {
64
+ let newTabOrderLength = null;
65
+ setTabOrder((previousTabOrder) => {
66
+ const newTabOrder = previousTabOrder.filter((id) => {
67
+ return id !== tabId;
68
+ });
69
+ newTabOrderLength = newTabOrder.length;
70
+ return newTabOrder;
71
+ });
72
+ if (newTabOrderLength !== null) {
73
+ selectTab((currentTabIndex) => {
74
+ if (newTabOrderLength === currentTabIndex) {
75
+ return currentTabIndex - 1;
76
+ }
77
+ else {
78
+ return currentTabIndex;
79
+ }
80
+ });
81
+ setTabs((previousTabs) => {
82
+ if (previousTabs[tabId]) {
83
+ const { [tabId]: omit, ...filteredTabs } = previousTabs;
84
+ return filteredTabs;
85
+ }
86
+ else {
87
+ return previousTabs;
88
+ }
89
+ });
90
+ }
91
+ }, [
92
+ selectTab
93
+ ]);
94
+ const selectedTabId = useMemo(() => {
95
+ const tabId = tabOrder[tabIndex];
96
+ return tabId;
97
+ }, [
98
+ tabIndex,
99
+ tabOrder,
100
+ tabs
101
+ ]);
102
+ const value = useMemo(() => {
103
+ return {
104
+ addTab,
105
+ removeTab,
106
+ selectedTabId,
107
+ tabOrder,
108
+ tabs,
109
+ updateTab
110
+ };
111
+ }, [
112
+ addTab,
113
+ removeTab,
114
+ selectedTabId,
115
+ tabOrder,
116
+ tabs,
117
+ updateTab
118
+ ]);
119
+ return (_jsx(TabContext.Provider, { value: value, children: children }));
120
+ };
121
+ TabProvider.displayName = 'TabProvider';
122
+ export default TabProvider;
123
+ //# sourceMappingURL=TabProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabProvider.js","sourceRoot":"","sources":["../../../src/Providers/TabProvider.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import DrawerIndexProvider from './DrawerIndexProvider';
3
+ import DrawerProvider from './DrawerProvider';
4
+ import DrawerToggleProvider from './DrawerToggleProvider';
5
+ import TabIndexProvider from './TabIndexProvider';
6
+ import TabProvider from './TabProvider';
7
+ const Providers = ({ children, drawerIndex, drawerOpen, onDrawerToggle, onSelectDrawer, onSelectTab, tabIndex }) => {
8
+ return (_jsx(DrawerToggleProvider, { drawerOpen: drawerOpen, onDrawerToggle: onDrawerToggle, children: _jsx(DrawerIndexProvider, { drawerIndex: drawerIndex, onSelectDrawer: onSelectDrawer, children: _jsx(DrawerProvider, { children: _jsx(TabIndexProvider, { onSelectTab: onSelectTab, tabIndex: tabIndex, children: _jsx(TabProvider, { children: children }) }) }) }) }));
9
+ };
10
+ Providers.displayName = 'SharedProviders';
11
+ export { Providers };
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Providers/index.tsx"],"names":[],"mappings":";AAGA,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,WAAW,MAAM,eAAe,CAAC;AAKxC,MAAM,SAAS,GAAsC,CAAC,EACpD,QAAQ,EACR,WAAW,EACX,UAAU,EACV,cAAc,EACd,cAAc,EACd,WAAW,EACX,QAAQ,EACT,EAAE,EAAE;IACH,OAAO,CACL,KAAC,oBAAoB,IACnB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,cAAc,YAE9B,KAAC,mBAAmB,IAClB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,YAE9B,KAAC,cAAc,cACb,KAAC,gBAAgB,IACf,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,YAElB,KAAC,WAAW,cACT,QAAQ,GACG,GACG,GACJ,GACG,GACD,CACxB,CAAC;AACJ,CAAC,CAAC;AAEF,SAAS,CAAC,WAAW,GAAG,iBAAiB,CAAC;AAE1C,OAAO,EACL,SAAS,EACV,CAAC"}
@@ -72,7 +72,7 @@ export type ReactDigestTabProps = PropsWithChildren<object> & TabType;
72
72
  export type TabContextProps = {
73
73
  readonly addTab: (tab: TabType, goto?: boolean, position?: number) => void;
74
74
  readonly removeTab: (tabId: string) => void;
75
- readonly selectedTabId: string;
75
+ readonly selectedTabId?: string;
76
76
  readonly tabOrder: string[];
77
77
  readonly tabs: {
78
78
  [key: string]: TabType;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Types.js","sourceRoot":"","sources":["../../src/Types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export * from './Hooks';
2
+ export * from './Providers';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@dgui/react-shared",
3
3
  "title": "Digested React GUI Shared Components",
4
4
  "license": "LGPL-3.0-or-later",
5
- "version": "1.7.6",
5
+ "version": "1.8.0",
6
6
  "private": false,
7
7
  "description": "Shared Components for a boilerplate React GUI",
8
8
  "author": "wallzero @wallzeroblog (http://wallzero.com)",
@@ -13,8 +13,9 @@
13
13
  "position": "Initial and Lead Developer"
14
14
  }
15
15
  ],
16
- "main": "dist/index.js",
17
- "types": "dist/index.d.ts",
16
+ "main": "dist/cjs/index.js",
17
+ "module": "dist/esm/index.js",
18
+ "types": "dist/esm/index.d.ts",
18
19
  "files": [
19
20
  "dist/",
20
21
  "COPYING.md",
@@ -30,7 +31,9 @@
30
31
  },
31
32
  "scripts": {
32
33
  "build": "run-s clean:dist build:prod",
33
- "build:prod": "tsc -p ./tsconfig.json",
34
+ "build:prod": "run-p build:cjs:prod build:esm:prod",
35
+ "build:cjs:prod": "tsc -p ./tsconfig.cjs.json",
36
+ "build:esm:prod": "tsc -p ./tsconfig.json",
34
37
  "build:watch": "tsc -p ./tsconfig.json --watch --pretty --preserveWatchOutput",
35
38
  "----------------------------------------------------------------": "",
36
39
  "build:prod:config": "",
@@ -50,14 +53,14 @@
50
53
  "@digest/jest-typescript": "^4.14.14",
51
54
  "@digest/typescript": "^4.14.14",
52
55
  "@types/jest": "^30.0.0",
53
- "@types/react": "^19.2.7",
56
+ "@types/react": "^19.2.13",
54
57
  "@types/react-test-renderer": "^19.1.0",
55
58
  "cross-env": "^10.1.0",
56
59
  "jest-environment-jsdom": "^30.2.0",
57
60
  "jest-environment-jsdom-global": "^4.0.0",
58
61
  "npm-run-all": "^4.1.5",
59
- "react": "^19.2.3",
60
- "react-test-renderer": "^19.2.3",
62
+ "react": "^19.2.4",
63
+ "react-test-renderer": "^19.2.4",
61
64
  "rimraf": "^6.1.2"
62
65
  },
63
66
  "peerDependencies": {
@@ -70,5 +73,5 @@
70
73
  "reactjs",
71
74
  "typescript"
72
75
  ],
73
- "gitHead": "864501301de458311da44d7b3043c7488ce6096c"
76
+ "gitHead": "95e59233ca83f31132d06237305b05e188666974"
74
77
  }
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.drawerDefaults = exports.DrawerContext = void 0;
4
- const react_1 = require("react");
5
- const drawerDefaults = {
6
- addDrawer: () => { },
7
- drawerOrder: [],
8
- drawers: {},
9
- removeDrawer: () => { }
10
- };
11
- exports.drawerDefaults = drawerDefaults;
12
- const DrawerContext = (0, react_1.createContext)(drawerDefaults);
13
- exports.DrawerContext = DrawerContext;
14
- DrawerContext.displayName = 'DrawerContext';
15
- //# sourceMappingURL=DrawerContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DrawerContext.js","sourceRoot":"","sources":["../../src/Contexts/DrawerContext.ts"],"names":[],"mappings":";;;AAGA,iCAEe;AAEf,MAAM,cAAc,GAAuB;IACzC,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;IACnB,WAAW,EAAE,EAAE;IACf,OAAO,EAAE,EAAE;IACX,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;CACvB,CAAC;AAQA,wCAAc;AANhB,MAAM,aAAa,GAAG,IAAA,qBAAa,EAAqB,cAAc,CAAC,CAAC;AAKtE,sCAAa;AAHf,aAAa,CAAC,WAAW,GAAG,eAAe,CAAC"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.drawerIndexDefaults = exports.DrawerIndexContext = void 0;
4
- const react_1 = require("react");
5
- const drawerIndexDefaults = {
6
- drawerIndex: 0,
7
- selectDrawer: () => { }
8
- };
9
- exports.drawerIndexDefaults = drawerIndexDefaults;
10
- const DrawerIndexContext = (0, react_1.createContext)(drawerIndexDefaults);
11
- exports.DrawerIndexContext = DrawerIndexContext;
12
- DrawerIndexContext.displayName = 'DrawerIndexContext';
13
- //# sourceMappingURL=DrawerIndexContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DrawerIndexContext.js","sourceRoot":"","sources":["../../src/Contexts/DrawerIndexContext.ts"],"names":[],"mappings":";;;AAGA,iCAEe;AAEf,MAAM,mBAAmB,GAA4B;IACnD,WAAW,EAAE,CAAC;IACd,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;CACvB,CAAC;AAQA,kDAAmB;AANrB,MAAM,kBAAkB,GAAG,IAAA,qBAAa,EAA0B,mBAAmB,CAAC,CAAC;AAKrF,gDAAkB;AAHpB,kBAAkB,CAAC,WAAW,GAAG,oBAAoB,CAAC"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.drawerToggleDefaults = exports.DrawerToggleContext = void 0;
4
- const react_1 = require("react");
5
- const drawerToggleDefaults = {
6
- drawerOpen: false,
7
- toggleDrawer: () => { }
8
- };
9
- exports.drawerToggleDefaults = drawerToggleDefaults;
10
- const DrawerToggleContext = (0, react_1.createContext)(drawerToggleDefaults);
11
- exports.DrawerToggleContext = DrawerToggleContext;
12
- DrawerToggleContext.displayName = 'DrawerToggleContext';
13
- //# sourceMappingURL=DrawerToggleContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DrawerToggleContext.js","sourceRoot":"","sources":["../../src/Contexts/DrawerToggleContext.ts"],"names":[],"mappings":";;;AAGA,iCAEe;AAEf,MAAM,oBAAoB,GAA6B;IACrD,UAAU,EAAE,KAAK;IACjB,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;CACvB,CAAC;AAQA,oDAAoB;AANtB,MAAM,mBAAmB,GAAG,IAAA,qBAAa,EAA2B,oBAAoB,CAAC,CAAC;AAKxF,kDAAmB;AAHrB,mBAAmB,CAAC,WAAW,GAAG,qBAAqB,CAAC"}
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.tabDefaults = exports.TabContext = void 0;
4
- const react_1 = require("react");
5
- const tabDefaults = {
6
- addTab: () => { },
7
- removeTab: () => { },
8
- selectedTabId: '',
9
- tabOrder: [],
10
- tabs: {},
11
- updateTab: () => { }
12
- };
13
- exports.tabDefaults = tabDefaults;
14
- const TabContext = (0, react_1.createContext)(tabDefaults);
15
- exports.TabContext = TabContext;
16
- TabContext.displayName = 'TabContext';
17
- //# sourceMappingURL=TabContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TabContext.js","sourceRoot":"","sources":["../../src/Contexts/TabContext.ts"],"names":[],"mappings":";;;AAGA,iCAEe;AAEf,MAAM,WAAW,GAAoB;IACnC,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;IAChB,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;IACnB,aAAa,EAAE,EAAE;IACjB,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,EAAE;IACR,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;CACpB,CAAC;AAQA,kCAAW;AANb,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAkB,WAAW,CAAC,CAAC;AAK7D,gCAAU;AAHZ,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.tabIndexDefaults = exports.TabIndexContext = void 0;
4
- const react_1 = require("react");
5
- const tabIndexDefaults = {
6
- selectTab: () => { },
7
- tabIndex: 0
8
- };
9
- exports.tabIndexDefaults = tabIndexDefaults;
10
- const TabIndexContext = (0, react_1.createContext)(tabIndexDefaults);
11
- exports.TabIndexContext = TabIndexContext;
12
- TabIndexContext.displayName = 'TabIndexContext';
13
- //# sourceMappingURL=TabIndexContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TabIndexContext.js","sourceRoot":"","sources":["../../src/Contexts/TabIndexContext.ts"],"names":[],"mappings":";;;AAGA,iCAEe;AAEf,MAAM,gBAAgB,GAAyB;IAC7C,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;IACnB,QAAQ,EAAE,CAAC;CACZ,CAAC;AAQA,4CAAgB;AANlB,MAAM,eAAe,GAAG,IAAA,qBAAa,EAAuB,gBAAgB,CAAC,CAAC;AAK5E,0CAAe;AAHjB,eAAe,CAAC,WAAW,GAAG,iBAAiB,CAAC"}
@@ -1,22 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./DrawerContext"), exports);
18
- __exportStar(require("./DrawerIndexContext"), exports);
19
- __exportStar(require("./DrawerToggleContext"), exports);
20
- __exportStar(require("./TabContext"), exports);
21
- __exportStar(require("./TabIndexContext"), exports);
22
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Contexts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,uDAAqC;AACrC,wDAAsC;AACtC,+CAA6B;AAC7B,oDAAkC"}
@@ -1,33 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./useAddDrawer"), exports);
18
- __exportStar(require("./useAddTab"), exports);
19
- __exportStar(require("./useDrawerIndex"), exports);
20
- __exportStar(require("./useDrawerOpen"), exports);
21
- __exportStar(require("./useDrawerOrder"), exports);
22
- __exportStar(require("./useDrawers"), exports);
23
- __exportStar(require("./useDrawerStatus"), exports);
24
- __exportStar(require("./useRemoveDrawer"), exports);
25
- __exportStar(require("./useRemoveTab"), exports);
26
- __exportStar(require("./useSelectDrawer"), exports);
27
- __exportStar(require("./useSelectedTabID"), exports);
28
- __exportStar(require("./useSelectTab"), exports);
29
- __exportStar(require("./useTabIndex"), exports);
30
- __exportStar(require("./useTabOrder"), exports);
31
- __exportStar(require("./useTabs"), exports);
32
- __exportStar(require("./useToggleDrawer"), exports);
33
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Hooks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,8CAA4B;AAC5B,mDAAiC;AACjC,kDAAgC;AAChC,mDAAiC;AACjC,+CAA6B;AAC7B,oDAAkC;AAClC,oDAAkC;AAClC,iDAA+B;AAC/B,oDAAkC;AAClC,qDAAmC;AACnC,iDAA+B;AAC/B,gDAA8B;AAC9B,gDAA8B;AAC9B,4CAA0B;AAC1B,oDAAkC"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useAddDrawer = void 0;
4
- const Contexts_1 = require("../Contexts");
5
- const react_1 = require("react");
6
- const useAddDrawer = () => {
7
- const { addDrawer } = (0, react_1.useContext)(Contexts_1.DrawerContext);
8
- return addDrawer;
9
- };
10
- exports.useAddDrawer = useAddDrawer;
11
- //# sourceMappingURL=useAddDrawer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useAddDrawer.js","sourceRoot":"","sources":["../../src/Hooks/useAddDrawer.ts"],"names":[],"mappings":";;;AAAA,0CAEqB;AACrB,iCAEe;AAEf,MAAM,YAAY,GAAG,GAAG,EAAE;IACxB,MAAM,EACJ,SAAS,EACV,GAAG,IAAA,kBAAU,EAAC,wBAAa,CAAC,CAAC;IAE9B,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAGA,oCAAY"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useAddTab = void 0;
4
- const Contexts_1 = require("../Contexts");
5
- const react_1 = require("react");
6
- const useAddTab = () => {
7
- const { addTab } = (0, react_1.useContext)(Contexts_1.TabContext);
8
- return addTab;
9
- };
10
- exports.useAddTab = useAddTab;
11
- //# sourceMappingURL=useAddTab.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useAddTab.js","sourceRoot":"","sources":["../../src/Hooks/useAddTab.ts"],"names":[],"mappings":";;;AAAA,0CAEqB;AACrB,iCAEe;AAEf,MAAM,SAAS,GAAG,GAAG,EAAE;IACrB,MAAM,EACJ,MAAM,EACP,GAAG,IAAA,kBAAU,EAAC,qBAAU,CAAC,CAAC;IAE3B,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAGA,8BAAS"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useDrawerIndex = useDrawerIndex;
4
- const Contexts_1 = require("../Contexts");
5
- const react_1 = require("react");
6
- function useDrawerIndex() {
7
- const { drawerIndex } = (0, react_1.useContext)(Contexts_1.DrawerIndexContext);
8
- return drawerIndex;
9
- }
10
- //# sourceMappingURL=useDrawerIndex.js.map