@tldraw/validate
Validation functions used by tldraw.
These are especially useful when used in conjunction with our shapes to validate their schemas.
For example, for TLImageShape we have the following to help make sure the properties on a shape are consistent:
export const imageShapeProps: RecordProps<TLImageShape> = {
w: T.nonZeroNumber,
h: T.nonZeroNumber,
playing: T.boolean,
url: T.linkUrl,
assetId: assetIdValidator.nullable(),
crop: ImageShapeCrop.nullable(),
flipX: T.boolean,
flipY: T.boolean,
}
We also use the validation functions for API requests. For example, to check that the query is valid:
const queryValidator = T.object({
w: T.string.optional(),
q: T.string.optional(),
})
queryValidator.validate(request.query)
Contribution
Please see our contributing guide. Found a bug? Please submit an issue.
License
This project is licensed under the MIT License found here. The tldraw SDK is provided under the tldraw license.
Trademarks
Copyright (c) 2024-present tldraw Inc. The tldraw name and logo are trademarks of tldraw. Please see our trademark guidelines for info on acceptable usage.
Contact
Find us on Twitter/X at @tldraw.
Have questions, comments or feedback? Join our discord or start a discussion. For the latest news and release notes, visit tldraw.dev.