cenitu-table 0.2.0 → 0.4.0-beta.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/README.md +226 -137
- package/README.tr.md +224 -126
- package/dist/cenitu-table.cjs +1 -1
- package/dist/cenitu-table.js +34 -31
- package/dist/index-BIH30fQ2.js +6571 -0
- package/dist/index-Bidvqh7P.cjs +197 -0
- package/dist/react.cjs +1 -1
- package/dist/react.js +67 -50
- package/dist/types/export/index.d.ts +2 -0
- package/dist/types/export/types.d.ts +1 -0
- package/dist/types/export/unzip.d.ts +21 -0
- package/dist/types/export/xlsxRead.d.ts +35 -0
- package/dist/types/export/xlsxStyles.d.ts +23 -0
- package/dist/types/export/xmlReader.d.ts +15 -0
- package/dist/types/grid/cellTypes.d.ts +10 -1
- package/dist/types/grid/clipboardHtml.d.ts +13 -0
- package/dist/types/grid/columnMenu.d.ts +11 -1
- package/dist/types/grid/filters.d.ts +3 -2
- package/dist/types/grid/grid.d.ts +162 -10
- package/dist/types/grid/messages.d.ts +28 -0
- package/dist/types/grid/search.d.ts +41 -0
- package/dist/types/grid/serverMode.d.ts +66 -0
- package/dist/types/index.d.ts +3 -1
- package/dist/types/react/index.d.ts +8 -1
- package/package.json +1 -1
- package/dist/index-BJIaMXd1.cjs +0 -164
- package/dist/index-DG98ykBX.js +0 -5230
package/README.tr.md
CHANGED
|
@@ -1,126 +1,224 @@
|
|
|
1
|
-
# CenituTable
|
|
2
|
-
|
|
3
|
-
Spreadsheet benzeri bir data grid ve ona bağlı, çok sayfalı bir formül motoru. TypeScript ile yazıldı, **çalışma zamanı bağımlılığı yok**. İsteğe bağlı bir React bileşeni de içeriyor.
|
|
4
|
-
|
|
5
|
-
**[Canlı demo](https://cenitu.github.io/cenitu-table/)** · [English](README.md) · [Tasarım notları](docs/SPEC.md)
|
|
6
|
-
|
|
7
|
-
## Özellikler
|
|
8
|
-
|
|
9
|
-
- **Grid:** sanal kaydırma (yalnızca görünen hücreler DOM'da), klavye gezinmesi (Ctrl+ok ile veri bloğu sonuna atlama), Excel uyumlu kopyala/kes/yapıştır, geri al/yinele, sütun ve satır boyutlandırma, satır/sütun ekleme-silme, sağ tık menüsü.
|
|
10
|
-
- **Sıralama ve filtre:**
|
|
11
|
-
- **
|
|
12
|
-
- **
|
|
13
|
-
- **
|
|
14
|
-
- **
|
|
15
|
-
- **
|
|
16
|
-
- **
|
|
17
|
-
- **
|
|
18
|
-
- **
|
|
19
|
-
- **
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
{ type: '
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
engine
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
1
|
+
# CenituTable
|
|
2
|
+
|
|
3
|
+
Spreadsheet benzeri bir data grid ve ona bağlı, çok sayfalı bir formül motoru. TypeScript ile yazıldı, **çalışma zamanı bağımlılığı yok**. İsteğe bağlı bir React bileşeni de içeriyor.
|
|
4
|
+
|
|
5
|
+
**[Canlı demo](https://cenitu.github.io/cenitu-table/)** · [English](README.md) · [Tasarım notları](docs/SPEC.md)
|
|
6
|
+
|
|
7
|
+
## Özellikler
|
|
8
|
+
|
|
9
|
+
- **Grid:** sanal kaydırma (yalnızca görünen hücreler DOM'da), klavye gezinmesi (Ctrl+ok ile veri bloğu sonuna atlama), Excel uyumlu, biçimli kopyala/kes/yapıştır, geri al/yinele, sütun ve satır boyutlandırma, satır/sütun ekleme-silme, sağ tık menüsü.
|
|
10
|
+
- **Sıralama ve filtre:** birden fazla sütuna göre sıralama, sütun menüsünden koşula ya da değere göre filtre. Yalnızca görünüm değişir; veri ve formüller yerinde kalır.
|
|
11
|
+
- **Bul ve değiştir:** Ctrl+F / Ctrl+H; ekran dışındaki satırlarda da çalışır, görünen değerlerde ya da formüllerde arar.
|
|
12
|
+
- **Formül çubuğu:** aktif hücrenin adresi ve içeriği grid'in üstünde gösterilir, buradan düzenlenebilir.
|
|
13
|
+
- **Doldurma tutamacı:** sayı ve metin serileri, göreli kayan formüller, çift tıklamayla otomatik doldurma, Ctrl+D.
|
|
14
|
+
- **Hücre tipleri:** sayı (para, yüzde gibi Intl biçimleri), tarih, onay kutusu, açılır liste; doğrulayıcılar, salt-okunur hücreler, özel çiziciler.
|
|
15
|
+
- **Biçimlendirme:** kalın, italik, altı çizili, üstü çizili, renkler, hizalama, metin kaydırma (Ctrl+B / I / U); hücre ya da tüm satır için koşullu biçimlendirme.
|
|
16
|
+
- **Yerleşim:** sabit satır ve sütunlar, birleştirilmiş hücreler, gizli sütunlar, sürükleyerek sütun taşıma.
|
|
17
|
+
- **Formül motoru:** 100'den fazla fonksiyon (SUM, IF, XLOOKUP, SUMIFS, TEXT, tarih fonksiyonları…), taşan dinamik diziler (FILTER, SORT, UNIQUE, SEQUENCE), sayfalar arası referanslar (`'Diğer Sayfa'!A1`), isimli ifadeler, artımlı yeniden hesaplama, döngü tespiti.
|
|
18
|
+
- **Sunucu modu:** sayfalama, sıralama ve süzme arka uçta; sayfa çubuğu ile metin, liste, tarih ve evet/hayır süzgeçleri.
|
|
19
|
+
- **Veri bağlama:** satırlar dizi ya da nesne olarak verilebilir. Nesnelerde sütunlar alan yoluna bağlanır ve düzenlemeler nesnelerinize geri yazılır.
|
|
20
|
+
- **İçe ve dışa aktarma:** XLSX okuma ve yazma (formüller, biçimler, stiller, sabit bölmeler, birleştirmeler), formül enjeksiyonuna karşı korumalı CSV; hiçbir kütüphane kullanmadan.
|
|
21
|
+
- **Erişilebilirlik:** ARIA grid rolleri, ekran okuyucuya duyurulan aktif hücre.
|
|
22
|
+
- **React:** `cenitu-table/react` içinden `<CenituTable />`.
|
|
23
|
+
|
|
24
|
+
## Kurulum
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
npm install cenitu-table
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Kullanım
|
|
31
|
+
|
|
32
|
+
```ts
|
|
33
|
+
import { CenituGrid, trTR } from 'cenitu-table';
|
|
34
|
+
|
|
35
|
+
const grid = new CenituGrid(document.getElementById('grid')!, {
|
|
36
|
+
data: [
|
|
37
|
+
['Ürün', 'Adet', 'Fiyat', 'Tutar'],
|
|
38
|
+
['Vida', 10, 2.5, '=B2*C2'],
|
|
39
|
+
['Somun', 20, 1.25, '=B3*C3'],
|
|
40
|
+
],
|
|
41
|
+
fixedRowsTop: 1,
|
|
42
|
+
columnSorting: true,
|
|
43
|
+
filters: true,
|
|
44
|
+
contextMenu: true,
|
|
45
|
+
locale: 'tr-TR',
|
|
46
|
+
language: trTR,
|
|
47
|
+
columns: [
|
|
48
|
+
{ type: 'dropdown', source: ['Vida', 'Somun', 'Pul'] },
|
|
49
|
+
{ type: 'numeric', validator: (v) => Number(v) > 0 || 'Pozitif olmalı' },
|
|
50
|
+
{ type: 'numeric', numericFormat: { style: 'currency', currency: 'TRY' } },
|
|
51
|
+
{ type: 'numeric', numericFormat: { style: 'currency', currency: 'TRY' }, readOnly: true },
|
|
52
|
+
],
|
|
53
|
+
height: 400,
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
grid.addHook('afterChange', (changes, source) => console.log(changes, source));
|
|
57
|
+
grid.getDataAtCell(1, 3); // 25 (hesaplanmış değer)
|
|
58
|
+
grid.getSourceDataAtCell(1, 3); // "=B2*C2"
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Dizi yerine nesneler
|
|
62
|
+
|
|
63
|
+
```ts
|
|
64
|
+
const siparisler = [{ urun: 'Vida', adet: 10, musteri: { ad: 'Acme' } }];
|
|
65
|
+
|
|
66
|
+
new CenituGrid(el, {
|
|
67
|
+
data: siparisler,
|
|
68
|
+
columns: [{ data: 'urun' }, { data: 'adet', type: 'numeric' }, { data: 'musteri.ad', title: 'Müşteri' }],
|
|
69
|
+
dataSchema: () => ({ urun: '', adet: 0, musteri: { ad: '' } }),
|
|
70
|
+
});
|
|
71
|
+
// Düzenlemeler geri yazılır: hücre değişince siparisler[0].adet de değişir.
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Formül hücreleri nesneye hesaplanmış değeri yazar ve güncel tutar; böylece alanlarınız düz değer olarak kalır. Formül metnini saklamak için `bindFormulas: 'text'` kullanın.
|
|
75
|
+
|
|
76
|
+
### Birden fazla sayfa
|
|
77
|
+
|
|
78
|
+
Tek bir motoru birden fazla grid'e verin (her grid bir sayfa):
|
|
79
|
+
|
|
80
|
+
```ts
|
|
81
|
+
import { CenituGrid, FormulaEngine } from 'cenitu-table';
|
|
82
|
+
|
|
83
|
+
const engine = FormulaEngine.buildEmpty();
|
|
84
|
+
engine.addNamedExpression('KdvOrani', 0.2);
|
|
85
|
+
new CenituGrid(el1, { formulas: engine, sheetName: 'Siparişler', data: siparisler });
|
|
86
|
+
new CenituGrid(el2, { formulas: engine, sheetName: 'Özet', data: [['=SUM(Siparişler!F2:F100)*(1+KdvOrani)']] });
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Dışa aktarma
|
|
90
|
+
|
|
91
|
+
```ts
|
|
92
|
+
grid.downloadCSV('siparisler.csv'); // tr-TR'de ";" ayraç ve "," ondalık
|
|
93
|
+
await grid.downloadXLSX('kitap.xlsx', [ozetGrid]); // birden fazla sayfa tek dosyada
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### İçe aktarma
|
|
97
|
+
|
|
98
|
+
```ts
|
|
99
|
+
await grid.importXLSX(dosya, { sheet: 'Siparişler' }); // File, Blob ya da bayt dizisi; varsayılan ilk sayfa
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Bütün çalışma kitabını yüklemek için tüm grid'lere tek motor verin; böylece formüller diğer sayfalara ulaşır:
|
|
103
|
+
|
|
104
|
+
```ts
|
|
105
|
+
import { CenituGrid, readXLSX, workbookEngine } from 'cenitu-table';
|
|
106
|
+
|
|
107
|
+
const kitap = await readXLSX(dosya);
|
|
108
|
+
const engine = workbookEngine(kitap);
|
|
109
|
+
kitap.sheets.forEach((sayfa, i) => {
|
|
110
|
+
new CenituGrid(alanlar[i], { formulas: engine, sheetName: sayfa.name }).loadSheet(sayfa);
|
|
111
|
+
});
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Okunanlar: değerler, formüller, sayı biçimleri, yazı tipleri, dolgular, hizalama, sütun genişlikleri, satır yükseklikleri, gizli sütunlar, sabit bölmeler, birleştirmeler ve tanımlı adlar. Okunmayanlar: grafikler, resimler, yorumlar, koşullu biçimler, veri doğrulama ve gizli satırlar (görünür hale gelir). Dosyada motorun bilmediği fonksiyonlar varsa `formulas: 'values'` ile formüller yerine dosyadaki sonuçları alabilirsiniz.
|
|
115
|
+
|
|
116
|
+
### Sunucu modu
|
|
117
|
+
|
|
118
|
+
Tarayıcıya sığmayacak listelerde grid hangi satırlara ihtiyacı olduğunu bildirir, veriyi uygulamanız getirir. Grid kendi başına sıralama ya da süzme yapmaz.
|
|
119
|
+
|
|
120
|
+
```tsx
|
|
121
|
+
<CenituTable
|
|
122
|
+
dataMode="server"
|
|
123
|
+
rowKey="id"
|
|
124
|
+
data={sayfa.items}
|
|
125
|
+
totalCount={sayfa.totalCount}
|
|
126
|
+
loading={yukleniyor}
|
|
127
|
+
loadError={hataVar}
|
|
128
|
+
query={sorgu}
|
|
129
|
+
onQueryChange={setSorgu}
|
|
130
|
+
columns={[
|
|
131
|
+
{ id: 'orderDate', data: 'orderDate', sortable: true, serverFilter: { kind: 'date' } },
|
|
132
|
+
{ id: 'status', data: 'status', serverFilter: { kind: 'list', options: durumlar } },
|
|
133
|
+
{ id: 'partner', data: 'partner.name' },
|
|
134
|
+
]}
|
|
135
|
+
/>
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
`query` içinde `page`, `pageSize`, `sort: [{ field, desc }]`, `filters` ve `search` bulunur. Alanlar her zaman kolon kimliğidir, bu yüzden kolon gizlemek ya da taşımak sorguyu bozmaz. Süzgeç türleri `text`, `list`, `date` (`from`, `to`) ve `boolean`'dır. React olmadan `afterQueryChange` olayını dinleyip satırları `grid.setPageRows(satirlar, toplam)` ile verin.
|
|
139
|
+
|
|
140
|
+
Bilmeniz gerekenler:
|
|
141
|
+
|
|
142
|
+
- Yalnızca `sortable` ya da `serverFilter` tanımlı kolonlarda menü çıkar.
|
|
143
|
+
- Sıralama, süzgeç ve sayfa boyutu değişince 1. sayfaya dönülür.
|
|
144
|
+
- Yeni satırlar gelince sıralama işaretleri, süzgeçler, kolon düzeni, kaydırma konumu ve `rowKey` ile seçim korunur.
|
|
145
|
+
- İstekleri uygulama yaptığı için eski yanıtları yok saymak da uygulamanın işidir.
|
|
146
|
+
- Değişiklik olayları `rowKey` ve `columnId` taşır; düzenlemeleri sayfa değişmeden önce de dahil kaydetmek uygulamaya aittir.
|
|
147
|
+
- Geri alma geçmişi her yeni sayfada sıfırlanır.
|
|
148
|
+
- `formulas` verilmedikçe formüller kapalıdır; açılırsa yalnızca yüklü sayfayı görür.
|
|
149
|
+
- Tümünü seçme, bul ve değiştir, CSV/XLSX dışa aktarma yalnızca yüklü sayfayı kapsar.
|
|
150
|
+
- Satırlar yerelde eklenip silinemez. Sığmayan yapıştırma kesilir ve `afterPasteClipped` ile bildirilir.
|
|
151
|
+
|
|
152
|
+
### Satır olayları ve kolon düzeni
|
|
153
|
+
|
|
154
|
+
```tsx
|
|
155
|
+
<CenituTable
|
|
156
|
+
rowKey="id"
|
|
157
|
+
columnLayout={kayitli}
|
|
158
|
+
onColumnLayoutChange={(duzen) => localStorage.setItem('siparisler', JSON.stringify(duzen))}
|
|
159
|
+
onRowDoubleClick={({ rowKey }) => {
|
|
160
|
+
siparisiAc(rowKey);
|
|
161
|
+
return false; // hücre editörünü kapalı tutar
|
|
162
|
+
}}
|
|
163
|
+
/>
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
Kolon düzeni için kolon kimliği gerekir (`columns[i].id` ya da `data`). Geri yüklerken kaldırılmış kolonlar atlanır, yeni kolonlar kayıtlı olanların sonrasında kalır. Tarayıcıdaki gibi çift tıklama iki satır tıklaması da üretir. `setColumnLayout` kolon taşırsa geri alma geçmişini temizler.
|
|
167
|
+
|
|
168
|
+
### Bul, formül çubuğu, çok sütunlu sıralama
|
|
169
|
+
|
|
170
|
+
```ts
|
|
171
|
+
new CenituGrid(el, { data, search: true, formulaBar: true, columnSorting: true });
|
|
172
|
+
|
|
173
|
+
grid.openSearch(true); // ya da `search: true` ile Ctrl+F / Ctrl+H
|
|
174
|
+
grid.findNext('vida', { matchCase: false });
|
|
175
|
+
grid.replaceAll('A1', 'B1', { lookIn: 'formulas' }); // tek geri alma adımı; değişen hücre sayısını döndürür
|
|
176
|
+
grid.sortBy([{ col: 2, order: 'desc' }, { col: 0, order: 'asc' }]);
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
`lookIn: 'formulas'` olmadan değiştirme işlemi formül hücrelerine dokunmaz. `formulaBar`, grid'in `height` değerine ek olarak üstte bir satır kaplar. Bir sütun sıralıyken diğer sütunların menüsünde "Sonra sırala" seçenekleri çıkar.
|
|
180
|
+
|
|
181
|
+
### React
|
|
182
|
+
|
|
183
|
+
```tsx
|
|
184
|
+
import { CenituTable } from 'cenitu-table/react';
|
|
185
|
+
|
|
186
|
+
<CenituTable ref={gridRef} data={data} fixedRowsTop={1} onChange={(changes) => kaydet(changes)} />;
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
### Yalnızca formül motoru
|
|
190
|
+
|
|
191
|
+
```ts
|
|
192
|
+
import { FormulaEngine, registerFunction } from 'cenitu-table';
|
|
193
|
+
|
|
194
|
+
const engine = FormulaEngine.buildFromArray([[1, 2, '=A1+B1']]);
|
|
195
|
+
engine.setCellContents({ row: 0, col: 0 }, 10); // değişen hücreleri döndürür
|
|
196
|
+
engine.getCellValue({ row: 0, col: 2 }); // 12
|
|
197
|
+
registerFunction('DOUBLE', { minArgs: 1, maxArgs: 1, impl: ([x]) => (x as number) * 2 });
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### Yerelleştirme
|
|
201
|
+
|
|
202
|
+
```ts
|
|
203
|
+
import { trTR } from 'cenitu-table';
|
|
204
|
+
|
|
205
|
+
new CenituGrid(el, { locale: 'tr-TR', language: trTR, data });
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
`locale` sayı ve tarih biçimini belirler; `language` arayüz metinlerini taşır (varsayılan İngilizce, Türkçe dahil).
|
|
209
|
+
|
|
210
|
+
## Geliştirme
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
npm install
|
|
214
|
+
npm run dev # demo: http://localhost:5180
|
|
215
|
+
npm test # birim testleri (vitest + jsdom)
|
|
216
|
+
npm run test:e2e # tarayıcı testleri (Playwright: Chromium, Firefox, WebKit)
|
|
217
|
+
npm run build # tip denetimi, ESM/CJS paketleri ve dist/ altında .d.ts
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
Bkz. [CONTRIBUTING.md](CONTRIBUTING.md). Önemli değişiklikler [CHANGELOG.md](CHANGELOG.md)'de.
|
|
221
|
+
|
|
222
|
+
## Lisans
|
|
223
|
+
|
|
224
|
+
[MIT](LICENSE)
|
package/dist/cenitu-table.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-Bidvqh7P.cjs");exports.CSV_MIME=e.CSV_MIME;exports.CellError=e.CellError;exports.CenituGrid=e.CenituGrid;exports.FormulaEngine=e.FormulaEngine;exports.FormulaSyntaxError=e.FormulaSyntaxError;exports.MAX_COLS=e.MAX_COLS;exports.MAX_ROWS=e.MAX_ROWS;exports.RangeValue=e.RangeValue;exports.SHEET_SPAN=e.SHEET_SPAN;exports.XLSX_MIME=e.XLSX_MIME;exports.ZipReader=e.ZipReader;exports.cellKey=e.cellKey;exports.columnIndex=e.columnIndex;exports.columnLabel=e.columnLabel;exports.crc32=e.crc32;exports.dateCodeFromPattern=e.dateCodeFromPattern;exports.dateToSerial=e.dateToSerial;exports.downloadBlob=e.downloadBlob;exports.enUS=e.enUS;exports.formatDateCode=e.formatDateCode;exports.formatSerialDate=e.formatSerialDate;exports.getRegisteredFunctionNames=e.getRegisteredFunctionNames;exports.inverseMove=e.inverseMove;exports.isDateFormat=e.isDateFormat;exports.isError=e.isError;exports.isFormula=e.isFormula;exports.keyToAddress=e.keyToAddress;exports.normalizeRange=e.normalizeRange;exports.numberFormatFromMeta=e.numberFormatFromMeta;exports.parseA1=e.parseA1;exports.parseDateString=e.parseDateString;exports.parseFormula=e.parseFormula;exports.pxToColWidth=e.pxToColWidth;exports.quoteSheetName=e.quoteSheetName;exports.rangeContains=e.rangeContains;exports.readXLSX=e.readXLSX;exports.registerFunction=e.registerFunction;exports.sanitizeSheetNames=e.sanitizeSheetNames;exports.serialToDate=e.serialToDate;exports.setClock=e.setClock;exports.setRandom=e.setRandom;exports.toA1=e.toA1;exports.toCSV=e.toCSV;exports.toXLSX=e.toXLSX;exports.toXLSXCompressed=e.toXLSXCompressed;exports.trTR=e.trTR;exports.unparse=e.unparse;exports.unregisterFunction=e.unregisterFunction;exports.workbookEngine=e.workbookEngine;exports.xlsxParts=e.xlsxParts;exports.zipDeflate=e.zipDeflate;exports.zipStore=e.zipStore;
|
package/dist/cenitu-table.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as e, b as r, C as o, F as t, c as n, M as i, d as l, R as m, S, X as
|
|
1
|
+
import { a as e, b as r, C as o, F as t, c as n, M as i, d as l, R as m, S, X as d, Z as u, e as C, f as F, g, h as p, j as X, k as c, l as E, m as M, n as R, o as x, p as A, q as D, r as L, s as T, t as _, u as b, v as f, w as k, x as z, y as N, z as h, A as y, B as I, D as P, E as V, G as v, H as w, I as W, J as q, K as B, L as G, N as H, P as K, Q as O, T as U, U as Z, V as j, W as J, Y as Q, _ as Y, $ } from "./index-BIH30fQ2.js";
|
|
2
2
|
export {
|
|
3
3
|
e as CSV_MIME,
|
|
4
4
|
r as CellError,
|
|
@@ -9,44 +9,47 @@ export {
|
|
|
9
9
|
l as MAX_ROWS,
|
|
10
10
|
m as RangeValue,
|
|
11
11
|
S as SHEET_SPAN,
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
C as
|
|
15
|
-
F as
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
d as XLSX_MIME,
|
|
13
|
+
u as ZipReader,
|
|
14
|
+
C as cellKey,
|
|
15
|
+
F as columnIndex,
|
|
16
|
+
g as columnLabel,
|
|
17
|
+
p as crc32,
|
|
18
|
+
X as dateCodeFromPattern,
|
|
19
|
+
c as dateToSerial,
|
|
19
20
|
E as downloadBlob,
|
|
20
21
|
M as enUS,
|
|
21
|
-
|
|
22
|
+
R as formatDateCode,
|
|
22
23
|
x as formatSerialDate,
|
|
23
24
|
A as getRegisteredFunctionNames,
|
|
24
25
|
D as inverseMove,
|
|
25
|
-
|
|
26
|
+
L as isDateFormat,
|
|
26
27
|
T as isError,
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
28
|
+
_ as isFormula,
|
|
29
|
+
b as keyToAddress,
|
|
30
|
+
f as normalizeRange,
|
|
31
|
+
k as numberFormatFromMeta,
|
|
32
|
+
z as parseA1,
|
|
33
|
+
N as parseDateString,
|
|
33
34
|
h as parseFormula,
|
|
34
35
|
y as pxToColWidth,
|
|
35
36
|
I as quoteSheetName,
|
|
36
37
|
P as rangeContains,
|
|
37
|
-
V as
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
W as
|
|
41
|
-
q as
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
j as
|
|
50
|
-
J as
|
|
51
|
-
Q as
|
|
38
|
+
V as readXLSX,
|
|
39
|
+
v as registerFunction,
|
|
40
|
+
w as sanitizeSheetNames,
|
|
41
|
+
W as serialToDate,
|
|
42
|
+
q as setClock,
|
|
43
|
+
B as setRandom,
|
|
44
|
+
G as toA1,
|
|
45
|
+
H as toCSV,
|
|
46
|
+
K as toXLSX,
|
|
47
|
+
O as toXLSXCompressed,
|
|
48
|
+
U as trTR,
|
|
49
|
+
Z as unparse,
|
|
50
|
+
j as unregisterFunction,
|
|
51
|
+
J as workbookEngine,
|
|
52
|
+
Q as xlsxParts,
|
|
53
|
+
Y as zipDeflate,
|
|
54
|
+
$ as zipStore
|
|
52
55
|
};
|