@sanity/table 3.1.1 → 3.1.3
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.
- package/dist/index.js +52 -49
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -45,7 +45,8 @@ const TableInput = (props) => {
|
|
|
45
45
|
t4
|
|
46
46
|
] }) }), $[17] = t1, $[18] = t4, $[19] = t5) : t5 = $[19], t5;
|
|
47
47
|
}, TableMenu = (props) => {
|
|
48
|
-
const $ = c(
|
|
48
|
+
const $ = c(49), {
|
|
49
|
+
id,
|
|
49
50
|
remove: handleRemove
|
|
50
51
|
} = props, [dialog, setDialog] = useState(null), [count, setCount] = useState("");
|
|
51
52
|
let t0;
|
|
@@ -85,64 +86,68 @@ const TableInput = (props) => {
|
|
|
85
86
|
}), setCount("");
|
|
86
87
|
}, $[7] = props, $[8] = t4) : t4 = $[8];
|
|
87
88
|
const addColumnsAt = t4;
|
|
88
|
-
let t5;
|
|
89
|
-
$[9] !== count
|
|
90
|
-
|
|
91
|
-
parsedCount < 100 && (setDialog(null), dialog?.callback(parsedCount), setCount(""));
|
|
92
|
-
}, $[9] = count, $[10] = dialog, $[11] = t5) : t5 = $[11];
|
|
93
|
-
const onConfirm = t5;
|
|
89
|
+
let parsedCount, t5;
|
|
90
|
+
$[9] !== count ? (parsedCount = Number.parseInt(count, 10), t5 = Number.isInteger(parsedCount) && parsedCount >= 0 && parsedCount < 100, $[9] = count, $[10] = parsedCount, $[11] = t5) : (parsedCount = $[10], t5 = $[11]);
|
|
91
|
+
const isValidCount = t5;
|
|
94
92
|
let t6;
|
|
95
|
-
$[12] !==
|
|
93
|
+
$[12] !== dialog || $[13] !== isValidCount || $[14] !== parsedCount ? (t6 = () => {
|
|
94
|
+
isValidCount && (setDialog(null), dialog?.callback(parsedCount), setCount(""));
|
|
95
|
+
}, $[12] = dialog, $[13] = isValidCount, $[14] = parsedCount, $[15] = t6) : t6 = $[15];
|
|
96
|
+
const onConfirm = t6;
|
|
97
|
+
let t7;
|
|
98
|
+
$[16] !== count || $[17] !== dialog || $[18] !== id || $[19] !== isValidCount || $[20] !== onConfirm ? (t7 = dialog && /* @__PURE__ */ jsx(Dialog, { header: `Add ${dialog.type}`, id: `${id}-dialog-add`, onClose: () => {
|
|
96
99
|
setDialog(null), setCount("");
|
|
97
100
|
}, zOffset: 1e3, children: /* @__PURE__ */ jsxs(Card, { padding: 4, children: [
|
|
98
101
|
/* @__PURE__ */ jsx(TextInput, { style: {
|
|
99
102
|
textAlign: "left"
|
|
100
|
-
}, fontSize: 2, padding: 3, type: "number", value: count, onChange: updateCount }),
|
|
103
|
+
}, fontSize: 2, padding: 3, type: "number", value: count, onChange: updateCount, customValidity: count !== "" && !isValidCount ? "Enter a whole number from 0 to 99" : void 0 }),
|
|
101
104
|
/* @__PURE__ */ jsx(Box, { marginTop: 4, children: /* @__PURE__ */ jsxs(Inline, { gap: 1, style: {
|
|
102
105
|
textAlign: "right"
|
|
103
106
|
}, children: [
|
|
104
107
|
/* @__PURE__ */ jsx(Button, { text: "Cancel", mode: "ghost", onClick: () => {
|
|
105
108
|
setDialog(null), setCount("");
|
|
106
109
|
} }),
|
|
107
|
-
/* @__PURE__ */ jsx(Button, { text: "Confirm", tone: "critical", onClick: onConfirm })
|
|
110
|
+
/* @__PURE__ */ jsx(Button, { text: "Confirm", tone: "critical", onClick: onConfirm, disabled: !isValidCount })
|
|
108
111
|
] }) })
|
|
109
|
-
] }) }), $[
|
|
110
|
-
let t7;
|
|
111
|
-
$[16] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (t7 = /* @__PURE__ */ jsx(Button, { icon: ControlsIcon, fontSize: 1, padding: 2, mode: "ghost" }), $[16] = t7) : t7 = $[16];
|
|
112
|
+
] }) }), $[16] = count, $[17] = dialog, $[18] = id, $[19] = isValidCount, $[20] = onConfirm, $[21] = t7) : t7 = $[21];
|
|
112
113
|
let t8;
|
|
113
|
-
$[
|
|
114
|
-
|
|
115
|
-
$[19] !== addRowAt ? (t9 = /* @__PURE__ */ jsx(MenuItem, { icon: AddIcon, fontSize: 1, text: "Add Row At Index", onClick: addRowAt }), $[19] = addRowAt, $[20] = t9) : t9 = $[20];
|
|
114
|
+
$[22] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (t8 = /* @__PURE__ */ jsx(Button, { icon: ControlsIcon, fontSize: 1, padding: 2, mode: "ghost" }), $[22] = t8) : t8 = $[22];
|
|
115
|
+
const t9 = `${id}-menu-button`;
|
|
116
116
|
let t10;
|
|
117
|
-
$[
|
|
117
|
+
$[23] !== addRows ? (t10 = /* @__PURE__ */ jsx(MenuItem, { icon: AddIcon, fontSize: 1, text: "Add Row(s)", onClick: addRows }), $[23] = addRows, $[24] = t10) : t10 = $[24];
|
|
118
118
|
let t11;
|
|
119
|
-
$[
|
|
119
|
+
$[25] !== addRowAt ? (t11 = /* @__PURE__ */ jsx(MenuItem, { icon: AddIcon, fontSize: 1, text: "Add Row At Index", onClick: addRowAt }), $[25] = addRowAt, $[26] = t11) : t11 = $[26];
|
|
120
120
|
let t12;
|
|
121
|
-
$[
|
|
121
|
+
$[27] !== addColumns ? (t12 = /* @__PURE__ */ jsx(MenuItem, { icon: AddIcon, fontSize: 1, text: "Add Column(s)", onClick: addColumns }), $[27] = addColumns, $[28] = t12) : t12 = $[28];
|
|
122
122
|
let t13;
|
|
123
|
-
$[
|
|
123
|
+
$[29] !== addColumnsAt ? (t13 = /* @__PURE__ */ jsx(MenuItem, { icon: AddIcon, fontSize: 1, text: "Add Column At Index", onClick: addColumnsAt }), $[29] = addColumnsAt, $[30] = t13) : t13 = $[30];
|
|
124
124
|
let t14;
|
|
125
|
-
$[
|
|
126
|
-
|
|
127
|
-
|
|
125
|
+
$[31] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (t14 = /* @__PURE__ */ jsx(MenuDivider, {}), $[31] = t14) : t14 = $[31];
|
|
126
|
+
let t15;
|
|
127
|
+
$[32] !== handleRemove ? (t15 = /* @__PURE__ */ jsx(MenuItem, { icon: WarningOutlineIcon, fontSize: 1, text: "Remove", tone: "critical", onClick: handleRemove }), $[32] = handleRemove, $[33] = t15) : t15 = $[33];
|
|
128
|
+
let t16;
|
|
129
|
+
$[34] !== t10 || $[35] !== t11 || $[36] !== t12 || $[37] !== t13 || $[38] !== t15 ? (t16 = /* @__PURE__ */ jsxs(Menu, { children: [
|
|
128
130
|
t10,
|
|
129
131
|
t11,
|
|
130
132
|
t12,
|
|
131
|
-
t13
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
$[34]
|
|
135
|
-
placement: props.placement
|
|
136
|
-
}, $[34] = props.placement, $[35] = t15) : t15 = $[35];
|
|
137
|
-
let t16;
|
|
138
|
-
$[36] !== t14 || $[37] !== t15 ? (t16 = /* @__PURE__ */ jsx(MenuButton, { button: t7, id: "menu-button-example", menu: t14, popover: t15 }), $[36] = t14, $[37] = t15, $[38] = t16) : t16 = $[38];
|
|
133
|
+
t13,
|
|
134
|
+
t14,
|
|
135
|
+
t15
|
|
136
|
+
] }), $[34] = t10, $[35] = t11, $[36] = t12, $[37] = t13, $[38] = t15, $[39] = t16) : t16 = $[39];
|
|
139
137
|
let t17;
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
138
|
+
$[40] !== props.placement ? (t17 = {
|
|
139
|
+
placement: props.placement
|
|
140
|
+
}, $[40] = props.placement, $[41] = t17) : t17 = $[41];
|
|
141
|
+
let t18;
|
|
142
|
+
$[42] !== t16 || $[43] !== t17 || $[44] !== t9 ? (t18 = /* @__PURE__ */ jsx(MenuButton, { button: t8, id: t9, menu: t16, popover: t17 }), $[42] = t16, $[43] = t17, $[44] = t9, $[45] = t18) : t18 = $[45];
|
|
143
|
+
let t19;
|
|
144
|
+
return $[46] !== t18 || $[47] !== t7 ? (t19 = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
145
|
+
t7,
|
|
146
|
+
t18
|
|
147
|
+
] }), $[46] = t18, $[47] = t7, $[48] = t19) : t19 = $[48], t19;
|
|
144
148
|
}, deepClone = globalThis.structuredClone ?? ((data) => JSON.parse(JSON.stringify(data))), TableComponent = (props) => {
|
|
145
|
-
const $ = c(
|
|
149
|
+
const $ = c(66), {
|
|
150
|
+
id,
|
|
146
151
|
rowType: t0,
|
|
147
152
|
value,
|
|
148
153
|
onChange
|
|
@@ -301,7 +306,7 @@ const TableInput = (props) => {
|
|
|
301
306
|
}, $[37] = updateValue, $[38] = value, $[39] = t8) : t8 = $[39];
|
|
302
307
|
const updateCell = t8;
|
|
303
308
|
let t9;
|
|
304
|
-
$[40] !== dialog ? (t9 = dialog && /* @__PURE__ */ jsx(Dialog, { header: `Remove ${dialog.type}`, id:
|
|
309
|
+
$[40] !== dialog || $[41] !== id ? (t9 = dialog && /* @__PURE__ */ jsx(Dialog, { header: `Remove ${dialog.type}`, id: `${id}-dialog-remove`, onClose: () => setDialog(null), zOffset: 1e3, children: /* @__PURE__ */ jsxs(Card, { padding: 4, children: [
|
|
305
310
|
/* @__PURE__ */ jsxs(Text, { children: [
|
|
306
311
|
"Are you sure you want to remove this ",
|
|
307
312
|
dialog.type,
|
|
@@ -313,26 +318,26 @@ const TableInput = (props) => {
|
|
|
313
318
|
/* @__PURE__ */ jsx(Button, { text: "Cancel", mode: "ghost", onClick: () => setDialog(null) }),
|
|
314
319
|
/* @__PURE__ */ jsx(Button, { text: "Confirm", tone: "critical", onClick: () => dialog.callback() })
|
|
315
320
|
] }) })
|
|
316
|
-
] }) }), $[40] = dialog, $[41] = t9) : t9 = $[
|
|
321
|
+
] }) }), $[40] = dialog, $[41] = id, $[42] = t9) : t9 = $[42];
|
|
317
322
|
let t10;
|
|
318
|
-
$[
|
|
323
|
+
$[43] !== addColumnAt || $[44] !== addColumns || $[45] !== addRowAt || $[46] !== addRows || $[47] !== confirmRemoveTable || $[48] !== id || $[49] !== value?.rows?.length ? (t10 = value?.rows?.length ? /* @__PURE__ */ jsxs(Inline, { gap: 1, children: [
|
|
319
324
|
/* @__PURE__ */ jsx(Button, { fontSize: 1, padding: 2, icon: AddIcon, text: "Add row", mode: "ghost", onClick: () => addRows(1) }),
|
|
320
325
|
/* @__PURE__ */ jsx(Button, { fontSize: 1, padding: 2, icon: AddIcon, text: "Add column", mode: "ghost", onClick: () => addColumns(1) }),
|
|
321
|
-
/* @__PURE__ */ jsx(TableMenu, { addColumns, addColumnAt, addRows, addRowAt, remove: confirmRemoveTable, placement: "left" })
|
|
322
|
-
] }) : null, $[
|
|
326
|
+
/* @__PURE__ */ jsx(TableMenu, { id, addColumns, addColumnAt, addRows, addRowAt, remove: confirmRemoveTable, placement: "left" })
|
|
327
|
+
] }) : null, $[43] = addColumnAt, $[44] = addColumns, $[45] = addRowAt, $[46] = addRows, $[47] = confirmRemoveTable, $[48] = id, $[49] = value?.rows?.length, $[50] = t10) : t10 = $[50];
|
|
323
328
|
let t11;
|
|
324
|
-
$[
|
|
329
|
+
$[51] !== t10 ? (t11 = /* @__PURE__ */ jsx(Box, { children: /* @__PURE__ */ jsx(Flex, { justify: "flex-end", children: t10 }) }), $[51] = t10, $[52] = t11) : t11 = $[52];
|
|
325
330
|
let t12;
|
|
326
|
-
$[
|
|
331
|
+
$[53] !== confirmRemoveColumn || $[54] !== confirmRemoveRow || $[55] !== updateCell || $[56] !== value ? (t12 = value?.rows?.length ? /* @__PURE__ */ jsx(TableInput, { rows: value.rows, removeRow: confirmRemoveRow, removeColumn: confirmRemoveColumn, updateCell }) : null, $[53] = confirmRemoveColumn, $[54] = confirmRemoveRow, $[55] = updateCell, $[56] = value, $[57] = t12) : t12 = $[57];
|
|
327
332
|
let t13;
|
|
328
|
-
$[
|
|
333
|
+
$[58] !== createTable || $[59] !== value ? (t13 = !value || !value?.rows?.length ? /* @__PURE__ */ jsx(Inline, { gap: 1, children: /* @__PURE__ */ jsx(Button, { fontSize: 1, padding: 3, icon: AddIcon, text: "Create Table", tone: "primary", mode: "ghost", onClick: createTable }) }) : null, $[58] = createTable, $[59] = value, $[60] = t13) : t13 = $[60];
|
|
329
334
|
let t14;
|
|
330
|
-
return $[
|
|
335
|
+
return $[61] !== t11 || $[62] !== t12 || $[63] !== t13 || $[64] !== t9 ? (t14 = /* @__PURE__ */ jsxs("div", { children: [
|
|
331
336
|
t9,
|
|
332
337
|
t11,
|
|
333
338
|
t12,
|
|
334
339
|
t13
|
|
335
|
-
] }), $[
|
|
340
|
+
] }), $[61] = t11, $[62] = t12, $[63] = t13, $[64] = t9, $[65] = t14) : t14 = $[65], t14;
|
|
336
341
|
};
|
|
337
342
|
function createTableComponent(rowType) {
|
|
338
343
|
return function(props) {
|
|
@@ -379,9 +384,7 @@ const Table = (t0) => {
|
|
|
379
384
|
function _temp(row) {
|
|
380
385
|
return row.cells.map((cell, i) => /* @__PURE__ */ jsx(Card, { padding: 2, style: {
|
|
381
386
|
outline: "1px solid #DFE2E9"
|
|
382
|
-
}, children: /* @__PURE__ */ jsx(Text, {
|
|
383
|
-
textOverflow: "elipsis"
|
|
384
|
-
}, children: cell }) }, row._key + i));
|
|
387
|
+
}, children: /* @__PURE__ */ jsx(Text, { textOverflow: "ellipsis", children: cell }) }, row._key + i));
|
|
385
388
|
}
|
|
386
389
|
const table = definePlugin((config) => {
|
|
387
390
|
const tableRowSchema = defineType({
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/TableInput.tsx","../src/components/TableMenu.tsx","../src/components/TableComponent.tsx","../src/components/TableIcon.tsx","../src/components/TablePreview.tsx","../src/index.ts"],"sourcesContent":["import {RemoveIcon} from '@sanity/icons'\nimport {Box, Button, TextInput} from '@sanity/ui'\nimport type {ChangeEvent} from 'react'\n\nimport type {TableRow} from './TableComponent'\n\ninterface TableInputProps {\n rows: TableRow[]\n updateCell: (e: ChangeEvent<HTMLInputElement>, rowIndex: number, cellIndex: number) => void\n removeRow: (index: number) => void\n removeColumn: (index: number) => void\n}\n\nexport const TableInput = (props: TableInputProps) => {\n const {rows, updateCell, removeRow, removeColumn} = props\n\n return (\n <table style={{width: '100%'}}>\n <tbody>\n {rows.map((row, rowIndex) => (\n <tr key={row._key}>\n {row.cells.map((cell, cellIndex) => (\n // Cells are plain strings; the cell position is the only stable identity\n // eslint-disable-next-line react/no-array-index-key\n <td key={`${row._key}-${cellIndex}`}>\n <TextInput\n fontSize={1}\n padding={3}\n value={cell}\n onChange={(e) => updateCell(e, rowIndex, cellIndex)}\n />\n </td>\n ))}\n <td key={`${row._key}-remove`}>\n <Box marginLeft={1} style={{textAlign: 'center'}}>\n <Button\n icon={RemoveIcon}\n padding={2}\n onClick={() => removeRow(rowIndex)}\n mode=\"bleed\"\n />\n </Box>\n </td>\n </tr>\n ))}\n <tr>\n {(rows[0]?.cells || []).map((_, i) => (\n // Cells are plain strings; the column position is the only stable identity\n // eslint-disable-next-line react/no-array-index-key\n <td key={i}>\n <Box marginTop={1} style={{textAlign: 'center'}}>\n <Button\n icon={RemoveIcon}\n padding={2}\n onClick={() => removeColumn(i)}\n mode=\"bleed\"\n />\n </Box>\n </td>\n ))}\n </tr>\n </tbody>\n </table>\n )\n}\n","import {AddIcon, ControlsIcon, WarningOutlineIcon} from '@sanity/icons'\nimport {\n Box,\n Button,\n Card,\n Dialog,\n Inline,\n Menu,\n MenuButton,\n MenuDivider,\n MenuItem,\n type Placement,\n TextInput,\n} from '@sanity/ui'\nimport {type ChangeEventHandler, useState} from 'react'\n\ninterface TableMenuProps {\n addColumns: (count: number) => void\n addColumnAt: (index: number) => void\n addRows: (count: number) => void\n addRowAt: (index: number) => void\n remove: () => void\n placement: Placement\n}\n\nexport const TableMenu = (props: TableMenuProps): React.JSX.Element => {\n const {remove: handleRemove} = props\n const [dialog, setDialog] = useState<{\n type: string\n callback: (count: number) => void\n } | null>(null)\n\n // Keep `count` always a string so the TextInput is controlled for the component lifetime.\n const [count, setCount] = useState<string>('')\n\n const updateCount: ChangeEventHandler<HTMLInputElement> = (e) => {\n setCount(e.currentTarget.value)\n }\n\n const addRows = () => {\n setDialog({type: 'rows', callback: (c) => props.addRows(c)})\n setCount('') // ensure input starts controlled when dialog opens\n }\n\n const addRowAt = () => {\n setDialog({type: 'rows', callback: (index) => props.addRowAt(index)})\n setCount('')\n }\n\n const addColumns = () => {\n setDialog({\n type: 'columns',\n callback: (c) => props.addColumns(c),\n })\n setCount('')\n }\n\n const addColumnsAt = () => {\n setDialog({type: 'columns', callback: (index) => props.addColumnAt(index)})\n setCount('')\n }\n\n const onConfirm = () => {\n const parsedCount = parseInt(count || '0', 10)\n\n if (parsedCount < 100) {\n setDialog(null)\n dialog?.callback(parsedCount)\n setCount('')\n }\n }\n\n return (\n <>\n {dialog && (\n <Dialog\n header={`Add ${dialog.type}`}\n id=\"dialog-add\"\n onClose={() => {\n setDialog(null)\n setCount('')\n }}\n zOffset={1000}\n >\n <Card padding={4}>\n <TextInput\n style={{textAlign: 'left'}}\n fontSize={2}\n padding={3}\n type=\"number\"\n value={count}\n onChange={updateCount}\n />\n <Box marginTop={4}>\n <Inline gap={1} style={{textAlign: 'right'}}>\n <Button\n text=\"Cancel\"\n mode=\"ghost\"\n onClick={() => {\n setDialog(null)\n setCount('')\n }}\n />\n <Button text=\"Confirm\" tone=\"critical\" onClick={onConfirm} />\n </Inline>\n </Box>\n </Card>\n </Dialog>\n )}\n <MenuButton\n button={<Button icon={ControlsIcon} fontSize={1} padding={2} mode=\"ghost\" />}\n id=\"menu-button-example\"\n menu={\n <Menu>\n <MenuItem icon={AddIcon} fontSize={1} text=\"Add Row(s)\" onClick={addRows} />\n <MenuItem icon={AddIcon} fontSize={1} text=\"Add Row At Index\" onClick={addRowAt} />\n <MenuItem icon={AddIcon} fontSize={1} text=\"Add Column(s)\" onClick={addColumns} />\n <MenuItem\n icon={AddIcon}\n fontSize={1}\n text=\"Add Column At Index\"\n onClick={addColumnsAt}\n />\n <MenuDivider />\n <MenuItem\n icon={WarningOutlineIcon}\n fontSize={1}\n text=\"Remove\"\n tone=\"critical\"\n onClick={handleRemove}\n />\n </Menu>\n }\n popover={{placement: props.placement}}\n />\n </>\n )\n}\n","import {AddIcon} from '@sanity/icons'\nimport {Box, Button, Card, Dialog, Flex, Inline, Text} from '@sanity/ui'\nimport {uuid} from '@sanity/uuid'\nimport {type ChangeEvent, useState} from 'react'\nimport {type ObjectInputProps, set, unset} from 'sanity'\n\nimport {TableInput} from './TableInput'\nimport {TableMenu} from './TableMenu'\n\nconst deepClone: <T>(data: T) => T =\n globalThis.structuredClone ?? ((data) => JSON.parse(JSON.stringify(data)))\n\nexport interface TableValue {\n _type?: 'table'\n rows?: TableRow[]\n}\n\nexport type TableProps = ObjectInputProps<TableValue>\n\nexport type TableRow = {\n _type: string\n _key: string\n cells: string[]\n}\n\n// TODO refactor deeplone stuff to use proper patches\n// TODO use callback all the things\n\nexport const TableComponent = (props: TableProps & {rowType?: string}) => {\n const {rowType = 'tableRow', value, onChange} = props\n const [dialog, setDialog] = useState<{\n type: string\n callback: () => void\n } | null>(null)\n\n const updateValue = (v?: Omit<TableValue, '_type'>) => {\n return onChange(set(v))\n }\n\n const resetValue = () => {\n return onChange(unset())\n }\n\n const createTable = () => {\n const newValue: Omit<TableValue, '_type'> = {\n rows: [\n {\n _type: rowType,\n _key: uuid(),\n cells: ['', ''],\n },\n {\n _type: rowType,\n _key: uuid(),\n cells: ['', ''],\n },\n ],\n }\n return updateValue({...value, ...newValue})\n }\n\n const confirmRemoveTable = () => {\n setDialog({type: 'table', callback: removeTable})\n }\n\n const removeTable = () => {\n resetValue()\n setDialog(null)\n }\n\n const addRows = (count = 1) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n // Calculate the column count from the first row\n const columnCount = value.rows[0]?.cells.length ?? 0\n for (let i = 0; i < count; i++) {\n // Add as many cells as we have columns\n newRows.push({\n _type: rowType,\n _key: uuid(),\n cells: Array(columnCount).fill(''),\n })\n }\n return updateValue({...value, rows: newRows})\n }\n\n const addRowAt = (index = 0) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n // Calculate the column count from the first row\n const columnCount = value.rows[0]?.cells.length ?? 0\n\n newRows.splice(index, 0, {\n _type: rowType,\n _key: uuid(),\n cells: Array(columnCount).fill(''),\n })\n\n return updateValue({...value, rows: newRows})\n }\n\n const removeRow = (index: number) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n newRows.splice(index, 1)\n updateValue({...value, rows: newRows})\n setDialog(null)\n }\n\n const confirmRemoveRow = (index: number) => {\n if (!value?.rows) {\n return\n }\n if (value.rows.length <= 1) return confirmRemoveTable()\n return setDialog({type: 'row', callback: () => removeRow(index)})\n }\n\n const confirmRemoveColumn = (index: number) => {\n if (!value?.rows) {\n return\n }\n if ((value.rows[0]?.cells.length ?? 0) <= 1) return confirmRemoveTable()\n return setDialog({type: 'column', callback: () => removeColumn(index)})\n }\n\n const addColumns = (count: number) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n // Add a cell to each of the rows\n newRows.forEach((row) => {\n for (let j = 0; j < count; j++) {\n row.cells.push('')\n }\n })\n return updateValue({...value, rows: newRows})\n }\n\n const addColumnAt = (index: number) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n\n newRows.forEach((row) => {\n row.cells.splice(index, 0, '')\n })\n\n return updateValue({...value, rows: newRows})\n }\n\n const removeColumn = (index: number) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n newRows.forEach((row) => {\n row.cells.splice(index, 1)\n })\n updateValue({...value, rows: newRows})\n setDialog(null)\n }\n\n const updateCell = (e: ChangeEvent<HTMLInputElement>, rowIndex: number, cellIndex: number) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n const row = newRows[rowIndex]\n if (!row) {\n return\n }\n row.cells[cellIndex] = e.currentTarget.value\n return updateValue({...value, rows: newRows})\n }\n\n return (\n <div>\n {dialog && (\n <Dialog\n header={`Remove ${dialog.type}`}\n id=\"dialog-remove\"\n onClose={() => setDialog(null)}\n zOffset={1000}\n >\n <Card padding={4}>\n <Text>Are you sure you want to remove this {dialog.type}?</Text>\n <Box marginTop={4}>\n <Inline gap={1} style={{textAlign: 'right'}}>\n <Button text=\"Cancel\" mode=\"ghost\" onClick={() => setDialog(null)} />\n <Button text=\"Confirm\" tone=\"critical\" onClick={() => dialog.callback()} />\n </Inline>\n </Box>\n </Card>\n </Dialog>\n )}\n <Box>\n <Flex justify=\"flex-end\">\n {value?.rows?.length ? (\n <Inline gap={1}>\n <Button\n fontSize={1}\n padding={2}\n icon={AddIcon}\n text=\"Add row\"\n mode=\"ghost\"\n onClick={() => addRows(1)}\n />\n <Button\n fontSize={1}\n padding={2}\n icon={AddIcon}\n text=\"Add column\"\n mode=\"ghost\"\n onClick={() => addColumns(1)}\n />\n <TableMenu\n addColumns={addColumns}\n addColumnAt={addColumnAt}\n addRows={addRows}\n addRowAt={addRowAt}\n remove={confirmRemoveTable}\n placement=\"left\"\n />\n </Inline>\n ) : null}\n </Flex>\n </Box>\n {value?.rows?.length ? (\n <TableInput\n rows={value.rows}\n removeRow={confirmRemoveRow}\n removeColumn={confirmRemoveColumn}\n updateCell={updateCell}\n />\n ) : null}\n {!value || !value?.rows?.length ? (\n <Inline gap={1}>\n <Button\n fontSize={1}\n padding={3}\n icon={AddIcon}\n text=\"Create Table\"\n tone=\"primary\"\n mode=\"ghost\"\n onClick={createTable}\n />\n </Inline>\n ) : null}\n </div>\n )\n}\n\nexport function createTableComponent(rowType: string) {\n return function Table(props: TableProps) {\n return <TableComponent {...props} rowType={rowType} />\n }\n}\n","export function TableIcon() {\n return (\n <svg\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 25 25\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.2\"\n >\n <path d=\"M3 3h18v18H3zM21 9H3M21 15H3M12 3v18\" />\n </svg>\n )\n}\n","import {Box, Card, Grid, Inline, Label, Text} from '@sanity/ui'\nimport type {PreviewProps} from 'sanity'\n\nimport type {TableRow} from './TableComponent'\nimport {TableIcon} from './TableIcon'\n\ninterface TablePreviewProps extends PreviewProps {\n rows?: TableRow[]\n}\n\nconst Table = ({rows}: {rows: TableRow[]}) => {\n const numCols = rows[0]?.cells.length ?? 0\n\n return (\n <Grid gridTemplateColumns={numCols} padding={2}>\n {rows.map((row) =>\n row.cells.map((cell, i) => (\n // Cells are plain strings; the cell position is the only stable identity\n // eslint-disable-next-line react/no-array-index-key\n <Card key={row._key + i} padding={2} style={{outline: '1px solid #DFE2E9'}}>\n <Text style={{textOverflow: 'elipsis'}}>{cell}</Text>\n </Card>\n )),\n )}\n </Grid>\n )\n}\n\nexport const TablePreview = (props: TablePreviewProps) => {\n const {schemaType, rows = [], title} = props\n const previewTitle = schemaType?.title ?? (typeof title === 'string' ? title : 'Title missing')\n\n return (\n <>\n <Box padding={3}>\n <Inline gap={3}>\n <Card>\n <Label size={4}>\n <TableIcon />\n </Label>\n </Card>\n <Card>\n <Text>{previewTitle}</Text>\n </Card>\n </Inline>\n </Box>\n <Box padding={2}>\n {rows.length === 0 ? <Label muted>Empty Table</Label> : <Table rows={rows} />}\n </Box>\n </>\n )\n}\n","import {definePlugin, defineType} from 'sanity'\n\nimport {createTableComponent, TableComponent} from './components/TableComponent'\nimport {TablePreview} from './components/TablePreview'\nexport type {TableProps, TableRow, TableValue} from './components/TableComponent'\n\nexport {TableComponent, TablePreview}\n\nexport interface TableConfig {\n rowType?: string\n}\n\nexport const table = definePlugin<TableConfig | void>((config) => {\n const tableRowSchema = defineType({\n title: 'Table Row',\n name: config?.rowType || 'tableRow',\n type: 'object',\n fields: [\n {\n name: 'cells',\n type: 'array',\n of: [{type: 'string'}],\n },\n ],\n })\n\n const tableSchema = defineType({\n title: 'Table',\n name: 'table',\n type: 'object',\n fields: [\n {\n name: 'rows',\n type: 'array',\n of: [\n {\n type: tableRowSchema.name,\n },\n ],\n },\n ],\n components: {\n input: createTableComponent(tableRowSchema.name),\n preview: TablePreview,\n },\n preview: {\n select: {\n rows: 'rows',\n title: 'title',\n },\n prepare: ({title, rows = []}) => ({\n title,\n rows,\n }),\n },\n })\n\n return {\n name: 'table',\n schema: {\n types: [tableRowSchema, tableSchema],\n },\n }\n})\n"],"names":["TableInput","props","$","_c","rows","updateCell","removeRow","removeColumn","t0","for","width","t1","t2","row","rowIndex","cells","map","cell","cellIndex","e","_key","textAlign","RemoveIcon","t3","t4","_","i","t5","TableMenu","remove","handleRemove","dialog","setDialog","useState","count","setCount","Symbol","currentTarget","value","updateCount","type","callback","c","addRows","index","addRowAt","c_0","addColumns","index_0","addColumnAt","addColumnsAt","parsedCount","parseInt","onConfirm","t6","t7","ControlsIcon","t8","AddIcon","t9","t10","t11","t12","t13","WarningOutlineIcon","t14","t15","placement","t16","t17","deepClone","globalThis","structuredClone","data","JSON","parse","stringify","TableComponent","rowType","onChange","undefined","v","set","updateValue","unset","resetValue","newValue","_type","uuid","createTable","confirmRemoveTable","removeTable","newRows","columnCount","length","push","Array","fill","newRows_0","columnCount_0","splice","newRows_1","index_1","confirmRemoveRow","confirmRemoveColumn","index_2","count_0","newRows_2","forEach","j","index_3","newRows_3","row_0","index_4","newRows_4","row_1","newRows_5","row_2","createTableComponent","TableIcon","Table","numCols","_temp","TablePreview","schemaType","title","previewTitle","outline","textOverflow","table","definePlugin","config","tableRowSchema","defineType","name","fields","of","tableSchema","components","input","preview","select","prepare","schema","types"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/components/TableInput.tsx","../src/components/TableMenu.tsx","../src/components/TableComponent.tsx","../src/components/TableIcon.tsx","../src/components/TablePreview.tsx","../src/index.ts"],"sourcesContent":["import {RemoveIcon} from '@sanity/icons'\nimport {Box, Button, TextInput} from '@sanity/ui'\nimport type {ChangeEvent} from 'react'\n\nimport type {TableRow} from './TableComponent'\n\ninterface TableInputProps {\n rows: TableRow[]\n updateCell: (e: ChangeEvent<HTMLInputElement>, rowIndex: number, cellIndex: number) => void\n removeRow: (index: number) => void\n removeColumn: (index: number) => void\n}\n\nexport const TableInput = (props: TableInputProps) => {\n const {rows, updateCell, removeRow, removeColumn} = props\n\n return (\n <table style={{width: '100%'}}>\n <tbody>\n {rows.map((row, rowIndex) => (\n <tr key={row._key}>\n {row.cells.map((cell, cellIndex) => (\n // Cells are plain strings; the cell position is the only stable identity\n // eslint-disable-next-line react/no-array-index-key\n <td key={`${row._key}-${cellIndex}`}>\n <TextInput\n fontSize={1}\n padding={3}\n value={cell}\n onChange={(e) => updateCell(e, rowIndex, cellIndex)}\n />\n </td>\n ))}\n <td key={`${row._key}-remove`}>\n <Box marginLeft={1} style={{textAlign: 'center'}}>\n <Button\n icon={RemoveIcon}\n padding={2}\n onClick={() => removeRow(rowIndex)}\n mode=\"bleed\"\n />\n </Box>\n </td>\n </tr>\n ))}\n <tr>\n {(rows[0]?.cells || []).map((_, i) => (\n // Cells are plain strings; the column position is the only stable identity\n // eslint-disable-next-line react/no-array-index-key\n <td key={i}>\n <Box marginTop={1} style={{textAlign: 'center'}}>\n <Button\n icon={RemoveIcon}\n padding={2}\n onClick={() => removeColumn(i)}\n mode=\"bleed\"\n />\n </Box>\n </td>\n ))}\n </tr>\n </tbody>\n </table>\n )\n}\n","import {AddIcon, ControlsIcon, WarningOutlineIcon} from '@sanity/icons'\nimport {\n Box,\n Button,\n Card,\n Dialog,\n Inline,\n Menu,\n MenuButton,\n MenuDivider,\n MenuItem,\n type Placement,\n TextInput,\n} from '@sanity/ui'\nimport {type ChangeEventHandler, useState} from 'react'\n\ninterface TableMenuProps {\n id: string\n addColumns: (count: number) => void\n addColumnAt: (index: number) => void\n addRows: (count: number) => void\n addRowAt: (index: number) => void\n remove: () => void\n placement: Placement\n}\n\nexport const TableMenu = (props: TableMenuProps): React.JSX.Element => {\n const {id, remove: handleRemove} = props\n const [dialog, setDialog] = useState<{\n type: string\n callback: (count: number) => void\n } | null>(null)\n\n // Keep `count` always a string so the TextInput is controlled for the component lifetime.\n const [count, setCount] = useState<string>('')\n\n const updateCount: ChangeEventHandler<HTMLInputElement> = (e) => {\n setCount(e.currentTarget.value)\n }\n\n const addRows = () => {\n setDialog({type: 'rows', callback: (c) => props.addRows(c)})\n setCount('') // ensure input starts controlled when dialog opens\n }\n\n const addRowAt = () => {\n setDialog({type: 'rows', callback: (index) => props.addRowAt(index)})\n setCount('')\n }\n\n const addColumns = () => {\n setDialog({\n type: 'columns',\n callback: (c) => props.addColumns(c),\n })\n setCount('')\n }\n\n const addColumnsAt = () => {\n setDialog({type: 'columns', callback: (index) => props.addColumnAt(index)})\n setCount('')\n }\n\n // The dialog is reused for \"add N rows/columns\" (a count) and \"add at index\"\n // (a position where 0 is valid), so allow 0 but reject NaN/negative/too-large.\n const parsedCount = Number.parseInt(count, 10)\n const isValidCount = Number.isInteger(parsedCount) && parsedCount >= 0 && parsedCount < 100\n\n const onConfirm = () => {\n if (!isValidCount) {\n return\n }\n setDialog(null)\n dialog?.callback(parsedCount)\n setCount('')\n }\n\n return (\n <>\n {dialog && (\n <Dialog\n header={`Add ${dialog.type}`}\n id={`${id}-dialog-add`}\n onClose={() => {\n setDialog(null)\n setCount('')\n }}\n zOffset={1000}\n >\n <Card padding={4}>\n <TextInput\n style={{textAlign: 'left'}}\n fontSize={2}\n padding={3}\n type=\"number\"\n value={count}\n onChange={updateCount}\n customValidity={\n count !== '' && !isValidCount ? 'Enter a whole number from 0 to 99' : undefined\n }\n />\n <Box marginTop={4}>\n <Inline gap={1} style={{textAlign: 'right'}}>\n <Button\n text=\"Cancel\"\n mode=\"ghost\"\n onClick={() => {\n setDialog(null)\n setCount('')\n }}\n />\n <Button\n text=\"Confirm\"\n tone=\"critical\"\n onClick={onConfirm}\n disabled={!isValidCount}\n />\n </Inline>\n </Box>\n </Card>\n </Dialog>\n )}\n <MenuButton\n button={<Button icon={ControlsIcon} fontSize={1} padding={2} mode=\"ghost\" />}\n id={`${id}-menu-button`}\n menu={\n <Menu>\n <MenuItem icon={AddIcon} fontSize={1} text=\"Add Row(s)\" onClick={addRows} />\n <MenuItem icon={AddIcon} fontSize={1} text=\"Add Row At Index\" onClick={addRowAt} />\n <MenuItem icon={AddIcon} fontSize={1} text=\"Add Column(s)\" onClick={addColumns} />\n <MenuItem\n icon={AddIcon}\n fontSize={1}\n text=\"Add Column At Index\"\n onClick={addColumnsAt}\n />\n <MenuDivider />\n <MenuItem\n icon={WarningOutlineIcon}\n fontSize={1}\n text=\"Remove\"\n tone=\"critical\"\n onClick={handleRemove}\n />\n </Menu>\n }\n popover={{placement: props.placement}}\n />\n </>\n )\n}\n","import {AddIcon} from '@sanity/icons'\nimport {Box, Button, Card, Dialog, Flex, Inline, Text} from '@sanity/ui'\nimport {uuid} from '@sanity/uuid'\nimport {type ChangeEvent, useState} from 'react'\nimport {type ObjectInputProps, set, unset} from 'sanity'\n\nimport {TableInput} from './TableInput'\nimport {TableMenu} from './TableMenu'\n\nconst deepClone: <T>(data: T) => T =\n globalThis.structuredClone ?? ((data) => JSON.parse(JSON.stringify(data)))\n\nexport interface TableValue {\n _type?: 'table'\n rows?: TableRow[]\n}\n\nexport type TableProps = ObjectInputProps<TableValue>\n\nexport type TableRow = {\n _type: string\n _key: string\n cells: string[]\n}\n\n// TODO refactor deepClone stuff to use proper patches\n// TODO use callback all the things\n\nexport const TableComponent = (props: TableProps & {rowType?: string}) => {\n const {id, rowType = 'tableRow', value, onChange} = props\n const [dialog, setDialog] = useState<{\n type: string\n callback: () => void\n } | null>(null)\n\n const updateValue = (v?: Omit<TableValue, '_type'>) => {\n return onChange(set(v))\n }\n\n const resetValue = () => {\n return onChange(unset())\n }\n\n const createTable = () => {\n const newValue: Omit<TableValue, '_type'> = {\n rows: [\n {\n _type: rowType,\n _key: uuid(),\n cells: ['', ''],\n },\n {\n _type: rowType,\n _key: uuid(),\n cells: ['', ''],\n },\n ],\n }\n return updateValue({...value, ...newValue})\n }\n\n const confirmRemoveTable = () => {\n setDialog({type: 'table', callback: removeTable})\n }\n\n const removeTable = () => {\n resetValue()\n setDialog(null)\n }\n\n const addRows = (count = 1) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n // Calculate the column count from the first row\n const columnCount = value.rows[0]?.cells.length ?? 0\n for (let i = 0; i < count; i++) {\n // Add as many cells as we have columns\n newRows.push({\n _type: rowType,\n _key: uuid(),\n cells: Array(columnCount).fill(''),\n })\n }\n return updateValue({...value, rows: newRows})\n }\n\n const addRowAt = (index = 0) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n // Calculate the column count from the first row\n const columnCount = value.rows[0]?.cells.length ?? 0\n\n newRows.splice(index, 0, {\n _type: rowType,\n _key: uuid(),\n cells: Array(columnCount).fill(''),\n })\n\n return updateValue({...value, rows: newRows})\n }\n\n const removeRow = (index: number) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n newRows.splice(index, 1)\n updateValue({...value, rows: newRows})\n setDialog(null)\n }\n\n const confirmRemoveRow = (index: number) => {\n if (!value?.rows) {\n return\n }\n if (value.rows.length <= 1) return confirmRemoveTable()\n return setDialog({type: 'row', callback: () => removeRow(index)})\n }\n\n const confirmRemoveColumn = (index: number) => {\n if (!value?.rows) {\n return\n }\n if ((value.rows[0]?.cells.length ?? 0) <= 1) return confirmRemoveTable()\n return setDialog({type: 'column', callback: () => removeColumn(index)})\n }\n\n const addColumns = (count: number) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n // Add a cell to each of the rows\n newRows.forEach((row) => {\n for (let j = 0; j < count; j++) {\n row.cells.push('')\n }\n })\n return updateValue({...value, rows: newRows})\n }\n\n const addColumnAt = (index: number) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n\n newRows.forEach((row) => {\n row.cells.splice(index, 0, '')\n })\n\n return updateValue({...value, rows: newRows})\n }\n\n const removeColumn = (index: number) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n newRows.forEach((row) => {\n row.cells.splice(index, 1)\n })\n updateValue({...value, rows: newRows})\n setDialog(null)\n }\n\n const updateCell = (e: ChangeEvent<HTMLInputElement>, rowIndex: number, cellIndex: number) => {\n if (!value?.rows) {\n return\n }\n const newRows = deepClone(value.rows)\n const row = newRows[rowIndex]\n if (!row) {\n return\n }\n row.cells[cellIndex] = e.currentTarget.value\n return updateValue({...value, rows: newRows})\n }\n\n return (\n <div>\n {dialog && (\n <Dialog\n header={`Remove ${dialog.type}`}\n id={`${id}-dialog-remove`}\n onClose={() => setDialog(null)}\n zOffset={1000}\n >\n <Card padding={4}>\n <Text>Are you sure you want to remove this {dialog.type}?</Text>\n <Box marginTop={4}>\n <Inline gap={1} style={{textAlign: 'right'}}>\n <Button text=\"Cancel\" mode=\"ghost\" onClick={() => setDialog(null)} />\n <Button text=\"Confirm\" tone=\"critical\" onClick={() => dialog.callback()} />\n </Inline>\n </Box>\n </Card>\n </Dialog>\n )}\n <Box>\n <Flex justify=\"flex-end\">\n {value?.rows?.length ? (\n <Inline gap={1}>\n <Button\n fontSize={1}\n padding={2}\n icon={AddIcon}\n text=\"Add row\"\n mode=\"ghost\"\n onClick={() => addRows(1)}\n />\n <Button\n fontSize={1}\n padding={2}\n icon={AddIcon}\n text=\"Add column\"\n mode=\"ghost\"\n onClick={() => addColumns(1)}\n />\n <TableMenu\n id={id}\n addColumns={addColumns}\n addColumnAt={addColumnAt}\n addRows={addRows}\n addRowAt={addRowAt}\n remove={confirmRemoveTable}\n placement=\"left\"\n />\n </Inline>\n ) : null}\n </Flex>\n </Box>\n {value?.rows?.length ? (\n <TableInput\n rows={value.rows}\n removeRow={confirmRemoveRow}\n removeColumn={confirmRemoveColumn}\n updateCell={updateCell}\n />\n ) : null}\n {!value || !value?.rows?.length ? (\n <Inline gap={1}>\n <Button\n fontSize={1}\n padding={3}\n icon={AddIcon}\n text=\"Create Table\"\n tone=\"primary\"\n mode=\"ghost\"\n onClick={createTable}\n />\n </Inline>\n ) : null}\n </div>\n )\n}\n\nexport function createTableComponent(rowType: string) {\n return function Table(props: TableProps) {\n return <TableComponent {...props} rowType={rowType} />\n }\n}\n","export function TableIcon() {\n return (\n <svg\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 25 25\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.2\"\n >\n <path d=\"M3 3h18v18H3zM21 9H3M21 15H3M12 3v18\" />\n </svg>\n )\n}\n","import {Box, Card, Grid, Inline, Label, Text} from '@sanity/ui'\nimport type {PreviewProps} from 'sanity'\n\nimport type {TableRow} from './TableComponent'\nimport {TableIcon} from './TableIcon'\n\ninterface TablePreviewProps extends PreviewProps {\n rows?: TableRow[]\n}\n\nconst Table = ({rows}: {rows: TableRow[]}) => {\n const numCols = rows[0]?.cells.length ?? 0\n\n return (\n <Grid gridTemplateColumns={numCols} padding={2}>\n {rows.map((row) =>\n row.cells.map((cell, i) => (\n // Cells are plain strings; the cell position is the only stable identity\n // eslint-disable-next-line react/no-array-index-key\n <Card key={row._key + i} padding={2} style={{outline: '1px solid #DFE2E9'}}>\n <Text textOverflow=\"ellipsis\">{cell}</Text>\n </Card>\n )),\n )}\n </Grid>\n )\n}\n\nexport const TablePreview = (props: TablePreviewProps) => {\n const {schemaType, rows = [], title} = props\n const previewTitle = schemaType?.title ?? (typeof title === 'string' ? title : 'Title missing')\n\n return (\n <>\n <Box padding={3}>\n <Inline gap={3}>\n <Card>\n <Label size={4}>\n <TableIcon />\n </Label>\n </Card>\n <Card>\n <Text>{previewTitle}</Text>\n </Card>\n </Inline>\n </Box>\n <Box padding={2}>\n {rows.length === 0 ? <Label muted>Empty Table</Label> : <Table rows={rows} />}\n </Box>\n </>\n )\n}\n","import {definePlugin, defineType} from 'sanity'\n\nimport {createTableComponent, TableComponent} from './components/TableComponent'\nimport {TablePreview} from './components/TablePreview'\nexport type {TableProps, TableRow, TableValue} from './components/TableComponent'\n\nexport {TableComponent, TablePreview}\n\nexport interface TableConfig {\n rowType?: string\n}\n\nexport const table = definePlugin<TableConfig | void>((config) => {\n const tableRowSchema = defineType({\n title: 'Table Row',\n name: config?.rowType || 'tableRow',\n type: 'object',\n fields: [\n {\n name: 'cells',\n type: 'array',\n of: [{type: 'string'}],\n },\n ],\n })\n\n const tableSchema = defineType({\n title: 'Table',\n name: 'table',\n type: 'object',\n fields: [\n {\n name: 'rows',\n type: 'array',\n of: [\n {\n type: tableRowSchema.name,\n },\n ],\n },\n ],\n components: {\n input: createTableComponent(tableRowSchema.name),\n preview: TablePreview,\n },\n preview: {\n select: {\n rows: 'rows',\n title: 'title',\n },\n prepare: ({title, rows = []}) => ({\n title,\n rows,\n }),\n },\n })\n\n return {\n name: 'table',\n schema: {\n types: [tableRowSchema, tableSchema],\n },\n }\n})\n"],"names":["TableInput","props","$","_c","rows","updateCell","removeRow","removeColumn","t0","for","width","t1","t2","row","rowIndex","cells","map","cell","cellIndex","e","_key","textAlign","RemoveIcon","t3","t4","_","i","t5","TableMenu","id","remove","handleRemove","dialog","setDialog","useState","count","setCount","Symbol","currentTarget","value","updateCount","type","callback","c","addRows","index","addRowAt","c_0","addColumns","index_0","addColumnAt","addColumnsAt","parsedCount","Number","parseInt","isInteger","isValidCount","t6","onConfirm","t7","undefined","t8","ControlsIcon","t9","t10","AddIcon","t11","t12","t13","t14","t15","WarningOutlineIcon","t16","t17","placement","t18","t19","deepClone","globalThis","structuredClone","data","JSON","parse","stringify","TableComponent","rowType","onChange","v","set","updateValue","unset","resetValue","newValue","_type","uuid","createTable","confirmRemoveTable","removeTable","newRows","columnCount","length","push","Array","fill","newRows_0","columnCount_0","splice","newRows_1","index_1","confirmRemoveRow","confirmRemoveColumn","index_2","count_0","newRows_2","forEach","j","index_3","newRows_3","row_0","index_4","newRows_4","row_1","newRows_5","row_2","createTableComponent","TableIcon","Table","numCols","_temp","TablePreview","schemaType","title","previewTitle","outline","table","definePlugin","config","tableRowSchema","defineType","name","fields","of","tableSchema","components","input","preview","select","prepare","schema","types"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sanity/table",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.3",
|
|
4
4
|
"description": "Table schema type and input component for Sanity Studio",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"sanity",
|
|
@@ -29,17 +29,17 @@
|
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@sanity/icons": "^3.7.4",
|
|
31
31
|
"@sanity/ui": "^3.2.0",
|
|
32
|
-
"@sanity/uuid": "^3.0.
|
|
32
|
+
"@sanity/uuid": "^3.0.3"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@sanity/pkg-utils": "^10.5.
|
|
35
|
+
"@sanity/pkg-utils": "^10.5.7",
|
|
36
36
|
"@types/node": "^24.13.2",
|
|
37
37
|
"@types/react": "^19.2.17",
|
|
38
38
|
"@types/react-dom": "^19.2.3",
|
|
39
39
|
"babel-plugin-react-compiler": "^1.0.0",
|
|
40
40
|
"react": "^19.2.7",
|
|
41
41
|
"react-dom": "^19.2.7",
|
|
42
|
-
"sanity": "^6.
|
|
42
|
+
"sanity": "^6.1.0",
|
|
43
43
|
"styled-components": "^6.4.2",
|
|
44
44
|
"@repo/package.config": "0.0.0",
|
|
45
45
|
"@repo/tsconfig": "0.0.0"
|