windmill-components 1.52.0 → 1.55.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/ApiConnectForm.svelte +42 -7
- package/components/ApiConnectForm.svelte.d.ts +2 -1
- package/components/AppConnect.svelte +19 -11
- package/components/ArgInfo.svelte +6 -2
- package/components/ArgInput.svelte +9 -3
- package/components/ArgInput.svelte.d.ts +1 -0
- package/components/CenteredPage.svelte +1 -1
- package/components/CenteredPage.svelte.d.ts +6 -2
- package/components/CronInput.svelte +1 -1
- package/components/DisplayResult.svelte +39 -2
- package/components/Dropdown.svelte +73 -100
- package/components/Dropdown.svelte.d.ts +1 -3
- package/components/Editor.svelte +16 -5
- package/components/EditorBar.svelte +69 -63
- package/components/EditorBar.svelte.d.ts +1 -0
- package/components/FlowBuilder.svelte +74 -68
- package/components/FlowGraphViewer.svelte +136 -34
- package/components/FlowGraphViewer.svelte.d.ts +1 -0
- package/components/FlowJobResult.svelte +6 -1
- package/components/FlowJobResult.svelte.d.ts +2 -0
- package/components/FlowMetadata.svelte +4 -2
- package/components/FlowPreviewContent.svelte +10 -23
- package/components/FlowPreviewContent.svelte.d.ts +3 -0
- package/components/FlowStatusViewer.svelte +155 -30
- package/components/FlowStatusViewer.svelte.d.ts +4 -2
- package/components/FlowViewer.svelte +3 -3
- package/components/FlowViewer.svelte.d.ts +1 -0
- package/components/HighlightCode.svelte +1 -1
- package/components/HighlightCode.svelte.d.ts +1 -0
- package/components/IconedPath.svelte +16 -6
- package/components/IconedPath.svelte.d.ts +2 -0
- package/components/IconedResourceType.svelte +5 -2
- package/components/InputTransformForm.svelte +92 -73
- package/components/InviteGlobalUser.svelte +2 -2
- package/components/InviteGlobalUser.svelte.d.ts +1 -1
- package/components/InviteUser.svelte +20 -6
- package/components/InviteUser.svelte.d.ts +1 -1
- package/components/ItemPicker.svelte +38 -27
- package/components/ItemPicker.svelte.d.ts +2 -1
- package/components/JobStatus.svelte +19 -13
- package/components/LogViewer.svelte +11 -3
- package/components/LogViewer.svelte.d.ts +1 -0
- package/components/ModuleStatus.svelte +38 -0
- package/components/ModuleStatus.svelte.d.ts +18 -0
- package/components/ObjectResourceInput.svelte +8 -52
- package/components/ObjectResourceInput.svelte.d.ts +0 -1
- package/components/Path.svelte +2 -2
- package/components/Path.svelte.d.ts +1 -1
- package/components/Popover.svelte +7 -1
- package/components/Popover.svelte.d.ts +3 -1
- package/components/ResourceEditor.svelte +57 -29
- package/components/ResourcePicker.svelte +12 -2
- package/components/SchemaEditor.svelte +2 -1
- package/components/SchemaForm.svelte +2 -1
- package/components/SchemaForm.svelte.d.ts +1 -0
- package/components/SchemaModal.svelte +11 -10
- package/components/ScriptBuilder.svelte +207 -192
- package/components/ScriptBuilder.svelte.d.ts +1 -1
- package/components/ScriptEditor.svelte +49 -45
- package/components/ScriptEditor.svelte.d.ts +1 -0
- package/components/ScriptPicker.svelte.d.ts +1 -1
- package/components/ScriptSchema.svelte +11 -30
- package/components/ScriptSchema.svelte.d.ts +0 -1
- package/components/SharedBadge.svelte +2 -3
- package/components/SimpleEditor.svelte +6 -7
- package/components/SimpleEditor.svelte.d.ts +1 -0
- package/components/Star.svelte +2 -2
- package/components/SuperadminSettings.svelte +9 -38
- package/components/TableSimple.svelte +1 -1
- package/components/TestJobLoader.svelte +20 -8
- package/components/ToggleHubWorkspace.svelte +16 -0
- package/components/ToggleHubWorkspace.svelte.d.ts +16 -0
- package/components/Tooltip.svelte.d.ts +1 -1
- package/components/VariableEditor.svelte +22 -9
- package/components/apps/CreateApp.svelte +5 -2
- package/components/apps/CreateApp.svelte.d.ts +1 -1
- package/components/apps/components/DisplayComponent.svelte +7 -14
- package/components/apps/components/DisplayComponent.svelte.d.ts +3 -2
- package/components/apps/components/buttons/AppButton.svelte +34 -27
- package/components/apps/components/buttons/AppButton.svelte.d.ts +6 -6
- package/components/apps/components/dataDisplay/AppBarChart.svelte +33 -9
- package/components/apps/components/dataDisplay/AppBarChart.svelte.d.ts +3 -5
- package/components/apps/components/dataDisplay/AppPieChart.svelte +33 -12
- package/components/apps/components/dataDisplay/AppPieChart.svelte.d.ts +3 -5
- package/components/apps/components/dataDisplay/AppTable.svelte +27 -30
- package/components/apps/components/dataDisplay/AppTable.svelte.d.ts +4 -8
- package/components/apps/components/dataDisplay/AppText.svelte +16 -9
- package/components/apps/components/dataDisplay/AppText.svelte.d.ts +3 -2
- package/components/apps/components/dataDisplay/app.md +49 -0
- package/components/apps/components/form/AppForm.svelte +50 -0
- package/components/apps/components/form/AppForm.svelte.d.ts +25 -0
- package/components/apps/components/helpers/AlignWrapper.svelte +2 -1
- package/components/apps/components/helpers/AlignWrapper.svelte.d.ts +1 -0
- package/components/apps/components/helpers/DebouncedInput.svelte +9 -1
- package/components/apps/components/helpers/DebouncedInput.svelte.d.ts +2 -1
- package/components/apps/components/helpers/InputValue.svelte +15 -6
- package/components/apps/components/helpers/InputValue.svelte.d.ts +2 -2
- package/components/apps/components/helpers/NonRunnableComponent.svelte +20 -0
- package/components/apps/components/helpers/NonRunnableComponent.svelte.d.ts +21 -0
- package/components/apps/components/helpers/RunnableComponent.svelte +36 -30
- package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +6 -7
- package/components/apps/components/helpers/RunnableWrapper.svelte +32 -0
- package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +26 -0
- package/components/apps/components/numberInputs/AppNumberInput.svelte +36 -0
- package/components/apps/components/numberInputs/AppNumberInput.svelte.d.ts +20 -0
- package/components/apps/components/selectInputs/AppCheckbox.svelte +4 -2
- package/components/apps/components/selectInputs/AppCheckbox.svelte.d.ts +2 -2
- package/components/apps/components/textInputs/AppTextInput.svelte +21 -0
- package/components/apps/components/textInputs/AppTextInput.svelte.d.ts +20 -0
- package/components/apps/editor/AppEditor.svelte +66 -55
- package/components/apps/editor/AppEditorHeader.svelte +4 -4
- package/components/apps/editor/AppPreview.svelte +42 -0
- package/components/apps/editor/AppPreview.svelte.d.ts +17 -0
- package/components/apps/editor/ComponentEditor.svelte +41 -20
- package/components/apps/editor/ComponentEditor.svelte.d.ts +2 -0
- package/components/apps/editor/ComponentHeader.svelte +28 -0
- package/components/apps/editor/ComponentHeader.svelte.d.ts +20 -0
- package/components/apps/editor/GridEditor.svelte +54 -5
- package/components/apps/editor/GridEditor.svelte.d.ts +1 -1
- package/components/apps/editor/RecomputeAllComponents.svelte +28 -0
- package/components/apps/editor/RecomputeAllComponents.svelte.d.ts +14 -0
- package/components/apps/editor/componentsPanel/ComponentList.svelte +94 -26
- package/components/apps/editor/componentsPanel/ComponentList.svelte.d.ts +1 -1
- package/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +2 -6
- package/components/apps/editor/componentsPanel/componentDefaultProps.js +1 -5
- package/components/apps/editor/componentsPanel/componentStaticValues.d.ts +2 -0
- package/components/apps/editor/componentsPanel/componentStaticValues.js +3 -1
- package/components/apps/editor/componentsPanel/data.js +191 -76
- package/components/apps/editor/contextPanel/ContextPanel.svelte +56 -48
- package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +67 -0
- package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte.d.ts +55 -0
- package/components/apps/editor/settingsPanel/ComponentPanel.svelte +154 -129
- package/components/apps/editor/settingsPanel/ConnectedInputEditor.svelte +70 -0
- package/components/apps/editor/settingsPanel/ConnectedInputEditor.svelte.d.ts +17 -0
- package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +6 -6
- package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte.d.ts +2 -2
- package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +55 -87
- package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte.d.ts +3 -4
- package/components/apps/editor/settingsPanel/PickFlow.svelte +3 -2
- package/components/apps/editor/settingsPanel/PickFlow.svelte.d.ts +1 -1
- package/components/apps/editor/settingsPanel/PickInlineScript.svelte +3 -3
- package/components/apps/editor/settingsPanel/Recompute.svelte +46 -0
- package/components/apps/editor/settingsPanel/Recompute.svelte.d.ts +17 -0
- package/components/apps/editor/settingsPanel/StaticInputEditor.svelte +31 -14
- package/components/apps/editor/settingsPanel/StaticInputEditor.svelte.d.ts +3 -3
- package/components/apps/editor/settingsPanel/SubTypeEditor.svelte +17 -0
- package/components/apps/editor/settingsPanel/SubTypeEditor.svelte.d.ts +19 -0
- package/components/apps/editor/settingsPanel/TableActionLabel.svelte +10 -0
- package/components/apps/editor/settingsPanel/TableActionLabel.svelte.d.ts +17 -0
- package/components/apps/editor/settingsPanel/TableActions.svelte +13 -9
- package/components/apps/editor/settingsPanel/UserInputEditor.svelte.d.ts +1 -1
- package/components/apps/editor/settingsPanel/common/PanelSection.svelte +3 -2
- package/components/apps/editor/settingsPanel/common/PanelSection.svelte.d.ts +1 -0
- package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte +53 -0
- package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte.d.ts +21 -0
- package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +98 -0
- package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte.d.ts +18 -0
- package/components/apps/editor/settingsPanel/mainInput/WorkspaceFlowList.svelte +81 -0
- package/components/apps/editor/settingsPanel/mainInput/WorkspaceFlowList.svelte.d.ts +20 -0
- package/components/apps/editor/settingsPanel/mainInput/WorkspaceScriptList.svelte +81 -0
- package/components/apps/editor/settingsPanel/mainInput/WorkspaceScriptList.svelte.d.ts +20 -0
- package/components/apps/inputType.d.ts +62 -0
- package/components/apps/inputType.js +1 -0
- package/components/apps/rx.d.ts +4 -4
- package/components/apps/rx.js +16 -4
- package/components/apps/types.d.ts +20 -54
- package/components/apps/utils.d.ts +11 -34
- package/components/apps/utils.js +54 -18
- package/components/common/alert/Alert.svelte +2 -1
- package/components/common/alert/Alert.svelte.d.ts +1 -0
- package/components/common/button/Button.svelte +1 -1
- package/components/common/confirmationModal/UnsavedConfirmationModal.svelte.d.ts +1 -1
- package/components/common/drawer/DrawerContent.svelte +23 -22
- package/components/common/drawer/DrawerContent.svelte.d.ts +1 -3
- package/components/common/kbd/Kbd.svelte.d.ts +2 -2
- package/components/common/languageIcons/LanguageIcon.svelte +4 -2
- package/components/common/languageIcons/LanguageIcon.svelte.d.ts +1 -1
- package/components/common/menu/Menu.svelte +0 -1
- package/components/common/menu/MenuItem.svelte.d.ts +6 -2
- package/components/common/popup/Popup.svelte +0 -11
- package/components/common/table/AppRow.svelte +42 -26
- package/components/common/table/AppRow.svelte.d.ts +1 -1
- package/components/common/table/FlowRow.svelte +54 -49
- package/components/common/table/LanguageBadge.svelte +1 -1
- package/components/common/table/Row.svelte +27 -16
- package/components/common/table/Row.svelte.d.ts +2 -1
- package/components/common/table/RowIcon.svelte +13 -8
- package/components/common/table/ScriptRow.svelte +65 -57
- package/components/common/table/Table.svelte.d.ts +6 -2
- package/components/flows/CreateActionsFlow.svelte +14 -41
- package/components/flows/CreateActionsFlow.svelte.d.ts +1 -1
- package/components/flows/common/FlowCardHeader.svelte +7 -8
- package/components/flows/content/BranchPredicateEditor.svelte +30 -0
- package/components/flows/content/BranchPredicateEditor.svelte.d.ts +23 -0
- package/components/flows/content/CapturePayload.svelte +12 -8
- package/components/flows/content/DynamicInputHelpBox.svelte.d.ts +1 -1
- package/components/flows/content/FlowBranchAllWrapper.svelte +2 -2
- package/components/flows/content/FlowBranchOneWrapper.svelte +4 -36
- package/components/flows/content/FlowBranchesAllWrapper.svelte +91 -0
- package/components/flows/content/FlowBranchesAllWrapper.svelte.d.ts +18 -0
- package/components/flows/content/FlowBranchesOneWrapper.svelte +88 -0
- package/components/flows/content/FlowBranchesOneWrapper.svelte.d.ts +18 -0
- package/components/flows/content/FlowFailureModule.svelte.d.ts +1 -1
- package/components/flows/content/FlowInput.svelte +1 -2
- package/components/flows/content/FlowInput.svelte.d.ts +1 -1
- package/components/flows/content/FlowInputs.svelte +28 -26
- package/components/flows/content/FlowInputsFlow.svelte +101 -0
- package/components/flows/content/FlowInputsFlow.svelte.d.ts +20 -0
- package/components/flows/content/FlowLoop.svelte +10 -3
- package/components/flows/content/FlowModuleComponent.svelte +46 -35
- package/components/flows/content/FlowModuleEarlyStop.svelte +4 -3
- package/components/flows/content/FlowModuleHeader.svelte +22 -21
- package/components/flows/content/FlowModuleHeader.svelte.d.ts +1 -0
- package/components/flows/content/FlowModuleSleep.svelte +69 -0
- package/components/flows/content/FlowModuleSleep.svelte.d.ts +18 -0
- package/components/flows/content/FlowModuleSuspend.svelte +5 -63
- package/components/flows/content/FlowModuleSuspend.svelte.d.ts +0 -1
- package/components/flows/content/FlowModuleWrapper.svelte +59 -35
- package/components/flows/content/FlowPathViewer.svelte +20 -0
- package/components/flows/content/FlowPathViewer.svelte.d.ts +17 -0
- package/components/flows/content/FlowSchedules.svelte.d.ts +1 -1
- package/components/flows/content/FlowSettings.svelte +8 -12
- package/components/flows/flowState.js +2 -2
- package/components/flows/flowStateUtils.d.ts +7 -3
- package/components/flows/flowStateUtils.js +29 -8
- package/components/flows/header/FlowImportExportMenu.svelte.d.ts +1 -1
- package/components/flows/header/FlowPreviewButtons.svelte +6 -2
- package/components/flows/header/FlowPreviewButtons.svelte.d.ts +1 -1
- package/components/flows/map/FlowErrorHandlerItem.svelte +5 -5
- package/components/flows/map/FlowErrorHandlerItem.svelte.d.ts +1 -1
- package/components/flows/map/FlowInputsItem.svelte.d.ts +1 -1
- package/components/flows/map/FlowModuleSchemaItem.svelte +30 -11
- package/components/flows/map/FlowModuleSchemaMap.svelte +26 -20
- package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +1 -1
- package/components/flows/map/FlowSettingsItem.svelte +1 -1
- package/components/flows/map/FlowSettingsItem.svelte.d.ts +1 -1
- package/components/flows/map/InsertModuleButton.svelte +20 -4
- package/components/flows/map/InsertModuleButton.svelte.d.ts +1 -1
- package/components/flows/map/MapItem.svelte +11 -5
- package/components/flows/pickers/FlowScriptPicker.svelte.d.ts +1 -1
- package/components/flows/pickers/PickHubFlow.svelte +72 -0
- package/components/flows/pickers/PickHubFlow.svelte.d.ts +20 -0
- package/components/flows/pickers/PickHubScript.svelte +65 -56
- package/components/flows/pickers/PickHubScript.svelte.d.ts +3 -1
- package/components/flows/pickers/PickScript.svelte +2 -2
- package/components/flows/pickers/WorkspaceScriptPicker.svelte +79 -19
- package/components/flows/pickers/WorkspaceScriptPicker.svelte.d.ts +5 -1
- package/components/flows/previousResults.d.ts +1 -0
- package/components/flows/previousResults.js +2 -1
- package/components/flows/propPicker/PropPickerWrapper.svelte +9 -1
- package/components/flows/utils.d.ts +0 -1
- package/components/flows/utils.js +6 -6
- package/components/graph/FlowGraph.svelte +120 -54
- package/components/graph/FlowGraph.svelte.d.ts +3 -2
- package/components/graph/model.d.ts +11 -0
- package/components/home/ItemsList.svelte +265 -0
- package/components/home/ItemsList.svelte.d.ts +16 -0
- package/components/home/ListFilters.svelte +37 -0
- package/components/home/ListFilters.svelte.d.ts +18 -0
- package/components/home/NoItemFound.svelte +6 -0
- package/components/home/NoItemFound.svelte.d.ts +23 -0
- package/components/icons/DatadogIcon.svelte +48 -0
- package/components/icons/DatadogIcon.svelte.d.ts +17 -0
- package/components/icons/FunkwhaleIcon.svelte +90 -0
- package/components/icons/FunkwhaleIcon.svelte.d.ts +17 -0
- package/components/icons/GdocsIcon.svelte +9 -0
- package/components/icons/GdocsIcon.svelte.d.ts +17 -0
- package/components/icons/HubspotIcon.svelte +9 -0
- package/components/icons/HubspotIcon.svelte.d.ts +17 -0
- package/components/icons/LinkedinIcon.svelte +9 -0
- package/components/icons/LinkedinIcon.svelte.d.ts +17 -0
- package/components/icons/Mail.svelte +9 -53
- package/components/icons/Mysql.svelte +8 -8
- package/components/icons/NextcloudIcon.svelte +9 -0
- package/components/icons/NextcloudIcon.svelte.d.ts +17 -0
- package/components/icons/QRCodeIcon.svelte +5 -0
- package/components/icons/QRCodeIcon.svelte.d.ts +16 -0
- package/components/icons/SendflakeIcon.svelte +15 -0
- package/components/icons/SendflakeIcon.svelte.d.ts +17 -0
- package/components/icons/StripeIcon.svelte +9 -0
- package/components/icons/StripeIcon.svelte.d.ts +17 -0
- package/components/icons/TelegramIcon.svelte +9 -0
- package/components/icons/TelegramIcon.svelte.d.ts +17 -0
- package/components/icons/WindmillIcon.svelte +3 -3
- package/components/icons/index.d.ts +23 -1
- package/components/icons/index.js +23 -1
- package/components/jobs/JobDetail.svelte +2 -2
- package/components/preview/FlowPreviewStatus.svelte +12 -23
- package/components/propertyPicker/PropPicker.svelte +16 -0
- package/components/propertyPicker/PropPickerResult.svelte +2 -3
- package/components/propertyPicker/WarningMessage.svelte.d.ts +6 -2
- package/components/scriptEditor/LogPanel.svelte +11 -4
- package/components/scripts/CreateActionsScript.svelte +13 -59
- package/components/scripts/CreateActionsScript.svelte.d.ts +1 -1
- package/components/sidebar/FavoriteMenu.svelte +52 -0
- package/components/sidebar/FavoriteMenu.svelte.d.ts +21 -0
- package/components/sidebar/SidebarContent.svelte +10 -19
- package/components/sidebar/SidebarContent.svelte.d.ts +0 -4
- package/components/sidebar/UserMenu.svelte +21 -4
- package/components/sidebar/WorkspaceMenu.svelte +6 -7
- package/editorUtils.d.ts +2 -0
- package/editorUtils.js +3 -1
- package/gen/core/OpenAPI.js +1 -1
- package/gen/index.d.ts +1 -0
- package/gen/models/CompletedJob.d.ts +1 -0
- package/gen/models/CreateWorkspace.d.ts +0 -1
- package/gen/models/EditWorkspaceUser.d.ts +2 -0
- package/gen/models/FlowModuleValue.d.ts +2 -1
- package/gen/models/FlowStatus.d.ts +3 -1
- package/gen/models/FlowStatusModule.d.ts +1 -1
- package/gen/models/FlowStatusModule.js +1 -1
- package/gen/models/Identity.d.ts +1 -0
- package/gen/models/ListableResource.d.ts +1 -0
- package/gen/models/ListableVariable.d.ts +1 -0
- package/gen/models/PathFlow.d.ts +6 -0
- package/gen/models/PathFlow.js +4 -0
- package/gen/models/PathScript.d.ts +1 -0
- package/gen/models/QueuedJob.d.ts +1 -0
- package/gen/models/Schedule.d.ts +2 -0
- package/gen/models/Usage.d.ts +1 -3
- package/gen/models/WorkspaceInvite.d.ts +1 -0
- package/gen/services/AppService.d.ts +7 -1
- package/gen/services/AppService.js +2 -1
- package/gen/services/JobService.d.ts +35 -5
- package/gen/services/JobService.js +14 -5
- package/gen/services/OauthService.d.ts +1 -1
- package/gen/services/ResourceService.d.ts +6 -2
- package/gen/services/ResourceService.js +2 -1
- package/gen/services/UserService.d.ts +6 -0
- package/gen/services/UserService.js +11 -0
- package/gen/services/WorkspaceService.d.ts +35 -0
- package/gen/services/WorkspaceService.js +41 -0
- package/package.json +56 -17
- package/script_helpers.d.ts +2 -1
- package/script_helpers.js +20 -3
- package/scripts.d.ts +1 -0
- package/scripts.js +8 -1
- package/stores.d.ts +11 -2
- package/stores.js +24 -6
- package/utils.d.ts +3 -1
- package/utils.js +11 -4
- package/components/ButtonAndDropdown.svelte +0 -25
- package/components/ButtonAndDropdown.svelte.d.ts +0 -23
- package/components/apps/components/index.d.ts +0 -22
- package/components/apps/components/index.js +0 -42
- package/components/apps/editor/settingsPanel/DynamicInputEditor.svelte +0 -64
- package/components/apps/editor/settingsPanel/DynamicInputEditor.svelte.d.ts +0 -17
- package/components/flows/content/FlowBranchesWrapper.svelte +0 -140
- package/components/flows/content/FlowBranchesWrapper.svelte.d.ts +0 -19
|
@@ -1,21 +1,56 @@
|
|
|
1
1
|
<script>import { ResourceService } from '../gen';
|
|
2
2
|
import { workspaceStore } from '../stores';
|
|
3
|
-
import { emptySchema } from '../utils';
|
|
3
|
+
import { emptySchema, emptyString } from '../utils';
|
|
4
4
|
import SchemaForm from './SchemaForm.svelte';
|
|
5
|
+
import SimpleEditor from './SimpleEditor.svelte';
|
|
5
6
|
export let resource_type;
|
|
6
7
|
export let args = {};
|
|
7
8
|
export let password;
|
|
9
|
+
export let isValid = true;
|
|
8
10
|
let schema = emptySchema();
|
|
11
|
+
let notFound = false;
|
|
9
12
|
async function loadSchema() {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
try {
|
|
14
|
+
const rt = await ResourceService.getResourceType({
|
|
15
|
+
workspace: $workspaceStore,
|
|
16
|
+
path: resource_type
|
|
17
|
+
});
|
|
18
|
+
schema = rt.schema;
|
|
19
|
+
notFound = false;
|
|
20
|
+
}
|
|
21
|
+
catch (e) {
|
|
22
|
+
rawCode = '{}';
|
|
23
|
+
notFound = true;
|
|
24
|
+
}
|
|
15
25
|
}
|
|
16
26
|
$: {
|
|
17
27
|
$workspaceStore && loadSchema();
|
|
18
28
|
}
|
|
29
|
+
$: notFound && rawCode && parseJson();
|
|
30
|
+
function parseJson() {
|
|
31
|
+
try {
|
|
32
|
+
args = JSON.parse(rawCode);
|
|
33
|
+
error = '';
|
|
34
|
+
isValid = true;
|
|
35
|
+
}
|
|
36
|
+
catch (e) {
|
|
37
|
+
isValid = false;
|
|
38
|
+
error = e.message;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
let error = '';
|
|
42
|
+
let rawCode = '';
|
|
19
43
|
</script>
|
|
20
44
|
|
|
21
|
-
|
|
45
|
+
{#if notFound}
|
|
46
|
+
<p class="italic text-gray-500 text-xs mb-4"
|
|
47
|
+
>No corresponding resource type found in your workspace for {resource_type}. Define the value in
|
|
48
|
+
JSON directly</p
|
|
49
|
+
>
|
|
50
|
+
{#if !emptyString(error)}<span class="text-red-400 text-xs mb-1 flex flex-row-reverse"
|
|
51
|
+
>{error}</span
|
|
52
|
+
>{:else}<div class="py-2" />{/if}
|
|
53
|
+
<SimpleEditor autoHeight lang="json" bind:code={rawCode} fixedOverflowWidgets={false} />
|
|
54
|
+
{:else}
|
|
55
|
+
<SchemaForm {password} isValid {schema} bind:args />
|
|
56
|
+
{/if}
|
|
@@ -2,8 +2,9 @@ import { SvelteComponentTyped } from "svelte";
|
|
|
2
2
|
declare const __propDef: {
|
|
3
3
|
props: {
|
|
4
4
|
resource_type: string;
|
|
5
|
-
args?: Record<string, any> |
|
|
5
|
+
args?: Record<string, any> | any;
|
|
6
6
|
password: string;
|
|
7
|
+
isValid?: boolean | undefined;
|
|
7
8
|
};
|
|
8
9
|
events: {
|
|
9
10
|
[evt: string]: CustomEvent<any>;
|
|
@@ -47,6 +47,7 @@ import { Button, Drawer, Skeleton } from './common';
|
|
|
47
47
|
import DrawerContent from './common/drawer/DrawerContent.svelte';
|
|
48
48
|
import ApiConnectForm from './ApiConnectForm.svelte';
|
|
49
49
|
import SearchItems from './SearchItems.svelte';
|
|
50
|
+
import autosize from 'svelte-autosize';
|
|
50
51
|
export let newPageOAuth = false;
|
|
51
52
|
let filter = '';
|
|
52
53
|
let manual = false;
|
|
@@ -83,6 +84,9 @@ export async function open(rt) {
|
|
|
83
84
|
}
|
|
84
85
|
else {
|
|
85
86
|
manual = true;
|
|
87
|
+
if (rt) {
|
|
88
|
+
next();
|
|
89
|
+
}
|
|
86
90
|
}
|
|
87
91
|
drawer.openDrawer?.();
|
|
88
92
|
}
|
|
@@ -148,11 +152,11 @@ async function next() {
|
|
|
148
152
|
throw Error(`Resource at path ${path} already exists. Delete it or pick another path`);
|
|
149
153
|
}
|
|
150
154
|
let account = undefined;
|
|
151
|
-
if (valueToken?.
|
|
155
|
+
if (valueToken?.expires_in != undefined) {
|
|
152
156
|
account = Number(await OauthService.createAccount({
|
|
153
157
|
workspace: $workspaceStore,
|
|
154
158
|
requestBody: {
|
|
155
|
-
refresh_token: valueToken.refresh_token,
|
|
159
|
+
refresh_token: valueToken.refresh_token ?? '',
|
|
156
160
|
expires_in: valueToken.expires_in,
|
|
157
161
|
owner: path.split('/').slice(0, 2).join('/'),
|
|
158
162
|
client: resource_type
|
|
@@ -207,11 +211,14 @@ $: disabled =
|
|
|
207
211
|
(step == 1 && resource_type == '') ||
|
|
208
212
|
(step == 2 &&
|
|
209
213
|
value == '' &&
|
|
214
|
+
args &&
|
|
210
215
|
args['token'] == '' &&
|
|
211
216
|
args['password'] == '' &&
|
|
212
217
|
args['api_key'] == '' &&
|
|
213
218
|
key != undefined) ||
|
|
214
|
-
(step == 3 && pathError != '')
|
|
219
|
+
(step == 3 && pathError != '') ||
|
|
220
|
+
!isValid;
|
|
221
|
+
let isValid = true;
|
|
215
222
|
let filteredConnects = [];
|
|
216
223
|
let filteredConnectsManual = [];
|
|
217
224
|
</script>
|
|
@@ -237,8 +244,9 @@ let filteredConnectsManual = [];
|
|
|
237
244
|
on:open={() => {
|
|
238
245
|
loadResources()
|
|
239
246
|
}}
|
|
247
|
+
size="800px"
|
|
240
248
|
>
|
|
241
|
-
<DrawerContent title="Connect an API" on:close={drawer.closeDrawer}>
|
|
249
|
+
<DrawerContent title="Connect an API or add a Resource" on:close={drawer.closeDrawer}>
|
|
242
250
|
{#if step == 1}
|
|
243
251
|
<div class="w-12/12 pb-2 flex flex-row my-1 gap-1">
|
|
244
252
|
<input
|
|
@@ -249,7 +257,7 @@ let filteredConnectsManual = [];
|
|
|
249
257
|
/>
|
|
250
258
|
</div>
|
|
251
259
|
|
|
252
|
-
<h2 class="mb-
|
|
260
|
+
<h2 class="mb-4">OAuth APIs</h2>
|
|
253
261
|
<div class="grid sm:grid-cols-2 md:grid-cols-3 gap-x-2 gap-y-1 items-center mb-2">
|
|
254
262
|
{#if filteredConnects}
|
|
255
263
|
{#each filteredConnects as [key, values]}
|
|
@@ -312,7 +320,7 @@ let filteredConnectsManual = [];
|
|
|
312
320
|
{/if}
|
|
313
321
|
{/if}
|
|
314
322
|
|
|
315
|
-
<h2 class="mt-8 mb-
|
|
323
|
+
<h2 class="mt-8 mb-4">Non OAuth APIs & Resources</h2>
|
|
316
324
|
<div class="grid sm:grid-cols-2 md:grid-cols-3 gap-x-2 gap-y-1 items-center mb-2">
|
|
317
325
|
{#if filteredConnectsManual}
|
|
318
326
|
{#each filteredConnectsManual as [key, instructions]}
|
|
@@ -347,11 +355,10 @@ let filteredConnectsManual = [];
|
|
|
347
355
|
/>
|
|
348
356
|
<h2 class="mt-4 mb-2">Description</h2>
|
|
349
357
|
|
|
350
|
-
<
|
|
358
|
+
<textarea type="text" autocomplete="off" use:autosize bind:value={description} />
|
|
351
359
|
|
|
352
|
-
<h2 class="mt-4">Value</h2>
|
|
353
360
|
{#if apiTokenApps[resource_type]}
|
|
354
|
-
<
|
|
361
|
+
<h2 class="mt-4 mb-2">Instructions</h2>
|
|
355
362
|
<div class="pl-10">
|
|
356
363
|
<ol class="list-decimal">
|
|
357
364
|
{#each apiTokenApps[resource_type].instructions as step}
|
|
@@ -368,8 +375,9 @@ let filteredConnectsManual = [];
|
|
|
368
375
|
{/if}
|
|
369
376
|
{/if}
|
|
370
377
|
|
|
378
|
+
<h2 class="mt-8">Value</h2>
|
|
371
379
|
<div class="mt-4">
|
|
372
|
-
<ApiConnectForm password={key ?? ''} {resource_type} bind:args />
|
|
380
|
+
<ApiConnectForm password={key ?? ''} {resource_type} bind:args bind:isValid />
|
|
373
381
|
</div>
|
|
374
382
|
{:else}
|
|
375
383
|
<Path
|
|
@@ -396,7 +404,7 @@ let filteredConnectsManual = [];
|
|
|
396
404
|
>
|
|
397
405
|
{/if}
|
|
398
406
|
{/if}
|
|
399
|
-
<div slot="
|
|
407
|
+
<div slot="actions">
|
|
400
408
|
{#if step > 1 && !no_back}
|
|
401
409
|
<Button variant="border" on:click={back}>Back</Button>
|
|
402
410
|
{/if}
|
|
@@ -20,8 +20,12 @@ async function getResource(path) {
|
|
|
20
20
|
</script>
|
|
21
21
|
|
|
22
22
|
<Drawer bind:this={jsonViewer} size="800px">
|
|
23
|
-
<DrawerContent title="
|
|
24
|
-
|
|
23
|
+
<DrawerContent title="Argument Details" on:close={jsonViewer.toggleDrawer}>
|
|
24
|
+
{#if isString(jsonViewerContent)}
|
|
25
|
+
<pre>{jsonViewerContent}</pre>
|
|
26
|
+
{:else}
|
|
27
|
+
<ObjectViewer pureViewer json={jsonViewerContent} />
|
|
28
|
+
{/if}
|
|
25
29
|
</DrawerContent>
|
|
26
30
|
</Drawer>
|
|
27
31
|
|
|
@@ -11,6 +11,7 @@ import StringTypeNarrowing from './StringTypeNarrowing.svelte';
|
|
|
11
11
|
import SchemaForm from './SchemaForm.svelte';
|
|
12
12
|
import SimpleEditor from './SimpleEditor.svelte';
|
|
13
13
|
import autosize from 'svelte-autosize';
|
|
14
|
+
import * as autosizeLib from 'autosize';
|
|
14
15
|
import Toggle from './Toggle.svelte';
|
|
15
16
|
import Password from './Password.svelte';
|
|
16
17
|
export let label = '';
|
|
@@ -36,6 +37,7 @@ export let password = false;
|
|
|
36
37
|
export let pickForField = undefined;
|
|
37
38
|
export let variableEditor = undefined;
|
|
38
39
|
export let itemPicker = undefined;
|
|
40
|
+
export let noMargin = false;
|
|
39
41
|
let seeEditable = enum_ != undefined || pattern != undefined;
|
|
40
42
|
const dispatch = createEventDispatcher();
|
|
41
43
|
$: maxHeight = maxRows ? `${1 + maxRows * 1.2}em` : `auto`;
|
|
@@ -82,6 +84,10 @@ function fileChanged(e, cb) {
|
|
|
82
84
|
}
|
|
83
85
|
export function focus() {
|
|
84
86
|
el?.focus();
|
|
87
|
+
if (el) {
|
|
88
|
+
el.style.height = '5px';
|
|
89
|
+
el.style.height = el.scrollHeight + 50 + 'px';
|
|
90
|
+
}
|
|
85
91
|
}
|
|
86
92
|
function validateInput(pattern, v) {
|
|
87
93
|
if (required && (v == undefined || v == null || v === '')) {
|
|
@@ -259,7 +265,7 @@ $: inputCat = computeInputCat(type, format, itemsType?.type, enum_, contentEncod
|
|
|
259
265
|
</span>
|
|
260
266
|
</div>
|
|
261
267
|
{:else if inputCat == 'resource-object'}
|
|
262
|
-
<ObjectResourceInput {
|
|
268
|
+
<ObjectResourceInput {format} bind:value />
|
|
263
269
|
{:else if inputCat == 'object'}
|
|
264
270
|
{#if properties && Object.keys(properties).length > 0}
|
|
265
271
|
<div class="p-4 pl-8 border rounded w-full">
|
|
@@ -366,7 +372,7 @@ $: inputCat = computeInputCat(type, format, itemsType?.type, enum_, contentEncod
|
|
|
366
372
|
</div>
|
|
367
373
|
{#if variableEditor}
|
|
368
374
|
<div class="text-sm text-gray-600">
|
|
369
|
-
{#if value?.startsWith('$var:')}
|
|
375
|
+
{#if value && typeof value == 'string' && value?.startsWith('$var:')}
|
|
370
376
|
Linked to variable <button
|
|
371
377
|
class="text-blue-500 underline"
|
|
372
378
|
on:click={() => variableEditor?.editVariable?.(value.slice(5))}
|
|
@@ -400,7 +406,7 @@ $: inputCat = computeInputCat(type, format, itemsType?.type, enum_, contentEncod
|
|
|
400
406
|
{error}
|
|
401
407
|
{/if}
|
|
402
408
|
</div>
|
|
403
|
-
{:else}
|
|
409
|
+
{:else if !noMargin}
|
|
404
410
|
<div class="mb-2" />
|
|
405
411
|
{/if}
|
|
406
412
|
</div>
|
|
@@ -34,6 +34,7 @@ declare const __propDef: {
|
|
|
34
34
|
pickForField?: string | undefined;
|
|
35
35
|
variableEditor?: VariableEditor | undefined;
|
|
36
36
|
itemPicker?: ItemPicker | undefined;
|
|
37
|
+
noMargin?: boolean | undefined;
|
|
37
38
|
editor?: SimpleEditor | undefined;
|
|
38
39
|
evalValueToRaw?: (() => void) | undefined;
|
|
39
40
|
focus?: (() => void) | undefined;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
/** @typedef {typeof __propDef.props} CenteredPageProps */
|
|
2
2
|
/** @typedef {typeof __propDef.events} CenteredPageEvents */
|
|
3
3
|
/** @typedef {typeof __propDef.slots} CenteredPageSlots */
|
|
4
|
-
export default class CenteredPage extends SvelteComponentTyped<{
|
|
4
|
+
export default class CenteredPage extends SvelteComponentTyped<{
|
|
5
|
+
[x: string]: never;
|
|
6
|
+
}, {
|
|
5
7
|
[evt: string]: CustomEvent<any>;
|
|
6
8
|
}, {
|
|
7
9
|
default: {};
|
|
@@ -12,7 +14,9 @@ export type CenteredPageEvents = typeof __propDef.events;
|
|
|
12
14
|
export type CenteredPageSlots = typeof __propDef.slots;
|
|
13
15
|
import { SvelteComponentTyped } from "svelte";
|
|
14
16
|
declare const __propDef: {
|
|
15
|
-
props: {
|
|
17
|
+
props: {
|
|
18
|
+
[x: string]: never;
|
|
19
|
+
};
|
|
16
20
|
events: {
|
|
17
21
|
[evt: string]: CustomEvent<any>;
|
|
18
22
|
};
|
|
@@ -74,7 +74,7 @@ async function handleScheduleInput(input) {
|
|
|
74
74
|
<div class="flex flex-row justify-between">The next runs will be scheduled at:</div>
|
|
75
75
|
<ul class="list-disc mx-12">
|
|
76
76
|
{#each preview.slice(0, limit) as p}
|
|
77
|
-
<li class="mx-2 text-gray-700 text-sm">{displayDate(p)}</li>
|
|
77
|
+
<li class="mx-2 text-gray-700 text-sm">{displayDate(p, true)}</li>
|
|
78
78
|
{/each}
|
|
79
79
|
<li class="text-sm mx-2">...</li>
|
|
80
80
|
{#if limit != 10}
|
|
@@ -2,8 +2,11 @@
|
|
|
2
2
|
import { json } from 'svelte-highlight/languages';
|
|
3
3
|
import TableCustom from './TableCustom.svelte';
|
|
4
4
|
import { truncate } from '../utils';
|
|
5
|
+
import { Button } from './common';
|
|
6
|
+
import autosize from 'svelte-autosize';
|
|
5
7
|
export let result;
|
|
6
|
-
let resultKind
|
|
8
|
+
let resultKind;
|
|
9
|
+
$: resultKind = inferResultKind(result);
|
|
7
10
|
let forceJson = false;
|
|
8
11
|
function isRectangularArray(obj) {
|
|
9
12
|
if (!Array.isArray(obj) || obj.length == 0) {
|
|
@@ -44,18 +47,25 @@ function inferResultKind(result) {
|
|
|
44
47
|
else if (keys.length == 1 && keys[0] == 'error' && typeof result['error'] == 'string') {
|
|
45
48
|
return 'error';
|
|
46
49
|
}
|
|
50
|
+
else if (keys.length == 3 &&
|
|
51
|
+
keys.includes('resume') &&
|
|
52
|
+
keys.includes('cancel') &&
|
|
53
|
+
keys.includes('approvalPage')) {
|
|
54
|
+
return 'approval';
|
|
55
|
+
}
|
|
47
56
|
}
|
|
48
57
|
catch (err) { }
|
|
49
58
|
}
|
|
50
59
|
return 'json';
|
|
51
60
|
}
|
|
61
|
+
let payload = '';
|
|
52
62
|
</script>
|
|
53
63
|
|
|
54
64
|
<div class="inline-highlight">
|
|
55
65
|
{#if result != undefined}
|
|
56
66
|
{#if resultKind && resultKind != 'json'}
|
|
57
67
|
<div class="mb-2 text-gray-500 text-sm bg-gray-50/20">
|
|
58
|
-
as JSON
|
|
68
|
+
as JSON <input type="checkbox" bind:checked={forceJson} /></div
|
|
59
69
|
>{/if}{#if typeof result == 'object' && Object.keys(result).length > 0}<div
|
|
60
70
|
class="mb-2 text-sm text-gray-700"
|
|
61
71
|
>The result keys are: <b>{truncate(Object.keys(result).join(', '), 50)}</b></div
|
|
@@ -119,10 +129,37 @@ function inferResultKind(result) {
|
|
|
119
129
|
{:else if !forceJson && resultKind == 'error'}<div
|
|
120
130
|
><pre class="text-sm text-red-500 whitespace-pre-wrap">{result.error}</pre>
|
|
121
131
|
</div>
|
|
132
|
+
{:else if !forceJson && resultKind == 'approval'}<div class="flex flex-col gap-1 mx-4">
|
|
133
|
+
<Button
|
|
134
|
+
color="green"
|
|
135
|
+
variant="border"
|
|
136
|
+
on:click={() =>
|
|
137
|
+
fetch(result['resume'], {
|
|
138
|
+
method: 'POST',
|
|
139
|
+
body: JSON.stringify(payload),
|
|
140
|
+
headers: { 'Content-Type': 'application/json' }
|
|
141
|
+
})}
|
|
142
|
+
>
|
|
143
|
+
Resume</Button
|
|
144
|
+
>
|
|
145
|
+
<Button color="red" variant="border" on:click={() => fetch(result['cancel'])}>Cancel</Button
|
|
146
|
+
>
|
|
147
|
+
<div>
|
|
148
|
+
<h3>Payload</h3>
|
|
149
|
+
<div class="border border-black">
|
|
150
|
+
<input type="text" bind:value={payload} use:autosize />
|
|
151
|
+
</div>
|
|
152
|
+
</div>
|
|
153
|
+
<div class="center-center"
|
|
154
|
+
><a rel="noreferrer" target="_blank" href={result['approvalPage']}>Approval Page</a></div
|
|
155
|
+
>
|
|
156
|
+
</div>
|
|
122
157
|
{:else}<Highlight
|
|
123
158
|
language={json}
|
|
124
159
|
code={JSON.stringify(result, null, 4).replace(/\\n/g, '\n')}
|
|
125
160
|
/>
|
|
126
161
|
{/if}
|
|
162
|
+
{:else}
|
|
163
|
+
<div class="text-gray-500 text-sm">No result</div>
|
|
127
164
|
{/if}
|
|
128
165
|
</div>
|
|
@@ -1,113 +1,86 @@
|
|
|
1
|
-
<script>import {
|
|
2
|
-
import { createEventDispatcher } from 'svelte';
|
|
1
|
+
<script>import { createEventDispatcher } from 'svelte';
|
|
3
2
|
import Icon from 'svelte-awesome';
|
|
4
3
|
import { faEllipsisH } from '@fortawesome/free-solid-svg-icons';
|
|
5
|
-
import { Button } from './common';
|
|
6
|
-
let open = false;
|
|
4
|
+
import { Button, Menu } from './common';
|
|
7
5
|
export let dropdownItems;
|
|
8
6
|
export let name = undefined;
|
|
9
|
-
|
|
10
|
-
// By default, the dropdown is positioned relative to its button
|
|
11
|
-
// This can cause the dropdown to be hidden if it is in an overflow-hidden div.
|
|
12
|
-
// In that case, set relative to false and control the dropdown positioning from the div
|
|
13
|
-
export let relative = true;
|
|
14
|
-
export let left = true;
|
|
7
|
+
export let placement = 'bottom-start';
|
|
15
8
|
const dispatch = createEventDispatcher();
|
|
16
|
-
function toggle() {
|
|
17
|
-
open = !open;
|
|
18
|
-
}
|
|
19
|
-
function handleClickOutsideMenu(event) {
|
|
20
|
-
open = false;
|
|
21
|
-
}
|
|
22
9
|
</script>
|
|
23
10
|
|
|
24
|
-
<
|
|
25
|
-
|
|
26
|
-
use:clickOutside
|
|
27
|
-
on:click_outside={handleClickOutsideMenu}
|
|
28
|
-
>
|
|
29
|
-
<Button color="light" size="xs" btnClasses="!text-blue-500 bg-transparent" on:click={toggle}>
|
|
11
|
+
<Menu {placement} let:close>
|
|
12
|
+
<Button color="light" size="xs" btnClasses="!text-blue-500 bg-transparent" slot="trigger">
|
|
30
13
|
{#if !$$slots.default}
|
|
31
14
|
<Icon data={faEllipsisH} scale={1.2} />
|
|
32
15
|
{:else}
|
|
33
16
|
<slot />
|
|
34
17
|
{/if}
|
|
35
18
|
</Button>
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
tabindex="-1"
|
|
105
|
-
id="user-menu-item-{name}-{i}}"
|
|
106
|
-
>
|
|
107
|
-
{item.displayName}
|
|
108
|
-
</span>
|
|
109
|
-
{/if}
|
|
110
|
-
{/each}
|
|
111
|
-
{/if}
|
|
112
|
-
</div>
|
|
113
|
-
</div>
|
|
19
|
+
{#if dropdownItems}
|
|
20
|
+
{#each dropdownItems as item, i}
|
|
21
|
+
{#if item.action}
|
|
22
|
+
<button
|
|
23
|
+
on:click={(event) => {
|
|
24
|
+
if (!item.disabled) {
|
|
25
|
+
event.preventDefault()
|
|
26
|
+
close()
|
|
27
|
+
item.action && item.action(event)
|
|
28
|
+
dispatch('click', { item: item?.eventName })
|
|
29
|
+
}
|
|
30
|
+
}}
|
|
31
|
+
class="block w-full whitespace-nowrap hover:drop-shadow-sm hover:bg-gray-50 hover:bg-opacity-30 px-4 py-2 text-sm text-gray-700 text-left {item.separatorTop
|
|
32
|
+
? 'border-t'
|
|
33
|
+
: ''} {item.separatorBottom ? 'border-b' : ''} {item.type == 'delete'
|
|
34
|
+
? 'text-red-500'
|
|
35
|
+
: ''}"
|
|
36
|
+
role="menuitem"
|
|
37
|
+
tabindex="-1"
|
|
38
|
+
id="user-menu-item-{name}-{i}}"
|
|
39
|
+
disabled={item.disabled}
|
|
40
|
+
class:disabled={item.disabled}
|
|
41
|
+
>
|
|
42
|
+
{#if item.icon}
|
|
43
|
+
<Icon
|
|
44
|
+
data={item.icon}
|
|
45
|
+
scale={0.6}
|
|
46
|
+
class="inline mr-2 {item.type == 'delete' ? 'text-red-500' : 'text-gray-700'}"
|
|
47
|
+
/>
|
|
48
|
+
{/if}
|
|
49
|
+
{item.displayName}
|
|
50
|
+
</button>
|
|
51
|
+
{:else if item.href}
|
|
52
|
+
<a
|
|
53
|
+
href={item.href}
|
|
54
|
+
on:click={() => {
|
|
55
|
+
if (!item.disabled) {
|
|
56
|
+
close()
|
|
57
|
+
}
|
|
58
|
+
}}
|
|
59
|
+
class="block w-full px-4 py-2 text-sm text-gray-700 hover:drop-shadow-sm hover:bg-gray-50 hover:bg-opacity-30"
|
|
60
|
+
role="menuitem"
|
|
61
|
+
tabindex="-1"
|
|
62
|
+
id="user-menu-item-{name}-{i}}"
|
|
63
|
+
class:disabled={item.disabled}
|
|
64
|
+
>
|
|
65
|
+
{#if item.icon}
|
|
66
|
+
<Icon
|
|
67
|
+
data={item.icon}
|
|
68
|
+
scale={0.6}
|
|
69
|
+
class="inline mr-2 {item.type == 'delete' ? 'text-red-500' : 'text-gray-700'}"
|
|
70
|
+
/>
|
|
71
|
+
{/if}
|
|
72
|
+
{item.displayName}
|
|
73
|
+
</a>
|
|
74
|
+
{:else}
|
|
75
|
+
<span
|
|
76
|
+
class="block px-4 py-2 text-sm text-gray-700"
|
|
77
|
+
role="menuitem"
|
|
78
|
+
tabindex="-1"
|
|
79
|
+
id="user-menu-item-{name}-{i}}"
|
|
80
|
+
>
|
|
81
|
+
{item.displayName}
|
|
82
|
+
</span>
|
|
83
|
+
{/if}
|
|
84
|
+
{/each}
|
|
85
|
+
{/if}
|
|
86
|
+
</Menu>
|
|
@@ -2,11 +2,9 @@ import { SvelteComponentTyped } from "svelte";
|
|
|
2
2
|
import type { DropdownItem } from '../utils';
|
|
3
3
|
declare const __propDef: {
|
|
4
4
|
props: {
|
|
5
|
-
[x: string]: any;
|
|
6
5
|
dropdownItems: DropdownItem[];
|
|
7
6
|
name?: string | undefined;
|
|
8
|
-
|
|
9
|
-
left?: boolean | undefined;
|
|
7
|
+
placement?: "top-start" | "top-end" | "bottom-start" | "bottom-end" | undefined;
|
|
10
8
|
};
|
|
11
9
|
events: {
|
|
12
10
|
click: CustomEvent<any>;
|
package/components/Editor.svelte
CHANGED
|
@@ -9,6 +9,16 @@ monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({
|
|
|
9
9
|
noSuggestionDiagnostics: true,
|
|
10
10
|
noSyntaxValidation: true
|
|
11
11
|
});
|
|
12
|
+
monaco.editor.defineTheme('myTheme', {
|
|
13
|
+
base: 'vs',
|
|
14
|
+
inherit: true,
|
|
15
|
+
rules: [],
|
|
16
|
+
colors: {
|
|
17
|
+
'editorLineNumber.foreground': '#999',
|
|
18
|
+
'editorGutter.background': '#F9FAFB'
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
monaco.editor.setTheme('myTheme');
|
|
12
22
|
</script>
|
|
13
23
|
|
|
14
24
|
<script>import { browser, dev } from '$app/env';
|
|
@@ -409,12 +419,13 @@ onDestroy(() => {
|
|
|
409
419
|
});
|
|
410
420
|
</script>
|
|
411
421
|
|
|
412
|
-
<div bind:this={divEl} class={$$props.class} />
|
|
422
|
+
<div bind:this={divEl} class="{$$props.class} editor" />
|
|
413
423
|
|
|
414
424
|
<style>
|
|
415
425
|
.editor {
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
426
|
+
border-radius: 0.375rem;
|
|
427
|
+
border-width: 1px;
|
|
428
|
+
--tw-border-opacity: 1;
|
|
429
|
+
border-color: rgb(249 250 251 / var(--tw-border-opacity));
|
|
430
|
+
padding: 0px
|
|
420
431
|
}</style>
|