@keystrokehq/reddit 0.1.3 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/action.cjs.map +1 -1
- package/dist/action.mjs.map +1 -1
- package/dist/actions/create-reddit-post.cjs +1 -0
- package/dist/actions/create-reddit-post.cjs.map +1 -1
- package/dist/actions/create-reddit-post.d.cts +3 -8
- package/dist/actions/create-reddit-post.d.cts.map +1 -1
- package/dist/actions/create-reddit-post.d.mts +3 -8
- package/dist/actions/create-reddit-post.d.mts.map +1 -1
- package/dist/actions/create-reddit-post.mjs +1 -0
- package/dist/actions/create-reddit-post.mjs.map +1 -1
- package/dist/actions/delete-reddit-comment.cjs +1 -0
- package/dist/actions/delete-reddit-comment.cjs.map +1 -1
- package/dist/actions/delete-reddit-comment.d.cts +3 -3
- package/dist/actions/delete-reddit-comment.d.cts.map +1 -1
- package/dist/actions/delete-reddit-comment.d.mts +3 -3
- package/dist/actions/delete-reddit-comment.d.mts.map +1 -1
- package/dist/actions/delete-reddit-comment.mjs +1 -0
- package/dist/actions/delete-reddit-comment.mjs.map +1 -1
- package/dist/actions/delete-reddit-post.cjs +1 -0
- package/dist/actions/delete-reddit-post.cjs.map +1 -1
- package/dist/actions/delete-reddit-post.d.cts +3 -3
- package/dist/actions/delete-reddit-post.d.cts.map +1 -1
- package/dist/actions/delete-reddit-post.d.mts +3 -3
- package/dist/actions/delete-reddit-post.d.mts.map +1 -1
- package/dist/actions/delete-reddit-post.mjs +1 -0
- package/dist/actions/delete-reddit-post.mjs.map +1 -1
- package/dist/actions/edit-reddit-comment-or-post.cjs +1 -0
- package/dist/actions/edit-reddit-comment-or-post.cjs.map +1 -1
- package/dist/actions/edit-reddit-comment-or-post.d.cts +3 -4
- package/dist/actions/edit-reddit-comment-or-post.d.cts.map +1 -1
- package/dist/actions/edit-reddit-comment-or-post.d.mts +3 -4
- package/dist/actions/edit-reddit-comment-or-post.d.mts.map +1 -1
- package/dist/actions/edit-reddit-comment-or-post.mjs +1 -0
- package/dist/actions/edit-reddit-comment-or-post.mjs.map +1 -1
- package/dist/actions/get-controversial-posts.cjs +1 -0
- package/dist/actions/get-controversial-posts.cjs.map +1 -1
- package/dist/actions/get-controversial-posts.d.cts +3 -6
- package/dist/actions/get-controversial-posts.d.cts.map +1 -1
- package/dist/actions/get-controversial-posts.d.mts +3 -6
- package/dist/actions/get-controversial-posts.d.mts.map +1 -1
- package/dist/actions/get-controversial-posts.mjs +1 -0
- package/dist/actions/get-controversial-posts.mjs.map +1 -1
- package/dist/actions/get-me-prefs.cjs +1 -0
- package/dist/actions/get-me-prefs.cjs.map +1 -1
- package/dist/actions/get-me-prefs.d.cts +3 -3
- package/dist/actions/get-me-prefs.d.cts.map +1 -1
- package/dist/actions/get-me-prefs.d.mts +3 -3
- package/dist/actions/get-me-prefs.d.mts.map +1 -1
- package/dist/actions/get-me-prefs.mjs +1 -0
- package/dist/actions/get-me-prefs.mjs.map +1 -1
- package/dist/actions/get-r-top.cjs +1 -0
- package/dist/actions/get-r-top.cjs.map +1 -1
- package/dist/actions/get-r-top.d.cts +3 -10
- package/dist/actions/get-r-top.d.cts.map +1 -1
- package/dist/actions/get-r-top.d.mts +3 -10
- package/dist/actions/get-r-top.d.mts.map +1 -1
- package/dist/actions/get-r-top.mjs +1 -0
- package/dist/actions/get-r-top.mjs.map +1 -1
- package/dist/actions/get-random.cjs +1 -0
- package/dist/actions/get-random.cjs.map +1 -1
- package/dist/actions/get-random.d.cts +3 -3
- package/dist/actions/get-random.d.cts.map +1 -1
- package/dist/actions/get-random.d.mts +3 -3
- package/dist/actions/get-random.d.mts.map +1 -1
- package/dist/actions/get-random.mjs +1 -0
- package/dist/actions/get-random.mjs.map +1 -1
- package/dist/actions/get-reddit-user-about.cjs +1 -0
- package/dist/actions/get-reddit-user-about.cjs.map +1 -1
- package/dist/actions/get-reddit-user-about.d.cts +3 -3
- package/dist/actions/get-reddit-user-about.d.cts.map +1 -1
- package/dist/actions/get-reddit-user-about.d.mts +3 -3
- package/dist/actions/get-reddit-user-about.d.mts.map +1 -1
- package/dist/actions/get-reddit-user-about.mjs +1 -0
- package/dist/actions/get-reddit-user-about.mjs.map +1 -1
- package/dist/actions/get-scopes.cjs +1 -0
- package/dist/actions/get-scopes.cjs.map +1 -1
- package/dist/actions/get-scopes.d.cts +3 -1
- package/dist/actions/get-scopes.d.cts.map +1 -1
- package/dist/actions/get-scopes.d.mts +3 -1
- package/dist/actions/get-scopes.d.mts.map +1 -1
- package/dist/actions/get-scopes.mjs +1 -0
- package/dist/actions/get-scopes.mjs.map +1 -1
- package/dist/actions/get-subreddit-rules.cjs +1 -0
- package/dist/actions/get-subreddit-rules.cjs.map +1 -1
- package/dist/actions/get-subreddit-rules.d.cts +3 -4
- package/dist/actions/get-subreddit-rules.d.cts.map +1 -1
- package/dist/actions/get-subreddit-rules.d.mts +3 -4
- package/dist/actions/get-subreddit-rules.d.mts.map +1 -1
- package/dist/actions/get-subreddit-rules.mjs +1 -0
- package/dist/actions/get-subreddit-rules.mjs.map +1 -1
- package/dist/actions/get-subreddits-search.cjs +1 -0
- package/dist/actions/get-subreddits-search.cjs.map +1 -1
- package/dist/actions/get-subreddits-search.d.cts +3 -11
- package/dist/actions/get-subreddits-search.d.cts.map +1 -1
- package/dist/actions/get-subreddits-search.d.mts +3 -11
- package/dist/actions/get-subreddits-search.d.mts.map +1 -1
- package/dist/actions/get-subreddits-search.mjs +1 -0
- package/dist/actions/get-subreddits-search.mjs.map +1 -1
- package/dist/actions/get-user-flair.cjs +1 -0
- package/dist/actions/get-user-flair.cjs.map +1 -1
- package/dist/actions/get-user-flair.d.cts +3 -6
- package/dist/actions/get-user-flair.d.cts.map +1 -1
- package/dist/actions/get-user-flair.d.mts +3 -6
- package/dist/actions/get-user-flair.d.mts.map +1 -1
- package/dist/actions/get-user-flair.mjs +1 -0
- package/dist/actions/get-user-flair.mjs.map +1 -1
- package/dist/actions/get-username-available.cjs +1 -0
- package/dist/actions/get-username-available.cjs.map +1 -1
- package/dist/actions/get-username-available.d.cts +3 -3
- package/dist/actions/get-username-available.d.cts.map +1 -1
- package/dist/actions/get-username-available.d.mts +3 -3
- package/dist/actions/get-username-available.d.mts.map +1 -1
- package/dist/actions/get-username-available.mjs +1 -0
- package/dist/actions/get-username-available.mjs.map +1 -1
- package/dist/actions/get.cjs +1 -0
- package/dist/actions/get.cjs.map +1 -1
- package/dist/actions/get.d.cts +3 -9
- package/dist/actions/get.d.cts.map +1 -1
- package/dist/actions/get.d.mts +3 -9
- package/dist/actions/get.d.mts.map +1 -1
- package/dist/actions/get.mjs +1 -0
- package/dist/actions/get.mjs.map +1 -1
- package/dist/actions/list-subreddit-post-flairs.cjs +1 -0
- package/dist/actions/list-subreddit-post-flairs.cjs.map +1 -1
- package/dist/actions/list-subreddit-post-flairs.d.cts +3 -3
- package/dist/actions/list-subreddit-post-flairs.d.cts.map +1 -1
- package/dist/actions/list-subreddit-post-flairs.d.mts +3 -3
- package/dist/actions/list-subreddit-post-flairs.d.mts.map +1 -1
- package/dist/actions/list-subreddit-post-flairs.mjs +1 -0
- package/dist/actions/list-subreddit-post-flairs.mjs.map +1 -1
- package/dist/actions/post-reddit-comment.cjs +1 -0
- package/dist/actions/post-reddit-comment.cjs.map +1 -1
- package/dist/actions/post-reddit-comment.d.cts +3 -4
- package/dist/actions/post-reddit-comment.d.cts.map +1 -1
- package/dist/actions/post-reddit-comment.d.mts +3 -4
- package/dist/actions/post-reddit-comment.d.mts.map +1 -1
- package/dist/actions/post-reddit-comment.mjs +1 -0
- package/dist/actions/post-reddit-comment.mjs.map +1 -1
- package/dist/actions/retrieve-post-comments.cjs +1 -0
- package/dist/actions/retrieve-post-comments.cjs.map +1 -1
- package/dist/actions/retrieve-post-comments.d.cts +3 -3
- package/dist/actions/retrieve-post-comments.d.cts.map +1 -1
- package/dist/actions/retrieve-post-comments.d.mts +3 -3
- package/dist/actions/retrieve-post-comments.d.mts.map +1 -1
- package/dist/actions/retrieve-post-comments.mjs +1 -0
- package/dist/actions/retrieve-post-comments.mjs.map +1 -1
- package/dist/actions/retrieve-reddit-post.cjs +1 -0
- package/dist/actions/retrieve-reddit-post.cjs.map +1 -1
- package/dist/actions/retrieve-reddit-post.d.cts +3 -5
- package/dist/actions/retrieve-reddit-post.d.cts.map +1 -1
- package/dist/actions/retrieve-reddit-post.d.mts +3 -5
- package/dist/actions/retrieve-reddit-post.d.mts.map +1 -1
- package/dist/actions/retrieve-reddit-post.mjs +1 -0
- package/dist/actions/retrieve-reddit-post.mjs.map +1 -1
- package/dist/actions/retrieve-specific-comment.cjs +1 -0
- package/dist/actions/retrieve-specific-comment.cjs.map +1 -1
- package/dist/actions/retrieve-specific-comment.d.cts +3 -3
- package/dist/actions/retrieve-specific-comment.d.cts.map +1 -1
- package/dist/actions/retrieve-specific-comment.d.mts +3 -3
- package/dist/actions/retrieve-specific-comment.d.mts.map +1 -1
- package/dist/actions/retrieve-specific-comment.mjs +1 -0
- package/dist/actions/retrieve-specific-comment.mjs.map +1 -1
- package/dist/actions/search-across-subreddits.cjs +1 -0
- package/dist/actions/search-across-subreddits.cjs.map +1 -1
- package/dist/actions/search-across-subreddits.d.cts +4 -9
- package/dist/actions/search-across-subreddits.d.cts.map +1 -1
- package/dist/actions/search-across-subreddits.d.mts +4 -9
- package/dist/actions/search-across-subreddits.d.mts.map +1 -1
- package/dist/actions/search-across-subreddits.mjs +1 -0
- package/dist/actions/search-across-subreddits.mjs.map +1 -1
- package/dist/actions/toggle-inbox-replies.cjs +1 -0
- package/dist/actions/toggle-inbox-replies.cjs.map +1 -1
- package/dist/actions/toggle-inbox-replies.d.cts +3 -4
- package/dist/actions/toggle-inbox-replies.d.cts.map +1 -1
- package/dist/actions/toggle-inbox-replies.d.mts +3 -4
- package/dist/actions/toggle-inbox-replies.d.mts.map +1 -1
- package/dist/actions/toggle-inbox-replies.mjs +1 -0
- package/dist/actions/toggle-inbox-replies.mjs.map +1 -1
- package/dist/app.cjs +5 -2
- package/dist/app.cjs.map +1 -1
- package/dist/app.d.cts +7 -1
- package/dist/app.d.cts.map +1 -1
- package/dist/app.d.mts +7 -1
- package/dist/app.d.mts.map +1 -1
- package/dist/app.mjs +3 -2
- package/dist/app.mjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.mts +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-subreddits-search.mjs","names":[],"sources":["../../src/actions/get-subreddits-search.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RedditGetSubredditsSearchInput = z.object({\n q: z.string().describe(\"A search query term to search subreddit titles and descriptions. Use specific keywords to find relevant subreddits.\"),\n show: z.string().describe(\"The string 'all' to show all subreddits including those the user might have filtered.\").optional(),\n sort: z.enum([\"relevance\", \"activity\"]).default(\"relevance\").describe(\"Sort order for the search results. 'relevance' sorts by relevance to the query (default). 'activity' sorts by subreddit activity.\").optional(),\n after: z.string().describe(\"Fullname of a thing - pagination cursor for the next page. Use the 'after' value from the previous response to get the next set of results.\").optional(),\n count: z.number().int().describe(\"A positive integer (default: 0) representing the number of items already seen in previous pages. Used for pagination tracking.\").optional(),\n limit: z.number().int().default(25).describe(\"The maximum number of subreddits to return. Default is 25. Maximum allowed value is 100.\").optional(),\n before: z.string().describe(\"Fullname of a thing - pagination cursor for the previous page. Use the 'before' value from the previous response to get the previous set of results.\").optional(),\n sr_detail: z.boolean().describe(\"Expand subreddits with additional details. Set to true to get more detailed information about each subreddit.\").optional(),\n show_users: z.boolean().describe(\"Boolean value to include user results in the search. Set to true to include users matching the search query.\").optional(),\n});\nconst RedditGetSubredditsSearch_SubredditDataSchema = z.object({\n id: z.string().describe(\"Unique identifier of the subreddit in base36 format.\").nullable().optional(),\n url: z.string().describe(\"Relative URL path to the subreddit (e.g., '/r/python/').\").nullable().optional(),\n lang: z.string().describe(\"Primary language of the subreddit.\").nullable().optional(),\n name: z.string().describe(\"Fullname of the subreddit with type prefix (e.g., 't5_xxxxx').\").nullable().optional(),\n title: z.string().describe(\"Title or headline of the subreddit.\").nullable().optional(),\n over18: z.boolean().describe(\"Whether the subreddit is marked as NSFW (18+).\").nullable().optional(),\n created: z.number().describe(\"Unix timestamp of subreddit creation in local epoch.\").nullable().optional(),\n hide_ads: z.boolean().describe(\"Whether ads are hidden in this subreddit.\").nullable().optional(),\n icon_img: z.string().describe(\"URL to the subreddit's icon image.\").nullable().optional(),\n key_color: z.string().describe(\"Key color for the subreddit theme.\").nullable().optional(),\n banner_img: z.string().describe(\"URL to the subreddit's banner image.\").nullable().optional(),\n header_img: z.string().describe(\"URL to the subreddit's header image.\").nullable().optional(),\n quarantine: z.boolean().describe(\"Whether the subreddit is quarantined.\").nullable().optional(),\n created_utc: z.number().describe(\"Unix timestamp of subreddit creation in UTC epoch.\").nullable().optional(),\n description: z.string().describe(\"Full description of the subreddit in markdown format.\").nullable().optional(),\n subscribers: z.number().int().describe(\"Number of subscribers to the subreddit.\").nullable().optional(),\n display_name: z.string().describe(\"Display name of the subreddit without r/ prefix.\").nullable().optional(),\n primary_color: z.string().describe(\"Primary color for the subreddit theme.\").nullable().optional(),\n community_icon: z.string().describe(\"URL to the subreddit's community icon.\").nullable().optional(),\n subreddit_type: z.string().describe(\"Type of subreddit (e.g., 'public', 'private', 'restricted').\").nullable().optional(),\n description_html: z.string().describe(\"HTML-rendered version of the description.\").nullable().optional(),\n whitelist_status: z.string().describe(\"Whitelist status of the subreddit.\").nullable().optional(),\n active_user_count: z.number().int().describe(\"Number of active users currently browsing the subreddit.\").nullable().optional(),\n user_is_moderator: z.boolean().describe(\"Whether the current user is a moderator of this subreddit.\").nullable().optional(),\n public_description: z.string().describe(\"Short public description of the subreddit.\").nullable().optional(),\n user_is_subscriber: z.boolean().describe(\"Whether the current user is subscribed to this subreddit.\").nullable().optional(),\n advertiser_category: z.string().describe(\"Category for advertising purposes.\").nullable().optional(),\n display_name_prefixed: z.string().describe(\"Display name with r/ prefix (e.g., 'r/python').\").nullable().optional(),\n}).passthrough().describe(\"Subreddit data object containing essential subreddit information.\");\nconst RedditGetSubredditsSearch_SubredditChildSchema = z.object({\n data: RedditGetSubredditsSearch_SubredditDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the object, typically 't5' for subreddits.\").nullable(),\n}).passthrough().describe(\"Wrapper object for each subreddit in the children array.\");\nconst RedditGetSubredditsSearch_SearchListingDataSchema = z.object({\n dist: z.number().int().describe(\"The number of children returned in this listing.\").nullable().optional(),\n after: z.string().describe(\"Fullname of the last item in the listing, used as cursor for next page.\").nullable().optional(),\n before: z.string().describe(\"Fullname of the first item in the listing, used as cursor for previous page.\").nullable().optional(),\n modhash: z.string().describe(\"Modhash token for the current session.\").nullable().optional(),\n children: z.array(RedditGetSubredditsSearch_SubredditChildSchema).describe(\"Array of subreddit objects matching the search.\"),\n}).passthrough().describe(\"Container object holding the listing response data.\");\nexport const RedditGetSubredditsSearchOutput = z.object({\n data: RedditGetSubredditsSearch_SearchListingDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the response wrapper, typically 'Listing' for search results.\").nullable(),\n}).passthrough().describe(\"Response from searching subreddits.\");\n\nexport const redditGetSubredditsSearch = action(\"REDDIT_GET_SUBREDDITS_SEARCH\", {\n slug: \"reddit-get-subreddits-search\",\n name: \"Search subreddits\",\n description: \"Tool to search subreddits by title and description. Use when you need to find subreddits matching a specific topic or keyword. Returns a paginated listing of subreddits with their details including subscribers, descriptions, and other metadata.\",\n input: RedditGetSubredditsSearchInput,\n output: RedditGetSubredditsSearchOutput,\n});\n"],"mappings":";;;AAIA,MAAa,iCAAiC,EAAE,OAAO;CACrD,GAAG,EAAE,OAAO,CAAC,CAAC,SAAS,qHAAqH;CAC5I,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,uFAAuF,CAAC,CAAC,SAAS;CAC5H,MAAM,EAAE,KAAK,CAAC,aAAa,UAAU,CAAC,CAAC,CAAC,QAAQ,WAAW,CAAC,CAAC,SAAS,mIAAmI,CAAC,CAAC,SAAS;CACpN,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,6IAA6I,CAAC,CAAC,SAAS;CACnL,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,gIAAgI,CAAC,CAAC,SAAS;CAC5K,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,0FAA0F,CAAC,CAAC,SAAS;CAClJ,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,sJAAsJ,CAAC,CAAC,SAAS;CAC7L,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,+GAA+G,CAAC,CAAC,SAAS;CAC1J,YAAY,EAAE,QAAQ,CAAC,CAAC,SAAS,8GAA8G,CAAC,CAAC,SAAS;AAC5J,CAAC;AACD,MAAM,gDAAgD,EAAE,OAAO;CAC7D,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACpG,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,0DAA0D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzG,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACpF,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,gEAAgE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChH,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtF,QAAQ,EAAE,QAAQ,CAAC,CAAC,SAAS,gDAAgD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnG,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzG,UAAU,EAAE,QAAQ,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChG,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxF,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzF,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC5F,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC5F,YAAY,EAAE,QAAQ,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9F,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3G,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9G,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtG,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,kDAAkD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1G,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjG,gBAAgB,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAClG,gBAAgB,EAAE,OAAO,CAAC,CAAC,SAAS,8DAA8D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxH,kBAAkB,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvG,kBAAkB,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChG,mBAAmB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,0DAA0D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC7H,mBAAmB,EAAE,QAAQ,CAAC,CAAC,SAAS,4DAA4D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1H,oBAAoB,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1G,oBAAoB,EAAE,QAAQ,CAAC,CAAC,SAAS,2DAA2D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1H,qBAAqB,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnG,uBAAuB,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACpH,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mEAAmE;AAC7F,MAAM,iDAAiD,EAAE,OAAO;CAC9D,MAAM,8CAA8C,SAAS;CAC7D,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,gEAAgE,CAAC,CAAC,SAAS;AACvG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,0DAA0D;AACpF,MAAM,oDAAoD,EAAE,OAAO;CACjE,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kDAAkD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxG,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1H,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,8EAA8E,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChI,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3F,UAAU,EAAE,MAAM,8CAA8C,CAAC,CAAC,SAAS,iDAAiD;AAC9H,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,qDAAqD;AAM/E,MAAa,4BAA4B,OAAO,gCAAgC;CAC9E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAV6C,EAAE,OAAO;EACtD,MAAM,kDAAkD,SAAS;EACjE,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,mFAAmF,CAAC,CAAC,SAAS;CAC1H,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,qCAOhB;AACV,CAAC"}
|
|
1
|
+
{"version":3,"file":"get-subreddits-search.mjs","names":[],"sources":["../../src/actions/get-subreddits-search.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { reddit } from \"../app\";\n\nexport const RedditGetSubredditsSearchInput = z.object({\n q: z.string().describe(\"A search query term to search subreddit titles and descriptions. Use specific keywords to find relevant subreddits.\"),\n show: z.string().describe(\"The string 'all' to show all subreddits including those the user might have filtered.\").optional(),\n sort: z.enum([\"relevance\", \"activity\"]).default(\"relevance\").describe(\"Sort order for the search results. 'relevance' sorts by relevance to the query (default). 'activity' sorts by subreddit activity.\").optional(),\n after: z.string().describe(\"Fullname of a thing - pagination cursor for the next page. Use the 'after' value from the previous response to get the next set of results.\").optional(),\n count: z.number().int().describe(\"A positive integer (default: 0) representing the number of items already seen in previous pages. Used for pagination tracking.\").optional(),\n limit: z.number().int().default(25).describe(\"The maximum number of subreddits to return. Default is 25. Maximum allowed value is 100.\").optional(),\n before: z.string().describe(\"Fullname of a thing - pagination cursor for the previous page. Use the 'before' value from the previous response to get the previous set of results.\").optional(),\n sr_detail: z.boolean().describe(\"Expand subreddits with additional details. Set to true to get more detailed information about each subreddit.\").optional(),\n show_users: z.boolean().describe(\"Boolean value to include user results in the search. Set to true to include users matching the search query.\").optional(),\n});\nconst RedditGetSubredditsSearch_SubredditDataSchema = z.object({\n id: z.string().describe(\"Unique identifier of the subreddit in base36 format.\").nullable().optional(),\n url: z.string().describe(\"Relative URL path to the subreddit (e.g., '/r/python/').\").nullable().optional(),\n lang: z.string().describe(\"Primary language of the subreddit.\").nullable().optional(),\n name: z.string().describe(\"Fullname of the subreddit with type prefix (e.g., 't5_xxxxx').\").nullable().optional(),\n title: z.string().describe(\"Title or headline of the subreddit.\").nullable().optional(),\n over18: z.boolean().describe(\"Whether the subreddit is marked as NSFW (18+).\").nullable().optional(),\n created: z.number().describe(\"Unix timestamp of subreddit creation in local epoch.\").nullable().optional(),\n hide_ads: z.boolean().describe(\"Whether ads are hidden in this subreddit.\").nullable().optional(),\n icon_img: z.string().describe(\"URL to the subreddit's icon image.\").nullable().optional(),\n key_color: z.string().describe(\"Key color for the subreddit theme.\").nullable().optional(),\n banner_img: z.string().describe(\"URL to the subreddit's banner image.\").nullable().optional(),\n header_img: z.string().describe(\"URL to the subreddit's header image.\").nullable().optional(),\n quarantine: z.boolean().describe(\"Whether the subreddit is quarantined.\").nullable().optional(),\n created_utc: z.number().describe(\"Unix timestamp of subreddit creation in UTC epoch.\").nullable().optional(),\n description: z.string().describe(\"Full description of the subreddit in markdown format.\").nullable().optional(),\n subscribers: z.number().int().describe(\"Number of subscribers to the subreddit.\").nullable().optional(),\n display_name: z.string().describe(\"Display name of the subreddit without r/ prefix.\").nullable().optional(),\n primary_color: z.string().describe(\"Primary color for the subreddit theme.\").nullable().optional(),\n community_icon: z.string().describe(\"URL to the subreddit's community icon.\").nullable().optional(),\n subreddit_type: z.string().describe(\"Type of subreddit (e.g., 'public', 'private', 'restricted').\").nullable().optional(),\n description_html: z.string().describe(\"HTML-rendered version of the description.\").nullable().optional(),\n whitelist_status: z.string().describe(\"Whitelist status of the subreddit.\").nullable().optional(),\n active_user_count: z.number().int().describe(\"Number of active users currently browsing the subreddit.\").nullable().optional(),\n user_is_moderator: z.boolean().describe(\"Whether the current user is a moderator of this subreddit.\").nullable().optional(),\n public_description: z.string().describe(\"Short public description of the subreddit.\").nullable().optional(),\n user_is_subscriber: z.boolean().describe(\"Whether the current user is subscribed to this subreddit.\").nullable().optional(),\n advertiser_category: z.string().describe(\"Category for advertising purposes.\").nullable().optional(),\n display_name_prefixed: z.string().describe(\"Display name with r/ prefix (e.g., 'r/python').\").nullable().optional(),\n}).passthrough().describe(\"Subreddit data object containing essential subreddit information.\");\nconst RedditGetSubredditsSearch_SubredditChildSchema = z.object({\n data: RedditGetSubredditsSearch_SubredditDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the object, typically 't5' for subreddits.\").nullable(),\n}).passthrough().describe(\"Wrapper object for each subreddit in the children array.\");\nconst RedditGetSubredditsSearch_SearchListingDataSchema = z.object({\n dist: z.number().int().describe(\"The number of children returned in this listing.\").nullable().optional(),\n after: z.string().describe(\"Fullname of the last item in the listing, used as cursor for next page.\").nullable().optional(),\n before: z.string().describe(\"Fullname of the first item in the listing, used as cursor for previous page.\").nullable().optional(),\n modhash: z.string().describe(\"Modhash token for the current session.\").nullable().optional(),\n children: z.array(RedditGetSubredditsSearch_SubredditChildSchema).describe(\"Array of subreddit objects matching the search.\"),\n}).passthrough().describe(\"Container object holding the listing response data.\");\nexport const RedditGetSubredditsSearchOutput = z.object({\n data: RedditGetSubredditsSearch_SearchListingDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the response wrapper, typically 'Listing' for search results.\").nullable(),\n}).passthrough().describe(\"Response from searching subreddits.\");\n\nexport const redditGetSubredditsSearch: AppAction<\n typeof RedditGetSubredditsSearchInput,\n typeof RedditGetSubredditsSearchOutput,\n typeof reddit.credential\n> = action(\"REDDIT_GET_SUBREDDITS_SEARCH\", {\n slug: \"reddit-get-subreddits-search\",\n name: \"Search subreddits\",\n description: \"Tool to search subreddits by title and description. Use when you need to find subreddits matching a specific topic or keyword. Returns a paginated listing of subreddits with their details including subscribers, descriptions, and other metadata.\",\n input: RedditGetSubredditsSearchInput,\n output: RedditGetSubredditsSearchOutput,\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-user-flair.cjs","names":["z","action"],"sources":["../../src/actions/get-user-flair.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RedditGetUserFlairInput = z.object({\n after: z.string().describe(\"User ID to use as the anchor for fetching the next page of results. Use the 'next' value from a previous response.\").optional(),\n limit: z.number().int().describe(\"Maximum number of user flair entries to return per page. Reddit default is 25, maximum is 1000.\").optional(),\n before: z.string().describe(\"User ID to use as the anchor for fetching the previous page of results. Use the 'prev' value from a previous response.\").optional(),\n subreddit: z.string().describe(\"Name of the subreddit (e.g., 'pics', 'gaming') for which to retrieve user flair assignments. Do not include 'r/' prefix or URL paths — bare name only.\"),\n});\nconst RedditGetUserFlair_UserFlairEntrySchema = z.object({\n user: z.string().describe(\"Username of the Reddit user who has been assigned this flair.\").nullable(),\n flair_text: z.string().describe(\"The text content displayed as the user's flair.\").nullable().optional(),\n flair_css_class: z.string().describe(\"CSS class name applied to the user's flair for visual styling.\").nullable().optional(),\n}).passthrough().describe(\"Represents a single user flair assignment in a subreddit.\");\nexport const RedditGetUserFlairOutput = z.object({\n next: z.string().describe(\"User ID parameter for fetching the subsequent page of results. Used with the 'after' query parameter for pagination.\").nullable().optional(),\n prev: z.string().describe(\"User ID parameter for retrieving the previous page of results. Used with the 'before' query parameter for pagination.\").nullable().optional(),\n users: z.array(RedditGetUserFlair_UserFlairEntrySchema).describe(\"Array of user flair assignments for the subreddit.\"),\n}).passthrough().describe(\"Response containing paginated user flair assignments for a subreddit.\");\n\nexport const redditGetUserFlair = action(\"REDDIT_GET_USER_FLAIR\", {\n slug: \"reddit-get-user-flair\",\n name: \"Get user flair\",\n description: \"Fetches the list of user flair assignments for a given subreddit. Returns paginated results with user flair details. Returned flair_id values are scoped to the specific subreddit and must not be reused across different subreddits.\",\n input: RedditGetUserFlairInput,\n output: RedditGetUserFlairOutput,\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-user-flair.cjs","names":["z","action"],"sources":["../../src/actions/get-user-flair.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { reddit } from \"../app\";\n\nexport const RedditGetUserFlairInput = z.object({\n after: z.string().describe(\"User ID to use as the anchor for fetching the next page of results. Use the 'next' value from a previous response.\").optional(),\n limit: z.number().int().describe(\"Maximum number of user flair entries to return per page. Reddit default is 25, maximum is 1000.\").optional(),\n before: z.string().describe(\"User ID to use as the anchor for fetching the previous page of results. Use the 'prev' value from a previous response.\").optional(),\n subreddit: z.string().describe(\"Name of the subreddit (e.g., 'pics', 'gaming') for which to retrieve user flair assignments. Do not include 'r/' prefix or URL paths — bare name only.\"),\n});\nconst RedditGetUserFlair_UserFlairEntrySchema = z.object({\n user: z.string().describe(\"Username of the Reddit user who has been assigned this flair.\").nullable(),\n flair_text: z.string().describe(\"The text content displayed as the user's flair.\").nullable().optional(),\n flair_css_class: z.string().describe(\"CSS class name applied to the user's flair for visual styling.\").nullable().optional(),\n}).passthrough().describe(\"Represents a single user flair assignment in a subreddit.\");\nexport const RedditGetUserFlairOutput = z.object({\n next: z.string().describe(\"User ID parameter for fetching the subsequent page of results. Used with the 'after' query parameter for pagination.\").nullable().optional(),\n prev: z.string().describe(\"User ID parameter for retrieving the previous page of results. Used with the 'before' query parameter for pagination.\").nullable().optional(),\n users: z.array(RedditGetUserFlair_UserFlairEntrySchema).describe(\"Array of user flair assignments for the subreddit.\"),\n}).passthrough().describe(\"Response containing paginated user flair assignments for a subreddit.\");\n\nexport const redditGetUserFlair: AppAction<\n typeof RedditGetUserFlairInput,\n typeof RedditGetUserFlairOutput,\n typeof reddit.credential\n> = action(\"REDDIT_GET_USER_FLAIR\", {\n slug: \"reddit-get-user-flair\",\n name: \"Get user flair\",\n description: \"Fetches the list of user flair assignments for a given subreddit. Returns paginated results with user flair details. Returned flair_id values are scoped to the specific subreddit and must not be reused across different subreddits.\",\n input: RedditGetUserFlairInput,\n output: RedditGetUserFlairOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,0BAA0BA,IAAAA,EAAE,OAAO;CAC9C,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,oHAAoH,CAAC,CAAC,SAAS;CAC1J,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,iGAAiG,CAAC,CAAC,SAAS;CAC7I,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wHAAwH,CAAC,CAAC,SAAS;CAC/J,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wJAAwJ;AACzL,CAAC;AACD,MAAM,0CAA0CA,IAAAA,EAAE,OAAO;CACvD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+DAA+D,CAAC,CAAC,SAAS;CACpG,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvG,iBAAiBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gEAAgE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC7H,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,2DAA2D;AACrF,MAAa,2BAA2BA,IAAAA,EAAE,OAAO;CAC/C,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sHAAsH,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtK,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uHAAuH,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvK,OAAOA,IAAAA,EAAE,MAAM,uCAAuC,CAAC,CAAC,SAAS,oDAAoD;AACvH,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,uEAAuE;AAEjG,MAAa,qBAITC,eAAAA,OAAO,yBAAyB;CAClC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { reddit } from "../app.cjs";
|
|
2
|
+
import { AppAction } from "@keystrokehq/keystroke/app";
|
|
1
3
|
import { z } from "zod";
|
|
2
4
|
|
|
3
5
|
//#region src/actions/get-user-flair.d.ts
|
|
@@ -16,12 +18,7 @@ declare const RedditGetUserFlairOutput: z.ZodObject<{
|
|
|
16
18
|
flair_css_class: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
17
19
|
}, z.core.$loose>>;
|
|
18
20
|
}, z.core.$loose>;
|
|
19
|
-
declare const redditGetUserFlair:
|
|
20
|
-
subreddit: string;
|
|
21
|
-
after?: string | undefined;
|
|
22
|
-
limit?: number | undefined;
|
|
23
|
-
before?: string | undefined;
|
|
24
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
21
|
+
declare const redditGetUserFlair: AppAction<typeof RedditGetUserFlairInput, typeof RedditGetUserFlairOutput, typeof reddit.credential>;
|
|
25
22
|
//#endregion
|
|
26
23
|
export { redditGetUserFlair };
|
|
27
24
|
//# sourceMappingURL=get-user-flair.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-user-flair.d.cts","names":[],"sources":["../../src/actions/get-user-flair.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-user-flair.d.cts","names":[],"sources":["../../src/actions/get-user-flair.ts"],"mappings":";;;;;cAMa,uBAAA,EAAuB,CAAA,CAAA,SAAA;;;;;;cAWvB,wBAAA,EAAwB,CAAA,CAAA,SAAA;;;;;;;;;cAMxB,kBAAA,EAAoB,SAAA,QACxB,uBAAA,SACA,wBAAA,SACA,MAAA,CAAO,UAAA"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { reddit } from "../app.mjs";
|
|
2
|
+
import { AppAction } from "@keystrokehq/keystroke/app";
|
|
1
3
|
import { z } from "zod";
|
|
2
4
|
|
|
3
5
|
//#region src/actions/get-user-flair.d.ts
|
|
@@ -16,12 +18,7 @@ declare const RedditGetUserFlairOutput: z.ZodObject<{
|
|
|
16
18
|
flair_css_class: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
17
19
|
}, z.core.$loose>>;
|
|
18
20
|
}, z.core.$loose>;
|
|
19
|
-
declare const redditGetUserFlair:
|
|
20
|
-
subreddit: string;
|
|
21
|
-
after?: string | undefined;
|
|
22
|
-
limit?: number | undefined;
|
|
23
|
-
before?: string | undefined;
|
|
24
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
21
|
+
declare const redditGetUserFlair: AppAction<typeof RedditGetUserFlairInput, typeof RedditGetUserFlairOutput, typeof reddit.credential>;
|
|
25
22
|
//#endregion
|
|
26
23
|
export { redditGetUserFlair };
|
|
27
24
|
//# sourceMappingURL=get-user-flair.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-user-flair.d.mts","names":[],"sources":["../../src/actions/get-user-flair.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-user-flair.d.mts","names":[],"sources":["../../src/actions/get-user-flair.ts"],"mappings":";;;;;cAMa,uBAAA,EAAuB,CAAA,CAAA,SAAA;;;;;;cAWvB,wBAAA,EAAwB,CAAA,CAAA,SAAA;;;;;;;;;cAMxB,kBAAA,EAAoB,SAAA,QACxB,uBAAA,SACA,wBAAA,SACA,MAAA,CAAO,UAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-user-flair.mjs","names":[],"sources":["../../src/actions/get-user-flair.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RedditGetUserFlairInput = z.object({\n after: z.string().describe(\"User ID to use as the anchor for fetching the next page of results. Use the 'next' value from a previous response.\").optional(),\n limit: z.number().int().describe(\"Maximum number of user flair entries to return per page. Reddit default is 25, maximum is 1000.\").optional(),\n before: z.string().describe(\"User ID to use as the anchor for fetching the previous page of results. Use the 'prev' value from a previous response.\").optional(),\n subreddit: z.string().describe(\"Name of the subreddit (e.g., 'pics', 'gaming') for which to retrieve user flair assignments. Do not include 'r/' prefix or URL paths — bare name only.\"),\n});\nconst RedditGetUserFlair_UserFlairEntrySchema = z.object({\n user: z.string().describe(\"Username of the Reddit user who has been assigned this flair.\").nullable(),\n flair_text: z.string().describe(\"The text content displayed as the user's flair.\").nullable().optional(),\n flair_css_class: z.string().describe(\"CSS class name applied to the user's flair for visual styling.\").nullable().optional(),\n}).passthrough().describe(\"Represents a single user flair assignment in a subreddit.\");\nexport const RedditGetUserFlairOutput = z.object({\n next: z.string().describe(\"User ID parameter for fetching the subsequent page of results. Used with the 'after' query parameter for pagination.\").nullable().optional(),\n prev: z.string().describe(\"User ID parameter for retrieving the previous page of results. Used with the 'before' query parameter for pagination.\").nullable().optional(),\n users: z.array(RedditGetUserFlair_UserFlairEntrySchema).describe(\"Array of user flair assignments for the subreddit.\"),\n}).passthrough().describe(\"Response containing paginated user flair assignments for a subreddit.\");\n\nexport const redditGetUserFlair = action(\"REDDIT_GET_USER_FLAIR\", {\n slug: \"reddit-get-user-flair\",\n name: \"Get user flair\",\n description: \"Fetches the list of user flair assignments for a given subreddit. Returns paginated results with user flair details. Returned flair_id values are scoped to the specific subreddit and must not be reused across different subreddits.\",\n input: RedditGetUserFlairInput,\n output: RedditGetUserFlairOutput,\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-user-flair.mjs","names":[],"sources":["../../src/actions/get-user-flair.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { reddit } from \"../app\";\n\nexport const RedditGetUserFlairInput = z.object({\n after: z.string().describe(\"User ID to use as the anchor for fetching the next page of results. Use the 'next' value from a previous response.\").optional(),\n limit: z.number().int().describe(\"Maximum number of user flair entries to return per page. Reddit default is 25, maximum is 1000.\").optional(),\n before: z.string().describe(\"User ID to use as the anchor for fetching the previous page of results. Use the 'prev' value from a previous response.\").optional(),\n subreddit: z.string().describe(\"Name of the subreddit (e.g., 'pics', 'gaming') for which to retrieve user flair assignments. Do not include 'r/' prefix or URL paths — bare name only.\"),\n});\nconst RedditGetUserFlair_UserFlairEntrySchema = z.object({\n user: z.string().describe(\"Username of the Reddit user who has been assigned this flair.\").nullable(),\n flair_text: z.string().describe(\"The text content displayed as the user's flair.\").nullable().optional(),\n flair_css_class: z.string().describe(\"CSS class name applied to the user's flair for visual styling.\").nullable().optional(),\n}).passthrough().describe(\"Represents a single user flair assignment in a subreddit.\");\nexport const RedditGetUserFlairOutput = z.object({\n next: z.string().describe(\"User ID parameter for fetching the subsequent page of results. Used with the 'after' query parameter for pagination.\").nullable().optional(),\n prev: z.string().describe(\"User ID parameter for retrieving the previous page of results. Used with the 'before' query parameter for pagination.\").nullable().optional(),\n users: z.array(RedditGetUserFlair_UserFlairEntrySchema).describe(\"Array of user flair assignments for the subreddit.\"),\n}).passthrough().describe(\"Response containing paginated user flair assignments for a subreddit.\");\n\nexport const redditGetUserFlair: AppAction<\n typeof RedditGetUserFlairInput,\n typeof RedditGetUserFlairOutput,\n typeof reddit.credential\n> = action(\"REDDIT_GET_USER_FLAIR\", {\n slug: \"reddit-get-user-flair\",\n name: \"Get user flair\",\n description: \"Fetches the list of user flair assignments for a given subreddit. Returns paginated results with user flair details. Returned flair_id values are scoped to the specific subreddit and must not be reused across different subreddits.\",\n input: RedditGetUserFlairInput,\n output: RedditGetUserFlairOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,0BAA0B,EAAE,OAAO;CAC9C,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,oHAAoH,CAAC,CAAC,SAAS;CAC1J,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,iGAAiG,CAAC,CAAC,SAAS;CAC7I,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,wHAAwH,CAAC,CAAC,SAAS;CAC/J,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,wJAAwJ;AACzL,CAAC;AACD,MAAM,0CAA0C,EAAE,OAAO;CACvD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,+DAA+D,CAAC,CAAC,SAAS;CACpG,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvG,iBAAiB,EAAE,OAAO,CAAC,CAAC,SAAS,gEAAgE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC7H,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,2DAA2D;AAOrF,MAAa,qBAIT,OAAO,yBAAyB;CAClC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAfsC,EAAE,OAAO;EAC/C,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,sHAAsH,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtK,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,uHAAuH,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACvK,OAAO,EAAE,MAAM,uCAAuC,CAAC,CAAC,SAAS,oDAAoD;CACvH,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,uEAWhB;AACV,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-username-available.cjs","names":["z","action"],"sources":["../../src/actions/get-username-available.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RedditGetUsernameAvailableInput = z.object({\n user: z.string().describe(\"The username to check for availability. Must be a valid, unused username string. Usernames are case-insensitive and must be between 3-20 characters.\"),\n});\nexport const RedditGetUsernameAvailableOutput = z.object({\n username: z.string().describe(\"The username that was checked.\").nullable(),\n available: z.boolean().describe(\"Whether the username is available for registration. True if available, False if already taken or invalid.\").nullable(),\n}).passthrough();\n\nexport const redditGetUsernameAvailable = action(\"REDDIT_GET_USERNAME_AVAILABLE\", {\n slug: \"reddit-get-username-available\",\n name: \"Check username availability\",\n description: \"Tool to check whether a username is available for registration on Reddit. Use when you need to verify if a username can be used to create a new account.\",\n input: RedditGetUsernameAvailableInput,\n output: RedditGetUsernameAvailableOutput,\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-username-available.cjs","names":["z","action"],"sources":["../../src/actions/get-username-available.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { reddit } from \"../app\";\n\nexport const RedditGetUsernameAvailableInput = z.object({\n user: z.string().describe(\"The username to check for availability. Must be a valid, unused username string. Usernames are case-insensitive and must be between 3-20 characters.\"),\n});\nexport const RedditGetUsernameAvailableOutput = z.object({\n username: z.string().describe(\"The username that was checked.\").nullable(),\n available: z.boolean().describe(\"Whether the username is available for registration. True if available, False if already taken or invalid.\").nullable(),\n}).passthrough();\n\nexport const redditGetUsernameAvailable: AppAction<\n typeof RedditGetUsernameAvailableInput,\n typeof RedditGetUsernameAvailableOutput,\n typeof reddit.credential\n> = action(\"REDDIT_GET_USERNAME_AVAILABLE\", {\n slug: \"reddit-get-username-available\",\n name: \"Check username availability\",\n description: \"Tool to check whether a username is available for registration on Reddit. Use when you need to verify if a username can be used to create a new account.\",\n input: RedditGetUsernameAvailableInput,\n output: RedditGetUsernameAvailableOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,kCAAkCA,IAAAA,EAAE,OAAO,EACtD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sJAAsJ,EAClL,CAAC;AACD,MAAa,mCAAmCA,IAAAA,EAAE,OAAO;CACvD,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC,CAAC,CAAC,SAAS;CACzE,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,2GAA2G,CAAC,CAAC,SAAS;AACxJ,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,6BAITC,eAAAA,OAAO,iCAAiC;CAC1C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { reddit } from "../app.cjs";
|
|
2
|
+
import { AppAction } from "@keystrokehq/keystroke/app";
|
|
1
3
|
import { z } from "zod";
|
|
2
4
|
|
|
3
5
|
//#region src/actions/get-username-available.d.ts
|
|
@@ -8,9 +10,7 @@ declare const RedditGetUsernameAvailableOutput: z.ZodObject<{
|
|
|
8
10
|
username: z.ZodNullable<z.ZodString>;
|
|
9
11
|
available: z.ZodNullable<z.ZodBoolean>;
|
|
10
12
|
}, z.core.$loose>;
|
|
11
|
-
declare const redditGetUsernameAvailable:
|
|
12
|
-
user: string;
|
|
13
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
13
|
+
declare const redditGetUsernameAvailable: AppAction<typeof RedditGetUsernameAvailableInput, typeof RedditGetUsernameAvailableOutput, typeof reddit.credential>;
|
|
14
14
|
//#endregion
|
|
15
15
|
export { redditGetUsernameAvailable };
|
|
16
16
|
//# sourceMappingURL=get-username-available.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-username-available.d.cts","names":[],"sources":["../../src/actions/get-username-available.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-username-available.d.cts","names":[],"sources":["../../src/actions/get-username-available.ts"],"mappings":";;;;;cAMa,+BAAA,EAA+B,CAAA,CAAA,SAAA;;;cAG/B,gCAAA,EAAgC,CAAA,CAAA,SAAA;;;;cAKhC,0BAAA,EAA4B,SAAA,QAChC,+BAAA,SACA,gCAAA,SACA,MAAA,CAAO,UAAA"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { reddit } from "../app.mjs";
|
|
2
|
+
import { AppAction } from "@keystrokehq/keystroke/app";
|
|
1
3
|
import { z } from "zod";
|
|
2
4
|
|
|
3
5
|
//#region src/actions/get-username-available.d.ts
|
|
@@ -8,9 +10,7 @@ declare const RedditGetUsernameAvailableOutput: z.ZodObject<{
|
|
|
8
10
|
username: z.ZodNullable<z.ZodString>;
|
|
9
11
|
available: z.ZodNullable<z.ZodBoolean>;
|
|
10
12
|
}, z.core.$loose>;
|
|
11
|
-
declare const redditGetUsernameAvailable:
|
|
12
|
-
user: string;
|
|
13
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
13
|
+
declare const redditGetUsernameAvailable: AppAction<typeof RedditGetUsernameAvailableInput, typeof RedditGetUsernameAvailableOutput, typeof reddit.credential>;
|
|
14
14
|
//#endregion
|
|
15
15
|
export { redditGetUsernameAvailable };
|
|
16
16
|
//# sourceMappingURL=get-username-available.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-username-available.d.mts","names":[],"sources":["../../src/actions/get-username-available.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-username-available.d.mts","names":[],"sources":["../../src/actions/get-username-available.ts"],"mappings":";;;;;cAMa,+BAAA,EAA+B,CAAA,CAAA,SAAA;;;cAG/B,gCAAA,EAAgC,CAAA,CAAA,SAAA;;;;cAKhC,0BAAA,EAA4B,SAAA,QAChC,+BAAA,SACA,gCAAA,SACA,MAAA,CAAO,UAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-username-available.mjs","names":[],"sources":["../../src/actions/get-username-available.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RedditGetUsernameAvailableInput = z.object({\n user: z.string().describe(\"The username to check for availability. Must be a valid, unused username string. Usernames are case-insensitive and must be between 3-20 characters.\"),\n});\nexport const RedditGetUsernameAvailableOutput = z.object({\n username: z.string().describe(\"The username that was checked.\").nullable(),\n available: z.boolean().describe(\"Whether the username is available for registration. True if available, False if already taken or invalid.\").nullable(),\n}).passthrough();\n\nexport const redditGetUsernameAvailable = action(\"REDDIT_GET_USERNAME_AVAILABLE\", {\n slug: \"reddit-get-username-available\",\n name: \"Check username availability\",\n description: \"Tool to check whether a username is available for registration on Reddit. Use when you need to verify if a username can be used to create a new account.\",\n input: RedditGetUsernameAvailableInput,\n output: RedditGetUsernameAvailableOutput,\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-username-available.mjs","names":[],"sources":["../../src/actions/get-username-available.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { reddit } from \"../app\";\n\nexport const RedditGetUsernameAvailableInput = z.object({\n user: z.string().describe(\"The username to check for availability. Must be a valid, unused username string. Usernames are case-insensitive and must be between 3-20 characters.\"),\n});\nexport const RedditGetUsernameAvailableOutput = z.object({\n username: z.string().describe(\"The username that was checked.\").nullable(),\n available: z.boolean().describe(\"Whether the username is available for registration. True if available, False if already taken or invalid.\").nullable(),\n}).passthrough();\n\nexport const redditGetUsernameAvailable: AppAction<\n typeof RedditGetUsernameAvailableInput,\n typeof RedditGetUsernameAvailableOutput,\n typeof reddit.credential\n> = action(\"REDDIT_GET_USERNAME_AVAILABLE\", {\n slug: \"reddit-get-username-available\",\n name: \"Check username availability\",\n description: \"Tool to check whether a username is available for registration on Reddit. Use when you need to verify if a username can be used to create a new account.\",\n input: RedditGetUsernameAvailableInput,\n output: RedditGetUsernameAvailableOutput,\n});\n"],"mappings":";;;AAcA,MAAa,6BAIT,OAAO,iCAAiC;CAC1C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAhB6C,EAAE,OAAO,EACtD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,sJAAsJ,EAClL,CAcS;CACP,QAd8C,EAAE,OAAO;EACvD,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC,CAAC,CAAC,SAAS;EACzE,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,2GAA2G,CAAC,CAAC,SAAS;CACxJ,CAAC,CAAC,CAAC,YAWO;AACV,CAAC"}
|
package/dist/actions/get.cjs
CHANGED
package/dist/actions/get.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.cjs","names":["z","action"],"sources":["../../src/actions/get.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RedditGetInput = z.object({\n show: z.string().describe(\"The string 'all' to show all posts including filtered ones.\").optional(),\n sort: z.string().describe(\"The sorting method for results. Valid values: hot, new, top, rising, controversial, best. Note: 'random' is NOT supported here - use the GET_RANDOM action instead.\"),\n after: z.string().describe(\"Fullname of a thing for pagination (loads posts after this item).\").optional(),\n count: z.number().int().describe(\"A positive integer representing the number of items already seen (default: 0).\").optional(),\n limit: z.number().int().describe(\"The maximum number of items desired (default: 25, maximum: 100).\").optional(),\n before: z.string().describe(\"Fullname of a thing for pagination (loads posts before this item).\").optional(),\n time_filter: z.string().describe(\"Time filter for 'top' and 'controversial' sorts. Valid values: hour, day, week, month, year, all.\").optional(),\n}).describe(\"Request model for getting a listing of Reddit posts sorted by a specific method.\");\nconst RedditGet_PostDataSchema = z.object({\n id: z.string().describe(\"Unique identifier of the post in base36 format.\").nullable(),\n ups: z.number().int().describe(\"Number of upvotes received.\").nullable(),\n url: z.string().describe(\"URL the post links to, or the permalink if a self post.\").nullable(),\n name: z.string().describe(\"Fullname of the post, combining type prefix and ID (e.g., 't3_abc123').\").nullable(),\n score: z.number().int().describe(\"Net score of the post, calculated as upvotes minus downvotes.\").nullable(),\n title: z.string().describe(\"The title of the post.\").nullable(),\n author: z.string().describe(\"Username of the post author, null if deleted or promotional link.\").nullable().optional(),\n locked: z.boolean().describe(\"Whether the post is locked and closed to new comments.\").nullable().optional(),\n is_self: z.boolean().describe(\"Whether the post is a self/text post (true) or link post (false).\").nullable(),\n over_18: z.boolean().describe(\"Whether the post is marked as NSFW (Not Safe For Work).\").nullable(),\n spoiler: z.boolean().describe(\"Whether the post is marked as containing spoilers.\").nullable().optional(),\n is_video: z.boolean().describe(\"Whether the post contains a video hosted on Reddit.\").nullable().optional(),\n selftext: z.string().describe(\"Raw body text for self/text posts with markdown characters, empty string for link posts.\").nullable().optional(),\n stickied: z.boolean().describe(\"Whether the post is stickied/pinned in the subreddit.\").nullable().optional(),\n permalink: z.string().describe(\"Relative URL path to the permanent link of the post.\").nullable(),\n subreddit: z.string().describe(\"Name of the subreddit without the /r/ prefix.\").nullable(),\n thumbnail: z.string().describe(\"URL to thumbnail image, or 'self', 'default', 'nsfw', etc.\").nullable().optional(),\n created_utc: z.number().describe(\"Unix timestamp of post creation in UTC epoch-seconds.\").nullable(),\n num_comments: z.number().int().describe(\"Total number of comments on the post.\").nullable(),\n upvote_ratio: z.number().describe(\"Percentage ratio of upvotes from total votes.\").nullable().optional(),\n subreddit_name_prefixed: z.string().describe(\"Subreddit name with 'r/' prefix (e.g., 'r/programming').\").nullable().optional(),\n}).passthrough().describe(\"The actual post data object containing essential post fields.\");\nconst RedditGet_PostChildSchema = z.object({\n data: RedditGet_PostDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the post object, always 't3' for links/posts.\").nullable(),\n}).passthrough().describe(\"Wrapper object for each post in the children array.\");\nconst RedditGet_ListingDataSchema = z.object({\n dist: z.number().int().describe(\"The number of children returned in this listing.\").nullable().optional(),\n after: z.string().describe(\"Fullname of the last item in the listing, used for pagination.\").nullable().optional(),\n before: z.string().describe(\"Fullname of the first item in the listing, used for pagination.\").nullable().optional(),\n modhash: z.string().describe(\"Modhash token for the current session.\").nullable().optional(),\n children: z.array(RedditGet_PostChildSchema).describe(\"Array of post objects.\"),\n}).passthrough().describe(\"Container object holding the listing response data.\");\nexport const RedditGetOutput = z.object({\n data: RedditGet_ListingDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the response wrapper, typically 'Listing' for post queries.\").nullable(),\n}).passthrough().describe(\"Response from getting a listing of Reddit posts.\");\n\nexport const redditGet = action(\"REDDIT_GET\", {\n slug: \"reddit-get\",\n name: \"Get Reddit listing by sort\",\n description: \"Tool to retrieve a listing of Reddit posts sorted by the specified criteria (hot, new, top, etc.). Use when you need to get posts from the Reddit front page or all of Reddit with a specific sort order. Supports pagination and time filtering for top/controversial sorts.\",\n input: RedditGetInput,\n output: RedditGetOutput,\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get.cjs","names":["z","action"],"sources":["../../src/actions/get.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { reddit } from \"../app\";\n\nexport const RedditGetInput = z.object({\n show: z.string().describe(\"The string 'all' to show all posts including filtered ones.\").optional(),\n sort: z.string().describe(\"The sorting method for results. Valid values: hot, new, top, rising, controversial, best. Note: 'random' is NOT supported here - use the GET_RANDOM action instead.\"),\n after: z.string().describe(\"Fullname of a thing for pagination (loads posts after this item).\").optional(),\n count: z.number().int().describe(\"A positive integer representing the number of items already seen (default: 0).\").optional(),\n limit: z.number().int().describe(\"The maximum number of items desired (default: 25, maximum: 100).\").optional(),\n before: z.string().describe(\"Fullname of a thing for pagination (loads posts before this item).\").optional(),\n time_filter: z.string().describe(\"Time filter for 'top' and 'controversial' sorts. Valid values: hour, day, week, month, year, all.\").optional(),\n}).describe(\"Request model for getting a listing of Reddit posts sorted by a specific method.\");\nconst RedditGet_PostDataSchema = z.object({\n id: z.string().describe(\"Unique identifier of the post in base36 format.\").nullable(),\n ups: z.number().int().describe(\"Number of upvotes received.\").nullable(),\n url: z.string().describe(\"URL the post links to, or the permalink if a self post.\").nullable(),\n name: z.string().describe(\"Fullname of the post, combining type prefix and ID (e.g., 't3_abc123').\").nullable(),\n score: z.number().int().describe(\"Net score of the post, calculated as upvotes minus downvotes.\").nullable(),\n title: z.string().describe(\"The title of the post.\").nullable(),\n author: z.string().describe(\"Username of the post author, null if deleted or promotional link.\").nullable().optional(),\n locked: z.boolean().describe(\"Whether the post is locked and closed to new comments.\").nullable().optional(),\n is_self: z.boolean().describe(\"Whether the post is a self/text post (true) or link post (false).\").nullable(),\n over_18: z.boolean().describe(\"Whether the post is marked as NSFW (Not Safe For Work).\").nullable(),\n spoiler: z.boolean().describe(\"Whether the post is marked as containing spoilers.\").nullable().optional(),\n is_video: z.boolean().describe(\"Whether the post contains a video hosted on Reddit.\").nullable().optional(),\n selftext: z.string().describe(\"Raw body text for self/text posts with markdown characters, empty string for link posts.\").nullable().optional(),\n stickied: z.boolean().describe(\"Whether the post is stickied/pinned in the subreddit.\").nullable().optional(),\n permalink: z.string().describe(\"Relative URL path to the permanent link of the post.\").nullable(),\n subreddit: z.string().describe(\"Name of the subreddit without the /r/ prefix.\").nullable(),\n thumbnail: z.string().describe(\"URL to thumbnail image, or 'self', 'default', 'nsfw', etc.\").nullable().optional(),\n created_utc: z.number().describe(\"Unix timestamp of post creation in UTC epoch-seconds.\").nullable(),\n num_comments: z.number().int().describe(\"Total number of comments on the post.\").nullable(),\n upvote_ratio: z.number().describe(\"Percentage ratio of upvotes from total votes.\").nullable().optional(),\n subreddit_name_prefixed: z.string().describe(\"Subreddit name with 'r/' prefix (e.g., 'r/programming').\").nullable().optional(),\n}).passthrough().describe(\"The actual post data object containing essential post fields.\");\nconst RedditGet_PostChildSchema = z.object({\n data: RedditGet_PostDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the post object, always 't3' for links/posts.\").nullable(),\n}).passthrough().describe(\"Wrapper object for each post in the children array.\");\nconst RedditGet_ListingDataSchema = z.object({\n dist: z.number().int().describe(\"The number of children returned in this listing.\").nullable().optional(),\n after: z.string().describe(\"Fullname of the last item in the listing, used for pagination.\").nullable().optional(),\n before: z.string().describe(\"Fullname of the first item in the listing, used for pagination.\").nullable().optional(),\n modhash: z.string().describe(\"Modhash token for the current session.\").nullable().optional(),\n children: z.array(RedditGet_PostChildSchema).describe(\"Array of post objects.\"),\n}).passthrough().describe(\"Container object holding the listing response data.\");\nexport const RedditGetOutput = z.object({\n data: RedditGet_ListingDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the response wrapper, typically 'Listing' for post queries.\").nullable(),\n}).passthrough().describe(\"Response from getting a listing of Reddit posts.\");\n\nexport const redditGet: AppAction<\n typeof RedditGetInput,\n typeof RedditGetOutput,\n typeof reddit.credential\n> = action(\"REDDIT_GET\", {\n slug: \"reddit-get\",\n name: \"Get Reddit listing by sort\",\n description: \"Tool to retrieve a listing of Reddit posts sorted by the specified criteria (hot, new, top, etc.). Use when you need to get posts from the Reddit front page or all of Reddit with a specific sort order. Supports pagination and time filtering for top/controversial sorts.\",\n input: RedditGetInput,\n output: RedditGetOutput,\n});\n"],"mappings":"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"}
|
package/dist/actions/get.d.cts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { reddit } from "../app.cjs";
|
|
2
|
+
import { AppAction } from "@keystrokehq/keystroke/app";
|
|
1
3
|
import { z } from "zod";
|
|
2
4
|
|
|
3
5
|
//#region src/actions/get.d.ts
|
|
@@ -45,15 +47,7 @@ declare const RedditGetOutput: z.ZodObject<{
|
|
|
45
47
|
}, z.core.$loose>>;
|
|
46
48
|
kind: z.ZodNullable<z.ZodString>;
|
|
47
49
|
}, z.core.$loose>;
|
|
48
|
-
declare const redditGet:
|
|
49
|
-
sort: string;
|
|
50
|
-
show?: string | undefined;
|
|
51
|
-
after?: string | undefined;
|
|
52
|
-
count?: number | undefined;
|
|
53
|
-
limit?: number | undefined;
|
|
54
|
-
before?: string | undefined;
|
|
55
|
-
time_filter?: string | undefined;
|
|
56
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
50
|
+
declare const redditGet: AppAction<typeof RedditGetInput, typeof RedditGetOutput, typeof reddit.credential>;
|
|
57
51
|
//#endregion
|
|
58
52
|
export { redditGet };
|
|
59
53
|
//# sourceMappingURL=get.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.d.cts","names":[],"sources":["../../src/actions/get.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get.d.cts","names":[],"sources":["../../src/actions/get.ts"],"mappings":";;;;;cAMa,cAAA,EAAc,CAAA,CAAA,SAAA;;;;;;;;;cA2Cd,eAAA,EAAe,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAKf,SAAA,EAAW,SAAA,QACf,cAAA,SACA,eAAA,SACA,MAAA,CAAO,UAAA"}
|
package/dist/actions/get.d.mts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { reddit } from "../app.mjs";
|
|
2
|
+
import { AppAction } from "@keystrokehq/keystroke/app";
|
|
1
3
|
import { z } from "zod";
|
|
2
4
|
|
|
3
5
|
//#region src/actions/get.d.ts
|
|
@@ -45,15 +47,7 @@ declare const RedditGetOutput: z.ZodObject<{
|
|
|
45
47
|
}, z.core.$loose>>;
|
|
46
48
|
kind: z.ZodNullable<z.ZodString>;
|
|
47
49
|
}, z.core.$loose>;
|
|
48
|
-
declare const redditGet:
|
|
49
|
-
sort: string;
|
|
50
|
-
show?: string | undefined;
|
|
51
|
-
after?: string | undefined;
|
|
52
|
-
count?: number | undefined;
|
|
53
|
-
limit?: number | undefined;
|
|
54
|
-
before?: string | undefined;
|
|
55
|
-
time_filter?: string | undefined;
|
|
56
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
50
|
+
declare const redditGet: AppAction<typeof RedditGetInput, typeof RedditGetOutput, typeof reddit.credential>;
|
|
57
51
|
//#endregion
|
|
58
52
|
export { redditGet };
|
|
59
53
|
//# sourceMappingURL=get.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.d.mts","names":[],"sources":["../../src/actions/get.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get.d.mts","names":[],"sources":["../../src/actions/get.ts"],"mappings":";;;;;cAMa,cAAA,EAAc,CAAA,CAAA,SAAA;;;;;;;;;cA2Cd,eAAA,EAAe,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAKf,SAAA,EAAW,SAAA,QACf,cAAA,SACA,eAAA,SACA,MAAA,CAAO,UAAA"}
|
package/dist/actions/get.mjs
CHANGED
package/dist/actions/get.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.mjs","names":[],"sources":["../../src/actions/get.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RedditGetInput = z.object({\n show: z.string().describe(\"The string 'all' to show all posts including filtered ones.\").optional(),\n sort: z.string().describe(\"The sorting method for results. Valid values: hot, new, top, rising, controversial, best. Note: 'random' is NOT supported here - use the GET_RANDOM action instead.\"),\n after: z.string().describe(\"Fullname of a thing for pagination (loads posts after this item).\").optional(),\n count: z.number().int().describe(\"A positive integer representing the number of items already seen (default: 0).\").optional(),\n limit: z.number().int().describe(\"The maximum number of items desired (default: 25, maximum: 100).\").optional(),\n before: z.string().describe(\"Fullname of a thing for pagination (loads posts before this item).\").optional(),\n time_filter: z.string().describe(\"Time filter for 'top' and 'controversial' sorts. Valid values: hour, day, week, month, year, all.\").optional(),\n}).describe(\"Request model for getting a listing of Reddit posts sorted by a specific method.\");\nconst RedditGet_PostDataSchema = z.object({\n id: z.string().describe(\"Unique identifier of the post in base36 format.\").nullable(),\n ups: z.number().int().describe(\"Number of upvotes received.\").nullable(),\n url: z.string().describe(\"URL the post links to, or the permalink if a self post.\").nullable(),\n name: z.string().describe(\"Fullname of the post, combining type prefix and ID (e.g., 't3_abc123').\").nullable(),\n score: z.number().int().describe(\"Net score of the post, calculated as upvotes minus downvotes.\").nullable(),\n title: z.string().describe(\"The title of the post.\").nullable(),\n author: z.string().describe(\"Username of the post author, null if deleted or promotional link.\").nullable().optional(),\n locked: z.boolean().describe(\"Whether the post is locked and closed to new comments.\").nullable().optional(),\n is_self: z.boolean().describe(\"Whether the post is a self/text post (true) or link post (false).\").nullable(),\n over_18: z.boolean().describe(\"Whether the post is marked as NSFW (Not Safe For Work).\").nullable(),\n spoiler: z.boolean().describe(\"Whether the post is marked as containing spoilers.\").nullable().optional(),\n is_video: z.boolean().describe(\"Whether the post contains a video hosted on Reddit.\").nullable().optional(),\n selftext: z.string().describe(\"Raw body text for self/text posts with markdown characters, empty string for link posts.\").nullable().optional(),\n stickied: z.boolean().describe(\"Whether the post is stickied/pinned in the subreddit.\").nullable().optional(),\n permalink: z.string().describe(\"Relative URL path to the permanent link of the post.\").nullable(),\n subreddit: z.string().describe(\"Name of the subreddit without the /r/ prefix.\").nullable(),\n thumbnail: z.string().describe(\"URL to thumbnail image, or 'self', 'default', 'nsfw', etc.\").nullable().optional(),\n created_utc: z.number().describe(\"Unix timestamp of post creation in UTC epoch-seconds.\").nullable(),\n num_comments: z.number().int().describe(\"Total number of comments on the post.\").nullable(),\n upvote_ratio: z.number().describe(\"Percentage ratio of upvotes from total votes.\").nullable().optional(),\n subreddit_name_prefixed: z.string().describe(\"Subreddit name with 'r/' prefix (e.g., 'r/programming').\").nullable().optional(),\n}).passthrough().describe(\"The actual post data object containing essential post fields.\");\nconst RedditGet_PostChildSchema = z.object({\n data: RedditGet_PostDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the post object, always 't3' for links/posts.\").nullable(),\n}).passthrough().describe(\"Wrapper object for each post in the children array.\");\nconst RedditGet_ListingDataSchema = z.object({\n dist: z.number().int().describe(\"The number of children returned in this listing.\").nullable().optional(),\n after: z.string().describe(\"Fullname of the last item in the listing, used for pagination.\").nullable().optional(),\n before: z.string().describe(\"Fullname of the first item in the listing, used for pagination.\").nullable().optional(),\n modhash: z.string().describe(\"Modhash token for the current session.\").nullable().optional(),\n children: z.array(RedditGet_PostChildSchema).describe(\"Array of post objects.\"),\n}).passthrough().describe(\"Container object holding the listing response data.\");\nexport const RedditGetOutput = z.object({\n data: RedditGet_ListingDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the response wrapper, typically 'Listing' for post queries.\").nullable(),\n}).passthrough().describe(\"Response from getting a listing of Reddit posts.\");\n\nexport const redditGet = action(\"REDDIT_GET\", {\n slug: \"reddit-get\",\n name: \"Get Reddit listing by sort\",\n description: \"Tool to retrieve a listing of Reddit posts sorted by the specified criteria (hot, new, top, etc.). Use when you need to get posts from the Reddit front page or all of Reddit with a specific sort order. Supports pagination and time filtering for top/controversial sorts.\",\n input: RedditGetInput,\n output: RedditGetOutput,\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"get.mjs","names":[],"sources":["../../src/actions/get.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { reddit } from \"../app\";\n\nexport const RedditGetInput = z.object({\n show: z.string().describe(\"The string 'all' to show all posts including filtered ones.\").optional(),\n sort: z.string().describe(\"The sorting method for results. Valid values: hot, new, top, rising, controversial, best. Note: 'random' is NOT supported here - use the GET_RANDOM action instead.\"),\n after: z.string().describe(\"Fullname of a thing for pagination (loads posts after this item).\").optional(),\n count: z.number().int().describe(\"A positive integer representing the number of items already seen (default: 0).\").optional(),\n limit: z.number().int().describe(\"The maximum number of items desired (default: 25, maximum: 100).\").optional(),\n before: z.string().describe(\"Fullname of a thing for pagination (loads posts before this item).\").optional(),\n time_filter: z.string().describe(\"Time filter for 'top' and 'controversial' sorts. Valid values: hour, day, week, month, year, all.\").optional(),\n}).describe(\"Request model for getting a listing of Reddit posts sorted by a specific method.\");\nconst RedditGet_PostDataSchema = z.object({\n id: z.string().describe(\"Unique identifier of the post in base36 format.\").nullable(),\n ups: z.number().int().describe(\"Number of upvotes received.\").nullable(),\n url: z.string().describe(\"URL the post links to, or the permalink if a self post.\").nullable(),\n name: z.string().describe(\"Fullname of the post, combining type prefix and ID (e.g., 't3_abc123').\").nullable(),\n score: z.number().int().describe(\"Net score of the post, calculated as upvotes minus downvotes.\").nullable(),\n title: z.string().describe(\"The title of the post.\").nullable(),\n author: z.string().describe(\"Username of the post author, null if deleted or promotional link.\").nullable().optional(),\n locked: z.boolean().describe(\"Whether the post is locked and closed to new comments.\").nullable().optional(),\n is_self: z.boolean().describe(\"Whether the post is a self/text post (true) or link post (false).\").nullable(),\n over_18: z.boolean().describe(\"Whether the post is marked as NSFW (Not Safe For Work).\").nullable(),\n spoiler: z.boolean().describe(\"Whether the post is marked as containing spoilers.\").nullable().optional(),\n is_video: z.boolean().describe(\"Whether the post contains a video hosted on Reddit.\").nullable().optional(),\n selftext: z.string().describe(\"Raw body text for self/text posts with markdown characters, empty string for link posts.\").nullable().optional(),\n stickied: z.boolean().describe(\"Whether the post is stickied/pinned in the subreddit.\").nullable().optional(),\n permalink: z.string().describe(\"Relative URL path to the permanent link of the post.\").nullable(),\n subreddit: z.string().describe(\"Name of the subreddit without the /r/ prefix.\").nullable(),\n thumbnail: z.string().describe(\"URL to thumbnail image, or 'self', 'default', 'nsfw', etc.\").nullable().optional(),\n created_utc: z.number().describe(\"Unix timestamp of post creation in UTC epoch-seconds.\").nullable(),\n num_comments: z.number().int().describe(\"Total number of comments on the post.\").nullable(),\n upvote_ratio: z.number().describe(\"Percentage ratio of upvotes from total votes.\").nullable().optional(),\n subreddit_name_prefixed: z.string().describe(\"Subreddit name with 'r/' prefix (e.g., 'r/programming').\").nullable().optional(),\n}).passthrough().describe(\"The actual post data object containing essential post fields.\");\nconst RedditGet_PostChildSchema = z.object({\n data: RedditGet_PostDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the post object, always 't3' for links/posts.\").nullable(),\n}).passthrough().describe(\"Wrapper object for each post in the children array.\");\nconst RedditGet_ListingDataSchema = z.object({\n dist: z.number().int().describe(\"The number of children returned in this listing.\").nullable().optional(),\n after: z.string().describe(\"Fullname of the last item in the listing, used for pagination.\").nullable().optional(),\n before: z.string().describe(\"Fullname of the first item in the listing, used for pagination.\").nullable().optional(),\n modhash: z.string().describe(\"Modhash token for the current session.\").nullable().optional(),\n children: z.array(RedditGet_PostChildSchema).describe(\"Array of post objects.\"),\n}).passthrough().describe(\"Container object holding the listing response data.\");\nexport const RedditGetOutput = z.object({\n data: RedditGet_ListingDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the response wrapper, typically 'Listing' for post queries.\").nullable(),\n}).passthrough().describe(\"Response from getting a listing of Reddit posts.\");\n\nexport const redditGet: AppAction<\n typeof RedditGetInput,\n typeof RedditGetOutput,\n typeof reddit.credential\n> = action(\"REDDIT_GET\", {\n slug: \"reddit-get\",\n name: \"Get Reddit listing by sort\",\n description: \"Tool to retrieve a listing of Reddit posts sorted by the specified criteria (hot, new, top, etc.). Use when you need to get posts from the Reddit front page or all of Reddit with a specific sort order. Supports pagination and time filtering for top/controversial sorts.\",\n input: RedditGetInput,\n output: RedditGetOutput,\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-subreddit-post-flairs.cjs","names":["z","action"],"sources":["../../src/actions/list-subreddit-post-flairs.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RedditListSubredditPostFlairsInput = z.object({\n subreddit: z.string().describe(\"The name of the subreddit (without 'r/' prefix) for which to retrieve available post/link flairs.\"),\n});\nconst RedditListSubredditPostFlairs_FlairRichtextElementSchema = z.object({\n a: z.string().describe(\"Emoji shortcode for 'emoji' type elements.\").nullable().optional(),\n e: z.string().describe(\"Element type (e.g., 'text', 'emoji').\").nullable(),\n t: z.string().describe(\"Text content for 'text' type elements.\").nullable().optional(),\n u: z.string().describe(\"URL for emoji image.\").nullable().optional(),\n}).passthrough().describe(\"Element in a richtext flair array.\");\nconst RedditListSubredditPostFlairs_FlairTemplateSchema = z.object({\n id: z.string().describe(\"Unique identifier for the flair template (same as flair_template_id).\").nullable(),\n text: z.string().describe(\"Display text content of the flair.\").nullable(),\n type: z.string().describe(\"Type of the flair template (e.g., 'text', 'richtext').\").nullable().optional(),\n mod_only: z.boolean().describe(\"Whether this flair is restricted to moderators only.\").nullable().optional(),\n richtext: z.array(RedditListSubredditPostFlairs_FlairRichtextElementSchema).describe(\"Rich text formatting information for the flair, containing emoji and text elements.\").nullable().optional(),\n css_class: z.string().describe(\"CSS class name applied to the flair for styling.\").nullable().optional(),\n max_emojis: z.number().int().describe(\"Maximum number of emojis allowed in the flair text.\").nullable().optional(),\n text_color: z.string().describe(\"Color of the flair text (e.g., 'dark', 'light').\").nullable().optional(),\n text_editable: z.boolean().describe(\"Whether users can edit the flair text when applying it to their post.\").nullable(),\n background_color: z.string().describe(\"Background color of the flair (hex color code or named color).\").nullable().optional(),\n allowable_content: z.string().describe(\"Types of content allowed in the flair (e.g., 'all', 'emoji', 'text').\").nullable().optional(),\n flair_template_id: z.string().describe(\"Template identifier used when submitting posts with flair. Pass this value as 'flair_id' parameter when creating posts. If not provided, use the 'id' field instead.\").nullable().optional(),\n}).passthrough().describe(\"Represents a single link/post flair template available in a subreddit.\");\nexport const RedditListSubredditPostFlairsOutput = z.object({\n flairs: z.array(RedditListSubredditPostFlairs_FlairTemplateSchema).describe(\"Array of flair templates available for posts/links in the subreddit.\"),\n}).passthrough().describe(\"Response containing the list of available post/link flair templates for a subreddit.\");\n\nexport const redditListSubredditPostFlairs = action(\"REDDIT_LIST_SUBREDDIT_POST_FLAIRS\", {\n slug: \"reddit-list-subreddit-post-flairs\",\n name: \"List subreddit post flairs\",\n description: \"List available link/post flairs for a subreddit (including flair_template_id) so posts can satisfy flair-required validation. Use when you need to discover valid flair IDs before creating a post in a subreddit that requires flair. Note: Reddit may return empty or deny access if the authenticated user cannot set link flair and is not a moderator.\",\n input: RedditListSubredditPostFlairsInput,\n output: RedditListSubredditPostFlairsOutput,\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"list-subreddit-post-flairs.cjs","names":["z","action"],"sources":["../../src/actions/list-subreddit-post-flairs.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { reddit } from \"../app\";\n\nexport const RedditListSubredditPostFlairsInput = z.object({\n subreddit: z.string().describe(\"The name of the subreddit (without 'r/' prefix) for which to retrieve available post/link flairs.\"),\n});\nconst RedditListSubredditPostFlairs_FlairRichtextElementSchema = z.object({\n a: z.string().describe(\"Emoji shortcode for 'emoji' type elements.\").nullable().optional(),\n e: z.string().describe(\"Element type (e.g., 'text', 'emoji').\").nullable(),\n t: z.string().describe(\"Text content for 'text' type elements.\").nullable().optional(),\n u: z.string().describe(\"URL for emoji image.\").nullable().optional(),\n}).passthrough().describe(\"Element in a richtext flair array.\");\nconst RedditListSubredditPostFlairs_FlairTemplateSchema = z.object({\n id: z.string().describe(\"Unique identifier for the flair template (same as flair_template_id).\").nullable(),\n text: z.string().describe(\"Display text content of the flair.\").nullable(),\n type: z.string().describe(\"Type of the flair template (e.g., 'text', 'richtext').\").nullable().optional(),\n mod_only: z.boolean().describe(\"Whether this flair is restricted to moderators only.\").nullable().optional(),\n richtext: z.array(RedditListSubredditPostFlairs_FlairRichtextElementSchema).describe(\"Rich text formatting information for the flair, containing emoji and text elements.\").nullable().optional(),\n css_class: z.string().describe(\"CSS class name applied to the flair for styling.\").nullable().optional(),\n max_emojis: z.number().int().describe(\"Maximum number of emojis allowed in the flair text.\").nullable().optional(),\n text_color: z.string().describe(\"Color of the flair text (e.g., 'dark', 'light').\").nullable().optional(),\n text_editable: z.boolean().describe(\"Whether users can edit the flair text when applying it to their post.\").nullable(),\n background_color: z.string().describe(\"Background color of the flair (hex color code or named color).\").nullable().optional(),\n allowable_content: z.string().describe(\"Types of content allowed in the flair (e.g., 'all', 'emoji', 'text').\").nullable().optional(),\n flair_template_id: z.string().describe(\"Template identifier used when submitting posts with flair. Pass this value as 'flair_id' parameter when creating posts. If not provided, use the 'id' field instead.\").nullable().optional(),\n}).passthrough().describe(\"Represents a single link/post flair template available in a subreddit.\");\nexport const RedditListSubredditPostFlairsOutput = z.object({\n flairs: z.array(RedditListSubredditPostFlairs_FlairTemplateSchema).describe(\"Array of flair templates available for posts/links in the subreddit.\"),\n}).passthrough().describe(\"Response containing the list of available post/link flair templates for a subreddit.\");\n\nexport const redditListSubredditPostFlairs: AppAction<\n typeof RedditListSubredditPostFlairsInput,\n typeof RedditListSubredditPostFlairsOutput,\n typeof reddit.credential\n> = action(\"REDDIT_LIST_SUBREDDIT_POST_FLAIRS\", {\n slug: \"reddit-list-subreddit-post-flairs\",\n name: \"List subreddit post flairs\",\n description: \"List available link/post flairs for a subreddit (including flair_template_id) so posts can satisfy flair-required validation. Use when you need to discover valid flair IDs before creating a post in a subreddit that requires flair. Note: Reddit may return empty or deny access if the authenticated user cannot set link flair and is not a moderator.\",\n input: RedditListSubredditPostFlairsInput,\n output: RedditListSubredditPostFlairsOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,qCAAqCA,IAAAA,EAAE,OAAO,EACzD,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mGAAmG,EACpI,CAAC;AACD,MAAM,2DAA2DA,IAAAA,EAAE,OAAO;CACxE,GAAGA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzF,GAAGA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS;CACzE,GAAGA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrF,GAAGA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sBAAsB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACrE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,oCAAoC;AAC9D,MAAM,oDAAoDA,IAAAA,EAAE,OAAO;CACjE,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS;CAC1G,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS;CACzE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wDAAwD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxG,UAAUA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3G,UAAUA,IAAAA,EAAE,MAAM,wDAAwD,CAAC,CAAC,SAAS,qFAAqF,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChM,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kDAAkD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvG,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjH,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kDAAkD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxG,eAAeA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS;CACtH,kBAAkBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gEAAgE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC5H,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACpI,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sKAAsK,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACrO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,wEAAwE;AAClG,MAAa,sCAAsCA,IAAAA,EAAE,OAAO,EAC1D,QAAQA,IAAAA,EAAE,MAAM,iDAAiD,CAAC,CAAC,SAAS,sEAAsE,EACpJ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,sFAAsF;AAEhH,MAAa,gCAITC,eAAAA,OAAO,qCAAqC;CAC9C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { reddit } from "../app.cjs";
|
|
2
|
+
import { AppAction } from "@keystrokehq/keystroke/app";
|
|
1
3
|
import { z } from "zod";
|
|
2
4
|
|
|
3
5
|
//#region src/actions/list-subreddit-post-flairs.d.ts
|
|
@@ -25,9 +27,7 @@ declare const RedditListSubredditPostFlairsOutput: z.ZodObject<{
|
|
|
25
27
|
flair_template_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
26
28
|
}, z.core.$loose>>;
|
|
27
29
|
}, z.core.$loose>;
|
|
28
|
-
declare const redditListSubredditPostFlairs:
|
|
29
|
-
subreddit: string;
|
|
30
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
30
|
+
declare const redditListSubredditPostFlairs: AppAction<typeof RedditListSubredditPostFlairsInput, typeof RedditListSubredditPostFlairsOutput, typeof reddit.credential>;
|
|
31
31
|
//#endregion
|
|
32
32
|
export { redditListSubredditPostFlairs };
|
|
33
33
|
//# sourceMappingURL=list-subreddit-post-flairs.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-subreddit-post-flairs.d.cts","names":[],"sources":["../../src/actions/list-subreddit-post-flairs.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"list-subreddit-post-flairs.d.cts","names":[],"sources":["../../src/actions/list-subreddit-post-flairs.ts"],"mappings":";;;;;cAMa,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;cAuBlC,mCAAA,EAAmC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;cAInC,6BAAA,EAA+B,SAAA,QACnC,kCAAA,SACA,mCAAA,SACA,MAAA,CAAO,UAAA"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { reddit } from "../app.mjs";
|
|
2
|
+
import { AppAction } from "@keystrokehq/keystroke/app";
|
|
1
3
|
import { z } from "zod";
|
|
2
4
|
|
|
3
5
|
//#region src/actions/list-subreddit-post-flairs.d.ts
|
|
@@ -25,9 +27,7 @@ declare const RedditListSubredditPostFlairsOutput: z.ZodObject<{
|
|
|
25
27
|
flair_template_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
26
28
|
}, z.core.$loose>>;
|
|
27
29
|
}, z.core.$loose>;
|
|
28
|
-
declare const redditListSubredditPostFlairs:
|
|
29
|
-
subreddit: string;
|
|
30
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
30
|
+
declare const redditListSubredditPostFlairs: AppAction<typeof RedditListSubredditPostFlairsInput, typeof RedditListSubredditPostFlairsOutput, typeof reddit.credential>;
|
|
31
31
|
//#endregion
|
|
32
32
|
export { redditListSubredditPostFlairs };
|
|
33
33
|
//# sourceMappingURL=list-subreddit-post-flairs.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-subreddit-post-flairs.d.mts","names":[],"sources":["../../src/actions/list-subreddit-post-flairs.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"list-subreddit-post-flairs.d.mts","names":[],"sources":["../../src/actions/list-subreddit-post-flairs.ts"],"mappings":";;;;;cAMa,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;cAuBlC,mCAAA,EAAmC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;cAInC,6BAAA,EAA+B,SAAA,QACnC,kCAAA,SACA,mCAAA,SACA,MAAA,CAAO,UAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-subreddit-post-flairs.mjs","names":[],"sources":["../../src/actions/list-subreddit-post-flairs.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RedditListSubredditPostFlairsInput = z.object({\n subreddit: z.string().describe(\"The name of the subreddit (without 'r/' prefix) for which to retrieve available post/link flairs.\"),\n});\nconst RedditListSubredditPostFlairs_FlairRichtextElementSchema = z.object({\n a: z.string().describe(\"Emoji shortcode for 'emoji' type elements.\").nullable().optional(),\n e: z.string().describe(\"Element type (e.g., 'text', 'emoji').\").nullable(),\n t: z.string().describe(\"Text content for 'text' type elements.\").nullable().optional(),\n u: z.string().describe(\"URL for emoji image.\").nullable().optional(),\n}).passthrough().describe(\"Element in a richtext flair array.\");\nconst RedditListSubredditPostFlairs_FlairTemplateSchema = z.object({\n id: z.string().describe(\"Unique identifier for the flair template (same as flair_template_id).\").nullable(),\n text: z.string().describe(\"Display text content of the flair.\").nullable(),\n type: z.string().describe(\"Type of the flair template (e.g., 'text', 'richtext').\").nullable().optional(),\n mod_only: z.boolean().describe(\"Whether this flair is restricted to moderators only.\").nullable().optional(),\n richtext: z.array(RedditListSubredditPostFlairs_FlairRichtextElementSchema).describe(\"Rich text formatting information for the flair, containing emoji and text elements.\").nullable().optional(),\n css_class: z.string().describe(\"CSS class name applied to the flair for styling.\").nullable().optional(),\n max_emojis: z.number().int().describe(\"Maximum number of emojis allowed in the flair text.\").nullable().optional(),\n text_color: z.string().describe(\"Color of the flair text (e.g., 'dark', 'light').\").nullable().optional(),\n text_editable: z.boolean().describe(\"Whether users can edit the flair text when applying it to their post.\").nullable(),\n background_color: z.string().describe(\"Background color of the flair (hex color code or named color).\").nullable().optional(),\n allowable_content: z.string().describe(\"Types of content allowed in the flair (e.g., 'all', 'emoji', 'text').\").nullable().optional(),\n flair_template_id: z.string().describe(\"Template identifier used when submitting posts with flair. Pass this value as 'flair_id' parameter when creating posts. If not provided, use the 'id' field instead.\").nullable().optional(),\n}).passthrough().describe(\"Represents a single link/post flair template available in a subreddit.\");\nexport const RedditListSubredditPostFlairsOutput = z.object({\n flairs: z.array(RedditListSubredditPostFlairs_FlairTemplateSchema).describe(\"Array of flair templates available for posts/links in the subreddit.\"),\n}).passthrough().describe(\"Response containing the list of available post/link flair templates for a subreddit.\");\n\nexport const redditListSubredditPostFlairs = action(\"REDDIT_LIST_SUBREDDIT_POST_FLAIRS\", {\n slug: \"reddit-list-subreddit-post-flairs\",\n name: \"List subreddit post flairs\",\n description: \"List available link/post flairs for a subreddit (including flair_template_id) so posts can satisfy flair-required validation. Use when you need to discover valid flair IDs before creating a post in a subreddit that requires flair. Note: Reddit may return empty or deny access if the authenticated user cannot set link flair and is not a moderator.\",\n input: RedditListSubredditPostFlairsInput,\n output: RedditListSubredditPostFlairsOutput,\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"list-subreddit-post-flairs.mjs","names":[],"sources":["../../src/actions/list-subreddit-post-flairs.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { reddit } from \"../app\";\n\nexport const RedditListSubredditPostFlairsInput = z.object({\n subreddit: z.string().describe(\"The name of the subreddit (without 'r/' prefix) for which to retrieve available post/link flairs.\"),\n});\nconst RedditListSubredditPostFlairs_FlairRichtextElementSchema = z.object({\n a: z.string().describe(\"Emoji shortcode for 'emoji' type elements.\").nullable().optional(),\n e: z.string().describe(\"Element type (e.g., 'text', 'emoji').\").nullable(),\n t: z.string().describe(\"Text content for 'text' type elements.\").nullable().optional(),\n u: z.string().describe(\"URL for emoji image.\").nullable().optional(),\n}).passthrough().describe(\"Element in a richtext flair array.\");\nconst RedditListSubredditPostFlairs_FlairTemplateSchema = z.object({\n id: z.string().describe(\"Unique identifier for the flair template (same as flair_template_id).\").nullable(),\n text: z.string().describe(\"Display text content of the flair.\").nullable(),\n type: z.string().describe(\"Type of the flair template (e.g., 'text', 'richtext').\").nullable().optional(),\n mod_only: z.boolean().describe(\"Whether this flair is restricted to moderators only.\").nullable().optional(),\n richtext: z.array(RedditListSubredditPostFlairs_FlairRichtextElementSchema).describe(\"Rich text formatting information for the flair, containing emoji and text elements.\").nullable().optional(),\n css_class: z.string().describe(\"CSS class name applied to the flair for styling.\").nullable().optional(),\n max_emojis: z.number().int().describe(\"Maximum number of emojis allowed in the flair text.\").nullable().optional(),\n text_color: z.string().describe(\"Color of the flair text (e.g., 'dark', 'light').\").nullable().optional(),\n text_editable: z.boolean().describe(\"Whether users can edit the flair text when applying it to their post.\").nullable(),\n background_color: z.string().describe(\"Background color of the flair (hex color code or named color).\").nullable().optional(),\n allowable_content: z.string().describe(\"Types of content allowed in the flair (e.g., 'all', 'emoji', 'text').\").nullable().optional(),\n flair_template_id: z.string().describe(\"Template identifier used when submitting posts with flair. Pass this value as 'flair_id' parameter when creating posts. If not provided, use the 'id' field instead.\").nullable().optional(),\n}).passthrough().describe(\"Represents a single link/post flair template available in a subreddit.\");\nexport const RedditListSubredditPostFlairsOutput = z.object({\n flairs: z.array(RedditListSubredditPostFlairs_FlairTemplateSchema).describe(\"Array of flair templates available for posts/links in the subreddit.\"),\n}).passthrough().describe(\"Response containing the list of available post/link flair templates for a subreddit.\");\n\nexport const redditListSubredditPostFlairs: AppAction<\n typeof RedditListSubredditPostFlairsInput,\n typeof RedditListSubredditPostFlairsOutput,\n typeof reddit.credential\n> = action(\"REDDIT_LIST_SUBREDDIT_POST_FLAIRS\", {\n slug: \"reddit-list-subreddit-post-flairs\",\n name: \"List subreddit post flairs\",\n description: \"List available link/post flairs for a subreddit (including flair_template_id) so posts can satisfy flair-required validation. Use when you need to discover valid flair IDs before creating a post in a subreddit that requires flair. Note: Reddit may return empty or deny access if the authenticated user cannot set link flair and is not a moderator.\",\n input: RedditListSubredditPostFlairsInput,\n output: RedditListSubredditPostFlairsOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,qCAAqC,EAAE,OAAO,EACzD,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,mGAAmG,EACpI,CAAC;AACD,MAAM,2DAA2D,EAAE,OAAO;CACxE,GAAG,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzF,GAAG,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS;CACzE,GAAG,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrF,GAAG,EAAE,OAAO,CAAC,CAAC,SAAS,sBAAsB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACrE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,oCAAoC;AAC9D,MAAM,oDAAoD,EAAE,OAAO;CACjE,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS;CAC1G,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS;CACzE,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,wDAAwD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxG,UAAU,EAAE,QAAQ,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3G,UAAU,EAAE,MAAM,wDAAwD,CAAC,CAAC,SAAS,qFAAqF,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChM,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,kDAAkD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvG,YAAY,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjH,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,kDAAkD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxG,eAAe,EAAE,QAAQ,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS;CACtH,kBAAkB,EAAE,OAAO,CAAC,CAAC,SAAS,gEAAgE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC5H,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACpI,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,sKAAsK,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACrO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,wEAAwE;AAKlG,MAAa,gCAIT,OAAO,qCAAqC;CAC9C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAbiD,EAAE,OAAO,EAC1D,QAAQ,EAAE,MAAM,iDAAiD,CAAC,CAAC,SAAS,sEAAsE,EACpJ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,sFAWhB;AACV,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post-reddit-comment.cjs","names":["z","action"],"sources":["../../src/actions/post-reddit-comment.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RedditPostRedditCommentInput = z.object({\n text: z.string().describe(\"REQUIRED. The raw Markdown text of the comment to be submitted. This field must be provided and cannot be empty.\"),\n thing_id: z.string().describe(\"REQUIRED. The ID of the parent post (link) or comment, prefixed with 't3_' for a post (e.g., 't3_10omtdx') or 't1_' for a comment (e.g., 't1_h2g9w8l'). This field must be provided.\"),\n});\nconst RedditPostRedditComment_CommentDataSchema = z.object({\n id: z.string().describe(\"Unique identifier of the comment\").nullable(),\n ups: z.number().int().describe(\"Number of upvotes (includes own vote if upvoted)\").nullable(),\n body: z.string().describe(\"Raw comment text content with Markdown formatting; HTML entities are escaped\").nullable(),\n name: z.string().describe(\"Fullname of the comment combining kind and id (e.g., 't1_c3v7f8u')\").nullable(),\n depth: z.number().int().describe(\"Nesting level of the comment; 0 for top-level comments, 1 for first-level replies, etc.\").nullable().optional(),\n downs: z.number().int().describe(\"Number of downvotes (includes own vote if downvoted)\").nullable(),\n likes: z.boolean().describe(\"Vote status: true if upvoted, false if downvoted, null if no vote or not logged in\").nullable().optional(),\n saved: z.boolean().describe(\"Whether the logged-in user has saved this comment\").nullable(),\n score: z.number().int().describe(\"Net score (upvotes minus downvotes) of the comment\").nullable(),\n author: z.string().describe(\"Username of the comment author\").nullable(),\n edited: z.union([z.boolean(), z.number()]),\n gilded: z.number().int().describe(\"Number of Reddit Gold awards the comment has received\").nullable(),\n created: z.number().describe(\"Unix timestamp when the comment was created in local time (epoch seconds)\").nullable(),\n link_id: z.string().describe(\"ID of the parent submission (prefixed with 't3_')\").nullable(),\n replies: z.union([z.record(z.string(), z.unknown()), z.string()]),\n link_url: z.string().describe(\"URL of the parent submission (when comment displayed outside thread context)\").nullable().optional(),\n stickied: z.boolean().describe(\"Whether the comment is stickied/pinned\").nullable(),\n banned_by: z.string().describe(\"Username of moderator who removed the comment; null if none or user lacks privileges\").nullable().optional(),\n body_html: z.string().describe(\"Formatted HTML version of the comment text as displayed on Reddit\").nullable(),\n parent_id: z.string().describe(\"ID of the parent comment (prefixed with 't1_') or submission (prefixed with 't3_')\").nullable(),\n permalink: z.string().describe(\"Permanent URL path to the comment\").nullable(),\n subreddit: z.string().describe(\"Name of the subreddit excluding the '/r/' prefix\").nullable(),\n link_title: z.string().describe(\"Title of the parent submission (when comment displayed outside thread context)\").nullable().optional(),\n approved_by: z.string().describe(\"Username of moderator who approved the comment; null if none or user lacks privileges\").nullable().optional(),\n created_utc: z.number().describe(\"Unix timestamp when the comment was created in UTC (epoch seconds)\").nullable(),\n link_author: z.string().describe(\"Author of the parent submission (when comment displayed outside thread context)\").nullable().optional(),\n num_reports: z.number().int().describe(\"Number of reports on the comment; null if user is not a moderator\").nullable().optional(),\n is_submitter: z.boolean().describe(\"Whether the comment author is also the submission author\").nullable(),\n score_hidden: z.boolean().describe(\"Whether the comment's score is currently hidden\").nullable(),\n subreddit_id: z.string().describe(\"Unique identifier of the subreddit\").nullable(),\n distinguished: z.string().describe(\"Moderator status: null (normal user), 'moderator' (green [M]), 'admin' (red [A]), or 'special'\").nullable().optional(),\n author_flair_text: z.string().describe(\"Text content of the author's user flair in this subreddit\").nullable().optional(),\n author_flair_css_class: z.string().describe(\"CSS class for styling the author's user flair\").nullable().optional(),\n}).passthrough().describe(\"The comment object data returned by Reddit API.\");\nconst RedditPostRedditComment_CommentThingSchema = z.object({\n data: RedditPostRedditComment_CommentDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the object; 't1' for comments\").nullable(),\n}).passthrough().describe(\"A Reddit 'thing' containing a comment.\");\nconst RedditPostRedditComment_CommentResponseDataSchema = z.object({\n things: z.array(RedditPostRedditComment_CommentThingSchema).describe(\"Array containing the created comment object(s)\"),\n}).passthrough().describe(\"Container for the created comment objects.\");\nconst RedditPostRedditComment_CommentJsonWrapperSchema = z.object({\n data: RedditPostRedditComment_CommentResponseDataSchema.nullable(),\n errors: z.array(z.union([z.string(), z.array(z.string())])).describe(\"Array of errors encountered during the API call; empty array if successful\"),\n}).passthrough().describe(\"Wrapper object containing the API response.\");\nexport const RedditPostRedditCommentOutput = z.object({\n json: RedditPostRedditComment_CommentJsonWrapperSchema.nullable(),\n composio_execution_message: z.string().describe(\"Informational message about the execution, such as platform limitations encountered\").nullable().optional(),\n}).passthrough().describe(\"Response from posting a comment on Reddit.\");\n\nexport const redditPostRedditComment = action(\"REDDIT_POST_REDDIT_COMMENT\", {\n slug: \"reddit-post-reddit-comment\",\n name: \"Post a comment\",\n description: \"Posts a comment on Reddit, replying to an existing submission (post) or another comment. Fails if the target thread is locked, archived, or restricted — verify thread state beforehand. Rapid successive calls trigger Reddit RATELIMIT errors with explicit cooldown hints (e.g., 'take a break for 9 minutes'); honor the specified wait before retrying. A successful API response does not guarantee public visibility — automod or spam filters may silently remove the comment. Publishes immediately and publicly; confirm target and text before executing.\",\n input: RedditPostRedditCommentInput,\n output: RedditPostRedditCommentOutput,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"post-reddit-comment.cjs","names":["z","action"],"sources":["../../src/actions/post-reddit-comment.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { reddit } from \"../app\";\n\nexport const RedditPostRedditCommentInput = z.object({\n text: z.string().describe(\"REQUIRED. The raw Markdown text of the comment to be submitted. This field must be provided and cannot be empty.\"),\n thing_id: z.string().describe(\"REQUIRED. The ID of the parent post (link) or comment, prefixed with 't3_' for a post (e.g., 't3_10omtdx') or 't1_' for a comment (e.g., 't1_h2g9w8l'). This field must be provided.\"),\n});\nconst RedditPostRedditComment_CommentDataSchema = z.object({\n id: z.string().describe(\"Unique identifier of the comment\").nullable(),\n ups: z.number().int().describe(\"Number of upvotes (includes own vote if upvoted)\").nullable(),\n body: z.string().describe(\"Raw comment text content with Markdown formatting; HTML entities are escaped\").nullable(),\n name: z.string().describe(\"Fullname of the comment combining kind and id (e.g., 't1_c3v7f8u')\").nullable(),\n depth: z.number().int().describe(\"Nesting level of the comment; 0 for top-level comments, 1 for first-level replies, etc.\").nullable().optional(),\n downs: z.number().int().describe(\"Number of downvotes (includes own vote if downvoted)\").nullable(),\n likes: z.boolean().describe(\"Vote status: true if upvoted, false if downvoted, null if no vote or not logged in\").nullable().optional(),\n saved: z.boolean().describe(\"Whether the logged-in user has saved this comment\").nullable(),\n score: z.number().int().describe(\"Net score (upvotes minus downvotes) of the comment\").nullable(),\n author: z.string().describe(\"Username of the comment author\").nullable(),\n edited: z.union([z.boolean(), z.number()]),\n gilded: z.number().int().describe(\"Number of Reddit Gold awards the comment has received\").nullable(),\n created: z.number().describe(\"Unix timestamp when the comment was created in local time (epoch seconds)\").nullable(),\n link_id: z.string().describe(\"ID of the parent submission (prefixed with 't3_')\").nullable(),\n replies: z.union([z.record(z.string(), z.unknown()), z.string()]),\n link_url: z.string().describe(\"URL of the parent submission (when comment displayed outside thread context)\").nullable().optional(),\n stickied: z.boolean().describe(\"Whether the comment is stickied/pinned\").nullable(),\n banned_by: z.string().describe(\"Username of moderator who removed the comment; null if none or user lacks privileges\").nullable().optional(),\n body_html: z.string().describe(\"Formatted HTML version of the comment text as displayed on Reddit\").nullable(),\n parent_id: z.string().describe(\"ID of the parent comment (prefixed with 't1_') or submission (prefixed with 't3_')\").nullable(),\n permalink: z.string().describe(\"Permanent URL path to the comment\").nullable(),\n subreddit: z.string().describe(\"Name of the subreddit excluding the '/r/' prefix\").nullable(),\n link_title: z.string().describe(\"Title of the parent submission (when comment displayed outside thread context)\").nullable().optional(),\n approved_by: z.string().describe(\"Username of moderator who approved the comment; null if none or user lacks privileges\").nullable().optional(),\n created_utc: z.number().describe(\"Unix timestamp when the comment was created in UTC (epoch seconds)\").nullable(),\n link_author: z.string().describe(\"Author of the parent submission (when comment displayed outside thread context)\").nullable().optional(),\n num_reports: z.number().int().describe(\"Number of reports on the comment; null if user is not a moderator\").nullable().optional(),\n is_submitter: z.boolean().describe(\"Whether the comment author is also the submission author\").nullable(),\n score_hidden: z.boolean().describe(\"Whether the comment's score is currently hidden\").nullable(),\n subreddit_id: z.string().describe(\"Unique identifier of the subreddit\").nullable(),\n distinguished: z.string().describe(\"Moderator status: null (normal user), 'moderator' (green [M]), 'admin' (red [A]), or 'special'\").nullable().optional(),\n author_flair_text: z.string().describe(\"Text content of the author's user flair in this subreddit\").nullable().optional(),\n author_flair_css_class: z.string().describe(\"CSS class for styling the author's user flair\").nullable().optional(),\n}).passthrough().describe(\"The comment object data returned by Reddit API.\");\nconst RedditPostRedditComment_CommentThingSchema = z.object({\n data: RedditPostRedditComment_CommentDataSchema.nullable(),\n kind: z.string().describe(\"Type identifier for the object; 't1' for comments\").nullable(),\n}).passthrough().describe(\"A Reddit 'thing' containing a comment.\");\nconst RedditPostRedditComment_CommentResponseDataSchema = z.object({\n things: z.array(RedditPostRedditComment_CommentThingSchema).describe(\"Array containing the created comment object(s)\"),\n}).passthrough().describe(\"Container for the created comment objects.\");\nconst RedditPostRedditComment_CommentJsonWrapperSchema = z.object({\n data: RedditPostRedditComment_CommentResponseDataSchema.nullable(),\n errors: z.array(z.union([z.string(), z.array(z.string())])).describe(\"Array of errors encountered during the API call; empty array if successful\"),\n}).passthrough().describe(\"Wrapper object containing the API response.\");\nexport const RedditPostRedditCommentOutput = z.object({\n json: RedditPostRedditComment_CommentJsonWrapperSchema.nullable(),\n composio_execution_message: z.string().describe(\"Informational message about the execution, such as platform limitations encountered\").nullable().optional(),\n}).passthrough().describe(\"Response from posting a comment on Reddit.\");\n\nexport const redditPostRedditComment: AppAction<\n typeof RedditPostRedditCommentInput,\n typeof RedditPostRedditCommentOutput,\n typeof reddit.credential\n> = action(\"REDDIT_POST_REDDIT_COMMENT\", {\n slug: \"reddit-post-reddit-comment\",\n name: \"Post a comment\",\n description: \"Posts a comment on Reddit, replying to an existing submission (post) or another comment. Fails if the target thread is locked, archived, or restricted — verify thread state beforehand. Rapid successive calls trigger Reddit RATELIMIT errors with explicit cooldown hints (e.g., 'take a break for 9 minutes'); honor the specified wait before retrying. A successful API response does not guarantee public visibility — automod or spam filters may silently remove the comment. Publishes immediately and publicly; confirm target and text before executing.\",\n input: RedditPostRedditCommentInput,\n output: RedditPostRedditCommentOutput,\n});\n"],"mappings":"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"}
|