@rttui/skin-anocca 1.0.16 → 1.0.18
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/cjs/HeaderPinButtons.cjs +109 -0
- package/dist/cjs/HeaderPinButtons.cjs.map +10 -0
- package/dist/cjs/RowPinButtons.cjs +75 -0
- package/dist/cjs/RowPinButtons.cjs.map +10 -0
- package/dist/cjs/index.cjs +383 -0
- package/dist/cjs/index.cjs.map +10 -0
- package/dist/cjs/package.json +5 -0
- package/dist/cjs/stories/ReactTanstackTableUiStory.stories.cjs +276 -0
- package/dist/cjs/stories/ReactTanstackTableUiStory.stories.cjs.map +10 -0
- package/dist/cjs/stories/ReactTanstackTableUiStoryComponent.cjs +186 -0
- package/dist/cjs/stories/ReactTanstackTableUiStoryComponent.cjs.map +10 -0
- package/dist/cjs/stories/createSourceCode.cjs +92 -0
- package/dist/cjs/stories/createSourceCode.cjs.map +10 -0
- package/dist/mjs/HeaderPinButtons.mjs +79 -0
- package/dist/mjs/HeaderPinButtons.mjs.map +10 -0
- package/dist/mjs/RowPinButtons.mjs +45 -0
- package/dist/mjs/RowPinButtons.mjs.map +10 -0
- package/dist/mjs/index.mjs +352 -0
- package/dist/mjs/index.mjs.map +10 -0
- package/dist/mjs/package.json +5 -0
- package/dist/mjs/stories/ReactTanstackTableUiStory.stories.mjs +246 -0
- package/dist/mjs/stories/ReactTanstackTableUiStory.stories.mjs.map +10 -0
- package/dist/mjs/stories/ReactTanstackTableUiStoryComponent.mjs +155 -0
- package/dist/mjs/stories/ReactTanstackTableUiStoryComponent.mjs.map +10 -0
- package/{src/stories/createSourceCode.ts → dist/mjs/stories/createSourceCode.mjs} +13 -4
- package/dist/mjs/stories/createSourceCode.mjs.map +10 -0
- package/dist/types/HeaderPinButtons.d.ts +1 -0
- package/dist/types/RowPinButtons.d.ts +4 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/stories/ReactTanstackTableUiStory.stories.d.ts +78 -0
- package/dist/types/stories/ReactTanstackTableUiStoryComponent.d.ts +17 -0
- package/dist/types/stories/createSourceCode.d.ts +5 -0
- package/package.json +5 -2
- package/.storybook/main.ts +0 -18
- package/.storybook/preview.ts +0 -14
- package/CHANGELOG.md +0 -126
- package/index.html +0 -13
- package/src/HeaderPinButtons.tsx +0 -81
- package/src/RowPinButtons.tsx +0 -40
- package/src/index.tsx +0 -460
- package/src/stories/ReactTanstackTableUiStory.mdx +0 -147
- package/src/stories/ReactTanstackTableUiStory.stories.tsx +0 -207
- package/src/stories/ReactTanstackTableUiStoryComponent.tsx +0 -113
- package/src/stories/ScrollbarWidthSpecified.mdx +0 -42
- package/tsconfig.json +0 -34
- package/tsconfig.types.json +0 -9
- package/vite.config.ts +0 -23
@@ -0,0 +1,276 @@
|
|
1
|
+
var __defProp = Object.defineProperty;
|
2
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
5
|
+
var __moduleCache = /* @__PURE__ */ new WeakMap;
|
6
|
+
var __toCommonJS = (from) => {
|
7
|
+
var entry = __moduleCache.get(from), desc;
|
8
|
+
if (entry)
|
9
|
+
return entry;
|
10
|
+
entry = __defProp({}, "__esModule", { value: true });
|
11
|
+
if (from && typeof from === "object" || typeof from === "function")
|
12
|
+
__getOwnPropNames(from).map((key) => !__hasOwnProp.call(entry, key) && __defProp(entry, key, {
|
13
|
+
get: () => from[key],
|
14
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
15
|
+
}));
|
16
|
+
__moduleCache.set(from, entry);
|
17
|
+
return entry;
|
18
|
+
};
|
19
|
+
var __export = (target, all) => {
|
20
|
+
for (var name in all)
|
21
|
+
__defProp(target, name, {
|
22
|
+
get: all[name],
|
23
|
+
enumerable: true,
|
24
|
+
configurable: true,
|
25
|
+
set: (newValue) => all[name] = () => newValue
|
26
|
+
});
|
27
|
+
};
|
28
|
+
|
29
|
+
// packages/skin-anocca/src/stories/ReactTanstackTableUiStory.stories.tsx
|
30
|
+
var exports_ReactTanstackTableUiStory_stories = {};
|
31
|
+
__export(exports_ReactTanstackTableUiStory_stories, {
|
32
|
+
default: () => ReactTanstackTableUiStory_stories_default,
|
33
|
+
SizeByLargestHeaderWithMeta: () => SizeByLargestHeaderWithMeta,
|
34
|
+
SizeByLargestHeader: () => SizeByLargestHeader,
|
35
|
+
PinRelativeToTable: () => PinRelativeToTable,
|
36
|
+
PinRelativeToCols: () => PinRelativeToCols,
|
37
|
+
FillAvailableSpaceAfterCrushWithoutSpecifiedScrollbarWidth: () => FillAvailableSpaceAfterCrushWithoutSpecifiedScrollbarWidth,
|
38
|
+
FillAvailableSpaceAfterCrushWithTwoHeaderRowsExceptName: () => FillAvailableSpaceAfterCrushWithTwoHeaderRowsExceptName,
|
39
|
+
FillAvailableSpaceAfterCrushWithTwoHeaderRows: () => FillAvailableSpaceAfterCrushWithTwoHeaderRows,
|
40
|
+
FillAvailableSpaceAfterCrushWithHeaderGroupsExceptName: () => FillAvailableSpaceAfterCrushWithHeaderGroupsExceptName,
|
41
|
+
FillAvailableSpaceAfterCrushWithHeaderGroups: () => FillAvailableSpaceAfterCrushWithHeaderGroups,
|
42
|
+
FillAvailableSpaceAfterCrushExceptName: () => FillAvailableSpaceAfterCrushExceptName,
|
43
|
+
FillAvailableSpaceAfterCrush: () => FillAvailableSpaceAfterCrush,
|
44
|
+
CanPinRowsRelativeToTable: () => CanPinRowsRelativeToTable,
|
45
|
+
CanPinRowsRelativeToRows: () => CanPinRowsRelativeToRows,
|
46
|
+
Basic: () => Basic,
|
47
|
+
AutoCrushColumnsExceptName: () => AutoCrushColumnsExceptName,
|
48
|
+
AutoCrushColumns: () => AutoCrushColumns
|
49
|
+
});
|
50
|
+
module.exports = __toCommonJS(exports_ReactTanstackTableUiStory_stories);
|
51
|
+
var import_react_table = require("@tanstack/react-table");
|
52
|
+
var import___ = require("..");
|
53
|
+
var import_ReactTanstackTableUiStoryComponent = require("./ReactTanstackTableUiStoryComponent.cjs");
|
54
|
+
var import_createSourceCode = require("./createSourceCode.cjs");
|
55
|
+
var meta = {
|
56
|
+
title: "ReactTanstackTableUi",
|
57
|
+
component: import_ReactTanstackTableUiStoryComponent.ReactTanstackTableUi,
|
58
|
+
parameters: {
|
59
|
+
layout: "centered"
|
60
|
+
},
|
61
|
+
argTypes: {
|
62
|
+
data: { control: "select" },
|
63
|
+
columns: { control: "select" },
|
64
|
+
pinColsRelativeTo: { control: "select", options: ["cols", "table"] },
|
65
|
+
skin: {
|
66
|
+
control: "object",
|
67
|
+
table: { disable: true }
|
68
|
+
}
|
69
|
+
},
|
70
|
+
args: {
|
71
|
+
width: 600,
|
72
|
+
height: 400,
|
73
|
+
skin: import___.AnoccaSkin,
|
74
|
+
autoCrushColumns: false,
|
75
|
+
data: "big",
|
76
|
+
columns: "few",
|
77
|
+
getCoreRowModel: import_react_table.getCoreRowModel(),
|
78
|
+
pinColsRelativeTo: "cols",
|
79
|
+
fillAvailableSpaceAfterCrush: false,
|
80
|
+
scrollbarWidth: 16,
|
81
|
+
getRowId: (row) => row.id
|
82
|
+
}
|
83
|
+
};
|
84
|
+
var ReactTanstackTableUiStory_stories_default = meta;
|
85
|
+
var Basic = {
|
86
|
+
args: {
|
87
|
+
enableColumnPinning: true,
|
88
|
+
autoCrushColumns: false,
|
89
|
+
fillAvailableSpaceAfterCrush: false,
|
90
|
+
pinColsRelativeTo: "cols"
|
91
|
+
},
|
92
|
+
parameters: {
|
93
|
+
docs: {
|
94
|
+
source: { language: "tsx", code: import_createSourceCode.createSourceCode() }
|
95
|
+
}
|
96
|
+
}
|
97
|
+
};
|
98
|
+
var AutoCrushColumns = {
|
99
|
+
args: {
|
100
|
+
autoCrushColumns: true
|
101
|
+
},
|
102
|
+
parameters: {
|
103
|
+
docs: {
|
104
|
+
source: {
|
105
|
+
language: "tsx",
|
106
|
+
code: import_createSourceCode.createSourceCode({ props: " autoCrushColumns" })
|
107
|
+
}
|
108
|
+
}
|
109
|
+
}
|
110
|
+
};
|
111
|
+
var AutoCrushColumnsExceptName = {
|
112
|
+
args: {
|
113
|
+
autoCrushColumns: true,
|
114
|
+
enableColumnPinning: true,
|
115
|
+
meta: {
|
116
|
+
name: {
|
117
|
+
autoCrush: false
|
118
|
+
}
|
119
|
+
}
|
120
|
+
},
|
121
|
+
parameters: {
|
122
|
+
docs: {
|
123
|
+
source: {
|
124
|
+
language: "tsx",
|
125
|
+
code: import_createSourceCode.createSourceCode({
|
126
|
+
props: " autoCrushColumns",
|
127
|
+
nameMeta: " autoCrush: false,"
|
128
|
+
})
|
129
|
+
}
|
130
|
+
}
|
131
|
+
}
|
132
|
+
};
|
133
|
+
var PinRelativeToCols = {
|
134
|
+
args: {
|
135
|
+
autoCrushColumns: true,
|
136
|
+
pinColsRelativeTo: "cols",
|
137
|
+
enableColumnPinning: true,
|
138
|
+
initialState: {
|
139
|
+
columnPinning: {
|
140
|
+
right: ["city"]
|
141
|
+
}
|
142
|
+
}
|
143
|
+
}
|
144
|
+
};
|
145
|
+
var PinRelativeToTable = {
|
146
|
+
args: {
|
147
|
+
autoCrushColumns: true,
|
148
|
+
pinColsRelativeTo: "table",
|
149
|
+
enableColumnPinning: true,
|
150
|
+
initialState: {
|
151
|
+
columnPinning: {
|
152
|
+
right: ["city"]
|
153
|
+
}
|
154
|
+
}
|
155
|
+
}
|
156
|
+
};
|
157
|
+
var FillAvailableSpaceAfterCrush = {
|
158
|
+
args: {
|
159
|
+
autoCrushColumns: true,
|
160
|
+
fillAvailableSpaceAfterCrush: true
|
161
|
+
}
|
162
|
+
};
|
163
|
+
var FillAvailableSpaceAfterCrushExceptName = {
|
164
|
+
args: {
|
165
|
+
autoCrushColumns: true,
|
166
|
+
fillAvailableSpaceAfterCrush: true,
|
167
|
+
meta: {
|
168
|
+
name: {
|
169
|
+
fillAvailableSpaceAfterCrush: false
|
170
|
+
}
|
171
|
+
}
|
172
|
+
},
|
173
|
+
parameters: {
|
174
|
+
docs: {
|
175
|
+
source: {
|
176
|
+
language: "tsx",
|
177
|
+
code: import_createSourceCode.createSourceCode({
|
178
|
+
props: ` autoCrushColumns
|
179
|
+
fillAvailableSpaceAfterCrush`,
|
180
|
+
nameMeta: " fillAvailableSpaceAfterCrush: false,"
|
181
|
+
})
|
182
|
+
}
|
183
|
+
}
|
184
|
+
}
|
185
|
+
};
|
186
|
+
var FillAvailableSpaceAfterCrushWithTwoHeaderRows = {
|
187
|
+
args: {
|
188
|
+
autoCrushColumns: true,
|
189
|
+
fillAvailableSpaceAfterCrush: true,
|
190
|
+
withTwoHeaderRows: true
|
191
|
+
}
|
192
|
+
};
|
193
|
+
var FillAvailableSpaceAfterCrushWithHeaderGroups = {
|
194
|
+
args: {
|
195
|
+
autoCrushColumns: true,
|
196
|
+
fillAvailableSpaceAfterCrush: true,
|
197
|
+
withHeaderGroups: true
|
198
|
+
}
|
199
|
+
};
|
200
|
+
var FillAvailableSpaceAfterCrushWithHeaderGroupsExceptName = {
|
201
|
+
args: {
|
202
|
+
autoCrushColumns: true,
|
203
|
+
fillAvailableSpaceAfterCrush: true,
|
204
|
+
withHeaderGroups: true,
|
205
|
+
meta: {
|
206
|
+
name: {
|
207
|
+
fillAvailableSpaceAfterCrush: false
|
208
|
+
}
|
209
|
+
}
|
210
|
+
}
|
211
|
+
};
|
212
|
+
var FillAvailableSpaceAfterCrushWithTwoHeaderRowsExceptName = {
|
213
|
+
args: {
|
214
|
+
autoCrushColumns: true,
|
215
|
+
fillAvailableSpaceAfterCrush: true,
|
216
|
+
withTwoHeaderRows: true,
|
217
|
+
meta: {
|
218
|
+
name: {
|
219
|
+
fillAvailableSpaceAfterCrush: false
|
220
|
+
}
|
221
|
+
}
|
222
|
+
}
|
223
|
+
};
|
224
|
+
var FillAvailableSpaceAfterCrushWithoutSpecifiedScrollbarWidth = {
|
225
|
+
args: {
|
226
|
+
autoCrushColumns: true,
|
227
|
+
fillAvailableSpaceAfterCrush: true,
|
228
|
+
scrollbarWidth: 0
|
229
|
+
}
|
230
|
+
};
|
231
|
+
var CanPinRowsRelativeToRows = {
|
232
|
+
args: {
|
233
|
+
enableRowPinning: true,
|
234
|
+
enableColumnPinning: true,
|
235
|
+
data: "small",
|
236
|
+
pinRowsRelativeTo: "rows",
|
237
|
+
initialState: {
|
238
|
+
rowPinning: {
|
239
|
+
bottom: ["3"]
|
240
|
+
}
|
241
|
+
}
|
242
|
+
}
|
243
|
+
};
|
244
|
+
var CanPinRowsRelativeToTable = {
|
245
|
+
args: {
|
246
|
+
enableRowPinning: true,
|
247
|
+
enableColumnPinning: true,
|
248
|
+
data: "small",
|
249
|
+
pinRowsRelativeTo: "table",
|
250
|
+
initialState: {
|
251
|
+
rowPinning: {
|
252
|
+
bottom: ["3"]
|
253
|
+
}
|
254
|
+
}
|
255
|
+
}
|
256
|
+
};
|
257
|
+
var SizeByLargestHeader = {
|
258
|
+
args: {
|
259
|
+
autoCrushColumns: true,
|
260
|
+
crushMinSizeBy: "cell"
|
261
|
+
}
|
262
|
+
};
|
263
|
+
var SizeByLargestHeaderWithMeta = {
|
264
|
+
args: {
|
265
|
+
autoCrushColumns: true,
|
266
|
+
crushMinSizeBy: "header",
|
267
|
+
enableColumnPinning: true,
|
268
|
+
meta: {
|
269
|
+
age: {
|
270
|
+
crushMinSizeBy: "cell"
|
271
|
+
}
|
272
|
+
}
|
273
|
+
}
|
274
|
+
};
|
275
|
+
|
276
|
+
//# debugId=A042BD6B403A4BB064756E2164756E21
|
@@ -0,0 +1,10 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../src/stories/ReactTanstackTableUiStory.stories.tsx"],
|
4
|
+
"sourcesContent": [
|
5
|
+
"import type { Meta, StoryObj } from \"@storybook/react\";\n\nimport { getCoreRowModel } from \"@tanstack/react-table\";\nimport { AnoccaSkin } from \"..\";\nimport { ReactTanstackTableUi } from \"./ReactTanstackTableUiStoryComponent.cjs\";\nimport { createSourceCode } from \"./createSourceCode.cjs\";\n\n// More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export\nconst meta = {\n title: \"ReactTanstackTableUi\",\n component: ReactTanstackTableUi,\n parameters: {\n // Optional parameter to center the component in the Canvas. More info: https://storybook.js.org/docs/configure/story-layout\n layout: \"centered\",\n },\n // More on argTypes: https://storybook.js.org/docs/api/argtypes\n argTypes: {\n data: { control: \"select\" },\n columns: { control: \"select\" },\n pinColsRelativeTo: { control: \"select\", options: [\"cols\", \"table\"] },\n skin: {\n control: \"object\",\n table: { disable: true },\n },\n },\n // Use `fn` to spy on the onClick arg, which will appear in the actions panel once invoked: https://storybook.js.org/docs/essentials/actions#action-args\n args: {\n width: 600,\n height: 400,\n skin: AnoccaSkin,\n autoCrushColumns: false,\n data: \"big\",\n columns: \"few\",\n getCoreRowModel: getCoreRowModel(),\n pinColsRelativeTo: \"cols\",\n fillAvailableSpaceAfterCrush: false,\n scrollbarWidth: 16,\n getRowId: (row) => row.id,\n },\n} satisfies Meta<typeof ReactTanstackTableUi>;\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nexport const Basic: Story = {\n args: {\n enableColumnPinning: true,\n autoCrushColumns: false,\n fillAvailableSpaceAfterCrush: false,\n pinColsRelativeTo: \"cols\",\n },\n parameters: {\n docs: {\n source: { language: \"tsx\", code: createSourceCode() },\n },\n },\n};\n\nexport const AutoCrushColumns: Story = {\n args: {\n autoCrushColumns: true,\n },\n parameters: {\n docs: {\n source: {\n language: \"tsx\",\n code: createSourceCode({ props: \" autoCrushColumns\" }),\n },\n },\n },\n};\n\nexport const AutoCrushColumnsExceptName: Story = {\n args: {\n autoCrushColumns: true,\n enableColumnPinning: true,\n meta: {\n name: {\n autoCrush: false,\n },\n },\n },\n parameters: {\n docs: {\n source: {\n language: \"tsx\",\n code: createSourceCode({\n props: \" autoCrushColumns\",\n nameMeta: \" autoCrush: false,\",\n }),\n },\n },\n },\n};\n\nexport const PinRelativeToCols: Story = {\n args: {\n autoCrushColumns: true,\n pinColsRelativeTo: \"cols\",\n enableColumnPinning: true,\n initialState: {\n columnPinning: {\n right: [\"city\"],\n },\n },\n },\n};\n\nexport const PinRelativeToTable: Story = {\n args: {\n autoCrushColumns: true,\n pinColsRelativeTo: \"table\",\n enableColumnPinning: true,\n initialState: {\n columnPinning: {\n right: [\"city\"],\n },\n },\n },\n};\n\nexport const FillAvailableSpaceAfterCrush: Story = {\n args: {\n autoCrushColumns: true,\n fillAvailableSpaceAfterCrush: true,\n },\n};\n\nexport const FillAvailableSpaceAfterCrushExceptName: Story = {\n args: {\n autoCrushColumns: true,\n fillAvailableSpaceAfterCrush: true,\n meta: {\n name: {\n fillAvailableSpaceAfterCrush: false,\n },\n },\n },\n parameters: {\n docs: {\n source: {\n language: \"tsx\",\n code: createSourceCode({\n props: \" autoCrushColumns\\n fillAvailableSpaceAfterCrush\",\n nameMeta: \" fillAvailableSpaceAfterCrush: false,\",\n }),\n },\n },\n },\n};\n\nexport const FillAvailableSpaceAfterCrushWithTwoHeaderRows: Story = {\n args: {\n autoCrushColumns: true,\n fillAvailableSpaceAfterCrush: true,\n withTwoHeaderRows: true,\n },\n};\nexport const FillAvailableSpaceAfterCrushWithHeaderGroups: Story = {\n args: {\n autoCrushColumns: true,\n fillAvailableSpaceAfterCrush: true,\n withHeaderGroups: true,\n },\n};\nexport const FillAvailableSpaceAfterCrushWithHeaderGroupsExceptName: Story = {\n args: {\n autoCrushColumns: true,\n fillAvailableSpaceAfterCrush: true,\n withHeaderGroups: true,\n meta: {\n name: {\n fillAvailableSpaceAfterCrush: false,\n },\n },\n },\n};\n\nexport const FillAvailableSpaceAfterCrushWithTwoHeaderRowsExceptName: Story = {\n args: {\n autoCrushColumns: true,\n fillAvailableSpaceAfterCrush: true,\n withTwoHeaderRows: true,\n meta: {\n name: {\n fillAvailableSpaceAfterCrush: false,\n },\n },\n },\n};\n\n\nexport const FillAvailableSpaceAfterCrushWithoutSpecifiedScrollbarWidth: Story =\n {\n args: {\n autoCrushColumns: true,\n fillAvailableSpaceAfterCrush: true,\n scrollbarWidth: 0,\n },\n };\n\nexport const CanPinRowsRelativeToRows: Story = {\n args: {\n enableRowPinning: true,\n enableColumnPinning: true,\n data: \"small\",\n pinRowsRelativeTo: \"rows\",\n initialState: {\n rowPinning: {\n bottom: [\"3\"],\n },\n },\n },\n};\n\nexport const CanPinRowsRelativeToTable: Story = {\n args: {\n enableRowPinning: true,\n enableColumnPinning: true,\n data: \"small\",\n pinRowsRelativeTo: \"table\",\n initialState: {\n rowPinning: {\n bottom: [\"3\"],\n },\n },\n },\n};\n\nexport const SizeByLargestHeader: Story = {\n args: {\n autoCrushColumns: true,\n crushMinSizeBy: \"cell\",\n },\n};\n\nexport const SizeByLargestHeaderWithMeta: Story = {\n args: {\n autoCrushColumns: true,\n crushMinSizeBy: \"header\",\n enableColumnPinning: true,\n meta: {\n age: {\n crushMinSizeBy: 'cell',\n },\n },\n },\n};\n"
|
6
|
+
],
|
7
|
+
"mappings": "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",
|
8
|
+
"debugId": "A042BD6B403A4BB064756E2164756E21",
|
9
|
+
"names": []
|
10
|
+
}
|
@@ -0,0 +1,186 @@
|
|
1
|
+
var __create = Object.create;
|
2
|
+
var __getProtoOf = Object.getPrototypeOf;
|
3
|
+
var __defProp = Object.defineProperty;
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
7
|
+
var __toESM = (mod, isNodeMode, target) => {
|
8
|
+
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
9
|
+
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
10
|
+
for (let key of __getOwnPropNames(mod))
|
11
|
+
if (!__hasOwnProp.call(to, key))
|
12
|
+
__defProp(to, key, {
|
13
|
+
get: () => mod[key],
|
14
|
+
enumerable: true
|
15
|
+
});
|
16
|
+
return to;
|
17
|
+
};
|
18
|
+
var __moduleCache = /* @__PURE__ */ new WeakMap;
|
19
|
+
var __toCommonJS = (from) => {
|
20
|
+
var entry = __moduleCache.get(from), desc;
|
21
|
+
if (entry)
|
22
|
+
return entry;
|
23
|
+
entry = __defProp({}, "__esModule", { value: true });
|
24
|
+
if (from && typeof from === "object" || typeof from === "function")
|
25
|
+
__getOwnPropNames(from).map((key) => !__hasOwnProp.call(entry, key) && __defProp(entry, key, {
|
26
|
+
get: () => from[key],
|
27
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
28
|
+
}));
|
29
|
+
__moduleCache.set(from, entry);
|
30
|
+
return entry;
|
31
|
+
};
|
32
|
+
var __export = (target, all) => {
|
33
|
+
for (var name in all)
|
34
|
+
__defProp(target, name, {
|
35
|
+
get: all[name],
|
36
|
+
enumerable: true,
|
37
|
+
configurable: true,
|
38
|
+
set: (newValue) => all[name] = () => newValue
|
39
|
+
});
|
40
|
+
};
|
41
|
+
|
42
|
+
// packages/skin-anocca/src/stories/ReactTanstackTableUiStoryComponent.tsx
|
43
|
+
var exports_ReactTanstackTableUiStoryComponent = {};
|
44
|
+
__export(exports_ReactTanstackTableUiStoryComponent, {
|
45
|
+
ReactTanstackTableUi: () => ReactTanstackTableUi
|
46
|
+
});
|
47
|
+
module.exports = __toCommonJS(exports_ReactTanstackTableUiStoryComponent);
|
48
|
+
var import_material = require("@mui/material");
|
49
|
+
var import_styles = require("@mui/material/styles");
|
50
|
+
var import_core = require("@rttui/core");
|
51
|
+
var import_react_table = require("@tanstack/react-table");
|
52
|
+
var import_HeaderPinButtons = require("../HeaderPinButtons.cjs");
|
53
|
+
var import_react = __toESM(require("react"));
|
54
|
+
var import_RowPinButtons = require("../RowPinButtons.cjs");
|
55
|
+
var jsx_runtime = require("react/jsx-runtime");
|
56
|
+
var smallData = [
|
57
|
+
{ id: "1", name: "John", age: 20, city: "New York" },
|
58
|
+
{ id: "2", name: "Jane", age: 21, city: "Los Angeles" },
|
59
|
+
{ id: "3", name: "Jim", age: 22, city: "Chicago" }
|
60
|
+
];
|
61
|
+
var bigData = Array.from({ length: 1000 }, (_, i) => ({
|
62
|
+
id: i.toString(),
|
63
|
+
name: `Person ${i}`,
|
64
|
+
age: 20 + i,
|
65
|
+
city: `City ${i}`,
|
66
|
+
...Object.fromEntries(Array.from({ length: 100 }, (_2, j) => [`col${j}`, `Value ${i}-${j}`]))
|
67
|
+
}));
|
68
|
+
var ReactTanstackTableUi = (props) => {
|
69
|
+
const theme = import_styles.useTheme();
|
70
|
+
const data = props.data === "big" ? bigData : smallData;
|
71
|
+
const columns = import_react.default.useMemo(() => {
|
72
|
+
const columnHelper = import_core.decorateColumnHelper(import_react_table.createColumnHelper(), {
|
73
|
+
header: (original) => /* @__PURE__ */ jsx_runtime.jsxs(import_material.Box, {
|
74
|
+
sx: { display: "flex", gap: 2 },
|
75
|
+
children: [
|
76
|
+
original,
|
77
|
+
props.enableColumnPinning && /* @__PURE__ */ jsx_runtime.jsx(import_HeaderPinButtons.HeaderPinButtons, {})
|
78
|
+
]
|
79
|
+
})
|
80
|
+
});
|
81
|
+
const fewColumns = [
|
82
|
+
columnHelper.accessor("name", {
|
83
|
+
id: "name",
|
84
|
+
header: "Name",
|
85
|
+
cell: (info) => /* @__PURE__ */ jsx_runtime.jsxs(import_material.Box, {
|
86
|
+
sx: { display: "flex", gap: 2, flex: 1 },
|
87
|
+
children: [
|
88
|
+
/* @__PURE__ */ jsx_runtime.jsx(import_material.Typography, {
|
89
|
+
variant: "body2",
|
90
|
+
children: info.getValue()
|
91
|
+
}),
|
92
|
+
props.enableRowPinning && /* @__PURE__ */ jsx_runtime.jsx(import_material.Box, {
|
93
|
+
sx: { flexGrow: 1 }
|
94
|
+
}),
|
95
|
+
props.enableRowPinning && /* @__PURE__ */ jsx_runtime.jsx(import_RowPinButtons.RowPinButtons, {
|
96
|
+
row: info.row
|
97
|
+
})
|
98
|
+
]
|
99
|
+
}),
|
100
|
+
meta: props.meta?.["name"]
|
101
|
+
}),
|
102
|
+
columnHelper.accessor("age", {
|
103
|
+
id: "age",
|
104
|
+
header: "Age",
|
105
|
+
meta: props.meta?.["age"],
|
106
|
+
cell: (info) => /* @__PURE__ */ jsx_runtime.jsx(import_material.Typography, {
|
107
|
+
variant: "body2",
|
108
|
+
children: info.getValue()
|
109
|
+
}),
|
110
|
+
size: 50
|
111
|
+
}),
|
112
|
+
columnHelper.accessor("city", {
|
113
|
+
id: "city",
|
114
|
+
header: "City",
|
115
|
+
meta: props.meta?.["city"],
|
116
|
+
cell: (info) => /* @__PURE__ */ jsx_runtime.jsx(import_material.Typography, {
|
117
|
+
variant: "body2",
|
118
|
+
children: info.getValue()
|
119
|
+
})
|
120
|
+
})
|
121
|
+
];
|
122
|
+
const manyColumns = [
|
123
|
+
...fewColumns,
|
124
|
+
...Array.from({ length: 100 }, (_, i) => columnHelper.accessor(`col${i}`, {
|
125
|
+
id: `col${i}`,
|
126
|
+
header: `Column ${i}`,
|
127
|
+
cell: (info) => /* @__PURE__ */ jsx_runtime.jsx(import_material.Typography, {
|
128
|
+
variant: "body2",
|
129
|
+
children: info.getValue()
|
130
|
+
})
|
131
|
+
}))
|
132
|
+
];
|
133
|
+
const cols = props.columns === "few" ? fewColumns : manyColumns;
|
134
|
+
if (props.withHeaderGroups) {
|
135
|
+
cols.splice(0, 2, columnHelper.group({
|
136
|
+
id: `personal-info`,
|
137
|
+
header: "Personal Info",
|
138
|
+
columns: cols.slice(0, 2)
|
139
|
+
}));
|
140
|
+
}
|
141
|
+
if (props.withTwoHeaderRows) {
|
142
|
+
return cols.map((col) => {
|
143
|
+
const newCol = col.id ? {
|
144
|
+
...col,
|
145
|
+
id: col.id,
|
146
|
+
header: () => /* @__PURE__ */ jsx_runtime.jsx(import_material.TextField, {
|
147
|
+
placeholder: "Search...",
|
148
|
+
slotProps: {
|
149
|
+
input: { sx: { height: "20px", width: "150px" } }
|
150
|
+
}
|
151
|
+
})
|
152
|
+
} : undefined;
|
153
|
+
const subColumns = newCol ? [newCol] : [];
|
154
|
+
return columnHelper.group({
|
155
|
+
id: `group-${col.id}`,
|
156
|
+
header: col.header,
|
157
|
+
columns: subColumns
|
158
|
+
});
|
159
|
+
});
|
160
|
+
}
|
161
|
+
return cols;
|
162
|
+
}, [
|
163
|
+
props.columns,
|
164
|
+
props.enableColumnPinning,
|
165
|
+
props.enableRowPinning,
|
166
|
+
props.meta,
|
167
|
+
props.withTwoHeaderRows,
|
168
|
+
props.withHeaderGroups
|
169
|
+
]);
|
170
|
+
const table = import_react_table.useReactTable({
|
171
|
+
...props,
|
172
|
+
data,
|
173
|
+
columns
|
174
|
+
});
|
175
|
+
return /* @__PURE__ */ jsx_runtime.jsx(import_material.ScopedCssBaseline, {
|
176
|
+
children: /* @__PURE__ */ jsx_runtime.jsx(import_material.ThemeProvider, {
|
177
|
+
theme,
|
178
|
+
children: /* @__PURE__ */ jsx_runtime.jsx(import_core.ReactTanstackTableUi, {
|
179
|
+
...props,
|
180
|
+
table
|
181
|
+
})
|
182
|
+
})
|
183
|
+
});
|
184
|
+
};
|
185
|
+
|
186
|
+
//# debugId=AC0B6532447E0C0564756E2164756E21
|
@@ -0,0 +1,10 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../src/stories/ReactTanstackTableUiStoryComponent.tsx"],
|
4
|
+
"sourcesContent": [
|
5
|
+
"import {\n Box,\n ScopedCssBaseline,\n TextField,\n ThemeProvider,\n Typography,\n} from \"@mui/material\";\nimport { useTheme } from \"@mui/material/styles\";\nimport {\n decorateColumnHelper,\n ReactTanstackTableUi as TableComponent,\n} from \"@rttui/core\";\nimport {\n ColumnDef,\n ColumnMeta,\n createColumnHelper,\n Table,\n TableOptions,\n useReactTable,\n} from \"@tanstack/react-table\";\nimport { HeaderPinButtons } from \"../HeaderPinButtons.cjs\";\nimport React from \"react\";\nimport { RowPinButtons } from \"../RowPinButtons.cjs\";\ntype Person = {\n id: string;\n name: string;\n age: number;\n city: string;\n} & Record<`col${number}`, string>;\n\nconst smallData: Person[] = [\n { id: \"1\", name: \"John\", age: 20, city: \"New York\" },\n { id: \"2\", name: \"Jane\", age: 21, city: \"Los Angeles\" },\n { id: \"3\", name: \"Jim\", age: 22, city: \"Chicago\" },\n];\n\nconst bigData: Person[] = Array.from({ length: 1000 }, (_, i) => ({\n id: i.toString(),\n name: `Person ${i}`,\n age: 20 + i,\n city: `City ${i}`,\n ...Object.fromEntries(\n Array.from({ length: 100 }, (_, j) => [`col${j}`, `Value ${i}-${j}`]),\n ),\n}));\n\nexport const ReactTanstackTableUi = (\n props: {\n data: \"big\" | \"small\";\n columns: \"many\" | \"few\";\n meta?: Record<string, ColumnMeta<Person, string>>;\n withTwoHeaderRows?: boolean;\n withHeaderGroups?: boolean;\n } & Omit<TableOptions<Person>, \"data\" | \"columns\"> &\n Omit<React.ComponentProps<typeof TableComponent>, \"table\">,\n) => {\n const theme = useTheme();\n const data: Person[] = props.data === \"big\" ? bigData : smallData;\n\n const columns: ColumnDef<Person>[] = React.useMemo(() => {\n const columnHelper = decorateColumnHelper(createColumnHelper<Person>(), {\n header: (original) => (\n <Box sx={{ display: \"flex\", gap: 2 }}>\n {original}\n {props.enableColumnPinning && <HeaderPinButtons />}\n </Box>\n ),\n });\n\n const fewColumns: ColumnDef<Person>[] = [\n columnHelper.accessor(\"name\", {\n id: \"name\",\n header: \"Name\",\n cell: (info) => (\n <Box sx={{ display: \"flex\", gap: 2, flex: 1 }}>\n <Typography variant=\"body2\">{info.getValue()}</Typography>\n {props.enableRowPinning && <Box sx={{ flexGrow: 1 }} />}\n {props.enableRowPinning && <RowPinButtons row={info.row} />}\n </Box>\n ),\n meta: props.meta?.[\"name\"],\n }),\n columnHelper.accessor(\"age\", {\n id: \"age\",\n header: \"Age\",\n meta: props.meta?.[\"age\"],\n cell: (info) => (\n <Typography variant=\"body2\">{info.getValue()}</Typography>\n ),\n size: 50,\n }),\n columnHelper.accessor(\"city\", {\n id: \"city\",\n header: \"City\",\n meta: props.meta?.[\"city\"],\n cell: (info) => (\n <Typography variant=\"body2\">{info.getValue()}</Typography>\n ),\n }),\n ];\n\n const manyColumns: ColumnDef<Person>[] = [\n ...fewColumns,\n ...Array.from({ length: 100 }, (_, i) =>\n columnHelper.accessor(`col${i}`, {\n id: `col${i}`,\n header: `Column ${i}`,\n cell: (info) => (\n <Typography variant=\"body2\">{info.getValue()}</Typography>\n ),\n }),\n ),\n ];\n\n const cols = props.columns === \"few\" ? fewColumns : manyColumns;\n\n if (props.withHeaderGroups) {\n cols.splice(\n 0,\n 2,\n columnHelper.group({\n id: `personal-info`,\n header: \"Personal Info\",\n columns: cols.slice(0, 2),\n }),\n );\n }\n\n if (props.withTwoHeaderRows) {\n return cols.map((col) => {\n const newCol: ColumnDef<Person> | undefined = col.id\n ? {\n ...col,\n id: col.id,\n header: () => (\n <TextField\n placeholder=\"Search...\"\n slotProps={{\n input: { sx: { height: \"20px\", width: \"150px\" } },\n }}\n />\n ),\n }\n : undefined;\n const subColumns: ColumnDef<Person>[] = newCol ? [newCol] : [];\n return columnHelper.group({\n id: `group-${col.id}`,\n header: col.header,\n columns: subColumns,\n });\n });\n }\n return cols;\n }, [\n props.columns,\n props.enableColumnPinning,\n props.enableRowPinning,\n props.meta,\n props.withTwoHeaderRows,\n props.withHeaderGroups,\n ]);\n\n const table = useReactTable({\n ...props,\n data,\n columns,\n });\n\n return (\n <ScopedCssBaseline>\n <ThemeProvider theme={theme}>\n <TableComponent {...props} table={table as Table<unknown>} />\n </ThemeProvider>\n </ScopedCssBaseline>\n );\n};\n"
|
6
|
+
],
|
7
|
+
"mappings": "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",
|
8
|
+
"debugId": "AC0B6532447E0C0564756E2164756E21",
|
9
|
+
"names": []
|
10
|
+
}
|
@@ -0,0 +1,92 @@
|
|
1
|
+
var __defProp = Object.defineProperty;
|
2
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
5
|
+
var __moduleCache = /* @__PURE__ */ new WeakMap;
|
6
|
+
var __toCommonJS = (from) => {
|
7
|
+
var entry = __moduleCache.get(from), desc;
|
8
|
+
if (entry)
|
9
|
+
return entry;
|
10
|
+
entry = __defProp({}, "__esModule", { value: true });
|
11
|
+
if (from && typeof from === "object" || typeof from === "function")
|
12
|
+
__getOwnPropNames(from).map((key) => !__hasOwnProp.call(entry, key) && __defProp(entry, key, {
|
13
|
+
get: () => from[key],
|
14
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
15
|
+
}));
|
16
|
+
__moduleCache.set(from, entry);
|
17
|
+
return entry;
|
18
|
+
};
|
19
|
+
var __export = (target, all) => {
|
20
|
+
for (var name in all)
|
21
|
+
__defProp(target, name, {
|
22
|
+
get: all[name],
|
23
|
+
enumerable: true,
|
24
|
+
configurable: true,
|
25
|
+
set: (newValue) => all[name] = () => newValue
|
26
|
+
});
|
27
|
+
};
|
28
|
+
|
29
|
+
// packages/skin-anocca/src/stories/createSourceCode.ts
|
30
|
+
var exports_createSourceCode = {};
|
31
|
+
__export(exports_createSourceCode, {
|
32
|
+
createSourceCode: () => createSourceCode
|
33
|
+
});
|
34
|
+
module.exports = __toCommonJS(exports_createSourceCode);
|
35
|
+
var createSourceCode = (opts) => {
|
36
|
+
return `import { createColumnHelper, useReactTable, getCoreRowModel } from "@tanstack/react-table";
|
37
|
+
import { Box } from "@mui/material";
|
38
|
+
import { HeaderPinButtons } from "@rttui/skin-anocca";
|
39
|
+
import { ReactTanstackTableUi, decorateColumnHelper } from "@rttui/core";
|
40
|
+
|
41
|
+
type Person = {
|
42
|
+
id: string;
|
43
|
+
name: string;
|
44
|
+
age: number;
|
45
|
+
city: string;
|
46
|
+
};
|
47
|
+
|
48
|
+
const data: Person[] = [
|
49
|
+
{ id: "1", name: "John", age: 20, city: "New York" },
|
50
|
+
{ id: "2", name: "Jane", age: 21, city: "Los Angeles" },
|
51
|
+
{ id: "3", name: "Jim", age: 22, city: "Chicago" },
|
52
|
+
];
|
53
|
+
|
54
|
+
const columnHelper = decorateColumnHelper(createColumnHelper<Person>(), {
|
55
|
+
header: (original) => (
|
56
|
+
<Box sx={{ display: "flex", gap: 2 }}>
|
57
|
+
{original}
|
58
|
+
{props.enableColumnPinning && <HeaderPinButtons />}
|
59
|
+
</Box>
|
60
|
+
),
|
61
|
+
});
|
62
|
+
|
63
|
+
const columns = [
|
64
|
+
columnHelper.accessor("name", {
|
65
|
+
header: "Name",${opts?.nameMeta ? `
|
66
|
+
` + opts.nameMeta : ""}
|
67
|
+
}),
|
68
|
+
columnHelper.accessor("age", {
|
69
|
+
header: "Age",
|
70
|
+
size: 50,
|
71
|
+
}),
|
72
|
+
columnHelper.accessor("city", {
|
73
|
+
header: "City",
|
74
|
+
}),
|
75
|
+
];
|
76
|
+
|
77
|
+
const table = useReactTable({
|
78
|
+
data,
|
79
|
+
columns,
|
80
|
+
getCoreRowModel: getCoreRowModel()${opts?.hookOptions ? `
|
81
|
+
` + opts.hookOptions : ""}
|
82
|
+
});
|
83
|
+
|
84
|
+
<ReactTanstackTableUi
|
85
|
+
table={table}
|
86
|
+
enableColumnPinning${opts?.props ? `
|
87
|
+
` + opts.props : ""}
|
88
|
+
/>
|
89
|
+
`;
|
90
|
+
};
|
91
|
+
|
92
|
+
//# debugId=6983E6EC5F7C00DB64756E2164756E21
|
@@ -0,0 +1,10 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../src/stories/createSourceCode.ts"],
|
4
|
+
"sourcesContent": [
|
5
|
+
"export const createSourceCode = (opts?: { hookOptions?: string, props?: string, nameMeta?: string }) => {\n return `import { createColumnHelper, useReactTable, getCoreRowModel } from \"@tanstack/react-table\";\nimport { Box } from \"@mui/material\";\nimport { HeaderPinButtons } from \"@rttui/skin-anocca\";\nimport { ReactTanstackTableUi, decorateColumnHelper } from \"@rttui/core\";\n\ntype Person = {\n id: string;\n name: string;\n age: number;\n city: string;\n};\n\nconst data: Person[] = [\n { id: \"1\", name: \"John\", age: 20, city: \"New York\" },\n { id: \"2\", name: \"Jane\", age: 21, city: \"Los Angeles\" },\n { id: \"3\", name: \"Jim\", age: 22, city: \"Chicago\" },\n];\n\nconst columnHelper = decorateColumnHelper(createColumnHelper<Person>(), {\n header: (original) => (\n <Box sx={{ display: \"flex\", gap: 2 }}>\n {original}\n {props.enableColumnPinning && <HeaderPinButtons />}\n </Box>\n ),\n});\n\nconst columns = [\n columnHelper.accessor(\"name\", {\n header: \"Name\",${opts?.nameMeta ? '\\n' + opts.nameMeta : ''}\n }),\n columnHelper.accessor(\"age\", {\n header: \"Age\",\n size: 50,\n }),\n columnHelper.accessor(\"city\", {\n header: \"City\",\n }),\n];\n\nconst table = useReactTable({\n data,\n columns,\n getCoreRowModel: getCoreRowModel()${opts?.hookOptions ? '\\n' + opts.hookOptions : ''}\n});\n\n<ReactTanstackTableUi\n table={table}\n enableColumnPinning${opts?.props ? '\\n' + opts.props : ''}\n/>\n`;\n};\n"
|
6
|
+
],
|
7
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAM,mBAAmB,CAAC,SAAuE;AAAA,EACtG,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBA6BY,MAAM,WAAW;AAAA,IAAO,KAAK,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sCAcvB,MAAM,cAAc;AAAA,IAAO,KAAK,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA,uBAK7D,MAAM,QAAQ;AAAA,IAAO,KAAK,QAAQ;AAAA;AAAA;AAAA;",
|
8
|
+
"debugId": "6983E6EC5F7C00DB64756E2164756E21",
|
9
|
+
"names": []
|
10
|
+
}
|