- FieldRelationContract.WritableForeignKey makes a belongsTo field over a protected foreign key writable; the protected key list is unchanged - cabana.RelationLockProvider names related ids an administrator may not add or remove: options and labels carry locked, and a create or update that changes the locked subset is 403 before any row is written - columns.yaml invisible keeps a column searchable and out of the rows - a controller implementing pact.FilterOptions serves a scope filter's choices before the model - SPA: locked chips and options in RelationField, DataTable skips invisible columns - README, docs, OpenAPI document, TS types and dist updated
46 lines
1.8 KiB
JSON
46 lines
1.8 KiB
JSON
{
|
|
"data": {
|
|
"title": "People",
|
|
"recordsPerPage": 20,
|
|
"perPageOptions": [],
|
|
"showSearch": true,
|
|
"showSetup": false,
|
|
"showCheckboxes": true,
|
|
"showSorting": true,
|
|
"searchTerm": "search",
|
|
"recordUrl": "acme/roster/people/preview/:id",
|
|
"toolbarButtons": ["create", "delete"],
|
|
"toolbarActions": [],
|
|
"assets": { "scripts": [], "styles": [] },
|
|
"columns": [
|
|
{ "key": "name", "label": "Name", "searchable": true, "sortable": true },
|
|
{ "key": "email", "label": "Email", "searchable": true, "sortable": true, "invisible": true },
|
|
{ "key": "slug", "label": "Slug", "searchable": false, "sortable": true }
|
|
],
|
|
"filters": [],
|
|
"rowActions": [],
|
|
"bulkActions": [
|
|
{ "name": "delete", "label": "Delete selected" },
|
|
{ "name": "activate", "label": "Activate", "confirm": "Activate the selected people?" },
|
|
{ "name": "archive", "label": "Archive" }
|
|
],
|
|
"messages": {
|
|
"create": { "other": "New person" },
|
|
"deleteConfirm": { "other": "Delete the selected (:count)?" },
|
|
"deleteSelected": { "other": "Delete selected" },
|
|
"deleted": { "one": "Deleted :count record", "other": "Deleted :count records" },
|
|
"empty": { "other": "There are no records in this view." },
|
|
"emptySearch": { "other": "Nothing found" },
|
|
"emptySearchHint": { "other": "No record matches “:term”. Try another search." },
|
|
"recordCount": { "one": ":count record", "other": ":count records" },
|
|
"searchPrompt": { "other": "Search…" },
|
|
"selected": { "other": ":count selected" },
|
|
"rowStateDeleted": { "other": "Deleted" },
|
|
"rowStateNegative": { "other": "Blocked" },
|
|
"rowStateDisabled": { "other": "Not active" }
|
|
},
|
|
"meta": { "locale": "en" }
|
|
},
|
|
"meta": { "locale": "en" }
|
|
}
|