wms-spreadsheet 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +67 -0
- package/dist/index.d.ts +337 -0
- package/dist/index.js +4984 -0
- package/dist/spreadsheet.css +1 -0
- package/package.json +63 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._switch_1ldab_1{display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;border:none;background:none;cursor:pointer;outline:none}._switch_1ldab_1:disabled{cursor:default;opacity:.5}._track_1ldab_17{position:relative;display:inline-block;width:34px;height:18px;border-radius:9px;background-color:#fff;border:1px solid #5f6368;box-sizing:border-box;transition:background-color .22s ease,border-color .22s ease}._trackChecked_1ldab_29{background-color:#f03;border-color:#f03}._knob_1ldab_34{position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:50%;background-color:#5f6368;transition:transform .22s ease,background-color .22s ease}._trackChecked_1ldab_29 ._knob_1ldab_34{transform:translate(17px);background-color:#fff}._spreadsheet_unoen_1{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;font-family:Arial,Helvetica,sans-serif;font-size:13px;color:#202124;-webkit-user-select:none;user-select:none;border:1px solid #dadce0;box-sizing:border-box}._topRow_unoen_15{display:flex;flex-shrink:0}._bottomRow_unoen_20{display:flex;flex:1;min-height:0}._corner_unoen_26{flex-shrink:0;width:46px;height:28px;background:#f8f9fa;border-right:1px solid #dadce0;border-bottom:1px solid #dadce0}._frozenColumnHeaderPane_unoen_35{flex-shrink:0;height:28px;overflow:hidden;background:#f8f9fa;border-bottom:1px solid #dadce0;position:relative}._frozenBodyPane_unoen_44{flex-shrink:0;overflow:hidden;position:relative;background:#fff}._frozenBodyPane_unoen_44._frozenBodyPaneEditing_unoen_50{overflow:visible}._columnHeaderPane_unoen_54{flex:1;height:28px;overflow:hidden;background:#f8f9fa;border-bottom:1px solid #dadce0;position:relative}._rowHeaderPane_unoen_63{flex-shrink:0;width:46px;overflow:hidden;background:#f8f9fa;border-right:1px solid #dadce0;position:relative}._bodyScroll_unoen_72{flex:1;overflow:auto;position:relative;min-width:0}._canvas_unoen_79{position:relative}._headerCell_unoen_83{position:absolute;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border-right:1px solid #dadce0;background:#f8f9fa;color:#5f6368;font-size:12px;font-weight:500;cursor:default}._headerCell_unoen_83._active_unoen_96{background:#e8f0fe;color:#1a73e8}._headerCellInner_unoen_101{display:flex;align-items:center;width:100%;gap:4px;padding:0 6px}._headerCellText_unoen_109{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}._filterIconBtn_unoen_117{width:20px;height:20px;border:0;background:transparent;border-radius:3px;color:#5f6368;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}._filterIconBtn_unoen_117 svg{width:14px;height:14px}._filterIconBtn_unoen_117:hover{background:#e8eaed}._filterIconBtnActive_unoen_138{color:#1a73e8;background:#e8f0fe}._rowHeaderCell_unoen_143{position:absolute;left:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border-bottom:1px solid #dadce0;background:#f8f9fa;color:#5f6368;font-size:12px;font-weight:500;cursor:default}._rowHeaderCell_unoen_143._active_unoen_96{background:#e8f0fe;color:#1a73e8}._cell_unoen_162{position:absolute;display:flex;padding:4px;box-sizing:border-box;border-right:1px solid #dadce0;border-bottom:1px solid #dadce0;background:#fff;overflow:hidden;white-space:pre-wrap;word-break:break-word;line-height:20px;cursor:cell}._cell_unoen_162._active_unoen_96{outline:2px solid #1a73e8;outline-offset:-2px;z-index:1}._cell_unoen_162._invalid_unoen_181{background:#fce8e6}._cell_unoen_162._disabled_unoen_184{background:#f1f3f4;cursor:default}._cell_unoen_162._mergedAnchor_unoen_188{z-index:1}._frozenActiveOverlay_unoen_192{position:absolute;box-sizing:border-box;outline:2px solid #1a73e8;outline-offset:-2px;pointer-events:none;z-index:1}._fillHandle_unoen_201{position:absolute;right:-1px;bottom:-1px;width:6px;height:6px;background:#1a73e8;cursor:crosshair;z-index:2}._selectionOverlay_unoen_212{position:absolute;box-sizing:border-box;background:#e8f0fe99;border:2px solid #1a73e8;pointer-events:none;z-index:2}._selectionOverlay_unoen_212._selectionOverlaySingle_unoen_220{background:transparent}._selectionOverlay_unoen_212._hideLeftBorder_unoen_223{border-left-width:0}._selectionOverlay_unoen_212._hideRightBorder_unoen_226{border-right-width:0}._clipboardOverlay_unoen_230{position:absolute;box-sizing:border-box;background:transparent;border:2px dashed #1a73e8;pointer-events:none;z-index:3}._clipboardOverlay_unoen_230._hideLeftBorder_unoen_223{border-left-width:0}._clipboardOverlay_unoen_230._hideRightBorder_unoen_226{border-right-width:0}._selectionHandle_unoen_245{position:absolute;right:-1px;bottom:-1px;width:6px;height:6px;background:#1a73e8;cursor:crosshair;z-index:3}._cellEditor_unoen_256{position:absolute;box-sizing:border-box;padding:4px;margin:0;font-family:inherit;font-size:13px;line-height:20px;color:#202124;background:#fff;outline:2px solid #1a73e8;outline-offset:-2px;resize:none;overflow:hidden;white-space:pre-wrap;word-break:break-word;z-index:10}._selectPill_unoen_275{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;max-width:100%;padding:2px 6px 2px 8px;border-radius:12px;background:#e8eaed;font-size:12px;line-height:15px;color:#202124;overflow:hidden}._selectPillLabel_unoen_291{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._selectCaret_unoen_297{flex-shrink:0;font-size:12px;color:#202124;line-height:1}._multiSelectField_unoen_304{display:flex;align-items:center;width:100%;max-width:100%;overflow:hidden}._multiSelectChips_unoen_312{display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden}._multiSelectChip_unoen_312{display:inline-flex;align-items:center;box-sizing:border-box;flex-shrink:0;max-width:50px;padding:2px 8px;border-radius:12px;background:#e8eaed;font-size:12px;line-height:15px;color:#202124}._multiSelectChipLabel_unoen_334{min-width:0;overflow:hidden;white-space:nowrap}._datePill_unoen_340{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;max-width:100%;padding:2px 6px 2px 8px;border-radius:4px;font-size:13px;line-height:18px;color:#202124;overflow:hidden}._datePillLabel_unoen_355{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._dateIcon_unoen_361{flex-shrink:0;display:inline-flex;align-items:center;color:#5f6368;line-height:0}._booleanCheckbox_unoen_369{width:16px;height:16px;margin:0;padding:0;cursor:pointer;accent-color:#1a73e8}._selectEditor_unoen_378{position:absolute;box-sizing:border-box;border:2px solid #1a73e8;padding:3px 4px;margin:0;font-family:inherit;font-size:13px;line-height:20px;color:#202124;background:#fff;outline:none;z-index:10}._customEditorContainer_unoen_393{position:absolute;box-sizing:border-box;z-index:10;overflow:visible}._headerCanvas_unoen_400{position:relative}._columnResizeHandle_unoen_404{position:absolute;top:0;height:100%;z-index:2;cursor:col-resize;display:flex;align-items:center;justify-content:center}._columnResizeHandle_unoen_404 ._resizeHandleIcon_unoen_414{position:relative;width:4px;height:14px;opacity:0;transition:opacity .1s ease}._columnResizeHandle_unoen_404 ._resizeHandleIcon_unoen_414:before,._columnResizeHandle_unoen_404 ._resizeHandleIcon_unoen_414:after{content:"";position:absolute;top:0;width:2px;height:100%;border-radius:1px;background:#5f6368}._columnResizeHandle_unoen_404 ._resizeHandleIcon_unoen_414:before{left:0}._columnResizeHandle_unoen_404 ._resizeHandleIcon_unoen_414:after{right:0}._columnResizeHandle_unoen_404:hover ._resizeHandleIcon_unoen_414,._columnResizeHandle_unoen_404._resizeHandleHovered_unoen_436 ._resizeHandleIcon_unoen_414{opacity:1}._rowResizeHandle_unoen_440{position:absolute;left:0;width:100%;z-index:2;cursor:row-resize;display:flex;align-items:center;justify-content:center}._rowResizeHandle_unoen_440 ._resizeHandleIcon_unoen_414{position:relative;width:14px;height:4px;opacity:0;transition:opacity .1s ease}._rowResizeHandle_unoen_440 ._resizeHandleIcon_unoen_414:before,._rowResizeHandle_unoen_440 ._resizeHandleIcon_unoen_414:after{content:"";position:absolute;left:0;width:100%;height:2px;border-radius:1px;background:#5f6368}._rowResizeHandle_unoen_440 ._resizeHandleIcon_unoen_414:before{top:0}._rowResizeHandle_unoen_440 ._resizeHandleIcon_unoen_414:after{bottom:0}._rowResizeHandle_unoen_440:hover ._resizeHandleIcon_unoen_414,._rowResizeHandle_unoen_440._resizeHandleHovered_unoen_436 ._resizeHandleIcon_unoen_414{opacity:1}._popup_6bmj7_1{position:fixed;z-index:30;box-sizing:border-box;background:#fff;border:1px solid #dadce0;border-radius:4px;box-shadow:0 4px 12px #3c404333;padding:6px 0 8px}._actionButton_6bmj7_12{width:100%;border:0;background:transparent;text-align:left;padding:10px 16px;font-size:14px;color:#202124;cursor:pointer}._actionButton_6bmj7_12:hover{background:#f1f3f4}._actionButtonContent_6bmj7_26{display:flex;align-items:center;gap:8px}._sortIndicator_6bmj7_32{width:14px;flex-shrink:0}._divider_6bmj7_37{height:1px;background:#e0e0e0;margin:6px 0 10px}._section_6bmj7_43{padding:0 16px 10px}._label_6bmj7_47{margin:0 0 8px;font-size:14px;color:#3c4043}._select_6bmj7_53,._input_6bmj7_54{width:100%;height:40px;border:1px solid #dadce0;border-radius:4px;font-size:14px;color:#202124;padding:0 12px;box-sizing:border-box;outline:none}._select_6bmj7_53:focus,._input_6bmj7_54:focus{border-color:#1a73e8;box-shadow:0 0 0 1px #1a73e8 inset}._input_6bmj7_54{margin-top:8px}._inlineActions_6bmj7_75{display:flex;gap:16px;margin-top:8px}._linkButton_6bmj7_81{border:0;background:transparent;color:#1a73e8;font-size:14px;line-height:20px;cursor:pointer;padding:0}._list_6bmj7_91{max-height:180px;overflow-y:auto;border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;margin:4px 0 10px;padding:4px 0}._option_6bmj7_100{display:flex;align-items:center;gap:8px;padding:6px 16px;font-size:14px;color:#202124}._footer_6bmj7_109{display:flex;align-items:center;justify-content:space-between;padding:0 16px;gap:8px}._footerRight_6bmj7_117{display:flex;gap:8px}._primaryButton_6bmj7_122,._secondaryButton_6bmj7_123{min-width:60px;height:36px;border-radius:6px;font-size:14px;cursor:pointer}._primaryButton_6bmj7_122{border:1px solid #1a73e8;background:#1a73e8;color:#fff}._secondaryButton_6bmj7_123{border:1px solid #dadce0;background:#fff;color:#202124}._root_151la_1{position:absolute;box-sizing:border-box;z-index:10}._input_151la_7{box-sizing:border-box;width:100%;border:2px solid #1a73e8;padding:3px 4px;margin:0;font-family:inherit;font-size:13px;line-height:20px;color:#202124;background:#fff;outline:none}._dropdown_151la_21{position:absolute;top:100%;left:0;right:0;margin:0;padding:4px 0;list-style:none;background:#fff;border:1px solid #dadce0;border-radius:4px;box-shadow:0 2px 6px #3c404326;max-height:200px;overflow-y:auto;z-index:11}._option_151la_38{display:flex;align-items:center;gap:6px;padding:6px 10px;font-size:13px;line-height:18px;color:#202124;cursor:pointer}._option_151la_38:hover,._optionSelected_151la_52,._optionSelected_151la_52:hover{background:#f1f3f4}._optionHighlighted_151la_59,._optionHighlighted_151la_59:hover{background:#e8f0fe}._optionEmpty_151la_66{color:#5f6368}._optionColor_151la_70{flex-shrink:0;width:12px;height:12px;border-radius:50%;border:1px solid rgba(0,0,0,.1)}._optionLabel_151la_78{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._root_jis1n_1{position:absolute;box-sizing:border-box;z-index:10}._trigger_jis1n_7{box-sizing:border-box;display:flex;align-items:center;width:100%;min-height:28px;padding:2px 4px 2px 6px;border:2px solid #1a73e8;background:#fff;cursor:default;overflow:hidden}._chips_jis1n_20{display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden}._chip_jis1n_20{display:inline-flex;align-items:center;box-sizing:border-box;flex-shrink:0;max-width:50px;padding:2px 8px;border-radius:12px;background:#e8eaed;font-size:12px;line-height:15px;color:#202124}._chipLabel_jis1n_42{min-width:0;overflow:hidden;white-space:nowrap}._dropdown_jis1n_48{position:absolute;top:100%;left:0;right:0;margin-top:2px;background:#fff;border:1px solid #dadce0;border-radius:4px;box-shadow:0 2px 6px #3c404326;z-index:11;overflow:hidden}._searchRow_jis1n_62{display:flex;align-items:center;gap:8px;padding:8px 10px}._searchIcon_jis1n_69{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#5f6368}._searchInput_jis1n_77{flex:1;min-width:0;border:none;margin:0;padding:0;font-family:inherit;font-size:13px;line-height:18px;color:#202124;background:transparent;outline:none}._searchDivider_jis1n_91{border-bottom:1px solid #dadce0}._optionsList_jis1n_95{margin:0;padding:4px 0;list-style:none;max-height:200px;overflow-y:auto}._optionRow_jis1n_103{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;cursor:pointer}._optionRow_jis1n_103:hover{background:#f1f3f4}._optionRowHighlighted_jis1n_115,._optionRowHighlighted_jis1n_115:hover{background:#e8f0fe}._optionPill_jis1n_122{flex:1;min-width:0;max-width:calc(100% - 24px);padding:2px 8px;border-radius:12px;background:#e8eaed;font-size:12px;line-height:15px;color:#202124;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._optionCheck_jis1n_137{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;font-size:14px;line-height:1;color:#5f6368}._root_pvj8k_1{position:absolute;box-sizing:border-box;z-index:10}._fieldRoot_pvj8k_7{box-sizing:border-box;width:100%;border:2px solid #1a73e8;padding:3px 4px;margin:0;font-family:inherit;font-size:13px;line-height:20px;color:#202124;background:#fff;outline:none;cursor:text;white-space:nowrap}._fieldRoot_pvj8k_7:focus{outline:none}._section_pvj8k_26{display:inline;cursor:text}._sectionActive_pvj8k_31 ._sectionContent_pvj8k_31{background:#1a73e81f;border-radius:2px}._sectionContent_pvj8k_31{display:inline-block;font-variant-numeric:tabular-nums;min-width:1ch;outline:none}._sectionPlaceholder_pvj8k_43{color:#9aa0a6}._separator_pvj8k_47{color:#202124;white-space:pre;-webkit-user-select:none;user-select:none}._calendar_pvj8k_53{width:260px;padding:12px;background:#fff;border:1px solid #dadce0;border-radius:8px;box-shadow:0 2px 8px #3c404333}._calendarPortal_pvj8k_62{position:fixed;z-index:1000;box-sizing:border-box}._header_pvj8k_68{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}._monthLabel_pvj8k_75{font-size:14px;font-weight:500;color:#202124}._navButton_pvj8k_81{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:transparent;color:#5f6368;font-size:18px;line-height:1;cursor:pointer}._navButton_pvj8k_81:hover{background:#f1f3f4}._weekdays_pvj8k_100{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}._weekday_pvj8k_100{font-size:11px;font-weight:500;color:#5f6368;text-align:center;line-height:24px}._days_pvj8k_115{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}._day_pvj8k_115{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;padding:0;border:none;border-radius:50%;background:transparent;font-size:13px;color:#202124;cursor:pointer}._day_pvj8k_115:hover:not(:disabled){background:#f1f3f4}._dayEmpty_pvj8k_139{width:100%;aspect-ratio:1}._dayDisabled_pvj8k_144{color:#9aa0a6;cursor:not-allowed}._dayDisabled_pvj8k_144:hover{background:transparent}._dayDisabled_pvj8k_144._dayToday_pvj8k_151{color:#9aa0a6;font-weight:400}._dayDisabled_pvj8k_144._daySelected_pvj8k_155{background:transparent;color:#9aa0a6}._dayToday_pvj8k_151{color:#1a73e8;font-weight:600}._daySelected_pvj8k_155{background:#1a73e8;color:#fff}._daySelected_pvj8k_155:hover{background:#1765cc}._dayHighlighted_pvj8k_173{outline:2px solid #1a73e8;outline-offset:-2px}._footer_pvj8k_178{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:8px;border-top:1px solid #e8eaed}._footerButton_pvj8k_187{padding:4px 8px;border:none;border-radius:4px;background:transparent;font-size:13px;color:#1a73e8;cursor:pointer}._footerButton_pvj8k_187:hover:not(:disabled){background:#e8f0fe}._footerButton_pvj8k_187:disabled{color:#9aa0a6;cursor:not-allowed}
|
package/package.json
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "wms-spreadsheet",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "React spreadsheet với virtual window, API imperative qua ref — hỗ trợ 10.000+ dòng mượt mà",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"import": "./dist/index.js",
|
|
12
|
+
"types": "./dist/index.d.ts"
|
|
13
|
+
},
|
|
14
|
+
"./style.css": "./dist/spreadsheet.css"
|
|
15
|
+
},
|
|
16
|
+
"files": [
|
|
17
|
+
"dist",
|
|
18
|
+
"README.md",
|
|
19
|
+
"LICENSE"
|
|
20
|
+
],
|
|
21
|
+
"repository": {
|
|
22
|
+
"type": "git",
|
|
23
|
+
"url": "git+https://github.com/truongnguyen5x/wms-spreadsheet.git",
|
|
24
|
+
"directory": "packages/spreadsheet"
|
|
25
|
+
},
|
|
26
|
+
"bugs": {
|
|
27
|
+
"url": "https://github.com/truongnguyen5x/wms-spreadsheet/issues"
|
|
28
|
+
},
|
|
29
|
+
"homepage": "https://github.com/truongnguyen5x/wms-spreadsheet#readme",
|
|
30
|
+
"keywords": [
|
|
31
|
+
"react",
|
|
32
|
+
"spreadsheet",
|
|
33
|
+
"grid",
|
|
34
|
+
"table",
|
|
35
|
+
"virtual-scroll",
|
|
36
|
+
"excel",
|
|
37
|
+
"sheets",
|
|
38
|
+
"data-grid"
|
|
39
|
+
],
|
|
40
|
+
"license": "MIT",
|
|
41
|
+
"publishConfig": {
|
|
42
|
+
"registry": "https://registry.npmjs.org/"
|
|
43
|
+
},
|
|
44
|
+
"peerDependencies": {
|
|
45
|
+
"react": "^18.0.0 || ^19.0.0",
|
|
46
|
+
"react-dom": "^18.0.0 || ^19.0.0"
|
|
47
|
+
},
|
|
48
|
+
"devDependencies": {
|
|
49
|
+
"@types/react": "^18.3.18",
|
|
50
|
+
"@types/react-dom": "^18.3.5",
|
|
51
|
+
"@vitejs/plugin-react": "^4.3.4",
|
|
52
|
+
"react": "^18.3.1",
|
|
53
|
+
"react-dom": "^18.3.1",
|
|
54
|
+
"sass": "^1.83.0",
|
|
55
|
+
"typescript": "^5.7.2",
|
|
56
|
+
"vite": "^6.0.5",
|
|
57
|
+
"vite-plugin-dts": "^4.4.0"
|
|
58
|
+
},
|
|
59
|
+
"scripts": {
|
|
60
|
+
"build": "vite build",
|
|
61
|
+
"dev": "vite build --watch"
|
|
62
|
+
}
|
|
63
|
+
}
|