2023-06-23 09:14:13 +00:00
|
|
|
/**
|
|
|
|
* This file was auto-generated by openapi-typescript.
|
|
|
|
* Do not make direct changes to the file.
|
|
|
|
*/
|
|
|
|
|
2023-08-16 01:59:19 +00:00
|
|
|
|
2023-06-23 09:14:13 +00:00
|
|
|
export type paths = {
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/sessions/": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List Sessions
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a list of sessions, optionally searching
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["list_sessions"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Create Session
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Creates a new session, optionally initializing it with an invocation graph
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["create_session"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/sessions/{session_id}": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Session
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a session
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["get_session"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/sessions/{session_id}/nodes": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Node
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Adds a node to the graph
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["add_node"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/sessions/{session_id}/nodes/{node_path}": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Update Node
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Updates a node in the graph and removes all linked edges
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
put: operations["update_node"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Delete Node
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Deletes a node in the graph and removes all linked edges
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
delete: operations["delete_node"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/sessions/{session_id}/edges": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Edge
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Adds an edge to the graph
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["add_edge"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/sessions/{session_id}/edges/{from_node_id}/{from_field}/{to_node_id}/{to_field}": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Delete Edge
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Deletes an edge from the graph
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
delete: operations["delete_edge"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/sessions/{session_id}/invoke": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Invoke Session
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Invokes a session
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
put: operations["invoke_session"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Cancel Session Invoke
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Invokes a session
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
delete: operations["cancel_session_invoke"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/models/": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List Models
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a list of models
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["list_models"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/models/{base_model}/{model_type}/{model_name}": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Delete Model
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Delete Model
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
delete: operations["del_model"];
|
2023-07-07 06:08:30 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Update Model
|
2023-07-17 01:50:35 +00:00
|
|
|
* @description Update model contents with a new config. If the model name or base fields are changed, then the model is renamed.
|
2023-07-07 06:08:30 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
patch: operations["update_model"];
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/models/import": {
|
2023-07-15 15:06:57 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Import Model
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Add a model using its local path, repo_id, or remote URL. Model characteristics will be probed and configured automatically
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["import_model"];
|
2023-07-15 15:06:57 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/models/add": {
|
2023-07-15 15:06:57 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Model
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Add a model using the configuration information appropriate for its type. Only local models can be added by path
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["add_model"];
|
2023-07-15 15:06:57 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/models/convert/{base_model}/{model_type}/{model_name}": {
|
2023-07-07 06:08:30 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Convert Model
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Convert a checkpoint model into a diffusers model, optionally saving to the indicated destination directory, or `models` if none.
|
2023-07-07 06:08:30 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
put: operations["convert_model"];
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/models/search": {
|
2023-07-15 15:06:57 +00:00
|
|
|
/** Search For Models */
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["search_for_models"];
|
2023-07-15 15:06:57 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/models/ckpt_confs": {
|
2023-07-15 15:06:57 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List Ckpt Configs
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Return a list of the legacy checkpoint configuration files stored in `ROOT/configs/stable-diffusion`, relative to ROOT.
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["list_ckpt_configs"];
|
2023-07-15 15:06:57 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/models/sync": {
|
2023-07-15 15:06:57 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Sync To Config
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Call after making changes to models.yaml, autoimport directories or models directory to synchronize
|
|
|
|
* in-memory data structures with disk data structures.
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["sync_to_config"];
|
2023-07-15 15:06:57 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/models/merge/{base_model}": {
|
2023-07-07 06:08:30 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Merge Models
|
2023-07-07 06:08:30 +00:00
|
|
|
* @description Convert a checkpoint model into a diffusers model
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
put: operations["merge_models"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/upload": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Upload Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Uploads an image
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["upload_image"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/i/{image_name}": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Dto
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description Gets an image's DTO
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["get_image_dto"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Delete Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Deletes an image
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
delete: operations["delete_image"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Update Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Updates an image
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
patch: operations["update_image"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/clear-intermediates": {
|
2023-07-19 14:55:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Clear Intermediates
|
2023-07-20 10:48:35 +00:00
|
|
|
* @description Clears all intermediates
|
2023-07-19 14:55:29 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["clear_intermediates"];
|
2023-07-19 14:55:29 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/i/{image_name}/metadata": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Metadata
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets an image's metadata
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["get_image_metadata"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/i/{image_name}/full": {
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Full
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description Gets a full-resolution image file
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["get_image_full"];
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Full
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description Gets a full-resolution image file
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
head: operations["get_image_full"];
|
2023-07-12 15:15:09 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/i/{image_name}/thumbnail": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Thumbnail
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a thumbnail image file
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["get_image_thumbnail"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/i/{image_name}/urls": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Urls
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets an image and thumbnail URL
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["get_image_urls"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/": {
|
2023-07-31 08:16:52 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List Image Dtos
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description Gets a list of image DTOs
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["list_image_dtos"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/delete": {
|
2023-07-31 08:16:52 +00:00
|
|
|
/** Delete Images From List */
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["delete_images_from_list"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/star": {
|
2023-08-15 16:55:28 +00:00
|
|
|
/** Star Images In List */
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["star_images_in_list"];
|
2023-08-15 16:55:28 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/images/unstar": {
|
2023-08-15 16:55:28 +00:00
|
|
|
/** Unstar Images In List */
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["unstar_images_in_list"];
|
2023-08-15 16:55:28 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/boards/": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List Boards
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a list of boards
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["list_boards"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Create Board
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Creates a board
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["create_board"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/boards/{board_id}": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Board
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a board
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["get_board"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Delete Board
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Deletes a board
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
delete: operations["delete_board"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Update Board
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Updates a board
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
patch: operations["update_board"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/boards/{board_id}/image_names": {
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List All Board Image Names
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
* @description Gets a list of images for a board
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["list_all_board_image_names"];
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/board_images/": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Image To Board
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Creates a board_image
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["add_image_to_board"];
|
2023-07-31 08:16:52 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Remove Image From Board
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description Removes an image from its board, if it had one
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
delete: operations["remove_image_from_board"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/board_images/batch": {
|
2023-07-31 08:16:52 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Images To Board
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description Adds a list of images to a board
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["add_images_to_board"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/board_images/batch/delete": {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Remove Images From Board
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description Removes a list of images from their board, if they had one
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["remove_images_from_board"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/app/version": {
|
2023-07-08 09:31:17 +00:00
|
|
|
/** Get Version */
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["app_version"];
|
2023-07-12 15:56:40 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/app/config": {
|
2023-07-12 15:56:40 +00:00
|
|
|
/** Get Config */
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["get_config"];
|
2023-07-08 09:31:17 +00:00
|
|
|
};
|
2023-08-16 01:59:19 +00:00
|
|
|
"/api/v1/app/logging": {
|
2023-07-20 15:45:54 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Log Level
|
2023-07-20 15:45:54 +00:00
|
|
|
* @description Returns the log level
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
get: operations["get_log_level"];
|
2023-07-20 15:45:54 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Set Log Level
|
2023-07-20 15:45:54 +00:00
|
|
|
* @description Sets the log verbosity level
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
post: operations["set_log_level"];
|
2023-07-20 15:45:54 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
export type webhooks = Record<string, never>;
|
|
|
|
|
|
|
|
export type components = {
|
|
|
|
schemas: {
|
2023-07-31 08:16:52 +00:00
|
|
|
/** AddImagesToBoardResult */
|
|
|
|
AddImagesToBoardResult: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Board Id
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description The id of the board the images were added to
|
|
|
|
*/
|
|
|
|
board_id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Added Image Names
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description The image names that were added to the board
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
added_image_names: string[];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Integers
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Adds two numbers
|
|
|
|
*/
|
|
|
|
AddInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* A
|
|
|
|
* @description The first number
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
a?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* B
|
|
|
|
* @description The second number
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
b?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default add
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "add";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-08 09:31:17 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* AppConfig
|
2023-07-12 15:56:40 +00:00
|
|
|
* @description App Config Response
|
|
|
|
*/
|
|
|
|
AppConfig: {
|
2023-07-13 05:22:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Infill Methods
|
2023-07-13 05:22:18 +00:00
|
|
|
* @description List of available infill methods
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
infill_methods: string[];
|
2023-07-26 08:20:20 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Upscaling Methods
|
2023-07-26 08:20:20 +00:00
|
|
|
* @description List of upscaling methods
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
upscaling_methods: components["schemas"]["Upscaler"][];
|
2023-07-26 08:20:20 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Nsfw Methods
|
2023-07-26 08:20:20 +00:00
|
|
|
* @description List of NSFW checking methods
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
nsfw_methods: string[];
|
2023-07-26 08:20:20 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Watermarking Methods
|
2023-07-26 08:20:20 +00:00
|
|
|
* @description List of invisible watermark methods
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
watermarking_methods: string[];
|
2023-07-12 15:56:40 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* AppVersion
|
2023-07-08 09:31:17 +00:00
|
|
|
* @description App Version Response
|
|
|
|
*/
|
|
|
|
AppVersion: {
|
2023-07-13 05:22:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Version
|
2023-07-13 05:22:18 +00:00
|
|
|
* @description App version
|
|
|
|
*/
|
2023-07-08 09:31:17 +00:00
|
|
|
version: string;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* BaseModelType
|
|
|
|
* @description An enumeration.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
BaseModelType: "sd-1" | "sd-2" | "sdxl" | "sdxl-refiner";
|
2023-08-23 19:25:24 +00:00
|
|
|
/**
|
|
|
|
* Blank Image
|
|
|
|
* @description Creates a blank image and forwards it to the pipeline
|
|
|
|
*/
|
|
|
|
BlankImageInvocation: {
|
|
|
|
/**
|
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-23 19:25:24 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-23 19:25:24 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-23 19:25:24 +00:00
|
|
|
/**
|
|
|
|
* Width
|
|
|
|
* @description The width of the image
|
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
width?: number;
|
|
|
|
/**
|
|
|
|
* Height
|
|
|
|
* @description The height of the image
|
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
height?: number;
|
|
|
|
/**
|
|
|
|
* Mode
|
|
|
|
* @description The mode of the image
|
|
|
|
* @default RGB
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
mode?: "RGB" | "RGBA";
|
|
|
|
/**
|
|
|
|
* Color
|
|
|
|
* @description The color of the image
|
|
|
|
* @default {
|
|
|
|
* "r": 0,
|
|
|
|
* "g": 0,
|
|
|
|
* "b": 0,
|
|
|
|
* "a": 255
|
|
|
|
* }
|
|
|
|
*/
|
|
|
|
color?: components["schemas"]["ColorField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default blank_image
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "blank_image";
|
2023-08-23 19:25:24 +00:00
|
|
|
};
|
2023-08-22 05:15:00 +00:00
|
|
|
/**
|
|
|
|
* Blend Latents
|
|
|
|
* @description Blend two latents using a given alpha. Latents must have same size.
|
|
|
|
*/
|
|
|
|
BlendLatentsInvocation: {
|
|
|
|
/**
|
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-22 05:15:00 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-22 05:15:00 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-22 05:15:00 +00:00
|
|
|
/**
|
|
|
|
* Latents A
|
|
|
|
* @description Latents tensor
|
|
|
|
*/
|
|
|
|
latents_a?: components["schemas"]["LatentsField"];
|
|
|
|
/**
|
|
|
|
* Latents B
|
|
|
|
* @description Latents tensor
|
|
|
|
*/
|
|
|
|
latents_b?: components["schemas"]["LatentsField"];
|
|
|
|
/**
|
|
|
|
* Alpha
|
|
|
|
* @description Blending factor. 0.0 = use input A only, 1.0 = use input B only, 0.5 = 50% mix of input A and input B.
|
|
|
|
* @default 0.5
|
|
|
|
*/
|
|
|
|
alpha?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default lblend
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "lblend";
|
2023-08-22 05:15:00 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** BoardChanges */
|
|
|
|
BoardChanges: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Board Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The board's new name.
|
|
|
|
*/
|
|
|
|
board_name?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Cover Image Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The name of the board's new cover image.
|
|
|
|
*/
|
|
|
|
cover_image_name?: string;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* BoardDTO
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Deserialized board record with cover image URL and image count.
|
|
|
|
*/
|
|
|
|
BoardDTO: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Board Id
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The unique ID of the board.
|
|
|
|
*/
|
|
|
|
board_id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Board Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The name of the board.
|
|
|
|
*/
|
|
|
|
board_name: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Created At
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The created timestamp of the board.
|
|
|
|
*/
|
|
|
|
created_at: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Updated At
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The updated timestamp of the board.
|
|
|
|
*/
|
|
|
|
updated_at: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Deleted At
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The deleted timestamp of the board.
|
|
|
|
*/
|
|
|
|
deleted_at?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Cover Image Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The name of the board's cover image.
|
|
|
|
*/
|
|
|
|
cover_image_name?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Count
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The number of images in the board.
|
|
|
|
*/
|
|
|
|
image_count: number;
|
|
|
|
};
|
2023-07-31 08:16:52 +00:00
|
|
|
/** Body_add_image_to_board */
|
|
|
|
Body_add_image_to_board: {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Board Id
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The id of the board to add to
|
|
|
|
*/
|
|
|
|
board_id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The name of the image to add
|
|
|
|
*/
|
|
|
|
image_name: string;
|
|
|
|
};
|
2023-07-31 08:16:52 +00:00
|
|
|
/** Body_add_images_to_board */
|
|
|
|
Body_add_images_to_board: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Board Id
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description The id of the board to add to
|
|
|
|
*/
|
|
|
|
board_id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Names
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description The names of the images to add
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
image_names: string[];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
/** Body_delete_images_from_list */
|
|
|
|
Body_delete_images_from_list: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Names
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description The list of names of images to delete
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
image_names: string[];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/** Body_import_model */
|
|
|
|
Body_import_model: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Location
|
2023-07-07 06:08:30 +00:00
|
|
|
* @description A model path, repo_id or URL to import
|
|
|
|
*/
|
|
|
|
location: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Prediction Type
|
|
|
|
* @description Prediction type for SDv2 checkpoint files
|
|
|
|
* @default v_prediction
|
2023-07-07 06:08:30 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
prediction_type?: "v_prediction" | "epsilon" | "sample";
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
|
|
|
/** Body_merge_models */
|
|
|
|
Body_merge_models: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Names
|
2023-07-07 06:08:30 +00:00
|
|
|
* @description model name
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
model_names: string[];
|
2023-07-07 06:08:30 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Merged Model Name
|
2023-07-07 06:08:30 +00:00
|
|
|
* @description Name of destination model
|
|
|
|
*/
|
|
|
|
merged_model_name: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Alpha
|
|
|
|
* @description Alpha weighting strength to apply to 2d and 3d models
|
2023-07-07 06:08:30 +00:00
|
|
|
* @default 0.5
|
|
|
|
*/
|
|
|
|
alpha?: number;
|
|
|
|
/** @description Interpolation method */
|
2023-08-16 01:59:19 +00:00
|
|
|
interp: components["schemas"]["MergeInterpolationMethod"];
|
2023-07-07 06:08:30 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Force
|
|
|
|
* @description Force merging of models created with different versions of diffusers
|
2023-07-07 06:08:30 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
force?: boolean;
|
2023-07-15 15:06:57 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Merge Dest Directory
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Save the merged model to the designated directory (with 'merged_model_name' appended)
|
|
|
|
*/
|
|
|
|
merge_dest_directory?: string;
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
2023-07-31 08:16:52 +00:00
|
|
|
/** Body_remove_image_from_board */
|
|
|
|
Body_remove_image_from_board: {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The name of the image to remove
|
|
|
|
*/
|
|
|
|
image_name: string;
|
|
|
|
};
|
2023-07-31 08:16:52 +00:00
|
|
|
/** Body_remove_images_from_board */
|
|
|
|
Body_remove_images_from_board: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Names
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description The names of the images to remove
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
image_names: string[];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
2023-08-15 16:55:28 +00:00
|
|
|
/** Body_star_images_in_list */
|
|
|
|
Body_star_images_in_list: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Names
|
2023-08-15 16:55:28 +00:00
|
|
|
* @description The list of names of images to star
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
image_names: string[];
|
2023-08-15 16:55:28 +00:00
|
|
|
};
|
|
|
|
/** Body_unstar_images_in_list */
|
|
|
|
Body_unstar_images_in_list: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Names
|
2023-08-15 16:55:28 +00:00
|
|
|
* @description The list of names of images to unstar
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
image_names: string[];
|
2023-08-15 16:55:28 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Body_upload_image */
|
|
|
|
Body_upload_image: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* File
|
2023-06-23 09:14:13 +00:00
|
|
|
* Format: binary
|
|
|
|
*/
|
2023-07-07 06:08:30 +00:00
|
|
|
file: Blob;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Boolean Collection Primitive
|
2023-08-15 12:18:37 +00:00
|
|
|
* @description A collection of boolean primitive values
|
|
|
|
*/
|
|
|
|
BooleanCollectionInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-15 12:18:37 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-15 12:18:37 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The collection of boolean values
|
|
|
|
*/
|
|
|
|
collection?: boolean[];
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default boolean_collection
|
2023-08-15 12:18:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "boolean_collection";
|
2023-08-15 12:18:37 +00:00
|
|
|
};
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* BooleanCollectionOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a collection of booleans
|
|
|
|
*/
|
|
|
|
BooleanCollectionOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The output boolean collection
|
|
|
|
*/
|
|
|
|
collection: boolean[];
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default boolean_collection_output
|
2023-08-14 09:41:29 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "boolean_collection_output";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Boolean Primitive
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description A boolean primitive value
|
|
|
|
*/
|
|
|
|
BooleanInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-14 09:41:29 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Value
|
|
|
|
* @description The boolean value
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
value?: boolean;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default boolean
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "boolean";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* BooleanOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a single boolean
|
|
|
|
*/
|
|
|
|
BooleanOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Value
|
|
|
|
* @description The output boolean
|
|
|
|
*/
|
|
|
|
value: boolean;
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default boolean_output
|
2023-08-14 09:41:29 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "boolean_output";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Canny Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Canny edge detection for ControlNet
|
|
|
|
*/
|
|
|
|
CannyImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default canny_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "canny_image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Low Threshold
|
|
|
|
* @description The low threshold of the Canny pixel gradient (0-255)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 100
|
|
|
|
*/
|
|
|
|
low_threshold?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* High Threshold
|
|
|
|
* @description The high threshold of the Canny pixel gradient (0-255)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 200
|
|
|
|
*/
|
|
|
|
high_threshold?: number;
|
|
|
|
};
|
|
|
|
/** ClipField */
|
|
|
|
ClipField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Tokenizer
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Info to load tokenizer submodel
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
tokenizer: components["schemas"]["ModelInfo"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Text Encoder
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Info to load text_encoder submodel
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
text_encoder: components["schemas"]["ModelInfo"];
|
2023-07-06 17:57:39 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Skipped Layers
|
2023-07-06 17:57:39 +00:00
|
|
|
* @description Number of skipped layers in text_encoder
|
|
|
|
*/
|
|
|
|
skipped_layers: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Loras
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Loras to apply on model loading
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
loras: components["schemas"]["LoraInfo"][];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-06 17:57:39 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP Skip
|
2023-07-06 17:57:39 +00:00
|
|
|
* @description Skip layers in clip text_encoder model.
|
|
|
|
*/
|
|
|
|
ClipSkipInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-06 17:57:39 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-06 17:57:39 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-07-06 17:57:39 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-07-06 17:57:39 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip?: components["schemas"]["ClipField"];
|
2023-07-06 17:57:39 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Skipped Layers
|
|
|
|
* @description Number of layers to skip in text encoder
|
2023-07-06 17:57:39 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
skipped_layers?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default clip_skip
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "clip_skip";
|
2023-07-06 17:57:39 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ClipSkipInvocationOutput
|
2023-07-06 17:57:39 +00:00
|
|
|
* @description Clip skip node output
|
|
|
|
*/
|
|
|
|
ClipSkipInvocationOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* CLIP
|
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
|
|
|
*/
|
|
|
|
clip?: components["schemas"]["ClipField"];
|
2023-07-06 17:57:39 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default clip_skip_output
|
2023-07-06 17:57:39 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "clip_skip_output";
|
2023-07-06 17:57:39 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CollectInvocation
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Collects values into a collection
|
|
|
|
*/
|
|
|
|
CollectInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Collection Item
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The item to collect (all inputs must be of the same type)
|
|
|
|
*/
|
|
|
|
item?: unknown;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Collection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The collection, will be provided on execution
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
collection?: unknown[];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default collect
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "collect";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CollectInvocationOutput
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Base class for all invocation outputs.
|
|
|
|
*
|
|
|
|
* All invocation outputs must use the `@invocation_output` decorator to provide their unique type.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
CollectInvocationOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The collection of input items
|
|
|
|
*/
|
|
|
|
collection: unknown[];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default collect_output
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "collect_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ColorCollectionOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a collection of colors
|
|
|
|
*/
|
|
|
|
ColorCollectionOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The output colors
|
|
|
|
*/
|
|
|
|
collection: components["schemas"]["ColorField"][];
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default color_collection_output
|
2023-08-14 09:41:29 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "color_collection_output";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Color Correct
|
2023-08-11 18:15:59 +00:00
|
|
|
* @description Shifts the colors of a target image to match the reference image, optionally
|
2023-08-11 10:22:01 +00:00
|
|
|
* using a mask to only color-correct certain regions of the target image.
|
|
|
|
*/
|
|
|
|
ColorCorrectInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-11 10:22:01 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-11 10:22:01 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description The image to color-correct
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Reference
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description Reference image for color-correction
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
reference?: components["schemas"]["ImageField"];
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mask
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description Mask to use when applying color-correction
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
mask?: components["schemas"]["ImageField"];
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mask Blur Radius
|
|
|
|
* @description Mask blur radius
|
2023-08-11 10:22:01 +00:00
|
|
|
* @default 8
|
|
|
|
*/
|
|
|
|
mask_blur_radius?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default color_correct
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "color_correct";
|
2023-08-11 10:22:01 +00:00
|
|
|
};
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ColorField
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description A color primitive field
|
|
|
|
*/
|
2023-06-23 09:14:13 +00:00
|
|
|
ColorField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* R
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The red component
|
|
|
|
*/
|
|
|
|
r: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* G
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The green component
|
|
|
|
*/
|
|
|
|
g: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* B
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The blue component
|
|
|
|
*/
|
|
|
|
b: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* A
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The alpha component
|
|
|
|
*/
|
|
|
|
a: number;
|
|
|
|
};
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Color Primitive
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description A color primitive value
|
|
|
|
*/
|
|
|
|
ColorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-14 09:41:29 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Color
|
|
|
|
* @description The color value
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default {
|
|
|
|
* "r": 0,
|
|
|
|
* "g": 0,
|
|
|
|
* "b": 0,
|
|
|
|
* "a": 255
|
|
|
|
* }
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
color?: components["schemas"]["ColorField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default color
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "color";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ColorOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a single color
|
|
|
|
*/
|
|
|
|
ColorOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Color
|
|
|
|
* @description The output color
|
|
|
|
*/
|
|
|
|
color: components["schemas"]["ColorField"];
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default color_output
|
2023-08-14 09:41:29 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "color_output";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Prompt
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Parse prompt using compel package to conditioning.
|
|
|
|
*/
|
|
|
|
CompelInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Prompt
|
|
|
|
* @description Prompt to be parsed by Compel to create a conditioning tensor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default
|
|
|
|
*/
|
|
|
|
prompt?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default compel
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "compel";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip?: components["schemas"]["ClipField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Conditioning Collection Primitive
|
2023-08-15 12:18:37 +00:00
|
|
|
* @description A collection of conditioning tensor primitive values
|
|
|
|
*/
|
|
|
|
ConditioningCollectionInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-15 12:18:37 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-15 12:18:37 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Collection
|
|
|
|
* @description The collection of conditioning tensors
|
2023-08-15 12:18:37 +00:00
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
collection?: components["schemas"]["ConditioningField"][];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default conditioning_collection
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "conditioning_collection";
|
2023-08-15 12:18:37 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ConditioningCollectionOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a collection of conditioning tensors
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-14 09:41:29 +00:00
|
|
|
ConditioningCollectionOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The output conditioning tensors
|
|
|
|
*/
|
|
|
|
collection: components["schemas"]["ConditioningField"][];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default conditioning_collection_output
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "conditioning_collection_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ConditioningField
|
2023-08-15 12:18:37 +00:00
|
|
|
* @description A conditioning tensor primitive value
|
2023-08-14 09:41:29 +00:00
|
|
|
*/
|
2023-06-23 09:14:13 +00:00
|
|
|
ConditioningField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Conditioning Name
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description The name of conditioning tensor
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
conditioning_name: string;
|
|
|
|
};
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Conditioning Primitive
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description A conditioning tensor primitive value
|
|
|
|
*/
|
|
|
|
ConditioningInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-14 09:41:29 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Conditioning
|
|
|
|
* @description Conditioning tensor
|
|
|
|
*/
|
|
|
|
conditioning?: components["schemas"]["ConditioningField"];
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default conditioning
|
2023-08-14 09:41:29 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "conditioning";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ConditioningOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a single conditioning tensor
|
|
|
|
*/
|
|
|
|
ConditioningOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Conditioning
|
|
|
|
* @description Conditioning tensor
|
|
|
|
*/
|
|
|
|
conditioning: components["schemas"]["ConditioningField"];
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default conditioning_output
|
2023-08-14 09:41:29 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "conditioning_output";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Content Shuffle Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies content shuffle processing to image
|
|
|
|
*/
|
|
|
|
ContentShuffleImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default content_shuffle_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "content_shuffle_image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Detect Resolution
|
|
|
|
* @description Pixel resolution for detection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
detect_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Resolution
|
|
|
|
* @description Pixel resolution for output image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
image_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* H
|
|
|
|
* @description Content shuffle `h` parameter
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
h?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* W
|
|
|
|
* @description Content shuffle `w` parameter
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
w?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* F
|
|
|
|
* @description Content shuffle `f` parameter
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 256
|
|
|
|
*/
|
|
|
|
f?: number;
|
|
|
|
};
|
|
|
|
/** ControlField */
|
|
|
|
ControlField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The control image
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Control Model
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The ControlNet model to use
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
control_model: components["schemas"]["ControlNetModelField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Control Weight
|
|
|
|
* @description The weight given to the ControlNet
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
control_weight?: number | number[];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Begin Step Percent
|
|
|
|
* @description When the ControlNet is first applied (% of total steps)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
begin_step_percent?: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* End Step Percent
|
|
|
|
* @description When the ControlNet is last applied (% of total steps)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
end_step_percent?: number;
|
2023-06-25 04:04:16 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Control Mode
|
|
|
|
* @description The control mode to use
|
|
|
|
* @default balanced
|
2023-06-25 04:04:16 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
control_mode?: "balanced" | "more_prompt" | "more_control" | "unbalanced";
|
2023-07-20 10:48:35 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Resize Mode
|
|
|
|
* @description The resize mode to use
|
|
|
|
* @default just_resize
|
2023-07-20 10:48:35 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
resize_mode?: "just_resize" | "crop_resize" | "fill_resize" | "just_resize_simple";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ControlNet
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Collects ControlNet info to pass to other nodes
|
|
|
|
*/
|
|
|
|
ControlNetInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The control image
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Control Model
|
|
|
|
* @description ControlNet model to load
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
feat: polymorphic fields
Initial support for polymorphic field types. Polymorphic types are a single of or list of a specific type. For example, `Union[str, list[str]]`.
Polymorphics do not yet have support for direct input in the UI (will come in the future). They will be forcibly set as Connection-only fields, in which case users will not be able to provide direct input to the field.
If a polymorphic should present as a singleton type - which would allow direct input - the node must provide an explicit type hint.
For example, `DenoiseLatents`' `CFG Scale` is polymorphic, but in the node editor, we want to present this as a number input. In the node definition, the field is given `ui_type=UIType.Float`, which tells the UI to treat this as a `float` field.
The connection validation logic will prevent connecting a collection to `CFG Scale` in this situation, because it is typed as `float`. The workaround is to disable validation from the settings to make this specific connection. A future improvement will resolve this.
This also introduces better support for collection field types. Like polymorphics, collection types are parsed automatically by the client and do not need any specific type hints.
Also like polymorphics, there is no support yet for direct input of collection types in the UI.
- Disabling validation in workflow editor now displays the visual hints for valid connections, but lets you connect to anything.
- Added `ui_order: int` to `InputField` and `OutputField`. The UI will use this, if present, to order fields in a node UI. See usage in `DenoiseLatents` for an example.
- Updated the field colors - duplicate colors have just been lightened a bit. It's not perfect but it was a quick fix.
- Field handles for collections are the same color as their single counterparts, but have a dark dot in the center of them.
- Field handles for polymorphics are a rounded square with dot in the middle.
- Removed all fields that just render `null` from `InputFieldRenderer`, replaced with a single fallback
- Removed logic in `zValidatedWorkflow`, which checked for existence of node templates for each node in a workflow. This logic introduced a circular dependency, due to importing the global redux `store` in order to get the node templates within a zod schema. It's actually fine to just leave this out entirely; The case of a missing node template is handled by the UI. Fixing it otherwise would introduce a substantial headache.
- Fixed the `ControlNetInvocation.control_model` field default, which was a string when it shouldn't have one.
2023-09-01 09:40:27 +00:00
|
|
|
control_model: components["schemas"]["ControlNetModelField"];
|
2023-07-13 05:22:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Control Weight
|
|
|
|
* @description The weight given to the ControlNet
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
control_weight?: number | number[];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Begin Step Percent
|
|
|
|
* @description When the ControlNet is first applied (% of total steps)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
begin_step_percent?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* End Step Percent
|
|
|
|
* @description When the ControlNet is last applied (% of total steps)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
end_step_percent?: number;
|
2023-06-25 04:04:16 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Control Mode
|
|
|
|
* @description The control mode used
|
|
|
|
* @default balanced
|
2023-06-25 04:04:16 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
control_mode?: "balanced" | "more_prompt" | "more_control" | "unbalanced";
|
2023-07-20 10:48:35 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Resize Mode
|
|
|
|
* @description The resize mode used
|
|
|
|
* @default just_resize
|
2023-07-20 10:48:35 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
resize_mode?: "just_resize" | "crop_resize" | "fill_resize" | "just_resize_simple";
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default controlnet
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "controlnet";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-27 13:37:37 +00:00
|
|
|
/** ControlNetModelCheckpointConfig */
|
|
|
|
ControlNetModelCheckpointConfig: {
|
2023-07-12 15:15:09 +00:00
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "controlnet";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Format
|
2023-07-27 13:37:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: "checkpoint";
|
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/** Config */
|
|
|
|
config: string;
|
|
|
|
};
|
|
|
|
/** ControlNetModelDiffusersConfig */
|
|
|
|
ControlNetModelDiffusersConfig: {
|
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-07-27 13:37:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "controlnet";
|
2023-07-27 13:37:37 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Format
|
2023-07-27 13:37:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: "diffusers";
|
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-08 09:31:45 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ControlNetModelField
|
2023-07-08 09:31:45 +00:00
|
|
|
* @description ControlNet model field
|
|
|
|
*/
|
|
|
|
ControlNetModelField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Name
|
2023-07-08 09:31:45 +00:00
|
|
|
* @description Name of the ControlNet model
|
|
|
|
*/
|
|
|
|
model_name: string;
|
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-08 09:31:45 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ControlOutput
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description node output for ControlNet info
|
|
|
|
*/
|
|
|
|
ControlOutput: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Control
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description ControlNet(s) to apply
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
control: components["schemas"]["ControlField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default control_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "control_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CoreMetadata
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description Core generation metadata for an image generated in InvokeAI.
|
|
|
|
*/
|
|
|
|
CoreMetadata: {
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* App Version
|
|
|
|
* @description The version of InvokeAI used to generate this image
|
2023-09-02 01:36:07 +00:00
|
|
|
* @default 3.1.0
|
2023-08-11 10:22:01 +00:00
|
|
|
*/
|
|
|
|
app_version?: string;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Generation Mode
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The generation mode that output this image
|
|
|
|
*/
|
|
|
|
generation_mode: string;
|
2023-08-29 00:20:55 +00:00
|
|
|
/**
|
|
|
|
* Created By
|
|
|
|
* @description The name of the creator of the image
|
|
|
|
*/
|
|
|
|
created_by?: string;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Positive Prompt
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The positive prompt parameter
|
|
|
|
*/
|
|
|
|
positive_prompt: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Negative Prompt
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The negative prompt parameter
|
|
|
|
*/
|
|
|
|
negative_prompt: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Width
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The width parameter
|
|
|
|
*/
|
|
|
|
width: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Height
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The height parameter
|
|
|
|
*/
|
|
|
|
height: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Seed
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The seed used for noise generation
|
|
|
|
*/
|
|
|
|
seed: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Rand Device
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The device used for random number generation
|
|
|
|
*/
|
|
|
|
rand_device: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Cfg Scale
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The classifier-free guidance scale parameter
|
|
|
|
*/
|
|
|
|
cfg_scale: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Steps
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The number of steps used for inference
|
|
|
|
*/
|
|
|
|
steps: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scheduler
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The scheduler used for inference
|
|
|
|
*/
|
|
|
|
scheduler: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Clip Skip
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The number of skipped CLIP layers
|
|
|
|
*/
|
|
|
|
clip_skip: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The main model used for inference
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model: components["schemas"]["MainModelField"];
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Controlnets
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The ControlNets used for inference
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
controlnets: components["schemas"]["ControlField"][];
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Loras
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The LoRAs used for inference
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
loras: components["schemas"]["LoRAMetadataField"][];
|
2023-07-25 14:22:47 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Vae
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The VAE used for decoding, if the main model's default was not used
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae?: components["schemas"]["VAEModelField"];
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Strength
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The strength used for latents-to-latents
|
|
|
|
*/
|
|
|
|
strength?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Init Image
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The name of the initial image
|
|
|
|
*/
|
|
|
|
init_image?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Positive Style Prompt
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The positive style prompt parameter
|
2023-07-12 15:15:09 +00:00
|
|
|
*/
|
2023-07-25 14:22:47 +00:00
|
|
|
positive_style_prompt?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Negative Style Prompt
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The negative style prompt parameter
|
|
|
|
*/
|
|
|
|
negative_style_prompt?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Refiner Model
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The SDXL Refiner model used
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
refiner_model?: components["schemas"]["MainModelField"];
|
2023-07-25 14:22:47 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Refiner Cfg Scale
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The classifier-free guidance scale parameter used for the refiner
|
|
|
|
*/
|
|
|
|
refiner_cfg_scale?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Refiner Steps
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The number of steps used for the refiner
|
|
|
|
*/
|
|
|
|
refiner_steps?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Refiner Scheduler
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The scheduler used for the refiner
|
|
|
|
*/
|
|
|
|
refiner_scheduler?: string;
|
|
|
|
/**
|
2023-09-02 01:36:07 +00:00
|
|
|
* Refiner Positive Aesthetic Score
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The aesthetic score used for the refiner
|
|
|
|
*/
|
2023-09-02 01:36:07 +00:00
|
|
|
refiner_positive_aesthetic_score?: number;
|
2023-08-13 16:02:36 +00:00
|
|
|
/**
|
2023-09-02 01:36:07 +00:00
|
|
|
* Refiner Negative Aesthetic Score
|
2023-08-13 16:02:36 +00:00
|
|
|
* @description The aesthetic score used for the refiner
|
|
|
|
*/
|
2023-09-02 01:36:07 +00:00
|
|
|
refiner_negative_aesthetic_score?: number;
|
2023-07-25 14:22:47 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Refiner Start
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The start value used for refiner denoising
|
|
|
|
*/
|
|
|
|
refiner_start?: number;
|
2023-07-12 15:15:09 +00:00
|
|
|
};
|
2023-08-29 00:20:55 +00:00
|
|
|
/**
|
|
|
|
* Create Denoise Mask
|
|
|
|
* @description Creates mask for denoising model run.
|
|
|
|
*/
|
|
|
|
CreateDenoiseMaskInvocation: {
|
|
|
|
/**
|
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-29 00:20:55 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-29 00:20:55 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
|
|
|
/**
|
|
|
|
* Vae
|
|
|
|
* @description VAE
|
|
|
|
*/
|
|
|
|
vae?: components["schemas"]["VaeField"];
|
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description Image which will be masked
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
|
|
|
/**
|
|
|
|
* Mask
|
|
|
|
* @description The mask to use when pasting
|
|
|
|
*/
|
|
|
|
mask?: components["schemas"]["ImageField"];
|
|
|
|
/**
|
|
|
|
* Tiled
|
|
|
|
* @description Processing using overlapping tiles (reduce memory consumption)
|
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
tiled?: boolean;
|
|
|
|
/**
|
|
|
|
* Fp32
|
|
|
|
* @description Whether or not to use full float32 precision
|
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
fp32?: boolean;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default create_denoise_mask
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "create_denoise_mask";
|
2023-08-29 00:20:55 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* OpenCV Inpaint
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Simple inpaint using opencv.
|
|
|
|
*/
|
|
|
|
CvInpaintInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to inpaint
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mask
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The mask to use when inpainting
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
mask?: components["schemas"]["ImageField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default cv_inpaint
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "cv_inpaint";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
/** DeleteBoardResult */
|
|
|
|
DeleteBoardResult: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Board Id
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
* @description The id of the board that was deleted.
|
|
|
|
*/
|
|
|
|
board_id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Deleted Board Images
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
* @description The image names of the board-images relationships that were deleted.
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
deleted_board_images: string[];
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Deleted Images
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
* @description The names of the images that were deleted.
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
deleted_images: string[];
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
};
|
2023-07-31 08:16:52 +00:00
|
|
|
/** DeleteImagesFromListResult */
|
|
|
|
DeleteImagesFromListResult: {
|
|
|
|
/** Deleted Images */
|
2023-08-22 05:15:00 +00:00
|
|
|
deleted_images: string[];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Denoise Latents
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description Denoises noisy latents to decodable images
|
|
|
|
*/
|
|
|
|
DenoiseLatentsInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-11 10:22:01 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-11 10:22:01 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Noise
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Noise tensor
|
2023-08-11 10:22:01 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
noise?: components["schemas"]["LatentsField"];
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Steps
|
|
|
|
* @description Number of steps to run
|
2023-08-11 10:22:01 +00:00
|
|
|
* @default 10
|
|
|
|
*/
|
|
|
|
steps?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CFG Scale
|
|
|
|
* @description Classifier-Free Guidance scale
|
2023-08-11 10:22:01 +00:00
|
|
|
* @default 7.5
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
cfg_scale?: number | number[];
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Denoising Start
|
|
|
|
* @description When to start denoising, expressed a percentage of total steps
|
2023-08-11 10:22:01 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
denoising_start?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Denoising End
|
|
|
|
* @description When to stop denoising, expressed a percentage of total steps
|
2023-08-11 10:22:01 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
denoising_end?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scheduler
|
|
|
|
* @description Scheduler to use during inference
|
|
|
|
* @default euler
|
2023-08-16 01:59:19 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
scheduler?: "ddim" | "ddpm" | "deis" | "lms" | "lms_k" | "pndm" | "heun" | "heun_k" | "euler" | "euler_k" | "euler_a" | "kdpm_2" | "kdpm_2_a" | "dpmpp_2s" | "dpmpp_2s_k" | "dpmpp_2m" | "dpmpp_2m_k" | "dpmpp_2m_sde" | "dpmpp_2m_sde_k" | "dpmpp_sde" | "dpmpp_sde_k" | "unipc";
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Control
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description ControlNet(s) to apply
|
2023-08-11 10:22:01 +00:00
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
control?: components["schemas"]["ControlField"] | components["schemas"]["ControlField"][];
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Latents
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Latents tensor
|
2023-08-11 10:22:01 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
latents?: components["schemas"]["LatentsField"];
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-29 00:20:55 +00:00
|
|
|
* Denoise Mask
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description The mask to use for the operation
|
2023-08-11 10:22:01 +00:00
|
|
|
*/
|
2023-08-29 00:20:55 +00:00
|
|
|
denoise_mask?: components["schemas"]["DenoiseMaskField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default denoise_latents
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "denoise_latents";
|
2023-08-14 03:23:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Positive Conditioning
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Positive conditioning tensor
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
positive_conditioning?: components["schemas"]["ConditioningField"];
|
2023-08-14 03:23:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Negative Conditioning
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Negative conditioning tensor
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
negative_conditioning?: components["schemas"]["ConditioningField"];
|
2023-08-14 03:23:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UNet
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description UNet (scheduler, LoRAs)
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet?: components["schemas"]["UNetField"];
|
2023-08-11 10:22:01 +00:00
|
|
|
};
|
2023-08-29 00:20:55 +00:00
|
|
|
/**
|
|
|
|
* DenoiseMaskField
|
|
|
|
* @description An inpaint mask field
|
|
|
|
*/
|
|
|
|
DenoiseMaskField: {
|
|
|
|
/**
|
|
|
|
* Mask Name
|
|
|
|
* @description The name of the mask image
|
|
|
|
*/
|
|
|
|
mask_name: string;
|
|
|
|
/**
|
|
|
|
* Masked Latents Name
|
|
|
|
* @description The name of the masked image latents
|
|
|
|
*/
|
|
|
|
masked_latents_name?: string;
|
|
|
|
};
|
|
|
|
/**
|
|
|
|
* DenoiseMaskOutput
|
|
|
|
* @description Base class for nodes that output a single image
|
|
|
|
*/
|
|
|
|
DenoiseMaskOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Denoise Mask
|
|
|
|
* @description Mask for denoise model run
|
|
|
|
*/
|
|
|
|
denoise_mask: components["schemas"]["DenoiseMaskField"];
|
2023-08-29 00:20:55 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default denoise_mask_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "denoise_mask_output";
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Divide Integers
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Divides two numbers
|
|
|
|
*/
|
|
|
|
DivideInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* A
|
|
|
|
* @description The first number
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
a?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* B
|
|
|
|
* @description The second number
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
b?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default div
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "div";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Dynamic Prompt
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Parses a prompt using adieyal/dynamicprompts' random or combinatorial generator
|
|
|
|
*/
|
|
|
|
DynamicPromptInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Prompt
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The prompt to parse with dynamicprompts
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
prompt?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Max Prompts
|
|
|
|
* @description The number of prompts to generate
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
max_prompts?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Combinatorial
|
|
|
|
* @description Whether to use the combinatorial generator
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
combinatorial?: boolean;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default dynamic_prompt
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "dynamic_prompt";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-17 11:08:53 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Upscale (RealESRGAN)
|
2023-07-17 11:08:53 +00:00
|
|
|
* @description Upscales an image using RealESRGAN.
|
|
|
|
*/
|
|
|
|
ESRGANInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-17 11:08:53 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-17 11:08:53 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-07-17 11:08:53 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-07-17 11:08:53 +00:00
|
|
|
* @description The input image
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-07-17 11:08:53 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Name
|
|
|
|
* @description The Real-ESRGAN model to use
|
|
|
|
* @default RealESRGAN_x4plus.pth
|
2023-07-17 11:08:53 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_name?: "RealESRGAN_x4plus.pth" | "RealESRGAN_x4plus_anime_6B.pth" | "ESRGAN_SRx4_DF2KOST_official-ff704c30.pth" | "RealESRGAN_x2plus.pth";
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default esrgan
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "esrgan";
|
2023-07-17 11:08:53 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Edge */
|
|
|
|
Edge: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Source
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The connection for the edge's from node and field
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
source: components["schemas"]["EdgeConnection"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Destination
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The connection for the edge's to node and field
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
destination: components["schemas"]["EdgeConnection"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/** EdgeConnection */
|
|
|
|
EdgeConnection: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Node Id
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The id of the node for this edge connection
|
|
|
|
*/
|
|
|
|
node_id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Field
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The field for this connection
|
|
|
|
*/
|
|
|
|
field: string;
|
|
|
|
};
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Float Collection Primitive
|
2023-08-15 12:18:37 +00:00
|
|
|
* @description A collection of float primitive values
|
|
|
|
*/
|
|
|
|
FloatCollectionInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-15 12:18:37 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-15 12:18:37 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The collection of float values
|
|
|
|
*/
|
|
|
|
collection?: number[];
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default float_collection
|
2023-08-15 12:18:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "float_collection";
|
2023-08-15 12:18:37 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* FloatCollectionOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a collection of floats
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
FloatCollectionOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The float collection
|
|
|
|
*/
|
|
|
|
collection: number[];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default float_collection_output
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "float_collection_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Float Primitive
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description A float primitive value
|
|
|
|
*/
|
|
|
|
FloatInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-14 09:41:29 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Value
|
|
|
|
* @description The float value
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
value?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default float
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "float";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Float Range
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Creates a range
|
|
|
|
*/
|
|
|
|
FloatLinearRangeInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Start
|
|
|
|
* @description The first value of the range
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 5
|
|
|
|
*/
|
|
|
|
start?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Stop
|
|
|
|
* @description The last value of the range
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 10
|
|
|
|
*/
|
|
|
|
stop?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Steps
|
|
|
|
* @description number of values to interpolate over (including start and stop)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 30
|
|
|
|
*/
|
|
|
|
steps?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default float_range
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "float_range";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* FloatOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a single float
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
FloatOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Value
|
|
|
|
* @description The output float
|
|
|
|
*/
|
|
|
|
value: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default float_output
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "float_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/** Graph */
|
|
|
|
Graph: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The id of this graph
|
|
|
|
*/
|
|
|
|
id?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Nodes
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The nodes in this graph
|
|
|
|
*/
|
|
|
|
nodes?: {
|
2023-09-02 01:36:07 +00:00
|
|
|
[key: string]: components["schemas"]["BooleanInvocation"] | components["schemas"]["BooleanCollectionInvocation"] | components["schemas"]["IntegerInvocation"] | components["schemas"]["IntegerCollectionInvocation"] | components["schemas"]["FloatInvocation"] | components["schemas"]["FloatCollectionInvocation"] | components["schemas"]["StringInvocation"] | components["schemas"]["StringCollectionInvocation"] | components["schemas"]["ImageInvocation"] | components["schemas"]["ImageCollectionInvocation"] | components["schemas"]["LatentsInvocation"] | components["schemas"]["LatentsCollectionInvocation"] | components["schemas"]["ColorInvocation"] | components["schemas"]["ConditioningInvocation"] | components["schemas"]["ConditioningCollectionInvocation"] | components["schemas"]["ControlNetInvocation"] | components["schemas"]["ImageProcessorInvocation"] | components["schemas"]["MainModelLoaderInvocation"] | components["schemas"]["LoraLoaderInvocation"] | components["schemas"]["SDXLLoraLoaderInvocation"] | components["schemas"]["VaeLoaderInvocation"] | components["schemas"]["SeamlessModeInvocation"] | components["schemas"]["MetadataAccumulatorInvocation"] | components["schemas"]["SDXLModelLoaderInvocation"] | components["schemas"]["SDXLRefinerModelLoaderInvocation"] | components["schemas"]["CompelInvocation"] | components["schemas"]["SDXLCompelPromptInvocation"] | components["schemas"]["SDXLRefinerCompelPromptInvocation"] | components["schemas"]["ClipSkipInvocation"] | components["schemas"]["SchedulerInvocation"] | components["schemas"]["CreateDenoiseMaskInvocation"] | components["schemas"]["DenoiseLatentsInvocation"] | components["schemas"]["LatentsToImageInvocation"] | components["schemas"]["ResizeLatentsInvocation"] | components["schemas"]["ScaleLatentsInvocation"] | components["schemas"]["ImageToLatentsInvocation"] | components["schemas"]["BlendLatentsInvocation"] | components["schemas"]["ONNXPromptInvocation"] | components["schemas"]["ONNXTextToLatentsInvocation"] | components["schemas"]["ONNXLatentsToImageInvocation"] | components["schemas"]["OnnxModelLoaderInvocation"] | components["schemas"]["ShowImageInvocation"] | components["schemas"]["BlankImageInvocation"] | components["schemas"]["ImageCropInvocation"] | components["schemas"]["ImagePasteInvocation"] | components["schemas"]["MaskFromAlphaInvocation"] | components["schemas"]["ImageMultiplyInvocation"] | components["schemas"]["ImageChannelInvocation"] | components["schemas"]["ImageConvertInvocation"] | components["schemas"]["ImageBlurInvocation"] | components["schemas"]["ImageResizeInvocation"] | components["schemas"]["ImageScaleInvocation"] | components["schemas"]["ImageLerpInvocation"] | components["schemas"]["ImageInverseLerpInvocation"] | components["schemas"]["ImageNSFWBlurInvocation"] | components["schemas"]["ImageWatermarkInvocation"] | components["schemas"]["MaskEdgeInvocation"] | components["schemas"]["MaskCombineInvocation"] | components["schemas"]["ColorCorrectInvocation"] | components["schemas"]["ImageHueAdjustmentInvocation"] | components["schemas"]["ImageLuminosityAdjustmentInvocation"] | components["schemas"]["ImageSaturationAdjustmentInvocation"] | components["schemas"]["DynamicPromptInvocation"] | components["schemas"]["PromptsFromFileInvocation"] | components["schemas"]["CvInpaintInvocation"] | components["schemas"]["FloatLinearRangeInvocation"] | components["schemas"]["StepParamEasingInvocation"] | components["schemas"]["AddInvocation"] | components["schemas"]["SubtractInvocation"] | components["schemas"]["MultiplyInvocation"] | components["schemas"]["DivideInvocation"] | components["schemas"]["RandomIntInvocation"] | components["schemas"]["NoiseInvocation"] | components["schemas"]["RangeInvocation"] | components["schemas"]["RangeOfSizeInvocation"] | components["schemas"]["RandomRangeInvocation"] | components["schemas"]["ESRGANInvocation"] | components["schemas"]["InfillColorInvocation"] | components["schemas"]["InfillTileInvocation"] | components["schemas"]["InfillPatchMatchInvocation"] | components["schemas"]["LaMaInfillInvocation"] | compone
|
2023-08-16 01:59:19 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Edges
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The connections between nodes and their fields in this graph
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
edges?: components["schemas"]["Edge"][];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* GraphExecutionState
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Tracks the state of a graph execution
|
|
|
|
*/
|
|
|
|
GraphExecutionState: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The id of the execution state
|
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Graph
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The graph being executed
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
graph: components["schemas"]["Graph"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Execution Graph
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The expanded graph of activated and executed nodes
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
execution_graph: components["schemas"]["Graph"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Executed
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The set of node ids that have been executed
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
executed: string[];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Executed History
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The list of node ids that have been executed, in order of execution
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
executed_history: string[];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Results
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The results of node executions
|
|
|
|
*/
|
|
|
|
results: {
|
2023-09-02 01:36:07 +00:00
|
|
|
[key: string]: components["schemas"]["BooleanOutput"] | components["schemas"]["BooleanCollectionOutput"] | components["schemas"]["IntegerOutput"] | components["schemas"]["IntegerCollectionOutput"] | components["schemas"]["FloatOutput"] | components["schemas"]["FloatCollectionOutput"] | components["schemas"]["StringOutput"] | components["schemas"]["StringCollectionOutput"] | components["schemas"]["ImageOutput"] | components["schemas"]["ImageCollectionOutput"] | components["schemas"]["DenoiseMaskOutput"] | components["schemas"]["LatentsOutput"] | components["schemas"]["LatentsCollectionOutput"] | components["schemas"]["ColorOutput"] | components["schemas"]["ColorCollectionOutput"] | components["schemas"]["ConditioningOutput"] | components["schemas"]["ConditioningCollectionOutput"] | components["schemas"]["ControlOutput"] | components["schemas"]["ModelLoaderOutput"] | components["schemas"]["LoraLoaderOutput"] | components["schemas"]["SDXLLoraLoaderOutput"] | components["schemas"]["VaeLoaderOutput"] | components["schemas"]["SeamlessModeOutput"] | components["schemas"]["MetadataAccumulatorOutput"] | components["schemas"]["SDXLModelLoaderOutput"] | components["schemas"]["SDXLRefinerModelLoaderOutput"] | components["schemas"]["ClipSkipInvocationOutput"] | components["schemas"]["SchedulerOutput"] | components["schemas"]["ONNXModelLoaderOutput"] | components["schemas"]["NoiseOutput"] | components["schemas"]["GraphInvocationOutput"] | components["schemas"]["IterateInvocationOutput"] | components["schemas"]["CollectInvocationOutput"];
|
2023-08-16 01:59:19 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Errors
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Errors raised when executing nodes
|
|
|
|
*/
|
|
|
|
errors: {
|
2023-08-22 05:15:00 +00:00
|
|
|
[key: string]: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Prepared Source Mapping
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The map of prepared nodes to original graph nodes
|
|
|
|
*/
|
|
|
|
prepared_source_mapping: {
|
2023-08-22 05:15:00 +00:00
|
|
|
[key: string]: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Source Prepared Mapping
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The map of original graph nodes to prepared nodes
|
|
|
|
*/
|
|
|
|
source_prepared_mapping: {
|
2023-08-22 05:15:00 +00:00
|
|
|
[key: string]: string[];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* GraphInvocation
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Execute a graph
|
|
|
|
*/
|
|
|
|
GraphInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Graph
|
|
|
|
* @description The graph to run
|
|
|
|
*/
|
|
|
|
graph?: components["schemas"]["Graph"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default graph
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "graph";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* GraphInvocationOutput
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Base class for all invocation outputs.
|
|
|
|
*
|
|
|
|
* All invocation outputs must use the `@invocation_output` decorator to provide their unique type.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
GraphInvocationOutput: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default graph_output
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "graph_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/** HTTPValidationError */
|
|
|
|
HTTPValidationError: {
|
|
|
|
/** Detail */
|
2023-08-22 05:15:00 +00:00
|
|
|
detail?: components["schemas"]["ValidationError"][];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* HED (softedge) Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies HED edge detection to image
|
|
|
|
*/
|
|
|
|
HedImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default hed_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "hed_image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Detect Resolution
|
|
|
|
* @description Pixel resolution for detection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
detect_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Resolution
|
|
|
|
* @description Pixel resolution for output image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
image_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scribble
|
|
|
|
* @description Whether or not to use scribble mode
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
scribble?: boolean;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Blur Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Blurs an image
|
|
|
|
*/
|
|
|
|
ImageBlurInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to blur
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Radius
|
|
|
|
* @description The blur radius
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 8
|
|
|
|
*/
|
|
|
|
radius?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Blur Type
|
|
|
|
* @description The type of blur
|
|
|
|
* @default gaussian
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
blur_type?: "gaussian" | "box";
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_blur
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_blur";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ImageCategory
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The category of an image.
|
2023-08-22 05:15:00 +00:00
|
|
|
*
|
2023-06-23 09:14:13 +00:00
|
|
|
* - GENERAL: The image is an output, init image, or otherwise an image without a specialized purpose.
|
|
|
|
* - MASK: The image is a mask image.
|
|
|
|
* - CONTROL: The image is a ControlNet control image.
|
|
|
|
* - USER: The image is a user-provide image.
|
2023-08-22 05:15:00 +00:00
|
|
|
* - OTHER: The image is some other type of image with a specialized purpose. To be used by external nodes.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
ImageCategory: "general" | "mask" | "control" | "user" | "other";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Extract Image Channel
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a channel from an image.
|
|
|
|
*/
|
|
|
|
ImageChannelInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to get the channel from
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Channel
|
|
|
|
* @description The channel to get
|
|
|
|
* @default A
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
channel?: "A" | "R" | "G" | "B";
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_chan
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_chan";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-03 14:09:18 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Image Collection Primitive
|
2023-08-15 12:18:37 +00:00
|
|
|
* @description A collection of image primitive values
|
2023-07-03 14:09:18 +00:00
|
|
|
*/
|
|
|
|
ImageCollectionInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-03 14:09:18 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-03 14:09:18 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-07-03 14:09:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Collection
|
|
|
|
* @description The collection of image values
|
2023-07-03 14:09:18 +00:00
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
collection?: components["schemas"]["ImageField"][];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default image_collection
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "image_collection";
|
2023-07-03 14:09:18 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ImageCollectionOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a collection of images
|
2023-07-03 14:09:18 +00:00
|
|
|
*/
|
|
|
|
ImageCollectionOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The output images
|
|
|
|
*/
|
|
|
|
collection: components["schemas"]["ImageField"][];
|
2023-07-03 14:09:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default image_collection_output
|
2023-07-03 14:09:18 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "image_collection_output";
|
2023-07-03 14:09:18 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Convert Image Mode
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Converts an image to a different mode.
|
|
|
|
*/
|
|
|
|
ImageConvertInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to convert
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mode
|
|
|
|
* @description The mode to convert to
|
|
|
|
* @default L
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
mode?: "L" | "RGB" | "RGBA" | "CMYK" | "YCbCr" | "LAB" | "HSV" | "I" | "F";
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_conv
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_conv";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Crop Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Crops an image to a specified box. The box can be outside of the image.
|
|
|
|
*/
|
|
|
|
ImageCropInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to crop
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* X
|
|
|
|
* @description The left x coordinate of the crop rectangle
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
x?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Y
|
|
|
|
* @description The top y coordinate of the crop rectangle
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
y?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Width
|
|
|
|
* @description The width of the crop rectangle
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
width?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Height
|
|
|
|
* @description The height of the crop rectangle
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
height?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_crop
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_crop";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ImageDTO
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Deserialized image record, enriched for the frontend.
|
|
|
|
*/
|
|
|
|
ImageDTO: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The unique name of the image.
|
|
|
|
*/
|
|
|
|
image_name: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Url
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The URL of the image.
|
|
|
|
*/
|
|
|
|
image_url: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Thumbnail Url
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The URL of the image's thumbnail.
|
|
|
|
*/
|
|
|
|
thumbnail_url: string;
|
|
|
|
/** @description The type of the image. */
|
2023-08-16 01:59:19 +00:00
|
|
|
image_origin: components["schemas"]["ResourceOrigin"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description The category of the image. */
|
2023-08-16 01:59:19 +00:00
|
|
|
image_category: components["schemas"]["ImageCategory"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Width
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The width of the image in px.
|
|
|
|
*/
|
|
|
|
width: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Height
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The height of the image in px.
|
|
|
|
*/
|
|
|
|
height: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Created At
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The created timestamp of the image.
|
|
|
|
*/
|
|
|
|
created_at: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Updated At
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The updated timestamp of the image.
|
|
|
|
*/
|
|
|
|
updated_at: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Deleted At
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The deleted timestamp of the image.
|
|
|
|
*/
|
|
|
|
deleted_at?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Whether this is an intermediate image.
|
|
|
|
*/
|
|
|
|
is_intermediate: boolean;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Session Id
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The session ID that generated this image, if it is a generated image.
|
|
|
|
*/
|
|
|
|
session_id?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Node Id
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The node ID that generated this image, if it is a generated image.
|
|
|
|
*/
|
|
|
|
node_id?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Starred
|
2023-08-15 16:55:28 +00:00
|
|
|
* @description Whether this image is starred.
|
2023-08-11 15:50:54 +00:00
|
|
|
*/
|
2023-08-15 16:55:28 +00:00
|
|
|
starred: boolean;
|
2023-08-11 15:50:54 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Board Id
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The id of the board the image belongs to, if one exists.
|
|
|
|
*/
|
|
|
|
board_id?: string;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ImageField
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description An image primitive field
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
ImageField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The name of the image
|
|
|
|
*/
|
|
|
|
image_name: string;
|
|
|
|
};
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Adjust Image Hue
|
2023-08-08 02:00:05 +00:00
|
|
|
* @description Adjusts the Hue of an image.
|
|
|
|
*/
|
|
|
|
ImageHueAdjustmentInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-08 02:00:05 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-08-08 02:00:05 +00:00
|
|
|
* @description The image to adjust
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Hue
|
|
|
|
* @description The degrees by which to rotate the hue, 0-360
|
2023-08-08 02:00:05 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
hue?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_hue_adjust
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_hue_adjust";
|
2023-08-08 02:00:05 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Inverse Lerp Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Inverse linear interpolation of all pixels of an image
|
|
|
|
*/
|
|
|
|
ImageInverseLerpInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to lerp
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Min
|
|
|
|
* @description The minimum input value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
min?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Max
|
|
|
|
* @description The maximum input value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 255
|
|
|
|
*/
|
|
|
|
max?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_ilerp
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_ilerp";
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Primitive
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description An image primitive value
|
|
|
|
*/
|
|
|
|
ImageInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-14 09:41:29 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to load
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default image
|
2023-08-14 09:41:29 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "image";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Lerp Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Linear interpolation of all pixels of an image
|
|
|
|
*/
|
|
|
|
ImageLerpInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to lerp
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Min
|
|
|
|
* @description The minimum output value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
min?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Max
|
|
|
|
* @description The maximum output value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 255
|
|
|
|
*/
|
|
|
|
max?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_lerp
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_lerp";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Adjust Image Luminosity
|
2023-08-08 02:00:05 +00:00
|
|
|
* @description Adjusts the Luminosity (Value) of an image.
|
|
|
|
*/
|
|
|
|
ImageLuminosityAdjustmentInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-08 02:00:05 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-08-08 02:00:05 +00:00
|
|
|
* @description The image to adjust
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Luminosity
|
|
|
|
* @description The factor by which to adjust the luminosity (value)
|
2023-08-08 02:00:05 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
luminosity?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_luminosity_adjust
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_luminosity_adjust";
|
2023-08-08 02:00:05 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ImageMetadata
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description An image's generation metadata
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
ImageMetadata: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Metadata
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The image's core metadata, if it was created in the Linear or Canvas UI
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-12 15:15:09 +00:00
|
|
|
metadata?: Record<string, never>;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Graph
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The graph that created the image
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-12 15:15:09 +00:00
|
|
|
graph?: Record<string, never>;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Multiply Images
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Multiplies two images together using `PIL.ImageChops.multiply()`.
|
|
|
|
*/
|
|
|
|
ImageMultiplyInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image1
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The first image to multiply
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image1?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image2
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The second image to multiply
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image2?: components["schemas"]["ImageField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_mul
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_mul";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-23 20:24:34 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Blur NSFW Image
|
2023-07-23 20:24:34 +00:00
|
|
|
* @description Add blur to NSFW-flagged images
|
|
|
|
*/
|
2023-07-24 12:25:39 +00:00
|
|
|
ImageNSFWBlurInvocation: {
|
2023-07-23 20:24:34 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-23 20:24:34 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-23 20:24:34 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Metadata
|
|
|
|
* @description Optional core metadata to be written to image
|
|
|
|
*/
|
|
|
|
metadata?: components["schemas"]["CoreMetadata"];
|
2023-07-23 20:24:34 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default img_nsfw
|
2023-07-23 20:24:34 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "img_nsfw";
|
2023-07-23 20:24:34 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-07-24 12:25:39 +00:00
|
|
|
* @description The image to check
|
2023-07-23 20:24:34 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-07-23 20:24:34 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ImageOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a single image
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
ImageOutput: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The output image
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Width
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The width of the image in pixels
|
|
|
|
*/
|
|
|
|
width: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Height
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The height of the image in pixels
|
|
|
|
*/
|
|
|
|
height: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default image_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "image_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Paste Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Pastes an image into another image.
|
|
|
|
*/
|
|
|
|
ImagePasteInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Base Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The base image
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
base_image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to paste
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mask
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The mask to use when pasting
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
mask?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* X
|
|
|
|
* @description The left x coordinate at which to paste the image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
x?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Y
|
|
|
|
* @description The top y coordinate at which to paste the image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
y?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_paste
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_paste";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Base Image Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Base class for invocations that preprocess images for ControlNet
|
|
|
|
*/
|
|
|
|
ImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ImageRecordChanges
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description A set of changes to apply to an image record.
|
2023-08-22 05:15:00 +00:00
|
|
|
*
|
2023-06-23 09:14:13 +00:00
|
|
|
* Only limited changes are valid:
|
|
|
|
* - `image_category`: change the category of an image
|
|
|
|
* - `session_id`: change the session associated with an image
|
|
|
|
* - `is_intermediate`: change the image's `is_intermediate` flag
|
2023-08-15 16:55:28 +00:00
|
|
|
* - `starred`: change whether the image is starred
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
ImageRecordChanges: {
|
|
|
|
/** @description The image's new category. */
|
2023-08-16 01:59:19 +00:00
|
|
|
image_category?: components["schemas"]["ImageCategory"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Session Id
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image's new session ID.
|
|
|
|
*/
|
|
|
|
session_id?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image's new `is_intermediate` flag.
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-11 15:50:54 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Starred
|
2023-08-15 16:55:28 +00:00
|
|
|
* @description The image's new `starred` state
|
2023-08-11 15:50:54 +00:00
|
|
|
*/
|
2023-08-15 16:55:28 +00:00
|
|
|
starred?: boolean;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Resize Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Resizes an image to specific dimensions
|
|
|
|
*/
|
|
|
|
ImageResizeInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to resize
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Width
|
|
|
|
* @description The width to resize to (px)
|
2023-08-14 03:23:09 +00:00
|
|
|
* @default 512
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-15 02:19:24 +00:00
|
|
|
width?: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Height
|
|
|
|
* @description The height to resize to (px)
|
2023-08-14 03:23:09 +00:00
|
|
|
* @default 512
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-15 02:19:24 +00:00
|
|
|
height?: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Resample Mode
|
|
|
|
* @description The resampling mode
|
|
|
|
* @default bicubic
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
resample_mode?: "nearest" | "box" | "bilinear" | "hamming" | "bicubic" | "lanczos";
|
2023-08-29 00:20:55 +00:00
|
|
|
/**
|
|
|
|
* Metadata
|
|
|
|
* @description Optional core metadata to be written to image
|
|
|
|
*/
|
|
|
|
metadata?: components["schemas"]["CoreMetadata"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_resize
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_resize";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Adjust Image Saturation
|
2023-08-08 02:00:05 +00:00
|
|
|
* @description Adjusts the Saturation of an image.
|
|
|
|
*/
|
|
|
|
ImageSaturationAdjustmentInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-08 02:00:05 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-08-08 02:00:05 +00:00
|
|
|
* @description The image to adjust
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Saturation
|
|
|
|
* @description The factor by which to adjust the saturation
|
2023-08-08 02:00:05 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
saturation?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_saturation_adjust
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_saturation_adjust";
|
2023-08-08 02:00:05 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scale Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Scales an image by a factor
|
|
|
|
*/
|
|
|
|
ImageScaleInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to scale
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scale Factor
|
|
|
|
* @description The factor by which to scale the image
|
2023-07-17 11:08:53 +00:00
|
|
|
* @default 2
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-17 11:08:53 +00:00
|
|
|
scale_factor?: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Resample Mode
|
|
|
|
* @description The resampling mode
|
|
|
|
* @default bicubic
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
resample_mode?: "nearest" | "box" | "bilinear" | "hamming" | "bicubic" | "lanczos";
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_scale
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_scale";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image to Latents
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Encodes an image into latents.
|
|
|
|
*/
|
|
|
|
ImageToLatentsInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to encode
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Vae
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description VAE
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae?: components["schemas"]["VaeField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Tiled
|
|
|
|
* @description Processing using overlapping tiles (reduce memory consumption)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
tiled?: boolean;
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Fp32
|
|
|
|
* @description Whether or not to use full float32 precision
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
fp32?: boolean;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default i2l
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "i2l";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ImageUrlsDTO
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The URLs for an image and its thumbnail.
|
|
|
|
*/
|
|
|
|
ImageUrlsDTO: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The unique name of the image.
|
|
|
|
*/
|
|
|
|
image_name: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Url
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The URL of the image.
|
|
|
|
*/
|
|
|
|
image_url: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Thumbnail Url
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The URL of the image's thumbnail.
|
|
|
|
*/
|
|
|
|
thumbnail_url: string;
|
|
|
|
};
|
2023-07-24 12:25:39 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Invisible Watermark
|
2023-07-24 12:25:39 +00:00
|
|
|
* @description Add an invisible watermark to an image
|
|
|
|
*/
|
|
|
|
ImageWatermarkInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-24 12:25:39 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-24 12:25:39 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-07-24 12:25:39 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-07-24 12:25:39 +00:00
|
|
|
* @description The image to check
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-07-24 12:25:39 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Text
|
|
|
|
* @description Watermark text
|
2023-07-24 12:25:39 +00:00
|
|
|
* @default InvokeAI
|
|
|
|
*/
|
|
|
|
text?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Metadata
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Optional core metadata to be written to image
|
2023-07-24 12:25:39 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
metadata?: components["schemas"]["CoreMetadata"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default img_watermark
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "img_watermark";
|
2023-07-24 12:25:39 +00:00
|
|
|
};
|
2023-08-16 01:36:43 +00:00
|
|
|
/** ImagesUpdatedFromListResult */
|
|
|
|
ImagesUpdatedFromListResult: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Updated Image Names
|
2023-08-16 01:36:43 +00:00
|
|
|
* @description The image names that were updated
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
updated_image_names: string[];
|
2023-08-16 01:36:43 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Solid Color Infill
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Infills transparent areas of an image with a solid color
|
|
|
|
*/
|
|
|
|
InfillColorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to infill
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Color
|
|
|
|
* @description The color to use to infill
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default {
|
|
|
|
* "r": 127,
|
|
|
|
* "g": 127,
|
|
|
|
* "b": 127,
|
|
|
|
* "a": 255
|
|
|
|
* }
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
color?: components["schemas"]["ColorField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default infill_rgba
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "infill_rgba";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* PatchMatch Infill
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Infills transparent areas of an image using the PatchMatch algorithm
|
|
|
|
*/
|
|
|
|
InfillPatchMatchInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to infill
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default infill_patchmatch
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "infill_patchmatch";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Tile Infill
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Infills transparent areas of an image with tiles of the image
|
|
|
|
*/
|
|
|
|
InfillTileInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to infill
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Tile Size
|
|
|
|
* @description The tile size (px)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 32
|
|
|
|
*/
|
|
|
|
tile_size?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Seed
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The seed to use for tile generation (omit for random)
|
|
|
|
*/
|
|
|
|
seed?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default infill_tile
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "infill_tile";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Integer Collection Primitive
|
2023-08-15 12:18:37 +00:00
|
|
|
* @description A collection of integer primitive values
|
|
|
|
*/
|
|
|
|
IntegerCollectionInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-15 12:18:37 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-15 12:18:37 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Collection
|
|
|
|
* @description The collection of integer values
|
2023-08-15 12:18:37 +00:00
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
collection?: number[];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default integer_collection
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "integer_collection";
|
2023-08-15 12:18:37 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* IntegerCollectionOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a collection of integers
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-14 09:41:29 +00:00
|
|
|
IntegerCollectionOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The int collection
|
|
|
|
*/
|
|
|
|
collection: number[];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default integer_collection_output
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "integer_collection_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Integer Primitive
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description An integer primitive value
|
|
|
|
*/
|
|
|
|
IntegerInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-14 09:41:29 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Value
|
|
|
|
* @description The integer value
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
value?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default integer
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "integer";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* IntegerOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a single integer
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-14 09:41:29 +00:00
|
|
|
IntegerOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Value
|
|
|
|
* @description The output integer
|
|
|
|
*/
|
|
|
|
value: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default integer_output
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "integer_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* IterateInvocation
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Iterates over a list of items
|
|
|
|
*/
|
|
|
|
IterateInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Collection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The list of items to iterate over
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
collection?: unknown[];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Index
|
|
|
|
* @description The index, will be provided on executed iterators
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
index?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default iterate
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "iterate";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* IterateInvocationOutput
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Used to connect iteration outputs. Will be expanded to a specific output.
|
|
|
|
*/
|
|
|
|
IterateInvocationOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection Item
|
|
|
|
* @description The item being iterated over
|
|
|
|
*/
|
|
|
|
item?: unknown;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default iterate_output
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "iterate_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-23 19:25:24 +00:00
|
|
|
/**
|
|
|
|
* LaMa Infill
|
|
|
|
* @description Infills transparent areas of an image using the LaMa model
|
|
|
|
*/
|
|
|
|
LaMaInfillInvocation: {
|
|
|
|
/**
|
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-23 19:25:24 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-23 19:25:24 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to infill
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-08-23 19:25:24 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default infill_lama
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "infill_lama";
|
|
|
|
};
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Latents Collection Primitive
|
2023-08-15 12:18:37 +00:00
|
|
|
* @description A collection of latents tensor primitive values
|
|
|
|
*/
|
|
|
|
LatentsCollectionInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-15 12:18:37 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-15 12:18:37 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The collection of latents tensors
|
|
|
|
*/
|
|
|
|
collection?: components["schemas"]["LatentsField"][];
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default latents_collection
|
2023-08-15 12:18:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "latents_collection";
|
2023-08-15 12:18:37 +00:00
|
|
|
};
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LatentsCollectionOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a collection of latents tensors
|
|
|
|
*/
|
|
|
|
LatentsCollectionOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description Latents tensor
|
|
|
|
*/
|
|
|
|
collection: components["schemas"]["LatentsField"][];
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default latents_collection_output
|
2023-08-14 09:41:29 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "latents_collection_output";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LatentsField
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description A latents tensor primitive field
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
LatentsField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Latents Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The name of the latents
|
|
|
|
*/
|
|
|
|
latents_name: string;
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Seed
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description Seed used to generate this latents
|
|
|
|
*/
|
|
|
|
seed?: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Latents Primitive
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description A latents tensor primitive value
|
|
|
|
*/
|
|
|
|
LatentsInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-14 09:41:29 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Latents
|
|
|
|
* @description The latents tensor
|
|
|
|
*/
|
|
|
|
latents?: components["schemas"]["LatentsField"];
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default latents
|
2023-08-14 09:41:29 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "latents";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LatentsOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a single latents tensor
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
LatentsOutput: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Latents
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Latents tensor
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
latents: components["schemas"]["LatentsField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Width
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Width of output (px)
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
width: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Height
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Height of output (px)
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
height: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default latents_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "latents_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Latents to Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Generates an image from latents.
|
|
|
|
*/
|
|
|
|
LatentsToImageInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Tiled
|
|
|
|
* @description Processing using overlapping tiles (reduce memory consumption)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
tiled?: boolean;
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Fp32
|
|
|
|
* @description Whether or not to use full float32 precision
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
fp32?: boolean;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Metadata
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Optional core metadata to be written to image
|
2023-07-12 15:15:09 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
metadata?: components["schemas"]["CoreMetadata"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default l2i
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "l2i";
|
2023-08-14 03:23:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Latents
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Latents tensor
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
latents?: components["schemas"]["LatentsField"];
|
2023-08-14 03:23:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Vae
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description VAE
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae?: components["schemas"]["VaeField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Leres (Depth) Processor
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description Applies leres processing to image
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-11 10:22:01 +00:00
|
|
|
LeresImageProcessorInvocation: {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default leres_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "leres_image_processor";
|
2023-07-03 14:09:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Thr A
|
|
|
|
* @description Leres parameter `thr_a`
|
2023-07-03 14:09:18 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
thr_a?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Thr B
|
|
|
|
* @description Leres parameter `thr_b`
|
2023-07-03 14:09:18 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
thr_b?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Boost
|
|
|
|
* @description Whether to use boost mode
|
2023-07-03 14:09:18 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
boost?: boolean;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Detect Resolution
|
|
|
|
* @description Pixel resolution for detection
|
2023-07-03 14:09:18 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
detect_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Resolution
|
|
|
|
* @description Pixel resolution for output image
|
2023-07-03 14:09:18 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
image_resolution?: number;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Lineart Anime Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies line art anime processing to image
|
|
|
|
*/
|
|
|
|
LineartAnimeImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default lineart_anime_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "lineart_anime_image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Detect Resolution
|
|
|
|
* @description Pixel resolution for detection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
detect_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Resolution
|
|
|
|
* @description Pixel resolution for output image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
image_resolution?: number;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Lineart Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies line art processing to image
|
|
|
|
*/
|
|
|
|
LineartImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default lineart_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "lineart_image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Detect Resolution
|
|
|
|
* @description Pixel resolution for detection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
detect_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Resolution
|
|
|
|
* @description Pixel resolution for output image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
image_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Coarse
|
|
|
|
* @description Whether to use coarse mode
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
coarse?: boolean;
|
|
|
|
};
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LoRAMetadataField
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description LoRA metadata for an image generated in InvokeAI.
|
|
|
|
*/
|
|
|
|
LoRAMetadataField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Lora
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The LoRA model
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
lora: components["schemas"]["LoRAModelField"];
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Weight
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The weight of the LoRA model
|
|
|
|
*/
|
|
|
|
weight: number;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** LoRAModelConfig */
|
|
|
|
LoRAModelConfig: {
|
2023-07-12 15:15:09 +00:00
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "lora";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: components["schemas"]["LoRAModelFormat"];
|
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-04 11:12:49 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LoRAModelField
|
2023-07-04 11:12:49 +00:00
|
|
|
* @description LoRA model field
|
|
|
|
*/
|
|
|
|
LoRAModelField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Name
|
2023-07-04 11:12:49 +00:00
|
|
|
* @description Name of the LoRA model
|
|
|
|
*/
|
|
|
|
model_name: string;
|
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-04 11:12:49 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LoRAModelFormat
|
|
|
|
* @description An enumeration.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
LoRAModelFormat: "lycoris" | "diffusers";
|
2023-07-20 15:45:54 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LogLevel
|
|
|
|
* @description An enumeration.
|
2023-07-20 15:45:54 +00:00
|
|
|
* @enum {integer}
|
|
|
|
*/
|
|
|
|
LogLevel: 0 | 10 | 20 | 30 | 40 | 50;
|
2023-06-23 09:14:13 +00:00
|
|
|
/** LoraInfo */
|
|
|
|
LoraInfo: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Info to load submodel
|
|
|
|
*/
|
|
|
|
model_name: string;
|
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Info to load submodel */
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: components["schemas"]["ModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Info to load submodel */
|
2023-08-16 01:59:19 +00:00
|
|
|
submodel?: components["schemas"]["SubModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Weight
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Lora's weight which to use when apply to model
|
|
|
|
*/
|
|
|
|
weight: number;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LoRA
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Apply selected lora to unet and text_encoder.
|
|
|
|
*/
|
|
|
|
LoraLoaderInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LoRA
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description LoRA model to load
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
lora: components["schemas"]["LoRAModelField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Weight
|
|
|
|
* @description The weight at which the LoRA is applied to each model
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0.75
|
|
|
|
*/
|
|
|
|
weight?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UNet
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description UNet (scheduler, LoRAs)
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet?: components["schemas"]["UNetField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip?: components["schemas"]["ClipField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default lora_loader
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "lora_loader";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LoraLoaderOutput
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Model loader output
|
|
|
|
*/
|
|
|
|
LoraLoaderOutput: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UNet
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description UNet (scheduler, LoRAs)
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet?: components["schemas"]["UNetField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip?: components["schemas"]["ClipField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default lora_loader_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "lora_loader_output";
|
2023-06-28 20:13:36 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* MainModelField
|
2023-06-28 20:13:36 +00:00
|
|
|
* @description Main model field
|
|
|
|
*/
|
|
|
|
MainModelField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Name
|
2023-06-28 20:13:36 +00:00
|
|
|
* @description Name of the model
|
|
|
|
*/
|
|
|
|
model_name: string;
|
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-19 02:40:27 +00:00
|
|
|
/** @description Model Type */
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: components["schemas"]["ModelType"];
|
2023-07-19 02:40:27 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Main Model
|
2023-06-28 20:13:36 +00:00
|
|
|
* @description Loads a main model, outputting its submodels.
|
|
|
|
*/
|
|
|
|
MainModelLoaderInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-28 20:13:36 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-28 20:13:36 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Model
|
|
|
|
* @description Main model (UNet, VAE, CLIP) to load
|
|
|
|
*/
|
|
|
|
model: components["schemas"]["MainModelField"];
|
2023-06-28 20:13:36 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default main_model_loader
|
2023-06-28 20:13:36 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "main_model_loader";
|
2023-06-28 20:13:36 +00:00
|
|
|
};
|
2023-08-11 18:15:59 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Combine Masks
|
2023-08-11 18:15:59 +00:00
|
|
|
* @description Combine two masks together by multiplying them using `PIL.ImageChops.multiply()`.
|
|
|
|
*/
|
|
|
|
MaskCombineInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-11 18:15:59 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-11 18:15:59 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-11 18:15:59 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mask1
|
2023-08-11 18:15:59 +00:00
|
|
|
* @description The first mask to combine
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
mask1?: components["schemas"]["ImageField"];
|
2023-08-11 18:15:59 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mask2
|
2023-08-11 18:15:59 +00:00
|
|
|
* @description The second image to combine
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
mask2?: components["schemas"]["ImageField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default mask_combine
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "mask_combine";
|
2023-08-11 18:15:59 +00:00
|
|
|
};
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mask Edge
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description Applies an edge mask to an image
|
|
|
|
*/
|
|
|
|
MaskEdgeInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-11 10:22:01 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-11 10:22:01 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description The image to apply the mask to
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Edge Size
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description The size of the edge
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
edge_size?: number;
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Edge Blur
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description The amount of blur on the edge
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
edge_blur?: number;
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Low Threshold
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description First threshold for the hysteresis procedure in Canny edge detection
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
low_threshold?: number;
|
2023-08-11 10:22:01 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* High Threshold
|
2023-08-11 10:22:01 +00:00
|
|
|
* @description Second threshold for the hysteresis procedure in Canny edge detection
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
high_threshold?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default mask_edge
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "mask_edge";
|
2023-08-11 10:22:01 +00:00
|
|
|
};
|
2023-06-28 20:13:36 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mask from Alpha
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Extracts the alpha channel of an image as a mask.
|
|
|
|
*/
|
|
|
|
MaskFromAlphaInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The image to create the mask from
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Invert
|
|
|
|
* @description Whether or not to invert the mask
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
invert?: boolean;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default tomask
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "tomask";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mediapipe Face Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies mediapipe face processing to image
|
|
|
|
*/
|
|
|
|
MediapipeFaceProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default mediapipe_face_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "mediapipe_face_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Max Faces
|
|
|
|
* @description Maximum number of faces to detect
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
max_faces?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Min Confidence
|
|
|
|
* @description Minimum confidence for face detection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0.5
|
|
|
|
*/
|
|
|
|
min_confidence?: number;
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* MergeInterpolationMethod
|
|
|
|
* @description An enumeration.
|
2023-07-07 06:08:30 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
MergeInterpolationMethod: "weighted_sum" | "sigmoid" | "inv_sigmoid" | "add_difference";
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Metadata Accumulator
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description Outputs a Core Metadata Object
|
|
|
|
*/
|
|
|
|
MetadataAccumulatorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-12 15:15:09 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-12 15:15:09 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Generation Mode
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The generation mode that output this image
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
generation_mode?: string;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Positive Prompt
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The positive prompt parameter
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
positive_prompt?: string;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Negative Prompt
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The negative prompt parameter
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
negative_prompt?: string;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Width
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The width parameter
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
width?: number;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Height
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The height parameter
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
height?: number;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Seed
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The seed used for noise generation
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
seed?: number;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Rand Device
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The device used for random number generation
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
rand_device?: string;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Cfg Scale
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The classifier-free guidance scale parameter
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
cfg_scale?: number;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Steps
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The number of steps used for inference
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
steps?: number;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scheduler
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The scheduler used for inference
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
scheduler?: string;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Clip Skip
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The number of skipped CLIP layers
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
clip_skip?: number;
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The main model used for inference
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model?: components["schemas"]["MainModelField"];
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Controlnets
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The ControlNets used for inference
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
controlnets?: components["schemas"]["ControlField"][];
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Loras
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The LoRAs used for inference
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
loras?: components["schemas"]["LoRAMetadataField"][];
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Strength
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The strength used for latents-to-latents
|
|
|
|
*/
|
|
|
|
strength?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Init Image
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The name of the initial image
|
|
|
|
*/
|
|
|
|
init_image?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Vae
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The VAE used for decoding, if the main model's default was not used
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae?: components["schemas"]["VAEModelField"];
|
2023-07-25 14:22:47 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Positive Style Prompt
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The positive style prompt parameter
|
|
|
|
*/
|
|
|
|
positive_style_prompt?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Negative Style Prompt
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The negative style prompt parameter
|
|
|
|
*/
|
|
|
|
negative_style_prompt?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Refiner Model
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The SDXL Refiner model used
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
refiner_model?: components["schemas"]["MainModelField"];
|
2023-07-25 14:22:47 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Refiner Cfg Scale
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The classifier-free guidance scale parameter used for the refiner
|
|
|
|
*/
|
|
|
|
refiner_cfg_scale?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Refiner Steps
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The number of steps used for the refiner
|
|
|
|
*/
|
|
|
|
refiner_steps?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Refiner Scheduler
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The scheduler used for the refiner
|
|
|
|
*/
|
|
|
|
refiner_scheduler?: string;
|
|
|
|
/**
|
2023-09-02 01:36:07 +00:00
|
|
|
* Refiner Positive Aesthetic Score
|
2023-08-13 16:02:36 +00:00
|
|
|
* @description The aesthetic score used for the refiner
|
|
|
|
*/
|
2023-09-02 01:36:07 +00:00
|
|
|
refiner_positive_aesthetic_score?: number;
|
2023-08-13 16:02:36 +00:00
|
|
|
/**
|
2023-09-02 01:36:07 +00:00
|
|
|
* Refiner Negative Aesthetic Score
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The aesthetic score used for the refiner
|
|
|
|
*/
|
2023-09-02 01:36:07 +00:00
|
|
|
refiner_negative_aesthetic_score?: number;
|
2023-07-25 14:22:47 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Refiner Start
|
2023-07-25 14:22:47 +00:00
|
|
|
* @description The start value used for refiner denoising
|
|
|
|
*/
|
|
|
|
refiner_start?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default metadata_accumulator
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "metadata_accumulator";
|
2023-07-12 15:15:09 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* MetadataAccumulatorOutput
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description The output of the MetadataAccumulator node
|
|
|
|
*/
|
|
|
|
MetadataAccumulatorOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Metadata
|
|
|
|
* @description The core metadata for the image
|
|
|
|
*/
|
|
|
|
metadata: components["schemas"]["CoreMetadata"];
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default metadata_accumulator_output
|
2023-07-12 15:15:09 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "metadata_accumulator_output";
|
2023-07-12 15:15:09 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* Midas Depth Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies Midas depth processing to image
|
|
|
|
*/
|
|
|
|
MidasDepthImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default midas_depth_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "midas_depth_image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* A Mult
|
|
|
|
* @description Midas parameter `a_mult` (a = a_mult * PI)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 2
|
|
|
|
*/
|
|
|
|
a_mult?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Bg Th
|
|
|
|
* @description Midas parameter `bg_th`
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0.1
|
|
|
|
*/
|
|
|
|
bg_th?: number;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* MLSD Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies MLSD processing to image
|
|
|
|
*/
|
|
|
|
MlsdImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default mlsd_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "mlsd_image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Detect Resolution
|
|
|
|
* @description Pixel resolution for detection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
detect_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Resolution
|
|
|
|
* @description Pixel resolution for output image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
image_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Thr V
|
|
|
|
* @description MLSD parameter `thr_v`
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0.1
|
|
|
|
*/
|
|
|
|
thr_v?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Thr D
|
|
|
|
* @description MLSD parameter `thr_d`
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0.1
|
|
|
|
*/
|
|
|
|
thr_d?: number;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ModelError
|
|
|
|
* @description An enumeration.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
ModelError: "not_found";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** ModelInfo */
|
|
|
|
ModelInfo: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Name
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Info to load submodel
|
|
|
|
*/
|
|
|
|
model_name: string;
|
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Info to load submodel */
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: components["schemas"]["ModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Info to load submodel */
|
2023-08-16 01:59:19 +00:00
|
|
|
submodel?: components["schemas"]["SubModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ModelLoaderOutput
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Model loader output
|
|
|
|
*/
|
|
|
|
ModelLoaderOutput: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UNet
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description UNet (scheduler, LoRAs)
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet: components["schemas"]["UNetField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip: components["schemas"]["ClipField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* VAE
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description VAE
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae: components["schemas"]["VaeField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default model_loader_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "model_loader_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ModelType
|
|
|
|
* @description An enumeration.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
ModelType: "onnx" | "main" | "vae" | "lora" | "controlnet" | "embedding";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ModelVariantType
|
|
|
|
* @description An enumeration.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
ModelVariantType: "normal" | "inpaint" | "depth";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** ModelsList */
|
|
|
|
ModelsList: {
|
|
|
|
/** Models */
|
2023-08-16 01:59:19 +00:00
|
|
|
models: (components["schemas"]["ONNXStableDiffusion1ModelConfig"] | components["schemas"]["StableDiffusion1ModelCheckpointConfig"] | components["schemas"]["StableDiffusion1ModelDiffusersConfig"] | components["schemas"]["VaeModelConfig"] | components["schemas"]["LoRAModelConfig"] | components["schemas"]["ControlNetModelCheckpointConfig"] | components["schemas"]["ControlNetModelDiffusersConfig"] | components["schemas"]["TextualInversionModelConfig"] | components["schemas"]["ONNXStableDiffusion2ModelConfig"] | components["schemas"]["StableDiffusion2ModelCheckpointConfig"] | components["schemas"]["StableDiffusion2ModelDiffusersConfig"] | components["schemas"]["StableDiffusionXLModelCheckpointConfig"] | components["schemas"]["StableDiffusionXLModelDiffusersConfig"])[];
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Multiply Integers
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Multiplies two numbers
|
|
|
|
*/
|
|
|
|
MultiplyInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* A
|
|
|
|
* @description The first number
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
a?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* B
|
|
|
|
* @description The second number
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
b?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default mul
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "mul";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Noise
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Generates latent noise.
|
|
|
|
*/
|
|
|
|
NoiseInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Seed
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Seed for random number generation
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
seed?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Width
|
|
|
|
* @description Width of output (px)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
width?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Height
|
|
|
|
* @description Height of output (px)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
height?: number;
|
2023-06-27 03:57:41 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Use Cpu
|
|
|
|
* @description Use CPU for noise generation (for reproducible results across platforms)
|
2023-06-27 03:57:41 +00:00
|
|
|
* @default true
|
|
|
|
*/
|
|
|
|
use_cpu?: boolean;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default noise
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "noise";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* NoiseOutput
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Invocation noise output
|
|
|
|
*/
|
|
|
|
NoiseOutput: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Noise
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Noise tensor
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
noise?: components["schemas"]["LatentsField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Width
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Width of output (px)
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
width: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Height
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Height of output (px)
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
height: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default noise_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "noise_output";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Normal BAE Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies NormalBae processing to image
|
|
|
|
*/
|
|
|
|
NormalbaeImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default normalbae_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "normalbae_image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Detect Resolution
|
|
|
|
* @description Pixel resolution for detection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
detect_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Resolution
|
|
|
|
* @description Pixel resolution for output image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
image_resolution?: number;
|
|
|
|
};
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ONNX Latents to Image
|
2023-07-27 13:37:37 +00:00
|
|
|
* @description Generates an image from latents.
|
|
|
|
*/
|
|
|
|
ONNXLatentsToImageInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-27 13:37:37 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Latents
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Denoised latents tensor
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
latents?: components["schemas"]["LatentsField"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Vae
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description VAE
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae?: components["schemas"]["VaeField"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Metadata
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Optional core metadata to be written to image
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
metadata?: components["schemas"]["CoreMetadata"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default l2i_onnx
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "l2i_onnx";
|
2023-07-27 13:37:37 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ONNXModelLoaderOutput
|
2023-07-27 13:37:37 +00:00
|
|
|
* @description Model loader output
|
|
|
|
*/
|
|
|
|
ONNXModelLoaderOutput: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UNet
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description UNet (scheduler, LoRAs)
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet?: components["schemas"]["UNetField"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip?: components["schemas"]["ClipField"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* VAE Decoder
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description VAE
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae_decoder?: components["schemas"]["VaeField"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* VAE Encoder
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description VAE
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae_encoder?: components["schemas"]["VaeField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default model_loader_output_onnx
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "model_loader_output_onnx";
|
2023-07-27 13:37:37 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ONNX Prompt (Raw)
|
2023-07-27 13:37:37 +00:00
|
|
|
* @description A node to process inputs and produce outputs.
|
|
|
|
* May use dependency injection in __init__ to receive providers.
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
*
|
|
|
|
* All invocations must use the `@invocation` decorator to provide their unique type.
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
|
|
|
ONNXPromptInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-27 13:37:37 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Prompt
|
|
|
|
* @description Raw prompt text (no parsing)
|
2023-07-27 13:37:37 +00:00
|
|
|
* @default
|
|
|
|
*/
|
|
|
|
prompt?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Clip
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip?: components["schemas"]["ClipField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default prompt_onnx
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "prompt_onnx";
|
2023-07-27 13:37:37 +00:00
|
|
|
};
|
|
|
|
/** ONNXStableDiffusion1ModelConfig */
|
|
|
|
ONNXStableDiffusion1ModelConfig: {
|
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-07-27 13:37:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "onnx";
|
2023-07-27 13:37:37 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
2023-07-28 18:00:32 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Format
|
2023-07-28 18:00:32 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: "onnx";
|
|
|
|
error?: components["schemas"]["ModelError"];
|
|
|
|
variant: components["schemas"]["ModelVariantType"];
|
2023-07-27 13:37:37 +00:00
|
|
|
};
|
|
|
|
/** ONNXStableDiffusion2ModelConfig */
|
|
|
|
ONNXStableDiffusion2ModelConfig: {
|
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-07-27 13:37:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "onnx";
|
2023-07-27 13:37:37 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
2023-07-28 18:00:32 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Format
|
2023-07-28 18:00:32 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: "onnx";
|
|
|
|
error?: components["schemas"]["ModelError"];
|
|
|
|
variant: components["schemas"]["ModelVariantType"];
|
|
|
|
prediction_type: components["schemas"]["SchedulerPredictionType"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/** Upcast Attention */
|
|
|
|
upcast_attention: boolean;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ONNX Text to Latents
|
2023-07-27 13:37:37 +00:00
|
|
|
* @description Generates latents from conditionings.
|
|
|
|
*/
|
|
|
|
ONNXTextToLatentsInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-27 13:37:37 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Positive Conditioning
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Positive conditioning tensor
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
positive_conditioning?: components["schemas"]["ConditioningField"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Negative Conditioning
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Negative conditioning tensor
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
negative_conditioning?: components["schemas"]["ConditioningField"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Noise
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Noise tensor
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
noise?: components["schemas"]["LatentsField"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Steps
|
|
|
|
* @description Number of steps to run
|
2023-07-27 13:37:37 +00:00
|
|
|
* @default 10
|
|
|
|
*/
|
|
|
|
steps?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Cfg Scale
|
|
|
|
* @description Classifier-Free Guidance scale
|
2023-07-27 13:37:37 +00:00
|
|
|
* @default 7.5
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
cfg_scale?: number | number[];
|
2023-08-16 01:59:19 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scheduler
|
|
|
|
* @description Scheduler to use during inference
|
|
|
|
* @default euler
|
2023-08-16 01:59:19 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
scheduler?: "ddim" | "ddpm" | "deis" | "lms" | "lms_k" | "pndm" | "heun" | "heun_k" | "euler" | "euler_k" | "euler_a" | "kdpm_2" | "kdpm_2_a" | "dpmpp_2s" | "dpmpp_2s_k" | "dpmpp_2m" | "dpmpp_2m_k" | "dpmpp_2m_sde" | "dpmpp_2m_sde_k" | "dpmpp_sde" | "dpmpp_sde_k" | "unipc";
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Precision
|
|
|
|
* @description Precision to use
|
|
|
|
* @default tensor(float16)
|
2023-08-16 01:59:19 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
precision?: "tensor(bool)" | "tensor(int8)" | "tensor(uint8)" | "tensor(int16)" | "tensor(uint16)" | "tensor(int32)" | "tensor(uint32)" | "tensor(int64)" | "tensor(uint64)" | "tensor(float16)" | "tensor(float)" | "tensor(double)";
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Unet
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description UNet (scheduler, LoRAs)
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet?: components["schemas"]["UNetField"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Control
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description ControlNet(s) to apply
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
control?: components["schemas"]["ControlField"] | components["schemas"]["ControlField"][];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default t2l_onnx
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "t2l_onnx";
|
2023-07-27 13:37:37 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* OffsetPaginatedResults[BoardDTO]
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Offset-paginated results
|
|
|
|
*/
|
|
|
|
OffsetPaginatedResults_BoardDTO_: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Items
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Items
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
items: components["schemas"]["BoardDTO"][];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Offset
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Offset from which to retrieve items
|
|
|
|
*/
|
|
|
|
offset: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Limit
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Limit of items to get
|
|
|
|
*/
|
|
|
|
limit: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Total
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Total number of items in result
|
|
|
|
*/
|
|
|
|
total: number;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* OffsetPaginatedResults[ImageDTO]
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Offset-paginated results
|
|
|
|
*/
|
|
|
|
OffsetPaginatedResults_ImageDTO_: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Items
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Items
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
items: components["schemas"]["ImageDTO"][];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Offset
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Offset from which to retrieve items
|
|
|
|
*/
|
|
|
|
offset: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Limit
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Limit of items to get
|
|
|
|
*/
|
|
|
|
limit: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Total
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Total number of items in result
|
|
|
|
*/
|
|
|
|
total: number;
|
|
|
|
};
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* OnnxModelField
|
2023-07-27 13:37:37 +00:00
|
|
|
* @description Onnx model field
|
|
|
|
*/
|
|
|
|
OnnxModelField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Name
|
2023-07-27 13:37:37 +00:00
|
|
|
* @description Name of the model
|
|
|
|
*/
|
|
|
|
model_name: string;
|
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/** @description Model Type */
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: components["schemas"]["ModelType"];
|
2023-07-27 13:37:37 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ONNX Main Model
|
2023-07-27 13:37:37 +00:00
|
|
|
* @description Loads a main model, outputting its submodels.
|
|
|
|
*/
|
|
|
|
OnnxModelLoaderInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-27 13:37:37 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-27 13:37:37 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Model
|
|
|
|
* @description ONNX Main model (UNet, VAE, CLIP) to load
|
|
|
|
*/
|
|
|
|
model: components["schemas"]["OnnxModelField"];
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default onnx_model_loader
|
2023-07-27 13:37:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "onnx_model_loader";
|
2023-07-27 13:37:37 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Openpose Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies Openpose processing to image
|
|
|
|
*/
|
|
|
|
OpenposeImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default openpose_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "openpose_image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Hand And Face
|
|
|
|
* @description Whether to use hands and face mode
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
hand_and_face?: boolean;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Detect Resolution
|
|
|
|
* @description Pixel resolution for detection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
detect_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Resolution
|
|
|
|
* @description Pixel resolution for output image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
image_resolution?: number;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* PaginatedResults[GraphExecutionState]
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Paginated results
|
|
|
|
*/
|
|
|
|
PaginatedResults_GraphExecutionState_: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Items
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Items
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
items: components["schemas"]["GraphExecutionState"][];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Page
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Current Page
|
|
|
|
*/
|
|
|
|
page: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Pages
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Total number of pages
|
|
|
|
*/
|
|
|
|
pages: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Per Page
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Number of items per page
|
|
|
|
*/
|
|
|
|
per_page: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Total
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Total number of items in result
|
|
|
|
*/
|
|
|
|
total: number;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* PIDI Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies PIDI processing to image
|
|
|
|
*/
|
|
|
|
PidiImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default pidi_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "pidi_image_processor";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Detect Resolution
|
|
|
|
* @description Pixel resolution for detection
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
detect_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Image Resolution
|
|
|
|
* @description Pixel resolution for output image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 512
|
|
|
|
*/
|
|
|
|
image_resolution?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Safe
|
|
|
|
* @description Whether or not to use safe mode
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
safe?: boolean;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scribble
|
|
|
|
* @description Whether or not to use scribble mode
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
scribble?: boolean;
|
|
|
|
};
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Prompts from File
|
2023-07-18 02:01:56 +00:00
|
|
|
* @description Loads prompts from a text file
|
|
|
|
*/
|
|
|
|
PromptsFromFileInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* File Path
|
2023-07-18 02:01:56 +00:00
|
|
|
* @description Path to prompt text file
|
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
file_path?: string;
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Pre Prompt
|
2023-07-18 02:01:56 +00:00
|
|
|
* @description String to prepend to each prompt
|
|
|
|
*/
|
|
|
|
pre_prompt?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Post Prompt
|
2023-07-18 02:01:56 +00:00
|
|
|
* @description String to append to each prompt
|
|
|
|
*/
|
|
|
|
post_prompt?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Start Line
|
|
|
|
* @description Line in the file to start start from
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
start_line?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Max Prompts
|
|
|
|
* @description Max lines to read from file (0=all)
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
max_prompts?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default prompt_from_file
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "prompt_from_file";
|
2023-07-18 02:01:56 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Random Integer
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Outputs a single random integer.
|
|
|
|
*/
|
|
|
|
RandomIntInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Low
|
|
|
|
* @description The inclusive low value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
low?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* High
|
|
|
|
* @description The exclusive high value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 2147483647
|
|
|
|
*/
|
|
|
|
high?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default rand_int
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "rand_int";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Random Range
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Creates a collection of random numbers
|
|
|
|
*/
|
|
|
|
RandomRangeInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Low
|
|
|
|
* @description The inclusive low value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
low?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* High
|
|
|
|
* @description The exclusive high value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 2147483647
|
|
|
|
*/
|
|
|
|
high?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Size
|
|
|
|
* @description The number of values to generate
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
size?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Seed
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The seed for the RNG (omit for random)
|
|
|
|
*/
|
|
|
|
seed?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default random_range
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "random_range";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Integer Range
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Creates a range of numbers from start to stop with step
|
|
|
|
*/
|
|
|
|
RangeInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Start
|
|
|
|
* @description The start of the range
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
start?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Stop
|
|
|
|
* @description The stop of the range
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 10
|
|
|
|
*/
|
|
|
|
stop?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Step
|
|
|
|
* @description The step of the range
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
step?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default range
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "range";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Integer Range of Size
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Creates a range from start to start + size with step
|
|
|
|
*/
|
|
|
|
RangeOfSizeInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Start
|
|
|
|
* @description The start of the range
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
start?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Size
|
|
|
|
* @description The number of values
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
size?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Step
|
|
|
|
* @description The step of the range
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
step?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default range_of_size
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "range_of_size";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-31 08:16:52 +00:00
|
|
|
/** RemoveImagesFromBoardResult */
|
|
|
|
RemoveImagesFromBoardResult: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Removed Image Names
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description The image names that were removed from their board
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
removed_image_names: string[];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Resize Latents
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Resizes latents to explicit width/height (in pixels). Provided dimensions are floor-divided by 8.
|
|
|
|
*/
|
|
|
|
ResizeLatentsInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Latents
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Latents tensor
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
latents?: components["schemas"]["LatentsField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Width
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Width of output (px)
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-15 02:19:24 +00:00
|
|
|
width?: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Height
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Width of output (px)
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-15 02:19:24 +00:00
|
|
|
height?: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mode
|
|
|
|
* @description Interpolation mode
|
|
|
|
* @default bilinear
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
mode?: "nearest" | "linear" | "bilinear" | "bicubic" | "trilinear" | "area" | "nearest-exact";
|
2023-07-13 05:22:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Antialias
|
|
|
|
* @description Whether or not to apply antialiasing (bilinear or bicubic only)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
antialias?: boolean;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default lresize
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "lresize";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* ResourceOrigin
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description The origin of a resource (eg image).
|
2023-08-22 05:15:00 +00:00
|
|
|
*
|
2023-06-23 09:14:13 +00:00
|
|
|
* - INTERNAL: The resource was created by the application.
|
|
|
|
* - EXTERNAL: The resource was not created by the application.
|
2023-08-22 05:15:00 +00:00
|
|
|
* This may be a user-initiated upload, or an internal application upload (eg Canvas init image).
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
ResourceOrigin: "internal" | "external";
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* SDXL Prompt
|
2023-07-18 02:01:56 +00:00
|
|
|
* @description Parse prompt using compel package to conditioning.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-18 02:01:56 +00:00
|
|
|
SDXLCompelPromptInvocation: {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Prompt
|
|
|
|
* @description Prompt to be parsed by Compel to create a conditioning tensor
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-18 02:01:56 +00:00
|
|
|
prompt?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Style
|
|
|
|
* @description Prompt to be parsed by Compel to create a conditioning tensor
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-18 02:01:56 +00:00
|
|
|
style?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Original Width
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 1024
|
|
|
|
*/
|
|
|
|
original_width?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Original Height
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 1024
|
|
|
|
*/
|
|
|
|
original_height?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Crop Top
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
crop_top?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Crop Left
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
crop_left?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Target Width
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 1024
|
|
|
|
*/
|
|
|
|
target_width?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Target Height
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 1024
|
|
|
|
*/
|
|
|
|
target_height?: number;
|
|
|
|
/**
|
feat: polymorphic fields
Initial support for polymorphic field types. Polymorphic types are a single of or list of a specific type. For example, `Union[str, list[str]]`.
Polymorphics do not yet have support for direct input in the UI (will come in the future). They will be forcibly set as Connection-only fields, in which case users will not be able to provide direct input to the field.
If a polymorphic should present as a singleton type - which would allow direct input - the node must provide an explicit type hint.
For example, `DenoiseLatents`' `CFG Scale` is polymorphic, but in the node editor, we want to present this as a number input. In the node definition, the field is given `ui_type=UIType.Float`, which tells the UI to treat this as a `float` field.
The connection validation logic will prevent connecting a collection to `CFG Scale` in this situation, because it is typed as `float`. The workaround is to disable validation from the settings to make this specific connection. A future improvement will resolve this.
This also introduces better support for collection field types. Like polymorphics, collection types are parsed automatically by the client and do not need any specific type hints.
Also like polymorphics, there is no support yet for direct input of collection types in the UI.
- Disabling validation in workflow editor now displays the visual hints for valid connections, but lets you connect to anything.
- Added `ui_order: int` to `InputField` and `OutputField`. The UI will use this, if present, to order fields in a node UI. See usage in `DenoiseLatents` for an example.
- Updated the field colors - duplicate colors have just been lightened a bit. It's not perfect but it was a quick fix.
- Field handles for collections are the same color as their single counterparts, but have a dark dot in the center of them.
- Field handles for polymorphics are a rounded square with dot in the middle.
- Removed all fields that just render `null` from `InputFieldRenderer`, replaced with a single fallback
- Removed logic in `zValidatedWorkflow`, which checked for existence of node templates for each node in a workflow. This logic introduced a circular dependency, due to importing the global redux `store` in order to get the node templates within a zod schema. It's actually fine to just leave this out entirely; The case of a missing node template is handled by the UI. Fixing it otherwise would introduce a substantial headache.
- Fixed the `ControlNetInvocation.control_model` field default, which was a string when it shouldn't have one.
2023-09-01 09:40:27 +00:00
|
|
|
* CLIP 1
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip?: components["schemas"]["ClipField"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
feat: polymorphic fields
Initial support for polymorphic field types. Polymorphic types are a single of or list of a specific type. For example, `Union[str, list[str]]`.
Polymorphics do not yet have support for direct input in the UI (will come in the future). They will be forcibly set as Connection-only fields, in which case users will not be able to provide direct input to the field.
If a polymorphic should present as a singleton type - which would allow direct input - the node must provide an explicit type hint.
For example, `DenoiseLatents`' `CFG Scale` is polymorphic, but in the node editor, we want to present this as a number input. In the node definition, the field is given `ui_type=UIType.Float`, which tells the UI to treat this as a `float` field.
The connection validation logic will prevent connecting a collection to `CFG Scale` in this situation, because it is typed as `float`. The workaround is to disable validation from the settings to make this specific connection. A future improvement will resolve this.
This also introduces better support for collection field types. Like polymorphics, collection types are parsed automatically by the client and do not need any specific type hints.
Also like polymorphics, there is no support yet for direct input of collection types in the UI.
- Disabling validation in workflow editor now displays the visual hints for valid connections, but lets you connect to anything.
- Added `ui_order: int` to `InputField` and `OutputField`. The UI will use this, if present, to order fields in a node UI. See usage in `DenoiseLatents` for an example.
- Updated the field colors - duplicate colors have just been lightened a bit. It's not perfect but it was a quick fix.
- Field handles for collections are the same color as their single counterparts, but have a dark dot in the center of them.
- Field handles for polymorphics are a rounded square with dot in the middle.
- Removed all fields that just render `null` from `InputFieldRenderer`, replaced with a single fallback
- Removed logic in `zValidatedWorkflow`, which checked for existence of node templates for each node in a workflow. This logic introduced a circular dependency, due to importing the global redux `store` in order to get the node templates within a zod schema. It's actually fine to just leave this out entirely; The case of a missing node template is handled by the UI. Fixing it otherwise would introduce a substantial headache.
- Fixed the `ControlNetInvocation.control_model` field default, which was a string when it shouldn't have one.
2023-09-01 09:40:27 +00:00
|
|
|
* CLIP 2
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip2?: components["schemas"]["ClipField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default sdxl_compel_prompt
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "sdxl_compel_prompt";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* SDXL LoRA
|
2023-08-08 02:00:05 +00:00
|
|
|
* @description Apply selected lora to unet and text_encoder.
|
|
|
|
*/
|
|
|
|
SDXLLoraLoaderInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-08 02:00:05 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
workflow?: string;
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* LoRA
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description LoRA model to load
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
lora: components["schemas"]["LoRAModelField"];
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Weight
|
|
|
|
* @description The weight at which the LoRA is applied to each model
|
2023-08-08 02:00:05 +00:00
|
|
|
* @default 0.75
|
|
|
|
*/
|
|
|
|
weight?: number;
|
|
|
|
/**
|
feat: polymorphic fields
Initial support for polymorphic field types. Polymorphic types are a single of or list of a specific type. For example, `Union[str, list[str]]`.
Polymorphics do not yet have support for direct input in the UI (will come in the future). They will be forcibly set as Connection-only fields, in which case users will not be able to provide direct input to the field.
If a polymorphic should present as a singleton type - which would allow direct input - the node must provide an explicit type hint.
For example, `DenoiseLatents`' `CFG Scale` is polymorphic, but in the node editor, we want to present this as a number input. In the node definition, the field is given `ui_type=UIType.Float`, which tells the UI to treat this as a `float` field.
The connection validation logic will prevent connecting a collection to `CFG Scale` in this situation, because it is typed as `float`. The workaround is to disable validation from the settings to make this specific connection. A future improvement will resolve this.
This also introduces better support for collection field types. Like polymorphics, collection types are parsed automatically by the client and do not need any specific type hints.
Also like polymorphics, there is no support yet for direct input of collection types in the UI.
- Disabling validation in workflow editor now displays the visual hints for valid connections, but lets you connect to anything.
- Added `ui_order: int` to `InputField` and `OutputField`. The UI will use this, if present, to order fields in a node UI. See usage in `DenoiseLatents` for an example.
- Updated the field colors - duplicate colors have just been lightened a bit. It's not perfect but it was a quick fix.
- Field handles for collections are the same color as their single counterparts, but have a dark dot in the center of them.
- Field handles for polymorphics are a rounded square with dot in the middle.
- Removed all fields that just render `null` from `InputFieldRenderer`, replaced with a single fallback
- Removed logic in `zValidatedWorkflow`, which checked for existence of node templates for each node in a workflow. This logic introduced a circular dependency, due to importing the global redux `store` in order to get the node templates within a zod schema. It's actually fine to just leave this out entirely; The case of a missing node template is handled by the UI. Fixing it otherwise would introduce a substantial headache.
- Fixed the `ControlNetInvocation.control_model` field default, which was a string when it shouldn't have one.
2023-09-01 09:40:27 +00:00
|
|
|
* UNet
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description UNet (scheduler, LoRAs)
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet?: components["schemas"]["UNetField"];
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP 1
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip?: components["schemas"]["ClipField"];
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP 2
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip2?: components["schemas"]["ClipField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default sdxl_lora_loader
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "sdxl_lora_loader";
|
2023-08-08 02:00:05 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* SDXLLoraLoaderOutput
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description SDXL LoRA Loader Output
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
|
|
|
SDXLLoraLoaderOutput: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UNet
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description UNet (scheduler, LoRAs)
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet?: components["schemas"]["UNetField"];
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP 1
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip?: components["schemas"]["ClipField"];
|
2023-08-08 02:00:05 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP 2
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-08-08 02:00:05 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip2?: components["schemas"]["ClipField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default sdxl_lora_loader_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "sdxl_lora_loader_output";
|
2023-08-08 02:00:05 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* SDXL Main Model
|
2023-07-18 02:01:56 +00:00
|
|
|
* @description Loads an sdxl base model, outputting its submodels.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-18 02:01:56 +00:00
|
|
|
SDXLModelLoaderInvocation: {
|
2023-07-03 14:09:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-03 14:09:18 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-03 14:09:18 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Model
|
|
|
|
* @description SDXL Main model (UNet, VAE, CLIP1, CLIP2) to load
|
|
|
|
*/
|
|
|
|
model: components["schemas"]["MainModelField"];
|
2023-07-03 14:09:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default sdxl_model_loader
|
2023-07-03 14:09:18 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "sdxl_model_loader";
|
2023-07-03 14:09:18 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* SDXLModelLoaderOutput
|
2023-07-18 02:01:56 +00:00
|
|
|
* @description SDXL base model loader output
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-18 02:01:56 +00:00
|
|
|
SDXLModelLoaderOutput: {
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UNet
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description UNet (scheduler, LoRAs)
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet: components["schemas"]["UNetField"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP 1
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip: components["schemas"]["ClipField"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP 2
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip2: components["schemas"]["ClipField"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* VAE
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description VAE
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae: components["schemas"]["VaeField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default sdxl_model_loader_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "sdxl_model_loader_output";
|
2023-07-18 02:01:56 +00:00
|
|
|
};
|
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* SDXL Refiner Prompt
|
2023-07-18 02:01:56 +00:00
|
|
|
* @description Parse prompt using compel package to conditioning.
|
|
|
|
*/
|
|
|
|
SDXLRefinerCompelPromptInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Style
|
|
|
|
* @description Prompt to be parsed by Compel to create a conditioning tensor
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default
|
|
|
|
*/
|
|
|
|
style?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Original Width
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 1024
|
|
|
|
*/
|
|
|
|
original_width?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Original Height
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 1024
|
|
|
|
*/
|
|
|
|
original_height?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Crop Top
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
crop_top?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Crop Left
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
crop_left?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Aesthetic Score
|
|
|
|
* @description The aesthetic score to apply to the conditioning tensor
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default 6
|
|
|
|
*/
|
|
|
|
aesthetic_score?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Clip2
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip2?: components["schemas"]["ClipField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default sdxl_refiner_compel_prompt
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "sdxl_refiner_compel_prompt";
|
2023-07-18 02:01:56 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* SDXL Refiner Model
|
2023-07-18 02:01:56 +00:00
|
|
|
* @description Loads an sdxl refiner model, outputting its submodels.
|
|
|
|
*/
|
|
|
|
SDXLRefinerModelLoaderInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-18 02:01:56 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Model
|
|
|
|
* @description SDXL Refiner Main Modde (UNet, VAE, CLIP2) to load
|
|
|
|
*/
|
|
|
|
model: components["schemas"]["MainModelField"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default sdxl_refiner_model_loader
|
2023-07-18 02:01:56 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "sdxl_refiner_model_loader";
|
2023-07-18 02:01:56 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* SDXLRefinerModelLoaderOutput
|
2023-07-18 02:01:56 +00:00
|
|
|
* @description SDXL refiner model loader output
|
|
|
|
*/
|
|
|
|
SDXLRefinerModelLoaderOutput: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UNet
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description UNet (scheduler, LoRAs)
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet: components["schemas"]["UNetField"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* CLIP 2
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description CLIP (tokenizer, text encoder, LoRAs) and skipped layer count
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
clip2: components["schemas"]["ClipField"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* VAE
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description VAE
|
2023-07-18 02:01:56 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae: components["schemas"]["VaeField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default sdxl_refiner_model_loader_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "sdxl_refiner_model_loader_output";
|
2023-07-18 02:01:56 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scale Latents
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Scales latents by a given factor.
|
|
|
|
*/
|
|
|
|
ScaleLatentsInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Latents
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Latents tensor
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
latents?: components["schemas"]["LatentsField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scale Factor
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description The factor by which to scale
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-08-14 03:23:09 +00:00
|
|
|
scale_factor?: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mode
|
|
|
|
* @description Interpolation mode
|
|
|
|
* @default bilinear
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
mode?: "nearest" | "linear" | "bilinear" | "bicubic" | "trilinear" | "area" | "nearest-exact";
|
2023-07-13 05:22:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Antialias
|
|
|
|
* @description Whether or not to apply antialiasing (bilinear or bicubic only)
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
antialias?: boolean;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default lscale
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "lscale";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-09-02 01:36:07 +00:00
|
|
|
/**
|
|
|
|
* Scheduler
|
|
|
|
* @description Selects a scheduler.
|
|
|
|
*/
|
|
|
|
SchedulerInvocation: {
|
|
|
|
/**
|
|
|
|
* Id
|
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
|
|
|
* Is Intermediate
|
|
|
|
* @description Whether or not this is an intermediate invocation.
|
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
|
|
|
/**
|
|
|
|
* Scheduler
|
|
|
|
* @description Scheduler to use during inference
|
|
|
|
* @default euler
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
scheduler?: "ddim" | "ddpm" | "deis" | "lms" | "lms_k" | "pndm" | "heun" | "heun_k" | "euler" | "euler_k" | "euler_a" | "kdpm_2" | "kdpm_2_a" | "dpmpp_2s" | "dpmpp_2s_k" | "dpmpp_2m" | "dpmpp_2m_k" | "dpmpp_2m_sde" | "dpmpp_2m_sde_k" | "dpmpp_sde" | "dpmpp_sde_k" | "unipc";
|
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default scheduler
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "scheduler";
|
|
|
|
};
|
|
|
|
/**
|
|
|
|
* SchedulerOutput
|
|
|
|
* @description Base class for all invocation outputs.
|
|
|
|
*
|
|
|
|
* All invocation outputs must use the `@invocation_output` decorator to provide their unique type.
|
|
|
|
*/
|
|
|
|
SchedulerOutput: {
|
|
|
|
/**
|
|
|
|
* Scheduler
|
|
|
|
* @description Scheduler to use during inference
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
scheduler: "ddim" | "ddpm" | "deis" | "lms" | "lms_k" | "pndm" | "heun" | "heun_k" | "euler" | "euler_k" | "euler_a" | "kdpm_2" | "kdpm_2_a" | "dpmpp_2s" | "dpmpp_2s_k" | "dpmpp_2m" | "dpmpp_2m_k" | "dpmpp_2m_sde" | "dpmpp_2m_sde_k" | "dpmpp_sde" | "dpmpp_sde_k" | "unipc";
|
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default scheduler_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "scheduler_output";
|
|
|
|
};
|
2023-07-27 13:37:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* SchedulerPredictionType
|
|
|
|
* @description An enumeration.
|
2023-07-27 13:37:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
SchedulerPredictionType: "epsilon" | "v_prediction" | "sample";
|
2023-08-29 00:20:55 +00:00
|
|
|
/**
|
|
|
|
* Seamless
|
|
|
|
* @description Applies the seamless transformation to the Model UNet and VAE.
|
|
|
|
*/
|
|
|
|
SeamlessModeInvocation: {
|
|
|
|
/**
|
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-29 00:20:55 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-29 00:20:55 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
|
|
|
/**
|
|
|
|
* UNet
|
|
|
|
* @description UNet (scheduler, LoRAs)
|
|
|
|
*/
|
|
|
|
unet?: components["schemas"]["UNetField"];
|
|
|
|
/**
|
|
|
|
* VAE
|
|
|
|
* @description VAE model to load
|
|
|
|
*/
|
|
|
|
vae?: components["schemas"]["VaeField"];
|
|
|
|
/**
|
|
|
|
* Seamless Y
|
|
|
|
* @description Specify whether Y axis is seamless
|
|
|
|
* @default true
|
|
|
|
*/
|
|
|
|
seamless_y?: boolean;
|
|
|
|
/**
|
|
|
|
* Seamless X
|
|
|
|
* @description Specify whether X axis is seamless
|
|
|
|
* @default true
|
|
|
|
*/
|
|
|
|
seamless_x?: boolean;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default seamless
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "seamless";
|
2023-08-29 00:20:55 +00:00
|
|
|
};
|
|
|
|
/**
|
|
|
|
* SeamlessModeOutput
|
|
|
|
* @description Modified Seamless Model output
|
|
|
|
*/
|
|
|
|
SeamlessModeOutput: {
|
|
|
|
/**
|
|
|
|
* UNet
|
|
|
|
* @description UNet (scheduler, LoRAs)
|
|
|
|
*/
|
|
|
|
unet?: components["schemas"]["UNetField"];
|
|
|
|
/**
|
|
|
|
* VAE
|
|
|
|
* @description VAE
|
|
|
|
*/
|
|
|
|
vae?: components["schemas"]["VaeField"];
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default seamless_output
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "seamless_output";
|
2023-08-29 00:20:55 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Segment Anything Processor
|
2023-07-03 14:09:18 +00:00
|
|
|
* @description Applies segment anything processing to image
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-03 14:09:18 +00:00
|
|
|
SegmentAnythingProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-03 14:09:18 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-03 14:09:18 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-07-03 14:09:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default segment_anything_processor
|
2023-07-03 14:09:18 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "segment_anything_processor";
|
2023-07-03 14:09:18 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Show Image
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Displays a provided image using the OS image viewer, and passes it forward in the pipeline.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
ShowImageInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to show
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default show_image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "show_image";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/** StableDiffusion1ModelCheckpointConfig */
|
|
|
|
StableDiffusion1ModelCheckpointConfig: {
|
2023-07-12 15:15:09 +00:00
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "main";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Format
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: "checkpoint";
|
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Vae */
|
|
|
|
vae?: string;
|
|
|
|
/** Config */
|
2023-07-03 14:09:18 +00:00
|
|
|
config: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
variant: components["schemas"]["ModelVariantType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/** StableDiffusion1ModelDiffusersConfig */
|
|
|
|
StableDiffusion1ModelDiffusersConfig: {
|
2023-07-12 15:15:09 +00:00
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "main";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Format
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: "diffusers";
|
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Vae */
|
|
|
|
vae?: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
variant: components["schemas"]["ModelVariantType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/** StableDiffusion2ModelCheckpointConfig */
|
|
|
|
StableDiffusion2ModelCheckpointConfig: {
|
2023-07-12 15:15:09 +00:00
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "main";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Format
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: "checkpoint";
|
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Vae */
|
|
|
|
vae?: string;
|
|
|
|
/** Config */
|
2023-07-03 14:09:18 +00:00
|
|
|
config: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
variant: components["schemas"]["ModelVariantType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/** StableDiffusion2ModelDiffusersConfig */
|
|
|
|
StableDiffusion2ModelDiffusersConfig: {
|
2023-07-12 15:15:09 +00:00
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "main";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Format
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: "diffusers";
|
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Vae */
|
|
|
|
vae?: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
variant: components["schemas"]["ModelVariantType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-18 02:01:56 +00:00
|
|
|
/** StableDiffusionXLModelCheckpointConfig */
|
|
|
|
StableDiffusionXLModelCheckpointConfig: {
|
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-07-18 02:01:56 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "main";
|
2023-07-18 02:01:56 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Format
|
2023-07-18 02:01:56 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: "checkpoint";
|
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/** Vae */
|
|
|
|
vae?: string;
|
|
|
|
/** Config */
|
|
|
|
config: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
variant: components["schemas"]["ModelVariantType"];
|
2023-07-18 02:01:56 +00:00
|
|
|
};
|
|
|
|
/** StableDiffusionXLModelDiffusersConfig */
|
|
|
|
StableDiffusionXLModelDiffusersConfig: {
|
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-07-18 02:01:56 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "main";
|
2023-07-18 02:01:56 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Format
|
2023-07-18 02:01:56 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: "diffusers";
|
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-07-18 02:01:56 +00:00
|
|
|
/** Vae */
|
|
|
|
vae?: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
variant: components["schemas"]["ModelVariantType"];
|
2023-07-18 02:01:56 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Step Param Easing
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Experimental per-step parameter easing for denoising steps
|
|
|
|
*/
|
|
|
|
StepParamEasingInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Easing
|
|
|
|
* @description The easing function to use
|
|
|
|
* @default Linear
|
2023-08-16 01:59:19 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
easing?: "Linear" | "QuadIn" | "QuadOut" | "QuadInOut" | "CubicIn" | "CubicOut" | "CubicInOut" | "QuarticIn" | "QuarticOut" | "QuarticInOut" | "QuinticIn" | "QuinticOut" | "QuinticInOut" | "SineIn" | "SineOut" | "SineInOut" | "CircularIn" | "CircularOut" | "CircularInOut" | "ExponentialIn" | "ExponentialOut" | "ExponentialInOut" | "ElasticIn" | "ElasticOut" | "ElasticInOut" | "BackIn" | "BackOut" | "BackInOut" | "BounceIn" | "BounceOut" | "BounceInOut";
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Num Steps
|
|
|
|
* @description number of denoising steps
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 20
|
|
|
|
*/
|
|
|
|
num_steps?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Start Value
|
|
|
|
* @description easing starting value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
start_value?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* End Value
|
|
|
|
* @description easing ending value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
end_value?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Start Step Percent
|
|
|
|
* @description fraction of steps at which to start easing
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
start_step_percent?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* End Step Percent
|
|
|
|
* @description fraction of steps after which to end easing
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
end_step_percent?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Pre Start Value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description value before easing start
|
|
|
|
*/
|
|
|
|
pre_start_value?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Post End Value
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description value after easing end
|
|
|
|
*/
|
|
|
|
post_end_value?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Mirror
|
|
|
|
* @description include mirror of easing function
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
mirror?: boolean;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Show Easing Plot
|
|
|
|
* @description show easing plot
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
show_easing_plot?: boolean;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default step_param_easing
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "step_param_easing";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* String Collection Primitive
|
2023-08-15 12:18:37 +00:00
|
|
|
* @description A collection of string primitive values
|
|
|
|
*/
|
|
|
|
StringCollectionInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-15 12:18:37 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-15 12:18:37 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The collection of string values
|
|
|
|
*/
|
|
|
|
collection?: string[];
|
2023-08-15 12:18:37 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default string_collection
|
2023-08-15 12:18:37 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "string_collection";
|
2023-08-15 12:18:37 +00:00
|
|
|
};
|
2023-08-14 03:23:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* StringCollectionOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a collection of strings
|
2023-08-14 03:23:09 +00:00
|
|
|
*/
|
|
|
|
StringCollectionOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Collection
|
|
|
|
* @description The output strings
|
|
|
|
*/
|
|
|
|
collection: string[];
|
2023-08-14 03:23:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default string_collection_output
|
2023-08-14 03:23:09 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "string_collection_output";
|
2023-08-14 03:23:09 +00:00
|
|
|
};
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* String Primitive
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description A string primitive value
|
|
|
|
*/
|
|
|
|
StringInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-08-14 09:41:29 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-08-14 09:41:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Value
|
|
|
|
* @description The string value
|
2023-08-14 09:41:29 +00:00
|
|
|
* @default
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
value?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default string
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "string";
|
2023-08-14 09:41:29 +00:00
|
|
|
};
|
2023-07-19 01:17:15 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* StringOutput
|
2023-08-14 09:41:29 +00:00
|
|
|
* @description Base class for nodes that output a single string
|
2023-07-19 01:17:15 +00:00
|
|
|
*/
|
|
|
|
StringOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Value
|
|
|
|
* @description The output string
|
|
|
|
*/
|
|
|
|
value: string;
|
2023-07-19 01:17:15 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default string_output
|
2023-07-19 01:17:15 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "string_output";
|
2023-07-19 01:17:15 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* SubModelType
|
|
|
|
* @description An enumeration.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
SubModelType: "unet" | "text_encoder" | "text_encoder_2" | "tokenizer" | "tokenizer_2" | "vae" | "vae_decoder" | "vae_encoder" | "scheduler" | "safety_checker";
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Subtract Integers
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Subtracts two numbers
|
|
|
|
*/
|
|
|
|
SubtractInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* A
|
|
|
|
* @description The first number
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
a?: number;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* B
|
|
|
|
* @description The second number
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default 0
|
|
|
|
*/
|
|
|
|
b?: number;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Type
|
|
|
|
* @default sub
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
type: "sub";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/** TextualInversionModelConfig */
|
|
|
|
TextualInversionModelConfig: {
|
2023-07-12 15:15:09 +00:00
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "embedding";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
|
|
|
/** Model Format */
|
|
|
|
model_format: null;
|
2023-08-16 01:59:19 +00:00
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-03 14:09:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Tile Resample Processor
|
2023-08-14 03:23:09 +00:00
|
|
|
* @description Tile resampler processor
|
2023-07-03 14:09:18 +00:00
|
|
|
*/
|
|
|
|
TileResamplerProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-07-03 14:09:18 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-07-03 14:09:18 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-07-03 14:09:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default tile_image_processor
|
2023-07-03 14:09:18 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "tile_image_processor";
|
2023-07-03 14:09:18 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Down Sampling Rate
|
|
|
|
* @description Down sampling rate
|
2023-07-03 14:09:18 +00:00
|
|
|
* @default 1
|
|
|
|
*/
|
|
|
|
down_sampling_rate?: number;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** UNetField */
|
|
|
|
UNetField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Unet
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Info to load unet submodel
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
unet: components["schemas"]["ModelInfo"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Scheduler
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Info to load scheduler submodel
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
scheduler: components["schemas"]["ModelInfo"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Loras
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Loras to apply on model loading
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
loras: components["schemas"]["LoraInfo"][];
|
2023-08-29 00:20:55 +00:00
|
|
|
/**
|
|
|
|
* Seamless Axes
|
|
|
|
* @description Axes("x" and "y") to which apply seamless
|
|
|
|
*/
|
2023-09-04 05:25:58 +00:00
|
|
|
seamless_axes?: string[];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-07-26 08:20:20 +00:00
|
|
|
/** Upscaler */
|
|
|
|
Upscaler: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Upscaling Method
|
2023-07-26 08:20:20 +00:00
|
|
|
* @description Name of upscaling method
|
|
|
|
*/
|
|
|
|
upscaling_method: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Upscaling Models
|
2023-07-26 08:20:20 +00:00
|
|
|
* @description List of upscaling models for this method
|
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
upscaling_models: string[];
|
2023-07-26 08:20:20 +00:00
|
|
|
};
|
2023-06-30 22:15:04 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* VAEModelField
|
2023-06-30 22:15:04 +00:00
|
|
|
* @description Vae model field
|
|
|
|
*/
|
|
|
|
VAEModelField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Name
|
2023-06-30 22:15:04 +00:00
|
|
|
* @description Name of the model
|
|
|
|
*/
|
|
|
|
model_name: string;
|
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-30 22:15:04 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** VaeField */
|
|
|
|
VaeField: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Vae
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Info to load vae submodel
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
vae: components["schemas"]["ModelInfo"];
|
2023-08-29 00:20:55 +00:00
|
|
|
/**
|
|
|
|
* Seamless Axes
|
|
|
|
* @description Axes("x" and "y") to which apply seamless
|
|
|
|
*/
|
2023-09-04 05:25:58 +00:00
|
|
|
seamless_axes?: string[];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-06-30 22:15:04 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* VAE
|
2023-06-30 22:15:04 +00:00
|
|
|
* @description Loads a VAE model, outputting a VaeLoaderOutput
|
|
|
|
*/
|
|
|
|
VaeLoaderInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-30 22:15:04 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-30 22:15:04 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* VAE
|
|
|
|
* @description VAE model to load
|
|
|
|
*/
|
|
|
|
vae_model: components["schemas"]["VAEModelField"];
|
2023-06-30 22:15:04 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default vae_loader
|
2023-06-30 22:15:04 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "vae_loader";
|
2023-06-30 22:15:04 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* VaeLoaderOutput
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description VAE output
|
2023-06-30 22:15:04 +00:00
|
|
|
*/
|
|
|
|
VaeLoaderOutput: {
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* VAE
|
|
|
|
* @description VAE
|
|
|
|
*/
|
|
|
|
vae: components["schemas"]["VaeField"];
|
2023-06-30 22:15:04 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default vae_loader_output
|
2023-06-30 22:15:04 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-18 10:19:36 +00:00
|
|
|
type: "vae_loader_output";
|
2023-06-30 22:15:04 +00:00
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** VaeModelConfig */
|
|
|
|
VaeModelConfig: {
|
2023-07-12 15:15:09 +00:00
|
|
|
/** Model Name */
|
|
|
|
model_name: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Model Type
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: "vae";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** Path */
|
|
|
|
path: string;
|
|
|
|
/** Description */
|
|
|
|
description?: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
model_format: components["schemas"]["VaeModelFormat"];
|
|
|
|
error?: components["schemas"]["ModelError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* VaeModelFormat
|
|
|
|
* @description An enumeration.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
VaeModelFormat: "checkpoint" | "diffusers";
|
2023-06-23 09:14:13 +00:00
|
|
|
/** ValidationError */
|
|
|
|
ValidationError: {
|
|
|
|
/** Location */
|
|
|
|
loc: (string | number)[];
|
|
|
|
/** Message */
|
|
|
|
msg: string;
|
|
|
|
/** Error Type */
|
|
|
|
type: string;
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Zoe (Depth) Processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Applies Zoe depth processing to image
|
|
|
|
*/
|
|
|
|
ZoeDepthImageProcessorInvocation: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Id
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The id of this instance of an invocation. Must be unique among all instances of invocations.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Is Intermediate
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description Whether or not this is an intermediate invocation.
|
2023-06-23 09:14:13 +00:00
|
|
|
* @default false
|
|
|
|
*/
|
|
|
|
is_intermediate?: boolean;
|
2023-08-24 11:42:32 +00:00
|
|
|
/**
|
|
|
|
* Workflow
|
|
|
|
* @description The workflow to save with the image
|
|
|
|
*/
|
|
|
|
workflow?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Image
|
|
|
|
* @description The image to process
|
|
|
|
*/
|
|
|
|
image?: components["schemas"]["ImageField"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Type
|
|
|
|
* @default zoe_depth_image_processor
|
2023-06-23 09:14:13 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-16 01:59:19 +00:00
|
|
|
type: "zoe_depth_image_processor";
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UIConfigBase
|
2023-08-16 01:59:19 +00:00
|
|
|
* @description Provides additional node configuration to the UI.
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* This is used internally by the @invocation decorator logic. Do not use this directly.
|
2023-08-16 01:59:19 +00:00
|
|
|
*/
|
|
|
|
UIConfigBase: {
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Tags
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The node's tags
|
2023-08-16 01:59:19 +00:00
|
|
|
*/
|
2023-08-22 05:15:00 +00:00
|
|
|
tags?: string[];
|
2023-08-16 01:59:19 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Title
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* @description The node's display name
|
2023-08-16 01:59:19 +00:00
|
|
|
*/
|
|
|
|
title?: string;
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* Category
|
|
|
|
* @description The node's category
|
|
|
|
*/
|
|
|
|
category?: string;
|
2023-08-16 01:59:19 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Input
|
2023-08-16 01:59:19 +00:00
|
|
|
* @description The type of input a field accepts.
|
|
|
|
* - `Input.Direct`: The field must have its value provided directly, when the invocation and field are instantiated.
|
|
|
|
* - `Input.Connection`: The field must have its value provided by a connection.
|
2023-08-22 05:15:00 +00:00
|
|
|
* - `Input.Any`: The field may have its value provided either directly or by a connection.
|
2023-08-16 01:59:19 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
Input: "connection" | "direct" | "any";
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UIType
|
2023-08-16 01:59:19 +00:00
|
|
|
* @description Type hints for the UI.
|
2023-08-22 05:15:00 +00:00
|
|
|
* If a field should be provided a data type that does not exactly match the python type of the field, use this to provide the type that should be used instead. See the node development docs for detail on adding a new field type, which involves client-side changes.
|
2023-08-16 01:59:19 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
feat: polymorphic fields
Initial support for polymorphic field types. Polymorphic types are a single of or list of a specific type. For example, `Union[str, list[str]]`.
Polymorphics do not yet have support for direct input in the UI (will come in the future). They will be forcibly set as Connection-only fields, in which case users will not be able to provide direct input to the field.
If a polymorphic should present as a singleton type - which would allow direct input - the node must provide an explicit type hint.
For example, `DenoiseLatents`' `CFG Scale` is polymorphic, but in the node editor, we want to present this as a number input. In the node definition, the field is given `ui_type=UIType.Float`, which tells the UI to treat this as a `float` field.
The connection validation logic will prevent connecting a collection to `CFG Scale` in this situation, because it is typed as `float`. The workaround is to disable validation from the settings to make this specific connection. A future improvement will resolve this.
This also introduces better support for collection field types. Like polymorphics, collection types are parsed automatically by the client and do not need any specific type hints.
Also like polymorphics, there is no support yet for direct input of collection types in the UI.
- Disabling validation in workflow editor now displays the visual hints for valid connections, but lets you connect to anything.
- Added `ui_order: int` to `InputField` and `OutputField`. The UI will use this, if present, to order fields in a node UI. See usage in `DenoiseLatents` for an example.
- Updated the field colors - duplicate colors have just been lightened a bit. It's not perfect but it was a quick fix.
- Field handles for collections are the same color as their single counterparts, but have a dark dot in the center of them.
- Field handles for polymorphics are a rounded square with dot in the middle.
- Removed all fields that just render `null` from `InputFieldRenderer`, replaced with a single fallback
- Removed logic in `zValidatedWorkflow`, which checked for existence of node templates for each node in a workflow. This logic introduced a circular dependency, due to importing the global redux `store` in order to get the node templates within a zod schema. It's actually fine to just leave this out entirely; The case of a missing node template is handled by the UI. Fixing it otherwise would introduce a substantial headache.
- Fixed the `ControlNetInvocation.control_model` field default, which was a string when it shouldn't have one.
2023-09-01 09:40:27 +00:00
|
|
|
UIType: "boolean" | "ColorField" | "ConditioningField" | "ControlField" | "float" | "ImageField" | "integer" | "LatentsField" | "string" | "BooleanCollection" | "ColorCollection" | "ConditioningCollection" | "ControlCollection" | "FloatCollection" | "ImageCollection" | "IntegerCollection" | "LatentsCollection" | "StringCollection" | "BooleanPolymorphic" | "ColorPolymorphic" | "ConditioningPolymorphic" | "ControlPolymorphic" | "FloatPolymorphic" | "ImagePolymorphic" | "IntegerPolymorphic" | "LatentsPolymorphic" | "StringPolymorphic" | "MainModelField" | "SDXLMainModelField" | "SDXLRefinerModelField" | "ONNXModelField" | "VaeModelField" | "LoRAModelField" | "ControlNetModelField" | "UNetField" | "VaeField" | "ClipField" | "Collection" | "CollectionItem" | "enum" | "Scheduler" | "WorkflowField" | "IsIntermediate" | "MetadataField";
|
2023-08-16 01:59:19 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* UIComponent
|
|
|
|
* @description The type of UI component to use for a field, used to override the default components, which are inferred from the field type.
|
2023-08-16 01:59:19 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
UIComponent: "none" | "textarea" | "slider";
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* _InputField
|
2023-08-16 01:59:19 +00:00
|
|
|
* @description *DO NOT USE*
|
|
|
|
* This helper class is used to tell the client about our custom field attributes via OpenAPI
|
|
|
|
* schema generation, and Typescript type generation from that schema. It serves no functional
|
|
|
|
* purpose in the backend.
|
|
|
|
*/
|
|
|
|
_InputField: {
|
|
|
|
input: components["schemas"]["Input"];
|
|
|
|
/** Ui Hidden */
|
|
|
|
ui_hidden: boolean;
|
|
|
|
ui_type?: components["schemas"]["UIType"];
|
|
|
|
ui_component?: components["schemas"]["UIComponent"];
|
2023-08-22 06:23:20 +00:00
|
|
|
/** Ui Order */
|
|
|
|
ui_order?: number;
|
feat: polymorphic fields
Initial support for polymorphic field types. Polymorphic types are a single of or list of a specific type. For example, `Union[str, list[str]]`.
Polymorphics do not yet have support for direct input in the UI (will come in the future). They will be forcibly set as Connection-only fields, in which case users will not be able to provide direct input to the field.
If a polymorphic should present as a singleton type - which would allow direct input - the node must provide an explicit type hint.
For example, `DenoiseLatents`' `CFG Scale` is polymorphic, but in the node editor, we want to present this as a number input. In the node definition, the field is given `ui_type=UIType.Float`, which tells the UI to treat this as a `float` field.
The connection validation logic will prevent connecting a collection to `CFG Scale` in this situation, because it is typed as `float`. The workaround is to disable validation from the settings to make this specific connection. A future improvement will resolve this.
This also introduces better support for collection field types. Like polymorphics, collection types are parsed automatically by the client and do not need any specific type hints.
Also like polymorphics, there is no support yet for direct input of collection types in the UI.
- Disabling validation in workflow editor now displays the visual hints for valid connections, but lets you connect to anything.
- Added `ui_order: int` to `InputField` and `OutputField`. The UI will use this, if present, to order fields in a node UI. See usage in `DenoiseLatents` for an example.
- Updated the field colors - duplicate colors have just been lightened a bit. It's not perfect but it was a quick fix.
- Field handles for collections are the same color as their single counterparts, but have a dark dot in the center of them.
- Field handles for polymorphics are a rounded square with dot in the middle.
- Removed all fields that just render `null` from `InputFieldRenderer`, replaced with a single fallback
- Removed logic in `zValidatedWorkflow`, which checked for existence of node templates for each node in a workflow. This logic introduced a circular dependency, due to importing the global redux `store` in order to get the node templates within a zod schema. It's actually fine to just leave this out entirely; The case of a missing node template is handled by the UI. Fixing it otherwise would introduce a substantial headache.
- Fixed the `ControlNetInvocation.control_model` field default, which was a string when it shouldn't have one.
2023-09-01 09:40:27 +00:00
|
|
|
/** Item Default */
|
|
|
|
item_default?: unknown;
|
2023-08-16 01:59:19 +00:00
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* _OutputField
|
2023-08-16 01:59:19 +00:00
|
|
|
* @description *DO NOT USE*
|
|
|
|
* This helper class is used to tell the client about our custom field attributes via OpenAPI
|
|
|
|
* schema generation, and Typescript type generation from that schema. It serves no functional
|
|
|
|
* purpose in the backend.
|
|
|
|
*/
|
|
|
|
_OutputField: {
|
|
|
|
/** Ui Hidden */
|
|
|
|
ui_hidden: boolean;
|
|
|
|
ui_type?: components["schemas"]["UIType"];
|
2023-08-22 06:23:20 +00:00
|
|
|
/** Ui Order */
|
|
|
|
ui_order?: number;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
2023-09-04 05:25:58 +00:00
|
|
|
/**
|
|
|
|
* StableDiffusionOnnxModelFormat
|
|
|
|
* @description An enumeration.
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
StableDiffusionOnnxModelFormat: "olive" | "onnx";
|
2023-08-11 18:15:59 +00:00
|
|
|
/**
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
* StableDiffusion1ModelFormat
|
2023-08-22 05:15:00 +00:00
|
|
|
* @description An enumeration.
|
2023-08-14 03:23:09 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
StableDiffusion1ModelFormat: "checkpoint" | "diffusers";
|
2023-08-14 03:23:09 +00:00
|
|
|
/**
|
2023-08-29 00:20:55 +00:00
|
|
|
* ControlNetModelFormat
|
2023-08-22 05:15:00 +00:00
|
|
|
* @description An enumeration.
|
2023-08-14 03:23:09 +00:00
|
|
|
* @enum {string}
|
|
|
|
*/
|
2023-08-29 00:20:55 +00:00
|
|
|
ControlNetModelFormat: "checkpoint" | "diffusers";
|
|
|
|
/**
|
|
|
|
* StableDiffusionXLModelFormat
|
|
|
|
* @description An enumeration.
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
StableDiffusionXLModelFormat: "checkpoint" | "diffusers";
|
feat(nodes): move all invocation metadata (type, title, tags, category) to decorator
All invocation metadata (type, title, tags and category) are now defined in decorators.
The decorators add the `type: Literal["invocation_type"]: "invocation_type"` field to the invocation.
Category is a new invocation metadata, but it is not used by the frontend just yet.
- `@invocation()` decorator for invocations
```py
@invocation(
"sdxl_compel_prompt",
title="SDXL Prompt",
tags=["sdxl", "compel", "prompt"],
category="conditioning",
)
class SDXLCompelPromptInvocation(BaseInvocation, SDXLPromptInvocationBase):
...
```
- `@invocation_output()` decorator for invocation outputs
```py
@invocation_output("clip_skip_output")
class ClipSkipInvocationOutput(BaseInvocationOutput):
...
```
- update invocation docs
- add category to decorator
- regen frontend types
2023-08-30 08:35:12 +00:00
|
|
|
/**
|
|
|
|
* StableDiffusion2ModelFormat
|
|
|
|
* @description An enumeration.
|
|
|
|
* @enum {string}
|
|
|
|
*/
|
|
|
|
StableDiffusion2ModelFormat: "checkpoint" | "diffusers";
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
responses: never;
|
|
|
|
parameters: never;
|
|
|
|
requestBodies: never;
|
|
|
|
headers: never;
|
|
|
|
pathItems: never;
|
|
|
|
};
|
|
|
|
|
2023-08-22 05:15:00 +00:00
|
|
|
export type $defs = Record<string, never>;
|
|
|
|
|
2023-06-23 09:14:13 +00:00
|
|
|
export type external = Record<string, never>;
|
|
|
|
|
|
|
|
export type operations = {
|
2023-08-16 01:59:19 +00:00
|
|
|
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List Sessions
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a list of sessions, optionally searching
|
|
|
|
*/
|
|
|
|
list_sessions: {
|
|
|
|
parameters: {
|
|
|
|
query?: {
|
|
|
|
/** @description The page of results to get */
|
|
|
|
page?: number;
|
|
|
|
/** @description The number of results per page */
|
|
|
|
per_page?: number;
|
|
|
|
/** @description The query string to search for */
|
|
|
|
query?: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["PaginatedResults_GraphExecutionState_"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Create Session
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Creates a new session, optionally initializing it with an invocation graph
|
|
|
|
*/
|
|
|
|
create_session: {
|
|
|
|
requestBody?: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Graph"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["GraphExecutionState"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Invalid json */
|
2023-08-22 05:15:00 +00:00
|
|
|
400: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Session
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a session
|
|
|
|
*/
|
|
|
|
get_session: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The id of the session to get */
|
|
|
|
session_id: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["GraphExecutionState"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Session not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Node
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Adds a node to the graph
|
|
|
|
*/
|
|
|
|
add_node: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The id of the session */
|
|
|
|
session_id: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-09-02 01:36:07 +00:00
|
|
|
"application/json": components["schemas"]["BooleanInvocation"] | components["schemas"]["BooleanCollectionInvocation"] | components["schemas"]["IntegerInvocation"] | components["schemas"]["IntegerCollectionInvocation"] | components["schemas"]["FloatInvocation"] | components["schemas"]["FloatCollectionInvocation"] | components["schemas"]["StringInvocation"] | components["schemas"]["StringCollectionInvocation"] | components["schemas"]["ImageInvocation"] | components["schemas"]["ImageCollectionInvocation"] | components["schemas"]["LatentsInvocation"] | components["schemas"]["LatentsCollectionInvocation"] | components["schemas"]["ColorInvocation"] | components["schemas"]["ConditioningInvocation"] | components["schemas"]["ConditioningCollectionInvocation"] | components["schemas"]["ControlNetInvocation"] | components["schemas"]["ImageProcessorInvocation"] | components["schemas"]["MainModelLoaderInvocation"] | components["schemas"]["LoraLoaderInvocation"] | components["schemas"]["SDXLLoraLoaderInvocation"] | components["schemas"]["VaeLoaderInvocation"] | components["schemas"]["SeamlessModeInvocation"] | components["schemas"]["MetadataAccumulatorInvocation"] | components["schemas"]["SDXLModelLoaderInvocation"] | components["schemas"]["SDXLRefinerModelLoaderInvocation"] | components["schemas"]["CompelInvocation"] | components["schemas"]["SDXLCompelPromptInvocation"] | components["schemas"]["SDXLRefinerCompelPromptInvocation"] | components["schemas"]["ClipSkipInvocation"] | components["schemas"]["SchedulerInvocation"] | components["schemas"]["CreateDenoiseMaskInvocation"] | components["schemas"]["DenoiseLatentsInvocation"] | components["schemas"]["LatentsToImageInvocation"] | components["schemas"]["ResizeLatentsInvocation"] | components["schemas"]["ScaleLatentsInvocation"] | components["schemas"]["ImageToLatentsInvocation"] | components["schemas"]["BlendLatentsInvocation"] | components["schemas"]["ONNXPromptInvocation"] | components["schemas"]["ONNXTextToLatentsInvocation"] | components["schemas"]["ONNXLatentsToImageInvocation"] | components["schemas"]["OnnxModelLoaderInvocation"] | components["schemas"]["ShowImageInvocation"] | components["schemas"]["BlankImageInvocation"] | components["schemas"]["ImageCropInvocation"] | components["schemas"]["ImagePasteInvocation"] | components["schemas"]["MaskFromAlphaInvocation"] | components["schemas"]["ImageMultiplyInvocation"] | components["schemas"]["ImageChannelInvocation"] | components["schemas"]["ImageConvertInvocation"] | components["schemas"]["ImageBlurInvocation"] | components["schemas"]["ImageResizeInvocation"] | components["schemas"]["ImageScaleInvocation"] | components["schemas"]["ImageLerpInvocation"] | components["schemas"]["ImageInverseLerpInvocation"] | components["schemas"]["ImageNSFWBlurInvocation"] | components["schemas"]["ImageWatermarkInvocation"] | components["schemas"]["MaskEdgeInvocation"] | components["schemas"]["MaskCombineInvocation"] | components["schemas"]["ColorCorrectInvocation"] | components["schemas"]["ImageHueAdjustmentInvocation"] | components["schemas"]["ImageLuminosityAdjustmentInvocation"] | components["schemas"]["ImageSaturationAdjustmentInvocation"] | components["schemas"]["DynamicPromptInvocation"] | components["schemas"]["PromptsFromFileInvocation"] | components["schemas"]["CvInpaintInvocation"] | components["schemas"]["FloatLinearRangeInvocation"] | components["schemas"]["StepParamEasingInvocation"] | components["schemas"]["AddInvocation"] | components["schemas"]["SubtractInvocation"] | components["schemas"]["MultiplyInvocation"] | components["schemas"]["DivideInvocation"] | components["schemas"]["RandomIntInvocation"] | components["schemas"]["NoiseInvocation"] | components["schemas"]["RangeInvocation"] | components["schemas"]["RangeOfSizeInvocation"] | components["schemas"]["RandomRangeInvocation"] | components["schemas"]["ESRGANInvocation"] | components["schemas"]["InfillColorInvocation"] | components["schemas"]["InfillTileInvocation"] | components["schemas"]["InfillPatchMatchInvocation"] | components["schemas"]["LaMaInfillInvocation"] | co
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": string;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Invalid node or link */
|
2023-08-22 05:15:00 +00:00
|
|
|
400: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Session not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Update Node
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Updates a node in the graph and removes all linked edges
|
|
|
|
*/
|
|
|
|
update_node: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The id of the session */
|
|
|
|
session_id: string;
|
|
|
|
/** @description The path to the node in the graph */
|
|
|
|
node_path: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-09-02 01:36:07 +00:00
|
|
|
"application/json": components["schemas"]["BooleanInvocation"] | components["schemas"]["BooleanCollectionInvocation"] | components["schemas"]["IntegerInvocation"] | components["schemas"]["IntegerCollectionInvocation"] | components["schemas"]["FloatInvocation"] | components["schemas"]["FloatCollectionInvocation"] | components["schemas"]["StringInvocation"] | components["schemas"]["StringCollectionInvocation"] | components["schemas"]["ImageInvocation"] | components["schemas"]["ImageCollectionInvocation"] | components["schemas"]["LatentsInvocation"] | components["schemas"]["LatentsCollectionInvocation"] | components["schemas"]["ColorInvocation"] | components["schemas"]["ConditioningInvocation"] | components["schemas"]["ConditioningCollectionInvocation"] | components["schemas"]["ControlNetInvocation"] | components["schemas"]["ImageProcessorInvocation"] | components["schemas"]["MainModelLoaderInvocation"] | components["schemas"]["LoraLoaderInvocation"] | components["schemas"]["SDXLLoraLoaderInvocation"] | components["schemas"]["VaeLoaderInvocation"] | components["schemas"]["SeamlessModeInvocation"] | components["schemas"]["MetadataAccumulatorInvocation"] | components["schemas"]["SDXLModelLoaderInvocation"] | components["schemas"]["SDXLRefinerModelLoaderInvocation"] | components["schemas"]["CompelInvocation"] | components["schemas"]["SDXLCompelPromptInvocation"] | components["schemas"]["SDXLRefinerCompelPromptInvocation"] | components["schemas"]["ClipSkipInvocation"] | components["schemas"]["SchedulerInvocation"] | components["schemas"]["CreateDenoiseMaskInvocation"] | components["schemas"]["DenoiseLatentsInvocation"] | components["schemas"]["LatentsToImageInvocation"] | components["schemas"]["ResizeLatentsInvocation"] | components["schemas"]["ScaleLatentsInvocation"] | components["schemas"]["ImageToLatentsInvocation"] | components["schemas"]["BlendLatentsInvocation"] | components["schemas"]["ONNXPromptInvocation"] | components["schemas"]["ONNXTextToLatentsInvocation"] | components["schemas"]["ONNXLatentsToImageInvocation"] | components["schemas"]["OnnxModelLoaderInvocation"] | components["schemas"]["ShowImageInvocation"] | components["schemas"]["BlankImageInvocation"] | components["schemas"]["ImageCropInvocation"] | components["schemas"]["ImagePasteInvocation"] | components["schemas"]["MaskFromAlphaInvocation"] | components["schemas"]["ImageMultiplyInvocation"] | components["schemas"]["ImageChannelInvocation"] | components["schemas"]["ImageConvertInvocation"] | components["schemas"]["ImageBlurInvocation"] | components["schemas"]["ImageResizeInvocation"] | components["schemas"]["ImageScaleInvocation"] | components["schemas"]["ImageLerpInvocation"] | components["schemas"]["ImageInverseLerpInvocation"] | components["schemas"]["ImageNSFWBlurInvocation"] | components["schemas"]["ImageWatermarkInvocation"] | components["schemas"]["MaskEdgeInvocation"] | components["schemas"]["MaskCombineInvocation"] | components["schemas"]["ColorCorrectInvocation"] | components["schemas"]["ImageHueAdjustmentInvocation"] | components["schemas"]["ImageLuminosityAdjustmentInvocation"] | components["schemas"]["ImageSaturationAdjustmentInvocation"] | components["schemas"]["DynamicPromptInvocation"] | components["schemas"]["PromptsFromFileInvocation"] | components["schemas"]["CvInpaintInvocation"] | components["schemas"]["FloatLinearRangeInvocation"] | components["schemas"]["StepParamEasingInvocation"] | components["schemas"]["AddInvocation"] | components["schemas"]["SubtractInvocation"] | components["schemas"]["MultiplyInvocation"] | components["schemas"]["DivideInvocation"] | components["schemas"]["RandomIntInvocation"] | components["schemas"]["NoiseInvocation"] | components["schemas"]["RangeInvocation"] | components["schemas"]["RangeOfSizeInvocation"] | components["schemas"]["RandomRangeInvocation"] | components["schemas"]["ESRGANInvocation"] | components["schemas"]["InfillColorInvocation"] | components["schemas"]["InfillTileInvocation"] | components["schemas"]["InfillPatchMatchInvocation"] | components["schemas"]["LaMaInfillInvocation"] | co
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["GraphExecutionState"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Invalid node or link */
|
2023-08-22 05:15:00 +00:00
|
|
|
400: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Session not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Delete Node
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Deletes a node in the graph and removes all linked edges
|
|
|
|
*/
|
|
|
|
delete_node: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The id of the session */
|
|
|
|
session_id: string;
|
|
|
|
/** @description The path to the node to delete */
|
|
|
|
node_path: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["GraphExecutionState"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Invalid node or link */
|
2023-08-22 05:15:00 +00:00
|
|
|
400: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Session not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Edge
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Adds an edge to the graph
|
|
|
|
*/
|
|
|
|
add_edge: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The id of the session */
|
|
|
|
session_id: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Edge"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["GraphExecutionState"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Invalid node or link */
|
2023-08-22 05:15:00 +00:00
|
|
|
400: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Session not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Delete Edge
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Deletes an edge from the graph
|
|
|
|
*/
|
|
|
|
delete_edge: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The id of the session */
|
|
|
|
session_id: string;
|
|
|
|
/** @description The id of the node the edge is coming from */
|
|
|
|
from_node_id: string;
|
|
|
|
/** @description The field of the node the edge is coming from */
|
|
|
|
from_field: string;
|
|
|
|
/** @description The id of the node the edge is going to */
|
|
|
|
to_node_id: string;
|
|
|
|
/** @description The field of the node the edge is going to */
|
|
|
|
to_field: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["GraphExecutionState"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Invalid node or link */
|
2023-08-22 05:15:00 +00:00
|
|
|
400: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Session not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Invoke Session
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Invokes a session
|
|
|
|
*/
|
|
|
|
invoke_session: {
|
|
|
|
parameters: {
|
|
|
|
query?: {
|
|
|
|
/** @description Whether or not to invoke all remaining invocations */
|
|
|
|
all?: boolean;
|
|
|
|
};
|
|
|
|
path: {
|
|
|
|
/** @description The id of the session to invoke */
|
|
|
|
session_id: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": unknown;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description The invocation is queued */
|
2023-08-22 05:15:00 +00:00
|
|
|
202: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description The session has no invocations ready to invoke */
|
2023-08-22 05:15:00 +00:00
|
|
|
400: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Session not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Cancel Session Invoke
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Invokes a session
|
|
|
|
*/
|
|
|
|
cancel_session_invoke: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The id of the session to cancel */
|
|
|
|
session_id: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": unknown;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description The invocation is canceled */
|
2023-08-22 05:15:00 +00:00
|
|
|
202: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List Models
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a list of models
|
|
|
|
*/
|
|
|
|
list_models: {
|
|
|
|
parameters: {
|
|
|
|
query?: {
|
2023-07-18 02:01:56 +00:00
|
|
|
/** @description Base models to include */
|
2023-08-22 05:15:00 +00:00
|
|
|
base_models?: components["schemas"]["BaseModelType"][];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description The type of model to get */
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type?: components["schemas"]["ModelType"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ModelsList"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Delete Model
|
2023-07-07 06:08:30 +00:00
|
|
|
* @description Delete Model
|
|
|
|
*/
|
|
|
|
del_model: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description The type of model */
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: components["schemas"]["ModelType"];
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description model name */
|
|
|
|
model_name: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description Model deleted successfully */
|
2023-08-22 05:15:00 +00:00
|
|
|
204: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description Model not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-04 05:04:01 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-04 05:04:01 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Update Model
|
2023-07-17 01:50:35 +00:00
|
|
|
* @description Update model contents with a new config. If the model name or base fields are changed, then the model is renamed.
|
2023-07-04 05:04:01 +00:00
|
|
|
*/
|
2023-07-07 06:08:30 +00:00
|
|
|
update_model: {
|
2023-07-04 05:04:01 +00:00
|
|
|
parameters: {
|
2023-07-07 06:08:30 +00:00
|
|
|
path: {
|
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description The type of model */
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: components["schemas"]["ModelType"];
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description model name */
|
|
|
|
model_name: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ONNXStableDiffusion1ModelConfig"] | components["schemas"]["StableDiffusion1ModelCheckpointConfig"] | components["schemas"]["StableDiffusion1ModelDiffusersConfig"] | components["schemas"]["VaeModelConfig"] | components["schemas"]["LoRAModelConfig"] | components["schemas"]["ControlNetModelCheckpointConfig"] | components["schemas"]["ControlNetModelDiffusersConfig"] | components["schemas"]["TextualInversionModelConfig"] | components["schemas"]["ONNXStableDiffusion2ModelConfig"] | components["schemas"]["StableDiffusion2ModelCheckpointConfig"] | components["schemas"]["StableDiffusion2ModelDiffusersConfig"] | components["schemas"]["StableDiffusionXLModelCheckpointConfig"] | components["schemas"]["StableDiffusionXLModelDiffusersConfig"];
|
2023-07-04 05:04:01 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description The model was updated successfully */
|
|
|
|
200: {
|
2023-07-04 05:04:01 +00:00
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ONNXStableDiffusion1ModelConfig"] | components["schemas"]["StableDiffusion1ModelCheckpointConfig"] | components["schemas"]["StableDiffusion1ModelDiffusersConfig"] | components["schemas"]["VaeModelConfig"] | components["schemas"]["LoRAModelConfig"] | components["schemas"]["ControlNetModelCheckpointConfig"] | components["schemas"]["ControlNetModelDiffusersConfig"] | components["schemas"]["TextualInversionModelConfig"] | components["schemas"]["ONNXStableDiffusion2ModelConfig"] | components["schemas"]["StableDiffusion2ModelCheckpointConfig"] | components["schemas"]["StableDiffusion2ModelDiffusersConfig"] | components["schemas"]["StableDiffusionXLModelCheckpointConfig"] | components["schemas"]["StableDiffusionXLModelDiffusersConfig"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description Bad request */
|
2023-08-22 05:15:00 +00:00
|
|
|
400: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-04 05:04:01 +00:00
|
|
|
/** @description The model could not be found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-17 01:50:35 +00:00
|
|
|
/** @description There is already a model corresponding to the new name */
|
2023-08-22 05:15:00 +00:00
|
|
|
409: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-15 15:06:57 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-15 15:06:57 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Import Model
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Add a model using its local path, repo_id, or remote URL. Model characteristics will be probed and configured automatically
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-07 06:08:30 +00:00
|
|
|
import_model: {
|
2023-06-23 09:14:13 +00:00
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Body_import_model"];
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description The model imported successfully */
|
|
|
|
201: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ONNXStableDiffusion1ModelConfig"] | components["schemas"]["StableDiffusion1ModelCheckpointConfig"] | components["schemas"]["StableDiffusion1ModelDiffusersConfig"] | components["schemas"]["VaeModelConfig"] | components["schemas"]["LoRAModelConfig"] | components["schemas"]["ControlNetModelCheckpointConfig"] | components["schemas"]["ControlNetModelDiffusersConfig"] | components["schemas"]["TextualInversionModelConfig"] | components["schemas"]["ONNXStableDiffusion2ModelConfig"] | components["schemas"]["StableDiffusion2ModelCheckpointConfig"] | components["schemas"]["StableDiffusion2ModelDiffusersConfig"] | components["schemas"]["StableDiffusionXLModelCheckpointConfig"] | components["schemas"]["StableDiffusionXLModelDiffusersConfig"];
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description The model could not be found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description There is already a model corresponding to this path or repo_id */
|
2023-08-22 05:15:00 +00:00
|
|
|
409: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-18 03:18:31 +00:00
|
|
|
/** @description Unrecognized file/folder format */
|
2023-08-22 05:15:00 +00:00
|
|
|
415: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description The model appeared to import successfully, but could not be found in the model manager */
|
2023-08-22 05:15:00 +00:00
|
|
|
424: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Model
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Add a model using the configuration information appropriate for its type. Only local models can be added by path
|
2023-07-07 06:08:30 +00:00
|
|
|
*/
|
2023-07-15 15:06:57 +00:00
|
|
|
add_model: {
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ONNXStableDiffusion1ModelConfig"] | components["schemas"]["StableDiffusion1ModelCheckpointConfig"] | components["schemas"]["StableDiffusion1ModelDiffusersConfig"] | components["schemas"]["VaeModelConfig"] | components["schemas"]["LoRAModelConfig"] | components["schemas"]["ControlNetModelCheckpointConfig"] | components["schemas"]["ControlNetModelDiffusersConfig"] | components["schemas"]["TextualInversionModelConfig"] | components["schemas"]["ONNXStableDiffusion2ModelConfig"] | components["schemas"]["StableDiffusion2ModelCheckpointConfig"] | components["schemas"]["StableDiffusion2ModelDiffusersConfig"] | components["schemas"]["StableDiffusionXLModelCheckpointConfig"] | components["schemas"]["StableDiffusionXLModelDiffusersConfig"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
2023-07-15 15:06:57 +00:00
|
|
|
/** @description The model added successfully */
|
|
|
|
201: {
|
2023-06-23 09:14:13 +00:00
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ONNXStableDiffusion1ModelConfig"] | components["schemas"]["StableDiffusion1ModelCheckpointConfig"] | components["schemas"]["StableDiffusion1ModelDiffusersConfig"] | components["schemas"]["VaeModelConfig"] | components["schemas"]["LoRAModelConfig"] | components["schemas"]["ControlNetModelCheckpointConfig"] | components["schemas"]["ControlNetModelDiffusersConfig"] | components["schemas"]["TextualInversionModelConfig"] | components["schemas"]["ONNXStableDiffusion2ModelConfig"] | components["schemas"]["StableDiffusion2ModelCheckpointConfig"] | components["schemas"]["StableDiffusion2ModelDiffusersConfig"] | components["schemas"]["StableDiffusionXLModelCheckpointConfig"] | components["schemas"]["StableDiffusionXLModelDiffusersConfig"];
|
2023-07-04 05:04:01 +00:00
|
|
|
};
|
|
|
|
};
|
2023-07-15 15:06:57 +00:00
|
|
|
/** @description The model could not be found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-15 15:06:57 +00:00
|
|
|
/** @description There is already a model corresponding to this path or repo_id */
|
2023-08-22 05:15:00 +00:00
|
|
|
409: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
2023-07-15 15:06:57 +00:00
|
|
|
/** @description The model appeared to add successfully, but could not be found in the model manager */
|
2023-08-22 05:15:00 +00:00
|
|
|
424: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Convert Model
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Convert a checkpoint model into a diffusers model, optionally saving to the indicated destination directory, or `models` if none.
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-07 06:08:30 +00:00
|
|
|
convert_model: {
|
2023-06-23 09:14:13 +00:00
|
|
|
parameters: {
|
2023-07-15 15:06:57 +00:00
|
|
|
query?: {
|
|
|
|
/** @description Save the converted model to the designated directory */
|
|
|
|
convert_dest_directory?: string;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
path: {
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description The type of model */
|
2023-08-16 01:59:19 +00:00
|
|
|
model_type: components["schemas"]["ModelType"];
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description model name */
|
2023-06-23 09:14:13 +00:00
|
|
|
model_name: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description Model converted successfully */
|
2023-06-23 09:14:13 +00:00
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ONNXStableDiffusion1ModelConfig"] | components["schemas"]["StableDiffusion1ModelCheckpointConfig"] | components["schemas"]["StableDiffusion1ModelDiffusersConfig"] | components["schemas"]["VaeModelConfig"] | components["schemas"]["LoRAModelConfig"] | components["schemas"]["ControlNetModelCheckpointConfig"] | components["schemas"]["ControlNetModelDiffusersConfig"] | components["schemas"]["TextualInversionModelConfig"] | components["schemas"]["ONNXStableDiffusion2ModelConfig"] | components["schemas"]["StableDiffusion2ModelCheckpointConfig"] | components["schemas"]["StableDiffusion2ModelDiffusersConfig"] | components["schemas"]["StableDiffusionXLModelCheckpointConfig"] | components["schemas"]["StableDiffusionXLModelDiffusersConfig"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description Bad request */
|
2023-08-22 05:15:00 +00:00
|
|
|
400: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Model not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-07-15 15:06:57 +00:00
|
|
|
/** Search For Models */
|
|
|
|
search_for_models: {
|
|
|
|
parameters: {
|
|
|
|
query: {
|
|
|
|
/** @description Directory path to search for models */
|
|
|
|
search_path: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Directory searched successfully */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-22 05:15:00 +00:00
|
|
|
"application/json": string[];
|
2023-07-15 15:06:57 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Invalid directory path */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-15 15:06:57 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-15 15:06:57 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List Ckpt Configs
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Return a list of the legacy checkpoint configuration files stored in `ROOT/configs/stable-diffusion`, relative to ROOT.
|
|
|
|
*/
|
|
|
|
list_ckpt_configs: {
|
|
|
|
responses: {
|
|
|
|
/** @description paths retrieved successfully */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-22 05:15:00 +00:00
|
|
|
"application/json": string[];
|
2023-07-15 15:06:57 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Sync To Config
|
2023-07-15 15:06:57 +00:00
|
|
|
* @description Call after making changes to models.yaml, autoimport directories or models directory to synchronize
|
|
|
|
* in-memory data structures with disk data structures.
|
|
|
|
*/
|
|
|
|
sync_to_config: {
|
|
|
|
responses: {
|
|
|
|
/** @description synchronization successful */
|
|
|
|
201: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": boolean;
|
2023-07-15 15:06:57 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Merge Models
|
2023-07-07 06:08:30 +00:00
|
|
|
* @description Convert a checkpoint model into a diffusers model
|
|
|
|
*/
|
|
|
|
merge_models: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description Base model */
|
2023-08-16 01:59:19 +00:00
|
|
|
base_model: components["schemas"]["BaseModelType"];
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Body_merge_models"];
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Model converted successfully */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ONNXStableDiffusion1ModelConfig"] | components["schemas"]["StableDiffusion1ModelCheckpointConfig"] | components["schemas"]["StableDiffusion1ModelDiffusersConfig"] | components["schemas"]["VaeModelConfig"] | components["schemas"]["LoRAModelConfig"] | components["schemas"]["ControlNetModelCheckpointConfig"] | components["schemas"]["ControlNetModelDiffusersConfig"] | components["schemas"]["TextualInversionModelConfig"] | components["schemas"]["ONNXStableDiffusion2ModelConfig"] | components["schemas"]["StableDiffusion2ModelCheckpointConfig"] | components["schemas"]["StableDiffusion2ModelDiffusersConfig"] | components["schemas"]["StableDiffusionXLModelCheckpointConfig"] | components["schemas"]["StableDiffusionXLModelDiffusersConfig"];
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Incompatible models */
|
2023-08-22 05:15:00 +00:00
|
|
|
400: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description One or more models not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-07 06:08:30 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-07 06:08:30 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Upload Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Uploads an image
|
|
|
|
*/
|
|
|
|
upload_image: {
|
|
|
|
parameters: {
|
|
|
|
query: {
|
|
|
|
/** @description The category of the image */
|
2023-08-16 01:59:19 +00:00
|
|
|
image_category: components["schemas"]["ImageCategory"];
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Whether this is an intermediate image */
|
|
|
|
is_intermediate: boolean;
|
2023-07-21 07:45:12 +00:00
|
|
|
/** @description The board to add this image to, if any */
|
|
|
|
board_id?: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description The session ID associated with this upload, if any */
|
|
|
|
session_id?: string;
|
2023-07-21 11:16:46 +00:00
|
|
|
/** @description Whether to crop the image */
|
|
|
|
crop_visible?: boolean;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"multipart/form-data": components["schemas"]["Body_upload_image"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description The image was uploaded successfully */
|
|
|
|
201: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ImageDTO"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Image upload failed */
|
2023-08-22 05:15:00 +00:00
|
|
|
415: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Dto
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description Gets an image's DTO
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-12 15:15:09 +00:00
|
|
|
get_image_dto: {
|
2023-06-23 09:14:13 +00:00
|
|
|
parameters: {
|
|
|
|
path: {
|
2023-07-12 15:15:09 +00:00
|
|
|
/** @description The name of image to get */
|
2023-06-23 09:14:13 +00:00
|
|
|
image_name: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
2023-07-12 15:15:09 +00:00
|
|
|
/** @description Successful Response */
|
2023-06-23 09:14:13 +00:00
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ImageDTO"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Delete Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Deletes an image
|
|
|
|
*/
|
|
|
|
delete_image: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The name of the image to delete */
|
|
|
|
image_name: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": unknown;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Update Image
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Updates an image
|
|
|
|
*/
|
|
|
|
update_image: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The name of the image to update */
|
|
|
|
image_name: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ImageRecordChanges"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ImageDTO"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-07-19 14:55:29 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Clear Intermediates
|
2023-07-20 10:48:35 +00:00
|
|
|
* @description Clears all intermediates
|
2023-07-19 14:55:29 +00:00
|
|
|
*/
|
|
|
|
clear_intermediates: {
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": unknown;
|
2023-07-19 14:55:29 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Metadata
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets an image's metadata
|
|
|
|
*/
|
|
|
|
get_image_metadata: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The name of image to get */
|
|
|
|
image_name: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ImageMetadata"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-07-12 15:15:09 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Full
|
2023-07-12 15:15:09 +00:00
|
|
|
* @description Gets a full-resolution image file
|
|
|
|
*/
|
|
|
|
get_image_full: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The name of full-resolution image file to get */
|
|
|
|
image_name: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Return the full-resolution image */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"image/png": unknown;
|
2023-07-12 15:15:09 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Image not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-07-12 15:15:09 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-12 15:15:09 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Thumbnail
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a thumbnail image file
|
|
|
|
*/
|
|
|
|
get_image_thumbnail: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The name of thumbnail image file to get */
|
|
|
|
image_name: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Return the image thumbnail */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"image/webp": unknown;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Image not found */
|
2023-08-22 05:15:00 +00:00
|
|
|
404: {
|
|
|
|
content: never;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Image Urls
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets an image and thumbnail URL
|
|
|
|
*/
|
|
|
|
get_image_urls: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The name of the image whose URL to get */
|
|
|
|
image_name: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ImageUrlsDTO"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-07-31 08:16:52 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List Image Dtos
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description Gets a list of image DTOs
|
|
|
|
*/
|
|
|
|
list_image_dtos: {
|
|
|
|
parameters: {
|
|
|
|
query?: {
|
|
|
|
/** @description The origin of images to list. */
|
2023-08-16 01:59:19 +00:00
|
|
|
image_origin?: components["schemas"]["ResourceOrigin"];
|
2023-07-31 08:16:52 +00:00
|
|
|
/** @description The categories of image to include. */
|
2023-08-22 05:15:00 +00:00
|
|
|
categories?: components["schemas"]["ImageCategory"][];
|
2023-07-31 08:16:52 +00:00
|
|
|
/** @description Whether to list intermediate images. */
|
|
|
|
is_intermediate?: boolean;
|
|
|
|
/** @description The board id to filter by. Use 'none' to find images without a board. */
|
|
|
|
board_id?: string;
|
|
|
|
/** @description The page offset */
|
|
|
|
offset?: number;
|
|
|
|
/** @description The number of images per page */
|
|
|
|
limit?: number;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["OffsetPaginatedResults_ImageDTO_"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/** Delete Images From List */
|
|
|
|
delete_images_from_list: {
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Body_delete_images_from_list"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["DeleteImagesFromListResult"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-08-15 16:55:28 +00:00
|
|
|
/** Star Images In List */
|
|
|
|
star_images_in_list: {
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Body_star_images_in_list"];
|
2023-08-15 16:55:28 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ImagesUpdatedFromListResult"];
|
2023-08-15 16:55:28 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-08-15 16:55:28 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/** Unstar Images In List */
|
|
|
|
unstar_images_in_list: {
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Body_unstar_images_in_list"];
|
2023-08-15 16:55:28 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["ImagesUpdatedFromListResult"];
|
2023-08-15 16:55:28 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-08-15 16:55:28 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List Boards
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a list of boards
|
|
|
|
*/
|
|
|
|
list_boards: {
|
|
|
|
parameters: {
|
|
|
|
query?: {
|
|
|
|
/** @description Whether to list all boards */
|
|
|
|
all?: boolean;
|
|
|
|
/** @description The page offset */
|
|
|
|
offset?: number;
|
|
|
|
/** @description The number of boards per page */
|
|
|
|
limit?: number;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-22 05:15:00 +00:00
|
|
|
"application/json": components["schemas"]["OffsetPaginatedResults_BoardDTO_"] | components["schemas"]["BoardDTO"][];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Create Board
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Creates a board
|
|
|
|
*/
|
|
|
|
create_board: {
|
|
|
|
parameters: {
|
|
|
|
query: {
|
|
|
|
/** @description The name of the board to create */
|
|
|
|
board_name: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description The board was created successfully */
|
|
|
|
201: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["BoardDTO"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Board
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Gets a board
|
|
|
|
*/
|
|
|
|
get_board: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The id of board to get */
|
|
|
|
board_id: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["BoardDTO"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Delete Board
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Deletes a board
|
|
|
|
*/
|
|
|
|
delete_board: {
|
|
|
|
parameters: {
|
2023-07-03 14:09:18 +00:00
|
|
|
query?: {
|
|
|
|
/** @description Permanently delete all images on the board */
|
|
|
|
include_images?: boolean;
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
path: {
|
|
|
|
/** @description The id of board to delete */
|
|
|
|
board_id: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["DeleteBoardResult"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Update Board
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Updates a board
|
|
|
|
*/
|
|
|
|
update_board: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The id of board to update */
|
|
|
|
board_id: string;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["BoardChanges"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description The board was updated successfully */
|
|
|
|
201: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["BoardDTO"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* List All Board Image Names
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
* @description Gets a list of images for a board
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
list_all_board_image_names: {
|
|
|
|
parameters: {
|
|
|
|
path: {
|
|
|
|
/** @description The id of the board */
|
|
|
|
board_id: string;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
feat(ui): another go at gallery (#3791)
* feat(ui): migrate listImages to RTK query using createEntityAdapter
- see comments in `endpoints/images.ts` for explanation of the caching
- so far, only manually updating `all` images when new image is generated. no other manual cache updates are implemented, but will be needed.
- fixed some weirdness with loading state components (like the spinners in gallery)
- added `useThumbnailFallback` for `IAIDndImage`, this displays the tiny webp thumbnail while the full-size images load
- comment out some old thunk related stuff in gallerySlice, which is no longer needed
* feat(ui): add manual cache updates for board changes (wip)
- update RTK Query caches when adding/removing single image to/from board
- work more on migrating all image-related operations to RTK Query
* update AddImagesToBoardContext so that it works when user uses context menu + modal
* handle case where no image is selected
* get assets working for main list and boards - dnd only
* feat(ui): migrate image uploads to RTK Query
- minor refactor of `ImageUploader` and `useImageUploadButton` hooks, simplify some logic
- style filesystem upload overlay to match existing UI
- replace all old `imageUploaded` thunks with `uploadImage` RTK Query calls, update associated logic including canvas related uploads
- simplify `PostUploadAction`s that only need to display user input
* feat(ui): remove `receivedPageOfImages` thunks
* feat(ui): remove `receivedImageUrls` thunk
* feat(ui): finish removing all images thunks
stuff now broken:
- image usage
- delete board images
- on first load, no image selected
* feat(ui): simplify `updateImage` cache manipulation
- we don't actually ever change categories, so we can remove a lot of logic
* feat(ui): simplify canvas autosave
- instead of using a network request to set the canvas generation as not intermediate, we can just do that in the graph
* feat(ui): simplify & handle edge cases in cache updates
* feat(db, api): support `board_id='none'` for `get_many` images queries
This allows us to get all images that are not on a board.
* chore(ui): regen types
* feat(ui): add `All Assets`, `No Board` boards
Restructure boards:
- `all images` is all images
- `all assets` is all assets
- `no board` is all images/assets without a board set
- user boards may have images and assets
Update caching logic
- much simpler without every board having sub-views of images and assets
- update drag and drop operations for all possible interactions
* chore(ui): regen types
* feat(ui): move download to top of context menu
* feat(ui): improve drop overlay styles
* fix(ui): fix image not selected on first load
- listen for first load of all images board, then select the first image
* feat(ui): refactor board deletion
api changes:
- add route to list all image names for a board. this is required to handle board + image deletion. we need to know every image in the board to determine the image usage across the app. this is fetched only when the delete board and images modal is opened so it's as efficient as it can be.
- update the delete board route to respond with a list of deleted `board_images` and `images`, as image names. this is needed to perform accurate clientside state & cache updates after deleting.
db changes:
- remove unused `board_images` service method to get paginated images dtos for a board. this is now done thru the list images endpoint & images service. needs a small logic change on `images.delete_images_on_board`
ui changes:
- simplify the delete board modal - no context, just minor prop drilling. this is feasible for boards only because the components that need to trigger and manipulate the modal are very close together in the tree
- add cache updates for `deleteBoard` & `deleteBoardAndImages` mutations
- the only thing we cannot do directly is on `deleteBoardAndImages`, update the `No Board` board. we'd need to insert image dtos that we may not have loaded. instead, i am just invalidating the tags for that `listImages` cache. so when you `deleteBoardAndImages`, the `No Board` will re-fetch the initial image limit. i think this is more efficient than e.g. fetching all image dtos to insert then inserting them.
- handle image usage for `deleteBoardAndImages`
- update all (i think/hope) the little bits and pieces in the UI to accomodate these changes
* fix(ui): fix board selection logic
* feat(ui): add delete board modal loading state
* fix(ui): use thumbnails for board cover images
* fix(ui): fix race condition with board selection
when selecting a board that doesn't have any images loaded, we need to wait until the images haveloaded before selecting the first image.
this logic is debounced to ~1000ms.
* feat(ui): name 'No Board' correctly, change icon
* fix(ui): do not cache listAllImageNames query
if we cache it, we can end up with stale image usage during deletion.
we could of course manually update the cache as we are doing elsewhere. but because this is a relatively infrequent network request, i'd like to trade increased cache mgmt complexity here for increased resource usage.
* feat(ui): reduce drag preview opacity, remove border
* fix(ui): fix incorrect queryArg used in `deleteImage` and `updateImage` cache updates
* fix(ui): fix doubled open in new tab
* fix(ui): fix new generations not getting added to 'No Board'
* fix(ui): fix board id not changing on new image when autosave enabled
* fix(ui): context menu when selection is 0
need to revise how context menu is triggered later, when we approach multi select
* fix(ui): fix deleting does not update counts for all images and all assets
* fix(ui): fix all assets board name in boards list collapse button
* fix(ui): ensure we never go under 0 for total board count
* fix(ui): fix text overflow on board names
---------
Co-authored-by: Mary Hipp <maryhipp@Marys-MacBook-Air.local>
2023-07-19 16:06:38 +00:00
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
2023-06-23 09:14:13 +00:00
|
|
|
content: {
|
2023-08-22 05:15:00 +00:00
|
|
|
"application/json": string[];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Image To Board
|
2023-06-23 09:14:13 +00:00
|
|
|
* @description Creates a board_image
|
|
|
|
*/
|
2023-07-31 08:16:52 +00:00
|
|
|
add_image_to_board: {
|
2023-06-23 09:14:13 +00:00
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Body_add_image_to_board"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description The image was added to a board successfully */
|
|
|
|
201: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": unknown;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Remove Image From Board
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description Removes an image from its board, if it had one
|
2023-06-23 09:14:13 +00:00
|
|
|
*/
|
2023-07-31 08:16:52 +00:00
|
|
|
remove_image_from_board: {
|
2023-06-23 09:14:13 +00:00
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Body_remove_image_from_board"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description The image was removed from the board successfully */
|
|
|
|
201: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": unknown;
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-07-31 08:16:52 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Add Images To Board
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description Adds a list of images to a board
|
|
|
|
*/
|
|
|
|
add_images_to_board: {
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Body_add_images_to_board"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Images were added to board successfully */
|
|
|
|
201: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["AddImagesToBoardResult"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Remove Images From Board
|
2023-07-31 08:16:52 +00:00
|
|
|
* @description Removes a list of images from their board, if they had one
|
|
|
|
*/
|
|
|
|
remove_images_from_board: {
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["Body_remove_images_from_board"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
responses: {
|
|
|
|
/** @description Images were removed from board successfully */
|
|
|
|
201: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["RemoveImagesFromBoardResult"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-31 08:16:52 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-07-08 09:31:17 +00:00
|
|
|
/** Get Version */
|
|
|
|
app_version: {
|
2023-06-23 09:14:13 +00:00
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["AppVersion"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
2023-07-12 15:56:40 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** Get Config */
|
|
|
|
get_config: {
|
|
|
|
responses: {
|
|
|
|
/** @description Successful Response */
|
|
|
|
200: {
|
2023-06-23 09:14:13 +00:00
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["AppConfig"];
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-07-20 15:45:54 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Get Log Level
|
2023-07-20 15:45:54 +00:00
|
|
|
* @description Returns the log level
|
|
|
|
*/
|
|
|
|
get_log_level: {
|
2023-07-08 09:31:17 +00:00
|
|
|
responses: {
|
2023-07-20 15:45:54 +00:00
|
|
|
/** @description The operation was successful */
|
2023-07-08 09:31:17 +00:00
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["LogLevel"];
|
2023-07-12 15:56:40 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-07-20 15:45:54 +00:00
|
|
|
/**
|
2023-08-22 05:15:00 +00:00
|
|
|
* Set Log Level
|
2023-07-20 15:45:54 +00:00
|
|
|
* @description Sets the log verbosity level
|
|
|
|
*/
|
|
|
|
set_log_level: {
|
|
|
|
requestBody: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["LogLevel"];
|
2023-07-20 15:45:54 +00:00
|
|
|
};
|
|
|
|
};
|
2023-07-12 15:56:40 +00:00
|
|
|
responses: {
|
2023-07-20 15:45:54 +00:00
|
|
|
/** @description The operation was successful */
|
2023-07-12 15:56:40 +00:00
|
|
|
200: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["LogLevel"];
|
2023-07-20 15:45:54 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
/** @description Validation Error */
|
|
|
|
422: {
|
|
|
|
content: {
|
2023-08-16 01:59:19 +00:00
|
|
|
"application/json": components["schemas"]["HTTPValidationError"];
|
2023-07-08 09:31:17 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2023-06-23 09:14:13 +00:00
|
|
|
};
|