react-pivottable-plus 1.0.16 → 1.0.20
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/README.md +110 -14
- package/dist/PivotTableUI.js +18 -4
- package/dist/PivotTableUI.js.map +1 -1
- package/dist/TableRenderers.js +113 -20
- package/dist/TableRenderers.js.map +1 -1
- package/dist/hooks/useColumnResize.js +112 -0
- package/dist/hooks/useColumnResize.js.map +1 -0
- package/dist/hooks/usePivot.js +6 -1
- package/dist/hooks/usePivot.js.map +1 -1
- package/package.json +7 -6
- package/pivottable.css +56 -0
package/dist/hooks/usePivot.js
CHANGED
|
@@ -47,7 +47,12 @@ function usePivot(initialProps) {
|
|
|
47
47
|
return engineRef.current.subscribe(onStoreChange);
|
|
48
48
|
}, []), (0, _react.useCallback)(function () {
|
|
49
49
|
return engineRef.current.getSnapshot();
|
|
50
|
-
}, [])
|
|
50
|
+
}, []),
|
|
51
|
+
// getSnapshot
|
|
52
|
+
(0, _react.useCallback)(function () {
|
|
53
|
+
return engineRef.current.getSnapshot();
|
|
54
|
+
}, []) // getServerSnapshot
|
|
55
|
+
);
|
|
51
56
|
return {
|
|
52
57
|
props: snapshot.props,
|
|
53
58
|
state: snapshot.state,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePivot.js","names":["_react","require","_PivotEngine","_FilterModule","_PaginationModule","_SortModule","_typeof","o","Symbol","iterator","constructor","prototype","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","toPrimitive","call","TypeError","String","Number","usePivot","initialProps","engineRef","useRef","current","PivotEngine","modules","FilterModule","PaginationModule","SortModule","useEffect","sanitized","allKeys","_i","_allKeys","key","undefined","stateManager","updateConfig","_notifyStateChanged","data","rows","cols","rendererName","aggregatorName","page","pageSize","snapshot","useSyncExternalStore","useCallback","onStoreChange","subscribe","getSnapshot","props","state","actions","setProps","newProps","gridApi","updateProp","setRows","setCols","toggleFilter","attr","setValuesInFilter","values","setFilter","addValuesToFilter","removeValuesFromFilter","setUnusedOrder","order","columnApi","core"],"sources":["../../src/hooks/usePivot.js"],"sourcesContent":["import { useRef, useSyncExternalStore, useCallback, useEffect } from 'react';\nimport { PivotEngine } from '../core/PivotEngine';\nimport { FilterModule } from '../modules/FilterModule';\nimport { PaginationModule } from '../modules/PaginationModule';\nimport { SortModule } from '../modules/SortModule';\n\n/**\n * usePivot — Hook de backward compatibility.\n * Internamente delega al nuevo PivotEngine con módulos por defecto.\n * Mantiene la API original: { props, state, actions }\n */\nexport function usePivot(initialProps) {\n const engineRef = useRef(null);\n\n if (!engineRef.current) {\n engineRef.current = new PivotEngine({\n ...initialProps,\n modules: [FilterModule, PaginationModule, SortModule],\n });\n }\n\n // Sincronizar props externas clave\n useEffect(() => {\n const sanitized = {};\n const allKeys = Object.keys(initialProps);\n for (const key of allKeys) {\n if (initialProps[key] !== undefined) {\n sanitized[key] = initialProps[key];\n }\n }\n engineRef.current.stateManager.updateConfig(sanitized);\n engineRef.current._notifyStateChanged();\n }, [\n initialProps.data,\n initialProps.rows,\n initialProps.cols,\n initialProps.rendererName,\n initialProps.aggregatorName,\n initialProps.page,\n initialProps.pageSize,\n ]);\n\n // Suscribirse a cambios del engine\n const snapshot = useSyncExternalStore(\n useCallback((onStoreChange) => engineRef.current.subscribe(onStoreChange), []),\n useCallback(() => engineRef.current.getSnapshot(), [])\n );\n\n return {\n props: snapshot.props,\n state: snapshot.state,\n actions: {\n setProps: (newProps) => engineRef.current.gridApi.updateConfig(newProps),\n updateProp: (key, value) => {\n if (key === 'rows') {\n engineRef.current.gridApi.setRows(value);\n } else if (key === 'cols') {\n engineRef.current.gridApi.setCols(value);\n } else {\n engineRef.current.gridApi.updateConfig({ [key]: value });\n }\n },\n toggleFilter: (attr, value) => engineRef.current.gridApi.toggleFilter(attr, value),\n setValuesInFilter: (attr, values) => engineRef.current.gridApi.setFilter(attr, values),\n addValuesToFilter: (attr, values) => engineRef.current.gridApi.addValuesToFilter(attr, values),\n removeValuesFromFilter: (attr, values) => engineRef.current.gridApi.removeValuesFromFilter(attr, values),\n setUnusedOrder: (order) => engineRef.current.gridApi.setUnusedOrder(order),\n },\n // Nuevo: exponer gridApi y columnApi\n gridApi: engineRef.current.gridApi,\n columnApi: engineRef.current.columnApi,\n core: engineRef.current, // Backward compat\n };\n}\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"usePivot.js","names":["_react","require","_PivotEngine","_FilterModule","_PaginationModule","_SortModule","_typeof","o","Symbol","iterator","constructor","prototype","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","toPrimitive","call","TypeError","String","Number","usePivot","initialProps","engineRef","useRef","current","PivotEngine","modules","FilterModule","PaginationModule","SortModule","useEffect","sanitized","allKeys","_i","_allKeys","key","undefined","stateManager","updateConfig","_notifyStateChanged","data","rows","cols","rendererName","aggregatorName","page","pageSize","snapshot","useSyncExternalStore","useCallback","onStoreChange","subscribe","getSnapshot","props","state","actions","setProps","newProps","gridApi","updateProp","setRows","setCols","toggleFilter","attr","setValuesInFilter","values","setFilter","addValuesToFilter","removeValuesFromFilter","setUnusedOrder","order","columnApi","core"],"sources":["../../src/hooks/usePivot.js"],"sourcesContent":["import { useRef, useSyncExternalStore, useCallback, useEffect } from 'react';\nimport { PivotEngine } from '../core/PivotEngine';\nimport { FilterModule } from '../modules/FilterModule';\nimport { PaginationModule } from '../modules/PaginationModule';\nimport { SortModule } from '../modules/SortModule';\n\n/**\n * usePivot — Hook de backward compatibility.\n * Internamente delega al nuevo PivotEngine con módulos por defecto.\n * Mantiene la API original: { props, state, actions }\n */\nexport function usePivot(initialProps) {\n const engineRef = useRef(null);\n\n if (!engineRef.current) {\n engineRef.current = new PivotEngine({\n ...initialProps,\n modules: [FilterModule, PaginationModule, SortModule],\n });\n }\n\n // Sincronizar props externas clave\n useEffect(() => {\n const sanitized = {};\n const allKeys = Object.keys(initialProps);\n for (const key of allKeys) {\n if (initialProps[key] !== undefined) {\n sanitized[key] = initialProps[key];\n }\n }\n engineRef.current.stateManager.updateConfig(sanitized);\n engineRef.current._notifyStateChanged();\n }, [\n initialProps.data,\n initialProps.rows,\n initialProps.cols,\n initialProps.rendererName,\n initialProps.aggregatorName,\n initialProps.page,\n initialProps.pageSize,\n ]);\n\n // Suscribirse a cambios del engine\n const snapshot = useSyncExternalStore(\n useCallback((onStoreChange) => engineRef.current.subscribe(onStoreChange), []),\n useCallback(() => engineRef.current.getSnapshot(), []), // getSnapshot\n useCallback(() => engineRef.current.getSnapshot(), []) // getServerSnapshot\n );\n\n return {\n props: snapshot.props,\n state: snapshot.state,\n actions: {\n setProps: (newProps) => engineRef.current.gridApi.updateConfig(newProps),\n updateProp: (key, value) => {\n if (key === 'rows') {\n engineRef.current.gridApi.setRows(value);\n } else if (key === 'cols') {\n engineRef.current.gridApi.setCols(value);\n } else {\n engineRef.current.gridApi.updateConfig({ [key]: value });\n }\n },\n toggleFilter: (attr, value) => engineRef.current.gridApi.toggleFilter(attr, value),\n setValuesInFilter: (attr, values) => engineRef.current.gridApi.setFilter(attr, values),\n addValuesToFilter: (attr, values) => engineRef.current.gridApi.addValuesToFilter(attr, values),\n removeValuesFromFilter: (attr, values) => engineRef.current.gridApi.removeValuesFromFilter(attr, values),\n setUnusedOrder: (order) => engineRef.current.gridApi.setUnusedOrder(order),\n },\n // Nuevo: exponer gridApi y columnApi\n gridApi: engineRef.current.gridApi,\n columnApi: engineRef.current.columnApi,\n core: engineRef.current, // Backward compat\n };\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAAmD,SAAAK,QAAAC,CAAA,sCAAAD,OAAA,wBAAAE,MAAA,uBAAAA,MAAA,CAAAC,QAAA,aAAAF,CAAA,kBAAAA,CAAA,gBAAAA,CAAA,WAAAA,CAAA,yBAAAC,MAAA,IAAAD,CAAA,CAAAG,WAAA,KAAAF,MAAA,IAAAD,CAAA,KAAAC,MAAA,CAAAG,SAAA,qBAAAJ,CAAA,KAAAD,OAAA,CAAAC,CAAA;AAAA,SAAAK,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAX,CAAA,GAAAS,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAP,CAAA,GAAAA,CAAA,CAAAY,MAAA,WAAAL,CAAA,WAAAE,MAAA,CAAAI,wBAAA,CAAAP,CAAA,EAAAC,CAAA,EAAAO,UAAA,OAAAN,CAAA,CAAAO,IAAA,CAAAC,KAAA,CAAAR,CAAA,EAAAR,CAAA,YAAAQ,CAAA;AAAA,SAAAS,cAAAX,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAW,SAAA,CAAAC,MAAA,EAAAZ,CAAA,UAAAC,CAAA,WAAAU,SAAA,CAAAX,CAAA,IAAAW,SAAA,CAAAX,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAY,OAAA,WAAAb,CAAA,IAAAc,eAAA,CAAAf,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAa,yBAAA,GAAAb,MAAA,CAAAc,gBAAA,CAAAjB,CAAA,EAAAG,MAAA,CAAAa,yBAAA,CAAAd,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAY,OAAA,WAAAb,CAAA,IAAAE,MAAA,CAAAe,cAAA,CAAAlB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAI,wBAAA,CAAAL,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAe,gBAAAf,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAkB,cAAA,CAAAlB,CAAA,MAAAD,CAAA,GAAAG,MAAA,CAAAe,cAAA,CAAAlB,CAAA,EAAAC,CAAA,IAAAmB,KAAA,EAAAlB,CAAA,EAAAM,UAAA,MAAAa,YAAA,MAAAC,QAAA,UAAAtB,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAmB,eAAAjB,CAAA,QAAAqB,CAAA,GAAAC,YAAA,CAAAtB,CAAA,gCAAAT,OAAA,CAAA8B,CAAA,IAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAtB,CAAA,EAAAD,CAAA,oBAAAR,OAAA,CAAAS,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAP,MAAA,CAAA8B,WAAA,kBAAAzB,CAAA,QAAAuB,CAAA,GAAAvB,CAAA,CAAA0B,IAAA,CAAAxB,CAAA,EAAAD,CAAA,gCAAAR,OAAA,CAAA8B,CAAA,UAAAA,CAAA,YAAAI,SAAA,yEAAA1B,CAAA,GAAA2B,MAAA,GAAAC,MAAA,EAAA3B,CAAA;AAEnD;AACA;AACA;AACA;AACA;AACO,SAAS4B,QAAQA,CAACC,YAAY,EAAE;EACrC,IAAMC,SAAS,GAAG,IAAAC,aAAM,EAAC,IAAI,CAAC;EAE9B,IAAI,CAACD,SAAS,CAACE,OAAO,EAAE;IACtBF,SAAS,CAACE,OAAO,GAAG,IAAIC,wBAAW,CAAAxB,aAAA,CAAAA,aAAA,KAC9BoB,YAAY;MACfK,OAAO,EAAE,CAACC,0BAAY,EAAEC,kCAAgB,EAAEC,sBAAU;IAAC,EACtD,CAAC;EACJ;;EAEA;EACA,IAAAC,gBAAS,EAAC,YAAM;IACd,IAAMC,SAAS,GAAG,CAAC,CAAC;IACpB,IAAMC,OAAO,GAAGvC,MAAM,CAACC,IAAI,CAAC2B,YAAY,CAAC;IACzC,SAAAY,EAAA,MAAAC,QAAA,GAAkBF,OAAO,EAAAC,EAAA,GAAAC,QAAA,CAAA/B,MAAA,EAAA8B,EAAA,IAAE;MAAtB,IAAME,GAAG,GAAAD,QAAA,CAAAD,EAAA;MACZ,IAAIZ,YAAY,CAACc,GAAG,CAAC,KAAKC,SAAS,EAAE;QACnCL,SAAS,CAACI,GAAG,CAAC,GAAGd,YAAY,CAACc,GAAG,CAAC;MACpC;IACF;IACAb,SAAS,CAACE,OAAO,CAACa,YAAY,CAACC,YAAY,CAACP,SAAS,CAAC;IACtDT,SAAS,CAACE,OAAO,CAACe,mBAAmB,CAAC,CAAC;EACzC,CAAC,EAAE,CACDlB,YAAY,CAACmB,IAAI,EACjBnB,YAAY,CAACoB,IAAI,EACjBpB,YAAY,CAACqB,IAAI,EACjBrB,YAAY,CAACsB,YAAY,EACzBtB,YAAY,CAACuB,cAAc,EAC3BvB,YAAY,CAACwB,IAAI,EACjBxB,YAAY,CAACyB,QAAQ,CACtB,CAAC;;EAEF;EACA,IAAMC,QAAQ,GAAG,IAAAC,2BAAoB,EACnC,IAAAC,kBAAW,EAAC,UAACC,aAAa;IAAA,OAAK5B,SAAS,CAACE,OAAO,CAAC2B,SAAS,CAACD,aAAa,CAAC;EAAA,GAAE,EAAE,CAAC,EAC9E,IAAAD,kBAAW,EAAC;IAAA,OAAM3B,SAAS,CAACE,OAAO,CAAC4B,WAAW,CAAC,CAAC;EAAA,GAAE,EAAE,CAAC;EAAE;EACxD,IAAAH,kBAAW,EAAC;IAAA,OAAM3B,SAAS,CAACE,OAAO,CAAC4B,WAAW,CAAC,CAAC;EAAA,GAAE,EAAE,CAAC,CAAE;EAC1D,CAAC;EAED,OAAO;IACLC,KAAK,EAAEN,QAAQ,CAACM,KAAK;IACrBC,KAAK,EAAEP,QAAQ,CAACO,KAAK;IACrBC,OAAO,EAAE;MACPC,QAAQ,EAAE,SAAVA,QAAQA,CAAGC,QAAQ;QAAA,OAAKnC,SAAS,CAACE,OAAO,CAACkC,OAAO,CAACpB,YAAY,CAACmB,QAAQ,CAAC;MAAA;MACxEE,UAAU,EAAE,SAAZA,UAAUA,CAAGxB,GAAG,EAAEzB,KAAK,EAAK;QAC1B,IAAIyB,GAAG,KAAK,MAAM,EAAE;UAClBb,SAAS,CAACE,OAAO,CAACkC,OAAO,CAACE,OAAO,CAAClD,KAAK,CAAC;QAC1C,CAAC,MAAM,IAAIyB,GAAG,KAAK,MAAM,EAAE;UACzBb,SAAS,CAACE,OAAO,CAACkC,OAAO,CAACG,OAAO,CAACnD,KAAK,CAAC;QAC1C,CAAC,MAAM;UACLY,SAAS,CAACE,OAAO,CAACkC,OAAO,CAACpB,YAAY,CAAAjC,eAAA,KAAI8B,GAAG,EAAGzB,KAAK,CAAE,CAAC;QAC1D;MACF,CAAC;MACDoD,YAAY,EAAE,SAAdA,YAAYA,CAAGC,IAAI,EAAErD,KAAK;QAAA,OAAKY,SAAS,CAACE,OAAO,CAACkC,OAAO,CAACI,YAAY,CAACC,IAAI,EAAErD,KAAK,CAAC;MAAA;MAClFsD,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAGD,IAAI,EAAEE,MAAM;QAAA,OAAK3C,SAAS,CAACE,OAAO,CAACkC,OAAO,CAACQ,SAAS,CAACH,IAAI,EAAEE,MAAM,CAAC;MAAA;MACtFE,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAGJ,IAAI,EAAEE,MAAM;QAAA,OAAK3C,SAAS,CAACE,OAAO,CAACkC,OAAO,CAACS,iBAAiB,CAACJ,IAAI,EAAEE,MAAM,CAAC;MAAA;MAC9FG,sBAAsB,EAAE,SAAxBA,sBAAsBA,CAAGL,IAAI,EAAEE,MAAM;QAAA,OAAK3C,SAAS,CAACE,OAAO,CAACkC,OAAO,CAACU,sBAAsB,CAACL,IAAI,EAAEE,MAAM,CAAC;MAAA;MACxGI,cAAc,EAAE,SAAhBA,cAAcA,CAAGC,KAAK;QAAA,OAAKhD,SAAS,CAACE,OAAO,CAACkC,OAAO,CAACW,cAAc,CAACC,KAAK,CAAC;MAAA;IAC5E,CAAC;IACD;IACAZ,OAAO,EAAEpC,SAAS,CAACE,OAAO,CAACkC,OAAO;IAClCa,SAAS,EAAEjD,SAAS,CAACE,OAAO,CAAC+C,SAAS;IACtCC,IAAI,EAAElD,SAAS,CAACE,OAAO,CAAE;EAC3B,CAAC;AACH","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-pivottable-plus",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.20",
|
|
4
4
|
"description": "A React-based pivot table with grouping and modern UI (Tailwind, Radix, Shadcn)",
|
|
5
5
|
"main": "dist/PivotTableUI.js",
|
|
6
6
|
"module": "dist/PivotTableUI.js",
|
|
@@ -17,7 +17,8 @@
|
|
|
17
17
|
"./modules/*": "./dist/modules/*.js",
|
|
18
18
|
"./react/*": "./dist/react/*.js",
|
|
19
19
|
"./pivottable.css": "./pivottable.css",
|
|
20
|
-
"./grouping.css": "./grouping.css"
|
|
20
|
+
"./grouping.css": "./grouping.css",
|
|
21
|
+
"./package.json": "./package.json"
|
|
21
22
|
},
|
|
22
23
|
"files": [
|
|
23
24
|
"dist/",
|
|
@@ -77,8 +78,6 @@
|
|
|
77
78
|
"class-variance-authority": "^0.7.1",
|
|
78
79
|
"clsx": "^2.1.1",
|
|
79
80
|
"lucide-react": "^0.575.0",
|
|
80
|
-
"nextra": "^3.3.1",
|
|
81
|
-
"nextra-theme-docs": "^3.3.1",
|
|
82
81
|
"prop-types": "^15.8.1",
|
|
83
82
|
"react-draggable": "^4.4.6",
|
|
84
83
|
"react-sortablejs": "^6.1.4",
|
|
@@ -86,8 +85,8 @@
|
|
|
86
85
|
"tailwind-merge": "^3.5.0"
|
|
87
86
|
},
|
|
88
87
|
"peerDependencies": {
|
|
89
|
-
"react": ">=
|
|
90
|
-
"react-dom": ">=
|
|
88
|
+
"react": ">=18.0.0",
|
|
89
|
+
"react-dom": ">=18.0.0"
|
|
91
90
|
},
|
|
92
91
|
"devDependencies": {
|
|
93
92
|
"@babel/cli": "^7.28.6",
|
|
@@ -98,6 +97,8 @@
|
|
|
98
97
|
"@vitejs/plugin-react": "^5.1.4",
|
|
99
98
|
"autoprefixer": "^10.4.18",
|
|
100
99
|
"babel-loader": "^9.1.3",
|
|
100
|
+
"nextra": "^3.3.1",
|
|
101
|
+
"nextra-theme-docs": "^3.3.1",
|
|
101
102
|
"postcss": "^8.4.35",
|
|
102
103
|
"prettier": "^3.2.5",
|
|
103
104
|
"react": "^19.0.0",
|
package/pivottable.css
CHANGED
|
@@ -494,4 +494,60 @@ table.pvtTable tr.pvtEmptyRow .pvtRowNumber {
|
|
|
494
494
|
.pvt-size-lg table.pvtTable td {
|
|
495
495
|
--pvt-font-size: 14px !important;
|
|
496
496
|
--pvt-row-height: 42px !important;
|
|
497
|
+
}
|
|
498
|
+
|
|
499
|
+
/* ─── Column Resize ───────────────────────────────────── */
|
|
500
|
+
|
|
501
|
+
/* Las th de cabecera deben ser position: relative para anclar el handle */
|
|
502
|
+
table.pvtTable thead th {
|
|
503
|
+
position: relative;
|
|
504
|
+
}
|
|
505
|
+
|
|
506
|
+
/* El handle es una franja interactiva en el borde derecho del th */
|
|
507
|
+
.pvtResizeHandle {
|
|
508
|
+
position: absolute;
|
|
509
|
+
right: 0;
|
|
510
|
+
top: 0;
|
|
511
|
+
bottom: 0;
|
|
512
|
+
width: 8px;
|
|
513
|
+
/* Ampliado para que sea más fácil de clickear */
|
|
514
|
+
cursor: col-resize;
|
|
515
|
+
user-select: none;
|
|
516
|
+
z-index: 10;
|
|
517
|
+
display: flex;
|
|
518
|
+
align-items: center;
|
|
519
|
+
justify-content: center;
|
|
520
|
+
}
|
|
521
|
+
|
|
522
|
+
/* El 'cosito' que se pone entre las lineas */
|
|
523
|
+
.pvtResizeHandle::after {
|
|
524
|
+
content: "";
|
|
525
|
+
width: 2px;
|
|
526
|
+
height: 50%;
|
|
527
|
+
background-color: var(--pvt-border-color);
|
|
528
|
+
border-radius: 2px;
|
|
529
|
+
transition: all 0.2s ease;
|
|
530
|
+
opacity: 0.6;
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
/* Muestra un indicador visual interactivo al hover */
|
|
534
|
+
.pvtResizeHandle:hover::after,
|
|
535
|
+
.pvtResizeHandle:active::after {
|
|
536
|
+
background-color: #119dff;
|
|
537
|
+
opacity: 1;
|
|
538
|
+
height: 100%;
|
|
539
|
+
width: 3px;
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
/* Durante el resize activo (clase en la tabla entera) */
|
|
543
|
+
table.pvtTable.pvtResizable {
|
|
544
|
+
width: max-content;
|
|
545
|
+
min-width: 100%;
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
/* Forzar cursor de resize mientras arrastras */
|
|
549
|
+
body.pvt-is-resizing,
|
|
550
|
+
body.pvt-is-resizing * {
|
|
551
|
+
cursor: col-resize !important;
|
|
552
|
+
user-select: none !important;
|
|
497
553
|
}
|