@contember/react-board 2.0.0-alpha.9 → 2.0.0-beta.2

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 (80) 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 +1 -2
  6. package/dist/development/src/components/BoardEachColumn.cjs.map +1 -1
  7. package/dist/development/src/components/BoardEachColumn.js +2 -3
  8. package/dist/development/src/components/BoardEachColumn.js.map +1 -1
  9. package/dist/development/src/components/BoardEachItem.cjs.map +1 -1
  10. package/dist/development/src/components/BoardEachItem.js.map +1 -1
  11. package/dist/development/src/components/BoardNullColumn.cjs.map +1 -1
  12. package/dist/development/src/components/BoardNullColumn.js.map +1 -1
  13. package/dist/development/src/contexts.cjs.map +1 -1
  14. package/dist/development/src/internal/boardAnalyzer.cjs.map +1 -1
  15. package/dist/development/src/internal/boardAnalyzer.js.map +1 -1
  16. package/dist/development/src/internal/useBoardItemsMethods.cjs.map +1 -1
  17. package/dist/development/src/internal/useBoardItemsMethods.js.map +1 -1
  18. package/dist/development/src/internal/useCreateBoardColumns.cjs.map +1 -1
  19. package/dist/development/src/internal/useCreateBoardColumns.js.map +1 -1
  20. package/dist/development/src/internal/useDynamicBoard.cjs +2 -2
  21. package/dist/development/src/internal/useDynamicBoard.cjs.map +1 -1
  22. package/dist/development/src/internal/useDynamicBoard.js +2 -2
  23. package/dist/development/src/internal/useDynamicBoard.js.map +1 -1
  24. package/dist/development/src/internal/useGroupItemsByColumn.cjs.map +1 -1
  25. package/dist/development/src/internal/useGroupItemsByColumn.js.map +1 -1
  26. package/dist/development/src/internal/useStaticBoard.cjs +2 -2
  27. package/dist/development/src/internal/useStaticBoard.cjs.map +1 -1
  28. package/dist/development/src/internal/useStaticBoard.js +2 -2
  29. package/dist/development/src/internal/useStaticBoard.js.map +1 -1
  30. package/dist/development/src/utils/arrayMove.cjs.map +1 -1
  31. package/dist/development/src/utils/arrayMove.js.map +1 -1
  32. package/dist/production/src/components/Board.cjs.map +1 -1
  33. package/dist/production/src/components/Board.js.map +1 -1
  34. package/dist/production/src/components/BoardColumnLabel.cjs.map +1 -1
  35. package/dist/production/src/components/BoardColumnLabel.js.map +1 -1
  36. package/dist/production/src/components/BoardEachColumn.cjs +1 -2
  37. package/dist/production/src/components/BoardEachColumn.cjs.map +1 -1
  38. package/dist/production/src/components/BoardEachColumn.js +2 -3
  39. package/dist/production/src/components/BoardEachColumn.js.map +1 -1
  40. package/dist/production/src/components/BoardEachItem.cjs.map +1 -1
  41. package/dist/production/src/components/BoardEachItem.js.map +1 -1
  42. package/dist/production/src/components/BoardNullColumn.cjs.map +1 -1
  43. package/dist/production/src/components/BoardNullColumn.js.map +1 -1
  44. package/dist/production/src/contexts.cjs.map +1 -1
  45. package/dist/production/src/internal/boardAnalyzer.cjs.map +1 -1
  46. package/dist/production/src/internal/boardAnalyzer.js.map +1 -1
  47. package/dist/production/src/internal/useBoardItemsMethods.cjs.map +1 -1
  48. package/dist/production/src/internal/useBoardItemsMethods.js.map +1 -1
  49. package/dist/production/src/internal/useCreateBoardColumns.cjs.map +1 -1
  50. package/dist/production/src/internal/useCreateBoardColumns.js.map +1 -1
  51. package/dist/production/src/internal/useDynamicBoard.cjs +2 -2
  52. package/dist/production/src/internal/useDynamicBoard.cjs.map +1 -1
  53. package/dist/production/src/internal/useDynamicBoard.js +2 -2
  54. package/dist/production/src/internal/useDynamicBoard.js.map +1 -1
  55. package/dist/production/src/internal/useGroupItemsByColumn.cjs.map +1 -1
  56. package/dist/production/src/internal/useGroupItemsByColumn.js.map +1 -1
  57. package/dist/production/src/internal/useStaticBoard.cjs +2 -2
  58. package/dist/production/src/internal/useStaticBoard.cjs.map +1 -1
  59. package/dist/production/src/internal/useStaticBoard.js +2 -2
  60. package/dist/production/src/internal/useStaticBoard.js.map +1 -1
  61. package/dist/production/src/utils/arrayMove.cjs.map +1 -1
  62. package/dist/production/src/utils/arrayMove.js.map +1 -1
  63. package/dist/types/internal/boardAnalyzer.d.ts +1 -1
  64. package/dist/types/internal/boardAnalyzer.d.ts.map +1 -1
  65. package/dist/types/tsconfig.tsbuildinfo +1 -1
  66. package/dist/types/types/BoardColumnNode.d.ts +1 -1
  67. package/dist/types/types/BoardColumnNode.d.ts.map +1 -1
  68. package/dist/types/types/BoardItemNode.d.ts +1 -1
  69. package/dist/types/types/BoardItemNode.d.ts.map +1 -1
  70. package/dist/types/types/BoardMethods.d.ts +1 -1
  71. package/dist/types/types/BoardMethods.d.ts.map +1 -1
  72. package/package.json +13 -6
  73. package/src/components/BoardEachColumn.tsx +2 -2
  74. package/src/internal/boardAnalyzer.ts +1 -1
  75. package/src/internal/useDynamicBoard.ts +2 -2
  76. package/src/internal/useStaticBoard.ts +2 -2
  77. package/src/tsconfig.json +0 -1
  78. package/src/types/BoardColumnNode.ts +1 -1
  79. package/src/types/BoardItemNode.ts +1 -1
  80. package/src/types/BoardMethods.ts +1 -1
