chore: added more @spec
This commit is contained in:
@@ -39,64 +39,93 @@ defmodule BDS.Scripting.Capabilities do
|
||||
projects: %{
|
||||
create: zero_or_one_arg(fn attrs -> create_project(attrs) end),
|
||||
delete: one_arg(fn project_id_to_delete -> delete_project(project_id_to_delete) end),
|
||||
delete_with_data: one_arg(fn project_id_to_delete -> delete_project_with_data(project_id_to_delete) end),
|
||||
delete_with_data:
|
||||
one_arg(fn project_id_to_delete -> delete_project_with_data(project_id_to_delete) end),
|
||||
get: one_arg(fn project_id_to_load -> load_project(project_id_to_load) end),
|
||||
get_all: zero_or_one_arg(fn _args -> list_projects() end),
|
||||
get_active: zero_or_one_arg(fn _args -> load_project(project_id) end),
|
||||
set_active: one_arg(fn project_id_to_activate -> set_active_project(project_id_to_activate) end),
|
||||
update: two_arg(fn project_id_to_update, attrs -> update_project(project_id_to_update, attrs) end)
|
||||
set_active:
|
||||
one_arg(fn project_id_to_activate -> set_active_project(project_id_to_activate) end),
|
||||
update:
|
||||
two_arg(fn project_id_to_update, attrs ->
|
||||
update_project(project_id_to_update, attrs)
|
||||
end)
|
||||
},
|
||||
meta: %{
|
||||
get_project_metadata: zero_or_one_arg(fn _args -> load_metadata(project_id) end),
|
||||
update_project_metadata: one_arg(fn attrs -> update_project_metadata(project_id, attrs) end),
|
||||
update_project_metadata:
|
||||
one_arg(fn attrs -> update_project_metadata(project_id, attrs) end),
|
||||
add_category: one_arg(fn name -> add_category(project_id, name) end),
|
||||
remove_category: one_arg(fn name -> remove_category(project_id, name) end),
|
||||
add_tag: one_arg(fn name -> add_meta_tag(project_id, name) end),
|
||||
get_categories: zero_or_one_arg(fn _args -> metadata_categories(project_id) end),
|
||||
set_project_metadata: one_arg(fn attrs -> update_project_metadata(project_id, attrs) end),
|
||||
get_publishing_preferences: zero_or_one_arg(fn _args -> publishing_preferences(project_id) end),
|
||||
get_publishing_preferences:
|
||||
zero_or_one_arg(fn _args -> publishing_preferences(project_id) end),
|
||||
get_tags: zero_or_one_arg(fn _args -> metadata_tags(project_id) end),
|
||||
remove_tag: one_arg(fn name -> remove_meta_tag(project_id, name) end),
|
||||
set_publishing_preferences: one_arg(fn prefs -> set_publishing_preferences(project_id, prefs) end),
|
||||
clear_publishing_preferences: zero_or_one_arg(fn _args -> clear_publishing_preferences(project_id) end),
|
||||
set_publishing_preferences:
|
||||
one_arg(fn prefs -> set_publishing_preferences(project_id, prefs) end),
|
||||
clear_publishing_preferences:
|
||||
zero_or_one_arg(fn _args -> clear_publishing_preferences(project_id) end),
|
||||
sync_on_startup: zero_or_one_arg(fn _args -> sync_meta_on_startup(project_id) end)
|
||||
},
|
||||
posts: %{
|
||||
create: one_arg(fn attrs -> create_post(project_id, attrs) end),
|
||||
discard: one_arg(fn post_id -> discard_post(project_id, post_id) end),
|
||||
filter: one_arg(fn filters -> filter_posts(project_id, filters) end),
|
||||
generate_unique_slug: two_arg(fn title, exclude_post_id -> generate_unique_post_slug(project_id, title, exclude_post_id) end),
|
||||
generate_unique_slug:
|
||||
two_arg(fn title, exclude_post_id ->
|
||||
generate_unique_post_slug(project_id, title, exclude_post_id)
|
||||
end),
|
||||
get_by_status: one_arg(fn status -> posts_by_status(project_id, status) end),
|
||||
get_by_year_month: zero_or_one_arg(fn _args -> post_counts_by_year_month(project_id) end),
|
||||
get_dashboard_stats: zero_or_one_arg(fn _args -> post_dashboard_stats(project_id) end),
|
||||
get_linked_by: one_arg(fn post_id -> linked_posts_for(project_id, post_id, :incoming) end),
|
||||
get_linked_by:
|
||||
one_arg(fn post_id -> linked_posts_for(project_id, post_id, :incoming) end),
|
||||
get_links_to: one_arg(fn post_id -> linked_posts_for(project_id, post_id, :outgoing) end),
|
||||
get_preview_url: two_arg(fn post_id, options -> preview_url(project_id, post_id, options) end),
|
||||
get_preview_url:
|
||||
two_arg(fn post_id, options -> preview_url(project_id, post_id, options) end),
|
||||
update: two_arg(fn post_id, attrs -> update_post(project_id, post_id, attrs) end),
|
||||
delete: one_arg(fn post_id -> delete_post(project_id, post_id) end),
|
||||
get: one_arg(fn post_id -> load_post(project_id, post_id) end),
|
||||
get_all: zero_or_one_arg(fn _args -> list_posts(project_id) end),
|
||||
get_by_slug: one_arg(fn slug -> load_post_by_slug(project_id, slug) end),
|
||||
get_categories: zero_or_one_arg(fn _args -> post_categories(project_id) end),
|
||||
get_categories_with_counts: zero_or_one_arg(fn _args -> post_categories_with_counts(project_id) end),
|
||||
get_categories_with_counts:
|
||||
zero_or_one_arg(fn _args -> post_categories_with_counts(project_id) end),
|
||||
get_tags: zero_or_one_arg(fn _args -> post_tags(project_id) end),
|
||||
get_tags_with_counts: zero_or_one_arg(fn _args -> post_tags_with_counts(project_id) end),
|
||||
get_translation: two_arg(fn post_id, language -> load_post_translation(project_id, post_id, language) end),
|
||||
get_translation:
|
||||
two_arg(fn post_id, language ->
|
||||
load_post_translation(project_id, post_id, language)
|
||||
end),
|
||||
get_translations: one_arg(fn post_id -> list_post_translations(project_id, post_id) end),
|
||||
has_published_version: one_arg(fn post_id -> has_published_post_version(project_id, post_id) end),
|
||||
is_slug_available: two_arg(fn slug, exclude_post_id -> post_slug_available?(project_id, slug, exclude_post_id) end),
|
||||
has_published_version:
|
||||
one_arg(fn post_id -> has_published_post_version(project_id, post_id) end),
|
||||
is_slug_available:
|
||||
two_arg(fn slug, exclude_post_id ->
|
||||
post_slug_available?(project_id, slug, exclude_post_id)
|
||||
end),
|
||||
publish: one_arg(fn post_id -> publish_post(project_id, post_id) end),
|
||||
publish_translation: two_arg(fn post_id, language -> publish_post_translation(project_id, post_id, language) end),
|
||||
publish_translation:
|
||||
two_arg(fn post_id, language ->
|
||||
publish_post_translation(project_id, post_id, language)
|
||||
end),
|
||||
rebuild_from_files: zero_or_one_arg(fn _args -> rebuild_posts_from_files(project_id) end),
|
||||
rebuild_links: zero_or_one_arg(fn _args -> rebuild_post_links(project_id) end),
|
||||
reindex_text: zero_or_one_arg(fn _args -> reindex_project_search(project_id) end),
|
||||
search: one_arg(fn query -> search_posts(project_id, query) end)
|
||||
},
|
||||
media: %{
|
||||
delete_translation: two_arg(fn media_id, language -> delete_media_translation(project_id, media_id, language) end),
|
||||
delete_translation:
|
||||
two_arg(fn media_id, language ->
|
||||
delete_media_translation(project_id, media_id, language)
|
||||
end),
|
||||
filter: one_arg(fn filters -> filter_media(project_id, filters) end),
|
||||
import: one_arg(fn attrs -> import_media(project_id, attrs) end),
|
||||
get_by_year_month: zero_or_one_arg(fn _args -> media_counts_by_year_month(project_id) end),
|
||||
get_by_year_month:
|
||||
zero_or_one_arg(fn _args -> media_counts_by_year_month(project_id) end),
|
||||
get_file_path: one_arg(fn media_id -> media_file_path(project_id, media_id) end),
|
||||
update: two_arg(fn media_id, attrs -> update_media(project_id, media_id, attrs) end),
|
||||
delete: one_arg(fn media_id -> delete_media(project_id, media_id) end),
|
||||
@@ -104,17 +133,30 @@ defmodule BDS.Scripting.Capabilities do
|
||||
get_all: zero_or_one_arg(fn _args -> list_media(project_id) end),
|
||||
get_tags: zero_or_one_arg(fn _args -> media_tags(project_id) end),
|
||||
get_tags_with_counts: zero_or_one_arg(fn _args -> media_tags_with_counts(project_id) end),
|
||||
get_thumbnail: two_arg(fn media_id, size -> media_thumbnail(project_id, media_id, size) end),
|
||||
get_translation: two_arg(fn media_id, language -> load_media_translation(project_id, media_id, language) end),
|
||||
get_translations: one_arg(fn media_id -> list_media_translations(project_id, media_id) end),
|
||||
get_thumbnail:
|
||||
two_arg(fn media_id, size -> media_thumbnail(project_id, media_id, size) end),
|
||||
get_translation:
|
||||
two_arg(fn media_id, language ->
|
||||
load_media_translation(project_id, media_id, language)
|
||||
end),
|
||||
get_translations:
|
||||
one_arg(fn media_id -> list_media_translations(project_id, media_id) end),
|
||||
get_url: one_arg(fn media_id -> media_url(project_id, media_id) end),
|
||||
rebuild_from_files: zero_or_one_arg(fn _args -> rebuild_media_from_files(project_id) end),
|
||||
regenerate_missing_thumbnails: zero_or_one_arg(fn _args -> regenerate_missing_thumbnails(project_id) end),
|
||||
regenerate_thumbnails: one_arg(fn media_id -> regenerate_media_thumbnails(project_id, media_id) end),
|
||||
regenerate_missing_thumbnails:
|
||||
zero_or_one_arg(fn _args -> regenerate_missing_thumbnails(project_id) end),
|
||||
regenerate_thumbnails:
|
||||
one_arg(fn media_id -> regenerate_media_thumbnails(project_id, media_id) end),
|
||||
reindex_text: zero_or_one_arg(fn _args -> reindex_project_search(project_id) end),
|
||||
replace_file: two_arg(fn media_id, source_path -> replace_media_file(project_id, media_id, source_path) end),
|
||||
replace_file:
|
||||
two_arg(fn media_id, source_path ->
|
||||
replace_media_file(project_id, media_id, source_path)
|
||||
end),
|
||||
search: one_arg(fn query -> search_media(project_id, query) end),
|
||||
upsert_translation: three_arg(fn media_id, language, attrs -> upsert_media_translation(project_id, media_id, language, attrs) end)
|
||||
upsert_translation:
|
||||
three_arg(fn media_id, language, attrs ->
|
||||
upsert_media_translation(project_id, media_id, language, attrs)
|
||||
end)
|
||||
},
|
||||
scripts: %{
|
||||
create: one_arg(fn attrs -> create_script(project_id, attrs) end),
|
||||
@@ -123,17 +165,20 @@ defmodule BDS.Scripting.Capabilities do
|
||||
get: one_arg(fn script_id -> load_script(project_id, script_id) end),
|
||||
get_all: zero_or_one_arg(fn _args -> list_scripts(project_id) end),
|
||||
publish: one_arg(fn script_id -> publish_script(project_id, script_id) end),
|
||||
rebuild_from_files: zero_or_one_arg(fn _args -> rebuild_scripts_from_files(project_id) end)
|
||||
rebuild_from_files:
|
||||
zero_or_one_arg(fn _args -> rebuild_scripts_from_files(project_id) end)
|
||||
},
|
||||
templates: %{
|
||||
create: one_arg(fn attrs -> create_template(project_id, attrs) end),
|
||||
update: two_arg(fn template_id, attrs -> update_template(project_id, template_id, attrs) end),
|
||||
update:
|
||||
two_arg(fn template_id, attrs -> update_template(project_id, template_id, attrs) end),
|
||||
delete: one_arg(fn template_id -> delete_template(project_id, template_id) end),
|
||||
get: one_arg(fn template_id -> load_template(project_id, template_id) end),
|
||||
get_all: zero_or_one_arg(fn _args -> list_templates(project_id) end),
|
||||
publish: one_arg(fn template_id -> publish_template(project_id, template_id) end),
|
||||
get_enabled_by_kind: one_arg(fn kind -> list_enabled_templates(project_id, kind) end),
|
||||
rebuild_from_files: zero_or_one_arg(fn _args -> rebuild_templates_from_files(project_id) end),
|
||||
rebuild_from_files:
|
||||
zero_or_one_arg(fn _args -> rebuild_templates_from_files(project_id) end),
|
||||
validate: one_arg(fn source -> validate_template_source(source) end)
|
||||
},
|
||||
tags: %{
|
||||
@@ -145,7 +190,10 @@ defmodule BDS.Scripting.Capabilities do
|
||||
get_by_name: one_arg(fn tag_name -> load_tag_by_name(project_id, tag_name) end),
|
||||
get_posts_with_tag: one_arg(fn tag_id -> tag_post_ids(project_id, tag_id) end),
|
||||
get_with_counts: zero_or_one_arg(fn _args -> tags_with_counts(project_id) end),
|
||||
merge: two_arg(fn source_tag_ids, target_tag_id -> merge_tags(project_id, source_tag_ids, target_tag_id) end),
|
||||
merge:
|
||||
two_arg(fn source_tag_ids, target_tag_id ->
|
||||
merge_tags(project_id, source_tag_ids, target_tag_id)
|
||||
end),
|
||||
rename: two_arg(fn tag_id, new_name -> rename_tag(project_id, tag_id, new_name) end),
|
||||
sync_from_posts: zero_or_one_arg(fn _args -> sync_tags_from_posts(project_id) end)
|
||||
},
|
||||
@@ -172,23 +220,30 @@ defmodule BDS.Scripting.Capabilities do
|
||||
upload_site: one_arg(fn credentials -> upload_site(project_id, credentials, opts) end)
|
||||
},
|
||||
chat: %{
|
||||
detect_post_language: two_arg(fn title, content -> detect_post_language(title, content, opts) end),
|
||||
detect_post_language:
|
||||
two_arg(fn title, content -> detect_post_language(title, content, opts) end),
|
||||
analyze_post: one_arg(fn post_id -> analyze_post(post_id, opts) end),
|
||||
translate_post: two_arg(fn post_id, language -> translate_post(post_id, language, opts) end),
|
||||
translate_post:
|
||||
two_arg(fn post_id, language -> translate_post(post_id, language, opts) end),
|
||||
analyze_media_image: one_arg(fn media_id -> analyze_media_image(media_id, opts) end),
|
||||
detect_media_language: three_arg(fn title, alt, caption -> detect_media_language(title, alt, caption, opts) end),
|
||||
translate_media_metadata: two_arg(fn media_id, language -> translate_media_metadata(media_id, language, opts) end)
|
||||
detect_media_language:
|
||||
three_arg(fn title, alt, caption ->
|
||||
detect_media_language(title, alt, caption, opts)
|
||||
end),
|
||||
translate_media_metadata:
|
||||
two_arg(fn media_id, language -> translate_media_metadata(media_id, language, opts) end)
|
||||
},
|
||||
embeddings: %{
|
||||
get_progress: zero_or_one_arg(fn _args -> embedding_progress(project_id) end),
|
||||
find_similar: two_arg(fn post_id, limit -> find_similar(post_id, limit) end),
|
||||
compute_similarities: two_arg(fn post_id, target_ids -> compute_similarities(post_id, target_ids) end),
|
||||
suggest_tags: two_arg(fn post_id, exclude_tags -> suggest_tags(post_id, exclude_tags) end),
|
||||
compute_similarities:
|
||||
two_arg(fn post_id, target_ids -> compute_similarities(post_id, target_ids) end),
|
||||
suggest_tags:
|
||||
two_arg(fn post_id, exclude_tags -> suggest_tags(post_id, exclude_tags) end),
|
||||
find_duplicates: zero_or_one_arg(fn _args -> find_duplicates(project_id) end),
|
||||
dismiss_pair: two_arg(fn post_id_a, post_id_b -> dismiss_pair(post_id_a, post_id_b) end),
|
||||
index_unindexed_posts: zero_or_one_arg(fn _args -> index_unindexed_posts(project_id) end)
|
||||
}
|
||||
}
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user