{ "name": "repairs", "type": "base", "system": false, "listRule": "@request.auth.id != ''", "viewRule": "@request.auth.id != ''", "createRule": "@request.auth.id != ''", "updateRule": "@request.auth.id != ''", "deleteRule": "@request.auth.id != ''", "fields": [ { "name": "repair_number", "type": "text", "required": true, "options": { "min": 1, "max": 50, "pattern": "" } }, { "name": "customer", "type": "relation", "required": false, "options": { "collectionId": "REPLACE_CUSTOMERS_COLLECTION_ID", "maxSelect": 1, "minSelect": null, "displayFields": [] } }, { "name": "company", "type": "relation", "required": false, "options": { "collectionId": "REPLACE_COMPANIES_COLLECTION_ID", "maxSelect": 1, "minSelect": null, "displayFields": [] } }, { "name": "order", "type": "relation", "required": false, "options": { "collectionId": "REPLACE_ORDERS_COLLECTION_ID", "maxSelect": 1, "minSelect": null, "displayFields": [] } }, { "name": "status", "type": "select", "required": true, "options": { "maxSelect": 1, "values": ["new", "assessing", "quoted", "approved", "in_progress", "completed", "cancelled"] } }, { "name": "item_description", "type": "text", "required": true, "options": { "min": 1, "max": 5000, "pattern": "" } }, { "name": "fault_description", "type": "text", "required": true, "options": { "min": 1, "max": 5000, "pattern": "" } }, { "name": "notes", "type": "text", "required": false, "options": { "min": null, "max": 5000, "pattern": "" } } ], "indexes": [ "CREATE UNIQUE INDEX idx_repairs_number ON repairs (repair_number)", "CREATE INDEX idx_repairs_status ON repairs (status)", "CREATE INDEX idx_repairs_customer ON repairs (customer)", "CREATE INDEX idx_repairs_order ON repairs (order)" ] }