@clickhouse/click-ui 0.15.0 → 0.16.0-canary.ge7a3fdac.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -63,13 +63,13 @@ const copyGridElements = async ({
|
|
|
63
63
|
case "columns":
|
|
64
64
|
Array.from({ length: rowCount }, (_, index) => pageStart + index).forEach(
|
|
65
65
|
(rowIndex) => {
|
|
66
|
-
const columnList = [...selection.columns].sort();
|
|
66
|
+
const columnList = [...selection.columns].sort((a, b) => a - b);
|
|
67
67
|
columnListLoop(tbody, columnList, cell, rowIndex);
|
|
68
68
|
}
|
|
69
69
|
);
|
|
70
70
|
break;
|
|
71
71
|
case "rows":
|
|
72
|
-
[...selection.rows].sort().forEach((rowIndex) => {
|
|
72
|
+
[...selection.rows].sort((a, b) => a - b).forEach((rowIndex) => {
|
|
73
73
|
const columnList = Array.from(
|
|
74
74
|
{ length: columnCount },
|
|
75
75
|
(_, index) => pageStart + index
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copyGridElements.cjs","sources":["../../../../src/components/Grid/copyGridElements.ts"],"sourcesContent":["import { CellProps, SelectedRegion, SelectionFocus } from './types';\nimport { RefObject, createElement } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { flushSync } from 'react-dom';\n\ninterface CopyGridElementsProps {\n cell: CellProps;\n selection: SelectedRegion;\n rowCount: number;\n columnCount: number;\n pageStart?: number;\n focus: SelectionFocus;\n outerRef: RefObject<HTMLDivElement>;\n}\n\nconst addCellToRow = (\n row: HTMLTableRowElement,\n cell: CellProps,\n rowIndex: number,\n columnIndex: number\n) => {\n const td = document.createElement('td');\n const container = document.createElement('div');\n const root = createRoot(container);\n\n flushSync(() => {\n root.render(\n createElement(cell, { rowIndex, columnIndex, width: 1000, type: 'row-cell' })\n );\n });\n\n td.innerHTML = container.innerHTML;\n root.unmount();\n\n row.appendChild(td);\n};\n\nconst columnListLoop = (\n tbody: HTMLTableSectionElement,\n columnList: number[],\n cell: CellProps,\n rowIndex: number\n) => {\n const row = document.createElement('tr');\n columnList.forEach(columnIndex => {\n addCellToRow(row, cell, rowIndex, columnIndex);\n });\n tbody.appendChild(row);\n};\n\nconst copyGridElements = async ({\n cell,\n selection,\n rowCount,\n columnCount,\n pageStart = 0,\n focus,\n outerRef,\n}: CopyGridElementsProps): Promise<void> => {\n if (!outerRef.current) {\n throw 'Could not fetch selection';\n }\n const table = document.createElement('table');\n table.style.position = 'absolute';\n table.style.top = '-200px';\n table.style.left = '-200px';\n table.style.width = '0px';\n table.style.height = '0px';\n table.style.overflow = 'hidden';\n const thead = document.createElement('thead');\n const tbody = document.createElement('tbody');\n\n switch (selection.type) {\n case 'rectangle':\n Array.from(\n { length: selection.bounds.bottom + 1 - selection.bounds.top },\n (_, index) => selection.bounds.top + index\n ).forEach(rowIndex => {\n const columnList = Array.from(\n { length: selection.bounds.right + 1 - selection.bounds.left },\n (_, index) => selection.bounds.left + index\n );\n columnListLoop(tbody, columnList, cell, rowIndex);\n });\n break;\n case 'columns':\n Array.from({ length: rowCount }, (_, index) => pageStart + index).forEach(\n rowIndex => {\n const columnList = [...selection.columns].sort();\n columnListLoop(tbody, columnList, cell, rowIndex);\n }\n );\n break;\n case 'rows':\n [...selection.rows].sort().forEach(rowIndex => {\n
|
|
1
|
+
{"version":3,"file":"copyGridElements.cjs","sources":["../../../../src/components/Grid/copyGridElements.ts"],"sourcesContent":["import { CellProps, SelectedRegion, SelectionFocus } from './types';\nimport { RefObject, createElement } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { flushSync } from 'react-dom';\n\ninterface CopyGridElementsProps {\n cell: CellProps;\n selection: SelectedRegion;\n rowCount: number;\n columnCount: number;\n pageStart?: number;\n focus: SelectionFocus;\n outerRef: RefObject<HTMLDivElement>;\n}\n\nconst addCellToRow = (\n row: HTMLTableRowElement,\n cell: CellProps,\n rowIndex: number,\n columnIndex: number\n) => {\n const td = document.createElement('td');\n const container = document.createElement('div');\n const root = createRoot(container);\n\n flushSync(() => {\n root.render(\n createElement(cell, { rowIndex, columnIndex, width: 1000, type: 'row-cell' })\n );\n });\n\n td.innerHTML = container.innerHTML;\n root.unmount();\n\n row.appendChild(td);\n};\n\nconst columnListLoop = (\n tbody: HTMLTableSectionElement,\n columnList: number[],\n cell: CellProps,\n rowIndex: number\n) => {\n const row = document.createElement('tr');\n columnList.forEach(columnIndex => {\n addCellToRow(row, cell, rowIndex, columnIndex);\n });\n tbody.appendChild(row);\n};\n\nconst copyGridElements = async ({\n cell,\n selection,\n rowCount,\n columnCount,\n pageStart = 0,\n focus,\n outerRef,\n}: CopyGridElementsProps): Promise<void> => {\n if (!outerRef.current) {\n throw 'Could not fetch selection';\n }\n const table = document.createElement('table');\n table.style.position = 'absolute';\n table.style.top = '-200px';\n table.style.left = '-200px';\n table.style.width = '0px';\n table.style.height = '0px';\n table.style.overflow = 'hidden';\n const thead = document.createElement('thead');\n const tbody = document.createElement('tbody');\n\n switch (selection.type) {\n case 'rectangle':\n Array.from(\n { length: selection.bounds.bottom + 1 - selection.bounds.top },\n (_, index) => selection.bounds.top + index\n ).forEach(rowIndex => {\n const columnList = Array.from(\n { length: selection.bounds.right + 1 - selection.bounds.left },\n (_, index) => selection.bounds.left + index\n );\n columnListLoop(tbody, columnList, cell, rowIndex);\n });\n break;\n case 'columns':\n Array.from({ length: rowCount }, (_, index) => pageStart + index).forEach(\n rowIndex => {\n const columnList = [...selection.columns].sort((a, b) => a - b);\n columnListLoop(tbody, columnList, cell, rowIndex);\n }\n );\n break;\n case 'rows':\n [...selection.rows]\n .sort((a, b) => a - b)\n .forEach(rowIndex => {\n const columnList = Array.from(\n { length: columnCount },\n (_, index) => pageStart + index\n );\n columnListLoop(tbody, columnList, cell, rowIndex);\n });\n break;\n case 'empty':\n columnListLoop(tbody, [focus.column], cell, focus.row);\n break;\n default:\n throw new Error('incorrect selection provided');\n }\n\n table.appendChild(thead);\n table.appendChild(tbody);\n\n outerRef.current.appendChild(table);\n\n const windowSelection = window.getSelection();\n if (windowSelection) {\n const range = document.createRange();\n range.selectNodeContents(table);\n windowSelection.removeAllRanges();\n windowSelection.addRange(range);\n await navigator.clipboard.writeText(table.innerText);\n windowSelection.removeAllRanges();\n\n outerRef.current.removeChild(table);\n } else {\n throw 'Could not fetch selection';\n }\n};\n\nexport default copyGridElements;\n"],"names":["createRoot","flushSync","createElement"],"mappings":"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"}
|
|
@@ -59,13 +59,13 @@ const copyGridElements = async ({
|
|
|
59
59
|
case "columns":
|
|
60
60
|
Array.from({ length: rowCount }, (_, index) => pageStart + index).forEach(
|
|
61
61
|
(rowIndex) => {
|
|
62
|
-
const columnList = [...selection.columns].sort();
|
|
62
|
+
const columnList = [...selection.columns].sort((a, b) => a - b);
|
|
63
63
|
columnListLoop(tbody, columnList, cell, rowIndex);
|
|
64
64
|
}
|
|
65
65
|
);
|
|
66
66
|
break;
|
|
67
67
|
case "rows":
|
|
68
|
-
[...selection.rows].sort().forEach((rowIndex) => {
|
|
68
|
+
[...selection.rows].sort((a, b) => a - b).forEach((rowIndex) => {
|
|
69
69
|
const columnList = Array.from(
|
|
70
70
|
{ length: columnCount },
|
|
71
71
|
(_, index) => pageStart + index
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copyGridElements.js","sources":["../../../../src/components/Grid/copyGridElements.ts"],"sourcesContent":["import { CellProps, SelectedRegion, SelectionFocus } from './types';\nimport { RefObject, createElement } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { flushSync } from 'react-dom';\n\ninterface CopyGridElementsProps {\n cell: CellProps;\n selection: SelectedRegion;\n rowCount: number;\n columnCount: number;\n pageStart?: number;\n focus: SelectionFocus;\n outerRef: RefObject<HTMLDivElement>;\n}\n\nconst addCellToRow = (\n row: HTMLTableRowElement,\n cell: CellProps,\n rowIndex: number,\n columnIndex: number\n) => {\n const td = document.createElement('td');\n const container = document.createElement('div');\n const root = createRoot(container);\n\n flushSync(() => {\n root.render(\n createElement(cell, { rowIndex, columnIndex, width: 1000, type: 'row-cell' })\n );\n });\n\n td.innerHTML = container.innerHTML;\n root.unmount();\n\n row.appendChild(td);\n};\n\nconst columnListLoop = (\n tbody: HTMLTableSectionElement,\n columnList: number[],\n cell: CellProps,\n rowIndex: number\n) => {\n const row = document.createElement('tr');\n columnList.forEach(columnIndex => {\n addCellToRow(row, cell, rowIndex, columnIndex);\n });\n tbody.appendChild(row);\n};\n\nconst copyGridElements = async ({\n cell,\n selection,\n rowCount,\n columnCount,\n pageStart = 0,\n focus,\n outerRef,\n}: CopyGridElementsProps): Promise<void> => {\n if (!outerRef.current) {\n throw 'Could not fetch selection';\n }\n const table = document.createElement('table');\n table.style.position = 'absolute';\n table.style.top = '-200px';\n table.style.left = '-200px';\n table.style.width = '0px';\n table.style.height = '0px';\n table.style.overflow = 'hidden';\n const thead = document.createElement('thead');\n const tbody = document.createElement('tbody');\n\n switch (selection.type) {\n case 'rectangle':\n Array.from(\n { length: selection.bounds.bottom + 1 - selection.bounds.top },\n (_, index) => selection.bounds.top + index\n ).forEach(rowIndex => {\n const columnList = Array.from(\n { length: selection.bounds.right + 1 - selection.bounds.left },\n (_, index) => selection.bounds.left + index\n );\n columnListLoop(tbody, columnList, cell, rowIndex);\n });\n break;\n case 'columns':\n Array.from({ length: rowCount }, (_, index) => pageStart + index).forEach(\n rowIndex => {\n const columnList = [...selection.columns].sort();\n columnListLoop(tbody, columnList, cell, rowIndex);\n }\n );\n break;\n case 'rows':\n [...selection.rows].sort().forEach(rowIndex => {\n
|
|
1
|
+
{"version":3,"file":"copyGridElements.js","sources":["../../../../src/components/Grid/copyGridElements.ts"],"sourcesContent":["import { CellProps, SelectedRegion, SelectionFocus } from './types';\nimport { RefObject, createElement } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { flushSync } from 'react-dom';\n\ninterface CopyGridElementsProps {\n cell: CellProps;\n selection: SelectedRegion;\n rowCount: number;\n columnCount: number;\n pageStart?: number;\n focus: SelectionFocus;\n outerRef: RefObject<HTMLDivElement>;\n}\n\nconst addCellToRow = (\n row: HTMLTableRowElement,\n cell: CellProps,\n rowIndex: number,\n columnIndex: number\n) => {\n const td = document.createElement('td');\n const container = document.createElement('div');\n const root = createRoot(container);\n\n flushSync(() => {\n root.render(\n createElement(cell, { rowIndex, columnIndex, width: 1000, type: 'row-cell' })\n );\n });\n\n td.innerHTML = container.innerHTML;\n root.unmount();\n\n row.appendChild(td);\n};\n\nconst columnListLoop = (\n tbody: HTMLTableSectionElement,\n columnList: number[],\n cell: CellProps,\n rowIndex: number\n) => {\n const row = document.createElement('tr');\n columnList.forEach(columnIndex => {\n addCellToRow(row, cell, rowIndex, columnIndex);\n });\n tbody.appendChild(row);\n};\n\nconst copyGridElements = async ({\n cell,\n selection,\n rowCount,\n columnCount,\n pageStart = 0,\n focus,\n outerRef,\n}: CopyGridElementsProps): Promise<void> => {\n if (!outerRef.current) {\n throw 'Could not fetch selection';\n }\n const table = document.createElement('table');\n table.style.position = 'absolute';\n table.style.top = '-200px';\n table.style.left = '-200px';\n table.style.width = '0px';\n table.style.height = '0px';\n table.style.overflow = 'hidden';\n const thead = document.createElement('thead');\n const tbody = document.createElement('tbody');\n\n switch (selection.type) {\n case 'rectangle':\n Array.from(\n { length: selection.bounds.bottom + 1 - selection.bounds.top },\n (_, index) => selection.bounds.top + index\n ).forEach(rowIndex => {\n const columnList = Array.from(\n { length: selection.bounds.right + 1 - selection.bounds.left },\n (_, index) => selection.bounds.left + index\n );\n columnListLoop(tbody, columnList, cell, rowIndex);\n });\n break;\n case 'columns':\n Array.from({ length: rowCount }, (_, index) => pageStart + index).forEach(\n rowIndex => {\n const columnList = [...selection.columns].sort((a, b) => a - b);\n columnListLoop(tbody, columnList, cell, rowIndex);\n }\n );\n break;\n case 'rows':\n [...selection.rows]\n .sort((a, b) => a - b)\n .forEach(rowIndex => {\n const columnList = Array.from(\n { length: columnCount },\n (_, index) => pageStart + index\n );\n columnListLoop(tbody, columnList, cell, rowIndex);\n });\n break;\n case 'empty':\n columnListLoop(tbody, [focus.column], cell, focus.row);\n break;\n default:\n throw new Error('incorrect selection provided');\n }\n\n table.appendChild(thead);\n table.appendChild(tbody);\n\n outerRef.current.appendChild(table);\n\n const windowSelection = window.getSelection();\n if (windowSelection) {\n const range = document.createRange();\n range.selectNodeContents(table);\n windowSelection.removeAllRanges();\n windowSelection.addRange(range);\n await navigator.clipboard.writeText(table.innerText);\n windowSelection.removeAllRanges();\n\n outerRef.current.removeChild(table);\n } else {\n throw 'Could not fetch selection';\n }\n};\n\nexport default copyGridElements;\n"],"names":[],"mappings":"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"}
|