All files / realm/blong-access/meta/model accessActionModel.ts

100% Statements 56/56
100% Branches 2/2
100% Functions 1/1
100% Lines 56/56

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 571x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 1x  
import {model} from '@feasibleone/blong';
 
/**
 * accessActionModel — browse-only view of the registered actions.
 *
 * `actionName` is the display name (lives in `core_resource.resourceName`) and
 * is provided by the custom `access.action.find` handler. No Create/Edit/Delete
 * toolbar — the entity is not editable from the UI.
 */
export default model(
    () =>
        async function accessActionModel() {
            return {
                subject: 'access',
                object: 'action',
                objectTitle: 'Action',
                public: true,
                nameField: 'action.actionName',
 
                schema: {
                    properties: {
                        action: {
                            properties: {
                                actionName: {
                                    title: 'Name',
                                    filter: true,
                                    sort: true,
                                },
                                description: {
                                    title: 'Description',
                                },
                                // server schema defined:
                                // actionId: {},
                            },
                            widget: {
                                columns: ['actionName', 'description'],
                            },
                        },
                    },
                },
 
                cards: {
                    browse: {
                        label: 'Actions',
                        widgets: ['action'],
                    },
                },
 
                browser: {
                    title: 'Actions',
                    icon: 'pi pi-bolt',
                    toolbar: [],
                },
            };
        },
);