@nxgt/material-vue 0.25.2 → 0.26.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/CHANGELOG.md +22 -0
- package/README.md +1 -1
- package/dist/{Button-C1aaI0Gw.js → Button-16J7vTpE.js} +1 -1
- package/dist/{HoverCardTrigger-JtHn0IFQ.js → HoverCardTrigger-C41002JS.js} +2 -2
- package/dist/{camera-BacVyXl0.js → camera-DvKuqT4L.js} +4 -4
- package/dist/{components-DRBKkOqk.js → components-CCWod7cJ.js} +10461 -10194
- package/dist/components.js +8 -8
- package/dist/composables.js +2 -2
- package/dist/dnd.js +1 -1
- package/dist/{form-scope-VxlJuvFe.js → form-scope-x-7TYn2s.js} +1 -1
- package/dist/{i18n-provider-D0oYv0XS.js → i18n-provider-CaaZCmaR.js} +1 -1
- package/dist/i18n.js +4 -4
- package/dist/{icon-button-B2FQtIHS.js → icon-button-CDdNsZuZ.js} +1 -1
- package/dist/lib/components/ui/collections/data-table/data-table-server-footer.vue.d.ts +35 -0
- package/dist/lib/components/ui/collections/data-table/data-table.vue.d.ts +18 -30
- package/dist/lib/components/ui/collections/data-table/index.d.ts +3 -1
- package/dist/lib/components/ui/collections/data-table/partials/data-table-body.vue.d.ts +4 -0
- package/dist/lib/components/ui/collections/data-table/partials/data-table-page-control.vue.d.ts +15 -0
- package/dist/lib/components/ui/collections/data-table/partials/data-table-row.vue.d.ts +31 -0
- package/dist/lib/components/ui/collections/data-table/types.d.ts +66 -0
- package/dist/lib/components/ui/collections/data-table/use-data-table.d.ts +13 -3
- package/dist/lib/components/ui/fields/contacts/consts.d.ts +1 -1
- package/dist/lib/i18n/resources/en/en.d.ts +5 -0
- package/dist/lib/i18n/resources/en/material.json.d.ts +6 -1
- package/dist/lib/i18n/resources/fr/fr.d.ts +5 -0
- package/dist/lib/i18n/resources/fr/material.json.d.ts +6 -1
- package/dist/lib/i18n/resources/resources.d.ts +10 -0
- package/dist/lib/i18n/translator.d.ts +1 -1
- package/dist/lib/nuxt/component-names.d.ts +1 -1
- package/dist/lib.js +2 -2
- package/dist/main.js +17 -17
- package/dist/map.js +4 -4
- package/dist/material-vue.css +1 -1
- package/dist/{pdf-outline-sidebar-jJfhNjnN.js → pdf-outline-sidebar-D3vq2qfS.js} +2 -2
- package/dist/{pdf-page-BW1hXzPu.js → pdf-page-BrJbyjQj.js} +1 -1
- package/dist/{pdf-page-list-D277RtWS.js → pdf-page-list-BCgYEszV.js} +2 -2
- package/dist/{pdf-reader-BReUTsn_.js → pdf-reader-BAzevSJU.js} +8 -8
- package/dist/{pdf-sidebar-Bk6PowY1.js → pdf-sidebar-DSh2Mend.js} +3 -3
- package/dist/{pdf-thumbnail-sidebar-BcNDFsks.js → pdf-thumbnail-sidebar-D_EMcbKF.js} +3 -3
- package/dist/{pdf-toolbar-CHjaMhH9.js → pdf-toolbar-BcL7HlfS.js} +4 -4
- package/dist/pdf.js +2 -2
- package/dist/{sortable-provider-C83VBfGl.js → sortable-provider-DMpmM7Ke.js} +2 -2
- package/dist/{stored-language-CC_vdcCN.js → stored-language-Bxhsx4iB.js} +12 -2
- package/dist/{stx-player-BMQ1D2Li.js → stx-player-MldK_ZAZ.js} +17 -17
- package/dist/{translator-B-X_1taI.js → translator-CLI_7Crg.js} +1 -1
- package/dist/{use-heading-spy-C_ySuvTl.js → use-heading-spy-VPuFj2Gt.js} +1 -1
- package/dist/{use-material-translation-B6sIk0mF.js → use-material-translation-CONqD9wJ.js} +3 -3
- package/docs/components/data-table-filter-and-lists.md +173 -5
- package/docs/roadmap.md +6 -0
- package/lib/nuxt/component-names.ts +1 -0
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# @nxgt/material-vue
|
|
2
2
|
|
|
3
|
+
## 0.26.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#431](https://github.com/softistx/nxgt-material/pull/431) [`bd58a6f`](https://github.com/softistx/nxgt-material/commit/bd58a6f67bdc25d4b4d0d7d88c52784869ad1529) Thanks [@SteveGT96](https://github.com/SteveGT96)! - `DataTable` renders server-side data: one page from a loader, with the query in the URL. Everything is opt-in; a table that sets none of the new props renders and behaves as before.
|
|
8
|
+
|
|
9
|
+
- `manual`: `data` is one server page, rendered as given — no client paging, sorting or filtering — and the footer becomes `DataTableServerFooter` (exported).
|
|
10
|
+
- `pagination={{ totalCount, offset, previous, next }}`: the server footer's range ("41–60 of 133", `material.table.pagination.range`) and Previous / Next, each an href (a real link, `rel="prev"` / `rel="next"`, that works with no JavaScript) or a callback (a button); disabled when absent and while `loading`.
|
|
11
|
+
- Controlled sorting: `sorting` + `onSortingChange(sorting)` in React, `v-model:sorting` in Vue. The headers show the sorting they are given; the callback receives the new `SortingState`, not an updater.
|
|
12
|
+
- `getRowId(row, index)` and controlled selection by id: `rowSelection` + `onRowSelectionChange(selection)` in React, `v-model:row-selection` in Vue. Ids of other pages are kept, and the server footer counts them all.
|
|
13
|
+
- `getRowHref(row)`: the first data cell becomes a link to the row's page, and a click anywhere else on the row (but on a control, in a portal, or at the end of a text selection) follows it. `onRowClick(row, event)` (`@row-click` in Vue) makes the row focusable and activatable with Enter.
|
|
14
|
+
- `linkComponent`: the link rendered for row and page links, given `href` (wrap React Router's `Link` or vue-router's `RouterLink`, which take `to`). Default: a plain `<a>`.
|
|
15
|
+
- `footer`: a render function (React, Vue) or the `#footer` slot (Vue) replaces the footer; `footer={false}` removes it.
|
|
16
|
+
- New `material.table.pagination.*` strings, in English and French: `label`, `range`, `range-open`, `total`, `selected`.
|
|
17
|
+
|
|
18
|
+
`@nxgt/material-core` gains `/row-activation` (`isRowActivation`, `followRowLink`, `ROW_CONTROL_SELECTOR`, `ROW_LINK_SELECTOR`, `RowClick`): the clickable-row rule both libraries' `DataTable` use.
|
|
19
|
+
|
|
20
|
+
### Patch Changes
|
|
21
|
+
|
|
22
|
+
- Updated dependencies [[`bd58a6f`](https://github.com/softistx/nxgt-material/commit/bd58a6f67bdc25d4b4d0d7d88c52784869ad1529)]:
|
|
23
|
+
- @nxgt/material-core@0.4.0
|
|
24
|
+
|
|
3
25
|
## 0.25.2
|
|
4
26
|
|
|
5
27
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -475,7 +475,7 @@ React-only for now: `StepperIndicator` ([roadmap](https://cdn.jsdelivr.net/npm/@
|
|
|
475
475
|
|
|
476
476
|
| Preview | Component | What it does | @nxgt/material |
|
|
477
477
|
| --- | --- | --- | --- |
|
|
478
|
-
| <img src="https://cdn.jsdelivr.net/npm/@nxgt/material-vue@0/docs/previews/data-table-filter-lists-datatable.webp" width="120" alt="DataTable"> | [`DataTable`](https://cdn.jsdelivr.net/npm/@nxgt/material-vue@0/docs/components/data-table-filter-and-lists.md#datatable), `DataTableColumnHeader`, `DataTablePagination`, `DataTableViewOptions` | TanStack Table v9 with sorting, filtering, selection, expandable rows, pagination or load-more, column visibility, skeleton rows while loading and your own empty state. | `DataTable`, `DataTableColumnHeader`, `DataTablePagination`, `DataTableViewOptions` |
|
|
478
|
+
| <img src="https://cdn.jsdelivr.net/npm/@nxgt/material-vue@0/docs/previews/data-table-filter-lists-datatable.webp" width="120" alt="DataTable"> | [`DataTable`](https://cdn.jsdelivr.net/npm/@nxgt/material-vue@0/docs/components/data-table-filter-and-lists.md#datatable), `DataTableColumnHeader`, `DataTablePagination`, `DataTableServerFooter`, `DataTableViewOptions` | TanStack Table v9 with sorting, filtering, selection, expandable rows, pagination or load-more, column visibility, skeleton rows while loading and your own empty state — or one server page at a time, with controlled sorting and selection, cursor Previous / Next links and row links. | `DataTable`, `DataTableColumnHeader`, `DataTablePagination`, `DataTableServerFooter`, `DataTableViewOptions` |
|
|
479
479
|
| <img src="https://cdn.jsdelivr.net/npm/@nxgt/material-vue@0/docs/previews/data-table-filter-lists-filter.webp" width="120" alt="Filter"> | [`Filter`](https://cdn.jsdelivr.net/npm/@nxgt/material-vue@0/docs/components/data-table-filter-and-lists.md#filter) · `FilterFormField`, `FilterProvider`, `FilterTrigger`, `FilterChips`, `FilterContent`, `FilterGroups`, `FilterGroup`, `FilterField`, `FilterActions`, `FilterPresets` | Schema-driven filters with chips, presets, validation, and URL or storage persistence. | `Filter`, `FilterProvider`, `FilterContent`, `FilterChips`, `FilterPresets`, `FilterFormField` |
|
|
480
480
|
| — | [`FilterInline`](https://cdn.jsdelivr.net/npm/@nxgt/material-vue@0/docs/components/data-table-filter-and-lists.md#filterinline-filterpopover-filterdialog-filtersheet-filterdrawer), `FilterDialog`, `FilterSheet`, `FilterDrawer`, `FilterPopover` | The filter panel shown inline, or in a popover, dialog, sheet or drawer. | `FilterInline`, `FilterPopover`, `FilterDialog`, `FilterSheet`, `FilterDrawer` |
|
|
481
481
|
| <img src="https://cdn.jsdelivr.net/npm/@nxgt/material-vue@0/docs/previews/data-table-filter-lists-pagination.webp" width="120" alt="Pagination"> | [`Pagination`](https://cdn.jsdelivr.net/npm/@nxgt/material-vue@0/docs/components/data-table-filter-and-lists.md#pagination), `PaginationContent`, `PaginationItem`, `PaginationFirst`, `PaginationLast`, `PaginationLink`, `PaginationBar`, `paginationItems` + parts | Pagination primitives on Reka UI's `Pagination`, with first / last buttons and ellipses. `PaginationBar` adds a sibling window with ellipses. | `Pagination` (parts), `PaginationFirst`, `PaginationLast`, `PaginationLink`, `PaginationBar`, `paginationItems` |
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as e } from "./utils-CykWQ0iJ.js";
|
|
2
|
-
import { t } from "./use-material-translation-
|
|
2
|
+
import { t } from "./use-material-translation-CONqD9wJ.js";
|
|
3
3
|
import { Comment as n, Text as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createTextVNode as l, createVNode as u, defineComponent as d, guardReactiveProps as f, inject as p, isVNode as m, mergeProps as h, normalizeClass as g, normalizeProps as _, openBlock as v, provide as y, renderSlot as b, shallowRef as x, toDisplayString as S, unref as C, useAttrs as w, useSlots as T, withCtx as E } from "vue";
|
|
4
4
|
import { Primitive as D, TooltipArrow as O, TooltipContent as k, TooltipPortal as A, TooltipProvider as j, TooltipRoot as M, TooltipTrigger as N, useForwardPropsEmits as P } from "reka-ui";
|
|
5
5
|
import { cva as F } from "class-variance-authority";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as e } from "./utils-CykWQ0iJ.js";
|
|
2
|
-
import { t } from "./use-material-translation-
|
|
3
|
-
import { t as n } from "./Button-
|
|
2
|
+
import { t } from "./use-material-translation-CONqD9wJ.js";
|
|
3
|
+
import { t as n } from "./Button-16J7vTpE.js";
|
|
4
4
|
import { createBlock as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, createTextVNode as s, createVNode as c, defineComponent as l, guardReactiveProps as u, isRef as d, mergeProps as f, normalizeClass as p, normalizeProps as m, openBlock as h, renderSlot as g, toDisplayString as _, unref as v, useId as y, useTemplateRef as b, vModelText as x, withCtx as S, withDirectives as C } from "vue";
|
|
5
5
|
import { X as w } from "@lucide/vue";
|
|
6
6
|
import { DialogClose as T, DialogContent as E, DialogDescription as D, DialogOverlay as O, DialogPortal as k, DialogRoot as ee, DialogTitle as te, DialogTrigger as A, HoverCardContent as j, HoverCardPortal as M, HoverCardRoot as N, HoverCardTrigger as P, Label as F, useForwardProps as I, useForwardPropsEmits as L } from "reka-ui";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as e } from "./utils-CykWQ0iJ.js";
|
|
2
|
-
import { gr as t, mr as n, pr as r } from "./components-
|
|
3
|
-
import { t as i } from "./use-material-translation-
|
|
4
|
-
import { t as a } from "./Button-
|
|
5
|
-
import { t as o } from "./icon-button-
|
|
2
|
+
import { gr as t, mr as n, pr as r } from "./components-CCWod7cJ.js";
|
|
3
|
+
import { t as i } from "./use-material-translation-CONqD9wJ.js";
|
|
4
|
+
import { t as a } from "./Button-16J7vTpE.js";
|
|
5
|
+
import { t as o } from "./icon-button-CDdNsZuZ.js";
|
|
6
6
|
import { createBlock as s, createCommentVNode as c, createElementBlock as l, createElementVNode as u, createTextVNode as d, createVNode as f, defineComponent as p, normalizeClass as m, openBlock as h, ref as g, renderSlot as _, shallowRef as v, toDisplayString as y, unref as b, withCtx as x } from "vue";
|
|
7
7
|
import { Pause as S, Play as C } from "@lucide/vue";
|
|
8
8
|
//#region lib/components/ui/media/camera/camera-content.vue?vue&type=script&setup=true&lang.ts
|