@contember/react-board 1.3.0-alpha.11 → 1.3.0-alpha.14

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 (201) hide show
  1. package/dist/development/components/Board.cjs +118 -0
  2. package/dist/development/components/Board.cjs.map +1 -0
  3. package/dist/development/components/Board.js +118 -0
  4. package/dist/development/components/Board.js.map +1 -0
  5. package/dist/development/components/BoardColumn.cjs +7 -0
  6. package/dist/development/components/BoardColumn.cjs.map +1 -0
  7. package/dist/development/components/BoardColumn.js +7 -0
  8. package/dist/development/components/BoardColumn.js.map +1 -0
  9. package/dist/development/components/BoardColumnLabel.cjs +9 -0
  10. package/dist/development/components/BoardColumnLabel.cjs.map +1 -0
  11. package/dist/development/components/BoardColumnLabel.js +9 -0
  12. package/dist/development/components/BoardColumnLabel.js.map +1 -0
  13. package/dist/development/components/BoardEachColumn.cjs +22 -0
  14. package/dist/development/components/BoardEachColumn.cjs.map +1 -0
  15. package/dist/development/components/BoardEachColumn.js +22 -0
  16. package/dist/development/components/BoardEachColumn.js.map +1 -0
  17. package/dist/development/components/BoardEachItem.cjs +33 -0
  18. package/dist/development/components/BoardEachItem.cjs.map +1 -0
  19. package/dist/development/components/BoardEachItem.js +33 -0
  20. package/dist/development/components/BoardEachItem.js.map +1 -0
  21. package/dist/development/components/BoardItem.cjs +8 -0
  22. package/dist/development/components/BoardItem.cjs.map +1 -0
  23. package/dist/development/components/BoardItem.js +8 -0
  24. package/dist/development/components/BoardItem.js.map +1 -0
  25. package/dist/development/components/BoardNullColumn.cjs +14 -0
  26. package/dist/development/components/BoardNullColumn.cjs.map +1 -0
  27. package/dist/development/components/BoardNullColumn.js +14 -0
  28. package/dist/development/components/BoardNullColumn.js.map +1 -0
  29. package/dist/development/contexts.cjs +24 -0
  30. package/dist/development/contexts.cjs.map +1 -0
  31. package/dist/development/contexts.js +24 -0
  32. package/dist/development/contexts.js.map +1 -0
  33. package/dist/development/index.cjs +23 -6
  34. package/dist/development/index.cjs.map +1 -1
  35. package/dist/development/index.js +23 -6
  36. package/dist/development/index.js.map +1 -1
  37. package/dist/development/internal/boardAnalyzer.cjs +16 -0
  38. package/dist/development/internal/boardAnalyzer.cjs.map +1 -0
  39. package/dist/development/internal/boardAnalyzer.js +16 -0
  40. package/dist/development/internal/boardAnalyzer.js.map +1 -0
  41. package/dist/development/internal/useBoardItemsMethods.cjs.map +1 -1
  42. package/dist/development/internal/useBoardItemsMethods.js.map +1 -1
  43. package/dist/development/internal/{useBoardColumns.cjs → useCreateBoardColumns.cjs} +10 -24
  44. package/dist/development/internal/useCreateBoardColumns.cjs.map +1 -0
  45. package/dist/development/internal/{useBoardColumns.js → useCreateBoardColumns.js} +10 -24
  46. package/dist/development/internal/useCreateBoardColumns.js.map +1 -0
  47. package/dist/{production → development/internal}/useDynamicBoard.cjs +14 -18
  48. package/dist/development/internal/useDynamicBoard.cjs.map +1 -0
  49. package/dist/{production → development/internal}/useDynamicBoard.js +14 -18
  50. package/dist/development/internal/useDynamicBoard.js.map +1 -0
  51. package/dist/{production → development/internal}/useStaticBoard.cjs +8 -16
  52. package/dist/development/internal/useStaticBoard.cjs.map +1 -0
  53. package/dist/{production → development/internal}/useStaticBoard.js +9 -17
  54. package/dist/development/internal/useStaticBoard.js.map +1 -0
  55. package/dist/production/components/Board.cjs +118 -0
  56. package/dist/production/components/Board.cjs.map +1 -0
  57. package/dist/production/components/Board.js +118 -0
  58. package/dist/production/components/Board.js.map +1 -0
  59. package/dist/production/components/BoardColumn.cjs +7 -0
  60. package/dist/production/components/BoardColumn.cjs.map +1 -0
  61. package/dist/production/components/BoardColumn.js +7 -0
  62. package/dist/production/components/BoardColumn.js.map +1 -0
  63. package/dist/production/components/BoardColumnLabel.cjs +9 -0
  64. package/dist/production/components/BoardColumnLabel.cjs.map +1 -0
  65. package/dist/production/components/BoardColumnLabel.js +9 -0
  66. package/dist/production/components/BoardColumnLabel.js.map +1 -0
  67. package/dist/production/components/BoardEachColumn.cjs +22 -0
  68. package/dist/production/components/BoardEachColumn.cjs.map +1 -0
  69. package/dist/production/components/BoardEachColumn.js +22 -0
  70. package/dist/production/components/BoardEachColumn.js.map +1 -0
  71. package/dist/production/components/BoardEachItem.cjs +33 -0
  72. package/dist/production/components/BoardEachItem.cjs.map +1 -0
  73. package/dist/production/components/BoardEachItem.js +33 -0
  74. package/dist/production/components/BoardEachItem.js.map +1 -0
  75. package/dist/production/components/BoardItem.cjs +8 -0
  76. package/dist/production/components/BoardItem.cjs.map +1 -0
  77. package/dist/production/components/BoardItem.js +8 -0
  78. package/dist/production/components/BoardItem.js.map +1 -0
  79. package/dist/production/components/BoardNullColumn.cjs +14 -0
  80. package/dist/production/components/BoardNullColumn.cjs.map +1 -0
  81. package/dist/production/components/BoardNullColumn.js +14 -0
  82. package/dist/production/components/BoardNullColumn.js.map +1 -0
  83. package/dist/production/contexts.cjs +24 -0
  84. package/dist/production/contexts.cjs.map +1 -0
  85. package/dist/production/contexts.js +24 -0
  86. package/dist/production/contexts.js.map +1 -0
  87. package/dist/production/index.cjs +23 -6
  88. package/dist/production/index.cjs.map +1 -1
  89. package/dist/production/index.js +23 -6
  90. package/dist/production/index.js.map +1 -1
  91. package/dist/production/internal/boardAnalyzer.cjs +16 -0
  92. package/dist/production/internal/boardAnalyzer.cjs.map +1 -0
  93. package/dist/production/internal/boardAnalyzer.js +16 -0
  94. package/dist/production/internal/boardAnalyzer.js.map +1 -0
  95. package/dist/production/internal/useBoardItemsMethods.cjs.map +1 -1
  96. package/dist/production/internal/useBoardItemsMethods.js.map +1 -1
  97. package/dist/production/internal/{useBoardColumns.cjs → useCreateBoardColumns.cjs} +10 -24
  98. package/dist/production/internal/useCreateBoardColumns.cjs.map +1 -0
  99. package/dist/production/internal/{useBoardColumns.js → useCreateBoardColumns.js} +10 -24
  100. package/dist/production/internal/useCreateBoardColumns.js.map +1 -0
  101. package/dist/{development → production/internal}/useDynamicBoard.cjs +14 -18
  102. package/dist/production/internal/useDynamicBoard.cjs.map +1 -0
  103. package/dist/{development → production/internal}/useDynamicBoard.js +14 -18
  104. package/dist/production/internal/useDynamicBoard.js.map +1 -0
  105. package/dist/{development → production/internal}/useStaticBoard.cjs +8 -16
  106. package/dist/production/internal/useStaticBoard.cjs.map +1 -0
  107. package/dist/{development → production/internal}/useStaticBoard.js +9 -17
  108. package/dist/production/internal/useStaticBoard.js.map +1 -0
  109. package/dist/types/{types.d.ts → components/Board.d.ts} +5 -8
  110. package/dist/types/components/Board.d.ts.map +1 -0
  111. package/dist/types/components/BoardColumn.d.ts +5 -0
  112. package/dist/types/components/BoardColumn.d.ts.map +1 -0
  113. package/dist/types/components/BoardColumnLabel.d.ts +2 -0
  114. package/dist/types/components/BoardColumnLabel.d.ts.map +1 -0
  115. package/dist/types/components/BoardEachColumn.d.ts +10 -0
  116. package/dist/types/components/BoardEachColumn.d.ts.map +1 -0
  117. package/dist/types/components/BoardEachItem.d.ts +10 -0
  118. package/dist/types/components/BoardEachItem.d.ts.map +1 -0
  119. package/dist/types/components/BoardItem.d.ts +8 -0
  120. package/dist/types/components/BoardItem.d.ts.map +1 -0
  121. package/dist/types/components/BoardNullColumn.d.ts +7 -0
  122. package/dist/types/components/BoardNullColumn.d.ts.map +1 -0
  123. package/dist/types/components/index.d.ts +8 -0
  124. package/dist/types/components/index.d.ts.map +1 -0
  125. package/dist/types/contexts.d.ts +18 -0
  126. package/dist/types/contexts.d.ts.map +1 -0
  127. package/dist/types/index.d.ts +2 -4
  128. package/dist/types/index.d.ts.map +1 -1
  129. package/dist/types/internal/boardAnalyzer.d.ts +6 -0
  130. package/dist/types/internal/boardAnalyzer.d.ts.map +1 -0
  131. package/dist/types/internal/useBoardItemsMethods.d.ts +1 -1
  132. package/dist/types/internal/useBoardItemsMethods.d.ts.map +1 -1
  133. package/dist/types/internal/useCreateBoardColumns.d.ts +10 -0
  134. package/dist/types/internal/useCreateBoardColumns.d.ts.map +1 -0
  135. package/dist/types/{useDynamicBoard.d.ts → internal/useDynamicBoard.d.ts} +4 -3
  136. package/dist/types/internal/useDynamicBoard.d.ts.map +1 -0
  137. package/dist/types/{useStaticBoard.d.ts → internal/useStaticBoard.d.ts} +4 -3
  138. package/dist/types/internal/useStaticBoard.d.ts.map +1 -0
  139. package/dist/types/tsconfig.tsbuildinfo +1 -1
  140. package/dist/types/types/BoardColumnNode.d.ts +15 -0
  141. package/dist/types/types/BoardColumnNode.d.ts.map +1 -0
  142. package/dist/types/types/BoardData.d.ts +5 -0
  143. package/dist/types/types/BoardData.d.ts.map +1 -0
  144. package/dist/types/types/BoardItemNode.d.ts +7 -0
  145. package/dist/types/types/BoardItemNode.d.ts.map +1 -0
  146. package/dist/types/{BoardBindingProps.d.ts → types/BoardMethods.d.ts} +4 -23
  147. package/dist/types/types/BoardMethods.d.ts.map +1 -0
  148. package/dist/types/types/index.d.ts +4 -0
  149. package/dist/types/types/index.d.ts.map +1 -0
  150. package/package.json +5 -2
  151. package/src/components/Board.tsx +219 -0
  152. package/src/components/BoardColumn.tsx +7 -0
  153. package/src/components/BoardColumnLabel.tsx +6 -0
  154. package/src/components/BoardEachColumn.tsx +30 -0
  155. package/src/components/BoardEachItem.tsx +46 -0
  156. package/src/components/BoardItem.tsx +8 -0
  157. package/src/components/BoardNullColumn.tsx +20 -0
  158. package/src/components/index.ts +7 -0
  159. package/src/contexts.ts +23 -0
  160. package/src/index.ts +2 -4
  161. package/src/internal/boardAnalyzer.ts +25 -0
  162. package/src/internal/useBoardItemsMethods.ts +1 -1
  163. package/src/internal/{useBoardColumns.ts → useCreateBoardColumns.ts} +11 -28
  164. package/src/{useDynamicBoard.ts → internal/useDynamicBoard.ts} +21 -18
  165. package/src/{useStaticBoard.ts → internal/useStaticBoard.ts} +13 -18
  166. package/src/tsconfig.json +3 -0
  167. package/src/types/BoardColumnNode.ts +16 -0
  168. package/src/types/BoardData.ts +6 -0
  169. package/src/types/BoardItemNode.ts +7 -0
  170. package/src/{BoardBindingProps.ts → types/BoardMethods.ts} +3 -29
  171. package/src/types/index.ts +3 -0
  172. package/dist/development/Board.cjs +0 -116
  173. package/dist/development/Board.cjs.map +0 -1
  174. package/dist/development/Board.js +0 -116
  175. package/dist/development/Board.js.map +0 -1
  176. package/dist/development/internal/useBoardColumns.cjs.map +0 -1
  177. package/dist/development/internal/useBoardColumns.js.map +0 -1
  178. package/dist/development/useDynamicBoard.cjs.map +0 -1
  179. package/dist/development/useDynamicBoard.js.map +0 -1
  180. package/dist/development/useStaticBoard.cjs.map +0 -1
  181. package/dist/development/useStaticBoard.js.map +0 -1
  182. package/dist/production/Board.cjs +0 -116
  183. package/dist/production/Board.cjs.map +0 -1
  184. package/dist/production/Board.js +0 -116
  185. package/dist/production/Board.js.map +0 -1
  186. package/dist/production/internal/useBoardColumns.cjs.map +0 -1
  187. package/dist/production/internal/useBoardColumns.js.map +0 -1
  188. package/dist/production/useDynamicBoard.cjs.map +0 -1
  189. package/dist/production/useDynamicBoard.js.map +0 -1
  190. package/dist/production/useStaticBoard.cjs.map +0 -1
  191. package/dist/production/useStaticBoard.js.map +0 -1
  192. package/dist/types/Board.d.ts +0 -10
  193. package/dist/types/Board.d.ts.map +0 -1
  194. package/dist/types/BoardBindingProps.d.ts.map +0 -1
  195. package/dist/types/internal/useBoardColumns.d.ts +0 -11
  196. package/dist/types/internal/useBoardColumns.d.ts.map +0 -1
  197. package/dist/types/types.d.ts.map +0 -1
  198. package/dist/types/useDynamicBoard.d.ts.map +0 -1
  199. package/dist/types/useStaticBoard.d.ts.map +0 -1
  200. package/src/Board.tsx +0 -156
  201. package/src/types.ts +0 -64
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const reactBinding = require("@contember/react-binding");
5
+ const boardAnalyzer = require("../internal/boardAnalyzer.cjs");
6
+ const react = require("react");
7
+ const useDynamicBoard = require("../internal/useDynamicBoard.cjs");
8
+ const useStaticBoard = require("../internal/useStaticBoard.cjs");
9
+ const contexts = require("../contexts.cjs");
10
+ const Board = reactBinding.Component((props) => {
11
+ if ("entities" in props) {
12
+ if (Array.isArray(props.columns)) {
13
+ return /* @__PURE__ */ jsxRuntime.jsx(BoardQualifiedStatic, { ...props });
14
+ } else {
15
+ return /* @__PURE__ */ jsxRuntime.jsx(BoardQualifiedDynamic, { ...props });
16
+ }
17
+ } else {
18
+ if (Array.isArray(props.columns)) {
19
+ return /* @__PURE__ */ jsxRuntime.jsx(RelativeStaticBoard, { ...props });
20
+ } else {
21
+ return /* @__PURE__ */ jsxRuntime.jsx(RelativeDynamicBoard, { ...props });
22
+ }
23
+ }
24
+ });
25
+ const BoardQualifiedDynamic = reactBinding.Component(({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {
26
+ const itemsAccessor = reactBinding.useEntityListSubTree({ entities, orderBy, limit, offset });
27
+ const columnsAccessor = reactBinding.useEntityListSubTree({ entities: columns });
28
+ const [data, methods] = useDynamicBoard.useDynamicBoard({
29
+ columnEntities: columnsAccessor,
30
+ itemEntities: itemsAccessor,
31
+ columns,
32
+ sortableBy,
33
+ sortScope,
34
+ columnsSortableBy,
35
+ discriminationField
36
+ });
37
+ return /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardMethodsContext.Provider, { value: methods, children: /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardColumnsContext.Provider, { value: data.columns, children }) });
38
+ }, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {
39
+ const columnChildren = boardAnalyzer.boardColumnsAnalyzer.processChildren(children, env);
40
+ const itemChildren = boardAnalyzer.boardItemsAnalyzer.processChildren(children, env);
41
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
42
+ /* @__PURE__ */ jsxRuntime.jsxs(reactBinding.EntityListSubTree, { entities, orderBy, limit, offset, children: [
43
+ /* @__PURE__ */ jsxRuntime.jsx(reactBinding.HasOne, { ...typeof discriminationField === "string" ? { field: discriminationField } : discriminationField }),
44
+ sortableBy && /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Field, { ...typeof sortableBy === "string" ? { field: sortableBy } : sortableBy }),
45
+ itemChildren.map((it, index) => /* @__PURE__ */ jsxRuntime.jsx(react.Fragment, { children: it }, index))
46
+ ] }),
47
+ /* @__PURE__ */ jsxRuntime.jsxs(reactBinding.EntityListSubTree, { entities: columns, children: [
48
+ columnsSortableBy && /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Field, { ...typeof columnsSortableBy === "string" ? { field: columnsSortableBy } : columnsSortableBy }),
49
+ columnChildren.map((it, index) => /* @__PURE__ */ jsxRuntime.jsx(react.Fragment, { children: it }, index))
50
+ ] })
51
+ ] });
52
+ });
53
+ const RelativeDynamicBoard = reactBinding.Component(({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {
54
+ const itemsAccessor = reactBinding.useEntityList({ field, orderBy, limit, offset });
55
+ const columnsAccessor = reactBinding.useEntityListSubTree({ entities: columns });
56
+ const [data, methods] = useDynamicBoard.useDynamicBoard({
57
+ columnEntities: columnsAccessor,
58
+ itemEntities: itemsAccessor,
59
+ columns,
60
+ sortableBy,
61
+ sortScope,
62
+ columnsSortableBy,
63
+ discriminationField
64
+ });
65
+ return /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardMethodsContext.Provider, { value: methods, children: /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardColumnsContext.Provider, { value: data.columns, children }) });
66
+ }, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {
67
+ const columnChildren = boardAnalyzer.boardColumnsAnalyzer.processChildren(children, env);
68
+ const itemChildren = boardAnalyzer.boardItemsAnalyzer.processChildren(children, env);
69
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
70
+ /* @__PURE__ */ jsxRuntime.jsxs(reactBinding.HasMany, { field, orderBy, limit, offset, children: [
71
+ /* @__PURE__ */ jsxRuntime.jsx(reactBinding.HasOne, { ...typeof discriminationField === "string" ? { field: discriminationField } : discriminationField }),
72
+ sortableBy && /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Field, { ...typeof sortableBy === "string" ? { field: sortableBy } : sortableBy }),
73
+ itemChildren.map((it, index) => /* @__PURE__ */ jsxRuntime.jsx(react.Fragment, { children: it }, index))
74
+ ] }),
75
+ /* @__PURE__ */ jsxRuntime.jsxs(reactBinding.EntityListSubTree, { entities: columns, children: [
76
+ columnsSortableBy && /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Field, { ...typeof columnsSortableBy === "string" ? { field: columnsSortableBy } : columnsSortableBy }),
77
+ columnChildren.map((it, index) => /* @__PURE__ */ jsxRuntime.jsx(react.Fragment, { children: it }, index))
78
+ ] })
79
+ ] });
80
+ });
81
+ const BoardQualifiedStatic = reactBinding.Component(({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {
82
+ const itemsAccessor = reactBinding.useEntityListSubTree({ entities, orderBy, limit, offset });
83
+ const [data, methods] = useStaticBoard.useStaticBoard({
84
+ itemEntities: itemsAccessor,
85
+ columns,
86
+ sortableBy,
87
+ sortScope,
88
+ discriminationField
89
+ });
90
+ return /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardMethodsContext.Provider, { value: methods, children: /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardColumnsContext.Provider, { value: data.columns, children }) });
91
+ }, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {
92
+ const itemChildren = boardAnalyzer.boardItemsAnalyzer.processChildren(children, env);
93
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs(reactBinding.EntityListSubTree, { entities, orderBy, limit, offset, children: [
94
+ /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Field, { ...typeof discriminationField === "string" ? { field: discriminationField } : discriminationField }),
95
+ sortableBy && /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Field, { ...typeof sortableBy === "string" ? { field: sortableBy } : sortableBy }),
96
+ itemChildren.map((it, index) => /* @__PURE__ */ jsxRuntime.jsx(react.Fragment, { children: it }, index))
97
+ ] }) });
98
+ });
99
+ const RelativeStaticBoard = reactBinding.Component(({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {
100
+ const itemsAccessor = reactBinding.useEntityList({ field, orderBy, limit, offset });
101
+ const [data, methods] = useStaticBoard.useStaticBoard({
102
+ itemEntities: itemsAccessor,
103
+ columns,
104
+ sortableBy,
105
+ sortScope,
106
+ discriminationField
107
+ });
108
+ return /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardMethodsContext.Provider, { value: methods, children: /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardColumnsContext.Provider, { value: data.columns, children }) });
109
+ }, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {
110
+ const itemChildren = boardAnalyzer.boardItemsAnalyzer.processChildren(children, env);
111
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs(reactBinding.HasMany, { field, orderBy, limit, offset, children: [
112
+ /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Field, { ...typeof discriminationField === "string" ? { field: discriminationField } : discriminationField }),
113
+ sortableBy && /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Field, { ...typeof sortableBy === "string" ? { field: sortableBy } : sortableBy }),
114
+ itemChildren.map((it, index) => /* @__PURE__ */ jsxRuntime.jsx(react.Fragment, { children: it }, index))
115
+ ] }) });
116
+ });
117
+ exports.Board = Board;
118
+ //# sourceMappingURL=Board.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Board.cjs","sources":["../../../src/components/Board.tsx"],"sourcesContent":["import {\n\tComponent,\n\tEntityListSubTree,\n\tField,\n\tHasMany,\n\tHasOne,\n\tSugaredQualifiedEntityList,\n\tSugaredRelativeEntityList,\n\tSugaredRelativeSingleEntity,\n\tSugaredRelativeSingleField,\n\tuseEntityList,\n\tuseEntityListSubTree,\n} from '@contember/react-binding'\nimport { boardColumnsAnalyzer, boardItemsAnalyzer } from '../internal/boardAnalyzer'\nimport { Fragment, ReactNode } from 'react'\nimport { useDynamicBoard } from '../internal/useDynamicBoard'\nimport { useStaticBoard } from '../internal/useStaticBoard'\nimport { BoardColumnsContext, BoardMethodsContext } from '../contexts'\n\nexport type BoardProps =\n\t| BoardQualifiedDynamicProps\n\t| BoardRelativeDynamicProps\n\t| BoardQualifiedStaticProps\n\t| BoardRelativeStaticProps\n\n\nexport const Board = Component<BoardProps>(props => {\n\tif ('entities' in props) {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <BoardQualifiedStatic {...(props as BoardQualifiedStaticProps)} />\n\t\t} else {\n\t\t\treturn <BoardQualifiedDynamic {...(props as BoardQualifiedDynamicProps)} />\n\t\t}\n\t} else {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <RelativeStaticBoard {...(props as BoardRelativeStaticProps)} />\n\t\t} else {\n\t\t\treturn <RelativeDynamicBoard {...(props as BoardRelativeDynamicProps)} />\n\t\t}\n\t}\n})\n\nexport type BoardDynamicColumnsBindingProps = {\n\tcolumns: SugaredQualifiedEntityList['entities']\n\tcolumnsSortableBy?: string | SugaredRelativeSingleField\n\tdiscriminationField: string | SugaredRelativeSingleEntity\n}\n\nexport type BoardStaticColumnsBindingProps = {\n\tcolumns: {\n\t\tvalue: string,\n\t\tlabel: ReactNode\n\t}[]\n\tdiscriminationField: string | SugaredRelativeSingleField\n}\n\nexport type BoardCommonProps =\n\t& {\n\tchildren: ReactNode\n\tsortableBy?: string | SugaredRelativeSingleField\n\tsortScope?: 'column' | 'board'\n}\n\nexport type BoardQualifiedItemsProps =\n\t& Pick<SugaredQualifiedEntityList, 'entities' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardRelativeItemsProps =\n\t& Pick<SugaredRelativeEntityList, 'field' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardQualifiedDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedDynamic = Component<BoardQualifiedDynamicProps>(({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\n\tconst columnChildren = boardColumnsAnalyzer.processChildren(children, env)\n\tconst itemChildren = boardItemsAnalyzer.processChildren(children, env)\n\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardRelativeItemsProps\n\n\nconst RelativeDynamicBoard = Component<BoardRelativeDynamicProps>(({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\tconst columnChildren = boardColumnsAnalyzer.processChildren(children, env)\n\tconst itemChildren = boardItemsAnalyzer.processChildren(children, env)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\nexport type BoardQualifiedStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\n\nconst BoardQualifiedStatic = Component<BoardQualifiedStaticProps>(({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst itemChildren = boardItemsAnalyzer.processChildren(children, env)\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeStaticBoard = Component<BoardRelativeStaticProps>(({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst itemChildren = boardItemsAnalyzer.processChildren(children, env)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t</>)\n})\n"],"names":["Component","jsx","useEntityListSubTree","useDynamicBoard","BoardMethodsContext","BoardColumnsContext","boardColumnsAnalyzer","boardItemsAnalyzer","jsxs","Fragment","EntityListSubTree","HasOne","Field","useEntityList","HasMany","useStaticBoard"],"mappings":"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"}
@@ -0,0 +1,118 @@
1
+ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
+ import { Component, useEntityListSubTree, EntityListSubTree, HasOne, Field, useEntityList, HasMany } from "@contember/react-binding";
3
+ import { boardColumnsAnalyzer, boardItemsAnalyzer } from "../internal/boardAnalyzer.js";
4
+ import { Fragment as Fragment$1 } from "react";
5
+ import { useDynamicBoard } from "../internal/useDynamicBoard.js";
6
+ import { useStaticBoard } from "../internal/useStaticBoard.js";
7
+ import { BoardMethodsContext, BoardColumnsContext } from "../contexts.js";
8
+ const Board = Component((props) => {
9
+ if ("entities" in props) {
10
+ if (Array.isArray(props.columns)) {
11
+ return /* @__PURE__ */ jsx(BoardQualifiedStatic, { ...props });
12
+ } else {
13
+ return /* @__PURE__ */ jsx(BoardQualifiedDynamic, { ...props });
14
+ }
15
+ } else {
16
+ if (Array.isArray(props.columns)) {
17
+ return /* @__PURE__ */ jsx(RelativeStaticBoard, { ...props });
18
+ } else {
19
+ return /* @__PURE__ */ jsx(RelativeDynamicBoard, { ...props });
20
+ }
21
+ }
22
+ });
23
+ const BoardQualifiedDynamic = Component(({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {
24
+ const itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset });
25
+ const columnsAccessor = useEntityListSubTree({ entities: columns });
26
+ const [data, methods] = useDynamicBoard({
27
+ columnEntities: columnsAccessor,
28
+ itemEntities: itemsAccessor,
29
+ columns,
30
+ sortableBy,
31
+ sortScope,
32
+ columnsSortableBy,
33
+ discriminationField
34
+ });
35
+ return /* @__PURE__ */ jsx(BoardMethodsContext.Provider, { value: methods, children: /* @__PURE__ */ jsx(BoardColumnsContext.Provider, { value: data.columns, children }) });
36
+ }, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {
37
+ const columnChildren = boardColumnsAnalyzer.processChildren(children, env);
38
+ const itemChildren = boardItemsAnalyzer.processChildren(children, env);
39
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
40
+ /* @__PURE__ */ jsxs(EntityListSubTree, { entities, orderBy, limit, offset, children: [
41
+ /* @__PURE__ */ jsx(HasOne, { ...typeof discriminationField === "string" ? { field: discriminationField } : discriminationField }),
42
+ sortableBy && /* @__PURE__ */ jsx(Field, { ...typeof sortableBy === "string" ? { field: sortableBy } : sortableBy }),
43
+ itemChildren.map((it, index) => /* @__PURE__ */ jsx(Fragment$1, { children: it }, index))
44
+ ] }),
45
+ /* @__PURE__ */ jsxs(EntityListSubTree, { entities: columns, children: [
46
+ columnsSortableBy && /* @__PURE__ */ jsx(Field, { ...typeof columnsSortableBy === "string" ? { field: columnsSortableBy } : columnsSortableBy }),
47
+ columnChildren.map((it, index) => /* @__PURE__ */ jsx(Fragment$1, { children: it }, index))
48
+ ] })
49
+ ] });
50
+ });
51
+ const RelativeDynamicBoard = Component(({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {
52
+ const itemsAccessor = useEntityList({ field, orderBy, limit, offset });
53
+ const columnsAccessor = useEntityListSubTree({ entities: columns });
54
+ const [data, methods] = useDynamicBoard({
55
+ columnEntities: columnsAccessor,
56
+ itemEntities: itemsAccessor,
57
+ columns,
58
+ sortableBy,
59
+ sortScope,
60
+ columnsSortableBy,
61
+ discriminationField
62
+ });
63
+ return /* @__PURE__ */ jsx(BoardMethodsContext.Provider, { value: methods, children: /* @__PURE__ */ jsx(BoardColumnsContext.Provider, { value: data.columns, children }) });
64
+ }, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {
65
+ const columnChildren = boardColumnsAnalyzer.processChildren(children, env);
66
+ const itemChildren = boardItemsAnalyzer.processChildren(children, env);
67
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
68
+ /* @__PURE__ */ jsxs(HasMany, { field, orderBy, limit, offset, children: [
69
+ /* @__PURE__ */ jsx(HasOne, { ...typeof discriminationField === "string" ? { field: discriminationField } : discriminationField }),
70
+ sortableBy && /* @__PURE__ */ jsx(Field, { ...typeof sortableBy === "string" ? { field: sortableBy } : sortableBy }),
71
+ itemChildren.map((it, index) => /* @__PURE__ */ jsx(Fragment$1, { children: it }, index))
72
+ ] }),
73
+ /* @__PURE__ */ jsxs(EntityListSubTree, { entities: columns, children: [
74
+ columnsSortableBy && /* @__PURE__ */ jsx(Field, { ...typeof columnsSortableBy === "string" ? { field: columnsSortableBy } : columnsSortableBy }),
75
+ columnChildren.map((it, index) => /* @__PURE__ */ jsx(Fragment$1, { children: it }, index))
76
+ ] })
77
+ ] });
78
+ });
79
+ const BoardQualifiedStatic = Component(({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {
80
+ const itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset });
81
+ const [data, methods] = useStaticBoard({
82
+ itemEntities: itemsAccessor,
83
+ columns,
84
+ sortableBy,
85
+ sortScope,
86
+ discriminationField
87
+ });
88
+ return /* @__PURE__ */ jsx(BoardMethodsContext.Provider, { value: methods, children: /* @__PURE__ */ jsx(BoardColumnsContext.Provider, { value: data.columns, children }) });
89
+ }, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {
90
+ const itemChildren = boardItemsAnalyzer.processChildren(children, env);
91
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(EntityListSubTree, { entities, orderBy, limit, offset, children: [
92
+ /* @__PURE__ */ jsx(Field, { ...typeof discriminationField === "string" ? { field: discriminationField } : discriminationField }),
93
+ sortableBy && /* @__PURE__ */ jsx(Field, { ...typeof sortableBy === "string" ? { field: sortableBy } : sortableBy }),
94
+ itemChildren.map((it, index) => /* @__PURE__ */ jsx(Fragment$1, { children: it }, index))
95
+ ] }) });
96
+ });
97
+ const RelativeStaticBoard = Component(({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {
98
+ const itemsAccessor = useEntityList({ field, orderBy, limit, offset });
99
+ const [data, methods] = useStaticBoard({
100
+ itemEntities: itemsAccessor,
101
+ columns,
102
+ sortableBy,
103
+ sortScope,
104
+ discriminationField
105
+ });
106
+ return /* @__PURE__ */ jsx(BoardMethodsContext.Provider, { value: methods, children: /* @__PURE__ */ jsx(BoardColumnsContext.Provider, { value: data.columns, children }) });
107
+ }, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {
108
+ const itemChildren = boardItemsAnalyzer.processChildren(children, env);
109
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(HasMany, { field, orderBy, limit, offset, children: [
110
+ /* @__PURE__ */ jsx(Field, { ...typeof discriminationField === "string" ? { field: discriminationField } : discriminationField }),
111
+ sortableBy && /* @__PURE__ */ jsx(Field, { ...typeof sortableBy === "string" ? { field: sortableBy } : sortableBy }),
112
+ itemChildren.map((it, index) => /* @__PURE__ */ jsx(Fragment$1, { children: it }, index))
113
+ ] }) });
114
+ });
115
+ export {
116
+ Board
117
+ };
118
+ //# sourceMappingURL=Board.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Board.js","sources":["../../../src/components/Board.tsx"],"sourcesContent":["import {\n\tComponent,\n\tEntityListSubTree,\n\tField,\n\tHasMany,\n\tHasOne,\n\tSugaredQualifiedEntityList,\n\tSugaredRelativeEntityList,\n\tSugaredRelativeSingleEntity,\n\tSugaredRelativeSingleField,\n\tuseEntityList,\n\tuseEntityListSubTree,\n} from '@contember/react-binding'\nimport { boardColumnsAnalyzer, boardItemsAnalyzer } from '../internal/boardAnalyzer'\nimport { Fragment, ReactNode } from 'react'\nimport { useDynamicBoard } from '../internal/useDynamicBoard'\nimport { useStaticBoard } from '../internal/useStaticBoard'\nimport { BoardColumnsContext, BoardMethodsContext } from '../contexts'\n\nexport type BoardProps =\n\t| BoardQualifiedDynamicProps\n\t| BoardRelativeDynamicProps\n\t| BoardQualifiedStaticProps\n\t| BoardRelativeStaticProps\n\n\nexport const Board = Component<BoardProps>(props => {\n\tif ('entities' in props) {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <BoardQualifiedStatic {...(props as BoardQualifiedStaticProps)} />\n\t\t} else {\n\t\t\treturn <BoardQualifiedDynamic {...(props as BoardQualifiedDynamicProps)} />\n\t\t}\n\t} else {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <RelativeStaticBoard {...(props as BoardRelativeStaticProps)} />\n\t\t} else {\n\t\t\treturn <RelativeDynamicBoard {...(props as BoardRelativeDynamicProps)} />\n\t\t}\n\t}\n})\n\nexport type BoardDynamicColumnsBindingProps = {\n\tcolumns: SugaredQualifiedEntityList['entities']\n\tcolumnsSortableBy?: string | SugaredRelativeSingleField\n\tdiscriminationField: string | SugaredRelativeSingleEntity\n}\n\nexport type BoardStaticColumnsBindingProps = {\n\tcolumns: {\n\t\tvalue: string,\n\t\tlabel: ReactNode\n\t}[]\n\tdiscriminationField: string | SugaredRelativeSingleField\n}\n\nexport type BoardCommonProps =\n\t& {\n\tchildren: ReactNode\n\tsortableBy?: string | SugaredRelativeSingleField\n\tsortScope?: 'column' | 'board'\n}\n\nexport type BoardQualifiedItemsProps =\n\t& Pick<SugaredQualifiedEntityList, 'entities' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardRelativeItemsProps =\n\t& Pick<SugaredRelativeEntityList, 'field' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardQualifiedDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedDynamic = Component<BoardQualifiedDynamicProps>(({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\n\tconst columnChildren = boardColumnsAnalyzer.processChildren(children, env)\n\tconst itemChildren = boardItemsAnalyzer.processChildren(children, env)\n\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardRelativeItemsProps\n\n\nconst RelativeDynamicBoard = Component<BoardRelativeDynamicProps>(({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\tconst columnChildren = boardColumnsAnalyzer.processChildren(children, env)\n\tconst itemChildren = boardItemsAnalyzer.processChildren(children, env)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\nexport type BoardQualifiedStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\n\nconst BoardQualifiedStatic = Component<BoardQualifiedStaticProps>(({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst itemChildren = boardItemsAnalyzer.processChildren(children, env)\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeStaticBoard = Component<BoardRelativeStaticProps>(({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst itemChildren = boardItemsAnalyzer.processChildren(children, env)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t</>)\n})\n"],"names":["Fragment"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const BoardColumn = ({}) => {
4
+ return null;
5
+ };
6
+ exports.BoardColumn = BoardColumn;
7
+ //# sourceMappingURL=BoardColumn.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardColumn.cjs","sources":["../../../src/components/BoardColumn.tsx"],"sourcesContent":["import { ReactNode } from 'react'\n\nexport const BoardColumn = ({}: {\n\tchildren: ReactNode\n}) => {\n\treturn null\n}\n"],"names":[],"mappings":";;AAEa,MAAA,cAAc,CAAC,CAAA,MAEtB;AACE,SAAA;AACR;;"}
@@ -0,0 +1,7 @@
1
+ const BoardColumn = ({}) => {
2
+ return null;
3
+ };
4
+ export {
5
+ BoardColumn
6
+ };
7
+ //# sourceMappingURL=BoardColumn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardColumn.js","sources":["../../../src/components/BoardColumn.tsx"],"sourcesContent":["import { ReactNode } from 'react'\n\nexport const BoardColumn = ({}: {\n\tchildren: ReactNode\n}) => {\n\treturn null\n}\n"],"names":[],"mappings":"AAEa,MAAA,cAAc,CAAC,CAAA,MAEtB;AACE,SAAA;AACR;"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const contexts = require("../contexts.cjs");
4
+ const BoardColumnLabel = () => {
5
+ const value = contexts.useBoardCurrentColumn().value;
6
+ return value && "label" in value ? value.label : null;
7
+ };
8
+ exports.BoardColumnLabel = BoardColumnLabel;
9
+ //# sourceMappingURL=BoardColumnLabel.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardColumnLabel.cjs","sources":["../../../src/components/BoardColumnLabel.tsx"],"sourcesContent":["import { useBoardCurrentColumn } from '../contexts'\n\nexport const BoardColumnLabel = () => {\n\tconst value = useBoardCurrentColumn().value\n\treturn value && 'label' in value ? value.label : null\n}\n"],"names":["useBoardCurrentColumn"],"mappings":";;;AAEO,MAAM,mBAAmB,MAAM;AAC/B,QAAA,QAAQA,+BAAwB,EAAA;AACtC,SAAO,SAAS,WAAW,QAAQ,MAAM,QAAQ;AAClD;;"}
@@ -0,0 +1,9 @@
1
+ import { useBoardCurrentColumn } from "../contexts.js";
2
+ const BoardColumnLabel = () => {
3
+ const value = useBoardCurrentColumn().value;
4
+ return value && "label" in value ? value.label : null;
5
+ };
6
+ export {
7
+ BoardColumnLabel
8
+ };
9
+ //# sourceMappingURL=BoardColumnLabel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardColumnLabel.js","sources":["../../../src/components/BoardColumnLabel.tsx"],"sourcesContent":["import { useBoardCurrentColumn } from '../contexts'\n\nexport const BoardColumnLabel = () => {\n\tconst value = useBoardCurrentColumn().value\n\treturn value && 'label' in value ? value.label : null\n}\n"],"names":[],"mappings":";AAEO,MAAM,mBAAmB,MAAM;AAC/B,QAAA,QAAQ,sBAAwB,EAAA;AACtC,SAAO,SAAS,WAAW,QAAQ,MAAM,QAAQ;AAClD;"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const binding = require("@contember/binding");
5
+ const reactBinding = require("@contember/react-binding");
6
+ const contexts = require("../contexts.cjs");
7
+ const BoardColumn = require("./BoardColumn.cjs");
8
+ const _const = require("../const.cjs");
9
+ const BoardEachColumn = ({ children }) => {
10
+ const columns = contexts.useBoardColumns();
11
+ return columns.map((column) => {
12
+ if (column.id === _const.BoardNullColumnPlaceholder) {
13
+ return null;
14
+ }
15
+ return /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardCurrentColumnContext.Provider, { value: column, children: column.value instanceof binding.EntityAccessor ? /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Entity, { accessor: column.value, children }) : children }, column.id);
16
+ });
17
+ };
18
+ BoardEachColumn.staticRender = ({ children }) => {
19
+ return /* @__PURE__ */ jsxRuntime.jsx(BoardColumn.BoardColumn, { children });
20
+ };
21
+ exports.BoardEachColumn = BoardEachColumn;
22
+ //# sourceMappingURL=BoardEachColumn.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardEachColumn.cjs","sources":["../../../src/components/BoardEachColumn.tsx"],"sourcesContent":["import { EntityAccessor } from '@contember/binding'\nimport { Entity } from '@contember/react-binding'\nimport { BoardCurrentColumnContext, useBoardColumns } from '../contexts'\nimport { ReactNode } from 'react'\nimport { BoardColumn } from './BoardColumn'\nimport { BoardNullColumnPlaceholder } from '../const'\n\nexport const BoardEachColumn = ({ children }: {\n\tchildren: ReactNode\n}) => {\n\tconst columns = useBoardColumns()\n\n\treturn columns.map(column => {\n\t\tif (column.id === BoardNullColumnPlaceholder) {\n\t\t\treturn null\n\t\t}\n\t\treturn (\n\t\t\t<BoardCurrentColumnContext.Provider value={column} key={column.id}>\n\t\t\t\t{column.value instanceof EntityAccessor ? (\n\t\t\t\t\t<Entity accessor={column.value}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</Entity>\n\t\t\t\t) : children}\n\t\t\t</BoardCurrentColumnContext.Provider>\n\t\t)\n\t})\n}\nBoardEachColumn.staticRender = ({ children }: { children: ReactNode }) => {\n\treturn <BoardColumn>{children}</BoardColumn>\n}\n"],"names":["useBoardColumns","BoardNullColumnPlaceholder","BoardCurrentColumnContext","EntityAccessor","jsx","Entity","BoardColumn"],"mappings":";;;;;;;;AAOO,MAAM,kBAAkB,CAAC,EAAE,eAE5B;AACL,QAAM,UAAUA,SAAAA;AAET,SAAA,QAAQ,IAAI,CAAU,WAAA;AACxB,QAAA,OAAO,OAAOC,mCAA4B;AACtC,aAAA;AAAA,IACR;AACA,0CACEC,mCAA0B,UAA1B,EAAmC,OAAO,QACzC,iBAAO,iBAAiBC,yBACvBC,2BAAAA,IAAAC,aAAAA,QAAA,EAAO,UAAU,OAAO,OACvB,UACF,IACG,SAAA,GALmD,OAAO,EAM/D;AAAA,EAAA,CAED;AACF;AACA,gBAAgB,eAAe,CAAC,EAAE,eAAwC;AAClE,SAAAD,+BAACE,YAAAA,eAAa,SAAS,CAAA;AAC/B;;"}
@@ -0,0 +1,22 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { EntityAccessor } from "@contember/binding";
3
+ import { Entity } from "@contember/react-binding";
4
+ import { useBoardColumns, BoardCurrentColumnContext } from "../contexts.js";
5
+ import { BoardColumn } from "./BoardColumn.js";
6
+ import { BoardNullColumnPlaceholder } from "../const.js";
7
+ const BoardEachColumn = ({ children }) => {
8
+ const columns = useBoardColumns();
9
+ return columns.map((column) => {
10
+ if (column.id === BoardNullColumnPlaceholder) {
11
+ return null;
12
+ }
13
+ return /* @__PURE__ */ jsx(BoardCurrentColumnContext.Provider, { value: column, children: column.value instanceof EntityAccessor ? /* @__PURE__ */ jsx(Entity, { accessor: column.value, children }) : children }, column.id);
14
+ });
15
+ };
16
+ BoardEachColumn.staticRender = ({ children }) => {
17
+ return /* @__PURE__ */ jsx(BoardColumn, { children });
18
+ };
19
+ export {
20
+ BoardEachColumn
21
+ };
22
+ //# sourceMappingURL=BoardEachColumn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardEachColumn.js","sources":["../../../src/components/BoardEachColumn.tsx"],"sourcesContent":["import { EntityAccessor } from '@contember/binding'\nimport { Entity } from '@contember/react-binding'\nimport { BoardCurrentColumnContext, useBoardColumns } from '../contexts'\nimport { ReactNode } from 'react'\nimport { BoardColumn } from './BoardColumn'\nimport { BoardNullColumnPlaceholder } from '../const'\n\nexport const BoardEachColumn = ({ children }: {\n\tchildren: ReactNode\n}) => {\n\tconst columns = useBoardColumns()\n\n\treturn columns.map(column => {\n\t\tif (column.id === BoardNullColumnPlaceholder) {\n\t\t\treturn null\n\t\t}\n\t\treturn (\n\t\t\t<BoardCurrentColumnContext.Provider value={column} key={column.id}>\n\t\t\t\t{column.value instanceof EntityAccessor ? (\n\t\t\t\t\t<Entity accessor={column.value}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</Entity>\n\t\t\t\t) : children}\n\t\t\t</BoardCurrentColumnContext.Provider>\n\t\t)\n\t})\n}\nBoardEachColumn.staticRender = ({ children }: { children: ReactNode }) => {\n\treturn <BoardColumn>{children}</BoardColumn>\n}\n"],"names":[],"mappings":";;;;;;AAOO,MAAM,kBAAkB,CAAC,EAAE,eAE5B;AACL,QAAM,UAAU;AAET,SAAA,QAAQ,IAAI,CAAU,WAAA;AACxB,QAAA,OAAO,OAAO,4BAA4B;AACtC,aAAA;AAAA,IACR;AACA,+BACE,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,iBAAO,iBAAiB,iBACvB,oBAAA,QAAA,EAAO,UAAU,OAAO,OACvB,UACF,IACG,SAAA,GALmD,OAAO,EAM/D;AAAA,EAAA,CAED;AACF;AACA,gBAAgB,eAAe,CAAC,EAAE,eAAwC;AAClE,SAAA,oBAAC,eAAa,SAAS,CAAA;AAC/B;"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const react = require("react");
5
+ const contexts = require("../contexts.cjs");
6
+ const reactBinding = require("@contember/react-binding");
7
+ const BoardItem = require("./BoardItem.cjs");
8
+ const BoardEachItem = ({ children }) => {
9
+ const currentColumn = contexts.useBoardCurrentColumn();
10
+ return currentColumn.items.map((item, index) => {
11
+ return /* @__PURE__ */ jsxRuntime.jsx(
12
+ BoardEachItemInner,
13
+ {
14
+ item,
15
+ column: currentColumn,
16
+ children
17
+ },
18
+ item.id
19
+ );
20
+ });
21
+ };
22
+ BoardEachItem.staticRender = ({ children }) => {
23
+ return /* @__PURE__ */ jsxRuntime.jsx(BoardItem.BoardItem, { children });
24
+ };
25
+ const BoardEachItemInner = ({ children, item, column }) => {
26
+ const itemWithColumn = react.useMemo(() => ({
27
+ ...item,
28
+ column
29
+ }), [item, column]);
30
+ return /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardCurrentItemContext.Provider, { value: itemWithColumn, children: /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Entity, { accessor: item.value, children }) }, item.id);
31
+ };
32
+ exports.BoardEachItem = BoardEachItem;
33
+ //# sourceMappingURL=BoardEachItem.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardEachItem.cjs","sources":["../../../src/components/BoardEachItem.tsx"],"sourcesContent":["import { ReactNode, useMemo } from 'react'\nimport { BoardCurrentItemContext, useBoardCurrentColumn } from '../contexts'\nimport { Entity } from '@contember/react-binding'\nimport { BoardItem } from './BoardItem'\nimport { BoardColumnNode, BoardItemNode } from '../types'\n\nexport const BoardEachItem = ({ children }: {\n\tchildren: ReactNode\n}) => {\n\tconst currentColumn = useBoardCurrentColumn()\n\n\treturn currentColumn.items.map((item, index) => {\n\t\treturn (\n\t\t\t<BoardEachItemInner\n\t\t\t\tkey={item.id}\n\t\t\t\titem={item}\n\t\t\t\tcolumn={currentColumn}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</BoardEachItemInner>\n\t\t)\n\t})\n}\nBoardEachItem.staticRender = ({ children }: { children: ReactNode }) => {\n\treturn <BoardItem>{children}</BoardItem>\n}\n\nconst BoardEachItemInner = ({ children, item, column }: {\n\tchildren: ReactNode\n\tcolumn: BoardColumnNode\n\titem: BoardItemNode\n\n}) => {\n\tconst itemWithColumn = useMemo(() => ({\n\t\t...item,\n\t\tcolumn,\n\t}), [item, column])\n\n\treturn (\n\t\t<BoardCurrentItemContext.Provider value={itemWithColumn} key={item.id}>\n\t\t\t<Entity accessor={item.value}>\n\t\t\t\t{children}\n\t\t\t</Entity>\n\t\t</BoardCurrentItemContext.Provider>\n\t)\n}\n"],"names":["useBoardCurrentColumn","jsx","BoardItem","useMemo","BoardCurrentItemContext","Entity"],"mappings":";;;;;;;AAMO,MAAM,gBAAgB,CAAC,EAAE,eAE1B;AACL,QAAM,gBAAgBA,SAAAA;AAEtB,SAAO,cAAc,MAAM,IAAI,CAAC,MAAM,UAAU;AAE9C,WAAAC,2BAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QAEA;AAAA,QACA,QAAQ;AAAA,QAEP;AAAA,MAAA;AAAA,MAJI,KAAK;AAAA,IAAA;AAAA,EAKX,CAED;AACF;AACA,cAAc,eAAe,CAAC,EAAE,eAAwC;AAChE,SAAAA,+BAACC,UAAAA,aAAW,SAAS,CAAA;AAC7B;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,MAAM,aAKxC;AACC,QAAA,iBAAiBC,MAAAA,QAAQ,OAAO;AAAA,IACrC,GAAG;AAAA,IACH;AAAA,EACG,IAAA,CAAC,MAAM,MAAM,CAAC;AAElB,SACEF,2BAAAA,IAAAG,SAAAA,wBAAwB,UAAxB,EAAiC,OAAO,gBACxC,UAAAH,+BAACI,aAAAA,QAAO,EAAA,UAAU,KAAK,OACrB,SACF,CAAA,KAH6D,KAAK,EAInE;AAEF;;"}
@@ -0,0 +1,33 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useMemo } from "react";
3
+ import { useBoardCurrentColumn, BoardCurrentItemContext } from "../contexts.js";
4
+ import { Entity } from "@contember/react-binding";
5
+ import { BoardItem } from "./BoardItem.js";
6
+ const BoardEachItem = ({ children }) => {
7
+ const currentColumn = useBoardCurrentColumn();
8
+ return currentColumn.items.map((item, index) => {
9
+ return /* @__PURE__ */ jsx(
10
+ BoardEachItemInner,
11
+ {
12
+ item,
13
+ column: currentColumn,
14
+ children
15
+ },
16
+ item.id
17
+ );
18
+ });
19
+ };
20
+ BoardEachItem.staticRender = ({ children }) => {
21
+ return /* @__PURE__ */ jsx(BoardItem, { children });
22
+ };
23
+ const BoardEachItemInner = ({ children, item, column }) => {
24
+ const itemWithColumn = useMemo(() => ({
25
+ ...item,
26
+ column
27
+ }), [item, column]);
28
+ return /* @__PURE__ */ jsx(BoardCurrentItemContext.Provider, { value: itemWithColumn, children: /* @__PURE__ */ jsx(Entity, { accessor: item.value, children }) }, item.id);
29
+ };
30
+ export {
31
+ BoardEachItem
32
+ };
33
+ //# sourceMappingURL=BoardEachItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardEachItem.js","sources":["../../../src/components/BoardEachItem.tsx"],"sourcesContent":["import { ReactNode, useMemo } from 'react'\nimport { BoardCurrentItemContext, useBoardCurrentColumn } from '../contexts'\nimport { Entity } from '@contember/react-binding'\nimport { BoardItem } from './BoardItem'\nimport { BoardColumnNode, BoardItemNode } from '../types'\n\nexport const BoardEachItem = ({ children }: {\n\tchildren: ReactNode\n}) => {\n\tconst currentColumn = useBoardCurrentColumn()\n\n\treturn currentColumn.items.map((item, index) => {\n\t\treturn (\n\t\t\t<BoardEachItemInner\n\t\t\t\tkey={item.id}\n\t\t\t\titem={item}\n\t\t\t\tcolumn={currentColumn}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</BoardEachItemInner>\n\t\t)\n\t})\n}\nBoardEachItem.staticRender = ({ children }: { children: ReactNode }) => {\n\treturn <BoardItem>{children}</BoardItem>\n}\n\nconst BoardEachItemInner = ({ children, item, column }: {\n\tchildren: ReactNode\n\tcolumn: BoardColumnNode\n\titem: BoardItemNode\n\n}) => {\n\tconst itemWithColumn = useMemo(() => ({\n\t\t...item,\n\t\tcolumn,\n\t}), [item, column])\n\n\treturn (\n\t\t<BoardCurrentItemContext.Provider value={itemWithColumn} key={item.id}>\n\t\t\t<Entity accessor={item.value}>\n\t\t\t\t{children}\n\t\t\t</Entity>\n\t\t</BoardCurrentItemContext.Provider>\n\t)\n}\n"],"names":[],"mappings":";;;;;AAMO,MAAM,gBAAgB,CAAC,EAAE,eAE1B;AACL,QAAM,gBAAgB;AAEtB,SAAO,cAAc,MAAM,IAAI,CAAC,MAAM,UAAU;AAE9C,WAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QAEA;AAAA,QACA,QAAQ;AAAA,QAEP;AAAA,MAAA;AAAA,MAJI,KAAK;AAAA,IAAA;AAAA,EAKX,CAED;AACF;AACA,cAAc,eAAe,CAAC,EAAE,eAAwC;AAChE,SAAA,oBAAC,aAAW,SAAS,CAAA;AAC7B;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,MAAM,aAKxC;AACC,QAAA,iBAAiB,QAAQ,OAAO;AAAA,IACrC,GAAG;AAAA,IACH;AAAA,EACG,IAAA,CAAC,MAAM,MAAM,CAAC;AAElB,SACE,oBAAA,wBAAwB,UAAxB,EAAiC,OAAO,gBACxC,UAAA,oBAAC,QAAO,EAAA,UAAU,KAAK,OACrB,SACF,CAAA,KAH6D,KAAK,EAInE;AAEF;"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const BoardItem = ({}) => {
4
+ return null;
5
+ };
6
+ BoardItem.staticRender = () => null;
7
+ exports.BoardItem = BoardItem;
8
+ //# sourceMappingURL=BoardItem.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardItem.cjs","sources":["../../../src/components/BoardItem.tsx"],"sourcesContent":["import { ReactNode } from 'react'\n\nexport const BoardItem = ({}: {\n\tchildren: ReactNode\n}) => {\n\treturn null\n}\nBoardItem.staticRender = () => null\n"],"names":[],"mappings":";;AAEa,MAAA,YAAY,CAAC,CAAA,MAEpB;AACE,SAAA;AACR;AACA,UAAU,eAAe,MAAM;;"}
@@ -0,0 +1,8 @@
1
+ const BoardItem = ({}) => {
2
+ return null;
3
+ };
4
+ BoardItem.staticRender = () => null;
5
+ export {
6
+ BoardItem
7
+ };
8
+ //# sourceMappingURL=BoardItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardItem.js","sources":["../../../src/components/BoardItem.tsx"],"sourcesContent":["import { ReactNode } from 'react'\n\nexport const BoardItem = ({}: {\n\tchildren: ReactNode\n}) => {\n\treturn null\n}\nBoardItem.staticRender = () => null\n"],"names":[],"mappings":"AAEa,MAAA,YAAY,CAAC,CAAA,MAEpB;AACE,SAAA;AACR;AACA,UAAU,eAAe,MAAM;"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const contexts = require("../contexts.cjs");
5
+ const _const = require("../const.cjs");
6
+ const BoardNullColumn = ({ children, hideEmpty }) => {
7
+ const column = contexts.useBoardColumns().find((it) => it.id === _const.BoardNullColumnPlaceholder);
8
+ if (!column || hideEmpty && column.items.length === 0) {
9
+ return null;
10
+ }
11
+ return /* @__PURE__ */ jsxRuntime.jsx(contexts.BoardCurrentColumnContext.Provider, { value: column, children });
12
+ };
13
+ exports.BoardNullColumn = BoardNullColumn;
14
+ //# sourceMappingURL=BoardNullColumn.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardNullColumn.cjs","sources":["../../../src/components/BoardNullColumn.tsx"],"sourcesContent":["import { BoardCurrentColumnContext, useBoardColumns } from '../contexts'\nimport { ReactNode } from 'react'\nimport { BoardNullColumnPlaceholder } from '../const'\n\nexport type BoardNullColumnProps = {\n\tchildren: ReactNode\n\thideEmpty?: boolean\n};\nexport const BoardNullColumn = ({ children, hideEmpty }: BoardNullColumnProps) => {\n\tconst column = useBoardColumns().find(it => it.id === BoardNullColumnPlaceholder)\n\tif (!column || (hideEmpty && column.items.length === 0)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<BoardCurrentColumnContext.Provider value={column}>\n\t\t\t{children}\n\t\t</BoardCurrentColumnContext.Provider>\n\t)\n}\n"],"names":["useBoardColumns","BoardNullColumnPlaceholder","BoardCurrentColumnContext"],"mappings":";;;;;AAQO,MAAM,kBAAkB,CAAC,EAAE,UAAU,gBAAsC;AACjF,QAAM,SAASA,SAAgB,gBAAA,EAAE,KAAK,CAAM,OAAA,GAAG,OAAOC,OAAAA,0BAA0B;AAChF,MAAI,CAAC,UAAW,aAAa,OAAO,MAAM,WAAW,GAAI;AACjD,WAAA;AAAA,EACR;AAEA,wCACEC,SAAAA,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,SACF,CAAA;AAEF;;"}
@@ -0,0 +1,14 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useBoardColumns, BoardCurrentColumnContext } from "../contexts.js";
3
+ import { BoardNullColumnPlaceholder } from "../const.js";
4
+ const BoardNullColumn = ({ children, hideEmpty }) => {
5
+ const column = useBoardColumns().find((it) => it.id === BoardNullColumnPlaceholder);
6
+ if (!column || hideEmpty && column.items.length === 0) {
7
+ return null;
8
+ }
9
+ return /* @__PURE__ */ jsx(BoardCurrentColumnContext.Provider, { value: column, children });
10
+ };
11
+ export {
12
+ BoardNullColumn
13
+ };
14
+ //# sourceMappingURL=BoardNullColumn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoardNullColumn.js","sources":["../../../src/components/BoardNullColumn.tsx"],"sourcesContent":["import { BoardCurrentColumnContext, useBoardColumns } from '../contexts'\nimport { ReactNode } from 'react'\nimport { BoardNullColumnPlaceholder } from '../const'\n\nexport type BoardNullColumnProps = {\n\tchildren: ReactNode\n\thideEmpty?: boolean\n};\nexport const BoardNullColumn = ({ children, hideEmpty }: BoardNullColumnProps) => {\n\tconst column = useBoardColumns().find(it => it.id === BoardNullColumnPlaceholder)\n\tif (!column || (hideEmpty && column.items.length === 0)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<BoardCurrentColumnContext.Provider value={column}>\n\t\t\t{children}\n\t\t</BoardCurrentColumnContext.Provider>\n\t)\n}\n"],"names":[],"mappings":";;;AAQO,MAAM,kBAAkB,CAAC,EAAE,UAAU,gBAAsC;AACjF,QAAM,SAAS,gBAAgB,EAAE,KAAK,CAAM,OAAA,GAAG,OAAO,0BAA0B;AAChF,MAAI,CAAC,UAAW,aAAa,OAAO,MAAM,WAAW,GAAI;AACjD,WAAA;AAAA,EACR;AAEA,6BACE,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,SACF,CAAA;AAEF;"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const reactUtils = require("@contember/react-utils");
4
+ const _BoardMethodsContext = reactUtils.createRequiredContext("BoardMethodsContext");
5
+ const BoardMethodsContext = _BoardMethodsContext[0];
6
+ const useBoardMethods = _BoardMethodsContext[1];
7
+ const BoardColumnsContext_ = reactUtils.createRequiredContext("BoardColumnsContext");
8
+ const BoardColumnsContext = BoardColumnsContext_[0];
9
+ const useBoardColumns = BoardColumnsContext_[1];
10
+ const _BoardColumnContext = reactUtils.createRequiredContext("BoardCurrentColumnContext");
11
+ const BoardCurrentColumnContext = _BoardColumnContext[0];
12
+ const useBoardCurrentColumn = _BoardColumnContext[1];
13
+ const BoardCurrentItemContext_ = reactUtils.createRequiredContext("BoardCurrentItemContext");
14
+ const BoardCurrentItemContext = BoardCurrentItemContext_[0];
15
+ const useBoardCurrentItem = BoardCurrentItemContext_[1];
16
+ exports.BoardColumnsContext = BoardColumnsContext;
17
+ exports.BoardCurrentColumnContext = BoardCurrentColumnContext;
18
+ exports.BoardCurrentItemContext = BoardCurrentItemContext;
19
+ exports.BoardMethodsContext = BoardMethodsContext;
20
+ exports.useBoardColumns = useBoardColumns;
21
+ exports.useBoardCurrentColumn = useBoardCurrentColumn;
22
+ exports.useBoardCurrentItem = useBoardCurrentItem;
23
+ exports.useBoardMethods = useBoardMethods;
24
+ //# sourceMappingURL=contexts.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contexts.cjs","sources":["../../src/contexts.ts"],"sourcesContent":["import { createRequiredContext } from '@contember/react-utils'\nimport { BoardColumnNode, BoardColumnValue, BoardItemNode, BoardMethods } from './types'\n\nconst _BoardMethodsContext = createRequiredContext<BoardMethods<any>>('BoardMethodsContext')\n/** @internal */\nexport const BoardMethodsContext = _BoardMethodsContext[0]\nexport const useBoardMethods = _BoardMethodsContext[1] as <T extends BoardColumnValue = BoardColumnValue>() => BoardMethods<T>\n\n\nconst BoardColumnsContext_ = createRequiredContext<BoardColumnNode[]>('BoardColumnsContext')\n/** @internal */\nexport const BoardColumnsContext = BoardColumnsContext_[0]\nexport const useBoardColumns = BoardColumnsContext_[1] as <T extends BoardColumnValue = BoardColumnValue>() => BoardColumnNode<T>[]\n\nconst _BoardColumnContext = createRequiredContext<BoardColumnNode>('BoardCurrentColumnContext')\n/** @internal*/\nexport const BoardCurrentColumnContext = _BoardColumnContext[0]\nexport const useBoardCurrentColumn = _BoardColumnContext[1]\n\nconst BoardCurrentItemContext_ = createRequiredContext<BoardItemNode & { column: BoardColumnNode }>('BoardCurrentItemContext')\n/** @internal*/\nexport const BoardCurrentItemContext = BoardCurrentItemContext_[0]\nexport const useBoardCurrentItem = BoardCurrentItemContext_[1]\n"],"names":["createRequiredContext"],"mappings":";;;AAGA,MAAM,uBAAuBA,WAAAA,sBAAyC,qBAAqB;AAE9E,MAAA,sBAAsB,qBAAqB,CAAC;AAC5C,MAAA,kBAAkB,qBAAqB,CAAC;AAGrD,MAAM,uBAAuBA,WAAAA,sBAAyC,qBAAqB;AAE9E,MAAA,sBAAsB,qBAAqB,CAAC;AAC5C,MAAA,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,sBAAsBA,WAAAA,sBAAuC,2BAA2B;AAEjF,MAAA,4BAA4B,oBAAoB,CAAC;AACjD,MAAA,wBAAwB,oBAAoB,CAAC;AAE1D,MAAM,2BAA2BA,WAAAA,sBAAmE,yBAAyB;AAEhH,MAAA,0BAA0B,yBAAyB,CAAC;AACpD,MAAA,sBAAsB,yBAAyB,CAAC;;;;;;;;;"}