@nxgt/material-vue 0.3.2 → 0.4.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 +25 -7
- package/dist/{camera-0FF92_uw.js → camera-CdG1ORQy.js} +4 -4
- package/dist/{components-CIZI-QTh.js → components-CIfTQ-I3.js} +31421 -29170
- package/dist/components.js +5 -4
- package/dist/{use-localized-date-C8vHzgho.js → composables-C5LhV5Vi.js} +126 -46
- package/dist/composables.js +3 -70
- package/dist/{dnd-DxjI7Q-L.js → dnd-DJL4dR9c.js} +1 -1
- package/dist/dnd.js +1 -1
- package/dist/{i18n-DXZMN9FA.js → i18n-GAjGs1da.js} +86 -0
- package/dist/i18n.js +1 -1
- package/dist/lib/components/index.d.ts +15 -0
- package/dist/lib/components/ui/anchor-heading/anchor-heading.vue.d.ts +20 -0
- package/dist/lib/components/ui/anchor-heading/index.d.ts +2 -0
- package/dist/lib/components/ui/api-endpoint/api-endpoint.vue.d.ts +20 -0
- package/dist/lib/components/ui/api-endpoint/index.d.ts +2 -0
- package/dist/lib/components/ui/api-operation/api-operation.vue.d.ts +24 -0
- package/dist/lib/components/ui/api-operation/index.d.ts +2 -0
- package/dist/lib/components/ui/cards/crew-card.vue.d.ts +21 -0
- package/dist/lib/components/ui/cards/feature-card.vue.d.ts +22 -0
- package/dist/lib/components/ui/cards/index.d.ts +16 -0
- package/dist/lib/components/ui/cards/media-card.vue.d.ts +21 -0
- package/dist/lib/components/ui/cards/overlay-card.vue.d.ts +22 -0
- package/dist/lib/components/ui/cards/pricing-card.vue.d.ts +25 -0
- package/dist/lib/components/ui/cards/profile-card.vue.d.ts +22 -0
- package/dist/lib/components/ui/cards/quote-card.vue.d.ts +20 -0
- package/dist/lib/components/ui/cards/spotlight-card.vue.d.ts +20 -0
- package/dist/lib/components/ui/code/code-group.vue.d.ts +17 -0
- package/dist/lib/components/ui/code/index.d.ts +2 -0
- package/dist/lib/components/ui/contacts/consts.d.ts +1 -1
- package/dist/lib/components/ui/copy-button/copy-button.vue.d.ts +12 -2
- package/dist/lib/components/ui/doc/doc-context.d.ts +7 -0
- package/dist/lib/components/ui/doc/doc.keyboard.d.ts +20 -0
- package/dist/lib/components/ui/doc/doc.store.d.ts +2 -0
- package/dist/lib/components/ui/doc/doc.utils.d.ts +19 -0
- package/dist/lib/components/ui/doc/doc.vue.d.ts +37 -0
- package/dist/lib/components/ui/doc/index.d.ts +24 -0
- package/dist/lib/components/ui/doc/partials/doc-article.vue.d.ts +17 -0
- package/dist/lib/components/ui/doc/partials/doc-child-cards.vue.d.ts +6 -0
- package/dist/lib/components/ui/doc/partials/doc-copy-markdown.vue.d.ts +6 -0
- package/dist/lib/components/ui/doc/partials/doc-empty.vue.d.ts +25 -0
- package/dist/lib/components/ui/doc/partials/doc-header.vue.d.ts +31 -0
- package/dist/lib/components/ui/doc/partials/doc-link.vue.d.ts +18 -0
- package/dist/lib/components/ui/doc/partials/doc-nav-list.vue.d.ts +8 -0
- package/dist/lib/components/ui/doc/partials/doc-nav.vue.d.ts +7 -0
- package/dist/lib/components/ui/doc/partials/doc-page.vue.d.ts +27 -0
- package/dist/lib/components/ui/doc/partials/doc-pager.vue.d.ts +7 -0
- package/dist/lib/components/ui/doc/partials/doc-progress.vue.d.ts +5 -0
- package/dist/lib/components/ui/doc/partials/doc-search-hit.vue.d.ts +12 -0
- package/dist/lib/components/ui/doc/partials/doc-search.vue.d.ts +3 -0
- package/dist/lib/components/ui/doc/partials/doc-see-also.vue.d.ts +6 -0
- package/dist/lib/components/ui/doc/partials/doc-sidebar.vue.d.ts +17 -0
- package/dist/lib/components/ui/doc/partials/doc-skip-link.vue.d.ts +6 -0
- package/dist/lib/components/ui/doc/partials/doc-toc.vue.d.ts +9 -0
- package/dist/lib/components/ui/doc/partials/doc-topbar.vue.d.ts +19 -0
- package/dist/lib/components/ui/doc/types.d.ts +37 -0
- package/dist/lib/components/ui/doc/use-doc.d.ts +29 -0
- package/dist/lib/components/ui/event-calendar/event-calendar.vue.d.ts +1 -1
- package/dist/lib/components/ui/feedback/index.d.ts +2 -0
- package/dist/lib/components/ui/feedback/scroll-progress.vue.d.ts +10 -0
- package/dist/lib/components/ui/figure/figure.vue.d.ts +18 -0
- package/dist/lib/components/ui/figure/index.d.ts +2 -0
- package/dist/lib/components/ui/hero/hero.vue.d.ts +22 -0
- package/dist/lib/components/ui/hero/index.d.ts +2 -0
- package/dist/lib/components/ui/highlight-text/highlight-text.vue.d.ts +10 -0
- package/dist/lib/components/ui/highlight-text/index.d.ts +2 -0
- package/dist/lib/components/ui/list-tile/list-tile.vue.d.ts +2 -0
- package/dist/lib/components/ui/metrics/breakdown-card.vue.d.ts +14 -0
- package/dist/lib/components/ui/metrics/goal-card.vue.d.ts +11 -0
- package/dist/lib/components/ui/metrics/index.d.ts +10 -0
- package/dist/lib/components/ui/metrics/rank-card.vue.d.ts +15 -0
- package/dist/lib/components/ui/metrics/sparkline.vue.d.ts +7 -0
- package/dist/lib/components/ui/metrics/trend-card.vue.d.ts +13 -0
- package/dist/lib/components/ui/pager/index.d.ts +2 -0
- package/dist/lib/components/ui/pager/pager.vue.d.ts +21 -0
- package/dist/lib/components/ui/param-table/index.d.ts +2 -0
- package/dist/lib/components/ui/param-table/param-table.vue.d.ts +15 -0
- package/dist/lib/components/ui/see-also/index.d.ts +2 -0
- package/dist/lib/components/ui/see-also/see-also.vue.d.ts +16 -0
- package/dist/lib/components/ui/skip-link/index.d.ts +2 -0
- package/dist/lib/components/ui/skip-link/skip-link.vue.d.ts +20 -0
- package/dist/lib/components/ui/steps/index.d.ts +4 -0
- package/dist/lib/components/ui/steps/steps-item.vue.d.ts +21 -0
- package/dist/lib/components/ui/steps/steps.vue.d.ts +17 -0
- package/dist/lib/components/ui/stx-player/index.d.ts +2 -2
- package/dist/lib/components/ui/stx-player/stx-player.vue.d.ts +1 -1
- package/dist/lib/components/ui/toc/index.d.ts +2 -0
- package/dist/lib/components/ui/toc/toc.vue.d.ts +24 -0
- package/dist/lib/composables/index.d.ts +1 -0
- package/dist/lib/composables/use-heading-spy.d.ts +7 -0
- package/dist/lib/i18n/resources/en/index.d.ts +49 -0
- package/dist/lib/i18n/resources/en/material.json.d.ts +49 -0
- package/dist/lib/i18n/resources/fr/index.d.ts +49 -0
- package/dist/lib/i18n/resources/fr/material.json.d.ts +49 -0
- package/dist/lib/i18n/resources/index.d.ts +98 -0
- package/dist/lib/i18n/translator.d.ts +1 -1
- package/dist/lib/lib/string.utils.d.ts +9 -0
- package/dist/lib/lib/url.utils.d.ts +2 -0
- package/dist/lib/nuxt/component-names.d.ts +1 -1
- package/dist/{lib-kSGjbZgz.js → lib-DZZQQdzj.js} +146 -119
- package/dist/lib.js +3 -3
- package/dist/main.js +9 -10
- package/dist/material-vue.css +1 -1
- package/dist/{pdf-outline-sidebar-iHgJ3Tdm.js → pdf-outline-sidebar-BFM10kQu.js} +6 -6
- package/dist/{pdf-page-g1icnvlW.js → pdf-page-CFDu8jEg.js} +1 -1
- package/dist/{pdf-page-list-BW9tw41T.js → pdf-page-list-BCkRBzwL.js} +16 -16
- package/dist/{pdf-reader-C_dSoAH6.js → pdf-reader-DAzFLZRZ.js} +6 -6
- package/dist/{pdf-sidebar-DW_or7mU.js → pdf-sidebar-DWxP5Pfz.js} +4 -4
- package/dist/{pdf-thumbnail-sidebar-xrrwRQIL.js → pdf-thumbnail-sidebar-Bi7-B940.js} +17 -17
- package/dist/{pdf-toolbar-BcKsxHJ2.js → pdf-toolbar-k0hsuz_X.js} +21 -21
- package/dist/{stx-player-lvdY9PTs.js → stx-player-CoAIB3KZ.js} +7 -7
- package/lib/nuxt/component-names.ts +42 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -10,9 +10,10 @@ the [catalogue](#components) lists the React equivalent for each entry.
|
|
|
10
10
|
|
|
11
11
|
## At a glance
|
|
12
12
|
|
|
13
|
-
- **380+ exported components in
|
|
13
|
+
- **380+ exported components in 169 catalogue entries**, grouped in 12
|
|
14
14
|
categories in the [catalogue](#components): from shadcn-vue primitives to
|
|
15
|
-
kanban, event calendar, charts, rich-text editor, PDF
|
|
15
|
+
kanban, event calendar, charts, documentation pages, rich-text editor, PDF
|
|
16
|
+
reader and media player.
|
|
16
17
|
- **Form fields, standalone or vee-validate.** Each field works with `v-model`,
|
|
17
18
|
and most have a `*FormField` wrapper that binds to a vee-validate form by `name`.
|
|
18
19
|
See [Form fields](#form-fields).
|
|
@@ -56,7 +57,7 @@ stores silently split between two instances.
|
|
|
56
57
|
| `vue-router` | `^4.5 \|\| ^5` | app shell, `LinkButton`, `useSearchParam`, `useNavigationHandler` |
|
|
57
58
|
| `vee-validate` | `^4.15` | every `*FormField` and the built-in forms (attributes, contacts, …) |
|
|
58
59
|
| `@tanstack/vue-table` | `^9` | `DataTable` |
|
|
59
|
-
| `@vueuse/core` | `^13 \|\| ^14` | `useIsMobile`, `useTheme`, prop forwarding in primitives |
|
|
60
|
+
| `@vueuse/core` | `^13 \|\| ^14` | `useIsMobile`, `useTheme`, `ScrollProgress` (`useScroll` / `useWindowScroll`), `CopyButton` (`useClipboard`), prop forwarding in primitives |
|
|
60
61
|
| `nuxt` | `>=3.13` | optional: only for `@nxgt/material-vue/nuxt` |
|
|
61
62
|
|
|
62
63
|
The tarball ships `dist/`, plus `lib/styles.css` and `lib/nuxt`. There is no
|
|
@@ -369,6 +370,7 @@ Thin shadcn-vue / Reka UI building blocks, styled with the library tokens.
|
|
|
369
370
|
| `Toggle`, `ToggleGroup`, `ToggleGroupItem` | Pressable toggle and single/multiple toggle groups. | `Toggle`, `ToggleGroup` |
|
|
370
371
|
| `ResizablePanelGroup`, `ResizablePanel`, `ResizableHandle` | Split panes resized by dragging a handle. | `ResizableGroup`, `ResizablePanel`, `ResizableSeparator` |
|
|
371
372
|
| `Typography` | Text on the type scale (`headline-large`, `title-medium`, `body-small`, …). | `Typography` |
|
|
373
|
+
| `AnchorHeading` | Heading with a hover copy-link (always visible on the phone). | `AnchorHeading` |
|
|
372
374
|
| `Kbd`, `KbdShortcut` | Keyboard key; `KbdShortcut` renders `['mod', 'k']` as ⌘/Ctrl glyphs. | `Kbd`, `KbdShortcut` |
|
|
373
375
|
|
|
374
376
|
### Buttons & actions
|
|
@@ -382,6 +384,7 @@ Thin shadcn-vue / Reka UI building blocks, styled with the library tokens.
|
|
|
382
384
|
| `LinkButton`, `IconLinkButton`, `ResponsiveLinkButton` | Buttons that navigate with vue-router (`to`, `replace`, `target`). | `LinkButton`, `IconLinkButton`, `ResponsiveLinkButton` |
|
|
383
385
|
| `SplitButton` | Main action plus a chevron menu filled by the `menu` slot. | `SplitButton` |
|
|
384
386
|
| `CopyButton` | Copies `value` to the clipboard and flips its tooltip to "Copied". | `CopyButton` |
|
|
387
|
+
| `HighlightText` | Marks case-insensitive matches of a query inside a string (`splitMatch`). | `HighlightText` |
|
|
385
388
|
| `LoadMoreButton` | Responsive "Load more" button with a refresh icon. | `LoadMoreButton` |
|
|
386
389
|
| `ScrollToTop` | Floating button shown past `threshold` px that scrolls back up. | `ScrollToTop` |
|
|
387
390
|
| `ActionCard` | Card with title, description and an active indicator. | `ActionCard` |
|
|
@@ -457,6 +460,8 @@ Every field takes `label`, `helperText`, `error`, `required`, `disabled` and
|
|
|
457
460
|
| `SummaryData` | Label/value rows, stacked or `inline`. | `SummaryData` |
|
|
458
461
|
| `EntityHeader` | Title with a row of metadata. | `EntityHeader` |
|
|
459
462
|
| `StatCard` | KPI tile: label, value, hint and a coloured delta. | `StatCard` |
|
|
463
|
+
| `TrendCard`, `GoalCard`, `BreakdownCard`, `RankCard` | Dashboard tiles: trend + sparkline, goal vs target, share breakdown, ranked list. Container queries. | `TrendCard`, `GoalCard`, `BreakdownCard`, `RankCard` |
|
|
464
|
+
| `FeatureCard`, `MediaCard`, `PricingCard`, `ProfileCard`, `QuoteCard`, `OverlayCard`, `SpotlightCard`, `CrewCard` | Card presets: product, media, pricing, profile, quote, cinematic overlay, bento spotlight, crew with avatars. Container queries. | `FeatureCard`, `MediaCard`, `PricingCard`, `ProfileCard`, `QuoteCard`, `OverlayCard`, `SpotlightCard`, `CrewCard` |
|
|
460
465
|
| `ExtendedLabel` | Section heading with an accent bar and a `trailing` slot. | `ExtendedLabel` |
|
|
461
466
|
| `Timeline`, `TimelineItem` | Vertical event list with tones and timestamps. | `Timeline`, `TimelineItem` |
|
|
462
467
|
| `QRCode` | QR code for `value` (`size`, colours, error `level`). | `QRCode` |
|
|
@@ -474,7 +479,7 @@ Every field takes `label`, `helperText`, `error`, `required`, `disabled` and
|
|
|
474
479
|
| `TransferList` · `TransferListFormField` | Available/selected panes with search, move buttons and drag-and-drop. | `TransferList` · `TransferListFormField` |
|
|
475
480
|
| `SortableList`, `SortableHandle` · `SortableListFormField` | Searchable list you reorder by dragging; `v-model` is the ordered values. | `SortableList`, `SortableHandle` · `SortableListFormField` |
|
|
476
481
|
| `Tree`, `TreeItem` | Expandable tree with none, single or multiple selection. | `Tree`, `TreeItem` |
|
|
477
|
-
| `ListTile` | Row with title, subtitle and leading/trailing slots; a link or a button. | `ListTile` |
|
|
482
|
+
| `ListTile` | Row with title, subtitle and leading/trailing slots; a link or a button. `size="sm"` is the dense row. | `ListTile` |
|
|
478
483
|
| `DndProvider`, `Draggable`, `Droppable`, `DraggableDroppable`, `SortableProvider`, `Sortable`, `DragHandle`, `DndOverlay` | Drag-and-drop primitives with a dnd-kit-style API, also on `/dnd`. | `DndProvider`, `Draggable`, `Droppable`, `DraggableDroppable`, `SortableProvider`, `Sortable`, `DragHandle`, `DndOverlay` |
|
|
479
484
|
|
|
480
485
|
### Navigation & layout
|
|
@@ -488,7 +493,15 @@ Every field takes `label`, `helperText`, `error`, `required`, `disabled` and
|
|
|
488
493
|
| `Breadcrumb`, `BreadcrumbList`, `BreadcrumbItem`, `BreadcrumbLink`, `BreadcrumbPage` + parts | Breadcrumb trail. | `Breadcrumb` |
|
|
489
494
|
| `Pagination`, `PaginationContent`, `PaginationItem`, `PaginationFirst`, `PaginationLast` + parts | Page navigation links. | `Pagination`, `PaginationBar` |
|
|
490
495
|
| `Tabs` | See Primitives. | `Tabs` |
|
|
496
|
+
| `SkipLink` | Skip-to-content control, visible on focus. `DocSkipLink` composes it with `#doc-content`. | `SkipLink` |
|
|
497
|
+
| `Pager` | Previous / next cards for a sequence of pages. `DocPager` composes it. | `Pager` |
|
|
498
|
+
| `SeeAlso` | Related-link list with outbound icons. `DocSeeAlso` composes it. | `SeeAlso` |
|
|
499
|
+
| `Toc` | On-this-page outline with a per-item active bar. Rail from `xl`, collapsible panel below. `DocToc` composes it. | `Toc` |
|
|
491
500
|
| `Stepper` | Horizontal or vertical steps with per-step status. | `Stepper` |
|
|
501
|
+
| `Steps`, `StepsItem` | Numbered editorial steps that stay visible on every breakpoint. | `Steps`, `StepsItem` |
|
|
502
|
+
| `Hero` | Landing band with eyebrow, title, supporting copy and actions. | `Hero` |
|
|
503
|
+
| `Figure` | Framed media with an optional caption. | `Figure` |
|
|
504
|
+
| `Doc`, `DocPage`, `DocTopbar`, `DocSidebar`, `DocToc`, `DocPager`, `DocSearch`, `DocChildCards`, `DocSeeAlso`, `DocEmpty`, `DocProgress` | Documentation site shell: sidebar from `md`, TOC from `xl`. Reading bar, copy-page / markdown, child cards, see also, and a 404 slot. Storybook `UI/Doc/Api` composes an API page from `DocPage`, `AnchorHeading`, `ApiOperation`, `ParamTable` and `CodeGroup`. | `Doc`, `DocPage`, `DocTopbar`, `DocSidebar`, `DocToc`, `DocPager`, `DocSearch`, `DocChildCards`, `DocSeeAlso`, `DocEmpty`, `DocProgress` |
|
|
492
505
|
| `ListDetailsLayout` (`.List`, `.Details`, `.Trigger`) | List and details panes with a switchable active view. | `ListDetailsLayout` |
|
|
493
506
|
| `PaneLayout` (`.Pane`, `.Content`, `.Trigger`) | Content with a toggleable side pane that becomes a sheet on mobile. | `PaneLayout` |
|
|
494
507
|
| `ThreadLayout` | Centred page frame with `header` and `stepper` slots. | `ThreadLayout` |
|
|
@@ -527,9 +540,10 @@ Every field takes `label`, `helperText`, `error`, `required`, `disabled` and
|
|
|
527
540
|
| `Banner` | Full-width notice (`info`, `success`, `warning`, `error`), optionally dismissible. | `Banner` |
|
|
528
541
|
| `Toaster`, `Toast`, `toast`, `toasts` | vue-sonner toasts; `toasts.success` / `error` / `info` / `warning` / `loading` / `dismiss`. | `Toaster`, `Toast`, `toast`, `toasts` |
|
|
529
542
|
| `Progress`, `ProgressField`, `CircularProgress` | Linear bar, labelled bar, and ring with a label. | `Progress`, `ProgressField`, `CircularProgress` |
|
|
543
|
+
| `ScrollProgress` | Hairline that tracks window or a scrollable `target` (`@vueuse/core` `useWindowScroll` / `useScroll`). `DocProgress` composes it. | `ScrollProgress` |
|
|
530
544
|
| `Spinner` | Loading spinner in several styles and colours. | `Spinner` |
|
|
531
545
|
| `Skeleton`, `SkeletonText`, `SkeletonAvatar`, `SkeletonCard`, `SkeletonTable` | Loading placeholders. | `Skeleton`, `SkeletonText`, `SkeletonAvatar`, `SkeletonCard`, `SkeletonTable` |
|
|
532
|
-
| `EmptyState` |
|
|
546
|
+
| `EmptyState` | Icon in a tinted well, title, description and action; not-found, unauthorized, generic and empty presets. | `EmptyState` |
|
|
533
547
|
| `StatusIndicator` | Status dot with a tone, optionally pulsing. | `StatusIndicator` |
|
|
534
548
|
| `Badge` | Pill label in the semantic tones. | `Badge` |
|
|
535
549
|
| `CountBadge` | Numeric badge capped at `max` ("99+"). | `CountBadge` |
|
|
@@ -562,7 +576,9 @@ Every field takes `label`, `helperText`, `error`, `required`, `disabled` and
|
|
|
562
576
|
| `BarChart`, `LineChart`, `AreaChart`, `PieChart`, `RadarChart`, `ScatterChart`, `HeatmapChart`, `FunnelChart`, `ChartContainer` | ECharts wrappers themed from the CSS tokens, with loading and empty states. | `BarChart`, `LineChart`, `AreaChart`, `PieChart`, `RadarChart`, `ScatterChart`, `HeatmapChart`, `FunnelChart`, `ChartContainer` |
|
|
563
577
|
| `RichTextEditor` · `RichTextEditorFormField` | Tiptap editor: toolbar, tables, images, mentions, callouts, character limit. | `RichTextEditor` · `RichTextEditorFormField` |
|
|
564
578
|
| `CodeEditor` | Monaco editor with a language picker and word wrap (client-only). | `CodeEditor` · `CodeEditorFormField` |
|
|
565
|
-
| `CodeBlock`, `CodeDiff`, `JsonViewer` | Highlighted code, side-by-side diff, collapsible JSON tree. | `CodeBlock`, `CodeDiff`, `JsonViewer` |
|
|
579
|
+
| `CodeBlock`, `CodeDiff`, `JsonViewer`, `CodeGroup` | Highlighted code, side-by-side diff, collapsible JSON tree, and tabbed samples. | `CodeBlock`, `CodeDiff`, `JsonViewer`, `CodeGroup` |
|
|
580
|
+
| `ApiEndpoint`, `ApiOperation` | HTTP method badge, path and copy; `ApiOperation` adds a param table and example `CodeGroup`. | `ApiEndpoint`, `ApiOperation` |
|
|
581
|
+
| `ParamTable` | Name / type / default / description table; stacked cards below `sm`. | `ParamTable` |
|
|
566
582
|
| `StxPlayer`, `StxPlayerProvider`, `StxPlayerViewport`, `StxPlayerControls`, `StxPlayerQueue`, `StxPlayerMini`, `StxPlayerExtras` | Audio/video player with a queue, captions and a `full` or `mini` layout (client-only). `VideoPlayer` is a deprecated alias. | `StxPlayer`, `StxPlayerProvider`, `StxPlayerViewport`, `StxPlayerControls`, `StxPlayerQueue`, `StxPlayerMini`, `StxPlayerExtras` |
|
|
567
583
|
| `Quiz`, `QuestionCard` | Quiz with choice, multi, boolean and text questions, plus scoring. | `Quiz`, `QuestionCard` |
|
|
568
584
|
| `PrintHeader`, `PrintSection`, `PrintCard`, `PrintCardField`, `PrintInfoRow`, `PrintBadge` | Inline-styled blocks for printable documents. | `PrintHeader`, `PrintSection`, `PrintCard`, `PrintCardField`, `PrintInfoRow`, `PrintBadge` |
|
|
@@ -583,7 +599,7 @@ optional argument.
|
|
|
583
599
|
| `DATE_UTILS.parseFromTimestring('HH:mm')`, `DATE_UTILS.parseFromISOString(iso?)` | Parses a time string or an ISO string into a `Date`. |
|
|
584
600
|
| `formatDateRangeFilter({ from, to })` | Converts a date range to ISO start/end of day, or `undefined`. |
|
|
585
601
|
| `formatNumber(value, { language?, ...Intl.NumberFormatOptions })` | `Intl.NumberFormat` with the language per call; returns `''` for NaN. |
|
|
586
|
-
| `STRING_UTILS`, `enumToKebabCase(value?)`, `joinTruthyParts(parts, separator?)` | `FOO_BAR` → `foo-bar`; joins the non-empty parts
|
|
602
|
+
| `STRING_UTILS`, `enumToKebabCase(value?)`, `joinTruthyParts(parts, separator?)`, `splitMatch(text, query)` | `FOO_BAR` → `foo-bar`; joins the non-empty parts; splits a string around case-insensitive matches. |
|
|
587
603
|
| `STYLES_UTILS.colorFromVariable(name, alpha?)`, `STYLES_UTILS.cssSize(value)` | CSS variable to `rgb(from var(--x) …)`; number to `px`. |
|
|
588
604
|
| `safeGetItem(key, default)`, `safeSetItem(key, value)`, `safeRemoveItem(key)`, `LOCALE_STORE_UTILS` | `localStorage` access that never throws, with JSON for non-strings. |
|
|
589
605
|
| `uniqueArray(array)`, `findByKey(array, key, value)`, `findByKeyIn(array, key, values)` | De-duplicates; finds one or many items by a key. |
|
|
@@ -593,6 +609,7 @@ optional argument.
|
|
|
593
609
|
| `ifEmptyString(value, fallback)`, `ifEmptyList(value, fallback)` | Returns `fallback` for an empty string or list. |
|
|
594
610
|
| `objectToFormData(obj)`, `formDataToObject(formData)`, `convertToFormData(files, fieldName?)` | `FormData` conversions; files go under `files` by default. |
|
|
595
611
|
| `searchParams(request)`, `searchParam(request, key)` | Reads query parameters from a `Request` (server handlers). |
|
|
612
|
+
| `isExternalHref(href)` | True for `http(s):` and `mailto:` — new tab, not in-app. |
|
|
596
613
|
| `delay(ms)` | Promise that resolves after `ms`. |
|
|
597
614
|
| `renderSlot(slot, context)`, `ContentSlot<T>` | Resolves a prop that is either a VNode or a function of `context`. |
|
|
598
615
|
| `zodLocaleError()`, `parsedType(data)` | Zod v4 error map translated through `material.zod.*`: `z.config({ customError: zodLocaleError() })`. |
|
|
@@ -621,6 +638,7 @@ These are the React library's `@nxgt/material/hooks`, with the same names.
|
|
|
621
638
|
| `resolveTheme(stored, prefersDark)`, `applyResolvedTheme(theme)` | The pure logic behind `useTheme`, safe on the server. |
|
|
622
639
|
| `useIsClient()` | `Ref<boolean>` that turns `true` after mount; use it for hydration-safe branches. |
|
|
623
640
|
| `useIsMobile()` | `Ref<boolean>`, `true` below 768 px. |
|
|
641
|
+
| `useHeadingSpy(ids, onActive, options?)` | IntersectionObserver over heading ids (`useIntersectionObserver`); reports the topmost visible one. |
|
|
624
642
|
| `useLocalizedDate()` | `{ format, locale, language }`: `DATE_UTILS.format` in the `I18nProvider` language. |
|
|
625
643
|
| `useNumberFormatter()` | `{ formatNumber, formatCurrency }` in the current language. |
|
|
626
644
|
| `useOptions(items, { value, label, filter?, expanded? })`, `buildOptions(items, config)` | Maps records to `{ value, label }` options, as a computed or a plain array. |
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { iu as e, ou as t, ru as n } from "./components-CIfTQ-I3.js";
|
|
2
2
|
import { t as r } from "./utils-Cy-ByIEo.js";
|
|
3
3
|
import { r as i, t as a } from "./icon-button-Ghucx7Ah.js";
|
|
4
|
-
import { n as o } from "./i18n-
|
|
4
|
+
import { n as o } from "./i18n-GAjGs1da.js";
|
|
5
5
|
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";
|
|
6
6
|
import { Pause as S, Play as C } from "lucide-vue-next";
|
|
7
7
|
//#region lib/components/ui/camera/camera-content.vue?vue&type=script&setup=true&lang.ts
|
|
@@ -57,8 +57,8 @@ var w = { class: "grid gap-2" }, T = { class: "flex justify-end" }, E = ["src",
|
|
|
57
57
|
}), O = /* @__PURE__ */ p({
|
|
58
58
|
__name: "camera-provider",
|
|
59
59
|
setup(n) {
|
|
60
|
-
let r = g(null), i = g(null), a = v(null), o =
|
|
61
|
-
return
|
|
60
|
+
let r = g(null), i = g(null), a = v(null), o = t();
|
|
61
|
+
return e({
|
|
62
62
|
videoRef: r,
|
|
63
63
|
canvasRef: i,
|
|
64
64
|
streamRef: a,
|