r3ui-lib 1.3.9 → 1.3.11
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/CHANGELOG.md +163 -0
- package/dist/r3ui-lib.css +1 -1
- package/dist/r3ui-lib.es.js +7374 -6910
- package/dist/r3ui-lib.umd.js +32 -32
- package/dist/types/components/forms/BooleanCheckbox.vue.d.ts +1 -1
- package/dist/types/components/forms/BooleanCheckbox.vue.d.ts.map +1 -1
- package/dist/types/components/modals/TableFilterModalShell.vue.d.ts +1 -1
- package/dist/types/components/modals/TableFilterModalShell.vue.d.ts.map +1 -1
- package/dist/types/components/tables/EditTableColumns.vue.d.ts +4 -0
- package/dist/types/components/tables/EditTableColumns.vue.d.ts.map +1 -1
- package/dist/types/components/tables/Table.vue.d.ts.map +1 -1
- package/dist/types/components/tables/TableColumnsButton.vue.d.ts +8 -20
- package/dist/types/components/tables/TableColumnsButton.vue.d.ts.map +1 -1
- package/dist/types/components/tables/TableColumnsDialog.vue.d.ts +12 -0
- package/dist/types/components/tables/TableColumnsDialog.vue.d.ts.map +1 -0
- package/dist/types/components/tables/TableColumnsModal.vue.d.ts +8 -20
- package/dist/types/components/tables/TableColumnsModal.vue.d.ts.map +1 -1
- package/dist/types/components/tables/tableColumnsDialog.types.d.ts +26 -0
- package/dist/types/components/tables/tableColumnsDialog.types.d.ts.map +1 -0
- package/dist/types/composables/table/useRemoteTable.d.ts +56 -32
- package/dist/types/composables/table/useRemoteTable.d.ts.map +1 -1
- package/dist/types/composables/table/useTableColumnApply.d.ts +11 -0
- package/dist/types/composables/table/useTableColumnApply.d.ts.map +1 -0
- package/dist/types/composables/table/useTableColumns.d.ts +6 -0
- package/dist/types/composables/table/useTableColumns.d.ts.map +1 -1
- package/dist/types/composables/table/useTableColumnsEnhanced.d.ts +4 -0
- package/dist/types/composables/table/useTableColumnsEnhanced.d.ts.map +1 -1
- package/dist/types/composables/table/useTableColumnsIntegration.d.ts +4 -0
- package/dist/types/composables/table/useTableColumnsIntegration.d.ts.map +1 -1
- package/dist/types/composables/table/useTableDefault.d.ts +20 -18
- package/dist/types/composables/table/useTableDefault.d.ts.map +1 -1
- package/dist/types/main.d.ts +12 -9
- package/dist/types/main.d.ts.map +1 -1
- package/dist/types/types/table.d.ts +34 -2
- package/dist/types/types/table.d.ts.map +1 -1
- package/dist/types/types/tableInjectKeys.d.ts +14 -12
- package/dist/types/types/tableInjectKeys.d.ts.map +1 -1
- package/dist/types/types/tableInstance.d.ts +10 -0
- package/dist/types/types/tableInstance.d.ts.map +1 -0
- package/dist/types/utils/tableAdapter.d.ts +84 -0
- package/dist/types/utils/tableAdapter.d.ts.map +1 -0
- package/dist/types/utils/tableCancellation.d.ts +16 -0
- package/dist/types/utils/tableCancellation.d.ts.map +1 -0
- package/dist/types/utils/tableColumnStorage.d.ts +16 -0
- package/dist/types/utils/tableColumnStorage.d.ts.map +1 -0
- package/dist/types/utils/tableLoad.d.ts +13 -0
- package/dist/types/utils/tableLoad.d.ts.map +1 -0
- package/package.json +3 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,169 @@
|
|
|
5
5
|
Формат основан на [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
и этот проект придерживается [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.3.11-filter-completion.0] - 2026-10-20
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- Применение фильтров ожидает фактический результат загрузки: диалог закрывается только после успешной актуальной операции, ошибки пробрасываются владельцу.
|
|
13
|
+
- Колонки без `field` не передаются в `showColumn` и `hideColumn`.
|
|
14
|
+
- Оболочка фильтров передаёт Promise владельца вместо преждевременного закрытия диалога.
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- Необязательный `TableFilterApplyOperation` с `signal` и `isCurrent`: отмена освобождает ожидание старой сети, поздние ответы не завершают новое применение.
|
|
19
|
+
|
|
20
|
+
## [1.3.11-column-editor.0] - 2026-10-20
|
|
21
|
+
|
|
22
|
+
### Fixed
|
|
23
|
+
|
|
24
|
+
- Сырые `tableOptions.columns` и `tableColumns` имеют согласованный тип `TableColumnDefinition[]`, включая запись через callback и публичный alias владельца.
|
|
25
|
+
|
|
26
|
+
### Added
|
|
27
|
+
|
|
28
|
+
- `editorColumns` и `applyEditorColumns`: отдельная подготовленная проекция редактора и применение видимости к полным сырым определениям без потери служебных колонок и callbacks.
|
|
29
|
+
- `toTableEditorColumns` для общей подготовки полей, заголовков и видимости редактора.
|
|
30
|
+
|
|
31
|
+
## [1.3.11-column-types.0] - 2026-10-20
|
|
32
|
+
|
|
33
|
+
### Changed
|
|
34
|
+
|
|
35
|
+
- Граница `useTableDefault` использует типы определений колонок, входного layout и options вместо `any[]`; `handleColumnsChangedKey` и `tableOptionsKey` согласованы с владельцем.
|
|
36
|
+
- Типы сохраняют колонки без `field`, необязательные title/visible и callback-поля. Runtime-проверки storage и черновика сохраняются.
|
|
37
|
+
- Упакованный контракт проверяет неверные поля, видимость и размеры через публичные функции и injection-ключи.
|
|
38
|
+
|
|
39
|
+
## [1.3.11-column-draft.0] - 2026-10-20
|
|
40
|
+
|
|
41
|
+
### Changed
|
|
42
|
+
|
|
43
|
+
- `EditTableColumns` остаётся единственным владельцем черновика: внутренний диалог больше не дублирует массив колонок, watchers и обработчики флажков.
|
|
44
|
+
- Контракты публичных обёрток и экспортируемого `useTableColumns` сохранены; выбор всех и отдельных колонок проверяется реальными кликами.
|
|
45
|
+
|
|
46
|
+
## [1.3.11-column-dialog.0] - 2026-10-20
|
|
47
|
+
|
|
48
|
+
### Changed
|
|
49
|
+
|
|
50
|
+
- Внутренний `TableColumnsDialog` объединяет разметку и управление диалогом обеих публичных обёрток. Их имена, props, события и RU/EN defaults сохранены.
|
|
51
|
+
- Кнопка `TableColumnsModal` получает доступное имя из `title`, как и `TableColumnsButton`.
|
|
52
|
+
|
|
53
|
+
## [1.3.11-column-apply-context.0] - 2026-10-20
|
|
54
|
+
|
|
55
|
+
### Fixed
|
|
56
|
+
|
|
57
|
+
- Деактивация KeepAlive и смена `applyContext` отменяют UI-результат применения: поздние resolve, reject и finally не затрагивают новый диалог.
|
|
58
|
+
- Русский текст ошибки по умолчанию в `TableColumnsModal`.
|
|
59
|
+
|
|
60
|
+
### Added
|
|
61
|
+
|
|
62
|
+
- `applyContext` у компонентов колонок и второй аргумент `applyColumns`: `TableColumnApplyOperation` с `signal` и `isCurrent()`. Асинхронный callback проверяет актуальность перед своей записью; библиотека не откатывает его побочные эффекты.
|
|
63
|
+
|
|
64
|
+
## [1.3.11-column-apply.1] - 2026-10-20
|
|
65
|
+
|
|
66
|
+
### Changed
|
|
67
|
+
|
|
68
|
+
- `TableColumnsButton` и `TableColumnsModal` принимают обязательный callback `applyColumns` вместо прямого изменения `tableOptions`. Существующие события служат уведомлениями после успешного callback; обработчики сохранения нужно перенести в callback.
|
|
69
|
+
- Во время применения блокируются повторные действия. При ошибке сохраняются диалог и черновик, отображается `applyErrorText` и отправляется `apply-error` с причиной.
|
|
70
|
+
|
|
71
|
+
## [1.3.11-column-storage.0] - 2026-10-20
|
|
72
|
+
|
|
73
|
+
### Fixed
|
|
74
|
+
|
|
75
|
+
- Колонки без `field` сохраняют позиции из актуальных определений при восстановлении layout.
|
|
76
|
+
- Настройки колонок проверяются до записи: повторные поля, некорректные размеры и видимость отклоняются.
|
|
77
|
+
|
|
78
|
+
### Added
|
|
79
|
+
|
|
80
|
+
- `normalizeStoredColumnLayout` и `restoreStoredTableColumns`: типизированное хранение только layout с чтением прежних записей; заголовки и callbacks не сериализуются.
|
|
81
|
+
|
|
82
|
+
## [1.3.11-column-layout.0] - 2026-10-20
|
|
83
|
+
|
|
84
|
+
### Fixed
|
|
85
|
+
|
|
86
|
+
- Применение видимости сохраняет фактические порядок и ширину колонок Tabulator; флажки черновика имеют приоритет.
|
|
87
|
+
- Загрузка настроек восстанавливает сохранённый порядок с актуальными определениями колонок, включая старые записи со строковой шириной.
|
|
88
|
+
- При скрытии колонки её ширина остаётся в storage.
|
|
89
|
+
|
|
90
|
+
### Added
|
|
91
|
+
|
|
92
|
+
- Чистая функция `applyColumnVisibility` для общих и прикладных адаптеров.
|
|
93
|
+
|
|
94
|
+
## [1.3.11-table-contract.4] - 2026-10-20
|
|
95
|
+
|
|
96
|
+
### Fixed
|
|
97
|
+
|
|
98
|
+
- Публичный тип колонок использует относительные импорты, без зависимости от Nuxt alias.
|
|
99
|
+
- `tableColumns` использует `tableOptions.columns` как единый источник, включая загрузку сохранённых настроек и пересоздание таблицы.
|
|
100
|
+
- Редактор колонок изолирует черновик до применения и сбрасывает отменённые изменения при открытии.
|
|
101
|
+
|
|
102
|
+
## [1.3.11-table-contract.2] - 2026-10-20
|
|
103
|
+
|
|
104
|
+
### Fixed
|
|
105
|
+
|
|
106
|
+
- Нормализация снимка учитывает `width: null` у скрытых неизмеренных колонок Tabulator; ширина не сохраняется до измерения.
|
|
107
|
+
- Сценарий проверяется на настоящем Tabulator из собранного npm-пакета.
|
|
108
|
+
|
|
109
|
+
## [1.3.11-table-contract.1] - 2026-10-20
|
|
110
|
+
|
|
111
|
+
### Fixed
|
|
112
|
+
|
|
113
|
+
- `R3uiTableInstance` использует штатные сигнатуры Tabulator, включая полные определения колонок и допустимые результаты методов.
|
|
114
|
+
- Проверка типов npm-пакета включает присвоение настоящего Tabulator и вызов `setColumns` с title, visible и formatter.
|
|
115
|
+
|
|
116
|
+
### Added
|
|
117
|
+
|
|
118
|
+
- Общий `captureTableSnapshot` и `normalizeTableColumnLayout`: положительный целый размер страницы, независимые массивы снимка и сохранение layout только для колонок с field.
|
|
119
|
+
- Политики resetContext, resetPage, includeSelection и явный layout сохраняют различия приложений.
|
|
120
|
+
|
|
121
|
+
## [1.3.11-table-contract.0] - 2026-10-20
|
|
122
|
+
|
|
123
|
+
### Added
|
|
124
|
+
|
|
125
|
+
- Общий публичный контракт `R3uiTableInstance` и проверка `assertR3uiTableInstance` для remote-таблиц.
|
|
126
|
+
|
|
127
|
+
### Changed
|
|
128
|
+
|
|
129
|
+
- `useTableDefault` хранит экземпляр в `shallowRef<R3uiTableInstance | null>`: до готовности таблицы значение равно `null`, экземпляр не оборачивается в новый Vue proxy.
|
|
130
|
+
- `useRemoteTable.handleTableReady` принимает `unknown`, проверяет готовый экземпляр перед присваиванием и поддерживает очистку через `null` без загрузки данных.
|
|
131
|
+
- Типы inject и восстановления таблицы используют общий контракт. Публичные Promise-методы Tabulator не меняются.
|
|
132
|
+
|
|
133
|
+
## [1.3.10-cancelled.3] - 2026-10-19
|
|
134
|
+
|
|
135
|
+
### Fixed
|
|
136
|
+
|
|
137
|
+
- Ошибка старого запроса, включая переход через микрозадачу, проверяется перед показом `dataLoadError` и не выключает индикатор новой загрузки.
|
|
138
|
+
- `restoreTableData` использует исход конкретной загрузки Table: ошибка пробрасывается, отмена возвращает `cancelled`, последующие шаги выполняются только после применения данных.
|
|
139
|
+
- Публичные `replaceData` и `setPage` сохраняют Promise-контракт установленного Tabulator. `false` из `ajaxResponse` — расширение r3ui-lib, отменяющее применение ответа.
|
|
140
|
+
|
|
141
|
+
## [1.3.10-cancelled.2] - 2026-10-19
|
|
142
|
+
|
|
143
|
+
### Fixed
|
|
144
|
+
|
|
145
|
+
- Ошибка `ajaxResponse`, устаревшая после начала нового запроса внутри callback, больше не выключает его индикатор и не вызывает `dataLoadError`. Актуальные ошибки пробрасываются.
|
|
146
|
+
|
|
147
|
+
### Added
|
|
148
|
+
|
|
149
|
+
- Общие чистые функции `mergeColumnLayout`, `createSnapshotOwner`, `restoreTableData` и структурные типы адаптера без зависимости от Nuxt.
|
|
150
|
+
- Проверки общих функций и их публичных типов из tarball в `test:packed-table`.
|
|
151
|
+
|
|
152
|
+
## [1.3.10-cancelled.1] - 2026-10-19
|
|
153
|
+
|
|
154
|
+
### Fixed
|
|
155
|
+
|
|
156
|
+
- `Table` проверяет принадлежность ответа запросу перед `ajaxResponse` и после callback: устаревший ответ или ошибка не меняют индикатор, строки и пагинацию нового запроса.
|
|
157
|
+
- Обработка ответа принадлежит конкретному экземпляру таблицы и сохраняется при обновлении `ajaxResponse`; поддержан стандартный транспорт Tabulator.
|
|
158
|
+
|
|
159
|
+
### Added
|
|
160
|
+
|
|
161
|
+
- Публичные типы `RemoteTablePage`, `RemoteTableResponse` и поддержка `false` в `RemoteTableAjaxTransformer`.
|
|
162
|
+
- `npm run test:packed-table` — сборка, проверка компонента из tarball с настоящим Tabulator и проверка публичных типов пакета.
|
|
163
|
+
|
|
164
|
+
## [1.3.10-cancelled.0] - 2026-10-19
|
|
165
|
+
|
|
166
|
+
### Fixed
|
|
167
|
+
|
|
168
|
+
- `Table` — `false` из `ajaxResponse` отменяет ответ до разбора remote-пагинации: строки и счётчики сохраняются, `dataLoaded` и `dataLoadError` не вызываются, индикатор текущей загрузки завершается.
|
|
169
|
+
- Обновление `ajaxResponse` сохраняет обработку устаревших запросов; обычные ответы и ошибки проходят прежнюю цепочку Tabulator.
|
|
170
|
+
|
|
8
171
|
## [1.3.3] - 2026-09-09
|
|
9
172
|
|
|
10
173
|
### Added
|