gridjs-spreadsheet 25.7.0 → 25.8.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/{ae125bc972519a804601f2ead209255c.svg → 113a871731ce1f8a28d02ff60e8d9478.svg} +914 -914
- package/{555f60323063f2b68b6eac7ce9c45b19.svg → 9ab1b217edd126e8925e88cc8f25a154.svg} +88 -88
- package/example/README.md +44 -329
- package/example/pom.xml +3 -3
- package/example/src/main/java/com/aspose/gridjs/demo/MyConfig.java +2 -14
- package/package.json +1 -1
- package/readme.md +78 -11
- package/xspreadsheet.css +156 -5
- package/xspreadsheet.js +5 -5
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gridjs-spreadsheet",
|
|
3
|
-
"version": "25.
|
|
3
|
+
"version": "25.8.0",
|
|
4
4
|
"description": "this is the client side script for GridJs which is a lightweight, scalable, and customizable toolkit that provides cross-platform web applications, enables convenient development for editing or viewing Excel/Spreadsheet files, offers simple deployment, and provides easy-to-use APIs based on JSON format.",
|
|
5
5
|
"types": "index.d.ts",
|
|
6
6
|
"main": "xspreadsheet.js",
|
package/readme.md
CHANGED
|
@@ -171,6 +171,34 @@ xs.on('cells-selected', (cell, { sri, sci, eri, eci }) => {});
|
|
|
171
171
|
xs.on('object-selected', (obj) => { console.log('obj id:', obj.id, ', type: ', obj.type); })
|
|
172
172
|
// edited on cell
|
|
173
173
|
xs.on('cell-edited', (text, ri, ci) => {});
|
|
174
|
+
// cells updated
|
|
175
|
+
xs.on('cells-updated', (name, cells) => {
|
|
176
|
+
console.log('cells updated for sheet name:', name);
|
|
177
|
+
cells.forEach((acell, index, array) => {
|
|
178
|
+
console.log('acell got updated:', acell);
|
|
179
|
+
})
|
|
180
|
+
})
|
|
181
|
+
// cells deleted
|
|
182
|
+
xs.on('cells-deleted', (range) => {
|
|
183
|
+
console.log('cells deleted :', range);
|
|
184
|
+
})
|
|
185
|
+
// rows deleted
|
|
186
|
+
xs.on('rows-deleted', (ri, n) => {
|
|
187
|
+
console.log('rows-deleted :', ri, ",size", n);
|
|
188
|
+
})
|
|
189
|
+
// columns deleted
|
|
190
|
+
xs.on('columns-deleted', (ci, n) => {
|
|
191
|
+
console.log('columns-deleted :', ci, ",size", n);
|
|
192
|
+
})
|
|
193
|
+
// rows inserted
|
|
194
|
+
xs.on('rows-inserted', (ri, n) => {
|
|
195
|
+
console.log('rows-inserted :', ri, ",size", n);
|
|
196
|
+
})
|
|
197
|
+
// columns inserted
|
|
198
|
+
xs.on('columns-inserted', (ci, n) => {
|
|
199
|
+
console.log('columns-inserted :', ci, ",size", n);
|
|
200
|
+
})
|
|
201
|
+
|
|
174
202
|
```
|
|
175
203
|
|
|
176
204
|
## update cell-text
|
|
@@ -196,6 +224,7 @@ xs.cellStyle(ri, ci);
|
|
|
196
224
|
- Paint format
|
|
197
225
|
- Clear format
|
|
198
226
|
- Format
|
|
227
|
+
- Number Format
|
|
199
228
|
- Font/Font size/ bold/italic/Underline/Strike
|
|
200
229
|
- Highlight
|
|
201
230
|
- Shape/Image resize/rotate/position ajustment
|
|
@@ -226,6 +255,7 @@ xs.cellStyle(ri, ci);
|
|
|
226
255
|
- Insert/Delete form controls
|
|
227
256
|
- Insert/Delete common shapes for autoshape
|
|
228
257
|
- Support display two colors gradient in fill effects
|
|
258
|
+
- Mobile compatibility
|
|
229
259
|
|
|
230
260
|
|
|
231
261
|
## Github-Demos
|
|
@@ -259,13 +289,13 @@ Modern browsers(chrome, firefox, Safari).
|
|
|
259
289
|
|
|
260
290
|
v24.9.1:
|
|
261
291
|
|
|
262
|
-
-
|
|
263
|
-
-
|
|
264
|
-
-
|
|
292
|
+
- Fix bug that fail to insert column in the new added worksheet
|
|
293
|
+
- Fix bug that fail to rename worksheet
|
|
294
|
+
- Support lazy loading
|
|
265
295
|
|
|
266
296
|
v24.10:
|
|
267
297
|
|
|
268
|
-
-
|
|
298
|
+
- Support a view option to show formulas
|
|
269
299
|
|
|
270
300
|
v24.11:
|
|
271
301
|
|
|
@@ -273,15 +303,52 @@ v24.11:
|
|
|
273
303
|
|
|
274
304
|
v24.12:
|
|
275
305
|
|
|
276
|
-
-
|
|
277
|
-
-
|
|
278
|
-
-
|
|
279
|
-
-
|
|
280
|
-
-
|
|
306
|
+
- Support API to show HTML nodes and interact with HTML nodes at specified cell positions
|
|
307
|
+
- Support pre-check event for row/column delete/insert operations
|
|
308
|
+
- Support row/column insert/delete events for client APIs
|
|
309
|
+
- Support events for updating cells
|
|
310
|
+
- Support multiple instances on one page
|
|
281
311
|
|
|
282
312
|
v25.1:
|
|
283
313
|
|
|
284
|
-
-
|
|
314
|
+
- Support copy/paste from MS-Excel
|
|
315
|
+
|
|
316
|
+
v25.2:
|
|
317
|
+
|
|
318
|
+
- Support copy/paste from MS-Excel
|
|
319
|
+
- Enhancement for automatic operations for user’s convenience, such as extending blank row/column, page scrolling, …
|
|
320
|
+
|
|
321
|
+
v25.3:
|
|
322
|
+
|
|
323
|
+
- Support more shotcut keys
|
|
324
|
+
- Support pasting the content copied from excel to multiple target areas
|
|
325
|
+
|
|
326
|
+
v25.4:
|
|
327
|
+
|
|
328
|
+
- Support show statistics information in the lower right corner when cells are selected
|
|
329
|
+
|
|
330
|
+
v25.5:
|
|
331
|
+
|
|
332
|
+
- Add support for Polish menus.
|
|
333
|
+
- Support APIs for insert/delete rows/columns
|
|
334
|
+
|
|
335
|
+
v25.6:
|
|
336
|
+
|
|
337
|
+
- Support APIs for resize rows/columns
|
|
338
|
+
- Support APIs for hide/unhide rows/columns
|
|
339
|
+
|
|
340
|
+
v25.7:
|
|
341
|
+
|
|
342
|
+
- Support APIs to enable /disable editable range
|
|
343
|
+
- Support APIs to add/modify/delete worksheet
|
|
344
|
+
- Support APIs to add/modify/delete comment
|
|
345
|
+
- Support APIs to set attribute for range of cells
|
|
346
|
+
- Support APIs to delete for range of cells
|
|
347
|
+
|
|
348
|
+
v25.8:
|
|
349
|
+
|
|
350
|
+
- Support automatic text wrapping
|
|
351
|
+
- Support API to apply font setting in textbox control
|
|
285
352
|
|
|
286
353
|
## License
|
|
287
354
|
|
|
@@ -289,6 +356,6 @@ MIT
|
|
|
289
356
|
|
|
290
357
|
## Support
|
|
291
358
|
|
|
292
|
-
You can ask any question or request features using the [Forum](https://forum.aspose.com/c/cells).
|
|
359
|
+
You can ask any question or request features or report bugs using the [Forum](https://forum.aspose.com/c/cells).
|
|
293
360
|
|
|
294
361
|
[Product Page](https://products.aspose.com/cells) | [Product Documentation](https://docs.aspose.com/cells/net/aspose-cells-gridjs/) | [Blog](https://blog.aspose.com/category/cells/) |[API Reference](https://reference.aspose.com/cells/net/aspose.cells.gridjs/) | [Source Code Samples](https://github.com/aspose-cells/Aspose.Cells-for-.NET/tree/master/Examples_GridJs) | [Free Support](https://forum.aspose.com/c/cells)
|
package/xspreadsheet.css
CHANGED
|
@@ -145,14 +145,14 @@ body {
|
|
|
145
145
|
height: 60px;
|
|
146
146
|
margin: 10px;
|
|
147
147
|
background-repeat: no-repeat;
|
|
148
|
-
background-image: url(
|
|
148
|
+
background-image: url(9ab1b217edd126e8925e88cc8f25a154.svg);
|
|
149
149
|
}
|
|
150
150
|
.x-spreadsheet-banner-icon-s {
|
|
151
151
|
width: 30px;
|
|
152
152
|
height: 30px;
|
|
153
153
|
margin: 5px;
|
|
154
154
|
background-repeat: no-repeat;
|
|
155
|
-
background-image: url(
|
|
155
|
+
background-image: url(9ab1b217edd126e8925e88cc8f25a154.svg);
|
|
156
156
|
}
|
|
157
157
|
.x-spreadsheet-banner-filename {
|
|
158
158
|
width: max-content;
|
|
@@ -1381,7 +1381,7 @@ form fieldset select {
|
|
|
1381
1381
|
display: inline-block;
|
|
1382
1382
|
}
|
|
1383
1383
|
.x-spreadsheet-icon .x-spreadsheet-icon-img {
|
|
1384
|
-
background-image: url(
|
|
1384
|
+
background-image: url(113a871731ce1f8a28d02ff60e8d9478.svg);
|
|
1385
1385
|
position: absolute;
|
|
1386
1386
|
width: 262px;
|
|
1387
1387
|
height: 444px;
|
|
@@ -2112,12 +2112,26 @@ dialog p {
|
|
|
2112
2112
|
.x-spreadsheet-contextmenu-submenu {
|
|
2113
2113
|
position: absolute;
|
|
2114
2114
|
display: none;
|
|
2115
|
-
padding: 5px 0;
|
|
2116
2115
|
background: #fff;
|
|
2117
2116
|
border: 1px solid #e0e2e4;
|
|
2118
2117
|
box-shadow: 1px 2px 5px 2px rgba(51, 51, 51, 0.15);
|
|
2119
2118
|
z-index: 101;
|
|
2120
|
-
width:
|
|
2119
|
+
width: max-content;
|
|
2120
|
+
}
|
|
2121
|
+
.x-spreadsheet-custom-button {
|
|
2122
|
+
border: 1px solid #ddd;
|
|
2123
|
+
background-color: white;
|
|
2124
|
+
color: #333;
|
|
2125
|
+
padding: 4px 12px;
|
|
2126
|
+
border-radius: 6px;
|
|
2127
|
+
cursor: pointer;
|
|
2128
|
+
font-size: 13px;
|
|
2129
|
+
transition: background-color 0.2s ease;
|
|
2130
|
+
outline: none;
|
|
2131
|
+
}
|
|
2132
|
+
.x-spreadsheet-custom-button:hover {
|
|
2133
|
+
background-color: #e9ecef;
|
|
2134
|
+
border-color: #ccc;
|
|
2121
2135
|
}
|
|
2122
2136
|
.x-spreadsheet-item.parent .label {
|
|
2123
2137
|
float: right;
|
|
@@ -2125,4 +2139,141 @@ dialog p {
|
|
|
2125
2139
|
color: #999;
|
|
2126
2140
|
line-height: inherit;
|
|
2127
2141
|
}
|
|
2142
|
+
.x-spreadsheet-alignment-page {
|
|
2143
|
+
display: flex;
|
|
2144
|
+
padding: 15px;
|
|
2145
|
+
gap: 25px;
|
|
2146
|
+
height: 100%;
|
|
2147
|
+
}
|
|
2148
|
+
.x-spreadsheet-alignment-page .left-section {
|
|
2149
|
+
display: flex;
|
|
2150
|
+
flex-direction: column;
|
|
2151
|
+
gap: 20px;
|
|
2152
|
+
flex: 1;
|
|
2153
|
+
}
|
|
2154
|
+
.x-spreadsheet-alignment-page .right-section {
|
|
2155
|
+
flex: 0 0 160px;
|
|
2156
|
+
}
|
|
2157
|
+
.x-spreadsheet-alignment-page .x-spreadsheet-modal-component-section-container {
|
|
2158
|
+
padding-bottom: 10px;
|
|
2159
|
+
border-bottom: 1px solid #e0e2e4;
|
|
2160
|
+
}
|
|
2161
|
+
.x-spreadsheet-alignment-page .x-spreadsheet-modal-component-section-container:last-child {
|
|
2162
|
+
border-bottom: none;
|
|
2163
|
+
}
|
|
2164
|
+
.x-spreadsheet-alignment-page .x-spreadsheet-modal-component-dropdown {
|
|
2165
|
+
width: 100%;
|
|
2166
|
+
align-items: center;
|
|
2167
|
+
flex-direction: row;
|
|
2168
|
+
}
|
|
2169
|
+
.x-spreadsheet-alignment-page .x-spreadsheet-modal-component-dropdown label {
|
|
2170
|
+
flex: 0 0 80px;
|
|
2171
|
+
}
|
|
2172
|
+
.x-spreadsheet-alignment-page .x-spreadsheet-modal-component-dropdown select {
|
|
2173
|
+
flex: 1;
|
|
2174
|
+
}
|
|
2175
|
+
.x-spreadsheet-alignment-page .x-spreadsheet-modal-component-checkbox {
|
|
2176
|
+
margin-top: 5px;
|
|
2177
|
+
}
|
|
2178
|
+
.x-spreadsheet-orientation-container {
|
|
2179
|
+
display: flex;
|
|
2180
|
+
align-items: center;
|
|
2181
|
+
flex-direction: column;
|
|
2182
|
+
min-width: unset;
|
|
2183
|
+
}
|
|
2184
|
+
.x-spreadsheet-orientation-box-container {
|
|
2185
|
+
display: flex;
|
|
2186
|
+
height: 200px;
|
|
2187
|
+
align-items: stretch;
|
|
2188
|
+
}
|
|
2189
|
+
.x-spreadsheet-orientation-box {
|
|
2190
|
+
width: 150px;
|
|
2191
|
+
height: 200px;
|
|
2192
|
+
border: 1px solid #999;
|
|
2193
|
+
position: relative;
|
|
2194
|
+
user-select: none;
|
|
2195
|
+
cursor: pointer;
|
|
2196
|
+
}
|
|
2197
|
+
.x-spreadsheet-orientation-pointer {
|
|
2198
|
+
width: 100%;
|
|
2199
|
+
position: absolute;
|
|
2200
|
+
top: 45%;
|
|
2201
|
+
left: calc(10px + 5%);
|
|
2202
|
+
transform-origin: 0 50%;
|
|
2203
|
+
display: flex;
|
|
2204
|
+
align-items: center;
|
|
2205
|
+
}
|
|
2206
|
+
.x-spreadsheet-orientation-pointer .degree-text {
|
|
2207
|
+
color: #333;
|
|
2208
|
+
padding-right: 5px;
|
|
2209
|
+
}
|
|
2210
|
+
.x-spreadsheet-orientation-line {
|
|
2211
|
+
width: 35%;
|
|
2212
|
+
height: 2px;
|
|
2213
|
+
background-color: red;
|
|
2214
|
+
margin-left: 2px;
|
|
2215
|
+
}
|
|
2216
|
+
.x-spreadsheet-orientation-line::after {
|
|
2217
|
+
content: '';
|
|
2218
|
+
position: absolute;
|
|
2219
|
+
right: 58%;
|
|
2220
|
+
top: 50%;
|
|
2221
|
+
transform: translateY(-50%) rotate(45deg);
|
|
2222
|
+
width: 8px;
|
|
2223
|
+
height: 8px;
|
|
2224
|
+
background-color: red;
|
|
2225
|
+
}
|
|
2226
|
+
.x-spreadsheet-orientation-v-btn {
|
|
2227
|
+
display: flex;
|
|
2228
|
+
flex-direction: column;
|
|
2229
|
+
justify-content: center;
|
|
2230
|
+
align-items: center;
|
|
2231
|
+
padding: 10px 5px;
|
|
2232
|
+
margin-right: 10px;
|
|
2233
|
+
border: 1px solid #999;
|
|
2234
|
+
cursor: pointer;
|
|
2235
|
+
background-color: #fff;
|
|
2236
|
+
width: 30px;
|
|
2237
|
+
box-sizing: border-box;
|
|
2238
|
+
}
|
|
2239
|
+
.x-spreadsheet-orientation-v-btn span {
|
|
2240
|
+
display: block;
|
|
2241
|
+
line-height: 1.2;
|
|
2242
|
+
}
|
|
2243
|
+
.x-spreadsheet-orientation-v-btn.active {
|
|
2244
|
+
background-color: #000;
|
|
2245
|
+
border-color: #000;
|
|
2246
|
+
color: #fff;
|
|
2247
|
+
}
|
|
2248
|
+
.x-spreadsheet-orientation-input-container {
|
|
2249
|
+
margin-top: 10px;
|
|
2250
|
+
display: flex;
|
|
2251
|
+
align-items: center;
|
|
2252
|
+
}
|
|
2253
|
+
.x-spreadsheet-orientation-input-container .x-spreadsheet-modal-component-input-div {
|
|
2254
|
+
width: 60px;
|
|
2255
|
+
}
|
|
2256
|
+
.x-spreadsheet-orientation-input-container .x-spreadsheet-modal-component-input-div input {
|
|
2257
|
+
text-align: right;
|
|
2258
|
+
}
|
|
2259
|
+
.x-spreadsheet-orientation-input-container span {
|
|
2260
|
+
margin-left: 5px;
|
|
2261
|
+
}
|
|
2262
|
+
.x-spreadsheet-orientation-point {
|
|
2263
|
+
position: absolute;
|
|
2264
|
+
background-color: black;
|
|
2265
|
+
}
|
|
2266
|
+
.x-spreadsheet-orientation-point.minor {
|
|
2267
|
+
width: 4px;
|
|
2268
|
+
height: 4px;
|
|
2269
|
+
transform: translate(-50%, -50%);
|
|
2270
|
+
}
|
|
2271
|
+
.x-spreadsheet-orientation-point:not(.minor) {
|
|
2272
|
+
width: 8px;
|
|
2273
|
+
height: 8px;
|
|
2274
|
+
transform: translate(-50%, -50%) rotate(45deg);
|
|
2275
|
+
}
|
|
2276
|
+
.x-spreadsheet-orientation-point.active {
|
|
2277
|
+
background-color: red;
|
|
2278
|
+
}
|
|
2128
2279
|
|