Members
(constant) VAULT_DB
- Description:
Encrypted, origin/actor-bound storage. Trusted browsers retain a nonextractable wrapping key.
- Source:
Encrypted, origin/actor-bound storage. Trusted browsers retain a nonextractable wrapping key.
Methods
_buildVariableInfo() → {Object}
- Description:
Build variable info for the catalog tab.
- Source:
Returns:
- Type
- Object
_escHtml(str) → {string}
- Description:
HTML-escape a string for safe inline rendering.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
str |
string |
Returns:
- Type
- string
_loadEmailTemplateOptions(nodeConfig, nodeId)
- Description:
Fetch active email templates from the API and populate any email-template-select dropdowns in the config panel.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
nodeConfig |
object | |
nodeId |
string |
_renderEmailTemplateSelect()
- Description:
Render a dropdown for selecting a workflow-native email template. Options are loaded async from /email-templates/options.json. When a template is selected, its variable schema and placeholders are compared against available workflow context variables and surfaced below.
- Source:
_renderKeyValueEditor()
- Description:
Render a key-value dictionary editor for object-type fields. Each row has a variable name input and a value picker (fixed/context/app_setting).
- Source:
_renderTemplateAnalysis(select, nodeId)
- Description:
Render a rich variable-mapping analysis panel below the template dropdown.
Shows:
- Template identity (name + slug badge, workflow-native indicator)
- Required vs optional variables from variables_schema
- Whether each is configured in this Send Email node's template-variable mappings
- Parsed subject placeholders not covered by variables_schema
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
select |
HTMLSelectElement | |
nodeId |
string | null | current node id, used to resolve available vars |
_variableCatalogHTML(variableInfo)
- Description:
Render the variable catalog tab content.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
variableInfo |
Object |
_variableListHTML(vars, filterable)
- Description:
Render a list of variables as copyable badges.
- Source:
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
vars |
Array.<{path:string, label:string, type:string}> | ||
filterable |
boolean |
false
|
add data-var-item for filtering |
attachPickers()
- Description:
Attach variable picker buttons to inputs with data-variable-picker="true".
- Source:
buildVariableList()
- Description:
Build a list of available context variables for a given node.
- Source:
checkPasskeySupport()
- Description:
Check without creating a credential or opening a biometric/password-manager prompt.
- Source:
closeDropdown()
- Description:
Close the active variable dropdown if one is open.
- Source:
ensureDeviceSession()
- Description:
Server authorization remains independent of the device PIN or passkey.
- Source:
forgetPasskeyFailure()
- Description:
A capability hint only: never changes an existing vault or proves a passkey can decrypt it.
- Source:
getAssignedVariableType()
- Description:
Infer assigned variable type from the configured value.
- Source:
getCurrentSnapshot()
- Description:
Return a snapshot string of the current saved position (for dirty tracking).
- Source:
getFixedParamValue()
- Description:
Resolve a fixed action parameter from either params or legacy top-level config.
- Source:
getNodeOutputSchema()
- Description:
Collect output schema variables from a single node.
- Source:
getObjectLookupFieldVariables()
- Description:
Build variables for fields returned by the selected Get Object by ID entity.
- Source:
getUpstreamNodes()
- Description:
Get upstream nodes by traversing connections backward from nodeId.
- Source:
installOfflineFetchCapture()
- Description:
Supply approved saved responses when unavailable and capture live JSON on trusted devices.
- Source:
loginDestination()
- Description:
Preserve the normal server redirect while excluding external or looping destinations.
- Source:
loginWithSavedPassword()
- Description:
Use the normal password login, including fresh CSRF and form protection, after local unlock.
- Source:
onEmailTemplateChange()
- Description:
Handle email template dropdown change: save to config and show analysis.
- Source:
privateJson()
- Description:
Requests used by the offline UI are fixed, same-origin, authenticated and never cached.
- Source:
projectCard()
- Description:
Explicit projection: never persist raw entities or arbitrary plugin JSON.
- Source:
projectEvent()
- Description:
Only event display data and the current user's RSVP fields enter the vault.
- Source:
purgeLegacyOfflineStorage()
- Description:
Purge ownerless pre-vault databases rather than guessing who owns their rows.
- Source:
push()
- Description:
Push current editor state onto the history stack.
- Source:
reconnectMissedControllers()
- Description:
Modal markup is rendered late in the layout (or via turbo frames); Stimulus can miss those scopes on the first pass. Touch the data-controller token so ScopeObserver rebinds them.
- Source:
redo()
- Description:
Redo: move forward one step and restore. Returns true if state changed.
- Source:
renderAutoComplete(options) → {string}
- Description:
Reusable autocomplete widget HTML generator.
Produces markup matching the structure in templates/element/autoCompleteControl.php, for use in JavaScript-rendered UI (e.g. workflow config panels). All generated HTML is compatible with the "ac" Stimulus controller.
- Source:
Parameters:
| Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
Properties
|
Returns:
HTML string
- Type
- string
renderConfigHTML(nodeId, nodeData, variableInfoopt)
- Description:
Render the full config panel HTML for a selected node.
- Source:
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
nodeId |
string | ||
nodeData |
object | ||
variableInfo |
object |
<optional> |
{ available: [], produced: [] } |
renderEmptyHTML()
- Description:
Return the empty-state HTML for the config panel.
- Source:
renderValuePicker(fieldName, fieldMeta, currentValue, options) → {string}
- Description:
Render a universal value picker for any parameter field.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
fieldName |
string | Config key (e.g., 'requiredCount', 'params.memberId', 'duration') |
fieldMeta |
object | {label, type ('string'|'integer'|'boolean'), required, description} |
currentValue |
* | Current value (scalar, $.path string, or {type,value|path|key} object) |
options |
object | {allowContext: true, allowAppSetting: true} |
Returns:
HTML string
- Type
- string
resourceFor()
- Description:
Only the current member's approved display endpoints participate.
- Source:
savedMobileResponse()
- Description:
Reconstruct the existing mobile API contracts from approved, encrypted display data.
- Source:
shortSiteTitle()
- Description:
Public branding embedded by the server in both live pages and cached mobile shells.
- Source:
showDropdown()
- Description:
Show the searchable variable dropdown anchored to anchorBtn.
- Source:
startOfflineSessionObserver()
- Description:
Trust survives navigation and session timeout; explicit exit and actor changes remove it.
- Source:
trustThisDevice()
- Description:
Explicit user choice; browser storage persistence is best effort, not an extra setup step.
- Source:
undo()
- Description:
Undo: move back one step and restore. Returns true if state changed.
- Source:
updateTrustedDevice()
- Description:
One foreground coordinator shared by ordinary pages and the offline shell.
- Source:
validate(drawflowExport) → {Object}
- Description:
Validate the exported Drawflow data.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
drawflowExport |
object | Result of editor.export() |
Returns:
- Type
- Object
verifyDevicePassword()
- Description:
Return only verified account information; the password is never echoed by the server.
- Source: