feat(12.1-01): list row states from one controller call per page
- pact.ListRowStates with the fixed RowState set deleted, negative, disabled - list response meta.row_states keyed by row id; unknown values dropped - list messages rowStateDeleted, rowStateNegative, rowStateDisabled - update writes through the scope the load used, so a soft-deleted record a controller includes stays soft-deleted - DataTable row state badges and text styles - roster fixture, smoke tests, OpenAPI, TS types, dist, READMEs, docs
This commit is contained in:
@@ -99,6 +99,15 @@
|
||||
},
|
||||
"selected": {
|
||||
"other": "Selected :count"
|
||||
},
|
||||
"rowStateDeleted": {
|
||||
"other": "Deleted"
|
||||
},
|
||||
"rowStateNegative": {
|
||||
"other": "Blocked"
|
||||
},
|
||||
"rowStateDisabled": {
|
||||
"other": "Inactive"
|
||||
}
|
||||
},
|
||||
"meta": {
|
||||
|
||||
5
admin/tests/fixtures/roster.list-schema.json
vendored
5
admin/tests/fixtures/roster.list-schema.json
vendored
@@ -33,7 +33,10 @@
|
||||
"emptySearchHint": { "other": "No record matches “:term”. Try another search." },
|
||||
"recordCount": { "one": ":count record", "other": ":count records" },
|
||||
"searchPrompt": { "other": "Search…" },
|
||||
"selected": { "other": ":count selected" }
|
||||
"selected": { "other": ":count selected" },
|
||||
"rowStateDeleted": { "other": "Deleted" },
|
||||
"rowStateNegative": { "other": "Blocked" },
|
||||
"rowStateDisabled": { "other": "Not active" }
|
||||
},
|
||||
"meta": { "locale": "en" }
|
||||
},
|
||||
|
||||
11
admin/tests/fixtures/roster.list.json
vendored
11
admin/tests/fixtures/roster.list.json
vendored
@@ -4,5 +4,14 @@
|
||||
{ "id": 2, "name": "Bob Stone", "email": "bob@example.test" },
|
||||
{ "id": 3, "name": "Cy Young", "email": "cy@example.test" }
|
||||
],
|
||||
"meta": { "page": 1, "per_page": 20, "total": 3, "last_page": 1 }
|
||||
"meta": {
|
||||
"page": 1,
|
||||
"per_page": 20,
|
||||
"total": 3,
|
||||
"last_page": 1,
|
||||
"row_states": {
|
||||
"2": ["deleted", "negative"],
|
||||
"3": ["disabled", "starred"]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,10 @@
|
||||
"emptySearchHint": { "other": "No widget matches “:term”." },
|
||||
"recordCount": { "one": ":count widget", "other": ":count widgets" },
|
||||
"searchPrompt": { "other": "Search widgets…" },
|
||||
"selected": { "other": "Selected :count" }
|
||||
"selected": { "other": "Selected :count" },
|
||||
"rowStateDeleted": { "other": "Deleted" },
|
||||
"rowStateNegative": { "other": "Blocked" },
|
||||
"rowStateDisabled": { "other": "Inactive" }
|
||||
},
|
||||
"meta": { "locale": "en" }
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user