Add several new nodes:
- DecodeTranscriptNode to parse transcript text - YoutubeUploadNode to upload videos to YouTube - Audio metadata and file list nodes - Image stack blending and stripping alpha channel - Sampler dataset creation node - Utils for deep copying tensors and arrays Also includes: - Testing for new utils module - Git nodes marked with base class - Renamed nodes.py to avoid conflicts - Import refactoring to handle naming Specifics: - descript.py: New transcript parsing node - youtube_nodes.py: New YouTube upload node - audio.py: New audio metadata and file list nodes - utils.py: Deep copy utility functions - image.py: New image stack blending and alpha stripping - tests/test_utils.py: Tests for new utils - git.py: Marked git nodes with base class - __init__.py: Refactored imports and mappings - requirements.txt: Added YouTube dependencies - functional.py: Minor tweaks - modules/youtube.py: Helper for upload node - video.py: Minor cleanup - tests/test_youtube_nodes.py: Test for YouTube upload
This commit is contained in:
@@ -1,10 +1,20 @@
|
||||
from git import Repo, InvalidGitRepositoryError
|
||||
import os
|
||||
import copy
|
||||
|
||||
import re
|
||||
|
||||
NODE_CLASS_MAPPINGS = {}
|
||||
NODE_DISPLAY_NAME_MAPPINGS = {}
|
||||
|
||||
|
||||
def ETK_git_base(cls):
|
||||
cls.FUNCTION = "func"
|
||||
cls.CATEGORY = "ETK/git"
|
||||
NODE_CLASS_MAPPINGS[cls.__name__] = cls
|
||||
return cls
|
||||
|
||||
|
||||
@ETK_git_base
|
||||
class PublicGitRepo:
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
@@ -33,6 +43,7 @@ def validate_git_repo_url(self, **kwargs):
|
||||
return match is not None and match.group() == repo_url
|
||||
|
||||
|
||||
@ETK_git_base
|
||||
class CloneRepoNode:
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
@@ -45,7 +56,7 @@ class CloneRepoNode:
|
||||
}
|
||||
|
||||
RETURN_TYPES = ("STRING", "STRING", "LIST",)
|
||||
RETURN_NAMES = ("path_passthrough","file_structure", "file_list",)
|
||||
RETURN_NAMES = ("path_passthrough", "file_structure", "file_list",)
|
||||
FUNCTION = 'clone_repo'
|
||||
CATEGORY = 'ETK/git'
|
||||
|
||||
@@ -61,6 +72,7 @@ class CloneRepoNode:
|
||||
return ("".join(ld), ld,)
|
||||
|
||||
|
||||
@ETK_git_base
|
||||
class PullRepoNode:
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
@@ -89,6 +101,7 @@ def pull_repo(self, **kwargs):
|
||||
# origin.pull()
|
||||
|
||||
|
||||
@ETK_git_base
|
||||
class PushRepoNode:
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
@@ -114,6 +127,7 @@ def push_repo(self, **kwargs):
|
||||
origin.push()
|
||||
|
||||
|
||||
@ETK_git_base
|
||||
class SendCommitNode:
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
@@ -139,6 +153,7 @@ def send_commit(self, **kwargs):
|
||||
repo.index.commit(commit_message)
|
||||
|
||||
|
||||
@ETK_git_base
|
||||
class CreateRepoNode:
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
|
||||
Reference in New Issue
Block a user