@ryuzaki13/react-foundation-lib 1.4.1 → 1.4.3
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 +154 -100
- package/dist/chunks/{formatters-CBgrBeSA.js → formatters-D33Uh3si.js} +7 -8
- package/dist/chunks/{formatters-CBgrBeSA.js.map → formatters-D33Uh3si.js.map} +1 -1
- package/dist/chunks/odata-service-CWkHASdw.js +2211 -0
- package/dist/chunks/odata-service-CWkHASdw.js.map +1 -0
- package/dist/chunks/{validate-BW-7BZy_.js → validate-DyzojM0w.js} +2 -2
- package/dist/chunks/{validate-BW-7BZy_.js.map → validate-DyzojM0w.js.map} +1 -1
- package/dist/error-report/index.js +2 -2
- package/dist/excel/index.js +20 -21
- package/dist/excel/index.js.map +1 -1
- package/dist/formatters/index.js +4 -5
- package/dist/{odata → odata-service}/buildSeparatedArrays.d.ts +1 -1
- package/dist/odata-service/buildSeparatedArrays.d.ts.map +1 -0
- package/dist/{odata/types.d.ts → odata-service/collectionTypes.d.ts} +1 -1
- package/dist/odata-service/collectionTypes.d.ts.map +1 -0
- package/dist/{odata → odata-service}/dateUtils.d.ts +1 -1
- package/dist/odata-service/dateUtils.d.ts.map +1 -0
- package/dist/{odata → odata-service}/findCollectionPairs.d.ts +1 -1
- package/dist/odata-service/findCollectionPairs.d.ts.map +1 -0
- package/dist/odata-service/index.d.ts +5 -0
- package/dist/odata-service/index.d.ts.map +1 -1
- package/dist/odata-service/index.js +2 -2
- package/dist/{odata/store.d.ts → odata-service/odataCollectionStore.d.ts} +1 -1
- package/dist/odata-service/odataCollectionStore.d.ts.map +1 -0
- package/dist/query-client/index.js.map +1 -1
- package/dist/query-client/queryClient.d.ts +1 -3
- package/dist/query-client/queryClient.d.ts.map +1 -1
- package/package.json +1 -5
- package/src/bounded-copy-stack/README.mdx +257 -0
- package/src/context-menu/README.mdx +326 -0
- package/src/currency/README.mdx +155 -0
- package/src/date-segments/README.mdx +319 -0
- package/src/error/README.mdx +95 -0
- package/src/error-report/README.mdx +612 -0
- package/src/excel/README.mdx +449 -0
- package/src/fingerprint/README.mdx +100 -0
- package/src/form/README.mdx +101 -0
- package/src/foundationLib.mdx +70 -54
- package/src/hooks/README.mdx +988 -0
- package/src/http/README.mdx +126 -0
- package/src/media/README.mdx +1853 -0
- package/src/notifications/README.mdx +323 -0
- package/src/number-scale/README.mdx +318 -0
- package/src/odata-service/README.mdx +2916 -0
- package/src/presets/README.mdx +136 -0
- package/src/pwa/README.mdx +394 -0
- package/src/query-client/README.mdx +2500 -0
- package/src/range-output/README.mdx +161 -0
- package/src/seo/README.mdx +279 -0
- package/src/session-storage/README.mdx +125 -0
- package/src/string-comparison/README.mdx +96 -0
- package/src/table/README.mdx +3106 -0
- package/src/three-scene/README.mdx +248 -0
- package/src/types/README.mdx +172 -0
- package/src/utils/README.mdx +1724 -0
- package/src/validators/README.mdx +239 -0
- package/src/virtualizer/README.mdx +138 -0
- package/src/xml/README.mdx +149 -0
- package/dist/chunks/dateUtils-B5V5aXB-.js +0 -847
- package/dist/chunks/dateUtils-B5V5aXB-.js.map +0 -1
- package/dist/chunks/odata-service-B6TxBSLm.js +0 -1277
- package/dist/chunks/odata-service-B6TxBSLm.js.map +0 -1
- package/dist/odata/buildSeparatedArrays.d.ts.map +0 -1
- package/dist/odata/dateUtils.d.ts.map +0 -1
- package/dist/odata/findCollectionPairs.d.ts.map +0 -1
- package/dist/odata/index.d.ts +0 -6
- package/dist/odata/index.d.ts.map +0 -1
- package/dist/odata/index.js +0 -102
- package/dist/odata/index.js.map +0 -1
- package/dist/odata/store.d.ts.map +0 -1
- package/dist/odata/types.d.ts.map +0 -1
- package/src/pwa/README.md +0 -638
- package/src/query-client/README.md +0 -565
package/README.md
CHANGED
|
@@ -27,19 +27,21 @@ import type { RowRecord } from "@ryuzaki13/react-foundation-lib/types";
|
|
|
27
27
|
|
|
28
28
|
Большинство внешних пакетов объявлены как optional peers. Это означает только то, что их не нужно ставить для каждого сценария. Если host использует entrypoint, который импортирует внешний пакет, совместимая peer-зависимость должна быть установлена в host-проекте.
|
|
29
29
|
|
|
30
|
-
| Entry point
|
|
31
|
-
|
|
|
32
|
-
| `formatters`, `array
|
|
33
|
-
| `hooks`, `binary`, `dom`, `copy`, `media`, `pwa` | `react`: `
|
|
34
|
-
| `query-client`, `error-report`
|
|
35
|
-
| `odata-service`
|
|
36
|
-
| `
|
|
37
|
-
| `table`
|
|
38
|
-
| `virtualizer`
|
|
39
|
-
| `
|
|
40
|
-
| `hooks`
|
|
41
|
-
| `hooks`
|
|
42
|
-
| `
|
|
30
|
+
| Entry point | Что может потребоваться в host-проекте |
|
|
31
|
+
| --------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
|
|
32
|
+
| `formatters`, `array` | Обычно не требуют дополнительных runtime-зависимостей. |
|
|
33
|
+
| `utils`, `hooks`, `binary`, `dom`, `copy`, `media`, `pwa` | `react`: `utils` экспортирует React helpers, `binary` — `useBinaryFile`, остальные entrypoints содержат hooks. |
|
|
34
|
+
| `query-client`, `error-report` | `@tanstack/react-query`, `@tanstack/query-persist-client-core`, `@tanstack/query-broadcast-client-experimental`. |
|
|
35
|
+
| `odata-service` | `zod`, `zustand`, `immer`, `react`; `unwrapODataQueryResult` типизирован вокруг `@tanstack/react-query`. |
|
|
36
|
+
| `notifications` | `zustand`. |
|
|
37
|
+
| `table` | `@tanstack/react-table` и `react` для selection hooks. |
|
|
38
|
+
| `virtualizer` | `@tanstack/react-virtual` и `react`. |
|
|
39
|
+
| `three-scene` | `react`; hook также использует browser media APIs. |
|
|
40
|
+
| `hooks` search helpers | `@tanstack/react-router`. |
|
|
41
|
+
| `hooks` DnD helpers | `@dnd-kit/core`, `@dnd-kit/sortable`. |
|
|
42
|
+
| `hooks`, `validators` floating/listbox и DOM references | `@floating-ui/react`. |
|
|
43
|
+
| `excel` | `write-excel-file`. |
|
|
44
|
+
| `fingerprint` | `@fingerprintjs/fingerprintjs`. |
|
|
43
45
|
|
|
44
46
|
Такая схема оставляет пакет библиотечным: зависимости не зашиваются в bundle, а host-приложение контролирует версии React, TanStack, Zod и других runtime-библиотек.
|
|
45
47
|
|
|
@@ -66,6 +68,7 @@ npm run pack:dry-run
|
|
|
66
68
|
- [Peer-зависимости](#peer-зависимости)
|
|
67
69
|
- [Проверка пакета](#проверка-пакета)
|
|
68
70
|
- [Быстрый выбор модуля](#быстрый-выбор-модуля)
|
|
71
|
+
- [Полный каталог документации](#полный-каталог-документации)
|
|
69
72
|
- [Форматирование и значения](#форматирование-и-значения)
|
|
70
73
|
- [OData, таблицы и экспорт](#odata-таблицы-и-экспорт)
|
|
71
74
|
- [Browser, React hooks и UI-поведение](#browser-react-hooks-и-ui-поведение)
|
|
@@ -74,25 +77,71 @@ npm run pack:dry-run
|
|
|
74
77
|
|
|
75
78
|
## Быстрый выбор модуля
|
|
76
79
|
|
|
77
|
-
| Нужно
|
|
78
|
-
|
|
|
79
|
-
| Даты, диапазоны, ABAP/OData date literals
|
|
80
|
-
| Числа, проценты, валютные числа, compact axis labels
|
|
81
|
-
| Строки, ФИО, телефон, leading zeros, SAP boolean
|
|
82
|
-
| Runtime-форматирование ячеек таблицы
|
|
83
|
-
| Группировка, дедупликация, порядок и нормализация массивов
|
|
84
|
-
| OData metadata, filters, sorts,
|
|
85
|
-
|
|
|
86
|
-
|
|
|
87
|
-
|
|
|
88
|
-
|
|
|
89
|
-
|
|
|
90
|
-
|
|
|
91
|
-
|
|
|
92
|
-
| QueryClient, persistence, broadcast
|
|
93
|
-
| PWA service worker update и `x-sw-cache` policy
|
|
94
|
-
| Подстановки открытых границ диапазона
|
|
95
|
-
| Unknown guards, className, stable stringify, clone
|
|
80
|
+
| Нужно | Идти сюда |
|
|
81
|
+
| --------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
82
|
+
| Даты, диапазоны, ABAP/OData date literals | [`formatters/date`](./src/formatters/date/index.ts), тесты: [`formatDate.test.ts`](./src/formatters/date/formatDate.test.ts), [`dateRange.test.ts`](./src/formatters/date/dateRange.test.ts) |
|
|
83
|
+
| Числа, проценты, валютные числа, compact axis labels | [`formatters/number`](./src/formatters/number/index.ts), тесты: [`formatNumber.test.ts`](./src/formatters/number/formatNumber.test.ts), [`parseNumber.test.ts`](./src/formatters/number/parseNumber.test.ts) |
|
|
84
|
+
| Строки, ФИО, телефон, leading zeros, SAP boolean | [`formatters`](./src/formatters/index.ts), тесты: [`common.test.ts`](./src/formatters/common.test.ts), [`boolean.test.ts`](./src/formatters/boolean/boolean.test.ts), [`strings.test.ts`](./src/formatters/strings/strings.test.ts) |
|
|
85
|
+
| Runtime-форматирование ячеек таблицы | [`formatters/pipeline`](./src/formatters/pipeline/index.ts), тесты в [`formatters/pipeline`](./src/formatters/pipeline) |
|
|
86
|
+
| Группировка, дедупликация, порядок и нормализация массивов | [`array`](./src/array/index.ts), подробный README: [`array/README.mdx`](./src/array/README.mdx) |
|
|
87
|
+
| OData metadata, values, path, filters, sorts, code/text collections и store | [`odata-service`](./src/odata-service/index.ts), подробный README: [`odata-service/README.mdx`](./src/odata-service/README.mdx), тесты в [`odata-service`](./src/odata-service) |
|
|
88
|
+
| TanStack Table helpers | [`table`](./src/table/index.ts), единый подробный справочник: [`table/README.mdx`](./src/table/README.mdx), тесты в [`table`](./src/table) |
|
|
89
|
+
| Tree table преобразования | [`tree-table`](./src/tree-table/index.ts), документация в общем справочнике [`table/README.mdx`](./src/table/README.mdx), тесты в [`tree-table`](./src/tree-table) |
|
|
90
|
+
| Excel export | [`excel`](./src/excel/index.ts), подробный README: [`excel/README.mdx`](./src/excel/README.mdx), тесты: [`excel.test.ts`](./src/excel/excel.test.ts), [`tableExport.test.ts`](./src/excel/tableExport.test.ts) |
|
|
91
|
+
| FileReader, изображения, base64 Blob | [`file`](./src/file/index.ts), [`binary`](./src/binary/index.ts) |
|
|
92
|
+
| DOM overlay, portal, focus, download | [`dom`](./src/dom/index.ts), тест: [`dom.test.tsx`](./src/dom/dom.test.tsx) |
|
|
93
|
+
| Debounce/throttle, DnD sensors, search params, listbox | [`hooks`](./src/hooks/index.ts), подробный README: [`hooks/README.mdx`](./src/hooks/README.mdx), [`utils/keyboard.ts`](./src/utils/keyboard.ts) |
|
|
94
|
+
| Breakpoints, media queries и responsive props | [`media`](./src/media/index.ts), подробный README: [`media/README.mdx`](./src/media/README.mdx), тест: [`media.test.ts`](./src/media/media.test.ts) |
|
|
95
|
+
| QueryClient, persistence, broadcast | [`query-client`](./src/query-client/index.ts), подробный README: [`query-client/README.mdx`](./src/query-client/README.mdx) |
|
|
96
|
+
| PWA service worker update и `x-sw-cache` policy | [`pwa`](./src/pwa/index.ts), подробный README: [`pwa/README.mdx`](./src/pwa/README.mdx) |
|
|
97
|
+
| Подстановки открытых границ диапазона | [`range-output`](./src/range-output/index.ts), подробный README: [`range-output/README.mdx`](./src/range-output/README.mdx), тест: [`rangeOutput.test.ts`](./src/range-output/rangeOutput.test.ts) |
|
|
98
|
+
| Unknown guards, className, stable stringify, clone | [`validators`](./src/validators/index.ts), [`utils`](./src/utils/index.ts), подробные README: [`validators`](./src/validators/README.mdx), [`utils`](./src/utils/README.mdx) |
|
|
99
|
+
|
|
100
|
+
## Полный каталог документации
|
|
101
|
+
|
|
102
|
+
Каждый публичный subpath из `package.json#exports` покрыт русскоязычным MDX-руководством. Документы `tree-table` и `pwa/sw-cache-policy` намеренно объединены с ближайшим владельцем, чтобы правила одного сценария не расходились между файлами.
|
|
103
|
+
|
|
104
|
+
| Публичный import path | Подробная документация |
|
|
105
|
+
| ---------------------- | ------------------------------------------------------------------------------ |
|
|
106
|
+
| `/array` | [`array/README.mdx`](./src/array/README.mdx) |
|
|
107
|
+
| `/binary` | [`binary/README.mdx`](./src/binary/README.mdx) |
|
|
108
|
+
| `/bounded-copy-stack` | [`bounded-copy-stack/README.mdx`](./src/bounded-copy-stack/README.mdx) |
|
|
109
|
+
| `/context-menu` | [`context-menu/README.mdx`](./src/context-menu/README.mdx) |
|
|
110
|
+
| `/copy` | [`copy/README.mdx`](./src/copy/README.mdx) |
|
|
111
|
+
| `/crypto` | [`crypto/README.mdx`](./src/crypto/README.mdx) |
|
|
112
|
+
| `/currency` | [`currency/README.mdx`](./src/currency/README.mdx) |
|
|
113
|
+
| `/date-segments` | [`date-segments/README.mdx`](./src/date-segments/README.mdx) |
|
|
114
|
+
| `/dom` | [`dom/README.mdx`](./src/dom/README.mdx) |
|
|
115
|
+
| `/error` | [`error/README.mdx`](./src/error/README.mdx) |
|
|
116
|
+
| `/error-report` | [`error-report/README.mdx`](./src/error-report/README.mdx) |
|
|
117
|
+
| `/excel` | [`excel/README.mdx`](./src/excel/README.mdx) |
|
|
118
|
+
| `/file` | [`file/README.mdx`](./src/file/README.mdx) |
|
|
119
|
+
| `/fingerprint` | [`fingerprint/README.mdx`](./src/fingerprint/README.mdx) |
|
|
120
|
+
| `/form` | [`form/README.mdx`](./src/form/README.mdx) |
|
|
121
|
+
| `/formatters` | [`formatters/README.mdx`](./src/formatters/README.mdx) и его предметные README |
|
|
122
|
+
| `/formulas` | [`formulas/README.mdx`](./src/formulas/README.mdx) |
|
|
123
|
+
| `/hooks` | [`hooks/README.mdx`](./src/hooks/README.mdx) |
|
|
124
|
+
| `/http` | [`http/README.mdx`](./src/http/README.mdx) |
|
|
125
|
+
| `/media` | [`media/README.mdx`](./src/media/README.mdx) |
|
|
126
|
+
| `/notifications` | [`notifications/README.mdx`](./src/notifications/README.mdx) |
|
|
127
|
+
| `/number-scale` | [`number-scale/README.mdx`](./src/number-scale/README.mdx) |
|
|
128
|
+
| `/odata-service` | [`odata-service/README.mdx`](./src/odata-service/README.mdx) |
|
|
129
|
+
| `/presets` | [`presets/README.mdx`](./src/presets/README.mdx) |
|
|
130
|
+
| `/pwa` | [`pwa/README.mdx`](./src/pwa/README.mdx) |
|
|
131
|
+
| `/pwa/sw-cache-policy` | Раздел cache policy в [`pwa/README.mdx`](./src/pwa/README.mdx) |
|
|
132
|
+
| `/query-client` | [`query-client/README.mdx`](./src/query-client/README.mdx) |
|
|
133
|
+
| `/range-output` | [`range-output/README.mdx`](./src/range-output/README.mdx) |
|
|
134
|
+
| `/seo` | [`seo/README.mdx`](./src/seo/README.mdx) |
|
|
135
|
+
| `/session-storage` | [`session-storage/README.mdx`](./src/session-storage/README.mdx) |
|
|
136
|
+
| `/string-comparison` | [`string-comparison/README.mdx`](./src/string-comparison/README.mdx) |
|
|
137
|
+
| `/table` | [`table/README.mdx`](./src/table/README.mdx) |
|
|
138
|
+
| `/three-scene` | [`three-scene/README.mdx`](./src/three-scene/README.mdx) |
|
|
139
|
+
| `/tree-table` | Раздел tree-table в [`table/README.mdx`](./src/table/README.mdx) |
|
|
140
|
+
| `/types` | [`types/README.mdx`](./src/types/README.mdx) |
|
|
141
|
+
| `/utils` | [`utils/README.mdx`](./src/utils/README.mdx) |
|
|
142
|
+
| `/validators` | [`validators/README.mdx`](./src/validators/README.mdx) |
|
|
143
|
+
| `/virtualizer` | [`virtualizer/README.mdx`](./src/virtualizer/README.mdx) |
|
|
144
|
+
| `/xml` | [`xml/README.mdx`](./src/xml/README.mdx) |
|
|
96
145
|
|
|
97
146
|
## Форматирование и значения
|
|
98
147
|
|
|
@@ -277,8 +326,8 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
277
326
|
| `compileTableFormula` | Компилирует formulaId + keys в executor; не кидает runtime errors наружу. |
|
|
278
327
|
| `executeTableFormula` | Разовый запуск формулы. |
|
|
279
328
|
| `createTableFormulaRegistry` | Нормализует definitions и запрещает дубли. |
|
|
280
|
-
| `configureTableFormulaRegistry` | Устанавливает созданный host-приложением реестр до первого runtime-вызова.
|
|
281
|
-
| `getTableFormulaList`, `getTableFormulaById` | Доступ к активному реестру host-приложения.
|
|
329
|
+
| `configureTableFormulaRegistry` | Устанавливает созданный host-приложением реестр до первого runtime-вызова. |
|
|
330
|
+
| `getTableFormulaList`, `getTableFormulaById` | Доступ к активному реестру host-приложения. |
|
|
282
331
|
| `validateTableFormulaDependencies` | Проверяет наличие formula, доступность dependencies, out-of-range и unused dependencies. |
|
|
283
332
|
|
|
284
333
|
Поведение из тестов: невалидный результат формулы дает `invalid_result`, runtime exception дает `runtime_error`, отсутствующая формула дает `formula_not_found`.
|
|
@@ -287,7 +336,7 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
287
336
|
|
|
288
337
|
### `date-segments`
|
|
289
338
|
|
|
290
|
-
Файл: [`date-segments/index.ts`](./src/date-segments/index.ts), тест: [`mask.test.ts`](./src/date-segments/mask.test.ts).
|
|
339
|
+
Файл: [`date-segments/index.ts`](./src/date-segments/index.ts), подробный README: [`date-segments/README.mdx`](./src/date-segments/README.mdx), тест: [`mask.test.ts`](./src/date-segments/mask.test.ts).
|
|
291
340
|
|
|
292
341
|
Утилиты для segmented date input.
|
|
293
342
|
|
|
@@ -301,7 +350,7 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
301
350
|
|
|
302
351
|
### `number-scale`
|
|
303
352
|
|
|
304
|
-
Файлы: [`number-scale/index.ts`](./src/number-scale/index.ts), тест: [`numberScale.test.ts`](./src/number-scale/numberScale.test.ts).
|
|
353
|
+
Файлы: [`number-scale/index.ts`](./src/number-scale/index.ts), подробный README: [`number-scale/README.mdx`](./src/number-scale/README.mdx), тест: [`numberScale.test.ts`](./src/number-scale/numberScale.test.ts).
|
|
305
354
|
|
|
306
355
|
Математика числовых слайдеров и шкал.
|
|
307
356
|
|
|
@@ -317,7 +366,7 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
317
366
|
|
|
318
367
|
### `currency`
|
|
319
368
|
|
|
320
|
-
Файл: [`currency/currency.ts`](./src/currency/currency.ts), тест: [`currency.test.ts`](./src/currency/currency.test.ts).
|
|
369
|
+
Файл: [`currency/currency.ts`](./src/currency/currency.ts), подробный README: [`currency/README.mdx`](./src/currency/README.mdx), тест: [`currency.test.ts`](./src/currency/currency.test.ts).
|
|
321
370
|
|
|
322
371
|
| API | Поведение |
|
|
323
372
|
| ---------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
|
|
@@ -330,7 +379,9 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
330
379
|
|
|
331
380
|
### `odata-service`
|
|
332
381
|
|
|
333
|
-
Файл: [`odata-service/index.ts`](./src/odata-service/index.ts). Это
|
|
382
|
+
Файл: [`odata-service/index.ts`](./src/odata-service/index.ts), подробный справочник: [`odata-service/README.mdx`](./src/odata-service/README.mdx). Это единый entrypoint metadata/value/path/filter/sort helpers, code/text collections и общих настроек OData-справочников. Transport и fetch лежат в пакете `@ryuzaki13/react-foundation-api/odata`.
|
|
383
|
+
|
|
384
|
+
Прежний subpath `@ryuzaki13/react-foundation-lib/odata` удалён без compatibility alias. Его API перенесён в `@ryuzaki13/react-foundation-lib/odata-service`.
|
|
334
385
|
|
|
335
386
|
#### Metadata и path
|
|
336
387
|
|
|
@@ -384,6 +435,17 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
384
435
|
|
|
385
436
|
Тесты: [`filters.test.ts`](./src/odata-service/filters.test.ts), [`filterDefinitions.test.ts`](./src/odata-service/filterDefinitions.test.ts), [`sorts.ts`](./src/odata-service/sorts.ts), [`sqlFilters.test.ts`](./src/odata-service/sqlFilters.test.ts).
|
|
386
437
|
|
|
438
|
+
#### Справочные коллекции и store
|
|
439
|
+
|
|
440
|
+
| API | Поведение |
|
|
441
|
+
| -------------------------------------------------- | ------------------------------------------------------------------------------ |
|
|
442
|
+
| `findCollectionPairs` | Ищет пары `code` + `*_txt/_text/_t`, поддерживает custom suffixes. |
|
|
443
|
+
| `buildSeparatedArrays` | Строит отдельные code/text массивы для каждой пары, дедуплицирует и сортирует. |
|
|
444
|
+
| `ODataDateFormat` | Форматирует `Date` в `datetime'...'`, `datetimeoffset'...'`, `time'...'`. |
|
|
445
|
+
| `useODataCollectionStore`, `odataCollectionConfig` | Zustand-store общих defaults: visible limit, search thresholds и debounce. |
|
|
446
|
+
|
|
447
|
+
Тест: [`collection.test.ts`](./src/odata-service/collection.test.ts).
|
|
448
|
+
|
|
387
449
|
### `range-output`
|
|
388
450
|
|
|
389
451
|
Файлы: [`range-output/index.ts`](./src/range-output/index.ts), тест: [`rangeOutput.test.ts`](./src/range-output/rangeOutput.test.ts).
|
|
@@ -393,20 +455,9 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
393
455
|
| `readRangeOutputValueFallback` | Читает сериализуемые подстановки `start/end` из объекта с `outputValueFallback` через переданный парсер. |
|
|
394
456
|
| `resolveRangeOutputValue` | Заменяет `null` в открытых границах диапазона на заданные подстановочные значения для внешней передачи. |
|
|
395
457
|
|
|
396
|
-
### `odata`
|
|
397
|
-
|
|
398
|
-
Файлы: [`odata/index.ts`](./src/odata/index.ts), тест: [`odata.test.ts`](./src/odata/odata.test.ts).
|
|
399
|
-
|
|
400
|
-
| API | Поведение |
|
|
401
|
-
| -------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
|
|
402
|
-
| `buildSeparatedArrays` | Из одной коллекции строит отдельные массивы code/text для каждой пары, дедуплицирует и сортирует. |
|
|
403
|
-
| `findCollectionPairs` | Ищет пары `code` + `*_txt/_text/_t`, поддерживает custom suffixes. |
|
|
404
|
-
| `ODataDateFormat` | Форматирует `Date` в `datetime'...'`, `datetimeoffset'...'`, `time'...'`. |
|
|
405
|
-
| `useODataCollectionStore`, `odataCollectionConfig` | Zustand-store настроек коллекции: pagination, search, selected, dependent filters. |
|
|
406
|
-
|
|
407
458
|
### `table`
|
|
408
459
|
|
|
409
|
-
Файлы: [`table/index.ts`](./src/table/index.ts), тесты в [`table`](./src/table).
|
|
460
|
+
Файлы: [`table/index.ts`](./src/table/index.ts), единый подробный справочник для `table` и `tree-table`: [`table/README.mdx`](./src/table/README.mdx), тесты в [`table`](./src/table).
|
|
410
461
|
|
|
411
462
|
| API | Поведение |
|
|
412
463
|
| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
|
|
@@ -417,8 +468,8 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
417
468
|
| `normalizeTableColumnWidth`, `normalizeTableColumnSizing`, `patchTableColumnWidth`, `removeTableColumnWidth` | Column sizing с min width, default `60`. |
|
|
418
469
|
| `pruneTableRowSelection`, `toggleTableRowSelection` | `none`, `single`, `multi`; single не снимается повторным кликом. |
|
|
419
470
|
| `useTableRowSelection` | Hook поверх selection helpers. |
|
|
420
|
-
| `pruneTableCellSelection`, `toggleTableCellSelection` | Детерминированный выбор координат `rowId + columnId`.
|
|
421
|
-
| `shouldActivateTableCellSelection` | Direct либо безопасная активация по Ctrl/Command без Shift/Alt.
|
|
471
|
+
| `pruneTableCellSelection`, `toggleTableCellSelection` | Детерминированный выбор координат `rowId + columnId`. |
|
|
472
|
+
| `shouldActivateTableCellSelection` | Direct либо безопасная активация по Ctrl/Command без Shift/Alt. |
|
|
422
473
|
| `resolveTableColumnFormattingContextFromODataColumn` | OData column -> pipeline context; numeric types force measure. |
|
|
423
474
|
| `createTableColumnVisibilityFromODataMetadata` | Стартовая visibility; code скрывается, если есть text-пара. |
|
|
424
475
|
| `createTableColumnsFromODataMetadata` | Генерация TanStack columns из metadata. |
|
|
@@ -430,7 +481,7 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
430
481
|
|
|
431
482
|
### `tree-table`
|
|
432
483
|
|
|
433
|
-
Файлы: [`tree-table/index.ts`](./src/tree-table/index.ts).
|
|
484
|
+
Файлы: [`tree-table/index.ts`](./src/tree-table/index.ts), документация включена в единый справочник [`table/README.mdx`](./src/table/README.mdx).
|
|
434
485
|
|
|
435
486
|
| API | Поведение |
|
|
436
487
|
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
|
|
@@ -442,7 +493,7 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
442
493
|
|
|
443
494
|
### `excel`
|
|
444
495
|
|
|
445
|
-
Файлы: [`excel/index.ts`](./src/excel/index.ts).
|
|
496
|
+
Файлы: [`excel/index.ts`](./src/excel/index.ts), подробный README: [`excel/README.mdx`](./src/excel/README.mdx).
|
|
446
497
|
|
|
447
498
|
| API | Поведение |
|
|
448
499
|
| -------------------------------- | --------------------------------------------------------------------- |
|
|
@@ -482,7 +533,7 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
482
533
|
|
|
483
534
|
### `xml`
|
|
484
535
|
|
|
485
|
-
Файл: [`xml/xml.ts`](./src/xml/xml.ts), тест: [`xml.test.ts`](./src/xml/xml.test.ts).
|
|
536
|
+
Файл: [`xml/xml.ts`](./src/xml/xml.ts), подробный README: [`xml/README.mdx`](./src/xml/README.mdx), тест: [`xml.test.ts`](./src/xml/xml.test.ts).
|
|
486
537
|
|
|
487
538
|
| API | Поведение |
|
|
488
539
|
| ---------------- | ----------------------------------------------------- |
|
|
@@ -510,7 +561,7 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
510
561
|
|
|
511
562
|
### `hooks`
|
|
512
563
|
|
|
513
|
-
Файлы: [`hooks/index.ts`](./src/hooks/index.ts).
|
|
564
|
+
Файлы: [`hooks/index.ts`](./src/hooks/index.ts), подробный README: [`hooks/README.mdx`](./src/hooks/README.mdx).
|
|
514
565
|
|
|
515
566
|
| API | Поведение |
|
|
516
567
|
| ----------------------- | -------------------------------------------------------------------------------------------- |
|
|
@@ -539,19 +590,20 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
539
590
|
|
|
540
591
|
### `media`
|
|
541
592
|
|
|
542
|
-
Файлы: [`media/index.ts`](./src/media/index.ts), тест: [`media.test.ts`](./src/media/media.test.ts).
|
|
593
|
+
Файлы: [`media/index.ts`](./src/media/index.ts), подробный README: [`media/README.mdx`](./src/media/README.mdx), тест: [`media.test.ts`](./src/media/media.test.ts).
|
|
543
594
|
|
|
544
|
-
| API
|
|
545
|
-
|
|
|
546
|
-
| `BREAKPOINTS_EM`, `Breakpoint`, `MediaMatches`
|
|
547
|
-
| `
|
|
548
|
-
| `
|
|
549
|
-
| `
|
|
550
|
-
| `
|
|
595
|
+
| API | Поведение |
|
|
596
|
+
| ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
|
|
597
|
+
| `BREAKPOINTS_EM`, `Breakpoint`, `MediaMatches` | Проектные брейкпоинты в `em`: mobile/tablet/laptop. |
|
|
598
|
+
| `useMediaQuery` | SSR-safe подписка на произвольный media query с настраиваемым fallback. |
|
|
599
|
+
| `useMatchMedia` | Singleton external store на `useSyncExternalStore`; учитывает изменение root `em`. |
|
|
600
|
+
| `ResponsiveMap`, `ResponsiveValue`, `isResponsiveMap`, `resolveResponsiveValue`, `resolveProps` | Responsive props с точным fallback-порядком по брейкпоинтам. |
|
|
601
|
+
| `getCurrentFontSize`, `getCurrentLineHeight`, `getControlHeight` | DOM font metrics с server/invalid-value fallback; line-height нормализуется через `16`. |
|
|
602
|
+
| `pxToEm` | Числовая строка `px / base` без суффикса `em`; при отсутствии base читается root font-size. |
|
|
551
603
|
|
|
552
604
|
### `context-menu`
|
|
553
605
|
|
|
554
|
-
Файлы: [`context-menu/index.ts`](./src/context-menu/index.ts), тесты: [`anchor.test.ts`](./src/context-menu/anchor.test.ts), [`state.test.ts`](./src/context-menu/state.test.ts).
|
|
606
|
+
Файлы: [`context-menu/index.ts`](./src/context-menu/index.ts), подробный README: [`context-menu/README.mdx`](./src/context-menu/README.mdx), тесты: [`anchor.test.ts`](./src/context-menu/anchor.test.ts), [`state.test.ts`](./src/context-menu/state.test.ts).
|
|
555
607
|
|
|
556
608
|
| API | Поведение |
|
|
557
609
|
| --------------------------------------------------------- | ---------------------------------------------------------------------------------- |
|
|
@@ -562,7 +614,7 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
562
614
|
|
|
563
615
|
### `notifications`
|
|
564
616
|
|
|
565
|
-
Файлы: [`notifications/index.ts`](./src/notifications/index.ts), тест: [`store.test.ts`](./src/notifications/store.test.ts).
|
|
617
|
+
Файлы: [`notifications/index.ts`](./src/notifications/index.ts), подробный README: [`notifications/README.mdx`](./src/notifications/README.mdx), тест: [`store.test.ts`](./src/notifications/store.test.ts).
|
|
566
618
|
|
|
567
619
|
| API | Поведение |
|
|
568
620
|
| -------------------------- | ------------------------------------------------------------------------------------------------- |
|
|
@@ -574,7 +626,7 @@ Pipeline — runtime форматирования ячейки. Он прини
|
|
|
574
626
|
|
|
575
627
|
### `pwa` и `virtualizer`
|
|
576
628
|
|
|
577
|
-
Файлы: [`pwa/index.ts`](./src/pwa/index.ts), README: [`pwa/README.
|
|
629
|
+
Файлы: [`pwa/index.ts`](./src/pwa/index.ts), подробный README: [`pwa/README.mdx`](./src/pwa/README.mdx); [`virtualizer/index.ts`](./src/virtualizer/index.ts), подробный README: [`virtualizer/README.mdx`](./src/virtualizer/README.mdx).
|
|
578
630
|
|
|
579
631
|
`pwa`:
|
|
580
632
|
|
|
@@ -595,22 +647,24 @@ Service worker runtime helpers живут в [`pwa/serviceWorker.ts`](./src/pwa/
|
|
|
595
647
|
|
|
596
648
|
### `query-client`
|
|
597
649
|
|
|
598
|
-
Файлы: [`query-client/index.ts`](./src/query-client/index.ts),
|
|
650
|
+
Файлы: [`query-client/index.ts`](./src/query-client/index.ts), единый подробный справочник: [`query-client/README.mdx`](./src/query-client/README.mdx). Раздел optimistic update теперь входит в этот документ.
|
|
599
651
|
|
|
600
|
-
| API | Поведение
|
|
601
|
-
| ------------------------------------------------------------------------------------------------------ |
|
|
602
|
-
| `createQueryClient` |
|
|
603
|
-
| `persistedQueryMeta`, `shouldPersistQuery`, `createReactQueryPersister`, `createIndexedDbQueryStorage` | Opt-in persistence справочников в IndexedDB.
|
|
604
|
-
| `
|
|
605
|
-
| `
|
|
652
|
+
| API | Поведение |
|
|
653
|
+
| ------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------- |
|
|
654
|
+
| `createQueryClient` | Создаёт настроенный QueryClient; singleton lifecycle обеспечивает host. |
|
|
655
|
+
| `persistedQueryMeta`, `shouldPersistQuery`, `createReactQueryPersister`, `createIndexedDbQueryStorage` | Opt-in persistence справочников в IndexedDB. |
|
|
656
|
+
| `configureQueryPersistenceProjectAdapter`, `getQueryPersistenceProjectAdapter` | Host namespace и buster для persistent cache. |
|
|
657
|
+
| `installReactQueryBroadcast`, `broadcastCacheEvent`, `setBroadcastFn` | Sync query cache и cache events между вкладками. |
|
|
658
|
+
| `sessionScopedQueryMeta`, `resetSessionScopedQueries`, `installSessionScopedQueryReset` | Очистка auth/session-dependent query локально и между вкладками. |
|
|
659
|
+
| `onMutateOptimistic`, `onErrorOptimistic`, `onSuccessOptimistic`, `onSettledOptimistic` | Helpers для точечного optimistic update. |
|
|
606
660
|
|
|
607
661
|
Поведение из тестов: persistence сохраняет только `meta.persist === true`, broadcast игнорирует невалидные сообщения и не зацикливает remote events, `onSettledOptimistic` по умолчанию invalidates с `refetchType: "none"`.
|
|
608
662
|
|
|
609
|
-
Тесты: [`queryClient.test.ts`](./src/query-client/queryClient.test.ts), [`persistence.test.ts`](./src/query-client/persistence.test.ts), [`broadcast.test.ts`](./src/query-client/broadcast.test.ts), [`broadcast.integration.test.ts`](./src/query-client/broadcast.integration.test.ts).
|
|
663
|
+
Тесты: [`queryClient.test.ts`](./src/query-client/queryClient.test.ts), [`persistence.test.ts`](./src/query-client/persistence.test.ts), [`broadcast.test.ts`](./src/query-client/broadcast.test.ts), [`broadcast.integration.test.ts`](./src/query-client/broadcast.integration.test.ts), [`sessionScoped.test.ts`](./src/query-client/sessionScoped.test.ts).
|
|
610
664
|
|
|
611
665
|
### `error` и `error-report`
|
|
612
666
|
|
|
613
|
-
Файлы: [`error/index.ts`](./src/error/index.ts), [`error-report/index.ts`](./src/error-report/index.ts).
|
|
667
|
+
Файлы: [`error/index.ts`](./src/error/index.ts), подробный README: [`error/README.mdx`](./src/error/README.mdx); [`error-report/index.ts`](./src/error-report/index.ts), подробный README: [`error-report/README.mdx`](./src/error-report/README.mdx).
|
|
614
668
|
|
|
615
669
|
`error`:
|
|
616
670
|
|
|
@@ -639,23 +693,23 @@ Service worker runtime helpers живут в [`pwa/serviceWorker.ts`](./src/pwa/
|
|
|
639
693
|
|
|
640
694
|
Файлы: [`array/index.ts`](./src/array/index.ts), подробный README: [`array/README.mdx`](./src/array/README.mdx), тесты: [`array.test.ts`](./src/array/array.test.ts), [`reorder.test.ts`](./src/array/reorder.test.ts).
|
|
641
695
|
|
|
642
|
-
| API | Поведение
|
|
643
|
-
| --------------------------------------------------- |
|
|
644
|
-
| `arrayGroupBy`, `arrayGroupByToArray` | Группировка по ключу, порядок элементов внутри группы сохраняется.
|
|
645
|
-
| `arrayToMap` | Map-object по первому встреченному значению ключа.
|
|
646
|
-
| `arrayUniqueBy` | Дедупликация по ключу без перестановки первого значения.
|
|
696
|
+
| API | Поведение |
|
|
697
|
+
| --------------------------------------------------- | ---------------------------------------------------------------------------- |
|
|
698
|
+
| `arrayGroupBy`, `arrayGroupByToArray` | Группировка по ключу, порядок элементов внутри группы сохраняется. |
|
|
699
|
+
| `arrayToMap` | Map-object по первому встреченному значению ключа. |
|
|
700
|
+
| `arrayUniqueBy` | Дедупликация по ключу без перестановки первого значения. |
|
|
647
701
|
| `arrayDeduplicate` | Дедупликация значений через семантику `Set` с сохранением первого вхождения. |
|
|
648
|
-
| `filterAndDeduplicateIds` | Оставляет только allowed ids, убирает пустые и дубли.
|
|
649
|
-
| `appendMissingIds` | Добавляет отсутствующие ids в конец базового списка.
|
|
650
|
-
| `pickExistingMapValues` | Значения `Map` в порядке keys, отсутствующие ключи пропускаются.
|
|
651
|
-
| `arraysEqual` | Строго по длине, порядку и ссылочным значениям.
|
|
652
|
-
| `moveItem`, `moveArrayItem`, `moveArrayItemByIndex` | Immutable reorder; некорректные индексы возвращают копию без перестановки.
|
|
653
|
-
| `normalizeObjects` | Trim key, отсекает пустые/дубли, по умолчанию shallow copy.
|
|
654
|
-
| `normalizeStringArray`, `addUnique` | Нормализация string ids.
|
|
702
|
+
| `filterAndDeduplicateIds` | Оставляет только allowed ids, убирает пустые и дубли. |
|
|
703
|
+
| `appendMissingIds` | Добавляет отсутствующие ids в конец базового списка. |
|
|
704
|
+
| `pickExistingMapValues` | Значения `Map` в порядке keys, отсутствующие ключи пропускаются. |
|
|
705
|
+
| `arraysEqual` | Строго по длине, порядку и ссылочным значениям. |
|
|
706
|
+
| `moveItem`, `moveArrayItem`, `moveArrayItemByIndex` | Immutable reorder; некорректные индексы возвращают копию без перестановки. |
|
|
707
|
+
| `normalizeObjects` | Trim key, отсекает пустые/дубли, по умолчанию shallow copy. |
|
|
708
|
+
| `normalizeStringArray`, `addUnique` | Нормализация string ids. |
|
|
655
709
|
|
|
656
710
|
### `utils`
|
|
657
711
|
|
|
658
|
-
Файлы: [`utils/index.ts`](./src/utils/index.ts), тесты: [`utils.test.ts`](./src/utils/utils.test.ts), [`keyboard.test.ts`](./src/utils/keyboard.test.ts), [`createLazyComponent.test.tsx`](./src/utils/createLazyComponent.test.tsx).
|
|
712
|
+
Файлы: [`utils/index.ts`](./src/utils/index.ts), подробный README: [`utils/README.mdx`](./src/utils/README.mdx), тесты: [`utils.test.ts`](./src/utils/utils.test.ts), [`keyboard.test.ts`](./src/utils/keyboard.test.ts), [`createLazyComponent.test.tsx`](./src/utils/createLazyComponent.test.tsx).
|
|
659
713
|
|
|
660
714
|
| API | Поведение |
|
|
661
715
|
| ------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
|
|
@@ -674,25 +728,25 @@ Service worker runtime helpers живут в [`pwa/serviceWorker.ts`](./src/pwa/
|
|
|
674
728
|
|
|
675
729
|
### `validators` и `types`
|
|
676
730
|
|
|
677
|
-
Файлы: [`validators/index.ts`](./src/validators/index.ts), [`types/index.ts`](./src/types/index.ts), тест: [`validators.test.ts`](./src/validators/validators.test.ts).
|
|
731
|
+
Файлы: [`validators/index.ts`](./src/validators/index.ts), подробный README: [`validators/README.mdx`](./src/validators/README.mdx); [`types/index.ts`](./src/types/index.ts), подробный README: [`types/README.mdx`](./src/types/README.mdx); тест: [`validators.test.ts`](./src/validators/validators.test.ts).
|
|
678
732
|
|
|
679
|
-
| API
|
|
680
|
-
|
|
|
681
|
-
| `isSafe`
|
|
682
|
-
| `isObject`, `isRecord`, `asRecord`, `isPlainObject`
|
|
683
|
-
| `IMAGE_EXTENSIONS`, `isImageExtension`
|
|
684
|
-
| `isDomReference`
|
|
733
|
+
| API | Поведение |
|
|
734
|
+
| -------------------------------------------------------------------------------------- | ----------------------------------------------------------- |
|
|
735
|
+
| `isSafe` | Type guard от `null/undefined`. |
|
|
736
|
+
| `isObject`, `isRecord`, `asRecord`, `isPlainObject` | Guards для object-like values; массивы не считаются record. |
|
|
737
|
+
| `IMAGE_EXTENSIONS`, `isImageExtension` | Проверка image extension без учета регистра. |
|
|
738
|
+
| `isDomReference` | Floating UI reference -> DOM `Element`. |
|
|
685
739
|
| `State`, `AbapBoolean`, `Primitive`, `BaseType`, `InputType`, `RangeType`, `RowRecord` | Общие технические типы. |
|
|
686
740
|
|
|
687
741
|
### `string-comparison`
|
|
688
742
|
|
|
689
|
-
Файл: [`string-comparison/compareStrings.ts`](./src/string-comparison/compareStrings.ts), тест: [`compareStrings.test.ts`](./src/string-comparison/compareStrings.test.ts).
|
|
743
|
+
Файл: [`string-comparison/compareStrings.ts`](./src/string-comparison/compareStrings.ts), подробный README: [`string-comparison/README.mdx`](./src/string-comparison/README.mdx), тест: [`compareStrings.test.ts`](./src/string-comparison/compareStrings.test.ts).
|
|
690
744
|
|
|
691
745
|
`compareStrings` использует фиксированный `Intl.Collator("ru-RU", { numeric: true, sensitivity: "base" })` и UTF-16 fallback. Используй для справочников и UI-списков вместо ad hoc `localeCompare`.
|
|
692
746
|
|
|
693
747
|
### `crypto` и `session-storage`
|
|
694
748
|
|
|
695
|
-
Файлы: [`crypto/index.ts`](./src/crypto/index.ts), подробный README: [`crypto/README.mdx`](./src/crypto/README.mdx); [`session-storage/index.ts`](./src/session-storage/index.ts).
|
|
749
|
+
Файлы: [`crypto/index.ts`](./src/crypto/index.ts), подробный README: [`crypto/README.mdx`](./src/crypto/README.mdx); [`session-storage/index.ts`](./src/session-storage/index.ts), подробный README: [`session-storage/README.mdx`](./src/session-storage/README.mdx).
|
|
696
750
|
|
|
697
751
|
| API | Поведение |
|
|
698
752
|
| -------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
|
|
@@ -705,7 +759,7 @@ Service worker runtime helpers живут в [`pwa/serviceWorker.ts`](./src/pwa/
|
|
|
705
759
|
|
|
706
760
|
### `presets`
|
|
707
761
|
|
|
708
|
-
Файл: [`presets/presets.ts`](./src/presets/presets.ts), тест: [`presets.test.ts`](./src/presets/presets.test.ts).
|
|
762
|
+
Файл: [`presets/presets.ts`](./src/presets/presets.ts), подробный README: [`presets/README.mdx`](./src/presets/README.mdx), тест: [`presets.test.ts`](./src/presets/presets.test.ts).
|
|
709
763
|
|
|
710
764
|
| API | Поведение |
|
|
711
765
|
| --------------------------- | ------------------------------------------------------------------------------------------ |
|
|
@@ -715,7 +769,7 @@ Service worker runtime helpers живут в [`pwa/serviceWorker.ts`](./src/pwa/
|
|
|
715
769
|
|
|
716
770
|
### `bounded-copy-stack`
|
|
717
771
|
|
|
718
|
-
Файл: [`bounded-copy-stack/boundedCopyStack.ts`](./src/bounded-copy-stack/boundedCopyStack.ts), тест: [`boundedCopyStack.test.ts`](./src/bounded-copy-stack/boundedCopyStack.test.ts).
|
|
772
|
+
Файл: [`bounded-copy-stack/boundedCopyStack.ts`](./src/bounded-copy-stack/boundedCopyStack.ts), подробный README: [`bounded-copy-stack/README.mdx`](./src/bounded-copy-stack/README.mdx), тест: [`boundedCopyStack.test.ts`](./src/bounded-copy-stack/boundedCopyStack.test.ts).
|
|
719
773
|
|
|
720
774
|
| API | Поведение |
|
|
721
775
|
| --------------------------------- | ----------------------------------------------------------------------------------------- |
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { _ as e, r as t, x as n } from "./array-D-_yMMUK.js";
|
|
2
2
|
import { i as r } from "./isRecord-DXDTW-jA.js";
|
|
3
3
|
import { uuidv4 as i } from "../crypto/index.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { c as u, d, h as f, l as p, n as ee, o as te, t as m, u as ne } from "./validate-BW-7BZy_.js";
|
|
4
|
+
import { Bt as a, Rt as o, Sn as s, _t as c, pn as l } from "./odata-service-CWkHASdw.js";
|
|
5
|
+
import { c as u, d, h as f, l as p, n as ee, o as te, t as m, u as ne } from "./validate-DyzojM0w.js";
|
|
7
6
|
import { t as re } from "./string-comparison-BKT7PXmq.js";
|
|
8
7
|
import { isSafe as ie } from "../validators/index.js";
|
|
9
8
|
import { compileTableFormula as ae } from "../formulas/index.js";
|
|
@@ -396,7 +395,7 @@ function lt(e) {
|
|
|
396
395
|
//#endregion
|
|
397
396
|
//#region src/formatters/number/isZeroValue.ts
|
|
398
397
|
function L(e) {
|
|
399
|
-
let t =
|
|
398
|
+
let t = o(e);
|
|
400
399
|
return typeof t == "number" ? t === 0 : typeof t == "bigint" && t === 0n;
|
|
401
400
|
}
|
|
402
401
|
//#endregion
|
|
@@ -530,7 +529,7 @@ function Nt(e, t) {
|
|
|
530
529
|
break;
|
|
531
530
|
}
|
|
532
531
|
}
|
|
533
|
-
return !n ||
|
|
532
|
+
return !n || o(e) === void 0 ? e : Pt(e, t);
|
|
534
533
|
}
|
|
535
534
|
return e;
|
|
536
535
|
}
|
|
@@ -820,14 +819,14 @@ var sn = Object.freeze({
|
|
|
820
819
|
});
|
|
821
820
|
function X(e, t, r) {
|
|
822
821
|
if (!ie(e)) return "";
|
|
823
|
-
let i =
|
|
822
|
+
let i = c(t.type);
|
|
824
823
|
if (i === "number") {
|
|
825
824
|
let t = r?.numberPresetName?.trim();
|
|
826
825
|
return V(e, t && d(t) ? t : sn.number);
|
|
827
826
|
}
|
|
828
827
|
if (i === "date") {
|
|
829
828
|
let t = r?.datePresetName?.trim(), n = t && s(t) ? t : sn.date;
|
|
830
|
-
return l(
|
|
829
|
+
return a(l(e), n);
|
|
831
830
|
}
|
|
832
831
|
return n(e);
|
|
833
832
|
}
|
|
@@ -1242,4 +1241,4 @@ function Gn(e, t) {
|
|
|
1242
1241
|
//#endregion
|
|
1243
1242
|
export { ut as $, G as A, ke as At, vt as B, ve as Bt, Wt as C, je as Ct, It as D, Me as Dt, Ft as E, w as Et, jt as F, _ as Ft, ht as G, he as Gt, yt as H, g as Ht, V as I, y as It, Ot as J, de as Jt, Ct as K, pe as Kt, gt as L, v as Lt, H as M, x as Mt, Mt as N, be as Nt, Bt as O, T as Ot, Nt as P, xe as Pt, At as Q, se as Qt, wt as R, b as Rt, qt as S, Ne as St, Ht as T, E as Tt, Dt as U, _e as Ut, Et as V, Se as Vt, Tt as W, me as Wt, kt as X, le as Xt, xt as Y, ue as Yt, St as Z, ce as Zt, Ut as _, j as _t, Vn as a, Qe as at, Kt as b, Je as bt, Dn as c, A as ct, un as d, Ke as dt, L as et, X as f, Ge as ft, Zt as g, Ye as gt, Qt as h, We as ht, Bn as i, Xe as it, W as j, Oe as jt, U as k, De as kt, En as l, Ve as lt, an as m, Ue as mt, Un as n, et as nt, Hn as o, $e as ot, on as p, M as pt, bt as q, fe as qt, Wn as r, Ze as rt, Mn as s, He as st, Gn as t, P as tt, Cn as u, N as ut, Y as v, qe as vt, Vt as w, S as wt, J as x, C as xt, Gt as y, k as yt, _t as z, ye as zt };
|
|
1244
1243
|
|
|
1245
|
-
//# sourceMappingURL=formatters-
|
|
1244
|
+
//# sourceMappingURL=formatters-D33Uh3si.js.map
|