@contember/react-board 2.1.0-rc.3 → 2.2.0-alpha.10

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 (95) hide show
  1. package/dist/development/src/components/Board.cjs.map +1 -1
  2. package/dist/development/src/components/Board.js.map +1 -1
  3. package/dist/development/src/components/BoardColumnLabel.cjs.map +1 -1
  4. package/dist/development/src/components/BoardColumnLabel.js.map +1 -1
  5. package/dist/development/src/components/BoardEachColumn.cjs.map +1 -1
  6. package/dist/development/src/components/BoardEachColumn.js.map +1 -1
  7. package/dist/development/src/components/BoardEachItem.cjs.map +1 -1
  8. package/dist/development/src/components/BoardEachItem.js.map +1 -1
  9. package/dist/development/src/components/BoardNullColumn.cjs.map +1 -1
  10. package/dist/development/src/components/BoardNullColumn.js.map +1 -1
  11. package/dist/development/src/contexts.cjs.map +1 -1
  12. package/dist/development/src/contexts.js.map +1 -1
  13. package/dist/development/src/internal/boardAnalyzer.cjs.map +1 -1
  14. package/dist/development/src/internal/boardAnalyzer.js.map +1 -1
  15. package/dist/development/src/internal/useBoardItemsMethods.cjs.map +1 -1
  16. package/dist/development/src/internal/useBoardItemsMethods.js.map +1 -1
  17. package/dist/development/src/internal/useCreateBoardColumns.cjs.map +1 -1
  18. package/dist/development/src/internal/useCreateBoardColumns.js.map +1 -1
  19. package/dist/development/src/internal/useDynamicBoard.cjs.map +1 -1
  20. package/dist/development/src/internal/useDynamicBoard.js.map +1 -1
  21. package/dist/development/src/internal/useStaticBoard.cjs.map +1 -1
  22. package/dist/development/src/internal/useStaticBoard.js.map +1 -1
  23. package/dist/production/src/components/Board.cjs.map +1 -1
  24. package/dist/production/src/components/Board.js.map +1 -1
  25. package/dist/production/src/components/BoardColumnLabel.cjs.map +1 -1
  26. package/dist/production/src/components/BoardColumnLabel.js.map +1 -1
  27. package/dist/production/src/components/BoardEachColumn.cjs.map +1 -1
  28. package/dist/production/src/components/BoardEachColumn.js.map +1 -1
  29. package/dist/production/src/components/BoardEachItem.cjs.map +1 -1
  30. package/dist/production/src/components/BoardEachItem.js.map +1 -1
  31. package/dist/production/src/components/BoardNullColumn.cjs.map +1 -1
  32. package/dist/production/src/components/BoardNullColumn.js.map +1 -1
  33. package/dist/production/src/contexts.cjs.map +1 -1
  34. package/dist/production/src/contexts.js.map +1 -1
  35. package/dist/production/src/internal/boardAnalyzer.cjs.map +1 -1
  36. package/dist/production/src/internal/boardAnalyzer.js.map +1 -1
  37. package/dist/production/src/internal/useBoardItemsMethods.cjs.map +1 -1
  38. package/dist/production/src/internal/useBoardItemsMethods.js.map +1 -1
  39. package/dist/production/src/internal/useCreateBoardColumns.cjs.map +1 -1
  40. package/dist/production/src/internal/useCreateBoardColumns.js.map +1 -1
  41. package/dist/production/src/internal/useDynamicBoard.cjs.map +1 -1
  42. package/dist/production/src/internal/useDynamicBoard.js.map +1 -1
  43. package/dist/production/src/internal/useStaticBoard.cjs.map +1 -1
  44. package/dist/production/src/internal/useStaticBoard.js.map +1 -1
  45. package/dist/types/components/BoardColumn.d.ts.map +1 -1
  46. package/dist/types/components/BoardEachColumn.d.ts +7 -7
  47. package/dist/types/components/BoardEachColumn.d.ts.map +1 -1
  48. package/dist/types/components/BoardEachItem.d.ts +7 -7
  49. package/dist/types/components/BoardEachItem.d.ts.map +1 -1
  50. package/dist/types/components/BoardItem.d.ts +6 -6
  51. package/dist/types/components/BoardItem.d.ts.map +1 -1
  52. package/dist/types/components/BoardNullColumn.d.ts.map +1 -1
  53. package/dist/types/components/index.d.ts +7 -7
  54. package/dist/types/components/index.d.ts.map +1 -1
  55. package/dist/types/contexts.d.ts +1 -1
  56. package/dist/types/contexts.d.ts.map +1 -1
  57. package/dist/types/index.d.ts +4 -4
  58. package/dist/types/index.d.ts.map +1 -1
  59. package/dist/types/internal/boardAnalyzer.d.ts +1 -1
  60. package/dist/types/internal/useBoardItemsMethods.d.ts +2 -2
  61. package/dist/types/internal/useBoardItemsMethods.d.ts.map +1 -1
  62. package/dist/types/internal/useCreateBoardColumns.d.ts +2 -2
  63. package/dist/types/internal/useCreateBoardColumns.d.ts.map +1 -1
  64. package/dist/types/internal/useDynamicBoard.d.ts +3 -3
  65. package/dist/types/internal/useDynamicBoard.d.ts.map +1 -1
  66. package/dist/types/internal/useGroupItemsByColumn.d.ts.map +1 -1
  67. package/dist/types/internal/useStaticBoard.d.ts +3 -3
  68. package/dist/types/internal/useStaticBoard.d.ts.map +1 -1
  69. package/dist/types/tsconfig.tsbuildinfo +1 -1
  70. package/dist/types/types/BoardColumnNode.d.ts +1 -1
  71. package/dist/types/types/BoardColumnNode.d.ts.map +1 -1
  72. package/dist/types/types/BoardData.d.ts +1 -1
  73. package/dist/types/types/BoardData.d.ts.map +1 -1
  74. package/dist/types/types/BoardMethods.d.ts +1 -1
  75. package/dist/types/types/BoardMethods.d.ts.map +1 -1
  76. package/dist/types/types/index.d.ts +3 -3
  77. package/dist/types/types/index.d.ts.map +1 -1
  78. package/package.json +4 -4
  79. package/src/components/Board.tsx +4 -4
  80. package/src/components/BoardColumnLabel.tsx +1 -1
  81. package/src/components/BoardEachColumn.tsx +3 -3
  82. package/src/components/BoardEachItem.tsx +3 -3
  83. package/src/components/BoardNullColumn.tsx +2 -2
  84. package/src/components/index.ts +7 -7
  85. package/src/contexts.ts +1 -1
  86. package/src/index.ts +4 -4
  87. package/src/internal/boardAnalyzer.ts +2 -2
  88. package/src/internal/useBoardItemsMethods.ts +3 -3
  89. package/src/internal/useCreateBoardColumns.ts +3 -3
  90. package/src/internal/useDynamicBoard.ts +7 -7
  91. package/src/internal/useStaticBoard.ts +6 -6
  92. package/src/types/BoardColumnNode.ts +1 -1
  93. package/src/types/BoardData.ts +1 -1
  94. package/src/types/BoardMethods.ts +1 -1
  95. package/src/types/index.ts +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"Board.cjs","sources":["../../../../../packages/react-board/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 { boardAnalyzer } 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\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\tchildren: ReactNode\n\tsortableBy?: string | SugaredRelativeSingleField\n\tsortScope?: 'column' | 'board'\n}\n\nexport type BoardQualifiedItemsProps = Pick<SugaredQualifiedEntityList, 'entities' | 'orderBy' | 'limit' | 'offset'>\n\nexport type BoardRelativeItemsProps = Pick<SugaredRelativeEntityList, 'field' | 'orderBy' | 'limit' | 'offset'>\n\nexport type BoardQualifiedDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedDynamic = Component<BoardQualifiedDynamicProps>(\n\t({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\t\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\t\tconst [data, methods] = useDynamicBoard({\n\t\t\tcolumnEntities: columnsAccessor,\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tcolumnsSortableBy,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t\t<EntityListSubTree entities={columns}>\n\t\t\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\n\nexport type BoardRelativeDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeDynamicBoard = Component<BoardRelativeDynamicProps>(\n\t({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\t\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\t\tconst [data, methods] = useDynamicBoard({\n\t\t\tcolumnEntities: columnsAccessor,\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tcolumnsSortableBy,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</HasMany>\n\t\t\t\t<EntityListSubTree entities={columns}>\n\t\t\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\nexport type BoardQualifiedStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedStatic = Component<BoardQualifiedStaticProps>(\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\t\tconst [data, methods] = useStaticBoard({\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\n\nexport type BoardRelativeStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeStaticBoard = Component<BoardRelativeStaticProps>(\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\t\tconst [data, methods] = useStaticBoard({\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</HasMany>\n\t\t\t</>\n\t\t)\n\t},\n)\n"],"names":["Component","jsxDEV","this","useEntityListSubTree","useDynamicBoard","BoardMethodsContext","BoardColumnsContext","boardAnalyzer","Fragment","EntityListSubTree","HasOne","Field","useEntityList","HasMany","useStaticBoard"],"mappings":"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"}
