The following is a list of all features supported by the library:
- Bundle only used actions, classes and enums (a.k.a kaltura types) in your application to reduce bundle size.
- Represent each kaltura types as a typed object with simple API.
- Use generated action classes to easily access Kaltura services.
- Invoke multi-requests against the server.
- Handle each request response separately.
- Expose interceptors to handle multi-request responses together.
- Use simple API to define dependent properties between requests using placeholders.
- Support default properties value in requests.
- Support the following property types:
- Dates.
- Simple types (number, string, boolean).
- Enums (both numeric enums or string enums).
- Kaltura objects including inheritance and fallback mechanism.
- Kaltura array & map
- Handle 'readonly' fields, guard against mutating them or sending them to the server.
- Ability to upload files including abort & retry operations.
- Hide complex server API syntax such as:
- Classify objects using 'objectType' property.
- Mark Field for deletion
- Runtime configuration to seamlessly attach properties to all the requests.
- Valid KS
- Partner Id
- Client Tag
- Attach 'apiVersion' to each request
- Upload file with chunk support
- Resume file upload action
- Add unit-tests
- Support requests that serve files by returning a valid download url for that files.
- AOT compile support (for kaltura-ngx-client library)
- Simplify syntax of enums representing strings.
- Parse relatedObjects in responses from the server
Below is a list of features to be added:
- Generate
kalsig
per request. - Request timeout support
- Cancel file upload should abort request
- When updating an object, ignore properties marked as insert only property.
- Code documentation of classes/enums/actions.
- Add developer/api guide.
- Warn against deprecated classes/enums/actions.
- Protect against bundling the complete library by mistake.
- Support setting 'undefined' for required properties when using 'setDependency' in multiple request.