2023-04-24 03:18:24 -07:00
|
|
|
import type { ISettingsState } from '@/Interface';
|
|
|
|
import { UserManagementAuthenticationMethod } from '@/Interface';
|
2023-04-21 08:51:08 -07:00
|
|
|
import { render } from '@testing-library/vue';
|
|
|
|
import { PiniaVuePlugin } from 'pinia';
|
2023-04-14 04:17:03 -07:00
|
|
|
|
2023-05-23 06:25:28 -07:00
|
|
|
export const retry = async (assertion: () => any, { interval = 20, timeout = 1000 } = {}) => {
|
2023-02-15 05:05:55 -08:00
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
const startTime = Date.now();
|
|
|
|
|
|
|
|
const tryAgain = () => {
|
|
|
|
setTimeout(() => {
|
|
|
|
try {
|
|
|
|
resolve(assertion());
|
|
|
|
} catch (err) {
|
|
|
|
Date.now() - startTime > timeout ? reject(err) : tryAgain();
|
|
|
|
}
|
|
|
|
}, interval);
|
|
|
|
};
|
|
|
|
|
|
|
|
tryAgain();
|
|
|
|
});
|
|
|
|
};
|
2023-04-14 04:17:03 -07:00
|
|
|
|
2023-04-21 08:51:08 -07:00
|
|
|
type RenderParams = Parameters<typeof render>;
|
|
|
|
export const renderComponent = (Component: RenderParams[0], renderOptions: RenderParams[1] = {}) =>
|
|
|
|
render(Component, renderOptions, (vue) => {
|
|
|
|
vue.use(PiniaVuePlugin);
|
|
|
|
});
|
|
|
|
|
2023-05-10 08:10:03 -07:00
|
|
|
export const waitAllPromises = async () => new Promise((resolve) => setTimeout(resolve));
|
2023-04-14 04:17:03 -07:00
|
|
|
|
|
|
|
export const SETTINGS_STORE_DEFAULT_STATE: ISettingsState = {
|
|
|
|
settings: {
|
|
|
|
allowedModules: {},
|
|
|
|
communityNodesEnabled: false,
|
|
|
|
defaultLocale: '',
|
|
|
|
endpointWebhook: '',
|
|
|
|
endpointWebhookTest: '',
|
|
|
|
enterprise: {
|
|
|
|
advancedExecutionFilters: false,
|
|
|
|
sharing: false,
|
|
|
|
ldap: false,
|
|
|
|
saml: false,
|
|
|
|
logStreaming: false,
|
2023-05-10 08:10:03 -07:00
|
|
|
variables: false,
|
|
|
|
versionControl: false,
|
2023-06-14 23:33:28 -07:00
|
|
|
auditLogs: false,
|
2023-04-14 04:17:03 -07:00
|
|
|
},
|
2023-05-10 08:10:03 -07:00
|
|
|
executionMode: 'regular',
|
2023-04-14 04:17:03 -07:00
|
|
|
executionTimeout: 0,
|
|
|
|
hideUsagePage: false,
|
|
|
|
hiringBannerEnabled: false,
|
|
|
|
instanceId: '',
|
|
|
|
isNpmAvailable: false,
|
|
|
|
license: { environment: 'production' },
|
|
|
|
logLevel: 'info',
|
|
|
|
maxExecutionTimeout: 0,
|
|
|
|
oauthCallbackUrls: { oauth1: '', oauth2: '' },
|
|
|
|
onboardingCallPromptEnabled: false,
|
|
|
|
personalizationSurveyEnabled: false,
|
|
|
|
posthog: {
|
|
|
|
apiHost: '',
|
|
|
|
apiKey: '',
|
|
|
|
autocapture: false,
|
|
|
|
debug: false,
|
|
|
|
disableSessionRecording: false,
|
|
|
|
enabled: false,
|
|
|
|
},
|
|
|
|
publicApi: { enabled: false, latestVersion: 0, path: '', swaggerUi: { enabled: false } },
|
|
|
|
pushBackend: 'sse',
|
2023-05-10 08:10:03 -07:00
|
|
|
saveDataErrorExecution: 'all',
|
|
|
|
saveDataSuccessExecution: 'all',
|
2023-04-14 04:17:03 -07:00
|
|
|
saveManualExecutions: false,
|
|
|
|
sso: {
|
|
|
|
ldap: { loginEnabled: false, loginLabel: '' },
|
|
|
|
saml: { loginEnabled: false, loginLabel: '' },
|
|
|
|
},
|
|
|
|
telemetry: { enabled: false },
|
|
|
|
templates: { enabled: false, host: '' },
|
|
|
|
timezone: '',
|
|
|
|
urlBaseEditor: '',
|
|
|
|
urlBaseWebhook: '',
|
|
|
|
userManagement: {
|
|
|
|
enabled: false,
|
|
|
|
smtpSetup: false,
|
|
|
|
authenticationMethod: UserManagementAuthenticationMethod.Email,
|
|
|
|
},
|
|
|
|
versionCli: '',
|
|
|
|
versionNotifications: {
|
|
|
|
enabled: false,
|
|
|
|
endpoint: '',
|
|
|
|
infoUrl: '',
|
|
|
|
},
|
|
|
|
workflowCallerPolicyDefaultOption: 'any',
|
|
|
|
workflowTagsDisabled: false,
|
|
|
|
deployment: {
|
|
|
|
type: 'default',
|
|
|
|
},
|
2023-05-10 08:10:03 -07:00
|
|
|
variables: {
|
|
|
|
limit: 100,
|
|
|
|
},
|
2023-04-14 04:17:03 -07:00
|
|
|
},
|
|
|
|
promptsData: {
|
|
|
|
message: '',
|
|
|
|
title: '',
|
|
|
|
showContactPrompt: false,
|
|
|
|
showValueSurvey: false,
|
|
|
|
},
|
|
|
|
userManagement: {
|
|
|
|
enabled: false,
|
|
|
|
showSetupOnFirstLoad: false,
|
|
|
|
smtpSetup: false,
|
|
|
|
authenticationMethod: UserManagementAuthenticationMethod.Email,
|
|
|
|
},
|
|
|
|
templatesEndpointHealthy: false,
|
|
|
|
api: {
|
|
|
|
enabled: false,
|
|
|
|
latestVersion: 0,
|
|
|
|
path: '/',
|
|
|
|
swaggerUi: {
|
|
|
|
enabled: false,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
ldap: {
|
|
|
|
loginLabel: '',
|
|
|
|
loginEnabled: false,
|
|
|
|
},
|
|
|
|
saml: {
|
|
|
|
loginLabel: '',
|
|
|
|
loginEnabled: false,
|
|
|
|
},
|
|
|
|
onboardingCallPromptEnabled: false,
|
|
|
|
saveDataErrorExecution: 'all',
|
|
|
|
saveDataSuccessExecution: 'all',
|
|
|
|
saveManualExecutions: false,
|
|
|
|
};
|