diff --git a/backend/parsers/windmill-parser-py/src/lib.rs b/backend/parsers/windmill-parser-py/src/lib.rs
index ce11875053..cd797d0eb2 100644
--- a/backend/parsers/windmill-parser-py/src/lib.rs
+++ b/backend/parsers/windmill-parser-py/src/lib.rs
@@ -182,6 +182,7 @@ static PYTHON_IMPORTS_REPLACEMENT: phf::Map<&'static str, &'static str> = phf_ma
"shopify" => "ShopifyAPI",
"seleniumwire" => "selenium-wire",
"openbb-terminal" => "openbb[all]",
+ "riskfolio" => "riskfolio-lib",
};
fn replace_import(x: String) -> String {
diff --git a/frontend/package-lock.json b/frontend/package-lock.json
index 53796f5e8c..63fe174903 100644
--- a/frontend/package-lock.json
+++ b/frontend/package-lock.json
@@ -7,7 +7,6 @@
"": {
"name": "windmill",
"version": "1.101.1",
- "hasInstallScript": true,
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha256-js": "^4.0.0",
@@ -76,7 +75,7 @@
"svelte-awesome-color-picker": "^2.4.3",
"svelte-check": "^3.3.2",
"svelte-highlight": "^7.3.0",
- "svelte-multiselect": "^8.6.0",
+ "svelte-multiselect": "^8.6.2",
"svelte-overlay": "^1.4.1",
"svelte-popperjs": "^1.3.2",
"svelte-preprocess": "^5.0.1",
@@ -6482,12 +6481,12 @@
}
},
"node_modules/svelte-multiselect": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/svelte-multiselect/-/svelte-multiselect-8.6.0.tgz",
- "integrity": "sha512-ce1axNn5YrvDwpUA1R4pSKC7oCD8buP7If61VRoOEM5cxMU8t14tLp5fJf27qd8FBJ7vzvJokiN9BUl1u8oL6w==",
+ "version": "8.6.2",
+ "resolved": "https://registry.npmjs.org/svelte-multiselect/-/svelte-multiselect-8.6.2.tgz",
+ "integrity": "sha512-lR7zc/B6yAi9oZxIZyuv8q2VTRDS9aT84HRjHiEcmWD7vbz64pfbmKJZgCUcH5oCtr0wN1NfYymXQvRMfolZkQ==",
"dev": true,
"dependencies": {
- "svelte": "^3.57.0"
+ "svelte": "^3.59.1"
}
},
"node_modules/svelte-overlay": {
@@ -12040,12 +12039,12 @@
"requires": {}
},
"svelte-multiselect": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/svelte-multiselect/-/svelte-multiselect-8.6.0.tgz",
- "integrity": "sha512-ce1axNn5YrvDwpUA1R4pSKC7oCD8buP7If61VRoOEM5cxMU8t14tLp5fJf27qd8FBJ7vzvJokiN9BUl1u8oL6w==",
+ "version": "8.6.2",
+ "resolved": "https://registry.npmjs.org/svelte-multiselect/-/svelte-multiselect-8.6.2.tgz",
+ "integrity": "sha512-lR7zc/B6yAi9oZxIZyuv8q2VTRDS9aT84HRjHiEcmWD7vbz64pfbmKJZgCUcH5oCtr0wN1NfYymXQvRMfolZkQ==",
"dev": true,
"requires": {
- "svelte": "^3.57.0"
+ "svelte": "^3.59.1"
}
},
"svelte-overlay": {
diff --git a/frontend/package.json b/frontend/package.json
index 32504e3d90..17d9697261 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -54,7 +54,7 @@
"svelte-awesome-color-picker": "^2.4.3",
"svelte-check": "^3.3.2",
"svelte-highlight": "^7.3.0",
- "svelte-multiselect": "^8.6.0",
+ "svelte-multiselect": "^8.6.2",
"svelte-overlay": "^1.4.1",
"svelte-popperjs": "^1.3.2",
"svelte-preprocess": "^5.0.1",
diff --git a/frontend/src/lib/components/Multiselect.svelte b/frontend/src/lib/components/Multiselect.svelte
deleted file mode 100644
index 61283f152f..0000000000
--- a/frontend/src/lib/components/Multiselect.svelte
+++ /dev/null
@@ -1,326 +0,0 @@
-
-
-
-
-
- {#each Object.values(selected) as s}
-
-
{s.name}
- {#if !readonly}
-
- {/if}
-
- {/each}
-
- {#if !readonly}
-
-
-
- {/if}
-
-
-
-
-
- {#if showOptions}
-
- {#each filtered as option}
- -
- {option.name}
-
- {/each}
-
- {/if}
-
-
-
diff --git a/frontend/src/lib/components/apps/components/display/table/AppTable.svelte b/frontend/src/lib/components/apps/components/display/table/AppTable.svelte
index 8c16ff948b..79415b3e64 100644
--- a/frontend/src/lib/components/apps/components/display/table/AppTable.svelte
+++ b/frontend/src/lib/components/apps/components/display/table/AppTable.svelte
@@ -22,6 +22,7 @@
import { initConfig, initOutput } from '$lib/components/apps/editor/appUtils'
import ResolveConfig from '../../helpers/ResolveConfig.svelte'
import AppCheckbox from '../../inputs/AppCheckbox.svelte'
+ import AppSelect from '../../inputs/AppSelect.svelte'
export let id: string
export let componentInput: AppInput | undefined
@@ -297,7 +298,7 @@
on:keypress={() => toggleRow(row, rowIndex)}
on:click={() => toggleRow(row, rowIndex)}
>
-
+
{#each actionButtons as actionButton, actionIndex (actionButton?.id)}
+ {:else if actionButton.type == 'selectcomponent'}
+
{
+ toggleRow(row, rowIndex)
+ }}
+ {controls}
+ />
{/if}
{:else if actionButton.type == 'buttoncomponent'}
+ {:else if actionButton.type == 'selectcomponent'}
+ {
+ toggleRow(row, rowIndex)
+ }}
+ />
{/if}
{/each}
diff --git a/frontend/src/lib/components/apps/components/helpers/AlignWrapper.svelte b/frontend/src/lib/components/apps/components/helpers/AlignWrapper.svelte
index 1c41cb4007..ee04134185 100644
--- a/frontend/src/lib/components/apps/components/helpers/AlignWrapper.svelte
+++ b/frontend/src/lib/components/apps/components/helpers/AlignWrapper.svelte
@@ -6,6 +6,7 @@
export let horizontalAlignment: HorizontalAlignment | undefined = undefined
export let verticalAlignment: VerticalAlignment | undefined = undefined
export let noWFull = false
+ export let hFull = false
let c = ''
export { c as class }
export let style = ''
@@ -16,7 +17,7 @@
noWFull ? '' : 'w-full',
tailwindHorizontalAlignment(horizontalAlignment),
tailwindVerticalAlignment(verticalAlignment),
- verticalAlignment ? 'h-full' : '',
+ verticalAlignment || hFull ? 'h-full' : '',
c
)
diff --git a/frontend/src/lib/components/apps/components/inputs/AppCheckbox.svelte b/frontend/src/lib/components/apps/components/inputs/AppCheckbox.svelte
index d7fd52d5d4..1f9ccc856d 100644
--- a/frontend/src/lib/components/apps/components/inputs/AppCheckbox.svelte
+++ b/frontend/src/lib/components/apps/components/inputs/AppCheckbox.svelte
@@ -1,12 +1,13 @@
-
-
+{#each Object.keys(components['checkboxcomponent'].initialData.configuration) as key (key)}
+
+{/each}
{
diff --git a/frontend/src/lib/components/apps/components/inputs/AppMultiSelect.svelte b/frontend/src/lib/components/apps/components/inputs/AppMultiSelect.svelte
index 46062a135f..847abf18e6 100644
--- a/frontend/src/lib/components/apps/components/inputs/AppMultiSelect.svelte
+++ b/frontend/src/lib/components/apps/components/inputs/AppMultiSelect.svelte
@@ -1,69 +1,72 @@
-
-
+{#each Object.keys(components['multiselectcomponent'].initialData.configuration) as key (key)}
+
+{/each}
-
+
{
if (!e.shiftKey) {
e.stopPropagation()
@@ -71,30 +74,16 @@
}}
>
{#if !value || Array.isArray(value)}
-