{"account/.account-signup":{"id":"account/.account-signup","name":".account-signup","set":"account","area":"platform","description":"shows account sign up screen","type":"element","url":"/sets/account/account-signup.html"},"account/account-ctx":{"id":"account/account-ctx","name":"account-ctx","set":"account","area":"platform","description":"gets the Rhappsody Account CTX","type":"action","url":"/sets/account/account-ctx.html"},"account/account-login":{"id":"account/account-login","name":"account-login","set":"account","area":"platform","description":"login to rhappsody account","type":"function","url":"/sets/account/account-login.html"},"account/account-logout":{"id":"account/account-logout","name":"account-logout","set":"account","area":"platform","description":"logs out of rhappsody account","type":"action","url":"/sets/account/account-logout.html"},"account/account-signup":{"id":"account/account-signup","name":"account-signup","set":"account","area":"platform","description":"signs user email up for new rhappsody account","type":"action","url":"/sets/account/account-signup.html"},"account/list-appgroups":{"id":"account/list-appgroups","name":"list-appgroups","set":"account","area":"platform","description":"list account app groups","type":"action","url":"/sets/account/list-appgroups.html"},"acknowledgement/.acknowledge":{"id":"acknowledgement/.acknowledge","name":".acknowledge","set":"acknowledgement","area":"ui","description":"shows a message that need to be explictly acknowledged/dismissed","type":"element","url":"/sets/acknowledgement/acknowledge.html"},"acknowledgement/.acknowledge-once":{"id":"acknowledgement/.acknowledge-once","name":".acknowledge-once","set":"acknowledgement","area":"ui","description":"shows a message that need to be explictly acknowledged. One it is, it does not show up again","type":"element","url":"/sets/acknowledgement/acknowledge-once.html"},"acknowledgement/clear-acknowledgement":{"id":"acknowledgement/clear-acknowledgement","name":"clear-acknowledgement","set":"acknowledgement","area":"ui","description":"clears all prior user acknowledgements","type":"action","url":"/sets/acknowledgement/clear-acknowledgement.html"},"actions/allow-dynamic-actions":{"id":"actions/allow-dynamic-actions","name":"allow-dynamic-actions","set":"actions","area":"system","description":"allowed dynamic action referencing","type":"action","url":"/sets/actions/allow-dynamic-actions.html"},"actions/get-action-code":{"id":"actions/get-action-code","name":"get-action-code","set":"actions","area":"system","description":"Returns the action code for a given action name","type":"function","url":"/sets/actions/get-action-code.html"},"actions/get-action-set-id":{"id":"actions/get-action-set-id","name":"get-action-set-id","set":"actions","area":"system","description":"Returns the set ID for a given action name","type":"function","url":"/sets/actions/get-action-set-id.html"},"actions/get-action-size":{"id":"actions/get-action-size","name":"get-action-size","set":"actions","area":"system","description":"Returns the minified function size (in bytes) for a given action name","type":"function","url":"/sets/actions/get-action-size.html"},"actions/get-action-version":{"id":"actions/get-action-version","name":"get-action-version","set":"actions","area":"system","description":"Returns the version string for a given action name","type":"function","url":"/sets/actions/get-action-version.html"},"actions/get-related-actions":{"id":"actions/get-related-actions","name":"get-related-actions","set":"actions","area":"system","description":"Returns all action names from the same set as the specified action","type":"function","url":"/sets/actions/get-related-actions.html"},"actions/list-dynamic-actions":{"id":"actions/list-dynamic-actions","name":"list-dynamic-actions","set":"actions","area":"system","description":"lists the names of dynamic-actions","type":"action","url":"/sets/actions/list-dynamic-actions.html"},"actions/register-actionset":{"id":"actions/register-actionset","name":"register-actionset","set":"actions","area":"system","description":"registers/loads a remote actionset","type":"action","url":"/sets/actions/register-actionset.html"},"actionsets/actionset-worker-health":{"id":"actionsets/actionset-worker-health","name":"actionset-worker-health","set":"actionsets","area":"system","description":"Call an action set's worker health endpoint by looking up the setId from an action name","type":"function","url":"/sets/actionsets/actionset-worker-health.html"},"ai/ai-auth":{"id":"ai/ai-auth","name":"ai-auth","set":"ai","area":"external","description":"sets ai provider api or auth key","type":"action","url":"/sets/ai/ai-auth.html"},"ai/ai-context":{"id":"ai/ai-context","name":"ai-context","set":"ai","area":"external","description":"sets ai context","type":"action","url":"/sets/ai/ai-context.html"},"ai/ai-model":{"id":"ai/ai-model","name":"ai-model","set":"ai","area":"external","description":"sets ai model","type":"action","url":"/sets/ai/ai-model.html"},"ai/ai-provider":{"id":"ai/ai-provider","name":"ai-provider","set":"ai","area":"external","description":"sets ai provider","type":"action","url":"/sets/ai/ai-provider.html"},"ai/set-ai-service":{"id":"ai/set-ai-service","name":"set-ai-service","set":"ai","area":"external","description":"sets the apps AI service provider","type":"action","url":"/sets/ai/set-ai-service.html"},"aichat/aichat-send":{"id":"aichat/aichat-send","name":"aichat-send","set":"aichat","area":"network","description":"Send a message to the AI with accumulated facts as context","type":"action","url":"/sets/aichat/aichat-send.html"},"aichat/clear-aichat-context":{"id":"aichat/clear-aichat-context","name":"clear-aichat-context","set":"aichat","area":"network","description":"Clear all AI context (task and facts)","type":"action","url":"/sets/aichat/clear-aichat-context.html"},"aichat/clear-aichat-history":{"id":"aichat/clear-aichat-history","name":"clear-aichat-history","set":"aichat","area":"network","description":"Clear conversation history for AI chat","type":"action","url":"/sets/aichat/clear-aichat-history.html"},"aichat/clear-facts":{"id":"aichat/clear-facts","name":"clear-facts","set":"aichat","area":"network","description":"Clear all accumulated AI context facts","type":"action","url":"/sets/aichat/clear-facts.html"},"aichat/clear-task":{"id":"aichat/clear-task","name":"clear-task","set":"aichat","area":"network","description":"Clear the current AI task instruction","type":"action","url":"/sets/aichat/clear-task.html"},"aichat/fact":{"id":"aichat/fact","name":"fact","set":"aichat","area":"network","description":"Declare a fact/context piece for the AI to know","type":"action","url":"/sets/aichat/fact.html"},"aichat/set-aichat-history":{"id":"aichat/set-aichat-history","name":"set-aichat-history","set":"aichat","area":"network","description":"Enable or disable conversation history for AI chat","type":"action","url":"/sets/aichat/set-aichat-history.html"},"aichat/set-aichat-model":{"id":"aichat/set-aichat-model","name":"set-aichat-model","set":"aichat","area":"network","description":"Set the AI model for chat requests","type":"action","url":"/sets/aichat/set-aichat-model.html"},"aichat/set-aichat-provider":{"id":"aichat/set-aichat-provider","name":"set-aichat-provider","set":"aichat","area":"network","description":"Set the AI provider for chat requests (groq or local)","type":"action","url":"/sets/aichat/set-aichat-provider.html"},"aichat/task":{"id":"aichat/task","name":"task","set":"aichat","area":"network","description":"Set the main task/instruction for the AI to perform","type":"action","url":"/sets/aichat/task.html"},"airtable/airtable-api-key":{"id":"airtable/airtable-api-key","name":"airtable-api-key","set":"airtable","area":"network","description":"Set Airtable API key (encrypted at compile time)","type":"action","url":"/sets/airtable/airtable-api-key.html"},"airtable/airtable-list-bases":{"id":"airtable/airtable-list-bases","name":"airtable-list-bases","set":"airtable","area":"network","description":"List all Airtable bases accessible to the authenticated user","type":"action","url":"/sets/airtable/airtable-list-bases.html"},"airtable/airtable-list-tables":{"id":"airtable/airtable-list-tables","name":"airtable-list-tables","set":"airtable","area":"network","description":"List all tables in an Airtable base","type":"action","url":"/sets/airtable/airtable-list-tables.html"},"airtable/airtable-query":{"id":"airtable/airtable-query","name":"airtable-query","set":"airtable","area":"network","description":"Query records from an Airtable table with optional filtering and sorting","type":"action","url":"/sets/airtable/airtable-query.html"},"aistep/ai-step-yes-no":{"id":"aistep/ai-step-yes-no","name":"ai-step-yes-no","set":"aistep","area":"network","description":"Extract yes/no intent from natural language using AI","type":"action","url":"/sets/aistep/ai-step-yes-no.html"},"animation/.lottie":{"id":"animation/.lottie","name":".lottie","set":"animation","area":"ui","description":"embeds a lottie animation","type":"element","url":"/sets/animation/lottie.html"},"animation/fadein":{"id":"animation/fadein","name":"fadein","set":"animation","area":"ui","description":"fades element in","type":"action","url":"/sets/animation/fadein.html"},"animation/fadeout":{"id":"animation/fadeout","name":"fadeout","set":"animation","area":"ui","description":"fades an element in","type":"action","url":"/sets/animation/fadeout.html"},"animation/hide":{"id":"animation/hide","name":"hide","set":"animation","area":"ui","description":"hide specified element","type":"action","url":"/sets/animation/hide.html"},"animation/init-animation":{"id":"animation/init-animation","name":"init-animation","set":"animation","area":"ui","description":"initializes animation (lottie player)","type":"action","url":"/sets/animation/init-animation.html"},"animation/set-animation":{"id":"animation/set-animation","name":"set-animation","set":"animation","area":"ui","description":"sets/defines an animation tag","type":"action","url":"/sets/animation/set-animation.html"},"animation/show":{"id":"animation/show","name":"show","set":"animation","area":"ui","description":"shows a hidden ui element","type":"action","url":"/sets/animation/show.html"},"announcements/.announcement":{"id":"announcements/.announcement","name":".announcement","set":"announcements","area":"interaction","description":"shows an in-app top banner announcement","type":"element","url":"/sets/announcements/announcement.html"},"announcements/clear-announcement":{"id":"announcements/clear-announcement","name":"clear-announcement","set":"announcements","area":"interaction","description":"clears announcement from an app if it exists","type":"action","url":"/sets/announcements/clear-announcement.html"},"announcements/set-announcement":{"id":"announcements/set-announcement","name":"set-announcement","set":"announcements","area":"interaction","description":"sets an app wide banner announcement","type":"action","url":"/sets/announcements/set-announcement.html"},"anthropic/anthropic-api-key":{"id":"anthropic/anthropic-api-key","name":"anthropic-api-key","set":"anthropic","area":"plugins","description":"set Anthropic API key (encrypted at compile time)","type":"action","url":"/sets/anthropic/anthropic-api-key.html"},"anthropic/anthropic-chat":{"id":"anthropic/anthropic-chat","name":"anthropic-chat","set":"anthropic","area":"plugins","description":"Sends a message to Claude and gets an AI response","type":"action","url":"/sets/anthropic/anthropic-chat.html"},"anthropic/anthropic-model":{"id":"anthropic/anthropic-model","name":"anthropic-model","set":"anthropic","area":"plugins","description":"Set the Claude model to use for subsequent chat requests","type":"action","url":"/sets/anthropic/anthropic-model.html"},"anthropic/list-anthropic-models":{"id":"anthropic/list-anthropic-models","name":"list-anthropic-models","set":"anthropic","area":"plugins","description":"Gets a list of available Claude models from Anthropic","type":"action","url":"/sets/anthropic/list-anthropic-models.html"},"app/.app-icon":{"id":"app/.app-icon","name":".app-icon","set":"app","area":"platform","description":"displays an app icon. must have dev-mode enabled!","type":"element","url":"/sets/app/app-icon.html"},"app/app-authorization":{"id":"app/app-authorization","name":"app-authorization","set":"app","area":"platform","description":"generates an app authorization token if needed at runtime","type":"action","url":"/sets/app/app-authorization.html"},"app/app-context":{"id":"app/app-context","name":"app-context","set":"app","area":"platform","description":"gets app context item from the environment","type":"action","url":"/sets/app/app-context.html"},"app/app-context-server":{"id":"app/app-context-server","name":"app-context-server","set":"app","area":"platform","description":"Gets the server context for the current app including environment, region, version, and server time","type":"function","url":"/sets/app/app-context-server.html"},"app/app-expires-on":{"id":"app/app-expires-on","name":"app-expires-on","set":"app","area":"platform","description":"sets the time and/or date the app will expire","type":"action","url":"/sets/app/app-expires-on.html"},"app/app-golive-on":{"id":"app/app-golive-on","name":"app-golive-on","set":"app","area":"platform","description":"sets the time and/or date the app will be available to users","type":"action","url":"/sets/app/app-golive-on.html"},"app/app-mode":{"id":"app/app-mode","name":"app-mode","set":"app","area":"platform","description":"set app mode to light or dark","type":"action","url":"/sets/app/app-mode.html"},"app/app-name":{"id":"app/app-name","name":"app-name","set":"app","area":"platform","description":"sets the App Name. Appears under icon","type":"action","url":"/sets/app/app-name.html"},"app/get-public-key":{"id":"app/get-public-key","name":"get-public-key","set":"app","area":"platform","description":"gets app public key","type":"action","url":"/sets/app/get-public-key.html"},"appauth/app":{"id":"appauth/app","name":"app","set":"appauth","area":"system","description":"defines the app name, along with key auth key","type":"action","url":"/sets/appauth/app.html"},"appauth/app-host":{"id":"appauth/app-host","name":"app-host","set":"appauth","area":"system","description":"defines an allowed host for the app. The rhapp.app domain is allowed by default","type":"action","url":"/sets/appauth/app-host.html"},"appauth/app-private":{"id":"appauth/app-private","name":"app-private","set":"appauth","area":"system","description":"sets app private key","type":"action","url":"/sets/appauth/app-private.html"},"appauth/app-public":{"id":"appauth/app-public","name":"app-public","set":"appauth","area":"system","description":"defines an app public auth key","type":"action","url":"/sets/appauth/app-public.html"},"appauth/generate-app-key":{"id":"appauth/generate-app-key","name":"generate-app-key","set":"appauth","area":"system","description":"generates an temp app key on the server. Just used for temp apps and testing for now I guesss","type":"action","url":"/sets/appauth/generate-app-key.html"},"appauth/set-private-key":{"id":"appauth/set-private-key","name":"set-private-key","set":"appauth","area":"system","description":"sets app private key","type":"action","url":"/sets/appauth/set-private-key.html"},"appauth/set-public-key":{"id":"appauth/set-public-key","name":"set-public-key","set":"appauth","area":"system","description":"sets public key. Required for secrets and users support","type":"action","url":"/sets/appauth/set-public-key.html"},"appbars/.app-navbar":{"id":"appbars/.app-navbar","name":".app-navbar","set":"appbars","area":"layout","description":"standard bottom app nav bar","type":"element","url":"/sets/appbars/app-navbar.html"},"appbars/.appbar":{"id":"appbars/.appbar","name":".appbar","set":"appbars","area":"layout","description":"Creates an app bar at the top of your app","type":"element","url":"/sets/appbars/appbar.html"},"appbars/.appbar-avatar":{"id":"appbars/.appbar-avatar","name":".appbar-avatar","set":"appbars","area":"layout","description":"Displays an avatar (image or initials) inside an app bar","type":"element","url":"/sets/appbars/appbar-avatar.html"},"appbars/.appbar-icon":{"id":"appbars/.appbar-icon","name":".appbar-icon","set":"appbars","area":"layout","description":"Displays an icon inside an app bar","type":"element","url":"/sets/appbars/appbar-icon.html"},"appbars/.appbar-text":{"id":"appbars/.appbar-text","name":".appbar-text","set":"appbars","area":"layout","description":"Displays text inside an app bar","type":"element","url":"/sets/appbars/appbar-text.html"},"appbars/.back-appbar":{"id":"appbars/.back-appbar","name":".back-appbar","set":"appbars","area":"layout","description":"App bar with back button for navigation","type":"element","url":"/sets/appbars/back-appbar.html"},"footers/.footer":{"id":"footers/.footer","name":".footer","set":"footers","area":"layout","description":"DEPRECATED - Use headers/.footer instead","type":"element","url":"/sets/footers/footer.html"},"appbars/.image-appbar":{"id":"appbars/.image-appbar","name":".image-appbar","set":"appbars","area":"layout","description":"App bar with background image and overlay text","type":"element","url":"/sets/appbars/image-appbar.html"},"appbars/.top-appbar":{"id":"appbars/.top-appbar","name":".top-appbar","set":"appbars","area":"layout","description":"displays a standard top app bar","type":"element","url":"/sets/appbars/top-appbar.html"},"appdev/list-apps":{"id":"appdev/list-apps","name":"list-apps","set":"appdev","area":"platform","description":"list all apps for the account","type":"action","url":"/sets/appdev/list-apps.html"},"appdev/load-app":{"id":"appdev/load-app","name":"load-app","set":"appdev","area":"platform","description":"loads an app record from the database via set worker","type":"action","url":"/sets/appdev/load-app.html"},"appdev/new-app":{"id":"appdev/new-app","name":"new-app","set":"appdev","area":"platform","description":"creates a new app (source)","type":"action","url":"/sets/appdev/new-app.html"},"appdev/set-app-bin":{"id":"appdev/set-app-bin","name":"set-app-bin","set":"appdev","area":"platform","description":"sets the app binary manually (RHDEV.bin)","type":"action","url":"/sets/appdev/set-app-bin.html"},"appdev/set-build-mode":{"id":"appdev/set-build-mode","name":"set-build-mode","set":"appdev","area":"platform","description":"sets build mode","type":"action","url":"/sets/appdev/set-build-mode.html"},"appdev/set-target-ag":{"id":"appdev/set-target-ag","name":"set-target-ag","set":"appdev","area":"platform","description":"sets the target app group","type":"action","url":"/sets/appdev/set-target-ag.html"},"appdev/set-target-aid":{"id":"appdev/set-target-aid","name":"set-target-aid","set":"appdev","area":"platform","description":"sets the target or working app id","type":"action","url":"/sets/appdev/set-target-aid.html"},"appgroup/delete-appgroup":{"id":"appgroup/delete-appgroup","name":"delete-appgroup","set":"appgroup","area":"platform","description":"deletes an appgroup from an account","type":"action","url":"/sets/appgroup/delete-appgroup.html"},"appgroup/is-appgroup-available":{"id":"appgroup/is-appgroup-available","name":"is-appgroup-available","set":"appgroup","area":"platform","description":"tests if specified app group is available","type":"action","url":"/sets/appgroup/is-appgroup-available.html"},"appgroup/my-appgroups":{"id":"appgroup/my-appgroups","name":"my-appgroups","set":"appgroup","area":"platform","description":"lists your rhappsody account app groups","type":"action","url":"/sets/appgroup/my-appgroups.html"},"appgroup/new-appgroup":{"id":"appgroup/new-appgroup","name":"new-appgroup","set":"appgroup","area":"platform","description":"adds a new app group to your account","type":"action","url":"/sets/appgroup/new-appgroup.html"},"audio/load-audio":{"id":"audio/load-audio","name":"load-audio","set":"audio","area":"media","description":"Loads an audio file into memory for later playback","type":"action","url":"/sets/audio/load-audio.html"},"audio/pause-audio":{"id":"audio/pause-audio","name":"pause-audio","set":"audio","area":"media","description":"Pauses any currently playing audio","type":"action","url":"/sets/audio/pause-audio.html"},"audio/play-audio":{"id":"audio/play-audio","name":"play-audio","set":"audio","area":"media","description":"Plays a previously loaded audio file","type":"action","url":"/sets/audio/play-audio.html"},"audio/stop-audio":{"id":"audio/stop-audio","name":"stop-audio","set":"audio","area":"media","description":"Stops any currently playing audio","type":"action","url":"/sets/audio/stop-audio.html"},"auth/.password-panel":{"id":"auth/.password-panel","name":".password-panel","set":"auth","area":"external","description":"displays a full screen password input panel","type":"element","url":"/sets/auth/password-panel.html"},"auth/.pinpad-input":{"id":"auth/.pinpad-input","name":".pinpad-input","set":"auth","area":"external","description":"display a numeric pinpad input suitable for mobile","type":"element","url":"/sets/auth/pinpad-input.html"},"auth/.user-login":{"id":"auth/.user-login","name":".user-login","set":"auth","area":"external","description":"app user login panel","type":"element","url":"/sets/auth/user-login.html"},"auth/admin-login":{"id":"auth/admin-login","name":"admin-login","set":"auth","area":"external","description":"admin-login","type":"action","url":"/sets/auth/admin-login.html"},"auth/app-password":{"id":"auth/app-password","name":"app-password","set":"auth","area":"external","description":"protect app with basic password","type":"action","url":"/sets/auth/app-password.html"},"auth/editor-login":{"id":"auth/editor-login","name":"editor-login","set":"auth","area":"external","description":"editor-login","type":"action","url":"/sets/auth/editor-login.html"},"auth/manager-login":{"id":"auth/manager-login","name":"manager-login","set":"auth","area":"external","description":"manager-login","type":"action","url":"/sets/auth/manager-login.html"},"auth/protect-with-password":{"id":"auth/protect-with-password","name":"protect-with-password","set":"auth","area":"external","description":"protect app with basic password","type":"action","url":"/sets/auth/protect-with-password.html"},"auth/user-login":{"id":"auth/user-login","name":"user-login","set":"auth","area":"external","description":"user-login","type":"action","url":"/sets/auth/user-login.html"},"avatars/.avatar":{"id":"avatars/.avatar","name":".avatar","set":"avatars","area":"ui","description":"avatar","type":"element","url":"/sets/avatars/avatar.html"},"avatars/.dicebear-avatar":{"id":"avatars/.dicebear-avatar","name":".dicebear-avatar","set":"avatars","area":"ui","description":"a variety of avatar sets fron Dicebear","type":"element","url":"/sets/avatars/dicebear-avatar.html"},"avatars/.icon-avatar":{"id":"avatars/.icon-avatar","name":".icon-avatar","set":"avatars","area":"ui","description":"a small avatar with icon","type":"element","url":"/sets/avatars/icon-avatar.html"},"avatars/.image-avatar":{"id":"avatars/.image-avatar","name":".image-avatar","set":"avatars","area":"ui","description":"avatar with an app image","type":"element","url":"/sets/avatars/image-avatar.html"},"avatars/.initials-avatar":{"id":"avatars/.initials-avatar","name":".initials-avatar","set":"avatars","area":"ui","description":"a small avatar with initials / letters","type":"element","url":"/sets/avatars/initials-avatar.html"},"aws/aws-access-key":{"id":"aws/aws-access-key","name":"aws-access-key","set":"aws","area":"network","description":"Set AWS Access Key ID (encrypted at compile time)","type":"action","url":"/sets/aws/aws-access-key.html"},"aws/aws-region":{"id":"aws/aws-region","name":"aws-region","set":"aws","area":"network","description":"Set AWS region for API calls","type":"action","url":"/sets/aws/aws-region.html"},"aws/aws-secret-access-key":{"id":"aws/aws-secret-access-key","name":"aws-secret-access-key","set":"aws","area":"network","description":"Set AWS Secret Access Key (encrypted at compile time)","type":"action","url":"/sets/aws/aws-secret-access-key.html"},"aws/extract-document":{"id":"aws/extract-document","name":"extract-document","set":"aws","area":"network","description":"Extract structured data (tables, forms) from documents using AWS Textract","type":"function","url":"/sets/aws/extract-document.html"},"textfn/extract-text":{"id":"textfn/extract-text","name":"extract-text","set":"textfn","area":"data","description":"Extracts a substring from text using start and end positions","type":"function","url":"/sets/textfn/extract-text.html"},"aws/ses-send":{"id":"aws/ses-send","name":"ses-send","set":"aws","area":"network","description":"Send email via AWS SES","type":"function","url":"/sets/aws/ses-send.html"},"background/.background-animated-gradient":{"id":"background/.background-animated-gradient","name":".background-animated-gradient","set":"background","area":"ui","description":"an animated background gradient","type":"element","url":"/sets/background/background-animated-gradient.html"},"background/.background-color":{"id":"background/.background-color","name":".background-color","set":"background","area":"ui","description":"sets background color","type":"element","url":"/sets/background/background-color.html"},"background/.background-gradient":{"id":"background/.background-gradient","name":".background-gradient","set":"background","area":"ui","description":"sets a background gradient","type":"element","url":"/sets/background/background-gradient.html"},"background/.background-image":{"id":"background/.background-image","name":".background-image","set":"background","area":"ui","description":"sets a background image for the viewport","type":"element","url":"/sets/background/background-image.html"},"background/.background-video":{"id":"background/.background-video","name":".background-video","set":"background","area":"ui","description":"shows MP4 video as background","type":"element","url":"/sets/background/background-video.html"},"barcodes/.qrcode":{"id":"barcodes/.qrcode","name":".qrcode","set":"barcodes","area":"ui","description":"displays a scannable QR code from text or URL","type":"element","url":"/sets/barcodes/qrcode.html"},"browser/browser-version":{"id":"browser/browser-version","name":"browser-version","set":"browser","area":"ui","description":"returns info about the current browser environment","type":"action","url":"/sets/browser/browser-version.html"},"browser/open-browser":{"id":"browser/open-browser","name":"open-browser","set":"browser","area":"ui","description":"opens a browser with specified URL","type":"action","url":"/sets/browser/open-browser.html"},"browser/open-browser-window":{"id":"browser/open-browser-window","name":"open-browser-window","set":"browser","area":"ui","description":"opens a new browser window","type":"action","url":"/sets/browser/open-browser-window.html"},"buttons/.back-button":{"id":"buttons/.back-button","name":".back-button","set":"buttons","area":"ui","description":"displays a back button for navigation","type":"element","url":"/sets/buttons/back-button.html"},"buttons/.busy-button":{"id":"buttons/.busy-button","name":".busy-button","set":"buttons","area":"ui","description":"a button with a busy indicator","type":"element","url":"/sets/buttons/busy-button.html"},"buttons/.button":{"id":"buttons/.button","name":".button","set":"buttons","area":"ui","description":"Creates a clickable button element","type":"element","url":"/sets/buttons/button.html"},"buttons/.button-bar":{"id":"buttons/.button-bar","name":".button-bar","set":"buttons","area":"ui","description":"Groups multiple buttons together in a horizontal bar layout","type":"element","url":"/sets/buttons/button-bar.html"},"buttons/.circle-button":{"id":"buttons/.circle-button","name":".circle-button","set":"buttons","area":"ui","description":"a circular button","type":"element","url":"/sets/buttons/circle-button.html"},"buttons/.continue-button":{"id":"buttons/.continue-button","name":".continue-button","set":"buttons","area":"ui","description":"a button that continues an app in wait state","type":"element","url":"/sets/buttons/continue-button.html"},"buttons/.icon-button":{"id":"buttons/.icon-button","name":".icon-button","set":"buttons","area":"ui","description":"this is an icon button","type":"element","url":"/sets/buttons/icon-button.html"},"buttons/.nav-button":{"id":"buttons/.nav-button","name":".nav-button","set":"buttons","area":"ui","description":"basic mobile navigation button with icon and a label","type":"element","url":"/sets/buttons/nav-button.html"},"calendar/if-is-closed":{"id":"calendar/if-is-closed","name":"if-is-closed","set":"calendar","area":"interaction","description":"Checks if your business is currently closed based on schedule","type":"action","url":"/sets/calendar/if-is-closed.html"},"calendar/if-is-open":{"id":"calendar/if-is-open","name":"if-is-open","set":"calendar","area":"interaction","description":"Checks if your business is currently open based on schedule","type":"action","url":"/sets/calendar/if-is-open.html"},"calendar/schedule":{"id":"calendar/schedule","name":"schedule","set":"calendar","area":"interaction","description":"Creates and manages business schedules with hours and dates","type":"action","url":"/sets/calendar/schedule.html"},"calendar/set-active-schedule":{"id":"calendar/set-active-schedule","name":"set-active-schedule","set":"calendar","area":"interaction","description":"Switches to a different schedule by name","type":"action","url":"/sets/calendar/set-active-schedule.html"},"cev/is-tampered":{"id":"cev/is-tampered","name":"is-tampered","set":"cev","area":"data","description":"Check if a CEV variable has been tampered with","type":"function","url":"/sets/cev/is-tampered.html"},"cev/secure-add":{"id":"cev/secure-add","name":"secure-add","set":"cev","area":"data","description":"Add values to a CEV variable with server verification","type":"action","url":"/sets/cev/secure-add.html"},"cev/secure-compare":{"id":"cev/secure-compare","name":"secure-compare","set":"cev","area":"data","description":"Compare two CEV values and store result (-1, 0, 1)","type":"function","url":"/sets/cev/secure-compare.html"},"cev/secure-decrement":{"id":"cev/secure-decrement","name":"secure-decrement","set":"cev","area":"data","description":"Decrement a CEV variable by 1","type":"action","url":"/sets/cev/secure-decrement.html"},"cev/secure-divide":{"id":"cev/secure-divide","name":"secure-divide","set":"cev","area":"data","description":"Divide CEV variable values with server verification","type":"action","url":"/sets/cev/secure-divide.html"},"cev/secure-increment":{"id":"cev/secure-increment","name":"secure-increment","set":"cev","area":"data","description":"Increment a CEV variable by 1","type":"action","url":"/sets/cev/secure-increment.html"},"cev/secure-max":{"id":"cev/secure-max","name":"secure-max","set":"cev","area":"data","description":"Get maximum of two CEV values and store in a CEV variable","type":"action","url":"/sets/cev/secure-max.html"},"cev/secure-min":{"id":"cev/secure-min","name":"secure-min","set":"cev","area":"data","description":"Get minimum of two CEV values and store in a CEV variable","type":"action","url":"/sets/cev/secure-min.html"},"cev/secure-multiply":{"id":"cev/secure-multiply","name":"secure-multiply","set":"cev","area":"data","description":"Multiply CEV variable values with server verification","type":"action","url":"/sets/cev/secure-multiply.html"},"cev/secure-set":{"id":"cev/secure-set","name":"secure-set","set":"cev","area":"data","description":"Initialize a CEV (Controlled Encrypted Variable) with a signed value","type":"action","url":"/sets/cev/secure-set.html"},"cev/secure-subtract":{"id":"cev/secure-subtract","name":"secure-subtract","set":"cev","area":"data","description":"Subtract CEV variable values with server verification","type":"action","url":"/sets/cev/secure-subtract.html"},"cev/secure-verify":{"id":"cev/secure-verify","name":"secure-verify","set":"cev","area":"data","description":"Verify a CEV variable's signature without modifying it","type":"function","url":"/sets/cev/secure-verify.html"},"chat/.chat-incoming":{"id":"chat/.chat-incoming","name":".chat-incoming","set":"chat","area":"platform","description":"incoming chat message","type":"element","url":"/sets/chat/chat-incoming.html"},"chat/.chat-input":{"id":"chat/.chat-input","name":".chat-input","set":"chat","area":"platform","description":"chat message input at bottom of screen","type":"element","url":"/sets/chat/chat-input.html"},"chat/.chat-outgoing":{"id":"chat/.chat-outgoing","name":".chat-outgoing","set":"chat","area":"platform","description":"outgoing chat message","type":"element","url":"/sets/chat/chat-outgoing.html"},"chat/.chat-typing":{"id":"chat/.chat-typing","name":".chat-typing","set":"chat","area":"platform","description":"display temporary in-progress/typing text chat message","type":"element","url":"/sets/chat/chat-typing.html"},"chat/init-chat":{"id":"chat/init-chat","name":"init-chat","set":"chat","area":"platform","description":"Sets up chat functionality for your app","type":"action","url":"/sets/chat/init-chat.html"},"chat/on-incoming-chat-message":{"id":"chat/on-incoming-chat-message","name":"on-incoming-chat-message","set":"chat","area":"platform","description":"Responds when someone sends a chat message to your app","type":"action","url":"/sets/chat/on-incoming-chat-message.html"},"client/clear-client":{"id":"client/clear-client","name":"clear-client","set":"client","area":"system","description":"clears out rhappsody client info from the device","type":"action","url":"/sets/client/clear-client.html"},"client/init-client":{"id":"client/init-client","name":"init-client","set":"client","area":"system","description":"initialized rhappsody client","type":"action","url":"/sets/client/init-client.html"},"client/reset-client":{"id":"client/reset-client","name":"reset-client","set":"client","area":"system","description":"resets the client. Note: this will clear all associated profile information","type":"action","url":"/sets/client/reset-client.html"},"clipboard/.paste-background":{"id":"clipboard/.paste-background","name":".paste-background","set":"clipboard","area":"system","description":"full screen input to capture a pasted background image","type":"element","url":"/sets/clipboard/paste-background.html"},"clipboard/copy-text":{"id":"clipboard/copy-text","name":"copy-text","set":"clipboard","area":"system","description":"Copies text to the system clipboard","type":"action","url":"/sets/clipboard/copy-text.html"},"clipboard/+paste-image":{"id":"clipboard/+paste-image","name":"+paste-image","set":"clipboard","area":"system","description":"pastes an image into the clipboard","type":"action","url":"/sets/clipboard/-paste-image.html"},"cloudflare/cloudflare-account-id":{"id":"cloudflare/cloudflare-account-id","name":"cloudflare-account-id","set":"cloudflare","area":"network","description":"Set Cloudflare account ID (encrypted at compile time)","type":"action","url":"/sets/cloudflare/cloudflare-account-id.html"},"cloudflare/cloudflare-api-key":{"id":"cloudflare/cloudflare-api-key","name":"cloudflare-api-key","set":"cloudflare","area":"network","description":"Set Cloudflare API token (encrypted at compile time)","type":"action","url":"/sets/cloudflare/cloudflare-api-key.html"},"cloudflare/cloudflare-d1-database":{"id":"cloudflare/cloudflare-d1-database","name":"cloudflare-d1-database","set":"cloudflare","area":"network","description":"Set the default D1 database ID for SQL operations","type":"action","url":"/sets/cloudflare/cloudflare-d1-database.html"},"cloudflare/cloudflare-d1-query":{"id":"cloudflare/cloudflare-d1-query","name":"cloudflare-d1-query","set":"cloudflare","area":"network","description":"Execute a SQL query on a Cloudflare D1 database","type":"action","url":"/sets/cloudflare/cloudflare-d1-query.html"},"cloudflare/cloudflare-kv-delete":{"id":"cloudflare/cloudflare-kv-delete","name":"cloudflare-kv-delete","set":"cloudflare","area":"network","description":"Delete a key from Cloudflare Workers KV","type":"action","url":"/sets/cloudflare/cloudflare-kv-delete.html"},"cloudflare/cloudflare-kv-get":{"id":"cloudflare/cloudflare-kv-get","name":"cloudflare-kv-get","set":"cloudflare","area":"network","description":"Retrieve a value from Cloudflare Workers KV","type":"action","url":"/sets/cloudflare/cloudflare-kv-get.html"},"cloudflare/cloudflare-kv-list":{"id":"cloudflare/cloudflare-kv-list","name":"cloudflare-kv-list","set":"cloudflare","area":"network","description":"List keys in a Cloudflare Workers KV namespace","type":"action","url":"/sets/cloudflare/cloudflare-kv-list.html"},"cloudflare/cloudflare-kv-namespaceid":{"id":"cloudflare/cloudflare-kv-namespaceid","name":"cloudflare-kv-namespaceid","set":"cloudflare","area":"network","description":"Set the default KV namespace ID for subsequent KV operations","type":"action","url":"/sets/cloudflare/cloudflare-kv-namespaceid.html"},"cloudflare/cloudflare-kv-put":{"id":"cloudflare/cloudflare-kv-put","name":"cloudflare-kv-put","set":"cloudflare","area":"network","description":"Store a value in Cloudflare Workers KV","type":"action","url":"/sets/cloudflare/cloudflare-kv-put.html"},"cloudflare/cloudflare-purge-all":{"id":"cloudflare/cloudflare-purge-all","name":"cloudflare-purge-all","set":"cloudflare","area":"network","description":"Purge all cached content for a Cloudflare zone","type":"action","url":"/sets/cloudflare/cloudflare-purge-all.html"},"cloudflare/cloudflare-purge-url":{"id":"cloudflare/cloudflare-purge-url","name":"cloudflare-purge-url","set":"cloudflare","area":"network","description":"Purge one or more URLs from Cloudflare cache","type":"action","url":"/sets/cloudflare/cloudflare-purge-url.html"},"cloudflare/cloudflare-r2-bucket":{"id":"cloudflare/cloudflare-r2-bucket","name":"cloudflare-r2-bucket","set":"cloudflare","area":"network","description":"Set the default R2 bucket for subsequent R2 operations","type":"action","url":"/sets/cloudflare/cloudflare-r2-bucket.html"},"cloudflare/cloudflare-r2-delete":{"id":"cloudflare/cloudflare-r2-delete","name":"cloudflare-r2-delete","set":"cloudflare","area":"network","description":"Delete an object from Cloudflare R2 storage","type":"action","url":"/sets/cloudflare/cloudflare-r2-delete.html"},"cloudflare/cloudflare-r2-get":{"id":"cloudflare/cloudflare-r2-get","name":"cloudflare-r2-get","set":"cloudflare","area":"network","description":"Download an object from Cloudflare R2 storage","type":"action","url":"/sets/cloudflare/cloudflare-r2-get.html"},"cloudflare/cloudflare-r2-head":{"id":"cloudflare/cloudflare-r2-head","name":"cloudflare-r2-head","set":"cloudflare","area":"network","description":"Get object metadata from Cloudflare R2 storage without downloading content","type":"action","url":"/sets/cloudflare/cloudflare-r2-head.html"},"cloudflare/cloudflare-r2-list":{"id":"cloudflare/cloudflare-r2-list","name":"cloudflare-r2-list","set":"cloudflare","area":"network","description":"List objects in a Cloudflare R2 bucket","type":"action","url":"/sets/cloudflare/cloudflare-r2-list.html"},"cloudflare/cloudflare-r2-put":{"id":"cloudflare/cloudflare-r2-put","name":"cloudflare-r2-put","set":"cloudflare","area":"network","description":"Upload an object to Cloudflare R2 storage","type":"action","url":"/sets/cloudflare/cloudflare-r2-put.html"},"cloudflare/cloudflare-zone-id":{"id":"cloudflare/cloudflare-zone-id","name":"cloudflare-zone-id","set":"cloudflare","area":"network","description":"Set the default zone ID for cache operations","type":"action","url":"/sets/cloudflare/cloudflare-zone-id.html"},"color/.color-palette":{"id":"color/.color-palette","name":".color-palette","set":"color","area":"ui","description":"displays 12 shades of a color family palette","type":"element","url":"/sets/color/color-palette.html"},"color/.color-swatch":{"id":"color/.color-swatch","name":".color-swatch","set":"color","area":"ui","description":"displays one to three color swatches","type":"element","url":"/sets/color/color-swatch.html"},"color/app-colors":{"id":"color/app-colors","name":"app-colors","set":"color","area":"ui","description":"sets the default app colors","type":"action","url":"/sets/color/app-colors.html"},"color/color":{"id":"color/color","name":"color","set":"color","area":"ui","description":"defines a color or alias","type":"action","url":"/sets/color/color.html"},"color/dynamic-color-theme":{"id":"color/dynamic-color-theme","name":"dynamic-color-theme","set":"color","area":"ui","description":"sets a dynamic color theme from an image or base color","type":"action","url":"/sets/color/dynamic-color-theme.html"},"color/list-color-palettes":{"id":"color/list-color-palettes","name":"list-color-palettes","set":"color","area":"ui","description":"lists color palette names","type":"action","url":"/sets/color/list-color-palettes.html"},"color/list-colors":{"id":"color/list-colors","name":"list-colors","set":"color","area":"ui","description":"returns a list of rhappsody colors","type":"action","url":"/sets/color/list-colors.html"},"color/set-brand-color":{"id":"color/set-brand-color","name":"set-brand-color","set":"color","area":"ui","description":"sets the brand color","type":"action","url":"/sets/color/set-brand-color.html"},"column/add-column":{"id":"column/add-column","name":"add-column","set":"column","area":"data","description":"Add a new column to all rows in a table with optional default value","type":"action","url":"/sets/column/add-column.html"},"column/average-column":{"id":"column/average-column","name":"average-column","set":"column","area":"data","description":"Calculate average of numeric values in a column","type":"action","url":"/sets/column/average-column.html"},"column/count-unique":{"id":"column/count-unique","name":"count-unique","set":"column","area":"data","description":"Count unique values in a column","type":"action","url":"/sets/column/count-unique.html"},"column/delete-column":{"id":"column/delete-column","name":"delete-column","set":"column","area":"data","description":"deletes a column from a table","type":"action","url":"/sets/column/delete-column.html"},"column/get-column":{"id":"column/get-column","name":"get-column","set":"column","area":"data","description":"Extract all values from a column as an array","type":"action","url":"/sets/column/get-column.html"},"column/has-column":{"id":"column/has-column","name":"has-column","set":"column","area":"data","description":"Check if a column exists in a table","type":"action","url":"/sets/column/has-column.html"},"column/list-columns":{"id":"column/list-columns","name":"list-columns","set":"column","area":"data","description":"Get an array of all column names in a table","type":"action","url":"/sets/column/list-columns.html"},"column/max-column":{"id":"column/max-column","name":"max-column","set":"column","area":"data","description":"Find maximum value in a column","type":"action","url":"/sets/column/max-column.html"},"column/min-column":{"id":"column/min-column","name":"min-column","set":"column","area":"data","description":"Find minimum value in a column","type":"action","url":"/sets/column/min-column.html"},"column/rename-column":{"id":"column/rename-column","name":"rename-column","set":"column","area":"data","description":"Rename a column across all rows in a table","type":"action","url":"/sets/column/rename-column.html"},"column/sort-column":{"id":"column/sort-column","name":"sort-column","set":"column","area":"data","description":"sorts a column of data","type":"action","url":"/sets/column/sort-column.html"},"column/sum-column":{"id":"column/sum-column","name":"sum-column","set":"column","area":"data","description":"Sum all numeric values in a column","type":"action","url":"/sets/column/sum-column.html"},"rhbuild/compile":{"id":"rhbuild/compile","name":"compile","set":"rhbuild","area":"platform","description":"Compile Rhyme source to bytecode with metadata extraction","type":"action","url":"/sets/rhbuild/compile.html"},"compiler/init-compiler":{"id":"compiler/init-compiler","name":"init-compiler","set":"compiler","area":"system","description":"initializes compiler (must be loaded already)","type":"action","url":"/sets/compiler/init-compiler.html"},"compiler/list-compilers":{"id":"compiler/list-compilers","name":"list-compilers","set":"compiler","area":"system","description":"lists cached compilers","type":"action","url":"/sets/compiler/list-compilers.html"},"compiler/load-compiler":{"id":"compiler/load-compiler","name":"load-compiler","set":"compiler","area":"system","description":"loads WASM compiler binary","type":"action","url":"/sets/compiler/load-compiler.html"},"components/.chip":{"id":"components/.chip","name":".chip","set":"components","area":"ui","description":"display a chip","type":"element","url":"/sets/components/chip.html"},"components/.copy-textbox":{"id":"components/.copy-textbox","name":".copy-textbox","set":"components","area":"ui","description":"display a text box with a copy icon that allows users to copy text to the system clipboard","type":"element","url":"/sets/components/copy-textbox.html"},"components/.copyright":{"id":"components/.copyright","name":".copyright","set":"components","area":"ui","description":"displays a copyright phrase with the current year","type":"element","url":"/sets/components/copyright.html"},"config/auto-mode":{"id":"config/auto-mode","name":"auto-mode","set":"config","area":"system","description":"Set application theme to auto (follows system preference)","type":"action","url":"/sets/config/auto-mode.html"},"config/config-app":{"id":"config/config-app","name":"config-app","set":"config","area":"system","description":"Configure app settings like title and default font","type":"action","url":"/sets/config/config-app.html"},"config/config-env":{"id":"config/config-env","name":"config-env","set":"config","area":"system","description":"Sets the RHCTX.env property to specify the runtime environment","type":"action","url":"/sets/config/config-env.html"},"config/config-ui":{"id":"config/config-ui","name":"config-ui","set":"config","area":"system","description":"Configure UI settings and behaviors","type":"action","url":"/sets/config/config-ui.html"},"config/dark-mode":{"id":"config/dark-mode","name":"dark-mode","set":"config","area":"system","description":"Set application theme to dark mode","type":"action","url":"/sets/config/dark-mode.html"},"config/light-mode":{"id":"config/light-mode","name":"light-mode","set":"config","area":"system","description":"Set application theme to light mode","type":"action","url":"/sets/config/light-mode.html"},"core/core-kv-get":{"id":"core/core-kv-get","name":"core-kv-get","set":"core","area":"core","description":"Retrieves values from Cloudflare KV storage using a key","type":"action","url":"/sets/core/core-kv-get.html"},"core/core-kv-put":{"id":"core/core-kv-put","name":"core-kv-put","set":"core","area":"core","description":"Cloudflare KV put","type":"action","url":"/sets/core/core-kv-put.html"},"css/set-css-variable":{"id":"css/set-css-variable","name":"set-css-variable","set":"css","area":"system","description":"sets a CSS variable","type":"action","url":"/sets/css/set-css-variable.html"},"csv/csv-export":{"id":"csv/csv-export","name":"csv-export","set":"csv","area":"data","description":"Convert array data to CSV string format","type":"function","url":"/sets/csv/csv-export.html"},"csv/csv-get-column":{"id":"csv/csv-get-column","name":"csv-get-column","set":"csv","area":"data","description":"Extract all values from a specific column in CSV data","type":"function","url":"/sets/csv/csv-get-column.html"},"csv/csv-headers":{"id":"csv/csv-headers","name":"csv-headers","set":"csv","area":"data","description":"Get the column headers from parsed CSV data","type":"function","url":"/sets/csv/csv-headers.html"},"csv/csv-parse":{"id":"csv/csv-parse","name":"csv-parse","set":"csv","area":"data","description":"Parse CSV text into an array of objects (with headers) or 2D array","type":"function","url":"/sets/csv/csv-parse.html"},"data/csv":{"id":"data/csv","name":"csv","set":"data","area":"data","description":"defines a block of static csv data","type":"action","url":"/sets/data/csv.html"},"data/delete-app-data":{"id":"data/delete-app-data","name":"delete-app-data","set":"data","area":"data","description":"delete app data (private)","type":"action","url":"/sets/data/delete-app-data.html"},"data/delete-public-app-data":{"id":"data/delete-public-app-data","name":"delete-public-app-data","set":"data","area":"data","description":"delete app data (public)","type":"action","url":"/sets/data/delete-public-app-data.html"},"data/list-app-data":{"id":"data/list-app-data","name":"list-app-data","set":"data","area":"data","description":"list app data (private)","type":"action","url":"/sets/data/list-app-data.html"},"data/list-public-app-data":{"id":"data/list-public-app-data","name":"list-public-app-data","set":"data","area":"data","description":"list app data (public)","type":"action","url":"/sets/data/list-public-app-data.html"},"data/load-app-data":{"id":"data/load-app-data","name":"load-app-data","set":"data","area":"data","description":"loads app data (private)","type":"action","url":"/sets/data/load-app-data.html"},"data/load-public-app-data":{"id":"data/load-public-app-data","name":"load-public-app-data","set":"data","area":"data","description":"loads app data (public)","type":"action","url":"/sets/data/load-public-app-data.html"},"data/save-app-data":{"id":"data/save-app-data","name":"save-app-data","set":"data","area":"data","description":"saves app data (private)","type":"action","url":"/sets/data/save-app-data.html"},"data/save-public-app-data":{"id":"data/save-public-app-data","name":"save-public-app-data","set":"data","area":"data","description":"saves app data (public)","type":"action","url":"/sets/data/save-public-app-data.html"},"date/add-days":{"id":"date/add-days","name":"add-days","set":"date","area":"data","description":"adds days to a given date","type":"function","url":"/sets/date/add-days.html"},"date/add-months":{"id":"date/add-months","name":"add-months","set":"date","area":"data","description":"adds months to a given date","type":"action","url":"/sets/date/add-months.html"},"date/add-weeks":{"id":"date/add-weeks","name":"add-weeks","set":"date","area":"data","description":"adds weeks to a given date","type":"action","url":"/sets/date/add-weeks.html"},"date/day-names":{"id":"date/day-names","name":"day-names","set":"date","area":"data","description":"gets localized day names","type":"action","url":"/sets/date/day-names.html"},"date/days-between":{"id":"date/days-between","name":"days-between","set":"date","area":"data","description":"calculate the number of days between two dates","type":"action","url":"/sets/date/days-between.html"},"date/days-until":{"id":"date/days-until","name":"days-until","set":"date","area":"data","description":"calculate the days until specified or current date","type":"action","url":"/sets/date/days-until.html"},"date/format-date":{"id":"date/format-date","name":"format-date","set":"date","area":"data","description":"formats a date using a template string or preset","type":"action","url":"/sets/date/format-date.html"},"time/get-browser-timezone":{"id":"time/get-browser-timezone","name":"get-browser-timezone","set":"time","area":"data","description":"gets user's browser timezone","type":"action","url":"/sets/time/get-browser-timezone.html"},"date/get-day":{"id":"date/get-day","name":"get-day","set":"date","area":"data","description":"extracts the day of month from a date (1-31)","type":"action","url":"/sets/date/get-day.html"},"time/get-hour":{"id":"time/get-hour","name":"get-hour","set":"time","area":"data","description":"extracts the hour from a date/time (0-23)","type":"action","url":"/sets/time/get-hour.html"},"time/get-internet-time":{"id":"time/get-internet-time","name":"get-internet-time","set":"time","area":"data","description":"gets accurate UTC time from the internet","type":"action","url":"/sets/time/get-internet-time.html"},"date/get-month":{"id":"date/get-month","name":"get-month","set":"date","area":"data","description":"extracts the month from a date (1-12)","type":"action","url":"/sets/date/get-month.html"},"time/get-time":{"id":"time/get-time","name":"get-time","set":"time","area":"data","description":"extracts time as HH:MM:SS string from a date","type":"action","url":"/sets/time/get-time.html"},"date/get-year":{"id":"date/get-year","name":"get-year","set":"date","area":"data","description":"extracts the year from a date","type":"action","url":"/sets/date/get-year.html"},"date/month-names":{"id":"date/month-names","name":"month-names","set":"date","area":"data","description":"gets the localized month names","type":"action","url":"/sets/date/month-names.html"},"debug/.error":{"id":"debug/.error","name":".error","set":"debug","area":"dev","description":"Displays an error message box","type":"element","url":"/sets/debug/error.html"},"debug/console-error":{"id":"debug/console-error","name":"console-error","set":"debug","area":"dev","description":"a javascript console.error equivalent","type":"action","url":"/sets/debug/console-error.html"},"debug/console-info":{"id":"debug/console-info","name":"console-info","set":"debug","area":"dev","description":"Outputs informational messages to the browser console for debugging","type":"action","url":"/sets/debug/console-info.html"},"debug/console-log":{"id":"debug/console-log","name":"console-log","set":"debug","area":"dev","description":"Outputs messages to the browser console for debugging purposes","type":"action","url":"/sets/debug/console-log.html"},"debug/console-var":{"id":"debug/console-var","name":"console-var","set":"debug","area":"dev","description":"prints a variable value to the javascript console for debugging","type":"action","url":"/sets/debug/console-var.html"},"debug/print":{"id":"debug/print","name":"print","set":"debug","area":"dev","description":"print text to ui for app development and testing","type":"action","url":"/sets/debug/print.html"},"debug/timer-start":{"id":"debug/timer-start","name":"timer-start","set":"debug","area":"dev","description":"Starts a timer to measure how long your code takes","type":"action","url":"/sets/debug/timer-start.html"},"debug/timer-stop":{"id":"debug/timer-stop","name":"timer-stop","set":"debug","area":"dev","description":"Stops a timer and tells you how much time passed","type":"action","url":"/sets/debug/timer-stop.html"},"defs/def-app":{"id":"defs/def-app","name":"def-app","set":"defs","area":"data","description":"Define app metadata with an identifier tag","type":"action","url":"/sets/defs/def-app.html"},"defs/def-coach":{"id":"defs/def-coach","name":"def-coach","set":"defs","area":"data","description":"Define a coach with an identifier tag (auto-assigns manager role)","type":"action","url":"/sets/defs/def-coach.html"},"defs/def-employee":{"id":"defs/def-employee","name":"def-employee","set":"defs","area":"data","description":"Define an employee with an identifier tag","type":"action","url":"/sets/defs/def-employee.html"},"defs/def-guest":{"id":"defs/def-guest","name":"def-guest","set":"defs","area":"data","description":"Define a guest with an identifier tag (auto-assigns guest role)","type":"action","url":"/sets/defs/def-guest.html"},"defs/def-location":{"id":"defs/def-location","name":"def-location","set":"defs","area":"data","description":"Define a location with an identifier tag (alias for def-place)","type":"action","url":"/sets/defs/def-location.html"},"defs/def-manager":{"id":"defs/def-manager","name":"def-manager","set":"defs","area":"data","description":"Define a manager with an identifier tag (auto-assigns manager role)","type":"action","url":"/sets/defs/def-manager.html"},"defs/def-place":{"id":"defs/def-place","name":"def-place","set":"defs","area":"data","description":"Define a place with an identifier tag","type":"action","url":"/sets/defs/def-place.html"},"defs/def-player":{"id":"defs/def-player","name":"def-player","set":"defs","area":"data","description":"Define a player with an identifier tag","type":"action","url":"/sets/defs/def-player.html"},"defs/def-room":{"id":"defs/def-room","name":"def-room","set":"defs","area":"data","description":"Define a room with an identifier tag (alias for def-place)","type":"action","url":"/sets/defs/def-room.html"},"defs/def-student":{"id":"defs/def-student","name":"def-student","set":"defs","area":"data","description":"Define a student with an identifier tag (auto-assigns member role)","type":"action","url":"/sets/defs/def-student.html"},"defs/def-teacher":{"id":"defs/def-teacher","name":"def-teacher","set":"defs","area":"data","description":"Define a teacher with an identifier tag (auto-assigns manager role)","type":"action","url":"/sets/defs/def-teacher.html"},"defs/def-thing":{"id":"defs/def-thing","name":"def-thing","set":"defs","area":"data","description":"Define a thing with an identifier tag","type":"action","url":"/sets/defs/def-thing.html"},"defs/def-user":{"id":"defs/def-user","name":"def-user","set":"defs","area":"data","description":"Define a user with an identifier tag","type":"action","url":"/sets/defs/def-user.html"},"defs/login":{"id":"defs/login","name":"login","set":"defs","area":"data","description":"Authenticate a user against their def-* definition","type":"function","url":"/sets/defs/login.html"},"demo/.demo":{"id":"demo/.demo","name":".demo","set":"demo","area":"dev","description":"Demo element for learning and testing action development patterns","type":"element","url":"/sets/demo/demo.html"},"demo/.demo-avatar":{"id":"demo/.demo-avatar","name":".demo-avatar","set":"demo","area":"dev","description":"demonstrates avatar creation with icons, initials, or images in customizable sizes","type":"element","url":"/sets/demo/demo-avatar.html"},"demo/.demo-base":{"id":"demo/.demo-base","name":".demo-base","set":"demo","area":"dev","description":"simple interactive button demonstrating basic action structure","type":"element","url":"/sets/demo/demo-base.html"},"demo/.demo-button":{"id":"demo/.demo-button","name":".demo-button","set":"demo","area":"dev","description":"demonstrates button creation with click handling and variable updates","type":"element","url":"/sets/demo/demo-button.html"},"demo/.demo-column":{"id":"demo/.demo-column","name":".demo-column","set":"demo","area":"dev","description":"demonstrates nesting pattern with vertical column layout using shared library","type":"element","url":"/sets/demo/demo-column.html"},"demo/.demo-composite":{"id":"demo/.demo-composite","name":".demo-composite","set":"demo","area":"dev","description":"demonstrates action composition by building UI from .demo-base components","type":"element","url":"/sets/demo/demo-composite.html"},"demo/.demo-container":{"id":"demo/.demo-container","name":".demo-container","set":"demo","area":"dev","description":"Demo action showing how container elements work with nesting (dot leader syntax)","type":"element","url":"/sets/demo/demo-container.html"},"demo/.demo-footer":{"id":"demo/.demo-footer","name":".demo-footer","set":"demo","area":"dev","description":"Demo action showing how to target elements to the footer container","type":"element","url":"/sets/demo/demo-footer.html"},"demo/.demo-header":{"id":"demo/.demo-header","name":".demo-header","set":"demo","area":"dev","description":"Demo action showing how to target elements to the header container","type":"element","url":"/sets/demo/demo-header.html"},"demo/.demo-input":{"id":"demo/.demo-input","name":".demo-input","set":"demo","area":"dev","description":"demonstrates input capture into a variable with color customization","type":"element","url":"/sets/demo/demo-input.html"},"demo/.demo-modifier":{"id":"demo/.demo-modifier","name":".demo-modifier","set":"demo","area":"dev","description":"Demo modifier to demonstrate how the VANDE modifier system works with + prefix syntax","type":"element","url":"/sets/demo/demo-modifier.html"},"demo/.demo-row":{"id":"demo/.demo-row","name":".demo-row","set":"demo","area":"dev","description":"simple row container demonstrating nesting with visual level indicators","type":"element","url":"/sets/demo/demo-row.html"},"demo/.demo-test":{"id":"demo/.demo-test","name":".demo-test","set":"demo","area":"dev","description":"demonstrates testing patterns and assertions for Rhappsody actions","type":"element","url":"/sets/demo/demo-test.html"},"demo/.demo-text":{"id":"demo/.demo-text","name":".demo-text","set":"demo","area":"dev","description":"demonstrates basic text display with size variants and colors","type":"element","url":"/sets/demo/demo-text.html"},"demo/.demo-use-shared":{"id":"demo/.demo-use-shared","name":".demo-use-shared","set":"demo","area":"dev","description":"Simple demo showing shared library utility usage","type":"element","url":"/sets/demo/demo-use-shared.html"},"demo/demo-fn":{"id":"demo/demo-fn","name":"demo-fn","set":"demo","area":"dev","description":"Demo function showing how functions work and return values","type":"function","url":"/sets/demo/demo-fn.html"},"demo/demo-net":{"id":"demo/demo-net","name":"demo-net","set":"demo","area":"dev","description":"Demo showing how to use this.net module for HTTP requests with live API testing","type":"function","url":"/sets/demo/demo-net.html"},"demo/demo-net-relative":{"id":"demo/demo-net-relative","name":"demo-net-relative","set":"demo","area":"dev","description":"demonstrates net module with relative platform URLs","type":"function","url":"/sets/demo/demo-net-relative.html"},"demo/demo-server-call":{"id":"demo/demo-server-call","name":"demo-server-call","set":"demo","area":"dev","description":"Demo action that calls the demo set worker to demonstrate set-level server pattern","type":"function","url":"/sets/demo/demo-server-call.html"},"demo/demo-use-static":{"id":"demo/demo-use-static","name":"demo-use-static","set":"demo","area":"dev","description":"demonstrates dynamic imports of set-level static assets","type":"function","url":"/sets/demo/demo-use-static.html"},"divider/.banner-divider":{"id":"divider/.banner-divider","name":".banner-divider","set":"divider","area":"ui","description":"displays an edge to edge colored bar with centered text that serves as a section content divider","type":"element","url":"/sets/divider/banner-divider.html"},"divider/.divider":{"id":"divider/.divider","name":".divider","set":"divider","area":"ui","description":"creates a horizontal divider line with optional label","type":"element","url":"/sets/divider/divider.html"},"divider/.divider-bar":{"id":"divider/.divider-bar","name":".divider-bar","set":"divider","area":"ui","description":"displays an edge to edge colored bar with centered text that serves as a section content divider","type":"element","url":"/sets/divider/divider-bar.html"},"divider/.shape-divider":{"id":"divider/.shape-divider","name":".shape-divider","set":"divider","area":"ui","description":"shape divider","type":"element","url":"/sets/divider/shape-divider.html"},"editor/.rhyme-editor":{"id":"editor/.rhyme-editor","name":".rhyme-editor","set":"editor","area":"platform","description":"a full featured rhyme editor","type":"element","url":"/sets/editor/rhyme-editor.html"},"editors/+when-close":{"id":"editors/+when-close","name":"+when-close","set":"editors","area":"appdev","description":"action to take when the parent element is closed","type":"action","url":"/sets/editors/-when-close.html"},"editors/.editor":{"id":"editors/.editor","name":".editor","set":"editors","area":"appdev","description":"simple overlay text editor","type":"element","url":"/sets/editors/editor.html"},"editors/.text-editor":{"id":"editors/.text-editor","name":".text-editor","set":"editors","area":"appdev","description":"Inline text editor with variable binding","type":"element","url":"/sets/editors/text-editor.html"},"editors/editor-onkey":{"id":"editors/editor-onkey","name":"editor-onkey","set":"editors","area":"appdev","description":"generic/core onkey handler for editors","type":"action","url":"/sets/editors/editor-onkey.html"},"email/send-email":{"id":"email/send-email","name":"send-email","set":"email","area":"external","description":"sends an email","type":"action","url":"/sets/email/send-email.html"},"email/set-email-bcc":{"id":"email/set-email-bcc","name":"set-email-bcc","set":"email","area":"external","description":"sets the email bcc field","type":"action","url":"/sets/email/set-email-bcc.html"},"email/set-email-body":{"id":"email/set-email-body","name":"set-email-body","set":"email","area":"external","description":"sets the email body field","type":"action","url":"/sets/email/set-email-body.html"},"email/set-email-cc":{"id":"email/set-email-cc","name":"set-email-cc","set":"email","area":"external","description":"sets the email cc field","type":"action","url":"/sets/email/set-email-cc.html"},"email/set-email-from":{"id":"email/set-email-from","name":"set-email-from","set":"email","area":"external","description":"sets the email from field","type":"action","url":"/sets/email/set-email-from.html"},"email/set-email-service":{"id":"email/set-email-service","name":"set-email-service","set":"email","area":"external","description":"sets the email service the app will use","type":"action","url":"/sets/email/set-email-service.html"},"email/set-email-subject":{"id":"email/set-email-subject","name":"set-email-subject","set":"email","area":"external","description":"sets the email subject field","type":"action","url":"/sets/email/set-email-subject.html"},"email/set-email-to":{"id":"email/set-email-to","name":"set-email-to","set":"email","area":"external","description":"sets the email to field","type":"action","url":"/sets/email/set-email-to.html"},"enter/.enter-date":{"id":"enter/.enter-date","name":".enter-date","set":"enter","area":"interaction","description":"enter date field","type":"element","url":"/sets/enter/enter-date.html"},"enter/.enter-email":{"id":"enter/.enter-email","name":".enter-email","set":"enter","area":"interaction","description":"enter email field","type":"element","url":"/sets/enter/enter-email.html"},"enter/.enter-family-name":{"id":"enter/.enter-family-name","name":".enter-family-name","set":"enter","area":"interaction","description":"enter family-name field","type":"element","url":"/sets/enter/enter-family-name.html"},"enter/.enter-fullname":{"id":"enter/.enter-fullname","name":".enter-fullname","set":"enter","area":"interaction","description":"enter fullname field","type":"element","url":"/sets/enter/enter-fullname.html"},"enter/.enter-given-name":{"id":"enter/.enter-given-name","name":".enter-given-name","set":"enter","area":"interaction","description":"enter given-name field","type":"element","url":"/sets/enter/enter-given-name.html"},"enter/.enter-helptext":{"id":"enter/.enter-helptext","name":".enter-helptext","set":"enter","area":"interaction","description":"adds help text below an .enter-xxxx element","type":"element","url":"/sets/enter/enter-helptext.html"},"enter/.enter-number":{"id":"enter/.enter-number","name":".enter-number","set":"enter","area":"interaction","description":"enter number field","type":"element","url":"/sets/enter/enter-number.html"},"enter/.enter-password":{"id":"enter/.enter-password","name":".enter-password","set":"enter","area":"interaction","description":"enter password field","type":"element","url":"/sets/enter/enter-password.html"},"enter/.enter-phone":{"id":"enter/.enter-phone","name":".enter-phone","set":"enter","area":"interaction","description":"enter phone field","type":"element","url":"/sets/enter/enter-phone.html"},"enter/.enter-text":{"id":"enter/.enter-text","name":".enter-text","set":"enter","area":"interaction","description":"text input for a single line of text","type":"element","url":"/sets/enter/enter-text.html"},"enter/.enter-time":{"id":"enter/.enter-time","name":".enter-time","set":"enter","area":"interaction","description":"enter time field","type":"element","url":"/sets/enter/enter-time.html"},"env/get-env":{"id":"env/get-env","name":"get-env","set":"env","area":"system","description":"Get an environment variable value by name","type":"function","url":"/sets/env/get-env.html"},"env/has-env":{"id":"env/has-env","name":"has-env","set":"env","area":"system","description":"Check if an environment variable exists","type":"function","url":"/sets/env/has-env.html"},"env/set-env":{"id":"env/set-env","name":"set-env","set":"env","area":"system","description":"Set an environment variable value","type":"action","url":"/sets/env/set-env.html"},"error/.error-line":{"id":"error/.error-line","name":".error-line","set":"error","area":"system","description":"displays an error on the app screen","type":"element","url":"/sets/error/error-line.html"},"error/.fullscreen-error":{"id":"error/.fullscreen-error","name":".fullscreen-error","set":"error","area":"system","description":"a full screen error component","type":"element","url":"/sets/error/fullscreen-error.html"},"exec/break":{"id":"exec/break","name":"break","set":"exec","area":"system","description":"breaks / halts app execution for debugging","type":"action","url":"/sets/exec/break.html"},"exec/continue":{"id":"exec/continue","name":"continue","set":"exec","area":"system","description":"continues running the app block (usually) after a wait","type":"action","url":"/sets/exec/continue.html"},"exec/delay":{"id":"exec/delay","name":"delay","set":"exec","area":"system","description":"delays or sleeps for a specified amount of time","type":"action","url":"/sets/exec/delay.html"},"exec/host-call":{"id":"exec/host-call","name":"host-call","set":"exec","area":"system","description":"call a function at the host / parent level. The environment is usually the browser to server javascript run time global environment","type":"action","url":"/sets/exec/host-call.html"},"exec/reload":{"id":"exec/reload","name":"reload","set":"exec","area":"system","description":"reloads/refreshes browser window. Restarts app from scratch","type":"action","url":"/sets/exec/reload.html"},"exec/resume":{"id":"exec/resume","name":"resume","set":"exec","area":"system","description":"resumes as flow (after wait/break/pause)","type":"action","url":"/sets/exec/resume.html"},"exec/return":{"id":"exec/return","name":"return","set":"exec","area":"system","description":"return values","type":"action","url":"/sets/exec/return.html"},"exec/run":{"id":"exec/run","name":"run","set":"exec","area":"system","description":"runs a block one time","type":"action","url":"/sets/exec/run.html"},"exec/wait":{"id":"exec/wait","name":"wait","set":"exec","area":"system","description":"wait for interaction before continuing","type":"action","url":"/sets/exec/wait.html"},"exec/waitfor":{"id":"exec/waitfor","name":"waitfor","set":"exec","area":"system","description":"waits for a value from an input into a variable","type":"action","url":"/sets/exec/waitfor.html"},"fields/.checkbox-field":{"id":"fields/.checkbox-field","name":".checkbox-field","set":"fields","area":"ui","description":"Creates a checkbox input with a clickable label","type":"element","url":"/sets/fields/checkbox-field.html"},"fields/.fieldset":{"id":"fields/.fieldset","name":".fieldset","set":"fields","area":"ui","description":"Groups related form fields together with optional label","type":"element","url":"/sets/fields/fieldset.html"},"fields/.password-field":{"id":"fields/.password-field","name":".password-field","set":"fields","area":"ui","description":"Creates a password input field with hidden text","type":"element","url":"/sets/fields/password-field.html"},"fields/.radio-field":{"id":"fields/.radio-field","name":".radio-field","set":"fields","area":"ui","description":"Creates a radio button input with selectable options","type":"element","url":"/sets/fields/radio-field.html"},"fields/.select-field":{"id":"fields/.select-field","name":".select-field","set":"fields","area":"ui","description":"Creates a dropdown selection field with multiple options","type":"element","url":"/sets/fields/select-field.html"},"fields/.text-field":{"id":"fields/.text-field","name":".text-field","set":"fields","area":"ui","description":"Creates a single-line text input field","type":"element","url":"/sets/fields/text-field.html"},"fields/.textbox-field":{"id":"fields/.textbox-field","name":".textbox-field","set":"fields","area":"ui","description":"Creates a multi-line text input area for longer content","type":"element","url":"/sets/fields/textbox-field.html"},"file/.upload-file-input":{"id":"file/.upload-file-input","name":".upload-file-input","set":"file","area":"system","description":"Creates a labeled file upload button with icon and text","type":"element","url":"/sets/file/upload-file-input.html"},"file/load-binary-file":{"id":"file/load-binary-file","name":"load-binary-file","set":"file","area":"system","description":"Loads binary data from a URL into a variable","type":"action","url":"/sets/file/load-binary-file.html"},"file/load-json-file":{"id":"file/load-json-file","name":"load-json-file","set":"file","area":"system","description":"Loads JSON data from a URL into a variable","type":"action","url":"/sets/file/load-json-file.html"},"file/load-text-file":{"id":"file/load-text-file","name":"load-text-file","set":"file","area":"system","description":"Loads text content from a URL into a variable","type":"action","url":"/sets/file/load-text-file.html"},"flow/set-start-block":{"id":"flow/set-start-block","name":"set-start-block","set":"flow","area":"system","description":"Defines which block your app starts running from","type":"action","url":"/sets/flow/set-start-block.html"},"fonts/.font-sample":{"id":"fonts/.font-sample","name":".font-sample","set":"fonts","area":"ui","description":"Shows a preview of what text looks like in a font","type":"element","url":"/sets/fonts/font-sample.html"},"fonts/font":{"id":"fonts/font","name":"font","set":"fonts","area":"ui","description":"Loads a font from Google Fonts for use in your app","type":"action","url":"/sets/fonts/font.html"},"fonts/list-fonts":{"id":"fonts/list-fonts","name":"list-fonts","set":"fonts","area":"ui","description":"Gets a list of all fonts currently loaded in your app","type":"action","url":"/sets/fonts/list-fonts.html"},"fonts/set-default-font":{"id":"fonts/set-default-font","name":"set-default-font","set":"fonts","area":"ui","description":"Makes a previously loaded font the default for your app","type":"action","url":"/sets/fonts/set-default-font.html"},"footers/.bottom-navbar":{"id":"footers/.bottom-navbar","name":".bottom-navbar","set":"footers","area":"layout","description":"displays a standard bottom app bar","type":"element","url":"/sets/footers/bottom-navbar.html"},"footers/.footer-nav":{"id":"footers/.footer-nav","name":".footer-nav","set":"footers","area":"layout","description":"Adds clickable navigation items to your footer","type":"element","url":"/sets/footers/footer-nav.html"},"form/.form":{"id":"form/.form","name":".form","set":"form","area":"input","description":"Creates a form container with optional color theming","type":"element","url":"/sets/form/form.html"},"form/.form-button":{"id":"form/.form-button","name":".form-button","set":"form","area":"input","description":"Creates a button within a form","type":"element","url":"/sets/form/form-button.html"},"form/.form-checkbox":{"id":"form/.form-checkbox","name":".form-checkbox","set":"form","area":"input","description":"Creates a labeled checkbox input within a form","type":"element","url":"/sets/form/form-checkbox.html"},"form/.form-choice":{"id":"form/.form-choice","name":".form-choice","set":"form","area":"input","description":"Creates a radio button choice for a .form-radio group","type":"element","url":"/sets/form/form-choice.html"},"form/.form-option":{"id":"form/.form-option","name":".form-option","set":"form","area":"input","description":"Creates an option for a .form-select dropdown","type":"element","url":"/sets/form/form-option.html"},"form/.form-radio":{"id":"form/.form-radio","name":".form-radio","set":"form","area":"input","description":"Creates a radio button group within a form","type":"element","url":"/sets/form/form-radio.html"},"form/.form-row":{"id":"form/.form-row","name":".form-row","set":"form","area":"input","description":"Horizontal row container for form elements","type":"element","url":"/sets/form/form-row.html"},"form/.form-select":{"id":"form/.form-select","name":".form-select","set":"form","area":"input","description":"Creates a labeled dropdown select within a form","type":"element","url":"/sets/form/form-select.html"},"form/.form-text":{"id":"form/.form-text","name":".form-text","set":"form","area":"input","description":"Creates a labeled text input field within a form","type":"element","url":"/sets/form/form-text.html"},"form/submit":{"id":"form/submit","name":"submit","set":"form","area":"input","description":"Submits form data to a URL, block, or default handler","type":"action","url":"/sets/form/submit.html"},"google/.map":{"id":"google/.map","name":".map","set":"google","area":"integration","description":"Display an interactive Google Map","type":"element","url":"/sets/google/map.html"},"google/detect-labels":{"id":"google/detect-labels","name":"detect-labels","set":"google","area":"integration","description":"Detect objects and labels in an image using Google Vision","type":"function","url":"/sets/google/detect-labels.html"},"google/google-api-key":{"id":"google/google-api-key","name":"google-api-key","set":"google","area":"integration","description":"Set Google API key (encrypted at compile time)","type":"action","url":"/sets/google/google-api-key.html"},"google/gsheets-api-key":{"id":"google/gsheets-api-key","name":"gsheets-api-key","set":"google","area":"integration","description":"Set Google Sheets API key (encrypted at compile time)","type":"action","url":"/sets/google/gsheets-api-key.html"},"google/gsheets-append":{"id":"google/gsheets-append","name":"gsheets-append","set":"google","area":"integration","description":"Append a row to a Google Sheet (uses Service Account authentication)","type":"function","url":"/sets/google/gsheets-append.html"},"google/gsheets-read":{"id":"google/gsheets-read","name":"gsheets-read","set":"google","area":"integration","description":"Read data from a Google Sheet","type":"function","url":"/sets/google/gsheets-read.html"},"google/gsheets-service-account":{"id":"google/gsheets-service-account","name":"gsheets-service-account","set":"google","area":"integration","description":"Set Google Service Account credentials for writing to sheets","type":"action","url":"/sets/google/gsheets-service-account.html"},"google/image-to-text":{"id":"google/image-to-text","name":"image-to-text","set":"google","area":"integration","description":"Extract text from an image using Google Vision OCR","type":"function","url":"/sets/google/image-to-text.html"},"goto/goto":{"id":"goto/goto","name":"goto","set":"goto","area":"system","description":"Jumps to a different block in your app","type":"action","url":"/sets/goto/goto.html"},"groq/groq-ai-chat":{"id":"groq/groq-ai-chat","name":"groq-ai-chat","set":"groq","area":"plugins","description":"Sends a message to Groq AI and gets a response","type":"action","url":"/sets/groq/groq-ai-chat.html"},"groq/groq-api-key":{"id":"groq/groq-api-key","name":"groq-api-key","set":"groq","area":"plugins","description":"Set Groq API key (encrypted at compile time)","type":"action","url":"/sets/groq/groq-api-key.html"},"groq/groq-model":{"id":"groq/groq-model","name":"groq-model","set":"groq","area":"plugins","description":"Set the Groq model to use for subsequent chat requests","type":"action","url":"/sets/groq/groq-model.html"},"groq/list-groq-models":{"id":"groq/list-groq-models","name":"list-groq-models","set":"groq","area":"plugins","description":"Gets a list of available AI models from Groq","type":"action","url":"/sets/groq/list-groq-models.html"},"group/filter-group":{"id":"group/filter-group","name":"filter-group","set":"group","area":"data","description":"Filters items from a group based on text matching","type":"action","url":"/sets/group/filter-group.html"},"group/get-item-number":{"id":"group/get-item-number","name":"get-item-number","set":"group","area":"data","description":"Gets a specific item from a group using its position number","type":"action","url":"/sets/group/get-item-number.html"},"group/sort-group":{"id":"group/sort-group","name":"sort-group","set":"group","area":"data","description":"Sorts items in a group alphabetically or in reverse order","type":"action","url":"/sets/group/sort-group.html"},"hash/hash-compare":{"id":"hash/hash-compare","name":"hash-compare","set":"hash","area":"data","description":"Compares two hash values for equality (case-insensitive, constant-time)","type":"function","url":"/sets/hash/hash-compare.html"},"hash/sha1":{"id":"hash/sha1","name":"sha1","set":"hash","area":"data","description":"Computes SHA-1 hash of text, returning a 40-character hex string (legacy, not for security)","type":"function","url":"/sets/hash/sha1.html"},"hash/sha256":{"id":"hash/sha256","name":"sha256","set":"hash","area":"data","description":"Computes SHA-256 hash of text, returning a 64-character hex string","type":"function","url":"/sets/hash/sha256.html"},"hash/sha384":{"id":"hash/sha384","name":"sha384","set":"hash","area":"data","description":"Computes SHA-384 hash of text, returning a 96-character hex string","type":"function","url":"/sets/hash/sha384.html"},"hash/sha512":{"id":"hash/sha512","name":"sha512","set":"hash","area":"data","description":"Computes SHA-512 hash of text, returning a 128-character hex string","type":"function","url":"/sets/hash/sha512.html"},"hash/verify-hash":{"id":"hash/verify-hash","name":"verify-hash","set":"hash","area":"data","description":"Verifies that text matches an expected hash (supports SHA-1, SHA-256, SHA-384, SHA-512)","type":"function","url":"/sets/hash/verify-hash.html"},"help/.action-help":{"id":"help/.action-help","name":".action-help","set":"help","area":"system","description":"displays action help screen","type":"element","url":"/sets/help/action-help.html"},"help/.action-list":{"id":"help/.action-list","name":".action-list","set":"help","area":"system","description":"shows a list of actions (search result)","type":"element","url":"/sets/help/action-list.html"},"help/init-help":{"id":"help/init-help","name":"init-help","set":"help","area":"system","description":"initialized inline rhappsody/rhyme help actions","type":"action","url":"/sets/help/init-help.html"},"help/list-actions":{"id":"help/list-actions","name":"list-actions","set":"help","area":"system","description":"gets a full list of rhappsody actions","type":"action","url":"/sets/help/list-actions.html"},"help/list-actionsets":{"id":"help/list-actionsets","name":"list-actionsets","set":"help","area":"system","description":"returns a complete list of action sets","type":"action","url":"/sets/help/list-actionsets.html"},"help/list-areas":{"id":"help/list-areas","name":"list-areas","set":"help","area":"system","description":"returns a list of action areas","type":"action","url":"/sets/help/list-areas.html"},"html/.a":{"id":"html/.a","name":".a","set":"html","area":"ui","description":"Creates a clickable link that navigates to web pages","type":"element","url":"/sets/html/a.html"},"html/.btn":{"id":"html/.btn","name":".btn","set":"html","area":"ui","description":"Creates a clickable button that can trigger actions","type":"element","url":"/sets/html/btn.html"},"html/.dialog":{"id":"html/.dialog","name":".dialog","set":"html","area":"ui","description":"Creates a modal dialog popup for user interaction","type":"element","url":"/sets/html/dialog.html"},"html/.div":{"id":"html/.div","name":".div","set":"html","area":"ui","description":"Creates a flexible container for organizing content","type":"element","url":"/sets/html/div.html"},"html/.hr":{"id":"html/.hr","name":".hr","set":"html","area":"ui","description":"Creates a horizontal line to separate content sections","type":"element","url":"/sets/html/hr.html"},"html/.iframe":{"id":"html/.iframe","name":".iframe","set":"html","area":"ui","description":"Embeds external web pages or content into your app","type":"element","url":"/sets/html/iframe.html"},"html/.img":{"id":"html/.img","name":".img","set":"html","area":"ui","description":"Displays images from web urls or your media collection","type":"element","url":"/sets/html/img.html"},"html/.input":{"id":"html/.input","name":".input","set":"html","area":"ui","description":"Creates a text input field for user data entry","type":"element","url":"/sets/html/input.html"},"html/.span":{"id":"html/.span","name":".span","set":"html","area":"ui","description":"Creates inline text elements for styling and formatting","type":"element","url":"/sets/html/span.html"},"html/.textarea":{"id":"html/.textarea","name":".textarea","set":"html","area":"ui","description":"Creates a multi-line text input area for longer text","type":"element","url":"/sets/html/textarea.html"},"html/.details":{"id":"html/.details","name":".details","set":"html","area":"ui","description":"Creates an expandable details section with collapsible content","type":"element","url":"/sets/html/details.html"},"http/http-delete":{"id":"http/http-delete","name":"http-delete","set":"http","area":"network","description":"Sends a DELETE request to remove data from a web server","type":"action","url":"/sets/http/http-delete.html"},"http/http-get":{"id":"http/http-get","name":"http-get","set":"http","area":"network","description":"Retrieves data from a web server using GET request","type":"function","url":"/sets/http/http-get.html"},"http/http-post":{"id":"http/http-post","name":"http-post","set":"http","area":"network","description":"Sends a POST request to submit data to a web server","type":"action","url":"/sets/http/http-post.html"},"http/http-put":{"id":"http/http-put","name":"http-put","set":"http","area":"network","description":"Sends a PUT request to update data on a web server","type":"action","url":"/sets/http/http-put.html"},"http/proxy":{"id":"http/proxy","name":"proxy","set":"http","area":"network","description":"Enables proxy mode for HTTP requests","type":"action","url":"/sets/http/proxy.html"},"http/set-http-body":{"id":"http/set-http-body","name":"set-http-body","set":"http","area":"network","description":"Sets the request body data for HTTP requests","type":"action","url":"/sets/http/set-http-body.html"},"http/set-http-header":{"id":"http/set-http-header","name":"set-http-header","set":"http","area":"network","description":"Sets a custom header for HTTP requests","type":"action","url":"/sets/http/set-http-header.html"},"http/set-http-timeout":{"id":"http/set-http-timeout","name":"set-http-timeout","set":"http","area":"network","description":"Sets how long to wait before HTTP requests timeout","type":"action","url":"/sets/http/set-http-timeout.html"},"icons/.icon":{"id":"icons/.icon","name":".icon","set":"icons","area":"ui","description":"a basic icon","type":"element","url":"/sets/icons/icon.html"},"icons/.icon-with-label":{"id":"icons/.icon-with-label","name":".icon-with-label","set":"icons","area":"ui","description":"an icon with a label to the left or below it","type":"element","url":"/sets/icons/icon-with-label.html"},"icons/.megaicon":{"id":"icons/.megaicon","name":".megaicon","set":"icons","area":"ui","description":"an oversized very large icon","type":"element","url":"/sets/icons/megaicon.html"},"icons/clear-icons":{"id":"icons/clear-icons","name":"clear-icons","set":"icons","area":"ui","description":"clears offline/caches icons from device","type":"action","url":"/sets/icons/clear-icons.html"},"icons/icon":{"id":"icons/icon","name":"icon","set":"icons","area":"ui","description":"defines an icon the app will use including optional aliases","type":"action","url":"/sets/icons/icon.html"},"icons/list-icons":{"id":"icons/list-icons","name":"list-icons","set":"icons","area":"ui","description":"lists the icons stored and available for offline use","type":"action","url":"/sets/icons/list-icons.html"},"icons/set-iconset":{"id":"icons/set-iconset","name":"set-iconset","set":"icons","area":"ui","description":"sets the default iconset","type":"action","url":"/sets/icons/set-iconset.html"},"if/if-fail":{"id":"if/if-fail","name":"if-fail","set":"if","area":"control","description":"if fail condition flow","type":"action","url":"/sets/if/if-fail.html"},"if/if-success":{"id":"if/if-success","name":"if-success","set":"if","area":"control","description":"if success condition flow","type":"action","url":"/sets/if/if-success.html"},"iframe/.embed":{"id":"iframe/.embed","name":".embed","set":"iframe","area":"ui","description":"Embed external content via iframe element with secure sandboxing","type":"element","url":"/sets/iframe/embed.html"},"images/.10x1-image":{"id":"images/.10x1-image","name":".10x1-image","set":"images","area":"ui","description":"an image with a 10x1 aspect ratio (banner!)","type":"element","url":"/sets/images/10x1-image.html"},"images/.12x1-image":{"id":"images/.12x1-image","name":".12x1-image","set":"images","area":"ui","description":"an image with a 12x1 aspect ratio (mega banner!)","type":"element","url":"/sets/images/12x1-image.html"},"images/.16x9-image":{"id":"images/.16x9-image","name":".16x9-image","set":"images","area":"ui","description":"an image with a 16x9 aspect ratio","type":"element","url":"/sets/images/16x9-image.html"},"images/.1x1-image":{"id":"images/.1x1-image","name":".1x1-image","set":"images","area":"ui","description":"an image with a 1x1 aspect ratio (square!)","type":"element","url":"/sets/images/1x1-image.html"},"images/.1x2-image":{"id":"images/.1x2-image","name":".1x2-image","set":"images","area":"ui","description":"an image with a 1x2 aspect ratio (tall!)","type":"element","url":"/sets/images/1x2-image.html"},"images/.1x3-image":{"id":"images/.1x3-image","name":".1x3-image","set":"images","area":"ui","description":"an image with a 1x3 aspect ratio (very tall!)","type":"element","url":"/sets/images/1x3-image.html"},"images/.1x4-image":{"id":"images/.1x4-image","name":".1x4-image","set":"images","area":"ui","description":"an image with a 1x4 aspect ratio (extremely tall!)","type":"element","url":"/sets/images/1x4-image.html"},"images/.1x6-image":{"id":"images/.1x6-image","name":".1x6-image","set":"images","area":"ui","description":"an image with a 1x6 aspect ratio (super tall!)","type":"element","url":"/sets/images/1x6-image.html"},"images/.1x8-image":{"id":"images/.1x8-image","name":".1x8-image","set":"images","area":"ui","description":"an image with a 1x8 aspect ratio (ultra tall!)","type":"element","url":"/sets/images/1x8-image.html"},"images/.2x1-image":{"id":"images/.2x1-image","name":".2x1-image","set":"images","area":"ui","description":"an image with a 2x1 aspect ratio (wide!)","type":"element","url":"/sets/images/2x1-image.html"},"images/.2x3-image":{"id":"images/.2x3-image","name":".2x3-image","set":"images","area":"ui","description":"an image with a 2x3 aspect ratio (portrait!)","type":"element","url":"/sets/images/2x3-image.html"},"images/.3x1-image":{"id":"images/.3x1-image","name":".3x1-image","set":"images","area":"ui","description":"an image with a 3x1 aspect ratio (very wide!)","type":"element","url":"/sets/images/3x1-image.html"},"images/.3x2-image":{"id":"images/.3x2-image","name":".3x2-image","set":"images","area":"ui","description":"an image with a 3x2 aspect ratio (landscape!)","type":"element","url":"/sets/images/3x2-image.html"},"images/.4x1-image":{"id":"images/.4x1-image","name":".4x1-image","set":"images","area":"ui","description":"an image with a 4x1 aspect ratio (extremely wide!)","type":"element","url":"/sets/images/4x1-image.html"},"images/.4x3-image":{"id":"images/.4x3-image","name":".4x3-image","set":"images","area":"ui","description":"an image with a 4x3 aspect ratio (classic!)","type":"element","url":"/sets/images/4x3-image.html"},"images/.4x5-image":{"id":"images/.4x5-image","name":".4x5-image","set":"images","area":"ui","description":"an image with a 4x5 aspect ratio (standard print!)","type":"element","url":"/sets/images/4x5-image.html"},"images/.5x4-image":{"id":"images/.5x4-image","name":".5x4-image","set":"images","area":"ui","description":"an image with a 5x4 aspect ratio (photo print!)","type":"element","url":"/sets/images/5x4-image.html"},"images/.6x1-image":{"id":"images/.6x1-image","name":".6x1-image","set":"images","area":"ui","description":"an image with a 6x1 aspect ratio (super wide!)","type":"element","url":"/sets/images/6x1-image.html"},"images/.6x9-image":{"id":"images/.6x9-image","name":".6x9-image","set":"images","area":"ui","description":"an image with a 6x9 aspect ratio (postcard!)","type":"element","url":"/sets/images/6x9-image.html"},"images/.8x1-image":{"id":"images/.8x1-image","name":".8x1-image","set":"images","area":"ui","description":"an image with a 8x1 aspect ratio (ultra wide!)","type":"element","url":"/sets/images/8x1-image.html"},"images/.circle-image":{"id":"images/.circle-image","name":".circle-image","set":"images","area":"ui","description":"small circlular image","type":"element","url":"/sets/images/circle-image.html"},"images/.golden-image":{"id":"images/.golden-image","name":".golden-image","set":"images","area":"ui","description":"an image with golden ratio aspect (1.618:1!)","type":"element","url":"/sets/images/golden-image.html"},"images/.image":{"id":"images/.image","name":".image","set":"images","area":"ui","description":"base image with its original aspect ratio","type":"element","url":"/sets/images/image.html"},"images/.image-button":{"id":"images/.image-button","name":".image-button","set":"images","area":"ui","description":"an image button","type":"element","url":"/sets/images/image-button.html"},"images/.image-title":{"id":"images/.image-title","name":".image-title","set":"images","area":"ui","description":"displays title text on top of an image","type":"element","url":"/sets/images/image-title.html"},"images/app-image":{"id":"images/app-image","name":"app-image","set":"images","area":"ui","description":"Saves images locally on the device for offline use","type":"action","url":"/sets/images/app-image.html"},"images/clear-image":{"id":"images/clear-image","name":"clear-image","set":"images","area":"ui","description":"Removes a saved image from your device's local storage","type":"action","url":"/sets/images/clear-image.html"},"images/clear-images":{"id":"images/clear-images","name":"clear-images","set":"images","area":"ui","description":"Removes all cached images from local device storage","type":"action","url":"/sets/images/clear-images.html"},"images/delete-app-image":{"id":"images/delete-app-image","name":"delete-app-image","set":"images","area":"ui","description":"Removes an image from your app's image collection","type":"action","url":"/sets/images/delete-app-image.html"},"images/image":{"id":"images/image","name":"image","set":"images","area":"ui","description":"Loads an image from a URL and stores it for future use","type":"action","url":"/sets/images/image.html"},"images/list-app-images":{"id":"images/list-app-images","name":"list-app-images","set":"images","area":"ui","description":"Gets a list of images available in your app","type":"action","url":"/sets/images/list-app-images.html"},"images/list-images":{"id":"images/list-images","name":"list-images","set":"images","area":"ui","description":"lists images saved in IDB using the set-image action","type":"function","url":"/sets/images/list-images.html"},"images/+tint":{"id":"images/+tint","name":"+tint","set":"images","area":"ui","description":"Applies a color tint overlay effect to images","type":"action","url":"/sets/images/-tint.html"},"images/resize-image":{"id":"images/resize-image","name":"resize-image","set":"images","area":"ui","description":"Resizes images to specific dimensions for web or email use","type":"action","url":"/sets/images/resize-image.html"},"images/save-app-image":{"id":"images/save-app-image","name":"save-app-image","set":"images","area":"ui","description":"saves an app image","type":"action","url":"/sets/images/save-app-image.html"},"images/set-image":{"id":"images/set-image","name":"set-image","set":"images","area":"ui","description":"sets/defines an image tag","type":"action","url":"/sets/images/set-image.html"},"images/upload-app-image":{"id":"images/upload-app-image","name":"upload-app-image","set":"images","area":"ui","description":"Uploads an image for use within your app interface","type":"action","url":"/sets/images/upload-app-image.html"},"inbox/.inbox-message":{"id":"inbox/.inbox-message","name":".inbox-message","set":"inbox","area":"external","description":"a single inbox message","type":"element","url":"/sets/inbox/inbox-message.html"},"inbox/.inbox-message-input":{"id":"inbox/.inbox-message-input","name":".inbox-message-input","set":"inbox","area":"external","description":"full inbox message input with from subject and body","type":"element","url":"/sets/inbox/inbox-message-input.html"},"inbox/clear-inbox":{"id":"inbox/clear-inbox","name":"clear-inbox","set":"inbox","area":"external","description":"clears all messages from the app inbox","type":"action","url":"/sets/inbox/clear-inbox.html"},"inbox/delete-inbox-message":{"id":"inbox/delete-inbox-message","name":"delete-inbox-message","set":"inbox","area":"external","description":"deletes an app inbox message","type":"action","url":"/sets/inbox/delete-inbox-message.html"},"inbox/list-inbox":{"id":"inbox/list-inbox","name":"list-inbox","set":"inbox","area":"external","description":"lists the current apps inbox contents","type":"action","url":"/sets/inbox/list-inbox.html"},"inbox/send-to-inbox":{"id":"inbox/send-to-inbox","name":"send-to-inbox","set":"inbox","area":"external","description":"sends a message to the app inbox","type":"action","url":"/sets/inbox/send-to-inbox.html"},"inbox/set-message-body":{"id":"inbox/set-message-body","name":"set-message-body","set":"inbox","area":"external","description":"sets the message body field","type":"action","url":"/sets/inbox/set-message-body.html"},"inbox/set-message-from":{"id":"inbox/set-message-from","name":"set-message-from","set":"inbox","area":"external","description":"sets the message from field","type":"action","url":"/sets/inbox/set-message-from.html"},"inbox/set-message-subject":{"id":"inbox/set-message-subject","name":"set-message-subject","set":"inbox","area":"external","description":"sets the message subject field","type":"action","url":"/sets/inbox/set-message-subject.html"},"init/init-all":{"id":"init/init-all","name":"init-all","set":"init","area":"system","description":"initalize all","type":"action","url":"/sets/init/init-all.html"},"init/init-auth":{"id":"init/init-auth","name":"init-auth","set":"init","area":"system","description":"initial auth","type":"action","url":"/sets/init/init-auth.html"},"init/init-images":{"id":"init/init-images","name":"init-images","set":"init","area":"system","description":"initializes / loads any saved images","type":"action","url":"/sets/init/init-images.html"},"input/.color-input":{"id":"input/.color-input","name":".color-input","set":"input","area":"interaction","description":"color input for a single line of text","type":"element","url":"/sets/input/color-input.html"},"input/.date-input":{"id":"input/.date-input","name":".date-input","set":"input","area":"interaction","description":"date input for a single line of text","type":"element","url":"/sets/input/date-input.html"},"input/.signature-pad":{"id":"input/.signature-pad","name":".signature-pad","set":"input","area":"interaction","description":"an input pad that mimics capturing a signature","type":"element","url":"/sets/input/signature-pad.html"},"rangeinputs/.slider-input":{"id":"rangeinputs/.slider-input","name":".slider-input","set":"rangeinputs","area":"interact","description":"A range slider input that binds to a numeric variable","type":"element","url":"/sets/rangeinputs/slider-input.html"},"input/.time-input":{"id":"input/.time-input","name":".time-input","set":"input","area":"interaction","description":"time input for a single line of text","type":"element","url":"/sets/input/time-input.html"},"textboxinputs/.textbox-input":{"id":"textboxinputs/.textbox-input","name":".textbox-input","set":"textboxinputs","area":"interact","description":"a basic textarea input for multi-line text entry","type":"element","url":"/sets/textboxinputs/textbox-input.html"},"json/is-valid-json":{"id":"json/is-valid-json","name":"is-valid-json","set":"json","area":"data","description":"Checks if a string is valid JSON","type":"function","url":"/sets/json/is-valid-json.html"},"json/json-get":{"id":"json/json-get","name":"json-get","set":"json","area":"data","description":"Gets a value from a JSON object using dot notation path","type":"function","url":"/sets/json/json-get.html"},"json/json-keys":{"id":"json/json-keys","name":"json-keys","set":"json","area":"data","description":"Gets all keys from a JSON object as an array","type":"function","url":"/sets/json/json-keys.html"},"json/json-merge":{"id":"json/json-merge","name":"json-merge","set":"json","area":"data","description":"Deep merges two JSON objects into one","type":"function","url":"/sets/json/json-merge.html"},"json/json-set":{"id":"json/json-set","name":"json-set","set":"json","area":"data","description":"Sets a value in a JSON object at a specific path","type":"function","url":"/sets/json/json-set.html"},"json/json-values":{"id":"json/json-values","name":"json-values","set":"json","area":"data","description":"Gets all values from a JSON object as an array","type":"function","url":"/sets/json/json-values.html"},"json/parse-json":{"id":"json/parse-json","name":"parse-json","set":"json","area":"data","description":"Parses a JSON string into an object or array","type":"function","url":"/sets/json/parse-json.html"},"json/stringify-json":{"id":"json/stringify-json","name":"stringify-json","set":"json","area":"data","description":"Converts an object or array to a JSON string","type":"function","url":"/sets/json/stringify-json.html"},"keyboard/.hotkey":{"id":"keyboard/.hotkey","name":".hotkey","set":"keyboard","area":"ui","description":"Display keyboard shortcut visually and register keypress handler","type":"action","url":"/sets/keyboard/hotkey.html"},"keyboard/disable-keypress":{"id":"keyboard/disable-keypress","name":"disable-keypress","set":"keyboard","area":"ui","description":"Suspend all keyboard shortcut handlers","type":"action","url":"/sets/keyboard/disable-keypress.html"},"keyboard/enable-keypress":{"id":"keyboard/enable-keypress","name":"enable-keypress","set":"keyboard","area":"ui","description":"Resume all keyboard shortcut handlers","type":"action","url":"/sets/keyboard/enable-keypress.html"},"keyboard/enable-shell-shortcut":{"id":"keyboard/enable-shell-shortcut","name":"enable-shell-shortcut","set":"keyboard","area":"ui","description":"enable the shell shortcut key","type":"action","url":"/sets/keyboard/enable-shell-shortcut.html"},"keyboard/hide-hotkeys":{"id":"keyboard/hide-hotkeys","name":"hide-hotkeys","set":"keyboard","area":"ui","description":"Hide all keyboard hotkey indicators without layout shift","type":"action","url":"/sets/keyboard/hide-hotkeys.html"},"keyboard/keypress":{"id":"keyboard/keypress","name":"keypress","set":"keyboard","area":"ui","description":"Handle arbitrary keypress events","type":"action","url":"/sets/keyboard/keypress.html"},"keyboard/show-hotkeys":{"id":"keyboard/show-hotkeys","name":"show-hotkeys","set":"keyboard","area":"ui","description":"Show all keyboard hotkey indicators","type":"action","url":"/sets/keyboard/show-hotkeys.html"},"language/english":{"id":"language/english","name":"english","set":"language","area":"media","description":"Checks if the current language is set to English","type":"action","url":"/sets/language/english.html"},"language/set-language":{"id":"language/set-language","name":"set-language","set":"language","area":"media","description":"Changes your app to display in a different language","type":"action","url":"/sets/language/set-language.html"},"language/spanish":{"id":"language/spanish","name":"spanish","set":"language","area":"media","description":"conditional spanish","type":"action","url":"/sets/language/spanish.html"},"stacks/.bottom-center":{"id":"stacks/.bottom-center","name":".bottom-center","set":"stacks","area":"layout","description":"Positions elements at the bottom-center of their container","type":"element","url":"/sets/stacks/bottom-center.html"},"stacks/.bottom-left":{"id":"stacks/.bottom-left","name":".bottom-left","set":"stacks","area":"layout","description":"Positions elements in the bottom-left corner of their container","type":"element","url":"/sets/stacks/bottom-left.html"},"stacks/.bottom-right":{"id":"stacks/.bottom-right","name":".bottom-right","set":"stacks","area":"layout","description":"Positions elements in the bottom-right corner of their container","type":"element","url":"/sets/stacks/bottom-right.html"},"layout/.column":{"id":"layout/.column","name":".column","set":"layout","area":"ui","description":"a column element: children will appear in a vertical column","type":"element","url":"/sets/layout/column.html"},"layout/.filler":{"id":"layout/.filler","name":".filler","set":"layout","area":"ui","description":"fills available space in a row","type":"element","url":"/sets/layout/filler.html"},"layout/.grid":{"id":"layout/.grid","name":".grid","set":"layout","area":"ui","description":".grid layout","type":"element","url":"/sets/layout/grid.html"},"layout/.grid-cell":{"id":"layout/.grid-cell","name":".grid-cell","set":"layout","area":"ui","description":"grid cell (must be defined after grid)","type":"element","url":"/sets/layout/grid-cell.html"},"layout/.middle-center":{"id":"layout/.middle-center","name":".middle-center","set":"layout","area":"ui","description":"middle center position","type":"element","url":"/sets/layout/middle-center.html"},"layout/.middle-left":{"id":"layout/.middle-left","name":".middle-left","set":"layout","area":"ui","description":"middle left position","type":"element","url":"/sets/layout/middle-left.html"},"layout/.middle-right":{"id":"layout/.middle-right","name":".middle-right","set":"layout","area":"ui","description":"middle right position","type":"element","url":"/sets/layout/middle-right.html"},"layout/.spacer":{"id":"layout/.spacer","name":".spacer","set":"layout","area":"ui","description":"defines a spacer","type":"element","url":"/sets/layout/spacer.html"},"stacks/.top-center":{"id":"stacks/.top-center","name":".top-center","set":"stacks","area":"layout","description":"Positions elements at the top-center of their container","type":"element","url":"/sets/stacks/top-center.html"},"stacks/.top-right":{"id":"stacks/.top-right","name":".top-right","set":"stacks","area":"layout","description":"Positions elements in the top-right corner of their container","type":"element","url":"/sets/stacks/top-right.html"},"layout/background-image":{"id":"layout/background-image","name":"background-image","set":"layout","area":"ui","description":"[DEPRECATED] Use background/.background-image instead - Sets a full-screen background image for the entire app","type":"action","url":"/sets/layout/background-image.html"},"lists/.list":{"id":"lists/.list","name":".list","set":"lists","area":"ui","description":"list","type":"element","url":"/sets/lists/list.html"},"lists/.list-item":{"id":"lists/.list-item","name":".list-item","set":"lists","area":"ui","description":"list item","type":"element","url":"/sets/lists/list-item.html"},"loading/.loading-bar":{"id":"loading/.loading-bar","name":".loading-bar","set":"loading","area":"ui","description":"Animated loading bar at the top of the screen (YouTube-style)","type":"element","url":"/sets/loading/loading-bar.html"},"loading/.loading-dots":{"id":"loading/.loading-dots","name":".loading-dots","set":"loading","area":"ui","description":"Animated loading dots indicator","type":"element","url":"/sets/loading/loading-dots.html"},"loading/.loading-overlay":{"id":"loading/.loading-overlay","name":".loading-overlay","set":"loading","area":"ui","description":"Loading overlay with spinner","type":"element","url":"/sets/loading/loading-overlay.html"},"loading/.placeholder-circle":{"id":"loading/.placeholder-circle","name":".placeholder-circle","set":"loading","area":"ui","description":"Animated circle placeholder for avatars and icons","type":"element","url":"/sets/loading/placeholder-circle.html"},"loading/.placeholder-line":{"id":"loading/.placeholder-line","name":".placeholder-line","set":"loading","area":"ui","description":"Animated line placeholder for loading text","type":"element","url":"/sets/loading/placeholder-line.html"},"loading/.placeholder-rect":{"id":"loading/.placeholder-rect","name":".placeholder-rect","set":"loading","area":"ui","description":"Animated rectangle placeholder for images and cards","type":"element","url":"/sets/loading/placeholder-rect.html"},"loading/.spinner":{"id":"loading/.spinner","name":".spinner","set":"loading","area":"ui","description":"shows a spinner icon","type":"element","url":"/sets/loading/spinner.html"},"loading/hide-loading":{"id":"loading/hide-loading","name":"hide-loading","set":"loading","area":"ui","description":"Hide all active loading indicators","type":"action","url":"/sets/loading/hide-loading.html"},"local/local-compile":{"id":"local/local-compile","name":"local-compile","set":"local","area":"dev","description":"Compile Rhyme source code via local compiler server","type":"action","url":"/sets/local/local-compile.html"},"local/local-env":{"id":"local/local-env","name":"local-env","set":"local","area":"dev","description":"Read and encrypt a local environment variable as RAHE credential","type":"action","url":"/sets/local/local-env.html"},"local/local-env-unsafe":{"id":"local/local-env-unsafe","name":"local-env-unsafe","set":"local","area":"dev","description":"Read a local environment variable (UNENCRYPTED - dev only)","type":"action","url":"/sets/local/local-env-unsafe.html"},"local/local-exec":{"id":"local/local-exec","name":"local-exec","set":"local","area":"dev","description":"Execute a shell command and return stdout/stderr","type":"action","url":"/sets/local/local-exec.html"},"local/local-file-delete":{"id":"local/local-file-delete","name":"local-file-delete","set":"local","area":"dev","description":"Delete a file from local storage by key","type":"action","url":"/sets/local/local-file-delete.html"},"local/local-file-list":{"id":"local/local-file-list","name":"local-file-list","set":"local","area":"dev","description":"List all file keys in local storage","type":"action","url":"/sets/local/local-file-list.html"},"local/local-file-load":{"id":"local/local-file-load","name":"local-file-load","set":"local","area":"dev","description":"Load a value from local file storage by key","type":"action","url":"/sets/local/local-file-load.html"},"local/local-file-path":{"id":"local/local-file-path","name":"local-file-path","set":"local","area":"dev","description":"Set base directory path for local file operations","type":"action","url":"/sets/local/local-file-path.html"},"local/local-file-save":{"id":"local/local-file-save","name":"local-file-save","set":"local","area":"dev","description":"Save a value to local file storage by key","type":"action","url":"/sets/local/local-file-save.html"},"local/local-health":{"id":"local/local-health","name":"local-health","set":"local","area":"dev","description":"Check if the local secrets server is running and healthy","type":"action","url":"/sets/local/local-health.html"},"local/local-sound":{"id":"local/local-sound","name":"local-sound","set":"local","area":"dev","description":"Play a sound file via local server using mpv","type":"action","url":"/sets/local/local-sound.html"},"location/address-to-location":{"id":"location/address-to-location","name":"address-to-location","set":"location","area":"external","description":"Convert a street address to geographic coordinates (latitude/longitude)","type":"function","url":"/sets/location/address-to-location.html"},"location/distance-between":{"id":"location/distance-between","name":"distance-between","set":"location","area":"external","description":"Calculates the distance between two geographic points (latitude/longitude) in miles or kilometers","type":"action","url":"/sets/location/distance-between.html"},"location/get-ip-location":{"id":"location/get-ip-location","name":"get-ip-location","set":"location","area":"external","description":"Gets geolocation data for an IP address using the Abstract API","type":"action","url":"/sets/location/get-ip-location.html"},"location/get-location":{"id":"location/get-location","name":"get-location","set":"location","area":"external","description":"Gets the user's current location (latitude, longitude, timestamp) using the browser's geolocation API","type":"action","url":"/sets/location/get-location.html"},"log/log":{"id":"log/log","name":"log","set":"log","area":"dev","description":"Log messages for testing and debugging. Entries are stored in VM state for /expect-console assertions","type":"action","url":"/sets/log/log.html"},"log/log-clear":{"id":"log/log-clear","name":"log-clear","set":"log","area":"dev","description":"Clear all stored log entries from VM state","type":"action","url":"/sets/log/log-clear.html"},"log/log-debug":{"id":"log/log-debug","name":"log-debug","set":"log","area":"dev","description":"Log debug messages for testing and debugging. Entries are stored in VM state for /expect-console assertions","type":"action","url":"/sets/log/log-debug.html"},"log/log-error":{"id":"log/log-error","name":"log-error","set":"log","area":"dev","description":"Log error messages for testing and debugging. Entries are stored in VM state for /expect-console assertions","type":"action","url":"/sets/log/log-error.html"},"log/log-info":{"id":"log/log-info","name":"log-info","set":"log","area":"dev","description":"Log informational messages for testing and debugging. Entries are stored in VM state for /expect-console assertions","type":"action","url":"/sets/log/log-info.html"},"log/log-warn":{"id":"log/log-warn","name":"log-warn","set":"log","area":"dev","description":"Log warning messages for testing and debugging. Entries are stored in VM state for /expect-console assertions","type":"action","url":"/sets/log/log-warn.html"},"logic/if":{"id":"logic/if","name":"if","set":"logic","area":"system","description":"Tests conditions to run different parts of your code","type":"action","url":"/sets/logic/if.html"},"logic/logic":{"id":"logic/logic","name":"logic","set":"logic","area":"system","description":"logic operations","type":"action","url":"/sets/logic/logic.html"},"logicfn/contains":{"id":"logicfn/contains","name":"contains","set":"logicfn","area":"system","description":"contains actions","type":"action","url":"/sets/logicfn/contains.html"},"logicfn/equals":{"id":"logicfn/equals","name":"equals","set":"logicfn","area":"system","description":"tests for equality","type":"action","url":"/sets/logicfn/equals.html"},"logicfn/have":{"id":"logicfn/have","name":"have","set":"logicfn","area":"system","description":"checks for variables existance","type":"action","url":"/sets/logicfn/have.html"},"logicfn/is-date":{"id":"logicfn/is-date","name":"is-date","set":"logicfn","area":"system","description":"checks if a value is in date format (yyyy-mm-dd)","type":"function","url":"/sets/logicfn/is-date.html"},"logicfn/is-greater-than":{"id":"logicfn/is-greater-than","name":"is-greater-than","set":"logicfn","area":"system","description":"checks if a value is greater than another value","type":"function","url":"/sets/logicfn/is-greater-than.html"},"logicfn/is-group":{"id":"logicfn/is-group","name":"is-group","set":"logicfn","area":"system","description":"checks to see if value is a group (array)","type":"function","url":"/sets/logicfn/is-group.html"},"logicfn/is-item":{"id":"logicfn/is-item","name":"is-item","set":"logicfn","area":"system","description":"checks to see if value is an item (object)","type":"function","url":"/sets/logicfn/is-item.html"},"logicfn/is-less-than":{"id":"logicfn/is-less-than","name":"is-less-than","set":"logicfn","area":"system","description":"checks if a value is less than another value","type":"function","url":"/sets/logicfn/is-less-than.html"},"validate/is-number":{"id":"validate/is-number","name":"is-number","set":"validate","area":"ui","description":"Checks if a value is a number type","type":"action","url":"/sets/validate/is-number.html"},"logicfn/is-text":{"id":"logicfn/is-text","name":"is-text","set":"logicfn","area":"system","description":"Test if a variable contains text","type":"action","url":"/sets/logicfn/is-text.html"},"logicfn/is-time":{"id":"logicfn/is-time","name":"is-time","set":"logicfn","area":"system","description":"checks if a value is in time format (hh:mm)","type":"function","url":"/sets/logicfn/is-time.html"},"logicfn/missing":{"id":"logicfn/missing","name":"missing","set":"logicfn","area":"system","description":"logic fn to test for missing variable","type":"action","url":"/sets/logicfn/missing.html"},"logicfn/not-equals":{"id":"logicfn/not-equals","name":"not-equals","set":"logicfn","area":"system","description":"not equals","type":"action","url":"/sets/logicfn/not-equals.html"},"loops/foreach":{"id":"loops/foreach","name":"foreach","set":"loops","area":"control","description":"loops over a group / column","type":"action","url":"/sets/loops/foreach.html"},"loops/loop":{"id":"loops/loop","name":"loop","set":"loops","area":"control","description":"loop over a variable","type":"action","url":"/sets/loops/loop.html"},"loops/repeat":{"id":"loops/repeat","name":"repeat","set":"loops","area":"control","description":"repeat an action or group of actions multiple times","type":"action","url":"/sets/loops/repeat.html"},"math/abs":{"id":"math/abs","name":"abs","set":"math","area":"data","description":"Returns the absolute value of a number","type":"action","url":"/sets/math/abs.html"},"math/add":{"id":"math/add","name":"add","set":"math","area":"data","description":"Adds a number to an existing value","type":"action","url":"/sets/math/add.html"},"math/average":{"id":"math/average","name":"average","set":"math","area":"data","description":"Calculates the average (mean) of a set of numbers in an array","type":"function","url":"/sets/math/average.html"},"math/calculate":{"id":"math/calculate","name":"calculate","set":"math","area":"data","description":"Solves math expressions like 2+3*4 or complex formulas","type":"action","url":"/sets/math/calculate.html"},"math/decrement":{"id":"math/decrement","name":"decrement","set":"math","area":"data","description":"decrements a number variable","type":"action","url":"/sets/math/decrement.html"},"math/divide":{"id":"math/divide","name":"divide","set":"math","area":"data","description":"divide","type":"action","url":"/sets/math/divide.html"},"math/max":{"id":"math/max","name":"max","set":"math","area":"data","description":"Finds the maximum value from a set of numbers in an array","type":"function","url":"/sets/math/max.html"},"math/modulo":{"id":"math/modulo","name":"modulo","set":"math","area":"data","description":"calculate the modulo (remainder) of a division","type":"function","url":"/sets/math/modulo.html"},"math/multiply":{"id":"math/multiply","name":"multiply","set":"math","area":"data","description":"multiply value","type":"action","url":"/sets/math/multiply.html"},"math/round":{"id":"math/round","name":"round","set":"math","area":"data","description":"rounds a number to a specified number of decimals","type":"action","url":"/sets/math/round.html"},"math/round-down":{"id":"math/round-down","name":"round-down","set":"math","area":"data","description":"rounds a number down to nearest integer","type":"action","url":"/sets/math/round-down.html"},"math/round-up":{"id":"math/round-up","name":"round-up","set":"math","area":"data","description":"rounds a number up to nearest integer","type":"action","url":"/sets/math/round-up.html"},"math/subtract":{"id":"math/subtract","name":"subtract","set":"math","area":"data","description":"subtracts a number from another number","type":"action","url":"/sets/math/subtract.html"},"menus/.menu":{"id":"menus/.menu","name":".menu","set":"menus","area":"ui","description":"Creates a dropdown menu container that holds menu items","type":"element","url":"/sets/menus/menu.html"},"menus/.menu-item":{"id":"menus/.menu-item","name":".menu-item","set":"menus","area":"ui","description":"Creates a clickable menu item with label, optional icon/image, and action block","type":"element","url":"/sets/menus/menu-item.html"},"menus/close-menu":{"id":"menus/close-menu","name":"close-menu","set":"menus","area":"ui","description":"Closes a menu by removing the 'active' class. Targets nearest menu or specific ID","type":"action","url":"/sets/menus/close-menu.html"},"menus/open-menu":{"id":"menus/open-menu","name":"open-menu","set":"menus","area":"ui","description":"Opens a menu by adding the 'active' class. Targets nearest menu or specific ID","type":"action","url":"/sets/menus/open-menu.html"},"menus/toggle-menu":{"id":"menus/toggle-menu","name":"toggle-menu","set":"menus","area":"ui","description":"Toggles a menu open or closed. If open, closes it. If closed, opens it","type":"action","url":"/sets/menus/toggle-menu.html"},"mock/fake":{"id":"mock/fake","name":"fake","set":"mock","area":"dev","description":"fakes items","type":"action","url":"/sets/mock/fake.html"},"mock/fake-date":{"id":"mock/fake-date","name":"fake-date","set":"mock","area":"dev","description":"sets a fake date (for testing)","type":"action","url":"/sets/mock/fake-date.html"},"mock/fake-future-date":{"id":"mock/fake-future-date","name":"fake-future-date","set":"mock","area":"dev","description":"generates a random date 1-12 weeks in the future","type":"action","url":"/sets/mock/fake-future-date.html"},"mock/fake-group":{"id":"mock/fake-group","name":"fake-group","set":"mock","area":"dev","description":"generates a fake group with names, emails, and addresses","type":"action","url":"/sets/mock/fake-group.html"},"mock/fake-past-date":{"id":"mock/fake-past-date","name":"fake-past-date","set":"mock","area":"dev","description":"generates a random date 1-12 weeks in the past","type":"action","url":"/sets/mock/fake-past-date.html"},"mock/fake-person":{"id":"mock/fake-person","name":"fake-person","set":"mock","area":"dev","description":"generates a fake person with name, email, address, and avatar","type":"action","url":"/sets/mock/fake-person.html"},"mock/fake-table":{"id":"mock/fake-table","name":"fake-table","set":"mock","area":"dev","description":"creates a fake table for testing","type":"action","url":"/sets/mock/fake-table.html"},"mock/fake-team":{"id":"mock/fake-team","name":"fake-team","set":"mock","area":"dev","description":"generates a fake team with names, emails, and positions","type":"action","url":"/sets/mock/fake-team.html"},"mock/fake-time":{"id":"mock/fake-time","name":"fake-time","set":"mock","area":"dev","description":"sets a fake time (for testing)","type":"action","url":"/sets/mock/fake-time.html"},"modifier/.alt":{"id":"modifier/.alt","name":".alt","set":"modifier","area":"ui","description":"sets the alt text modifier for an element","type":"element","url":"/sets/modifier/alt.html"},"modifier/.change":{"id":"modifier/.change","name":".change","set":"modifier","area":"ui","description":"sets a change event modifier","type":"element","url":"/sets/modifier/change.html"},"modifier/.click":{"id":"modifier/.click","name":".click","set":"modifier","area":"ui","description":"sets a click modifier","type":"element","url":"/sets/modifier/click.html"},"modifier/.double-click":{"id":"modifier/.double-click","name":".double-click","set":"modifier","area":"ui","description":"sets a double-click modifier","type":"element","url":"/sets/modifier/double-click.html"},"modifier/.enter":{"id":"modifier/.enter","name":".enter","set":"modifier","area":"ui","description":"sets a enter key modifier for an input field","type":"element","url":"/sets/modifier/enter.html"},"modifier/.escape":{"id":"modifier/.escape","name":".escape","set":"modifier","area":"ui","description":"sets an Escape key modifier","type":"element","url":"/sets/modifier/escape.html"},"modifier/.goto":{"id":"modifier/.goto","name":".goto","set":"modifier","area":"ui","description":"sets a goto modifier","type":"element","url":"/sets/modifier/goto.html"},"modifier/.gradient":{"id":"modifier/.gradient","name":".gradient","set":"modifier","area":"ui","description":"adds a gradient effect to an element","type":"element","url":"/sets/modifier/gradient.html"},"modifier/.help":{"id":"modifier/.help","name":".help","set":"modifier","area":"ui","description":"sets a help text modifier for an element","type":"element","url":"/sets/modifier/help.html"},"modifier/.hide":{"id":"modifier/.hide","name":".hide","set":"modifier","area":"ui","description":"hides the element after a previous modifier action","type":"element","url":"/sets/modifier/hide.html"},"modifier/.hover-over":{"id":"modifier/.hover-over","name":".hover-over","set":"modifier","area":"ui","description":"sets a hover over modifier","type":"element","url":"/sets/modifier/hover-over.html"},"modifier/.link":{"id":"modifier/.link","name":".link","set":"modifier","area":"ui","description":"sets a link modifier","type":"element","url":"/sets/modifier/link.html"},"modifier/.navto":{"id":"modifier/.navto","name":".navto","set":"modifier","area":"ui","description":"sets a navto modifier","type":"element","url":"/sets/modifier/navto.html"},"modifier/.overlay":{"id":"modifier/.overlay","name":".overlay","set":"modifier","area":"ui","description":"overlays text or other element on top of another (usually an image)","type":"element","url":"/sets/modifier/overlay.html"},"modifier/.placeholder":{"id":"modifier/.placeholder","name":".placeholder","set":"modifier","area":"ui","description":"sets a placeholder for an input element","type":"element","url":"/sets/modifier/placeholder.html"},"modifier/.right-click":{"id":"modifier/.right-click","name":".right-click","set":"modifier","area":"ui","description":"sets a right-click modifier","type":"element","url":"/sets/modifier/right-click.html"},"modifier/.run":{"id":"modifier/.run","name":".run","set":"modifier","area":"ui","description":"sets a run modifier","type":"element","url":"/sets/modifier/run.html"},"modifier/.tint":{"id":"modifier/.tint","name":".tint","set":"modifier","area":"ui","description":"tints an image with the specified color","type":"element","url":"/sets/modifier/tint.html"},"modifier/.tiptext":{"id":"modifier/.tiptext","name":".tiptext","set":"modifier","area":"ui","description":"sets tooltip text modifier for an element","type":"element","url":"/sets/modifier/tiptext.html"},"modifier/.wait":{"id":"modifier/.wait","name":".wait","set":"modifier","area":"ui","description":"waits on previous modifier action before continuing","type":"element","url":"/sets/modifier/wait.html"},"modifier/.when-load-complete":{"id":"modifier/.when-load-complete","name":".when-load-complete","set":"modifier","area":"ui","description":"modifier for when load complete event","type":"element","url":"/sets/modifier/when-load-complete.html"},"modules/exit-module":{"id":"modules/exit-module","name":"exit-module","set":"modules","area":"platform","description":"exits module and returns to host/parent app","type":"action","url":"/sets/modules/exit-module.html"},"modules/launch-module":{"id":"modules/launch-module","name":"launch-module","set":"modules","area":"platform","description":"launches a loaded module","type":"action","url":"/sets/modules/launch-module.html"},"modules/use-modules":{"id":"modules/use-modules","name":"use-modules","set":"modules","area":"platform","description":"loads and makes available modules within the larger app","type":"action","url":"/sets/modules/use-modules.html"},"moonshot/moonshot-ai-chat":{"id":"moonshot/moonshot-ai-chat","name":"moonshot-ai-chat","set":"moonshot","area":"external","description":"Sends a message to Moonshot AI (Kimi) and gets a response","type":"action","url":"/sets/moonshot/moonshot-ai-chat.html"},"moonshot/moonshot-api-key":{"id":"moonshot/moonshot-api-key","name":"moonshot-api-key","set":"moonshot","area":"external","description":"Set Moonshot API key (encrypted at compile time)","type":"action","url":"/sets/moonshot/moonshot-api-key.html"},"moonshot/moonshot-model":{"id":"moonshot/moonshot-model","name":"moonshot-model","set":"moonshot","area":"external","description":"Set the Moonshot model to use for subsequent chat requests","type":"action","url":"/sets/moonshot/moonshot-model.html"},"navigation/.back":{"id":"navigation/.back","name":".back","set":"navigation","area":"interaction","description":"a back navigation button","type":"element","url":"/sets/navigation/back.html"},"navigation/.close-icon":{"id":"navigation/.close-icon","name":".close-icon","set":"navigation","area":"interaction","description":"a standard close / \"x\" icon to close dialogs","type":"element","url":"/sets/navigation/close-icon.html"},"navigation/.goleft-effect":{"id":"navigation/.goleft-effect","name":".goleft-effect","set":"navigation","area":"interaction","description":"page left animated goto","type":"element","url":"/sets/navigation/goleft-effect.html"},"navigation/.goto-effect":{"id":"navigation/.goto-effect","name":".goto-effect","set":"navigation","area":"interaction","description":"goto effect","type":"element","url":"/sets/navigation/goto-effect.html"},"navigation/.navigation-bar":{"id":"navigation/.navigation-bar","name":".navigation-bar","set":"navigation","area":"interaction","description":"a navigation bar with text and a chevron on the right. Used to drill down into more detailed info","type":"element","url":"/sets/navigation/navigation-bar.html"},"navigation/slide-down":{"id":"navigation/slide-down","name":"slide-down","set":"navigation","area":"interaction","description":"slide down","type":"action","url":"/sets/navigation/slide-down.html"},"navigation/slide-left":{"id":"navigation/slide-left","name":"slide-left","set":"navigation","area":"interaction","description":"navigate to a block sliding left","type":"action","url":"/sets/navigation/slide-left.html"},"navigation/slide-right":{"id":"navigation/slide-right","name":"slide-right","set":"navigation","area":"interaction","description":"navigate to a block sliding right","type":"action","url":"/sets/navigation/slide-right.html"},"navigation/slide-up":{"id":"navigation/slide-up","name":"slide-up","set":"navigation","area":"interaction","description":"navigate to a block sliding right","type":"action","url":"/sets/navigation/slide-up.html"},"network/cache":{"id":"network/cache","name":"cache","set":"network","area":"external","description":"Pre-warms browser cache by fetching URLs in background (fire-and-forget)","type":"action","url":"/sets/network/cache.html"},"network/is-offline":{"id":"network/is-offline","name":"is-offline","set":"network","area":"external","description":"Checks if the browser is currently offline","type":"function","url":"/sets/network/is-offline.html"},"network/is-online":{"id":"network/is-online","name":"is-online","set":"network","area":"external","description":"Checks if the browser is currently online","type":"function","url":"/sets/network/is-online.html"},"notifications/unsubscribe":{"id":"notifications/unsubscribe","name":"unsubscribe","set":"notifications","area":"interaction","description":"unsubscribes from notification channel","type":"action","url":"/sets/notifications/unsubscribe.html"},"numbers/.number":{"id":"numbers/.number","name":".number","set":"numbers","area":"ui","description":"display a number","type":"element","url":"/sets/numbers/number.html"},"numbers/.pct-change":{"id":"numbers/.pct-change","name":".pct-change","set":"numbers","area":"ui","description":"Display percentage change between two numbers with color-coded direction","type":"element","url":"/sets/numbers/pct-change.html"},"openai/list-openai-models":{"id":"openai/list-openai-models","name":"list-openai-models","set":"openai","area":"plugins","description":"Gets a list of available chat models from OpenAI","type":"action","url":"/sets/openai/list-openai-models.html"},"openai/openai-api-key":{"id":"openai/openai-api-key","name":"openai-api-key","set":"openai","area":"plugins","description":"set OpenAI API key (encrypted at compile time)","type":"action","url":"/sets/openai/openai-api-key.html"},"openai/openai-chat":{"id":"openai/openai-chat","name":"openai-chat","set":"openai","area":"plugins","description":"Sends a message to OpenAI and gets an AI response","type":"action","url":"/sets/openai/openai-chat.html"},"openai/openai-model":{"id":"openai/openai-model","name":"openai-model","set":"openai","area":"plugins","description":"Set the OpenAI model to use for subsequent chat requests","type":"action","url":"/sets/openai/openai-model.html"},"overlays/.bottom-panel":{"id":"overlays/.bottom-panel","name":".bottom-panel","set":"overlays","area":"layout","description":"displays a bottom panel","type":"element","url":"/sets/overlays/bottom-panel.html"},"overlays/.full-panel":{"id":"overlays/.full-panel","name":".full-panel","set":"overlays","area":"layout","description":"displays a full screen panel","type":"element","url":"/sets/overlays/full-panel.html"},"overlays/.left-panel":{"id":"overlays/.left-panel","name":".left-panel","set":"overlays","area":"layout","description":"displays a left panel","type":"element","url":"/sets/overlays/left-panel.html"},"overlays/.popup":{"id":"overlays/.popup","name":".popup","set":"overlays","area":"layout","description":"a centered pop up/modal layout container","type":"element","url":"/sets/overlays/popup.html"},"overlays/.right-panel":{"id":"overlays/.right-panel","name":".right-panel","set":"overlays","area":"layout","description":"displays a right panel","type":"element","url":"/sets/overlays/right-panel.html"},"overlays/.top-panel":{"id":"overlays/.top-panel","name":".top-panel","set":"overlays","area":"layout","description":"displays a top panel","type":"element","url":"/sets/overlays/top-panel.html"},"paragraph/.paragraph":{"id":"paragraph/.paragraph","name":".paragraph","set":"paragraph","area":"ui","description":"a paragraph text container","type":"element","url":"/sets/paragraph/paragraph.html"},"paragraph/.paragraph-text":{"id":"paragraph/.paragraph-text","name":".paragraph-text","set":"paragraph","area":"ui","description":"inline paragraph text or value","type":"element","url":"/sets/paragraph/paragraph-text.html"},"permissions/check-permission":{"id":"permissions/check-permission","name":"check-permission","set":"permissions","area":"interaction","description":"Check browser permission state without prompting","type":"action","url":"/sets/permissions/check-permission.html"},"permissions/request-permission":{"id":"permissions/request-permission","name":"request-permission","set":"permissions","area":"interaction","description":"Request browser permission (may show prompt)","type":"action","url":"/sets/permissions/request-permission.html"},"pickone/.pick-one":{"id":"pickone/.pick-one","name":".pick-one","set":"pickone","area":"interact","description":"Single-choice selection input (pick exactly one option)","type":"element","url":"/sets/pickone/pick-one.html"},"platform/set-dev-mode":{"id":"platform/set-dev-mode","name":"set-dev-mode","set":"platform","area":"system","description":"sets dev mode","type":"action","url":"/sets/platform/set-dev-mode.html"},"platform/set-mock-mode":{"id":"platform/set-mock-mode","name":"set-mock-mode","set":"platform","area":"system","description":"sets mock mode","type":"action","url":"/sets/platform/set-mock-mode.html"},"platform/use":{"id":"platform/use","name":"use","set":"platform","area":"system","description":"loads platform plugin or component and makes available for use","type":"action","url":"/sets/platform/use.html"},"prices/.price":{"id":"prices/.price","name":".price","set":"prices","area":"data","description":"Display a price with currency formatting","type":"element","url":"/sets/prices/price.html"},"prices/.price-strikethrough":{"id":"prices/.price-strikethrough","name":".price-strikethrough","set":"prices","area":"data","description":"Display original price struck through with sale price","type":"element","url":"/sets/prices/price-strikethrough.html"},"prices/add-tax":{"id":"prices/add-tax","name":"add-tax","set":"prices","area":"data","description":"Add tax percentage to a price","type":"function","url":"/sets/prices/add-tax.html"},"prices/format-price":{"id":"prices/format-price","name":"format-price","set":"prices","area":"data","description":"Format a number as a localized price string","type":"function","url":"/sets/prices/format-price.html"},"prices/set-currency":{"id":"prices/set-currency","name":"set-currency","set":"prices","area":"data","description":"Set the currency for price formatting","type":"action","url":"/sets/prices/set-currency.html"},"prices/set-price-locale":{"id":"prices/set-price-locale","name":"set-price-locale","set":"prices","area":"data","description":"Set the locale for price number formatting","type":"action","url":"/sets/prices/set-price-locale.html"},"profile/.profile":{"id":"profile/.profile","name":".profile","set":"profile","area":"data","description":"displays a styled user profile card with image and details","type":"element","url":"/sets/profile/profile.html"},"profile/clear-profile":{"id":"profile/clear-profile","name":"clear-profile","set":"profile","area":"data","description":"Removes all saved user profile information from your app","type":"action","url":"/sets/profile/clear-profile.html"},"profile/new-profile":{"id":"profile/new-profile","name":"new-profile","set":"profile","area":"data","description":"Creates a fresh profile with default values, replacing any existing data","type":"action","url":"/sets/profile/new-profile.html"},"profile/profile":{"id":"profile/profile","name":"profile","set":"profile","area":"data","description":"Stores user profile information like name, email, preferences, and settings","type":"action","url":"/sets/profile/profile.html"},"profile/restore-profile":{"id":"profile/restore-profile","name":"restore-profile","set":"profile","area":"data","description":"Restores saved user profile variables or creates new profile","type":"action","url":"/sets/profile/restore-profile.html"},"profile/store-profile":{"id":"profile/store-profile","name":"store-profile","set":"profile","area":"data","description":"Saves your current profile data to device for future use","type":"action","url":"/sets/profile/store-profile.html"},"progress/.hide-in-progress":{"id":"progress/.hide-in-progress","name":".hide-in-progress","set":"progress","area":"ui","description":"hides the .show-in-progess element","type":"element","url":"/sets/progress/hide-in-progress.html"},"progress/.progress-bar":{"id":"progress/.progress-bar","name":".progress-bar","set":"progress","area":"ui","description":"Display a horizontal progress bar with customizable appearance","type":"element","url":"/sets/progress/progress-bar.html"},"progress/.progress-circle":{"id":"progress/.progress-circle","name":".progress-circle","set":"progress","area":"ui","description":"...","type":"element","url":"/sets/progress/progress-circle.html"},"progress/.progress-circle-with-value":{"id":"progress/.progress-circle-with-value","name":".progress-circle-with-value","set":"progress","area":"ui","description":"shows a progress circle with percent complete value in center","type":"element","url":"/sets/progress/progress-circle-with-value.html"},"progress/.show-in-progress":{"id":"progress/.show-in-progress","name":".show-in-progress","set":"progress","area":"ui","description":"shows full screen in progress overlay spinner with an optional message","type":"element","url":"/sets/progress/show-in-progress.html"},"publish/publish-bin":{"id":"publish/publish-bin","name":"publish-bin","set":"publish","area":"appdev","description":"publishes binary to regional public R2","type":"action","url":"/sets/publish/publish-bin.html"},"publish/publish-html":{"id":"publish/publish-html","name":"publish-html","set":"publish","area":"appdev","description":"publishes launch html to regional public R2","type":"action","url":"/sets/publish/publish-html.html"},"publish/publish-private":{"id":"publish/publish-private","name":"publish-private","set":"publish","area":"appdev","description":"publishes binary to regional private R2","type":"action","url":"/sets/publish/publish-private.html"},"random/pick-random":{"id":"random/pick-random","name":"pick-random","set":"random","area":"numbers","description":"Selects a random item from a group of options","type":"action","url":"/sets/random/pick-random.html"},"random/random-between":{"id":"random/random-between","name":"random-between","set":"random","area":"numbers","description":"Generates a random number between two values","type":"action","url":"/sets/random/random-between.html"},"random/random-digits":{"id":"random/random-digits","name":"random-digits","set":"random","area":"numbers","description":"Creates a string of random numbers with chosen length","type":"function","url":"/sets/random/random-digits.html"},"random/random-text":{"id":"random/random-text","name":"random-text","set":"random","area":"numbers","description":"Creates random text with letters and numbers for passwords or tokens","type":"function","url":"/sets/random/random-text.html"},"random/random-uuid":{"id":"random/random-uuid","name":"random-uuid","set":"random","area":"numbers","description":"Creates a unique identifier for tracking or database records","type":"action","url":"/sets/random/random-uuid.html"},"rangeinputs/.dial-input":{"id":"rangeinputs/.dial-input","name":".dial-input","set":"rangeinputs","area":"interact","description":"Large touch-friendly rotary dial that returns a numeric value","type":"element","url":"/sets/rangeinputs/dial-input.html"},"rangeinputs/.stepper-input":{"id":"rangeinputs/.stepper-input","name":".stepper-input","set":"rangeinputs","area":"interact","description":"Touch-friendly +/- stepper that returns a numeric value","type":"element","url":"/sets/rangeinputs/stepper-input.html"},"resend/resend-api-key":{"id":"resend/resend-api-key","name":"resend-api-key","set":"resend","area":"plugins","description":"set Resend API key (encrypted at compile time)","type":"action","url":"/sets/resend/resend-api-key.html"},"resend/resend-send-email":{"id":"resend/resend-send-email","name":"resend-send-email","set":"resend","area":"plugins","description":"Sends an email through the Resend service","type":"action","url":"/sets/resend/resend-send-email.html"},"resources/person":{"id":"resources/person","name":"person","set":"resources","area":"external","description":"Creates a person record with contact information","type":"action","url":"/sets/resources/person.html"},"resources/resource":{"id":"resources/resource","name":"resource","set":"resources","area":"external","description":"Creates or references a named resource (person, item, etc.)","type":"action","url":"/sets/resources/resource.html"},"resources/slot":{"id":"resources/slot","name":"slot","set":"resources","area":"external","description":"Creates time slots for appointments or bookings","type":"action","url":"/sets/resources/slot.html"},"rhappsody/.rhappsody-logo":{"id":"rhappsody/.rhappsody-logo","name":".rhappsody-logo","set":"rhappsody","area":"ui","description":"shows rhappsody logo","type":"element","url":"/sets/rhappsody/rhappsody-logo.html"},"rhappsody/rhappsody-admin-auth":{"id":"rhappsody/rhappsody-admin-auth","name":"rhappsody-admin-auth","set":"rhappsody","area":"ui","description":"Set Rhappsody admin authentication credential (encrypted at compile time)","type":"action","url":"/sets/rhappsody/rhappsody-admin-auth.html"},"rhappsody/rhappsody-api-key":{"id":"rhappsody/rhappsody-api-key","name":"rhappsody-api-key","set":"rhappsody","area":"ui","description":"Set Rhappsody platform API key (encrypted at compile time)","type":"action","url":"/sets/rhappsody/rhappsody-api-key.html"},"rhappsody/rhappsody-app-auth":{"id":"rhappsody/rhappsody-app-auth","name":"rhappsody-app-auth","set":"rhappsody","area":"ui","description":"Set Rhappsody app authentication credential (encrypted at compile time)","type":"action","url":"/sets/rhappsody/rhappsody-app-auth.html"},"rhappsody/rhappsody-app-manager-auth":{"id":"rhappsody/rhappsody-app-manager-auth","name":"rhappsody-app-manager-auth","set":"rhappsody","area":"ui","description":"Set Rhappsody app manager authentication credential (encrypted at compile time)","type":"action","url":"/sets/rhappsody/rhappsody-app-manager-auth.html"},"rhappsody/rhappsody-app-user-auth":{"id":"rhappsody/rhappsody-app-user-auth","name":"rhappsody-app-user-auth","set":"rhappsody","area":"ui","description":"Set Rhappsody app user authentication credential (encrypted at compile time)","type":"action","url":"/sets/rhappsody/rhappsody-app-user-auth.html"},"rhappsody/rhappsody-instance":{"id":"rhappsody/rhappsody-instance","name":"rhappsody-instance","set":"rhappsody","area":"ui","description":"Set Rhappsody platform instance name","type":"action","url":"/sets/rhappsody/rhappsody-instance.html"},"rhappsody/rhappsody-owner-auth":{"id":"rhappsody/rhappsody-owner-auth","name":"rhappsody-owner-auth","set":"rhappsody","area":"ui","description":"Set Rhappsody owner authentication credential (encrypted at compile time)","type":"action","url":"/sets/rhappsody/rhappsody-owner-auth.html"},"rhbuild/apply-build-template":{"id":"rhbuild/apply-build-template","name":"apply-build-template","set":"rhbuild","area":"platform","description":"Apply build template to compiled assets producing HTML/PWA/parts","type":"action","url":"/sets/rhbuild/apply-build-template.html"},"rhbuild/build-and-publish":{"id":"rhbuild/build-and-publish","name":"build-and-publish","set":"rhbuild","area":"platform","description":"Compiles Rhyme source and publishes to KV in one authenticated call","type":"action","url":"/sets/rhbuild/build-and-publish.html"},"rhbuild/build-app":{"id":"rhbuild/build-app","name":"build-app","set":"rhbuild","area":"platform","description":"builds an app from rhyme source text","type":"action","url":"/sets/rhbuild/build-app.html"},"rhbuild/bundle-raf":{"id":"rhbuild/bundle-raf","name":"bundle-raf","set":"rhbuild","area":"platform","description":"Bundle filtered RAF (action registry) from compilation metadata","type":"action","url":"/sets/rhbuild/bundle-raf.html"},"rhbuild/list-build-templates":{"id":"rhbuild/list-build-templates","name":"list-build-templates","set":"rhbuild","area":"platform","description":"List available build templates for apply-build-template","type":"action","url":"/sets/rhbuild/list-build-templates.html"},"rhdoc/dir-sets":{"id":"rhdoc/dir-sets","name":"dir-sets","set":"rhdoc","area":"system","description":"Display a searchable directory of all action sets","type":"action","url":"/sets/rhdoc/dir-sets.html"},"rhdoc/dir-syntax":{"id":"rhdoc/dir-syntax","name":"dir-syntax","set":"rhdoc","area":"system","description":"Search actions by syntax/name and display results as buttons","type":"action","url":"/sets/rhdoc/dir-syntax.html"},"rhdoc/dir-vars":{"id":"rhdoc/dir-vars","name":"dir-vars","set":"rhdoc","area":"rhappsody","description":"Display a searchable table of current variables with values and types","type":"action","url":"/sets/rhdoc/dir-vars.html"},"rhdoc/dir-vartypes":{"id":"rhdoc/dir-vartypes","name":"dir-vartypes","set":"rhdoc","area":"system","description":"Display a searchable table of variable type names and codes","type":"action","url":"/sets/rhdoc/dir-vartypes.html"},"rhyme/.rhyme-example":{"id":"rhyme/.rhyme-example","name":".rhyme-example","set":"rhyme","area":"system","description":"an example rhyme snippet with output","type":"element","url":"/sets/rhyme/rhyme-example.html"},"rhyme/.rhyme-live":{"id":"rhyme/.rhyme-live","name":".rhyme-live","set":"rhyme","area":"system","description":"a live rhyme scratch pad with output","type":"element","url":"/sets/rhyme/rhyme-live.html"},"rhyme/.rhyme-source":{"id":"rhyme/.rhyme-source","name":".rhyme-source","set":"rhyme","area":"system","description":"displays a formatted block of rhyme code","type":"element","url":"/sets/rhyme/rhyme-source.html"},"rhyme/.rhyme-syntax":{"id":"rhyme/.rhyme-syntax","name":".rhyme-syntax","set":"rhyme","area":"system","description":"Display a formatted syntax reference card for a Rhyme action","type":"element","url":"/sets/rhyme/rhyme-syntax.html"},"rhyme/load-source":{"id":"rhyme/load-source","name":"load-source","set":"rhyme","area":"system","description":"loads app source code","type":"action","url":"/sets/rhyme/load-source.html"},"rhyme/save-source":{"id":"rhyme/save-source","name":"save-source","set":"rhyme","area":"system","description":"saves current app source code","type":"action","url":"/sets/rhyme/save-source.html"},"rhyme/set-app-source":{"id":"rhyme/set-app-source","name":"set-app-source","set":"rhyme","area":"system","description":"sets the app source. This replaces the current source. Be careful!","type":"action","url":"/sets/rhyme/set-app-source.html"},"rhyme/source-block-list":{"id":"rhyme/source-block-list","name":"source-block-list","set":"rhyme","area":"system","description":"gets a list of blocks from the source","type":"action","url":"/sets/rhyme/source-block-list.html"},"rhyme/source-delete-block":{"id":"rhyme/source-delete-block","name":"source-delete-block","set":"rhyme","area":"system","description":"deletes a source block","type":"action","url":"/sets/rhyme/source-delete-block.html"},"rhyme/source-get-block":{"id":"rhyme/source-get-block","name":"source-get-block","set":"rhyme","area":"system","description":"gets source block from blocks object","type":"action","url":"/sets/rhyme/source-get-block.html"},"rhyme/source-join-blocks":{"id":"rhyme/source-join-blocks","name":"source-join-blocks","set":"rhyme","area":"system","description":"splits joins source blocks into a single source file","type":"action","url":"/sets/rhyme/source-join-blocks.html"},"rhyme/source-split-blocks":{"id":"rhyme/source-split-blocks","name":"source-split-blocks","set":"rhyme","area":"system","description":"splits single source file into blocks","type":"action","url":"/sets/rhyme/source-split-blocks.html"},"rhyme/source-update-block":{"id":"rhyme/source-update-block","name":"source-update-block","set":"rhyme","area":"system","description":"updates a block in a app block group object","type":"action","url":"/sets/rhyme/source-update-block.html"},"rhymeai/rhyme-ai-context":{"id":"rhymeai/rhyme-ai-context","name":"rhyme-ai-context","set":"rhymeai","area":"dev","description":"Load external text content to include as context in AI requests","type":"action","url":"/sets/rhymeai/rhyme-ai-context.html"},"rhymeai/rhyme-ai-model":{"id":"rhymeai/rhyme-ai-model","name":"rhyme-ai-model","set":"rhymeai","area":"dev","description":"Set the AI model to use for Rhyme coding assistance","type":"action","url":"/sets/rhymeai/rhyme-ai-model.html"},"rhymeai/rhyme-ai-provider":{"id":"rhymeai/rhyme-ai-provider","name":"rhyme-ai-provider","set":"rhymeai","area":"dev","description":"Set the AI provider to use for Rhyme coding assistance","type":"action","url":"/sets/rhymeai/rhyme-ai-provider.html"},"rhymeai/rhyme-ai-source":{"id":"rhymeai/rhyme-ai-source","name":"rhyme-ai-source","set":"rhymeai","area":"dev","description":"Set Rhyme source code to include in AI requests for troubleshooting or revision","type":"action","url":"/sets/rhymeai/rhyme-ai-source.html"},"rhymeai/rhyme-ai-write":{"id":"rhymeai/rhyme-ai-write","name":"rhyme-ai-write","set":"rhymeai","area":"dev","description":"Send a prompt to AI and get a response for Rhyme coding assistance","type":"function","url":"/sets/rhymeai/rhyme-ai-write.html"},"row/add-row":{"id":"row/add-row","name":"add-row","set":"row","area":"data","description":"Adds a new row of data to an existing table","type":"action","url":"/sets/row/add-row.html"},"row/clear-rows":{"id":"row/clear-rows","name":"clear-rows","set":"row","area":"data","description":"Removes all rows from a table","type":"action","url":"/sets/row/clear-rows.html"},"row/delete-row":{"id":"row/delete-row","name":"delete-row","set":"row","area":"data","description":"Removes a row from a table by its position","type":"action","url":"/sets/row/delete-row.html"},"row/filter-rows":{"id":"row/filter-rows","name":"filter-rows","set":"row","area":"data","description":"Filter rows based on a condition with comparison operators","type":"action","url":"/sets/row/filter-rows.html"},"row/find-row":{"id":"row/find-row","name":"find-row","set":"row","area":"data","description":"Find the first row matching a condition","type":"action","url":"/sets/row/find-row.html"},"row/first-row":{"id":"row/first-row","name":"first-row","set":"row","area":"data","description":"Gets the first row from a table or group","type":"function","url":"/sets/row/first-row.html"},"row/get-row":{"id":"row/get-row","name":"get-row","set":"row","area":"data","description":"Gets a specific row by its position number from a table","type":"function","url":"/sets/row/get-row.html"},"row/last-row":{"id":"row/last-row","name":"last-row","set":"row","area":"data","description":"Gets the final row from a table or group","type":"function","url":"/sets/row/last-row.html"},"row/random-row":{"id":"row/random-row","name":"random-row","set":"row","area":"data","description":"Picks a random row from a table of data","type":"action","url":"/sets/row/random-row.html"},"row/sort-rows":{"id":"row/sort-rows","name":"sort-rows","set":"row","area":"data","description":"Sort entire table by column value","type":"action","url":"/sets/row/sort-rows.html"},"row/unpack-row":{"id":"row/unpack-row","name":"unpack-row","set":"row","area":"data","description":"Breaks down a row into separate variables for each field","type":"action","url":"/sets/row/unpack-row.html"},"row/update-row":{"id":"row/update-row","name":"update-row","set":"row","area":"data","description":"Update specific fields in a row","type":"action","url":"/sets/row/update-row.html"},"rows/.row":{"id":"rows/.row","name":".row","set":"rows","area":"layout","description":"a row element: children will appear underneath","type":"action","url":"/sets/rows/row.html"},"scrape/scrape-html":{"id":"scrape/scrape-html","name":"scrape-html","set":"scrape","area":"network","description":"Fetches raw HTML from a URL into a variable","type":"action","url":"/sets/scrape/scrape-html.html"},"scrape/scrape-select":{"id":"scrape/scrape-select","name":"scrape-select","set":"scrape","area":"network","description":"Extracts content matching a CSS selector from a URL","type":"action","url":"/sets/scrape/scrape-select.html"},"scrape/set-scrape-header":{"id":"scrape/set-scrape-header","name":"set-scrape-header","set":"scrape","area":"network","description":"Sets a custom header for scrape requests","type":"action","url":"/sets/scrape/set-scrape-header.html"},"scrape/set-scrape-redirects":{"id":"scrape/set-scrape-redirects","name":"set-scrape-redirects","set":"scrape","area":"network","description":"Controls whether scrape requests follow HTTP redirects","type":"action","url":"/sets/scrape/set-scrape-redirects.html"},"scrape/set-scrape-timeout":{"id":"scrape/set-scrape-timeout","name":"set-scrape-timeout","set":"scrape","area":"network","description":"Sets how long to wait before scrape requests timeout","type":"action","url":"/sets/scrape/set-scrape-timeout.html"},"screens/.brand-screen":{"id":"screens/.brand-screen","name":".brand-screen","set":"screens","area":"ui","description":"shows brand screen for trial/free plans","type":"element","url":"/sets/screens/brand-screen.html"},"screens/.popup-screen":{"id":"screens/.popup-screen","name":".popup-screen","set":"screens","area":"ui","description":"full screen to hold other elements and can be closed","type":"element","url":"/sets/screens/popup-screen.html"},"screens/.screen":{"id":"screens/.screen","name":".screen","set":"screens","area":"ui","description":"bas screen element","type":"element","url":"/sets/screens/screen.html"},"screens/.screen-background":{"id":"screens/.screen-background","name":".screen-background","set":"screens","area":"ui","description":"sets the main screen background for the app","type":"element","url":"/sets/screens/screen-background.html"},"screens/.splash-screen":{"id":"screens/.splash-screen","name":".splash-screen","set":"screens","area":"ui","description":"shows a default splash screen","type":"element","url":"/sets/screens/splash-screen.html"},"search/.live-search":{"id":"search/.live-search","name":".live-search","set":"search","area":"ui","description":"live search (on each character)","type":"element","url":"/sets/search/live-search.html"},"search/.search":{"id":"search/.search","name":".search","set":"search","area":"ui","description":"a search line input box","type":"element","url":"/sets/search/search.html"},"secrets/create-key":{"id":"secrets/create-key","name":"create-key","set":"secrets","area":"system","description":"creates a randon offical encrpytion key - 32 characters long","type":"action","url":"/sets/secrets/create-key.html"},"secrets/decode-secret":{"id":"secrets/decode-secret","name":"decode-secret","set":"secrets","area":"system","description":"test function to decode a secret","type":"action","url":"/sets/secrets/decode-secret.html"},"secrets/decrypt":{"id":"secrets/decrypt","name":"decrypt","set":"secrets","area":"system","description":"general decryption","type":"action","url":"/sets/secrets/decrypt.html"},"secrets/encrypt":{"id":"secrets/encrypt","name":"encrypt","set":"secrets","area":"system","description":"encrypts data","type":"action","url":"/sets/secrets/encrypt.html"},"secrets/list-secrets":{"id":"secrets/list-secrets","name":"list-secrets","set":"secrets","area":"system","description":"lists all secrets for the current app","type":"action","url":"/sets/secrets/list-secrets.html"},"secrets/remove-secret":{"id":"secrets/remove-secret","name":"remove-secret","set":"secrets","area":"system","description":"removes a secret for an app","type":"action","url":"/sets/secrets/remove-secret.html"},"secrets/secret":{"id":"secrets/secret","name":"secret","set":"secrets","area":"system","description":"define secret value","type":"action","url":"/sets/secrets/secret.html"},"secrets/set-secret":{"id":"secrets/set-secret","name":"set-secret","set":"secrets","area":"system","description":"sets a secret key for the current app","type":"action","url":"/sets/secrets/set-secret.html"},"security/.turnstile":{"id":"security/.turnstile","name":".turnstile","set":"security","area":"system","description":"renders Cloudflare CATCHPA solution widget","type":"element","url":"/sets/security/turnstile.html"},"selects/.option":{"id":"selects/.option","name":".option","set":"selects","area":"input","description":"Creates dropdown menu choices for .selectio selection actions","type":"element","url":"/sets/selects/option.html"},"selects/.select":{"id":"selects/.select","name":".select","set":"selects","area":"interaction","description":"Creates a dropdown selection menu for choosing options","type":"element","url":"/sets/selects/select.html"},"server/run-protected":{"id":"server/run-protected","name":"run-protected","set":"server","area":"platform","description":"Execute a protected server-side code block with explicit variable passing","type":"action","url":"/sets/server/run-protected.html"},"server/server-run":{"id":"server/server-run","name":"server-run","set":"server","area":"platform","description":"runs specified block on server/remote","type":"action","url":"/sets/server/server-run.html"},"shapes/.circle":{"id":"shapes/.circle","name":".circle","set":"shapes","description":"Creates a circular shape element with customizable size and color","type":"element","url":"/sets/shapes/circle.html"},"shapes/.rectangle":{"id":"shapes/.rectangle","name":".rectangle","set":"shapes","description":"Creates a rectangular shape element with customizable dimensions and color","type":"element","url":"/sets/shapes/rectangle.html"},"shapes/.square":{"id":"shapes/.square","name":".square","set":"shapes","description":"Creates a square shape element with customizable size and color","type":"element","url":"/sets/shapes/square.html"},"shapes/.triangle":{"id":"shapes/.triangle","name":".triangle","set":"shapes","description":"Creates a triangular shape element with customizable size and color","type":"element","url":"/sets/shapes/triangle.html"},"shell/dir-shell":{"id":"shell/dir-shell","name":"dir-shell","set":"shell","area":"dev","description":"launches an integrated development shell for the current app","type":"action","url":"/sets/shell/dir-shell.html"},"shield/shield":{"id":"shield/shield","name":"shield","set":"shield","area":"system","description":"converts value to a shielded (secure, encrypted) value","type":"action","url":"/sets/shield/shield.html"},"shield/unshield":{"id":"shield/unshield","name":"unshield","set":"shield","area":"system","description":"unshield a shielded value","type":"action","url":"/sets/shield/unshield.html"},"sim/.app-frame":{"id":"sim/.app-frame","name":".app-frame","set":"sim","area":"appdev","description":"shows an app frame","type":"element","url":"/sets/sim/app-frame.html"},"sim/.app-iphone":{"id":"sim/.app-iphone","name":".app-iphone","set":"sim","area":"appdev","description":"shows an app in a simulated iphone","type":"element","url":"/sets/sim/app-iphone.html"},"sim/.app-laptop":{"id":"sim/.app-laptop","name":".app-laptop","set":"sim","area":"appdev","description":"shows an app in a simulated laptop","type":"element","url":"/sets/sim/app-laptop.html"},"sim/.app-tablet":{"id":"sim/.app-tablet","name":".app-tablet","set":"sim","area":"appdev","description":"shows an app in a simulated ipad/tablet","type":"element","url":"/sets/sim/app-tablet.html"},"sim/.sim-app":{"id":"sim/.sim-app","name":".sim-app","set":"sim","area":"appdev","description":"floating action button to similate app","type":"element","url":"/sets/sim/sim-app.html"},"sim/.simulate":{"id":"sim/.simulate","name":".simulate","set":"sim","area":"appdev","description":"full panel app simulator","type":"element","url":"/sets/sim/simulate.html"},"sim/.simulator":{"id":"sim/.simulator","name":".simulator","set":"sim","area":"appdev","description":"runs RHC binary in simulator","type":"element","url":"/sets/sim/simulator.html"},"social/.bluesky":{"id":"social/.bluesky","name":".bluesky","set":"social","area":"ui","description":"shows a bluesky icon link","type":"element","url":"/sets/social/bluesky.html"},"social/.facebook":{"id":"social/.facebook","name":".facebook","set":"social","area":"ui","description":"shows a facebook icon link","type":"element","url":"/sets/social/facebook.html"},"social/.github":{"id":"social/.github","name":".github","set":"social","area":"ui","description":"shows a github icon link","type":"element","url":"/sets/social/github.html"},"social/.instagram":{"id":"social/.instagram","name":".instagram","set":"social","area":"ui","description":"shows an instagram icon link","type":"element","url":"/sets/social/instagram.html"},"social/.linkedin":{"id":"social/.linkedin","name":".linkedin","set":"social","area":"ui","description":"shows a linkedin icon link","type":"element","url":"/sets/social/linkedin.html"},"social/.twitter":{"id":"social/.twitter","name":".twitter","set":"social","area":"ui","description":"shows a twitter/X icon link","type":"element","url":"/sets/social/twitter.html"},"social/.youtube":{"id":"social/.youtube","name":".youtube","set":"social","area":"ui","description":"shows a youtube icon link","type":"element","url":"/sets/social/youtube.html"},"sounds/app-sound":{"id":"sounds/app-sound","name":"app-sound","set":"sounds","area":"media","description":"defines an app sound","type":"action","url":"/sets/sounds/app-sound.html"},"sounds/play-sound":{"id":"sounds/play-sound","name":"play-sound","set":"sounds","area":"media","description":"Play a registered sound by tag name","type":"action","url":"/sets/sounds/play-sound.html"},"sounds/set-sound":{"id":"sounds/set-sound","name":"set-sound","set":"sounds","area":"media","description":"defines an app sound","type":"action","url":"/sets/sounds/set-sound.html"},"sounds/use-sounds":{"id":"sounds/use-sounds","name":"use-sounds","set":"sounds","area":"media","description":"Include sounds library with inline click, error, and success sounds","type":"action","url":"/sets/sounds/use-sounds.html"},"specialfx/.confetti":{"id":"specialfx/.confetti","name":".confetti","set":"specialfx","area":"ui","description":"shows confetti","type":"element","url":"/sets/specialfx/confetti.html"},"specialfx/.corner-banner":{"id":"specialfx/.corner-banner","name":".corner-banner","set":"specialfx","area":"ui","description":"a fixed corner diagonal banner in the upper right of the app screen","type":"element","url":"/sets/specialfx/corner-banner.html"},"speech/say":{"id":"speech/say","name":"say","set":"speech","area":"voice","description":"use the browser text to speech","type":"action","url":"/sets/speech/say.html"},"speech/set-voice":{"id":"speech/set-voice","name":"set-voice","set":"speech","area":"voice","description":"sets the voice for the say command","type":"action","url":"/sets/speech/set-voice.html"},"speech/set-voice-language":{"id":"speech/set-voice-language","name":"set-voice-language","set":"speech","area":"voice","description":"sets the voice language","type":"action","url":"/sets/speech/set-voice-language.html"},"stacks/.center":{"id":"stacks/.center","name":".center","set":"stacks","area":"layout","description":"Positions elements at the center of their container","type":"element","url":"/sets/stacks/center.html"},"stacks/.left-center":{"id":"stacks/.left-center","name":".left-center","set":"stacks","area":"layout","description":"Positions elements at the left-center of their container","type":"element","url":"/sets/stacks/left-center.html"},"stacks/.right-center":{"id":"stacks/.right-center","name":".right-center","set":"stacks","area":"layout","description":"Positions elements at the right-center of their container","type":"element","url":"/sets/stacks/right-center.html"},"stacks/.stack":{"id":"stacks/.stack","name":".stack","set":"stacks","area":"layout","description":"Creates a vertical container to stack elements on top of each other","type":"element","url":"/sets/stacks/stack.html"},"stacks/.top-left":{"id":"stacks/.top-left","name":".top-left","set":"stacks","area":"layout","description":"Positions elements in the top-left corner of their container","type":"element","url":"/sets/stacks/top-left.html"},"stocks/finnhub-api-key":{"id":"stocks/finnhub-api-key","name":"finnhub-api-key","set":"stocks","area":"network","description":"set Finnhub API key (encrypted at compile time)","type":"action","url":"/sets/stocks/finnhub-api-key.html"},"stocks/get-company-profile":{"id":"stocks/get-company-profile","name":"get-company-profile","set":"stocks","area":"network","description":"get company profile and information","type":"action","url":"/sets/stocks/get-company-profile.html"},"stocks/get-market-status":{"id":"stocks/get-market-status","name":"get-market-status","set":"stocks","area":"network","description":"check if stock market is open","type":"action","url":"/sets/stocks/get-market-status.html"},"stocks/get-stock-quote":{"id":"stocks/get-stock-quote","name":"get-stock-quote","set":"stocks","area":"network","description":"get real-time stock quote from Finnhub","type":"action","url":"/sets/stocks/get-stock-quote.html"},"stocks/search-stocks":{"id":"stocks/search-stocks","name":"search-stocks","set":"stocks","area":"network","description":"search for stock symbols by company name","type":"action","url":"/sets/stocks/search-stocks.html"},"storage/clear-storage":{"id":"storage/clear-storage","name":"clear-storage","set":"storage","area":"storage","description":"clears all saved variables from storage","type":"action","url":"/sets/storage/clear-storage.html"},"storage/delete":{"id":"storage/delete","name":"delete","set":"storage","area":"storage","description":"deletes previously saved value","type":"action","url":"/sets/storage/delete.html"},"storage/list-all":{"id":"storage/list-all","name":"list-all","set":"storage","area":"storage","description":"lists all saved variables","type":"action","url":"/sets/storage/list-all.html"},"storage/load":{"id":"storage/load","name":"load","set":"storage","area":"storage","description":"Retrieves a previously saved variable from device storage","type":"action","url":"/sets/storage/load.html"},"storage/load-all":{"id":"storage/load-all","name":"load-all","set":"storage","area":"storage","description":"loads all saved variables","type":"action","url":"/sets/storage/load-all.html"},"storage/save":{"id":"storage/save","name":"save","set":"storage","area":"storage","description":"Stores a variable on the user's device permanently","type":"action","url":"/sets/storage/save.html"},"stripe/.stripe-checkout":{"id":"stripe/.stripe-checkout","name":".stripe-checkout","set":"stripe","area":"network","description":"Create a Stripe checkout session and redirect to payment","type":"action","url":"/sets/stripe/stripe-checkout.html"},"stripe/stripe-balance":{"id":"stripe/stripe-balance","name":"stripe-balance","set":"stripe","area":"network","description":"Get Stripe account balance (validates API key works)","type":"function","url":"/sets/stripe/stripe-balance.html"},"stripe/stripe-create-customer":{"id":"stripe/stripe-create-customer","name":"stripe-create-customer","set":"stripe","area":"network","description":"Create a new Stripe customer","type":"function","url":"/sets/stripe/stripe-create-customer.html"},"stripe/stripe-list-customers":{"id":"stripe/stripe-list-customers","name":"stripe-list-customers","set":"stripe","area":"network","description":"List Stripe customers (paginated)","type":"function","url":"/sets/stripe/stripe-list-customers.html"},"stripe/stripe-list-prices":{"id":"stripe/stripe-list-prices","name":"stripe-list-prices","set":"stripe","area":"network","description":"List Stripe prices (paginated)","type":"function","url":"/sets/stripe/stripe-list-prices.html"},"stripe/stripe-publishable-key":{"id":"stripe/stripe-publishable-key","name":"stripe-publishable-key","set":"stripe","area":"network","description":"Set Stripe publishable API key (client-safe, no encryption needed)","type":"action","url":"/sets/stripe/stripe-publishable-key.html"},"stripe/stripe-secret-key":{"id":"stripe/stripe-secret-key","name":"stripe-secret-key","set":"stripe","area":"network","description":"Set Stripe secret API key (encrypted at compile time)","type":"action","url":"/sets/stripe/stripe-secret-key.html"},"stripe/stripe-webhook-secret":{"id":"stripe/stripe-webhook-secret","name":"stripe-webhook-secret","set":"stripe","area":"network","description":"Set Stripe webhook signing secret (encrypted at compile time)","type":"action","url":"/sets/stripe/stripe-webhook-secret.html"},"stripe/use-stripe":{"id":"stripe/use-stripe","name":"use-stripe","set":"stripe","area":"network","description":"Load Stripe.js browser library and initialize Stripe instance","type":"action","url":"/sets/stripe/use-stripe.html"},"styles/default-style":{"id":"styles/default-style","name":"default-style","set":"styles","area":"ui","description":"Sets default styles to apply to all elements of a specific type","type":"action","url":"/sets/styles/default-style.html"},"styles/space-between-lines":{"id":"styles/space-between-lines","name":"space-between-lines","set":"styles","area":"ui","description":"Adjusts vertical spacing between lines of text for better readability","type":"action","url":"/sets/styles/space-between-lines.html"},"styles/style":{"id":"styles/style","name":"style","set":"styles","area":"ui","description":"Defines custom styles that can be applied to elements","type":"action","url":"/sets/styles/style.html"},"switches/.checkbox-input":{"id":"switches/.checkbox-input","name":".checkbox-input","set":"switches","area":"interact","description":"Checkbox input that returns a boolean value","type":"element","url":"/sets/switches/checkbox-input.html"},"switches/.switch-input":{"id":"switches/.switch-input","name":".switch-input","set":"switches","area":"interact","description":"Square toggle switch that returns a boolean value","type":"element","url":"/sets/switches/switch-input.html"},"switches/.toggle-input":{"id":"switches/.toggle-input","name":".toggle-input","set":"switches","area":"interact","description":"iOS-style toggle switch that returns a boolean value","type":"element","url":"/sets/switches/toggle-input.html"},"table/count-rows":{"id":"table/count-rows","name":"count-rows","set":"table","area":"ui","description":"Count the number of rows in a table","type":"action","url":"/sets/table/count-rows.html"},"table/create-table":{"id":"table/create-table","name":"create-table","set":"table","area":"ui","description":"creates a new table","type":"action","url":"/sets/table/create-table.html"},"table/duplicate-rows":{"id":"table/duplicate-rows","name":"duplicate-rows","set":"table","area":"ui","description":"Find rows with duplicate values in a column","type":"action","url":"/sets/table/duplicate-rows.html"},"table/each-row":{"id":"table/each-row","name":"each-row","set":"table","area":"ui","description":"Get array of row indices for iteration","type":"action","url":"/sets/table/each-row.html"},"table/fill-column":{"id":"table/fill-column","name":"fill-column","set":"table","area":"ui","description":"Fills all rows in a table column with the same value","type":"action","url":"/sets/table/fill-column.html"},"table/has-row":{"id":"table/has-row","name":"has-row","set":"table","area":"ui","description":"Check if a row exists at a specific index","type":"action","url":"/sets/table/has-row.html"},"table/merge-tables":{"id":"table/merge-tables","name":"merge-tables","set":"table","area":"ui","description":"Merge multiple tables into one by combining rows","type":"action","url":"/sets/table/merge-tables.html"},"table/sort-table":{"id":"table/sort-table","name":"sort-table","set":"table","area":"ui","description":"sorts your table data by any column you choose","type":"action","url":"/sets/table/sort-table.html"},"table/unique-rows":{"id":"table/unique-rows","name":"unique-rows","set":"table","area":"ui","description":"Get unique rows based on column value, removing duplicates","type":"action","url":"/sets/table/unique-rows.html"},"templates/get-template":{"id":"templates/get-template","name":"get-template","set":"templates","area":"data","description":"Get a template by ID","type":"action","url":"/sets/templates/get-template.html"},"templates/list-template-categories":{"id":"templates/list-template-categories","name":"list-template-categories","set":"templates","area":"data","description":"List all template categories","type":"function","url":"/sets/templates/list-template-categories.html"},"templates/list-templates":{"id":"templates/list-templates","name":"list-templates","set":"templates","area":"data","description":"List app templates","type":"function","url":"/sets/templates/list-templates.html"},"templates/render-template-form":{"id":"templates/render-template-form","name":"render-template-form","set":"templates","area":"data","description":"Render a template's input form","type":"action","url":"/sets/templates/render-template-form.html"},"templates/search-templates":{"id":"templates/search-templates","name":"search-templates","set":"templates","area":"data","description":"Search templates","type":"action","url":"/sets/templates/search-templates.html"},"templates/submit-template-form":{"id":"templates/submit-template-form","name":"submit-template-form","set":"templates","area":"data","description":"Submit template form and create app","type":"action","url":"/sets/templates/submit-template-form.html"},"templates/use-template":{"id":"templates/use-template","name":"use-template","set":"templates","area":"data","description":"Create app from template with values","type":"action","url":"/sets/templates/use-template.html"},"testing/dir-enable-testing":{"id":"testing/dir-enable-testing","name":"dir-enable-testing","set":"testing","area":"dev","description":"Enable testing mode. All /test and /expect commands require this to be active","type":"action","url":"/sets/testing/dir-enable-testing.html"},"testing/dir-end-test":{"id":"testing/dir-end-test","name":"dir-end-test","set":"testing","area":"dev","description":"Explicitly end the current test case","type":"action","url":"/sets/testing/dir-end-test.html"},"testing/dir-exec":{"id":"testing/dir-exec","name":"dir-exec","set":"testing","area":"dev","description":"Execute shell command and capture output (Node.js/Bun only)","type":"function","url":"/sets/testing/dir-exec.html"},"testing/dir-expect":{"id":"testing/dir-expect","name":"dir-expect","set":"testing","area":"dev","description":"Performs inline assertions for testing Rhyme code. Use /expect for clean test syntax","type":"action","url":"/sets/testing/dir-expect.html"},"testing/dir-expect-console":{"id":"testing/dir-expect-console","name":"dir-expect-console","set":"testing","area":"dev","description":"Console output assertions for testing Rhyme code. Use /expect-console to verify logged messages","type":"action","url":"/sets/testing/dir-expect-console.html"},"testing/dir-expect-dom":{"id":"testing/dir-expect-dom","name":"dir-expect-dom","set":"testing","area":"dev","description":"DOM-specific assertions for testing Rhyme code. Use /expect-dom for clean test syntax","type":"action","url":"/sets/testing/dir-expect-dom.html"},"testing/dir-expect-idb":{"id":"testing/dir-expect-idb","name":"dir-expect-idb","set":"testing","area":"dev","description":"Verifies IndexedDB persistence for testing. Directly queries IndexedDB via idbkv to confirm values were persisted correctly.","type":"action","url":"/sets/testing/dir-expect-idb.html"},"testing/dir-expect-localstorage":{"id":"testing/dir-expect-localstorage","name":"dir-expect-localstorage","set":"testing","area":"dev","description":"Verifies localStorage persistence for testing. Directly queries localStorage to confirm values were persisted correctly.","type":"action","url":"/sets/testing/dir-expect-localstorage.html"},"testing/dir-expect-vm":{"id":"testing/dir-expect-vm","name":"dir-expect-vm","set":"testing","area":"dev","description":"VM state assertions for testing Rhyme code. Use /expect-vm for clean test syntax","type":"action","url":"/sets/testing/dir-expect-vm.html"},"testing/dir-run":{"id":"testing/dir-run","name":"dir-run","set":"testing","area":"dev","description":"Run a block during testing. Executes the specified block once","type":"action","url":"/sets/testing/dir-run.html"},"testing/dir-sim-click":{"id":"testing/dir-sim-click","name":"dir-sim-click","set":"testing","area":"dev","description":"Simulates a click event on a DOM element for testing interactions","type":"action","url":"/sets/testing/dir-sim-click.html"},"testing/dir-sim-input":{"id":"testing/dir-sim-input","name":"dir-sim-input","set":"testing","area":"dev","description":"Simulates entering text into an input field for testing form interactions","type":"action","url":"/sets/testing/dir-sim-input.html"},"testing/dir-sim-keypress":{"id":"testing/dir-sim-keypress","name":"dir-sim-keypress","set":"testing","area":"dev","description":"Simulates a keyboard event for testing keyboard interactions","type":"action","url":"/sets/testing/dir-sim-keypress.html"},"testing/dir-test":{"id":"testing/dir-test","name":"dir-test","set":"testing","area":"dev","description":"Start a new test case. Use /test for clean syntax","type":"action","url":"/sets/testing/dir-test.html"},"testing/dir-test-skip":{"id":"testing/dir-test-skip","name":"dir-test-skip","set":"testing","area":"dev","description":"Start a skipped test case. Any /expect commands will be ignored until the next /test","type":"action","url":"/sets/testing/dir-test-skip.html"},"testing/dir-test-summary":{"id":"testing/dir-test-summary","name":"dir-test-summary","set":"testing","area":"dev","description":"Print a summary table of test results to the console","type":"action","url":"/sets/testing/dir-test-summary.html"},"testing/dir-var":{"id":"testing/dir-var","name":"dir-var","set":"testing","area":"dev","description":"dumps a variable's internal representation to console for debugging","type":"action","url":"/sets/testing/dir-var.html"},"testing/expect":{"id":"testing/expect","name":"expect","set":"testing","area":"dev","description":"Performs assertions for testing variable values, comparisons, and conditions","type":"action","url":"/sets/testing/expect.html"},"text/.aside":{"id":"text/.aside","name":".aside","set":"text","area":"ui","description":"a stand alone block of text with additional explanation","type":"element","url":"/sets/text/aside.html"},"text/.callout":{"id":"text/.callout","name":".callout","set":"text","area":"ui","description":"displays large, bold, centered text for marketing callouts","type":"element","url":"/sets/text/callout.html"},"text/.fineprint":{"id":"text/.fineprint","name":".fineprint","set":"text","area":"ui","description":"displays teeny-tiny text!","type":"element","url":"/sets/text/fineprint.html"},"text/.handwriting":{"id":"text/.handwriting","name":".handwriting","set":"text","area":"ui","description":"simulates hand or script written text (cursive)","type":"element","url":"/sets/text/handwriting.html"},"text/.signature":{"id":"text/.signature","name":".signature","set":"text","area":"ui","description":"text that mimics a handwritten signature","type":"element","url":"/sets/text/signature.html"},"text/.tagline":{"id":"text/.tagline","name":".tagline","set":"text","area":"ui","description":"a huge large tagline. Keep it under 10 words. Shorter is better","type":"element","url":"/sets/text/tagline.html"},"text/.text":{"id":"text/.text","name":".text","set":"text","area":"ui","description":"displays text in the UI","type":"element","url":"/sets/text/text.html"},"text/.title":{"id":"text/.title","name":".title","set":"text","area":"ui","description":"a text title","type":"element","url":"/sets/text/title.html"},"textfn/add-line":{"id":"textfn/add-line","name":"add-line","set":"textfn","area":"data","description":"Add a line of text to existing text with newline","type":"function","url":"/sets/textfn/add-line.html"},"textfn/add-text":{"id":"textfn/add-text","name":"add-text","set":"textfn","area":"data","description":"Concatenates two text values together","type":"function","url":"/sets/textfn/add-text.html"},"textfn/camel-case":{"id":"textfn/camel-case","name":"camel-case","set":"textfn","area":"data","description":"Converts text to camelCase format (first word lowercase, subsequent words capitalized)","type":"function","url":"/sets/textfn/camel-case.html"},"textfn/capitalize":{"id":"textfn/capitalize","name":"capitalize","set":"textfn","area":"data","description":"Capitalizes the first letter of each word in text","type":"function","url":"/sets/textfn/capitalize.html"},"textfn/character":{"id":"textfn/character","name":"character","set":"textfn","area":"data","description":"Gets the character at a specific position in text","type":"function","url":"/sets/textfn/character.html"},"textfn/constant-case":{"id":"textfn/constant-case","name":"constant-case","set":"textfn","area":"data","description":"Converts text to CONSTANT_CASE format (uppercase with underscores)","type":"function","url":"/sets/textfn/constant-case.html"},"textfn/count-words":{"id":"textfn/count-words","name":"count-words","set":"textfn","area":"data","description":"Counts the number of words in text","type":"function","url":"/sets/textfn/count-words.html"},"textfn/ends-with":{"id":"textfn/ends-with","name":"ends-with","set":"textfn","area":"data","description":"Checks if text ends with a specified suffix","type":"function","url":"/sets/textfn/ends-with.html"},"textfn/kebab-case":{"id":"textfn/kebab-case","name":"kebab-case","set":"textfn","area":"data","description":"Converts text to kebab-case format (lowercase with hyphens)","type":"function","url":"/sets/textfn/kebab-case.html"},"textfn/length-of":{"id":"textfn/length-of","name":"length-of","set":"textfn","area":"data","description":"Returns the length of a text string or variable","type":"function","url":"/sets/textfn/length-of.html"},"textfn/lowercase":{"id":"textfn/lowercase","name":"lowercase","set":"textfn","area":"data","description":"Converts text to all lowercase letters","type":"function","url":"/sets/textfn/lowercase.html"},"textfn/mask-text":{"id":"textfn/mask-text","name":"mask-text","set":"textfn","area":"data","description":"Masks text by replacing characters with a mask character, optionally showing first/last characters","type":"function","url":"/sets/textfn/mask-text.html"},"textfn/pad-left":{"id":"textfn/pad-left","name":"pad-left","set":"textfn","area":"data","description":"Pads text on the left to reach a target length","type":"function","url":"/sets/textfn/pad-left.html"},"textfn/pad-right":{"id":"textfn/pad-right","name":"pad-right","set":"textfn","area":"data","description":"Pads text on the right to reach a target length","type":"function","url":"/sets/textfn/pad-right.html"},"textfn/pascal-case":{"id":"textfn/pascal-case","name":"pascal-case","set":"textfn","area":"data","description":"Converts text to PascalCase format (each word capitalized, no separators)","type":"function","url":"/sets/textfn/pascal-case.html"},"textfn/remove-text":{"id":"textfn/remove-text","name":"remove-text","set":"textfn","area":"data","description":"Removes all occurrences of search text from source","type":"function","url":"/sets/textfn/remove-text.html"},"textfn/repeat-text":{"id":"textfn/repeat-text","name":"repeat-text","set":"textfn","area":"data","description":"Repeats text a specified number of times","type":"function","url":"/sets/textfn/repeat-text.html"},"textfn/replace-text":{"id":"textfn/replace-text","name":"replace-text","set":"textfn","area":"data","description":"Replaces all occurrences of search text with replacement text","type":"function","url":"/sets/textfn/replace-text.html"},"textfn/reverse-text":{"id":"textfn/reverse-text","name":"reverse-text","set":"textfn","area":"data","description":"Reverses the characters in text","type":"function","url":"/sets/textfn/reverse-text.html"},"textfn/slug":{"id":"textfn/slug","name":"slug","set":"textfn","area":"data","description":"Converts text to a URL-friendly slug (lowercase, hyphens, no special chars)","type":"function","url":"/sets/textfn/slug.html"},"textfn/snake-case":{"id":"textfn/snake-case","name":"snake-case","set":"textfn","area":"data","description":"Converts text to snake_case format (lowercase with underscores)","type":"function","url":"/sets/textfn/snake-case.html"},"textfn/split-text":{"id":"textfn/split-text","name":"split-text","set":"textfn","area":"data","description":"Splits text into an array of words by whitespace","type":"function","url":"/sets/textfn/split-text.html"},"textfn/starts-with":{"id":"textfn/starts-with","name":"starts-with","set":"textfn","area":"data","description":"Checks if text starts with a specified prefix","type":"function","url":"/sets/textfn/starts-with.html"},"textfn/title-case":{"id":"textfn/title-case","name":"title-case","set":"textfn","area":"data","description":"Converts text to Title Case format (each word capitalized)","type":"function","url":"/sets/textfn/title-case.html"},"textfn/trim":{"id":"textfn/trim","name":"trim","set":"textfn","area":"data","description":"Removes whitespace from both ends of text","type":"function","url":"/sets/textfn/trim.html"},"textfn/truncate-text":{"id":"textfn/truncate-text","name":"truncate-text","set":"textfn","area":"data","description":"Truncates text to a maximum length, adding ellipsis if truncated","type":"function","url":"/sets/textfn/truncate-text.html"},"textfn/uppercase":{"id":"textfn/uppercase","name":"uppercase","set":"textfn","area":"data","description":"Converts text to all uppercase letters","type":"function","url":"/sets/textfn/uppercase.html"},"tigris/tigris-access-key":{"id":"tigris/tigris-access-key","name":"tigris-access-key","set":"tigris","area":"network","description":"Set Tigris Access Key ID (encrypted at compile time)","type":"action","url":"/sets/tigris/tigris-access-key.html"},"tigris/tigris-bucket-delete":{"id":"tigris/tigris-bucket-delete","name":"tigris-bucket-delete","set":"tigris","area":"network","description":"Delete an object from a Tigris bucket","type":"action","url":"/sets/tigris/tigris-bucket-delete.html"},"tigris/tigris-bucket-get":{"id":"tigris/tigris-bucket-get","name":"tigris-bucket-get","set":"tigris","area":"network","description":"Download an object from a Tigris bucket","type":"action","url":"/sets/tigris/tigris-bucket-get.html"},"tigris/tigris-bucket-list":{"id":"tigris/tigris-bucket-list","name":"tigris-bucket-list","set":"tigris","area":"network","description":"List objects in a Tigris bucket","type":"action","url":"/sets/tigris/tigris-bucket-list.html"},"tigris/tigris-bucket-put":{"id":"tigris/tigris-bucket-put","name":"tigris-bucket-put","set":"tigris","area":"network","description":"Upload an object to a Tigris bucket","type":"action","url":"/sets/tigris/tigris-bucket-put.html"},"tigris/tigris-secret-access-key":{"id":"tigris/tigris-secret-access-key","name":"tigris-secret-access-key","set":"tigris","area":"network","description":"Set Tigris Secret Access Key (encrypted at compile time)","type":"action","url":"/sets/tigris/tigris-secret-access-key.html"},"translate/deepl-api-key":{"id":"translate/deepl-api-key","name":"deepl-api-key","set":"translate","area":"network","description":"set DeepL API key (encrypted at compile time)","type":"action","url":"/sets/translate/deepl-api-key.html"},"translate/list-languages":{"id":"translate/list-languages","name":"list-languages","set":"translate","area":"network","description":"List supported translation languages","type":"function","url":"/sets/translate/list-languages.html"},"translate/rephrase":{"id":"translate/rephrase","name":"rephrase","set":"translate","area":"network","description":"Improve and rephrase text using DeepL Write","type":"function","url":"/sets/translate/rephrase.html"},"translate/translate":{"id":"translate/translate","name":"translate","set":"translate","area":"network","description":"Translate text between languages","type":"function","url":"/sets/translate/translate.html"},"translate/translate-usage":{"id":"translate/translate-usage","name":"translate-usage","set":"translate","area":"network","description":"Get DeepL translation usage statistics","type":"function","url":"/sets/translate/translate-usage.html"},"upload/.upload-csv":{"id":"upload/.upload-csv","name":".upload-csv","set":"upload","area":"system","description":"Creates a button to let users upload CSV files from their device","type":"element","url":"/sets/upload/upload-csv.html"},"upload/.upload-file":{"id":"upload/.upload-file","name":".upload-file","set":"upload","area":"system","description":"Creates a button to let users upload any file from their device","type":"element","url":"/sets/upload/upload-file.html"},"upload/.upload-image":{"id":"upload/.upload-image","name":".upload-image","set":"upload","area":"system","description":"Creates a button to let users upload and resize images from their device","type":"element","url":"/sets/upload/upload-image.html"},"upload/.upload-json":{"id":"upload/.upload-json","name":".upload-json","set":"upload","area":"system","description":"Creates a button to let users upload JSON files from their device","type":"element","url":"/sets/upload/upload-json.html"},"url/url-decode":{"id":"url/url-decode","name":"url-decode","set":"url","area":"data","description":"URL-decode an encoded string","type":"action","url":"/sets/url/url-decode.html"},"url/url-encode":{"id":"url/url-encode","name":"url-encode","set":"url","area":"data","description":"URL-encode a string for safe inclusion in URLs","type":"action","url":"/sets/url/url-encode.html"},"url/url-get":{"id":"url/url-get","name":"url-get","set":"url","area":"data","description":"Get the full current page URL","type":"action","url":"/sets/url/url-get.html"},"url/url-get-hash":{"id":"url/url-get-hash","name":"url-get-hash","set":"url","area":"data","description":"Get the current page hash fragment","type":"action","url":"/sets/url/url-get-hash.html"},"url/url-get-hostname":{"id":"url/url-get-hostname","name":"url-get-hostname","set":"url","area":"data","description":"Get the current page hostname","type":"action","url":"/sets/url/url-get-hostname.html"},"url/url-get-origin":{"id":"url/url-get-origin","name":"url-get-origin","set":"url","area":"data","description":"Get the current page origin (protocol and host)","type":"action","url":"/sets/url/url-get-origin.html"},"url/url-get-param":{"id":"url/url-get-param","name":"url-get-param","set":"url","area":"data","description":"Get a URL query parameter value by key","type":"action","url":"/sets/url/url-get-param.html"},"url/url-get-params":{"id":"url/url-get-params","name":"url-get-params","set":"url","area":"data","description":"Get all URL query parameters as a record","type":"action","url":"/sets/url/url-get-params.html"},"url/url-get-pathname":{"id":"url/url-get-pathname","name":"url-get-pathname","set":"url","area":"data","description":"Get the current page path","type":"action","url":"/sets/url/url-get-pathname.html"},"url/url-get-query":{"id":"url/url-get-query","name":"url-get-query","set":"url","area":"data","description":"Get the current page query string","type":"action","url":"/sets/url/url-get-query.html"},"url/url-has-param":{"id":"url/url-has-param","name":"url-has-param","set":"url","area":"data","description":"Check if a URL query parameter exists","type":"action","url":"/sets/url/url-has-param.html"},"url/url-remove-param":{"id":"url/url-remove-param","name":"url-remove-param","set":"url","area":"data","description":"Remove a URL query parameter","type":"action","url":"/sets/url/url-remove-param.html"},"url/url-set":{"id":"url/url-set","name":"url-set","set":"url","area":"data","description":"Set the current page URL","type":"action","url":"/sets/url/url-set.html"},"url/url-set-param":{"id":"url/url-set-param","name":"url-set-param","set":"url","area":"data","description":"Add or update a URL query parameter","type":"action","url":"/sets/url/url-set-param.html"},"users/delete-public-user-data":{"id":"users/delete-public-user-data","name":"delete-public-user-data","set":"users","area":"system","description":"delete user data item (public)","type":"action","url":"/sets/users/delete-public-user-data.html"},"users/delete-user-data":{"id":"users/delete-user-data","name":"delete-user-data","set":"users","area":"system","description":"Removes private user data stored under a specific variable name","type":"action","url":"/sets/users/delete-user-data.html"},"users/list-public-user-data":{"id":"users/list-public-user-data","name":"list-public-user-data","set":"users","area":"system","description":"lists user data (public)","type":"action","url":"/sets/users/list-public-user-data.html"},"users/list-user-data":{"id":"users/list-user-data","name":"list-user-data","set":"users","area":"system","description":"Retrieves a list of all your stored private data items","type":"action","url":"/sets/users/list-user-data.html"},"users/load-public-user-data":{"id":"users/load-public-user-data","name":"load-public-user-data","set":"users","area":"system","description":"loads user data (public)","type":"action","url":"/sets/users/load-public-user-data.html"},"users/load-user-data":{"id":"users/load-user-data","name":"load-user-data","set":"users","area":"system","description":"Loads data from server for a specific user variable","type":"action","url":"/sets/users/load-user-data.html"},"users/save-public-user-data":{"id":"users/save-public-user-data","name":"save-public-user-data","set":"users","area":"system","description":"Saves user data to public storage for sharing or persistence","type":"action","url":"/sets/users/save-public-user-data.html"},"users/save-user-data":{"id":"users/save-user-data","name":"save-user-data","set":"users","area":"system","description":"Saves user data to persistent storage for later retrieval","type":"action","url":"/sets/users/save-user-data.html"},"users/user":{"id":"users/user","name":"user","set":"users","area":"system","description":"Sets up a user account with name, ID, and optional role","type":"action","url":"/sets/users/user.html"},"validate/.validate-email":{"id":"validate/.validate-email","name":".validate-email","set":"validate","area":"ui","description":"validates input is valid email","type":"element","url":"/sets/validate/validate-email.html"},"validate/ensure-email":{"id":"validate/ensure-email","name":"ensure-email","set":"validate","area":"ui","description":"Checks that the input field contains a valid email address","type":"action","url":"/sets/validate/ensure-email.html"},"validate/is-array":{"id":"validate/is-array","name":"is-array","set":"validate","area":"ui","description":"Checks if a value is an array type","type":"action","url":"/sets/validate/is-array.html"},"validate/is-boolean":{"id":"validate/is-boolean","name":"is-boolean","set":"validate","area":"ui","description":"Checks if a value is a boolean type","type":"action","url":"/sets/validate/is-boolean.html"},"validate/is-object":{"id":"validate/is-object","name":"is-object","set":"validate","area":"ui","description":"Checks if a value is an object type","type":"action","url":"/sets/validate/is-object.html"},"validate/is-string":{"id":"validate/is-string","name":"is-string","set":"validate","area":"ui","description":"Checks if a value is a string type","type":"action","url":"/sets/validate/is-string.html"},"validate/is-valid-email":{"id":"validate/is-valid-email","name":"is-valid-email","set":"validate","area":"ui","description":"Checks if a value follows valid email format rules","type":"action","url":"/sets/validate/is-valid-email.html"},"validate/is-valid-phone":{"id":"validate/is-valid-phone","name":"is-valid-phone","set":"validate","area":"ui","description":"Checks if a value looks like a valid phone number","type":"action","url":"/sets/validate/is-valid-phone.html"},"variables/default":{"id":"variables/default","name":"default","set":"variables","area":"external","description":"sets a default value for a variable if it does not already exist","type":"action","url":"/sets/variables/default.html"},"variables/forget":{"id":"variables/forget","name":"forget","set":"variables","area":"external","description":"forgets / erases a variable from memory","type":"action","url":"/sets/variables/forget.html"},"variables/let":{"id":"variables/let","name":"let","set":"variables","area":"external","description":"syntax sugar for variable assignment (operation form)","type":"action","url":"/sets/variables/let.html"},"variables/remember":{"id":"variables/remember","name":"remember","set":"variables","area":"external","description":"sets a TTL (time-to-live) on a variable, causing it to expire after the specified duration","type":"action","url":"/sets/variables/remember.html"},"variables/set-var":{"id":"variables/set-var","name":"set-var","set":"variables","area":"external","description":"sets metadata properties on an existing variable","type":"action","url":"/sets/variables/set-var.html"},"vault/vault-add":{"id":"vault/vault-add","name":"vault-add","set":"vault","area":"data","description":"Add or update a secret in the vault","type":"function","url":"/sets/vault/vault-add.html"},"vault/vault-delete":{"id":"vault/vault-delete","name":"vault-delete","set":"vault","area":"data","description":"Delete a secret from the vault","type":"function","url":"/sets/vault/vault-delete.html"},"vault/vault-get":{"id":"vault/vault-get","name":"vault-get","set":"vault","area":"data","description":"Get a decrypted secret value from the vault","type":"function","url":"/sets/vault/vault-get.html"},"vault/vault-list":{"id":"vault/vault-list","name":"vault-list","set":"vault","area":"data","description":"List all secrets in the vault for an app group","type":"function","url":"/sets/vault/vault-list.html"},"video/.video":{"id":"video/.video","name":".video","set":"video","area":"media","description":"Displays video content with optional playback controls and autoplay features","type":"element","url":"/sets/video/video.html"},"video/.video-banner":{"id":"video/.video-banner","name":".video-banner","set":"video","area":"media","description":"displays a full-width video banner that stretches edge to edge","type":"element","url":"/sets/video/video-banner.html"},"video/.video-button":{"id":"video/.video-button","name":".video-button","set":"video","area":"media","description":"an video button","type":"element","url":"/sets/video/video-button.html"},"video/.youtube-video":{"id":"video/.youtube-video","name":".youtube-video","set":"video","area":"media","description":"a youtube video player","type":"element","url":"/sets/video/youtube-video.html"},"video/delete-all-videos":{"id":"video/delete-all-videos","name":"delete-all-videos","set":"video","area":"media","description":"Removes all saved video files from your local storage","type":"action","url":"/sets/video/delete-all-videos.html"},"video/list-videos":{"id":"video/list-videos","name":"list-videos","set":"video","area":"media","description":"Shows all videos you've saved in your app's storage","type":"action","url":"/sets/video/list-videos.html"},"video/set-video":{"id":"video/set-video","name":"set-video","set":"video","area":"media","description":"Loads and stores video files for playback in your app","type":"action","url":"/sets/video/set-video.html"},"view/.mobile-app-view":{"id":"view/.mobile-app-view","name":".mobile-app-view","set":"view","area":"ui","description":"mobile app view with simple header and footer nav","type":"element","url":"/sets/view/mobile-app-view.html"},"weather/weather-current":{"id":"weather/weather-current","name":"weather-current","set":"weather","area":"network","description":"Get current weather conditions for a location via Open-Meteo API","type":"function","url":"/sets/weather/weather-current.html"},"weather/weather-forecast":{"id":"weather/weather-forecast","name":"weather-forecast","set":"weather","area":"network","description":"Get multi-day weather forecast for a location via Open-Meteo API","type":"function","url":"/sets/weather/weather-forecast.html"},"weather/weather-hourly":{"id":"weather/weather-hourly","name":"weather-hourly","set":"weather","area":"network","description":"Get hourly weather forecast for a location via Open-Meteo API","type":"function","url":"/sets/weather/weather-hourly.html"}}