improve init script assignment

This commit is contained in:
Ruben Fiszel
2024-10-10 01:12:36 +02:00
parent e53931ea25
commit 070a32a89e
9 changed files with 192 additions and 155 deletions
+5 -5
View File
@@ -300,9 +300,9 @@
"types": "./package/utils.d.ts",
"default": "./package/utils.js"
},
"./icons/store": {
"types": "./package/icons/store.d.ts",
"default": "./package/icons/store.js"
"./components/icons/store": {
"types": "./package/components/icons/store.d.ts",
"default": "./package/components/icons/store.js"
},
"./script_helpers": {
"types": "./package/script_helpers.d.ts",
@@ -481,8 +481,8 @@
"script_helpers": [
"./package/script_helpers.d.ts"
],
"icons/store": [
"./package/icons/store.d.ts"
"components/icons/store": [
"./package/components/icons/store.d.ts"
]
}
},
@@ -1,6 +1,4 @@
<script lang="ts">
import { base } from '$app/paths'
import AppConnectInner from '$lib/components/AppConnectInner.svelte'
import DarkModeObserver from '$lib/components/DarkModeObserver.svelte'
import { Button } from '$lib/components/common'
@@ -13,7 +11,6 @@
let step = 1
let disabled = false
let isGoogleSignin = false
let manual = true
let appConnect: AppConnectInner | undefined = undefined
@@ -40,32 +37,21 @@
<Button variant="border" on:click={appConnect?.back}>Back</Button>
{/if}
{#if isGoogleSignin}
<button {disabled} on:click={appConnect?.next}>
<img
class="h-10 w-auto object-contain"
src={darkMode ? base + '/google_signin_dark.png' : base + '/google_signin_light.png'}
alt="Google sign-in"
/>
</button>
{:else}
<Button {disabled} on:click={appConnect?.next}>
{#if step == 2 && !manual}
Connect
{:else if step == 1}
Next
{:else}
Save
{/if}
</Button>
{/if}
<Button {disabled} on:click={appConnect?.next}>
{#if step == 2 && !manual}
Connect
{:else if step == 1}
Next
{:else}
Save
{/if}
</Button>
</div>
</div>
<AppConnectInner
bind:this={appConnect}
bind:step
bind:resourceType
bind:isGoogleSignin
bind:disabled
bind:manual
on:error
@@ -36,7 +36,7 @@
runPreview($previewArgs, undefined)
}
const { selectedId, previewArgs, flowStateStore, flowStore, pathStore, initialPath } =
const { selectedId, previewArgs, flowStateStore, flowStore, pathStore, initialPath, customUi } =
getContext<FlowEditorContext>('FlowEditorContext')
const dispatch = createEventDispatcher()
@@ -326,6 +326,7 @@
<div class="pt-4 flex flex-col grow">
{#if jobId}
<FlowStatusViewer
hideDownloadInGraph={customUi?.downloadLogs === false}
wideResults
{flowStateStore}
{jobId}
+1
View File
@@ -30,6 +30,7 @@ export type FlowBuilderWhitelabelCustomUi = {
languages?: (SupportedLanguage | 'docker' | 'bunnative')[]
scriptFork?: boolean
editorBar?: EditorBarUi
downloadLogs?: boolean
}
export type EditorBarUi = {
@@ -24,6 +24,7 @@
title="Deployment History"
>
<FlowHistoryInner
allowFork
on:historyRestore={() => {
drawer.closeDrawer()
dispatch('historyRestore')
@@ -9,6 +9,7 @@
import { createEventDispatcher } from 'svelte'
export let path: string
export let allowFork: boolean = false
let loading: boolean = false
let versions: FlowVersion[] = []
@@ -175,19 +176,22 @@
{/if}
</span>
<div class="flex p-1 gap-2">
<div class="flex">
<Button
size="sm"
color="dark"
on:click={() =>
window.open(
`/flows/add?template_id=${selectedVersion?.id}&template=${path}`,
'_blank'
)}
>
Restore as fork
</Button>
</div>
{#if allowFork}
<div class="flex">
<Button
size="sm"
color="dark"
on:click={() =>
window.open(
`/flows/add?template_id=${selectedVersion?.id}&template=${path}`,
'_blank'
)}
>
Restore as fork
</Button>
</div>
{/if}
<div class="flex">
<Button size="sm" color="dark" on:click={() => restoreVersion(selected)}
>Redeploy with that version
@@ -7,7 +7,7 @@
export let spin: 'slow' | 'medium' | 'fast' | 'veryfast' | undefined = undefined
</script>
{#if customIcon}
{#if customIcon.white || customIcon.normal}
{#if white}
<img src={customIcon.white} alt="Windmill Custom icon" {width} {height} class={$$props.class} />
{:else}
+1 -1
View File
@@ -1 +1 @@
export let customIcon: { normal: string; white: string } | undefined = undefined
export let customIcon: { normal?: string; white?: string } = {}
+155 -111
View File
@@ -2,7 +2,7 @@ import { type Script } from './gen'
import type { SupportedLanguage } from './common'
export let PYTHON_FAILURE_MODULE_CODE = `import os
const PYTHON_FAILURE_MODULE_CODE = `import os
def main(message: str, name: str, step_id: str):
flow_id = os.environ.get("WM_ROOT_FLOW_JOB_ID")
@@ -11,13 +11,13 @@ def main(message: str, name: str, step_id: str):
print("step_id", step_id)
return { "message": message, "flow_id": flow_id, "step_id": step_id, "recover": False }`
export let PYTHON_INIT_CODE_CLEAR = `# import wmill
const PYTHON_INIT_CODE_CLEAR = `# import wmill
def main(x: str):
return x`
export let PYTHON_INIT_CODE_TRIGGER = `import wmill
const PYTHON_INIT_CODE_TRIGGER = `import wmill
def main():
@@ -32,7 +32,7 @@ def main():
# return range from (state to newState)
return [1, 2, 3]`
export let PYTHON_INIT_CODE = `import os
const PYTHON_INIT_CODE = `import os
import wmill
# You can import any PyPi package.
@@ -73,7 +73,7 @@ def main(
# return value is converted to JSON
return {"splitted": name.split(), "user": user, "state": new_state}`
export let NATIVETS_INIT_CODE = `// Fetch-only script, no imports allowed (except windmill) but benefits from a dedicated highly efficient runtime
const NATIVETS_INIT_CODE = `// Fetch-only script, no imports allowed (except windmill) but benefits from a dedicated highly efficient runtime
//import * as wmill from './windmill.ts'
export async function main(example_input: number = 3) {
@@ -85,7 +85,7 @@ export async function main(example_input: number = 3) {
}
`
export let BUNNATIVE_INIT_CODE = `//native
const BUNNATIVE_INIT_CODE = `//native
//you can add proxy support using //proxy http(s)://host:port
// native scripts are bun scripts that are executed on native workers and can be parallelized
@@ -102,7 +102,7 @@ export async function main(example_input: number = 3) {
}
`
export let NATIVETS_INIT_CODE_CLEAR = `// Fetch-only script, no imports allowed (except windmill) but benefits from a dedicated highly efficient runtime
const NATIVETS_INIT_CODE_CLEAR = `// Fetch-only script, no imports allowed (except windmill) but benefits from a dedicated highly efficient runtime
//import * as wmill from './windmill.ts'
export async function main() {
@@ -113,7 +113,7 @@ export async function main() {
}
`
export let DENO_INIT_CODE = `// Ctrl/CMD+. to cache dependencies on imports hover.
const DENO_INIT_CODE = `// Ctrl/CMD+. to cache dependencies on imports hover.
// Deno uses "npm:" prefix to import from npm (https://deno.land/manual@v1.36.3/node/npm_specifiers)
// import * as wmill from "npm:windmill-client@${__pkg__.version}"
@@ -134,7 +134,7 @@ export async function main(
}
`
export let BUN_INIT_CODE = `// there are multiple modes to add as header: //nobundling //native //npm //nodejs
const BUN_INIT_CODE = `// there are multiple modes to add as header: //nobundling //native //npm //nodejs
// https://www.windmill.dev/docs/getting_started/scripts_quickstart/typescript#modes
// import { toWords } from "number-to-words@1"
@@ -165,7 +165,7 @@ export async function main(
}
`
export let GO_INIT_CODE = `package inner
const GO_INIT_CODE = `package inner
import (
"fmt"
@@ -189,7 +189,7 @@ func main(x string, nested struct {
}
`
export let GO_FAILURE_MODULE_CODE = `package inner
const GO_FAILURE_MODULE_CODE = `package inner
import (
"fmt"
@@ -206,21 +206,21 @@ func main(message string, name string) (interface{}, error) {
}
`
export let DENO_INIT_CODE_CLEAR = `// import * as wmill from "npm:windmill-client@${__pkg__.version}"
const DENO_INIT_CODE_CLEAR = `// import * as wmill from "npm:windmill-client@${__pkg__.version}"
export async function main(x: string) {
return x
}
`
export let BUN_INIT_CODE_CLEAR = `// import * as wmill from "windmill-client"
const BUN_INIT_CODE_CLEAR = `// import * as wmill from "windmill-client"
export async function main(x: string) {
return x
}
`
export let DENO_FAILURE_MODULE_CODE = `
const DENO_FAILURE_MODULE_CODE = `
export async function main(message: string, name: string, step_id: string) {
const flow_id = Deno.env.get("WM_ROOT_FLOW_JOB_ID")
console.log("message", message)
@@ -230,7 +230,7 @@ export async function main(message: string, name: string, step_id: string) {
}
`
export let BUN_FAILURE_MODULE_CODE = `
const BUN_FAILURE_MODULE_CODE = `
export async function main(message: string, name: string, step_id: string) {
const flow_id = process.env.WM_ROOT_FLOW_JOB_ID
console.log("message", message)
@@ -240,7 +240,7 @@ export async function main(message: string, name: string, step_id: string) {
}
`
export let POSTGRES_INIT_CODE = `-- to pin the database use '-- database f/your/path'
const POSTGRES_INIT_CODE = `-- to pin the database use '-- database f/your/path'
-- $1 name1 = default arg
-- $2 name2
-- $3 name3
@@ -249,7 +249,7 @@ INSERT INTO demo VALUES (\$1::TEXT, \$2::INT, \$3::TEXT[]) RETURNING *;
UPDATE demo SET col2 = \$4::INT WHERE col2 = \$2::INT;
`
export let MYSQL_INIT_CODE = `-- to pin the database use '-- database f/your/path'
const MYSQL_INIT_CODE = `-- to pin the database use '-- database f/your/path'
-- :name1 (text) = default arg
-- :name2 (int)
-- :name3 (int)
@@ -257,7 +257,7 @@ INSERT INTO demo VALUES (:name1, :name2);
UPDATE demo SET col2 = :name3 WHERE col2 = :name2;
`
export let BIGQUERY_INIT_CODE = `-- to pin the database use '-- database f/your/path'
const BIGQUERY_INIT_CODE = `-- to pin the database use '-- database f/your/path'
-- @name1 (string) = default arg
-- @name2 (integer)
-- @name3 (string[])
@@ -266,7 +266,7 @@ INSERT INTO \`demodb.demo\` VALUES (@name1, @name2, @name3);
UPDATE \`demodb.demo\` SET col2 = @name4 WHERE col2 = @name2;
`
export let SNOWFLAKE_INIT_CODE = `-- to pin the database use '-- database f/your/path'
const SNOWFLAKE_INIT_CODE = `-- to pin the database use '-- database f/your/path'
-- ? name1 (varchar) = default arg
-- ? name2 (int)
INSERT INTO demo VALUES (?, ?);
@@ -275,7 +275,7 @@ INSERT INTO demo VALUES (?, ?);
UPDATE demo SET col2 = ? WHERE col2 = ?;
`
export let MSSQL_INIT_CODE = `-- return_last_result
const MSSQL_INIT_CODE = `-- return_last_result
-- to pin the database use '-- database f/your/path'
-- @p1 name1 (varchar) = default arg
-- @p2 name2 (int)
@@ -284,7 +284,7 @@ INSERT INTO demo VALUES (@p1, @p2);
UPDATE demo SET col2 = @p3 WHERE col2 = @p2;
`
export let GRAPHQL_INIT_CODE = `query($name4: String, $name2: Int, $name3: [String]) {
const GRAPHQL_INIT_CODE = `query($name4: String, $name2: Int, $name3: [String]) {
demo(name1: $name1, name2: $name2, name3: $name3) {
name1,
name2,
@@ -293,7 +293,7 @@ export let GRAPHQL_INIT_CODE = `query($name4: String, $name2: Int, $name3: [Stri
}
`
export let PHP_INIT_CODE = `<?php
const PHP_INIT_CODE = `<?php
// remove the first // of the following lines to specify packages to install using composer
// // require:
@@ -313,7 +313,7 @@ function main(
}
`
export let RUST_INIT_CODE = `//! Add dependencies in the following partial Cargo.toml manifest
const RUST_INIT_CODE = `//! Add dependencies in the following partial Cargo.toml manifest
//!
//! \`\`\`cargo
//! [dependencies]
@@ -348,7 +348,7 @@ fn main(who_to_greet: String, numbers: Vec<i8>) -> anyhow::Result<Ret> {
}
`
export let FETCH_INIT_CODE = `export async function main(
const FETCH_INIT_CODE = `export async function main(
url: string | undefined,
method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'OPTIONS' = 'GET',
body: Object = {},
@@ -379,7 +379,7 @@ export let FETCH_INIT_CODE = `export async function main(
})
}`
export let BASH_INIT_CODE = `# shellcheck shell=bash
const BASH_INIT_CODE = `# shellcheck shell=bash
# arguments of the form X="$I" are parsed as parameters X of type string
msg="$1"
dflt="\${2:-default value}"
@@ -389,7 +389,7 @@ dflt="\${2:-default value}"
echo "Hello $msg"
`
export let DENO_INIT_CODE_TRIGGER = `import * as wmill from "npm:windmill-client@${__pkg__.version}"
const DENO_INIT_CODE_TRIGGER = `import * as wmill from "npm:windmill-client@${__pkg__.version}"
export async function main() {
@@ -410,7 +410,7 @@ export async function main() {
}
`
export let BUN_INIT_CODE_TRIGGER = `import * as wmill from "windmill-client"
const BUN_INIT_CODE_TRIGGER = `import * as wmill from "windmill-client"
export async function main() {
@@ -431,7 +431,7 @@ export async function main() {
}
`
export let GO_INIT_CODE_TRIGGER = `package inner
const GO_INIT_CODE_TRIGGER = `package inner
import (
wmill "github.com/windmill-labs/windmill-go-client"
@@ -455,7 +455,7 @@ func main() (interface{}, error) {
}
`
export let DENO_INIT_CODE_APPROVAL = `import * as wmill from "npm:windmill-client@^1.158.2"
const DENO_INIT_CODE_APPROVAL = `import * as wmill from "npm:windmill-client@^1.158.2"
export async function main(approver?: string) {
const urls = await wmill.getResumeUrls(approver)
@@ -483,7 +483,7 @@ export async function main(approver?: string) {
// add a form in Advanced - Suspend
// all on approval steps: https://www.windmill.dev/docs/flows/flow_approval`
export let BUN_INIT_CODE_APPROVAL = `import * as wmill from "windmill-client@^1.158.2"
const BUN_INIT_CODE_APPROVAL = `import * as wmill from "windmill-client@^1.158.2"
export async function main(approver?: string) {
const urls = await wmill.getResumeUrls(approver)
@@ -511,7 +511,7 @@ export async function main(approver?: string) {
// add a form in Advanced - Suspend
// all on approval steps: https://www.windmill.dev/docs/flows/flow_approval`
export let BUN_PREPROCESSOR_MODULE_CODE = `
const BUN_PREPROCESSOR_MODULE_CODE = `
export async function preprocessor(
wm_trigger: {
kind: 'http' | 'email' | 'webhook',
@@ -532,7 +532,7 @@ export async function preprocessor(
}
`
export let DENO_PREPROCESSOR_MODULE_CODE = `
const DENO_PREPROCESSOR_MODULE_CODE = `
export async function preprocessor(
wm_trigger: {
kind: 'http' | 'email' | 'wehbook',
@@ -553,7 +553,7 @@ export async function preprocessor(
}
`
export let PYTHON_INIT_CODE_APPROVAL = `import wmill
const PYTHON_INIT_CODE_APPROVAL = `import wmill
def main():
urls = wmill.get_resume_urls()
@@ -580,7 +580,7 @@ def main():
# add a form in Advanced - Suspend
# all on approval steps: https://www.windmill.dev/docs/flows/flow_approval`
export let PYTHON_PREPROCESSOR_MODULE_CODE = `from typing import TypedDict, Literal
const PYTHON_PREPROCESSOR_MODULE_CODE = `from typing import TypedDict, Literal
class Http(TypedDict):
route: str # The route path, e.g. "/users/:id"
@@ -603,7 +603,7 @@ def preprocessor(
}
`
export let DOCKER_INIT_CODE = `# shellcheck shell=bash
const DOCKER_INIT_CODE = `# shellcheck shell=bash
# Bash script that calls docker as a client to the host daemon
# See documentation: https://www.windmill.dev/docs/advanced/docker
msg="\${1:-world}"
@@ -616,7 +616,7 @@ docker pull $IMAGE
docker run --rm $IMAGE $COMMAND
`
export let POWERSHELL_INIT_CODE = `param($Msg, $Dflt = "default value", [int]$Nb = 3)
const POWERSHELL_INIT_CODE = `param($Msg, $Dflt = "default value", [int]$Nb = 3)
# Import-Module MyModule
@@ -627,7 +627,7 @@ export let POWERSHELL_INIT_CODE = `param($Msg, $Dflt = "default value", [int]$Nb
# the last line of the stdout is the return value
Write-Output "Hello $Msg"`
export let ANSIBLE_PLAYBOOK_INIT_CODE = `---
const ANSIBLE_PLAYBOOK_INIT_CODE = `---
inventory:
- resource_type: ansible_inventory
# You can pin an inventory to this script by hardcoding the resource path:
@@ -671,43 +671,87 @@ dependencies:
content: "{{ my_result | to_json }}"
dest: result.json
`
const ALL_INITIAL_CODE = [
PYTHON_INIT_CODE,
PYTHON_INIT_CODE_TRIGGER,
DENO_INIT_CODE,
POSTGRES_INIT_CODE,
MYSQL_INIT_CODE,
BIGQUERY_INIT_CODE,
SNOWFLAKE_INIT_CODE,
MSSQL_INIT_CODE,
GRAPHQL_INIT_CODE,
DENO_INIT_CODE_TRIGGER,
DENO_INIT_CODE_CLEAR,
PYTHON_INIT_CODE_CLEAR,
PYTHON_FAILURE_MODULE_CODE,
PYTHON_PREPROCESSOR_MODULE_CODE,
DENO_INIT_CODE_APPROVAL,
DENO_FAILURE_MODULE_CODE,
DENO_PREPROCESSOR_MODULE_CODE,
BUN_INIT_CODE,
BUN_INIT_CODE_CLEAR,
BUN_INIT_CODE_APPROVAL,
BUN_FAILURE_MODULE_CODE,
BUN_PREPROCESSOR_MODULE_CODE,
BASH_INIT_CODE,
POWERSHELL_INIT_CODE,
PHP_INIT_CODE,
RUST_INIT_CODE,
ANSIBLE_PLAYBOOK_INIT_CODE
]
export const INITIAL_CODE = {
bun: {
script: BUN_INIT_CODE,
trigger: BUN_INIT_CODE_TRIGGER,
approval: BUN_INIT_CODE_APPROVAL,
failure: BUN_FAILURE_MODULE_CODE,
preprocessor: BUN_PREPROCESSOR_MODULE_CODE
},
python3: {
script: PYTHON_INIT_CODE,
trigger: PYTHON_INIT_CODE_TRIGGER,
approval: PYTHON_INIT_CODE_APPROVAL,
failure: PYTHON_FAILURE_MODULE_CODE,
preprocessor: PYTHON_PREPROCESSOR_MODULE_CODE
},
deno: {
script: DENO_INIT_CODE,
trigger: DENO_INIT_CODE_TRIGGER,
approval: DENO_INIT_CODE_APPROVAL,
failure: DENO_FAILURE_MODULE_CODE,
preprocessor: DENO_PREPROCESSOR_MODULE_CODE,
fetch: FETCH_INIT_CODE
},
go: {
script: GO_INIT_CODE,
trigger: GO_INIT_CODE_TRIGGER,
failure: GO_FAILURE_MODULE_CODE
},
bash: {
script: BASH_INIT_CODE
},
powershell: {
script: POWERSHELL_INIT_CODE
},
nativets: {
script: NATIVETS_INIT_CODE
},
postgresql: {
script: POSTGRES_INIT_CODE
},
mysql: {
script: MYSQL_INIT_CODE
},
bigquery: {
script: BIGQUERY_INIT_CODE
},
snowflake: {
script: SNOWFLAKE_INIT_CODE
},
mssql: {
script: MSSQL_INIT_CODE
},
graphql: {
script: GRAPHQL_INIT_CODE
},
php: {
script: PHP_INIT_CODE
},
rust: {
script: RUST_INIT_CODE
},
ansible: {
script: ANSIBLE_PLAYBOOK_INIT_CODE
},
docker: {
script: DOCKER_INIT_CODE
},
bunnative: {
script: BUNNATIVE_INIT_CODE
}
}
export function isInitialCode(content: string): boolean {
for (const code of ALL_INITIAL_CODE) {
if (content === code) {
return true
}
}
Object.values(INITIAL_CODE).forEach((lang) => {
Object.values(lang).forEach((code) => {
if (content === code) {
return true
}
})
})
return false
}
@@ -731,93 +775,93 @@ export function initialCode(
}
if (language === 'deno') {
if (kind === 'trigger') {
return DENO_INIT_CODE_TRIGGER
return INITIAL_CODE.deno.trigger
} else if (kind === 'script') {
if (subkind === 'flow') {
return DENO_INIT_CODE_CLEAR
return INITIAL_CODE.deno.script
} else if (subkind === 'pgsql') {
return POSTGRES_INIT_CODE
return INITIAL_CODE.postgresql.script
} else if (subkind === 'mysql') {
return MYSQL_INIT_CODE
return INITIAL_CODE.mysql.script
} else if (subkind === 'fetch') {
return FETCH_INIT_CODE
return INITIAL_CODE.deno.fetch
} else if (subkind === 'preprocessor') {
return DENO_PREPROCESSOR_MODULE_CODE
return INITIAL_CODE.deno.preprocessor
} else {
return DENO_INIT_CODE
return INITIAL_CODE.deno.script
}
} else if (kind === 'failure') {
return DENO_FAILURE_MODULE_CODE
return INITIAL_CODE.deno.failure
} else if (kind === 'approval') {
return DENO_INIT_CODE_APPROVAL
return INITIAL_CODE.deno.approval
} else {
return DENO_INIT_CODE
return INITIAL_CODE.deno.script
}
} else if (language === 'python3') {
if (kind === 'trigger') {
return PYTHON_INIT_CODE_TRIGGER
return INITIAL_CODE.python3.trigger
} else if (kind === 'approval') {
return PYTHON_INIT_CODE_APPROVAL
return INITIAL_CODE.python3.approval
} else if (kind === 'failure') {
return PYTHON_FAILURE_MODULE_CODE
return INITIAL_CODE.python3.failure
} else if (subkind === 'flow') {
return PYTHON_INIT_CODE_CLEAR
return INITIAL_CODE.python3.script
} else if (subkind === 'preprocessor') {
return PYTHON_PREPROCESSOR_MODULE_CODE
return INITIAL_CODE.python3.preprocessor
} else {
return PYTHON_INIT_CODE
return INITIAL_CODE.python3.script
}
} else if (language == 'bash') {
if (subkind === 'docker') {
return DOCKER_INIT_CODE
return INITIAL_CODE.docker.script
} else {
return BASH_INIT_CODE
return INITIAL_CODE.bash.script
}
} else if (language == 'powershell') {
return POWERSHELL_INIT_CODE
return INITIAL_CODE.powershell.script
} else if (language == 'nativets') {
return NATIVETS_INIT_CODE
return INITIAL_CODE.nativets.script
} else if (language == 'postgresql') {
return POSTGRES_INIT_CODE
return INITIAL_CODE.postgresql.script
} else if (language == 'mysql') {
return MYSQL_INIT_CODE
return INITIAL_CODE.mysql.script
} else if (language == 'bigquery') {
return BIGQUERY_INIT_CODE
return INITIAL_CODE.bigquery.script
} else if (language == 'snowflake') {
return SNOWFLAKE_INIT_CODE
return INITIAL_CODE.snowflake.script
} else if (language == 'mssql') {
return MSSQL_INIT_CODE
return INITIAL_CODE.mssql.script
} else if (language == 'graphql') {
return GRAPHQL_INIT_CODE
return INITIAL_CODE.graphql.script
} else if (language == 'php') {
return PHP_INIT_CODE
return INITIAL_CODE.php.script
} else if (language == 'rust') {
return RUST_INIT_CODE
return INITIAL_CODE.rust.script
} else if (language == 'ansible') {
return ANSIBLE_PLAYBOOK_INIT_CODE
return INITIAL_CODE.ansible.script
} else if (language == 'bun' || language == 'bunnative') {
if (kind == 'trigger') {
return BUN_INIT_CODE_TRIGGER
return INITIAL_CODE.bun.trigger
} else if (language == 'bunnative' || subkind === 'bunnative') {
return BUNNATIVE_INIT_CODE
return INITIAL_CODE.bunnative.script
} else if (kind === 'approval') {
return BUN_INIT_CODE_APPROVAL
return INITIAL_CODE.bun.approval
} else if (kind === 'failure') {
return BUN_FAILURE_MODULE_CODE
return INITIAL_CODE.bun.failure
} else if (subkind === 'preprocessor') {
return BUN_PREPROCESSOR_MODULE_CODE
return INITIAL_CODE.bun.preprocessor
} else if (subkind === 'flow') {
return BUN_INIT_CODE_CLEAR
return INITIAL_CODE.bun.script
}
return BUN_INIT_CODE
return INITIAL_CODE.bun.script
} else {
if (kind === 'failure') {
return GO_FAILURE_MODULE_CODE
return INITIAL_CODE.go.failure
} else if (kind === 'trigger') {
return GO_INIT_CODE_TRIGGER
return INITIAL_CODE.go.trigger
} else {
return GO_INIT_CODE
return INITIAL_CODE.go.script
}
}
}