@omnitend/dashboard-for-laravel 0.9.2 → 0.10.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/dist/components/extended/DXDashboardNavbar.vue.d.ts +12 -10
- package/dist/components/extended/DXDashboardSidebar.vue.d.ts +9 -0
- package/dist/dashboard-for-laravel.js +4773 -4770
- package/dist/dashboard-for-laravel.js.map +1 -1
- package/dist/dashboard-for-laravel.umd.cjs +6 -6
- package/dist/dashboard-for-laravel.umd.cjs.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/navigation.d.ts +7 -0
- package/docs/public/api-reference.json +346 -140
- package/docs/public/docs-map.md +1 -1
- package/package.json +1 -1
- package/resources/js/components/extended/DXBasicForm.vue +4 -1
- package/resources/js/components/extended/DXDashboard.vue +11 -0
- package/resources/js/components/extended/DXDashboardNavbar.vue +77 -13
- package/resources/js/components/extended/DXDashboardSidebar.vue +138 -43
- package/resources/js/components/extended/DXField.vue +73 -0
- package/resources/js/components/extended/DXFieldLabel.vue +5 -0
- package/resources/js/components/extended/DXForm.vue +22 -1
- package/resources/js/components/extended/DXRepeater.vue +14 -1
- package/resources/js/components/extended/DXTable.vue +73 -0
- package/resources/js/types/navigation.ts +7 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
"generated": "2026-07-
|
|
2
|
+
"generated": "2026-07-04T12:57:30.569Z",
|
|
3
3
|
"package": {
|
|
4
4
|
"name": "@omnitend/dashboard-for-laravel",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.10.0"
|
|
6
6
|
},
|
|
7
7
|
"components": {
|
|
8
8
|
"base": [
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"name": "DAccordion",
|
|
11
11
|
"category": "base",
|
|
12
12
|
"filePath": "resources/js/components/base/DAccordion.vue",
|
|
13
|
-
"description": "",
|
|
13
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BAccordion component. Easily toggle content visibility with collapsible accordions.",
|
|
14
14
|
"props": [],
|
|
15
15
|
"events": [],
|
|
16
16
|
"slots": [
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
"name": "DAspect",
|
|
74
74
|
"category": "base",
|
|
75
75
|
"filePath": "resources/js/components/base/DAspect.vue",
|
|
76
|
-
"description": "",
|
|
76
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BAspect component. Keeps its default slot content at a fixed aspect ratio (e.g. `aspect=\"16:9\"` or a number like `1.7778`). Useful for responsive media/embeds.",
|
|
77
77
|
"props": [],
|
|
78
78
|
"events": [],
|
|
79
79
|
"slots": [
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
"name": "DAutocomplete",
|
|
95
95
|
"category": "base",
|
|
96
96
|
"filePath": "resources/js/components/base/DAutocomplete.vue",
|
|
97
|
-
"description": "",
|
|
97
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BAutocomplete component. Text input with a filtered dropdown of suggestions (typeahead/combobox). Pass `options` and bind `v-model`; supports `multiple` and a custom `filterFunction`.",
|
|
98
98
|
"props": [],
|
|
99
99
|
"events": [],
|
|
100
100
|
"slots": [
|
|
@@ -115,7 +115,7 @@
|
|
|
115
115
|
"name": "DAvatar",
|
|
116
116
|
"category": "base",
|
|
117
117
|
"filePath": "resources/js/components/base/DAvatar.vue",
|
|
118
|
-
"description": "",
|
|
118
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BAvatar component. Display user profiles as pictures, icons, or short text.",
|
|
119
119
|
"props": [],
|
|
120
120
|
"events": [],
|
|
121
121
|
"slots": [
|
|
@@ -157,7 +157,7 @@
|
|
|
157
157
|
"name": "DBreadcrumb",
|
|
158
158
|
"category": "base",
|
|
159
159
|
"filePath": "resources/js/components/base/DBreadcrumb.vue",
|
|
160
|
-
"description": "",
|
|
160
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BBreadcrumb component. Indicate the current page's location within a navigational hierarchy.",
|
|
161
161
|
"props": [],
|
|
162
162
|
"events": [],
|
|
163
163
|
"slots": [
|
|
@@ -213,7 +213,7 @@
|
|
|
213
213
|
"name": "DButtonGroup",
|
|
214
214
|
"category": "base",
|
|
215
215
|
"filePath": "resources/js/components/base/DButtonGroup.vue",
|
|
216
|
-
"description": "",
|
|
216
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BButtonGroup component. Group a series of buttons on a single line or stack them vertically.",
|
|
217
217
|
"props": [],
|
|
218
218
|
"events": [],
|
|
219
219
|
"slots": [
|
|
@@ -234,7 +234,7 @@
|
|
|
234
234
|
"name": "DButtonToolbar",
|
|
235
235
|
"category": "base",
|
|
236
236
|
"filePath": "resources/js/components/base/DButtonToolbar.vue",
|
|
237
|
-
"description": "",
|
|
237
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BButtonToolbar component. Group button groups and input groups together on a single line.",
|
|
238
238
|
"props": [],
|
|
239
239
|
"events": [],
|
|
240
240
|
"slots": [
|
|
@@ -391,7 +391,7 @@
|
|
|
391
391
|
"name": "DForm",
|
|
392
392
|
"category": "base",
|
|
393
393
|
"filePath": "resources/js/components/base/DForm.vue",
|
|
394
|
-
"description": "",
|
|
394
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BForm component. Form component with support for inline styles and validation states.",
|
|
395
395
|
"props": [],
|
|
396
396
|
"events": [],
|
|
397
397
|
"slots": [
|
|
@@ -485,7 +485,7 @@
|
|
|
485
485
|
"name": "DFormOtp",
|
|
486
486
|
"category": "base",
|
|
487
487
|
"filePath": "resources/js/components/base/DFormOtp.vue",
|
|
488
|
-
"description": "",
|
|
488
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BFormOtp component. One-time-code / PIN input rendered as a row of single-character boxes. `v-model` is a `string[]` (one entry per box).",
|
|
489
489
|
"props": [],
|
|
490
490
|
"events": [],
|
|
491
491
|
"slots": [
|
|
@@ -506,7 +506,7 @@
|
|
|
506
506
|
"name": "DFormRadio",
|
|
507
507
|
"category": "base",
|
|
508
508
|
"filePath": "resources/js/components/base/DFormRadio.vue",
|
|
509
|
-
"description": "",
|
|
509
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BFormRadio component. Custom radio button input with accessibility markup.",
|
|
510
510
|
"props": [],
|
|
511
511
|
"events": [],
|
|
512
512
|
"slots": [
|
|
@@ -527,7 +527,7 @@
|
|
|
527
527
|
"name": "DFormRadioGroup",
|
|
528
528
|
"category": "base",
|
|
529
529
|
"filePath": "resources/js/components/base/DFormRadioGroup.vue",
|
|
530
|
-
"description": "",
|
|
530
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BFormRadioGroup component. Renders a group of radio inputs from an `options` array or slot content.",
|
|
531
531
|
"props": [],
|
|
532
532
|
"events": [],
|
|
533
533
|
"slots": [
|
|
@@ -569,7 +569,7 @@
|
|
|
569
569
|
"name": "DFormSpinbutton",
|
|
570
570
|
"category": "base",
|
|
571
571
|
"filePath": "resources/js/components/base/DFormSpinbutton.vue",
|
|
572
|
-
"description": "",
|
|
572
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BFormSpinbutton component. Number input with increment/decrement buttons.",
|
|
573
573
|
"props": [],
|
|
574
574
|
"events": [],
|
|
575
575
|
"slots": [
|
|
@@ -590,7 +590,7 @@
|
|
|
590
590
|
"name": "DFormTags",
|
|
591
591
|
"category": "base",
|
|
592
592
|
"filePath": "resources/js/components/base/DFormTags.vue",
|
|
593
|
-
"description": "",
|
|
593
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BFormTags component. Lightweight custom tagged input with duplicate detection and validation.",
|
|
594
594
|
"props": [],
|
|
595
595
|
"events": [],
|
|
596
596
|
"slots": [
|
|
@@ -642,7 +642,7 @@
|
|
|
642
642
|
"name": "DImage",
|
|
643
643
|
"category": "base",
|
|
644
644
|
"filePath": "resources/js/components/base/DImage.vue",
|
|
645
|
-
"description": "",
|
|
645
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BImg component. Responsive image component with optional lazy loading and fluid sizing.",
|
|
646
646
|
"props": [],
|
|
647
647
|
"events": [],
|
|
648
648
|
"slots": [
|
|
@@ -663,7 +663,7 @@
|
|
|
663
663
|
"name": "DInputGroup",
|
|
664
664
|
"category": "base",
|
|
665
665
|
"filePath": "resources/js/components/base/DInputGroup.vue",
|
|
666
|
-
"description": "",
|
|
666
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BInputGroup component. Easily extend form controls by adding text, buttons, or button groups.",
|
|
667
667
|
"props": [],
|
|
668
668
|
"events": [],
|
|
669
669
|
"slots": [
|
|
@@ -684,7 +684,7 @@
|
|
|
684
684
|
"name": "DLink",
|
|
685
685
|
"category": "base",
|
|
686
686
|
"filePath": "resources/js/components/base/DLink.vue",
|
|
687
|
-
"description": "",
|
|
687
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BLink component. Enhanced link component with router support and accessibility features.",
|
|
688
688
|
"props": [],
|
|
689
689
|
"events": [],
|
|
690
690
|
"slots": [
|
|
@@ -705,7 +705,7 @@
|
|
|
705
705
|
"name": "DListGroup",
|
|
706
706
|
"category": "base",
|
|
707
707
|
"filePath": "resources/js/components/base/DListGroup.vue",
|
|
708
|
-
"description": "",
|
|
708
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BListGroup component. Flexible component for displaying a series of content items.",
|
|
709
709
|
"props": [],
|
|
710
710
|
"events": [],
|
|
711
711
|
"slots": [
|
|
@@ -789,7 +789,7 @@
|
|
|
789
789
|
"name": "DNavbar",
|
|
790
790
|
"category": "base",
|
|
791
791
|
"filePath": "resources/js/components/base/DNavbar.vue",
|
|
792
|
-
"description": "",
|
|
792
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BNavbar component. Responsive navigation header with support for branding, navigation, and more.",
|
|
793
793
|
"props": [],
|
|
794
794
|
"events": [],
|
|
795
795
|
"slots": [
|
|
@@ -915,7 +915,7 @@
|
|
|
915
915
|
"name": "DOverlay",
|
|
916
916
|
"category": "base",
|
|
917
917
|
"filePath": "resources/js/components/base/DOverlay.vue",
|
|
918
|
-
"description": "",
|
|
918
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BOverlay component. Overlay component for indicating loading states or blocking content.",
|
|
919
919
|
"props": [],
|
|
920
920
|
"events": [],
|
|
921
921
|
"slots": [
|
|
@@ -946,7 +946,7 @@
|
|
|
946
946
|
"name": "DPlaceholder",
|
|
947
947
|
"category": "base",
|
|
948
948
|
"filePath": "resources/js/components/base/DPlaceholder.vue",
|
|
949
|
-
"description": "",
|
|
949
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BPlaceholder component. Loading placeholder component to indicate content is still loading.",
|
|
950
950
|
"props": [],
|
|
951
951
|
"events": [],
|
|
952
952
|
"slots": [
|
|
@@ -967,7 +967,7 @@
|
|
|
967
967
|
"name": "DPopover",
|
|
968
968
|
"category": "base",
|
|
969
969
|
"filePath": "resources/js/components/base/DPopover.vue",
|
|
970
|
-
"description": "",
|
|
970
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BPopover component. Overlay component for displaying rich content in a popup.",
|
|
971
971
|
"props": [],
|
|
972
972
|
"events": [],
|
|
973
973
|
"slots": [
|
|
@@ -988,7 +988,7 @@
|
|
|
988
988
|
"name": "DProgress",
|
|
989
989
|
"category": "base",
|
|
990
990
|
"filePath": "resources/js/components/base/DProgress.vue",
|
|
991
|
-
"description": "",
|
|
991
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BProgress component. Progress bar for displaying simple or complex progress indicators.",
|
|
992
992
|
"props": [],
|
|
993
993
|
"events": [],
|
|
994
994
|
"slots": [
|
|
@@ -1115,7 +1115,7 @@
|
|
|
1115
1115
|
"name": "DTabs",
|
|
1116
1116
|
"category": "base",
|
|
1117
1117
|
"filePath": "resources/js/components/base/DTabs.vue",
|
|
1118
|
-
"description": "",
|
|
1118
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BTabs component. Create tabbed panes of local content with customisable navigation.",
|
|
1119
1119
|
"props": [],
|
|
1120
1120
|
"events": [],
|
|
1121
1121
|
"slots": [
|
|
@@ -1178,7 +1178,7 @@
|
|
|
1178
1178
|
"name": "DTooltip",
|
|
1179
1179
|
"category": "base",
|
|
1180
1180
|
"filePath": "resources/js/components/base/DTooltip.vue",
|
|
1181
|
-
"description": "",
|
|
1181
|
+
"description": "Type-safe wrapper around Bootstrap Vue Next BTooltip component. Display helpful tooltips when hovering over elements.",
|
|
1182
1182
|
"props": [],
|
|
1183
1183
|
"events": [],
|
|
1184
1184
|
"slots": [
|
|
@@ -1201,13 +1201,13 @@
|
|
|
1201
1201
|
"name": "DXBasicForm",
|
|
1202
1202
|
"category": "extended",
|
|
1203
1203
|
"filePath": "resources/js/components/extended/DXBasicForm.vue",
|
|
1204
|
-
"description": "",
|
|
1204
|
+
"description": "Deprecated alias of DXForm that renders a flat form (DXForm without a `tabs` prop) and warns once on use. A flat form is just DXForm without a `tabs` prop. This wrapper forwards everything to DXForm and logs a one-time deprecation warning so existing callers keep working while they migrate. Remove in a future major.",
|
|
1205
1205
|
"props": [],
|
|
1206
1206
|
"events": [],
|
|
1207
1207
|
"slots": [
|
|
1208
1208
|
{
|
|
1209
1209
|
"name": "name",
|
|
1210
|
-
"description": "",
|
|
1210
|
+
"description": "Passes every DXForm slot (e.g. `value(<key>)`, `footer`) straight through to the wrapped DXForm, along with its slot props.",
|
|
1211
1211
|
"bindings": [
|
|
1212
1212
|
{
|
|
1213
1213
|
"name": "name",
|
|
@@ -1222,7 +1222,7 @@
|
|
|
1222
1222
|
"name": "DXDashboard",
|
|
1223
1223
|
"category": "extended",
|
|
1224
1224
|
"filePath": "resources/js/components/extended/DXDashboard.vue",
|
|
1225
|
-
"description": "",
|
|
1225
|
+
"description": "DXDashboard is the full dashboard shell — a collapsible sidebar (`DXDashboardSidebar`) alongside a top navbar (`DXDashboardNavbar`) and the page content area. It owns sidebar visibility state (persisted to localStorage, SSR-safe) and forwards any `sidebar-*` slot to the sidebar and any `navbar-*` slot to the navbar, stripping the prefix.",
|
|
1226
1226
|
"props": [
|
|
1227
1227
|
{
|
|
1228
1228
|
"name": "navigation",
|
|
@@ -1297,7 +1297,7 @@
|
|
|
1297
1297
|
"slots": [
|
|
1298
1298
|
{
|
|
1299
1299
|
"name": "originalName",
|
|
1300
|
-
"description": "",
|
|
1300
|
+
"description": "Forwards any `sidebar-*` slot to DXDashboardSidebar with the `sidebar-` prefix stripped (e.g. `sidebar-brand` becomes the sidebar's `brand` slot).",
|
|
1301
1301
|
"bindings": [
|
|
1302
1302
|
{
|
|
1303
1303
|
"name": "name",
|
|
@@ -1307,7 +1307,7 @@
|
|
|
1307
1307
|
},
|
|
1308
1308
|
{
|
|
1309
1309
|
"name": "default",
|
|
1310
|
-
"description": "",
|
|
1310
|
+
"description": "Default slot for the main page content, rendered in the centred content column.",
|
|
1311
1311
|
"bindings": []
|
|
1312
1312
|
}
|
|
1313
1313
|
],
|
|
@@ -1317,78 +1317,94 @@
|
|
|
1317
1317
|
"name": "DXDashboardNavbar",
|
|
1318
1318
|
"category": "extended",
|
|
1319
1319
|
"filePath": "resources/js/components/extended/DXDashboardNavbar.vue",
|
|
1320
|
-
"description": "",
|
|
1320
|
+
"description": "Top navigation bar for the dashboard shell: menu toggle, page title, centred search, page-level actions, and the user menu. Usually rendered by `DXDashboard`, which forwards these slots with a `navbar-` prefix.",
|
|
1321
1321
|
"props": [
|
|
1322
1322
|
{
|
|
1323
1323
|
"name": "user",
|
|
1324
1324
|
"type": "union",
|
|
1325
1325
|
"required": false,
|
|
1326
1326
|
"default": "null",
|
|
1327
|
-
"description": ""
|
|
1327
|
+
"description": "The signed-in user shown in the avatar dropdown. `null` hides the menu."
|
|
1328
1328
|
},
|
|
1329
1329
|
{
|
|
1330
1330
|
"name": "pageTitle",
|
|
1331
1331
|
"type": "string",
|
|
1332
1332
|
"required": false,
|
|
1333
1333
|
"default": "\"\"",
|
|
1334
|
-
"description": ""
|
|
1334
|
+
"description": "Page title shown at the left of the navbar (hidden below the `md` breakpoint)."
|
|
1335
1335
|
}
|
|
1336
1336
|
],
|
|
1337
1337
|
"events": [
|
|
1338
1338
|
{
|
|
1339
1339
|
"name": "toggleSidebar",
|
|
1340
|
-
"description": "",
|
|
1340
|
+
"description": "Emitted when the hamburger menu button is clicked.",
|
|
1341
1341
|
"properties": []
|
|
1342
1342
|
}
|
|
1343
1343
|
],
|
|
1344
1344
|
"slots": [
|
|
1345
1345
|
{
|
|
1346
1346
|
"name": "menu-icon",
|
|
1347
|
-
"description": "",
|
|
1347
|
+
"description": "Custom hamburger/menu icon. Defaults to a three-line SVG.",
|
|
1348
1348
|
"bindings": []
|
|
1349
1349
|
},
|
|
1350
1350
|
{
|
|
1351
1351
|
"name": "search",
|
|
1352
|
-
"description": "",
|
|
1352
|
+
"description": "Search input or component. Centred in the bar on wider screens; drops to its own full-width row below the `md` breakpoint.",
|
|
1353
1353
|
"bindings": []
|
|
1354
1354
|
},
|
|
1355
1355
|
{
|
|
1356
1356
|
"name": "actions",
|
|
1357
|
-
"description": "",
|
|
1357
|
+
"description": "Page-level primary actions (e.g. a Create button), right-aligned next to the user menu.",
|
|
1358
1358
|
"bindings": [
|
|
1359
1359
|
{
|
|
1360
|
-
"
|
|
1361
|
-
"
|
|
1360
|
+
"title": "binding",
|
|
1361
|
+
"type": {
|
|
1362
|
+
"name": "string"
|
|
1363
|
+
},
|
|
1364
|
+
"name": "pageTitle",
|
|
1365
|
+
"description": "The current page title, for context."
|
|
1362
1366
|
}
|
|
1363
1367
|
]
|
|
1364
1368
|
},
|
|
1365
1369
|
{
|
|
1366
1370
|
"name": "user-menu",
|
|
1367
|
-
"description": "",
|
|
1371
|
+
"description": "Replaces the entire user menu (the default avatar dropdown).",
|
|
1368
1372
|
"bindings": [
|
|
1369
1373
|
{
|
|
1374
|
+
"title": "binding",
|
|
1375
|
+
"type": {
|
|
1376
|
+
"name": "object"
|
|
1377
|
+
},
|
|
1370
1378
|
"name": "user",
|
|
1371
|
-
"
|
|
1379
|
+
"description": "The signed-in user."
|
|
1372
1380
|
}
|
|
1373
1381
|
]
|
|
1374
1382
|
},
|
|
1375
1383
|
{
|
|
1376
1384
|
"name": "user-icon",
|
|
1377
|
-
"description": "",
|
|
1385
|
+
"description": "Custom user avatar/icon in the dropdown trigger.",
|
|
1378
1386
|
"bindings": [
|
|
1379
1387
|
{
|
|
1388
|
+
"title": "binding",
|
|
1389
|
+
"type": {
|
|
1390
|
+
"name": "string"
|
|
1391
|
+
},
|
|
1380
1392
|
"name": "initial",
|
|
1381
|
-
"
|
|
1393
|
+
"description": "The first letter of the user's name."
|
|
1382
1394
|
}
|
|
1383
1395
|
]
|
|
1384
1396
|
},
|
|
1385
1397
|
{
|
|
1386
1398
|
"name": "user-menu-items",
|
|
1387
|
-
"description": "",
|
|
1399
|
+
"description": "Items for the default user dropdown menu.",
|
|
1388
1400
|
"bindings": [
|
|
1389
1401
|
{
|
|
1402
|
+
"title": "binding",
|
|
1403
|
+
"type": {
|
|
1404
|
+
"name": "object"
|
|
1405
|
+
},
|
|
1390
1406
|
"name": "user",
|
|
1391
|
-
"
|
|
1407
|
+
"description": "The signed-in user."
|
|
1392
1408
|
}
|
|
1393
1409
|
]
|
|
1394
1410
|
}
|
|
@@ -1399,40 +1415,40 @@
|
|
|
1399
1415
|
"name": "DXDashboardSidebar",
|
|
1400
1416
|
"category": "extended",
|
|
1401
1417
|
"filePath": "resources/js/components/extended/DXDashboardSidebar.vue",
|
|
1402
|
-
"description": "",
|
|
1418
|
+
"description": "Collapsible dashboard sidebar: renders a brand header plus grouped navigation from a `navigation` array, highlighting the item matching the current route. Groups can be plain labelled sections or accordion toggles that expand/collapse their items, and the active-route group opens automatically. The rail itself can collapse to an icons-only strip or hide entirely. Provides `brand` and `link` slots for custom rendering.",
|
|
1403
1419
|
"props": [
|
|
1404
1420
|
{
|
|
1405
1421
|
"name": "navigation",
|
|
1406
1422
|
"type": "Navigation",
|
|
1407
1423
|
"required": true,
|
|
1408
|
-
"description": ""
|
|
1424
|
+
"description": "Grouped navigation to render: an array of groups, each with a label and items."
|
|
1409
1425
|
},
|
|
1410
1426
|
{
|
|
1411
1427
|
"name": "currentUrl",
|
|
1412
1428
|
"type": "string",
|
|
1413
1429
|
"required": true,
|
|
1414
|
-
"description": ""
|
|
1430
|
+
"description": "The current route URL, used to highlight the matching nav item and open its group."
|
|
1415
1431
|
},
|
|
1416
1432
|
{
|
|
1417
1433
|
"name": "collapsed",
|
|
1418
1434
|
"type": "boolean",
|
|
1419
1435
|
"required": false,
|
|
1420
1436
|
"default": "false",
|
|
1421
|
-
"description": ""
|
|
1437
|
+
"description": "Collapse the rail to an icons-only strip, hiding labels and the brand title."
|
|
1422
1438
|
},
|
|
1423
1439
|
{
|
|
1424
1440
|
"name": "hidden",
|
|
1425
1441
|
"type": "boolean",
|
|
1426
1442
|
"required": false,
|
|
1427
1443
|
"default": "false",
|
|
1428
|
-
"description": ""
|
|
1444
|
+
"description": "Hide the sidebar entirely (`display: none`)."
|
|
1429
1445
|
},
|
|
1430
1446
|
{
|
|
1431
1447
|
"name": "title",
|
|
1432
1448
|
"type": "string",
|
|
1433
1449
|
"required": false,
|
|
1434
1450
|
"default": "'Dashboard'",
|
|
1435
|
-
"description": ""
|
|
1451
|
+
"description": "Sidebar title; its first letter is also used as the brand initial."
|
|
1436
1452
|
},
|
|
1437
1453
|
{
|
|
1438
1454
|
"name": "collapsibleGroups",
|
|
@@ -1452,44 +1468,82 @@
|
|
|
1452
1468
|
"events": [
|
|
1453
1469
|
{
|
|
1454
1470
|
"name": "toggle",
|
|
1455
|
-
"description": "",
|
|
1471
|
+
"description": "Emitted to request toggling the sidebar's collapsed/expanded state.",
|
|
1456
1472
|
"properties": []
|
|
1457
1473
|
}
|
|
1458
1474
|
],
|
|
1459
1475
|
"slots": [
|
|
1460
1476
|
{
|
|
1461
1477
|
"name": "brand",
|
|
1462
|
-
"description": "",
|
|
1478
|
+
"description": "Brand/logo area in the sidebar header. Defaults to the title's initial plus the full title (hidden when collapsed).",
|
|
1463
1479
|
"bindings": [
|
|
1464
1480
|
{
|
|
1481
|
+
"title": "binding",
|
|
1482
|
+
"type": {
|
|
1483
|
+
"name": "boolean"
|
|
1484
|
+
},
|
|
1465
1485
|
"name": "collapsed",
|
|
1466
|
-
"
|
|
1486
|
+
"description": "Whether the sidebar rail is collapsed to icons only."
|
|
1467
1487
|
},
|
|
1468
1488
|
{
|
|
1489
|
+
"title": "binding",
|
|
1490
|
+
"type": {
|
|
1491
|
+
"name": "string"
|
|
1492
|
+
},
|
|
1469
1493
|
"name": "title",
|
|
1470
|
-
"
|
|
1494
|
+
"description": "The sidebar title text."
|
|
1471
1495
|
}
|
|
1472
1496
|
]
|
|
1473
1497
|
},
|
|
1474
1498
|
{
|
|
1475
1499
|
"name": "link",
|
|
1476
|
-
"description": "",
|
|
1500
|
+
"description": "Renders a single navigation item link. Defaults to an anchor with optional icon, label, and badge.",
|
|
1477
1501
|
"bindings": [
|
|
1478
1502
|
{
|
|
1503
|
+
"title": "binding",
|
|
1504
|
+
"type": {
|
|
1505
|
+
"name": "object"
|
|
1506
|
+
},
|
|
1479
1507
|
"name": "item",
|
|
1480
|
-
"
|
|
1508
|
+
"description": "The navigation item (label, url, icon, badge, badgeColor)."
|
|
1481
1509
|
},
|
|
1482
1510
|
{
|
|
1483
|
-
"
|
|
1484
|
-
"
|
|
1511
|
+
"title": "binding",
|
|
1512
|
+
"type": {
|
|
1513
|
+
"name": "boolean"
|
|
1514
|
+
},
|
|
1515
|
+
"name": "isActive",
|
|
1516
|
+
"description": "Whether this item matches the current route."
|
|
1485
1517
|
},
|
|
1486
1518
|
{
|
|
1519
|
+
"title": "binding",
|
|
1520
|
+
"type": {
|
|
1521
|
+
"name": "boolean"
|
|
1522
|
+
},
|
|
1487
1523
|
"name": "collapsed",
|
|
1488
|
-
"
|
|
1524
|
+
"description": "Whether the sidebar rail is collapsed to icons only."
|
|
1489
1525
|
},
|
|
1490
1526
|
{
|
|
1491
|
-
"
|
|
1492
|
-
"
|
|
1527
|
+
"title": "binding",
|
|
1528
|
+
"type": {
|
|
1529
|
+
"name": "boolean"
|
|
1530
|
+
},
|
|
1531
|
+
"name": "isExpanded",
|
|
1532
|
+
"description": "Whether the item's group is currently expanded."
|
|
1533
|
+
}
|
|
1534
|
+
]
|
|
1535
|
+
},
|
|
1536
|
+
{
|
|
1537
|
+
"name": "footer",
|
|
1538
|
+
"description": "Utility/secondary links pinned to the bottom of the sidebar (help, changelog, sign-out, …), below the nav groups.",
|
|
1539
|
+
"bindings": [
|
|
1540
|
+
{
|
|
1541
|
+
"title": "binding",
|
|
1542
|
+
"type": {
|
|
1543
|
+
"name": "boolean"
|
|
1544
|
+
},
|
|
1545
|
+
"name": "collapsed",
|
|
1546
|
+
"description": "Whether the sidebar rail is collapsed to icons only."
|
|
1493
1547
|
}
|
|
1494
1548
|
]
|
|
1495
1549
|
}
|
|
@@ -1500,7 +1554,7 @@
|
|
|
1500
1554
|
"name": "DXField",
|
|
1501
1555
|
"category": "extended",
|
|
1502
1556
|
"filePath": "resources/js/components/extended/DXField.vue",
|
|
1503
|
-
"description": "",
|
|
1557
|
+
"description": "Renders a single `FieldDefinition` of any type (text, select, checkbox, switch, repeater, currency, percentage, file/image, component, etc.) with its label, validation error, hint and help. Used by `DXForm` and `DXTable`'s edit modal; exposes `value`, `span`, `info`, `hint` and `repeater-row` slots for per-field customisation.",
|
|
1504
1558
|
"props": [
|
|
1505
1559
|
{
|
|
1506
1560
|
"name": "field",
|
|
@@ -1537,79 +1591,127 @@
|
|
|
1537
1591
|
"slots": [
|
|
1538
1592
|
{
|
|
1539
1593
|
"name": "span",
|
|
1540
|
-
"description": "",
|
|
1594
|
+
"description": "Replaces the entire field with custom full-width content when `field.span` is set, bypassing the label and built-in control.",
|
|
1541
1595
|
"bindings": [
|
|
1542
1596
|
{
|
|
1597
|
+
"title": "binding",
|
|
1598
|
+
"type": {
|
|
1599
|
+
"name": "FieldDefinition"
|
|
1600
|
+
},
|
|
1543
1601
|
"name": "field",
|
|
1544
|
-
"
|
|
1602
|
+
"description": "The field definition being rendered."
|
|
1545
1603
|
},
|
|
1546
1604
|
{
|
|
1605
|
+
"title": "binding",
|
|
1606
|
+
"type": {
|
|
1607
|
+
"name": "any"
|
|
1608
|
+
},
|
|
1547
1609
|
"name": "model",
|
|
1548
|
-
"
|
|
1610
|
+
"description": "The model passed to field predicates (defaults to the live form data)."
|
|
1549
1611
|
},
|
|
1550
1612
|
{
|
|
1613
|
+
"title": "binding",
|
|
1614
|
+
"type": {
|
|
1615
|
+
"name": "any"
|
|
1616
|
+
},
|
|
1551
1617
|
"name": "value",
|
|
1552
|
-
"
|
|
1618
|
+
"description": "The current field value."
|
|
1553
1619
|
},
|
|
1554
1620
|
{
|
|
1621
|
+
"title": "binding",
|
|
1622
|
+
"type": {
|
|
1623
|
+
"name": "(value: any) => void"
|
|
1624
|
+
},
|
|
1555
1625
|
"name": "update",
|
|
1556
|
-
"
|
|
1626
|
+
"description": "Setter that writes the value back and clears the field's validation error."
|
|
1557
1627
|
}
|
|
1558
1628
|
]
|
|
1559
1629
|
},
|
|
1560
1630
|
{
|
|
1561
1631
|
"name": "value",
|
|
1562
|
-
"description": "",
|
|
1632
|
+
"description": "Replaces the built-in control with a custom value editor.",
|
|
1563
1633
|
"bindings": [
|
|
1564
1634
|
{
|
|
1635
|
+
"title": "binding",
|
|
1636
|
+
"type": {
|
|
1637
|
+
"name": "FieldDefinition"
|
|
1638
|
+
},
|
|
1565
1639
|
"name": "field",
|
|
1566
|
-
"
|
|
1640
|
+
"description": "The field definition being rendered."
|
|
1567
1641
|
},
|
|
1568
1642
|
{
|
|
1643
|
+
"title": "binding",
|
|
1644
|
+
"type": {
|
|
1645
|
+
"name": "any"
|
|
1646
|
+
},
|
|
1569
1647
|
"name": "model",
|
|
1570
|
-
"
|
|
1648
|
+
"description": "The model passed to field predicates (defaults to the live form data)."
|
|
1571
1649
|
},
|
|
1572
1650
|
{
|
|
1651
|
+
"title": "binding",
|
|
1652
|
+
"type": {
|
|
1653
|
+
"name": "any"
|
|
1654
|
+
},
|
|
1573
1655
|
"name": "value",
|
|
1574
|
-
"
|
|
1656
|
+
"description": "The current field value."
|
|
1575
1657
|
},
|
|
1576
1658
|
{
|
|
1659
|
+
"title": "binding",
|
|
1660
|
+
"type": {
|
|
1661
|
+
"name": "(value: any) => void"
|
|
1662
|
+
},
|
|
1577
1663
|
"name": "update",
|
|
1578
|
-
"
|
|
1664
|
+
"description": "Setter that writes the value back and clears the field's validation error."
|
|
1579
1665
|
}
|
|
1580
1666
|
]
|
|
1581
1667
|
},
|
|
1582
1668
|
{
|
|
1583
1669
|
"name": "info",
|
|
1584
|
-
"description": "",
|
|
1670
|
+
"description": "Rich info block rendered below the control.",
|
|
1585
1671
|
"bindings": [
|
|
1586
1672
|
{
|
|
1673
|
+
"title": "binding",
|
|
1674
|
+
"type": {
|
|
1675
|
+
"name": "FieldDefinition"
|
|
1676
|
+
},
|
|
1587
1677
|
"name": "field",
|
|
1588
|
-
"
|
|
1678
|
+
"description": "The field definition being rendered."
|
|
1589
1679
|
},
|
|
1590
1680
|
{
|
|
1681
|
+
"title": "binding",
|
|
1682
|
+
"type": {
|
|
1683
|
+
"name": "any"
|
|
1684
|
+
},
|
|
1591
1685
|
"name": "model",
|
|
1592
|
-
"
|
|
1686
|
+
"description": "The model passed to field predicates (defaults to the live form data)."
|
|
1593
1687
|
}
|
|
1594
1688
|
]
|
|
1595
1689
|
},
|
|
1596
1690
|
{
|
|
1597
1691
|
"name": "hint",
|
|
1598
|
-
"description": "",
|
|
1692
|
+
"description": "Overrides the field's hint text shown below the control.",
|
|
1599
1693
|
"bindings": [
|
|
1600
1694
|
{
|
|
1695
|
+
"title": "binding",
|
|
1696
|
+
"type": {
|
|
1697
|
+
"name": "FieldDefinition"
|
|
1698
|
+
},
|
|
1601
1699
|
"name": "field",
|
|
1602
|
-
"
|
|
1700
|
+
"description": "The field definition being rendered."
|
|
1603
1701
|
},
|
|
1604
1702
|
{
|
|
1703
|
+
"title": "binding",
|
|
1704
|
+
"type": {
|
|
1705
|
+
"name": "any"
|
|
1706
|
+
},
|
|
1605
1707
|
"name": "model",
|
|
1606
|
-
"
|
|
1708
|
+
"description": "The model passed to field predicates (defaults to the live form data)."
|
|
1607
1709
|
}
|
|
1608
1710
|
]
|
|
1609
1711
|
},
|
|
1610
1712
|
{
|
|
1611
1713
|
"name": "repeater-row",
|
|
1612
|
-
"description": "",
|
|
1714
|
+
"description": "Custom layout for a single repeater row, forwarded to `DXRepeater`'s `row` slot with its row props (row index, item, remove handler, etc.).",
|
|
1613
1715
|
"bindings": []
|
|
1614
1716
|
}
|
|
1615
1717
|
],
|
|
@@ -1619,7 +1721,7 @@
|
|
|
1619
1721
|
"name": "DXFieldLabel",
|
|
1620
1722
|
"category": "extended",
|
|
1621
1723
|
"filePath": "resources/js/components/extended/DXFieldLabel.vue",
|
|
1622
|
-
"description": "",
|
|
1724
|
+
"description": "A form field label with an optional info affordance that reveals help text in a hover/focus popover next to the label.",
|
|
1623
1725
|
"props": [
|
|
1624
1726
|
{
|
|
1625
1727
|
"name": "label",
|
|
@@ -1642,7 +1744,7 @@
|
|
|
1642
1744
|
"name": "DXForm",
|
|
1643
1745
|
"category": "extended",
|
|
1644
1746
|
"filePath": "resources/js/components/extended/DXForm.vue",
|
|
1645
|
-
"description": "",
|
|
1747
|
+
"description": "DXForm — the canonical form renderer. Driven by field definitions, with optional tabs. Renders every field through DXField (the single field engine), so flat and tabbed forms share one code path. Supports conditional fields/tabs, per-field slot overrides, async options, nested repeaters, and auto-switching to the first tab containing a validation error. Accepts either a `useForm` return or a `defineForm` return; with the latter `fields` may be omitted. Works with the fetch-based `useForm` composable (no Inertia required).",
|
|
1646
1748
|
"props": [
|
|
1647
1749
|
{
|
|
1648
1750
|
"name": "form",
|
|
@@ -1700,50 +1802,66 @@
|
|
|
1700
1802
|
"events": [
|
|
1701
1803
|
{
|
|
1702
1804
|
"name": "submit",
|
|
1703
|
-
"description": "",
|
|
1805
|
+
"description": "Emitted when the form is submitted, after the native submit is prevented.",
|
|
1704
1806
|
"properties": []
|
|
1705
1807
|
}
|
|
1706
1808
|
],
|
|
1707
1809
|
"slots": [
|
|
1708
1810
|
{
|
|
1709
1811
|
"name": "`tab-content(${tab.key})`",
|
|
1710
|
-
"description": "",
|
|
1812
|
+
"description": "Replaces the entire body of a tab, keyed by tab (slot name `tab-content(<tabKey>)`).",
|
|
1711
1813
|
"bindings": [
|
|
1712
1814
|
{
|
|
1713
1815
|
"name": "name",
|
|
1714
1816
|
"title": "binding"
|
|
1715
1817
|
},
|
|
1716
1818
|
{
|
|
1819
|
+
"title": "binding",
|
|
1820
|
+
"type": {
|
|
1821
|
+
"name": "FormTab"
|
|
1822
|
+
},
|
|
1717
1823
|
"name": "tab",
|
|
1718
|
-
"
|
|
1824
|
+
"description": "The tab definition being rendered."
|
|
1719
1825
|
},
|
|
1720
1826
|
{
|
|
1827
|
+
"title": "binding",
|
|
1828
|
+
"type": {
|
|
1829
|
+
"name": "object"
|
|
1830
|
+
},
|
|
1721
1831
|
"name": "model",
|
|
1722
|
-
"
|
|
1832
|
+
"description": "Live form data merged with `context`, for predicates."
|
|
1723
1833
|
}
|
|
1724
1834
|
]
|
|
1725
1835
|
},
|
|
1726
1836
|
{
|
|
1727
1837
|
"name": "`tab-before(${tab.key})`",
|
|
1728
|
-
"description": "",
|
|
1838
|
+
"description": "Content inserted above a tab's fields, keyed by tab (slot name `tab-before(<tabKey>)`).",
|
|
1729
1839
|
"bindings": [
|
|
1730
1840
|
{
|
|
1731
1841
|
"name": "name",
|
|
1732
1842
|
"title": "binding"
|
|
1733
1843
|
},
|
|
1734
1844
|
{
|
|
1845
|
+
"title": "binding",
|
|
1846
|
+
"type": {
|
|
1847
|
+
"name": "FormTab"
|
|
1848
|
+
},
|
|
1735
1849
|
"name": "tab",
|
|
1736
|
-
"
|
|
1850
|
+
"description": "The tab definition being rendered."
|
|
1737
1851
|
},
|
|
1738
1852
|
{
|
|
1853
|
+
"title": "binding",
|
|
1854
|
+
"type": {
|
|
1855
|
+
"name": "object"
|
|
1856
|
+
},
|
|
1739
1857
|
"name": "model",
|
|
1740
|
-
"
|
|
1858
|
+
"description": "Live form data merged with `context`, for predicates."
|
|
1741
1859
|
}
|
|
1742
1860
|
]
|
|
1743
1861
|
},
|
|
1744
1862
|
{
|
|
1745
1863
|
"name": "slotName",
|
|
1746
|
-
"description": "",
|
|
1864
|
+
"description": "Per-field overrides forwarded to DXField, keyed by field key: `value(<key>)`, `span(<key>)`, `info(<key>)`, `hint(<key>)`, `repeater-row(<key>)`.",
|
|
1747
1865
|
"bindings": [
|
|
1748
1866
|
{
|
|
1749
1867
|
"name": "name",
|
|
@@ -1753,29 +1871,41 @@
|
|
|
1753
1871
|
},
|
|
1754
1872
|
{
|
|
1755
1873
|
"name": "`tab-after(${tab.key})`",
|
|
1756
|
-
"description": "",
|
|
1874
|
+
"description": "Content inserted below a tab's fields, keyed by tab (slot name `tab-after(<tabKey>)`).",
|
|
1757
1875
|
"bindings": [
|
|
1758
1876
|
{
|
|
1759
1877
|
"name": "name",
|
|
1760
1878
|
"title": "binding"
|
|
1761
1879
|
},
|
|
1762
1880
|
{
|
|
1881
|
+
"title": "binding",
|
|
1882
|
+
"type": {
|
|
1883
|
+
"name": "FormTab"
|
|
1884
|
+
},
|
|
1763
1885
|
"name": "tab",
|
|
1764
|
-
"
|
|
1886
|
+
"description": "The tab definition being rendered."
|
|
1765
1887
|
},
|
|
1766
1888
|
{
|
|
1889
|
+
"title": "binding",
|
|
1890
|
+
"type": {
|
|
1891
|
+
"name": "object"
|
|
1892
|
+
},
|
|
1767
1893
|
"name": "model",
|
|
1768
|
-
"
|
|
1894
|
+
"description": "Live form data merged with `context`, for predicates."
|
|
1769
1895
|
}
|
|
1770
1896
|
]
|
|
1771
1897
|
},
|
|
1772
1898
|
{
|
|
1773
1899
|
"name": "footer",
|
|
1774
|
-
"description": "",
|
|
1900
|
+
"description": "Content rendered below the submit button (e.g. a cancel link or secondary actions).",
|
|
1775
1901
|
"bindings": [
|
|
1776
1902
|
{
|
|
1903
|
+
"title": "binding",
|
|
1904
|
+
"type": {
|
|
1905
|
+
"name": "UseFormReturn"
|
|
1906
|
+
},
|
|
1777
1907
|
"name": "form",
|
|
1778
|
-
"
|
|
1908
|
+
"description": "The resolved form instance (state, errors, submit helpers)."
|
|
1779
1909
|
}
|
|
1780
1910
|
]
|
|
1781
1911
|
}
|
|
@@ -1786,7 +1916,7 @@
|
|
|
1786
1916
|
"name": "DXRepeater",
|
|
1787
1917
|
"category": "extended",
|
|
1788
1918
|
"filePath": "resources/js/components/extended/DXRepeater.vue",
|
|
1789
|
-
"description": "",
|
|
1919
|
+
"description": "DXRepeater renders a nested, repeatable sub-form for a repeater field: a list of rows (each a group of sub-fields) with add/remove controls, honouring the field's `minItems`/`maxItems` limits.",
|
|
1790
1920
|
"props": [
|
|
1791
1921
|
{
|
|
1792
1922
|
"name": "form",
|
|
@@ -1817,27 +1947,47 @@
|
|
|
1817
1947
|
"slots": [
|
|
1818
1948
|
{
|
|
1819
1949
|
"name": "row",
|
|
1820
|
-
"description": "",
|
|
1950
|
+
"description": "Custom layout for a single repeater row, replacing the default sub-field stack.",
|
|
1821
1951
|
"bindings": [
|
|
1822
1952
|
{
|
|
1953
|
+
"title": "binding",
|
|
1954
|
+
"type": {
|
|
1955
|
+
"name": "object"
|
|
1956
|
+
},
|
|
1823
1957
|
"name": "row",
|
|
1824
|
-
"
|
|
1958
|
+
"description": "The current row's data object."
|
|
1825
1959
|
},
|
|
1826
1960
|
{
|
|
1961
|
+
"title": "binding",
|
|
1962
|
+
"type": {
|
|
1963
|
+
"name": "number"
|
|
1964
|
+
},
|
|
1827
1965
|
"name": "index",
|
|
1828
|
-
"
|
|
1966
|
+
"description": "The row's zero-based index."
|
|
1829
1967
|
},
|
|
1830
1968
|
{
|
|
1969
|
+
"title": "binding",
|
|
1970
|
+
"type": {
|
|
1971
|
+
"name": "FieldDefinition[]"
|
|
1972
|
+
},
|
|
1831
1973
|
"name": "fields",
|
|
1832
|
-
"
|
|
1974
|
+
"description": "The sub-field definitions for the row."
|
|
1833
1975
|
},
|
|
1834
1976
|
{
|
|
1977
|
+
"title": "binding",
|
|
1978
|
+
"type": {
|
|
1979
|
+
"name": "function"
|
|
1980
|
+
},
|
|
1835
1981
|
"name": "remove",
|
|
1836
|
-
"
|
|
1982
|
+
"description": "Removes this row (respects `minItems`)."
|
|
1837
1983
|
},
|
|
1838
1984
|
{
|
|
1985
|
+
"title": "binding",
|
|
1986
|
+
"type": {
|
|
1987
|
+
"name": "string"
|
|
1988
|
+
},
|
|
1839
1989
|
"name": "path",
|
|
1840
|
-
"
|
|
1990
|
+
"description": "The dot path into `form.data` for this row (e.g. `lines.0`)."
|
|
1841
1991
|
}
|
|
1842
1992
|
]
|
|
1843
1993
|
}
|
|
@@ -1848,7 +1998,7 @@
|
|
|
1848
1998
|
"name": "DXTable",
|
|
1849
1999
|
"category": "extended",
|
|
1850
2000
|
"filePath": "resources/js/components/extended/DXTable.vue",
|
|
1851
|
-
"description": "",
|
|
2001
|
+
"description": "Full-featured dashboard data table. Wraps `DTable` and adds three data modes (Inertia items, client-side, and API/provider), inline per-column filters, single-column sorting, pagination with a per-page selector, and an optional edit/create/delete modal driven by `DXForm`.",
|
|
1852
2002
|
"props": [
|
|
1853
2003
|
{
|
|
1854
2004
|
"name": "title",
|
|
@@ -2075,89 +2225,89 @@
|
|
|
2075
2225
|
"events": [
|
|
2076
2226
|
{
|
|
2077
2227
|
"name": "pageChange",
|
|
2078
|
-
"description": "",
|
|
2228
|
+
"description": "Emitted when the user navigates to a different page (all modes). Payload is the new 1-based page number.",
|
|
2079
2229
|
"properties": []
|
|
2080
2230
|
},
|
|
2081
2231
|
{
|
|
2082
2232
|
"name": "sortChange",
|
|
2083
|
-
"description": "",
|
|
2233
|
+
"description": "Emitted (Inertia mode) when the sort column or direction changes, with the active field key and order.",
|
|
2084
2234
|
"properties": []
|
|
2085
2235
|
},
|
|
2086
2236
|
{
|
|
2087
2237
|
"name": "filterChange",
|
|
2088
|
-
"description": "",
|
|
2238
|
+
"description": "Emitted when the inline column filter values change (debounced for server modes, immediate for client-side). Payload is the full filter map.",
|
|
2089
2239
|
"properties": []
|
|
2090
2240
|
},
|
|
2091
2241
|
{
|
|
2092
2242
|
"name": "perPageChange",
|
|
2093
|
-
"description": "",
|
|
2243
|
+
"description": "Emitted when the per-page selector value changes. Payload is the new page size.",
|
|
2094
2244
|
"properties": []
|
|
2095
2245
|
},
|
|
2096
2246
|
{
|
|
2097
2247
|
"name": "rowClicked",
|
|
2098
|
-
"description": "",
|
|
2248
|
+
"description": "Emitted when a table row is clicked, with the row item, its index, and the click event.",
|
|
2099
2249
|
"properties": []
|
|
2100
2250
|
},
|
|
2101
2251
|
{
|
|
2102
2252
|
"name": "rowCreated",
|
|
2103
|
-
"description": "",
|
|
2253
|
+
"description": "Emitted after a new item is successfully created via `createUrl`, with the created item and the raw response.",
|
|
2104
2254
|
"properties": []
|
|
2105
2255
|
},
|
|
2106
2256
|
{
|
|
2107
2257
|
"name": "createError",
|
|
2108
|
-
"description": "",
|
|
2258
|
+
"description": "Emitted when a create request fails, with the validation errors or error object.",
|
|
2109
2259
|
"properties": []
|
|
2110
2260
|
},
|
|
2111
2261
|
{
|
|
2112
2262
|
"name": "rowUpdated",
|
|
2113
|
-
"description": "",
|
|
2263
|
+
"description": "Emitted after a row is successfully updated (or, with no `editUrl`, when the modal is saved), with the item and the response/form data.",
|
|
2114
2264
|
"properties": []
|
|
2115
2265
|
},
|
|
2116
2266
|
{
|
|
2117
2267
|
"name": "editError",
|
|
2118
|
-
"description": "",
|
|
2268
|
+
"description": "Emitted when an update request fails, with the edited item and the error.",
|
|
2119
2269
|
"properties": []
|
|
2120
2270
|
},
|
|
2121
2271
|
{
|
|
2122
2272
|
"name": "rowDeleted",
|
|
2123
|
-
"description": "",
|
|
2273
|
+
"description": "Emitted after a row is successfully deleted via `deleteUrl`, with the deleted item and the response.",
|
|
2124
2274
|
"properties": []
|
|
2125
2275
|
},
|
|
2126
2276
|
{
|
|
2127
2277
|
"name": "deleteError",
|
|
2128
|
-
"description": "",
|
|
2278
|
+
"description": "Emitted when a delete request fails, with the item and the error.",
|
|
2129
2279
|
"properties": []
|
|
2130
2280
|
},
|
|
2131
2281
|
{
|
|
2132
2282
|
"name": "update:sortBy",
|
|
2133
|
-
"description": "",
|
|
2283
|
+
"description": "`v-model:sortBy` update, emitted with the normalized single-column sort array when sorting changes.",
|
|
2134
2284
|
"properties": []
|
|
2135
2285
|
},
|
|
2136
2286
|
{
|
|
2137
2287
|
"name": "update:filters",
|
|
2138
|
-
"description": "",
|
|
2288
|
+
"description": "`v-model:filters` update, emitted with the new filter map when a column filter changes.",
|
|
2139
2289
|
"properties": []
|
|
2140
2290
|
},
|
|
2141
2291
|
{
|
|
2142
2292
|
"name": "update:perPage",
|
|
2143
|
-
"description": "",
|
|
2293
|
+
"description": "`v-model:perPage` update, emitted with the new page size when the per-page selector changes.",
|
|
2144
2294
|
"properties": []
|
|
2145
2295
|
},
|
|
2146
2296
|
{
|
|
2147
2297
|
"name": "update:busy",
|
|
2148
|
-
"description": "",
|
|
2298
|
+
"description": "`v-model:busy` update, forwarded from the underlying table's provider loading state (provider mode).",
|
|
2149
2299
|
"properties": []
|
|
2150
2300
|
}
|
|
2151
2301
|
],
|
|
2152
2302
|
"slots": [
|
|
2153
2303
|
{
|
|
2154
2304
|
"name": "header",
|
|
2155
|
-
"description": "",
|
|
2305
|
+
"description": "Card header content; overrides the default title heading and the \"New {item}\" button.",
|
|
2156
2306
|
"bindings": []
|
|
2157
2307
|
},
|
|
2158
2308
|
{
|
|
2159
2309
|
"name": "name",
|
|
2160
|
-
"description": "",
|
|
2310
|
+
"description": "Custom rendering for a column's cell. Name it `cell(<fieldKey>)` to target a field; receives the underlying table cell scope.",
|
|
2161
2311
|
"bindings": [
|
|
2162
2312
|
{
|
|
2163
2313
|
"name": "name",
|
|
@@ -2167,107 +2317,163 @@
|
|
|
2167
2317
|
},
|
|
2168
2318
|
{
|
|
2169
2319
|
"name": "`edit-value(${key})`",
|
|
2170
|
-
"description": "",
|
|
2320
|
+
"description": "Custom input for field `<key>` in the edit/create modal, forwarded to DXForm. Name it `edit-value(<fieldKey>)`.",
|
|
2171
2321
|
"bindings": [
|
|
2172
2322
|
{
|
|
2173
2323
|
"name": "name",
|
|
2174
2324
|
"title": "binding"
|
|
2175
2325
|
},
|
|
2176
2326
|
{
|
|
2327
|
+
"title": "binding",
|
|
2328
|
+
"type": {
|
|
2329
|
+
"name": "object"
|
|
2330
|
+
},
|
|
2177
2331
|
"name": "item",
|
|
2178
|
-
"
|
|
2332
|
+
"description": "The row being edited (null in create mode)."
|
|
2179
2333
|
},
|
|
2180
2334
|
{
|
|
2335
|
+
"title": "binding",
|
|
2336
|
+
"type": {
|
|
2337
|
+
"name": "any"
|
|
2338
|
+
},
|
|
2181
2339
|
"name": "value",
|
|
2182
|
-
"
|
|
2340
|
+
"description": "The current field value."
|
|
2183
2341
|
},
|
|
2184
2342
|
{
|
|
2343
|
+
"title": "binding",
|
|
2344
|
+
"type": {
|
|
2345
|
+
"name": "Function"
|
|
2346
|
+
},
|
|
2185
2347
|
"name": "update",
|
|
2186
|
-
"
|
|
2348
|
+
"description": "Call with a new value to update the field."
|
|
2187
2349
|
},
|
|
2188
2350
|
{
|
|
2351
|
+
"title": "binding",
|
|
2352
|
+
"type": {
|
|
2353
|
+
"name": "object"
|
|
2354
|
+
},
|
|
2189
2355
|
"name": "field",
|
|
2190
|
-
"
|
|
2356
|
+
"description": "The field definition."
|
|
2191
2357
|
}
|
|
2192
2358
|
]
|
|
2193
2359
|
},
|
|
2194
2360
|
{
|
|
2195
2361
|
"name": "`edit-span(${key})`",
|
|
2196
|
-
"description": "",
|
|
2362
|
+
"description": "Full-width custom content for field `<key>` in the edit/create modal, forwarded to DXForm's span slot. Name it `edit-span(<fieldKey>)`.",
|
|
2197
2363
|
"bindings": [
|
|
2198
2364
|
{
|
|
2199
2365
|
"name": "name",
|
|
2200
2366
|
"title": "binding"
|
|
2201
2367
|
},
|
|
2202
2368
|
{
|
|
2369
|
+
"title": "binding",
|
|
2370
|
+
"type": {
|
|
2371
|
+
"name": "object"
|
|
2372
|
+
},
|
|
2203
2373
|
"name": "item",
|
|
2204
|
-
"
|
|
2374
|
+
"description": "The row being edited (null in create mode)."
|
|
2205
2375
|
},
|
|
2206
2376
|
{
|
|
2377
|
+
"title": "binding",
|
|
2378
|
+
"type": {
|
|
2379
|
+
"name": "any"
|
|
2380
|
+
},
|
|
2207
2381
|
"name": "value",
|
|
2208
|
-
"
|
|
2382
|
+
"description": "The current field value."
|
|
2209
2383
|
},
|
|
2210
2384
|
{
|
|
2385
|
+
"title": "binding",
|
|
2386
|
+
"type": {
|
|
2387
|
+
"name": "Function"
|
|
2388
|
+
},
|
|
2211
2389
|
"name": "update",
|
|
2212
|
-
"
|
|
2390
|
+
"description": "Call with a new value to update the field."
|
|
2213
2391
|
},
|
|
2214
2392
|
{
|
|
2393
|
+
"title": "binding",
|
|
2394
|
+
"type": {
|
|
2395
|
+
"name": "Function"
|
|
2396
|
+
},
|
|
2215
2397
|
"name": "close",
|
|
2216
|
-
"
|
|
2398
|
+
"description": "Call to close the edit modal."
|
|
2217
2399
|
}
|
|
2218
2400
|
]
|
|
2219
2401
|
},
|
|
2220
2402
|
{
|
|
2221
2403
|
"name": "`tab-content(${key})`",
|
|
2222
|
-
"description": "",
|
|
2404
|
+
"description": "Replaces the auto-rendered fields of edit-modal tab `<key>` with custom content. Name it `tab-content(<tabKey>)`.",
|
|
2223
2405
|
"bindings": [
|
|
2224
2406
|
{
|
|
2225
2407
|
"name": "name",
|
|
2226
2408
|
"title": "binding"
|
|
2227
2409
|
},
|
|
2228
2410
|
{
|
|
2411
|
+
"title": "binding",
|
|
2412
|
+
"type": {
|
|
2413
|
+
"name": "object"
|
|
2414
|
+
},
|
|
2229
2415
|
"name": "item",
|
|
2230
|
-
"
|
|
2416
|
+
"description": "The row being edited (null in create mode)."
|
|
2231
2417
|
},
|
|
2232
2418
|
{
|
|
2419
|
+
"title": "binding",
|
|
2420
|
+
"type": {
|
|
2421
|
+
"name": "object"
|
|
2422
|
+
},
|
|
2233
2423
|
"name": "tab",
|
|
2234
|
-
"
|
|
2424
|
+
"description": "The tab definition."
|
|
2235
2425
|
}
|
|
2236
2426
|
]
|
|
2237
2427
|
},
|
|
2238
2428
|
{
|
|
2239
2429
|
"name": "`tab-before(${key})`",
|
|
2240
|
-
"description": "",
|
|
2430
|
+
"description": "Custom content rendered before the fields of edit-modal tab `<key>`. Name it `tab-before(<tabKey>)`.",
|
|
2241
2431
|
"bindings": [
|
|
2242
2432
|
{
|
|
2243
2433
|
"name": "name",
|
|
2244
2434
|
"title": "binding"
|
|
2245
2435
|
},
|
|
2246
2436
|
{
|
|
2437
|
+
"title": "binding",
|
|
2438
|
+
"type": {
|
|
2439
|
+
"name": "object"
|
|
2440
|
+
},
|
|
2247
2441
|
"name": "item",
|
|
2248
|
-
"
|
|
2442
|
+
"description": "The row being edited (null in create mode)."
|
|
2249
2443
|
},
|
|
2250
2444
|
{
|
|
2445
|
+
"title": "binding",
|
|
2446
|
+
"type": {
|
|
2447
|
+
"name": "object"
|
|
2448
|
+
},
|
|
2251
2449
|
"name": "tab",
|
|
2252
|
-
"
|
|
2450
|
+
"description": "The tab definition."
|
|
2253
2451
|
}
|
|
2254
2452
|
]
|
|
2255
2453
|
},
|
|
2256
2454
|
{
|
|
2257
2455
|
"name": "`tab-after(${key})`",
|
|
2258
|
-
"description": "",
|
|
2456
|
+
"description": "Custom content rendered after the fields of edit-modal tab `<key>`. Name it `tab-after(<tabKey>)`.",
|
|
2259
2457
|
"bindings": [
|
|
2260
2458
|
{
|
|
2261
2459
|
"name": "name",
|
|
2262
2460
|
"title": "binding"
|
|
2263
2461
|
},
|
|
2264
2462
|
{
|
|
2463
|
+
"title": "binding",
|
|
2464
|
+
"type": {
|
|
2465
|
+
"name": "object"
|
|
2466
|
+
},
|
|
2265
2467
|
"name": "item",
|
|
2266
|
-
"
|
|
2468
|
+
"description": "The row being edited (null in create mode)."
|
|
2267
2469
|
},
|
|
2268
2470
|
{
|
|
2471
|
+
"title": "binding",
|
|
2472
|
+
"type": {
|
|
2473
|
+
"name": "object"
|
|
2474
|
+
},
|
|
2269
2475
|
"name": "tab",
|
|
2270
|
-
"
|
|
2476
|
+
"description": "The tab definition."
|
|
2271
2477
|
}
|
|
2272
2478
|
]
|
|
2273
2479
|
}
|