r3ui-lib 1.3.10 → 1.3.12
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 +191 -0
- package/dist/r3ui-lib.css +1 -1
- package/dist/r3ui-lib.es.js +10784 -9303
- package/dist/r3ui-lib.umd.js +32 -32
- 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/createTableCommandScheduler.d.ts +29 -0
- package/dist/types/composables/table/createTableCommandScheduler.d.ts.map +1 -0
- package/dist/types/composables/table/createTableLifecycle.d.ts +118 -0
- package/dist/types/composables/table/createTableLifecycle.d.ts.map +1 -0
- package/dist/types/composables/table/createTableRebuildTransaction.d.ts +33 -0
- package/dist/types/composables/table/createTableRebuildTransaction.d.ts.map +1 -0
- package/dist/types/composables/table/createTableSession.d.ts +17 -0
- package/dist/types/composables/table/createTableSession.d.ts.map +1 -0
- package/dist/types/composables/table/createTableState.d.ts +109 -0
- package/dist/types/composables/table/createTableState.d.ts.map +1 -0
- package/dist/types/composables/table/createTabulatorAdapter.d.ts +27 -0
- package/dist/types/composables/table/createTabulatorAdapter.d.ts.map +1 -0
- package/dist/types/composables/table/useManagedRemoteTable.d.ts +134 -0
- package/dist/types/composables/table/useManagedRemoteTable.d.ts.map +1 -0
- package/dist/types/composables/table/useRemoteTable.d.ts +52 -27
- 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 +26 -19
- package/dist/types/composables/table/useTableDefault.d.ts.map +1 -1
- package/dist/types/main.d.ts +16 -7
- package/dist/types/main.d.ts.map +1 -1
- package/dist/types/types/table.d.ts +35 -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 +64 -4
- package/dist/types/utils/tableAdapter.d.ts.map +1 -1
- package/dist/types/utils/tableCancellation.d.ts.map +1 -1
- 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 +14 -8
- package/dist/types/utils/tableLoad.d.ts.map +1 -1
- package/dist/types/utils/tableOperation.d.ts +43 -0
- package/dist/types/utils/tableOperation.d.ts.map +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,197 @@
|
|
|
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.12-completion.1] - 2026-10-21
|
|
9
|
+
|
|
10
|
+
- Единая граница завершения связывает HTTP-запрос, результат DataLoader и Promise применения строк RowManager; ready и применённый контекст подтверждаются после движка.
|
|
11
|
+
- Текущий отменённый ответ завершает loading; новый обычный успешный запрос освобождает снимок прежней ошибки и разблокирует колонки.
|
|
12
|
+
- Ошибка применения строк допускает повтор; отмена нового запроса сохраняет возможность повторить предшествующую ошибку, поздние завершения не затрагивают нового владельца.
|
|
13
|
+
|
|
14
|
+
## [1.3.12-state.1] - 2026-10-21
|
|
15
|
+
|
|
16
|
+
- Единая реактивная модель стадии, снимка, ошибки, выбранного и применённого контекста; поздние завершения проверяют владельца перехода.
|
|
17
|
+
- Публичные status, error, canRetry и retry поддерживают повтор после ошибки подготовки, восстановления, фильтров и колонок; одновременные повторы разделяют одну попытку.
|
|
18
|
+
- Отключение во время подготовки сохраняет выбранный контекст, повторная готовность после ошибки разрешает восстановление того же экземпляра.
|
|
19
|
+
|
|
20
|
+
## [1.3.12-transaction.0] - 2026-10-21
|
|
21
|
+
|
|
22
|
+
- Единая внутренняя транзакция подготовки, передачи снимка и восстановления связывает исходную и новую сессии, поколение и revision.
|
|
23
|
+
- Отмена подготовки завершает ожидание без захвата отключённого экземпляра; поздние ошибки и завершения старого владельца не меняют новую транзакцию.
|
|
24
|
+
- Загрузка подписей использует полную проверку актуальности операции; текущие ошибки подготовки пробрасываются и допускают повтор.
|
|
25
|
+
|
|
26
|
+
## [1.3.12-session.0] - 2026-10-21
|
|
27
|
+
|
|
28
|
+
- Внутренняя сессия связывает команды и запросы с конкретным экземпляром таблицы. Отключение и замена отменяют ожидание, повторная готовность того же экземпляра сохраняет владельца.
|
|
29
|
+
- Внутренний адаптер Tabulator отвечает за снимки, колонки, загрузку, восстановление страницы и выбор строк; обращения к завершённой сессии запрещены.
|
|
30
|
+
- Table уведомляет владельца перед уничтожением экземпляра; снимок внутренней пересборки передаётся новому экземпляру.
|
|
31
|
+
|
|
32
|
+
## [1.3.12-scheduler.0] - 2026-10-21
|
|
33
|
+
|
|
34
|
+
- Внутренний планировщик завершает каждую команду фильтров, колонок и восстановления независимо от общей очереди.
|
|
35
|
+
- Уничтожение и вытеснение освобождают ожидающие команды; поздняя ошибка не меняет результат новой операции.
|
|
36
|
+
- Пауза KeepAlive отменяет текущую команду, повторная активация создаёт нового владельца загрузки.
|
|
37
|
+
|
|
38
|
+
## [1.3.12-operations.0] - 2026-10-21
|
|
39
|
+
|
|
40
|
+
### Added
|
|
41
|
+
|
|
42
|
+
- Единый `TableOperation`: вид, владелец, поколение, revision, контекст и связанный AbortSignal; общее отменяемое ожидание с обработкой поздних ошибок.
|
|
43
|
+
- Явные результаты `applied / cancelled / superseded` для управляемого применения фильтров, колонок и нового `restoreTableOperationData`. Старые void- и строковые обёртки сохранены.
|
|
44
|
+
- Транспорт получает операцию и сигнал, при отмене завершает ожидание без показа устаревшей ошибки. Отменённый результат колонок не подтверждает применение в диалоге.
|
|
45
|
+
|
|
46
|
+
### Fixed
|
|
47
|
+
|
|
48
|
+
- Запуск загрузки связывается с конкретной операцией; колонки после отменённого фильтра не наследуют его revision.
|
|
49
|
+
- Отмена колонок и восстановления освобождает ожидание сети и снимок; поздний ответ не меняет новые строки.
|
|
50
|
+
|
|
51
|
+
## [1.3.12-managed.0] - 2026-10-21
|
|
52
|
+
|
|
53
|
+
### Added
|
|
54
|
+
|
|
55
|
+
- `useManagedRemoteTable`: создание remote-таблицы, подключение контроллера, Vue lifecycle и injections с прикладными callbacks транспорта, подписей и контекста фильтров.
|
|
56
|
+
- Команда `applyColumns` сохраняет layout и восстанавливает фильтры, сортировку, страницу и выбранные строки; управляемый API публикует только состояние без изменяемого снимка.
|
|
57
|
+
|
|
58
|
+
### Fixed
|
|
59
|
+
|
|
60
|
+
- Повторная готовность одного экземпляра ожидает действующее восстановление. Новый экземпляр получает своего владельца; позднее завершение старого не освобождает новый снимок.
|
|
61
|
+
|
|
62
|
+
## [1.3.12-lifecycle.0] - 2026-10-21
|
|
63
|
+
|
|
64
|
+
### Added
|
|
65
|
+
|
|
66
|
+
- `createTableLifecycle`: общий контроллер готовности, контекста запросов, очереди применений и восстановления снимка. Прикладные URL, транспорт, преобразование ответов и представление ошибок передаются адаптером.
|
|
67
|
+
- `createTableRestoreOperation` и `waitForTablePreparation` для общего учёта актуальности восстановления и отменяемого ожидания справочников.
|
|
68
|
+
- Типизированный контекст применённых фильтров и отдельные режимы первоначальной загрузки через применение фильтра либо замену данных после подготовки.
|
|
69
|
+
|
|
70
|
+
### Fixed
|
|
71
|
+
|
|
72
|
+
- Завершение применения закрывает только исходное открытие диалога: повторно открытое окно с новым черновиком сохраняется, включая применение из очереди до готовности таблицы. Изменение черновика в том же окне также сохраняет диалог открытым.
|
|
73
|
+
|
|
74
|
+
## [1.3.11-filter-completion.0] - 2026-10-20
|
|
75
|
+
|
|
76
|
+
### Fixed
|
|
77
|
+
|
|
78
|
+
- Применение фильтров ожидает фактический результат загрузки: диалог закрывается только после успешной актуальной операции, ошибки пробрасываются владельцу.
|
|
79
|
+
- Колонки без `field` не передаются в `showColumn` и `hideColumn`.
|
|
80
|
+
- Оболочка фильтров передаёт Promise владельца вместо преждевременного закрытия диалога.
|
|
81
|
+
|
|
82
|
+
### Added
|
|
83
|
+
|
|
84
|
+
- Необязательный `TableFilterApplyOperation` с `signal` и `isCurrent`: отмена освобождает ожидание старой сети, поздние ответы не завершают новое применение.
|
|
85
|
+
|
|
86
|
+
## [1.3.11-column-editor.0] - 2026-10-20
|
|
87
|
+
|
|
88
|
+
### Fixed
|
|
89
|
+
|
|
90
|
+
- Сырые `tableOptions.columns` и `tableColumns` имеют согласованный тип `TableColumnDefinition[]`, включая запись через callback и публичный alias владельца.
|
|
91
|
+
|
|
92
|
+
### Added
|
|
93
|
+
|
|
94
|
+
- `editorColumns` и `applyEditorColumns`: отдельная подготовленная проекция редактора и применение видимости к полным сырым определениям без потери служебных колонок и callbacks.
|
|
95
|
+
- `toTableEditorColumns` для общей подготовки полей, заголовков и видимости редактора.
|
|
96
|
+
|
|
97
|
+
## [1.3.11-column-types.0] - 2026-10-20
|
|
98
|
+
|
|
99
|
+
### Changed
|
|
100
|
+
|
|
101
|
+
- Граница `useTableDefault` использует типы определений колонок, входного layout и options вместо `any[]`; `handleColumnsChangedKey` и `tableOptionsKey` согласованы с владельцем.
|
|
102
|
+
- Типы сохраняют колонки без `field`, необязательные title/visible и callback-поля. Runtime-проверки storage и черновика сохраняются.
|
|
103
|
+
- Упакованный контракт проверяет неверные поля, видимость и размеры через публичные функции и injection-ключи.
|
|
104
|
+
|
|
105
|
+
## [1.3.11-column-draft.0] - 2026-10-20
|
|
106
|
+
|
|
107
|
+
### Changed
|
|
108
|
+
|
|
109
|
+
- `EditTableColumns` остаётся единственным владельцем черновика: внутренний диалог больше не дублирует массив колонок, watchers и обработчики флажков.
|
|
110
|
+
- Контракты публичных обёрток и экспортируемого `useTableColumns` сохранены; выбор всех и отдельных колонок проверяется реальными кликами.
|
|
111
|
+
|
|
112
|
+
## [1.3.11-column-dialog.0] - 2026-10-20
|
|
113
|
+
|
|
114
|
+
### Changed
|
|
115
|
+
|
|
116
|
+
- Внутренний `TableColumnsDialog` объединяет разметку и управление диалогом обеих публичных обёрток. Их имена, props, события и RU/EN defaults сохранены.
|
|
117
|
+
- Кнопка `TableColumnsModal` получает доступное имя из `title`, как и `TableColumnsButton`.
|
|
118
|
+
|
|
119
|
+
## [1.3.11-column-apply-context.0] - 2026-10-20
|
|
120
|
+
|
|
121
|
+
### Fixed
|
|
122
|
+
|
|
123
|
+
- Деактивация KeepAlive и смена `applyContext` отменяют UI-результат применения: поздние resolve, reject и finally не затрагивают новый диалог.
|
|
124
|
+
- Русский текст ошибки по умолчанию в `TableColumnsModal`.
|
|
125
|
+
|
|
126
|
+
### Added
|
|
127
|
+
|
|
128
|
+
- `applyContext` у компонентов колонок и второй аргумент `applyColumns`: `TableColumnApplyOperation` с `signal` и `isCurrent()`. Асинхронный callback проверяет актуальность перед своей записью; библиотека не откатывает его побочные эффекты.
|
|
129
|
+
|
|
130
|
+
## [1.3.11-column-apply.1] - 2026-10-20
|
|
131
|
+
|
|
132
|
+
### Changed
|
|
133
|
+
|
|
134
|
+
- `TableColumnsButton` и `TableColumnsModal` принимают обязательный callback `applyColumns` вместо прямого изменения `tableOptions`. Существующие события служат уведомлениями после успешного callback; обработчики сохранения нужно перенести в callback.
|
|
135
|
+
- Во время применения блокируются повторные действия. При ошибке сохраняются диалог и черновик, отображается `applyErrorText` и отправляется `apply-error` с причиной.
|
|
136
|
+
|
|
137
|
+
## [1.3.11-column-storage.0] - 2026-10-20
|
|
138
|
+
|
|
139
|
+
### Fixed
|
|
140
|
+
|
|
141
|
+
- Колонки без `field` сохраняют позиции из актуальных определений при восстановлении layout.
|
|
142
|
+
- Настройки колонок проверяются до записи: повторные поля, некорректные размеры и видимость отклоняются.
|
|
143
|
+
|
|
144
|
+
### Added
|
|
145
|
+
|
|
146
|
+
- `normalizeStoredColumnLayout` и `restoreStoredTableColumns`: типизированное хранение только layout с чтением прежних записей; заголовки и callbacks не сериализуются.
|
|
147
|
+
|
|
148
|
+
## [1.3.11-column-layout.0] - 2026-10-20
|
|
149
|
+
|
|
150
|
+
### Fixed
|
|
151
|
+
|
|
152
|
+
- Применение видимости сохраняет фактические порядок и ширину колонок Tabulator; флажки черновика имеют приоритет.
|
|
153
|
+
- Загрузка настроек восстанавливает сохранённый порядок с актуальными определениями колонок, включая старые записи со строковой шириной.
|
|
154
|
+
- При скрытии колонки её ширина остаётся в storage.
|
|
155
|
+
|
|
156
|
+
### Added
|
|
157
|
+
|
|
158
|
+
- Чистая функция `applyColumnVisibility` для общих и прикладных адаптеров.
|
|
159
|
+
|
|
160
|
+
## [1.3.11-table-contract.4] - 2026-10-20
|
|
161
|
+
|
|
162
|
+
### Fixed
|
|
163
|
+
|
|
164
|
+
- Публичный тип колонок использует относительные импорты, без зависимости от Nuxt alias.
|
|
165
|
+
- `tableColumns` использует `tableOptions.columns` как единый источник, включая загрузку сохранённых настроек и пересоздание таблицы.
|
|
166
|
+
- Редактор колонок изолирует черновик до применения и сбрасывает отменённые изменения при открытии.
|
|
167
|
+
|
|
168
|
+
## [1.3.11-table-contract.2] - 2026-10-20
|
|
169
|
+
|
|
170
|
+
### Fixed
|
|
171
|
+
|
|
172
|
+
- Нормализация снимка учитывает `width: null` у скрытых неизмеренных колонок Tabulator; ширина не сохраняется до измерения.
|
|
173
|
+
- Сценарий проверяется на настоящем Tabulator из собранного npm-пакета.
|
|
174
|
+
|
|
175
|
+
## [1.3.11-table-contract.1] - 2026-10-20
|
|
176
|
+
|
|
177
|
+
### Fixed
|
|
178
|
+
|
|
179
|
+
- `R3uiTableInstance` использует штатные сигнатуры Tabulator, включая полные определения колонок и допустимые результаты методов.
|
|
180
|
+
- Проверка типов npm-пакета включает присвоение настоящего Tabulator и вызов `setColumns` с title, visible и formatter.
|
|
181
|
+
|
|
182
|
+
### Added
|
|
183
|
+
|
|
184
|
+
- Общий `captureTableSnapshot` и `normalizeTableColumnLayout`: положительный целый размер страницы, независимые массивы снимка и сохранение layout только для колонок с field.
|
|
185
|
+
- Политики resetContext, resetPage, includeSelection и явный layout сохраняют различия приложений.
|
|
186
|
+
|
|
187
|
+
## [1.3.11-table-contract.0] - 2026-10-20
|
|
188
|
+
|
|
189
|
+
### Added
|
|
190
|
+
|
|
191
|
+
- Общий публичный контракт `R3uiTableInstance` и проверка `assertR3uiTableInstance` для remote-таблиц.
|
|
192
|
+
|
|
193
|
+
### Changed
|
|
194
|
+
|
|
195
|
+
- `useTableDefault` хранит экземпляр в `shallowRef<R3uiTableInstance | null>`: до готовности таблицы значение равно `null`, экземпляр не оборачивается в новый Vue proxy.
|
|
196
|
+
- `useRemoteTable.handleTableReady` принимает `unknown`, проверяет готовый экземпляр перед присваиванием и поддерживает очистку через `null` без загрузки данных.
|
|
197
|
+
- Типы inject и восстановления таблицы используют общий контракт. Публичные Promise-методы Tabulator не меняются.
|
|
198
|
+
|
|
8
199
|
## [1.3.10-cancelled.3] - 2026-10-19
|
|
9
200
|
|
|
10
201
|
### Fixed
|