@@ -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\n\nexport const Board = Component<BoardProps>(props => {\n\tif ('entities' in props) {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <BoardQualifiedStatic {...(props as BoardQualifiedStaticProps)} />\n\t\t} else {\n\t\t\treturn <BoardQualifiedDynamic {...(props as BoardQualifiedDynamicProps)} />\n\t\t}\n\t} else {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <RelativeStaticBoard {...(props as BoardRelativeStaticProps)} />\n\t\t} else {\n\t\t\treturn <RelativeDynamicBoard {...(props as BoardRelativeDynamicProps)} />\n\t\t}\n\t}\n})\n\nexport type BoardDynamicColumnsBindingProps = {\n\tcolumns: SugaredQualifiedEntityList['entities']\n\tcolumnsSortableBy?: string | SugaredRelativeSingleField\n\tdiscriminationField: string | SugaredRelativeSingleEntity\n}\n\nexport type BoardStaticColumnsBindingProps = {\n\tcolumns: {\n\t\tvalue: string\n\t\tlabel: ReactNode\n\t}[]\n\tdiscriminationField: string | SugaredRelativeSingleField\n}\n\nexport type BoardCommonProps =\n\t& {\n\t\tchildren: ReactNode\n\t\tsortableBy?: string | SugaredRelativeSingleField\n\t\tsortScope?: 'column' | 'board'\n\t}\n\nexport type BoardQualifiedItemsProps =\n\t& Pick<SugaredQualifiedEntityList, 'entities' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardRelativeItemsProps =\n\t& Pick<SugaredRelativeEntityList, 'field' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardQualifiedDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedDynamic = Component<BoardQualifiedDynamicProps>(({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardRelativeItemsProps\n\n\nconst RelativeDynamicBoard = Component<BoardRelativeDynamicProps>(({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\nexport type BoardQualifiedStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\n\nconst BoardQualifiedStatic = Component<BoardQualifiedStaticProps>(({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeStaticBoard = Component<BoardRelativeStaticProps>(({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t</>)\n})\n"],"names":["Component","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'\nimport { Fragment, ReactNode } from 'react'\nimport { useDynamicBoard } from '../internal/useDynamicBoard'\nimport { useStaticBoard } from '../internal/useStaticBoard'\nimport { BoardColumnsContext, BoardMethodsContext } from '../contexts'\n\nexport type BoardProps =\n\t| BoardQualifiedDynamicProps\n\t| BoardRelativeDynamicProps\n\t| BoardQualifiedStaticProps\n\t| BoardRelativeStaticProps\n\n\nexport const Board = Component<BoardProps>(props => {\n\tif ('entities' in props) {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <BoardQualifiedStatic {...(props as BoardQualifiedStaticProps)} />\n\t\t} else {\n\t\t\treturn <BoardQualifiedDynamic {...(props as BoardQualifiedDynamicProps)} />\n\t\t}\n\t} else {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <RelativeStaticBoard {...(props as BoardRelativeStaticProps)} />\n\t\t} else {\n\t\t\treturn <RelativeDynamicBoard {...(props as BoardRelativeDynamicProps)} />\n\t\t}\n\t}\n})\n\nexport type BoardDynamicColumnsBindingProps = {\n\tcolumns: SugaredQualifiedEntityList['entities']\n\tcolumnsSortableBy?: string | SugaredRelativeSingleField\n\tdiscriminationField: string | SugaredRelativeSingleEntity\n}\n\nexport type BoardStaticColumnsBindingProps = {\n\tcolumns: {\n\t\tvalue: string\n\t\tlabel: ReactNode\n\t}[]\n\tdiscriminationField: string | SugaredRelativeSingleField\n}\n\nexport type BoardCommonProps =\n\t& {\n\t\tchildren: ReactNode\n\t\tsortableBy?: string | SugaredRelativeSingleField\n\t\tsortScope?: 'column' | 'board'\n\t}\n\nexport type BoardQualifiedItemsProps =\n\t& Pick<SugaredQualifiedEntityList, 'entities' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardRelativeItemsProps =\n\t& Pick<SugaredRelativeEntityList, 'field' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardQualifiedDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedDynamic = Component<BoardQualifiedDynamicProps>(({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardRelativeItemsProps\n\n\nconst RelativeDynamicBoard = Component<BoardRelativeDynamicProps>(({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\nexport type BoardQualifiedStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\n\nconst BoardQualifiedStatic = Component<BoardQualifiedStaticProps>(({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeStaticBoard = Component<BoardRelativeStaticProps>(({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t</>)\n})\n"],"names":["Component","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\n\nexport const Board = Component<BoardProps>(props => {\n\tif ('entities' in props) {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <BoardQualifiedStatic {...(props as BoardQualifiedStaticProps)} />\n\t\t} else {\n\t\t\treturn <BoardQualifiedDynamic {...(props as BoardQualifiedDynamicProps)} />\n\t\t}\n\t} else {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <RelativeStaticBoard {...(props as BoardRelativeStaticProps)} />\n\t\t} else {\n\t\t\treturn <RelativeDynamicBoard {...(props as BoardRelativeDynamicProps)} />\n\t\t}\n\t}\n})\n\nexport type BoardDynamicColumnsBindingProps = {\n\tcolumns: SugaredQualifiedEntityList['entities']\n\tcolumnsSortableBy?: string | SugaredRelativeSingleField\n\tdiscriminationField: string | SugaredRelativeSingleEntity\n}\n\nexport type BoardStaticColumnsBindingProps = {\n\tcolumns: {\n\t\tvalue: string\n\t\tlabel: ReactNode\n\t}[]\n\tdiscriminationField: string | SugaredRelativeSingleField\n}\n\nexport type BoardCommonProps =\n\t& {\n\t\tchildren: ReactNode\n\t\tsortableBy?: string | SugaredRelativeSingleField\n\t\tsortScope?: 'column' | 'board'\n\t}\n\nexport type BoardQualifiedItemsProps =\n\t& Pick<SugaredQualifiedEntityList, 'entities' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardRelativeItemsProps =\n\t& Pick<SugaredRelativeEntityList, 'field' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardQualifiedDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedDynamic = Component<BoardQualifiedDynamicProps>(({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardRelativeItemsProps\n\n\nconst RelativeDynamicBoard = Component<BoardRelativeDynamicProps>(({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\nexport type BoardQualifiedStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\n\nconst BoardQualifiedStatic = Component<BoardQualifiedStaticProps>(({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeStaticBoard = Component<BoardRelativeStaticProps>(({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t</>)\n})\n"],"names":["this","Fragment"],"mappings":";;;;;;;AA0Ba,MAAA,QAAQ,UAAsB,CAAS,UAAA;AACnD,MAAI,cAAc,OAAO;AACxB,QAAI,MAAM,QAAQ,MAAM,OAAO,GAAG;AAC1B,aAAA,uBAAC,sBAAsB,EAAA,GAAI,MAA3B,GAAA,QAAA,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAgE,GAAAA,MAAA;AAAA,IAAA,OACjE;AACC,aAAA,uBAAC,uBAAuB,EAAA,GAAI,MAA5B,GAAA,QAAA,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAkE,GAAAA,MAAA;AAAA,IAC1E;AAAA,EAAA,OACM;AACN,QAAI,MAAM,QAAQ,MAAM,OAAO,GAAG;AAC1B,aAAA,uBAAC,qBAAqB,EAAA,GAAI,MAA1B,GAAA,QAAA,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAA8D,GAAAA,MAAA;AAAA,IAAA,OAC/D;AACC,aAAA,uBAAC,sBAAsB,EAAA,GAAI,MAA3B,GAAA,QAAA,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAgE,GAAAA,MAAA;AAAA,IACxE;AAAA,EACD;AACD,CAAC;AAoCD,MAAM,wBAAwB,UAAsC,CAAC,EAAE,UAAU,SAAS,OAAO,QAAQ,SAAS,mBAAmB,qBAAqB,YAAY,WAAW,eAAe;AAC/L,QAAM,gBAAgB,qBAAqB,EAAE,UAAU,SAAS,OAAO,QAAQ;AAC/E,QAAM,kBAAkB,qBAAqB,EAAE,UAAU,QAAS,CAAA;AAClE,QAAM,CAAC,MAAM,OAAO,IAAI,gBAAgB;AAAA,IACvC,gBAAgB;AAAA,IAChB,cAAc;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACA;AACD,SACE,uBAAA,oBAAoB,UAApB,EAA6B,OAAO,SACpC,UAAC,uBAAA,oBAAoB,UAApB,EAA6B,OAAO,KAAK,SACxC,YADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAEA,EAHD,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAIA,GAAAA,MAAA;AAEF,GAAG,CAAC,EAAE,UAAU,SAAS,OAAO,QAAQ,SAAS,qBAAqB,YAAY,mBAAmB,SAAS,GAAG,QAAQ;AAExH,QAAM,iBAAiB,cAAc,gBAAgB,UAAU,GAAG;AAC5D,QAAA,iBAAiB,eAAe,OAAO,CAAM,OAAA,GAAG,SAAS,QAAQ,EAAE,IAAI,CAAM,OAAA,GAAG,QAAQ;AACxF,QAAA,eAAe,eAAe,OAAO,CAAM,OAAA,GAAG,SAAS,MAAM,EAAE,IAAI,CAAM,OAAA,GAAG,QAAQ;AAE1F,SACC,uBAAA,UAAA,EAAA,UAAA;AAAA,IAAA,uBAAC,mBAAkB,EAAA,UAAoB,SAAkB,OAAc,QACtE,UAAA;AAAA,MAAC,uBAAA,QAAA,EAAQ,GAAG,OAAO,wBAAwB,WAAW,EAAE,OAAO,oBAAoB,IAAI,oBAAvF,GAAA,QAAA,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAA4G,GAAAA,MAAA;AAAA,MAC3G,cAAe,uBAAA,OAAA,EAAO,GAAG,OAAO,eAAe,WAAW,EAAE,OAAO,WAAW,IAAI,WAApE,GAAA,QAAA,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAgF,GAAAA,MAAA;AAAA,MAC9F,aAAa,IAAI,CAAC,IAAI,UAAWC,uBAAAA,YAAA,EAAsB,UAAA,MAAR,OAAf,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA,GAAAD,MAA0B,CAAW;AAAA,IAAA,KAHvE,QAAA,MAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAIA,GAAAA,MAAA;AAAA,IACA,uBAAC,mBAAkB,EAAA,UAAU,SAC3B,UAAA;AAAA,MAAqB,qBAAA,uBAAC,OAAO,EAAA,GAAG,OAAO,sBAAsB,WAAW,EAAE,OAAO,kBAAkB,IAAI,kBAAlF,GAAA,QAAA,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAqG,GAAAA,MAAA;AAAA,MAC1H,eAAe,IAAI,CAAC,IAAI,UAAWC,uBAAAA,YAAA,EAAsB,UAAA,MAAR,OAAf,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA,GAAAD,MAA0B,CAAW;AAAA,IAAA,KAFzE,QAAA,MAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAGA,GAAAA,MAAA;AAAA,EAAA,KATO,QAAA,MAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAUR,GAAAA,MAAA;AACD,CAAC;AASD,MAAM,uBAAuB,UAAqC,CAAC,EAAE,OAAO,SAAS,OAAO,QAAQ,SAAS,mBAAmB,qBAAqB,YAAY,WAAW,eAAe;AAC1L,QAAM,gBAAgB,cAAc,EAAE,OAAO,SAAS,OAAO,QAAQ;AACrE,QAAM,kBAAkB,qBAAqB,EAAE,UAAU,QAAS,CAAA;AAClE,QAAM,CAAC,MAAM,OAAO,IAAI,gBAAgB;AAAA,IACvC,gBAAgB;AAAA,IAChB,cAAc;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACA;AACD,SACE,uBAAA,oBAAoB,UAApB,EAA6B,OAAO,SACpC,UAAC,uBAAA,oBAAoB,UAApB,EAA6B,OAAO,KAAK,SACxC,YADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAEA,EAHD,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAIA,GAAAA,MAAA;AAEF,GAAG,CAAC,EAAE,OAAO,SAAS,OAAO,QAAQ,SAAS,qBAAqB,YAAY,mBAAmB,SAAS,GAAG,QAAQ;AACrH,QAAM,iBAAiB,cAAc,gBAAgB,UAAU,GAAG;AAC5D,QAAA,iBAAiB,eAAe,OAAO,CAAM,OAAA,GAAG,SAAS,QAAQ,EAAE,IAAI,CAAM,OAAA,GAAG,QAAQ;AACxF,QAAA,eAAe,eAAe,OAAO,CAAM,OAAA,GAAG,SAAS,MAAM,EAAE,IAAI,CAAM,OAAA,GAAG,QAAQ;AAC1F,SACC,uBAAA,UAAA,EAAA,UAAA;AAAA,IAAA,uBAAC,SAAQ,EAAA,OAAc,SAAkB,OAAc,QACtD,UAAA;AAAA,MAAC,uBAAA,QAAA,EAAQ,GAAG,OAAO,wBAAwB,WAAW,EAAE,OAAO,oBAAoB,IAAI,oBAAvF,GAAA,QAAA,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAA4G,GAAAA,MAAA;AAAA,MAC3G,cAAe,uBAAA,OAAA,EAAO,GAAG,OAAO,eAAe,WAAW,EAAE,OAAO,WAAW,IAAI,WAApE,GAAA,QAAA,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAgF,GAAAA,MAAA;AAAA,MAC9F,aAAa,IAAI,CAAC,IAAI,UAAWC,uBAAAA,YAAA,EAAsB,UAAA,MAAR,OAAf,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA,GAAAD,MAA0B,CAAW;AAAA,IAAA,KAHvE,QAAA,MAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAIA,GAAAA,MAAA;AAAA,IACA,uBAAC,mBAAkB,EAAA,UAAU,SAC3B,UAAA;AAAA,MAAqB,qBAAA,uBAAC,OAAO,EAAA,GAAG,OAAO,sBAAsB,WAAW,EAAE,OAAO,kBAAkB,IAAI,kBAAlF,GAAA,QAAA,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAqG,GAAAA,MAAA;AAAA,MAC1H,eAAe,IAAI,CAAC,IAAI,UAAWC,uBAAAA,YAAA,EAAsB,UAAA,MAAR,OAAf,OAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA,GAAAD,MAA0B,CAAW;AAAA,IAAA,KAFzE,QAAA,MAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAGA,GAAAA,MAAA;AAAA,EAAA,KATO,QAAA,MAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAUR,GAAAA,MAAA;AACD,CAAC;AAOD,MAAM,uBAAuB,UAAqC,CAAC,EAAE,UAAU,SAAS,OAAO,QAAQ,SAAS,qBAAqB,YAAY,WAAW,eAAe;AAC1K,QAAM,gBAAgB,qBAAqB,EAAE,UAAU,SAAS,OAAO,QAAQ;AAC/E,QAAM,CAAC,MAAM,OAAO,IAAI,eAAe;AAAA,IACtC,cAAc;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACA;AACD,SACE,uBAAA,oBAAoB,UAApB,EAA6B,OAAO,SACpC,UAAC,uBAAA,oBAAoB,UAApB,EAA6B,OAAO,KAAK,SACxC,YADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAEA,EAHD,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAIA,GAAAA,MAAA;AAEF,GAAG,CAAC,EAAE,UAAU,SAAS,OAAO,QAAQ,SAAS,qBAAqB,YAAY,SAAS,GAAG,QAAQ;AACrG,QAAM,iBAAiB,cAAc,gBAAgB,UAAU,GAAG;AAC5D,QAAA,eAAe,eAAe,OAAO,CAAM,OAAA,GAAG,SAAS,MAAM,EAAE,IAAI,CAAM,OAAA,GAAG,QAAQ;AAC1F,4CACC,UAAC,uBAAA,mBAAA,EAAkB,UAAoB,SAAkB,OAAc,QACtE,UAAA;AAAA,IAAC,uBAAA,OAAA,EAAO,GAAG,OAAO,wBAAwB,WAAW,EAAE,OAAO,oBAAoB,IAAI,oBAAtF,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAA2G,GAAAA,MAAA;AAAA,IAC1G,cAAe,uBAAA,OAAA,EAAO,GAAG,OAAO,eAAe,WAAW,EAAE,OAAO,WAAW,IAAI,WAApE,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAgF,GAAAA,MAAA;AAAA,IAC9F,aAAa,IAAI,CAAC,IAAI,UAAWC,uBAAAA,YAAA,EAAsB,UAAA,MAAR,OAAf,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAAD,MAA0B,CAAW;AAAA,EAAA,KAHvE,QAAA,MAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAIA,EALO,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAMR,GAAAA,MAAA;AACD,CAAC;AAQD,MAAM,sBAAsB,UAAoC,CAAC,EAAE,OAAO,SAAS,OAAO,QAAQ,SAAS,qBAAqB,YAAY,WAAW,eAAe;AACrK,QAAM,gBAAgB,cAAc,EAAE,OAAO,SAAS,OAAO,QAAQ;AACrE,QAAM,CAAC,MAAM,OAAO,IAAI,eAAe;AAAA,IACtC,cAAc;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACA;AACD,SACE,uBAAA,oBAAoB,UAApB,EAA6B,OAAO,SACpC,UAAC,uBAAA,oBAAoB,UAApB,EAA6B,OAAO,KAAK,SACxC,YADF,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAEA,EAHD,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAIA,GAAAA,MAAA;AAEF,GAAG,CAAC,EAAE,OAAO,SAAS,OAAO,QAAQ,SAAS,qBAAqB,YAAY,SAAS,GAAG,QAAQ;AAClG,QAAM,iBAAiB,cAAc,gBAAgB,UAAU,GAAG;AAC5D,QAAA,eAAe,eAAe,OAAO,CAAM,OAAA,GAAG,SAAS,MAAM,EAAE,IAAI,CAAM,OAAA,GAAG,QAAQ;AAC1F,4CACC,UAAC,uBAAA,SAAA,EAAQ,OAAc,SAAkB,OAAc,QACtD,UAAA;AAAA,IAAC,uBAAA,OAAA,EAAO,GAAG,OAAO,wBAAwB,WAAW,EAAE,OAAO,oBAAoB,IAAI,oBAAtF,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAA2G,GAAAA,MAAA;AAAA,IAC1G,cAAe,uBAAA,OAAA,EAAO,GAAG,OAAO,eAAe,WAAW,EAAE,OAAO,WAAW,IAAI,WAApE,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAgF,GAAAA,MAAA;AAAA,IAC9F,aAAa,IAAI,CAAC,IAAI,UAAWC,uBAAAA,YAAA,EAAsB,UAAA,MAAR,OAAf,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAAAD,MAA0B,CAAW;AAAA,EAAA,KAHvE,QAAA,MAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAIA,EALO,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAMR,GAAAA,MAAA;AACD,CAAC;"}
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\n\nexport const Board = Component<BoardProps>(props => {\n\tif ('entities' in props) {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <BoardQualifiedStatic {...(props as BoardQualifiedStaticProps)} />\n\t\t} else {\n\t\t\treturn <BoardQualifiedDynamic {...(props as BoardQualifiedDynamicProps)} />\n\t\t}\n\t} else {\n\t\tif (Array.isArray(props.columns)) {\n\t\t\treturn <RelativeStaticBoard {...(props as BoardRelativeStaticProps)} />\n\t\t} else {\n\t\t\treturn <RelativeDynamicBoard {...(props as BoardRelativeDynamicProps)} />\n\t\t}\n\t}\n})\n\nexport type BoardDynamicColumnsBindingProps = {\n\tcolumns: SugaredQualifiedEntityList['entities']\n\tcolumnsSortableBy?: string | SugaredRelativeSingleField\n\tdiscriminationField: string | SugaredRelativeSingleEntity\n}\n\nexport type BoardStaticColumnsBindingProps = {\n\tcolumns: {\n\t\tvalue: string\n\t\tlabel: ReactNode\n\t}[]\n\tdiscriminationField: string | SugaredRelativeSingleField\n}\n\nexport type BoardCommonProps =\n\t& {\n\t\tchildren: ReactNode\n\t\tsortableBy?: string | SugaredRelativeSingleField\n\t\tsortScope?: 'column' | 'board'\n\t}\n\nexport type BoardQualifiedItemsProps =\n\t& Pick<SugaredQualifiedEntityList, 'entities' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardRelativeItemsProps =\n\t& Pick<SugaredRelativeEntityList, 'field' | 'orderBy' | 'limit' | 'offset'>\n\n\nexport type BoardQualifiedDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\nconst BoardQualifiedDynamic = Component<BoardQualifiedDynamicProps>(({ entities, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeDynamicProps =\n\t& BoardCommonProps\n\t& BoardDynamicColumnsBindingProps\n\t& BoardRelativeItemsProps\n\n\nconst RelativeDynamicBoard = Component<BoardRelativeDynamicProps>(({ field, orderBy, limit, offset, columns, columnsSortableBy, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst columnsAccessor = useEntityListSubTree({ entities: columns })\n\tconst [data, methods] = useDynamicBoard({\n\t\tcolumnEntities: columnsAccessor,\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tcolumnsSortableBy,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, columnsSortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst columnChildren = childrenByType.filter(it => it.type === 'column').map(it => it.children)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<HasOne {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t\t<EntityListSubTree entities={columns}>\n\t\t\t{columnsSortableBy && <Field {...typeof columnsSortableBy === 'string' ? { field: columnsSortableBy } : columnsSortableBy} />}\n\t\t\t{columnChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\nexport type BoardQualifiedStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardQualifiedItemsProps\n\n\nconst BoardQualifiedStatic = Component<BoardQualifiedStaticProps>(({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityListSubTree({ entities, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ entities, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<EntityListSubTree entities={entities} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</EntityListSubTree>\n\t</>)\n})\n\n\nexport type BoardRelativeStaticProps =\n\t& BoardCommonProps\n\t& BoardStaticColumnsBindingProps\n\t& BoardRelativeItemsProps\n\nconst RelativeStaticBoard = Component<BoardRelativeStaticProps>(({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, sortScope, children }) => {\n\tconst itemsAccessor = useEntityList({ field, orderBy, limit, offset })\n\tconst [data, methods] = useStaticBoard({\n\t\titemEntities: itemsAccessor,\n\t\tcolumns,\n\t\tsortableBy,\n\t\tsortScope,\n\t\tdiscriminationField,\n\t})\n\treturn (\n\t\t<BoardMethodsContext.Provider value={methods}>\n\t\t\t<BoardColumnsContext.Provider value={data.columns}>\n\t\t\t\t{children}\n\t\t\t</BoardColumnsContext.Provider>\n\t\t</BoardMethodsContext.Provider>\n\t)\n}, ({ field, orderBy, limit, offset, columns, discriminationField, sortableBy, children }, env) => {\n\tconst childrenByType = boardAnalyzer.processChildren(children, env)\n\tconst itemChildren = childrenByType.filter(it => it.type === 'item').map(it => it.children)\n\treturn (<>\n\t\t<HasMany field={field} orderBy={orderBy} limit={limit} offset={offset}>\n\t\t\t<Field {...typeof discriminationField === 'string' ? { field: discriminationField } : discriminationField} />\n\t\t\t{sortableBy && <Field {...typeof sortableBy === 'string' ? { field: sortableBy } : sortableBy} />}\n\t\t\t{itemChildren.map((it, index) => <Fragment key={index}>{it}</Fragment>)}\n\t\t</HasMany>\n\t</>)\n})\n"],"names":["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;AAC/B,QAAA,QAAQA,+BAAwB,EAAA;AACtC,SAAO,SAAS,WAAW,QAAQC,8BAAA,OAAAC,cAAA,UAAA,EAAG,gBAAM,MAAT,GAAA,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'\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;AAC/B,QAAA,QAAQA,iCAAwB;AACtC,SAAO,SAAS,WAAW,QAAQC,8BAAA,OAAAC,cAAA,UAAA,EAAG,gBAAM,MAAT,GAAA,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;AAC/B,QAAA,QAAQ,sBAAwB,EAAA;AACtC,SAAO,SAAS,WAAW,QAAQ,uBAAA,UAAA,EAAG,gBAAM,MAAT,GAAA,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'\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;AAC/B,QAAA,QAAQ,wBAAwB;AACtC,SAAO,SAAS,WAAW,QAAQ,uBAAA,UAAA,EAAG,gBAAM,MAAT,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAAA,MAAe,IAAM;AACzD;"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxDevRuntime = require("react/jsx-dev-runtime");
4
- const binding = require("@contember/binding");
5
4
  const reactBinding = require("@contember/react-binding");
6
5
  const contexts = require("../contexts.cjs");
7
6
  const BoardColumn = require("./BoardColumn.cjs");
@@ -12,7 +11,7 @@ const BoardEachColumn = ({ children }) => {
12
11
  if (column.id === _const.BoardNullColumnPlaceholder) {
13
12
  return null;
14
13
  }
15
- return /* @__PURE__ */ jsxDevRuntime.jsxDEV(contexts.BoardCurrentColumnContext.Provider, { value: column, children: column.value instanceof binding.EntityAccessor ? /* @__PURE__ */ jsxDevRuntime.jsxDEV(reactBinding.Entity, { accessor: column.value, children }, void 0, false, {
14
+ return /* @__PURE__ */ jsxDevRuntime.jsxDEV(contexts.BoardCurrentColumnContext.Provider, { value: column, children: reactBinding.isEntityAccessor(column.value) ? /* @__PURE__ */ jsxDevRuntime.jsxDEV(reactBinding.Entity, { accessor: column.value, children }, void 0, false, {
16
15
  fileName: "/home/runner/work/contember/contember/packages/react-board/src/components/BoardEachColumn.tsx",
17
16
  lineNumber: 21,
18
17
  columnNumber: 7
@@ -1 +1 @@
1
- {"version":3,"file":"BoardEachColumn.cjs","sources":["../../../../../packages/react-board/src/components/BoardEachColumn.tsx"],"sourcesContent":["import { EntityAccessor } from '@contember/binding'\nimport { Entity } from '@contember/react-binding'\nimport { BoardCurrentColumnContext, useBoardColumns } from '../contexts'\nimport { ReactNode } from 'react'\nimport { BoardColumn } from './BoardColumn'\nimport { BoardNullColumnPlaceholder } from '../const'\n\nexport const BoardEachColumn = ({ children }: {\n\tchildren: ReactNode\n}) => {\n\tconst columns = useBoardColumns()\n\n\treturn <>\n\t\t{columns.map(column => {\n\t\t\tif (column.id === BoardNullColumnPlaceholder) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t<BoardCurrentColumnContext.Provider value={column} key={column.id}>\n\t\t\t\t\t{column.value instanceof EntityAccessor ? (\n\t\t\t\t\t\t<Entity accessor={column.value}>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</Entity>\n\t\t\t\t\t) : children}\n\t\t\t\t</BoardCurrentColumnContext.Provider>\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","EntityAccessor","Entity","this","BoardColumn"],"mappings":";;;;;;;;AAOO,MAAM,kBAAkB,CAAC,EAAE,eAE5B;AACL,QAAM,UAAUA,SAAAA;AAET,SAAAC,8BAAAA,OAAAC,cAAAA,UAAA,EACL,UAAQ,QAAA,IAAI,CAAU,WAAA;AAClB,QAAA,OAAO,OAAOC,mCAA4B;AACtC,aAAA;AAAA,IACR;AACA,WACEF,8BAAA,OAAAG,SAAA,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,UAAA,OAAO,iBAAiBC,QAAAA,iBACvBJ,8BAAAA,OAAAK,aAAA,QAAA,EAAO,UAAU,OAAO,OACvB,SADF,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAEAC,MAAA,IACG,SALmD,GAAA,OAAO,IAA/D,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAMA,GAAAA,MAAA;AAAA,EAAA,CAED,EAdK,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAeP,GAAAA,MAAA;AACD;AACA,gBAAgB,eAAe,CAAC,EAAE,eAAwC;AAClE,SAAAN,8BAAAA,OAACO,YAAAA,eAAa,SAAd,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAuB,GAAAD,MAAA;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'\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{columns.map(column => {\n\t\t\tif (column.id === BoardNullColumnPlaceholder) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t<BoardCurrentColumnContext.Provider value={column} key={column.id}>\n\t\t\t\t\t{isEntityAccessor(column.value) ? (\n\t\t\t\t\t\t<Entity accessor={column.value}>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</Entity>\n\t\t\t\t\t) : children}\n\t\t\t\t</BoardCurrentColumnContext.Provider>\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,gBAAgB;AAEzB,SAAAC,8BAAAA,OAAAC,cAAAA,UAAA,EACL,UAAQ,QAAA,IAAI,CAAU,WAAA;AAClB,QAAA,OAAO,OAAOC,mCAA4B;AACtC,aAAA;AAAA,IAAA;AAER,WACEF,8BAAA,OAAAG,SAAA,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,UAAAC,aAAA,iBAAiB,OAAO,KAAK,IAC5BJ,qCAAAK,aAAAA,QAAA,EAAO,UAAU,OAAO,OACvB,SADF,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAEAC,MAAA,IACG,SALmD,GAAA,OAAO,IAA/D,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAMA,GAAAA,MAAA;AAAA,EAAA,CAED,EAdK,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAeP,GAAAA,MAAA;AACD;AACA,gBAAgB,eAAe,CAAC,EAAE,eAAwC;AAClE,SAAAN,8BAAAA,OAACO,YAAAA,eAAa,SAAd,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAuB,GAAAD,MAAA;AAC/B;;"}
@@ -1,6 +1,5 @@
1
1
  import { jsxDEV, Fragment } from "react/jsx-dev-runtime";
2
- import { EntityAccessor } from "@contember/binding";
3
- import { Entity } from "@contember/react-binding";
2
+ import { isEntityAccessor, Entity } from "@contember/react-binding";
4
3
  import { useBoardColumns, BoardCurrentColumnContext } from "../contexts.js";
5
4
  import { BoardColumn } from "./BoardColumn.js";
6
5
  import { BoardNullColumnPlaceholder } from "../const.js";
@@ -10,7 +9,7 @@ const BoardEachColumn = ({ children }) => {
10
9
  if (column.id === BoardNullColumnPlaceholder) {
11
10
  return null;
12
11
  }
13
- return /* @__PURE__ */ jsxDEV(BoardCurrentColumnContext.Provider, { value: column, children: column.value instanceof EntityAccessor ? /* @__PURE__ */ jsxDEV(Entity, { accessor: column.value, children }, void 0, false, {
12
+ return /* @__PURE__ */ jsxDEV(BoardCurrentColumnContext.Provider, { value: column, children: isEntityAccessor(column.value) ? /* @__PURE__ */ jsxDEV(Entity, { accessor: column.value, children }, void 0, false, {
14
13
  fileName: "/home/runner/work/contember/contember/packages/react-board/src/components/BoardEachColumn.tsx",
15
14
  lineNumber: 21,
16
15
  columnNumber: 7
@@ -1 +1 @@
1
- {"version":3,"file":"BoardEachColumn.js","sources":["../../../../../packages/react-board/src/components/BoardEachColumn.tsx"],"sourcesContent":["import { EntityAccessor } from '@contember/binding'\nimport { Entity } from '@contember/react-binding'\nimport { BoardCurrentColumnContext, useBoardColumns } from '../contexts'\nimport { ReactNode } from 'react'\nimport { BoardColumn } from './BoardColumn'\nimport { BoardNullColumnPlaceholder } from '../const'\n\nexport const BoardEachColumn = ({ children }: {\n\tchildren: ReactNode\n}) => {\n\tconst columns = useBoardColumns()\n\n\treturn <>\n\t\t{columns.map(column => {\n\t\t\tif (column.id === BoardNullColumnPlaceholder) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t<BoardCurrentColumnContext.Provider value={column} key={column.id}>\n\t\t\t\t\t{column.value instanceof EntityAccessor ? (\n\t\t\t\t\t\t<Entity accessor={column.value}>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</Entity>\n\t\t\t\t\t) : children}\n\t\t\t\t</BoardCurrentColumnContext.Provider>\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;AAET,SAAA,uBAAA,UAAA,EACL,UAAQ,QAAA,IAAI,CAAU,WAAA;AAClB,QAAA,OAAO,OAAO,4BAA4B;AACtC,aAAA;AAAA,IACR;AACA,WACE,uBAAA,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,UAAA,OAAO,iBAAiB,iBACvB,uBAAA,QAAA,EAAO,UAAU,OAAO,OACvB,SADF,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAEAA,MAAA,IACG,SALmD,GAAA,OAAO,IAA/D,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAMA,GAAAA,MAAA;AAAA,EAAA,CAED,EAdK,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAeP,GAAAA,MAAA;AACD;AACA,gBAAgB,eAAe,CAAC,EAAE,eAAwC;AAClE,SAAA,uBAAC,eAAa,SAAd,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAuB,GAAAA,MAAA;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'\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{columns.map(column => {\n\t\t\tif (column.id === BoardNullColumnPlaceholder) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t<BoardCurrentColumnContext.Provider value={column} key={column.id}>\n\t\t\t\t\t{isEntityAccessor(column.value) ? (\n\t\t\t\t\t\t<Entity accessor={column.value}>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</Entity>\n\t\t\t\t\t) : children}\n\t\t\t\t</BoardCurrentColumnContext.Provider>\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,gBAAgB;AAEzB,SAAA,uBAAA,UAAA,EACL,UAAQ,QAAA,IAAI,CAAU,WAAA;AAClB,QAAA,OAAO,OAAO,4BAA4B;AACtC,aAAA;AAAA,IAAA;AAER,WACE,uBAAA,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,UAAA,iBAAiB,OAAO,KAAK,IAC5B,uBAAA,QAAA,EAAO,UAAU,OAAO,OACvB,SADF,GAAA,QAAA,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA,GAEAA,MAAA,IACG,SALmD,GAAA,OAAO,IAA/D,OAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAMA,GAAAA,MAAA;AAAA,EAAA,CAED,EAdK,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAeP,GAAAA,MAAA;AACD;AACA,gBAAgB,eAAe,CAAC,EAAE,eAAwC;AAClE,SAAA,uBAAC,eAAa,SAAd,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAuB,GAAAA,MAAA;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{currentColumn.items.map((item, index) => {\n\t\t\treturn (\n\t\t\t\t<BoardEachItemInner\n\t\t\t\t\tkey={item.id}\n\t\t\t\t\titem={item}\n\t\t\t\t\tcolumn={currentColumn}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardEachItemInner>\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}) => {\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;AAEtB,wEACE,UAAc,cAAA,MAAM,IAAI,CAAC,MAAM,UAAU;AAExC,WAAAC,8BAAA;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,MAAAC;AAAAA,IAAA;AAAA,EAMA,CAED,EAXK,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAYP,GAAAA,MAAA;AACD;AACA,cAAc,eAAe,CAAC,EAAE,eAAwC;AAChE,SAAAD,8BAAAA,OAACE,UAAAA,aAAW,SAAZ,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAqB,GAAAD,MAAA;AAC7B;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,MAAM,aAKxC;AACC,QAAA,iBAAiBE,MAAAA,QAAQ,OAAO;AAAA,IACrC,GAAG;AAAA,IACH;AAAA,EACG,IAAA,CAAC,MAAM,MAAM,CAAC;AAGjB,SAAAH,8BAAAA,OAACI,SAAAA,wBAAwB,UAAxB,EAAiC,OAAO,gBACxC,UAAAJ,8BAAA,OAACK,aAAO,QAAA,EAAA,UAAU,KAAK,OACrB,SADF,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAEA,GAAAJ,MAAA,EAAA,GAH6D,KAAK,IAAnE,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAIA,GAAAA,MAAA;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'\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{currentColumn.items.map((item, index) => {\n\t\t\treturn (\n\t\t\t\t<BoardEachItemInner\n\t\t\t\t\tkey={item.id}\n\t\t\t\t\titem={item}\n\t\t\t\t\tcolumn={currentColumn}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardEachItemInner>\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}) => {\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,sBAAsB;AAE5C,wEACE,UAAc,cAAA,MAAM,IAAI,CAAC,MAAM,UAAU;AAExC,WAAAC,8BAAA;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,MAAAC;AAAAA,IAMA;AAAA,EAAA,CAED,EAXK,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAYP,GAAAA,MAAA;AACD;AACA,cAAc,eAAe,CAAC,EAAE,eAAwC;AAChE,SAAAD,8BAAAA,OAACE,UAAAA,aAAW,SAAZ,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAqB,GAAAD,MAAA;AAC7B;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,MAAM,aAKxC;AACC,QAAA,iBAAiBE,MAAAA,QAAQ,OAAO;AAAA,IACrC,GAAG;AAAA,IACH;AAAA,EAAA,IACG,CAAC,MAAM,MAAM,CAAC;AAGjB,SAAAH,8BAAAA,OAACI,SAAAA,wBAAwB,UAAxB,EAAiC,OAAO,gBACxC,UAAAJ,8BAAA,OAACK,aAAO,QAAA,EAAA,UAAU,KAAK,OACrB,SADF,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAEA,GAAAJ,MAAA,EAAA,GAH6D,KAAK,IAAnE,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAIA,GAAAA,MAAA;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{currentColumn.items.map((item, index) => {\n\t\t\treturn (\n\t\t\t\t<BoardEachItemInner\n\t\t\t\t\tkey={item.id}\n\t\t\t\t\titem={item}\n\t\t\t\t\tcolumn={currentColumn}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardEachItemInner>\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}) => {\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;AAEtB,4CACE,UAAc,cAAA,MAAM,IAAI,CAAC,MAAM,UAAU;AAExC,WAAA;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,EAMA,CAED,EAXK,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAYP,GAAAA,MAAA;AACD;AACA,cAAc,eAAe,CAAC,EAAE,eAAwC;AAChE,SAAA,uBAAC,aAAW,SAAZ,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAqB,GAAAA,MAAA;AAC7B;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,MAAM,aAKxC;AACC,QAAA,iBAAiB,QAAQ,OAAO;AAAA,IACrC,GAAG;AAAA,IACH;AAAA,EACG,IAAA,CAAC,MAAM,MAAM,CAAC;AAGjB,SAAA,uBAAC,wBAAwB,UAAxB,EAAiC,OAAO,gBACxC,UAAA,uBAAC,QAAO,EAAA,UAAU,KAAK,OACrB,SADF,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAEA,GAAAA,MAAA,EAAA,GAH6D,KAAK,IAAnE,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAIA,GAAAA,MAAA;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'\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{currentColumn.items.map((item, index) => {\n\t\t\treturn (\n\t\t\t\t<BoardEachItemInner\n\t\t\t\t\tkey={item.id}\n\t\t\t\t\titem={item}\n\t\t\t\t\tcolumn={currentColumn}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</BoardEachItemInner>\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}) => {\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,sBAAsB;AAE5C,4CACE,UAAc,cAAA,MAAM,IAAI,CAAC,MAAM,UAAU;AAExC,WAAA;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,IAMA;AAAA,EAAA,CAED,EAXK,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAYP,GAAAA,MAAA;AACD;AACA,cAAc,eAAe,CAAC,EAAE,eAAwC;AAChE,SAAA,uBAAC,aAAW,SAAZ,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAqB,GAAAA,MAAA;AAC7B;AAEA,MAAM,qBAAqB,CAAC,EAAE,UAAU,MAAM,aAKxC;AACC,QAAA,iBAAiB,QAAQ,OAAO;AAAA,IACrC,GAAG;AAAA,IACH;AAAA,EAAA,IACG,CAAC,MAAM,MAAM,CAAC;AAGjB,SAAA,uBAAC,wBAAwB,UAAxB,EAAiC,OAAO,gBACxC,UAAA,uBAAC,QAAO,EAAA,UAAU,KAAK,OACrB,SADF,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAEA,GAAAA,MAAA,EAAA,GAH6D,KAAK,IAAnE,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAIA,GAAAA,MAAA;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,SAAgB,gBAAA,EAAE,KAAK,CAAM,OAAA,GAAG,OAAOC,OAAAA,0BAA0B;AAChF,MAAI,CAAC,UAAW,aAAa,OAAO,MAAM,WAAW,GAAI;AACjD,WAAA;AAAA,EACR;AAEA,8CACEC,mCAA0B,UAA1B,EAAmC,OAAO,QACzC,SADF,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAEA,GAAAC,MAAA;AAEF;;"}
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,SAAgB,gBAAA,EAAE,KAAK,CAAM,OAAA,GAAG,OAAOC,iCAA0B;AAChF,MAAI,CAAC,UAAW,aAAa,OAAO,MAAM,WAAW,GAAI;AACjD,WAAA;AAAA,EAAA;AAGR,8CACEC,mCAA0B,UAA1B,EAAmC,OAAO,QACzC,SADF,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAEA,GAAAC,MAAA;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,gBAAgB,EAAE,KAAK,CAAM,OAAA,GAAG,OAAO,0BAA0B;AAChF,MAAI,CAAC,UAAW,aAAa,OAAO,MAAM,WAAW,GAAI;AACjD,WAAA;AAAA,EACR;AAEA,gCACE,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,SADF,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAEA,GAAAA,MAAA;AAEF;"}
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,gBAAgB,EAAE,KAAK,CAAM,OAAA,GAAG,OAAO,0BAA0B;AAChF,MAAI,CAAC,UAAW,aAAa,OAAO,MAAM,WAAW,GAAI;AACjD,WAAA;AAAA,EAAA;AAGR,gCACE,0BAA0B,UAA1B,EAAmC,OAAO,QACzC,SADF,GAAA,QAAA,OAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAEA,GAAAA,MAAA;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\n\nconst BoardColumnsContext_ = createRequiredContext<BoardColumnNode[]>('BoardColumnsContext')\n/** @internal */\nexport const BoardColumnsContext = BoardColumnsContext_[0]\nexport const useBoardColumns = BoardColumnsContext_[1] as <T extends BoardColumnValue = BoardColumnValue>() => BoardColumnNode<T>[]\n\nconst _BoardColumnContext = createRequiredContext<BoardColumnNode>('BoardCurrentColumnContext')\n/** @internal*/\nexport const BoardCurrentColumnContext = _BoardColumnContext[0]\nexport const useBoardCurrentColumn = _BoardColumnContext[1]\n\nconst BoardCurrentItemContext_ = createRequiredContext<BoardItemNode & { column: BoardColumnNode }>('BoardCurrentItemContext')\n/** @internal*/\nexport const BoardCurrentItemContext = BoardCurrentItemContext_[0]\nexport const useBoardCurrentItem = BoardCurrentItemContext_[1]\n"],"names":["createRequiredContext"],"mappings":";;;AAGA,MAAM,uBAAuBA,WAAAA,sBAAyC,qBAAqB;AAE9E,MAAA,sBAAsB,qBAAqB,CAAC;AAC5C,MAAA,kBAAkB,qBAAqB,CAAC;AAGrD,MAAM,uBAAuBA,WAAAA,sBAAyC,qBAAqB;AAE9E,MAAA,sBAAsB,qBAAqB,CAAC;AAC5C,MAAA,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,sBAAsBA,WAAAA,sBAAuC,2BAA2B;AAEjF,MAAA,4BAA4B,oBAAoB,CAAC;AACjD,MAAA,wBAAwB,oBAAoB,CAAC;AAE1D,MAAM,2BAA2BA,WAAAA,sBAAmE,yBAAyB;AAEhH,MAAA,0BAA0B,yBAAyB,CAAC;AACpD,MAAA,sBAAsB,yBAAyB,CAAC;;;;;;;;;"}
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\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,iCAAyC,qBAAqB;AAE9E,MAAA,sBAAsB,qBAAqB,CAAC;AAC5C,MAAA,kBAAkB,qBAAqB,CAAC;AAGrD,MAAM,uBAAuBA,iCAAyC,qBAAqB;AAE9E,MAAA,sBAAsB,qBAAqB,CAAC;AAC5C,MAAA,kBAAkB,qBAAqB,CAAC;AAErD,MAAM,sBAAsBA,iCAAuC,2BAA2B;AAEjF,MAAA,4BAA4B,oBAAoB,CAAC;AACjD,MAAA,wBAAwB,oBAAoB,CAAC;AAE1D,MAAM,2BAA2BA,iCAAmE,yBAAyB;AAEhH,MAAA,0BAA0B,yBAAyB,CAAC;AACpD,MAAA,sBAAsB,yBAAyB,CAAC;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"boardAnalyzer.cjs","sources":["../../../../../packages/react-board/src/internal/boardAnalyzer.ts"],"sourcesContent":["import { Environment } from '@contember/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,wBAAK,KAAA,CAAA,UAAS,EAAE,MAAM,QAAiB,UAAU,KAAK,MAAM,SAAS,IAAIC,UAAS,SAAA;AACvG,MAAM,aAAa,IAAID,wBAAK,KAAA,CAAA,UAAS,EAAE,MAAM,UAAmB,UAAU,KAAK,MAAM,SAAS,IAAIE,YAAW,WAAA;AAEtG,MAAM,gBAAgB,IAAIC,wBAAA,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'\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,wBAAK,KAAA,CAAA,UAAS,EAAE,MAAM,QAAiB,UAAU,KAAK,MAAM,SAAS,IAAIC,UAAAA,SAAS;AACvG,MAAM,aAAa,IAAID,wBAAK,KAAA,CAAA,UAAS,EAAE,MAAM,UAAmB,UAAU,KAAK,MAAM,SAAS,IAAIE,YAAAA,WAAW;AAEtG,MAAM,gBAAgB,IAAIC,wBAAA,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/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,SAAS,IAAI,SAAS;AACvG,MAAM,aAAa,IAAI,KAAK,CAAA,UAAS,EAAE,MAAM,UAAmB,UAAU,KAAK,MAAM,SAAS,IAAI,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'\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,SAAS,IAAI,SAAS;AACvG,MAAM,aAAa,IAAI,KAAK,CAAA,UAAS,EAAE,MAAM,UAAmB,UAAU,KAAK,MAAM,SAAS,IAAI,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, sortEntities,\n} from '@contember/react-binding'\nimport { BoardColumnKey, UseGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { arrayMove } from '../utils/arrayMove'\nimport { BoardAddItemMethod, BoardColumnValue, BoardMethods, BoardMoveItemMethod, BoardRemoveItemMethod } from '../types'\n\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\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\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\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\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\n\t\t}\n\t}, [columnIdGetter, connectItemToColumn, desugaredSortableByField, getDiscriminatorValue, getSortScopeItems, groupItemsByColumn, itemEntitiesEntitiesGetter, resolveScopedIndex, sortScope])\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, sortEntities,\n} from '@contember/react-binding'\nimport { BoardColumnKey, UseGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { arrayMove } from '../utils/arrayMove'\nimport { BoardAddItemMethod, BoardColumnValue, BoardMethods, BoardMoveItemMethod, BoardRemoveItemMethod } from '../types'\n\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\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\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\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\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\n\t\t}\n\t}, [columnIdGetter, connectItemToColumn, desugaredSortableByField, getDiscriminatorValue, getSortScopeItems, groupItemsByColumn, itemEntitiesEntitiesGetter, resolveScopedIndex, sortScope])\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 +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, sortEntities,\n} from '@contember/react-binding'\nimport { BoardColumnKey, UseGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { arrayMove } from '../utils/arrayMove'\nimport { BoardAddItemMethod, BoardColumnValue, BoardMethods, BoardMoveItemMethod, BoardRemoveItemMethod } from '../types'\n\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\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\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\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\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\n\t\t}\n\t}, [columnIdGetter, connectItemToColumn, desugaredSortableByField, getDiscriminatorValue, getSortScopeItems, groupItemsByColumn, itemEntitiesEntitiesGetter, resolveScopedIndex, sortScope])\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, sortEntities,\n} from '@contember/react-binding'\nimport { BoardColumnKey, UseGroupItemsByColumn } from './useGroupItemsByColumn'\nimport { arrayMove } from '../utils/arrayMove'\nimport { BoardAddItemMethod, BoardColumnValue, BoardMethods, BoardMoveItemMethod, BoardRemoveItemMethod } from '../types'\n\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\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\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\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\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\n\t\t}\n\t}, [columnIdGetter, connectItemToColumn, desugaredSortableByField, getDiscriminatorValue, getSortScopeItems, groupItemsByColumn, itemEntitiesEntitiesGetter, resolveScopedIndex, sortScope])\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\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\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\n\t}, [columnIdGetter, columns, groupItemsByColumn, items])\n}\n"],"names":["useMemo","BoardNullColumnPlaceholder","index"],"mappings":";;;;AAMO,MAAM,wBAAwB,CAAuC,EAAE,oBAAoB,OAAO,SAAS,qBAK5E;AAErC,SAAOA,cAAQ,MAAM;AACd,UAAA,gBAAgB,mBAAmB,KAAK;AAE9C,UAAM,YAAY,cAAc,IAAI,IAAI,KAAK,CAAA;AAC7C,UAAM,SAAyC;AAAA,MAC9C;AAAA,QACC,IAAIC,OAAA;AAAA,QACJ,OAAO,OAAO;AAAA,QACd,OAAO;AAAA,QACP,OAAO,UAAU,IAAI,CAAC,IAAIC,YAAW,EAAE,OAAO,IAAI,IAAI,GAAG,IAAI,OAAAA,OAAQ,EAAA;AAAA,MACtE;AAAA,IAAA;AAED,QAAI,QAAQ;AAGZ,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,SAAQ,KAAK,CAAC;AAAA,MAAA,CAC5G;AAAA,IACF;AACO,WAAA;AAAA,KAEL,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'\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\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\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\n\t}, [columnIdGetter, columns, groupItemsByColumn, items])\n}\n"],"names":["useMemo","BoardNullColumnPlaceholder","index"],"mappings":";;;;AAMO,MAAM,wBAAwB,CAAuC,EAAE,oBAAoB,OAAO,SAAS,qBAK5E;AAErC,SAAOA,cAAQ,MAAM;AACd,UAAA,gBAAgB,mBAAmB,KAAK;AAE9C,UAAM,YAAY,cAAc,IAAI,IAAI,KAAK,CAAC;AAC9C,UAAM,SAAyC;AAAA,MAC9C;AAAA,QACC,IAAIC,OAAA;AAAA,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,IAEvE;AACA,QAAI,QAAQ;AAGZ,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,OAAQ,EAAA,KAAK,CAAA;AAAA,MAAC,CAC5G;AAAA,IAAA;AAEK,WAAA;AAAA,KAEL,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\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\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\n\t}, [columnIdGetter, columns, groupItemsByColumn, items])\n}\n"],"names":["index"],"mappings":";;AAMO,MAAM,wBAAwB,CAAuC,EAAE,oBAAoB,OAAO,SAAS,qBAK5E;AAErC,SAAO,QAAQ,MAAM;AACd,UAAA,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,OAAQ,EAAA;AAAA,MACtE;AAAA,IAAA;AAED,QAAI,QAAQ;AAGZ,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,SAAQ,KAAK,CAAC;AAAA,MAAA,CAC5G;AAAA,IACF;AACO,WAAA;AAAA,KAEL,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'\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\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\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\n\t}, [columnIdGetter, columns, groupItemsByColumn, items])\n}\n"],"names":["index"],"mappings":";;AAMO,MAAM,wBAAwB,CAAuC,EAAE,oBAAoB,OAAO,SAAS,qBAK5E;AAErC,SAAO,QAAQ,MAAM;AACd,UAAA,gBAAgB,mBAAmB,KAAK;AAE9C,UAAM,YAAY,cAAc,IAAI,IAAI,KAAK,CAAC;AAC9C,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,IAEvE;AACA,QAAI,QAAQ;AAGZ,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,OAAQ,EAAA,KAAK,CAAA;AAAA,MAAC,CAC5G;AAAA,IAAA;AAEK,WAAA;AAAA,KAEL,CAAC,gBAAgB,SAAS,oBAAoB,KAAK,CAAC;AACxD;"}
@@ -25,7 +25,7 @@ const useDynamicBoard = ({
25
25
  const columnEntitiesGetter = columnEntities.getAccessor;
26
26
  const exitingColumnIds = React.useMemo(() => new Set(Array.from(columnEntities).map((it) => it.id)), [columnEntities]);
27
27
  const getDiscriminatorValue = React.useCallback((entity) => {
28
- const entityId = entity.getRelativeSingleEntity(desugaredDiscriminationField).id;
28
+ const entityId = entity.getEntity(desugaredDiscriminationField).id;
29
29
  return exitingColumnIds.has(entityId) ? entityId : null;
30
30
  }, [desugaredDiscriminationField, exitingColumnIds]);
31
31
  const groupItemsByColumn = useGroupItemsByColumn.useGroupItemsByColumn(getDiscriminatorValue, desugaredSortableByField);
@@ -48,7 +48,7 @@ const useDynamicBoard = ({
48
48
  }, [columnEntitiesGetter, desugaredColumnSortableByField]);
49
49
  const connectItemToColumn = React.useCallback((item, column) => {
50
50
  const hasOne = desugaredDiscriminationField.hasOneRelationPath;
51
- const parentEntity = item.getRelativeSingleEntity({ hasOneRelationPath: hasOne.slice(0, -1) });
51
+ const parentEntity = item.getEntity({ hasOneRelationPath: hasOne.slice(0, -1) });
52
52
  if (column) {
53
53
  parentEntity.connectEntityAtField(hasOne[hasOne.length - 1].field, column);
54
54
  } else {
@@ -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 {\n\tBoardAddColumnMethod,\n\tBoardMethods,\n\tBoardMoveColumnMethod,\n\tBoardRemoveColumnMethod,\n} 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\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\n\tconst desugaredSortableByField = useDesugaredRelativeSingleField(sortableBy)\n\tconst desugaredColumnSortableByField = useDesugaredRelativeSingleField(columnsSortableBy)\n\tconst desugaredDiscriminationField = useDesugaredRelativeSingleEntity(discriminationField)\n\n\tconst columnEntitiesGetter = columnEntities.getAccessor\n\n\n\tconst exitingColumnIds = useMemo(() => new Set(Array.from(columnEntities).map(it => it.id)), [columnEntities])\n\n\tconst getDiscriminatorValue = useCallback((entity: EntityAccessor) => {\n\t\tconst entityId = entity.getRelativeSingleEntity(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.getRelativeSingleEntity({ 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\n\t}, [desugaredDiscriminationField.hasOneRelationPath])\n\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\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 {\n\tBoardAddColumnMethod,\n\tBoardMethods,\n\tBoardMoveColumnMethod,\n\tBoardRemoveColumnMethod,\n} 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\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\n\tconst desugaredSortableByField = useDesugaredRelativeSingleField(sortableBy)\n\tconst desugaredColumnSortableByField = useDesugaredRelativeSingleField(columnsSortableBy)\n\tconst desugaredDiscriminationField = useDesugaredRelativeSingleEntity(discriminationField)\n\n\tconst columnEntitiesGetter = columnEntities.getAccessor\n\n\n\tconst exitingColumnIds = useMemo(() => new Set(Array.from(columnEntities).map(it => 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\n\t}, [desugaredDiscriminationField.hasOneRelationPath])\n\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\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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"}
@@ -23,7 +23,7 @@ const useDynamicBoard = ({
23
23
  const columnEntitiesGetter = columnEntities.getAccessor;
24
24
  const exitingColumnIds = useMemo(() => new Set(Array.from(columnEntities).map((it) => it.id)), [columnEntities]);
25
25
  const getDiscriminatorValue = useCallback((entity) => {
26
- const entityId = entity.getRelativeSingleEntity(desugaredDiscriminationField).id;
26
+ const entityId = entity.getEntity(desugaredDiscriminationField).id;
27
27
  return exitingColumnIds.has(entityId) ? entityId : null;
28
28
  }, [desugaredDiscriminationField, exitingColumnIds]);
29
29
  const groupItemsByColumn = useGroupItemsByColumn(getDiscriminatorValue, desugaredSortableByField);
@@ -46,7 +46,7 @@ const useDynamicBoard = ({
46
46
  }, [columnEntitiesGetter, desugaredColumnSortableByField]);
47
47
  const connectItemToColumn = useCallback((item, column) => {
48
48
  const hasOne = desugaredDiscriminationField.hasOneRelationPath;
49
- const parentEntity = item.getRelativeSingleEntity({ hasOneRelationPath: hasOne.slice(0, -1) });
49
+ const parentEntity = item.getEntity({ hasOneRelationPath: hasOne.slice(0, -1) });
50
50
  if (column) {
51
51
  parentEntity.connectEntityAtField(hasOne[hasOne.length - 1].field, column);
52
52
  } else {