1
+ {"version":3,"file":"Board.cjs","sources":["../../../../../packages/react-board/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 { boardAnalyzer } from '../internal/boardAnalyzer.js'\nimport { Fragment, ReactNode } from 'react'\nimport { useDynamicBoard } from '../internal/useDynamicBoard.js'\nimport { useStaticBoard } from '../internal/useStaticBoard.js'\nimport { BoardColumnsContext, BoardMethodsContext } from '../contexts.js'\n\nexport type BoardProps =\n\t| BoardQualifiedDynamicProps\n\t| BoardRelativeDynamicProps\n\t| BoardQualifiedStaticProps\n\t| BoardRelativeStaticProps\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\tchildren: ReactNode\n\tsortableBy?: string | SugaredRelativeSingleField\n\tsortScope?: 'column' | 'board'\n}\n\nexport type BoardQualifiedItemsProps = Pick<SugaredQualifiedEntityList, 'entities' | 'orderBy' | 'limit' | 'offset'>\n\nexport type BoardRelativeItemsProps = Pick<SugaredRelativeEntityList, 'field' | 'orderBy' | 'limit' | 'offset'>\n\nexport type BoardQualifiedDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedDynamic = Component<BoardQualifiedDynamicProps>(\n\t({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\t\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\t\tconst [data, methods] = useDynamicBoard({\n\t\t\tcolumnEntities: columnsAccessor,\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tcolumnsSortableBy,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t\t<EntityListSubTree entities={columns}>\n\t\t\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\n\nexport type BoardRelativeDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeDynamicBoard = Component<BoardRelativeDynamicProps>(\n\t({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\t\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\t\tconst [data, methods] = useDynamicBoard({\n\t\t\tcolumnEntities: columnsAccessor,\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tcolumnsSortableBy,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</HasMany>\n\t\t\t\t<EntityListSubTree entities={columns}>\n\t\t\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\nexport type BoardQualifiedStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedStatic = Component<BoardQualifiedStaticProps>(\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\t\tconst [data, methods] = useStaticBoard({\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\n\nexport type BoardRelativeStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeStaticBoard = Component<BoardRelativeStaticProps>(\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\t\tconst [data, methods] = useStaticBoard({\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</HasMany>\n\t\t\t</>\n\t\t)\n\t},\n)\n"],"names":["Component","jsxDEV","this","useEntityListSubTree","useDynamicBoard","BoardMethodsContext","BoardColumnsContext","boardAnalyzer","Fragment","EntityListSubTree","HasOne","Field","useEntityList","HasMany","useStaticBoard"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Board.js","sources":["../../../../../packages/react-board/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 { boardAnalyzer } 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\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\tchildren: ReactNode\n\tsortableBy?: string | SugaredRelativeSingleField\n\tsortScope?: 'column' | 'board'\n}\n\nexport type BoardQualifiedItemsProps = Pick<SugaredQualifiedEntityList, 'entities' | 'orderBy' | 'limit' | 'offset'>\n\nexport type BoardRelativeItemsProps = Pick<SugaredRelativeEntityList, 'field' | 'orderBy' | 'limit' | 'offset'>\n\nexport type BoardQualifiedDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedDynamic = Component<BoardQualifiedDynamicProps>(\n\t({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\t\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\t\tconst [data, methods] = useDynamicBoard({\n\t\t\tcolumnEntities: columnsAccessor,\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tcolumnsSortableBy,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t\t<EntityListSubTree entities={columns}>\n\t\t\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\n\nexport type BoardRelativeDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeDynamicBoard = Component<BoardRelativeDynamicProps>(\n\t({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\t\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\t\tconst [data, methods] = useDynamicBoard({\n\t\t\tcolumnEntities: columnsAccessor,\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tcolumnsSortableBy,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</HasMany>\n\t\t\t\t<EntityListSubTree entities={columns}>\n\t\t\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\nexport type BoardQualifiedStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedStatic = Component<BoardQualifiedStaticProps>(\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\t\tconst [data, methods] = useStaticBoard({\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\n\nexport type BoardRelativeStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeStaticBoard = Component<BoardRelativeStaticProps>(\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\t\tconst [data, methods] = useStaticBoard({\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</HasMany>\n\t\t\t</>\n\t\t)\n\t},\n)\n"],"names":["this","Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"Board.js","sources":["../../../../../packages/react-board/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 { boardAnalyzer } from '../internal/boardAnalyzer.js'\nimport { Fragment, ReactNode } from 'react'\nimport { useDynamicBoard } from '../internal/useDynamicBoard.js'\nimport { useStaticBoard } from '../internal/useStaticBoard.js'\nimport { BoardColumnsContext, BoardMethodsContext } from '../contexts.js'\n\nexport type BoardProps =\n\t| BoardQualifiedDynamicProps\n\t| BoardRelativeDynamicProps\n\t| BoardQualifiedStaticProps\n\t| BoardRelativeStaticProps\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\tchildren: ReactNode\n\tsortableBy?: string | SugaredRelativeSingleField\n\tsortScope?: 'column' | 'board'\n}\n\nexport type BoardQualifiedItemsProps = Pick<SugaredQualifiedEntityList, 'entities' | 'orderBy' | 'limit' | 'offset'>\n\nexport type BoardRelativeItemsProps = Pick<SugaredRelativeEntityList, 'field' | 'orderBy' | 'limit' | 'offset'>\n\nexport type BoardQualifiedDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedDynamic = Component<BoardQualifiedDynamicProps>(\n\t({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\t\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\t\tconst [data, methods] = useDynamicBoard({\n\t\t\tcolumnEntities: columnsAccessor,\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tcolumnsSortableBy,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t\t<EntityListSubTree entities={columns}>\n\t\t\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\n\nexport type BoardRelativeDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeDynamicBoard = Component<BoardRelativeDynamicProps>(\n\t({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\t\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\t\tconst [data, methods] = useDynamicBoard({\n\t\t\tcolumnEntities: columnsAccessor,\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tcolumnsSortableBy,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</HasMany>\n\t\t\t\t<EntityListSubTree entities={columns}>\n\t\t\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\nexport type BoardQualifiedStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedStatic = Component<BoardQualifiedStaticProps>(\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\t\tconst [data, methods] = useStaticBoard({\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</EntityListSubTree>\n\t\t\t</>\n\t\t)\n\t},\n)\n\nexport type BoardRelativeStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeStaticBoard = Component<BoardRelativeStaticProps>(\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\t\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\t\tconst [data, methods] = useStaticBoard({\n\t\t\titemEntities: itemsAccessor,\n\t\t\tcolumns,\n\t\t\tsortableBy,\n\t\t\tsortScope,\n\t\t\tdiscriminationField,\n\t\t})\n\t\treturn (\n\t\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardColumnsContext.Provider>\n\t\t\t</BoardMethodsContext.Provider>\n\t\t)\n\t},\n\t({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\t\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\t\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t\t\t</HasMany>\n\t\t\t</>\n\t\t)\n\t},\n)\n"],"names":["this","Fragment"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"BoardColumnLabel.cjs","sources":["../../../../../packages/react-board/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","jsxDEV","Fragment","this"],"mappings":";;;;AAEO,MAAM,mBAAmB,MAAM;AACrC,QAAM,QAAQA,SAAAA,wBAAwB;AACtC,SAAO,SAAS,WAAW,QAAQC,8BAAAA,OAAAC,cAAAA,UAAA,EAAG,gBAAM,SAAT,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAC,MAAe,IAAM;AACzD;;"}
1
+ {"version":3,"file":"BoardColumnLabel.cjs","sources":["../../../../../packages/react-board/src/components/BoardColumnLabel.tsx"],"sourcesContent":["import { useBoardCurrentColumn } from '../contexts.js'\n\nexport const BoardColumnLabel = () => {\n\tconst value = useBoardCurrentColumn().value\n\treturn value && 'label' in value ? <>{value.label}</> : null\n}\n"],"names":["useBoardCurrentColumn","jsxDEV","Fragment","this"],"mappings":";;;;AAEO,MAAM,mBAAmB,MAAM;AACrC,QAAM,QAAQA,SAAAA,wBAAwB;AACtC,SAAO,SAAS,WAAW,QAAQC,8BAAAA,OAAAC,cAAAA,UAAA,EAAG,gBAAM,SAAT,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAC,MAAe,IAAM;AACzD;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"BoardColumnLabel.js","sources":["../../../../../packages/react-board/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":["this"],"mappings":";;AAEO,MAAM,mBAAmB,MAAM;AACrC,QAAM,QAAQ,wBAAwB;AACtC,SAAO,SAAS,WAAW,QAAQ,uBAAA,UAAA,EAAG,gBAAM,SAAT,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAAe,IAAM;AACzD;"}
1
+ {"version":3,"file":"BoardColumnLabel.js","sources":["../../../../../packages/react-board/src/components/BoardColumnLabel.tsx"],"sourcesContent":["import { useBoardCurrentColumn } from '../contexts.js'\n\nexport const BoardColumnLabel = () => {\n\tconst value = useBoardCurrentColumn().value\n\treturn value && 'label' in value ? <>{value.label}</> : null\n}\n"],"names":["this"],"mappings":";;AAEO,MAAM,mBAAmB,MAAM;AACrC,QAAM,QAAQ,wBAAwB;AACtC,SAAO,SAAS,WAAW,QAAQ,uBAAA,UAAA,EAAG,gBAAM,SAAT,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAAe,IAAM;AACzD;"}
@@ -1 +1 @@
1
- {"version":3,"file":"BoardEachColumn.cjs","sources":["../../../../../packages/react-board/src/components/BoardEachColumn.tsx"],"sourcesContent":["import { EntityAccessor, isEntityAccessor } from '@contember/react-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 (\n\t\t<>\n\t\t\t{columns.map(column => {\n\t\t\t\tif (column.id === BoardNullColumnPlaceholder) {\n\t\t\t\t\treturn null\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<BoardCurrentColumnContext.Provider value={column} key={column.id}>\n\t\t\t\t\t\t{isEntityAccessor(column.value)\n\t\t\t\t\t\t\t? (\n\t\t\t\t\t\t\t\t<Entity accessor={column.value}>\n\t\t\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t\t\t</Entity>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t: children}\n\t\t\t\t\t</BoardCurrentColumnContext.Provider>\n\t\t\t\t)\n\t\t\t})}\n\t\t</>\n\t)\n}\nBoardEachColumn.staticRender = ({ children }: { children: ReactNode }) => {\n\treturn <BoardColumn>{children}</BoardColumn>\n}\n"],"names":["useBoardColumns","jsxDEV","Fragment","BoardNullColumnPlaceholder","BoardCurrentColumnContext","isEntityAccessor","Entity","this","BoardColumn"],"mappings":";;;;;;;AAOO,MAAM,kBAAkB,CAAC,EAAE,eAE5B;AACL,QAAM,UAAUA,SAAAA,gBAAA;AAEhB,SACCC,8BAAAA,OAAAC,cAAAA,UAAA,EACE,UAAA,QAAQ,IAAI,CAAA,WAAU;AACtB,QAAI,OAAO,OAAOC,mCAA4B;AAC7C,aAAO;AAAA,IACR;AACA,WACCF,8BAAAA,OAACG,SAAAA,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,UAAAC,aAAAA,iBAAiB,OAAO,KAAK,IAE5BJ,qCAACK,aAAAA,QAAA,EAAO,UAAU,OAAO,OACvB,SAAA,GADF,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAAC,MAEA,IAEC,SAAA,GAPoD,OAAO,IAA/D,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAAA,MAQA;AAAA,EAEF,CAAC,EAAA,GAhBF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAiBA;AAEF;AACA,gBAAgB,eAAe,CAAC,EAAE,eAAwC;AACzE,SAAON,8BAAAA,OAACO,YAAAA,eAAa,SAAA,GAAd,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAD,MAAuB;AAC/B;;"}
1
+ {"version":3,"file":"BoardEachColumn.cjs","sources":["../../../../../packages/react-board/src/components/BoardEachColumn.tsx"],"sourcesContent":["import { EntityAccessor, isEntityAccessor } from '@contember/react-binding'\nimport { Entity } from '@contember/react-binding'\nimport { BoardCurrentColumnContext, useBoardColumns } from '../contexts.js'\nimport { ReactNode } from 'react'\nimport { BoardColumn } from './BoardColumn.js'\nimport { BoardNullColumnPlaceholder } from '../const.js'\n\nexport const BoardEachColumn = ({ children }: {\n\tchildren: ReactNode\n}) => {\n\tconst columns = useBoardColumns()\n\n\treturn (\n\t\t<>\n\t\t\t{columns.map(column => {\n\t\t\t\tif (column.id === BoardNullColumnPlaceholder) {\n\t\t\t\t\treturn null\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<BoardCurrentColumnContext.Provider value={column} key={column.id}>\n\t\t\t\t\t\t{isEntityAccessor(column.value)\n\t\t\t\t\t\t\t? (\n\t\t\t\t\t\t\t\t<Entity accessor={column.value}>\n\t\t\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t\t\t</Entity>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t: children}\n\t\t\t\t\t</BoardCurrentColumnContext.Provider>\n\t\t\t\t)\n\t\t\t})}\n\t\t</>\n\t)\n}\nBoardEachColumn.staticRender = ({ children }: { children: ReactNode }) => {\n\treturn <BoardColumn>{children}</BoardColumn>\n}\n"],"names":["useBoardColumns","jsxDEV","Fragment","BoardNullColumnPlaceholder","BoardCurrentColumnContext","isEntityAccessor","Entity","this","BoardColumn"],"mappings":";;;;;;;AAOO,MAAM,kBAAkB,CAAC,EAAE,eAE5B;AACL,QAAM,UAAUA,SAAAA,gBAAA;AAEhB,SACCC,8BAAAA,OAAAC,cAAAA,UAAA,EACE,UAAA,QAAQ,IAAI,CAAA,WAAU;AACtB,QAAI,OAAO,OAAOC,mCAA4B;AAC7C,aAAO;AAAA,IACR;AACA,WACCF,8BAAAA,OAACG,SAAAA,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,UAAAC,aAAAA,iBAAiB,OAAO,KAAK,IAE5BJ,qCAACK,aAAAA,QAAA,EAAO,UAAU,OAAO,OACvB,SAAA,GADF,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAAC,MAEA,IAEC,SAAA,GAPoD,OAAO,IAA/D,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAAA,MAQA;AAAA,EAEF,CAAC,EAAA,GAhBF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAiBA;AAEF;AACA,gBAAgB,eAAe,CAAC,EAAE,eAAwC;AACzE,SAAON,8BAAAA,OAACO,YAAAA,eAAa,SAAA,GAAd,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAD,MAAuB;AAC/B;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"BoardEachColumn.js","sources":["../../../../../packages/react-board/src/components/BoardEachColumn.tsx"],"sourcesContent":["import { EntityAccessor, isEntityAccessor } from '@contember/react-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 (\n\t\t<>\n\t\t\t{columns.map(column => {\n\t\t\t\tif (column.id === BoardNullColumnPlaceholder) {\n\t\t\t\t\treturn null\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<BoardCurrentColumnContext.Provider value={column} key={column.id}>\n\t\t\t\t\t\t{isEntityAccessor(column.value)\n\t\t\t\t\t\t\t? (\n\t\t\t\t\t\t\t\t<Entity accessor={column.value}>\n\t\t\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t\t\t</Entity>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t: children}\n\t\t\t\t\t</BoardCurrentColumnContext.Provider>\n\t\t\t\t)\n\t\t\t})}\n\t\t</>\n\t)\n}\nBoardEachColumn.staticRender = ({ children }: { children: ReactNode }) => {\n\treturn <BoardColumn>{children}</BoardColumn>\n}\n"],"names":["this"],"mappings":";;;;;AAOO,MAAM,kBAAkB,CAAC,EAAE,eAE5B;AACL,QAAM,UAAU,gBAAA;AAEhB,SACC,uBAAA,UAAA,EACE,UAAA,QAAQ,IAAI,CAAA,WAAU;AACtB,QAAI,OAAO,OAAO,4BAA4B;AAC7C,aAAO;AAAA,IACR;AACA,WACC,uBAAC,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,UAAA,iBAAiB,OAAO,KAAK,IAE5B,uBAAC,QAAA,EAAO,UAAU,OAAO,OACvB,SAAA,GADF,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAAA,MAEA,IAEC,SAAA,GAPoD,OAAO,IAA/D,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAAA,MAQA;AAAA,EAEF,CAAC,EAAA,GAhBF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAiBA;AAEF;AACA,gBAAgB,eAAe,CAAC,EAAE,eAAwC;AACzE,SAAO,uBAAC,eAAa,SAAA,GAAd,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAAuB;AAC/B;"}
1
+ {"version":3,"file":"BoardEachColumn.js","sources":["../../../../../packages/react-board/src/components/BoardEachColumn.tsx"],"sourcesContent":["import { EntityAccessor, isEntityAccessor } from '@contember/react-binding'\nimport { Entity } from '@contember/react-binding'\nimport { BoardCurrentColumnContext, useBoardColumns } from '../contexts.js'\nimport { ReactNode } from 'react'\nimport { BoardColumn } from './BoardColumn.js'\nimport { BoardNullColumnPlaceholder } from '../const.js'\n\nexport const BoardEachColumn = ({ children }: {\n\tchildren: ReactNode\n}) => {\n\tconst columns = useBoardColumns()\n\n\treturn (\n\t\t<>\n\t\t\t{columns.map(column => {\n\t\t\t\tif (column.id === BoardNullColumnPlaceholder) {\n\t\t\t\t\treturn null\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<BoardCurrentColumnContext.Provider value={column} key={column.id}>\n\t\t\t\t\t\t{isEntityAccessor(column.value)\n\t\t\t\t\t\t\t? (\n\t\t\t\t\t\t\t\t<Entity accessor={column.value}>\n\t\t\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t\t\t</Entity>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t: children}\n\t\t\t\t\t</BoardCurrentColumnContext.Provider>\n\t\t\t\t)\n\t\t\t})}\n\t\t</>\n\t)\n}\nBoardEachColumn.staticRender = ({ children }: { children: ReactNode }) => {\n\treturn <BoardColumn>{children}</BoardColumn>\n}\n"],"names":["this"],"mappings":";;;;;AAOO,MAAM,kBAAkB,CAAC,EAAE,eAE5B;AACL,QAAM,UAAU,gBAAA;AAEhB,SACC,uBAAA,UAAA,EACE,UAAA,QAAQ,IAAI,CAAA,WAAU;AACtB,QAAI,OAAO,OAAO,4BAA4B;AAC7C,aAAO;AAAA,IACR;AACA,WACC,uBAAC,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,UAAA,iBAAiB,OAAO,KAAK,IAE5B,uBAAC,QAAA,EAAO,UAAU,OAAO,OACvB,SAAA,GADF,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAAA,MAEA,IAEC,SAAA,GAPoD,OAAO,IAA/D,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAAA,MAQA;AAAA,EAEF,CAAC,EAAA,GAhBF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAiBA;AAEF;AACA,gBAAgB,eAAe,CAAC,EAAE,eAAwC;AACzE,SAAO,uBAAC,eAAa,SAAA,GAAd,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAAuB;AAC/B;"}
@@ -1 +1 @@
1
- {"version":3,"file":"BoardEachItem.cjs","sources":["../../../../../packages/react-board/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 (\n\t\t<>\n\t\t\t{currentColumn.items.map((item, index) => {\n\t\t\t\treturn (\n\t\t\t\t\t<BoardEachItemInner\n\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\titem={item}\n\t\t\t\t\t\tcolumn={currentColumn}\n\t\t\t\t\t>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</BoardEachItemInner>\n\t\t\t\t)\n\t\t\t})}\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\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","jsxDEV","this","BoardItem","useMemo","BoardCurrentItemContext","Entity"],"mappings":";;;;;;;AAMO,MAAM,gBAAgB,CAAC,EAAE,eAE1B;AACL,QAAM,gBAAgBA,SAAAA,sBAAA;AAEtB,wEAEG,UAAA,cAAc,MAAM,IAAI,CAAC,MAAM,UAAU;AACzC,WACCC,8BAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QAEA;AAAA,QACA,QAAQ;AAAA,QAEP;AAAA,MAAA;AAAA,MAJI,KAAK;AAAA,MADX;AAAA,MAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA;AAAA,MAAAC;AAAAA,IAAA;AAAA,EAQF,CAAC,EAAA,GAXF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAYA;AAEF;AACA,cAAc,eAAe,CAAC,EAAE,eAAwC;AACvE,SAAOD,8BAAAA,OAACE,UAAAA,aAAW,SAAA,GAAZ,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAD,MAAqB;AAC7B;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,MAAM,aAIxC;AACL,QAAM,iBAAiBE,MAAAA,QAAQ,OAAO;AAAA,IACrC,GAAG;AAAA,IACH;AAAA,EAAA,IACG,CAAC,MAAM,MAAM,CAAC;AAElB,SACCH,8BAAAA,OAACI,SAAAA,wBAAwB,UAAxB,EAAiC,OAAO,gBACxC,UAAAJ,8BAAAA,OAACK,aAAAA,QAAA,EAAO,UAAU,KAAK,OACrB,SAAA,GADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAJ,MAEA,EAAA,GAH6D,KAAK,IAAnE,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAIA;AAEF;;"}
1
+ {"version":3,"file":"BoardEachItem.cjs","sources":["../../../../../packages/react-board/src/components/BoardEachItem.tsx"],"sourcesContent":["import { ReactNode, useMemo } from 'react'\nimport { BoardCurrentItemContext, useBoardCurrentColumn } from '../contexts.js'\nimport { Entity } from '@contember/react-binding'\nimport { BoardItem } from './BoardItem.js'\nimport { BoardColumnNode, BoardItemNode } from '../types/index.js'\n\nexport const BoardEachItem = ({ children }: {\n\tchildren: ReactNode\n}) => {\n\tconst currentColumn = useBoardCurrentColumn()\n\n\treturn (\n\t\t<>\n\t\t\t{currentColumn.items.map((item, index) => {\n\t\t\t\treturn (\n\t\t\t\t\t<BoardEachItemInner\n\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\titem={item}\n\t\t\t\t\t\tcolumn={currentColumn}\n\t\t\t\t\t>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</BoardEachItemInner>\n\t\t\t\t)\n\t\t\t})}\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\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","jsxDEV","this","BoardItem","useMemo","BoardCurrentItemContext","Entity"],"mappings":";;;;;;;AAMO,MAAM,gBAAgB,CAAC,EAAE,eAE1B;AACL,QAAM,gBAAgBA,SAAAA,sBAAA;AAEtB,wEAEG,UAAA,cAAc,MAAM,IAAI,CAAC,MAAM,UAAU;AACzC,WACCC,8BAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QAEA;AAAA,QACA,QAAQ;AAAA,QAEP;AAAA,MAAA;AAAA,MAJI,KAAK;AAAA,MADX;AAAA,MAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA;AAAA,MAAAC;AAAAA,IAAA;AAAA,EAQF,CAAC,EAAA,GAXF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAYA;AAEF;AACA,cAAc,eAAe,CAAC,EAAE,eAAwC;AACvE,SAAOD,8BAAAA,OAACE,UAAAA,aAAW,SAAA,GAAZ,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAD,MAAqB;AAC7B;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,MAAM,aAIxC;AACL,QAAM,iBAAiBE,MAAAA,QAAQ,OAAO;AAAA,IACrC,GAAG;AAAA,IACH;AAAA,EAAA,IACG,CAAC,MAAM,MAAM,CAAC;AAElB,SACCH,8BAAAA,OAACI,SAAAA,wBAAwB,UAAxB,EAAiC,OAAO,gBACxC,UAAAJ,8BAAAA,OAACK,aAAAA,QAAA,EAAO,UAAU,KAAK,OACrB,SAAA,GADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAJ,MAEA,EAAA,GAH6D,KAAK,IAAnE,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAIA;AAEF;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"BoardEachItem.js","sources":["../../../../../packages/react-board/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 (\n\t\t<>\n\t\t\t{currentColumn.items.map((item, index) => {\n\t\t\t\treturn (\n\t\t\t\t\t<BoardEachItemInner\n\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\titem={item}\n\t\t\t\t\t\tcolumn={currentColumn}\n\t\t\t\t\t>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</BoardEachItemInner>\n\t\t\t\t)\n\t\t\t})}\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\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":["this"],"mappings":";;;;;AAMO,MAAM,gBAAgB,CAAC,EAAE,eAE1B;AACL,QAAM,gBAAgB,sBAAA;AAEtB,4CAEG,UAAA,cAAc,MAAM,IAAI,CAAC,MAAM,UAAU;AACzC,WACC;AAAA,MAAC;AAAA,MAAA;AAAA,QAEA;AAAA,QACA,QAAQ;AAAA,QAEP;AAAA,MAAA;AAAA,MAJI,KAAK;AAAA,MADX;AAAA,MAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA;AAAA,MAAAA;AAAAA,IAAA;AAAA,EAQF,CAAC,EAAA,GAXF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAYA;AAEF;AACA,cAAc,eAAe,CAAC,EAAE,eAAwC;AACvE,SAAO,uBAAC,aAAW,SAAA,GAAZ,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAAqB;AAC7B;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,MAAM,aAIxC;AACL,QAAM,iBAAiB,QAAQ,OAAO;AAAA,IACrC,GAAG;AAAA,IACH;AAAA,EAAA,IACG,CAAC,MAAM,MAAM,CAAC;AAElB,SACC,uBAAC,wBAAwB,UAAxB,EAAiC,OAAO,gBACxC,UAAA,uBAAC,QAAA,EAAO,UAAU,KAAK,OACrB,SAAA,GADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAEA,EAAA,GAH6D,KAAK,IAAnE,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAIA;AAEF;"}
1
+ {"version":3,"file":"BoardEachItem.js","sources":["../../../../../packages/react-board/src/components/BoardEachItem.tsx"],"sourcesContent":["import { ReactNode, useMemo } from 'react'\nimport { BoardCurrentItemContext, useBoardCurrentColumn } from '../contexts.js'\nimport { Entity } from '@contember/react-binding'\nimport { BoardItem } from './BoardItem.js'\nimport { BoardColumnNode, BoardItemNode } from '../types/index.js'\n\nexport const BoardEachItem = ({ children }: {\n\tchildren: ReactNode\n}) => {\n\tconst currentColumn = useBoardCurrentColumn()\n\n\treturn (\n\t\t<>\n\t\t\t{currentColumn.items.map((item, index) => {\n\t\t\t\treturn (\n\t\t\t\t\t<BoardEachItemInner\n\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\titem={item}\n\t\t\t\t\t\tcolumn={currentColumn}\n\t\t\t\t\t>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</BoardEachItemInner>\n\t\t\t\t)\n\t\t\t})}\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\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":["this"],"mappings":";;;;;AAMO,MAAM,gBAAgB,CAAC,EAAE,eAE1B;AACL,QAAM,gBAAgB,sBAAA;AAEtB,4CAEG,UAAA,cAAc,MAAM,IAAI,CAAC,MAAM,UAAU;AACzC,WACC;AAAA,MAAC;AAAA,MAAA;AAAA,QAEA;AAAA,QACA,QAAQ;AAAA,QAEP;AAAA,MAAA;AAAA,MAJI,KAAK;AAAA,MADX;AAAA,MAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA;AAAA,MAAAA;AAAAA,IAAA;AAAA,EAQF,CAAC,EAAA,GAXF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAYA;AAEF;AACA,cAAc,eAAe,CAAC,EAAE,eAAwC;AACvE,SAAO,uBAAC,aAAW,SAAA,GAAZ,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAAqB;AAC7B;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,MAAM,aAIxC;AACL,QAAM,iBAAiB,QAAQ,OAAO;AAAA,IACrC,GAAG;AAAA,IACH;AAAA,EAAA,IACG,CAAC,MAAM,MAAM,CAAC;AAElB,SACC,uBAAC,wBAAwB,UAAxB,EAAiC,OAAO,gBACxC,UAAA,uBAAC,QAAA,EAAO,UAAU,KAAK,OACrB,SAAA,GADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAEA,EAAA,GAH6D,KAAK,IAAnE,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAIA;AAEF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"BoardNullColumn.cjs","sources":["../../../../../packages/react-board/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","this"],"mappings":";;;;;AAQO,MAAM,kBAAkB,CAAC,EAAE,UAAU,gBAAsC;AACjF,QAAM,SAASA,SAAAA,gBAAA,EAAkB,KAAK,CAAA,OAAM,GAAG,OAAOC,iCAA0B;AAChF,MAAI,CAAC,UAAW,aAAa,OAAO,MAAM,WAAW,GAAI;AACxD,WAAO;AAAA,EACR;AAEA,8CACEC,mCAA0B,UAA1B,EAAmC,OAAO,QACzC,SAAA,GADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAC,MAEA;AAEF;;"}
1
+ {"version":3,"file":"BoardNullColumn.cjs","sources":["../../../../../packages/react-board/src/components/BoardNullColumn.tsx"],"sourcesContent":["import { BoardCurrentColumnContext, useBoardColumns } from '../contexts.js'\nimport { ReactNode } from 'react'\nimport { BoardNullColumnPlaceholder } from '../const.js'\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","this"],"mappings":";;;;;AAQO,MAAM,kBAAkB,CAAC,EAAE,UAAU,gBAAsC;AACjF,QAAM,SAASA,SAAAA,gBAAA,EAAkB,KAAK,CAAA,OAAM,GAAG,OAAOC,iCAA0B;AAChF,MAAI,CAAC,UAAW,aAAa,OAAO,MAAM,WAAW,GAAI;AACxD,WAAO;AAAA,EACR;AAEA,8CACEC,mCAA0B,UAA1B,EAAmC,OAAO,QACzC,SAAA,GADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAC,MAEA;AAEF;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"BoardNullColumn.js","sources":["../../../../../packages/react-board/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":["this"],"mappings":";;;AAQO,MAAM,kBAAkB,CAAC,EAAE,UAAU,gBAAsC;AACjF,QAAM,SAAS,gBAAA,EAAkB,KAAK,CAAA,OAAM,GAAG,OAAO,0BAA0B;AAChF,MAAI,CAAC,UAAW,aAAa,OAAO,MAAM,WAAW,GAAI;AACxD,WAAO;AAAA,EACR;AAEA,gCACE,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,SAAA,GADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAEA;AAEF;"}
1
+ {"version":3,"file":"BoardNullColumn.js","sources":["../../../../../packages/react-board/src/components/BoardNullColumn.tsx"],"sourcesContent":["import { BoardCurrentColumnContext, useBoardColumns } from '../contexts.js'\nimport { ReactNode } from 'react'\nimport { BoardNullColumnPlaceholder } from '../const.js'\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":["this"],"mappings":";;;AAQO,MAAM,kBAAkB,CAAC,EAAE,UAAU,gBAAsC;AACjF,QAAM,SAAS,gBAAA,EAAkB,KAAK,CAAA,OAAM,GAAG,OAAO,0BAA0B;AAChF,MAAI,CAAC,UAAW,aAAa,OAAO,MAAM,WAAW,GAAI;AACxD,WAAO;AAAA,EACR;AAEA,gCACE,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,SAAA,GADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAEA;AAEF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"contexts.cjs","sources":["../../../../packages/react-board/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\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;AAEpF,MAAM,sBAAsB,qBAAqB,CAAC;AAClD,MAAM,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,uBAAuBA,WAAAA,sBAAyC,qBAAqB;AAEpF,MAAM,sBAAsB,qBAAqB,CAAC;AAClD,MAAM,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,sBAAsBA,WAAAA,sBAAuC,2BAA2B;AAEvF,MAAM,4BAA4B,oBAAoB,CAAC;AACvD,MAAM,wBAAwB,oBAAoB,CAAC;AAE1D,MAAM,2BAA2BA,WAAAA,sBAAmE,yBAAyB;AAEtH,MAAM,0BAA0B,yBAAyB,CAAC;AAC1D,MAAM,sBAAsB,yBAAyB,CAAC;;;;;;;;;"}
1
+ {"version":3,"file":"contexts.cjs","sources":["../../../../packages/react-board/src/contexts.ts"],"sourcesContent":["import { createRequiredContext } from '@contember/react-utils'\nimport { BoardColumnNode, BoardColumnValue, BoardItemNode, BoardMethods } from './types/index.js'\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\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;AAEpF,MAAM,sBAAsB,qBAAqB,CAAC;AAClD,MAAM,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,uBAAuBA,WAAAA,sBAAyC,qBAAqB;AAEpF,MAAM,sBAAsB,qBAAqB,CAAC;AAClD,MAAM,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,sBAAsBA,WAAAA,sBAAuC,2BAA2B;AAEvF,MAAM,4BAA4B,oBAAoB,CAAC;AACvD,MAAM,wBAAwB,oBAAoB,CAAC;AAE1D,MAAM,2BAA2BA,WAAAA,sBAAmE,yBAAyB;AAEtH,MAAM,0BAA0B,yBAAyB,CAAC;AAC1D,MAAM,sBAAsB,yBAAyB,CAAC;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"contexts.js","sources":["../../../../packages/react-board/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\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":[],"mappings":";AAGA,MAAM,uBAAuB,sBAAyC,qBAAqB;AAEpF,MAAM,sBAAsB,qBAAqB,CAAC;AAClD,MAAM,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,uBAAuB,sBAAyC,qBAAqB;AAEpF,MAAM,sBAAsB,qBAAqB,CAAC;AAClD,MAAM,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,sBAAsB,sBAAuC,2BAA2B;AAEvF,MAAM,4BAA4B,oBAAoB,CAAC;AACvD,MAAM,wBAAwB,oBAAoB,CAAC;AAE1D,MAAM,2BAA2B,sBAAmE,yBAAyB;AAEtH,MAAM,0BAA0B,yBAAyB,CAAC;AAC1D,MAAM,sBAAsB,yBAAyB,CAAC;"}
1
+ {"version":3,"file":"contexts.js","sources":["../../../../packages/react-board/src/contexts.ts"],"sourcesContent":["import { createRequiredContext } from '@contember/react-utils'\nimport { BoardColumnNode, BoardColumnValue, BoardItemNode, BoardMethods } from './types/index.js'\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\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":[],"mappings":";AAGA,MAAM,uBAAuB,sBAAyC,qBAAqB;AAEpF,MAAM,sBAAsB,qBAAqB,CAAC;AAClD,MAAM,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,uBAAuB,sBAAyC,qBAAqB;AAEpF,MAAM,sBAAsB,qBAAqB,CAAC;AAClD,MAAM,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,sBAAsB,sBAAuC,2BAA2B;AAEvF,MAAM,4BAA4B,oBAAoB,CAAC;AACvD,MAAM,wBAAwB,oBAAoB,CAAC;AAE1D,MAAM,2BAA2B,sBAAmE,yBAAyB;AAEtH,MAAM,0BAA0B,yBAAyB,CAAC;AAC1D,MAAM,sBAAsB,yBAAyB,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"boardAnalyzer.cjs","sources":["../../../../../packages/react-board/src/internal/boardAnalyzer.ts"],"sourcesContent":["import { Environment } from '@contember/react-binding'\nimport { ChildrenAnalyzer, Leaf } from '@contember/react-multipass-rendering'\nimport { BoardItem } from '../components/BoardItem'\nimport { ReactNode } from 'react'\nimport { BoardColumn } from '../components/BoardColumn'\n\nconst itemLeaf = new Leaf(node => ({ type: 'item' as const, children: node.props.children }), BoardItem)\nconst columnLeaf = new Leaf(node => ({ type: 'column' as const, children: node.props.children }), BoardColumn)\n\nexport const boardAnalyzer = new ChildrenAnalyzer<\n\t{ type: 'column' | 'item'; children: ReactNode },\n\tnever,\n\tEnvironment\n>([itemLeaf, columnLeaf], {\n\tstaticRenderFactoryName: 'staticRender',\n\tstaticContextFactoryName: 'generateEnvironment',\n})\n"],"names":["Leaf","BoardItem","BoardColumn","ChildrenAnalyzer"],"mappings":";;;;;AAMA,MAAM,WAAW,IAAIA,wBAAAA,KAAK,CAAA,UAAS,EAAE,MAAM,QAAiB,UAAU,KAAK,MAAM,SAAA,IAAaC,UAAAA,SAAS;AACvG,MAAM,aAAa,IAAID,wBAAAA,KAAK,CAAA,UAAS,EAAE,MAAM,UAAmB,UAAU,KAAK,MAAM,SAAA,IAAaE,YAAAA,WAAW;AAEtG,MAAM,gBAAgB,IAAIC,wBAAAA,iBAI/B,CAAC,UAAU,UAAU,GAAG;AAAA,EACzB,yBAAyB;AAAA,EACzB,0BAA0B;AAC3B,CAAC;;"}
1
+ {"version":3,"file":"boardAnalyzer.cjs","sources":["../../../../../packages/react-board/src/internal/boardAnalyzer.ts"],"sourcesContent":["import { Environment } from '@contember/react-binding'\nimport { ChildrenAnalyzer, Leaf } from '@contember/react-multipass-rendering'\nimport { BoardItem } from '../components/BoardItem.js'\nimport { ReactNode } from 'react'\nimport { BoardColumn } from '../components/BoardColumn.js'\n\nconst itemLeaf = new Leaf(node => ({ type: 'item' as const, children: node.props.children }), BoardItem)\nconst columnLeaf = new Leaf(node => ({ type: 'column' as const, children: node.props.children }), BoardColumn)\n\nexport const boardAnalyzer = new ChildrenAnalyzer<\n\t{ type: 'column' | 'item'; children: ReactNode },\n\tnever,\n\tEnvironment\n>([itemLeaf, columnLeaf], {\n\tstaticRenderFactoryName: 'staticRender',\n\tstaticContextFactoryName: 'generateEnvironment',\n})\n"],"names":["Leaf","BoardItem","BoardColumn","ChildrenAnalyzer"],"mappings":";;;;;AAMA,MAAM,WAAW,IAAIA,wBAAAA,KAAK,CAAA,UAAS,EAAE,MAAM,QAAiB,UAAU,KAAK,MAAM,SAAA,IAAaC,UAAAA,SAAS;AACvG,MAAM,aAAa,IAAID,wBAAAA,KAAK,CAAA,UAAS,EAAE,MAAM,UAAmB,UAAU,KAAK,MAAM,SAAA,IAAaE,YAAAA,WAAW;AAEtG,MAAM,gBAAgB,IAAIC,wBAAAA,iBAI/B,CAAC,UAAU,UAAU,GAAG;AAAA,EACzB,yBAAyB;AAAA,EACzB,0BAA0B;AAC3B,CAAC;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"boardAnalyzer.js","sources":["../../../../../packages/react-board/src/internal/boardAnalyzer.ts"],"sourcesContent":["import { Environment } from '@contember/react-binding'\nimport { ChildrenAnalyzer, Leaf } from '@contember/react-multipass-rendering'\nimport { BoardItem } from '../components/BoardItem'\nimport { ReactNode } from 'react'\nimport { BoardColumn } from '../components/BoardColumn'\n\nconst itemLeaf = new Leaf(node => ({ type: 'item' as const, children: node.props.children }), BoardItem)\nconst columnLeaf = new Leaf(node => ({ type: 'column' as const, children: node.props.children }), BoardColumn)\n\nexport const boardAnalyzer = new ChildrenAnalyzer<\n\t{ type: 'column' | 'item'; children: ReactNode },\n\tnever,\n\tEnvironment\n>([itemLeaf, columnLeaf], {\n\tstaticRenderFactoryName: 'staticRender',\n\tstaticContextFactoryName: 'generateEnvironment',\n})\n"],"names":[],"mappings":";;;AAMA,MAAM,WAAW,IAAI,KAAK,CAAA,UAAS,EAAE,MAAM,QAAiB,UAAU,KAAK,MAAM,SAAA,IAAa,SAAS;AACvG,MAAM,aAAa,IAAI,KAAK,CAAA,UAAS,EAAE,MAAM,UAAmB,UAAU,KAAK,MAAM,SAAA,IAAa,WAAW;AAEtG,MAAM,gBAAgB,IAAI,iBAI/B,CAAC,UAAU,UAAU,GAAG;AAAA,EACzB,yBAAyB;AAAA,EACzB,0BAA0B;AAC3B,CAAC;"}
1
+ {"version":3,"file":"boardAnalyzer.js","sources":["../../../../../packages/react-board/src/internal/boardAnalyzer.ts"],"sourcesContent":["import { Environment } from '@contember/react-binding'\nimport { ChildrenAnalyzer, Leaf } from '@contember/react-multipass-rendering'\nimport { BoardItem } from '../components/BoardItem.js'\nimport { ReactNode } from 'react'\nimport { BoardColumn } from '../components/BoardColumn.js'\n\nconst itemLeaf = new Leaf(node => ({ type: 'item' as const, children: node.props.children }), BoardItem)\nconst columnLeaf = new Leaf(node => ({ type: 'column' as const, children: node.props.children }), BoardColumn)\n\nexport const boardAnalyzer = new ChildrenAnalyzer<\n\t{ type: 'column' | 'item'; children: ReactNode },\n\tnever,\n\tEnvironment\n>([itemLeaf, columnLeaf], {\n\tstaticRenderFactoryName: 'staticRender',\n\tstaticContextFactoryName: 'generateEnvironment',\n})\n"],"names":[],"mappings":";;;AAMA,MAAM,WAAW,IAAI,KAAK,CAAA,UAAS,EAAE,MAAM,QAAiB,UAAU,KAAK,MAAM,SAAA,IAAa,SAAS;AACvG,MAAM,aAAa,IAAI,KAAK,CAAA,UAAS,EAAE,MAAM,UAAmB,UAAU,KAAK,MAAM,SAAA,IAAa,WAAW;AAEtG,MAAM,gBAAgB,IAAI,iBAI/B,CAAC,UAAU,UAAU,GAAG;AAAA,EACzB,yBAAyB;AAAA,EACzB,0BAA0B;AAC3B,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useBoardItemsMethods.cjs","sources":["../../../../../packages/react-board/src/internal/useBoardItemsMethods.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport {\n\tBatchUpdatesOptions,\n\tBindingError,\n\tEntityAccessor,\n\tEntityListAccessor,\n\tRelativeSingleField,\n\trepairEntitiesOrder,\n\tsortEntities,\n} from '@contember/react-binding'\nimport { BoardColumnKey, UseGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { arrayMove } from '../utils/arrayMove'\nimport { BoardAddItemMethod, BoardColumnValue, BoardMethods, BoardMoveItemMethod, BoardRemoveItemMethod } from '../types'\n\nexport type UseBoardItemsMethodsProps<ColumnValue extends BoardColumnValue> = {\n\titemEntities: EntityListAccessor\n\tconnectItemToColumn: (item: EntityAccessor, column: ColumnValue | null) => void\n\tdesugaredSortableByField: RelativeSingleField | undefined\n\tsortScope?: 'column' | 'board'\n\tgroupItemsByColumn: UseGroupItemsByColumn\n\tgetDiscriminatorValue: (entity: EntityAccessor) => BoardColumnKey\n\tcolumnIdGetter: (column: ColumnValue) => string | number\n}\n\nexport type BoardItemsMethods<ColumnValue extends BoardColumnValue> = Pick<BoardMethods<ColumnValue>, 'moveItem' | 'addItem' | 'removeItem'>\n\nexport const useBoardItemsMethods = <ColumnValue extends BoardColumnValue>({\n\titemEntities,\n\tdesugaredSortableByField,\n\tconnectItemToColumn,\n\tgroupItemsByColumn,\n\tgetDiscriminatorValue,\n\tcolumnIdGetter,\n\tsortScope = 'column',\n}: UseBoardItemsMethodsProps<ColumnValue>): BoardItemsMethods<ColumnValue> => {\n\tconst itemEntitiesEntitiesGetter = itemEntities.getAccessor\n\n\tconst getSortScopeItems = useCallback((column: string | number | null) => {\n\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\treturn sortScope === 'column'\n\t\t\t? groupItemsByColumn(itemEntities).get(column)?.slice() ?? []\n\t\t\t: sortEntities(Array.from(itemEntities), desugaredSortableByField)\n\t}, [desugaredSortableByField, groupItemsByColumn, itemEntitiesEntitiesGetter, sortScope])\n\n\tconst resolveScopedIndex = useCallback((column: string | number | null, index: number | undefined) => {\n\t\tif (index === undefined) {\n\t\t\treturn undefined\n\t\t}\n\t\tif (sortScope === 'column') {\n\t\t\treturn index\n\t\t}\n\t\tconst columnItems = groupItemsByColumn(itemEntities).get(column)?.slice() ?? []\n\t\tconst columnOnIndex = columnItems[index]\n\t\tif (!columnOnIndex) {\n\t\t\treturn undefined\n\t\t}\n\n\t\tconst sortScopeItems = getSortScopeItems(column)\n\t\treturn sortScopeItems.findIndex(it => it.id === columnOnIndex.id) ?? sortScopeItems.length\n\t}, [getSortScopeItems, groupItemsByColumn, itemEntities, sortScope])\n\n\tconst addItem = useCallback<BoardAddItemMethod<ColumnValue>>((column, index, preprocess) => {\n\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\tconst resolvedPreprocess = (getAccessor: () => EntityAccessor, options: BatchUpdatesOptions) => {\n\t\t\tconnectItemToColumn(getAccessor(), column)\n\t\t\tpreprocess?.(getAccessor, options)\n\t\t}\n\t\tif (!desugaredSortableByField) {\n\t\t\tif (index === undefined) {\n\t\t\t\treturn itemEntities.createNewEntity(resolvedPreprocess)\n\t\t\t}\n\t\t\tthrow new BindingError('Cannot add item at specific index without sortableBy field')\n\t\t}\n\t\tconst columnId = column ? columnIdGetter(column) : null\n\t\tconst sortScopeItems = getSortScopeItems(columnId)\n\n\t\tconst resolvedIndex = resolveScopedIndex(columnId, index) ?? sortScopeItems.length\n\n\t\titemEntities.createNewEntity((getEntity, options) => {\n\t\t\tsortScopeItems.splice(resolvedIndex, 0, getEntity())\n\t\t\trepairEntitiesOrder(desugaredSortableByField, sortScopeItems)\n\t\t\tresolvedPreprocess?.(getEntity, options)\n\t\t})\n\t}, [columnIdGetter, connectItemToColumn, desugaredSortableByField, getSortScopeItems, itemEntitiesEntitiesGetter, resolveScopedIndex])\n\n\tconst moveItem = useMemo<BoardMoveItemMethod<ColumnValue> | undefined>(() => {\n\t\tif (!desugaredSortableByField) {\n\t\t\treturn undefined\n\t\t}\n\t\treturn (entity, column, index) => {\n\t\t\tconst currentColumn = getDiscriminatorValue(entity)\n\t\t\tconst columnId = column ? columnIdGetter(column) : null\n\n\t\t\tconnectItemToColumn(entity, column)\n\n\t\t\tif (currentColumn === columnId || sortScope === 'board') {\n\t\t\t\tconst sortScopeItems = getSortScopeItems(columnId)\n\t\t\t\tconst currentIndex = sortScopeItems.findIndex(it => it.id === entity.id)\n\t\t\t\tconst resolvedIndex = resolveScopedIndex(columnId, index) ?? sortScopeItems.length\n\t\t\t\tconst resortedItems = arrayMove(sortScopeItems, currentIndex, resolvedIndex)\n\t\t\t\trepairEntitiesOrder(desugaredSortableByField, resortedItems)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// sort scope is column\n\t\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\t\tconst groupedItems = groupItemsByColumn(itemEntities)\n\n\t\t\tconst currentColumnItems = groupedItems.get(currentColumn ?? null)?.slice() ?? []\n\t\t\tconst currentIndex = currentColumnItems.findIndex(it => it.id === entity.id)\n\t\t\tcurrentColumnItems.splice(currentIndex, 1)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, currentColumnItems)\n\n\t\t\tconst newColumnItems = groupedItems.get(columnId)?.slice() ?? []\n\t\t\tnewColumnItems.splice(index, 0, entity)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, newColumnItems)\n\t\t}\n\t}, [\n\t\tcolumnIdGetter,\n\t\tconnectItemToColumn,\n\t\tdesugaredSortableByField,\n\t\tgetDiscriminatorValue,\n\t\tgetSortScopeItems,\n\t\tgroupItemsByColumn,\n\t\titemEntitiesEntitiesGetter,\n\t\tresolveScopedIndex,\n\t\tsortScope,\n\t])\n\n\tconst removeItem = useCallback<BoardRemoveItemMethod>(entity => {\n\t\tif (desugaredSortableByField) {\n\t\t\tconst currentColumn = getDiscriminatorValue(entity)\n\t\t\tconst sortScopeItems = getSortScopeItems(currentColumn)\n\t\t\tconst currentIndex = sortScopeItems.findIndex(it => it.id === entity.id)\n\t\t\tsortScopeItems.splice(currentIndex, 1)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, sortScopeItems)\n\t\t}\n\t\tentity.deleteEntity()\n\t}, [desugaredSortableByField, getDiscriminatorValue, getSortScopeItems])\n\n\treturn {\n\t\taddItem,\n\t\tmoveItem,\n\t\tremoveItem,\n\t}\n}\n"],"names":["useCallback","itemEntities","sortEntities","BindingError","repairEntitiesOrder","useMemo","currentIndex","arrayMove"],"mappings":"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"}
1
+ {"version":3,"file":"useBoardItemsMethods.cjs","sources":["../../../../../packages/react-board/src/internal/useBoardItemsMethods.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport {\n\tBatchUpdatesOptions,\n\tBindingError,\n\tEntityAccessor,\n\tEntityListAccessor,\n\tRelativeSingleField,\n\trepairEntitiesOrder,\n\tsortEntities,\n} from '@contember/react-binding'\nimport { BoardColumnKey, UseGroupItemsByColumn } from './useGroupItemsByColumn.js'\nimport { arrayMove } from '../utils/arrayMove.js'\nimport { BoardAddItemMethod, BoardColumnValue, BoardMethods, BoardMoveItemMethod, BoardRemoveItemMethod } from '../types/index.js'\n\nexport type UseBoardItemsMethodsProps<ColumnValue extends BoardColumnValue> = {\n\titemEntities: EntityListAccessor\n\tconnectItemToColumn: (item: EntityAccessor, column: ColumnValue | null) => void\n\tdesugaredSortableByField: RelativeSingleField | undefined\n\tsortScope?: 'column' | 'board'\n\tgroupItemsByColumn: UseGroupItemsByColumn\n\tgetDiscriminatorValue: (entity: EntityAccessor) => BoardColumnKey\n\tcolumnIdGetter: (column: ColumnValue) => string | number\n}\n\nexport type BoardItemsMethods<ColumnValue extends BoardColumnValue> = Pick<BoardMethods<ColumnValue>, 'moveItem' | 'addItem' | 'removeItem'>\n\nexport const useBoardItemsMethods = <ColumnValue extends BoardColumnValue>({\n\titemEntities,\n\tdesugaredSortableByField,\n\tconnectItemToColumn,\n\tgroupItemsByColumn,\n\tgetDiscriminatorValue,\n\tcolumnIdGetter,\n\tsortScope = 'column',\n}: UseBoardItemsMethodsProps<ColumnValue>): BoardItemsMethods<ColumnValue> => {\n\tconst itemEntitiesEntitiesGetter = itemEntities.getAccessor\n\n\tconst getSortScopeItems = useCallback((column: string | number | null) => {\n\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\treturn sortScope === 'column'\n\t\t\t? groupItemsByColumn(itemEntities).get(column)?.slice() ?? []\n\t\t\t: sortEntities(Array.from(itemEntities), desugaredSortableByField)\n\t}, [desugaredSortableByField, groupItemsByColumn, itemEntitiesEntitiesGetter, sortScope])\n\n\tconst resolveScopedIndex = useCallback((column: string | number | null, index: number | undefined) => {\n\t\tif (index === undefined) {\n\t\t\treturn undefined\n\t\t}\n\t\tif (sortScope === 'column') {\n\t\t\treturn index\n\t\t}\n\t\tconst columnItems = groupItemsByColumn(itemEntities).get(column)?.slice() ?? []\n\t\tconst columnOnIndex = columnItems[index]\n\t\tif (!columnOnIndex) {\n\t\t\treturn undefined\n\t\t}\n\n\t\tconst sortScopeItems = getSortScopeItems(column)\n\t\treturn sortScopeItems.findIndex(it => it.id === columnOnIndex.id) ?? sortScopeItems.length\n\t}, [getSortScopeItems, groupItemsByColumn, itemEntities, sortScope])\n\n\tconst addItem = useCallback<BoardAddItemMethod<ColumnValue>>((column, index, preprocess) => {\n\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\tconst resolvedPreprocess = (getAccessor: () => EntityAccessor, options: BatchUpdatesOptions) => {\n\t\t\tconnectItemToColumn(getAccessor(), column)\n\t\t\tpreprocess?.(getAccessor, options)\n\t\t}\n\t\tif (!desugaredSortableByField) {\n\t\t\tif (index === undefined) {\n\t\t\t\treturn itemEntities.createNewEntity(resolvedPreprocess)\n\t\t\t}\n\t\t\tthrow new BindingError('Cannot add item at specific index without sortableBy field')\n\t\t}\n\t\tconst columnId = column ? columnIdGetter(column) : null\n\t\tconst sortScopeItems = getSortScopeItems(columnId)\n\n\t\tconst resolvedIndex = resolveScopedIndex(columnId, index) ?? sortScopeItems.length\n\n\t\titemEntities.createNewEntity((getEntity, options) => {\n\t\t\tsortScopeItems.splice(resolvedIndex, 0, getEntity())\n\t\t\trepairEntitiesOrder(desugaredSortableByField, sortScopeItems)\n\t\t\tresolvedPreprocess?.(getEntity, options)\n\t\t})\n\t}, [columnIdGetter, connectItemToColumn, desugaredSortableByField, getSortScopeItems, itemEntitiesEntitiesGetter, resolveScopedIndex])\n\n\tconst moveItem = useMemo<BoardMoveItemMethod<ColumnValue> | undefined>(() => {\n\t\tif (!desugaredSortableByField) {\n\t\t\treturn undefined\n\t\t}\n\t\treturn (entity, column, index) => {\n\t\t\tconst currentColumn = getDiscriminatorValue(entity)\n\t\t\tconst columnId = column ? columnIdGetter(column) : null\n\n\t\t\tconnectItemToColumn(entity, column)\n\n\t\t\tif (currentColumn === columnId || sortScope === 'board') {\n\t\t\t\tconst sortScopeItems = getSortScopeItems(columnId)\n\t\t\t\tconst currentIndex = sortScopeItems.findIndex(it => it.id === entity.id)\n\t\t\t\tconst resolvedIndex = resolveScopedIndex(columnId, index) ?? sortScopeItems.length\n\t\t\t\tconst resortedItems = arrayMove(sortScopeItems, currentIndex, resolvedIndex)\n\t\t\t\trepairEntitiesOrder(desugaredSortableByField, resortedItems)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// sort scope is column\n\t\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\t\tconst groupedItems = groupItemsByColumn(itemEntities)\n\n\t\t\tconst currentColumnItems = groupedItems.get(currentColumn ?? null)?.slice() ?? []\n\t\t\tconst currentIndex = currentColumnItems.findIndex(it => it.id === entity.id)\n\t\t\tcurrentColumnItems.splice(currentIndex, 1)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, currentColumnItems)\n\n\t\t\tconst newColumnItems = groupedItems.get(columnId)?.slice() ?? []\n\t\t\tnewColumnItems.splice(index, 0, entity)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, newColumnItems)\n\t\t}\n\t}, [\n\t\tcolumnIdGetter,\n\t\tconnectItemToColumn,\n\t\tdesugaredSortableByField,\n\t\tgetDiscriminatorValue,\n\t\tgetSortScopeItems,\n\t\tgroupItemsByColumn,\n\t\titemEntitiesEntitiesGetter,\n\t\tresolveScopedIndex,\n\t\tsortScope,\n\t])\n\n\tconst removeItem = useCallback<BoardRemoveItemMethod>(entity => {\n\t\tif (desugaredSortableByField) {\n\t\t\tconst currentColumn = getDiscriminatorValue(entity)\n\t\t\tconst sortScopeItems = getSortScopeItems(currentColumn)\n\t\t\tconst currentIndex = sortScopeItems.findIndex(it => it.id === entity.id)\n\t\t\tsortScopeItems.splice(currentIndex, 1)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, sortScopeItems)\n\t\t}\n\t\tentity.deleteEntity()\n\t}, [desugaredSortableByField, getDiscriminatorValue, getSortScopeItems])\n\n\treturn {\n\t\taddItem,\n\t\tmoveItem,\n\t\tremoveItem,\n\t}\n}\n"],"names":["useCallback","itemEntities","sortEntities","BindingError","repairEntitiesOrder","useMemo","currentIndex","arrayMove"],"mappings":";;;;;AA0BO,MAAM,uBAAuB,CAAuC;AAAA,EAC1E;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AACb,MAA8E;AAC7E,QAAM,6BAA6B,aAAa;AAEhD,QAAM,oBAAoBA,kBAAY,CAAC,WAAmC;AACzE,UAAMC,gBAAe,2BAAA;AACrB,WAAO,cAAc,WAClB,mBAAmBA,aAAY,EAAE,IAAI,MAAM,GAAG,MAAA,KAAW,CAAA,IACzDC,aAAAA,aAAa,MAAM,KAAKD,aAAY,GAAG,wBAAwB;AAAA,EACnE,GAAG,CAAC,0BAA0B,oBAAoB,4BAA4B,SAAS,CAAC;AAExF,QAAM,qBAAqBD,MAAAA,YAAY,CAAC,QAAgC,UAA8B;AACrG,QAAI,UAAU,QAAW;AACxB,aAAO;AAAA,IACR;AACA,QAAI,cAAc,UAAU;AAC3B,aAAO;AAAA,IACR;AACA,UAAM,cAAc,mBAAmB,YAAY,EAAE,IAAI,MAAM,GAAG,MAAA,KAAW,CAAA;AAC7E,UAAM,gBAAgB,YAAY,KAAK;AACvC,QAAI,CAAC,eAAe;AACnB,aAAO;AAAA,IACR;AAEA,UAAM,iBAAiB,kBAAkB,MAAM;AAC/C,WAAO,eAAe,UAAU,CAAA,OAAM,GAAG,OAAO,cAAc,EAAE,KAAK,eAAe;AAAA,EACrF,GAAG,CAAC,mBAAmB,oBAAoB,cAAc,SAAS,CAAC;AAEnE,QAAM,UAAUA,MAAAA,YAA6C,CAAC,QAAQ,OAAO,eAAe;AAC3F,UAAMC,gBAAe,2BAAA;AACrB,UAAM,qBAAqB,CAAC,aAAmC,YAAiC;AAC/F,0BAAoB,YAAA,GAAe,MAAM;AACzC,mBAAa,aAAa,OAAO;AAAA,IAClC;AACA,QAAI,CAAC,0BAA0B;AAC9B,UAAI,UAAU,QAAW;AACxB,eAAOA,cAAa,gBAAgB,kBAAkB;AAAA,MACvD;AACA,YAAM,IAAIE,aAAAA,aAAa,4DAA4D;AAAA,IACpF;AACA,UAAM,WAAW,SAAS,eAAe,MAAM,IAAI;AACnD,UAAM,iBAAiB,kBAAkB,QAAQ;AAEjD,UAAM,gBAAgB,mBAAmB,UAAU,KAAK,KAAK,eAAe;AAE5EF,kBAAa,gBAAgB,CAAC,WAAW,YAAY;AACpD,qBAAe,OAAO,eAAe,GAAG,UAAA,CAAW;AACnDG,mBAAAA,oBAAoB,0BAA0B,cAAc;AAC5D,2BAAqB,WAAW,OAAO;AAAA,IACxC,CAAC;AAAA,EACF,GAAG,CAAC,gBAAgB,qBAAqB,0BAA0B,mBAAmB,4BAA4B,kBAAkB,CAAC;AAErI,QAAM,WAAWC,MAAAA,QAAsD,MAAM;AAC5E,QAAI,CAAC,0BAA0B;AAC9B,aAAO;AAAA,IACR;AACA,WAAO,CAAC,QAAQ,QAAQ,UAAU;AACjC,YAAM,gBAAgB,sBAAsB,MAAM;AAClD,YAAM,WAAW,SAAS,eAAe,MAAM,IAAI;AAEnD,0BAAoB,QAAQ,MAAM;AAElC,UAAI,kBAAkB,YAAY,cAAc,SAAS;AACxD,cAAM,iBAAiB,kBAAkB,QAAQ;AACjD,cAAMC,gBAAe,eAAe,UAAU,QAAM,GAAG,OAAO,OAAO,EAAE;AACvE,cAAM,gBAAgB,mBAAmB,UAAU,KAAK,KAAK,eAAe;AAC5E,cAAM,gBAAgBC,UAAAA,UAAU,gBAAgBD,eAAc,aAAa;AAC3EF,qBAAAA,oBAAoB,0BAA0B,aAAa;AAC3D;AAAA,MACD;AAGA,YAAMH,gBAAe,2BAAA;AACrB,YAAM,eAAe,mBAAmBA,aAAY;AAEpD,YAAM,qBAAqB,aAAa,IAAI,iBAAiB,IAAI,GAAG,MAAA,KAAW,CAAA;AAC/E,YAAM,eAAe,mBAAmB,UAAU,QAAM,GAAG,OAAO,OAAO,EAAE;AAC3E,yBAAmB,OAAO,cAAc,CAAC;AACzCG,mBAAAA,oBAAoB,0BAA0B,kBAAkB;AAEhE,YAAM,iBAAiB,aAAa,IAAI,QAAQ,GAAG,MAAA,KAAW,CAAA;AAC9D,qBAAe,OAAO,OAAO,GAAG,MAAM;AACtCA,mBAAAA,oBAAoB,0BAA0B,cAAc;AAAA,IAC7D;AAAA,EACD,GAAG;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACA;AAED,QAAM,aAAaJ,kBAAmC,CAAA,WAAU;AAC/D,QAAI,0BAA0B;AAC7B,YAAM,gBAAgB,sBAAsB,MAAM;AAClD,YAAM,iBAAiB,kBAAkB,aAAa;AACtD,YAAM,eAAe,eAAe,UAAU,QAAM,GAAG,OAAO,OAAO,EAAE;AACvE,qBAAe,OAAO,cAAc,CAAC;AACrCI,mBAAAA,oBAAoB,0BAA0B,cAAc;AAAA,IAC7D;AACA,WAAO,aAAA;AAAA,EACR,GAAG,CAAC,0BAA0B,uBAAuB,iBAAiB,CAAC;AAEvE,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAEF;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useBoardItemsMethods.js","sources":["../../../../../packages/react-board/src/internal/useBoardItemsMethods.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport {\n\tBatchUpdatesOptions,\n\tBindingError,\n\tEntityAccessor,\n\tEntityListAccessor,\n\tRelativeSingleField,\n\trepairEntitiesOrder,\n\tsortEntities,\n} from '@contember/react-binding'\nimport { BoardColumnKey, UseGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { arrayMove } from '../utils/arrayMove'\nimport { BoardAddItemMethod, BoardColumnValue, BoardMethods, BoardMoveItemMethod, BoardRemoveItemMethod } from '../types'\n\nexport type UseBoardItemsMethodsProps<ColumnValue extends BoardColumnValue> = {\n\titemEntities: EntityListAccessor\n\tconnectItemToColumn: (item: EntityAccessor, column: ColumnValue | null) => void\n\tdesugaredSortableByField: RelativeSingleField | undefined\n\tsortScope?: 'column' | 'board'\n\tgroupItemsByColumn: UseGroupItemsByColumn\n\tgetDiscriminatorValue: (entity: EntityAccessor) => BoardColumnKey\n\tcolumnIdGetter: (column: ColumnValue) => string | number\n}\n\nexport type BoardItemsMethods<ColumnValue extends BoardColumnValue> = Pick<BoardMethods<ColumnValue>, 'moveItem' | 'addItem' | 'removeItem'>\n\nexport const useBoardItemsMethods = <ColumnValue extends BoardColumnValue>({\n\titemEntities,\n\tdesugaredSortableByField,\n\tconnectItemToColumn,\n\tgroupItemsByColumn,\n\tgetDiscriminatorValue,\n\tcolumnIdGetter,\n\tsortScope = 'column',\n}: UseBoardItemsMethodsProps<ColumnValue>): BoardItemsMethods<ColumnValue> => {\n\tconst itemEntitiesEntitiesGetter = itemEntities.getAccessor\n\n\tconst getSortScopeItems = useCallback((column: string | number | null) => {\n\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\treturn sortScope === 'column'\n\t\t\t? groupItemsByColumn(itemEntities).get(column)?.slice() ?? []\n\t\t\t: sortEntities(Array.from(itemEntities), desugaredSortableByField)\n\t}, [desugaredSortableByField, groupItemsByColumn, itemEntitiesEntitiesGetter, sortScope])\n\n\tconst resolveScopedIndex = useCallback((column: string | number | null, index: number | undefined) => {\n\t\tif (index === undefined) {\n\t\t\treturn undefined\n\t\t}\n\t\tif (sortScope === 'column') {\n\t\t\treturn index\n\t\t}\n\t\tconst columnItems = groupItemsByColumn(itemEntities).get(column)?.slice() ?? []\n\t\tconst columnOnIndex = columnItems[index]\n\t\tif (!columnOnIndex) {\n\t\t\treturn undefined\n\t\t}\n\n\t\tconst sortScopeItems = getSortScopeItems(column)\n\t\treturn sortScopeItems.findIndex(it => it.id === columnOnIndex.id) ?? sortScopeItems.length\n\t}, [getSortScopeItems, groupItemsByColumn, itemEntities, sortScope])\n\n\tconst addItem = useCallback<BoardAddItemMethod<ColumnValue>>((column, index, preprocess) => {\n\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\tconst resolvedPreprocess = (getAccessor: () => EntityAccessor, options: BatchUpdatesOptions) => {\n\t\t\tconnectItemToColumn(getAccessor(), column)\n\t\t\tpreprocess?.(getAccessor, options)\n\t\t}\n\t\tif (!desugaredSortableByField) {\n\t\t\tif (index === undefined) {\n\t\t\t\treturn itemEntities.createNewEntity(resolvedPreprocess)\n\t\t\t}\n\t\t\tthrow new BindingError('Cannot add item at specific index without sortableBy field')\n\t\t}\n\t\tconst columnId = column ? columnIdGetter(column) : null\n\t\tconst sortScopeItems = getSortScopeItems(columnId)\n\n\t\tconst resolvedIndex = resolveScopedIndex(columnId, index) ?? sortScopeItems.length\n\n\t\titemEntities.createNewEntity((getEntity, options) => {\n\t\t\tsortScopeItems.splice(resolvedIndex, 0, getEntity())\n\t\t\trepairEntitiesOrder(desugaredSortableByField, sortScopeItems)\n\t\t\tresolvedPreprocess?.(getEntity, options)\n\t\t})\n\t}, [columnIdGetter, connectItemToColumn, desugaredSortableByField, getSortScopeItems, itemEntitiesEntitiesGetter, resolveScopedIndex])\n\n\tconst moveItem = useMemo<BoardMoveItemMethod<ColumnValue> | undefined>(() => {\n\t\tif (!desugaredSortableByField) {\n\t\t\treturn undefined\n\t\t}\n\t\treturn (entity, column, index) => {\n\t\t\tconst currentColumn = getDiscriminatorValue(entity)\n\t\t\tconst columnId = column ? columnIdGetter(column) : null\n\n\t\t\tconnectItemToColumn(entity, column)\n\n\t\t\tif (currentColumn === columnId || sortScope === 'board') {\n\t\t\t\tconst sortScopeItems = getSortScopeItems(columnId)\n\t\t\t\tconst currentIndex = sortScopeItems.findIndex(it => it.id === entity.id)\n\t\t\t\tconst resolvedIndex = resolveScopedIndex(columnId, index) ?? sortScopeItems.length\n\t\t\t\tconst resortedItems = arrayMove(sortScopeItems, currentIndex, resolvedIndex)\n\t\t\t\trepairEntitiesOrder(desugaredSortableByField, resortedItems)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// sort scope is column\n\t\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\t\tconst groupedItems = groupItemsByColumn(itemEntities)\n\n\t\t\tconst currentColumnItems = groupedItems.get(currentColumn ?? null)?.slice() ?? []\n\t\t\tconst currentIndex = currentColumnItems.findIndex(it => it.id === entity.id)\n\t\t\tcurrentColumnItems.splice(currentIndex, 1)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, currentColumnItems)\n\n\t\t\tconst newColumnItems = groupedItems.get(columnId)?.slice() ?? []\n\t\t\tnewColumnItems.splice(index, 0, entity)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, newColumnItems)\n\t\t}\n\t}, [\n\t\tcolumnIdGetter,\n\t\tconnectItemToColumn,\n\t\tdesugaredSortableByField,\n\t\tgetDiscriminatorValue,\n\t\tgetSortScopeItems,\n\t\tgroupItemsByColumn,\n\t\titemEntitiesEntitiesGetter,\n\t\tresolveScopedIndex,\n\t\tsortScope,\n\t])\n\n\tconst removeItem = useCallback<BoardRemoveItemMethod>(entity => {\n\t\tif (desugaredSortableByField) {\n\t\t\tconst currentColumn = getDiscriminatorValue(entity)\n\t\t\tconst sortScopeItems = getSortScopeItems(currentColumn)\n\t\t\tconst currentIndex = sortScopeItems.findIndex(it => it.id === entity.id)\n\t\t\tsortScopeItems.splice(currentIndex, 1)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, sortScopeItems)\n\t\t}\n\t\tentity.deleteEntity()\n\t}, [desugaredSortableByField, getDiscriminatorValue, getSortScopeItems])\n\n\treturn {\n\t\taddItem,\n\t\tmoveItem,\n\t\tremoveItem,\n\t}\n}\n"],"names":["itemEntities","currentIndex"],"mappings":"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"}
1
+ {"version":3,"file":"useBoardItemsMethods.js","sources":["../../../../../packages/react-board/src/internal/useBoardItemsMethods.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport {\n\tBatchUpdatesOptions,\n\tBindingError,\n\tEntityAccessor,\n\tEntityListAccessor,\n\tRelativeSingleField,\n\trepairEntitiesOrder,\n\tsortEntities,\n} from '@contember/react-binding'\nimport { BoardColumnKey, UseGroupItemsByColumn } from './useGroupItemsByColumn.js'\nimport { arrayMove } from '../utils/arrayMove.js'\nimport { BoardAddItemMethod, BoardColumnValue, BoardMethods, BoardMoveItemMethod, BoardRemoveItemMethod } from '../types/index.js'\n\nexport type UseBoardItemsMethodsProps<ColumnValue extends BoardColumnValue> = {\n\titemEntities: EntityListAccessor\n\tconnectItemToColumn: (item: EntityAccessor, column: ColumnValue | null) => void\n\tdesugaredSortableByField: RelativeSingleField | undefined\n\tsortScope?: 'column' | 'board'\n\tgroupItemsByColumn: UseGroupItemsByColumn\n\tgetDiscriminatorValue: (entity: EntityAccessor) => BoardColumnKey\n\tcolumnIdGetter: (column: ColumnValue) => string | number\n}\n\nexport type BoardItemsMethods<ColumnValue extends BoardColumnValue> = Pick<BoardMethods<ColumnValue>, 'moveItem' | 'addItem' | 'removeItem'>\n\nexport const useBoardItemsMethods = <ColumnValue extends BoardColumnValue>({\n\titemEntities,\n\tdesugaredSortableByField,\n\tconnectItemToColumn,\n\tgroupItemsByColumn,\n\tgetDiscriminatorValue,\n\tcolumnIdGetter,\n\tsortScope = 'column',\n}: UseBoardItemsMethodsProps<ColumnValue>): BoardItemsMethods<ColumnValue> => {\n\tconst itemEntitiesEntitiesGetter = itemEntities.getAccessor\n\n\tconst getSortScopeItems = useCallback((column: string | number | null) => {\n\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\treturn sortScope === 'column'\n\t\t\t? groupItemsByColumn(itemEntities).get(column)?.slice() ?? []\n\t\t\t: sortEntities(Array.from(itemEntities), desugaredSortableByField)\n\t}, [desugaredSortableByField, groupItemsByColumn, itemEntitiesEntitiesGetter, sortScope])\n\n\tconst resolveScopedIndex = useCallback((column: string | number | null, index: number | undefined) => {\n\t\tif (index === undefined) {\n\t\t\treturn undefined\n\t\t}\n\t\tif (sortScope === 'column') {\n\t\t\treturn index\n\t\t}\n\t\tconst columnItems = groupItemsByColumn(itemEntities).get(column)?.slice() ?? []\n\t\tconst columnOnIndex = columnItems[index]\n\t\tif (!columnOnIndex) {\n\t\t\treturn undefined\n\t\t}\n\n\t\tconst sortScopeItems = getSortScopeItems(column)\n\t\treturn sortScopeItems.findIndex(it => it.id === columnOnIndex.id) ?? sortScopeItems.length\n\t}, [getSortScopeItems, groupItemsByColumn, itemEntities, sortScope])\n\n\tconst addItem = useCallback<BoardAddItemMethod<ColumnValue>>((column, index, preprocess) => {\n\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\tconst resolvedPreprocess = (getAccessor: () => EntityAccessor, options: BatchUpdatesOptions) => {\n\t\t\tconnectItemToColumn(getAccessor(), column)\n\t\t\tpreprocess?.(getAccessor, options)\n\t\t}\n\t\tif (!desugaredSortableByField) {\n\t\t\tif (index === undefined) {\n\t\t\t\treturn itemEntities.createNewEntity(resolvedPreprocess)\n\t\t\t}\n\t\t\tthrow new BindingError('Cannot add item at specific index without sortableBy field')\n\t\t}\n\t\tconst columnId = column ? columnIdGetter(column) : null\n\t\tconst sortScopeItems = getSortScopeItems(columnId)\n\n\t\tconst resolvedIndex = resolveScopedIndex(columnId, index) ?? sortScopeItems.length\n\n\t\titemEntities.createNewEntity((getEntity, options) => {\n\t\t\tsortScopeItems.splice(resolvedIndex, 0, getEntity())\n\t\t\trepairEntitiesOrder(desugaredSortableByField, sortScopeItems)\n\t\t\tresolvedPreprocess?.(getEntity, options)\n\t\t})\n\t}, [columnIdGetter, connectItemToColumn, desugaredSortableByField, getSortScopeItems, itemEntitiesEntitiesGetter, resolveScopedIndex])\n\n\tconst moveItem = useMemo<BoardMoveItemMethod<ColumnValue> | undefined>(() => {\n\t\tif (!desugaredSortableByField) {\n\t\t\treturn undefined\n\t\t}\n\t\treturn (entity, column, index) => {\n\t\t\tconst currentColumn = getDiscriminatorValue(entity)\n\t\t\tconst columnId = column ? columnIdGetter(column) : null\n\n\t\t\tconnectItemToColumn(entity, column)\n\n\t\t\tif (currentColumn === columnId || sortScope === 'board') {\n\t\t\t\tconst sortScopeItems = getSortScopeItems(columnId)\n\t\t\t\tconst currentIndex = sortScopeItems.findIndex(it => it.id === entity.id)\n\t\t\t\tconst resolvedIndex = resolveScopedIndex(columnId, index) ?? sortScopeItems.length\n\t\t\t\tconst resortedItems = arrayMove(sortScopeItems, currentIndex, resolvedIndex)\n\t\t\t\trepairEntitiesOrder(desugaredSortableByField, resortedItems)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// sort scope is column\n\t\t\tconst itemEntities = itemEntitiesEntitiesGetter()\n\t\t\tconst groupedItems = groupItemsByColumn(itemEntities)\n\n\t\t\tconst currentColumnItems = groupedItems.get(currentColumn ?? null)?.slice() ?? []\n\t\t\tconst currentIndex = currentColumnItems.findIndex(it => it.id === entity.id)\n\t\t\tcurrentColumnItems.splice(currentIndex, 1)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, currentColumnItems)\n\n\t\t\tconst newColumnItems = groupedItems.get(columnId)?.slice() ?? []\n\t\t\tnewColumnItems.splice(index, 0, entity)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, newColumnItems)\n\t\t}\n\t}, [\n\t\tcolumnIdGetter,\n\t\tconnectItemToColumn,\n\t\tdesugaredSortableByField,\n\t\tgetDiscriminatorValue,\n\t\tgetSortScopeItems,\n\t\tgroupItemsByColumn,\n\t\titemEntitiesEntitiesGetter,\n\t\tresolveScopedIndex,\n\t\tsortScope,\n\t])\n\n\tconst removeItem = useCallback<BoardRemoveItemMethod>(entity => {\n\t\tif (desugaredSortableByField) {\n\t\t\tconst currentColumn = getDiscriminatorValue(entity)\n\t\t\tconst sortScopeItems = getSortScopeItems(currentColumn)\n\t\t\tconst currentIndex = sortScopeItems.findIndex(it => it.id === entity.id)\n\t\t\tsortScopeItems.splice(currentIndex, 1)\n\t\t\trepairEntitiesOrder(desugaredSortableByField, sortScopeItems)\n\t\t}\n\t\tentity.deleteEntity()\n\t}, [desugaredSortableByField, getDiscriminatorValue, getSortScopeItems])\n\n\treturn {\n\t\taddItem,\n\t\tmoveItem,\n\t\tremoveItem,\n\t}\n}\n"],"names":["itemEntities","currentIndex"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateBoardColumns.cjs","sources":["../../../../../packages/react-board/src/internal/useCreateBoardColumns.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { UseGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { EntityListAccessor } from '@contember/react-binding'\nimport { BoardNullColumnPlaceholder } from '../const'\nimport { BoardColumnNode, BoardColumnValue } from '../types'\n\nexport const useCreateBoardColumns = <ColumnValue extends BoardColumnValue>({ groupItemsByColumn, items, columns, columnIdGetter }: {\n\titems: EntityListAccessor\n\tcolumns: Iterable<ColumnValue>\n\tcolumnIdGetter: (column: ColumnValue) => string | number\n\tgroupItemsByColumn: UseGroupItemsByColumn\n}): BoardColumnNode<ColumnValue>[] => {\n\treturn useMemo(() => {\n\t\tconst itemsByColumn = groupItemsByColumn(items)\n\n\t\tconst nullItems = itemsByColumn.get(null) ?? []\n\t\tconst result: BoardColumnNode<ColumnValue>[] = [\n\t\t\t{\n\t\t\t\tid: BoardNullColumnPlaceholder,\n\t\t\t\tindex: Number.MAX_SAFE_INTEGER,\n\t\t\t\tvalue: null,\n\t\t\t\titems: nullItems.map((it, index) => ({ value: it, id: it.id, index })),\n\t\t\t},\n\t\t]\n\t\tlet index = 0\n\n\t\tfor (const column of columns) {\n\t\t\tresult.push({\n\t\t\t\tid: columnIdGetter(column),\n\t\t\t\tindex: index++,\n\t\t\t\tvalue: column,\n\t\t\t\titems: itemsByColumn.get(columnIdGetter(column))?.map((it, index) => ({ value: it, id: it.id, index })) ?? [],\n\t\t\t})\n\t\t}\n\t\treturn result\n\t}, [columnIdGetter, columns, groupItemsByColumn, items])\n}\n"],"names":["useMemo","BoardNullColumnPlaceholder","index"],"mappings":";;;;AAMO,MAAM,wBAAwB,CAAuC,EAAE,oBAAoB,OAAO,SAAS,qBAK5E;AACrC,SAAOA,MAAAA,QAAQ,MAAM;AACpB,UAAM,gBAAgB,mBAAmB,KAAK;AAE9C,UAAM,YAAY,cAAc,IAAI,IAAI,KAAK,CAAA;AAC7C,UAAM,SAAyC;AAAA,MAC9C;AAAA,QACC,IAAIC,OAAAA;AAAAA,QACJ,OAAO,OAAO;AAAA,QACd,OAAO;AAAA,QACP,OAAO,UAAU,IAAI,CAAC,IAAIC,YAAW,EAAE,OAAO,IAAI,IAAI,GAAG,IAAI,OAAAA,SAAQ;AAAA,MAAA;AAAA,IACtE;AAED,QAAI,QAAQ;AAEZ,eAAW,UAAU,SAAS;AAC7B,aAAO,KAAK;AAAA,QACX,IAAI,eAAe,MAAM;AAAA,QACzB,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO,cAAc,IAAI,eAAe,MAAM,CAAC,GAAG,IAAI,CAAC,IAAIA,YAAW,EAAE,OAAO,IAAI,IAAI,GAAG,IAAI,OAAAA,OAAAA,EAAQ,KAAK,CAAA;AAAA,MAAC,CAC5G;AAAA,IACF;AACA,WAAO;AAAA,EACR,GAAG,CAAC,gBAAgB,SAAS,oBAAoB,KAAK,CAAC;AACxD;;"}
1
+ {"version":3,"file":"useCreateBoardColumns.cjs","sources":["../../../../../packages/react-board/src/internal/useCreateBoardColumns.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { UseGroupItemsByColumn } from './useGroupItemsByColumn.js'\nimport { EntityListAccessor } from '@contember/react-binding'\nimport { BoardNullColumnPlaceholder } from '../const.js'\nimport { BoardColumnNode, BoardColumnValue } from '../types/index.js'\n\nexport const useCreateBoardColumns = <ColumnValue extends BoardColumnValue>({ groupItemsByColumn, items, columns, columnIdGetter }: {\n\titems: EntityListAccessor\n\tcolumns: Iterable<ColumnValue>\n\tcolumnIdGetter: (column: ColumnValue) => string | number\n\tgroupItemsByColumn: UseGroupItemsByColumn\n}): BoardColumnNode<ColumnValue>[] => {\n\treturn useMemo(() => {\n\t\tconst itemsByColumn = groupItemsByColumn(items)\n\n\t\tconst nullItems = itemsByColumn.get(null) ?? []\n\t\tconst result: BoardColumnNode<ColumnValue>[] = [\n\t\t\t{\n\t\t\t\tid: BoardNullColumnPlaceholder,\n\t\t\t\tindex: Number.MAX_SAFE_INTEGER,\n\t\t\t\tvalue: null,\n\t\t\t\titems: nullItems.map((it, index) => ({ value: it, id: it.id, index })),\n\t\t\t},\n\t\t]\n\t\tlet index = 0\n\n\t\tfor (const column of columns) {\n\t\t\tresult.push({\n\t\t\t\tid: columnIdGetter(column),\n\t\t\t\tindex: index++,\n\t\t\t\tvalue: column,\n\t\t\t\titems: itemsByColumn.get(columnIdGetter(column))?.map((it, index) => ({ value: it, id: it.id, index })) ?? [],\n\t\t\t})\n\t\t}\n\t\treturn result\n\t}, [columnIdGetter, columns, groupItemsByColumn, items])\n}\n"],"names":["useMemo","BoardNullColumnPlaceholder","index"],"mappings":";;;;AAMO,MAAM,wBAAwB,CAAuC,EAAE,oBAAoB,OAAO,SAAS,qBAK5E;AACrC,SAAOA,MAAAA,QAAQ,MAAM;AACpB,UAAM,gBAAgB,mBAAmB,KAAK;AAE9C,UAAM,YAAY,cAAc,IAAI,IAAI,KAAK,CAAA;AAC7C,UAAM,SAAyC;AAAA,MAC9C;AAAA,QACC,IAAIC,OAAAA;AAAAA,QACJ,OAAO,OAAO;AAAA,QACd,OAAO;AAAA,QACP,OAAO,UAAU,IAAI,CAAC,IAAIC,YAAW,EAAE,OAAO,IAAI,IAAI,GAAG,IAAI,OAAAA,SAAQ;AAAA,MAAA;AAAA,IACtE;AAED,QAAI,QAAQ;AAEZ,eAAW,UAAU,SAAS;AAC7B,aAAO,KAAK;AAAA,QACX,IAAI,eAAe,MAAM;AAAA,QACzB,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO,cAAc,IAAI,eAAe,MAAM,CAAC,GAAG,IAAI,CAAC,IAAIA,YAAW,EAAE,OAAO,IAAI,IAAI,GAAG,IAAI,OAAAA,OAAAA,EAAQ,KAAK,CAAA;AAAA,MAAC,CAC5G;AAAA,IACF;AACA,WAAO;AAAA,EACR,GAAG,CAAC,gBAAgB,SAAS,oBAAoB,KAAK,CAAC;AACxD;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateBoardColumns.js","sources":["../../../../../packages/react-board/src/internal/useCreateBoardColumns.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { UseGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { EntityListAccessor } from '@contember/react-binding'\nimport { BoardNullColumnPlaceholder } from '../const'\nimport { BoardColumnNode, BoardColumnValue } from '../types'\n\nexport const useCreateBoardColumns = <ColumnValue extends BoardColumnValue>({ groupItemsByColumn, items, columns, columnIdGetter }: {\n\titems: EntityListAccessor\n\tcolumns: Iterable<ColumnValue>\n\tcolumnIdGetter: (column: ColumnValue) => string | number\n\tgroupItemsByColumn: UseGroupItemsByColumn\n}): BoardColumnNode<ColumnValue>[] => {\n\treturn useMemo(() => {\n\t\tconst itemsByColumn = groupItemsByColumn(items)\n\n\t\tconst nullItems = itemsByColumn.get(null) ?? []\n\t\tconst result: BoardColumnNode<ColumnValue>[] = [\n\t\t\t{\n\t\t\t\tid: BoardNullColumnPlaceholder,\n\t\t\t\tindex: Number.MAX_SAFE_INTEGER,\n\t\t\t\tvalue: null,\n\t\t\t\titems: nullItems.map((it, index) => ({ value: it, id: it.id, index })),\n\t\t\t},\n\t\t]\n\t\tlet index = 0\n\n\t\tfor (const column of columns) {\n\t\t\tresult.push({\n\t\t\t\tid: columnIdGetter(column),\n\t\t\t\tindex: index++,\n\t\t\t\tvalue: column,\n\t\t\t\titems: itemsByColumn.get(columnIdGetter(column))?.map((it, index) => ({ value: it, id: it.id, index })) ?? [],\n\t\t\t})\n\t\t}\n\t\treturn result\n\t}, [columnIdGetter, columns, groupItemsByColumn, items])\n}\n"],"names":["index"],"mappings":";;AAMO,MAAM,wBAAwB,CAAuC,EAAE,oBAAoB,OAAO,SAAS,qBAK5E;AACrC,SAAO,QAAQ,MAAM;AACpB,UAAM,gBAAgB,mBAAmB,KAAK;AAE9C,UAAM,YAAY,cAAc,IAAI,IAAI,KAAK,CAAA;AAC7C,UAAM,SAAyC;AAAA,MAC9C;AAAA,QACC,IAAI;AAAA,QACJ,OAAO,OAAO;AAAA,QACd,OAAO;AAAA,QACP,OAAO,UAAU,IAAI,CAAC,IAAIA,YAAW,EAAE,OAAO,IAAI,IAAI,GAAG,IAAI,OAAAA,SAAQ;AAAA,MAAA;AAAA,IACtE;AAED,QAAI,QAAQ;AAEZ,eAAW,UAAU,SAAS;AAC7B,aAAO,KAAK;AAAA,QACX,IAAI,eAAe,MAAM;AAAA,QACzB,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO,cAAc,IAAI,eAAe,MAAM,CAAC,GAAG,IAAI,CAAC,IAAIA,YAAW,EAAE,OAAO,IAAI,IAAI,GAAG,IAAI,OAAAA,OAAAA,EAAQ,KAAK,CAAA;AAAA,MAAC,CAC5G;AAAA,IACF;AACA,WAAO;AAAA,EACR,GAAG,CAAC,gBAAgB,SAAS,oBAAoB,KAAK,CAAC;AACxD;"}
1
+ {"version":3,"file":"useCreateBoardColumns.js","sources":["../../../../../packages/react-board/src/internal/useCreateBoardColumns.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { UseGroupItemsByColumn } from './useGroupItemsByColumn.js'\nimport { EntityListAccessor } from '@contember/react-binding'\nimport { BoardNullColumnPlaceholder } from '../const.js'\nimport { BoardColumnNode, BoardColumnValue } from '../types/index.js'\n\nexport const useCreateBoardColumns = <ColumnValue extends BoardColumnValue>({ groupItemsByColumn, items, columns, columnIdGetter }: {\n\titems: EntityListAccessor\n\tcolumns: Iterable<ColumnValue>\n\tcolumnIdGetter: (column: ColumnValue) => string | number\n\tgroupItemsByColumn: UseGroupItemsByColumn\n}): BoardColumnNode<ColumnValue>[] => {\n\treturn useMemo(() => {\n\t\tconst itemsByColumn = groupItemsByColumn(items)\n\n\t\tconst nullItems = itemsByColumn.get(null) ?? []\n\t\tconst result: BoardColumnNode<ColumnValue>[] = [\n\t\t\t{\n\t\t\t\tid: BoardNullColumnPlaceholder,\n\t\t\t\tindex: Number.MAX_SAFE_INTEGER,\n\t\t\t\tvalue: null,\n\t\t\t\titems: nullItems.map((it, index) => ({ value: it, id: it.id, index })),\n\t\t\t},\n\t\t]\n\t\tlet index = 0\n\n\t\tfor (const column of columns) {\n\t\t\tresult.push({\n\t\t\t\tid: columnIdGetter(column),\n\t\t\t\tindex: index++,\n\t\t\t\tvalue: column,\n\t\t\t\titems: itemsByColumn.get(columnIdGetter(column))?.map((it, index) => ({ value: it, id: it.id, index })) ?? [],\n\t\t\t})\n\t\t}\n\t\treturn result\n\t}, [columnIdGetter, columns, groupItemsByColumn, items])\n}\n"],"names":["index"],"mappings":";;AAMO,MAAM,wBAAwB,CAAuC,EAAE,oBAAoB,OAAO,SAAS,qBAK5E;AACrC,SAAO,QAAQ,MAAM;AACpB,UAAM,gBAAgB,mBAAmB,KAAK;AAE9C,UAAM,YAAY,cAAc,IAAI,IAAI,KAAK,CAAA;AAC7C,UAAM,SAAyC;AAAA,MAC9C;AAAA,QACC,IAAI;AAAA,QACJ,OAAO,OAAO;AAAA,QACd,OAAO;AAAA,QACP,OAAO,UAAU,IAAI,CAAC,IAAIA,YAAW,EAAE,OAAO,IAAI,IAAI,GAAG,IAAI,OAAAA,SAAQ;AAAA,MAAA;AAAA,IACtE;AAED,QAAI,QAAQ;AAEZ,eAAW,UAAU,SAAS;AAC7B,aAAO,KAAK;AAAA,QACX,IAAI,eAAe,MAAM;AAAA,QACzB,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO,cAAc,IAAI,eAAe,MAAM,CAAC,GAAG,IAAI,CAAC,IAAIA,YAAW,EAAE,OAAO,IAAI,IAAI,GAAG,IAAI,OAAAA,OAAAA,EAAQ,KAAK,CAAA;AAAA,MAAC,CAC5G;AAAA,IACF;AACA,WAAO;AAAA,EACR,GAAG,CAAC,gBAAgB,SAAS,oBAAoB,KAAK,CAAC;AACxD;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useDynamicBoard.cjs","sources":["../../../../../packages/react-board/src/internal/useDynamicBoard.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport {\n\taddEntityAtIndex,\n\tBindingError,\n\tEntityAccessor,\n\tEntityListAccessor,\n\tRelativeSingleField,\n\trepairEntitiesOrder,\n\tsortEntities,\n\tuseDesugaredRelativeSingleEntity,\n\tuseDesugaredRelativeSingleField,\n} from '@contember/react-binding'\nimport { BoardAddColumnMethod, BoardMethods, BoardMoveColumnMethod, BoardRemoveColumnMethod } from '../types'\nimport { useGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { useCreateBoardColumns } from './useCreateBoardColumns'\nimport { arrayMove } from '../utils/arrayMove'\nimport { useBoardItemsMethods } from './useBoardItemsMethods'\nimport { BoardData } from '../types/BoardData'\nimport { BoardCommonProps, BoardDynamicColumnsBindingProps } from '../components'\n\nexport type UseDynamicBoardBindingProps =\n\t& Omit<BoardCommonProps, 'children'>\n\t& BoardDynamicColumnsBindingProps\n\t& {\n\t\tcolumnEntities: EntityListAccessor\n\t\titemEntities: EntityListAccessor\n\t}\n\nconst useGetSortedColumns = (desugaredColumnSortableByField: RelativeSingleField | undefined) => {\n\treturn useCallback((columnEntities: EntityListAccessor) => {\n\t\treturn sortEntities(Array.from(columnEntities), desugaredColumnSortableByField)\n\t}, [desugaredColumnSortableByField])\n}\n\nexport const useDynamicBoard = ({\n\tsortableBy,\n\tsortScope,\n\tcolumnsSortableBy,\n\tdiscriminationField,\n\tcolumnEntities,\n\titemEntities,\n}: UseDynamicBoardBindingProps): [BoardData<EntityAccessor>, BoardMethods<EntityAccessor>] => {\n\tconst desugaredSortableByField = useDesugaredRelativeSingleField(sortableBy)\n\tconst desugaredColumnSortableByField = useDesugaredRelativeSingleField(columnsSortableBy)\n\tconst desugaredDiscriminationField = useDesugaredRelativeSingleEntity(discriminationField)\n\n\tconst columnEntitiesGetter = columnEntities.getAccessor\n\n\tconst exitingColumnIds = useMemo(() => new Set(Array.from(columnEntities).map((it: EntityAccessor) => it.id)), [columnEntities])\n\n\tconst getDiscriminatorValue = useCallback((entity: EntityAccessor) => {\n\t\tconst entityId = entity.getEntity(desugaredDiscriminationField).id\n\t\treturn exitingColumnIds.has(entityId) ? entityId : null\n\t}, [desugaredDiscriminationField, exitingColumnIds])\n\n\tconst groupItemsByColumn = useGroupItemsByColumn(getDiscriminatorValue, desugaredSortableByField)\n\n\tconst getSortedColumns = useGetSortedColumns(desugaredColumnSortableByField)\n\n\tconst columnsResult = useCreateBoardColumns<EntityAccessor>({\n\t\tcolumns: getSortedColumns(columnEntities),\n\t\tcolumnIdGetter: it => it.id,\n\t\tgroupItemsByColumn,\n\t\titems: itemEntities,\n\t})\n\n\tconst addColumn = useCallback<BoardAddColumnMethod>((index, preprocess) => {\n\t\tconst columnEntities = columnEntitiesGetter()\n\t\tif (!desugaredColumnSortableByField) {\n\t\t\tif (index === undefined) {\n\t\t\t\treturn columnEntities.createNewEntity(preprocess)\n\t\t\t}\n\t\t\tthrow new BindingError('Cannot add column at specific index without sortableBy field')\n\t\t}\n\t\taddEntityAtIndex(columnEntities, desugaredColumnSortableByField, columnEntities.length, preprocess)\n\t}, [columnEntitiesGetter, desugaredColumnSortableByField])\n\n\tconst connectItemToColumn = useCallback((item: EntityAccessor, column: EntityAccessor | null) => {\n\t\tconst hasOne = desugaredDiscriminationField.hasOneRelationPath\n\t\tconst parentEntity = item.getEntity({ hasOneRelationPath: hasOne.slice(0, -1) })\n\t\tif (column) {\n\t\t\tparentEntity.connectEntityAtField(hasOne[hasOne.length - 1].field, column)\n\t\t} else {\n\t\t\tparentEntity.disconnectEntityAtField(hasOne[hasOne.length - 1].field)\n\t\t}\n\t}, [desugaredDiscriminationField.hasOneRelationPath])\n\n\tconst moveColumn = useMemo<BoardMoveColumnMethod | undefined>(() => {\n\t\tif (!desugaredColumnSortableByField) {\n\t\t\treturn undefined\n\t\t}\n\t\treturn (entity, index) => {\n\t\t\tconst sortedColumns = getSortedColumns(columnEntitiesGetter())\n\t\t\tconst currentIndex = sortedColumns.findIndex(it => it.id === entity.id)\n\t\t\tconst resortedItems = arrayMove(sortedColumns, currentIndex, index)\n\t\t\trepairEntitiesOrder(desugaredColumnSortableByField, resortedItems)\n\t\t}\n\t}, [columnEntitiesGetter, desugaredColumnSortableByField, getSortedColumns])\n\n\tconst removeColumn = useCallback<BoardRemoveColumnMethod>(entity => {\n\t\tentity.deleteEntity()\n\t\tif (desugaredSortableByField) {\n\t\t\trepairEntitiesOrder(desugaredSortableByField, Array.from(columnEntitiesGetter()))\n\t\t}\n\t}, [columnEntitiesGetter, desugaredSortableByField])\n\n\tconst { addItem, moveItem, removeItem } = useBoardItemsMethods({\n\t\tcolumnIdGetter: it => it.id,\n\t\tconnectItemToColumn,\n\t\tdesugaredSortableByField,\n\t\tsortScope,\n\t\tgetDiscriminatorValue,\n\t\tgroupItemsByColumn,\n\t\titemEntities,\n\t})\n\n\tconst methods = useMemo(() => ({\n\t\taddItem,\n\t\tmoveItem,\n\t\tremoveItem,\n\t\tmoveColumn,\n\t\taddColumn,\n\t\tremoveColumn,\n\t}), [addItem, moveItem, removeItem, moveColumn, addColumn, removeColumn])\n\n\treturn [{ columns: columnsResult }, methods]\n}\n"],"names":["useCallback","sortEntities","useDesugaredRelativeSingleField","useDesugaredRelativeSingleEntity","useMemo","useGroupItemsByColumn","useCreateBoardColumns","columnEntities","BindingError","addEntityAtIndex","arrayMove","repairEntitiesOrder","useBoardItemsMethods"],"mappings":"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"}
1
+ {"version":3,"file":"useDynamicBoard.cjs","sources":["../../../../../packages/react-board/src/internal/useDynamicBoard.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport {\n\taddEntityAtIndex,\n\tBindingError,\n\tEntityAccessor,\n\tEntityListAccessor,\n\tRelativeSingleField,\n\trepairEntitiesOrder,\n\tsortEntities,\n\tuseDesugaredRelativeSingleEntity,\n\tuseDesugaredRelativeSingleField,\n} from '@contember/react-binding'\nimport { BoardAddColumnMethod, BoardMethods, BoardMoveColumnMethod, BoardRemoveColumnMethod } from '../types/index.js'\nimport { useGroupItemsByColumn } from './useGroupItemsByColumn.js'\nimport { useCreateBoardColumns } from './useCreateBoardColumns.js'\nimport { arrayMove } from '../utils/arrayMove.js'\nimport { useBoardItemsMethods } from './useBoardItemsMethods.js'\nimport { BoardData } from '../types/BoardData.js'\nimport { BoardCommonProps, BoardDynamicColumnsBindingProps } from '../components/index.js'\n\nexport type UseDynamicBoardBindingProps =\n\t& Omit<BoardCommonProps, 'children'>\n\t& BoardDynamicColumnsBindingProps\n\t& {\n\t\tcolumnEntities: EntityListAccessor\n\t\titemEntities: EntityListAccessor\n\t}\n\nconst useGetSortedColumns = (desugaredColumnSortableByField: RelativeSingleField | undefined) => {\n\treturn useCallback((columnEntities: EntityListAccessor) => {\n\t\treturn sortEntities(Array.from(columnEntities), desugaredColumnSortableByField)\n\t}, [desugaredColumnSortableByField])\n}\n\nexport const useDynamicBoard = ({\n\tsortableBy,\n\tsortScope,\n\tcolumnsSortableBy,\n\tdiscriminationField,\n\tcolumnEntities,\n\titemEntities,\n}: UseDynamicBoardBindingProps): [BoardData<EntityAccessor>, BoardMethods<EntityAccessor>] => {\n\tconst desugaredSortableByField = useDesugaredRelativeSingleField(sortableBy)\n\tconst desugaredColumnSortableByField = useDesugaredRelativeSingleField(columnsSortableBy)\n\tconst desugaredDiscriminationField = useDesugaredRelativeSingleEntity(discriminationField)\n\n\tconst columnEntitiesGetter = columnEntities.getAccessor\n\n\tconst exitingColumnIds = useMemo(() => new Set(Array.from(columnEntities).map((it: EntityAccessor) => it.id)), [columnEntities])\n\n\tconst getDiscriminatorValue = useCallback((entity: EntityAccessor) => {\n\t\tconst entityId = entity.getEntity(desugaredDiscriminationField).id\n\t\treturn exitingColumnIds.has(entityId) ? entityId : null\n\t}, [desugaredDiscriminationField, exitingColumnIds])\n\n\tconst groupItemsByColumn = useGroupItemsByColumn(getDiscriminatorValue, desugaredSortableByField)\n\n\tconst getSortedColumns = useGetSortedColumns(desugaredColumnSortableByField)\n\n\tconst columnsResult = useCreateBoardColumns<EntityAccessor>({\n\t\tcolumns: getSortedColumns(columnEntities),\n\t\tcolumnIdGetter: it => it.id,\n\t\tgroupItemsByColumn,\n\t\titems: itemEntities,\n\t})\n\n\tconst addColumn = useCallback<BoardAddColumnMethod>((index, preprocess) => {\n\t\tconst columnEntities = columnEntitiesGetter()\n\t\tif (!desugaredColumnSortableByField) {\n\t\t\tif (index === undefined) {\n\t\t\t\treturn columnEntities.createNewEntity(preprocess)\n\t\t\t}\n\t\t\tthrow new BindingError('Cannot add column at specific index without sortableBy field')\n\t\t}\n\t\taddEntityAtIndex(columnEntities, desugaredColumnSortableByField, columnEntities.length, preprocess)\n\t}, [columnEntitiesGetter, desugaredColumnSortableByField])\n\n\tconst connectItemToColumn = useCallback((item: EntityAccessor, column: EntityAccessor | null) => {\n\t\tconst hasOne = desugaredDiscriminationField.hasOneRelationPath\n\t\tconst parentEntity = item.getEntity({ hasOneRelationPath: hasOne.slice(0, -1) })\n\t\tif (column) {\n\t\t\tparentEntity.connectEntityAtField(hasOne[hasOne.length - 1].field, column)\n\t\t} else {\n\t\t\tparentEntity.disconnectEntityAtField(hasOne[hasOne.length - 1].field)\n\t\t}\n\t}, [desugaredDiscriminationField.hasOneRelationPath])\n\n\tconst moveColumn = useMemo<BoardMoveColumnMethod | undefined>(() => {\n\t\tif (!desugaredColumnSortableByField) {\n\t\t\treturn undefined\n\t\t}\n\t\treturn (entity, index) => {\n\t\t\tconst sortedColumns = getSortedColumns(columnEntitiesGetter())\n\t\t\tconst currentIndex = sortedColumns.findIndex(it => it.id === entity.id)\n\t\t\tconst resortedItems = arrayMove(sortedColumns, currentIndex, index)\n\t\t\trepairEntitiesOrder(desugaredColumnSortableByField, resortedItems)\n\t\t}\n\t}, [columnEntitiesGetter, desugaredColumnSortableByField, getSortedColumns])\n\n\tconst removeColumn = useCallback<BoardRemoveColumnMethod>(entity => {\n\t\tentity.deleteEntity()\n\t\tif (desugaredSortableByField) {\n\t\t\trepairEntitiesOrder(desugaredSortableByField, Array.from(columnEntitiesGetter()))\n\t\t}\n\t}, [columnEntitiesGetter, desugaredSortableByField])\n\n\tconst { addItem, moveItem, removeItem } = useBoardItemsMethods({\n\t\tcolumnIdGetter: it => it.id,\n\t\tconnectItemToColumn,\n\t\tdesugaredSortableByField,\n\t\tsortScope,\n\t\tgetDiscriminatorValue,\n\t\tgroupItemsByColumn,\n\t\titemEntities,\n\t})\n\n\tconst methods = useMemo(() => ({\n\t\taddItem,\n\t\tmoveItem,\n\t\tremoveItem,\n\t\tmoveColumn,\n\t\taddColumn,\n\t\tremoveColumn,\n\t}), [addItem, moveItem, removeItem, moveColumn, addColumn, removeColumn])\n\n\treturn [{ columns: columnsResult }, methods]\n}\n"],"names":["useCallback","sortEntities","useDesugaredRelativeSingleField","useDesugaredRelativeSingleEntity","useMemo","useGroupItemsByColumn","useCreateBoardColumns","columnEntities","BindingError","addEntityAtIndex","arrayMove","repairEntitiesOrder","useBoardItemsMethods"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useDynamicBoard.js","sources":["../../../../../packages/react-board/src/internal/useDynamicBoard.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport {\n\taddEntityAtIndex,\n\tBindingError,\n\tEntityAccessor,\n\tEntityListAccessor,\n\tRelativeSingleField,\n\trepairEntitiesOrder,\n\tsortEntities,\n\tuseDesugaredRelativeSingleEntity,\n\tuseDesugaredRelativeSingleField,\n} from '@contember/react-binding'\nimport { BoardAddColumnMethod, BoardMethods, BoardMoveColumnMethod, BoardRemoveColumnMethod } from '../types'\nimport { useGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { useCreateBoardColumns } from './useCreateBoardColumns'\nimport { arrayMove } from '../utils/arrayMove'\nimport { useBoardItemsMethods } from './useBoardItemsMethods'\nimport { BoardData } from '../types/BoardData'\nimport { BoardCommonProps, BoardDynamicColumnsBindingProps } from '../components'\n\nexport type UseDynamicBoardBindingProps =\n\t& Omit<BoardCommonProps, 'children'>\n\t& BoardDynamicColumnsBindingProps\n\t& {\n\t\tcolumnEntities: EntityListAccessor\n\t\titemEntities: EntityListAccessor\n\t}\n\nconst useGetSortedColumns = (desugaredColumnSortableByField: RelativeSingleField | undefined) => {\n\treturn useCallback((columnEntities: EntityListAccessor) => {\n\t\treturn sortEntities(Array.from(columnEntities), desugaredColumnSortableByField)\n\t}, [desugaredColumnSortableByField])\n}\n\nexport const useDynamicBoard = ({\n\tsortableBy,\n\tsortScope,\n\tcolumnsSortableBy,\n\tdiscriminationField,\n\tcolumnEntities,\n\titemEntities,\n}: UseDynamicBoardBindingProps): [BoardData<EntityAccessor>, BoardMethods<EntityAccessor>] => {\n\tconst desugaredSortableByField = useDesugaredRelativeSingleField(sortableBy)\n\tconst desugaredColumnSortableByField = useDesugaredRelativeSingleField(columnsSortableBy)\n\tconst desugaredDiscriminationField = useDesugaredRelativeSingleEntity(discriminationField)\n\n\tconst columnEntitiesGetter = columnEntities.getAccessor\n\n\tconst exitingColumnIds = useMemo(() => new Set(Array.from(columnEntities).map((it: EntityAccessor) => it.id)), [columnEntities])\n\n\tconst getDiscriminatorValue = useCallback((entity: EntityAccessor) => {\n\t\tconst entityId = entity.getEntity(desugaredDiscriminationField).id\n\t\treturn exitingColumnIds.has(entityId) ? entityId : null\n\t}, [desugaredDiscriminationField, exitingColumnIds])\n\n\tconst groupItemsByColumn = useGroupItemsByColumn(getDiscriminatorValue, desugaredSortableByField)\n\n\tconst getSortedColumns = useGetSortedColumns(desugaredColumnSortableByField)\n\n\tconst columnsResult = useCreateBoardColumns<EntityAccessor>({\n\t\tcolumns: getSortedColumns(columnEntities),\n\t\tcolumnIdGetter: it => it.id,\n\t\tgroupItemsByColumn,\n\t\titems: itemEntities,\n\t})\n\n\tconst addColumn = useCallback<BoardAddColumnMethod>((index, preprocess) => {\n\t\tconst columnEntities = columnEntitiesGetter()\n\t\tif (!desugaredColumnSortableByField) {\n\t\t\tif (index === undefined) {\n\t\t\t\treturn columnEntities.createNewEntity(preprocess)\n\t\t\t}\n\t\t\tthrow new BindingError('Cannot add column at specific index without sortableBy field')\n\t\t}\n\t\taddEntityAtIndex(columnEntities, desugaredColumnSortableByField, columnEntities.length, preprocess)\n\t}, [columnEntitiesGetter, desugaredColumnSortableByField])\n\n\tconst connectItemToColumn = useCallback((item: EntityAccessor, column: EntityAccessor | null) => {\n\t\tconst hasOne = desugaredDiscriminationField.hasOneRelationPath\n\t\tconst parentEntity = item.getEntity({ hasOneRelationPath: hasOne.slice(0, -1) })\n\t\tif (column) {\n\t\t\tparentEntity.connectEntityAtField(hasOne[hasOne.length - 1].field, column)\n\t\t} else {\n\t\t\tparentEntity.disconnectEntityAtField(hasOne[hasOne.length - 1].field)\n\t\t}\n\t}, [desugaredDiscriminationField.hasOneRelationPath])\n\n\tconst moveColumn = useMemo<BoardMoveColumnMethod | undefined>(() => {\n\t\tif (!desugaredColumnSortableByField) {\n\t\t\treturn undefined\n\t\t}\n\t\treturn (entity, index) => {\n\t\t\tconst sortedColumns = getSortedColumns(columnEntitiesGetter())\n\t\t\tconst currentIndex = sortedColumns.findIndex(it => it.id === entity.id)\n\t\t\tconst resortedItems = arrayMove(sortedColumns, currentIndex, index)\n\t\t\trepairEntitiesOrder(desugaredColumnSortableByField, resortedItems)\n\t\t}\n\t}, [columnEntitiesGetter, desugaredColumnSortableByField, getSortedColumns])\n\n\tconst removeColumn = useCallback<BoardRemoveColumnMethod>(entity => {\n\t\tentity.deleteEntity()\n\t\tif (desugaredSortableByField) {\n\t\t\trepairEntitiesOrder(desugaredSortableByField, Array.from(columnEntitiesGetter()))\n\t\t}\n\t}, [columnEntitiesGetter, desugaredSortableByField])\n\n\tconst { addItem, moveItem, removeItem } = useBoardItemsMethods({\n\t\tcolumnIdGetter: it => it.id,\n\t\tconnectItemToColumn,\n\t\tdesugaredSortableByField,\n\t\tsortScope,\n\t\tgetDiscriminatorValue,\n\t\tgroupItemsByColumn,\n\t\titemEntities,\n\t})\n\n\tconst methods = useMemo(() => ({\n\t\taddItem,\n\t\tmoveItem,\n\t\tremoveItem,\n\t\tmoveColumn,\n\t\taddColumn,\n\t\tremoveColumn,\n\t}), [addItem, moveItem, removeItem, moveColumn, addColumn, removeColumn])\n\n\treturn [{ columns: columnsResult }, methods]\n}\n"],"names":["columnEntities"],"mappings":"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"}
1
+ {"version":3,"file":"useDynamicBoard.js","sources":["../../../../../packages/react-board/src/internal/useDynamicBoard.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport {\n\taddEntityAtIndex,\n\tBindingError,\n\tEntityAccessor,\n\tEntityListAccessor,\n\tRelativeSingleField,\n\trepairEntitiesOrder,\n\tsortEntities,\n\tuseDesugaredRelativeSingleEntity,\n\tuseDesugaredRelativeSingleField,\n} from '@contember/react-binding'\nimport { BoardAddColumnMethod, BoardMethods, BoardMoveColumnMethod, BoardRemoveColumnMethod } from '../types/index.js'\nimport { useGroupItemsByColumn } from './useGroupItemsByColumn.js'\nimport { useCreateBoardColumns } from './useCreateBoardColumns.js'\nimport { arrayMove } from '../utils/arrayMove.js'\nimport { useBoardItemsMethods } from './useBoardItemsMethods.js'\nimport { BoardData } from '../types/BoardData.js'\nimport { BoardCommonProps, BoardDynamicColumnsBindingProps } from '../components/index.js'\n\nexport type UseDynamicBoardBindingProps =\n\t& Omit<BoardCommonProps, 'children'>\n\t& BoardDynamicColumnsBindingProps\n\t& {\n\t\tcolumnEntities: EntityListAccessor\n\t\titemEntities: EntityListAccessor\n\t}\n\nconst useGetSortedColumns = (desugaredColumnSortableByField: RelativeSingleField | undefined) => {\n\treturn useCallback((columnEntities: EntityListAccessor) => {\n\t\treturn sortEntities(Array.from(columnEntities), desugaredColumnSortableByField)\n\t}, [desugaredColumnSortableByField])\n}\n\nexport const useDynamicBoard = ({\n\tsortableBy,\n\tsortScope,\n\tcolumnsSortableBy,\n\tdiscriminationField,\n\tcolumnEntities,\n\titemEntities,\n}: UseDynamicBoardBindingProps): [BoardData<EntityAccessor>, BoardMethods<EntityAccessor>] => {\n\tconst desugaredSortableByField = useDesugaredRelativeSingleField(sortableBy)\n\tconst desugaredColumnSortableByField = useDesugaredRelativeSingleField(columnsSortableBy)\n\tconst desugaredDiscriminationField = useDesugaredRelativeSingleEntity(discriminationField)\n\n\tconst columnEntitiesGetter = columnEntities.getAccessor\n\n\tconst exitingColumnIds = useMemo(() => new Set(Array.from(columnEntities).map((it: EntityAccessor) => it.id)), [columnEntities])\n\n\tconst getDiscriminatorValue = useCallback((entity: EntityAccessor) => {\n\t\tconst entityId = entity.getEntity(desugaredDiscriminationField).id\n\t\treturn exitingColumnIds.has(entityId) ? entityId : null\n\t}, [desugaredDiscriminationField, exitingColumnIds])\n\n\tconst groupItemsByColumn = useGroupItemsByColumn(getDiscriminatorValue, desugaredSortableByField)\n\n\tconst getSortedColumns = useGetSortedColumns(desugaredColumnSortableByField)\n\n\tconst columnsResult = useCreateBoardColumns<EntityAccessor>({\n\t\tcolumns: getSortedColumns(columnEntities),\n\t\tcolumnIdGetter: it => it.id,\n\t\tgroupItemsByColumn,\n\t\titems: itemEntities,\n\t})\n\n\tconst addColumn = useCallback<BoardAddColumnMethod>((index, preprocess) => {\n\t\tconst columnEntities = columnEntitiesGetter()\n\t\tif (!desugaredColumnSortableByField) {\n\t\t\tif (index === undefined) {\n\t\t\t\treturn columnEntities.createNewEntity(preprocess)\n\t\t\t}\n\t\t\tthrow new BindingError('Cannot add column at specific index without sortableBy field')\n\t\t}\n\t\taddEntityAtIndex(columnEntities, desugaredColumnSortableByField, columnEntities.length, preprocess)\n\t}, [columnEntitiesGetter, desugaredColumnSortableByField])\n\n\tconst connectItemToColumn = useCallback((item: EntityAccessor, column: EntityAccessor | null) => {\n\t\tconst hasOne = desugaredDiscriminationField.hasOneRelationPath\n\t\tconst parentEntity = item.getEntity({ hasOneRelationPath: hasOne.slice(0, -1) })\n\t\tif (column) {\n\t\t\tparentEntity.connectEntityAtField(hasOne[hasOne.length - 1].field, column)\n\t\t} else {\n\t\t\tparentEntity.disconnectEntityAtField(hasOne[hasOne.length - 1].field)\n\t\t}\n\t}, [desugaredDiscriminationField.hasOneRelationPath])\n\n\tconst moveColumn = useMemo<BoardMoveColumnMethod | undefined>(() => {\n\t\tif (!desugaredColumnSortableByField) {\n\t\t\treturn undefined\n\t\t}\n\t\treturn (entity, index) => {\n\t\t\tconst sortedColumns = getSortedColumns(columnEntitiesGetter())\n\t\t\tconst currentIndex = sortedColumns.findIndex(it => it.id === entity.id)\n\t\t\tconst resortedItems = arrayMove(sortedColumns, currentIndex, index)\n\t\t\trepairEntitiesOrder(desugaredColumnSortableByField, resortedItems)\n\t\t}\n\t}, [columnEntitiesGetter, desugaredColumnSortableByField, getSortedColumns])\n\n\tconst removeColumn = useCallback<BoardRemoveColumnMethod>(entity => {\n\t\tentity.deleteEntity()\n\t\tif (desugaredSortableByField) {\n\t\t\trepairEntitiesOrder(desugaredSortableByField, Array.from(columnEntitiesGetter()))\n\t\t}\n\t}, [columnEntitiesGetter, desugaredSortableByField])\n\n\tconst { addItem, moveItem, removeItem } = useBoardItemsMethods({\n\t\tcolumnIdGetter: it => it.id,\n\t\tconnectItemToColumn,\n\t\tdesugaredSortableByField,\n\t\tsortScope,\n\t\tgetDiscriminatorValue,\n\t\tgroupItemsByColumn,\n\t\titemEntities,\n\t})\n\n\tconst methods = useMemo(() => ({\n\t\taddItem,\n\t\tmoveItem,\n\t\tremoveItem,\n\t\tmoveColumn,\n\t\taddColumn,\n\t\tremoveColumn,\n\t}), [addItem, moveItem, removeItem, moveColumn, addColumn, removeColumn])\n\n\treturn [{ columns: columnsResult }, methods]\n}\n"],"names":["columnEntities"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useStaticBoard.cjs","sources":["../../../../../packages/react-board/src/internal/useStaticBoard.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport { EntityAccessor, EntityListAccessor, useDesugaredRelativeSingleField } from '@contember/react-binding'\nimport { BoardMethods, BoardStaticColumnValue } from '../types'\nimport { useGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { useCreateBoardColumns } from './useCreateBoardColumns'\nimport { useBoardItemsMethods } from './useBoardItemsMethods'\nimport { BoardData } from '../types/BoardData'\nimport { BoardCommonProps, BoardStaticColumnsBindingProps } from '../components'\n\nexport type UseStaticBoardBindingProps =\n\t& Omit<BoardCommonProps, 'children'>\n\t& BoardStaticColumnsBindingProps\n\t& {\n\t\titemEntities: EntityListAccessor\n\t}\n\nexport const useStaticBoard = ({\n\tsortableBy,\n\tsortScope,\n\tcolumns,\n\tdiscriminationField,\n\titemEntities,\n}: UseStaticBoardBindingProps): [BoardData<BoardStaticColumnValue>, BoardMethods<BoardStaticColumnValue>] => {\n\tconst desugaredSortableByField = useDesugaredRelativeSingleField(sortableBy)\n\tconst desugaredDiscriminationField = useDesugaredRelativeSingleField(discriminationField)\n\n\tconst getDiscriminatorValue = useCallback((entity: EntityAccessor) => {\n\t\treturn entity.getField<string>(desugaredDiscriminationField).value\n\t}, [desugaredDiscriminationField])\n\n\tconst groupItemsByColumn = useGroupItemsByColumn(getDiscriminatorValue, desugaredSortableByField)\n\n\tconst columnsResult = useCreateBoardColumns({\n\t\tcolumns,\n\t\tcolumnIdGetter: it => it.value,\n\t\tgroupItemsByColumn,\n\t\titems: itemEntities,\n\t})\n\n\tconst connectItemToColumn = useCallback((item: EntityAccessor, column: BoardStaticColumnValue | null) => {\n\t\titem.getField(desugaredDiscriminationField).updateValue(column?.value ?? null)\n\t}, [desugaredDiscriminationField])\n\n\tconst { addItem, moveItem, removeItem } = useBoardItemsMethods({\n\t\tcolumnIdGetter: it => it.value,\n\t\tconnectItemToColumn,\n\t\tgroupItemsByColumn,\n\t\titemEntities,\n\t\tdesugaredSortableByField,\n\t\tsortScope,\n\t\tgetDiscriminatorValue,\n\t})\n\n\tconst methods = useMemo(() => ({ addItem, moveItem, removeItem }), [addItem, moveItem, removeItem])\n\n\treturn [{ columns: columnsResult }, methods]\n}\n"],"names":["useDesugaredRelativeSingleField","useCallback","useGroupItemsByColumn","useCreateBoardColumns","useBoardItemsMethods","useMemo"],"mappings":";;;;;;;AAgBO,MAAM,iBAAiB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,MAA6G;AAC5G,QAAM,2BAA2BA,aAAAA,gCAAgC,UAAU;AAC3E,QAAM,+BAA+BA,aAAAA,gCAAgC,mBAAmB;AAExF,QAAM,wBAAwBC,kBAAY,CAAC,WAA2B;AACrE,WAAO,OAAO,SAAiB,4BAA4B,EAAE;AAAA,EAC9D,GAAG,CAAC,4BAA4B,CAAC;AAEjC,QAAM,qBAAqBC,sBAAAA,sBAAsB,uBAAuB,wBAAwB;AAEhG,QAAM,gBAAgBC,sBAAAA,sBAAsB;AAAA,IAC3C;AAAA,IACA,gBAAgB,QAAM,GAAG;AAAA,IACzB;AAAA,IACA,OAAO;AAAA,EAAA,CACP;AAED,QAAM,sBAAsBF,MAAAA,YAAY,CAAC,MAAsB,WAA0C;AACxG,SAAK,SAAS,4BAA4B,EAAE,YAAY,QAAQ,SAAS,IAAI;AAAA,EAC9E,GAAG,CAAC,4BAA4B,CAAC;AAEjC,QAAM,EAAE,SAAS,UAAU,WAAA,IAAeG,qBAAAA,qBAAqB;AAAA,IAC9D,gBAAgB,QAAM,GAAG;AAAA,IACzB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACA;AAED,QAAM,UAAUC,MAAAA,QAAQ,OAAO,EAAE,SAAS,UAAU,WAAA,IAAe,CAAC,SAAS,UAAU,UAAU,CAAC;AAElG,SAAO,CAAC,EAAE,SAAS,cAAA,GAAiB,OAAO;AAC5C;;"}
1
+ {"version":3,"file":"useStaticBoard.cjs","sources":["../../../../../packages/react-board/src/internal/useStaticBoard.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport { EntityAccessor, EntityListAccessor, useDesugaredRelativeSingleField } from '@contember/react-binding'\nimport { BoardMethods, BoardStaticColumnValue } from '../types/index.js'\nimport { useGroupItemsByColumn } from './useGroupItemsByColumn.js'\nimport { useCreateBoardColumns } from './useCreateBoardColumns.js'\nimport { useBoardItemsMethods } from './useBoardItemsMethods.js'\nimport { BoardData } from '../types/BoardData.js'\nimport { BoardCommonProps, BoardStaticColumnsBindingProps } from '../components/index.js'\n\nexport type UseStaticBoardBindingProps =\n\t& Omit<BoardCommonProps, 'children'>\n\t& BoardStaticColumnsBindingProps\n\t& {\n\t\titemEntities: EntityListAccessor\n\t}\n\nexport const useStaticBoard = ({\n\tsortableBy,\n\tsortScope,\n\tcolumns,\n\tdiscriminationField,\n\titemEntities,\n}: UseStaticBoardBindingProps): [BoardData<BoardStaticColumnValue>, BoardMethods<BoardStaticColumnValue>] => {\n\tconst desugaredSortableByField = useDesugaredRelativeSingleField(sortableBy)\n\tconst desugaredDiscriminationField = useDesugaredRelativeSingleField(discriminationField)\n\n\tconst getDiscriminatorValue = useCallback((entity: EntityAccessor) => {\n\t\treturn entity.getField<string>(desugaredDiscriminationField).value\n\t}, [desugaredDiscriminationField])\n\n\tconst groupItemsByColumn = useGroupItemsByColumn(getDiscriminatorValue, desugaredSortableByField)\n\n\tconst columnsResult = useCreateBoardColumns({\n\t\tcolumns,\n\t\tcolumnIdGetter: it => it.value,\n\t\tgroupItemsByColumn,\n\t\titems: itemEntities,\n\t})\n\n\tconst connectItemToColumn = useCallback((item: EntityAccessor, column: BoardStaticColumnValue | null) => {\n\t\titem.getField(desugaredDiscriminationField).updateValue(column?.value ?? null)\n\t}, [desugaredDiscriminationField])\n\n\tconst { addItem, moveItem, removeItem } = useBoardItemsMethods({\n\t\tcolumnIdGetter: it => it.value,\n\t\tconnectItemToColumn,\n\t\tgroupItemsByColumn,\n\t\titemEntities,\n\t\tdesugaredSortableByField,\n\t\tsortScope,\n\t\tgetDiscriminatorValue,\n\t})\n\n\tconst methods = useMemo(() => ({ addItem, moveItem, removeItem }), [addItem, moveItem, removeItem])\n\n\treturn [{ columns: columnsResult }, methods]\n}\n"],"names":["useDesugaredRelativeSingleField","useCallback","useGroupItemsByColumn","useCreateBoardColumns","useBoardItemsMethods","useMemo"],"mappings":";;;;;;;AAgBO,MAAM,iBAAiB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,MAA6G;AAC5G,QAAM,2BAA2BA,aAAAA,gCAAgC,UAAU;AAC3E,QAAM,+BAA+BA,aAAAA,gCAAgC,mBAAmB;AAExF,QAAM,wBAAwBC,kBAAY,CAAC,WAA2B;AACrE,WAAO,OAAO,SAAiB,4BAA4B,EAAE;AAAA,EAC9D,GAAG,CAAC,4BAA4B,CAAC;AAEjC,QAAM,qBAAqBC,sBAAAA,sBAAsB,uBAAuB,wBAAwB;AAEhG,QAAM,gBAAgBC,sBAAAA,sBAAsB;AAAA,IAC3C;AAAA,IACA,gBAAgB,QAAM,GAAG;AAAA,IACzB;AAAA,IACA,OAAO;AAAA,EAAA,CACP;AAED,QAAM,sBAAsBF,MAAAA,YAAY,CAAC,MAAsB,WAA0C;AACxG,SAAK,SAAS,4BAA4B,EAAE,YAAY,QAAQ,SAAS,IAAI;AAAA,EAC9E,GAAG,CAAC,4BAA4B,CAAC;AAEjC,QAAM,EAAE,SAAS,UAAU,WAAA,IAAeG,qBAAAA,qBAAqB;AAAA,IAC9D,gBAAgB,QAAM,GAAG;AAAA,IACzB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACA;AAED,QAAM,UAAUC,MAAAA,QAAQ,OAAO,EAAE,SAAS,UAAU,WAAA,IAAe,CAAC,SAAS,UAAU,UAAU,CAAC;AAElG,SAAO,CAAC,EAAE,SAAS,cAAA,GAAiB,OAAO;AAC5C;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useStaticBoard.js","sources":["../../../../../packages/react-board/src/internal/useStaticBoard.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport { EntityAccessor, EntityListAccessor, useDesugaredRelativeSingleField } from '@contember/react-binding'\nimport { BoardMethods, BoardStaticColumnValue } from '../types'\nimport { useGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { useCreateBoardColumns } from './useCreateBoardColumns'\nimport { useBoardItemsMethods } from './useBoardItemsMethods'\nimport { BoardData } from '../types/BoardData'\nimport { BoardCommonProps, BoardStaticColumnsBindingProps } from '../components'\n\nexport type UseStaticBoardBindingProps =\n\t& Omit<BoardCommonProps, 'children'>\n\t& BoardStaticColumnsBindingProps\n\t& {\n\t\titemEntities: EntityListAccessor\n\t}\n\nexport const useStaticBoard = ({\n\tsortableBy,\n\tsortScope,\n\tcolumns,\n\tdiscriminationField,\n\titemEntities,\n}: UseStaticBoardBindingProps): [BoardData<BoardStaticColumnValue>, BoardMethods<BoardStaticColumnValue>] => {\n\tconst desugaredSortableByField = useDesugaredRelativeSingleField(sortableBy)\n\tconst desugaredDiscriminationField = useDesugaredRelativeSingleField(discriminationField)\n\n\tconst getDiscriminatorValue = useCallback((entity: EntityAccessor) => {\n\t\treturn entity.getField<string>(desugaredDiscriminationField).value\n\t}, [desugaredDiscriminationField])\n\n\tconst groupItemsByColumn = useGroupItemsByColumn(getDiscriminatorValue, desugaredSortableByField)\n\n\tconst columnsResult = useCreateBoardColumns({\n\t\tcolumns,\n\t\tcolumnIdGetter: it => it.value,\n\t\tgroupItemsByColumn,\n\t\titems: itemEntities,\n\t})\n\n\tconst connectItemToColumn = useCallback((item: EntityAccessor, column: BoardStaticColumnValue | null) => {\n\t\titem.getField(desugaredDiscriminationField).updateValue(column?.value ?? null)\n\t}, [desugaredDiscriminationField])\n\n\tconst { addItem, moveItem, removeItem } = useBoardItemsMethods({\n\t\tcolumnIdGetter: it => it.value,\n\t\tconnectItemToColumn,\n\t\tgroupItemsByColumn,\n\t\titemEntities,\n\t\tdesugaredSortableByField,\n\t\tsortScope,\n\t\tgetDiscriminatorValue,\n\t})\n\n\tconst methods = useMemo(() => ({ addItem, moveItem, removeItem }), [addItem, moveItem, removeItem])\n\n\treturn [{ columns: columnsResult }, methods]\n}\n"],"names":[],"mappings":";;;;;AAgBO,MAAM,iBAAiB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,MAA6G;AAC5G,QAAM,2BAA2B,gCAAgC,UAAU;AAC3E,QAAM,+BAA+B,gCAAgC,mBAAmB;AAExF,QAAM,wBAAwB,YAAY,CAAC,WAA2B;AACrE,WAAO,OAAO,SAAiB,4BAA4B,EAAE;AAAA,EAC9D,GAAG,CAAC,4BAA4B,CAAC;AAEjC,QAAM,qBAAqB,sBAAsB,uBAAuB,wBAAwB;AAEhG,QAAM,gBAAgB,sBAAsB;AAAA,IAC3C;AAAA,IACA,gBAAgB,QAAM,GAAG;AAAA,IACzB;AAAA,IACA,OAAO;AAAA,EAAA,CACP;AAED,QAAM,sBAAsB,YAAY,CAAC,MAAsB,WAA0C;AACxG,SAAK,SAAS,4BAA4B,EAAE,YAAY,QAAQ,SAAS,IAAI;AAAA,EAC9E,GAAG,CAAC,4BAA4B,CAAC;AAEjC,QAAM,EAAE,SAAS,UAAU,WAAA,IAAe,qBAAqB;AAAA,IAC9D,gBAAgB,QAAM,GAAG;AAAA,IACzB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACA;AAED,QAAM,UAAU,QAAQ,OAAO,EAAE,SAAS,UAAU,WAAA,IAAe,CAAC,SAAS,UAAU,UAAU,CAAC;AAElG,SAAO,CAAC,EAAE,SAAS,cAAA,GAAiB,OAAO;AAC5C;"}
1
+ {"version":3,"file":"useStaticBoard.js","sources":["../../../../../packages/react-board/src/internal/useStaticBoard.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport { EntityAccessor, EntityListAccessor, useDesugaredRelativeSingleField } from '@contember/react-binding'\nimport { BoardMethods, BoardStaticColumnValue } from '../types/index.js'\nimport { useGroupItemsByColumn } from './useGroupItemsByColumn.js'\nimport { useCreateBoardColumns } from './useCreateBoardColumns.js'\nimport { useBoardItemsMethods } from './useBoardItemsMethods.js'\nimport { BoardData } from '../types/BoardData.js'\nimport { BoardCommonProps, BoardStaticColumnsBindingProps } from '../components/index.js'\n\nexport type UseStaticBoardBindingProps =\n\t& Omit<BoardCommonProps, 'children'>\n\t& BoardStaticColumnsBindingProps\n\t& {\n\t\titemEntities: EntityListAccessor\n\t}\n\nexport const useStaticBoard = ({\n\tsortableBy,\n\tsortScope,\n\tcolumns,\n\tdiscriminationField,\n\titemEntities,\n}: UseStaticBoardBindingProps): [BoardData<BoardStaticColumnValue>, BoardMethods<BoardStaticColumnValue>] => {\n\tconst desugaredSortableByField = useDesugaredRelativeSingleField(sortableBy)\n\tconst desugaredDiscriminationField = useDesugaredRelativeSingleField(discriminationField)\n\n\tconst getDiscriminatorValue = useCallback((entity: EntityAccessor) => {\n\t\treturn entity.getField<string>(desugaredDiscriminationField).value\n\t}, [desugaredDiscriminationField])\n\n\tconst groupItemsByColumn = useGroupItemsByColumn(getDiscriminatorValue, desugaredSortableByField)\n\n\tconst columnsResult = useCreateBoardColumns({\n\t\tcolumns,\n\t\tcolumnIdGetter: it => it.value,\n\t\tgroupItemsByColumn,\n\t\titems: itemEntities,\n\t})\n\n\tconst connectItemToColumn = useCallback((item: EntityAccessor, column: BoardStaticColumnValue | null) => {\n\t\titem.getField(desugaredDiscriminationField).updateValue(column?.value ?? null)\n\t}, [desugaredDiscriminationField])\n\n\tconst { addItem, moveItem, removeItem } = useBoardItemsMethods({\n\t\tcolumnIdGetter: it => it.value,\n\t\tconnectItemToColumn,\n\t\tgroupItemsByColumn,\n\t\titemEntities,\n\t\tdesugaredSortableByField,\n\t\tsortScope,\n\t\tgetDiscriminatorValue,\n\t})\n\n\tconst methods = useMemo(() => ({ addItem, moveItem, removeItem }), [addItem, moveItem, removeItem])\n\n\treturn [{ columns: columnsResult }, methods]\n}\n"],"names":[],"mappings":";;;;;AAgBO,MAAM,iBAAiB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,MAA6G;AAC5G,QAAM,2BAA2B,gCAAgC,UAAU;AAC3E,QAAM,+BAA+B,gCAAgC,mBAAmB;AAExF,QAAM,wBAAwB,YAAY,CAAC,WAA2B;AACrE,WAAO,OAAO,SAAiB,4BAA4B,EAAE;AAAA,EAC9D,GAAG,CAAC,4BAA4B,CAAC;AAEjC,QAAM,qBAAqB,sBAAsB,uBAAuB,wBAAwB;AAEhG,QAAM,gBAAgB,sBAAsB;AAAA,IAC3C;AAAA,IACA,gBAAgB,QAAM,GAAG;AAAA,IACzB;AAAA,IACA,OAAO;AAAA,EAAA,CACP;AAED,QAAM,sBAAsB,YAAY,CAAC,MAAsB,WAA0C;AACxG,SAAK,SAAS,4BAA4B,EAAE,YAAY,QAAQ,SAAS,IAAI;AAAA,EAC9E,GAAG,CAAC,4BAA4B,CAAC;AAEjC,QAAM,EAAE,SAAS,UAAU,WAAA,IAAe,qBAAqB;AAAA,IAC9D,gBAAgB,QAAM,GAAG;AAAA,IACzB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACA;AAED,QAAM,UAAU,QAAQ,OAAO,EAAE,SAAS,UAAU,WAAA,IAAe,CAAC,SAAS,UAAU,UAAU,CAAC;AAElG,SAAO,CAAC,EAAE,SAAS,cAAA,GAAiB,OAAO;AAC5C;"}