✨ feat(schema): enhance API configuration schemas with new properties and validations
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
- Updated collection.json to include upload defaults, audit logging, query limits, and more. - Enhanced collectionNavigation.json with viewHint configurations. - Added project-wide upload defaults and hook configurations in config.json. - Expanded field.json to support new field types, validations, and properties. - Improved fieldMeta.json with additional widget configurations and properties. - Updated hooks.json to include new bulk operation hooks and audit logging. - Enhanced imageFilter.json with additional image processing options. - Added timeout properties to job.json for better execution control. - Refined permissions.json to allow more granular control over HTTP method permissions and added filter and field visibility options.
This commit is contained in:
@@ -35,6 +35,24 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"upload": {
|
||||
"type": "object",
|
||||
"description": "project-wide upload defaults and restrictions",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"maxBodySize": {
|
||||
"type": "string",
|
||||
"description": "default request body size limit for collections in this project (e.g. '50MB')"
|
||||
},
|
||||
"allowedMimeTypes": {
|
||||
"type": "array",
|
||||
"description": "project-wide allowed MIME types for file uploads; empty means all types are allowed",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"collections": {
|
||||
"type": "array",
|
||||
"description": "list of collections in this project",
|
||||
@@ -150,6 +168,59 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"hook": {
|
||||
"type": "object",
|
||||
"description": "project-level hook configuration (cache and ratelimit)",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"cache": {
|
||||
"type": "object",
|
||||
"description": "hook cache configuration",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"maxEntries": {
|
||||
"type": "integer",
|
||||
"description": "maximum number of cache entries"
|
||||
},
|
||||
"defaultTTL": {
|
||||
"type": "string",
|
||||
"description": "default time-to-live (e.g. '5m', '1h')"
|
||||
}
|
||||
}
|
||||
},
|
||||
"ratelimit": {
|
||||
"type": "object",
|
||||
"description": "hook ratelimit configuration",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"backoffInitialDelay": {
|
||||
"type": "string",
|
||||
"description": "initial backoff delay (e.g. '1s')"
|
||||
},
|
||||
"backoffMaxDelay": {
|
||||
"type": "string",
|
||||
"description": "maximum backoff delay (e.g. '5m')"
|
||||
},
|
||||
"backoffResetAfter": {
|
||||
"type": "string",
|
||||
"description": "reset backoff after this duration of no failures (e.g. '15m')"
|
||||
},
|
||||
"windowSize": {
|
||||
"type": "string",
|
||||
"description": "sliding window size (e.g. '1m')"
|
||||
},
|
||||
"windowMaxHits": {
|
||||
"type": "integer",
|
||||
"description": "maximum hits allowed per window"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"strictFields": {
|
||||
"type": "boolean",
|
||||
"description": "reject unknown fields not defined in the fields array (project-wide default)"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
|
||||
Reference in New Issue
Block a user