ci: Enforce no unused imports (no-changelog) (#6073)

This commit is contained in:
Iván Ovejero 2023-04-25 11:47:03 +02:00 committed by GitHub
parent f3b4701863
commit 88724bb056
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
61 changed files with 98 additions and 94 deletions

View file

@ -36,6 +36,9 @@ const config = (module.exports = {
*/ */
'eslint-plugin-n8n-local-rules', 'eslint-plugin-n8n-local-rules',
/** https://github.com/sweepline/eslint-plugin-unused-imports */
'unused-imports',
/** https://github.com/sindresorhus/eslint-plugin-unicorn */ /** https://github.com/sindresorhus/eslint-plugin-unicorn */
'eslint-plugin-unicorn', 'eslint-plugin-unicorn',
], ],
@ -426,6 +429,15 @@ const config = (module.exports = {
*/ */
'import/prefer-default-export': 'off', 'import/prefer-default-export': 'off',
// ----------------------------------
// no-unused-imports
// ----------------------------------
/**
* https://github.com/sweepline/eslint-plugin-unused-imports/blob/master/docs/rules/no-unused-imports.md
*/
'unused-imports/no-unused-imports': process.env.NODE_ENV === 'development' ? 'warn' : 'error',
/** https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/no-unnecessary-await.md */ /** https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/no-unnecessary-await.md */
'unicorn/no-unnecessary-await': 'error', 'unicorn/no-unnecessary-await': 'error',

View file

@ -16,6 +16,7 @@
"eslint-plugin-n8n-local-rules": "~1.0", "eslint-plugin-n8n-local-rules": "~1.0",
"eslint-plugin-prettier": "~4.2", "eslint-plugin-prettier": "~4.2",
"eslint-plugin-unicorn": "~46.0", "eslint-plugin-unicorn": "~46.0",
"eslint-plugin-unused-imports": "~2.0",
"eslint-plugin-vue": "~7.17" "eslint-plugin-vue": "~7.17"
}, },
"scripts": { "scripts": {

View file

@ -1,7 +1,6 @@
/* eslint-disable @typescript-eslint/no-unused-vars */ /* eslint-disable @typescript-eslint/no-unused-vars */
/* eslint-disable @typescript-eslint/no-non-null-assertion */ /* eslint-disable @typescript-eslint/no-non-null-assertion */
import { In } from 'typeorm'; import { In } from 'typeorm';
import type express from 'express';
import { compare, genSaltSync, hash } from 'bcryptjs'; import { compare, genSaltSync, hash } from 'bcryptjs';
import { Container } from 'typedi'; import { Container } from 'typedi';
@ -12,7 +11,6 @@ import type { User } from '@db/entities/User';
import { MAX_PASSWORD_LENGTH, MIN_PASSWORD_LENGTH } from '@db/entities/User'; import { MAX_PASSWORD_LENGTH, MIN_PASSWORD_LENGTH } from '@db/entities/User';
import type { Role } from '@db/entities/Role'; import type { Role } from '@db/entities/Role';
import { RoleRepository } from '@db/repositories'; import { RoleRepository } from '@db/repositories';
import type { AuthenticatedRequest } from '@/requests';
import config from '@/config'; import config from '@/config';
import { getWebhookBaseUrl } from '@/WebhookHelpers'; import { getWebhookBaseUrl } from '@/WebhookHelpers';
import { License } from '@/License'; import { License } from '@/License';

View file

@ -21,7 +21,6 @@ import type {
IRun, IRun,
WorkflowExecuteMode, WorkflowExecuteMode,
WorkflowHooks, WorkflowHooks,
WorkflowSettings,
} from 'n8n-workflow'; } from 'n8n-workflow';
import { import {
ErrorReporterProxy as ErrorReporter, ErrorReporterProxy as ErrorReporter,

View file

@ -28,7 +28,6 @@ import type {
INodeActionTypeDescription, INodeActionTypeDescription,
IDisplayOptions, IDisplayOptions,
IExecutionsSummary, IExecutionsSummary,
IAbstractEventMessage,
FeatureFlags, FeatureFlags,
ExecutionStatus, ExecutionStatus,
ITelemetryTrackProperties, ITelemetryTrackProperties,

View file

@ -1,5 +1,4 @@
import { Factory } from 'miragejs'; import { Factory } from 'miragejs';
import { faker } from '@faker-js/faker';
import type { ICredentialType } from 'n8n-workflow'; import type { ICredentialType } from 'n8n-workflow';
const credentialTypes = [ const credentialTypes = [

View file

@ -1,5 +1,4 @@
import type { IOnboardingCallPrompt, IUser } from '@/Interface'; import type { IOnboardingCallPrompt, IUser } from '@/Interface';
import { IOnboardingCallPromptResponse } from '@/Interface';
import { get, post } from '@/utils'; import { get, post } from '@/utils';
const N8N_API_BASE_URL = 'https://api.n8n.io/api'; const N8N_API_BASE_URL = 'https://api.n8n.io/api';

View file

@ -1,6 +1,5 @@
import type { IExecutionsCurrentSummaryExtended, IRestApiContext } from '@/Interface'; import type { IExecutionsCurrentSummaryExtended, IRestApiContext } from '@/Interface';
import type { ExecutionFilters, ExecutionOptions, IDataObject } from 'n8n-workflow'; import type { ExecutionFilters, ExecutionOptions, IDataObject } from 'n8n-workflow';
import { ExecutionStatus, WorkflowExecuteMode } from 'n8n-workflow';
import { makeRestApiRequest } from '@/utils'; import { makeRestApiRequest } from '@/utils';
export async function getNewWorkflow(context: IRestApiContext, name?: string) { export async function getNewWorkflow(context: IRestApiContext, name?: string) {

View file

@ -26,7 +26,6 @@ import { workflowHelpers } from '@/mixins/workflowHelpers';
import mixins from 'vue-typed-mixins'; import mixins from 'vue-typed-mixins';
import type { INodeUi } from '@/Interface'; import type { INodeUi } from '@/Interface';
import { IExecutionResponse } from '@/Interface';
import type { import type {
IBinaryKeyData, IBinaryKeyData,
IDataObject, IDataObject,

View file

@ -111,7 +111,7 @@
<script lang="ts"> <script lang="ts">
import Vue from 'vue'; import Vue from 'vue';
import type { ICredentialsResponse, IUser, NewCredentialsModal } from '@/Interface'; import type { ICredentialsResponse, IUser } from '@/Interface';
import type { import type {
CredentialInformation, CredentialInformation,

View file

@ -81,7 +81,6 @@
<script lang="ts"> <script lang="ts">
import type { IUser, IUserListAction } from '@/Interface'; import type { IUser, IUserListAction } from '@/Interface';
import { UIState } from '@/Interface';
import mixins from 'vue-typed-mixins'; import mixins from 'vue-typed-mixins';
import { showMessage } from '@/mixins/showMessage'; import { showMessage } from '@/mixins/showMessage';
import { mapStores } from 'pinia'; import { mapStores } from 'pinia';
@ -91,7 +90,6 @@ import { useUIStore } from '@/stores/ui';
import { useCredentialsStore } from '@/stores/credentials'; import { useCredentialsStore } from '@/stores/credentials';
import { useUsageStore } from '@/stores/usage'; import { useUsageStore } from '@/stores/usage';
import { EnterpriseEditionFeature, VIEWS } from '@/constants'; import { EnterpriseEditionFeature, VIEWS } from '@/constants';
import { BaseTextKey } from '@/plugins/i18n';
export default mixins(showMessage).extend({ export default mixins(showMessage).extend({
name: 'CredentialSharing', name: 'CredentialSharing',

View file

@ -12,7 +12,6 @@
<script lang="ts" setup> <script lang="ts" setup>
import GoogleAuthButton from './GoogleAuthButton.vue'; import GoogleAuthButton from './GoogleAuthButton.vue';
import Vue from 'vue';
defineProps<{ defineProps<{
isGoogleOAuthType: boolean; isGoogleOAuthType: boolean;

View file

@ -56,7 +56,7 @@
<script lang="ts"> <script lang="ts">
import type { ICredentialType } from 'n8n-workflow'; import type { ICredentialType } from 'n8n-workflow';
import Vue, { defineComponent } from 'vue'; import { defineComponent } from 'vue';
import ScopesNotice from '@/components/ScopesNotice.vue'; import ScopesNotice from '@/components/ScopesNotice.vue';
import NodeCredentials from '@/components/NodeCredentials.vue'; import NodeCredentials from '@/components/NodeCredentials.vue';
import { mapStores } from 'pinia'; import { mapStores } from 'pinia';

View file

@ -124,7 +124,6 @@ import { copyPaste } from '@/mixins/copyPaste';
import { showMessage } from '@/mixins/showMessage'; import { showMessage } from '@/mixins/showMessage';
import mixins from 'vue-typed-mixins'; import mixins from 'vue-typed-mixins';
import { MAX_DISPLAY_DATA_SIZE } from '@/constants'; import { MAX_DISPLAY_DATA_SIZE } from '@/constants';
import { INodeUi } from '@/Interface';
import type { INodeProperties, INodePropertyCollection, INodePropertyOptions } from 'n8n-workflow'; import type { INodeProperties, INodePropertyCollection, INodePropertyOptions } from 'n8n-workflow';
import { sanitizeHtml } from '@/utils'; import { sanitizeHtml } from '@/utils';

View file

@ -123,7 +123,6 @@
</template> </template>
<script lang="ts"> <script lang="ts">
import Vue from 'vue';
import mixins from 'vue-typed-mixins'; import mixins from 'vue-typed-mixins';
import { import {
DUPLICATE_MODAL_KEY, DUPLICATE_MODAL_KEY,

View file

@ -38,7 +38,6 @@
<script lang="ts"> <script lang="ts">
import type { PropType } from 'vue'; import type { PropType } from 'vue';
import Vue from 'vue';
import { get } from 'lodash-es'; import { get } from 'lodash-es';
import type { INodeTypeDescription } from 'n8n-workflow'; import type { INodeTypeDescription } from 'n8n-workflow';
@ -49,7 +48,6 @@ import mixins from 'vue-typed-mixins';
import { debounceHelper } from '@/mixins/debounce'; import { debounceHelper } from '@/mixins/debounce';
import { mapStores } from 'pinia'; import { mapStores } from 'pinia';
import { useNDVStore } from '@/stores/ndv'; import { useNDVStore } from '@/stores/ndv';
import { NodePanelType } from '@/Interface';
const SIDE_MARGIN = 24; const SIDE_MARGIN = 24;
const SIDE_PANELS_MARGIN = 80; const SIDE_PANELS_MARGIN = 80;

View file

@ -183,7 +183,7 @@ import { workflowHelpers } from '@/mixins/workflowHelpers';
import { pinData } from '@/mixins/pinData'; import { pinData } from '@/mixins/pinData';
import type { INodeTypeDescription, ITaskData } from 'n8n-workflow'; import type { INodeTypeDescription, ITaskData } from 'n8n-workflow';
import { IDataObject, NodeHelpers } from 'n8n-workflow'; import { NodeHelpers } from 'n8n-workflow';
import NodeIcon from '@/components/NodeIcon.vue'; import NodeIcon from '@/components/NodeIcon.vue';
import TitledList from '@/components/TitledList.vue'; import TitledList from '@/components/TitledList.vue';
@ -193,7 +193,6 @@ import mixins from 'vue-typed-mixins';
import { get } from 'lodash-es'; import { get } from 'lodash-es';
import { getStyleTokenValue, getTriggerNodeServiceName } from '@/utils'; import { getStyleTokenValue, getTriggerNodeServiceName } from '@/utils';
import type { IExecutionsSummary, INodeUi, XYPosition } from '@/Interface'; import type { IExecutionsSummary, INodeUi, XYPosition } from '@/Interface';
import { INodeUpdatePropertiesInformation } from '@/Interface';
import { debounceHelper } from '@/mixins/debounce'; import { debounceHelper } from '@/mixins/debounce';
import { mapStores } from 'pinia'; import { mapStores } from 'pinia';
import { useUIStore } from '@/stores/ui'; import { useUIStore } from '@/stores/ui';

View file

@ -78,9 +78,8 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { reactive, toRefs, getCurrentInstance, computed, onUnmounted, ref } from 'vue'; import { reactive, toRefs, getCurrentInstance, computed, onUnmounted } from 'vue';
import type { INodeTypeDescription, INodeActionTypeDescription } from 'n8n-workflow'; import type { INodeTypeDescription, INodeActionTypeDescription } from 'n8n-workflow';
import { INodeTypeNameVersion } from 'n8n-workflow';
import type { import type {
INodeCreateElement, INodeCreateElement,
NodeCreateElement, NodeCreateElement,
@ -97,7 +96,6 @@ import {
STICKY_NODE_TYPE, STICKY_NODE_TYPE,
REGULAR_NODE_FILTER, REGULAR_NODE_FILTER,
TRIGGER_NODE_FILTER, TRIGGER_NODE_FILTER,
N8N_NODE_TYPE,
} from '@/constants'; } from '@/constants';
import CategorizedItems from './CategorizedItems.vue'; import CategorizedItems from './CategorizedItems.vue';
import { useNodeCreatorStore } from '@/stores/nodeCreator'; import { useNodeCreatorStore } from '@/stores/nodeCreator';

View file

@ -172,7 +172,6 @@ import type {
IUpdateInformation, IUpdateInformation,
IUsedCredential, IUsedCredential,
} from '@/Interface'; } from '@/Interface';
import { ICredentialsResponse, IUser } from '@/Interface';
import { import {
COMMUNITY_NODES_INSTALLATION_DOCS_URL, COMMUNITY_NODES_INSTALLATION_DOCS_URL,

View file

@ -100,8 +100,7 @@
<script lang="ts"> <script lang="ts">
import type { IExecutionResponse, INodeUi } from '@/Interface'; import type { IExecutionResponse, INodeUi } from '@/Interface';
import type { INodeTypeDescription, IRunData, IRunExecutionData, ITaskData } from 'n8n-workflow'; import type { INodeTypeDescription, IRunData, IRunExecutionData, ITaskData } from 'n8n-workflow';
import type Vue from 'vue'; import RunData from './RunData.vue';
import RunData, { EnterEditModeArgs } from './RunData.vue';
import RunInfo from './RunInfo.vue'; import RunInfo from './RunInfo.vue';
import { pinData } from '@/mixins/pinData'; import { pinData } from '@/mixins/pinData';
import mixins from 'vue-typed-mixins'; import mixins from 'vue-typed-mixins';

View file

@ -339,7 +339,7 @@ import type {
INodePropertyCollection, INodePropertyCollection,
NodeParameterValueType, NodeParameterValueType,
} from 'n8n-workflow'; } from 'n8n-workflow';
import { NodeHelpers, NodeParameterValue } from 'n8n-workflow'; import { NodeHelpers } from 'n8n-workflow';
import CodeEdit from '@/components/CodeEdit.vue'; import CodeEdit from '@/components/CodeEdit.vue';
import CredentialsSelect from '@/components/CredentialsSelect.vue'; import CredentialsSelect from '@/components/CredentialsSelect.vue';

View file

@ -70,7 +70,6 @@
<script lang="ts"> <script lang="ts">
import type { PropType } from 'vue'; import type { PropType } from 'vue';
import type Vue from 'vue';
import type { IN8nButton, INodeUi, IRunDataDisplayMode, IUpdateInformation } from '@/Interface'; import type { IN8nButton, INodeUi, IRunDataDisplayMode, IUpdateInformation } from '@/Interface';

View file

@ -43,7 +43,6 @@
<script lang="ts"> <script lang="ts">
import type { PropType } from 'vue'; import type { PropType } from 'vue';
import type Vue from 'vue';
import ParameterInput from '@/components/ParameterInput.vue'; import ParameterInput from '@/components/ParameterInput.vue';
import InputHint from './ParameterInputHint.vue'; import InputHint from './ParameterInputHint.vue';
@ -55,7 +54,7 @@ import type {
NodeParameterValue, NodeParameterValue,
NodeParameterValueType, NodeParameterValueType,
} from 'n8n-workflow'; } from 'n8n-workflow';
import { IRunData, isResourceLocatorValue } from 'n8n-workflow'; import { isResourceLocatorValue } from 'n8n-workflow';
import type { INodeUi, IUpdateInformation, TargetItem } from '@/Interface'; import type { INodeUi, IUpdateInformation, TargetItem } from '@/Interface';
import { workflowHelpers } from '@/mixins/workflowHelpers'; import { workflowHelpers } from '@/mixins/workflowHelpers';
import { isValueExpression } from '@/utils'; import { isValueExpression } from '@/utils';

View file

@ -146,16 +146,13 @@ import type {
INodePropertyMode, INodePropertyMode,
NodeParameterValue, NodeParameterValue,
} from 'n8n-workflow'; } from 'n8n-workflow';
import { INodeListSearchResult } from 'n8n-workflow';
import ExpressionParameterInput from '@/components/ExpressionParameterInput.vue'; import ExpressionParameterInput from '@/components/ExpressionParameterInput.vue';
import DraggableTarget from '@/components/DraggableTarget.vue'; import DraggableTarget from '@/components/DraggableTarget.vue';
import ExpressionEdit from '@/components/ExpressionEdit.vue'; import ExpressionEdit from '@/components/ExpressionEdit.vue';
import ParameterIssues from '@/components/ParameterIssues.vue'; import ParameterIssues from '@/components/ParameterIssues.vue';
import ResourceLocatorDropdown from './ResourceLocatorDropdown.vue'; import ResourceLocatorDropdown from './ResourceLocatorDropdown.vue';
import type { PropType } from 'vue'; import type { PropType } from 'vue';
import type Vue from 'vue';
import type { IResourceLocatorReqParams, IResourceLocatorResultExpanded } from '@/Interface'; import type { IResourceLocatorReqParams, IResourceLocatorResultExpanded } from '@/Interface';
import { INodeUi } from '@/Interface';
import { debounceHelper } from '@/mixins/debounce'; import { debounceHelper } from '@/mixins/debounce';
import stringify from 'fast-json-stable-stringify'; import stringify from 'fast-json-stable-stringify';
import { workflowHelpers } from '@/mixins/workflowHelpers'; import { workflowHelpers } from '@/mixins/workflowHelpers';

View file

@ -165,7 +165,6 @@
import type { INodeUi, ITableData, NDVState } from '@/Interface'; import type { INodeUi, ITableData, NDVState } from '@/Interface';
import { getPairedItemId } from '@/utils'; import { getPairedItemId } from '@/utils';
import type { PropType } from 'vue'; import type { PropType } from 'vue';
import type Vue from 'vue';
import mixins from 'vue-typed-mixins'; import mixins from 'vue-typed-mixins';
import type { GenericValue, IDataObject, INodeExecutionData } from 'n8n-workflow'; import type { GenericValue, IDataObject, INodeExecutionData } from 'n8n-workflow';
import Draggable from './Draggable.vue'; import Draggable from './Draggable.vue';

View file

@ -52,7 +52,6 @@ import { EnterpriseEditionFeature } from '@/constants';
import { showMessage } from '@/mixins/showMessage'; import { showMessage } from '@/mixins/showMessage';
import { useLogStreamingStore } from '../../stores/logStreamingStore'; import { useLogStreamingStore } from '../../stores/logStreamingStore';
import type { PropType } from 'vue'; import type { PropType } from 'vue';
import Vue from 'vue';
import { mapStores } from 'pinia'; import { mapStores } from 'pinia';
import type { MessageEventBusDestinationOptions } from 'n8n-workflow'; import type { MessageEventBusDestinationOptions } from 'n8n-workflow';
import { deepCopy, defaultMessageEventBusDestinationOptions } from 'n8n-workflow'; import { deepCopy, defaultMessageEventBusDestinationOptions } from 'n8n-workflow';

View file

@ -63,7 +63,7 @@ import { externalHooks } from '@/mixins/externalHooks';
import { nodeBase } from '@/mixins/nodeBase'; import { nodeBase } from '@/mixins/nodeBase';
import { nodeHelpers } from '@/mixins/nodeHelpers'; import { nodeHelpers } from '@/mixins/nodeHelpers';
import { workflowHelpers } from '@/mixins/workflowHelpers'; import { workflowHelpers } from '@/mixins/workflowHelpers';
import { getStyleTokenValue, isNumber, isString } from '@/utils'; import { isNumber, isString } from '@/utils';
import type { import type {
INodeUi, INodeUi,
INodeUpdatePropertiesInformation, INodeUpdatePropertiesInformation,
@ -72,7 +72,6 @@ import type {
} from '@/Interface'; } from '@/Interface';
import type { INodeTypeDescription } from 'n8n-workflow'; import type { INodeTypeDescription } from 'n8n-workflow';
import { IDataObject } from 'n8n-workflow';
import { QUICKSTART_NOTE_NAME } from '@/constants'; import { QUICKSTART_NOTE_NAME } from '@/constants';
import { mapStores } from 'pinia'; import { mapStores } from 'pinia';
import { useUIStore } from '@/stores/ui'; import { useUIStore } from '@/stores/ui';

View file

@ -28,7 +28,6 @@
</template> </template>
<script lang="ts"> <script lang="ts">
import Vue from 'vue';
import mixins from 'vue-typed-mixins'; import mixins from 'vue-typed-mixins';
import type { ITag } from '@/Interface'; import type { ITag } from '@/Interface';

View file

@ -107,7 +107,6 @@ import CopyInput from './CopyInput.vue';
import NodeIcon from './NodeIcon.vue'; import NodeIcon from './NodeIcon.vue';
import { copyPaste } from '@/mixins/copyPaste'; import { copyPaste } from '@/mixins/copyPaste';
import { showMessage } from '@/mixins/showMessage'; import { showMessage } from '@/mixins/showMessage';
import type Vue from 'vue';
import { mapStores } from 'pinia'; import { mapStores } from 'pinia';
import { useUIStore } from '@/stores/ui'; import { useUIStore } from '@/stores/ui';
import { useWorkflowsStore } from '@/stores/workflows'; import { useWorkflowsStore } from '@/stores/workflows';

View file

@ -41,7 +41,6 @@ import { WorkflowDataProxy } from 'n8n-workflow';
import VariableSelectorItem from '@/components/VariableSelectorItem.vue'; import VariableSelectorItem from '@/components/VariableSelectorItem.vue';
import type { INodeUi, IVariableItemSelected, IVariableSelectorOption } from '@/Interface'; import type { INodeUi, IVariableItemSelected, IVariableSelectorOption } from '@/Interface';
import { IExecutionResponse } from '@/Interface';
import { workflowHelpers } from '@/mixins/workflowHelpers'; import { workflowHelpers } from '@/mixins/workflowHelpers';

View file

@ -2,7 +2,6 @@
import type { ComponentPublicInstance, PropType } from 'vue'; import type { ComponentPublicInstance, PropType } from 'vue';
import { computed, nextTick, onMounted, ref, watch } from 'vue'; import { computed, nextTick, onMounted, ref, watch } from 'vue';
import type { EnvironmentVariable, Rule, RuleGroup } from '@/Interface'; import type { EnvironmentVariable, Rule, RuleGroup } from '@/Interface';
import { IValidator, Validatable } from '@/Interface';
import { useI18n, useToast, useCopyToClipboard } from '@/composables'; import { useI18n, useToast, useCopyToClipboard } from '@/composables';
import { EnterpriseEditionFeature } from '@/constants'; import { EnterpriseEditionFeature } from '@/constants';
import { useSettingsStore, useUsersStore } from '@/stores'; import { useSettingsStore, useUsersStore } from '@/stores';

View file

@ -75,7 +75,6 @@ import type { IPermissions } from '@/permissions';
import { getWorkflowPermissions } from '@/permissions'; import { getWorkflowPermissions } from '@/permissions';
import dateformat from 'dateformat'; import dateformat from 'dateformat';
import WorkflowActivator from '@/components/WorkflowActivator.vue'; import WorkflowActivator from '@/components/WorkflowActivator.vue';
import type Vue from 'vue';
import { mapStores } from 'pinia'; import { mapStores } from 'pinia';
import { useUIStore } from '@/stores/ui'; import { useUIStore } from '@/stores/ui';
import { useSettingsStore } from '@/stores/settings'; import { useSettingsStore } from '@/stores/settings';

View file

@ -337,7 +337,6 @@ import type {
IWorkflowSettings, IWorkflowSettings,
IWorkflowShortResponse, IWorkflowShortResponse,
} from '@/Interface'; } from '@/Interface';
import { WorkflowCallerPolicyDefaultOption } from '@/Interface';
import Modal from './Modal.vue'; import Modal from './Modal.vue';
import { import {
EnterpriseEditionFeature, EnterpriseEditionFeature,

View file

@ -131,7 +131,6 @@ import {
WORKFLOW_SHARE_MODAL_KEY, WORKFLOW_SHARE_MODAL_KEY,
} from '../constants'; } from '../constants';
import type { IUser, IWorkflowDb } from '@/Interface'; import type { IUser, IWorkflowDb } from '@/Interface';
import { UIState } from '@/Interface';
import type { IPermissions } from '@/permissions'; import type { IPermissions } from '@/permissions';
import { getWorkflowPermissions } from '@/permissions'; import { getWorkflowPermissions } from '@/permissions';
import mixins from 'vue-typed-mixins'; import mixins from 'vue-typed-mixins';

View file

@ -1,5 +1,5 @@
import { vi, describe, it, expect } from 'vitest'; import { vi, describe, it, expect } from 'vitest';
import Vue, { defineComponent } from 'vue'; import Vue from 'vue';
import { PiniaVuePlugin } from 'pinia'; import { PiniaVuePlugin } from 'pinia';
import { createTestingPinia } from '@pinia/testing'; import { createTestingPinia } from '@pinia/testing';
import { render } from '@testing-library/vue'; import { render } from '@testing-library/vue';

View file

@ -2,7 +2,7 @@ import { PiniaVuePlugin } from 'pinia';
import { createLocalVue, mount } from '@vue/test-utils'; import { createLocalVue, mount } from '@vue/test-utils';
import PersonalizationModal from '@/components/PersonalizationModal.vue'; import PersonalizationModal from '@/components/PersonalizationModal.vue';
import { createTestingPinia } from '@pinia/testing'; import { createTestingPinia } from '@pinia/testing';
import { PERSONALIZATION_MODAL_KEY, ROLE_SALES_AND_MARKETING } from '@/constants'; import { PERSONALIZATION_MODAL_KEY } from '@/constants';
import { retry } from '@/__tests__/utils'; import { retry } from '@/__tests__/utils';
describe('PersonalizationModal.vue', () => { describe('PersonalizationModal.vue', () => {

View file

@ -190,7 +190,6 @@ import PageViewLayoutList from '@/components/layouts/PageViewLayoutList.vue';
import { EnterpriseEditionFeature } from '@/constants'; import { EnterpriseEditionFeature } from '@/constants';
import TemplateCard from '@/components/TemplateCard.vue'; import TemplateCard from '@/components/TemplateCard.vue';
import type { PropType } from 'vue'; import type { PropType } from 'vue';
import type Vue from 'vue';
import { debounceHelper } from '@/mixins/debounce'; import { debounceHelper } from '@/mixins/debounce';
import ResourceOwnershipSelect from '@/components/forms/ResourceOwnershipSelect.ee.vue'; import ResourceOwnershipSelect from '@/components/forms/ResourceOwnershipSelect.ee.vue';
import ResourceFiltersDropdown from '@/components/forms/ResourceFiltersDropdown.vue'; import ResourceFiltersDropdown from '@/components/forms/ResourceFiltersDropdown.vue';

View file

@ -10,7 +10,7 @@ import {
SIDEBAR_WIDTH, SIDEBAR_WIDTH,
SIDEBAR_WIDTH_EXPANDED, SIDEBAR_WIDTH_EXPANDED,
} from '@/utils/nodeViewUtils'; } from '@/utils/nodeViewUtils';
import { ref, watchEffect, onMounted, computed, onUnmounted } from 'vue'; import { ref, onMounted, computed } from 'vue';
import { useCanvasStore } from '@/stores/canvas'; import { useCanvasStore } from '@/stores/canvas';
interface ExtendedHTMLSpanElement extends HTMLSpanElement { interface ExtendedHTMLSpanElement extends HTMLSpanElement {

View file

@ -5,7 +5,7 @@ import { BulkCommand } from '@/models/history';
import { useHistoryStore } from '@/stores/history'; import { useHistoryStore } from '@/stores/history';
import { useUIStore } from '@/stores/ui'; import { useUIStore } from '@/stores/ui';
import { ref, onMounted, onUnmounted, Ref, nextTick, getCurrentInstance } from 'vue'; import { ref, onMounted, onUnmounted, nextTick, getCurrentInstance } from 'vue';
import { Command } from '@/models/history'; import { Command } from '@/models/history';
import { useDebounceHelper } from './useDebounce'; import { useDebounceHelper } from './useDebounce';
import useDeviceSupportHelpers from './useDeviceSupport'; import useDeviceSupportHelpers from './useDeviceSupport';

View file

@ -1,10 +1,6 @@
import { EnableNodeToggleCommand } from './../models/history'; import { EnableNodeToggleCommand } from './../models/history';
import { useHistoryStore } from '@/stores/history'; import { useHistoryStore } from '@/stores/history';
import { import { PLACEHOLDER_FILLED_AT_EXECUTION_TIME, CUSTOM_API_CALL_KEY } from '@/constants';
PLACEHOLDER_FILLED_AT_EXECUTION_TIME,
CUSTOM_API_CALL_KEY,
EnterpriseEditionFeature,
} from '@/constants';
import type { import type {
IBinaryKeyData, IBinaryKeyData,

View file

@ -1,8 +1,6 @@
import { import {
ERROR_TRIGGER_NODE_TYPE,
PLACEHOLDER_FILLED_AT_EXECUTION_TIME, PLACEHOLDER_FILLED_AT_EXECUTION_TIME,
PLACEHOLDER_EMPTY_WORKFLOW_ID, PLACEHOLDER_EMPTY_WORKFLOW_ID,
START_NODE_TYPE,
WEBHOOK_NODE_TYPE, WEBHOOK_NODE_TYPE,
VIEWS, VIEWS,
EnterpriseEditionFeature, EnterpriseEditionFeature,
@ -27,7 +25,7 @@ import type {
INodeConnection, INodeConnection,
IWebhookDescription, IWebhookDescription,
} from 'n8n-workflow'; } from 'n8n-workflow';
import { INodeTypeData, IPinData, NodeHelpers, deepCopy } from 'n8n-workflow'; import { NodeHelpers } from 'n8n-workflow';
import type { import type {
INodeTypesMaxCount, INodeTypesMaxCount,

View file

@ -5,7 +5,6 @@
*/ */
import type { IUser, ICredentialsResponse, IWorkflowDb } from '@/Interface'; import type { IUser, ICredentialsResponse, IWorkflowDb } from '@/Interface';
import { IRootState, EnvironmentVariable } from '@/Interface';
import { EnterpriseEditionFeature, PLACEHOLDER_EMPTY_WORKFLOW_ID } from '@/constants'; import { EnterpriseEditionFeature, PLACEHOLDER_EMPTY_WORKFLOW_ID } from '@/constants';
import { useSettingsStore } from './stores/settings'; import { useSettingsStore } from './stores/settings';

View file

@ -1,5 +1,5 @@
import type { PointXY } from '@jsplumb/util'; import type { PointXY } from '@jsplumb/util';
import { log, extend, quadrant } from '@jsplumb/util'; import { quadrant } from '@jsplumb/util';
import type { import type {
Connection, Connection,

View file

@ -2,7 +2,6 @@ import Vue from 'vue';
import axios from 'axios'; import axios from 'axios';
import VueI18n from 'vue-i18n'; import VueI18n from 'vue-i18n';
import type { INodeTranslationHeaders } from '@/Interface'; import type { INodeTranslationHeaders } from '@/Interface';
import { IRootState } from '@/Interface';
import { import {
deriveMiddleKey, deriveMiddleKey,
isNestedInCollectionLike, isNestedInCollectionLike,

View file

@ -1,10 +1,8 @@
import { defineStore } from 'pinia'; import { defineStore } from 'pinia';
import { useSettingsStore } from '@/stores/settings';
import { computed, ref } from 'vue'; import { computed, ref } from 'vue';
import type { EnvironmentVariable } from '@/Interface'; import type { EnvironmentVariable } from '@/Interface';
import * as environmentsApi from '@/api/environments.ee'; import * as environmentsApi from '@/api/environments.ee';
import { useRootStore } from '@/stores/n8nRootStore'; import { useRootStore } from '@/stores/n8nRootStore';
import { createVariable } from '@/api/environments.ee';
export const useEnvironmentsStore = defineStore('environments', () => { export const useEnvironmentsStore = defineStore('environments', () => {
const rootStore = useRootStore(); const rootStore = useRootStore();

View file

@ -1,6 +1,5 @@
import { AddConnectionCommand, COMMANDS, RemoveConnectionCommand } from './../models/history';
import type { Command, Undoable } from '@/models/history'; import type { Command, Undoable } from '@/models/history';
import { BulkCommand, MoveNodeCommand } from '@/models/history'; import { BulkCommand } from '@/models/history';
import { STORES } from '@/constants'; import { STORES } from '@/constants';
import type { HistoryState } from '@/Interface'; import type { HistoryState } from '@/Interface';
import { defineStore } from 'pinia'; import { defineStore } from 'pinia';

View file

@ -13,7 +13,6 @@ import { deepCopy } from 'n8n-workflow';
import { import {
STORES, STORES,
MANUAL_TRIGGER_NODE_TYPE, MANUAL_TRIGGER_NODE_TYPE,
CORE_NODES_CATEGORY,
TRIGGER_NODE_FILTER, TRIGGER_NODE_FILTER,
STICKY_NODE_TYPE, STICKY_NODE_TYPE,
NODE_CREATOR_OPEN_SOURCES, NODE_CREATOR_OPEN_SOURCES,

View file

@ -1,4 +1,4 @@
import { computed, reactive, ref } from 'vue'; import { computed, reactive } from 'vue';
import { defineStore } from 'pinia'; import { defineStore } from 'pinia';
import { EnterpriseEditionFeature } from '@/constants'; import { EnterpriseEditionFeature } from '@/constants';
import { useRootStore } from '@/stores/n8nRootStore'; import { useRootStore } from '@/stores/n8nRootStore';

View file

@ -20,12 +20,7 @@ import {
validatePasswordToken, validatePasswordToken,
validateSignupToken, validateSignupToken,
} from '@/api/users'; } from '@/api/users';
import { import { PERSONALIZATION_MODAL_KEY, USER_ACTIVATION_SURVEY_MODAL, STORES } from '@/constants';
PERSONALIZATION_MODAL_KEY,
USER_ACTIVATION_SURVEY_MODAL,
STORES,
LOCAL_STORAGE_ACTIVE_MODAL,
} from '@/constants';
import type { import type {
ICredentialsResponse, ICredentialsResponse,
IInviteResponse, IInviteResponse,

View file

@ -1,4 +1,4 @@
import { MAIN_AUTH_FIELD_NAME, NODE_RESOURCE_FIELD_NAME } from './../constants'; import { MAIN_AUTH_FIELD_NAME } from './../constants';
import { useWorkflowsStore } from '@/stores/workflows'; import { useWorkflowsStore } from '@/stores/workflows';
import { useNodeTypesStore } from './../stores/nodeTypes'; import { useNodeTypesStore } from './../stores/nodeTypes';
import type { INodeCredentialDescription } from './../../../workflow/src/Interfaces'; import type { INodeCredentialDescription } from './../../../workflow/src/Interfaces';
@ -38,7 +38,6 @@ import type {
import { isResourceLocatorValue, isJsonKeyObject } from '@/utils'; import { isResourceLocatorValue, isJsonKeyObject } from '@/utils';
import { useCredentialsStore } from '@/stores/credentials'; import { useCredentialsStore } from '@/stores/credentials';
import { i18n as locale } from '@/plugins/i18n'; import { i18n as locale } from '@/plugins/i18n';
import { useSettingsStore } from '@/stores/settings';
/* /*
Constants and utility functions mainly used to get information about Constants and utility functions mainly used to get information about

View file

@ -1,10 +1,9 @@
import { getStyleTokenValue } from '@/utils/htmlUtils'; import { getStyleTokenValue } from '@/utils/htmlUtils';
import { isNumber } from '@/utils'; import { isNumber } from '@/utils';
import { NODE_OUTPUT_DEFAULT_KEY, STICKY_NODE_TYPE, QUICKSTART_NOTE_NAME } from '@/constants'; import { NODE_OUTPUT_DEFAULT_KEY, STICKY_NODE_TYPE } from '@/constants';
import type { EndpointStyle, IBounds, INodeUi, XYPosition } from '@/Interface'; import type { EndpointStyle, IBounds, INodeUi, XYPosition } from '@/Interface';
import type { ArrayAnchorSpec, ConnectorSpec, OverlaySpec, PaintStyle } from '@jsplumb/common'; import type { ArrayAnchorSpec, ConnectorSpec, OverlaySpec, PaintStyle } from '@jsplumb/common';
import type { Endpoint, Connection } from '@jsplumb/core'; import type { Endpoint, Connection } from '@jsplumb/core';
import { ConnectionEstablishedParams } from '@jsplumb/core';
import { N8nConnector } from '@/plugins/connectors/N8nCustomConnector'; import { N8nConnector } from '@/plugins/connectors/N8nCustomConnector';
import { closestNumberDivisibleBy } from '@/utils'; import { closestNumberDivisibleBy } from '@/utils';
import type { import type {

View file

@ -4,8 +4,6 @@ import { jsonParse } from 'n8n-workflow';
import type { Schema, Optional, Primitives } from '@/Interface'; import type { Schema, Optional, Primitives } from '@/Interface';
import { isObj } from '@/utils/typeGuards'; import { isObj } from '@/utils/typeGuards';
import { generatePath } from '@/utils/mappingUtils'; import { generatePath } from '@/utils/mappingUtils';
import { DateTime } from 'luxon';
import { useWorkflowsStore } from '@/stores/workflows';
/* /*
Constants and utility functions than can be used to manipulate different data types and objects Constants and utility functions than can be used to manipulate different data types and objects

View file

@ -46,7 +46,6 @@
<script lang="ts"> <script lang="ts">
import { showMessage } from '@/mixins/showMessage'; import { showMessage } from '@/mixins/showMessage';
import type { ICredentialsResponse, ICredentialTypeMap } from '@/Interface'; import type { ICredentialsResponse, ICredentialTypeMap } from '@/Interface';
import { IUser } from '@/Interface';
import mixins from 'vue-typed-mixins'; import mixins from 'vue-typed-mixins';
import SettingsView from './SettingsView.vue'; import SettingsView from './SettingsView.vue';

View file

@ -198,7 +198,6 @@ import {
WEBHOOK_NODE_TYPE, WEBHOOK_NODE_TYPE,
TRIGGER_NODE_FILTER, TRIGGER_NODE_FILTER,
EnterpriseEditionFeature, EnterpriseEditionFeature,
ASSUMPTION_EXPERIMENT,
REGULAR_NODE_FILTER, REGULAR_NODE_FILTER,
MANUAL_TRIGGER_NODE_TYPE, MANUAL_TRIGGER_NODE_TYPE,
NODE_CREATOR_OPEN_SOURCES, NODE_CREATOR_OPEN_SOURCES,

View file

@ -67,7 +67,6 @@ import { useCommunityNodesStore } from '@/stores/communityNodes';
import { useUIStore } from '@/stores/ui'; import { useUIStore } from '@/stores/ui';
import { mapStores } from 'pinia'; import { mapStores } from 'pinia';
import { useSettingsStore } from '@/stores/settings'; import { useSettingsStore } from '@/stores/settings';
import { BaseTextKey } from '@/plugins/i18n';
const PACKAGE_COUNT_THRESHOLD = 31; const PACKAGE_COUNT_THRESHOLD = 31;

View file

@ -59,7 +59,7 @@
<script lang="ts"> <script lang="ts">
import { showMessage } from '@/mixins/showMessage'; import { showMessage } from '@/mixins/showMessage';
import { CHANGE_PASSWORD_MODAL_KEY, SignInType } from '@/constants'; import { CHANGE_PASSWORD_MODAL_KEY } from '@/constants';
import type { IFormInputs, IUser } from '@/Interface'; import type { IFormInputs, IUser } from '@/Interface';
import { useUIStore } from '@/stores/ui'; import { useUIStore } from '@/stores/ui';
import { useUsersStore } from '@/stores/users'; import { useUsersStore } from '@/stores/users';

View file

@ -70,7 +70,6 @@ import { mapStores } from 'pinia';
import { useUIStore } from '@/stores/ui'; import { useUIStore } from '@/stores/ui';
import { useSettingsStore } from '@/stores/settings'; import { useSettingsStore } from '@/stores/settings';
import { useUsersStore } from '@/stores/users'; import { useUsersStore } from '@/stores/users';
import { BaseTextKey } from '@/plugins/i18n';
import { useUsageStore } from '@/stores/usage'; import { useUsageStore } from '@/stores/usage';
import { useSSOStore } from '@/stores/sso'; import { useSSOStore } from '@/stores/sso';

View file

@ -98,7 +98,7 @@ import PageViewLayout from '@/components/layouts/PageViewLayout.vue';
import PageViewLayoutList from '@/components/layouts/PageViewLayoutList.vue'; import PageViewLayoutList from '@/components/layouts/PageViewLayoutList.vue';
import WorkflowCard from '@/components/WorkflowCard.vue'; import WorkflowCard from '@/components/WorkflowCard.vue';
import TemplateCard from '@/components/TemplateCard.vue'; import TemplateCard from '@/components/TemplateCard.vue';
import { EnterpriseEditionFeature, ASSUMPTION_EXPERIMENT, VIEWS } from '@/constants'; import { EnterpriseEditionFeature, VIEWS } from '@/constants';
import { debounceHelper } from '@/mixins/debounce'; import { debounceHelper } from '@/mixins/debounce';
import type Vue from 'vue'; import type Vue from 'vue';
import type { ITag, IUser, IWorkflowDb } from '@/Interface'; import type { ITag, IUser, IWorkflowDb } from '@/Interface';
@ -109,7 +109,6 @@ import { useSettingsStore } from '@/stores/settings';
import { useUsersStore } from '@/stores/users'; import { useUsersStore } from '@/stores/users';
import { useWorkflowsStore } from '@/stores/workflows'; import { useWorkflowsStore } from '@/stores/workflows';
import { useCredentialsStore } from '@/stores/credentials'; import { useCredentialsStore } from '@/stores/credentials';
import { usePostHog } from '@/stores/posthog';
type IResourcesListLayoutInstance = Vue & { sendFiltersTelemetry: (source: string) => void }; type IResourcesListLayoutInstance = Vue & { sendFiltersTelemetry: (source: string) => void };

View file

@ -1,7 +1,6 @@
import { afterAll, beforeAll } from 'vitest'; import { afterAll, beforeAll } from 'vitest';
import { setActivePinia, createPinia } from 'pinia'; import { setActivePinia, createPinia } from 'pinia';
import { setupServer } from '@/__tests__/server'; import { setupServer } from '@/__tests__/server';
import { render } from '@testing-library/vue';
import VariablesView from '@/views/VariablesView.vue'; import VariablesView from '@/views/VariablesView.vue';
import { useSettingsStore, useUsersStore } from '@/stores'; import { useSettingsStore, useUsersStore } from '@/stores';
import { renderComponent } from '@/__tests__/utils'; import { renderComponent } from '@/__tests__/utils';

View file

@ -18,7 +18,6 @@ import {
} from './constants'; } from './constants';
import type { IDataset } from './types'; import type { IDataset } from './types';
import _ from 'lodash';
export class QuickChart implements INodeType { export class QuickChart implements INodeType {
description: INodeTypeDescription = { description: INodeTypeDescription = {
displayName: 'QuickChart', displayName: 'QuickChart',

View file

@ -154,6 +154,9 @@ importers:
eslint-plugin-unicorn: eslint-plugin-unicorn:
specifier: ~46.0 specifier: ~46.0
version: 46.0.0(eslint@8.39.0) version: 46.0.0(eslint@8.39.0)
eslint-plugin-unused-imports:
specifier: ~2.0
version: 2.0.0(@typescript-eslint/eslint-plugin@5.59.0)(eslint@8.39.0)
eslint-plugin-vue: eslint-plugin-vue:
specifier: ~7.17 specifier: ~7.17
version: 7.17.0(eslint@8.39.0) version: 7.17.0(eslint@8.39.0)
@ -945,7 +948,7 @@ importers:
version: 2.8.3 version: 2.8.3
prismjs: prismjs:
specifier: ^1.17.1 specifier: ^1.17.1
version: 1.29.0 version: 1.17.1
stream-browserify: stream-browserify:
specifier: ^3.0.0 specifier: ^3.0.0
version: 3.0.0 version: 3.0.0
@ -1087,7 +1090,7 @@ importers:
version: 4.0.4(@types/node@16.18.12)(sass@1.55.0)(terser@5.16.1) version: 4.0.4(@types/node@16.18.12)(sass@1.55.0)(terser@5.16.1)
vite-plugin-monaco-editor: vite-plugin-monaco-editor:
specifier: ^1.0.10 specifier: ^1.0.10
version: 1.1.0(monaco-editor@0.33.0) version: 1.0.10(monaco-editor@0.33.0)
vitest: vitest:
specifier: ^0.28.5 specifier: ^0.28.5
version: 0.28.5(sass@1.55.0)(terser@5.16.1) version: 0.28.5(sass@1.55.0)(terser@5.16.1)
@ -9370,6 +9373,15 @@ packages:
safe-buffer: 5.2.1 safe-buffer: 5.2.1
dev: false dev: false
/clipboard@2.0.11:
resolution: {integrity: sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==}
dependencies:
good-listener: 1.2.2
select: 1.1.2
tiny-emitter: 2.1.0
dev: false
optional: true
/cliui@3.2.0: /cliui@3.2.0:
resolution: {integrity: sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==} resolution: {integrity: sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==}
dependencies: dependencies:
@ -10528,6 +10540,11 @@ packages:
resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
engines: {node: '>=0.4.0'} engines: {node: '>=0.4.0'}
/delegate@3.2.0:
resolution: {integrity: sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==}
dev: false
optional: true
/delegates@1.0.0: /delegates@1.0.0:
resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==}
@ -11405,6 +11422,21 @@ packages:
strip-indent: 3.0.0 strip-indent: 3.0.0
dev: true dev: true
/eslint-plugin-unused-imports@2.0.0(@typescript-eslint/eslint-plugin@5.59.0)(eslint@8.39.0):
resolution: {integrity: sha512-3APeS/tQlTrFa167ThtP0Zm0vctjr4M44HMpeg1P4bK6wItarumq0Ma82xorMKdFsWpphQBlRPzw/pxiVELX1A==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
'@typescript-eslint/eslint-plugin': ^5.0.0
eslint: ^8.0.0
peerDependenciesMeta:
'@typescript-eslint/eslint-plugin':
optional: true
dependencies:
'@typescript-eslint/eslint-plugin': 5.59.0(patch_hash=tk3n6hvmqwfzrfqe3awfxnqtuy)(@typescript-eslint/parser@5.59.0)(eslint@8.39.0)(typescript@5.0.3)
eslint: 8.39.0
eslint-rule-composer: 0.3.0
dev: true
/eslint-plugin-vue@7.17.0(eslint@8.39.0): /eslint-plugin-vue@7.17.0(eslint@8.39.0):
resolution: {integrity: sha512-Rq5R2QetDCgC+kBFQw1+aJ5B93tQ4xqZvoCUxuIzwTonngNArsdP8ChM8PowIzsJvRtWl4ltGh/bZcN3xhFWSw==} resolution: {integrity: sha512-Rq5R2QetDCgC+kBFQw1+aJ5B93tQ4xqZvoCUxuIzwTonngNArsdP8ChM8PowIzsJvRtWl4ltGh/bZcN3xhFWSw==}
engines: {node: '>=8.10'} engines: {node: '>=8.10'}
@ -11420,6 +11452,11 @@ packages:
- supports-color - supports-color
dev: true dev: true
/eslint-rule-composer@0.3.0:
resolution: {integrity: sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==}
engines: {node: '>=4.0.0'}
dev: true
/eslint-scope@5.1.1: /eslint-scope@5.1.1:
resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
engines: {node: '>=8.0.0'} engines: {node: '>=8.0.0'}
@ -12787,6 +12824,13 @@ packages:
- supports-color - supports-color
dev: false dev: false
/good-listener@1.2.2:
resolution: {integrity: sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==}
dependencies:
delegate: 3.2.0
dev: false
optional: true
/google-timezones-json@1.1.0: /google-timezones-json@1.1.0:
resolution: {integrity: sha512-6BmBx9gJVALV2jsfMks8PwmkWT5ip3+bmMyTgXu4PY+G8nKjHi61yrL7rSXpMYRsIzUXhVKpj+MnjhnwG9nung==} resolution: {integrity: sha512-6BmBx9gJVALV2jsfMks8PwmkWT5ip3+bmMyTgXu4PY+G8nKjHi61yrL7rSXpMYRsIzUXhVKpj+MnjhnwG9nung==}
dev: false dev: false
@ -17768,9 +17812,10 @@ packages:
hasBin: true hasBin: true
dev: false dev: false
/prismjs@1.29.0: /prismjs@1.17.1:
resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} resolution: {integrity: sha512-PrEDJAFdUGbOP6xK/UsfkC5ghJsPJviKgnQOoxaDbBjwc8op68Quupwt1DeAFoG8GImPhiKXAvvsH7wDSLsu1Q==}
engines: {node: '>=6'} optionalDependencies:
clipboard: 2.0.11
dev: false dev: false
/process-nextick-args@2.0.1: /process-nextick-args@2.0.1:
@ -19030,6 +19075,11 @@ packages:
parseley: 0.7.0 parseley: 0.7.0
dev: false dev: false
/select@1.1.2:
resolution: {integrity: sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==}
dev: false
optional: true
/semver-greatest-satisfied-range@1.1.0: /semver-greatest-satisfied-range@1.1.0:
resolution: {integrity: sha512-Ny/iyOzSSa8M5ML46IAx3iXc6tfOsYU2R4AXi2UpHk60Zrgyq6eqPj/xiOfS0rRl/iiQ/rdJkVjw/5cdUyCntQ==} resolution: {integrity: sha512-Ny/iyOzSSa8M5ML46IAx3iXc6tfOsYU2R4AXi2UpHk60Zrgyq6eqPj/xiOfS0rRl/iiQ/rdJkVjw/5cdUyCntQ==}
engines: {node: '>= 0.10'} engines: {node: '>= 0.10'}
@ -20320,6 +20370,11 @@ packages:
resolution: {integrity: sha512-a7wPxPdVlQL7lqvitHGGRsofhdwtkoSXPGATFuSOA2i1ZNQEPLrGnj68vOp2sOJTCFAQVXPeNMX/GctBaO9L2w==} resolution: {integrity: sha512-a7wPxPdVlQL7lqvitHGGRsofhdwtkoSXPGATFuSOA2i1ZNQEPLrGnj68vOp2sOJTCFAQVXPeNMX/GctBaO9L2w==}
dev: false dev: false
/tiny-emitter@2.1.0:
resolution: {integrity: sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==}
dev: false
optional: true
/tiny-glob@0.2.9: /tiny-glob@0.2.9:
resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==}
dependencies: dependencies:
@ -21403,10 +21458,10 @@ packages:
- terser - terser
dev: true dev: true
/vite-plugin-monaco-editor@1.1.0(monaco-editor@0.33.0): /vite-plugin-monaco-editor@1.0.10(monaco-editor@0.33.0):
resolution: {integrity: sha512-IvtUqZotrRoVqwT0PBBDIZPNraya3BxN/bfcNfnxZ5rkJiGcNtO5eAOWWSgT7zullIAEqQwxMU83yL9J5k7gww==} resolution: {integrity: sha512-7yTAFIE0SefjCmfnjrvXOl53wkxeSASc/ZIcB5tZeEK3vAmHhveV8y3f90Vp8b+PYdbUipjqf91mbFbSENkpcw==}
peerDependencies: peerDependencies:
monaco-editor: '>=0.33.0' monaco-editor: 0.29.x
dependencies: dependencies:
monaco-editor: 0.33.0 monaco-editor: 0.33.0
dev: true dev: true