mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
resolved conflict
This commit is contained in:
commit
b71ca80bdb
186 changed files with 11840 additions and 940 deletions
|
|
@ -41,7 +41,7 @@ class BlenderSettings(BaseSettingsModel):
|
|||
default_factory=BlenderImageIOModel,
|
||||
title="Color Management (ImageIO)"
|
||||
)
|
||||
render_settings: RenderSettingsModel = Field(
|
||||
RenderSettings: RenderSettingsModel = Field(
|
||||
default_factory=RenderSettingsModel, title="Render Settings")
|
||||
workfile_builder: TemplateWorkfileBaseOptions = Field(
|
||||
default_factory=TemplateWorkfileBaseOptions,
|
||||
|
|
@ -61,7 +61,7 @@ DEFAULT_VALUES = {
|
|||
},
|
||||
"set_frames_startup": True,
|
||||
"set_resolution_startup": True,
|
||||
"render_settings": DEFAULT_RENDER_SETTINGS,
|
||||
"RenderSettings": DEFAULT_RENDER_SETTINGS,
|
||||
"publish": DEFAULT_BLENDER_PUBLISH_SETTINGS,
|
||||
"workfile_builder": {
|
||||
"create_first_version": False,
|
||||
|
|
|
|||
|
|
@ -61,26 +61,20 @@ class PublishPuginsModel(BaseSettingsModel):
|
|||
ValidateCameraZeroKeyframe: ValidatePluginModel = Field(
|
||||
default_factory=ValidatePluginModel,
|
||||
title="Validate Camera Zero Keyframe",
|
||||
section="Validators"
|
||||
section="General Validators"
|
||||
)
|
||||
ValidateFileSaved: ValidateFileSavedModel = Field(
|
||||
default_factory=ValidateFileSavedModel,
|
||||
title="Validate File Saved",
|
||||
section="Validators"
|
||||
)
|
||||
ValidateRenderCameraIsSet: ValidatePluginModel = Field(
|
||||
ValidateInstanceEmpty: ValidatePluginModel = Field(
|
||||
default_factory=ValidatePluginModel,
|
||||
title="Validate Render Camera Is Set",
|
||||
section="Validators"
|
||||
)
|
||||
ValidateDeadlinePublish: ValidatePluginModel = Field(
|
||||
default_factory=ValidatePluginModel,
|
||||
title="Validate Render Output for Deadline",
|
||||
section="Validators"
|
||||
title="Validate Instance is not Empty"
|
||||
)
|
||||
ValidateMeshHasUvs: ValidatePluginModel = Field(
|
||||
default_factory=ValidatePluginModel,
|
||||
title="Validate Mesh Has Uvs"
|
||||
title="Validate Mesh Has Uvs",
|
||||
section="Model Validators"
|
||||
)
|
||||
ValidateMeshNoNegativeScale: ValidatePluginModel = Field(
|
||||
default_factory=ValidatePluginModel,
|
||||
|
|
@ -94,6 +88,15 @@ class PublishPuginsModel(BaseSettingsModel):
|
|||
default_factory=ValidatePluginModel,
|
||||
title="Validate No Colons In Name"
|
||||
)
|
||||
ValidateRenderCameraIsSet: ValidatePluginModel = Field(
|
||||
default_factory=ValidatePluginModel,
|
||||
title="Validate Render Camera Is Set",
|
||||
section="Render Validators"
|
||||
)
|
||||
ValidateDeadlinePublish: ValidatePluginModel = Field(
|
||||
default_factory=ValidatePluginModel,
|
||||
title="Validate Render Output for Deadline",
|
||||
)
|
||||
ExtractBlend: ExtractBlendModel = Field(
|
||||
default_factory=ExtractBlendModel,
|
||||
title="Extract Blend",
|
||||
|
|
@ -179,6 +182,11 @@ DEFAULT_BLENDER_PUBLISH_SETTINGS = {
|
|||
"optional": False,
|
||||
"active": True
|
||||
},
|
||||
"ValidateInstanceEmpty": {
|
||||
"enabled": True,
|
||||
"optional": False,
|
||||
"active": True
|
||||
},
|
||||
"ExtractBlend": {
|
||||
"enabled": True,
|
||||
"optional": True,
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
__version__ = "0.1.3"
|
||||
__version__ = "0.1.5"
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ class ValidateBaseModel(BaseSettingsModel):
|
|||
class CollectAnatomyInstanceDataModel(BaseSettingsModel):
|
||||
_isGroup = True
|
||||
follow_workfile_version: bool = Field(
|
||||
True, title="Collect Anatomy Instance Data"
|
||||
True, title="Follow workfile version"
|
||||
)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -489,7 +489,7 @@ DEFAULT_TOOLS_VALUES = {
|
|||
"template_name": "publish_online"
|
||||
},
|
||||
{
|
||||
"families": [
|
||||
"product_types": [
|
||||
"tycache"
|
||||
],
|
||||
"hosts": [
|
||||
|
|
|
|||
|
|
@ -267,7 +267,7 @@ class ProcessSubmittedJobOnFarmModel(BaseSettingsModel):
|
|||
title="Reviewable products filter",
|
||||
)
|
||||
|
||||
@validator("aov_filter", "skip_integration_repre_list")
|
||||
@validator("aov_filter")
|
||||
def validate_unique_names(cls, value):
|
||||
ensure_unique_names(value)
|
||||
return value
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
__version__ = "0.1.2"
|
||||
__version__ = "0.1.3"
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ from ayon_server.settings import BaseSettingsModel
|
|||
|
||||
|
||||
# Publish Plugins
|
||||
class CollectRopFrameRangeModel(BaseSettingsModel):
|
||||
class CollectAssetHandlesModel(BaseSettingsModel):
|
||||
"""Collect Frame Range
|
||||
Disable this if you want the publisher to
|
||||
ignore start and end handles specified in the
|
||||
|
|
|
|||
|
|
@ -22,16 +22,46 @@ class ShelfDefinitionModel(BaseSettingsModel):
|
|||
)
|
||||
|
||||
|
||||
class ShelvesModel(BaseSettingsModel):
|
||||
_layout = "expanded"
|
||||
shelf_set_name: str = Field("", title="Shelfs set name")
|
||||
|
||||
class AddShelfFileModel(BaseSettingsModel):
|
||||
shelf_set_source_path: MultiplatformPathModel = Field(
|
||||
default_factory=MultiplatformPathModel,
|
||||
title="Shelf Set Path (optional)"
|
||||
title="Shelf Set Path"
|
||||
)
|
||||
|
||||
|
||||
class AddSetAndDefinitionsModel(BaseSettingsModel):
|
||||
shelf_set_name: str = Field("", title="Shelf Set Name")
|
||||
shelf_definition: list[ShelfDefinitionModel] = Field(
|
||||
default_factory=list,
|
||||
title="Shelf Definitions"
|
||||
title="Shelves Definitions"
|
||||
)
|
||||
|
||||
|
||||
def shelves_enum_options():
|
||||
return [
|
||||
{
|
||||
"value": "add_shelf_file",
|
||||
"label": "Add a .shelf file"
|
||||
},
|
||||
{
|
||||
"value": "add_set_and_definitions",
|
||||
"label": "Add Shelf Set Name and Shelves Definitions"
|
||||
}
|
||||
]
|
||||
|
||||
|
||||
class ShelvesModel(BaseSettingsModel):
|
||||
options: str = Field(
|
||||
title="Options",
|
||||
description="Switch between shelves manager options",
|
||||
enum_resolver=shelves_enum_options,
|
||||
conditionalEnum=True
|
||||
)
|
||||
add_shelf_file: AddShelfFileModel = Field(
|
||||
title="Add a .shelf file",
|
||||
default_factory=AddShelfFileModel
|
||||
)
|
||||
add_set_and_definitions: AddSetAndDefinitionsModel = Field(
|
||||
title="Add Shelf Set Name and Shelves Definitions",
|
||||
default_factory=AddSetAndDefinitionsModel
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
__version__ = "0.2.6"
|
||||
__version__ = "0.2.8"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,30 @@
|
|||
from pydantic import Field
|
||||
import json
|
||||
from pydantic import Field, validator
|
||||
|
||||
from ayon_server.settings import BaseSettingsModel
|
||||
from ayon_server.exceptions import BadRequestException
|
||||
|
||||
|
||||
class ValidateAttributesModel(BaseSettingsModel):
|
||||
enabled: bool = Field(title="ValidateAttributes")
|
||||
attributes: str = Field(
|
||||
"{}", title="Attributes", widget="textarea")
|
||||
|
||||
@validator("attributes")
|
||||
def validate_json(cls, value):
|
||||
if not value.strip():
|
||||
return "{}"
|
||||
try:
|
||||
converted_value = json.loads(value)
|
||||
success = isinstance(converted_value, dict)
|
||||
except json.JSONDecodeError:
|
||||
success = False
|
||||
|
||||
if not success:
|
||||
raise BadRequestException(
|
||||
"The attibutes can't be parsed as json object"
|
||||
)
|
||||
return value
|
||||
|
||||
|
||||
class BasicValidateModel(BaseSettingsModel):
|
||||
|
|
@ -15,6 +39,10 @@ class PublishersModel(BaseSettingsModel):
|
|||
title="Validate Frame Range",
|
||||
section="Validators"
|
||||
)
|
||||
ValidateAttributes: ValidateAttributesModel = Field(
|
||||
default_factory=ValidateAttributesModel,
|
||||
title="Validate Attributes"
|
||||
)
|
||||
|
||||
|
||||
DEFAULT_PUBLISH_SETTINGS = {
|
||||
|
|
@ -22,5 +50,9 @@ DEFAULT_PUBLISH_SETTINGS = {
|
|||
"enabled": True,
|
||||
"optional": True,
|
||||
"active": True
|
||||
}
|
||||
},
|
||||
"ValidateAttributes": {
|
||||
"enabled": False,
|
||||
"attributes": "{}"
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,19 +5,17 @@ from ayon_server.settings import BaseSettingsModel, task_types_enum
|
|||
|
||||
class ClipNameTokenizerItem(BaseSettingsModel):
|
||||
_layout = "expanded"
|
||||
# TODO was 'dict-modifiable', is list of dicts now, must be fixed in code
|
||||
name: str = Field("#TODO", title="Tokenizer name")
|
||||
name: str = Field("", title="Tokenizer name")
|
||||
regex: str = Field("", title="Tokenizer regex")
|
||||
|
||||
|
||||
class ShotAddTasksItem(BaseSettingsModel):
|
||||
_layout = "expanded"
|
||||
# TODO was 'dict-modifiable', is list of dicts now, must be fixed in code
|
||||
name: str = Field('', title="Key")
|
||||
task_type: list[str] = Field(
|
||||
task_type: str = Field(
|
||||
title="Task type",
|
||||
default_factory=list,
|
||||
enum_resolver=task_types_enum)
|
||||
enum_resolver=task_types_enum
|
||||
)
|
||||
|
||||
|
||||
class ShotRenameSubmodel(BaseSettingsModel):
|
||||
|
|
@ -54,7 +52,7 @@ class TokenToParentConvertorItem(BaseSettingsModel):
|
|||
)
|
||||
|
||||
|
||||
class ShotHierchySubmodel(BaseSettingsModel):
|
||||
class ShotHierarchySubmodel(BaseSettingsModel):
|
||||
enabled: bool = True
|
||||
parents_path: str = Field(
|
||||
"",
|
||||
|
|
@ -102,9 +100,9 @@ class EditorialSimpleCreatorPlugin(BaseSettingsModel):
|
|||
title="Shot Rename",
|
||||
default_factory=ShotRenameSubmodel
|
||||
)
|
||||
shot_hierarchy: ShotHierchySubmodel = Field(
|
||||
shot_hierarchy: ShotHierarchySubmodel = Field(
|
||||
title="Shot Hierarchy",
|
||||
default_factory=ShotHierchySubmodel
|
||||
default_factory=ShotHierarchySubmodel
|
||||
)
|
||||
shot_add_tasks: list[ShotAddTasksItem] = Field(
|
||||
title="Add tasks to shot",
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
"""Package declaring addon version."""
|
||||
__version__ = "0.1.2"
|
||||
__version__ = "0.1.3"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue