better custom function support, need to better split tests
This commit is contained in:
parent
c5f9a0c471
commit
ffedfe9756
6 changed files with 252 additions and 214 deletions
|
|
@ -749,6 +749,9 @@ class Script:
|
||||||
for variable in list(unresolved.keys()):
|
for variable in list(unresolved.keys()):
|
||||||
definition = unresolved[variable]
|
definition = unresolved[variable]
|
||||||
|
|
||||||
|
if variable.name == "tv_show_by_date_ordering_pair_validation_":
|
||||||
|
print("hih")
|
||||||
|
|
||||||
if isinstance(definition, Variable):
|
if isinstance(definition, Variable):
|
||||||
if definition in unresolvable:
|
if definition in unresolvable:
|
||||||
maybe_resolved = definition
|
maybe_resolved = definition
|
||||||
|
|
@ -764,6 +767,7 @@ class Script:
|
||||||
|
|
||||||
if isinstance(maybe_resolved, Resolvable):
|
if isinstance(maybe_resolved, Resolvable):
|
||||||
resolved[variable] = maybe_resolved
|
resolved[variable] = maybe_resolved
|
||||||
|
partially_resolved = True
|
||||||
del unresolved[variable]
|
del unresolved[variable]
|
||||||
else:
|
else:
|
||||||
unresolved[variable] = maybe_resolved
|
unresolved[variable] = maybe_resolved
|
||||||
|
|
|
||||||
|
|
@ -93,23 +93,44 @@ class CustomFunction(Function, NamedCustomFunction):
|
||||||
unresolved_variables: Dict[Variable, Argument],
|
unresolved_variables: Dict[Variable, Argument],
|
||||||
custom_functions: Dict[str, "VariableDependency"],
|
custom_functions: Dict[str, "VariableDependency"],
|
||||||
) -> TypeT | Resolvable:
|
) -> TypeT | Resolvable:
|
||||||
maybe_resolvable_values, is_resolvable = VariableDependency.try_partial_resolve(
|
maybe_resolvable_args, _ = VariableDependency.try_partial_resolve(
|
||||||
args=self.args,
|
args=self.args,
|
||||||
resolved_variables=resolved_variables,
|
resolved_variables=resolved_variables,
|
||||||
unresolved_variables=unresolved_variables,
|
unresolved_variables=unresolved_variables,
|
||||||
custom_functions=custom_functions,
|
custom_functions=custom_functions,
|
||||||
)
|
)
|
||||||
|
|
||||||
if any(var not in resolved_variables for var in custom_functions[self.name].variables):
|
for i in range(len(self.args)):
|
||||||
is_resolvable = False
|
function_arg = FunctionArgument.from_idx(idx=i, custom_function_name=self.name)
|
||||||
|
|
||||||
if is_resolvable:
|
if isinstance(maybe_resolvable_args[i], Resolvable):
|
||||||
return self.resolve(
|
resolved_variables[function_arg] = maybe_resolvable_args[i]
|
||||||
|
else:
|
||||||
|
unresolved_variables[function_arg] = maybe_resolvable_args[i]
|
||||||
|
|
||||||
|
assert len(custom_functions[self.name]._iterable_arguments) == 1
|
||||||
|
custom_function_definition = custom_functions[self.name]._iterable_arguments[0]
|
||||||
|
|
||||||
|
maybe_resolvable_custom_function, is_resolvable = VariableDependency.try_partial_resolve(
|
||||||
|
args=[custom_function_definition],
|
||||||
resolved_variables=resolved_variables,
|
resolved_variables=resolved_variables,
|
||||||
|
unresolved_variables=unresolved_variables,
|
||||||
custom_functions=custom_functions,
|
custom_functions=custom_functions,
|
||||||
)
|
)
|
||||||
|
|
||||||
return CustomFunction(name=self.name, args=maybe_resolvable_values)
|
for i, arg in enumerate(self.args):
|
||||||
|
function_arg = FunctionArgument.from_idx(idx=i, custom_function_name=self.name)
|
||||||
|
|
||||||
|
if isinstance(maybe_resolvable_args[i], Resolvable):
|
||||||
|
del resolved_variables[function_arg]
|
||||||
|
else:
|
||||||
|
del unresolved_variables[function_arg]
|
||||||
|
|
||||||
|
if is_resolvable:
|
||||||
|
return maybe_resolvable_custom_function[0]
|
||||||
|
|
||||||
|
# Did not resolve custom function arguments, do not proceed
|
||||||
|
return CustomFunction(name=self.name, args=maybe_resolvable_args)
|
||||||
|
|
||||||
|
|
||||||
class BuiltInFunction(Function, BuiltInFunctionType):
|
class BuiltInFunction(Function, BuiltInFunctionType):
|
||||||
|
|
@ -381,6 +402,19 @@ class BuiltInFunction(Function, BuiltInFunctionType):
|
||||||
else:
|
else:
|
||||||
break
|
break
|
||||||
|
|
||||||
|
if self.name == "assert_then":
|
||||||
|
maybe_resolvable_arg, is_resolvable = VariableDependency.try_partial_resolve(
|
||||||
|
args=[self.args[0]],
|
||||||
|
resolved_variables=resolved_variables,
|
||||||
|
unresolved_variables=unresolved_variables,
|
||||||
|
custom_functions=custom_functions,
|
||||||
|
)
|
||||||
|
if is_resolvable:
|
||||||
|
boolean_output = maybe_resolvable_arg[0]
|
||||||
|
assert isinstance(boolean_output, Boolean)
|
||||||
|
if boolean_output.native:
|
||||||
|
return self.args[1]
|
||||||
|
|
||||||
return self
|
return self
|
||||||
|
|
||||||
def _try_optimized_partial_resolve(
|
def _try_optimized_partial_resolve(
|
||||||
|
|
|
||||||
|
|
@ -7,24 +7,24 @@
|
||||||
"category_url_array_sanitized": "[]",
|
"category_url_array_sanitized": "[]",
|
||||||
"category_url_map": "{ [ ] }",
|
"category_url_map": "{ [ ] }",
|
||||||
"category_url_map_sanitized": "[]",
|
"category_url_map_sanitized": "[]",
|
||||||
"channel": "{ %map_get_non_empty( entry_metadata, \"channel\", %map_get_non_empty( entry_metadata, \"uploader\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"channel": "{ %map_get_non_empty( entry_metadata, \"channel\", uploader ) }",
|
||||||
"channel_id": "{ %map_get_non_empty( entry_metadata, \"channel_id\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"channel_id": "{ %map_get_non_empty( entry_metadata, \"channel_id\", uploader_id ) }",
|
||||||
"channel_id_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"channel_id\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"channel_id_sanitized": "{ %sanitize( channel_id ) }",
|
||||||
"channel_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"channel\", %map_get_non_empty( entry_metadata, \"uploader\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) ) }",
|
"channel_sanitized": "{ %sanitize( channel ) }",
|
||||||
"chapters": "{ [ ] }",
|
"chapters": "{ [ ] }",
|
||||||
"chapters_sanitized": "[]",
|
"chapters_sanitized": "{ %sanitize( chapters ) }",
|
||||||
"comments": "{ [ ] }",
|
"comments": "{ [ ] }",
|
||||||
"comments_sanitized": "[]",
|
"comments_sanitized": "{ %sanitize( comments ) }",
|
||||||
"creator": "{ %map_get_non_empty( entry_metadata, \"creator\", %map_get_non_empty( entry_metadata, \"channel\", %map_get_non_empty( entry_metadata, \"uploader\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) ) }",
|
"creator": "{ %map_get_non_empty( entry_metadata, \"creator\", channel ) }",
|
||||||
"creator_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"creator\", %map_get_non_empty( entry_metadata, \"channel\", %map_get_non_empty( entry_metadata, \"uploader\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) ) ) }",
|
"creator_sanitized": "{ %sanitize( creator ) }",
|
||||||
"description": "{ %map_get_non_empty( entry_metadata, \"description\", '' ) }",
|
"description": "{ %map_get_non_empty( entry_metadata, \"description\", '' ) }",
|
||||||
"description_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"description\", '' ) ) }",
|
"description_sanitized": "{ %sanitize( description ) }",
|
||||||
"download_index": "{ %int( 1 ) }",
|
"download_index": "{ %int( 1 ) }",
|
||||||
"download_index_padded6": "000001",
|
"download_index_padded6": "{ %pad_zero( download_index, 6 ) }",
|
||||||
"download_index_padded6_sanitized": "000001",
|
"download_index_padded6_sanitized": "{ %sanitize( download_index_padded6 ) }",
|
||||||
"download_index_sanitized": "1",
|
"download_index_sanitized": "{ %sanitize( download_index ) }",
|
||||||
"duration": "{ %map_get_non_empty( entry_metadata, \"duration\", 0 ) }",
|
"duration": "{ %map_get_non_empty( entry_metadata, \"duration\", 0 ) }",
|
||||||
"duration_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"duration\", 0 ) ) }",
|
"duration_sanitized": "{ %sanitize( duration ) }",
|
||||||
"enable_bilateral_scraping": "{ %bool(True) }",
|
"enable_bilateral_scraping": "{ %bool(True) }",
|
||||||
"enable_bilateral_scraping_sanitized": "true",
|
"enable_bilateral_scraping_sanitized": "true",
|
||||||
"enable_resolution_assert": "{ %bool(True) }",
|
"enable_resolution_assert": "{ %bool(True) }",
|
||||||
|
|
@ -34,163 +34,163 @@
|
||||||
"entry_metadata": "{ { } }",
|
"entry_metadata": "{ { } }",
|
||||||
"entry_metadata_sanitized": "{ %sanitize( entry_metadata ) }",
|
"entry_metadata_sanitized": "{ %sanitize( entry_metadata ) }",
|
||||||
"epoch": "{ %map_get( entry_metadata, \"epoch\" ) }",
|
"epoch": "{ %map_get( entry_metadata, \"epoch\" ) }",
|
||||||
"epoch_date": "{ %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) }",
|
"epoch_date": "{ %datetime_strftime( epoch, \"%Y%m%d\" ) }",
|
||||||
"epoch_date_sanitized": "{ %sanitize( %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) }",
|
"epoch_date_sanitized": "{ %sanitize( epoch_date ) }",
|
||||||
"epoch_hour": "{ %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%H\" ) }",
|
"epoch_hour": "{ %datetime_strftime( epoch, \"%H\" ) }",
|
||||||
"epoch_hour_sanitized": "{ %sanitize( %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%H\" ) ) }",
|
"epoch_hour_sanitized": "{ %sanitize( epoch_hour ) }",
|
||||||
"epoch_sanitized": "{ %sanitize( %map_get( entry_metadata, \"epoch\" ) ) }",
|
"epoch_sanitized": "{ %sanitize( epoch ) }",
|
||||||
"ext": "{ %map_get( entry_metadata, \"ext\" ) }",
|
"ext": "{ %map_get( entry_metadata, \"ext\" ) }",
|
||||||
"ext_sanitized": "{ %sanitize( %map_get( entry_metadata, \"ext\" ) ) }",
|
"ext_sanitized": "{ %sanitize( ext ) }",
|
||||||
"extractor": "{ %map_get( entry_metadata, \"extractor\" ) }",
|
"extractor": "{ %map_get( entry_metadata, \"extractor\" ) }",
|
||||||
"extractor_key": "{ %map_get( entry_metadata, \"extractor_key\" ) }",
|
"extractor_key": "{ %map_get( entry_metadata, \"extractor_key\" ) }",
|
||||||
"extractor_key_sanitized": "{ %sanitize( %map_get( entry_metadata, \"extractor_key\" ) ) }",
|
"extractor_key_sanitized": "{ %sanitize( extractor_key ) }",
|
||||||
"extractor_sanitized": "{ %sanitize( %map_get( entry_metadata, \"extractor\" ) ) }",
|
"extractor_sanitized": "{ %sanitize( extractor ) }",
|
||||||
"file_title": "{ %sanitize_plex_episode( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"file_title": "{ title_sanitized_plex }",
|
||||||
"file_title_sanitized": "{ %sanitize( %sanitize_plex_episode( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"file_title_sanitized": "{ %sanitize( title_sanitized_plex ) }",
|
||||||
"file_uid": "{ %sanitize_plex_episode( %map_get( entry_metadata, \"id\" ) ) }",
|
"file_uid": "{ uid_sanitized_plex }",
|
||||||
"file_uid_sanitized": "{ %sanitize( %sanitize_plex_episode( %map_get( entry_metadata, \"id\" ) ) ) }",
|
"file_uid_sanitized": "{ %sanitize( uid_sanitized_plex ) }",
|
||||||
"height": "{ %map_get_non_empty( entry_metadata, \"height\", 0 ) }",
|
"height": "{ %map_get_non_empty( entry_metadata, \"height\", 0 ) }",
|
||||||
"height_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"height\", 0 ) ) }",
|
"height_sanitized": "{ %sanitize( height ) }",
|
||||||
"ie_key": "{ %map_get_non_empty( entry_metadata, \"ie_key\", %map_get( entry_metadata, \"extractor_key\" ) ) }",
|
"ie_key": "{ %map_get_non_empty( entry_metadata, \"ie_key\", extractor_key ) }",
|
||||||
"ie_key_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"ie_key\", %map_get( entry_metadata, \"extractor_key\" ) ) ) }",
|
"ie_key_sanitized": "{ %sanitize( ie_key ) }",
|
||||||
"include_sibling_metadata": "{ %bool(False) }",
|
"include_sibling_metadata": "{ %bool(False) }",
|
||||||
"include_sibling_metadata_sanitized": "false",
|
"include_sibling_metadata_sanitized": "false",
|
||||||
"info_json_ext": "info.json",
|
"info_json_ext": "info.json",
|
||||||
"info_json_ext_sanitized": "info.json",
|
"info_json_ext_sanitized": "info.json",
|
||||||
"modified_webpage_url": "{ %map_get( entry_metadata, \"webpage_url\" ) }",
|
"modified_webpage_url": "{ webpage_url }",
|
||||||
"modified_webpage_url_sanitized": "{ %sanitize( %map_get( entry_metadata, \"webpage_url\" ) ) }",
|
"modified_webpage_url_sanitized": "{ %sanitize( webpage_url ) }",
|
||||||
"music_video_album": "Music Videos",
|
"music_video_album": "{ %get_url_field( \"category\", music_video_album_default ) }",
|
||||||
"music_video_album_default": "Music Videos",
|
"music_video_album_default": "Music Videos",
|
||||||
"music_video_album_default_sanitized": "Music Videos",
|
"music_video_album_default_sanitized": "Music Videos",
|
||||||
"music_video_album_sanitized": "Music Videos",
|
"music_video_album_sanitized": "{ %sanitize( %get_url_field( \"category\", music_video_album_default ) ) }",
|
||||||
"music_video_artist": "Rick Astley",
|
"music_video_artist": "Rick Astley",
|
||||||
"music_video_artist_sanitized": "Rick Astley",
|
"music_video_artist_sanitized": "Rick Astley",
|
||||||
"music_video_date": "{ %elif( %contains_url_field( \"date\" ), %get_url_field( \"date\", upload_date_standardized ), %contains_url_field( \"year\" ), %concat( %get_url_field( \"date\", upload_year ), \"-01-01\" ), upload_date_standardized ) }",
|
"music_video_date": "{ %elif( %contains_url_field( \"date\" ), %get_url_field( \"date\", upload_date_standardized ), %contains_url_field( \"year\" ), %concat( %get_url_field( \"date\", upload_year ), \"-01-01\" ), upload_date_standardized ) }",
|
||||||
"music_video_date_sanitized": "{ %sanitize( %elif( %contains_url_field( \"date\" ), %get_url_field( \"date\", upload_date_standardized ), %contains_url_field( \"year\" ), %concat( %get_url_field( \"date\", upload_year ), \"-01-01\" ), upload_date_standardized ) ) }",
|
"music_video_date_sanitized": "{ %sanitize( %elif( %contains_url_field( \"date\" ), %get_url_field( \"date\", upload_date_standardized ), %contains_url_field( \"year\" ), %concat( %get_url_field( \"date\", upload_year ), \"-01-01\" ), upload_date_standardized ) ) }",
|
||||||
"music_video_directory": "tv_show_directory_path",
|
"music_video_directory": "tv_show_directory_path",
|
||||||
"music_video_directory_sanitized": "tv_show_directory_path",
|
"music_video_directory_sanitized": "tv_show_directory_path",
|
||||||
"music_video_file_name": "Rick Astley/{ %sanitize( %get_url_field( \"title\", %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"music_video_file_name": "Rick Astley/{ %sanitize( %get_url_field( \"title\", title ) ) }",
|
||||||
"music_video_file_name_sanitized": "{ %sanitize( %concat( \"Rick Astley\", \"/\", %string( %sanitize( %get_url_field( \"title\", %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) ), '' ) ) }",
|
"music_video_file_name_sanitized": "{ %sanitize( %concat( \"Rick Astley\", \"/\", %string( %sanitize( %get_url_field( \"title\", title ) ) ), '' ) ) }",
|
||||||
"music_video_file_name_suffix": "",
|
"music_video_file_name_suffix": "",
|
||||||
"music_video_file_name_suffix_sanitized": "",
|
"music_video_file_name_suffix_sanitized": "",
|
||||||
"music_video_genre": "Pop",
|
"music_video_genre": "Pop",
|
||||||
"music_video_genre_default": "ytdl-sub",
|
"music_video_genre_default": "ytdl-sub",
|
||||||
"music_video_genre_default_sanitized": "ytdl-sub",
|
"music_video_genre_default_sanitized": "ytdl-sub",
|
||||||
"music_video_genre_sanitized": "Pop",
|
"music_video_genre_sanitized": "Pop",
|
||||||
"music_video_title": "{ %get_url_field( \"title\", %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"music_video_title": "{ %get_url_field( \"title\", title ) }",
|
||||||
"music_video_title_sanitized": "{ %sanitize( %get_url_field( \"title\", %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"music_video_title_sanitized": "{ %sanitize( %get_url_field( \"title\", title ) ) }",
|
||||||
"music_video_year": "{ %int( %elif( %contains_url_field( \"date\" ), %slice( %get_url_field( \"date\", upload_date_standardized ), 0, 4 ), %contains_url_field( \"year\" ), %get_url_field( \"date\", upload_year ), upload_year ) ) }",
|
"music_video_year": "{ %int( %elif( %contains_url_field( \"date\" ), %slice( %get_url_field( \"date\", upload_date_standardized ), 0, 4 ), %contains_url_field( \"year\" ), %get_url_field( \"date\", upload_year ), upload_year ) ) }",
|
||||||
"music_video_year_sanitized": "{ %sanitize( %int( %elif( %contains_url_field( \"date\" ), %slice( %get_url_field( \"date\", upload_date_standardized ), 0, 4 ), %contains_url_field( \"year\" ), %get_url_field( \"date\", upload_year ), upload_year ) ) ) }",
|
"music_video_year_sanitized": "{ %sanitize( %int( %elif( %contains_url_field( \"date\" ), %slice( %get_url_field( \"date\", upload_date_standardized ), 0, 4 ), %contains_url_field( \"year\" ), %get_url_field( \"date\", upload_year ), upload_year ) ) ) }",
|
||||||
"playlist_count": "{ %map_get_non_empty( entry_metadata, \"playlist_count\", 1 ) }",
|
"playlist_count": "{ %map_get_non_empty( entry_metadata, \"playlist_count\", 1 ) }",
|
||||||
"playlist_count_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"playlist_count\", 1 ) ) }",
|
"playlist_count_sanitized": "{ %sanitize( playlist_count ) }",
|
||||||
"playlist_description": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"description\", %map_get_non_empty( entry_metadata, \"description\", '' ) ) }",
|
"playlist_description": "{ %map_get_non_empty( playlist_metadata, \"description\", description ) }",
|
||||||
"playlist_description_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"description\", %map_get_non_empty( entry_metadata, \"description\", '' ) ) ) }",
|
"playlist_description_sanitized": "{ %sanitize( playlist_description ) }",
|
||||||
"playlist_index": "{ %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ) }",
|
"playlist_index": "{ %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ) }",
|
||||||
"playlist_index_padded": "{ %pad_zero( %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ), 2 ) }",
|
"playlist_index_padded": "{ %pad_zero( playlist_index, 2 ) }",
|
||||||
"playlist_index_padded6": "{ %pad_zero( %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ), 6 ) }",
|
"playlist_index_padded6": "{ %pad_zero( playlist_index, 6 ) }",
|
||||||
"playlist_index_padded6_sanitized": "{ %sanitize( %pad_zero( %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ), 6 ) ) }",
|
"playlist_index_padded6_sanitized": "{ %sanitize( playlist_index_padded6 ) }",
|
||||||
"playlist_index_padded_sanitized": "{ %sanitize( %pad_zero( %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ), 2 ) ) }",
|
"playlist_index_padded_sanitized": "{ %sanitize( playlist_index_padded ) }",
|
||||||
"playlist_index_reversed": "{ %sub( %map_get_non_empty( entry_metadata, \"playlist_count\", 1 ), %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ), -1 ) }",
|
"playlist_index_reversed": "{ %sub( playlist_count, playlist_index, -1 ) }",
|
||||||
"playlist_index_reversed_padded": "{ %pad_zero( %sub( %map_get_non_empty( entry_metadata, \"playlist_count\", 1 ), %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ), -1 ), 2 ) }",
|
"playlist_index_reversed_padded": "{ %pad_zero( playlist_index_reversed, 2 ) }",
|
||||||
"playlist_index_reversed_padded6": "{ %pad_zero( %sub( %map_get_non_empty( entry_metadata, \"playlist_count\", 1 ), %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ), -1 ), 6 ) }",
|
"playlist_index_reversed_padded6": "{ %pad_zero( playlist_index_reversed, 6 ) }",
|
||||||
"playlist_index_reversed_padded6_sanitized": "{ %sanitize( %pad_zero( %sub( %map_get_non_empty( entry_metadata, \"playlist_count\", 1 ), %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ), -1 ), 6 ) ) }",
|
"playlist_index_reversed_padded6_sanitized": "{ %sanitize( playlist_index_reversed_padded6 ) }",
|
||||||
"playlist_index_reversed_padded_sanitized": "{ %sanitize( %pad_zero( %sub( %map_get_non_empty( entry_metadata, \"playlist_count\", 1 ), %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ), -1 ), 2 ) ) }",
|
"playlist_index_reversed_padded_sanitized": "{ %sanitize( playlist_index_reversed_padded ) }",
|
||||||
"playlist_index_reversed_sanitized": "{ %sanitize( %sub( %map_get_non_empty( entry_metadata, \"playlist_count\", 1 ), %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ), -1 ) ) }",
|
"playlist_index_reversed_sanitized": "{ %sanitize( playlist_index_reversed ) }",
|
||||||
"playlist_index_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"playlist_index\", 1 ) ) }",
|
"playlist_index_sanitized": "{ %sanitize( playlist_index ) }",
|
||||||
"playlist_max_upload_date": "{ %array_reduce( %if_passthrough( %extract_field_from_siblings( \"upload_date\" ), [ upload_date ] ), %max ) }",
|
"playlist_max_upload_date": "{ %array_reduce( %if_passthrough( %extract_field_from_siblings( \"upload_date\" ), [ upload_date ] ), %max ) }",
|
||||||
"playlist_max_upload_date_sanitized": "{ %sanitize( %array_reduce( %if_passthrough( %extract_field_from_siblings( \"upload_date\" ), [ upload_date ] ), %max ) ) }",
|
"playlist_max_upload_date_sanitized": "{ %sanitize( playlist_max_upload_date ) }",
|
||||||
"playlist_max_upload_year": "{ %int( %map_get( %to_date_metadata( %array_reduce( %if_passthrough( %extract_field_from_siblings( \"upload_date\" ), [ upload_date ] ), %max ) ), \"year\" ) ) }",
|
"playlist_max_upload_year": "{ %int( %map_get( %to_date_metadata( playlist_max_upload_date ), \"year\" ) ) }",
|
||||||
"playlist_max_upload_year_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %array_reduce( %if_passthrough( %extract_field_from_siblings( \"upload_date\" ), [ upload_date ] ), %max ) ), \"year\" ) ) ) }",
|
"playlist_max_upload_year_sanitized": "{ %sanitize( playlist_max_upload_year ) }",
|
||||||
"playlist_max_upload_year_truncated": "{ %int( %map_get( %to_date_metadata( %array_reduce( %if_passthrough( %extract_field_from_siblings( \"upload_date\" ), [ upload_date ] ), %max ) ), \"year_truncated\" ) ) }",
|
"playlist_max_upload_year_truncated": "{ %int( %map_get( %to_date_metadata( playlist_max_upload_date ), \"year_truncated\" ) ) }",
|
||||||
"playlist_max_upload_year_truncated_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %array_reduce( %if_passthrough( %extract_field_from_siblings( \"upload_date\" ), [ upload_date ] ), %max ) ), \"year_truncated\" ) ) ) }",
|
"playlist_max_upload_year_truncated_sanitized": "{ %sanitize( playlist_max_upload_year_truncated ) }",
|
||||||
"playlist_metadata": "{ %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ) }",
|
"playlist_metadata": "{ %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ) }",
|
||||||
"playlist_metadata_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ) ) }",
|
"playlist_metadata_sanitized": "{ %sanitize( playlist_metadata ) }",
|
||||||
"playlist_title": "{ %map_get_non_empty( entry_metadata, \"playlist_title\", %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"playlist_title": "{ %map_get_non_empty( entry_metadata, \"playlist_title\", title ) }",
|
||||||
"playlist_title_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"playlist_title\", %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"playlist_title_sanitized": "{ %sanitize( playlist_title ) }",
|
||||||
"playlist_uid": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"playlist_id\", %map_get( entry_metadata, \"id\" ) ) }",
|
"playlist_uid": "{ %map_get_non_empty( playlist_metadata, \"playlist_id\", uid ) }",
|
||||||
"playlist_uid_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"playlist_id\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"playlist_uid_sanitized": "{ %sanitize( playlist_uid ) }",
|
||||||
"playlist_uploader": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"uploader\", %map_get_non_empty( entry_metadata, \"uploader\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"playlist_uploader": "{ %map_get_non_empty( playlist_metadata, \"uploader\", uploader ) }",
|
||||||
"playlist_uploader_id": "{ %map_get_non_empty( entry_metadata, \"playlist_uploader_id\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"playlist_uploader_id": "{ %map_get_non_empty( entry_metadata, \"playlist_uploader_id\", uploader_id ) }",
|
||||||
"playlist_uploader_id_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"playlist_uploader_id\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"playlist_uploader_id_sanitized": "{ %sanitize( playlist_uploader_id ) }",
|
||||||
"playlist_uploader_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"uploader\", %map_get_non_empty( entry_metadata, \"uploader\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) ) }",
|
"playlist_uploader_sanitized": "{ %sanitize( playlist_uploader ) }",
|
||||||
"playlist_uploader_url": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"uploader_url\", %map_get( entry_metadata, \"webpage_url\" ) ) }",
|
"playlist_uploader_url": "{ %map_get_non_empty( playlist_metadata, \"uploader_url\", webpage_url ) }",
|
||||||
"playlist_uploader_url_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"uploader_url\", %map_get( entry_metadata, \"webpage_url\" ) ) ) }",
|
"playlist_uploader_url_sanitized": "{ %sanitize( playlist_uploader_url ) }",
|
||||||
"playlist_webpage_url": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"webpage_url\", %map_get( entry_metadata, \"webpage_url\" ) ) }",
|
"playlist_webpage_url": "{ %map_get_non_empty( playlist_metadata, \"webpage_url\", webpage_url ) }",
|
||||||
"playlist_webpage_url_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"webpage_url\", %map_get( entry_metadata, \"webpage_url\" ) ) ) }",
|
"playlist_webpage_url_sanitized": "{ %sanitize( playlist_webpage_url ) }",
|
||||||
"release_date": "{ %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) }",
|
"release_date": "{ %map_get_non_empty( entry_metadata, \"release_date\", upload_date ) }",
|
||||||
"release_date_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ) }",
|
"release_date_sanitized": "{ %sanitize( release_date ) }",
|
||||||
"release_date_standardized": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"date_standardized\" ) ) }",
|
"release_date_standardized": "{ %string( %map_get( %to_date_metadata( release_date ), \"date_standardized\" ) ) }",
|
||||||
"release_date_standardized_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"date_standardized\" ) ) ) }",
|
"release_date_standardized_sanitized": "{ %sanitize( release_date_standardized ) }",
|
||||||
"release_day": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day\" ) ) }",
|
"release_day": "{ %int( %map_get( %to_date_metadata( release_date ), \"day\" ) ) }",
|
||||||
"release_day_of_year": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_of_year\" ) ) }",
|
"release_day_of_year": "{ %int( %map_get( %to_date_metadata( release_date ), \"day_of_year\" ) ) }",
|
||||||
"release_day_of_year_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_of_year_padded\" ) ) }",
|
"release_day_of_year_padded": "{ %string( %map_get( %to_date_metadata( release_date ), \"day_of_year_padded\" ) ) }",
|
||||||
"release_day_of_year_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_of_year_padded\" ) ) ) }",
|
"release_day_of_year_padded_sanitized": "{ %sanitize( release_day_of_year_padded ) }",
|
||||||
"release_day_of_year_reversed": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_of_year_reversed\" ) ) }",
|
"release_day_of_year_reversed": "{ %int( %map_get( %to_date_metadata( release_date ), \"day_of_year_reversed\" ) ) }",
|
||||||
"release_day_of_year_reversed_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_of_year_reversed_padded\" ) ) }",
|
"release_day_of_year_reversed_padded": "{ %string( %map_get( %to_date_metadata( release_date ), \"day_of_year_reversed_padded\" ) ) }",
|
||||||
"release_day_of_year_reversed_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_of_year_reversed_padded\" ) ) ) }",
|
"release_day_of_year_reversed_padded_sanitized": "{ %sanitize( release_day_of_year_reversed_padded ) }",
|
||||||
"release_day_of_year_reversed_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_of_year_reversed\" ) ) ) }",
|
"release_day_of_year_reversed_sanitized": "{ %sanitize( release_day_of_year_reversed ) }",
|
||||||
"release_day_of_year_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_of_year\" ) ) ) }",
|
"release_day_of_year_sanitized": "{ %sanitize( release_day_of_year ) }",
|
||||||
"release_day_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_padded\" ) ) }",
|
"release_day_padded": "{ %string( %map_get( %to_date_metadata( release_date ), \"day_padded\" ) ) }",
|
||||||
"release_day_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_padded\" ) ) ) }",
|
"release_day_padded_sanitized": "{ %sanitize( release_day_padded ) }",
|
||||||
"release_day_reversed": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_reversed\" ) ) }",
|
"release_day_reversed": "{ %int( %map_get( %to_date_metadata( release_date ), \"day_reversed\" ) ) }",
|
||||||
"release_day_reversed_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_reversed_padded\" ) ) }",
|
"release_day_reversed_padded": "{ %string( %map_get( %to_date_metadata( release_date ), \"day_reversed_padded\" ) ) }",
|
||||||
"release_day_reversed_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_reversed_padded\" ) ) ) }",
|
"release_day_reversed_padded_sanitized": "{ %sanitize( release_day_reversed_padded ) }",
|
||||||
"release_day_reversed_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day_reversed\" ) ) ) }",
|
"release_day_reversed_sanitized": "{ %sanitize( release_day_reversed ) }",
|
||||||
"release_day_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"day\" ) ) ) }",
|
"release_day_sanitized": "{ %sanitize( release_day ) }",
|
||||||
"release_month": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"month\" ) ) }",
|
"release_month": "{ %int( %map_get( %to_date_metadata( release_date ), \"month\" ) ) }",
|
||||||
"release_month_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"month_padded\" ) ) }",
|
"release_month_padded": "{ %string( %map_get( %to_date_metadata( release_date ), \"month_padded\" ) ) }",
|
||||||
"release_month_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"month_padded\" ) ) ) }",
|
"release_month_padded_sanitized": "{ %sanitize( release_month_padded ) }",
|
||||||
"release_month_reversed": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"month_reversed\" ) ) }",
|
"release_month_reversed": "{ %int( %map_get( %to_date_metadata( release_date ), \"month_reversed\" ) ) }",
|
||||||
"release_month_reversed_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"month_reversed_padded\" ) ) }",
|
"release_month_reversed_padded": "{ %string( %map_get( %to_date_metadata( release_date ), \"month_reversed_padded\" ) ) }",
|
||||||
"release_month_reversed_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"month_reversed_padded\" ) ) ) }",
|
"release_month_reversed_padded_sanitized": "{ %sanitize( release_month_reversed_padded ) }",
|
||||||
"release_month_reversed_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"month_reversed\" ) ) ) }",
|
"release_month_reversed_sanitized": "{ %sanitize( release_month_reversed ) }",
|
||||||
"release_month_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"month\" ) ) ) }",
|
"release_month_sanitized": "{ %sanitize( release_month ) }",
|
||||||
"release_year": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"year\" ) ) }",
|
"release_year": "{ %int( %map_get( %to_date_metadata( release_date ), \"year\" ) ) }",
|
||||||
"release_year_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"year\" ) ) ) }",
|
"release_year_sanitized": "{ %sanitize( release_year ) }",
|
||||||
"release_year_truncated": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"year_truncated\" ) ) }",
|
"release_year_truncated": "{ %int( %map_get( %to_date_metadata( release_date ), \"year_truncated\" ) ) }",
|
||||||
"release_year_truncated_reversed": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"year_truncated_reversed\" ) ) }",
|
"release_year_truncated_reversed": "{ %int( %map_get( %to_date_metadata( release_date ), \"year_truncated_reversed\" ) ) }",
|
||||||
"release_year_truncated_reversed_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"year_truncated_reversed\" ) ) ) }",
|
"release_year_truncated_reversed_sanitized": "{ %sanitize( release_year_truncated_reversed ) }",
|
||||||
"release_year_truncated_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"release_date\", %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) ), \"year_truncated\" ) ) ) }",
|
"release_year_truncated_sanitized": "{ %sanitize( release_year_truncated ) }",
|
||||||
"requested_subtitles": "{ { } }",
|
"requested_subtitles": "{ { } }",
|
||||||
"requested_subtitles_sanitized": "{}",
|
"requested_subtitles_sanitized": "{ %sanitize( requested_subtitles ) }",
|
||||||
"resolution_assert": "{ %if( %and( enable_resolution_assert, %ne( height, 0 ), %not( resolution_assert_is_ignored ) ), %assert( %gte( height, resolution_assert_height_gte ), %concat( \"Entry \", title, \" downloaded at a low resolution (\", resolution_readable, \"), you've probably been throttled. \", \"Stopping further downloads, wait a few hours and try again. \", \"Disable using the override variable `enable_resolution_assert: False`.\" ) ), \"false is no-op\" ) }",
|
"resolution_assert": "{ %if( %and( enable_resolution_assert, %ne( height, 0 ), %not( resolution_assert_is_ignored ) ), %assert( %gte( height, resolution_assert_height_gte ), %concat( \"Entry \", title, \" downloaded at a low resolution (\", resolution_readable, \"), you've probably been throttled. \", \"Stopping further downloads, wait a few hours and try again. \", \"Disable using the override variable `enable_resolution_assert: False`.\" ) ), \"false is no-op\" ) }",
|
||||||
"resolution_assert_height_gte": "{ %int(361) }",
|
"resolution_assert_height_gte": "{ %int(361) }",
|
||||||
"resolution_assert_height_gte_sanitized": "361",
|
"resolution_assert_height_gte_sanitized": "361",
|
||||||
"resolution_assert_ignore_titles": "{ [ ] }",
|
"resolution_assert_ignore_titles": "{ [ ] }",
|
||||||
"resolution_assert_ignore_titles_sanitized": "[]",
|
"resolution_assert_ignore_titles_sanitized": "[]",
|
||||||
"resolution_assert_is_ignored": "{ %print_if_true( %concat( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ), \" has a match in resolution_assert_ignore_titles, skipping resolution assert.\" ), %contains_any( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ), resolution_assert_ignore_titles ) ) }",
|
"resolution_assert_is_ignored": "{ %print_if_true( %concat( title, \" has a match in resolution_assert_ignore_titles, skipping resolution assert.\" ), %contains_any( title, resolution_assert_ignore_titles ) ) }",
|
||||||
"resolution_assert_is_ignored_sanitized": "{ %sanitize( %print_if_true( %concat( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ), \" has a match in resolution_assert_ignore_titles, skipping resolution assert.\" ), %contains_any( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ), resolution_assert_ignore_titles ) ) ) }",
|
"resolution_assert_is_ignored_sanitized": "{ %sanitize( %print_if_true( %concat( title, \" has a match in resolution_assert_ignore_titles, skipping resolution assert.\" ), %contains_any( title, resolution_assert_ignore_titles ) ) ) }",
|
||||||
"resolution_assert_print": "{ %bool(True) }",
|
"resolution_assert_print": "{ %bool(True) }",
|
||||||
"resolution_assert_print_sanitized": "true",
|
"resolution_assert_print_sanitized": "true",
|
||||||
"resolution_assert_sanitized": "{ %sanitize( %if( %and( enable_resolution_assert, %ne( height, 0 ), %not( resolution_assert_is_ignored ) ), %assert( %gte( height, resolution_assert_height_gte ), %concat( \"Entry \", title, \" downloaded at a low resolution (\", resolution_readable, \"), you've probably been throttled. \", \"Stopping further downloads, wait a few hours and try again. \", \"Disable using the override variable `enable_resolution_assert: False`.\" ) ), \"false is no-op\" ) ) }",
|
"resolution_assert_sanitized": "{ %sanitize( %if( %and( enable_resolution_assert, %ne( height, 0 ), %not( resolution_assert_is_ignored ) ), %assert( %gte( height, resolution_assert_height_gte ), %concat( \"Entry \", title, \" downloaded at a low resolution (\", resolution_readable, \"), you've probably been throttled. \", \"Stopping further downloads, wait a few hours and try again. \", \"Disable using the override variable `enable_resolution_assert: False`.\" ) ), \"false is no-op\" ) ) }",
|
||||||
"resolution_readable": "{ %map_get_non_empty( entry_metadata, \"width\", 0 ) }x{ %map_get_non_empty( entry_metadata, \"height\", 0 ) }",
|
"resolution_readable": "{ width }x{ height }",
|
||||||
"resolution_readable_sanitized": "{ %sanitize( %concat( %string( %map_get_non_empty( entry_metadata, \"width\", 0 ) ), \"x\", %string( %map_get_non_empty( entry_metadata, \"height\", 0 ) ) ) ) }",
|
"resolution_readable_sanitized": "{ %sanitize( %concat( %string( width ), \"x\", %string( height ) ) ) }",
|
||||||
"sibling_metadata": "{ %map_get_non_empty( entry_metadata, \"sibling_metadata\", [ ] ) }",
|
"sibling_metadata": "{ %map_get_non_empty( entry_metadata, \"sibling_metadata\", [ ] ) }",
|
||||||
"sibling_metadata_sanitized": "{ %sanitize( sibling_metadata ) }",
|
"sibling_metadata_sanitized": "{ %sanitize( sibling_metadata ) }",
|
||||||
"source_count": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"playlist_count\", 1 ) }",
|
"source_count": "{ %map_get_non_empty( playlist_metadata, \"playlist_count\", 1 ) }",
|
||||||
"source_count_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"playlist_count\", 1 ) ) }",
|
"source_count_sanitized": "{ %sanitize( source_count ) }",
|
||||||
"source_description": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"description\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"description\", %map_get_non_empty( entry_metadata, \"description\", '' ) ) ) }",
|
"source_description": "{ %map_get_non_empty( source_metadata, \"description\", playlist_description ) }",
|
||||||
"source_description_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"description\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"description\", %map_get_non_empty( entry_metadata, \"description\", '' ) ) ) ) }",
|
"source_description_sanitized": "{ %sanitize( source_description ) }",
|
||||||
"source_index": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"playlist_index\", 1 ) }",
|
"source_index": "{ %map_get_non_empty( playlist_metadata, \"playlist_index\", 1 ) }",
|
||||||
"source_index_padded": "{ %pad_zero( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"playlist_index\", 1 ), 2 ) }",
|
"source_index_padded": "{ %pad_zero( source_index, 2 ) }",
|
||||||
"source_index_padded_sanitized": "{ %sanitize( %pad_zero( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"playlist_index\", 1 ), 2 ) ) }",
|
"source_index_padded_sanitized": "{ %sanitize( source_index_padded ) }",
|
||||||
"source_index_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"playlist_index\", 1 ) ) }",
|
"source_index_sanitized": "{ %sanitize( source_index ) }",
|
||||||
"source_metadata": "{ %map_get_non_empty( entry_metadata, \"source_metadata\", { } ) }",
|
"source_metadata": "{ %map_get_non_empty( entry_metadata, \"source_metadata\", { } ) }",
|
||||||
"source_metadata_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ) ) }",
|
"source_metadata_sanitized": "{ %sanitize( source_metadata ) }",
|
||||||
"source_title": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"title\", %map_get_non_empty( entry_metadata, \"playlist_title\", %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"source_title": "{ %map_get_non_empty( source_metadata, \"title\", playlist_title ) }",
|
||||||
"source_title_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"title\", %map_get_non_empty( entry_metadata, \"playlist_title\", %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) ) }",
|
"source_title_sanitized": "{ %sanitize( source_title ) }",
|
||||||
"source_uid": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"id\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"playlist_id\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"source_uid": "{ %map_get_non_empty( source_metadata, \"id\", playlist_uid ) }",
|
||||||
"source_uid_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"id\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"playlist_id\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"source_uid_sanitized": "{ %sanitize( source_uid ) }",
|
||||||
"source_uploader": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"uploader\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"uploader\", %map_get_non_empty( entry_metadata, \"uploader\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) ) }",
|
"source_uploader": "{ %map_get_non_empty( source_metadata, \"uploader\", playlist_uploader ) }",
|
||||||
"source_uploader_id": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"uploader_id\", %map_get_non_empty( entry_metadata, \"playlist_uploader_id\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"source_uploader_id": "{ %map_get_non_empty( source_metadata, \"uploader_id\", playlist_uploader_id ) }",
|
||||||
"source_uploader_id_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"uploader_id\", %map_get_non_empty( entry_metadata, \"playlist_uploader_id\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) ) }",
|
"source_uploader_id_sanitized": "{ %sanitize( source_uploader_id ) }",
|
||||||
"source_uploader_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"uploader\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"uploader\", %map_get_non_empty( entry_metadata, \"uploader\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) ) ) }",
|
"source_uploader_sanitized": "{ %sanitize( source_uploader ) }",
|
||||||
"source_uploader_url": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"uploader_url\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"webpage_url\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"webpage_url\", %map_get( entry_metadata, \"webpage_url\" ) ) ) ) }",
|
"source_uploader_url": "{ %map_get_non_empty( source_metadata, \"uploader_url\", source_webpage_url ) }",
|
||||||
"source_uploader_url_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"uploader_url\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"webpage_url\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"webpage_url\", %map_get( entry_metadata, \"webpage_url\" ) ) ) ) ) }",
|
"source_uploader_url_sanitized": "{ %sanitize( source_uploader_url ) }",
|
||||||
"source_webpage_url": "{ %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"webpage_url\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"webpage_url\", %map_get( entry_metadata, \"webpage_url\" ) ) ) }",
|
"source_webpage_url": "{ %map_get_non_empty( source_metadata, \"webpage_url\", playlist_webpage_url ) }",
|
||||||
"source_webpage_url_sanitized": "{ %sanitize( %map_get_non_empty( %map_get_non_empty( entry_metadata, \"source_metadata\", { } ), \"webpage_url\", %map_get_non_empty( %map_get_non_empty( entry_metadata, \"playlist_metadata\", { } ), \"webpage_url\", %map_get( entry_metadata, \"webpage_url\" ) ) ) ) }",
|
"source_webpage_url_sanitized": "{ %sanitize( source_webpage_url ) }",
|
||||||
"sponsorblock_chapters": "{ [ ] }",
|
"sponsorblock_chapters": "{ [ ] }",
|
||||||
"sponsorblock_chapters_sanitized": "[]",
|
"sponsorblock_chapters_sanitized": "{ %sanitize( sponsorblock_chapters ) }",
|
||||||
"subscription_array": "{ [ \"https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc\" ] }",
|
"subscription_array": "{ [ \"https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc\" ] }",
|
||||||
"subscription_array_sanitized": "[\uff02https\uff1a\u29f8\u29f8www.youtube.com\u29f8playlist\uff1flist=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc\uff02]",
|
"subscription_array_sanitized": "[\uff02https\uff1a\u29f8\u29f8www.youtube.com\u29f8playlist\uff1flist=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc\uff02]",
|
||||||
"subscription_has_download_archive": "{ %bool(False) }",
|
"subscription_has_download_archive": "{ %bool(False) }",
|
||||||
|
|
@ -207,62 +207,62 @@
|
||||||
"subscription_value_sanitized": "https\uff1a\u29f8\u29f8www.youtube.com\u29f8playlist\uff1flist=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc",
|
"subscription_value_sanitized": "https\uff1a\u29f8\u29f8www.youtube.com\u29f8playlist\uff1flist=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc",
|
||||||
"thumbnail_ext": "jpg",
|
"thumbnail_ext": "jpg",
|
||||||
"thumbnail_ext_sanitized": "jpg",
|
"thumbnail_ext_sanitized": "jpg",
|
||||||
"title": "{ %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) }",
|
"title": "{ %map_get_non_empty( entry_metadata, \"title\", uid ) }",
|
||||||
"title_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"title_sanitized": "{ %sanitize( title ) }",
|
||||||
"title_sanitized_plex": "{ %sanitize_plex_episode( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"title_sanitized_plex": "{ %sanitize_plex_episode( title ) }",
|
||||||
"title_sanitized_plex_sanitized": "{ %sanitize( %sanitize_plex_episode( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"title_sanitized_plex_sanitized": "{ %sanitize( title_sanitized_plex ) }",
|
||||||
"uid": "{ %map_get( entry_metadata, \"id\" ) }",
|
"uid": "{ %map_get( entry_metadata, \"id\" ) }",
|
||||||
"uid_sanitized": "{ %sanitize( %map_get( entry_metadata, \"id\" ) ) }",
|
"uid_sanitized": "{ %sanitize( uid ) }",
|
||||||
"uid_sanitized_plex": "{ %sanitize_plex_episode( %map_get( entry_metadata, \"id\" ) ) }",
|
"uid_sanitized_plex": "{ %sanitize_plex_episode( uid ) }",
|
||||||
"uid_sanitized_plex_sanitized": "{ %sanitize( %sanitize_plex_episode( %map_get( entry_metadata, \"id\" ) ) ) }",
|
"uid_sanitized_plex_sanitized": "{ %sanitize( uid_sanitized_plex ) }",
|
||||||
"upload_date": "{ %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) }",
|
"upload_date": "{ %map_get_non_empty( entry_metadata, \"upload_date\", epoch_date ) }",
|
||||||
"upload_date_index": "{ %int( 1 ) }",
|
"upload_date_index": "{ %int( 1 ) }",
|
||||||
"upload_date_index_padded": "01",
|
"upload_date_index_padded": "{ %pad_zero( upload_date_index, 2 ) }",
|
||||||
"upload_date_index_padded_sanitized": "01",
|
"upload_date_index_padded_sanitized": "{ %sanitize( upload_date_index_padded ) }",
|
||||||
"upload_date_index_reversed": "{ %int(99) }",
|
"upload_date_index_reversed": "{ %sub( 100, upload_date_index ) }",
|
||||||
"upload_date_index_reversed_padded": "99",
|
"upload_date_index_reversed_padded": "{ %pad_zero( upload_date_index_reversed, 2 ) }",
|
||||||
"upload_date_index_reversed_padded_sanitized": "99",
|
"upload_date_index_reversed_padded_sanitized": "{ %sanitize( upload_date_index_reversed_padded ) }",
|
||||||
"upload_date_index_reversed_sanitized": "99",
|
"upload_date_index_reversed_sanitized": "{ %sanitize( upload_date_index_reversed ) }",
|
||||||
"upload_date_index_sanitized": "1",
|
"upload_date_index_sanitized": "{ %sanitize( upload_date_index ) }",
|
||||||
"upload_date_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ) }",
|
"upload_date_sanitized": "{ %sanitize( upload_date ) }",
|
||||||
"upload_date_standardized": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"date_standardized\" ) ) }",
|
"upload_date_standardized": "{ %string( %map_get( %to_date_metadata( upload_date ), \"date_standardized\" ) ) }",
|
||||||
"upload_date_standardized_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"date_standardized\" ) ) ) }",
|
"upload_date_standardized_sanitized": "{ %sanitize( upload_date_standardized ) }",
|
||||||
"upload_day": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day\" ) ) }",
|
"upload_day": "{ %int( %map_get( %to_date_metadata( upload_date ), \"day\" ) ) }",
|
||||||
"upload_day_of_year": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_of_year\" ) ) }",
|
"upload_day_of_year": "{ %int( %map_get( %to_date_metadata( upload_date ), \"day_of_year\" ) ) }",
|
||||||
"upload_day_of_year_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_of_year_padded\" ) ) }",
|
"upload_day_of_year_padded": "{ %string( %map_get( %to_date_metadata( upload_date ), \"day_of_year_padded\" ) ) }",
|
||||||
"upload_day_of_year_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_of_year_padded\" ) ) ) }",
|
"upload_day_of_year_padded_sanitized": "{ %sanitize( upload_day_of_year_padded ) }",
|
||||||
"upload_day_of_year_reversed": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_of_year_reversed\" ) ) }",
|
"upload_day_of_year_reversed": "{ %int( %map_get( %to_date_metadata( upload_date ), \"day_of_year_reversed\" ) ) }",
|
||||||
"upload_day_of_year_reversed_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_of_year_reversed_padded\" ) ) }",
|
"upload_day_of_year_reversed_padded": "{ %string( %map_get( %to_date_metadata( upload_date ), \"day_of_year_reversed_padded\" ) ) }",
|
||||||
"upload_day_of_year_reversed_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_of_year_reversed_padded\" ) ) ) }",
|
"upload_day_of_year_reversed_padded_sanitized": "{ %sanitize( upload_day_of_year_reversed_padded ) }",
|
||||||
"upload_day_of_year_reversed_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_of_year_reversed\" ) ) ) }",
|
"upload_day_of_year_reversed_sanitized": "{ %sanitize( upload_day_of_year_reversed ) }",
|
||||||
"upload_day_of_year_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_of_year\" ) ) ) }",
|
"upload_day_of_year_sanitized": "{ %sanitize( upload_day_of_year ) }",
|
||||||
"upload_day_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_padded\" ) ) }",
|
"upload_day_padded": "{ %string( %map_get( %to_date_metadata( upload_date ), \"day_padded\" ) ) }",
|
||||||
"upload_day_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_padded\" ) ) ) }",
|
"upload_day_padded_sanitized": "{ %sanitize( upload_day_padded ) }",
|
||||||
"upload_day_reversed": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_reversed\" ) ) }",
|
"upload_day_reversed": "{ %int( %map_get( %to_date_metadata( upload_date ), \"day_reversed\" ) ) }",
|
||||||
"upload_day_reversed_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_reversed_padded\" ) ) }",
|
"upload_day_reversed_padded": "{ %string( %map_get( %to_date_metadata( upload_date ), \"day_reversed_padded\" ) ) }",
|
||||||
"upload_day_reversed_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_reversed_padded\" ) ) ) }",
|
"upload_day_reversed_padded_sanitized": "{ %sanitize( upload_day_reversed_padded ) }",
|
||||||
"upload_day_reversed_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_reversed\" ) ) ) }",
|
"upload_day_reversed_sanitized": "{ %sanitize( upload_day_reversed ) }",
|
||||||
"upload_day_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day\" ) ) ) }",
|
"upload_day_sanitized": "{ %sanitize( upload_day ) }",
|
||||||
"upload_month": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month\" ) ) }",
|
"upload_month": "{ %int( %map_get( %to_date_metadata( upload_date ), \"month\" ) ) }",
|
||||||
"upload_month_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month_padded\" ) ) }",
|
"upload_month_padded": "{ %string( %map_get( %to_date_metadata( upload_date ), \"month_padded\" ) ) }",
|
||||||
"upload_month_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month_padded\" ) ) ) }",
|
"upload_month_padded_sanitized": "{ %sanitize( upload_month_padded ) }",
|
||||||
"upload_month_reversed": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month_reversed\" ) ) }",
|
"upload_month_reversed": "{ %int( %map_get( %to_date_metadata( upload_date ), \"month_reversed\" ) ) }",
|
||||||
"upload_month_reversed_padded": "{ %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month_reversed_padded\" ) ) }",
|
"upload_month_reversed_padded": "{ %string( %map_get( %to_date_metadata( upload_date ), \"month_reversed_padded\" ) ) }",
|
||||||
"upload_month_reversed_padded_sanitized": "{ %sanitize( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month_reversed_padded\" ) ) ) }",
|
"upload_month_reversed_padded_sanitized": "{ %sanitize( upload_month_reversed_padded ) }",
|
||||||
"upload_month_reversed_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month_reversed\" ) ) ) }",
|
"upload_month_reversed_sanitized": "{ %sanitize( upload_month_reversed ) }",
|
||||||
"upload_month_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month\" ) ) ) }",
|
"upload_month_sanitized": "{ %sanitize( upload_month ) }",
|
||||||
"upload_year": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"year\" ) ) }",
|
"upload_year": "{ %int( %map_get( %to_date_metadata( upload_date ), \"year\" ) ) }",
|
||||||
"upload_year_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"year\" ) ) ) }",
|
"upload_year_sanitized": "{ %sanitize( upload_year ) }",
|
||||||
"upload_year_truncated": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"year_truncated\" ) ) }",
|
"upload_year_truncated": "{ %int( %map_get( %to_date_metadata( upload_date ), \"year_truncated\" ) ) }",
|
||||||
"upload_year_truncated_reversed": "{ %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"year_truncated_reversed\" ) ) }",
|
"upload_year_truncated_reversed": "{ %int( %map_get( %to_date_metadata( upload_date ), \"year_truncated_reversed\" ) ) }",
|
||||||
"upload_year_truncated_reversed_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"year_truncated_reversed\" ) ) ) }",
|
"upload_year_truncated_reversed_sanitized": "{ %sanitize( upload_year_truncated_reversed ) }",
|
||||||
"upload_year_truncated_sanitized": "{ %sanitize( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"year_truncated\" ) ) ) }",
|
"upload_year_truncated_sanitized": "{ %sanitize( upload_year_truncated ) }",
|
||||||
"uploader": "{ %map_get_non_empty( entry_metadata, \"uploader\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"uploader": "{ %map_get_non_empty( entry_metadata, \"uploader\", uploader_id ) }",
|
||||||
"uploader_id": "{ %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) }",
|
"uploader_id": "{ %map_get_non_empty( entry_metadata, \"uploader_id\", uid ) }",
|
||||||
"uploader_id_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"uploader_id_sanitized": "{ %sanitize( uploader_id ) }",
|
||||||
"uploader_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"uploader\", %map_get_non_empty( entry_metadata, \"uploader_id\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"uploader_sanitized": "{ %sanitize( uploader ) }",
|
||||||
"uploader_url": "{ %map_get_non_empty( entry_metadata, \"uploader_url\", %map_get( entry_metadata, \"webpage_url\" ) ) }",
|
"uploader_url": "{ %map_get_non_empty( entry_metadata, \"uploader_url\", webpage_url ) }",
|
||||||
"uploader_url_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"uploader_url\", %map_get( entry_metadata, \"webpage_url\" ) ) ) }",
|
"uploader_url_sanitized": "{ %sanitize( uploader_url ) }",
|
||||||
"url": "https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc",
|
"url": "https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc",
|
||||||
"url10": "",
|
"url10": "",
|
||||||
"url100": "",
|
"url100": "",
|
||||||
|
|
@ -466,15 +466,15 @@
|
||||||
"urls": "{ [ \"https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc\", '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '' ] }",
|
"urls": "{ [ \"https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc\", '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '' ] }",
|
||||||
"urls_sanitized": "[\uff02https\uff1a\u29f8\u29f8www.youtube.com\u29f8playlist\uff1flist=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02]",
|
"urls_sanitized": "[\uff02https\uff1a\u29f8\u29f8www.youtube.com\u29f8playlist\uff1flist=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02, \uff02\uff02]",
|
||||||
"webpage_url": "{ %map_get( entry_metadata, \"webpage_url\" ) }",
|
"webpage_url": "{ %map_get( entry_metadata, \"webpage_url\" ) }",
|
||||||
"webpage_url_sanitized": "{ %sanitize( %map_get( entry_metadata, \"webpage_url\" ) ) }",
|
"webpage_url_sanitized": "{ %sanitize( webpage_url ) }",
|
||||||
"width": "{ %map_get_non_empty( entry_metadata, \"width\", 0 ) }",
|
"width": "{ %map_get_non_empty( entry_metadata, \"width\", 0 ) }",
|
||||||
"width_sanitized": "{ %sanitize( %map_get_non_empty( entry_metadata, \"width\", 0 ) ) }",
|
"width_sanitized": "{ %sanitize( width ) }",
|
||||||
"ytdl_sub_entry_date_eval": "{ %string( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"date_standardized\" ) ) ) }",
|
"ytdl_sub_entry_date_eval": "{ %string( upload_date_standardized ) }",
|
||||||
"ytdl_sub_entry_date_eval_sanitized": "{ %sanitize( %string( %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"date_standardized\" ) ) ) ) }",
|
"ytdl_sub_entry_date_eval_sanitized": "{ %sanitize( ytdl_sub_entry_date_eval ) }",
|
||||||
"ytdl_sub_input_url": "",
|
"ytdl_sub_input_url": "{ %string( '' ) }",
|
||||||
"ytdl_sub_input_url_count": "{ %int( 0 ) }",
|
"ytdl_sub_input_url_count": "{ %int( 0 ) }",
|
||||||
"ytdl_sub_input_url_count_sanitized": "0",
|
"ytdl_sub_input_url_count_sanitized": "{ %sanitize( ytdl_sub_input_url_count ) }",
|
||||||
"ytdl_sub_input_url_index": "{ %int( -1 ) }",
|
"ytdl_sub_input_url_index": "{ %int( -1 ) }",
|
||||||
"ytdl_sub_input_url_index_sanitized": "-1",
|
"ytdl_sub_input_url_index_sanitized": "{ %sanitize( ytdl_sub_input_url_index ) }",
|
||||||
"ytdl_sub_input_url_sanitized": ""
|
"ytdl_sub_input_url_sanitized": "{ %sanitize( ytdl_sub_input_url ) }"
|
||||||
}
|
}
|
||||||
|
|
@ -6,27 +6,27 @@
|
||||||
"enable_bilateral_scraping": "{ %bool(True) }",
|
"enable_bilateral_scraping": "{ %bool(True) }",
|
||||||
"enable_resolution_assert": "{ %bool(True) }",
|
"enable_resolution_assert": "{ %bool(True) }",
|
||||||
"enable_throttle_protection": "{ %bool(True) }",
|
"enable_throttle_protection": "{ %bool(True) }",
|
||||||
"file_title": "{ %sanitize_plex_episode( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"file_title": "{ title_sanitized_plex }",
|
||||||
"file_uid": "{ %sanitize_plex_episode( %map_get( entry_metadata, \"id\" ) ) }",
|
"file_uid": "{ uid_sanitized_plex }",
|
||||||
"include_sibling_metadata": "{ %bool(False) }",
|
"include_sibling_metadata": "{ %bool(False) }",
|
||||||
"modified_webpage_url": "{ %map_get( entry_metadata, \"webpage_url\" ) }",
|
"modified_webpage_url": "{ webpage_url }",
|
||||||
"music_video_album": "Music Videos",
|
"music_video_album": "{ %get_url_field( \"category\", music_video_album_default ) }",
|
||||||
"music_video_album_default": "Music Videos",
|
"music_video_album_default": "Music Videos",
|
||||||
"music_video_artist": "Rick Astley",
|
"music_video_artist": "Rick Astley",
|
||||||
"music_video_date": "{ %elif( %contains_url_field( \"date\" ), %get_url_field( \"date\", upload_date_standardized ), %contains_url_field( \"year\" ), %concat( %get_url_field( \"date\", upload_year ), \"-01-01\" ), upload_date_standardized ) }",
|
"music_video_date": "{ %elif( %contains_url_field( \"date\" ), %get_url_field( \"date\", upload_date_standardized ), %contains_url_field( \"year\" ), %concat( %get_url_field( \"date\", upload_year ), \"-01-01\" ), upload_date_standardized ) }",
|
||||||
"music_video_directory": "tv_show_directory_path",
|
"music_video_directory": "tv_show_directory_path",
|
||||||
"music_video_file_name": "Rick Astley/{ %sanitize( %get_url_field( \"title\", %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"music_video_file_name": "Rick Astley/{ %sanitize( %get_url_field( \"title\", title ) ) }",
|
||||||
"music_video_file_name_suffix": "",
|
"music_video_file_name_suffix": "",
|
||||||
"music_video_genre": "Pop",
|
"music_video_genre": "Pop",
|
||||||
"music_video_genre_default": "ytdl-sub",
|
"music_video_genre_default": "ytdl-sub",
|
||||||
"music_video_title": "{ %get_url_field( \"title\", %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) }",
|
"music_video_title": "{ %get_url_field( \"title\", title ) }",
|
||||||
"music_video_year": "{ %int( %elif( %contains_url_field( \"date\" ), %slice( %get_url_field( \"date\", upload_date_standardized ), 0, 4 ), %contains_url_field( \"year\" ), %get_url_field( \"date\", upload_year ), upload_year ) ) }",
|
"music_video_year": "{ %int( %elif( %contains_url_field( \"date\" ), %slice( %get_url_field( \"date\", upload_date_standardized ), 0, 4 ), %contains_url_field( \"year\" ), %get_url_field( \"date\", upload_year ), upload_year ) ) }",
|
||||||
"resolution_assert": "{ %if( %and( enable_resolution_assert, %ne( height, 0 ), %not( resolution_assert_is_ignored ) ), %assert( %gte( height, resolution_assert_height_gte ), %concat( \"Entry \", title, \" downloaded at a low resolution (\", resolution_readable, \"), you've probably been throttled. \", \"Stopping further downloads, wait a few hours and try again. \", \"Disable using the override variable `enable_resolution_assert: False`.\" ) ), \"false is no-op\" ) }",
|
"resolution_assert": "{ %if( %and( enable_resolution_assert, %ne( height, 0 ), %not( resolution_assert_is_ignored ) ), %assert( %gte( height, resolution_assert_height_gte ), %concat( \"Entry \", title, \" downloaded at a low resolution (\", resolution_readable, \"), you've probably been throttled. \", \"Stopping further downloads, wait a few hours and try again. \", \"Disable using the override variable `enable_resolution_assert: False`.\" ) ), \"false is no-op\" ) }",
|
||||||
"resolution_assert_height_gte": "{ %int(361) }",
|
"resolution_assert_height_gte": "{ %int(361) }",
|
||||||
"resolution_assert_ignore_titles": "{ [ ] }",
|
"resolution_assert_ignore_titles": "{ [ ] }",
|
||||||
"resolution_assert_is_ignored": "{ %print_if_true( %concat( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ), \" has a match in resolution_assert_ignore_titles, skipping resolution assert.\" ), %contains_any( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ), resolution_assert_ignore_titles ) ) }",
|
"resolution_assert_is_ignored": "{ %print_if_true( %concat( title, \" has a match in resolution_assert_ignore_titles, skipping resolution assert.\" ), %contains_any( title, resolution_assert_ignore_titles ) ) }",
|
||||||
"resolution_assert_print": "{ %bool(True) }",
|
"resolution_assert_print": "{ %bool(True) }",
|
||||||
"resolution_readable": "{ %map_get_non_empty( entry_metadata, \"width\", 0 ) }x{ %map_get_non_empty( entry_metadata, \"height\", 0 ) }",
|
"resolution_readable": "{ width }x{ height }",
|
||||||
"subscription_array": "{ [ \"https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc\" ] }",
|
"subscription_array": "{ [ \"https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc\" ] }",
|
||||||
"subscription_indent_1": "Pop",
|
"subscription_indent_1": "Pop",
|
||||||
"subscription_map": "{ { } }",
|
"subscription_map": "{ { } }",
|
||||||
|
|
|
||||||
|
|
@ -227,8 +227,8 @@
|
||||||
"title_sanitized_plex_sanitized": "{ %sanitize( %sanitize_plex_episode( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
"title_sanitized_plex_sanitized": "{ %sanitize( %sanitize_plex_episode( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) }",
|
||||||
"tv_show_by_date_episode_ordering": "upload-month-day",
|
"tv_show_by_date_episode_ordering": "upload-month-day",
|
||||||
"tv_show_by_date_episode_ordering_sanitized": "upload-month-day",
|
"tv_show_by_date_episode_ordering_sanitized": "upload-month-day",
|
||||||
"tv_show_by_date_ordering_pair_validation_": "{ %assert_then( %or( %ordering_pair_eq( \"upload-year\", \"upload-month-day\" ), %ordering_pair_eq( \"upload-year\", \"upload-month-day-reversed\" ), %ordering_pair_eq( \"upload-year\", \"download-index\" ), %ordering_pair_eq( \"upload-year-month\", \"upload-day\" ), %ordering_pair_eq( \"release-year\", \"release-month-day\" ), %ordering_pair_eq( \"release-year\", \"release-month-day-reversed\" ), %ordering_pair_eq( \"release-year\", \"download-index\" ), %ordering_pair_eq( \"release-year-month\", \"release-day\" ) ), episode_number_and_padded_, \"Detected incompatibility between tv_show_by_date_season_ordering and tv_show_by_date_episode_ordering. Ensure you are not using both upload and release date, and that the year/month/day are included in the combined season and episode.\" ) }",
|
"tv_show_by_date_ordering_pair_validation_": "{ [ %concat( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month\" ) ), %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_padded\" ) ), upload_date_index_padded ), 6 ] }",
|
||||||
"tv_show_by_date_ordering_pair_validation__sanitized": "{ %sanitize( %assert_then( %or( %ordering_pair_eq( \"upload-year\", \"upload-month-day\" ), %ordering_pair_eq( \"upload-year\", \"upload-month-day-reversed\" ), %ordering_pair_eq( \"upload-year\", \"download-index\" ), %ordering_pair_eq( \"upload-year-month\", \"upload-day\" ), %ordering_pair_eq( \"release-year\", \"release-month-day\" ), %ordering_pair_eq( \"release-year\", \"release-month-day-reversed\" ), %ordering_pair_eq( \"release-year\", \"download-index\" ), %ordering_pair_eq( \"release-year-month\", \"release-day\" ) ), episode_number_and_padded_, \"Detected incompatibility between tv_show_by_date_season_ordering and tv_show_by_date_episode_ordering. Ensure you are not using both upload and release date, and that the year/month/day are included in the combined season and episode.\" ) ) }",
|
"tv_show_by_date_ordering_pair_validation__sanitized": "{ %sanitize( [ %concat( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month\" ) ), %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_padded\" ) ), upload_date_index_padded ), 6 ] ) }",
|
||||||
"tv_show_by_date_season_ordering": "upload-year",
|
"tv_show_by_date_season_ordering": "upload-year",
|
||||||
"tv_show_by_date_season_ordering_sanitized": "upload-year",
|
"tv_show_by_date_season_ordering_sanitized": "upload-year",
|
||||||
"tv_show_content_rating": "TV-14",
|
"tv_show_content_rating": "TV-14",
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@
|
||||||
"subscription_value_1": "https://www.youtube.com/@novapbs",
|
"subscription_value_1": "https://www.youtube.com/@novapbs",
|
||||||
"thumbnail_file_name": "{ %concat( %string( %sanitize( %concat( \"Season \", %string( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"year\" ) ) ) ) ) ), \"/\", %string( %sanitize( %concat( \"s\", %string( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"year\" ) ) ), \".e\", %string( %pad_zero( %int( %concat( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month\" ) ), %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_padded\" ) ), upload_date_index_padded ) ), 6 ) ), \" - \", %string( %sanitize_plex_episode( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) ) ) ) ) }-thumb.jpg",
|
"thumbnail_file_name": "{ %concat( %string( %sanitize( %concat( \"Season \", %string( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"year\" ) ) ) ) ) ), \"/\", %string( %sanitize( %concat( \"s\", %string( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"year\" ) ) ), \".e\", %string( %pad_zero( %int( %concat( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month\" ) ), %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_padded\" ) ), upload_date_index_padded ) ), 6 ) ), \" - \", %string( %sanitize_plex_episode( %map_get_non_empty( entry_metadata, \"title\", %map_get( entry_metadata, \"id\" ) ) ) ) ) ) ) ) }-thumb.jpg",
|
||||||
"tv_show_by_date_episode_ordering": "upload-month-day",
|
"tv_show_by_date_episode_ordering": "upload-month-day",
|
||||||
"tv_show_by_date_ordering_pair_validation_": "{ %assert_then( %or( %ordering_pair_eq( \"upload-year\", \"upload-month-day\" ), %ordering_pair_eq( \"upload-year\", \"upload-month-day-reversed\" ), %ordering_pair_eq( \"upload-year\", \"download-index\" ), %ordering_pair_eq( \"upload-year-month\", \"upload-day\" ), %ordering_pair_eq( \"release-year\", \"release-month-day\" ), %ordering_pair_eq( \"release-year\", \"release-month-day-reversed\" ), %ordering_pair_eq( \"release-year\", \"download-index\" ), %ordering_pair_eq( \"release-year-month\", \"release-day\" ) ), episode_number_and_padded_, \"Detected incompatibility between tv_show_by_date_season_ordering and tv_show_by_date_episode_ordering. Ensure you are not using both upload and release date, and that the year/month/day are included in the combined season and episode.\" ) }",
|
"tv_show_by_date_ordering_pair_validation_": "{ [ %concat( %int( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"month\" ) ), %string( %map_get( %to_date_metadata( %map_get_non_empty( entry_metadata, \"upload_date\", %datetime_strftime( %map_get( entry_metadata, \"epoch\" ), \"%Y%m%d\" ) ) ), \"day_padded\" ) ), upload_date_index_padded ), 6 ] }",
|
||||||
"tv_show_by_date_season_ordering": "upload-year",
|
"tv_show_by_date_season_ordering": "upload-year",
|
||||||
"tv_show_content_rating": "TV-14",
|
"tv_show_content_rating": "TV-14",
|
||||||
"tv_show_content_rating_default": "TV-14",
|
"tv_show_content_rating_default": "TV-14",
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue