From e90636e31c445ba434541f33c1f94a15dbe811aa Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Tue, 18 Apr 2023 10:34:58 +0200 Subject: [PATCH 01/61] refactor(webhook-custom-actions): allow to declare the activation of webhook custom actions (#670) --- packages/agent/src/agent.ts | 13 +++++- packages/agent/src/types.ts | 3 ++ .../src/utils/forest-schema/generator.ts | 6 ++- .../agent/test/__data__/agent-schema.json | 9 ++++ .../forest-admin-http-driver-options.ts | 1 + packages/agent/test/agent.test.ts | 43 +++++++++++++++---- .../utils/forest-schema/generator.test.ts | 29 ++++++++++++- .../forestadmin-client/src/schema/types.ts | 1 + .../forest-admin-client-with-cache.test.ts | 1 + .../test/schema/index.test.ts | 3 ++ 10 files changed, 97 insertions(+), 12 deletions(-) create mode 100644 packages/agent/test/__data__/agent-schema.json diff --git a/packages/agent/src/agent.ts b/packages/agent/src/agent.ts index 586c936de6..fa84dcb79c 100644 --- a/packages/agent/src/agent.ts +++ b/packages/agent/src/agent.ts @@ -174,7 +174,7 @@ export default class Agent extends FrameworkMounter throw new Error(`Can't load ${schemaPath}. Providing a schema is mandatory in production.`); } } else { - schema = await SchemaGenerator.buildSchema(dataSource); + schema = await SchemaGenerator.buildSchema(dataSource, this.buildSchemaFeatures()); const pretty = stringify(schema, { maxLength: 100 }); await writeFile(schemaPath, pretty, { encoding: 'utf-8' }); @@ -188,4 +188,15 @@ export default class Agent extends FrameworkMounter this.options.logger('Info', message); } + + private buildSchemaFeatures(): Record | null { + if (this.options.experimental?.webhookCustomActions) { + return { + // Versions correspond to the version of the feature + 'webhook-custom-actions': '1.0.0', + }; + } + + return null; + } } diff --git a/packages/agent/src/types.ts b/packages/agent/src/types.ts index 34c4eaa761..c80976caac 100644 --- a/packages/agent/src/types.ts +++ b/packages/agent/src/types.ts @@ -18,6 +18,9 @@ export type AgentOptions = { permissionsCacheDurationInSeconds?: number; skipSchemaUpdate?: boolean; forestAdminClient?: ForestAdminClient; + experimental?: { + webhookCustomActions?: boolean; + }; }; export type AgentOptionsWithDefaults = Readonly>; diff --git a/packages/agent/src/utils/forest-schema/generator.ts b/packages/agent/src/utils/forest-schema/generator.ts index d79d2f4f58..56e822951c 100644 --- a/packages/agent/src/utils/forest-schema/generator.ts +++ b/packages/agent/src/utils/forest-schema/generator.ts @@ -4,7 +4,10 @@ import { ForestSchema } from '@forestadmin/forestadmin-client'; import SchemaGeneratorCollection from './generator-collection'; export default class SchemaGenerator { - static async buildSchema(dataSource: DataSource): Promise { + static async buildSchema( + dataSource: DataSource, + features: Record | null, + ): Promise { const { version } = require('../../../package.json'); // eslint-disable-line @typescript-eslint/no-var-requires,global-require,max-len return { @@ -16,6 +19,7 @@ export default class SchemaGenerator { metadata: { liana: 'forest-nodejs-agent', liana_version: version, + liana_features: features, stack: { engine: 'nodejs', engine_version: process.versions && process.versions.node, diff --git a/packages/agent/test/__data__/agent-schema.json b/packages/agent/test/__data__/agent-schema.json new file mode 100644 index 0000000000..1bd080ada8 --- /dev/null +++ b/packages/agent/test/__data__/agent-schema.json @@ -0,0 +1,9 @@ +{ + "collections": [], + "metadata": { + "liana": "forest-nodejs-agent", + "liana_version": "2.0.0", + "liana_features": null, + "stack": "agent-nodejs" + } +} diff --git a/packages/agent/test/__factories__/forest-admin-http-driver-options.ts b/packages/agent/test/__factories__/forest-admin-http-driver-options.ts index 6a24689371..be9fb94f41 100644 --- a/packages/agent/test/__factories__/forest-admin-http-driver-options.ts +++ b/packages/agent/test/__factories__/forest-admin-http-driver-options.ts @@ -18,4 +18,5 @@ export default Factory.define(() => ({ skipSchemaUpdate: false, typingsMaxDepth: 5, typingsPath: null, + experimental: {}, })); diff --git a/packages/agent/test/agent.test.ts b/packages/agent/test/agent.test.ts index ec04219a9f..a07e222a65 100644 --- a/packages/agent/test/agent.test.ts +++ b/packages/agent/test/agent.test.ts @@ -1,6 +1,8 @@ /* eslint-disable max-classes-per-file */ /* eslint-disable @typescript-eslint/no-explicit-any */ +import { readFile } from 'fs/promises'; + import * as factories from './__factories__'; import Agent from '../src/agent'; @@ -98,6 +100,35 @@ describe('Agent', () => { metadata: { liana: 'forest-nodejs-agent', liana_version: expect.stringMatching(/\d+\.\d+\.\d+.*/), + liana_features: null, + stack: expect.anything(), + }, + }); + }); + + test('that should upload the schema with experimental features', async () => { + const agent = new Agent({ + ...options, + experimental: { + webhookCustomActions: true, + }, + }); + await agent.start(); + + expect(mockSetupRoute).toHaveBeenCalledTimes(1); + expect(mockBootstrap).toHaveBeenCalledTimes(1); + expect(mockMakeRoutes).toHaveBeenCalledTimes(1); + expect(mockGetDataSource).toHaveBeenCalledTimes(1); + expect(mockUpdateTypesOnFileSystem).toHaveBeenCalledTimes(1); + + expect(mockPostSchema).toHaveBeenCalledWith({ + collections: [], + metadata: { + liana: 'forest-nodejs-agent', + liana_version: expect.stringMatching(/\d+\.\d+\.\d+.*/), + liana_features: { + 'webhook-custom-actions': '1.0.0', + }, stack: expect.anything(), }, }); @@ -109,6 +140,7 @@ describe('Agent', () => { isProduction: true, typingsPath: '/tmp/test_typings.ts', forestAdminClient: factories.forestAdminClient.build({ postSchema: mockPostSchema }), + schemaPath: `${__dirname}/__data__/agent-schema.json`, }); test('start should throw if the schema does not exists', async () => { @@ -132,14 +164,9 @@ describe('Agent', () => { expect(mockGetDataSource).toHaveBeenCalledTimes(1); expect(mockUpdateTypesOnFileSystem).not.toHaveBeenCalled(); - expect(mockPostSchema).toHaveBeenCalledWith({ - collections: [], - metadata: { - liana: 'forest-nodejs-agent', - liana_version: expect.stringMatching(/\d+\.\d+\.\d+.*/), - stack: expect.anything(), - }, - }); + const schemaContent = JSON.parse(await readFile(options.schemaPath, 'utf8')); + + expect(mockPostSchema).toHaveBeenCalledWith(schemaContent); }); test('start should not update schema when specified', async () => { diff --git a/packages/agent/test/utils/forest-schema/generator.test.ts b/packages/agent/test/utils/forest-schema/generator.test.ts index 3554d8a342..40c145858d 100644 --- a/packages/agent/test/utils/forest-schema/generator.test.ts +++ b/packages/agent/test/utils/forest-schema/generator.test.ts @@ -6,13 +6,14 @@ describe('SchemaGenerator', () => { const dataSource = factories.dataSource.buildWithCollection( factories.collection.build({ name: 'books' }), ); - const schema = await SchemaGenerator.buildSchema(dataSource); + const schema = await SchemaGenerator.buildSchema(dataSource, null); expect(schema).toStrictEqual({ collections: [expect.objectContaining({ name: 'books' })], metadata: { liana: 'forest-nodejs-agent', liana_version: expect.any(String), + liana_features: null, stack: { engine: 'nodejs', engine_version: expect.any(String), @@ -28,8 +29,32 @@ describe('SchemaGenerator', () => { factories.collection.build({ name: 'b' }), factories.collection.build({ name: 'a' }), ]); - const schema = await SchemaGenerator.buildSchema(dataSource); + const schema = await SchemaGenerator.buildSchema(dataSource, null); expect(schema.collections.map(c => c.name)).toStrictEqual(['a', 'b', 'B', 'ba']); }); + + test('it should serialize features', async () => { + const dataSource = factories.dataSource.buildWithCollection( + factories.collection.build({ name: 'books' }), + ); + const schema = await SchemaGenerator.buildSchema(dataSource, { + 'webhook-custom-actions': '1.0.0', + }); + + expect(schema).toStrictEqual({ + collections: [expect.objectContaining({ name: 'books' })], + metadata: { + liana: 'forest-nodejs-agent', + liana_version: expect.any(String), + liana_features: { + 'webhook-custom-actions': '1.0.0', + }, + stack: { + engine: 'nodejs', + engine_version: expect.any(String), + }, + }, + }); + }); }); diff --git a/packages/forestadmin-client/src/schema/types.ts b/packages/forestadmin-client/src/schema/types.ts index 01a9c818df..25f6d02240 100644 --- a/packages/forestadmin-client/src/schema/types.ts +++ b/packages/forestadmin-client/src/schema/types.ts @@ -5,6 +5,7 @@ export type ForestSchema = { metadata: { liana: string; liana_version: string; + liana_features: Record | null; stack: { engine: string; engine_version: string; diff --git a/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts b/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts index ec78213e2d..27c34db9a6 100644 --- a/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts +++ b/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts @@ -55,6 +55,7 @@ describe('ForestAdminClientWithCache', () => { metadata: { liana: 'forest-nodejs-agent', liana_version: '1.0.0', + liana_features: null, stack: { engine: 'nodejs', engine_version: '16.0.0' }, }, }); diff --git a/packages/forestadmin-client/test/schema/index.test.ts b/packages/forestadmin-client/test/schema/index.test.ts index 2b0c898bae..4c950aa4ad 100644 --- a/packages/forestadmin-client/test/schema/index.test.ts +++ b/packages/forestadmin-client/test/schema/index.test.ts @@ -29,6 +29,7 @@ describe('SchemaService', () => { metadata: { liana: 'forest-nodejs-agent', liana_version: '1.0.0', + liana_features: null, stack: { engine: 'nodejs', engine_version: '16.0.0' }, }, }); @@ -55,6 +56,7 @@ describe('SchemaService', () => { meta: { liana: 'forest-nodejs-agent', liana_version: '1.0.0', + liana_features: null, stack: { engine: 'nodejs', engine_version: '16.0.0' }, schemaFileHash: expect.any(String), }, @@ -81,6 +83,7 @@ describe('SchemaService', () => { metadata: { liana: 'forest-nodejs-agent', liana_version: '1.0.0', + liana_features: null, stack: { engine: 'nodejs', engine_version: '16.0.0' }, }, }); From 762969922c98ad4b15ee2407d5789ab939059020 Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Thu, 20 Apr 2023 08:57:21 +0200 Subject: [PATCH 02/61] feat(webhook-custom-actions): use webhook nocode smart actions configured in the frontend (#671) --- packages/agent/src/agent.ts | 15 +- .../action-customization.ts | 47 +++++ .../model-customizations/execute-webhook.ts | 52 +++++ .../__factories__/datasource-customizer.ts | 22 ++ .../test/__factories__/forest-admin-client.ts | 3 + .../action-customization.ts | 18 ++ packages/agent/test/agent.test.ts | 93 ++++++--- .../action-customization.test.ts | 166 +++++++++++++++ .../execute-webhook.test.ts | 196 ++++++++++++++++++ .../context/relaxed-wrappers/collection.ts | 5 + .../test/context/wrapper.test.ts | 6 + .../src/build-application-services.ts | 4 + .../src/forest-admin-client-with-cache.ts | 2 + packages/forestadmin-client/src/index.ts | 4 + .../model-customization-from-api.ts | 46 ++++ .../src/model-customizations/types.ts | 42 ++++ packages/forestadmin-client/src/types.ts | 2 + .../test/__factories__/forest-admin-client.ts | 8 + .../test/__factories__/index.ts | 1 + .../model-customization-from-api.ts | 18 ++ .../forest-admin-client-with-cache.test.ts | 7 + .../model-customization-from-api.test.ts | 93 +++++++++ 22 files changed, 818 insertions(+), 32 deletions(-) create mode 100644 packages/agent/src/services/model-customizations/action-customization.ts create mode 100644 packages/agent/src/services/model-customizations/execute-webhook.ts create mode 100644 packages/agent/test/__factories__/datasource-customizer.ts create mode 100644 packages/agent/test/__factories__/model-customizations/action-customization.ts create mode 100644 packages/agent/test/services/model-customizations/action-customization.test.ts create mode 100644 packages/agent/test/services/model-customizations/execute-webhook.test.ts create mode 100644 packages/forestadmin-client/src/model-customizations/model-customization-from-api.ts create mode 100644 packages/forestadmin-client/src/model-customizations/types.ts create mode 100644 packages/forestadmin-client/test/__factories__/model-customizations/model-customization-from-api.ts create mode 100644 packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts diff --git a/packages/agent/src/agent.ts b/packages/agent/src/agent.ts index fa84dcb79c..4eb6c43444 100644 --- a/packages/agent/src/agent.ts +++ b/packages/agent/src/agent.ts @@ -19,6 +19,7 @@ import bodyParser from 'koa-bodyparser'; import FrameworkMounter from './framework-mounter'; import makeRoutes from './routes'; import makeServices from './services'; +import ActionCustomizationService from './services/model-customizations/action-customization'; import { AgentOptions, AgentOptionsWithDefaults } from './types'; import SchemaGenerator from './utils/forest-schema/generator'; import OptionsValidator from './utils/options-validator'; @@ -36,6 +37,8 @@ import OptionsValidator from './utils/options-validator'; export default class Agent extends FrameworkMounter { private options: AgentOptionsWithDefaults; private customizer: DataSourceCustomizer; + private nocodeCustomizer: DataSourceCustomizer; + private actionCustomizationService: ActionCustomizationService; /** * Create a new Agent Builder. @@ -59,6 +62,9 @@ export default class Agent extends FrameworkMounter this.options = allOptions; this.customizer = new DataSourceCustomizer(); + this.nocodeCustomizer = new DataSourceCustomizer(); + this.nocodeCustomizer.addDataSource(this.customizer.getFactory()); + this.actionCustomizationService = new ActionCustomizationService(allOptions); } /** @@ -67,7 +73,12 @@ export default class Agent extends FrameworkMounter override async start(): Promise { const { isProduction, logger, skipSchemaUpdate, typingsPath, typingsMaxDepth } = this.options; - const dataSource = await this.customizer.getDataSource(logger); + const dataSource = await this.nocodeCustomizer.getDataSource(logger); + + if (this.options.experimental?.webhookCustomActions) { + await this.actionCustomizationService.addWebhookActions(this.nocodeCustomizer); + } + const [router] = await Promise.all([ this.getRouter(dataSource), !skipSchemaUpdate ? this.sendSchema(dataSource) : Promise.resolve(), @@ -193,7 +204,7 @@ export default class Agent extends FrameworkMounter if (this.options.experimental?.webhookCustomActions) { return { // Versions correspond to the version of the feature - 'webhook-custom-actions': '1.0.0', + 'webhook-custom-actions': ActionCustomizationService.VERSION, }; } diff --git a/packages/agent/src/services/model-customizations/action-customization.ts b/packages/agent/src/services/model-customizations/action-customization.ts new file mode 100644 index 0000000000..2ab9b24e87 --- /dev/null +++ b/packages/agent/src/services/model-customizations/action-customization.ts @@ -0,0 +1,47 @@ +import { DataSourceCustomizer, TSchema } from '@forestadmin/datasource-customizer'; +import { + ActionConfiguration, + ActionType, + ForestAdminClient, + ModelCustomization, + ModelCustomizationType, + WebhookActionConfiguration, +} from '@forestadmin/forestadmin-client'; + +import executeWebhook from './execute-webhook'; +import { AgentOptionsWithDefaults } from '../../types'; + +export default class ActionCustomizationService { + public static VERSION = '1.0.0'; + + private readonly client: ForestAdminClient; + + public constructor(agentOptions: AgentOptionsWithDefaults) { + this.client = agentOptions.forestAdminClient; + } + + public async addWebhookActions(customizer: DataSourceCustomizer) { + const actions = await this.getActions('webhook'); + + actions.forEach(action => { + const collection = customizer.getCollection(action.modelName as Extract); + + collection.addAction(action.name, { + scope: action.configuration.scope, + execute: context => executeWebhook(action, context), + }); + }); + } + + private async getActions( + type: ActionType, + ): Promise[]> { + const configuration = await this.client.modelCustomizationService.getConfiguration(); + + return configuration.filter( + customization => + customization.type === ModelCustomizationType.action && + (customization as ModelCustomization).configuration.type === type, + ) as ModelCustomization[]; + } +} diff --git a/packages/agent/src/services/model-customizations/execute-webhook.ts b/packages/agent/src/services/model-customizations/execute-webhook.ts new file mode 100644 index 0000000000..22bed593db --- /dev/null +++ b/packages/agent/src/services/model-customizations/execute-webhook.ts @@ -0,0 +1,52 @@ +import { ActionContext, TFieldName, TRow, TSchema } from '@forestadmin/datasource-customizer'; +import { SchemaUtils } from '@forestadmin/datasource-toolkit'; +import { WebhookAction } from '@forestadmin/forestadmin-client'; +import superagent from 'superagent'; + +function generateBody( + action: WebhookAction, + records: TRow>[], +) { + const commonPart = { + action: { + name: action.name, + scope: action.configuration.scope.toLocaleLowerCase(), + }, + }; + + switch (action.configuration.scope) { + case 'Global': + case 'Bulk': + return { + ...commonPart, + records, + }; + case 'Single': + if (records.length !== 1) { + throw new Error('Single actions can only be used with one selected record'); + } + + return { + ...commonPart, + record: records[0], + }; + default: + throw new Error(`Unknown scope: ${action.configuration.scope}`); + } +} + +export default async function executeWebhook( + action: WebhookAction, + context: ActionContext, +) { + const primaryKeys = SchemaUtils.getPrimaryKeys(context.collection.schema) as TFieldName< + S, + Extract + >[]; + + const records = await context.getRecords(primaryKeys); + + const body = generateBody(action, records); + + await superagent.post(action.configuration.url).send(body); +} diff --git a/packages/agent/test/__factories__/datasource-customizer.ts b/packages/agent/test/__factories__/datasource-customizer.ts new file mode 100644 index 0000000000..ca4a4eb7a1 --- /dev/null +++ b/packages/agent/test/__factories__/datasource-customizer.ts @@ -0,0 +1,22 @@ +import { DataSourceCustomizer } from '@forestadmin/datasource-customizer'; +import { Factory } from 'fishery'; + +export class DataSourceCustomizerFactory extends Factory { + mockAllMethods() { + return this.afterBuild(Customizer => { + Customizer.addChart = jest.fn(); + Customizer.addDataSource = jest.fn(); + Customizer.customizeCollection = jest.fn(); + Customizer.getCollection = jest.fn(); + Customizer.getDataSource = jest.fn(); + Customizer.updateTypesOnFileSystem = jest.fn(); + Customizer.use = jest.fn(); + }); + } +} + +const dataSourceCustomizerFactory = DataSourceCustomizerFactory.define( + () => new DataSourceCustomizer(), +); + +export default dataSourceCustomizerFactory; diff --git a/packages/agent/test/__factories__/forest-admin-client.ts b/packages/agent/test/__factories__/forest-admin-client.ts index cb6c3e2d25..8dbc414c09 100644 --- a/packages/agent/test/__factories__/forest-admin-client.ts +++ b/packages/agent/test/__factories__/forest-admin-client.ts @@ -34,6 +34,9 @@ const forestAdminClientFactory = ForestAdminClientFactory.define(() => ({ }, getOpenIdClient: jest.fn(), getUserInfo: jest.fn(), + modelCustomizationService: { + getConfiguration: jest.fn(), + }, })); export default forestAdminClientFactory; diff --git a/packages/agent/test/__factories__/model-customizations/action-customization.ts b/packages/agent/test/__factories__/model-customizations/action-customization.ts new file mode 100644 index 0000000000..215dde3bcb --- /dev/null +++ b/packages/agent/test/__factories__/model-customizations/action-customization.ts @@ -0,0 +1,18 @@ +import { Factory } from 'fishery'; + +import ActionCustomizationService from '../../../src/services/model-customizations/action-customization'; +import forestAdminHttpDriverOptions from '../forest-admin-http-driver-options'; + +export class ActionCustomizationFactory extends Factory { + mockAllMethods() { + return this.afterBuild(ActionCustomization => { + ActionCustomization.addWebhookActions = jest.fn(); + }); + } +} + +const actionCustomizationFactory = ActionCustomizationFactory.define( + () => new ActionCustomizationService(forestAdminHttpDriverOptions.build()), +); + +export default actionCustomizationFactory; diff --git a/packages/agent/test/agent.test.ts b/packages/agent/test/agent.test.ts index a07e222a65..863a26bedc 100644 --- a/packages/agent/test/agent.test.ts +++ b/packages/agent/test/agent.test.ts @@ -1,6 +1,7 @@ /* eslint-disable max-classes-per-file */ /* eslint-disable @typescript-eslint/no-explicit-any */ +import { DataSourceCustomizer } from '@forestadmin/datasource-customizer'; import { readFile } from 'fs/promises'; import * as factories from './__factories__'; @@ -18,31 +19,47 @@ jest.mock('../src/routes', () => ({ // Mock options const mockPostSchema = jest.fn(); +const mockAddWebhookActions = jest.fn(); -// Mock customizer -const mockAddDataSource = jest.fn(); -const mockAddChart = jest.fn(); -const mockGetDataSource = jest.fn(); -const mockCustomizeCollection = jest.fn(); -const mockUpdateTypesOnFileSystem = jest.fn(); -const mockUse = jest.fn(); +const mockCustomizer = { + addDataSource: jest.fn(), + addChart: jest.fn(), + customizeCollection: jest.fn(), + updateTypesOnFileSystem: jest.fn(), + use: jest.fn(), + getFactory: jest.fn(), +}; -jest.mock('@forestadmin/datasource-customizer', () => ({ - DataSourceCustomizer: class { - addDataSource = mockAddDataSource; - addChart = mockAddChart; - getDataSource = mockGetDataSource; - customizeCollection = mockCustomizeCollection; - updateTypesOnFileSystem = mockUpdateTypesOnFileSystem; - use = mockUse; +const mockNocodeCustomizer = { + addDataSource: jest.fn(), + getDataSource: jest.fn(), +}; + +const mockDatasourceCustomizer = DataSourceCustomizer as jest.Mock; + +jest.mock('../src/services/model-customizations/action-customization', () => ({ + __esModule: true, + default: class { + public static VERSION = '3.14.15'; + addWebhookActions = mockAddWebhookActions; }, })); +jest.mock('@forestadmin/datasource-customizer', () => ({ + __esModule: true, + DataSourceCustomizer: jest.fn(), +})); + beforeEach(() => { - jest.resetAllMocks(); + jest.clearAllMocks(); + + mockDatasourceCustomizer + .mockReset() + .mockImplementationOnce(() => mockCustomizer) + .mockImplementationOnce(() => mockNocodeCustomizer); mockMakeRoutes.mockReturnValue([{ setupRoutes: mockSetupRoute, bootstrap: mockBootstrap }]); - mockGetDataSource.mockResolvedValue(factories.dataSource.build()); + mockNocodeCustomizer.getDataSource.mockResolvedValue(factories.dataSource.build()); }); describe('Agent', () => { @@ -61,28 +78,40 @@ describe('Agent', () => { const agent = new Agent(options); agent.addDataSource(factory); - expect(mockAddDataSource).toHaveBeenCalledTimes(1); + expect(mockCustomizer.addDataSource).toHaveBeenCalledTimes(1); }); test('addChart should proxy the call', async () => { const agent = new Agent(options); agent.addChart('name', () => 666); - expect(mockAddChart).toHaveBeenCalledTimes(1); + expect(mockCustomizer.addChart).toHaveBeenCalledTimes(1); }); test('customizeCollection should proxy the call', async () => { const agent = new Agent(options); agent.customizeCollection('name', () => {}); - expect(mockCustomizeCollection).toHaveBeenCalledTimes(1); + expect(mockCustomizer.customizeCollection).toHaveBeenCalledTimes(1); }); test('use should proxy the call', async () => { const agent = new Agent(options); agent.use(async () => {}); - expect(mockUse).toHaveBeenCalledTimes(1); + expect(mockCustomizer.use).toHaveBeenCalledTimes(1); + }); + + // eslint-disable-next-line max-len + test("should add the customizer's factory as a datasource for the nocode customizer", async () => { + mockCustomizer.getFactory.mockReturnValueOnce('factory'); + + const agent = new Agent(options); + + expect(agent).toBeTruthy(); + + expect(mockNocodeCustomizer.addDataSource).toHaveBeenCalledTimes(1); + expect(mockNocodeCustomizer.addDataSource).toHaveBeenCalledWith('factory'); }); test('start should upload apimap', async () => { @@ -92,8 +121,8 @@ describe('Agent', () => { expect(mockSetupRoute).toHaveBeenCalledTimes(1); expect(mockBootstrap).toHaveBeenCalledTimes(1); expect(mockMakeRoutes).toHaveBeenCalledTimes(1); - expect(mockGetDataSource).toHaveBeenCalledTimes(1); - expect(mockUpdateTypesOnFileSystem).toHaveBeenCalledTimes(1); + expect(mockNocodeCustomizer.getDataSource).toHaveBeenCalledTimes(1); + expect(mockCustomizer.updateTypesOnFileSystem).toHaveBeenCalledTimes(1); expect(mockPostSchema).toHaveBeenCalledWith({ collections: [], @@ -104,6 +133,8 @@ describe('Agent', () => { stack: expect.anything(), }, }); + + expect(mockAddWebhookActions).not.toHaveBeenCalled(); }); test('that should upload the schema with experimental features', async () => { @@ -118,8 +149,8 @@ describe('Agent', () => { expect(mockSetupRoute).toHaveBeenCalledTimes(1); expect(mockBootstrap).toHaveBeenCalledTimes(1); expect(mockMakeRoutes).toHaveBeenCalledTimes(1); - expect(mockGetDataSource).toHaveBeenCalledTimes(1); - expect(mockUpdateTypesOnFileSystem).toHaveBeenCalledTimes(1); + expect(mockNocodeCustomizer.getDataSource).toHaveBeenCalledTimes(1); + expect(mockCustomizer.updateTypesOnFileSystem).toHaveBeenCalledTimes(1); expect(mockPostSchema).toHaveBeenCalledWith({ collections: [], @@ -127,11 +158,13 @@ describe('Agent', () => { liana: 'forest-nodejs-agent', liana_version: expect.stringMatching(/\d+\.\d+\.\d+.*/), liana_features: { - 'webhook-custom-actions': '1.0.0', + 'webhook-custom-actions': '3.14.15', }, stack: expect.anything(), }, }); + + expect(mockAddWebhookActions).toHaveBeenCalledTimes(1); }); }); @@ -161,8 +194,8 @@ describe('Agent', () => { expect(mockSetupRoute).toHaveBeenCalledTimes(1); expect(mockBootstrap).toHaveBeenCalledTimes(1); expect(mockMakeRoutes).toHaveBeenCalledTimes(1); - expect(mockGetDataSource).toHaveBeenCalledTimes(1); - expect(mockUpdateTypesOnFileSystem).not.toHaveBeenCalled(); + expect(mockNocodeCustomizer.getDataSource).toHaveBeenCalledTimes(1); + expect(mockCustomizer.updateTypesOnFileSystem).not.toHaveBeenCalled(); const schemaContent = JSON.parse(await readFile(options.schemaPath, 'utf8')); @@ -176,8 +209,8 @@ describe('Agent', () => { expect(mockSetupRoute).toHaveBeenCalledTimes(1); expect(mockBootstrap).toHaveBeenCalledTimes(1); expect(mockMakeRoutes).toHaveBeenCalledTimes(1); - expect(mockGetDataSource).toHaveBeenCalledTimes(1); - expect(mockUpdateTypesOnFileSystem).not.toHaveBeenCalled(); + expect(mockNocodeCustomizer.getDataSource).toHaveBeenCalledTimes(1); + expect(mockCustomizer.updateTypesOnFileSystem).not.toHaveBeenCalled(); expect(mockPostSchema).not.toHaveBeenCalled(); }); }); diff --git a/packages/agent/test/services/model-customizations/action-customization.test.ts b/packages/agent/test/services/model-customizations/action-customization.test.ts new file mode 100644 index 0000000000..5c1c9652a6 --- /dev/null +++ b/packages/agent/test/services/model-customizations/action-customization.test.ts @@ -0,0 +1,166 @@ +import { ActionContext } from '@forestadmin/datasource-customizer'; +import { ActionScope } from '@forestadmin/datasource-toolkit'; +import { + ActionType, + ModelCustomizationType, +} from '@forestadmin/forestadmin-client/src/model-customizations/types'; + +import ActionCustomizationService from '../../../src/services/model-customizations/action-customization'; +import executeWebhook from '../../../src/services/model-customizations/execute-webhook'; +import { forestAdminHttpDriverOptions } from '../../__factories__'; +import dataSourceCustomizerFactory from '../../__factories__/datasource-customizer'; + +jest.mock('../../../src/services/model-customizations/execute-webhook', () => ({ + __esModule: true, + default: jest.fn(), +})); + +const executeWebhookMock = executeWebhook as jest.Mock; + +describe('Services > ModelCustomizations > ActionCustomization', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + describe('addWebhookActions', () => { + it.each(['Global', 'Single', 'Bulk'] as ActionScope[])( + 'should register a webhook action with the scope $scope', + async scope => { + const options = forestAdminHttpDriverOptions.build(); + + const actionCustomization = new ActionCustomizationService(options); + + const action = { + name: 'myAction', + type: ModelCustomizationType.action, + modelName: 'myModel', + configuration: { + type: 'webhook', + scope, + url: 'https://my-url.com', + }, + }; + + ( + options.forestAdminClient.modelCustomizationService.getConfiguration as jest.Mock + ).mockResolvedValue([action]); + + const customizer = dataSourceCustomizerFactory.mockAllMethods().build(); + const collection = { + addAction: jest.fn(), + }; + (customizer.getCollection as jest.Mock).mockReturnValue(collection); + + await actionCustomization.addWebhookActions(customizer); + + expect(collection.addAction).toHaveBeenCalledWith('myAction', { + scope, + execute: expect.any(Function), + }); + expect(customizer.getCollection).toHaveBeenCalledWith('myModel'); + expect( + options.forestAdminClient.modelCustomizationService.getConfiguration, + ).toHaveBeenCalled(); + }, + ); + + it('should execute the webhook', async () => { + const options = forestAdminHttpDriverOptions.build(); + + const actionCustomization = new ActionCustomizationService(options); + + const action = { + name: 'myAction', + type: ModelCustomizationType.action, + modelName: 'myModel', + configuration: { + type: 'webhook', + scope: 'Global', + url: 'https://my-url.com', + }, + }; + + ( + options.forestAdminClient.modelCustomizationService.getConfiguration as jest.Mock + ).mockResolvedValue([action]); + + const customizer = dataSourceCustomizerFactory.mockAllMethods().build(); + const collection = { + addAction: jest.fn(), + }; + (customizer.getCollection as jest.Mock).mockReturnValue(collection); + + await actionCustomization.addWebhookActions(customizer); + + const { execute } = collection.addAction.mock.calls[0][1]; + + const context = { getRecords: jest.fn() } as unknown as ActionContext; + + await execute(context); + + expect(executeWebhookMock).toHaveBeenCalledWith(action, context); + }); + + it('should not use customizations that are not actions', async () => { + const options = forestAdminHttpDriverOptions.build(); + + const actionCustomization = new ActionCustomizationService(options); + + ( + options.forestAdminClient.modelCustomizationService.getConfiguration as jest.Mock + ).mockResolvedValue([ + { + name: 'myAction', + type: 'field' as ModelCustomizationType, + modelName: 'myModel', + configuration: { + type: 'webhook', + scope: 'Global', + url: 'https://my-url.com', + }, + }, + ]); + + const customizer = dataSourceCustomizerFactory.mockAllMethods().build(); + const collection = { + addAction: jest.fn(), + }; + (customizer.getCollection as jest.Mock).mockReturnValue(collection); + + await actionCustomization.addWebhookActions(customizer); + + expect(collection.addAction).not.toHaveBeenCalled(); + }); + + it('should not use actions that are not webhooks', async () => { + const options = forestAdminHttpDriverOptions.build(); + + const actionCustomization = new ActionCustomizationService(options); + + ( + options.forestAdminClient.modelCustomizationService.getConfiguration as jest.Mock + ).mockResolvedValue([ + { + name: 'myAction', + type: ModelCustomizationType.action, + modelName: 'myModel', + configuration: { + type: 'other' as ActionType, + scope: 'Global', + url: 'https://my-url.com', + }, + }, + ]); + + const customizer = dataSourceCustomizerFactory.mockAllMethods().build(); + const collection = { + addAction: jest.fn(), + }; + (customizer.getCollection as jest.Mock).mockReturnValue(collection); + + await actionCustomization.addWebhookActions(customizer); + + expect(collection.addAction).not.toHaveBeenCalled(); + }); + }); +}); diff --git a/packages/agent/test/services/model-customizations/execute-webhook.test.ts b/packages/agent/test/services/model-customizations/execute-webhook.test.ts new file mode 100644 index 0000000000..ba5f7dba7e --- /dev/null +++ b/packages/agent/test/services/model-customizations/execute-webhook.test.ts @@ -0,0 +1,196 @@ +import { ActionContext } from '@forestadmin/datasource-customizer'; +import { SchemaUtils } from '@forestadmin/datasource-toolkit'; +import { + ActionScope, + WebhookAction, +} from '@forestadmin/forestadmin-client/src/model-customizations/types'; +import superagent from 'superagent'; + +import executeWebhook from '../../../src/services/model-customizations/execute-webhook'; + +jest.mock('superagent', () => ({ + post: jest.fn().mockReturnThis(), + send: jest.fn().mockReturnThis(), +})); + +jest.mock('@forestadmin/datasource-toolkit', () => ({ + SchemaUtils: { + getPrimaryKeys: jest.fn(), + }, +})); + +const superagentMock = superagent as unknown as { + post: jest.Mock; + send: jest.Mock; +}; + +const SchemaUtilsMock = SchemaUtils as unknown as { + getPrimaryKeys: jest.Mock; +}; + +describe('Services > ModelCustomizations > WebhookExecutor', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + describe('executeWebhook', () => { + describe('when the action scope is single', () => { + it('should send a request with the action name and the scope', async () => { + const action: WebhookAction = { + name: 'myAction', + modelName: 'myModel', + type: 'action', + configuration: { + type: 'webhook', + url: 'https://my-url.com', + scope: 'Single', + integration: 'forest', + }, + }; + + const schema = { + name: 'myModel', + }; + + const context = { + getRecords: jest.fn().mockResolvedValue([{ id1: 1, id2: 2 }]), + collection: { schema }, + } as unknown as ActionContext; + + SchemaUtilsMock.getPrimaryKeys.mockReturnValue(['id1', 'id2']); + + await executeWebhook(action, context); + + expect(superagentMock.post).toHaveBeenCalledWith('https://my-url.com'); + expect(superagentMock.send).toHaveBeenCalledWith({ + action: { + name: 'myAction', + scope: 'single', + }, + record: { id1: 1, id2: 2 }, + }); + + expect(context.getRecords).toHaveBeenCalled(); + }); + + it('should throw an error if there is no record', async () => { + const action: WebhookAction = { + name: 'myAction', + modelName: 'myModel', + type: 'action', + configuration: { + type: 'webhook', + url: 'https://my-url.com', + scope: 'Single', + integration: 'forest', + }, + }; + + const context = { + getRecords: jest.fn().mockResolvedValue([]), + collection: { + schema: { + name: 'myModel', + }, + }, + } as unknown as ActionContext; + + SchemaUtilsMock.getPrimaryKeys.mockReturnValue(['id1', 'id2']); + + await expect(executeWebhook(action, context)).rejects.toThrow( + 'Single actions can only be used with one selected record', + ); + + expect(superagentMock.post).not.toHaveBeenCalled(); + expect(superagentMock.send).not.toHaveBeenCalled(); + }); + + it('should throw an error if there is more than one record', async () => { + const action: WebhookAction = { + name: 'myAction', + modelName: 'myModel', + type: 'action', + configuration: { + type: 'webhook', + url: 'https://my-url.com', + scope: 'Single', + integration: 'forest', + }, + }; + + const context = { + getRecords: jest.fn().mockResolvedValue([ + { id1: 1, id2: 2 }, + { id1: 3, id2: 4 }, + ]), + collection: { + schema: { + name: 'myModel', + }, + }, + } as unknown as ActionContext; + + SchemaUtilsMock.getPrimaryKeys.mockReturnValue(['id1', 'id2']); + + await expect(executeWebhook(action, context)).rejects.toThrow( + 'Single actions can only be used with one selected record', + ); + + expect(superagentMock.post).not.toHaveBeenCalled(); + expect(superagentMock.send).not.toHaveBeenCalled(); + }); + }); + + describe.each(['Global', 'Bulk'] as ActionScope[])( + 'when the action scope is %s', + (scope: ActionScope) => { + it('should send a request with the action name, the scope and ids', async () => { + const action: WebhookAction = { + name: 'myAction', + modelName: 'myModel', + type: 'action', + configuration: { + type: 'webhook', + url: 'https://my-url.com', + scope, + integration: 'forest', + }, + }; + + const schema = { + name: 'myModel', + }; + + const context = { + getRecords: jest.fn().mockReturnValue([ + { id1: 1, id2: 2 }, + { id1: 3, id2: 4 }, + ]), + collection: { + schema, + }, + } as unknown as ActionContext; + + SchemaUtilsMock.getPrimaryKeys.mockReturnValue(['id1', 'id2']); + + await executeWebhook(action, context); + + expect(superagentMock.post).toHaveBeenCalledWith('https://my-url.com'); + expect(superagentMock.send).toHaveBeenCalledWith({ + action: { + name: 'myAction', + scope: scope.toLowerCase(), + }, + records: [ + { id1: 1, id2: 2 }, + { id1: 3, id2: 4 }, + ], + }); + + expect(context.getRecords).toHaveBeenCalledTimes(1); + expect(context.getRecords).toHaveBeenCalledWith(['id1', 'id2']); + }); + }, + ); + }); +}); diff --git a/packages/datasource-customizer/src/context/relaxed-wrappers/collection.ts b/packages/datasource-customizer/src/context/relaxed-wrappers/collection.ts index 42f266683f..ff27e357cc 100644 --- a/packages/datasource-customizer/src/context/relaxed-wrappers/collection.ts +++ b/packages/datasource-customizer/src/context/relaxed-wrappers/collection.ts @@ -4,6 +4,7 @@ import { Aggregation, Caller, Collection, + CollectionSchema, ConditionTreeFactory, Filter, Page, @@ -34,6 +35,10 @@ export default class RelaxedCollection< private collection: Collection; private caller: Caller; + get schema(): CollectionSchema { + return this.collection.schema; + } + constructor(collection: Collection, caller: Caller) { this.collection = collection; this.caller = caller; diff --git a/packages/datasource-customizer/test/context/wrapper.test.ts b/packages/datasource-customizer/test/context/wrapper.test.ts index 61d8ce08bb..78d20b59e8 100644 --- a/packages/datasource-customizer/test/context/wrapper.test.ts +++ b/packages/datasource-customizer/test/context/wrapper.test.ts @@ -182,5 +182,11 @@ describe('RelaxedWrappers', () => { 66, ); }); + + describe('schema', () => { + it("should return the base collection's schema", () => { + expect(relaxed.schema).toBe(collection.schema); + }); + }); }); }); diff --git a/packages/forestadmin-client/src/build-application-services.ts b/packages/forestadmin-client/src/build-application-services.ts index 044e9cfe18..279bd95964 100644 --- a/packages/forestadmin-client/src/build-application-services.ts +++ b/packages/forestadmin-client/src/build-application-services.ts @@ -1,6 +1,8 @@ import AuthService from './auth'; import ChartHandler from './charts/chart-handler'; import IpWhiteListService from './ip-whitelist'; +import ModelCustomizationFromApiService from './model-customizations/model-customization-from-api'; +import { ModelCustomizationService } from './model-customizations/types'; import ActionPermissionService from './permissions/action-permission'; import PermissionService from './permissions/permission-with-cache'; import RenderingPermissionService from './permissions/rendering-permission'; @@ -26,6 +28,7 @@ export default function buildApplicationServices( permission: PermissionService; chartHandler: ChartHandler; auth: AuthService; + modelCustomizationService: ModelCustomizationService; } { const optionsWithDefaults = { forestServerUrl: 'https://api.forestadmin.com', @@ -55,5 +58,6 @@ export default function buildApplicationServices( ipWhitelist: new IpWhiteListService(optionsWithDefaults), schema: new SchemaService(optionsWithDefaults), auth: new AuthService(optionsWithDefaults), + modelCustomizationService: new ModelCustomizationFromApiService(optionsWithDefaults), }; } diff --git a/packages/forestadmin-client/src/forest-admin-client-with-cache.ts b/packages/forestadmin-client/src/forest-admin-client-with-cache.ts index 5a871c2e6d..c7d2f1045f 100644 --- a/packages/forestadmin-client/src/forest-admin-client-with-cache.ts +++ b/packages/forestadmin-client/src/forest-admin-client-with-cache.ts @@ -5,6 +5,7 @@ import { UserInfo } from './auth/types'; import ChartHandler from './charts/chart-handler'; import IpWhiteListService from './ip-whitelist'; import { IpWhitelistConfiguration } from './ip-whitelist/types'; +import { ModelCustomizationService } from './model-customizations/types'; import RenderingPermissionService from './permissions/rendering-permission'; import { RawTree } from './permissions/types'; import verifyAndExtractApproval from './permissions/verify-approval'; @@ -27,6 +28,7 @@ export default class ForestAdminClientWithCache implements ForestAdminClient { protected readonly ipWhitelistService: IpWhiteListService, protected readonly schemaService: SchemaService, protected readonly authService: AuthService, + public readonly modelCustomizationService: ModelCustomizationService, ) {} verifySignedActionParameters(signedParameters: string): TSignedParameters { diff --git a/packages/forestadmin-client/src/index.ts b/packages/forestadmin-client/src/index.ts index 8deaa7a8a5..f10c32966c 100644 --- a/packages/forestadmin-client/src/index.ts +++ b/packages/forestadmin-client/src/index.ts @@ -42,6 +42,7 @@ export default function createForestAdminClient( ipWhitelist, schema, auth, + modelCustomizationService, } = buildApplicationServices(new ForestHttpApi(), options); return new ForestAdminClientWithCache( @@ -53,11 +54,14 @@ export default function createForestAdminClient( ipWhitelist, schema, auth, + modelCustomizationService, ); } export * from './charts/types'; export * from './schema/types'; +export * from './model-customizations/types'; + export { default as ContextVariablesInjector } from './utils/context-variables-injector'; export { default as ContextVariables } from './utils/context-variables'; export { default as ChartHandler } from './charts/chart-handler'; diff --git a/packages/forestadmin-client/src/model-customizations/model-customization-from-api.ts b/packages/forestadmin-client/src/model-customizations/model-customization-from-api.ts new file mode 100644 index 0000000000..381cf89a85 --- /dev/null +++ b/packages/forestadmin-client/src/model-customizations/model-customization-from-api.ts @@ -0,0 +1,46 @@ +import { + ActionScope, + ModelCustomization, + ModelCustomizationService, + WebhookAction, + WebhookActionConfiguration, + WebhookActionConfigurationApi, +} from './types'; +import { ForestAdminClientOptionsWithDefaults } from '../types'; +import ServerUtils from '../utils/server'; + +function mapApiValues( + modelCustomization: ModelCustomization, +): ModelCustomization { + if (modelCustomization.type !== 'action') { + throw new Error('Only action customizations are supported for now.'); + } + + const configuration = modelCustomization.configuration as WebhookActionConfigurationApi; + const mappedConfiguration: WebhookActionConfiguration = { + ...configuration, + scope: configuration.scope + ? ((configuration.scope.slice(0, 1).toUpperCase() + + configuration.scope.slice(1)) as ActionScope) + : 'Single', + }; + + return { + ...modelCustomization, + configuration: mappedConfiguration, + }; +} + +export default class ModelCustomizationFromApiService implements ModelCustomizationService { + constructor(private readonly options: ForestAdminClientOptionsWithDefaults) {} + + async getConfiguration(): Promise { + const result = await ServerUtils.query[]>( + this.options, + 'get', + '/liana/model-customizations', + ); + + return result.map(mapApiValues); + } +} diff --git a/packages/forestadmin-client/src/model-customizations/types.ts b/packages/forestadmin-client/src/model-customizations/types.ts new file mode 100644 index 0000000000..6c44e5ab1e --- /dev/null +++ b/packages/forestadmin-client/src/model-customizations/types.ts @@ -0,0 +1,42 @@ +export enum ModelCustomizationType { + action = 'action', +} + +export type ActionScopeApi = 'global' | 'single' | 'bulk'; +export type ActionScope = 'Global' | 'Single' | 'Bulk'; + +export type ActionType = 'webhook'; + +export type ModelCustomization = { + name: string; + type: `${ModelCustomizationType}`; + modelName: string; + configuration: TConfiguration; +}; + +export type ActionConfigurationApi = { + scope: ActionScopeApi; + type: ActionType; +}; + +export type WebhookActionConfigurationApi = ActionConfigurationApi & { + type: 'webhook'; + url: string; + integration: string; +}; + +export type ActionConfiguration = { + scope: ActionScope; + type: ActionType; +}; + +export type WebhookActionConfiguration = ActionConfiguration & { + type: 'webhook'; + url: string; + integration: string; +}; +export interface ModelCustomizationService { + getConfiguration(): Promise; +} + +export type WebhookAction = ModelCustomization; diff --git a/packages/forestadmin-client/src/types.ts b/packages/forestadmin-client/src/types.ts index 3c544fa9f9..ae191fae27 100644 --- a/packages/forestadmin-client/src/types.ts +++ b/packages/forestadmin-client/src/types.ts @@ -4,6 +4,7 @@ import type { Client } from 'openid-client'; import { UserInfo } from './auth/types'; import { IpWhitelistConfiguration } from './ip-whitelist/types'; +import { ModelCustomizationService } from './model-customizations/types'; import { CollectionActionEvent, EnvironmentPermissionsV4, @@ -33,6 +34,7 @@ export interface ForestAdminClient { readonly permissionService: PermissionService; readonly contextVariablesInstantiator: ContextVariablesInstantiatorInterface; readonly chartHandler: ChartHandlerInterface; + readonly modelCustomizationService: ModelCustomizationService; verifySignedActionParameters(signedParameters: string): TSignedParameters; diff --git a/packages/forestadmin-client/test/__factories__/forest-admin-client.ts b/packages/forestadmin-client/test/__factories__/forest-admin-client.ts index 2b0ddf5743..aefc7db5d8 100644 --- a/packages/forestadmin-client/test/__factories__/forest-admin-client.ts +++ b/packages/forestadmin-client/test/__factories__/forest-admin-client.ts @@ -1,9 +1,13 @@ import { Factory } from 'fishery'; +import authServiceFactory from './auth'; import chartHandlerFactory from './chart/chart-handler'; import forestAdminClientOptionsFactory from './forest-admin-client-options'; +import ipWhitelistServiceFactory from './ip-whitelist'; +import modelCustomizationServiceFactory from './model-customizations/model-customization-from-api'; import permissionServiceFactory from './permissions/permission'; import renderingPermissionsFactory from './permissions/rendering-permission'; +import schemaServiceFactory from './schema'; import contextVariablesInstantiatorFactory from './utils/context-variables-instantiator'; import ForestAdminClient from '../../src/forest-admin-client-with-cache'; @@ -25,6 +29,10 @@ const forestAdminClientFactory = ForestAdminClientFactory.define( renderingPermissionsFactory.build(), contextVariablesInstantiatorFactory.build(), chartHandlerFactory.build(), + ipWhitelistServiceFactory.build(), + schemaServiceFactory.build(), + authServiceFactory.build(), + modelCustomizationServiceFactory.build(), ), ); diff --git a/packages/forestadmin-client/test/__factories__/index.ts b/packages/forestadmin-client/test/__factories__/index.ts index b1a016c0f6..766b111fd7 100644 --- a/packages/forestadmin-client/test/__factories__/index.ts +++ b/packages/forestadmin-client/test/__factories__/index.ts @@ -9,3 +9,4 @@ export { default as forestAdminClientOptions } from './forest-admin-client-optio export { default as ipWhiteList } from './ip-whitelist'; export { default as schema } from './schema'; export { default as auth } from './auth'; +export { default as modelCustomization } from './model-customizations/model-customization-from-api'; diff --git a/packages/forestadmin-client/test/__factories__/model-customizations/model-customization-from-api.ts b/packages/forestadmin-client/test/__factories__/model-customizations/model-customization-from-api.ts new file mode 100644 index 0000000000..c043bbe54e --- /dev/null +++ b/packages/forestadmin-client/test/__factories__/model-customizations/model-customization-from-api.ts @@ -0,0 +1,18 @@ +import { Factory } from 'fishery'; + +import ModelCustomizationFromApiService from '../../../src/model-customizations/model-customization-from-api'; +import forestAdminClientOptionsFactory from '../forest-admin-client-options'; + +export class ModelCustomizationServiceFactory extends Factory { + mockAllMethods() { + return this.afterBuild(client => { + client.getConfiguration = jest.fn(); + }); + } +} + +const modelCustomizationServiceFactory = ModelCustomizationServiceFactory.define( + () => new ModelCustomizationFromApiService(forestAdminClientOptionsFactory.build()), +); + +export default modelCustomizationServiceFactory; diff --git a/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts b/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts index 27c34db9a6..d2f6d9b9bc 100644 --- a/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts +++ b/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts @@ -25,6 +25,7 @@ describe('ForestAdminClientWithCache', () => { whiteListService, factories.schema.build(), factories.auth.build(), + factories.modelCustomization.build(), ); const config = await forestAdminClient.getIpWhitelistConfiguration(); @@ -48,6 +49,7 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), schemaService, factories.auth.build(), + factories.modelCustomization.build(), ); const result = await forestAdminClient.postSchema({ @@ -77,6 +79,7 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), factories.auth.build(), + factories.modelCustomization.build(), ); verifyAndExtractApprovalMock.mockReturnValue(signedParameters); @@ -103,6 +106,7 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), authService, + factories.modelCustomization.build(), ); const result = await forestAdminClient.getUserInfo(1, 'token'); @@ -125,6 +129,7 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), authService, + factories.modelCustomization.build(), ); const result = await forestAdminClient.getOpenIdClient(); @@ -146,6 +151,7 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), factories.auth.build(), + factories.modelCustomization.build(), ); await forestAdminClient.markScopesAsUpdated(42); @@ -166,6 +172,7 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), factories.auth.build(), + factories.modelCustomization.build(), ); (renderingPermissionService.getScope as jest.Mock).mockResolvedValue('scope'); diff --git a/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts b/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts new file mode 100644 index 0000000000..9e2c055fd1 --- /dev/null +++ b/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts @@ -0,0 +1,93 @@ +import ModelCustomizationService from '../../src/model-customizations/model-customization-from-api'; +import { + ActionScope, + ModelCustomization, + WebhookActionConfigurationApi, +} from '../../src/model-customizations/types'; +import ServerUtils from '../../src/utils/server'; +import forestadminClientOptionsFactory from '../__factories__/forest-admin-client-options'; + +jest.mock('../../src/utils/server', () => ({ + query: jest.fn(), +})); + +const ServerUtilsMock = ServerUtils as jest.Mocked; + +describe('ModelCustomizationFromApiService', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + describe('getConfiguration', () => { + describe('with actions', () => { + describe('with webhooks', () => { + it.each(['Global', 'Bulk', 'Single'] as ActionScope[])( + 'should retrieve the configuration from the API and map values for the scope %s', + async scope => { + ServerUtilsMock.query.mockResolvedValueOnce([ + { + name: 'test', + type: 'action', + modelName: 'myModel', + configuration: { + type: 'webhook', + scope: scope.toLowerCase(), + url: 'https://my-url.com', + integration: 'service', + }, + }, + ] as ModelCustomization[]); + + const options = forestadminClientOptionsFactory.build(); + + const modelCustomizations = new ModelCustomizationService(options); + + const configuration = await modelCustomizations.getConfiguration(); + + expect(configuration).toStrictEqual([ + { + name: 'test', + type: 'action', + modelName: 'myModel', + configuration: { + type: 'webhook', + scope, + url: 'https://my-url.com', + integration: 'service', + }, + }, + ]); + + expect(ServerUtilsMock.query).toHaveBeenCalledTimes(1); + expect(ServerUtilsMock.query).toHaveBeenCalledWith( + options, + 'get', + '/liana/model-customizations', + ); + }, + ); + }); + }); + + describe('with unsupported types', () => { + it('should throw an error', async () => { + ServerUtilsMock.query.mockResolvedValueOnce([ + { + name: 'test', + type: 'unsupported', + modelName: 'myModel', + configuration: {}, + }, + ]); + + const options = forestadminClientOptionsFactory.build(); + + const modelCustomizations = new ModelCustomizationService(options); + + await expect(modelCustomizations.getConfiguration()).rejects.toThrow( + 'Only action customizations are supported for now.', + ); + }); + }); + }); +}); From e23470429921ab9132d9d2b50ab648f29bff7e27 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 20 Apr 2023 14:18:14 +0000 Subject: [PATCH 03/61] chore(release): @forestadmin/plugin-export-advanced@1.0.5-alpha-webhook-custom-actions.1 [skip ci] ## @forestadmin/plugin-export-advanced [1.0.5-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.4...@forestadmin/plugin-export-advanced@1.0.5-alpha-webhook-custom-actions.1) (2023-04-20) ### Dependencies * **@forestadmin/datasource-customizer:** upgraded to 1.7.0-alpha-webhook-custom-actions.1 --- packages/plugin-export-advanced/CHANGELOG.md | 10 ++++++++++ packages/plugin-export-advanced/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/plugin-export-advanced/CHANGELOG.md b/packages/plugin-export-advanced/CHANGELOG.md index 3926a3e32b..06a387852b 100644 --- a/packages/plugin-export-advanced/CHANGELOG.md +++ b/packages/plugin-export-advanced/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/plugin-export-advanced [1.0.5-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.4...@forestadmin/plugin-export-advanced@1.0.5-alpha-webhook-custom-actions.1) (2023-04-20) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.7.0-alpha-webhook-custom-actions.1 + ## @forestadmin/plugin-export-advanced [1.0.4](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.3...@forestadmin/plugin-export-advanced@1.0.4) (2023-04-19) diff --git a/packages/plugin-export-advanced/package.json b/packages/plugin-export-advanced/package.json index 3fa75a48de..e58ad9a172 100644 --- a/packages/plugin-export-advanced/package.json +++ b/packages/plugin-export-advanced/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/plugin-export-advanced", - "version": "1.0.4", + "version": "1.0.5-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -15,7 +15,7 @@ "excel4node": "^1.8.0" }, "devDependencies": { - "@forestadmin/datasource-customizer": "1.6.2", + "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.4.3" }, "files": [ From 90070843bbea20b8dde26725e1275629068f20f4 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 20 Apr 2023 14:18:18 +0000 Subject: [PATCH 04/61] chore(release): example@1.2.21-alpha-webhook-custom-actions.1 [skip ci] ## [1.2.21-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.2.20...example@1.2.21-alpha-webhook-custom-actions.1) (2023-04-20) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/_example/CHANGELOG.md | 11 +++++++++++ packages/_example/package.json | 6 +++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index af9a576b93..cccb91123d 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,14 @@ +## example [1.2.21-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.2.20...example@1.2.21-alpha-webhook-custom-actions.1) (2023-04-20) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.9.0-alpha-webhook-custom-actions.1 +* **@forestadmin/datasource-dummy:** upgraded to 1.0.28-alpha-webhook-custom-actions.1 + ## example [1.2.20](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.2.19...example@1.2.20) (2023-04-19) diff --git a/packages/_example/package.json b/packages/_example/package.json index 012c32693e..f08f7039ab 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,12 +1,12 @@ { "name": "example", - "version": "1.2.20", + "version": "1.2.21-alpha-webhook-custom-actions.1", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.8.9", - "@forestadmin/datasource-dummy": "1.0.27", + "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-dummy": "1.0.28-alpha-webhook-custom-actions.1", "@forestadmin/datasource-mongoose": "1.3.5", "@forestadmin/datasource-sequelize": "1.2.15", "@forestadmin/datasource-sql": "1.4.2", From dea41e6800fbcf3feed8aa45e0c69dd7e3b7dd98 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 20 Apr 2023 14:18:23 +0000 Subject: [PATCH 05/61] chore(release): @forestadmin/agent@1.9.0-alpha-webhook-custom-actions.1 [skip ci] # [1.9.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.8.9...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.1) (2023-04-20) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/agent/CHANGELOG.md | 16 ++++++++++++++++ packages/agent/package.json | 6 +++--- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 763b9a6a64..ef8c59277f 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,19 @@ +# @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.8.9...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.1) (2023-04-20) + + +### Features + +* **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.7.0-alpha-webhook-custom-actions.1 +* **@forestadmin/forestadmin-client:** upgraded to 1.2.0-alpha-webhook-custom-actions.1 + ## @forestadmin/agent [1.8.9](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.8.8...@forestadmin/agent@1.8.9) (2023-04-19) diff --git a/packages/agent/package.json b/packages/agent/package.json index ddab4600f8..5455b02e07 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.8.9", + "version": "1.9.0-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -14,9 +14,9 @@ "dependencies": { "@fast-csv/format": "^4.3.5", "@fastify/express": "^1.1.0", - "@forestadmin/datasource-customizer": "1.6.2", + "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.4.3", - "@forestadmin/forestadmin-client": "1.1.12", + "@forestadmin/forestadmin-client": "1.2.0-alpha-webhook-custom-actions.1", "@koa/cors": "^4.0.0", "@koa/router": "^12.0.0", "forest-ip-utils": "^1.0.1", From da551e830f7018b1d9eccd0aa1f5daedc52b0618 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 20 Apr 2023 14:18:27 +0000 Subject: [PATCH 06/61] chore(release): @forestadmin/datasource-customizer@1.7.0-alpha-webhook-custom-actions.1 [skip ci] # [1.7.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.6.2...@forestadmin/datasource-customizer@1.7.0-alpha-webhook-custom-actions.1) (2023-04-20) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/datasource-customizer/CHANGELOG.md | 7 +++++++ packages/datasource-customizer/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/datasource-customizer/CHANGELOG.md b/packages/datasource-customizer/CHANGELOG.md index 7ea82dd2f5..982ab8e47a 100644 --- a/packages/datasource-customizer/CHANGELOG.md +++ b/packages/datasource-customizer/CHANGELOG.md @@ -1,3 +1,10 @@ +# @forestadmin/datasource-customizer [1.7.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.6.2...@forestadmin/datasource-customizer@1.7.0-alpha-webhook-custom-actions.1) (2023-04-20) + + +### Features + +* **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) + ## @forestadmin/datasource-customizer [1.6.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.6.1...@forestadmin/datasource-customizer@1.6.2) (2023-04-19) diff --git a/packages/datasource-customizer/package.json b/packages/datasource-customizer/package.json index 0e9dae9f9e..aa36876057 100644 --- a/packages/datasource-customizer/package.json +++ b/packages/datasource-customizer/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/datasource-customizer", - "version": "1.6.2", + "version": "1.7.0-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From 357be1f20314400e155b3aae8d9f8d1d42c54ebd Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 20 Apr 2023 14:18:32 +0000 Subject: [PATCH 07/61] chore(release): @forestadmin/datasource-dummy@1.0.28-alpha-webhook-custom-actions.1 [skip ci] ## [1.0.28-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.27...@forestadmin/datasource-dummy@1.0.28-alpha-webhook-custom-actions.1) (2023-04-20) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/datasource-dummy/CHANGELOG.md | 10 ++++++++++ packages/datasource-dummy/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/datasource-dummy/CHANGELOG.md b/packages/datasource-dummy/CHANGELOG.md index cb2e26c25d..929cd01fd4 100644 --- a/packages/datasource-dummy/CHANGELOG.md +++ b/packages/datasource-dummy/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/datasource-dummy [1.0.28-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.27...@forestadmin/datasource-dummy@1.0.28-alpha-webhook-custom-actions.1) (2023-04-20) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.7.0-alpha-webhook-custom-actions.1 + ## @forestadmin/datasource-dummy [1.0.27](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.26...@forestadmin/datasource-dummy@1.0.27) (2023-04-19) diff --git a/packages/datasource-dummy/package.json b/packages/datasource-dummy/package.json index 0fdee1c7e8..6f41c1c4b4 100644 --- a/packages/datasource-dummy/package.json +++ b/packages/datasource-dummy/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/datasource-dummy", - "version": "1.0.27", + "version": "1.0.28-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -12,7 +12,7 @@ "directory": "packages/datasource-dummy" }, "dependencies": { - "@forestadmin/datasource-customizer": "1.6.2", + "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.4.3" }, "files": [ From a7436212320115612488975deb5bcd64010e8447 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 20 Apr 2023 14:18:37 +0000 Subject: [PATCH 08/61] chore(release): @forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.1 [skip ci] # [1.2.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.1.12...@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.1) (2023-04-20) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/forestadmin-client/CHANGELOG.md | 7 +++++++ packages/forestadmin-client/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/forestadmin-client/CHANGELOG.md b/packages/forestadmin-client/CHANGELOG.md index ee671eb909..8609aca2bb 100644 --- a/packages/forestadmin-client/CHANGELOG.md +++ b/packages/forestadmin-client/CHANGELOG.md @@ -1,3 +1,10 @@ +# @forestadmin/forestadmin-client [1.2.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.1.12...@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.1) (2023-04-20) + + +### Features + +* **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) + ## @forestadmin/forestadmin-client [1.1.12](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.1.11...@forestadmin/forestadmin-client@1.1.12) (2023-04-19) diff --git a/packages/forestadmin-client/package.json b/packages/forestadmin-client/package.json index ad151c8256..e63df4da68 100644 --- a/packages/forestadmin-client/package.json +++ b/packages/forestadmin-client/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/forestadmin-client", - "version": "1.1.12", + "version": "1.2.0-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From e462cf63ce85eb4913c1976e8a091ff9d7efeed0 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 20 Apr 2023 14:18:41 +0000 Subject: [PATCH 09/61] chore(release): @forestadmin/plugin-aws-s3@1.1.3-alpha-webhook-custom-actions.1 [skip ci] ## [1.1.3-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.1.2...@forestadmin/plugin-aws-s3@1.1.3-alpha-webhook-custom-actions.1) (2023-04-20) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/plugin-aws-s3/CHANGELOG.md | 10 ++++++++++ packages/plugin-aws-s3/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/plugin-aws-s3/CHANGELOG.md b/packages/plugin-aws-s3/CHANGELOG.md index af027c8d0d..6373f0f067 100644 --- a/packages/plugin-aws-s3/CHANGELOG.md +++ b/packages/plugin-aws-s3/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/plugin-aws-s3 [1.1.3-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.1.2...@forestadmin/plugin-aws-s3@1.1.3-alpha-webhook-custom-actions.1) (2023-04-20) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.7.0-alpha-webhook-custom-actions.1 + ## @forestadmin/plugin-aws-s3 [1.1.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.1.1...@forestadmin/plugin-aws-s3@1.1.2) (2023-04-19) diff --git a/packages/plugin-aws-s3/package.json b/packages/plugin-aws-s3/package.json index a229f0b736..df2e85ca99 100644 --- a/packages/plugin-aws-s3/package.json +++ b/packages/plugin-aws-s3/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/plugin-aws-s3", - "version": "1.1.2", + "version": "1.1.3-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -16,7 +16,7 @@ "@aws-sdk/s3-request-presigner": "^3.157.0" }, "devDependencies": { - "@forestadmin/datasource-customizer": "1.6.2", + "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.4.3" }, "files": [ From 0ceaee3bb013728dae4de70e02c8a88ef6d91148 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 20 Apr 2023 14:18:45 +0000 Subject: [PATCH 10/61] chore(release): @forestadmin/plugin-flattener@1.0.18-alpha-webhook-custom-actions.1 [skip ci] ## [1.0.18-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.17...@forestadmin/plugin-flattener@1.0.18-alpha-webhook-custom-actions.1) (2023-04-20) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/plugin-flattener/CHANGELOG.md | 10 ++++++++++ packages/plugin-flattener/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/plugin-flattener/CHANGELOG.md b/packages/plugin-flattener/CHANGELOG.md index 3d0983bca4..b20670294d 100644 --- a/packages/plugin-flattener/CHANGELOG.md +++ b/packages/plugin-flattener/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/plugin-flattener [1.0.18-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.17...@forestadmin/plugin-flattener@1.0.18-alpha-webhook-custom-actions.1) (2023-04-20) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.7.0-alpha-webhook-custom-actions.1 + ## @forestadmin/plugin-flattener [1.0.17](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.16...@forestadmin/plugin-flattener@1.0.17) (2023-04-19) diff --git a/packages/plugin-flattener/package.json b/packages/plugin-flattener/package.json index f81844b71e..4cb7b8d66a 100644 --- a/packages/plugin-flattener/package.json +++ b/packages/plugin-flattener/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/plugin-flattener", - "version": "1.0.17", + "version": "1.0.18-alpha-webhook-custom-actions.1", "description": "A plugin that allows to flatten columns and relations in Forest Admin", "main": "dist/index.js", "license": "GPL-3.0", @@ -24,7 +24,7 @@ "test": "jest" }, "devDependencies": { - "@forestadmin/datasource-customizer": "1.6.2", + "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", "@types/object-hash": "^3.0.2" }, "dependencies": { From 368293cfe01cfc37d1483c13aa3d2fe7a5e7341e Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Thu, 20 Apr 2023 17:38:43 +0200 Subject: [PATCH 11/61] refactor(webhook-custom-actions): declare active features in a simpler way when building the schema [force release] (#678) --- packages/agent/src/agent.ts | 17 +++++++------ .../action-customization.ts | 1 + .../src/utils/forest-schema/generator.ts | 24 +++++++++++++++---- packages/agent/test/agent.test.ts | 1 + .../utils/forest-schema/generator.test.ts | 8 +++---- 5 files changed, 32 insertions(+), 19 deletions(-) diff --git a/packages/agent/src/agent.ts b/packages/agent/src/agent.ts index 4eb6c43444..127408dcc9 100644 --- a/packages/agent/src/agent.ts +++ b/packages/agent/src/agent.ts @@ -200,14 +200,13 @@ export default class Agent extends FrameworkMounter this.options.logger('Info', message); } - private buildSchemaFeatures(): Record | null { - if (this.options.experimental?.webhookCustomActions) { - return { - // Versions correspond to the version of the feature - 'webhook-custom-actions': ActionCustomizationService.VERSION, - }; - } - - return null; + private buildSchemaFeatures(): string[] | null { + const mapping: Record = { + webhookCustomActions: ActionCustomizationService.FEATURE, + }; + + return Object.entries(mapping) + .filter(([experimentalFeature]) => this.options.experimental?.[experimentalFeature]) + .map(([, feature]) => feature); } } diff --git a/packages/agent/src/services/model-customizations/action-customization.ts b/packages/agent/src/services/model-customizations/action-customization.ts index 2ab9b24e87..d0bc61fa9e 100644 --- a/packages/agent/src/services/model-customizations/action-customization.ts +++ b/packages/agent/src/services/model-customizations/action-customization.ts @@ -13,6 +13,7 @@ import { AgentOptionsWithDefaults } from '../../types'; export default class ActionCustomizationService { public static VERSION = '1.0.0'; + public static FEATURE = 'webhook-custom-actions'; private readonly client: ForestAdminClient; diff --git a/packages/agent/src/utils/forest-schema/generator.ts b/packages/agent/src/utils/forest-schema/generator.ts index 56e822951c..133a233eb5 100644 --- a/packages/agent/src/utils/forest-schema/generator.ts +++ b/packages/agent/src/utils/forest-schema/generator.ts @@ -2,12 +2,10 @@ import { DataSource } from '@forestadmin/datasource-toolkit'; import { ForestSchema } from '@forestadmin/forestadmin-client'; import SchemaGeneratorCollection from './generator-collection'; +import ActionCustomizationService from '../../services/model-customizations/action-customization'; export default class SchemaGenerator { - static async buildSchema( - dataSource: DataSource, - features: Record | null, - ): Promise { + static async buildSchema(dataSource: DataSource, features: string[]): Promise { const { version } = require('../../../package.json'); // eslint-disable-line @typescript-eslint/no-var-requires,global-require,max-len return { @@ -19,7 +17,7 @@ export default class SchemaGenerator { metadata: { liana: 'forest-nodejs-agent', liana_version: version, - liana_features: features, + liana_features: SchemaGenerator.buildFeatures(features), stack: { engine: 'nodejs', engine_version: process.versions && process.versions.node, @@ -27,4 +25,20 @@ export default class SchemaGenerator { }, }; } + + private static buildFeatures(features: string[]): Record { + const result = Object.entries({ + [ActionCustomizationService.FEATURE]: ActionCustomizationService.VERSION, + }) + .filter(([feature]) => features.includes(feature)) + .reduce( + (acc, [feature, version]) => ({ + ...acc, + [feature]: version, + }), + {}, + ); + + return Object.keys(result).length ? result : null; + } } diff --git a/packages/agent/test/agent.test.ts b/packages/agent/test/agent.test.ts index 863a26bedc..1e80fd679e 100644 --- a/packages/agent/test/agent.test.ts +++ b/packages/agent/test/agent.test.ts @@ -41,6 +41,7 @@ jest.mock('../src/services/model-customizations/action-customization', () => ({ __esModule: true, default: class { public static VERSION = '3.14.15'; + public static FEATURE = 'webhook-custom-actions'; addWebhookActions = mockAddWebhookActions; }, })); diff --git a/packages/agent/test/utils/forest-schema/generator.test.ts b/packages/agent/test/utils/forest-schema/generator.test.ts index 40c145858d..6f98653ea3 100644 --- a/packages/agent/test/utils/forest-schema/generator.test.ts +++ b/packages/agent/test/utils/forest-schema/generator.test.ts @@ -6,7 +6,7 @@ describe('SchemaGenerator', () => { const dataSource = factories.dataSource.buildWithCollection( factories.collection.build({ name: 'books' }), ); - const schema = await SchemaGenerator.buildSchema(dataSource, null); + const schema = await SchemaGenerator.buildSchema(dataSource, []); expect(schema).toStrictEqual({ collections: [expect.objectContaining({ name: 'books' })], @@ -29,7 +29,7 @@ describe('SchemaGenerator', () => { factories.collection.build({ name: 'b' }), factories.collection.build({ name: 'a' }), ]); - const schema = await SchemaGenerator.buildSchema(dataSource, null); + const schema = await SchemaGenerator.buildSchema(dataSource, []); expect(schema.collections.map(c => c.name)).toStrictEqual(['a', 'b', 'B', 'ba']); }); @@ -38,9 +38,7 @@ describe('SchemaGenerator', () => { const dataSource = factories.dataSource.buildWithCollection( factories.collection.build({ name: 'books' }), ); - const schema = await SchemaGenerator.buildSchema(dataSource, { - 'webhook-custom-actions': '1.0.0', - }); + const schema = await SchemaGenerator.buildSchema(dataSource, ['webhook-custom-actions']); expect(schema).toStrictEqual({ collections: [expect.objectContaining({ name: 'books' })], From 0bf3e43fdeb94448d7223d369452e60d8fb6f305 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 20 Apr 2023 15:50:26 +0000 Subject: [PATCH 12/61] chore(release): example@1.2.21-alpha-webhook-custom-actions.2 [skip ci] ## example [1.2.21-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.2.21-alpha-webhook-custom-actions.1...example@1.2.21-alpha-webhook-custom-actions.2) (2023-04-20) ### Dependencies * **@forestadmin/agent:** upgraded to 1.9.0-alpha-webhook-custom-actions.2 --- packages/_example/CHANGELOG.md | 10 ++++++++++ packages/_example/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index cccb91123d..016c6f7344 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.2.21-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.2.21-alpha-webhook-custom-actions.1...example@1.2.21-alpha-webhook-custom-actions.2) (2023-04-20) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.9.0-alpha-webhook-custom-actions.2 + ## example [1.2.21-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.2.20...example@1.2.21-alpha-webhook-custom-actions.1) (2023-04-20) diff --git a/packages/_example/package.json b/packages/_example/package.json index f08f7039ab..1bb377171c 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,11 +1,11 @@ { "name": "example", - "version": "1.2.21-alpha-webhook-custom-actions.1", + "version": "1.2.21-alpha-webhook-custom-actions.2", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.1", + "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.2", "@forestadmin/datasource-dummy": "1.0.28-alpha-webhook-custom-actions.1", "@forestadmin/datasource-mongoose": "1.3.5", "@forestadmin/datasource-sequelize": "1.2.15", From e2014e2f21ac1c2a5054e6447c522c39d0de575c Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 20 Apr 2023 15:50:30 +0000 Subject: [PATCH 13/61] chore(release): @forestadmin/agent@1.9.0-alpha-webhook-custom-actions.2 [skip ci] # [1.9.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.1...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.2) (2023-04-20) --- packages/agent/CHANGELOG.md | 2 ++ packages/agent/package.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index ef8c59277f..5bac1438ba 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,5 @@ +# @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.1...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.2) (2023-04-20) + # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.8.9...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.1) (2023-04-20) diff --git a/packages/agent/package.json b/packages/agent/package.json index 5455b02e07..1b14aecaab 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.9.0-alpha-webhook-custom-actions.1", + "version": "1.9.0-alpha-webhook-custom-actions.2", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From 993ac5f8c597d30c3d554318943e21719fccda20 Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Mon, 24 Apr 2023 13:45:21 +0200 Subject: [PATCH 14/61] refactor(webhook-custom-actions): allow customization retrieval to be mocked for FA cloud [force release] (#679) --- .../src/build-application-services.ts | 5 +++- .../model-customization-from-api.ts | 14 ++++----- .../src/permissions/forest-http-api.ts | 14 ++++++++- packages/forestadmin-client/src/types.ts | 4 ++- .../forest-admin-server-interface.ts | 1 + .../model-customization-from-api.ts | 7 ++++- .../model-customization-from-api.test.ts | 30 +++++++------------ .../test/permissions/forest-http-api.test.ts | 8 +++++ 8 files changed, 52 insertions(+), 31 deletions(-) diff --git a/packages/forestadmin-client/src/build-application-services.ts b/packages/forestadmin-client/src/build-application-services.ts index 279bd95964..503e1a9830 100644 --- a/packages/forestadmin-client/src/build-application-services.ts +++ b/packages/forestadmin-client/src/build-application-services.ts @@ -58,6 +58,9 @@ export default function buildApplicationServices( ipWhitelist: new IpWhiteListService(optionsWithDefaults), schema: new SchemaService(optionsWithDefaults), auth: new AuthService(optionsWithDefaults), - modelCustomizationService: new ModelCustomizationFromApiService(optionsWithDefaults), + modelCustomizationService: new ModelCustomizationFromApiService( + forestAdminServerInterface, + optionsWithDefaults, + ), }; } diff --git a/packages/forestadmin-client/src/model-customizations/model-customization-from-api.ts b/packages/forestadmin-client/src/model-customizations/model-customization-from-api.ts index 381cf89a85..0e00c4f2c4 100644 --- a/packages/forestadmin-client/src/model-customizations/model-customization-from-api.ts +++ b/packages/forestadmin-client/src/model-customizations/model-customization-from-api.ts @@ -6,8 +6,7 @@ import { WebhookActionConfiguration, WebhookActionConfigurationApi, } from './types'; -import { ForestAdminClientOptionsWithDefaults } from '../types'; -import ServerUtils from '../utils/server'; +import { ForestAdminClientOptionsWithDefaults, ForestAdminServerInterface } from '../types'; function mapApiValues( modelCustomization: ModelCustomization, @@ -32,14 +31,13 @@ function mapApiValues( } export default class ModelCustomizationFromApiService implements ModelCustomizationService { - constructor(private readonly options: ForestAdminClientOptionsWithDefaults) {} + constructor( + private readonly forestadminServerInterface: ForestAdminServerInterface, + private readonly options: ForestAdminClientOptionsWithDefaults, + ) {} async getConfiguration(): Promise { - const result = await ServerUtils.query[]>( - this.options, - 'get', - '/liana/model-customizations', - ); + const result = await this.forestadminServerInterface.getModelCustomizations(this.options); return result.map(mapApiValues); } diff --git a/packages/forestadmin-client/src/permissions/forest-http-api.ts b/packages/forestadmin-client/src/permissions/forest-http-api.ts index 935352170a..30ad9a2988 100644 --- a/packages/forestadmin-client/src/permissions/forest-http-api.ts +++ b/packages/forestadmin-client/src/permissions/forest-http-api.ts @@ -1,8 +1,12 @@ import { EnvironmentPermissionsV4, RenderingPermissionV4, UserPermissionV4 } from './types'; +import { ModelCustomization, WebhookActionConfigurationApi } from '../model-customizations/types'; import { ForestAdminClientOptionsWithDefaults, ForestAdminServerInterface } from '../types'; import ServerUtils from '../utils/server'; -type HttpOptions = Pick; +export type HttpOptions = Pick< + ForestAdminClientOptionsWithDefaults, + 'envSecret' | 'forestServerUrl' +>; export default class ForestHttpApi implements ForestAdminServerInterface { async getEnvironmentPermissions(options: HttpOptions): Promise { @@ -19,4 +23,12 @@ export default class ForestHttpApi implements ForestAdminServerInterface { ): Promise { return ServerUtils.query(options, 'get', `/liana/v4/permissions/renderings/${renderingId}`); } + + async getModelCustomizations(options: HttpOptions): Promise { + return ServerUtils.query[]>( + options, + 'get', + '/liana/model-customizations', + ); + } } diff --git a/packages/forestadmin-client/src/types.ts b/packages/forestadmin-client/src/types.ts index ae191fae27..b7c3bfdc50 100644 --- a/packages/forestadmin-client/src/types.ts +++ b/packages/forestadmin-client/src/types.ts @@ -4,7 +4,8 @@ import type { Client } from 'openid-client'; import { UserInfo } from './auth/types'; import { IpWhitelistConfiguration } from './ip-whitelist/types'; -import { ModelCustomizationService } from './model-customizations/types'; +import { ModelCustomization, ModelCustomizationService } from './model-customizations/types'; +import { HttpOptions } from './permissions/forest-http-api'; import { CollectionActionEvent, EnvironmentPermissionsV4, @@ -143,4 +144,5 @@ export interface ForestAdminServerInterface { getEnvironmentPermissions: (...args) => Promise; getUsers: (...args) => Promise; getRenderingPermissions: (renderingId: number, ...args) => Promise; + getModelCustomizations: (options: HttpOptions) => Promise; } diff --git a/packages/forestadmin-client/test/__factories__/forest-admin-server-interface.ts b/packages/forestadmin-client/test/__factories__/forest-admin-server-interface.ts index 7f95f71845..0d4dd5b770 100644 --- a/packages/forestadmin-client/test/__factories__/forest-admin-server-interface.ts +++ b/packages/forestadmin-client/test/__factories__/forest-admin-server-interface.ts @@ -6,4 +6,5 @@ export default Factory.define(() => ({ getRenderingPermissions: jest.fn(), getEnvironmentPermissions: jest.fn(), getUsers: jest.fn(), + getModelCustomizations: jest.fn(), })); diff --git a/packages/forestadmin-client/test/__factories__/model-customizations/model-customization-from-api.ts b/packages/forestadmin-client/test/__factories__/model-customizations/model-customization-from-api.ts index c043bbe54e..fe61b95368 100644 --- a/packages/forestadmin-client/test/__factories__/model-customizations/model-customization-from-api.ts +++ b/packages/forestadmin-client/test/__factories__/model-customizations/model-customization-from-api.ts @@ -2,6 +2,7 @@ import { Factory } from 'fishery'; import ModelCustomizationFromApiService from '../../../src/model-customizations/model-customization-from-api'; import forestAdminClientOptionsFactory from '../forest-admin-client-options'; +import { forestAdminServerInterface } from '../index'; export class ModelCustomizationServiceFactory extends Factory { mockAllMethods() { @@ -12,7 +13,11 @@ export class ModelCustomizationServiceFactory extends Factory new ModelCustomizationFromApiService(forestAdminClientOptionsFactory.build()), + () => + new ModelCustomizationFromApiService( + forestAdminServerInterface.build(), + forestAdminClientOptionsFactory.build(), + ), ); export default modelCustomizationServiceFactory; diff --git a/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts b/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts index 9e2c055fd1..b89af7e832 100644 --- a/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts +++ b/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts @@ -4,15 +4,9 @@ import { ModelCustomization, WebhookActionConfigurationApi, } from '../../src/model-customizations/types'; -import ServerUtils from '../../src/utils/server'; +import { forestAdminServerInterface } from '../__factories__'; import forestadminClientOptionsFactory from '../__factories__/forest-admin-client-options'; -jest.mock('../../src/utils/server', () => ({ - query: jest.fn(), -})); - -const ServerUtilsMock = ServerUtils as jest.Mocked; - describe('ModelCustomizationFromApiService', () => { beforeEach(() => { jest.clearAllMocks(); @@ -24,7 +18,8 @@ describe('ModelCustomizationFromApiService', () => { it.each(['Global', 'Bulk', 'Single'] as ActionScope[])( 'should retrieve the configuration from the API and map values for the scope %s', async scope => { - ServerUtilsMock.query.mockResolvedValueOnce([ + const forestadminServer = forestAdminServerInterface.build(); + (forestadminServer.getModelCustomizations as jest.Mock).mockResolvedValueOnce([ { name: 'test', type: 'action', @@ -40,7 +35,7 @@ describe('ModelCustomizationFromApiService', () => { const options = forestadminClientOptionsFactory.build(); - const modelCustomizations = new ModelCustomizationService(options); + const modelCustomizations = new ModelCustomizationService(forestadminServer, options); const configuration = await modelCustomizations.getConfiguration(); @@ -58,12 +53,8 @@ describe('ModelCustomizationFromApiService', () => { }, ]); - expect(ServerUtilsMock.query).toHaveBeenCalledTimes(1); - expect(ServerUtilsMock.query).toHaveBeenCalledWith( - options, - 'get', - '/liana/model-customizations', - ); + expect(forestadminServer.getModelCustomizations).toHaveBeenCalledTimes(1); + expect(forestadminServer.getModelCustomizations).toHaveBeenCalledWith(options); }, ); }); @@ -71,7 +62,10 @@ describe('ModelCustomizationFromApiService', () => { describe('with unsupported types', () => { it('should throw an error', async () => { - ServerUtilsMock.query.mockResolvedValueOnce([ + const options = forestadminClientOptionsFactory.build(); + const forestadminServer = forestAdminServerInterface.build(); + + (forestadminServer.getModelCustomizations as jest.Mock).mockResolvedValueOnce([ { name: 'test', type: 'unsupported', @@ -80,9 +74,7 @@ describe('ModelCustomizationFromApiService', () => { }, ]); - const options = forestadminClientOptionsFactory.build(); - - const modelCustomizations = new ModelCustomizationService(options); + const modelCustomizations = new ModelCustomizationService(forestadminServer, options); await expect(modelCustomizations.getConfiguration()).rejects.toThrow( 'Only action customizations are supported for now.', diff --git a/packages/forestadmin-client/test/permissions/forest-http-api.test.ts b/packages/forestadmin-client/test/permissions/forest-http-api.test.ts index 18628d479a..71ac6eeefc 100644 --- a/packages/forestadmin-client/test/permissions/forest-http-api.test.ts +++ b/packages/forestadmin-client/test/permissions/forest-http-api.test.ts @@ -34,4 +34,12 @@ describe('ForestHttpApi', () => { '/liana/v4/permissions/renderings/42', ); }); + + describe('getModelCustomizations', () => { + it('should call the right endpoint', async () => { + await new ForestHttpApi().getModelCustomizations(options); + + expect(ServerUtils.query).toHaveBeenCalledWith(options, 'get', '/liana/model-customizations'); + }); + }); }); From e110eeb6973a839d18aa734655153d7f93b48c12 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Mon, 24 Apr 2023 11:57:06 +0000 Subject: [PATCH 15/61] chore(release): @forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.2 [skip ci] # @forestadmin/forestadmin-client [1.2.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.1...@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.2) (2023-04-24) --- packages/forestadmin-client/CHANGELOG.md | 2 ++ packages/forestadmin-client/package.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/forestadmin-client/CHANGELOG.md b/packages/forestadmin-client/CHANGELOG.md index 8609aca2bb..1e14ca8c57 100644 --- a/packages/forestadmin-client/CHANGELOG.md +++ b/packages/forestadmin-client/CHANGELOG.md @@ -1,3 +1,5 @@ +# @forestadmin/forestadmin-client [1.2.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.1...@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.2) (2023-04-24) + # @forestadmin/forestadmin-client [1.2.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.1.12...@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.1) (2023-04-20) diff --git a/packages/forestadmin-client/package.json b/packages/forestadmin-client/package.json index e63df4da68..702adbb36d 100644 --- a/packages/forestadmin-client/package.json +++ b/packages/forestadmin-client/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/forestadmin-client", - "version": "1.2.0-alpha-webhook-custom-actions.1", + "version": "1.2.0-alpha-webhook-custom-actions.2", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From 7bee40b43dc4e5b1663a47212600d66790049159 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Mon, 24 Apr 2023 11:57:09 +0000 Subject: [PATCH 16/61] chore(release): example@1.2.21-alpha-webhook-custom-actions.3 [skip ci] ## [1.2.21-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.2.21-alpha-webhook-custom-actions.2...example@1.2.21-alpha-webhook-custom-actions.3) (2023-04-24) --- packages/_example/CHANGELOG.md | 10 ++++++++++ packages/_example/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index 016c6f7344..2fa3cd8aba 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.2.21-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.2.21-alpha-webhook-custom-actions.2...example@1.2.21-alpha-webhook-custom-actions.3) (2023-04-24) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.9.0-alpha-webhook-custom-actions.3 + ## example [1.2.21-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.2.21-alpha-webhook-custom-actions.1...example@1.2.21-alpha-webhook-custom-actions.2) (2023-04-20) diff --git a/packages/_example/package.json b/packages/_example/package.json index 1bb377171c..0646633271 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,11 +1,11 @@ { "name": "example", - "version": "1.2.21-alpha-webhook-custom-actions.2", + "version": "1.2.21-alpha-webhook-custom-actions.3", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.2", + "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.3", "@forestadmin/datasource-dummy": "1.0.28-alpha-webhook-custom-actions.1", "@forestadmin/datasource-mongoose": "1.3.5", "@forestadmin/datasource-sequelize": "1.2.15", From 7ae5327cab362bdc865f11292c0335efa05ed520 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Mon, 24 Apr 2023 11:57:12 +0000 Subject: [PATCH 17/61] chore(release): @forestadmin/agent@1.9.0-alpha-webhook-custom-actions.3 [skip ci] # [1.9.0-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.2...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.3) (2023-04-24) --- packages/agent/CHANGELOG.md | 10 ++++++++++ packages/agent/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 5bac1438ba..e20a576291 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,13 @@ +# @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.2...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.3) (2023-04-24) + + + + + +### Dependencies + +* **@forestadmin/forestadmin-client:** upgraded to 1.2.0-alpha-webhook-custom-actions.2 + # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.1...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.2) (2023-04-20) # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.8.9...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.1) (2023-04-20) diff --git a/packages/agent/package.json b/packages/agent/package.json index 1b14aecaab..6e34d69435 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.9.0-alpha-webhook-custom-actions.2", + "version": "1.9.0-alpha-webhook-custom-actions.3", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -16,7 +16,7 @@ "@fastify/express": "^1.1.0", "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.4.3", - "@forestadmin/forestadmin-client": "1.2.0-alpha-webhook-custom-actions.1", + "@forestadmin/forestadmin-client": "1.2.0-alpha-webhook-custom-actions.2", "@koa/cors": "^4.0.0", "@koa/router": "^12.0.0", "forest-ip-utils": "^1.0.1", From 64c8df5045ed622893df46cc4292be06088ae6c2 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Fri, 28 Apr 2023 14:59:14 +0000 Subject: [PATCH 18/61] chore(release): @forestadmin/plugin-export-advanced@1.0.7-alpha-webhook-custom-actions.1 [skip ci] ## @forestadmin/plugin-export-advanced [1.0.7-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.6...@forestadmin/plugin-export-advanced@1.0.7-alpha-webhook-custom-actions.1) (2023-04-28) ### Dependencies * **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.1 --- packages/plugin-export-advanced/CHANGELOG.md | 10 ++++++++++ packages/plugin-export-advanced/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/plugin-export-advanced/CHANGELOG.md b/packages/plugin-export-advanced/CHANGELOG.md index 3cfef9918e..3dc9f04614 100644 --- a/packages/plugin-export-advanced/CHANGELOG.md +++ b/packages/plugin-export-advanced/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/plugin-export-advanced [1.0.7-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.6...@forestadmin/plugin-export-advanced@1.0.7-alpha-webhook-custom-actions.1) (2023-04-28) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.1 + ## @forestadmin/plugin-export-advanced [1.0.6](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.5...@forestadmin/plugin-export-advanced@1.0.6) (2023-04-27) diff --git a/packages/plugin-export-advanced/package.json b/packages/plugin-export-advanced/package.json index cb0b7a909b..30b10b7dff 100644 --- a/packages/plugin-export-advanced/package.json +++ b/packages/plugin-export-advanced/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/plugin-export-advanced", - "version": "1.0.5-alpha-webhook-custom-actions.1", + "version": "1.0.7-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -15,7 +15,7 @@ "excel4node": "^1.8.0" }, "devDependencies": { - "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.5.0" }, "files": [ From 878745786fccf2794e015ff98932d8b9dc43f111 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Fri, 28 Apr 2023 14:59:19 +0000 Subject: [PATCH 19/61] chore(release): example@1.3.3-alpha-webhook-custom-actions.1 [skip ci] ## [1.3.3-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.2...example@1.3.3-alpha-webhook-custom-actions.1) (2023-04-28) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/_example/CHANGELOG.md | 11 +++++++++++ packages/_example/package.json | 6 +++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index 77d6df5211..9a4d639ba4 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,14 @@ +## example [1.3.3-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.2...example@1.3.3-alpha-webhook-custom-actions.1) (2023-04-28) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.9.0-alpha-webhook-custom-actions.4 +* **@forestadmin/datasource-dummy:** upgraded to 1.0.30-alpha-webhook-custom-actions.1 + ## example [1.3.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.1...example@1.3.2) (2023-04-28) diff --git a/packages/_example/package.json b/packages/_example/package.json index ace1e42e03..a43a455d29 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,12 +1,12 @@ { "name": "example", - "version": "1.2.21-alpha-webhook-custom-actions.3", + "version": "1.3.3-alpha-webhook-custom-actions.1", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.3", - "@forestadmin/datasource-dummy": "1.0.28-alpha-webhook-custom-actions.1", + "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.4", + "@forestadmin/datasource-dummy": "1.0.30-alpha-webhook-custom-actions.1", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.0", "@forestadmin/datasource-sql": "1.5.0", From 331aa4dad21c5ac74dae7e3d6ff798b6a3e147be Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Fri, 28 Apr 2023 14:59:25 +0000 Subject: [PATCH 20/61] chore(release): @forestadmin/agent@1.9.0-alpha-webhook-custom-actions.4 [skip ci] # [1.9.0-alpha-webhook-custom-actions.4](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.3...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.4) (2023-04-28) ### Bug Fixes * **agent:** improve error message when validating projections ([#683](https://github.com/ForestAdmin/agent-nodejs/issues/683)) ([5e1baa9](https://github.com/ForestAdmin/agent-nodejs/commit/5e1baa9c413bce4716cc0f6b0b194ea271218c7d)) * **customizer:** crash at startup when using collections with native actions ([#681](https://github.com/ForestAdmin/agent-nodejs/issues/681)) ([abe3edf](https://github.com/ForestAdmin/agent-nodejs/commit/abe3edfd476d4d0fe9b14f1d8b7c40717e3e349a)) * **datasource-dummy:** correct relation definition ([#682](https://github.com/ForestAdmin/agent-nodejs/issues/682)) ([2ff0c9e](https://github.com/ForestAdmin/agent-nodejs/commit/2ff0c9e9a034dcb3111ca7db0fed8d809434dfde)) ### Features * **datasource-customizer:** add support for binary fields ([#673](https://github.com/ForestAdmin/agent-nodejs/issues/673)) ([419727c](https://github.com/ForestAdmin/agent-nodejs/commit/419727cce812af10fa5917f1b94a2064d06883f7)) --- packages/agent/CHANGELOG.md | 15 +++++++++++++++ packages/agent/package.json | 4 ++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 76b5d30b91..7696531a34 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,18 @@ +# @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.4](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.3...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.4) (2023-04-28) + + +### Bug Fixes + +* **agent:** improve error message when validating projections ([#683](https://github.com/ForestAdmin/agent-nodejs/issues/683)) ([5e1baa9](https://github.com/ForestAdmin/agent-nodejs/commit/5e1baa9c413bce4716cc0f6b0b194ea271218c7d)) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.1 + ## @forestadmin/agent [1.8.12](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.8.11...@forestadmin/agent@1.8.12) (2023-04-28) diff --git a/packages/agent/package.json b/packages/agent/package.json index e56b475543..9c173fb1f2 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.9.0-alpha-webhook-custom-actions.3", + "version": "1.9.0-alpha-webhook-custom-actions.4", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -14,7 +14,7 @@ "dependencies": { "@fast-csv/format": "^4.3.5", "@fastify/express": "^1.1.0", - "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.5.0", "@forestadmin/forestadmin-client": "1.2.0-alpha-webhook-custom-actions.2", "@koa/cors": "^4.0.0", From 805371b044b32d89d42916e77b882b156d924867 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Fri, 28 Apr 2023 14:59:29 +0000 Subject: [PATCH 21/61] chore(release): @forestadmin/datasource-customizer@1.8.0-alpha-webhook-custom-actions.1 [skip ci] # [1.8.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.7.1...@forestadmin/datasource-customizer@1.8.0-alpha-webhook-custom-actions.1) (2023-04-28) ### Bug Fixes * **agent:** improve error message when validating projections ([#683](https://github.com/ForestAdmin/agent-nodejs/issues/683)) ([5e1baa9](https://github.com/ForestAdmin/agent-nodejs/commit/5e1baa9c413bce4716cc0f6b0b194ea271218c7d)) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/datasource-customizer/CHANGELOG.md | 7 +++++++ packages/datasource-customizer/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/datasource-customizer/CHANGELOG.md b/packages/datasource-customizer/CHANGELOG.md index c5fc5bacea..72909b5b59 100644 --- a/packages/datasource-customizer/CHANGELOG.md +++ b/packages/datasource-customizer/CHANGELOG.md @@ -1,3 +1,10 @@ +# @forestadmin/datasource-customizer [1.8.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.7.1...@forestadmin/datasource-customizer@1.8.0-alpha-webhook-custom-actions.1) (2023-04-28) + + +### Features + +* **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) + ## @forestadmin/datasource-customizer [1.7.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.7.0...@forestadmin/datasource-customizer@1.7.1) (2023-04-27) diff --git a/packages/datasource-customizer/package.json b/packages/datasource-customizer/package.json index 31f18af3a6..db4f7947e2 100644 --- a/packages/datasource-customizer/package.json +++ b/packages/datasource-customizer/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/datasource-customizer", - "version": "1.7.0-alpha-webhook-custom-actions.1", + "version": "1.8.0-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From 41d2a4877aa8a9bd9ac66d0dd9f2de4f41d96648 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Fri, 28 Apr 2023 14:59:34 +0000 Subject: [PATCH 22/61] chore(release): @forestadmin/datasource-dummy@1.0.30-alpha-webhook-custom-actions.1 [skip ci] ## [1.0.30-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.29...@forestadmin/datasource-dummy@1.0.30-alpha-webhook-custom-actions.1) (2023-04-28) ### Bug Fixes * **agent:** improve error message when validating projections ([#683](https://github.com/ForestAdmin/agent-nodejs/issues/683)) ([5e1baa9](https://github.com/ForestAdmin/agent-nodejs/commit/5e1baa9c413bce4716cc0f6b0b194ea271218c7d)) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/datasource-dummy/CHANGELOG.md | 10 ++++++++++ packages/datasource-dummy/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/datasource-dummy/CHANGELOG.md b/packages/datasource-dummy/CHANGELOG.md index ede96534e1..6e241dc8d9 100644 --- a/packages/datasource-dummy/CHANGELOG.md +++ b/packages/datasource-dummy/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/datasource-dummy [1.0.30-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.29...@forestadmin/datasource-dummy@1.0.30-alpha-webhook-custom-actions.1) (2023-04-28) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.1 + ## @forestadmin/datasource-dummy [1.0.29](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.28...@forestadmin/datasource-dummy@1.0.29) (2023-04-27) diff --git a/packages/datasource-dummy/package.json b/packages/datasource-dummy/package.json index 46077ff00c..377759ae53 100644 --- a/packages/datasource-dummy/package.json +++ b/packages/datasource-dummy/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/datasource-dummy", - "version": "1.0.28-alpha-webhook-custom-actions.1", + "version": "1.0.30-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -12,7 +12,7 @@ "directory": "packages/datasource-dummy" }, "dependencies": { - "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.5.0" }, "files": [ From 9f952c22f74845da455cdd593db3ad9963c2c483 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Fri, 28 Apr 2023 14:59:38 +0000 Subject: [PATCH 23/61] chore(release): @forestadmin/plugin-aws-s3@1.1.5-alpha-webhook-custom-actions.1 [skip ci] ## [1.1.5-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.1.4...@forestadmin/plugin-aws-s3@1.1.5-alpha-webhook-custom-actions.1) (2023-04-28) ### Bug Fixes * **agent:** improve error message when validating projections ([#683](https://github.com/ForestAdmin/agent-nodejs/issues/683)) ([5e1baa9](https://github.com/ForestAdmin/agent-nodejs/commit/5e1baa9c413bce4716cc0f6b0b194ea271218c7d)) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/plugin-aws-s3/CHANGELOG.md | 10 ++++++++++ packages/plugin-aws-s3/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/plugin-aws-s3/CHANGELOG.md b/packages/plugin-aws-s3/CHANGELOG.md index a5f6a31d96..3a4519aac8 100644 --- a/packages/plugin-aws-s3/CHANGELOG.md +++ b/packages/plugin-aws-s3/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/plugin-aws-s3 [1.1.5-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.1.4...@forestadmin/plugin-aws-s3@1.1.5-alpha-webhook-custom-actions.1) (2023-04-28) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.1 + ## @forestadmin/plugin-aws-s3 [1.1.4](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.1.3...@forestadmin/plugin-aws-s3@1.1.4) (2023-04-27) diff --git a/packages/plugin-aws-s3/package.json b/packages/plugin-aws-s3/package.json index 572d6194e9..3b280550e0 100644 --- a/packages/plugin-aws-s3/package.json +++ b/packages/plugin-aws-s3/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/plugin-aws-s3", - "version": "1.1.3-alpha-webhook-custom-actions.1", + "version": "1.1.5-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -16,7 +16,7 @@ "@aws-sdk/s3-request-presigner": "^3.157.0" }, "devDependencies": { - "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.5.0" }, "files": [ From a3fb963cbfd4774e22a3e70641c3c03e98fea1f9 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Fri, 28 Apr 2023 14:59:43 +0000 Subject: [PATCH 24/61] chore(release): @forestadmin/plugin-flattener@1.0.20-alpha-webhook-custom-actions.1 [skip ci] ## [1.0.20-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.19...@forestadmin/plugin-flattener@1.0.20-alpha-webhook-custom-actions.1) (2023-04-28) ### Bug Fixes * **agent:** improve error message when validating projections ([#683](https://github.com/ForestAdmin/agent-nodejs/issues/683)) ([5e1baa9](https://github.com/ForestAdmin/agent-nodejs/commit/5e1baa9c413bce4716cc0f6b0b194ea271218c7d)) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/plugin-flattener/CHANGELOG.md | 10 ++++++++++ packages/plugin-flattener/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/plugin-flattener/CHANGELOG.md b/packages/plugin-flattener/CHANGELOG.md index 4cfde40474..593719df49 100644 --- a/packages/plugin-flattener/CHANGELOG.md +++ b/packages/plugin-flattener/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/plugin-flattener [1.0.20-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.19...@forestadmin/plugin-flattener@1.0.20-alpha-webhook-custom-actions.1) (2023-04-28) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.1 + ## @forestadmin/plugin-flattener [1.0.19](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.18...@forestadmin/plugin-flattener@1.0.19) (2023-04-27) diff --git a/packages/plugin-flattener/package.json b/packages/plugin-flattener/package.json index 8c0979f554..24aaf189ff 100644 --- a/packages/plugin-flattener/package.json +++ b/packages/plugin-flattener/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/plugin-flattener", - "version": "1.0.18-alpha-webhook-custom-actions.1", + "version": "1.0.20-alpha-webhook-custom-actions.1", "description": "A plugin that allows to flatten columns and relations in Forest Admin", "main": "dist/index.js", "license": "GPL-3.0", @@ -24,7 +24,7 @@ "test": "jest" }, "devDependencies": { - "@forestadmin/datasource-customizer": "1.7.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", "@types/object-hash": "^3.0.2" }, "dependencies": { From 984f841ec4033c904527f51970aa9a921b543588 Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Tue, 2 May 2023 16:55:12 +0200 Subject: [PATCH 25/61] refactor(webhook-custom-actions): extract the logic of registering webhooks into a static function to facilitate the call from the generator [force release] (#685) --- packages/agent/src/agent.ts | 11 +- .../action-customization.ts | 56 +++-- packages/agent/test/agent.test.ts | 8 +- .../action-customization.test.ts | 191 +++++++++++++++++- 4 files changed, 233 insertions(+), 33 deletions(-) diff --git a/packages/agent/src/agent.ts b/packages/agent/src/agent.ts index 127408dcc9..d635338b38 100644 --- a/packages/agent/src/agent.ts +++ b/packages/agent/src/agent.ts @@ -38,7 +38,7 @@ export default class Agent extends FrameworkMounter private options: AgentOptionsWithDefaults; private customizer: DataSourceCustomizer; private nocodeCustomizer: DataSourceCustomizer; - private actionCustomizationService: ActionCustomizationService; + private actionCustomizationService: ActionCustomizationService; /** * Create a new Agent Builder. @@ -64,7 +64,7 @@ export default class Agent extends FrameworkMounter this.customizer = new DataSourceCustomizer(); this.nocodeCustomizer = new DataSourceCustomizer(); this.nocodeCustomizer.addDataSource(this.customizer.getFactory()); - this.actionCustomizationService = new ActionCustomizationService(allOptions); + this.actionCustomizationService = new ActionCustomizationService(allOptions); } /** @@ -75,9 +75,10 @@ export default class Agent extends FrameworkMounter const dataSource = await this.nocodeCustomizer.getDataSource(logger); - if (this.options.experimental?.webhookCustomActions) { - await this.actionCustomizationService.addWebhookActions(this.nocodeCustomizer); - } + await this.nocodeCustomizer.use( + this.actionCustomizationService.addWebhookActions, + this.options.experimental?.webhookCustomActions, + ); const [router] = await Promise.all([ this.getRouter(dataSource), diff --git a/packages/agent/src/services/model-customizations/action-customization.ts b/packages/agent/src/services/model-customizations/action-customization.ts index d0bc61fa9e..b32f99115a 100644 --- a/packages/agent/src/services/model-customizations/action-customization.ts +++ b/packages/agent/src/services/model-customizations/action-customization.ts @@ -1,4 +1,4 @@ -import { DataSourceCustomizer, TSchema } from '@forestadmin/datasource-customizer'; +import { Plugin } from '@forestadmin/datasource-customizer'; import { ActionConfiguration, ActionType, @@ -11,38 +11,56 @@ import { import executeWebhook from './execute-webhook'; import { AgentOptionsWithDefaults } from '../../types'; -export default class ActionCustomizationService { +function getActions( + type: ActionType, + configuration: ModelCustomization[], +): ModelCustomization[] { + return configuration.filter( + customization => + customization.type === ModelCustomizationType.action && + (customization as ModelCustomization).configuration.type === type, + ) as ModelCustomization[]; +} + +export default class ActionCustomizationService { public static VERSION = '1.0.0'; public static FEATURE = 'webhook-custom-actions'; private readonly client: ForestAdminClient; - public constructor(agentOptions: AgentOptionsWithDefaults) { + public constructor(agentOptions: Pick) { this.client = agentOptions.forestAdminClient; } - public async addWebhookActions(customizer: DataSourceCustomizer) { - const actions = await this.getActions('webhook'); + public addWebhookActions: Plugin = async ( + datasourceCustomizer, + _, + enabled, + ) => { + if (!enabled) return; + + const modelCustomizations = await this.client.modelCustomizationService.getConfiguration(); + + await ActionCustomizationService.addWebhookActions( + datasourceCustomizer, + _, + modelCustomizations, + ); + }; + public static addWebhookActions: Plugin = async ( + datasourceCustomizer, + _, + modelCustomizations, + ) => { + const actions = await getActions('webhook', modelCustomizations); actions.forEach(action => { - const collection = customizer.getCollection(action.modelName as Extract); + const collection = datasourceCustomizer.getCollection(action.modelName); collection.addAction(action.name, { scope: action.configuration.scope, execute: context => executeWebhook(action, context), }); }); - } - - private async getActions( - type: ActionType, - ): Promise[]> { - const configuration = await this.client.modelCustomizationService.getConfiguration(); - - return configuration.filter( - customization => - customization.type === ModelCustomizationType.action && - (customization as ModelCustomization).configuration.type === type, - ) as ModelCustomization[]; - } + }; } diff --git a/packages/agent/test/agent.test.ts b/packages/agent/test/agent.test.ts index 1e80fd679e..401e005382 100644 --- a/packages/agent/test/agent.test.ts +++ b/packages/agent/test/agent.test.ts @@ -19,7 +19,7 @@ jest.mock('../src/routes', () => ({ // Mock options const mockPostSchema = jest.fn(); -const mockAddWebhookActions = jest.fn(); +const mockAddWebhookActions = Symbol('addWebhookActions'); const mockCustomizer = { addDataSource: jest.fn(), @@ -33,6 +33,7 @@ const mockCustomizer = { const mockNocodeCustomizer = { addDataSource: jest.fn(), getDataSource: jest.fn(), + use: jest.fn().mockReturnThis(), }; const mockDatasourceCustomizer = DataSourceCustomizer as jest.Mock; @@ -134,8 +135,6 @@ describe('Agent', () => { stack: expect.anything(), }, }); - - expect(mockAddWebhookActions).not.toHaveBeenCalled(); }); test('that should upload the schema with experimental features', async () => { @@ -165,7 +164,8 @@ describe('Agent', () => { }, }); - expect(mockAddWebhookActions).toHaveBeenCalledTimes(1); + expect(mockNocodeCustomizer.use).toHaveBeenCalledTimes(1); + expect(mockNocodeCustomizer.use).toHaveBeenCalledWith(mockAddWebhookActions, true); }); }); diff --git a/packages/agent/test/services/model-customizations/action-customization.test.ts b/packages/agent/test/services/model-customizations/action-customization.test.ts index 5c1c9652a6..45bd6aa768 100644 --- a/packages/agent/test/services/model-customizations/action-customization.test.ts +++ b/packages/agent/test/services/model-customizations/action-customization.test.ts @@ -1,4 +1,4 @@ -import { ActionContext } from '@forestadmin/datasource-customizer'; +import { ActionContext, CollectionCustomizer } from '@forestadmin/datasource-customizer'; import { ActionScope } from '@forestadmin/datasource-toolkit'; import { ActionType, @@ -51,7 +51,11 @@ describe('Services > ModelCustomizations > ActionCustomization', () => { }; (customizer.getCollection as jest.Mock).mockReturnValue(collection); - await actionCustomization.addWebhookActions(customizer); + await actionCustomization.addWebhookActions( + customizer, + undefined as unknown as CollectionCustomizer, + true, + ); expect(collection.addAction).toHaveBeenCalledWith('myAction', { scope, @@ -90,7 +94,11 @@ describe('Services > ModelCustomizations > ActionCustomization', () => { }; (customizer.getCollection as jest.Mock).mockReturnValue(collection); - await actionCustomization.addWebhookActions(customizer); + await actionCustomization.addWebhookActions( + customizer, + undefined as unknown as CollectionCustomizer, + true, + ); const { execute } = collection.addAction.mock.calls[0][1]; @@ -127,7 +135,11 @@ describe('Services > ModelCustomizations > ActionCustomization', () => { }; (customizer.getCollection as jest.Mock).mockReturnValue(collection); - await actionCustomization.addWebhookActions(customizer); + await actionCustomization.addWebhookActions( + customizer, + undefined as unknown as CollectionCustomizer, + true, + ); expect(collection.addAction).not.toHaveBeenCalled(); }); @@ -158,7 +170,176 @@ describe('Services > ModelCustomizations > ActionCustomization', () => { }; (customizer.getCollection as jest.Mock).mockReturnValue(collection); - await actionCustomization.addWebhookActions(customizer); + await actionCustomization.addWebhookActions( + customizer, + undefined as unknown as CollectionCustomizer, + true, + ); + + expect(collection.addAction).not.toHaveBeenCalled(); + }); + + it.each([false, undefined])( + 'should not register the webhook when the feature is disabled (%s)', + async optionValue => { + const options = forestAdminHttpDriverOptions.build(); + + const actionCustomization = new ActionCustomizationService(options); + + const action = { + name: 'myAction', + type: ModelCustomizationType.action, + modelName: 'myModel', + configuration: { + type: 'webhook', + scope: 'Global', + url: 'https://my-url.com', + }, + }; + + ( + options.forestAdminClient.modelCustomizationService.getConfiguration as jest.Mock + ).mockResolvedValue([action]); + + const customizer = dataSourceCustomizerFactory.mockAllMethods().build(); + const collection = { + addAction: jest.fn(), + }; + (customizer.getCollection as jest.Mock).mockReturnValue(collection); + + await actionCustomization.addWebhookActions( + customizer, + undefined as unknown as CollectionCustomizer, + optionValue, + ); + + expect(collection.addAction).not.toHaveBeenCalled(); + }, + ); + }); + + describe('static addWebhookActions', () => { + it.each(['Global', 'Single', 'Bulk'] as ActionScope[])( + 'should register a webhook action with the scope $scope', + async scope => { + const action = { + name: 'myAction', + type: ModelCustomizationType.action, + modelName: 'myModel', + configuration: { + type: 'webhook', + scope, + url: 'https://my-url.com', + }, + }; + + const customizer = dataSourceCustomizerFactory.mockAllMethods().build(); + const collection = { + addAction: jest.fn(), + }; + (customizer.getCollection as jest.Mock).mockReturnValue(collection); + + await ActionCustomizationService.addWebhookActions( + customizer, + undefined as unknown as CollectionCustomizer, + [action], + ); + + expect(collection.addAction).toHaveBeenCalledWith('myAction', { + scope, + execute: expect.any(Function), + }); + expect(customizer.getCollection).toHaveBeenCalledWith('myModel'); + }, + ); + + it('should execute the webhook', async () => { + const action = { + name: 'myAction', + type: ModelCustomizationType.action, + modelName: 'myModel', + configuration: { + type: 'webhook', + scope: 'Global', + url: 'https://my-url.com', + }, + }; + + const customizer = dataSourceCustomizerFactory.mockAllMethods().build(); + const collection = { + addAction: jest.fn(), + }; + (customizer.getCollection as jest.Mock).mockReturnValue(collection); + + await ActionCustomizationService.addWebhookActions( + customizer, + undefined as unknown as CollectionCustomizer, + [action], + ); + + const { execute } = collection.addAction.mock.calls[0][1]; + + const context = { getRecords: jest.fn() } as unknown as ActionContext; + + await execute(context); + + expect(executeWebhookMock).toHaveBeenCalledWith(action, context); + }); + + it('should not use customizations that are not actions', async () => { + const configuration = [ + { + name: 'myAction', + type: 'field' as ModelCustomizationType, + modelName: 'myModel', + configuration: { + type: 'webhook', + scope: 'Global', + url: 'https://my-url.com', + }, + }, + ]; + + const customizer = dataSourceCustomizerFactory.mockAllMethods().build(); + const collection = { + addAction: jest.fn(), + }; + (customizer.getCollection as jest.Mock).mockReturnValue(collection); + + await ActionCustomizationService.addWebhookActions( + customizer, + undefined as unknown as CollectionCustomizer, + configuration, + ); + + expect(collection.addAction).not.toHaveBeenCalled(); + }); + + it('should not use actions that are not webhooks', async () => { + const configuration = [ + { + name: 'myAction', + type: ModelCustomizationType.action, + modelName: 'myModel', + configuration: { + type: 'other' as ActionType, + scope: 'Global', + url: 'https://my-url.com', + }, + }, + ]; + + const customizer = dataSourceCustomizerFactory.mockAllMethods().build(); + const collection = { + addAction: jest.fn(), + }; + (customizer.getCollection as jest.Mock).mockReturnValue(collection); + + await ActionCustomizationService.addWebhookActions( + customizer, + undefined as unknown as CollectionCustomizer, + configuration, + ); expect(collection.addAction).not.toHaveBeenCalled(); }); From dd94e7d8280abaaf52e9a78d0bc428e462ad1755 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Tue, 2 May 2023 15:10:57 +0000 Subject: [PATCH 26/61] chore(release): @forestadmin/agent@1.9.0-alpha-webhook-custom-actions.5 [skip ci] # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.5](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.4...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.5) (2023-05-02) --- packages/agent/CHANGELOG.md | 2 ++ packages/agent/package.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 7696531a34..4bbd09adcd 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,5 @@ +# @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.5](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.4...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.5) (2023-05-02) + # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.4](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.3...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.4) (2023-04-28) diff --git a/packages/agent/package.json b/packages/agent/package.json index 9c173fb1f2..f7a736e5e5 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.9.0-alpha-webhook-custom-actions.4", + "version": "1.9.0-alpha-webhook-custom-actions.5", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From 52adcac10f25dc8e320ebf27844f3391616a9f94 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Tue, 2 May 2023 15:11:02 +0000 Subject: [PATCH 27/61] chore(release): example@1.3.3-alpha-webhook-custom-actions.2 [skip ci] ## [1.3.3-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.3-alpha-webhook-custom-actions.1...example@1.3.3-alpha-webhook-custom-actions.2) (2023-05-02) --- packages/_example/CHANGELOG.md | 10 ++++++++++ packages/_example/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index 9a4d639ba4..cb825c341a 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.3.3-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.3-alpha-webhook-custom-actions.1...example@1.3.3-alpha-webhook-custom-actions.2) (2023-05-02) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.9.0-alpha-webhook-custom-actions.5 + ## example [1.3.3-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.2...example@1.3.3-alpha-webhook-custom-actions.1) (2023-04-28) diff --git a/packages/_example/package.json b/packages/_example/package.json index a43a455d29..1b901a2ba0 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,11 +1,11 @@ { "name": "example", - "version": "1.3.3-alpha-webhook-custom-actions.1", + "version": "1.3.3-alpha-webhook-custom-actions.2", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.4", + "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.5", "@forestadmin/datasource-dummy": "1.0.30-alpha-webhook-custom-actions.1", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.0", From fd9334a76699f33e217f766b1ed29a7be179951c Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Wed, 3 May 2023 15:52:17 +0200 Subject: [PATCH 28/61] fix(webhook-custom-actions): register webhook actions configured from the frontend (#686) --- packages/agent/src/agent.ts | 4 ++-- packages/agent/test/agent.test.ts | 22 ++++++++++++++++++++++ 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/packages/agent/src/agent.ts b/packages/agent/src/agent.ts index d635338b38..e3ad69285d 100644 --- a/packages/agent/src/agent.ts +++ b/packages/agent/src/agent.ts @@ -73,13 +73,13 @@ export default class Agent extends FrameworkMounter override async start(): Promise { const { isProduction, logger, skipSchemaUpdate, typingsPath, typingsMaxDepth } = this.options; - const dataSource = await this.nocodeCustomizer.getDataSource(logger); - await this.nocodeCustomizer.use( this.actionCustomizationService.addWebhookActions, this.options.experimental?.webhookCustomActions, ); + const dataSource = await this.nocodeCustomizer.getDataSource(logger); + const [router] = await Promise.all([ this.getRouter(dataSource), !skipSchemaUpdate ? this.sendSchema(dataSource) : Promise.resolve(), diff --git a/packages/agent/test/agent.test.ts b/packages/agent/test/agent.test.ts index 401e005382..2f12b74556 100644 --- a/packages/agent/test/agent.test.ts +++ b/packages/agent/test/agent.test.ts @@ -104,6 +104,28 @@ describe('Agent', () => { expect(mockCustomizer.use).toHaveBeenCalledTimes(1); }); + test('use should be called before getDatasource in order to be correctly applied', async () => { + const agent = new Agent(options); + let useCalled = false; + let getDataSourceCalledAfterUseCalled = false; + + mockNocodeCustomizer.use.mockImplementationOnce(async () => { + useCalled = true; + }); + + mockNocodeCustomizer.getDataSource.mockImplementationOnce(async () => { + getDataSourceCalledAfterUseCalled = useCalled; + + return factories.dataSource.build(); + }); + + await agent.start(); + + expect(mockNocodeCustomizer.use).toHaveBeenCalledTimes(1); + expect(mockNocodeCustomizer.getDataSource).toHaveBeenCalledTimes(1); + expect(getDataSourceCalledAfterUseCalled).toBe(true); + }); + // eslint-disable-next-line max-len test("should add the customizer's factory as a datasource for the nocode customizer", async () => { mockCustomizer.getFactory.mockReturnValueOnce('factory'); From de858d30562ce8954bfd564d9ba5bfa3938ece1b Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 3 May 2023 14:04:58 +0000 Subject: [PATCH 29/61] chore(release): @forestadmin/agent@1.9.0-alpha-webhook-custom-actions.6 [skip ci] # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.6](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.5...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.6) (2023-05-03) ### Bug Fixes * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) --- packages/agent/CHANGELOG.md | 7 +++++++ packages/agent/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 4bbd09adcd..116814e910 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,10 @@ +# @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.6](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.5...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.6) (2023-05-03) + + +### Bug Fixes + +* **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) + # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.5](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.4...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.5) (2023-05-02) # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.4](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.3...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.4) (2023-04-28) diff --git a/packages/agent/package.json b/packages/agent/package.json index f7a736e5e5..4daf7875ed 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.9.0-alpha-webhook-custom-actions.5", + "version": "1.9.0-alpha-webhook-custom-actions.6", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From dd6bff9bb04f089f6a67f67fc7e61e08d9b39a33 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 3 May 2023 14:05:03 +0000 Subject: [PATCH 30/61] chore(release): example@1.3.3-alpha-webhook-custom-actions.3 [skip ci] ## [1.3.3-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.3-alpha-webhook-custom-actions.2...example@1.3.3-alpha-webhook-custom-actions.3) (2023-05-03) ### Bug Fixes * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) --- packages/_example/CHANGELOG.md | 10 ++++++++++ packages/_example/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index cb825c341a..2d22f57672 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.3.3-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.3-alpha-webhook-custom-actions.2...example@1.3.3-alpha-webhook-custom-actions.3) (2023-05-03) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.9.0-alpha-webhook-custom-actions.6 + ## example [1.3.3-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.3-alpha-webhook-custom-actions.1...example@1.3.3-alpha-webhook-custom-actions.2) (2023-05-02) diff --git a/packages/_example/package.json b/packages/_example/package.json index 1b901a2ba0..a2ad8a7d64 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,11 +1,11 @@ { "name": "example", - "version": "1.3.3-alpha-webhook-custom-actions.2", + "version": "1.3.3-alpha-webhook-custom-actions.3", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.5", + "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.6", "@forestadmin/datasource-dummy": "1.0.30-alpha-webhook-custom-actions.1", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.0", From c3f7f9a2803185a1058fe570f12072ffbec94a2c Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Wed, 3 May 2023 16:20:05 +0200 Subject: [PATCH 31/61] fix(webhook-custom-actions): improve error reporting when calling a webhook (#687) --- .../model-customizations/execute-webhook.ts | 22 +++++- .../execute-webhook.test.ts | 74 +++++++++++++++++++ 2 files changed, 92 insertions(+), 4 deletions(-) diff --git a/packages/agent/src/services/model-customizations/execute-webhook.ts b/packages/agent/src/services/model-customizations/execute-webhook.ts index 22bed593db..0cc9398b05 100644 --- a/packages/agent/src/services/model-customizations/execute-webhook.ts +++ b/packages/agent/src/services/model-customizations/execute-webhook.ts @@ -1,7 +1,7 @@ import { ActionContext, TFieldName, TRow, TSchema } from '@forestadmin/datasource-customizer'; -import { SchemaUtils } from '@forestadmin/datasource-toolkit'; +import { ActionResult, SchemaUtils } from '@forestadmin/datasource-toolkit'; import { WebhookAction } from '@forestadmin/forestadmin-client'; -import superagent from 'superagent'; +import superagent, { ResponseError } from 'superagent'; function generateBody( action: WebhookAction, @@ -38,7 +38,7 @@ function generateBody( export default async function executeWebhook( action: WebhookAction, context: ActionContext, -) { +): Promise { const primaryKeys = SchemaUtils.getPrimaryKeys(context.collection.schema) as TFieldName< S, Extract @@ -48,5 +48,19 @@ export default async function executeWebhook( const body = generateBody(action, records); - await superagent.post(action.configuration.url).send(body); + try { + await superagent.post(action.configuration.url).send(body); + } catch (e) { + if ((e as ResponseError).response) { + return { + type: 'Error', + message: `Error received from the server: ${e.status} ${e.message}.`, + }; + } + + return { + type: 'Error', + message: `Could not execute the action: ${e.message}.`, + }; + } } diff --git a/packages/agent/test/services/model-customizations/execute-webhook.test.ts b/packages/agent/test/services/model-customizations/execute-webhook.test.ts index ba5f7dba7e..8d6d1a004e 100644 --- a/packages/agent/test/services/model-customizations/execute-webhook.test.ts +++ b/packages/agent/test/services/model-customizations/execute-webhook.test.ts @@ -192,5 +192,79 @@ describe('Services > ModelCustomizations > WebhookExecutor', () => { }); }, ); + + describe('when the webhook returns an error', () => { + it('should return an error response when a response was not received', async () => { + const action: WebhookAction = { + name: 'myAction', + modelName: 'myModel', + type: 'action', + configuration: { + type: 'webhook', + url: 'https://my-url.com', + scope: 'Single', + integration: 'forest', + }, + }; + + const schema = { + name: 'myModel', + }; + + const context = { + getRecords: jest.fn().mockResolvedValue([{ id1: 1, id2: 2 }]), + collection: { schema }, + } as unknown as ActionContext; + + SchemaUtilsMock.getPrimaryKeys.mockReturnValue(['id1', 'id2']); + + superagentMock.send.mockRejectedValueOnce(new Error('Network error')); + + const result = await executeWebhook(action, context); + + expect(result).toEqual({ + type: 'Error', + message: 'Could not execute the action: Network error.', + }); + }); + + it('should return more details about the error when a response was received', async () => { + const action: WebhookAction = { + name: 'myAction', + modelName: 'myModel', + type: 'action', + configuration: { + type: 'webhook', + url: 'https://my-url.com', + scope: 'Single', + integration: 'forest', + }, + }; + + const schema = { + name: 'myModel', + }; + + const context = { + getRecords: jest.fn().mockResolvedValue([{ id1: 1, id2: 2 }]), + collection: { schema }, + } as unknown as ActionContext; + + SchemaUtilsMock.getPrimaryKeys.mockReturnValue(['id1', 'id2']); + + superagentMock.send.mockRejectedValueOnce({ + status: 400, + message: 'Bad request', + response: {}, + }); + + const result = await executeWebhook(action, context); + + expect(result).toEqual({ + type: 'Error', + message: 'Error received from the server: 400 Bad request.', + }); + }); + }); }); }); From b423f45b0f5168a7d61b2f32ca3a8939dd3d03dd Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 3 May 2023 14:34:25 +0000 Subject: [PATCH 32/61] chore(release): @forestadmin/agent@1.9.0-alpha-webhook-custom-actions.7 [skip ci] # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.7](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.6...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.7) (2023-05-03) ### Bug Fixes * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) --- packages/agent/CHANGELOG.md | 7 +++++++ packages/agent/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 116814e910..68dcd27a32 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,10 @@ +# @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.7](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.6...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.7) (2023-05-03) + + +### Bug Fixes + +* **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) + # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.6](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.5...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.6) (2023-05-03) diff --git a/packages/agent/package.json b/packages/agent/package.json index 4daf7875ed..4e506a4525 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.9.0-alpha-webhook-custom-actions.6", + "version": "1.9.0-alpha-webhook-custom-actions.7", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From be22b883c3f3832f7b4b476939b09bd1cf724efc Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 3 May 2023 14:34:30 +0000 Subject: [PATCH 33/61] chore(release): example@1.3.3-alpha-webhook-custom-actions.4 [skip ci] ## [1.3.3-alpha-webhook-custom-actions.4](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.3-alpha-webhook-custom-actions.3...example@1.3.3-alpha-webhook-custom-actions.4) (2023-05-03) ### Bug Fixes * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) --- packages/_example/CHANGELOG.md | 10 ++++++++++ packages/_example/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index 2d22f57672..ed4b728ca7 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.3.3-alpha-webhook-custom-actions.4](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.3-alpha-webhook-custom-actions.3...example@1.3.3-alpha-webhook-custom-actions.4) (2023-05-03) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.9.0-alpha-webhook-custom-actions.7 + ## example [1.3.3-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.3-alpha-webhook-custom-actions.2...example@1.3.3-alpha-webhook-custom-actions.3) (2023-05-03) diff --git a/packages/_example/package.json b/packages/_example/package.json index a2ad8a7d64..e079c7b95b 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,11 +1,11 @@ { "name": "example", - "version": "1.3.3-alpha-webhook-custom-actions.3", + "version": "1.3.3-alpha-webhook-custom-actions.4", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.6", + "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.7", "@forestadmin/datasource-dummy": "1.0.30-alpha-webhook-custom-actions.1", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.0", From 1cb240a2cd68a0959d4cdf4e31f71db5517a9238 Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Wed, 10 May 2023 11:50:21 +0200 Subject: [PATCH 34/61] refactor(webhook-custom-actions): change action configuration structure [force release] (#693) --- .../model-customizations/execute-webhook.ts | 2 +- .../execute-webhook.test.ts | 36 ++++++++++++------- .../src/model-customizations/types.ts | 18 ++++++---- .../model-customization-from-api.test.ts | 12 ++++--- 4 files changed, 44 insertions(+), 24 deletions(-) diff --git a/packages/agent/src/services/model-customizations/execute-webhook.ts b/packages/agent/src/services/model-customizations/execute-webhook.ts index 0cc9398b05..dfba446b0e 100644 --- a/packages/agent/src/services/model-customizations/execute-webhook.ts +++ b/packages/agent/src/services/model-customizations/execute-webhook.ts @@ -49,7 +49,7 @@ export default async function executeWebhook( const body = generateBody(action, records); try { - await superagent.post(action.configuration.url).send(body); + await superagent.post(action.configuration.configuration.url).send(body); } catch (e) { if ((e as ResponseError).response) { return { diff --git a/packages/agent/test/services/model-customizations/execute-webhook.test.ts b/packages/agent/test/services/model-customizations/execute-webhook.test.ts index 8d6d1a004e..ca3b98e904 100644 --- a/packages/agent/test/services/model-customizations/execute-webhook.test.ts +++ b/packages/agent/test/services/model-customizations/execute-webhook.test.ts @@ -42,9 +42,11 @@ describe('Services > ModelCustomizations > WebhookExecutor', () => { type: 'action', configuration: { type: 'webhook', - url: 'https://my-url.com', scope: 'Single', - integration: 'forest', + configuration: { + url: 'https://my-url.com', + integration: 'forest', + }, }, }; @@ -80,9 +82,11 @@ describe('Services > ModelCustomizations > WebhookExecutor', () => { type: 'action', configuration: { type: 'webhook', - url: 'https://my-url.com', scope: 'Single', - integration: 'forest', + configuration: { + url: 'https://my-url.com', + integration: 'forest', + }, }, }; @@ -112,9 +116,11 @@ describe('Services > ModelCustomizations > WebhookExecutor', () => { type: 'action', configuration: { type: 'webhook', - url: 'https://my-url.com', scope: 'Single', - integration: 'forest', + configuration: { + url: 'https://my-url.com', + integration: 'forest', + }, }, }; @@ -151,9 +157,11 @@ describe('Services > ModelCustomizations > WebhookExecutor', () => { type: 'action', configuration: { type: 'webhook', - url: 'https://my-url.com', scope, - integration: 'forest', + configuration: { + url: 'https://my-url.com', + integration: 'forest', + }, }, }; @@ -201,9 +209,11 @@ describe('Services > ModelCustomizations > WebhookExecutor', () => { type: 'action', configuration: { type: 'webhook', - url: 'https://my-url.com', scope: 'Single', - integration: 'forest', + configuration: { + url: 'https://my-url.com', + integration: 'forest', + }, }, }; @@ -235,9 +245,11 @@ describe('Services > ModelCustomizations > WebhookExecutor', () => { type: 'action', configuration: { type: 'webhook', - url: 'https://my-url.com', scope: 'Single', - integration: 'forest', + configuration: { + url: 'https://my-url.com', + integration: 'forest', + }, }, }; diff --git a/packages/forestadmin-client/src/model-customizations/types.ts b/packages/forestadmin-client/src/model-customizations/types.ts index 6c44e5ab1e..8ebd9bd86a 100644 --- a/packages/forestadmin-client/src/model-customizations/types.ts +++ b/packages/forestadmin-client/src/model-customizations/types.ts @@ -14,26 +14,30 @@ export type ModelCustomization = { configuration: TConfiguration; }; -export type ActionConfigurationApi = { +export type ActionConfigurationApi = { scope: ActionScopeApi; type: ActionType; + configuration: TActionConfigurationSpecific; }; -export type WebhookActionConfigurationApi = ActionConfigurationApi & { - type: 'webhook'; +export type WebhookActionConfigurationSpecific = { url: string; integration: string; }; -export type ActionConfiguration = { +export type WebhookActionConfigurationApi = + ActionConfigurationApi & { + type: 'webhook'; + }; + +export type ActionConfiguration = { scope: ActionScope; type: ActionType; + configuration: TActionConfigurationSpecific; }; -export type WebhookActionConfiguration = ActionConfiguration & { +export type WebhookActionConfiguration = ActionConfiguration & { type: 'webhook'; - url: string; - integration: string; }; export interface ModelCustomizationService { getConfiguration(): Promise; diff --git a/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts b/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts index b89af7e832..7b97abd597 100644 --- a/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts +++ b/packages/forestadmin-client/test/model-customizations/model-customization-from-api.test.ts @@ -27,8 +27,10 @@ describe('ModelCustomizationFromApiService', () => { configuration: { type: 'webhook', scope: scope.toLowerCase(), - url: 'https://my-url.com', - integration: 'service', + configuration: { + url: 'https://my-url.com', + integration: 'service', + }, }, }, ] as ModelCustomization[]); @@ -47,8 +49,10 @@ describe('ModelCustomizationFromApiService', () => { configuration: { type: 'webhook', scope, - url: 'https://my-url.com', - integration: 'service', + configuration: { + url: 'https://my-url.com', + integration: 'service', + }, }, }, ]); From 4ff32f8a20b6a8c4511318c991dda95c5f82c9a5 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 10 May 2023 10:04:11 +0000 Subject: [PATCH 35/61] chore(release): @forestadmin/agent@1.9.0-alpha-webhook-custom-actions.8 [skip ci] # @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.8](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.7...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.8) (2023-05-10) ### Bug Fixes * **in-app-onboarding:** do not force skipLibCheck on customers TS configuration ([#680](https://github.com/ForestAdmin/agent-nodejs/issues/680)) ([c374117](https://github.com/ForestAdmin/agent-nodejs/commit/c37411763507f274dd4dba2d3dd08adb8c1b4222)) ### Dependencies * **@forestadmin/forestadmin-client:** upgraded to 1.2.0-alpha-webhook-custom-actions.3 --- packages/agent/CHANGELOG.md | 15 +++++++++++++++ packages/agent/package.json | 4 ++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 7c570f7840..445a1ab47b 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,18 @@ +# @forestadmin/agent [1.9.0-alpha-webhook-custom-actions.8](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.7...@forestadmin/agent@1.9.0-alpha-webhook-custom-actions.8) (2023-05-10) + + +### Bug Fixes + +* **in-app-onboarding:** do not force skipLibCheck on customers TS configuration ([#680](https://github.com/ForestAdmin/agent-nodejs/issues/680)) ([c374117](https://github.com/ForestAdmin/agent-nodejs/commit/c37411763507f274dd4dba2d3dd08adb8c1b4222)) + + + + + +### Dependencies + +* **@forestadmin/forestadmin-client:** upgraded to 1.2.0-alpha-webhook-custom-actions.3 + ## @forestadmin/agent [1.8.13](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.8.12...@forestadmin/agent@1.8.13) (2023-05-03) diff --git a/packages/agent/package.json b/packages/agent/package.json index 4e506a4525..44560fa250 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.9.0-alpha-webhook-custom-actions.7", + "version": "1.9.0-alpha-webhook-custom-actions.8", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -16,7 +16,7 @@ "@fastify/express": "^1.1.0", "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.5.0", - "@forestadmin/forestadmin-client": "1.2.0-alpha-webhook-custom-actions.2", + "@forestadmin/forestadmin-client": "1.2.0-alpha-webhook-custom-actions.3", "@koa/cors": "^4.0.0", "@koa/router": "^12.0.0", "forest-ip-utils": "^1.0.1", From 23e8a249c1bff0eb4991925d6c76a6f2f1a820fd Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 10 May 2023 10:04:16 +0000 Subject: [PATCH 36/61] chore(release): example@1.3.5-alpha-webhook-custom-actions.1 [skip ci] ## [1.3.5-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.4...example@1.3.5-alpha-webhook-custom-actions.1) (2023-05-10) ### Bug Fixes * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/_example/CHANGELOG.md | 10 ++++++++++ packages/_example/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index 472bdc641c..1cba3658c8 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.3.5-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.4...example@1.3.5-alpha-webhook-custom-actions.1) (2023-05-10) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.9.0-alpha-webhook-custom-actions.8 + ## example [1.3.4](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.3...example@1.3.4) (2023-05-10) diff --git a/packages/_example/package.json b/packages/_example/package.json index c84ed0ef02..e788229027 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,11 +1,11 @@ { "name": "example", - "version": "1.3.3-alpha-webhook-custom-actions.4", + "version": "1.3.5-alpha-webhook-custom-actions.1", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.7", + "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.8", "@forestadmin/datasource-dummy": "1.0.30-alpha-webhook-custom-actions.1", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.1", From 4357f2a45c3457c2da94b46b29c4504bb7915dbb Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 10 May 2023 10:04:21 +0000 Subject: [PATCH 37/61] chore(release): @forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.3 [skip ci] # [1.2.0-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.2...@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.3) (2023-05-10) ### Bug Fixes * **agent:** improve error message when validating projections ([#683](https://github.com/ForestAdmin/agent-nodejs/issues/683)) ([5e1baa9](https://github.com/ForestAdmin/agent-nodejs/commit/5e1baa9c413bce4716cc0f6b0b194ea271218c7d)) * **customizer:** crash at startup when using collections with native actions ([#681](https://github.com/ForestAdmin/agent-nodejs/issues/681)) ([abe3edf](https://github.com/ForestAdmin/agent-nodejs/commit/abe3edfd476d4d0fe9b14f1d8b7c40717e3e349a)) * **datasource-dummy:** correct relation definition ([#682](https://github.com/ForestAdmin/agent-nodejs/issues/682)) ([2ff0c9e](https://github.com/ForestAdmin/agent-nodejs/commit/2ff0c9e9a034dcb3111ca7db0fed8d809434dfde)) * **datasource-sql:** export missing type ([#691](https://github.com/ForestAdmin/agent-nodejs/issues/691)) ([885de9e](https://github.com/ForestAdmin/agent-nodejs/commit/885de9ecad70c8d9e03afc590c7ecef5aeeadabb)) * **in-app-onboarding:** do not force skipLibCheck on customers TS configuration ([#680](https://github.com/ForestAdmin/agent-nodejs/issues/680)) ([c374117](https://github.com/ForestAdmin/agent-nodejs/commit/c37411763507f274dd4dba2d3dd08adb8c1b4222)) * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) ### Features * **datasource-customizer:** add support for binary fields ([#673](https://github.com/ForestAdmin/agent-nodejs/issues/673)) ([419727c](https://github.com/ForestAdmin/agent-nodejs/commit/419727cce812af10fa5917f1b94a2064d06883f7)) --- packages/forestadmin-client/CHANGELOG.md | 7 +++++++ packages/forestadmin-client/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/forestadmin-client/CHANGELOG.md b/packages/forestadmin-client/CHANGELOG.md index 99a966adc8..1f5e7002b1 100644 --- a/packages/forestadmin-client/CHANGELOG.md +++ b/packages/forestadmin-client/CHANGELOG.md @@ -1,3 +1,10 @@ +# @forestadmin/forestadmin-client [1.2.0-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.2...@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.3) (2023-05-10) + + +### Bug Fixes + +* **in-app-onboarding:** do not force skipLibCheck on customers TS configuration ([#680](https://github.com/ForestAdmin/agent-nodejs/issues/680)) ([c374117](https://github.com/ForestAdmin/agent-nodejs/commit/c37411763507f274dd4dba2d3dd08adb8c1b4222)) + ## @forestadmin/forestadmin-client [1.1.14](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.1.13...@forestadmin/forestadmin-client@1.1.14) (2023-05-03) diff --git a/packages/forestadmin-client/package.json b/packages/forestadmin-client/package.json index a213d5f98a..a93a5f4ee5 100644 --- a/packages/forestadmin-client/package.json +++ b/packages/forestadmin-client/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/forestadmin-client", - "version": "1.2.0-alpha-webhook-custom-actions.2", + "version": "1.2.0-alpha-webhook-custom-actions.3", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From 013ed94592f5cd6b27093131b7ae760c55f8a20e Mon Sep 17 00:00:00 2001 From: Morgan PERRE Date: Thu, 25 May 2023 14:32:51 +0200 Subject: [PATCH 38/61] chore: merge branch 'main' into alpha-webhook-custom-actions (#702) --- global.d.ts | 1 + packages/_example/CHANGELOG.md | 21 + packages/agent/CHANGELOG.md | 18 +- packages/agent/src/agent.ts | 6 +- packages/agent/src/framework-mounter.ts | 35 +- packages/agent/src/types.ts | 1 + packages/agent/src/utils/options-validator.ts | 36 +- .../test/__factories__/forest-admin-client.ts | 1 + .../forest-admin-http-driver-options.ts | 1 + packages/agent/test/framework-mounter.test.ts | 144 +- .../test/utils/http-driver-options.test.ts | 23 +- packages/datasource-customizer/CHANGELOG.md | 6 + .../context/relaxed-wrappers/collection.ts | 5 +- packages/datasource-dummy/CHANGELOG.md | 4 +- packages/datasource-sql/package.json | 3 - packages/forestadmin-client/CHANGELOG.md | 6 + packages/forestadmin-client/package.json | 1 + .../src/build-application-services.ts | 27 +- .../src/events-subscription/index.ts | 92 + .../native-refresh-events-handler-service.ts | 45 + .../src/events-subscription/types.ts | 26 + .../src/forest-admin-client-with-cache.ts | 9 +- packages/forestadmin-client/src/index.ts | 2 + .../src/permissions/action-permission.ts | 16 +- .../src/permissions/rendering-permission.ts | 29 +- .../src/permissions/user-permission.ts | 11 +- packages/forestadmin-client/src/types.ts | 3 + .../events-subscription/index.ts | 23 + .../native-refresh-events-handler-service.ts | 29 + .../forest-admin-client-options.ts | 1 + .../test/__factories__/forest-admin-client.ts | 2 + .../test/__factories__/index.ts | 2 + .../permissions/action-permission.ts | 10 +- .../permissions/rendering-permission.ts | 10 +- .../permissions/user-permission.ts | 13 +- .../test/events-subscription/index.test.ts | 210 ++ ...ive-refresh-events-handler-service.test.ts | 117 + .../forest-admin-client-with-cache.test.ts | 85 +- .../permissions/action-permission.test.ts | 27 + .../permissions/rendering-permission.test.ts | 85 + .../test/permissions/user-permission.test.ts | 7 +- packages/plugin-aws-s3/CHANGELOG.md | 4 +- packages/plugin-export-advanced/CHANGELOG.md | 4 +- packages/plugin-flattener/CHANGELOG.md | 4 +- yarn.lock | 3214 +++++++++-------- 45 files changed, 2694 insertions(+), 1725 deletions(-) create mode 100644 packages/forestadmin-client/src/events-subscription/index.ts create mode 100644 packages/forestadmin-client/src/events-subscription/native-refresh-events-handler-service.ts create mode 100644 packages/forestadmin-client/src/events-subscription/types.ts create mode 100644 packages/forestadmin-client/test/__factories__/events-subscription/index.ts create mode 100644 packages/forestadmin-client/test/__factories__/events-subscription/native-refresh-events-handler-service.ts create mode 100644 packages/forestadmin-client/test/events-subscription/index.test.ts create mode 100644 packages/forestadmin-client/test/events-subscription/native-refresh-events-handler-service.test.ts diff --git a/global.d.ts b/global.d.ts index b6f0171df2..d2e9294d20 100644 --- a/global.d.ts +++ b/global.d.ts @@ -1,3 +1,4 @@ /// declare module 'forest-ip-utils'; +declare module 'eventsource'; diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index 49e1d570c3..f6774f506b 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,24 @@ +## example [1.3.8](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.7...example@1.3.8) (2023-05-25) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.9.0 + +## example [1.3.7](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.6...example@1.3.7) (2023-05-24) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.8.14 +* **@forestadmin/datasource-dummy:** upgraded to 1.0.30 + ## example [1.3.6](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.5...example@1.3.6) (2023-05-16) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 445a1ab47b..7f62458c2d 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -4,6 +4,22 @@ ### Bug Fixes * **in-app-onboarding:** do not force skipLibCheck on customers TS configuration ([#680](https://github.com/ForestAdmin/agent-nodejs/issues/680)) ([c374117](https://github.com/ForestAdmin/agent-nodejs/commit/c37411763507f274dd4dba2d3dd08adb8c1b4222)) +# @forestadmin/agent [1.9.0](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.8.14...@forestadmin/agent@1.9.0) (2023-05-25) + + +### Features + +* **events-subscription:** allow to instantly refresh permissions when they change ([#692](https://github.com/ForestAdmin/agent-nodejs/issues/692)) ([e108183](https://github.com/ForestAdmin/agent-nodejs/commit/e1081838e42f216e8edc19048531eb8ef05d3fa0)) + + + + + +### Dependencies + +* **@forestadmin/forestadmin-client:** upgraded to 1.2.0 + +## @forestadmin/agent [1.8.14](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.8.13...@forestadmin/agent@1.8.14) (2023-05-24) @@ -11,7 +27,7 @@ ### Dependencies -* **@forestadmin/forestadmin-client:** upgraded to 1.2.0-alpha-webhook-custom-actions.3 +* **@forestadmin/datasource-customizer:** upgraded to 1.7.2 ## @forestadmin/agent [1.8.13](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.8.12...@forestadmin/agent@1.8.13) (2023-05-03) diff --git a/packages/agent/src/agent.ts b/packages/agent/src/agent.ts index e3ad69285d..7f34fa33fb 100644 --- a/packages/agent/src/agent.ts +++ b/packages/agent/src/agent.ts @@ -70,7 +70,7 @@ export default class Agent extends FrameworkMounter /** * Start the agent. */ - override async start(): Promise { + async start(): Promise { const { isProduction, logger, skipSchemaUpdate, typingsPath, typingsMaxDepth } = this.options; await this.nocodeCustomizer.use( @@ -86,9 +86,11 @@ export default class Agent extends FrameworkMounter !isProduction && typingsPath ? this.customizer.updateTypesOnFileSystem(typingsPath, typingsMaxDepth) : Promise.resolve(), + + this.options.forestAdminClient.subscribeToServerEvents(), ]); - return super.start(router); + await this.mount(router); } /** diff --git a/packages/agent/src/framework-mounter.ts b/packages/agent/src/framework-mounter.ts index 483541a882..4ebb2a9b9b 100644 --- a/packages/agent/src/framework-mounter.ts +++ b/packages/agent/src/framework-mounter.ts @@ -8,7 +8,8 @@ import path from 'path'; import { HttpCallback } from './types'; export default class FrameworkMounter { - private readonly onStart: ((router: Router) => Promise)[] = []; + private readonly onFirstStart: (() => Promise)[] = []; + private readonly onEachStart: ((router: Router) => Promise)[] = []; private readonly onStop: (() => Promise)[] = []; private readonly prefix: string; private readonly logger: Logger; @@ -23,8 +24,14 @@ export default class FrameworkMounter { this.logger = logger; } - async start(router: Router): Promise { - for (const task of this.onStart) await task(router); // eslint-disable-line no-await-in-loop + protected async mount(router: Router): Promise { + for (const task of this.onFirstStart) await task(); // eslint-disable-line no-await-in-loop + + await this.remount(router); + } + + protected async remount(router: Router): Promise { + for (const task of this.onEachStart) await task(router); // eslint-disable-line no-await-in-loop } async stop(): Promise { @@ -40,7 +47,8 @@ export default class FrameworkMounter { mountOnStandaloneServer(port?: number, host?: string): this { const chosenPort = port || Number(process.env.PORT) || 3351; const server = createServer(this.getConnectCallback(true)); - this.onStart.push(() => { + + this.onFirstStart.push(() => { return new Promise((resolve, reject) => { server.listen(chosenPort, host, () => { this.logger( @@ -91,13 +99,22 @@ export default class FrameworkMounter { mountOnKoa(koa: any): this { const parentRouter = new Router({ prefix: this.completeMountPrefix }); - koa.use(parentRouter.routes()); - this.logger('Info', `Successfully mounted on Koa`); + // Default route middleware, it will be removed after starting the agent + parentRouter.get('/', ctx => { + ctx.response.status = 200; + ctx.response.body = { error: 'Agent is not started' }; + }); - this.onStart.push(async router => { - parentRouter.use(router.routes()); + this.onEachStart.push(async driverRouter => { + // Unmounts previous routes + parentRouter.stack = []; + // Mounts new ones + parentRouter.use(driverRouter.routes()); }); + koa.use(parentRouter.routes()); + this.logger('Info', `Successfully mounted on Koa`); + return this; } @@ -144,7 +161,7 @@ export default class FrameworkMounter { private getConnectCallback(nested: boolean): HttpCallback { let handler = null; - this.onStart.push(async driverRouter => { + this.onEachStart.push(async driverRouter => { let router = driverRouter; if (nested) { diff --git a/packages/agent/src/types.ts b/packages/agent/src/types.ts index c80976caac..6c01e56692 100644 --- a/packages/agent/src/types.ts +++ b/packages/agent/src/types.ts @@ -15,6 +15,7 @@ export type AgentOptions = { schemaPath?: string; typingsPath?: string | null; typingsMaxDepth?: number; + instantCacheRefresh?: boolean; permissionsCacheDurationInSeconds?: number; skipSchemaUpdate?: boolean; forestAdminClient?: ForestAdminClient; diff --git a/packages/agent/src/utils/options-validator.ts b/packages/agent/src/utils/options-validator.ts index 7d49848abd..f34ac8f4a4 100644 --- a/packages/agent/src/utils/options-validator.ts +++ b/packages/agent/src/utils/options-validator.ts @@ -5,6 +5,8 @@ import path from 'path'; import { AgentOptions, AgentOptionsWithDefaults } from '../types'; const DEFAULT_MINIMUM_CACHE_DURATION = 60; +// One year cache duration when using events +const DEFAULT_CACHE_DURATION_WITH_EVENTS = 31560000; export default class OptionsValidator { private static loggerPrefix = { @@ -31,22 +33,22 @@ export default class OptionsValidator { copyOptions.forestServerUrl = copyOptions.forestServerUrl || 'https://api.forestadmin.com'; copyOptions.typingsMaxDepth = copyOptions.typingsMaxDepth ?? 5; copyOptions.prefix = copyOptions.prefix || ''; - copyOptions.permissionsCacheDurationInSeconds = - copyOptions.permissionsCacheDurationInSeconds ?? 15 * 60; copyOptions.loggerLevel = copyOptions.loggerLevel || 'Info'; copyOptions.skipSchemaUpdate = copyOptions.skipSchemaUpdate || false; + copyOptions.instantCacheRefresh = copyOptions.instantCacheRefresh ?? true; - copyOptions.forestAdminClient = - copyOptions.forestAdminClient || - createForestAdminClient({ - envSecret: copyOptions.envSecret, - forestServerUrl: copyOptions.forestServerUrl, - logger: copyOptions.logger, - permissionsCacheDurationInSeconds: copyOptions.permissionsCacheDurationInSeconds, - }); + if (copyOptions.instantCacheRefresh && copyOptions.permissionsCacheDurationInSeconds) { + copyOptions.logger( + 'Warn', + 'ignoring options.permissionsCacheDurationInSeconds: when using ' + + 'options.instantCacheRefresh=true permissions caches are instantly refreshed', + ); + } - copyOptions.permissionsCacheDurationInSeconds = - copyOptions.permissionsCacheDurationInSeconds ?? 15 * DEFAULT_MINIMUM_CACHE_DURATION; + // When using the event source to refresh cache we set a one year cache duration + copyOptions.permissionsCacheDurationInSeconds = copyOptions.instantCacheRefresh + ? DEFAULT_CACHE_DURATION_WITH_EVENTS + : copyOptions.permissionsCacheDurationInSeconds ?? DEFAULT_MINIMUM_CACHE_DURATION * 15; if (copyOptions.permissionsCacheDurationInSeconds < DEFAULT_MINIMUM_CACHE_DURATION) { copyOptions.permissionsCacheDurationInSeconds = DEFAULT_MINIMUM_CACHE_DURATION; @@ -57,6 +59,16 @@ export default class OptionsValidator { ); } + copyOptions.forestAdminClient = + copyOptions.forestAdminClient || + createForestAdminClient({ + envSecret: copyOptions.envSecret, + forestServerUrl: copyOptions.forestServerUrl, + logger: copyOptions.logger, + permissionsCacheDurationInSeconds: copyOptions.permissionsCacheDurationInSeconds, + instantCacheRefresh: copyOptions.instantCacheRefresh, + }); + return { loggerLevel: 'Info', ...copyOptions, diff --git a/packages/agent/test/__factories__/forest-admin-client.ts b/packages/agent/test/__factories__/forest-admin-client.ts index 8dbc414c09..2b8904661f 100644 --- a/packages/agent/test/__factories__/forest-admin-client.ts +++ b/packages/agent/test/__factories__/forest-admin-client.ts @@ -37,6 +37,7 @@ const forestAdminClientFactory = ForestAdminClientFactory.define(() => ({ modelCustomizationService: { getConfiguration: jest.fn(), }, + subscribeToServerEvents: jest.fn(), })); export default forestAdminClientFactory; diff --git a/packages/agent/test/__factories__/forest-admin-http-driver-options.ts b/packages/agent/test/__factories__/forest-admin-http-driver-options.ts index be9fb94f41..ce94b36339 100644 --- a/packages/agent/test/__factories__/forest-admin-http-driver-options.ts +++ b/packages/agent/test/__factories__/forest-admin-http-driver-options.ts @@ -13,6 +13,7 @@ export default Factory.define(() => ({ logger: () => {}, loggerLevel: 'Error', permissionsCacheDurationInSeconds: 15 * 60, + instantCacheRefresh: false, prefix: 'prefix', schemaPath: '/tmp/.testschema.json', skipSchemaUpdate: false, diff --git a/packages/agent/test/framework-mounter.test.ts b/packages/agent/test/framework-mounter.test.ts index a75bbebd80..df330477f5 100644 --- a/packages/agent/test/framework-mounter.test.ts +++ b/packages/agent/test/framework-mounter.test.ts @@ -18,6 +18,10 @@ const router = new Router().get('/', async ctx => { ctx.response.body = { error: null, message: 'Agent is running' }; }); +const newRouter = new Router().get('/resource', async ctx => { + ctx.response.body = { message: 'Here is your resource' }; +}); + describe('Builder > Agent', () => { describe('standalone mode', () => { describe('when starting the agent is a success', () => { @@ -28,7 +32,8 @@ describe('Builder > Agent', () => { mounter.mountOnStandaloneServer(9997, 'localhost'); try { - await mounter.start(router); + // @ts-expect-error: testing a protected method + await mounter.mount(router); const response = await superagent.get('http://localhost:9997/my-api/forest'); expect(response.body).toStrictEqual({ error: null, message: 'Agent is running' }); @@ -59,10 +64,12 @@ describe('Builder > Agent', () => { try { mounter.mountOnStandaloneServer(9997, 'localhost'); - await mounter.start(router); + // @ts-expect-error: testing a protected method + await mounter.mount(router); // throw error on start by mount two servers on the same port mounter2.mountOnStandaloneServer(9997, 'localhost'); - await mounter2.start(router); + // @ts-expect-error: testing a protected method + await mounter2.mount(router); } catch (e) { // eslint-disable-next-line jest/no-conditional-expect expect(e.message).toContain('9997'); @@ -74,9 +81,9 @@ describe('Builder > Agent', () => { }); }); - describe('when agent is mounted without the standalone mode', () => { + describe('when agent is mounted without the standalone mode or koa', () => { describe('when the agent is not started', () => { - it('should return a response', async () => { + it('should return a default response "Agent is not started"', async () => { expect.assertions(1); const app = express(); @@ -92,31 +99,117 @@ describe('Builder > Agent', () => { } }); }); + + describe('when the agent is restarted', () => { + it('should unmount previous routes and mount new ones', async () => { + const app = express(); + + const mounter = new FrameworkMounter('my-api', logger); + mounter.mountOnExpress(app); + // @ts-expect-error: testing a protected method + await mounter.mount(router); + + const server = app.listen(9998); + + try { + const response = await superagent.get('http://localhost:9998/my-api/forest'); + expect(response.body).toStrictEqual({ error: null, message: 'Agent is running' }); + + // Mounting new routes (a.k.a restart) + // @ts-expect-error: testing a protected method + await mounter.remount(newRouter); + + const newResponse = await superagent.get('http://localhost:9998/my-api/forest/resource'); + expect(newResponse.body).toStrictEqual({ message: 'Here is your resource' }); + + // The previous route has been unmounted + await expect(superagent.get('http://localhost:9998/my-api/forest')).rejects.toThrow( + 'Not Found', + ); + } finally { + server.close(); + } + }); + }); }); - it('should work in an express app', async () => { - const app = express(); + describe('in an koa app', () => { + it('should work in an koa app', async () => { + const app = new Koa(); - const mounter = new FrameworkMounter('my-api', logger); - mounter.mountOnExpress(app); - await mounter.start(router); + const mounter = new FrameworkMounter('my-api', logger); + mounter.mountOnKoa(app); + // @ts-expect-error: testing a protected method + await mounter.mount(router); - const server = app.listen(9998); + const server = app.listen(9998); - try { - const response = await superagent.get('http://localhost:9998/my-api/forest'); - expect(response.body).toStrictEqual({ error: null, message: 'Agent is running' }); - } finally { - server.close(); - } + try { + const response = await superagent.get('http://localhost:9998/my-api/forest'); + expect(response.body).toStrictEqual({ error: null, message: 'Agent is running' }); + } finally { + server.close(); + } + }); + + describe('when the agent is restarted', () => { + it('should unmount previous routes and mount new ones', async () => { + const app = new Koa(); + + const mounter = new FrameworkMounter('my-api', logger); + mounter.mountOnKoa(app); + // @ts-expect-error: testing a protected method + await mounter.mount(router); + + const server = app.listen(9998); + + try { + const response = await superagent.get('http://localhost:9998/my-api/forest'); + expect(response.body).toStrictEqual({ error: null, message: 'Agent is running' }); + + // Mounting new routes (a.k.a restart) + // @ts-expect-error: testing a protected method + await mounter.remount(newRouter); + + const newResponse = await superagent.get('http://localhost:9998/my-api/forest/resource'); + expect(newResponse.body).toStrictEqual({ message: 'Here is your resource' }); + + // The previous route has been unmounted + await expect(superagent.get('http://localhost:9998/my-api/forest')).rejects.toThrow( + 'Not Found', + ); + } finally { + server.close(); + } + }); + }); + + describe('when the agent is not started', () => { + it('should return a default response "Agent is not started"', async () => { + const app = new Koa(); + + const mounter = new FrameworkMounter('my-api', logger); + mounter.mountOnKoa(app); + + const server = app.listen(9998); + + try { + const response = await superagent.get('http://localhost:9998/my-api/forest'); + expect(response.body).toStrictEqual({ error: 'Agent is not started' }); + } finally { + server.close(); + } + }); + }); }); - it('should work in an koa app', async () => { - const app = new Koa(); + it('should work in an express app', async () => { + const app = express(); const mounter = new FrameworkMounter('my-api', logger); - mounter.mountOnKoa(app); - await mounter.start(router); + mounter.mountOnExpress(app); + // @ts-expect-error: testing a protected method + await mounter.mount(router); const server = app.listen(9998); @@ -136,7 +229,8 @@ describe('Builder > Agent', () => { const mounter = new FrameworkMounter('my-api', logger); mounter.mountOnFastify(app); - await mounter.start(router); + // @ts-expect-error: testing a protected method + await mounter.mount(router); await app.listen(9999); @@ -155,7 +249,8 @@ describe('Builder > Agent', () => { const mounter = new FrameworkMounter('my-api', logger); mounter.mountOnNestJs(app); - await mounter.start(router); + // @ts-expect-error: testing a protected method + await mounter.mount(router); await app.listen(9996); @@ -176,7 +271,8 @@ describe('Builder > Agent', () => { const mounter = new FrameworkMounter('my-api', logger); mounter.mountOnNestJs(app); - await mounter.start(router); + // @ts-expect-error: testing a protected method + await mounter.mount(router); await app.listen(9995); diff --git a/packages/agent/test/utils/http-driver-options.test.ts b/packages/agent/test/utils/http-driver-options.test.ts index a37ab84faa..a0c3be981c 100644 --- a/packages/agent/test/utils/http-driver-options.test.ts +++ b/packages/agent/test/utils/http-driver-options.test.ts @@ -16,7 +16,8 @@ describe('OptionsValidator', () => { expect(options).toHaveProperty('prefix', ''); expect(options).toHaveProperty('schemaPath', '.forestadmin-schema.json'); expect(options).toHaveProperty('typingsMaxDepth', 5); - expect(options).toHaveProperty('permissionsCacheDurationInSeconds', 900); + expect(options).toHaveProperty('instantCacheRefresh', true); + expect(options).toHaveProperty('permissionsCacheDurationInSeconds', 31560000); expect(options).toHaveProperty('skipSchemaUpdate', false); }); @@ -79,6 +80,7 @@ describe('OptionsValidator', () => { const options = OptionsValidator.withDefaults({ ...mandatoryOptions, logger: jest.fn(), + instantCacheRefresh: false, permissionsCacheDurationInSeconds: 1, }); @@ -92,11 +94,30 @@ describe('OptionsValidator', () => { test('should allow user to configure it with realistic value', () => { const options = OptionsValidator.withDefaults({ ...mandatoryOptions, + instantCacheRefresh: false, permissionsCacheDurationInSeconds: 5 * 60, }); expect(options).toHaveProperty('permissionsCacheDurationInSeconds', 300); }); + + describe('when using Server Events (instantCacheRefresh=true)', () => { + test('should set permissionsCacheDurationInSeconds to 1 year', () => { + const options = OptionsValidator.withDefaults({ + ...mandatoryOptions, + logger: jest.fn(), + instantCacheRefresh: true, + permissionsCacheDurationInSeconds: 5 * 60, + }); + + expect(options).toHaveProperty('permissionsCacheDurationInSeconds', 31560000); + expect(options.logger).toHaveBeenCalledWith( + 'Warn', + 'ignoring options.permissionsCacheDurationInSeconds: when using ' + + 'options.instantCacheRefresh=true permissions caches are instantly refreshed', + ); + }); + }); }); }); diff --git a/packages/datasource-customizer/CHANGELOG.md b/packages/datasource-customizer/CHANGELOG.md index 72909b5b59..7e4cd0414c 100644 --- a/packages/datasource-customizer/CHANGELOG.md +++ b/packages/datasource-customizer/CHANGELOG.md @@ -4,6 +4,12 @@ ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) +## @forestadmin/datasource-customizer [1.7.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.7.1...@forestadmin/datasource-customizer@1.7.2) (2023-05-24) + + +### Bug Fixes + +* **typings:** allow incomplete records to be passed to collection.create ([#700](https://github.com/ForestAdmin/agent-nodejs/issues/700)) ([95483e2](https://github.com/ForestAdmin/agent-nodejs/commit/95483e277d695a9f3ed19d86b2f6834413007afc)) ## @forestadmin/datasource-customizer [1.7.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.7.0...@forestadmin/datasource-customizer@1.7.1) (2023-04-27) diff --git a/packages/datasource-customizer/src/context/relaxed-wrappers/collection.ts b/packages/datasource-customizer/src/context/relaxed-wrappers/collection.ts index ff27e357cc..70e1bef262 100644 --- a/packages/datasource-customizer/src/context/relaxed-wrappers/collection.ts +++ b/packages/datasource-customizer/src/context/relaxed-wrappers/collection.ts @@ -24,7 +24,6 @@ import { TPartialSimpleRow, TRow, TSchema, - TSimpleRow, } from '../../templates'; /** Collection wrapper which accepts plain objects in all methods */ @@ -83,8 +82,8 @@ export default class RelaxedCollection< * { amountInEur: -100, description: 'Refund' }, * ]); */ - create(data: TSimpleRow[]): Promise[]> { - return this.collection.create(this.caller, data) as Promise[]>; + create(data: TPartialSimpleRow[]): Promise[]> { + return this.collection.create(this.caller, data) as Promise[]>; } /** diff --git a/packages/datasource-dummy/CHANGELOG.md b/packages/datasource-dummy/CHANGELOG.md index 6e241dc8d9..94a7cfc697 100644 --- a/packages/datasource-dummy/CHANGELOG.md +++ b/packages/datasource-dummy/CHANGELOG.md @@ -1,4 +1,4 @@ -## @forestadmin/datasource-dummy [1.0.30-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.29...@forestadmin/datasource-dummy@1.0.30-alpha-webhook-custom-actions.1) (2023-04-28) +## @forestadmin/datasource-dummy [1.0.30](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.29...@forestadmin/datasource-dummy@1.0.30) (2023-05-24) @@ -6,7 +6,7 @@ ### Dependencies -* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.1 +* **@forestadmin/datasource-customizer:** upgraded to 1.7.2 ## @forestadmin/datasource-dummy [1.0.29](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.28...@forestadmin/datasource-dummy@1.0.29) (2023-04-27) diff --git a/packages/datasource-sql/package.json b/packages/datasource-sql/package.json index 0c3a5c52bb..34e17616ff 100644 --- a/packages/datasource-sql/package.json +++ b/packages/datasource-sql/package.json @@ -28,8 +28,5 @@ "clean": "rm -rf coverage dist", "lint": "eslint src test", "test": "jest" - }, - "devDependencies": { - "lodash": "^4.17.21" } } diff --git a/packages/forestadmin-client/CHANGELOG.md b/packages/forestadmin-client/CHANGELOG.md index 1f5e7002b1..4f9033d6e6 100644 --- a/packages/forestadmin-client/CHANGELOG.md +++ b/packages/forestadmin-client/CHANGELOG.md @@ -4,6 +4,12 @@ ### Bug Fixes * **in-app-onboarding:** do not force skipLibCheck on customers TS configuration ([#680](https://github.com/ForestAdmin/agent-nodejs/issues/680)) ([c374117](https://github.com/ForestAdmin/agent-nodejs/commit/c37411763507f274dd4dba2d3dd08adb8c1b4222)) +# @forestadmin/forestadmin-client [1.2.0](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.1.14...@forestadmin/forestadmin-client@1.2.0) (2023-05-25) + + +### Features + +* **events-subscription:** allow to instantly refresh permissions when they change ([#692](https://github.com/ForestAdmin/agent-nodejs/issues/692)) ([e108183](https://github.com/ForestAdmin/agent-nodejs/commit/e1081838e42f216e8edc19048531eb8ef05d3fa0)) ## @forestadmin/forestadmin-client [1.1.14](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.1.13...@forestadmin/forestadmin-client@1.1.14) (2023-05-03) diff --git a/packages/forestadmin-client/package.json b/packages/forestadmin-client/package.json index a93a5f4ee5..0e6357febc 100644 --- a/packages/forestadmin-client/package.json +++ b/packages/forestadmin-client/package.json @@ -12,6 +12,7 @@ "directory": "packages/forestadmin-client" }, "dependencies": { + "eventsource": "2.0.2", "json-api-serializer": "^2.6.6", "jsonwebtoken": "^9.0.0", "lru-cache": "^7.14.1", diff --git a/packages/forestadmin-client/src/build-application-services.ts b/packages/forestadmin-client/src/build-application-services.ts index 503e1a9830..0ace4ce242 100644 --- a/packages/forestadmin-client/src/build-application-services.ts +++ b/packages/forestadmin-client/src/build-application-services.ts @@ -1,5 +1,7 @@ import AuthService from './auth'; import ChartHandler from './charts/chart-handler'; +import EventsSubscriptionService from './events-subscription'; +import NativeRefreshEventsHandlerService from './events-subscription/native-refresh-events-handler-service'; import IpWhiteListService from './ip-whitelist'; import ModelCustomizationFromApiService from './model-customizations/model-customization-from-api'; import { ModelCustomizationService } from './model-customizations/types'; @@ -29,31 +31,50 @@ export default function buildApplicationServices( chartHandler: ChartHandler; auth: AuthService; modelCustomizationService: ModelCustomizationService; + eventsSubscription: EventsSubscriptionService; } { const optionsWithDefaults = { forestServerUrl: 'https://api.forestadmin.com', permissionsCacheDurationInSeconds: 15 * 60, logger: defaultLogger, + instantCacheRefresh: true, ...options, }; + const usersPermission = new UserPermissionService( + optionsWithDefaults, + forestAdminServerInterface, + ); + const renderingPermission = new RenderingPermissionService( optionsWithDefaults, - new UserPermissionService(optionsWithDefaults, forestAdminServerInterface), + usersPermission, forestAdminServerInterface, ); + + const actionPermission = new ActionPermissionService( + optionsWithDefaults, + forestAdminServerInterface, + ); + const contextVariables = new ContextVariablesInstantiator(renderingPermission); - const permission = new PermissionService( - new ActionPermissionService(optionsWithDefaults, forestAdminServerInterface), + const permission = new PermissionService(actionPermission, renderingPermission); + + const eventsHandler = new NativeRefreshEventsHandlerService( + actionPermission, + usersPermission, renderingPermission, ); + const eventsSubscription = new EventsSubscriptionService(optionsWithDefaults, eventsHandler); + return { renderingPermission, optionsWithDefaults, permission, contextVariables, + eventsSubscription, chartHandler: new ChartHandler(contextVariables), ipWhitelist: new IpWhiteListService(optionsWithDefaults), schema: new SchemaService(optionsWithDefaults), diff --git a/packages/forestadmin-client/src/events-subscription/index.ts b/packages/forestadmin-client/src/events-subscription/index.ts new file mode 100644 index 0000000000..ffdd0653db --- /dev/null +++ b/packages/forestadmin-client/src/events-subscription/index.ts @@ -0,0 +1,92 @@ +import EventSource from 'eventsource'; + +import { + BaseEventsSubscriptionService, + RefreshEventsHandlerService, + ServerEvent, + ServerEventType, +} from './types'; +import { ForestAdminClientOptionsWithDefaults } from '../types'; + +export default class EventsSubscriptionService implements BaseEventsSubscriptionService { + constructor( + private readonly options: ForestAdminClientOptionsWithDefaults, + private readonly refreshEventsHandlerService: RefreshEventsHandlerService, + ) {} + + async subscribeEvents(): Promise { + if (!this.options.instantCacheRefresh) { + this.options.logger( + 'Debug', + 'Event source deactivated.. Use agent option [instantCacheRefresh=true] ' + + 'if you want to activate them', + ); + + return; + } + + const eventSourceConfig = { + // forest-secret-key act as the credential + withCredentials: false, + headers: { 'forest-secret-key': this.options.envSecret }, + https: { + rejectUnauthorized: process.env.NODE_TLS_REJECT_UNAUTHORIZED !== '0', + }, + }; + const url = new URL('/liana/v4/subscribe-to-events', this.options.forestServerUrl).toString(); + + const source = new EventSource(url, eventSourceConfig); + + source.addEventListener('error', this.onEventError.bind(this)); + + source.addEventListener('open', () => this.onEventOpen()); + + source.addEventListener(ServerEventType.RefreshUsers, async () => + this.refreshEventsHandlerService.refreshUsers(), + ); + + source.addEventListener(ServerEventType.RefreshRoles, async () => + this.refreshEventsHandlerService.refreshRoles(), + ); + + source.addEventListener(ServerEventType.RefreshRenderings, async (event: ServerEvent) => + this.handleSeverEventRefreshRenderings(event), + ); + + source.addEventListener(ServerEventType.RefreshCustomizations, async () => + this.refreshEventsHandlerService.refreshCustomizations(), + ); + } + + private async handleSeverEventRefreshRenderings(event: ServerEvent) { + if (!event.data) { + this.options.logger('Debug', 'Server Event - RefreshRenderings missing required data.'); + + return; + } + + const { renderingIds } = JSON.parse(event.data as unknown as string); + await this.refreshEventsHandlerService.refreshRenderings(renderingIds); + } + + private onEventError(event: { type: string; status?: number; message?: string }) { + if (event.status === 502) { + this.options.logger('Debug', 'Server Event - Connection lost'); + + return; + } + + if (event.message) + this.options.logger('Warn', `Server Event - Error: ${JSON.stringify(event)}`); + } + + private onEventOpen() { + this.options.logger( + 'Debug', + 'Server Event - Open EventSource (SSE) connection with Forest Admin servers', + ); + + // Flush all previous data as we could have missed some events + this.refreshEventsHandlerService.refreshEverything(); + } +} diff --git a/packages/forestadmin-client/src/events-subscription/native-refresh-events-handler-service.ts b/packages/forestadmin-client/src/events-subscription/native-refresh-events-handler-service.ts new file mode 100644 index 0000000000..b39b38f4a1 --- /dev/null +++ b/packages/forestadmin-client/src/events-subscription/native-refresh-events-handler-service.ts @@ -0,0 +1,45 @@ +import EventEmitter from 'events'; + +import { RefreshEventsHandlerService } from './types'; +import ActionPermissionService from '../permissions/action-permission'; +import RenderingPermissionService from '../permissions/rendering-permission'; +import UserPermissionService from '../permissions/user-permission'; + +export default class NativeRefreshEventsHandlerService + extends EventEmitter + implements RefreshEventsHandlerService +{ + constructor( + private readonly actionPermissionService: ActionPermissionService, + private readonly usersPermissionService: UserPermissionService, + private readonly renderingPermissionService: RenderingPermissionService, + ) { + super(); + } + + public refreshUsers() { + this.usersPermissionService.invalidateCache(); + } + + public refreshRoles() { + this.actionPermissionService.invalidateCache(); + } + + public refreshRenderings(renderingIds: (string | number)[]) { + for (const renderingId of renderingIds) + this.renderingPermissionService.invalidateCache(renderingId); + } + + public refreshCustomizations() { + this.emit('RefreshCustomizations'); + } + + public refreshEverything() { + this.usersPermissionService.invalidateCache(); + this.actionPermissionService.invalidateCache(); + this.renderingPermissionService.invalidateAllCache(); + + // Emit RefreshCustomizations event + this.emit('RefreshCustomizations'); + } +} diff --git a/packages/forestadmin-client/src/events-subscription/types.ts b/packages/forestadmin-client/src/events-subscription/types.ts new file mode 100644 index 0000000000..adec47a2f2 --- /dev/null +++ b/packages/forestadmin-client/src/events-subscription/types.ts @@ -0,0 +1,26 @@ +import EventEmitter from 'events'; + +export enum ServerEventType { + RefreshUsers = 'refresh-users', + RefreshRoles = 'refresh-roles', + RefreshRenderings = 'refresh-renderings', + RefreshCustomizations = 'refresh-customizations', +} + +export type ServerEvent = MessageEvent<{ + type: `${ServerEventType}`; + data?: string; +}>; + +export interface RefreshEventsHandlerService extends EventEmitter { + refreshUsers: () => Promise | void; + refreshRoles: () => Promise | void; + refreshRenderings: (renderingIds: [string | number]) => Promise | void; + refreshCustomizations: () => Promise | void; + + refreshEverything: () => Promise | void; +} + +export interface BaseEventsSubscriptionService { + subscribeEvents(): Promise; +} diff --git a/packages/forestadmin-client/src/forest-admin-client-with-cache.ts b/packages/forestadmin-client/src/forest-admin-client-with-cache.ts index c7d2f1045f..74fd9145ac 100644 --- a/packages/forestadmin-client/src/forest-admin-client-with-cache.ts +++ b/packages/forestadmin-client/src/forest-admin-client-with-cache.ts @@ -3,6 +3,7 @@ import { Client } from 'openid-client'; import AuthService from './auth'; import { UserInfo } from './auth/types'; import ChartHandler from './charts/chart-handler'; +import { BaseEventsSubscriptionService } from './events-subscription/types'; import IpWhiteListService from './ip-whitelist'; import { IpWhitelistConfiguration } from './ip-whitelist/types'; import { ModelCustomizationService } from './model-customizations/types'; @@ -29,6 +30,7 @@ export default class ForestAdminClientWithCache implements ForestAdminClient { protected readonly schemaService: SchemaService, protected readonly authService: AuthService, public readonly modelCustomizationService: ModelCustomizationService, + protected readonly eventsSubscription: BaseEventsSubscriptionService, ) {} verifySignedActionParameters(signedParameters: string): TSignedParameters { @@ -68,6 +70,11 @@ export default class ForestAdminClientWithCache implements ForestAdminClient { } public markScopesAsUpdated(renderingId: number | string) { - this.renderingPermissionService.invalidateCache(renderingId); + if (!this.options.instantCacheRefresh) + this.renderingPermissionService.invalidateCache(renderingId); + } + + public async subscribeToServerEvents() { + await this.eventsSubscription.subscribeEvents(); } } diff --git a/packages/forestadmin-client/src/index.ts b/packages/forestadmin-client/src/index.ts index f10c32966c..902ca7f5a0 100644 --- a/packages/forestadmin-client/src/index.ts +++ b/packages/forestadmin-client/src/index.ts @@ -43,6 +43,7 @@ export default function createForestAdminClient( schema, auth, modelCustomizationService, + eventsSubscription, } = buildApplicationServices(new ForestHttpApi(), options); return new ForestAdminClientWithCache( @@ -55,6 +56,7 @@ export default function createForestAdminClient( schema, auth, modelCustomizationService, + eventsSubscription, ); } diff --git a/packages/forestadmin-client/src/permissions/action-permission.ts b/packages/forestadmin-client/src/permissions/action-permission.ts index 10a00025ce..5d54d805ac 100644 --- a/packages/forestadmin-client/src/permissions/action-permission.ts +++ b/packages/forestadmin-client/src/permissions/action-permission.ts @@ -26,7 +26,8 @@ export default class ActionPermissionService { return this.hasPermissionOrRefetch({ roleId, actionName, - allowRefetch: true, + // Only allow refetch when not using server events + allowRefetch: !this.options.instantCacheRefresh, }); } @@ -43,8 +44,7 @@ export default class ActionPermissionService { const isAllowed = this.isAllowed({ permissions, actionName, roleId }); if (!isAllowed && allowRefetch) { - this.permissionsPromise = undefined; - this.permissionExpirationTimestamp = undefined; + this.invalidateCache(); return this.hasPermissionOrRefetch({ roleId, @@ -55,8 +55,7 @@ export default class ActionPermissionService { this.options.logger( 'Debug', - `User ${roleId} is ${isAllowed ? '' : 'not '}allowed to perform - }${actionName}`, + `User ${roleId} is ${isAllowed ? '' : 'not '}allowed to perform ${actionName}`, ); return isAllowed; @@ -140,4 +139,11 @@ export default class ActionPermissionService { roleId => !approvalPermission.conditionsByRole?.has(roleId), ); } + + public invalidateCache() { + this.options.logger('Debug', 'Invalidating roles permissions cache..'); + + this.permissionsPromise = undefined; + this.permissionExpirationTimestamp = undefined; + } } diff --git a/packages/forestadmin-client/src/permissions/rendering-permission.ts b/packages/forestadmin-client/src/permissions/rendering-permission.ts index b3518cbfd9..f17d8cee1e 100644 --- a/packages/forestadmin-client/src/permissions/rendering-permission.ts +++ b/packages/forestadmin-client/src/permissions/rendering-permission.ts @@ -46,7 +46,13 @@ export default class RenderingPermissionService { collectionName: string; userId: number | string; }): Promise { - return this.getScopeOrRetry({ renderingId, collectionName, userId, allowRetry: true }); + return this.getScopeOrRetry({ + renderingId, + collectionName, + userId, + // Only allow retry when not using server events + allowRetry: !this.options.instantCacheRefresh, + }); } private async getScopeOrRetry({ @@ -71,7 +77,12 @@ export default class RenderingPermissionService { if (allowRetry) { this.invalidateCache(renderingId); - return this.getScopeOrRetry({ renderingId, collectionName, userId, allowRetry: false }); + return this.getScopeOrRetry({ + renderingId, + collectionName, + userId, + allowRetry: false, + }); } return null; @@ -97,7 +108,8 @@ export default class RenderingPermissionService { renderingId, collectionName, segmentQuery, - allowRetry: true, + // Only allow retry when not using server events + allowRetry: !this.options.instantCacheRefresh, })) && verifySQLQuery(segmentQuery) ); } @@ -180,7 +192,8 @@ export default class RenderingPermissionService { renderingId, chartHash, userId, - allowRetry: true, + // Only allow retry when not using server events + allowRetry: !this.options.instantCacheRefresh, })) && (!this.isQueryChart(chartRequest) || verifySQLQuery(chartRequest.query)) ); @@ -215,7 +228,7 @@ export default class RenderingPermissionService { if (allowRetry) { this.invalidateCache(renderingId); - this.userPermissions.clearCache(); + this.userPermissions.invalidateCache(); return this.canRetrieveChartHashOrRetry({ renderingId, @@ -242,6 +255,12 @@ export default class RenderingPermissionService { this.permissionsByRendering.delete(`${renderingId}`); } + public invalidateAllCache() { + this.options.logger('Debug', `Invalidating rendering permissions cache for all renderings`); + + this.permissionsByRendering.clear(); + } + public async getUser(userId: number | string): Promise { return this.userPermissions.getUserInfo(userId); } diff --git a/packages/forestadmin-client/src/permissions/user-permission.ts b/packages/forestadmin-client/src/permissions/user-permission.ts index 12659fbc75..7393bb2605 100644 --- a/packages/forestadmin-client/src/permissions/user-permission.ts +++ b/packages/forestadmin-client/src/permissions/user-permission.ts @@ -18,7 +18,8 @@ export default class UserPermissionService { if ( !this.cacheExpirationTimestamp || this.cacheExpirationTimestamp < Date.now() || - !(await this.userInfoById).has(`${userId}`) + // Only allow refetch when not using server events and not found + (!this.options.instantCacheRefresh && !(await this.userInfoById).has(`${userId}`)) ) { this.cacheExpirationTimestamp = Date.now() + this.options.permissionsCacheDurationInSeconds * 1000; @@ -36,8 +37,10 @@ export default class UserPermissionService { return (await this.userInfoById).get(`${userId}`); } - public clearCache() { - this.userInfoById = null; - this.cacheExpirationTimestamp = Number.NEGATIVE_INFINITY; + public invalidateCache() { + this.options.logger('Debug', 'Invalidating users permissions cache..'); + + this.userInfoById = undefined; + this.cacheExpirationTimestamp = undefined; } } diff --git a/packages/forestadmin-client/src/types.ts b/packages/forestadmin-client/src/types.ts index b7c3bfdc50..07ccd605a2 100644 --- a/packages/forestadmin-client/src/types.ts +++ b/packages/forestadmin-client/src/types.ts @@ -27,6 +27,7 @@ export type ForestAdminClientOptions = { forestServerUrl?: string; logger?: Logger; permissionsCacheDurationInSeconds?: number; + instantCacheRefresh?: boolean; }; export type ForestAdminClientOptionsWithDefaults = Required; @@ -52,6 +53,8 @@ export interface ForestAdminClient { collectionName: string; }): Promise; markScopesAsUpdated(renderingId: number | string): void; + + subscribeToServerEvents(): Promise; } export interface PermissionService { diff --git a/packages/forestadmin-client/test/__factories__/events-subscription/index.ts b/packages/forestadmin-client/test/__factories__/events-subscription/index.ts new file mode 100644 index 0000000000..8c91c63326 --- /dev/null +++ b/packages/forestadmin-client/test/__factories__/events-subscription/index.ts @@ -0,0 +1,23 @@ +import { Factory } from 'fishery'; + +import refreshEventsHandlerServiceFactory from './native-refresh-events-handler-service'; +import EventsSubscriptionService from '../../../src/events-subscription'; +import forestAdminClientOptions from '../forest-admin-client-options'; + +export class EventsSubscriptionServiceFactory extends Factory { + mockAllMethods() { + return this.afterBuild(service => { + service.subscribeEvents = jest.fn(); + }); + } +} + +const eventsSubscriptionServiceFactory = EventsSubscriptionServiceFactory.define( + () => + new EventsSubscriptionService( + forestAdminClientOptions.build(), + refreshEventsHandlerServiceFactory.build(), + ), +); + +export default eventsSubscriptionServiceFactory; diff --git a/packages/forestadmin-client/test/__factories__/events-subscription/native-refresh-events-handler-service.ts b/packages/forestadmin-client/test/__factories__/events-subscription/native-refresh-events-handler-service.ts new file mode 100644 index 0000000000..bf2f4e4faa --- /dev/null +++ b/packages/forestadmin-client/test/__factories__/events-subscription/native-refresh-events-handler-service.ts @@ -0,0 +1,29 @@ +import { Factory } from 'fishery'; + +import NativeRefreshEventsHandlerService from '../../../src/events-subscription/native-refresh-events-handler-service'; +import actionPermission from '../permissions/action-permission'; +import renderingPermission from '../permissions/rendering-permission'; +import userPermission from '../permissions/user-permission'; + +export class NativeRefreshEventsHandlerServiceFactory extends Factory { + mockAllMethods() { + return this.afterBuild(service => { + service.refreshUsers = jest.fn(); + service.refreshRoles = jest.fn(); + service.refreshRenderings = jest.fn(); + service.refreshCustomizations = jest.fn(); + service.refreshEverything = jest.fn(); + }); + } +} + +const nativeRefreshEventsHandlerServiceFactory = NativeRefreshEventsHandlerServiceFactory.define( + () => + new NativeRefreshEventsHandlerService( + actionPermission.mockAllMethods().build(), + userPermission.mockAllMethods().build(), + renderingPermission.mockAllMethods().build(), + ), +); + +export default nativeRefreshEventsHandlerServiceFactory; diff --git a/packages/forestadmin-client/test/__factories__/forest-admin-client-options.ts b/packages/forestadmin-client/test/__factories__/forest-admin-client-options.ts index 6674a038b4..4b58e27943 100644 --- a/packages/forestadmin-client/test/__factories__/forest-admin-client-options.ts +++ b/packages/forestadmin-client/test/__factories__/forest-admin-client-options.ts @@ -6,5 +6,6 @@ export default Factory.define(() => ({ envSecret: '61a31971206f285c3e8eb8f3ee420175eb004bfa9fa24846dde6d5dd438e3991', forestServerUrl: 'https://api.development.forestadmin.com', permissionsCacheDurationInSeconds: 15 * 60, + instantCacheRefresh: true, logger: jest.fn(), })); diff --git a/packages/forestadmin-client/test/__factories__/forest-admin-client.ts b/packages/forestadmin-client/test/__factories__/forest-admin-client.ts index aefc7db5d8..f0b1564e50 100644 --- a/packages/forestadmin-client/test/__factories__/forest-admin-client.ts +++ b/packages/forestadmin-client/test/__factories__/forest-admin-client.ts @@ -2,6 +2,7 @@ import { Factory } from 'fishery'; import authServiceFactory from './auth'; import chartHandlerFactory from './chart/chart-handler'; +import eventsSubscriptionServiceFactory from './events-subscription'; import forestAdminClientOptionsFactory from './forest-admin-client-options'; import ipWhitelistServiceFactory from './ip-whitelist'; import modelCustomizationServiceFactory from './model-customizations/model-customization-from-api'; @@ -33,6 +34,7 @@ const forestAdminClientFactory = ForestAdminClientFactory.define( schemaServiceFactory.build(), authServiceFactory.build(), modelCustomizationServiceFactory.build(), + eventsSubscriptionServiceFactory.build(), ), ); diff --git a/packages/forestadmin-client/test/__factories__/index.ts b/packages/forestadmin-client/test/__factories__/index.ts index 766b111fd7..bfd3e52ba1 100644 --- a/packages/forestadmin-client/test/__factories__/index.ts +++ b/packages/forestadmin-client/test/__factories__/index.ts @@ -1,3 +1,5 @@ +export { default as eventsSubscription } from './events-subscription'; +export { default as nativeRefreshEventsHandler } from './events-subscription/native-refresh-events-handler-service'; export { default as actionPermission } from './permissions/action-permission'; export { default as renderingPermission } from './permissions/rendering-permission'; export { default as userPermission } from './permissions/user-permission'; diff --git a/packages/forestadmin-client/test/__factories__/permissions/action-permission.ts b/packages/forestadmin-client/test/__factories__/permissions/action-permission.ts index 17b5b4f7bd..7f434cbded 100644 --- a/packages/forestadmin-client/test/__factories__/permissions/action-permission.ts +++ b/packages/forestadmin-client/test/__factories__/permissions/action-permission.ts @@ -1,7 +1,7 @@ import { Factory } from 'fishery'; import ActionPermissionService from '../../../src/permissions/action-permission'; -import { forestAdminServerInterface } from '../index'; +import { forestAdminClientOptions, forestAdminServerInterface } from '../index'; export class ActionPermissionsFactory extends Factory { mockAllMethods() { @@ -11,6 +11,7 @@ export class ActionPermissionsFactory extends Factory { permissions.getCustomActionCondition = jest.fn(); permissions.getAllCustomActionConditions = jest.fn(); permissions.getRoleIdsAllowedToApproveWithoutConditions = jest.fn(); + permissions.invalidateCache = jest.fn(); }); } } @@ -18,12 +19,7 @@ export class ActionPermissionsFactory extends Factory { const actionPermissionsFactory = ActionPermissionsFactory.define( () => new ActionPermissionService( - { - envSecret: '123', - forestServerUrl: 'http://api', - permissionsCacheDurationInSeconds: 15 * 60, - logger: () => {}, - }, + forestAdminClientOptions.build(), forestAdminServerInterface.build(), ), ); diff --git a/packages/forestadmin-client/test/__factories__/permissions/rendering-permission.ts b/packages/forestadmin-client/test/__factories__/permissions/rendering-permission.ts index 40fcbeea3d..b70530fbac 100644 --- a/packages/forestadmin-client/test/__factories__/permissions/rendering-permission.ts +++ b/packages/forestadmin-client/test/__factories__/permissions/rendering-permission.ts @@ -2,7 +2,7 @@ import { Factory } from 'fishery'; import userPermissionsFactory from './user-permission'; import RenderingPermissionService from '../../../src/permissions/rendering-permission'; -import { forestAdminServerInterface } from '../index'; +import { forestAdminClientOptions, forestAdminServerInterface } from '../index'; export class RenderingPermissionsFactory extends Factory { mockAllMethods() { @@ -10,6 +10,7 @@ export class RenderingPermissionsFactory extends Factory new RenderingPermissionService( - { - envSecret: '123', - forestServerUrl: 'http://api', - permissionsCacheDurationInSeconds: 15 * 60, - logger: () => {}, - }, + forestAdminClientOptions.build(), userPermissionsFactory.build(), forestAdminServerInterface.build(), ), diff --git a/packages/forestadmin-client/test/__factories__/permissions/user-permission.ts b/packages/forestadmin-client/test/__factories__/permissions/user-permission.ts index 6523ed6439..639711af6e 100644 --- a/packages/forestadmin-client/test/__factories__/permissions/user-permission.ts +++ b/packages/forestadmin-client/test/__factories__/permissions/user-permission.ts @@ -1,27 +1,20 @@ import { Factory } from 'fishery'; import UserPermissionService from '../../../src/permissions/user-permission'; -import { forestAdminServerInterface } from '../index'; +import { forestAdminClientOptions, forestAdminServerInterface } from '../index'; export class UserPermissionsFactory extends Factory { mockAllMethods() { return this.afterBuild(permissions => { permissions.getUserInfo = jest.fn(); + permissions.invalidateCache = jest.fn(); }); } } const userPermissionsFactory = UserPermissionsFactory.define( () => - new UserPermissionService( - { - envSecret: '123', - forestServerUrl: 'http://api', - permissionsCacheDurationInSeconds: 15 * 60, - logger: () => {}, - }, - forestAdminServerInterface.build(), - ), + new UserPermissionService(forestAdminClientOptions.build(), forestAdminServerInterface.build()), ); export default userPermissionsFactory; diff --git a/packages/forestadmin-client/test/events-subscription/index.test.ts b/packages/forestadmin-client/test/events-subscription/index.test.ts new file mode 100644 index 0000000000..371a9dad69 --- /dev/null +++ b/packages/forestadmin-client/test/events-subscription/index.test.ts @@ -0,0 +1,210 @@ +import EventsSubscriptionService from '../../src/events-subscription'; +import { ServerEventType } from '../../src/events-subscription/types'; +import * as factories from '../__factories__'; + +const events = {}; +const addEventListener = jest.fn((event, callback) => { + events[event] = callback; +}); + +jest.mock('eventsource', () => ({ + __esModule: true, + default: jest.fn().mockImplementation(() => ({ + addEventListener, + })), +})); + +describe('EventsSubscriptionService', () => { + beforeEach(() => jest.clearAllMocks()); + + const options = factories.forestAdminClientOptions.build(); + const refreshEventsHandlerService = factories.nativeRefreshEventsHandler.mockAllMethods().build(); + + describe('subscribeEvents', () => { + test('should add listener for message events', async () => { + const eventsSubscriptionService = factories.eventsSubscription.build(); + + eventsSubscriptionService.subscribeEvents(); + + expect(addEventListener).toHaveBeenCalledWith('error', expect.any(Function)); + expect(addEventListener).toHaveBeenCalledWith('open', expect.any(Function)); + + expect(addEventListener).toHaveBeenCalledWith( + ServerEventType.RefreshUsers, + expect.any(Function), + ); + expect(addEventListener).toHaveBeenCalledWith( + ServerEventType.RefreshRoles, + expect.any(Function), + ); + expect(addEventListener).toHaveBeenCalledWith( + ServerEventType.RefreshRenderings, + expect.any(Function), + ); + expect(addEventListener).toHaveBeenCalledWith( + ServerEventType.RefreshRenderings, + expect.any(Function), + ); + }); + + describe('when server events are deactivated', () => { + test('should not do anything', async () => { + const eventsSubscriptionService = new EventsSubscriptionService( + { ...options, instantCacheRefresh: false }, + refreshEventsHandlerService, + ); + + eventsSubscriptionService.subscribeEvents(); + + expect(addEventListener).not.toHaveBeenCalled(); + }); + }); + }); + + describe('handleSeverEvents', () => { + describe('on RefreshUsers event', () => { + test('should delegate to refreshEventsHandlerService', async () => { + const eventsSubscriptionService = new EventsSubscriptionService( + options, + refreshEventsHandlerService, + ); + + eventsSubscriptionService.subscribeEvents(); + + // eslint-disable-next-line @typescript-eslint/dot-notation + events[ServerEventType.RefreshUsers]({}); + + expect(refreshEventsHandlerService.refreshUsers).toHaveBeenCalled(); + }); + }); + + describe('on RefreshRoles event', () => { + test('should delegate to refreshEventsHandlerService', async () => { + const eventsSubscriptionService = new EventsSubscriptionService( + options, + refreshEventsHandlerService, + ); + + eventsSubscriptionService.subscribeEvents(); + + // eslint-disable-next-line @typescript-eslint/dot-notation + events[ServerEventType.RefreshRoles]({}); + + expect(refreshEventsHandlerService.refreshRoles).toHaveBeenCalled(); + }); + }); + + describe('on RefreshCustomizations event', () => { + test('should delegate to refreshEventsHandlerService', async () => { + const eventsSubscriptionService = new EventsSubscriptionService( + options, + refreshEventsHandlerService, + ); + + eventsSubscriptionService.subscribeEvents(); + + // eslint-disable-next-line @typescript-eslint/dot-notation + events[ServerEventType.RefreshCustomizations]({}); + + expect(refreshEventsHandlerService.refreshCustomizations).toHaveBeenCalled(); + }); + }); + + describe('on RefreshRenderings event', () => { + test('should delegate to refreshEventsHandlerService', async () => { + const eventsSubscriptionService = new EventsSubscriptionService( + options, + refreshEventsHandlerService, + ); + eventsSubscriptionService.subscribeEvents(); + + // eslint-disable-next-line @typescript-eslint/dot-notation + events[ServerEventType.RefreshRenderings]({ + data: JSON.stringify({ + renderingIds: ['13', 24], + }), + }); + + expect(refreshEventsHandlerService.refreshRenderings).toHaveBeenCalled(); + expect(refreshEventsHandlerService.refreshRenderings).toHaveBeenCalledWith(['13', 24]); + }); + describe('on malformed event', () => { + test('should not do anything', async () => { + const eventsSubscriptionService = new EventsSubscriptionService( + options, + refreshEventsHandlerService, + ); + eventsSubscriptionService.subscribeEvents(); + + // eslint-disable-next-line @typescript-eslint/dot-notation + events[ServerEventType.RefreshRenderings]({ + data: null, + }); + + expect(refreshEventsHandlerService.refreshRenderings).not.toHaveBeenCalled(); + }); + }); + }); + }); + + describe('onEventOpen', () => { + test('should refreshEverything using refreshEventsHandlerService', async () => { + const eventsSubscriptionService = new EventsSubscriptionService( + options, + refreshEventsHandlerService, + ); + + eventsSubscriptionService.subscribeEvents(); + + // eslint-disable-next-line @typescript-eslint/dot-notation + events['open'](); + + expect(refreshEventsHandlerService.refreshEverything).toHaveBeenCalled(); + + expect(options.logger).toHaveBeenCalledWith( + 'Debug', + 'Server Event - Open EventSource (SSE) connection with Forest Admin servers', + ); + }); + }); + + describe('onEventError', () => { + describe('when error status is Bad Gateway (502)', () => { + test('should delegate to refreshEventsHandlerService', async () => { + const eventsSubscriptionService = new EventsSubscriptionService( + options, + refreshEventsHandlerService, + ); + + eventsSubscriptionService.subscribeEvents(); + + // eslint-disable-next-line @typescript-eslint/dot-notation + events['error']({ status: 502 }); + + expect(options.logger).toHaveBeenCalledWith('Debug', 'Server Event - Connection lost'); + }); + }); + + describe('other error case', () => { + test('should delegate to refreshEventsHandlerService', async () => { + const eventsSubscriptionService = new EventsSubscriptionService( + options, + refreshEventsHandlerService, + ); + + eventsSubscriptionService.subscribeEvents(); + + // eslint-disable-next-line @typescript-eslint/dot-notation + events['error']({ + status: 404, + message: 'some error message that might help customer to track issues', + }); + expect(options.logger).toHaveBeenCalledWith( + 'Warn', + 'Server Event - Error: {"status":404,"message":"some error message that' + + ' might help customer to track issues"}', + ); + }); + }); + }); +}); diff --git a/packages/forestadmin-client/test/events-subscription/native-refresh-events-handler-service.test.ts b/packages/forestadmin-client/test/events-subscription/native-refresh-events-handler-service.test.ts new file mode 100644 index 0000000000..fbf80fede2 --- /dev/null +++ b/packages/forestadmin-client/test/events-subscription/native-refresh-events-handler-service.test.ts @@ -0,0 +1,117 @@ +import NativeRefreshEventsHandlerService from '../../src/events-subscription/native-refresh-events-handler-service'; +import * as factories from '../__factories__'; + +const events = {}; +const addEventListener = jest.fn((event, callback) => { + events[event] = callback; +}); + +jest.mock('eventsource', () => ({ + __esModule: true, + default: jest.fn().mockImplementation(() => ({ + addEventListener, + })), +})); + +describe('NativeRefreshEventsHandlerService', () => { + beforeEach(() => jest.clearAllMocks()); + + const actionPermission = factories.actionPermission.mockAllMethods().build(); + const usersPermission = factories.userPermission.mockAllMethods().build(); + const renderingPermission = factories.renderingPermission.mockAllMethods().build(); + + describe('refreshUsers', () => { + test('should invalidate users cache', async () => { + const refreshEventsHandler = new NativeRefreshEventsHandlerService( + actionPermission, + usersPermission, + renderingPermission, + ); + + refreshEventsHandler.refreshUsers(); + + expect(usersPermission.invalidateCache).toHaveBeenCalled(); + + expect(actionPermission.invalidateCache).not.toHaveBeenCalled(); + expect(renderingPermission.invalidateCache).not.toHaveBeenCalled(); + }); + }); + + describe('refreshRoles', () => { + test('should invalidate roles cache', async () => { + const refreshEventsHandler = new NativeRefreshEventsHandlerService( + actionPermission, + usersPermission, + renderingPermission, + ); + + refreshEventsHandler.refreshRoles(); + + expect(actionPermission.invalidateCache).toHaveBeenCalled(); + + expect(usersPermission.invalidateCache).not.toHaveBeenCalled(); + expect(renderingPermission.invalidateCache).not.toHaveBeenCalled(); + }); + }); + + describe('refreshRenderings', () => { + test('should invalidate renderings cache', async () => { + const refreshEventsHandler = new NativeRefreshEventsHandlerService( + actionPermission, + usersPermission, + renderingPermission, + ); + + const renderingsIds = ['13', 24]; + refreshEventsHandler.refreshRenderings(renderingsIds); + + expect(renderingPermission.invalidateCache).toHaveBeenCalledTimes(2); + expect(renderingPermission.invalidateCache).toHaveBeenNthCalledWith(1, '13'); + expect(renderingPermission.invalidateCache).toHaveBeenNthCalledWith(2, 24); + + expect(actionPermission.invalidateCache).not.toHaveBeenCalled(); + expect(usersPermission.invalidateCache).not.toHaveBeenCalled(); + }); + }); + + describe('refreshCustomizations', () => { + test('should emit RefreshCustomizations (it will call listener)', async () => { + const refreshEventsHandler = new NativeRefreshEventsHandlerService( + actionPermission, + usersPermission, + renderingPermission, + ); + + const spyEmit = jest.spyOn(refreshEventsHandler, 'emit'); + + refreshEventsHandler.refreshCustomizations(); + + expect(spyEmit).toHaveBeenCalled(); + expect(spyEmit).toHaveBeenCalledWith('RefreshCustomizations'); + + expect(usersPermission.invalidateCache).not.toHaveBeenCalled(); + expect(actionPermission.invalidateCache).not.toHaveBeenCalled(); + expect(renderingPermission.invalidateCache).not.toHaveBeenCalled(); + }); + }); + + describe('refreshEverything', () => { + test('should refresh all cached data', async () => { + const refreshEventsHandler = new NativeRefreshEventsHandlerService( + actionPermission, + usersPermission, + renderingPermission, + ); + + const spyEmit = jest.spyOn(refreshEventsHandler, 'emit'); + + refreshEventsHandler.refreshEverything(); + + expect(usersPermission.invalidateCache).toHaveBeenCalled(); + expect(actionPermission.invalidateCache).toHaveBeenCalled(); + expect(renderingPermission.invalidateAllCache).toHaveBeenCalled(); + + expect(spyEmit).toHaveBeenCalled(); + }); + }); +}); diff --git a/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts b/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts index d2f6d9b9bc..474b6ce235 100644 --- a/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts +++ b/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts @@ -26,6 +26,7 @@ describe('ForestAdminClientWithCache', () => { factories.schema.build(), factories.auth.build(), factories.modelCustomization.build(), + factories.eventsSubscription.build(), ); const config = await forestAdminClient.getIpWhitelistConfiguration(); @@ -50,6 +51,7 @@ describe('ForestAdminClientWithCache', () => { schemaService, factories.auth.build(), factories.modelCustomization.build(), + factories.eventsSubscription.build(), ); const result = await forestAdminClient.postSchema({ @@ -80,6 +82,7 @@ describe('ForestAdminClientWithCache', () => { factories.schema.build(), factories.auth.build(), factories.modelCustomization.build(), + factories.eventsSubscription.build(), ); verifyAndExtractApprovalMock.mockReturnValue(signedParameters); @@ -107,6 +110,7 @@ describe('ForestAdminClientWithCache', () => { factories.schema.build(), authService, factories.modelCustomization.build(), + factories.eventsSubscription.build(), ); const result = await forestAdminClient.getUserInfo(1, 'token'); @@ -130,6 +134,7 @@ describe('ForestAdminClientWithCache', () => { factories.schema.build(), authService, factories.modelCustomization.build(), + factories.eventsSubscription.build(), ); const result = await forestAdminClient.getOpenIdClient(); @@ -140,23 +145,48 @@ describe('ForestAdminClientWithCache', () => { }); describe('markScopesAsUpdated', () => { - it('should invalidate the cache of scopes', async () => { - const renderingPermissionService = factories.renderingPermission.mockAllMethods().build(); - const forestAdminClient = new ForestAdminClient( - factories.forestAdminClientOptions.build(), - factories.permission.build(), - renderingPermissionService, - factories.contextVariablesInstantiator.build(), - factories.chartHandler.build(), - factories.ipWhiteList.build(), - factories.schema.build(), - factories.auth.build(), - factories.modelCustomization.build(), - ); - - await forestAdminClient.markScopesAsUpdated(42); + describe('when not using ServerEvents', () => { + it('should invalidate the cache of scopes', async () => { + const renderingPermissionService = factories.renderingPermission.mockAllMethods().build(); + const forestAdminClient = new ForestAdminClient( + { ...factories.forestAdminClientOptions.build(), instantCacheRefresh: false }, + factories.permission.build(), + renderingPermissionService, + factories.contextVariablesInstantiator.build(), + factories.chartHandler.build(), + factories.ipWhiteList.build(), + factories.schema.build(), + factories.auth.build(), + factories.modelCustomization.build(), + factories.eventsSubscription.build(), + ); + + await forestAdminClient.markScopesAsUpdated(42); + + expect(renderingPermissionService.invalidateCache).toHaveBeenCalledWith(42); + }); + }); - expect(renderingPermissionService.invalidateCache).toHaveBeenCalledWith(42); + describe('when using ServerEvents', () => { + it('should not do anything', async () => { + const renderingPermissionService = factories.renderingPermission.mockAllMethods().build(); + const forestAdminClient = new ForestAdminClient( + factories.forestAdminClientOptions.build(), + factories.permission.build(), + renderingPermissionService, + factories.contextVariablesInstantiator.build(), + factories.chartHandler.build(), + factories.ipWhiteList.build(), + factories.schema.build(), + factories.auth.build(), + factories.modelCustomization.build(), + factories.eventsSubscription.build(), + ); + + await forestAdminClient.markScopesAsUpdated(42); + + expect(renderingPermissionService.invalidateCache).not.toHaveBeenCalled(); + }); }); }); @@ -173,6 +203,7 @@ describe('ForestAdminClientWithCache', () => { factories.schema.build(), factories.auth.build(), factories.modelCustomization.build(), + factories.eventsSubscription.build(), ); (renderingPermissionService.getScope as jest.Mock).mockResolvedValue('scope'); @@ -191,4 +222,26 @@ describe('ForestAdminClientWithCache', () => { expect(result).toBe('scope'); }); }); + + describe('subscribeToServerEvents', () => { + it('should subscribes to Server Events rendering service', async () => { + const eventsSubscriptionService = factories.eventsSubscription.mockAllMethods().build(); + const forestAdminClient = new ForestAdminClient( + factories.forestAdminClientOptions.build(), + factories.permission.build(), + factories.renderingPermission.build(), + factories.contextVariablesInstantiator.build(), + factories.chartHandler.build(), + factories.ipWhiteList.build(), + factories.schema.build(), + factories.auth.build(), + factories.modelCustomization.build(), + eventsSubscriptionService, + ); + + await forestAdminClient.subscribeToServerEvents(); + + expect(eventsSubscriptionService.subscribeEvents).toHaveBeenCalledWith(); + }); + }); }); diff --git a/packages/forestadmin-client/test/permissions/action-permission.test.ts b/packages/forestadmin-client/test/permissions/action-permission.test.ts index 95186e0c92..6ea3fb04c8 100644 --- a/packages/forestadmin-client/test/permissions/action-permission.test.ts +++ b/packages/forestadmin-client/test/permissions/action-permission.test.ts @@ -19,6 +19,7 @@ describe('ActionPermissionService', () => { envSecret: '123', forestServerUrl: 'http://api', isProduction: true, + instantCacheRefresh: false, logger: jest.fn(), }; const serverInterface = factories.forestAdminServerInterface.build(); @@ -399,4 +400,30 @@ describe('ActionPermissionService', () => { expect(generateActionsFromPermissionsMock).toHaveBeenCalledTimes(1); }); }); + + describe('invalidateCache', () => { + it('should retrieve the cache a second time after cache invalidation', async () => { + const { service, serverInterface } = setup( + { + isDevelopment: true, + actionsByRole: new Map(), + actionsGloballyAllowed: new Set(), + }, + { + isDevelopment: true, + actionsByRole: new Map(), + actionsGloballyAllowed: new Set(), + }, + ); + + expect(await service.can(1, 'action')).toBe(true); + + service.invalidateCache(); + + expect(await service.can(10, 'action')).toStrictEqual(true); + + expect(serverInterface.getEnvironmentPermissions).toHaveBeenCalledTimes(2); + expect(generateActionsFromPermissionsMock).toHaveBeenCalledTimes(2); + }); + }); }); diff --git a/packages/forestadmin-client/test/permissions/rendering-permission.test.ts b/packages/forestadmin-client/test/permissions/rendering-permission.test.ts index e2cdc9df3c..c260fe5cb5 100644 --- a/packages/forestadmin-client/test/permissions/rendering-permission.test.ts +++ b/packages/forestadmin-client/test/permissions/rendering-permission.test.ts @@ -40,6 +40,7 @@ describe('RenderingPermissionService', () => { forestServerUrl: 'https://api.dev', envSecret: 'secret', isProduction: true, + instantCacheRefresh: false, permissionsCacheDurationInSeconds: 1000, logger: jest.fn(), }; @@ -761,6 +762,90 @@ describe('RenderingPermissionService', () => { }); }); + describe('invalidateAllCache', () => { + it('should invalidate the cache for all renderings', async () => { + const { + renderingPermission, + getUserInfoMock, + serverInterface, + hashServerChartsMock, + hashChartRequestMock, + } = setup(); + + const userInfo = { + id: 42, + firstName: 'Jane', + lastName: 'Doe', + email: 'jane@forest.com', + permissionLevel: PermissionLevel.User, + }; + + getUserInfoMock.mockResolvedValue(userInfo); + + const stats = { lines: [{ type: 'Line' }] }; + serverInterface.getRenderingPermissions = jest.fn().mockResolvedValue({ + collections: {}, + stats, + team: {}, + }); + hashServerChartsMock.mockReturnValue(new Set(['HASH'])); + hashChartRequestMock.mockReturnValue('HASH'); + + const resultA1 = await renderingPermission.canExecuteChart({ + renderingId: 60, + chartRequest: { + type: ChartType.Value, + sourceCollectionName: 'jedi', + aggregateFieldName: 'strength', + aggregator: 'Sum', + }, + userId: 42, + }); + + const resultB1 = await renderingPermission.canExecuteChart({ + renderingId: 63, + chartRequest: { + type: ChartType.Value, + sourceCollectionName: 'jedi', + aggregateFieldName: 'strength', + aggregator: 'Sum', + }, + userId: 42, + }); + + renderingPermission.invalidateAllCache(); + + const resultA2 = await renderingPermission.canExecuteChart({ + renderingId: 60, + chartRequest: { + type: ChartType.Value, + sourceCollectionName: 'jedi', + aggregateFieldName: 'strength', + aggregator: 'Sum', + }, + userId: 42, + }); + + const resultB2 = await renderingPermission.canExecuteChart({ + renderingId: 63, + chartRequest: { + type: ChartType.Value, + sourceCollectionName: 'jedi', + aggregateFieldName: 'strength', + aggregator: 'Sum', + }, + userId: 42, + }); + + expect(resultA1).toBe(true); + expect(resultA2).toBe(true); + expect(resultB1).toBe(true); + expect(resultB2).toBe(true); + + expect(serverInterface.getRenderingPermissions).toHaveBeenCalledTimes(4); + }); + }); + describe('canExecuteSegmentQuery', () => { it('should return true if the segment query is allowed', async () => { const { diff --git a/packages/forestadmin-client/test/permissions/user-permission.test.ts b/packages/forestadmin-client/test/permissions/user-permission.test.ts index 5285460776..d36e850e7f 100644 --- a/packages/forestadmin-client/test/permissions/user-permission.test.ts +++ b/packages/forestadmin-client/test/permissions/user-permission.test.ts @@ -11,6 +11,7 @@ describe('UserPermission', () => { isProduction: true, envSecret: '123', forestServerUrl: 'http://api', + instantCacheRefresh: false, permissionsCacheDurationInSeconds: 15 * 60, logger: jest.fn(), }; @@ -144,8 +145,8 @@ describe('UserPermission', () => { }); }); - describe('clearCache', () => { - it('should retrieve the cache a second time after cache clearance', async () => { + describe('invalidateCache', () => { + it('should retrieve the cache a second time after cache invalidation', async () => { const { userPermissions, serverInterface } = setup(); serverInterface.getUsers = jest.fn().mockResolvedValue([ @@ -156,7 +157,7 @@ describe('UserPermission', () => { jest.useFakeTimers().setSystemTime(new Date('2020-01-01T00:00:00.000Z')); await userPermissions.getUserInfo(43); - userPermissions.clearCache(); + userPermissions.invalidateCache(); jest.useFakeTimers().setSystemTime(new Date('2020-01-01T00:15:00.000Z')); const userInfo = await userPermissions.getUserInfo(43); diff --git a/packages/plugin-aws-s3/CHANGELOG.md b/packages/plugin-aws-s3/CHANGELOG.md index 3a4519aac8..ca205661ab 100644 --- a/packages/plugin-aws-s3/CHANGELOG.md +++ b/packages/plugin-aws-s3/CHANGELOG.md @@ -1,4 +1,4 @@ -## @forestadmin/plugin-aws-s3 [1.1.5-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.1.4...@forestadmin/plugin-aws-s3@1.1.5-alpha-webhook-custom-actions.1) (2023-04-28) +## @forestadmin/plugin-aws-s3 [1.1.5](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.1.4...@forestadmin/plugin-aws-s3@1.1.5) (2023-05-24) @@ -6,7 +6,7 @@ ### Dependencies -* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.1 +* **@forestadmin/datasource-customizer:** upgraded to 1.7.2 ## @forestadmin/plugin-aws-s3 [1.1.4](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.1.3...@forestadmin/plugin-aws-s3@1.1.4) (2023-04-27) diff --git a/packages/plugin-export-advanced/CHANGELOG.md b/packages/plugin-export-advanced/CHANGELOG.md index 3dc9f04614..faf7a9742c 100644 --- a/packages/plugin-export-advanced/CHANGELOG.md +++ b/packages/plugin-export-advanced/CHANGELOG.md @@ -1,4 +1,4 @@ -## @forestadmin/plugin-export-advanced [1.0.7-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.6...@forestadmin/plugin-export-advanced@1.0.7-alpha-webhook-custom-actions.1) (2023-04-28) +## @forestadmin/plugin-export-advanced [1.0.7](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.6...@forestadmin/plugin-export-advanced@1.0.7) (2023-05-24) @@ -6,7 +6,7 @@ ### Dependencies -* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.1 +* **@forestadmin/datasource-customizer:** upgraded to 1.7.2 ## @forestadmin/plugin-export-advanced [1.0.6](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.5...@forestadmin/plugin-export-advanced@1.0.6) (2023-04-27) diff --git a/packages/plugin-flattener/CHANGELOG.md b/packages/plugin-flattener/CHANGELOG.md index 593719df49..87c6c5d25c 100644 --- a/packages/plugin-flattener/CHANGELOG.md +++ b/packages/plugin-flattener/CHANGELOG.md @@ -1,4 +1,4 @@ -## @forestadmin/plugin-flattener [1.0.20-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.19...@forestadmin/plugin-flattener@1.0.20-alpha-webhook-custom-actions.1) (2023-04-28) +## @forestadmin/plugin-flattener [1.0.20](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.19...@forestadmin/plugin-flattener@1.0.20) (2023-05-24) @@ -6,7 +6,7 @@ ### Dependencies -* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.1 +* **@forestadmin/datasource-customizer:** upgraded to 1.7.2 ## @forestadmin/plugin-flattener [1.0.19](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.18...@forestadmin/plugin-flattener@1.0.19) (2023-04-27) diff --git a/yarn.lock b/yarn.lock index e8a5448d26..35c044fc7c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4,7 +4,7 @@ "@ampproject/remapping@^2.1.0": version "2.2.0" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" + resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz" integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== dependencies: "@jridgewell/gen-mapping" "^0.1.0" @@ -12,7 +12,7 @@ "@aws-crypto/crc32@2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/crc32/-/crc32-2.0.0.tgz#4ad432a3c03ec3087c5540ff6e41e6565d2dc153" + resolved "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-2.0.0.tgz" integrity sha512-TvE1r2CUueyXOuHdEigYjIZVesInd9KN+K/TFFNfkkxRThiNxO6i4ZqqAVMoEjAamZZ1AA8WXJkjCz7YShHPQA== dependencies: "@aws-crypto/util" "^2.0.0" @@ -21,7 +21,7 @@ "@aws-crypto/crc32c@2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/crc32c/-/crc32c-2.0.0.tgz#4235336ef78f169f6a05248906703b9b78da676e" + resolved "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-2.0.0.tgz" integrity sha512-vF0eMdMHx3O3MoOXUfBZry8Y4ZDtcuskjjKgJz8YfIDjLStxTZrYXk+kZqtl6A0uCmmiN/Eb/JbC/CndTV1MHg== dependencies: "@aws-crypto/util" "^2.0.0" @@ -30,14 +30,14 @@ "@aws-crypto/ie11-detection@^2.0.0": version "2.0.2" - resolved "https://registry.yarnpkg.com/@aws-crypto/ie11-detection/-/ie11-detection-2.0.2.tgz#9c39f4a5558196636031a933ec1b4792de959d6a" + resolved "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-2.0.2.tgz" integrity sha512-5XDMQY98gMAf/WRTic5G++jfmS/VLM0rwpiOpaainKi4L0nqWMSB1SzsrEG5rjFZGYN6ZAefO+/Yta2dFM0kMw== dependencies: tslib "^1.11.1" "@aws-crypto/sha1-browser@2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha1-browser/-/sha1-browser-2.0.0.tgz#71e735df20ea1d38f59259c4b1a2e00ca74a0eea" + resolved "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-2.0.0.tgz" integrity sha512-3fIVRjPFY8EG5HWXR+ZJZMdWNRpwbxGzJ9IH9q93FpbgCH8u8GHRi46mZXp3cYD7gealmyqpm3ThZwLKJjWJhA== dependencies: "@aws-crypto/ie11-detection" "^2.0.0" @@ -49,7 +49,7 @@ "@aws-crypto/sha256-browser@2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz#741c9024df55ec59b51e5b1f5d806a4852699fb5" + resolved "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz" integrity sha512-rYXOQ8BFOaqMEHJrLHul/25ckWH6GTJtdLSajhlqGMx0PmSueAuvboCuZCTqEKlxR8CQOwRarxYMZZSYlhRA1A== dependencies: "@aws-crypto/ie11-detection" "^2.0.0" @@ -63,7 +63,7 @@ "@aws-crypto/sha256-js@2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-js/-/sha256-js-2.0.0.tgz#f1f936039bdebd0b9e2dd834d65afdc2aac4efcb" + resolved "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-2.0.0.tgz" integrity sha512-VZY+mCY4Nmrs5WGfitmNqXzaE873fcIZDu54cbaDaaamsaTOP1DBImV9F4pICc3EHjQXujyE8jig+PFCaew9ig== dependencies: "@aws-crypto/util" "^2.0.0" @@ -72,7 +72,7 @@ "@aws-crypto/sha256-js@^2.0.0": version "2.0.2" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-js/-/sha256-js-2.0.2.tgz#c81e5d378b8a74ff1671b58632779986e50f4c99" + resolved "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-2.0.2.tgz" integrity sha512-iXLdKH19qPmIC73fVCrHWCSYjN/sxaAvZ3jNNyw6FclmHyjLKg0f69WlC9KTnyElxCR5MO9SKaG00VwlJwyAkQ== dependencies: "@aws-crypto/util" "^2.0.2" @@ -81,14 +81,14 @@ "@aws-crypto/supports-web-crypto@^2.0.0": version "2.0.2" - resolved "https://registry.yarnpkg.com/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.2.tgz#9f02aafad8789cac9c0ab5faaebb1ab8aa841338" + resolved "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.2.tgz" integrity sha512-6mbSsLHwZ99CTOOswvCRP3C+VCWnzBf+1SnbWxzzJ9lR0mA0JnY2JEAhp8rqmTE0GPFy88rrM27ffgp62oErMQ== dependencies: tslib "^1.11.1" "@aws-crypto/util@^2.0.0", "@aws-crypto/util@^2.0.2": version "2.0.2" - resolved "https://registry.yarnpkg.com/@aws-crypto/util/-/util-2.0.2.tgz#adf5ff5dfbc7713082f897f1d01e551ce0edb9c0" + resolved "https://registry.npmjs.org/@aws-crypto/util/-/util-2.0.2.tgz" integrity sha512-Lgu5v/0e/BcrZ5m/IWqzPUf3UYFTy/PpeED+uc9SWUR1iZQL8XXbGQg10UfllwwBryO3hFF5dizK+78aoXC1eA== dependencies: "@aws-sdk/types" "^3.110.0" @@ -97,7 +97,7 @@ "@aws-sdk/abort-controller@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/abort-controller/-/abort-controller-3.190.0.tgz#284263db7ba051f31dda64e077b68e45cca7a7b3" + resolved "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.190.0.tgz" integrity sha512-M6qo2exTzEfHT5RuW7K090OgesUojhb2JyWiV4ulu7ngY4DWBUBMKUqac696sHRUZvGE5CDzSi0606DMboM+kA== dependencies: "@aws-sdk/types" "3.190.0" @@ -105,7 +105,7 @@ "@aws-sdk/chunked-blob-reader-native@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.188.0.tgz#a5c3a778b23af761703317ef286a083a43fb510f" + resolved "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.188.0.tgz" integrity sha512-WielYjaAHfT/HAOW7Tj6yVeNdaOtts3aUm9Sf/3D+ElbCTGyaaMNfE4x0a+qn6dJZXewf1eAxybOIU5ftIeSGw== dependencies: "@aws-sdk/util-base64-browser" "3.188.0" @@ -113,14 +113,14 @@ "@aws-sdk/chunked-blob-reader@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.188.0.tgz#18181b27511ab512e56b9f2cef30d2abbef639dc" + resolved "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.188.0.tgz" integrity sha512-zkPRFZZPL3eH+kH86LDYYXImiClA1/sW60zYOjse9Pgka+eDJlvBN6hcYxwDEKjcwATYiSRR1aVQHcfCinlGXg== dependencies: tslib "^2.3.1" "@aws-sdk/client-s3@^3.157.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-s3/-/client-s3-3.190.0.tgz#7d97da023d68fd19c1b2f9a8a6a162a75ff32daf" + resolved "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.190.0.tgz" integrity sha512-ngF92/X+odFt5Zbs5AWTozI+35fwFkHghbDABi5uSWNtgs2alSc/A94/yexbDdvVrVnuUa/FAMkvYX8duGZ9ig== dependencies: "@aws-crypto/sha1-browser" "2.0.0" @@ -179,7 +179,7 @@ "@aws-sdk/client-sso@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.190.0.tgz#d3435bf406bd7cedf705e9e876da49dd5a2bc17f" + resolved "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.190.0.tgz" integrity sha512-joEKRjJEzgvXnEih/x2UDDCPlvXWCO3MAHmqi44yJ36Ph4YsFS299mOjPdVLuzUtpQ+cST1nRO7hXNFrulW2jQ== dependencies: "@aws-crypto/sha256-browser" "2.0.0" @@ -216,7 +216,7 @@ "@aws-sdk/client-sts@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.190.0.tgz#835a471daec37aa12e073f425aeab60fc1b3f9e5" + resolved "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.190.0.tgz" integrity sha512-s5MqfxqWxHAl1RhfQ6swjawsVPBqmq5F+SfzZcGLBCnVv03GaSL8J9K42O1Cc0+HwPQH2miY+Avy0zAr6VpY+Q== dependencies: "@aws-crypto/sha256-browser" "2.0.0" @@ -257,7 +257,7 @@ "@aws-sdk/config-resolver@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/config-resolver/-/config-resolver-3.190.0.tgz#cb068fef70360c227698b670a2f1224467b523b4" + resolved "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.190.0.tgz" integrity sha512-K+VnDtjTgjpf7yHEdDB0qgGbHToF0pIL0pQMSnmk2yc8BoB3LGG/gg1T0Ki+wRlrFnDCJ6L+8zUdawY2qDsbyw== dependencies: "@aws-sdk/signature-v4" "3.190.0" @@ -268,7 +268,7 @@ "@aws-sdk/credential-provider-env@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.190.0.tgz#b0be7325508529ec1d910b1f18c5a6cc98186dcd" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.190.0.tgz" integrity sha512-GTY7l3SJhTmRGFpWddbdJOihSqoMN8JMo3CsCtIjk4/h3xirBi02T4GSvbrMyP7FP3Fdl4NAdT+mHJ4q2Bvzxw== dependencies: "@aws-sdk/property-provider" "3.190.0" @@ -277,7 +277,7 @@ "@aws-sdk/credential-provider-imds@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.190.0.tgz#15aee396b321e01ede0f0aa88f643e43c42ad879" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.190.0.tgz" integrity sha512-gI5pfBqGYCKdmx8igPvq+jLzyE2kuNn9Q5u73pdM/JZxiq7GeWYpE/MqqCubHxPtPcTFgAwxCxCFoXlUTBh/2g== dependencies: "@aws-sdk/node-config-provider" "3.190.0" @@ -288,7 +288,7 @@ "@aws-sdk/credential-provider-ini@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.190.0.tgz#b12b9620aeb30c87d99dd234ba7c80b983688167" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.190.0.tgz" integrity sha512-Z7NN/evXJk59hBQlfOSWDfHntwmxwryu6uclgv7ECI6SEVtKt1EKIlPuCLUYgQ4lxb9bomyO5lQAl/1WutNT5w== dependencies: "@aws-sdk/credential-provider-env" "3.190.0" @@ -302,7 +302,7 @@ "@aws-sdk/credential-provider-node@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.190.0.tgz#7de69d65c694e26191414ddde978df929bd632b7" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.190.0.tgz" integrity sha512-ctCG5+TsIK2gVgvvFiFjinPjc5nGpSypU3nQKCaihtPh83wDN6gCx4D0p9M8+fUrlPa5y+o/Y7yHo94ATepM8w== dependencies: "@aws-sdk/credential-provider-env" "3.190.0" @@ -318,7 +318,7 @@ "@aws-sdk/credential-provider-process@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.190.0.tgz#b1a4aa9fc83984bf2219cfc027a78deaca417c59" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.190.0.tgz" integrity sha512-sIJhICR80n5XY1kW/EFHTh5ZzBHb5X+744QCH3StcbKYI44mOZvNKfFdeRL2fQ7yLgV7npte2HJRZzQPWpZUrw== dependencies: "@aws-sdk/property-provider" "3.190.0" @@ -328,7 +328,7 @@ "@aws-sdk/credential-provider-sso@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.190.0.tgz#285895dc38c09033154906ce253ff6f0bdca86ab" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.190.0.tgz" integrity sha512-uarU9vk471MHHT+GJj3KWFSmaaqLNL5n1KcMer2CCAZfjs+mStAi8+IjZuuKXB4vqVs5DxdH8cy5aLaJcBlXwQ== dependencies: "@aws-sdk/client-sso" "3.190.0" @@ -339,7 +339,7 @@ "@aws-sdk/credential-provider-web-identity@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.190.0.tgz#c41fe6f1ebb814581b010c0f82e5232da85c90b7" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.190.0.tgz" integrity sha512-nlIBeK9hGHKWC874h+ITAfPZ9Eaok+x/ydZQVKsLHiQ9PH3tuQ8AaGqhuCwBSH0hEAHZ/BiKeEx5VyWAE8/x+Q== dependencies: "@aws-sdk/property-provider" "3.190.0" @@ -348,7 +348,7 @@ "@aws-sdk/eventstream-codec@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/eventstream-codec/-/eventstream-codec-3.190.0.tgz#7e9705ed5ffd2b7b77c0eca868c1c64a8a2d2941" + resolved "https://registry.npmjs.org/@aws-sdk/eventstream-codec/-/eventstream-codec-3.190.0.tgz" integrity sha512-F1ux94fMKUrlOfJR/1x8p5+lisfemKizNSRtMnj0kcR+Y9vIt9bUodFyuDF8tJl/7iwnop6EPiGc3QA1IKjBKA== dependencies: "@aws-crypto/crc32" "2.0.0" @@ -358,7 +358,7 @@ "@aws-sdk/eventstream-serde-browser@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.190.0.tgz#cb53132a6340742c2dd1a767da4442d3b5a6c866" + resolved "https://registry.npmjs.org/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.190.0.tgz" integrity sha512-aUsbLLPi3dtafnpIJtGbpCe8fhABIsVV49V1jJx6gQDAs6HG5IhO3LfndF05H6UbMyt8sDS6223wSt6HFUSHjQ== dependencies: "@aws-sdk/eventstream-serde-universal" "3.190.0" @@ -367,7 +367,7 @@ "@aws-sdk/eventstream-serde-config-resolver@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.190.0.tgz#9c05e4bd73157d0933bfa7b834ad34138cbac9c1" + resolved "https://registry.npmjs.org/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.190.0.tgz" integrity sha512-etlsbvG8KSFQpGzoNazJoNPnN3P/i+IgIo/5D8pEl4R7gkjLAHZYnbk299xfv59olDWn9SVdrZfVx8lS+lUWHA== dependencies: "@aws-sdk/types" "3.190.0" @@ -375,7 +375,7 @@ "@aws-sdk/eventstream-serde-node@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.190.0.tgz#de910debb967258be370e10fc8f2b970d936de8e" + resolved "https://registry.npmjs.org/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.190.0.tgz" integrity sha512-CmZ1jZJPar1uZAbfMrv00fzGk4NIc+1w4lRxOc0oow18pPSXsUAmefJKcW5ETX609xaH47nO5b7pTuHU8eGgzg== dependencies: "@aws-sdk/eventstream-serde-universal" "3.190.0" @@ -384,7 +384,7 @@ "@aws-sdk/eventstream-serde-universal@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.190.0.tgz#28eb59946db104e15e63a117b9b3327b21c4da03" + resolved "https://registry.npmjs.org/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.190.0.tgz" integrity sha512-pioZzWDjjhfCfRIUr5oQdghUMdQV6KtP3lBrOO6rBCFCBOQjnQafqH+a+xRjEw19YvBpMX3tFUrVrUytCN9TDQ== dependencies: "@aws-sdk/eventstream-codec" "3.190.0" @@ -393,7 +393,7 @@ "@aws-sdk/fetch-http-handler@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.190.0.tgz#9943c8c9ec3bd9eb9121d3a6c1d356f24f0931a9" + resolved "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.190.0.tgz" integrity sha512-5riRpKydARXAPLesTZm6eP6QKJ4HJGQ3k0Tepi3nvxHVx3UddkRNoX0pLS3rvbajkykWPNC2qdfRGApWlwOYsA== dependencies: "@aws-sdk/protocol-http" "3.190.0" @@ -404,7 +404,7 @@ "@aws-sdk/hash-blob-browser@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.190.0.tgz#75e7e69bbab4cda4b9f69ef208fc7e1d5f695ca0" + resolved "https://registry.npmjs.org/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.190.0.tgz" integrity sha512-qRIoUGsy6S6kmqi0LQ+Ma9L5HKm8lIt002z+Yhb4kRTf6PFBWa/A0mDyrcj6L3MV71QGKfAEacV5nrVMF/aIhw== dependencies: "@aws-sdk/chunked-blob-reader" "3.188.0" @@ -414,7 +414,7 @@ "@aws-sdk/hash-node@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/hash-node/-/hash-node-3.190.0.tgz#0ecad888142e8c097e13701f7bafc69e3e7ce91e" + resolved "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.190.0.tgz" integrity sha512-DNwVT3O8zc9Jk/bXiXcN0WsD98r+JJWryw9F1/ZZbuzbf6rx2qhI8ZK+nh5X6WMtYPU84luQMcF702fJt/1bzg== dependencies: "@aws-sdk/types" "3.190.0" @@ -423,7 +423,7 @@ "@aws-sdk/hash-stream-node@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/hash-stream-node/-/hash-stream-node-3.190.0.tgz#3173e1febfccfcbc63e581dd355df26f94de2ec9" + resolved "https://registry.npmjs.org/@aws-sdk/hash-stream-node/-/hash-stream-node-3.190.0.tgz" integrity sha512-Itdqn0tRx5bS9A1vy/GzvAtg+KeBwg1MTeiefJQrGsIzh7KitvbFpcDlHZBvId6HPLI0c0aIORucwi9ayEOqjQ== dependencies: "@aws-sdk/types" "3.190.0" @@ -431,7 +431,7 @@ "@aws-sdk/invalid-dependency@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/invalid-dependency/-/invalid-dependency-3.190.0.tgz#a4caa91ce50554f99fbfcba062eca233bb79e280" + resolved "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.190.0.tgz" integrity sha512-crCh63e8d/Uw9y3dQlVTPja7+IZiXpNXyH6oSuAadTDQwMq6KK87Av1/SDzVf6bAo2KgAOo41MyO2joaCEk0dQ== dependencies: "@aws-sdk/types" "3.190.0" @@ -439,14 +439,14 @@ "@aws-sdk/is-array-buffer@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/is-array-buffer/-/is-array-buffer-3.188.0.tgz#2e969b2e799490e3bbd5008554aa346c58e3a9b6" + resolved "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.188.0.tgz" integrity sha512-n69N4zJZCNd87Rf4NzufPzhactUeM877Y0Tp/F3KiHqGeTnVjYUa4Lv1vLBjqtfjYb2HWT3NKlYn5yzrhaEwiQ== dependencies: tslib "^2.3.1" "@aws-sdk/md5-js@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/md5-js/-/md5-js-3.190.0.tgz#6d6992a5f2012d36473c39356c89f499e87d33f0" + resolved "https://registry.npmjs.org/@aws-sdk/md5-js/-/md5-js-3.190.0.tgz" integrity sha512-zeyHnFzKYOgpAS1O+RfLyTRTjo0yLTw3Hooh/GjyuScfjwYG4UqP9kgZHnNLjHS9gXBahtskBOHaBCBGNTVLdw== dependencies: "@aws-sdk/types" "3.190.0" @@ -456,7 +456,7 @@ "@aws-sdk/middleware-bucket-endpoint@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.190.0.tgz#ddb703cdfaf5780351a4f7657bd3fa0e27899c8a" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.190.0.tgz" integrity sha512-p1ItehR+NEEBpfPxRpq6VB12qIMWvs/D9ROLRltnIPC6Cf5H0rqWFf2ewT36PkkpL17+rjbt89N7AXLkBgU9NA== dependencies: "@aws-sdk/protocol-http" "3.190.0" @@ -467,7 +467,7 @@ "@aws-sdk/middleware-content-length@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-content-length/-/middleware-content-length-3.190.0.tgz#640d2dfeeb1c715a93f8a03048a8458aaf153973" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.190.0.tgz" integrity sha512-sSU347SuC6I8kWum1jlJlpAqeV23KP7enG+ToWcEcgFrJhm3AvuqB//NJxDbkKb2DNroRvJjBckBvrwNAjQnBQ== dependencies: "@aws-sdk/protocol-http" "3.190.0" @@ -476,7 +476,7 @@ "@aws-sdk/middleware-endpoint@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.190.0.tgz#dfee34aece9a67598d2aebed1fd0565f740eb806" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.190.0.tgz" integrity sha512-jpsfQ1MuXVOBXtlMAkM/Dy5Qrv70K1V0FkRPYI6zftqfhDSf2sWb5Uc887m904bWwwQE4hIlkQJIPByZVkT0+g== dependencies: "@aws-sdk/middleware-serde" "3.190.0" @@ -490,7 +490,7 @@ "@aws-sdk/middleware-expect-continue@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.190.0.tgz#09167fa3206f663e6e605e11125529b162211df7" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.190.0.tgz" integrity sha512-ZE3WY6RQ1uNuFgDn2KHfJXiLbwYgK/a4LX3SWNsO5gCrf9qchHTotkAc8PjFS5x4WV7TkddvhL2i57eikf1cYg== dependencies: "@aws-sdk/protocol-http" "3.190.0" @@ -499,7 +499,7 @@ "@aws-sdk/middleware-flexible-checksums@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.190.0.tgz#e453d92c95b594b05c9515387daa80d09368599f" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.190.0.tgz" integrity sha512-YcZC2KX5G00RPhZpzFHBru2t27OelKYFG96Tc4cNOnjFmi++t7p5m5ZItFgovv9gUI9vTiI/XBQ+kc1XQ769Xw== dependencies: "@aws-crypto/crc32" "2.0.0" @@ -511,7 +511,7 @@ "@aws-sdk/middleware-host-header@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.190.0.tgz#47a01bd9b7db526114097db4659ef7e578881b62" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.190.0.tgz" integrity sha512-cL7Vo/QSpGx/DDmFxjeV0Qlyi1atvHQDPn3MLBBmi1icu+3GKZkCMAJwzsrV3U4+WoVoDYT9FJ9yMQf2HaIjeQ== dependencies: "@aws-sdk/protocol-http" "3.190.0" @@ -520,7 +520,7 @@ "@aws-sdk/middleware-location-constraint@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.190.0.tgz#bd624370daadb0b47982ea83b7e0ce001286654c" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.190.0.tgz" integrity sha512-dJ9u7Jb51z9YZLlpvT61og4bzsArJ81cox1t1P990Bbbi+pvJWoiwhwTdLDZhGqTYYg9ZuPd1ajmM2d9NAG/CQ== dependencies: "@aws-sdk/types" "3.190.0" @@ -528,7 +528,7 @@ "@aws-sdk/middleware-logger@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-logger/-/middleware-logger-3.190.0.tgz#022c1c6da76d95b3d04e32179c5b1bdfb3944295" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.190.0.tgz" integrity sha512-rrfLGYSZCBtiXNrIa8pJ2uwUoUMyj6Q82E8zmduTvqKWviCr6ZKes0lttGIkWhjvhql2m4CbjG5MPBnY7RXL4A== dependencies: "@aws-sdk/types" "3.190.0" @@ -536,7 +536,7 @@ "@aws-sdk/middleware-recursion-detection@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.190.0.tgz#6b8480ff62d141312f10940b0a0fe44f651e3f8a" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.190.0.tgz" integrity sha512-5tc1AIIZe5jDNdyuJW+7vIFmQOxz3q031ZVrEtUEIF7cz2ySho2lkOWziz+v+UGSLhjHGKMz3V26+aN1FLZNxQ== dependencies: "@aws-sdk/protocol-http" "3.190.0" @@ -545,7 +545,7 @@ "@aws-sdk/middleware-retry@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-retry/-/middleware-retry-3.190.0.tgz#935d4097d5785ae14b98272af69aed7ff066786b" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.190.0.tgz" integrity sha512-h1bPopkncf2ue/erJdhqvgR2AEh0bIvkNsIHhx93DckWKotZd/GAVDq0gpKj7/f/7B+teHH8Fg5GDOwOOGyKcg== dependencies: "@aws-sdk/protocol-http" "3.190.0" @@ -557,7 +557,7 @@ "@aws-sdk/middleware-sdk-s3@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.190.0.tgz#27f5d760896d76ea66e9fa4531b7cb3fb80654d4" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.190.0.tgz" integrity sha512-ixN3OOnF95Pla2Q9c4EyUpZk0TR5yYGbV1/eZqz5M9n2Iy1t6H11ZYSmK0BH3YjWG6Tdqva0AIwCfuvoUXWGZg== dependencies: "@aws-sdk/middleware-bucket-endpoint" "3.190.0" @@ -568,7 +568,7 @@ "@aws-sdk/middleware-sdk-sts@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.190.0.tgz#4606c41658f6d0ff2ff9b11bd2fc3a35f8ebd1ea" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.190.0.tgz" integrity sha512-eUHrsr35mkD/cAFKoYuFYz0zE7QPBWvSzMzqmEJC+YXzAF6IABP3FL/htAFpWkje5XDl5dQ6dAxzV+ebK8RNXQ== dependencies: "@aws-sdk/middleware-signing" "3.190.0" @@ -580,7 +580,7 @@ "@aws-sdk/middleware-serde@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-serde/-/middleware-serde-3.190.0.tgz#85f17432facfa8453564a5b5cd2d24e722eeff9f" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.190.0.tgz" integrity sha512-S132hEOK4jwbtZ1bGAgSuQ0DMFG4TiD4ulAwbQRBYooC7tiWZbRiR0Pkt2hV8d7WhOHgUpg7rvqlA7/HXXBAsA== dependencies: "@aws-sdk/types" "3.190.0" @@ -588,7 +588,7 @@ "@aws-sdk/middleware-signing@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-signing/-/middleware-signing-3.190.0.tgz#32fc668c6ea7e632c1dd0eaacd78c71ff522dc77" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.190.0.tgz" integrity sha512-Xj5MmXZq8UIpY8wOwyqei5q6MgqKxsO9Plo2zUgW7JR0w7R21MlqY2kzzvcM9R0FFhi9dqhniFT2ZMRUb1v73w== dependencies: "@aws-sdk/property-provider" "3.190.0" @@ -600,7 +600,7 @@ "@aws-sdk/middleware-ssec@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-ssec/-/middleware-ssec-3.190.0.tgz#8519077c258ed503953220bb004b2e338ecdd19d" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.190.0.tgz" integrity sha512-nwggMCfXBmhcDIrV/oPeSeuE1FRk0xvi/2PBuYYhM+xnkfUYovYUcdJhGkNqt7U1Mk0+CR2VVwozreigfcLesg== dependencies: "@aws-sdk/types" "3.190.0" @@ -608,14 +608,14 @@ "@aws-sdk/middleware-stack@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-stack/-/middleware-stack-3.190.0.tgz#15572c938bf3bbe9d275870e541360fdc7997fab" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.190.0.tgz" integrity sha512-h1mqiWNJdi1OTSEY8QovpiHgDQEeRG818v8yShpqSYXJKEqdn54MA3Z1D2fg/Wv/8ZJsFrBCiI7waT1JUYOmCg== dependencies: tslib "^2.3.1" "@aws-sdk/middleware-user-agent@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.190.0.tgz#791eb451b01846184140eeda63dd51153f911c2c" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.190.0.tgz" integrity sha512-y/2cTE1iYHKR0nkb3DvR3G8vt12lcTP95r/iHp8ZO+Uzpc25jM/AyMHWr2ZjqQiHKNlzh8uRw1CmQtgg4sBxXQ== dependencies: "@aws-sdk/protocol-http" "3.190.0" @@ -624,7 +624,7 @@ "@aws-sdk/node-config-provider@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/node-config-provider/-/node-config-provider-3.190.0.tgz#a6005c5d3393970e1682c2561c5622d36d05c35d" + resolved "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.190.0.tgz" integrity sha512-TJPUchyeK5KeEXWrwb6oW5/OkY3STCSGR1QIlbPcaTGkbo4kXAVyQmmZsY4KtRPuDM6/HlfUQV17bD716K65rQ== dependencies: "@aws-sdk/property-provider" "3.190.0" @@ -634,7 +634,7 @@ "@aws-sdk/node-http-handler@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/node-http-handler/-/node-http-handler-3.190.0.tgz#db14e265a5d42587b3edca0e71fa47f530d8c81b" + resolved "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.190.0.tgz" integrity sha512-3Klkr73TpZkCzcnSP+gmFF0Baluzk3r7BaWclJHqt2LcFUWfIJzYlnbBQNZ4t3EEq7ZlBJX85rIDHBRlS+rUyA== dependencies: "@aws-sdk/abort-controller" "3.190.0" @@ -645,7 +645,7 @@ "@aws-sdk/property-provider@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/property-provider/-/property-provider-3.190.0.tgz#99372b7e2fba63d3f47ea368c9659ef003733e57" + resolved "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.190.0.tgz" integrity sha512-uzdKjHE2blbuceTC5zeBgZ0+Uo/hf9pH20CHpJeVNtrrtF3GALtu4Y1Gu5QQVIQBz8gjHnqANx0XhfYzorv69Q== dependencies: "@aws-sdk/types" "3.190.0" @@ -653,7 +653,7 @@ "@aws-sdk/protocol-http@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/protocol-http/-/protocol-http-3.190.0.tgz#6f777f4f5193fc83402fdce29d8fc2bd0c93fb05" + resolved "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.190.0.tgz" integrity sha512-s5MVfeONpfZYRzCSbqQ+wJ3GxKED+aSS7+CQoeaYoD6HDTDxaMGNv9aiPxVCzW02sgG7py7f29Q6Vw+5taZXZA== dependencies: "@aws-sdk/types" "3.190.0" @@ -661,7 +661,7 @@ "@aws-sdk/querystring-builder@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-builder/-/querystring-builder-3.190.0.tgz#5c115eb30343cc28ea8fc6ab1ca945907533403a" + resolved "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.190.0.tgz" integrity sha512-w9mTKkCsaLIBC8EA4RAHrqethNGbf60CbpPzN/QM7yCV3ZZJAXkppFfjTVVOMbPaI8GUEOptJtzgqV68CRB7ow== dependencies: "@aws-sdk/types" "3.190.0" @@ -670,7 +670,7 @@ "@aws-sdk/querystring-parser@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-parser/-/querystring-parser-3.190.0.tgz#e96fab0ac834ab57777d736790eb2509491bd3fa" + resolved "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.190.0.tgz" integrity sha512-vCKP0s33VtS47LSYzEWRRr2aTbi3qNkUuQyIrc5LMqBfS5hsy79P1HL4Q7lCVqZB5fe61N8fKzOxDxWRCF0sXg== dependencies: "@aws-sdk/types" "3.190.0" @@ -678,7 +678,7 @@ "@aws-sdk/s3-request-presigner@^3.157.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.190.0.tgz#5eaaf3446a3be45d46b08113f0eb69619434ab69" + resolved "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.190.0.tgz" integrity sha512-Ae1xElBPBtMoJK69wVM/6rSiD3os6McT3vtoFS8anyBJOrmdimZfbMYtWp8ywLH6gb3alJrqKLklPo52KXhq3w== dependencies: "@aws-sdk/middleware-endpoint" "3.190.0" @@ -693,12 +693,12 @@ "@aws-sdk/service-error-classification@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/service-error-classification/-/service-error-classification-3.190.0.tgz#b1e232abfdc98fcf6f12dcbe50f9b9141fe53d42" + resolved "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.190.0.tgz" integrity sha512-g+s6xtaMa5fCMA2zJQC4BiFGMP7FN5/L1V/UwxCnKy8skCwaN0K5A1tFffBjjbYiPI7Gu7LVorWD2A0Y4xl01Q== "@aws-sdk/shared-ini-file-loader@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.190.0.tgz#23efb053ae56f7cb96cb1cb64e8afeffafac963c" + resolved "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.190.0.tgz" integrity sha512-CZC/xsGReUEl5w+JgfancrxfkaCbEisyIFy6HALUYrioWQe80WMqLAdUMZSXHWjIaNK9mH0J/qvcSV2MuIoMzQ== dependencies: "@aws-sdk/types" "3.190.0" @@ -706,7 +706,7 @@ "@aws-sdk/signature-v4-multi-region@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.190.0.tgz#f3971e238362b3128dcf536142277f4123ddafed" + resolved "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.190.0.tgz" integrity sha512-i9BpqlY3kAF8l8amqJ4skyjrlBy4B3hhO4RPu1D1wF4+GsJ5JGZ638Y5bYMH90k7A7ycTDDgFWHJcAsm1b0fEQ== dependencies: "@aws-sdk/protocol-http" "3.190.0" @@ -717,7 +717,7 @@ "@aws-sdk/signature-v4@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/signature-v4/-/signature-v4-3.190.0.tgz#ed5a408465723021648fd95440234898e114e2f6" + resolved "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.190.0.tgz" integrity sha512-L/R/1X2T+/Kg2k/sjoYyDFulVUGrVcRfyEKKVFIUNg0NwUtw5UKa1/gS7geTKcg4q8M2pd/v+OCBrge2X7phUw== dependencies: "@aws-sdk/is-array-buffer" "3.188.0" @@ -729,7 +729,7 @@ "@aws-sdk/smithy-client@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/smithy-client/-/smithy-client-3.190.0.tgz#4a951a7f3470fe148330e3a3e68cf9020b148e64" + resolved "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.190.0.tgz" integrity sha512-f5EoCwjBLXMyuN491u1NmEutbolL0cJegaJbtgK9OJw2BLuRHiBknjDF4OEVuK/WqK0kz2JLMGi9xwVPl4BKCA== dependencies: "@aws-sdk/middleware-stack" "3.190.0" @@ -738,19 +738,19 @@ "@aws-sdk/types@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.190.0.tgz#ef22549c81ea6a7dd2c57e5869e787fea40c4434" + resolved "https://registry.npmjs.org/@aws-sdk/types/-/types-3.190.0.tgz" integrity sha512-mkeZ+vJZzElP6OdRXvuLKWHSlDQxZP9u8BjQB9N0Rw0pCXTzYS0vzIhN1pL0uddWp5fMrIE68snto9xNR6BQuA== "@aws-sdk/types@^3.1.0", "@aws-sdk/types@^3.110.0": version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.226.0.tgz#3dba2ba223fbb8ac1ebc84de0e036ce69a81d469" + resolved "https://registry.npmjs.org/@aws-sdk/types/-/types-3.226.0.tgz" integrity sha512-MmmNHrWeO4man7wpOwrAhXlevqtOV9ZLcH4RhnG5LmRce0RFOApx24HoKENfFCcOyCm5LQBlsXCqi0dZWDWU0A== dependencies: tslib "^2.3.1" "@aws-sdk/url-parser@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/url-parser/-/url-parser-3.190.0.tgz#d3c40dd0d01fb97c2c7f610baf1be2f045ae5582" + resolved "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.190.0.tgz" integrity sha512-FKFDtxA9pvHmpfWmNVK5BAVRpDgkWMz3u4Sg9UzB+WAFN6UexRypXXUZCFAo8S04FbPKfYOR3O0uVlw7kzmj9g== dependencies: "@aws-sdk/querystring-parser" "3.190.0" @@ -759,21 +759,21 @@ "@aws-sdk/util-arn-parser@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-arn-parser/-/util-arn-parser-3.188.0.tgz#4df0144c00dce3490666da7d55e6e13c9a3f21b2" + resolved "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.188.0.tgz" integrity sha512-q4nZzt/g3sRY9a3sj1PaNFwql5bXfKSW4fRy0zLdbZHcYdgq2oQfVsJTIlL9lUNjifkXiIsmk61Q16JExtrLyw== dependencies: tslib "^2.3.1" "@aws-sdk/util-base64-browser@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-base64-browser/-/util-base64-browser-3.188.0.tgz#581c85dc157aff88ca81e42d9c79d87c95db8d03" + resolved "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.188.0.tgz" integrity sha512-qlH+5NZBLiyKziL335BEPedYxX6j+p7KFRWXvDQox9S+s+gLCayednpK+fteOhBenCcR9fUZOVuAPScy1I8qCg== dependencies: tslib "^2.3.1" "@aws-sdk/util-base64-node@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-base64-node/-/util-base64-node-3.188.0.tgz#1d2413f68c8ad1cca0903fc11d92af88ba70e14d" + resolved "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.188.0.tgz" integrity sha512-r1dccRsRjKq+OhVRUfqFiW3sGgZBjHbMeHLbrAs9jrOjU2PTQ8PSzAXLvX/9lmp7YjmX17Qvlsg0NCr1tbB9OA== dependencies: "@aws-sdk/util-buffer-from" "3.188.0" @@ -781,21 +781,21 @@ "@aws-sdk/util-body-length-browser@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.188.0.tgz#e1d949318c10a621b38575a9ef01e39f9857ddb0" + resolved "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.188.0.tgz" integrity sha512-8VpnwFWXhnZ/iRSl9mTf+VKOX9wDE8QtN4bj9pBfxwf90H1X7E8T6NkiZD3k+HubYf2J94e7DbeHs7fuCPW5Qg== dependencies: tslib "^2.3.1" "@aws-sdk/util-body-length-node@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-body-length-node/-/util-body-length-node-3.188.0.tgz#3fc2a820b9be0efcbdf962d8f980b9000b98ddba" + resolved "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.188.0.tgz" integrity sha512-XwqP3vxk60MKp4YDdvDeCD6BPOiG2e+/Ou4AofZOy5/toB6NKz2pFNibQIUg2+jc7mPMnGnvOW3MQEgSJ+gu/Q== dependencies: tslib "^2.3.1" "@aws-sdk/util-buffer-from@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-buffer-from/-/util-buffer-from-3.188.0.tgz#a062ccd990571df4353990e8b78aebec5a14547d" + resolved "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.188.0.tgz" integrity sha512-NX1WXZ8TH20IZb4jPFT2CnLKSqZWddGxtfiWxD9M47YOtq/SSQeR82fhqqVjJn4P8w2F5E28f+Du4ntg/sGcxA== dependencies: "@aws-sdk/is-array-buffer" "3.188.0" @@ -803,14 +803,14 @@ "@aws-sdk/util-config-provider@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-config-provider/-/util-config-provider-3.188.0.tgz#f7a365e6cbfe728c1224f0b39926636619b669e0" + resolved "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.188.0.tgz" integrity sha512-LBA7tLbi7v4uvbOJhSnjJrxbcRifKK/1ZVK94JTV2MNSCCyNkFotyEI5UWDl10YKriTIUyf7o5cakpiDZ3O4xg== dependencies: tslib "^2.3.1" "@aws-sdk/util-create-request@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-create-request/-/util-create-request-3.190.0.tgz#ebbab51e68313d98501405b61bf8639d3e71f86a" + resolved "https://registry.npmjs.org/@aws-sdk/util-create-request/-/util-create-request-3.190.0.tgz" integrity sha512-GOLwJ01uF45bUPAthISC0NlOZE0qMV5MKXbA1r+qh3o7KGx53QVq4qLzZYcFRgPpNVtRml0LpWGhQJgfZ2t53w== dependencies: "@aws-sdk/middleware-stack" "3.190.0" @@ -820,7 +820,7 @@ "@aws-sdk/util-defaults-mode-browser@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.190.0.tgz#b544c978ae4e5a7cf12bb7975c0199dbe3517c85" + resolved "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.190.0.tgz" integrity sha512-FKxTU4tIbFk2pdUbBNneStF++j+/pB4NYJ1HRSEAb/g4D2+kxikR/WKIv3p0JTVvAkwcuX/ausILYEPUyDZ4HQ== dependencies: "@aws-sdk/property-provider" "3.190.0" @@ -830,7 +830,7 @@ "@aws-sdk/util-defaults-mode-node@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.190.0.tgz#67acd5a3dba7f30ac2fb30084dd2b9ff77612c15" + resolved "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.190.0.tgz" integrity sha512-qBiIMjNynqAP7p6urG1+ZattYkFaylhyinofVcLEiDvM9a6zGt6GZsxru2Loq0kRAXXGew9E9BWGt45HcDc20g== dependencies: "@aws-sdk/config-resolver" "3.190.0" @@ -842,7 +842,7 @@ "@aws-sdk/util-format-url@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-format-url/-/util-format-url-3.190.0.tgz#21743ff7d8dbf3178c247f28a5c4c0fe677d558a" + resolved "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.190.0.tgz" integrity sha512-YZhE13LnzskDPyZh8hnqD/KyPxfqVgea1jzKmMcLSTB2doIo7BAS+EN96C+Gl7hZMayUbSYiqLDiwmgPevfRxw== dependencies: "@aws-sdk/querystring-builder" "3.190.0" @@ -851,28 +851,28 @@ "@aws-sdk/util-hex-encoding@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.188.0.tgz#c2d8b02b952db58acbd5f53718109657c69c460f" + resolved "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.188.0.tgz" integrity sha512-QyWovTtjQ2RYxqVM+STPh65owSqzuXURnfoof778spyX4iQ4z46wOge1YV2ZtwS8w5LWd9eeVvDrLu5POPYOnA== dependencies: tslib "^2.3.1" "@aws-sdk/util-locate-window@^3.0.0": version "3.208.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-locate-window/-/util-locate-window-3.208.0.tgz#0f598fc238a1256e4bcb64d01459f03a922dd4c3" + resolved "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.208.0.tgz" integrity sha512-iua1A2+P7JJEDHVgvXrRJSvsnzG7stYSGQnBVphIUlemwl6nN5D+QrgbjECtrbxRz8asYFHSzhdhECqN+tFiBg== dependencies: tslib "^2.3.1" "@aws-sdk/util-middleware@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-middleware/-/util-middleware-3.190.0.tgz#9c594987f107af05b770f2ac2e70c0391d0cb5b5" + resolved "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.190.0.tgz" integrity sha512-qzTJ/qhFDzHZS+iXdHydQ/0sWAuNIB5feeLm55Io/I8Utv3l3TKYOhbgGwTsXY+jDk7oD+YnAi7hLN5oEBCwpg== dependencies: tslib "^2.3.1" "@aws-sdk/util-stream-browser@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-stream-browser/-/util-stream-browser-3.190.0.tgz#ebb14f63dffe05a09a670cf14a307920d736c803" + resolved "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.190.0.tgz" integrity sha512-BqHUD+Bz780LM6lD2YLYsX1PZ+BqwkRYtSaw+ch8IvrnMWeAB1hzQWXRh+2NhMpe2IBw18IrrYB3kVmcyGgUtg== dependencies: "@aws-sdk/fetch-http-handler" "3.190.0" @@ -884,7 +884,7 @@ "@aws-sdk/util-stream-node@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-stream-node/-/util-stream-node-3.190.0.tgz#30f7a3a81e3ad379f9bbf60d197686ca6fa6138e" + resolved "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.190.0.tgz" integrity sha512-RJ7iQB43fSfGW+aPhdT5LfG5GtbenB7q8mQLiTdIoj4Hw+gwa90JagMX+NxZv6DEkT4IgbT4q9liPQ48M83/YA== dependencies: "@aws-sdk/node-http-handler" "3.190.0" @@ -894,14 +894,14 @@ "@aws-sdk/util-uri-escape@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-uri-escape/-/util-uri-escape-3.188.0.tgz#6dbd4322f6cdc3252a75c6f729e1082369c468c0" + resolved "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.188.0.tgz" integrity sha512-4Y6AYZMT483Tiuq8dxz5WHIiPNdSFPGrl6tRTo2Oi2FcwypwmFhqgEGcqxeXDUJktvaCBxeA08DLr/AemVhPCg== dependencies: tslib "^2.3.1" "@aws-sdk/util-user-agent-browser@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.190.0.tgz#efb7eda04b94b260ae8e8ff5f623eeb9318f2bfd" + resolved "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.190.0.tgz" integrity sha512-c074wjsD+/u9vT7DVrBLkwVhn28I+OEHuHaqpTVCvAIjpueZ3oms0e99YJLfpdpEgdLavOroAsNFtAuRrrTZZw== dependencies: "@aws-sdk/types" "3.190.0" @@ -910,7 +910,7 @@ "@aws-sdk/util-user-agent-node@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.190.0.tgz#b4bdc523d63ca418f5ca54e26f836db91fe55c43" + resolved "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.190.0.tgz" integrity sha512-R36BMvvPX8frqFhU4lAsrOJ/2PJEHH/Jz1WZzO3GWmVSEAQQdHmo8tVPE3KOM7mZWe5Hj1dZudFAIxWHHFYKJA== dependencies: "@aws-sdk/node-config-provider" "3.190.0" @@ -919,14 +919,14 @@ "@aws-sdk/util-utf8-browser@3.188.0", "@aws-sdk/util-utf8-browser@^3.0.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.188.0.tgz#484762bd600401350e148277731d6744a4a92225" + resolved "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.188.0.tgz" integrity sha512-jt627x0+jE+Ydr9NwkFstg3cUvgWh56qdaqAMDsqgRlKD21md/6G226z/Qxl7lb1VEW2LlmCx43ai/37Qwcj2Q== dependencies: tslib "^2.3.1" "@aws-sdk/util-utf8-node@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8-node/-/util-utf8-node-3.188.0.tgz#935bc58a71f2792ac6a4ec881f72bf9ceee008b4" + resolved "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.188.0.tgz" integrity sha512-hCgP4+C0Lekjpjt2zFJ2R/iHes5sBGljXa5bScOFAEkRUc0Qw0VNgTv7LpEbIOAwGmqyxBoCwBW0YHPW1DfmYQ== dependencies: "@aws-sdk/util-buffer-from" "3.188.0" @@ -934,7 +934,7 @@ "@aws-sdk/util-waiter@3.190.0": version "3.190.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-waiter/-/util-waiter-3.190.0.tgz#01348830fbd6a9a1a8e1fb22e87a29185d8e69fc" + resolved "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.190.0.tgz" integrity sha512-wlc56EElap8ua+9VCSqXaC4QsJQecYmC0C6A5EfFDtFlFyyd+vjpiLMU34juzrqJfVCx6aAUD2c9f+ezvk1G5Q== dependencies: "@aws-sdk/abort-controller" "3.190.0" @@ -943,21 +943,21 @@ "@aws-sdk/xml-builder@3.188.0": version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/xml-builder/-/xml-builder-3.188.0.tgz#d3f72f5e490be577670b6532343f5682e38ac000" + resolved "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.188.0.tgz" integrity sha512-/Hah3gAtrBpEaDInX3eSS0nXw/IUeb+rWiGspXxb5O8bh5kyjQqeu8/sVJQlpOtq4aPDbMDmloH4k696qTqgbw== dependencies: tslib "^2.3.1" "@azure/abort-controller@^1.0.0", "@azure/abort-controller@^1.0.4": version "1.1.0" - resolved "https://registry.yarnpkg.com/@azure/abort-controller/-/abort-controller-1.1.0.tgz#788ee78457a55af8a1ad342acb182383d2119249" + resolved "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.1.0.tgz" integrity sha512-TrRLIoSQVzfAJX9H1JeFjzAoDGcoK1IYX1UImfceTZpsyYfWr09Ss1aHW1y5TrrR3iq6RZLBwJ3E24uwPhwahw== dependencies: tslib "^2.2.0" "@azure/core-auth@^1.3.0", "@azure/core-auth@^1.4.0": version "1.4.0" - resolved "https://registry.yarnpkg.com/@azure/core-auth/-/core-auth-1.4.0.tgz#6fa9661c1705857820dbc216df5ba5665ac36a9e" + resolved "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.4.0.tgz" integrity sha512-HFrcTgmuSuukRf/EdPmqBrc5l6Q5Uu+2TbuhaKbgaCpP2TfAeiNaQPAadxO+CYBRHGUzIDteMAjFspFLDLnKVQ== dependencies: "@azure/abort-controller" "^1.0.0" @@ -965,7 +965,7 @@ "@azure/core-client@^1.3.0", "@azure/core-client@^1.4.0", "@azure/core-client@^1.5.0": version "1.7.0" - resolved "https://registry.yarnpkg.com/@azure/core-client/-/core-client-1.7.0.tgz#eeaf286f592e0912452bdf96616458ababec1d1c" + resolved "https://registry.npmjs.org/@azure/core-client/-/core-client-1.7.0.tgz" integrity sha512-fgaLVlF3xGg8JAt7Hl7vkKIJcCAA9NpsvIvb44qaEOW6CaJ+IaHKL7oWe5+oGOVR+y/z2Gd2joyvslqwDvRfTw== dependencies: "@azure/abort-controller" "^1.0.0" @@ -978,7 +978,7 @@ "@azure/core-http-compat@^1.3.0": version "1.3.0" - resolved "https://registry.yarnpkg.com/@azure/core-http-compat/-/core-http-compat-1.3.0.tgz#bf3d8ae1e310103f2b82550f36fd2a99c9b4d3f4" + resolved "https://registry.npmjs.org/@azure/core-http-compat/-/core-http-compat-1.3.0.tgz" integrity sha512-ZN9avruqbQ5TxopzG3ih3KRy52n8OAbitX3fnZT5go4hzu0J+KVPSzkL+Wt3hpJpdG8WIfg1sBD1tWkgUdEpBA== dependencies: "@azure/abort-controller" "^1.0.4" @@ -987,7 +987,7 @@ "@azure/core-lro@^2.2.0": version "2.5.0" - resolved "https://registry.yarnpkg.com/@azure/core-lro/-/core-lro-2.5.0.tgz#9294f7c03f7ffc0e4bf00f53cb33b8772c043462" + resolved "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.5.0.tgz" integrity sha512-Vsd5Sl04RG/p5ui/p0dAFMov5I/W4dmRjOrtWGXVs4vY/hNMPefiFH7cZEOr+1u0XrBKkpvt634IyUUD9bVRuQ== dependencies: "@azure/abort-controller" "^1.0.0" @@ -996,14 +996,14 @@ "@azure/core-paging@^1.1.1": version "1.4.0" - resolved "https://registry.yarnpkg.com/@azure/core-paging/-/core-paging-1.4.0.tgz#b04a73ad18149733a848c3089a5e5ed144592338" + resolved "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.4.0.tgz" integrity sha512-tabFtZTg8D9XqZKEfNUOGh63SuYeOxmvH4GDcOJN+R1bZWZ1FZskctgY9Pmuwzhn+0Xvq9rmimK9hsvtLkeBsw== dependencies: tslib "^2.2.0" "@azure/core-rest-pipeline@^1.1.0", "@azure/core-rest-pipeline@^1.3.0", "@azure/core-rest-pipeline@^1.8.0", "@azure/core-rest-pipeline@^1.9.1": version "1.10.1" - resolved "https://registry.yarnpkg.com/@azure/core-rest-pipeline/-/core-rest-pipeline-1.10.1.tgz#348290847ca31b9eecf9cf5de7519aaccdd30968" + resolved "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.10.1.tgz" integrity sha512-Kji9k6TOFRDB5ZMTw8qUf2IJ+CeJtsuMdAHox9eqpTf1cefiNMpzrfnF6sINEBZJsaVaWgQ0o48B6kcUH68niA== dependencies: "@azure/abort-controller" "^1.0.0" @@ -1019,14 +1019,14 @@ "@azure/core-tracing@^1.0.0", "@azure/core-tracing@^1.0.1": version "1.0.1" - resolved "https://registry.yarnpkg.com/@azure/core-tracing/-/core-tracing-1.0.1.tgz#352a38cbea438c4a83c86b314f48017d70ba9503" + resolved "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.1.tgz" integrity sha512-I5CGMoLtX+pI17ZdiFJZgxMJApsK6jjfm85hpgp3oazCdq5Wxgh4wMr7ge/TTWW1B5WBuvIOI1fMU/FrOAMKrw== dependencies: tslib "^2.2.0" "@azure/core-util@^1.0.0": version "1.1.1" - resolved "https://registry.yarnpkg.com/@azure/core-util/-/core-util-1.1.1.tgz#8f87b3dd468795df0f0849d9f096c3e7b29452c1" + resolved "https://registry.npmjs.org/@azure/core-util/-/core-util-1.1.1.tgz" integrity sha512-A4TBYVQCtHOigFb2ETiiKFDocBoI1Zk2Ui1KpI42aJSIDexF7DHQFpnjonltXAIU/ceH+1fsZAWWgvX6/AKzog== dependencies: "@azure/abort-controller" "^1.0.0" @@ -1034,7 +1034,7 @@ "@azure/identity@^2.0.4": version "2.1.0" - resolved "https://registry.yarnpkg.com/@azure/identity/-/identity-2.1.0.tgz#89f0bfc1d1264dfd3d0cb19837c33a9c6706d548" + resolved "https://registry.npmjs.org/@azure/identity/-/identity-2.1.0.tgz" integrity sha512-BPDz1sK7Ul9t0l9YKLEa8PHqWU4iCfhGJ+ELJl6c8CP3TpJt2urNCbm0ZHsthmxRsYoMPbz2Dvzj30zXZVmAFw== dependencies: "@azure/abort-controller" "^1.0.0" @@ -1056,7 +1056,7 @@ "@azure/keyvault-keys@^4.4.0": version "4.6.0" - resolved "https://registry.yarnpkg.com/@azure/keyvault-keys/-/keyvault-keys-4.6.0.tgz#67c81c211aba28d39cb0cecb79a1f2f707605e84" + resolved "https://registry.npmjs.org/@azure/keyvault-keys/-/keyvault-keys-4.6.0.tgz" integrity sha512-0112LegxeR03L8J4k+q6HwBVvrpd9y+oInG0FG3NaHXN7YUubVBon/eb5jFI6edGrvNigpxSR0XIsprFXdkzCQ== dependencies: "@azure/abort-controller" "^1.0.0" @@ -1073,31 +1073,31 @@ "@azure/logger@^1.0.0": version "1.0.3" - resolved "https://registry.yarnpkg.com/@azure/logger/-/logger-1.0.3.tgz#6e36704aa51be7d4a1bae24731ea580836293c96" + resolved "https://registry.npmjs.org/@azure/logger/-/logger-1.0.3.tgz" integrity sha512-aK4s3Xxjrx3daZr3VylxejK3vG5ExXck5WOHDJ8in/k9AqlfIyFMMT1uG7u8mNjX+QRILTIn0/Xgschfh/dQ9g== dependencies: tslib "^2.2.0" "@azure/msal-browser@^2.26.0": version "2.32.2" - resolved "https://registry.yarnpkg.com/@azure/msal-browser/-/msal-browser-2.32.2.tgz#b2284773c95656ed52710e82aedd7fe3e86fa38d" + resolved "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-2.32.2.tgz" integrity sha512-1YqGzXtPG3QrZPFBKaMWr2WQdukDj+PelqUCv351+p+hlw/AhdRrb8haY73/iqkhT6Cdrbnh7sL4gikVsF4O1g== dependencies: "@azure/msal-common" "^9.0.2" "@azure/msal-common@^7.0.0": version "7.6.0" - resolved "https://registry.yarnpkg.com/@azure/msal-common/-/msal-common-7.6.0.tgz#b52e97ef540275f72611cff57937dfa0b34cdcca" + resolved "https://registry.npmjs.org/@azure/msal-common/-/msal-common-7.6.0.tgz" integrity sha512-XqfbglUTVLdkHQ8F9UQJtKseRr3sSnr9ysboxtoswvaMVaEfvyLtMoHv9XdKUfOc0qKGzNgRFd9yRjIWVepl6Q== "@azure/msal-common@^9.0.2": version "9.0.2" - resolved "https://registry.yarnpkg.com/@azure/msal-common/-/msal-common-9.0.2.tgz#b01c0faef18125987682e669494163da06449a20" + resolved "https://registry.npmjs.org/@azure/msal-common/-/msal-common-9.0.2.tgz" integrity sha512-qzwxuF8kZAp+rNUactMCgJh8fblq9D4lSqrrIxMDzLjgSZtjN32ix7r/HBe8QdOr76II9SVVPcMkX4sPzPfQ7w== "@azure/msal-node@^1.10.0": version "1.14.6" - resolved "https://registry.yarnpkg.com/@azure/msal-node/-/msal-node-1.14.6.tgz#db1d64249e38afa4831aaed818d17cf48e53c349" + resolved "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.14.6.tgz" integrity sha512-em/qqFL5tLMxMPl9vormAs13OgZpmQoJbiQ/GlWr+BA77eCLoL+Ehr5xRHowYo+LFe5b+p+PJVkRvT+mLvOkwA== dependencies: "@azure/msal-common" "^9.0.2" @@ -1106,19 +1106,19 @@ "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz" integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== dependencies: "@babel/highlight" "^7.18.6" "@babel/compat-data@^7.20.5": version "7.20.10" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.10.tgz#9d92fa81b87542fff50e848ed585b4212c1d34ec" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.10.tgz" integrity sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg== "@babel/core@^7.11.6", "@babel/core@^7.12.3": version "7.20.12" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.12.tgz#7930db57443c6714ad216953d1356dac0eb8496d" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz" integrity sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg== dependencies: "@ampproject/remapping" "^2.1.0" @@ -1139,7 +1139,7 @@ "@babel/generator@^7.20.7", "@babel/generator@^7.7.2": version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.7.tgz#f8ef57c8242665c5929fe2e8d82ba75460187b4a" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.20.7.tgz" integrity sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw== dependencies: "@babel/types" "^7.20.7" @@ -1148,7 +1148,7 @@ "@babel/helper-compilation-targets@^7.20.7": version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz#a6cd33e93629f5eb473b021aac05df62c4cd09bb" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz" integrity sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ== dependencies: "@babel/compat-data" "^7.20.5" @@ -1159,12 +1159,12 @@ "@babel/helper-environment-visitor@^7.18.9": version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" + resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz" integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== "@babel/helper-function-name@^7.19.0": version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz#941574ed5390682e872e52d3f38ce9d1bef4648c" + resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz" integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w== dependencies: "@babel/template" "^7.18.10" @@ -1172,21 +1172,21 @@ "@babel/helper-hoist-variables@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" + resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz" integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== dependencies: "@babel/types" "^7.18.6" "@babel/helper-module-imports@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz" integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== dependencies: "@babel/types" "^7.18.6" "@babel/helper-module-transforms@^7.20.11": version "7.20.11" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz#df4c7af713c557938c50ea3ad0117a7944b2f1b0" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz" integrity sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg== dependencies: "@babel/helper-environment-visitor" "^7.18.9" @@ -1200,41 +1200,41 @@ "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.8.0": version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" + resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz" integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== "@babel/helper-simple-access@^7.20.2": version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9" + resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz" integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== dependencies: "@babel/types" "^7.20.2" "@babel/helper-split-export-declaration@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" + resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz" integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== dependencies: "@babel/types" "^7.18.6" "@babel/helper-string-parser@^7.19.4": version "7.19.4" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" + resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz" integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== "@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": version "7.19.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz" integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== "@babel/helper-validator-option@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8" + resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz" integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== "@babel/helpers@^7.20.7": version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.7.tgz#04502ff0feecc9f20ecfaad120a18f011a8e6dce" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.7.tgz" integrity sha512-PBPjs5BppzsGaxHQCDKnZ6Gd9s6xl8bBCluz3vEInLGRJmnZan4F6BYCeqtyXqkk4W5IlPmjK4JlOuZkpJ3xZA== dependencies: "@babel/template" "^7.20.7" @@ -1243,7 +1243,7 @@ "@babel/highlight@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz" integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== dependencies: "@babel/helper-validator-identifier" "^7.18.6" @@ -1252,117 +1252,117 @@ "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7": version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.7.tgz#66fe23b3c8569220817d5feb8b9dcdc95bb4f71b" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.20.7.tgz" integrity sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg== "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz" integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-bigint@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz" integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz" integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz" integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-jsx@^7.7.2": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz" integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== dependencies: "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz" integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-numeric-separator@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz" integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-catch-binding@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz" integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-chaining@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz" integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-typescript@^7.7.2": version "7.20.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz#4e9a0cfc769c85689b77a2e642d24e9f697fc8c7" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz" integrity sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ== dependencies: "@babel/helper-plugin-utils" "^7.19.0" "@babel/runtime@^7.5.5": version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.7.tgz#fcb41a5a70550e04a7b708037c7c32f7f356d8fd" + resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.7.tgz" integrity sha512-UF0tvkUtxwAgZ5W/KrkHf0Rn0fdnLDU9ScxBrEVNUprE/MzirjK4MJUX1/BVDv00Sv8cljtukVK1aky++X1SjQ== dependencies: regenerator-runtime "^0.13.11" "@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.3.3": version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz" integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== dependencies: "@babel/code-frame" "^7.18.6" @@ -1371,7 +1371,7 @@ "@babel/traverse@^7.20.10", "@babel/traverse@^7.20.12", "@babel/traverse@^7.20.7", "@babel/traverse@^7.7.2": version "7.20.12" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.12.tgz#7f0f787b3a67ca4475adef1f56cb94f6abd4a4b5" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.12.tgz" integrity sha512-MsIbFN0u+raeja38qboyF8TIT7K0BFzz/Yd/77ta4MsUsmP2RAnidIlwq7d5HFQrH/OZJecGV6B71C4zAgpoSQ== dependencies: "@babel/code-frame" "^7.18.6" @@ -1387,7 +1387,7 @@ "@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.19.0", "@babel/types@^7.20.2", "@babel/types@^7.20.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3": version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.7.tgz#54ec75e252318423fc07fb644dc6a58a64c09b7f" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz" integrity sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg== dependencies: "@babel/helper-string-parser" "^7.19.4" @@ -1396,22 +1396,22 @@ "@bcoe/v8-coverage@^0.2.3": version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== "@changesets/types@^4.0.1": version "4.1.0" - resolved "https://registry.yarnpkg.com/@changesets/types/-/types-4.1.0.tgz#fb8f7ca2324fd54954824e864f9a61a82cb78fe0" + resolved "https://registry.npmjs.org/@changesets/types/-/types-4.1.0.tgz" integrity sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw== "@colors/colors@1.5.0": version "1.5.0" - resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" + resolved "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz" integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== "@commitlint/cli@^17.4.2": version "17.4.2" - resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-17.4.2.tgz#8600c83abb7e84191fd59528fc14f436496fb00b" + resolved "https://registry.npmjs.org/@commitlint/cli/-/cli-17.4.2.tgz" integrity sha512-0rPGJ2O1owhpxMIXL9YJ2CgPkdrFLKZElIZHXDN8L8+qWK1DGH7Q7IelBT1pchXTYTuDlqkOTdh//aTvT3bSUA== dependencies: "@commitlint/format" "^17.4.0" @@ -1427,14 +1427,14 @@ "@commitlint/config-conventional@^17.4.2": version "17.4.2" - resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-17.4.2.tgz#671f7febfcfef90ec11b122a659c6be25e11c19e" + resolved "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-17.4.2.tgz" integrity sha512-JVo1moSj5eDMoql159q8zKCU8lkOhQ+b23Vl3LVVrS6PXDLQIELnJ34ChQmFVbBdSSRNAbbXnRDhosFU+wnuHw== dependencies: conventional-changelog-conventionalcommits "^5.0.0" "@commitlint/config-validator@^17.4.0": version "17.4.0" - resolved "https://registry.yarnpkg.com/@commitlint/config-validator/-/config-validator-17.4.0.tgz#2cb229672a22476cf1f21bedbfcd788e5da5b54f" + resolved "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-17.4.0.tgz" integrity sha512-Sa/+8KNpDXz4zT4bVbz2fpFjvgkPO6u2V2fP4TKgt6FjmOw2z3eEX859vtfeaTav/ukBw0/0jr+5ZTZp9zCBhA== dependencies: "@commitlint/types" "^17.4.0" @@ -1442,7 +1442,7 @@ "@commitlint/ensure@^17.4.0": version "17.4.0" - resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-17.4.0.tgz#3de65768bfccb9956ec3a0ecd8a415421bf315e5" + resolved "https://registry.npmjs.org/@commitlint/ensure/-/ensure-17.4.0.tgz" integrity sha512-7oAxt25je0jeQ/E0O/M8L3ADb1Cvweu/5lc/kYF8g/kXatI0wxGE5La52onnAUAWeWlsuvBNar15WcrmDmr5Mw== dependencies: "@commitlint/types" "^17.4.0" @@ -1454,12 +1454,12 @@ "@commitlint/execute-rule@^17.4.0": version "17.4.0" - resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-17.4.0.tgz#4518e77958893d0a5835babe65bf87e2638f6939" + resolved "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-17.4.0.tgz" integrity sha512-LIgYXuCSO5Gvtc0t9bebAMSwd68ewzmqLypqI2Kke1rqOqqDbMpYcYfoPfFlv9eyLIh4jocHWwCK5FS7z9icUA== "@commitlint/format@^17.4.0": version "17.4.0" - resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-17.4.0.tgz#1c80cf3a6274ff9b3d3c0dd150a97882d557aa0f" + resolved "https://registry.npmjs.org/@commitlint/format/-/format-17.4.0.tgz" integrity sha512-Z2bWAU5+f1YZh9W76c84J8iLIWIvvm+mzqogTz0Nsc1x6EHW0Z2gI38g5HAjB0r0I3ZjR15IDEJKhsxyblcyhA== dependencies: "@commitlint/types" "^17.4.0" @@ -1467,7 +1467,7 @@ "@commitlint/is-ignored@^17.4.2": version "17.4.2" - resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-17.4.2.tgz#2d40a34e071c3e595e485fafe8460457a7b7af9d" + resolved "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-17.4.2.tgz" integrity sha512-1b2Y2qJ6n7bHG9K6h8S4lBGUl6kc7mMhJN9gy1SQfUZqe92ToDjUTtgNWb6LbzR1X8Cq4SEus4VU8Z/riEa94Q== dependencies: "@commitlint/types" "^17.4.0" @@ -1475,7 +1475,7 @@ "@commitlint/lint@^17.4.2": version "17.4.2" - resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-17.4.2.tgz#1277cb4d5395e9d6c39cbc351984bac9dcc6b7cd" + resolved "https://registry.npmjs.org/@commitlint/lint/-/lint-17.4.2.tgz" integrity sha512-HcymabrdBhsDMNzIv146+ZPNBPBK5gMNsVH+el2lCagnYgCi/4ixrHooeVyS64Fgce2K26+MC7OQ4vVH8wQWVw== dependencies: "@commitlint/is-ignored" "^17.4.2" @@ -1485,7 +1485,7 @@ "@commitlint/load@^17.4.2": version "17.4.2" - resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-17.4.2.tgz#551875c3e1dce6dc0375dc9c8ad551de8ba35de4" + resolved "https://registry.npmjs.org/@commitlint/load/-/load-17.4.2.tgz" integrity sha512-Si++F85rJ9t4hw6JcOw1i2h0fdpdFQt0YKwjuK4bk9KhFjyFkRxvR3SB2dPaMs+EwWlDrDBGL+ygip1QD6gmPw== dependencies: "@commitlint/config-validator" "^17.4.0" @@ -1505,12 +1505,12 @@ "@commitlint/message@^17.4.2": version "17.4.2" - resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-17.4.2.tgz#f4753a79701ad6db6db21f69076e34de6580e22c" + resolved "https://registry.npmjs.org/@commitlint/message/-/message-17.4.2.tgz" integrity sha512-3XMNbzB+3bhKA1hSAWPCQA3lNxR4zaeQAQcHj0Hx5sVdO6ryXtgUBGGv+1ZCLMgAPRixuc6en+iNAzZ4NzAa8Q== "@commitlint/parse@^17.4.2": version "17.4.2" - resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-17.4.2.tgz#b0f8a257a1f93387a497408b0b4cadba60ee3359" + resolved "https://registry.npmjs.org/@commitlint/parse/-/parse-17.4.2.tgz" integrity sha512-DK4EwqhxfXpyCA+UH8TBRIAXAfmmX4q9QRBz/2h9F9sI91yt6mltTrL6TKURMcjUVmgaB80wgS9QybNIyVBIJA== dependencies: "@commitlint/types" "^17.4.0" @@ -1519,7 +1519,7 @@ "@commitlint/read@^17.4.2": version "17.4.2" - resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-17.4.2.tgz#4880a05271fb44cefa54d365a17d5753496a6de0" + resolved "https://registry.npmjs.org/@commitlint/read/-/read-17.4.2.tgz" integrity sha512-hasYOdbhEg+W4hi0InmXHxtD/1favB4WdwyFxs1eOy/DvMw6+2IZBmATgGOlqhahsypk4kChhxjAFJAZ2F+JBg== dependencies: "@commitlint/top-level" "^17.4.0" @@ -1530,7 +1530,7 @@ "@commitlint/resolve-extends@^17.4.0": version "17.4.0" - resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-17.4.0.tgz#9023da6c70c4ebd173b4b0995fe29f27051da2d3" + resolved "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-17.4.0.tgz" integrity sha512-3JsmwkrCzoK8sO22AzLBvNEvC1Pmdn/65RKXzEtQMy6oYMl0Snrq97a5bQQEFETF0VsvbtUuKttLqqgn99OXRQ== dependencies: "@commitlint/config-validator" "^17.4.0" @@ -1542,7 +1542,7 @@ "@commitlint/rules@^17.4.2": version "17.4.2" - resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-17.4.2.tgz#cdf203bc82af979cb319210ef9215cb1de216a9b" + resolved "https://registry.npmjs.org/@commitlint/rules/-/rules-17.4.2.tgz" integrity sha512-OGrPsMb9Fx3/bZ64/EzJehY9YDSGWzp81Pj+zJiY+r/NSgJI3nUYdlS37jykNIugzazdEXfMtQ10kmA+Kx2pZQ== dependencies: "@commitlint/ensure" "^17.4.0" @@ -1553,33 +1553,33 @@ "@commitlint/to-lines@^17.4.0": version "17.4.0" - resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-17.4.0.tgz#9bd02e911e7d4eab3fb4a50376c4c6d331e10d8d" + resolved "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-17.4.0.tgz" integrity sha512-LcIy/6ZZolsfwDUWfN1mJ+co09soSuNASfKEU5sCmgFCvX5iHwRYLiIuoqXzOVDYOy7E7IcHilr/KS0e5T+0Hg== "@commitlint/top-level@^17.4.0": version "17.4.0" - resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-17.4.0.tgz#540cac8290044cf846fbdd99f5cc51e8ac5f27d6" + resolved "https://registry.npmjs.org/@commitlint/top-level/-/top-level-17.4.0.tgz" integrity sha512-/1loE/g+dTTQgHnjoCy0AexKAEFyHsR2zRB4NWrZ6lZSMIxAhBJnmCqwao7b4H8888PsfoTBCLBYIw8vGnej8g== dependencies: find-up "^5.0.0" "@commitlint/types@^17.4.0": version "17.4.0" - resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-17.4.0.tgz#c7c2b97b959f6175c164632bf26208ce417b3f31" + resolved "https://registry.npmjs.org/@commitlint/types/-/types-17.4.0.tgz" integrity sha512-2NjAnq5IcxY9kXtUeO2Ac0aPpvkuOmwbH/BxIm36XXK5LtWFObWJWjXOA+kcaABMrthjWu6la+FUpyYFMHRvbA== dependencies: chalk "^4.1.0" "@cspotcode/source-map-support@^0.8.0": version "0.8.1" - resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" + resolved "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz" integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== dependencies: "@jridgewell/trace-mapping" "0.3.9" "@eslint/eslintrc@^1.4.1": version "1.4.1" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.4.1.tgz#af58772019a2d271b7e2d4c23ff4ddcba3ccfb3e" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz" integrity sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA== dependencies: ajv "^6.12.4" @@ -1594,12 +1594,12 @@ "@faker-js/faker@^7.6.0": version "7.6.0" - resolved "https://registry.yarnpkg.com/@faker-js/faker/-/faker-7.6.0.tgz#9ea331766084288634a9247fcd8b84f16ff4ba07" + resolved "https://registry.npmjs.org/@faker-js/faker/-/faker-7.6.0.tgz" integrity sha512-XK6BTq1NDMo9Xqw/YkYyGjSsg44fbNwYRx7QK2CuoQgyy+f1rrTDHoExVM5PsyXCtfl2vs2vVJ0MN0yN6LppRw== "@fast-csv/format@^4.3.5": version "4.3.5" - resolved "https://registry.yarnpkg.com/@fast-csv/format/-/format-4.3.5.tgz#90d83d1b47b6aaf67be70d6118f84f3e12ee1ff3" + resolved "https://registry.npmjs.org/@fast-csv/format/-/format-4.3.5.tgz" integrity sha512-8iRn6QF3I8Ak78lNAa+Gdl5MJJBM5vRHivFtMRUWINdevNo00K7OXxS2PshawLKTejVwieIlPmK5YlLu6w4u8A== dependencies: "@types/node" "^14.0.1" @@ -1611,14 +1611,14 @@ "@fastify/ajv-compiler@^1.0.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@fastify/ajv-compiler/-/ajv-compiler-1.1.0.tgz#5ce80b1fc8bebffc8c5ba428d5e392d0f9ed10a1" + resolved "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-1.1.0.tgz" integrity sha512-gvCOUNpXsWrIQ3A4aXCLIdblL0tDq42BG/2Xw7oxbil9h11uow10ztS2GuFazNBfjbrsZ5nl+nPl5jDSjj5TSg== dependencies: ajv "^6.12.6" "@fastify/ajv-compiler@^3.3.1": version "3.5.0" - resolved "https://registry.yarnpkg.com/@fastify/ajv-compiler/-/ajv-compiler-3.5.0.tgz#459bff00fefbf86c96ec30e62e933d2379e46670" + resolved "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-3.5.0.tgz" integrity sha512-ebbEtlI7dxXF5ziNdr05mOY8NnDiPB1XvAlLHctRt/Rc+C3LCOVW5imUVX+mhvUhnNzmPBHewUkOFgGlCxgdAA== dependencies: ajv "^8.11.0" @@ -1627,7 +1627,7 @@ "@fastify/cors@8.2.0": version "8.2.0" - resolved "https://registry.yarnpkg.com/@fastify/cors/-/cors-8.2.0.tgz#44ce6b28bc111e12679cb02f980f0ce865ff4877" + resolved "https://registry.npmjs.org/@fastify/cors/-/cors-8.2.0.tgz" integrity sha512-qDgwpmg6C4D0D3nh8MTMuRXWyEwPnDZDBODaJv90FP2o9ukbahJByW4FtrM5Bpod5KbTf1oIExBmpItbUTQmHg== dependencies: fastify-plugin "^4.0.0" @@ -1635,22 +1635,22 @@ "@fastify/deepmerge@^1.0.0": version "1.3.0" - resolved "https://registry.yarnpkg.com/@fastify/deepmerge/-/deepmerge-1.3.0.tgz#8116858108f0c7d9fd460d05a7d637a13fe3239a" + resolved "https://registry.npmjs.org/@fastify/deepmerge/-/deepmerge-1.3.0.tgz" integrity sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A== "@fastify/error@^2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@fastify/error/-/error-2.0.0.tgz#a9f94af56eb934f0ab1ce4ef9f0ced6ebf2319dc" + resolved "https://registry.npmjs.org/@fastify/error/-/error-2.0.0.tgz" integrity sha512-wI3fpfDT0t7p8E6dA2eTECzzOd+bZsZCJ2Hcv+Onn2b7ZwK3RwD27uW2QDaMtQhAfWQQP+WNK7nKf0twLsBf9w== "@fastify/error@^3.0.0": version "3.2.0" - resolved "https://registry.yarnpkg.com/@fastify/error/-/error-3.2.0.tgz#9010e0acfe07965f5fc7d2b367f58f042d0f4106" + resolved "https://registry.npmjs.org/@fastify/error/-/error-3.2.0.tgz" integrity sha512-KAfcLa+CnknwVi5fWogrLXgidLic+GXnLjijXdpl8pvkvbXU5BGa37iZO9FGvsh9ZL4y+oFi5cbHBm5UOG+dmQ== "@fastify/express@^1.1.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@fastify/express/-/express-1.1.0.tgz#f2387b6ece4fef1ec7686302fe13a7ee4f20f4ce" + resolved "https://registry.npmjs.org/@fastify/express/-/express-1.1.0.tgz" integrity sha512-hUqLYC3PTFwa/lwtuhtNeOrYuejyneG7A7ewO+2BM99lyasPK9ZAH1zyhBv6f5+3TU3nWpRh0pENLU70dw06gQ== dependencies: express "^4.17.1" @@ -1658,14 +1658,14 @@ "@fastify/fast-json-stringify-compiler@^4.1.0": version "4.2.0" - resolved "https://registry.yarnpkg.com/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-4.2.0.tgz#52d047fac76b0d75bd660f04a5dd606659f57c5a" + resolved "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-4.2.0.tgz" integrity sha512-ypZynRvXA3dibfPykQN3RB5wBdEUgSGgny8Qc6k163wYPLD4mEGEDkACp+00YmqkGvIm8D/xYoHajwyEdWD/eg== dependencies: fast-json-stringify "^5.0.0" "@fastify/formbody@7.3.0": version "7.3.0" - resolved "https://registry.yarnpkg.com/@fastify/formbody/-/formbody-7.3.0.tgz#0da0f3e8895d7360d179020cf999be3b1d68d514" + resolved "https://registry.npmjs.org/@fastify/formbody/-/formbody-7.3.0.tgz" integrity sha512-4uHTS7wH0mkUoltk4wyJ966rs/TQP0BNDSCtyqRMy7p5adGg+5ERbYue/zGh/qI9yLDPN0K98u7Fw+lLEmBZJQ== dependencies: fast-querystring "^1.0.0" @@ -1673,7 +1673,7 @@ "@fastify/middie@8.0.0": version "8.0.0" - resolved "https://registry.yarnpkg.com/@fastify/middie/-/middie-8.0.0.tgz#78fe18e948e03de0c7453d0f813d198acac233ca" + resolved "https://registry.npmjs.org/@fastify/middie/-/middie-8.0.0.tgz" integrity sha512-SsZUzJwRV2IBhko8TNI5gGzUdUp2Xd0XCrU+pBTfsMN8LYGsksDI/Hb3qcUZ2/Kfg6ecbFEeRO4nZmHeFCDpHQ== dependencies: fastify-plugin "^3.0.0" @@ -1682,12 +1682,12 @@ "@gar/promisify@^1.0.1", "@gar/promisify@^1.1.3": version "1.1.3" - resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" + resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz" integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== "@humanwhocodes/config-array@^0.11.8": version "0.11.8" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz#03595ac2075a4dc0f191cc2131de14fbd7d410b9" + resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz" integrity sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g== dependencies: "@humanwhocodes/object-schema" "^1.2.1" @@ -1696,27 +1696,27 @@ "@humanwhocodes/module-importer@^1.0.1": version "1.0.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz" integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== "@humanwhocodes/object-schema@^1.2.1": version "1.2.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" + resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== "@hutson/parse-repository-url@^3.0.0": version "3.0.2" - resolved "https://registry.yarnpkg.com/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" + resolved "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz" integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== "@isaacs/string-locale-compare@^1.1.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz#291c227e93fd407a96ecd59879a35809120e432b" + resolved "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz" integrity sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ== "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz" integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== dependencies: camelcase "^5.3.1" @@ -1727,12 +1727,12 @@ "@istanbuljs/schema@^0.1.2": version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== "@jest/console@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.3.1.tgz#3e3f876e4e47616ea3b1464b9fbda981872e9583" + resolved "https://registry.npmjs.org/@jest/console/-/console-29.3.1.tgz" integrity sha512-IRE6GD47KwcqA09RIWrabKdHPiKDGgtAL31xDxbi/RjQMsr+lY+ppxmHwY0dUEV3qvvxZzoe5Hl0RXZJOjQNUg== dependencies: "@jest/types" "^29.3.1" @@ -1744,7 +1744,7 @@ "@jest/core@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.3.1.tgz#bff00f413ff0128f4debec1099ba7dcd649774a1" + resolved "https://registry.npmjs.org/@jest/core/-/core-29.3.1.tgz" integrity sha512-0ohVjjRex985w5MmO5L3u5GR1O30DexhBSpuwx2P+9ftyqHdJXnk7IUWiP80oHMvt7ubHCJHxV0a0vlKVuZirw== dependencies: "@jest/console" "^29.3.1" @@ -1778,7 +1778,7 @@ "@jest/environment@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.3.1.tgz#eb039f726d5fcd14698acd072ac6576d41cfcaa6" + resolved "https://registry.npmjs.org/@jest/environment/-/environment-29.3.1.tgz" integrity sha512-pMmvfOPmoa1c1QpfFW0nXYtNLpofqo4BrCIk6f2kW4JFeNlHV2t3vd+3iDLf31e2ot2Mec0uqZfmI+U0K2CFag== dependencies: "@jest/fake-timers" "^29.3.1" @@ -1788,14 +1788,14 @@ "@jest/expect-utils@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.3.1.tgz#531f737039e9b9e27c42449798acb5bba01935b6" + resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.3.1.tgz" integrity sha512-wlrznINZI5sMjwvUoLVk617ll/UYfGIZNxmbU+Pa7wmkL4vYzhV9R2pwVqUh4NWWuLQWkI8+8mOkxs//prKQ3g== dependencies: jest-get-type "^29.2.0" "@jest/expect@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.3.1.tgz#456385b62894349c1d196f2d183e3716d4c6a6cd" + resolved "https://registry.npmjs.org/@jest/expect/-/expect-29.3.1.tgz" integrity sha512-QivM7GlSHSsIAWzgfyP8dgeExPRZ9BIe2LsdPyEhCGkZkoyA+kGsoIzbKAfZCvvRzfZioKwPtCZIt5SaoxYCvg== dependencies: expect "^29.3.1" @@ -1803,7 +1803,7 @@ "@jest/fake-timers@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.3.1.tgz#b140625095b60a44de820876d4c14da1aa963f67" + resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.3.1.tgz" integrity sha512-iHTL/XpnDlFki9Tq0Q1GGuVeQ8BHZGIYsvCO5eN/O/oJaRzofG9Xndd9HuSDBI/0ZS79pg0iwn07OMTQ7ngF2A== dependencies: "@jest/types" "^29.3.1" @@ -1815,7 +1815,7 @@ "@jest/globals@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.3.1.tgz#92be078228e82d629df40c3656d45328f134a0c6" + resolved "https://registry.npmjs.org/@jest/globals/-/globals-29.3.1.tgz" integrity sha512-cTicd134vOcwO59OPaB6AmdHQMCtWOe+/DitpTZVxWgMJ+YvXL1HNAmPyiGbSHmF/mXVBkvlm8YYtQhyHPnV6Q== dependencies: "@jest/environment" "^29.3.1" @@ -1825,7 +1825,7 @@ "@jest/reporters@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.3.1.tgz#9a6d78c109608e677c25ddb34f907b90e07b4310" + resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-29.3.1.tgz" integrity sha512-GhBu3YFuDrcAYW/UESz1JphEAbvUjaY2vShRZRoRY1mxpCMB3yGSJ4j9n0GxVlEOdCf7qjvUfBCrTUUqhVfbRA== dependencies: "@bcoe/v8-coverage" "^0.2.3" @@ -1855,14 +1855,14 @@ "@jest/schemas@^29.0.0": version "29.0.0" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.0.0.tgz#5f47f5994dd4ef067fb7b4188ceac45f77fe952a" + resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.0.0.tgz" integrity sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA== dependencies: "@sinclair/typebox" "^0.24.1" "@jest/source-map@^29.2.0": version "29.2.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.2.0.tgz#ab3420c46d42508dcc3dc1c6deee0b613c235744" + resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-29.2.0.tgz" integrity sha512-1NX9/7zzI0nqa6+kgpSdKPK+WU1p+SJk3TloWZf5MzPbxri9UEeXX5bWZAPCzbQcyuAzubcdUHA7hcNznmRqWQ== dependencies: "@jridgewell/trace-mapping" "^0.3.15" @@ -1871,7 +1871,7 @@ "@jest/test-result@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.3.1.tgz#92cd5099aa94be947560a24610aa76606de78f50" + resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-29.3.1.tgz" integrity sha512-qeLa6qc0ddB0kuOZyZIhfN5q0e2htngokyTWsGriedsDhItisW7SDYZ7ceOe57Ii03sL988/03wAcBh3TChMGw== dependencies: "@jest/console" "^29.3.1" @@ -1881,7 +1881,7 @@ "@jest/test-sequencer@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.3.1.tgz#fa24b3b050f7a59d48f7ef9e0b782ab65123090d" + resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.3.1.tgz" integrity sha512-IqYvLbieTv20ArgKoAMyhLHNrVHJfzO6ARZAbQRlY4UGWfdDnLlZEF0BvKOMd77uIiIjSZRwq3Jb3Fa3I8+2UA== dependencies: "@jest/test-result" "^29.3.1" @@ -1891,7 +1891,7 @@ "@jest/transform@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.3.1.tgz#1e6bd3da4af50b5c82a539b7b1f3770568d6e36d" + resolved "https://registry.npmjs.org/@jest/transform/-/transform-29.3.1.tgz" integrity sha512-8wmCFBTVGYqFNLWfcOWoVuMuKYPUBTnTMDkdvFtAYELwDOl9RGwOsvQWGPFxDJ8AWY9xM/8xCXdqmPK3+Q5Lug== dependencies: "@babel/core" "^7.11.6" @@ -1912,7 +1912,7 @@ "@jest/types@^29.3.1": version "29.3.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.3.1.tgz#7c5a80777cb13e703aeec6788d044150341147e3" + resolved "https://registry.npmjs.org/@jest/types/-/types-29.3.1.tgz" integrity sha512-d0S0jmmTpjnhCmNpApgX3jrUZgZ22ivKJRvL2lli5hpCRoNnp1f85r2/wpKfXuYu8E7Jjh1hGfhPyup1NM5AmA== dependencies: "@jest/schemas" "^29.0.0" @@ -1924,7 +1924,7 @@ "@jridgewell/gen-mapping@^0.1.0": version "0.1.1" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz" integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== dependencies: "@jridgewell/set-array" "^1.0.0" @@ -1932,7 +1932,7 @@ "@jridgewell/gen-mapping@^0.3.2": version "0.3.2" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz" integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== dependencies: "@jridgewell/set-array" "^1.0.1" @@ -1941,22 +1941,22 @@ "@jridgewell/resolve-uri@3.1.0", "@jridgewell/resolve-uri@^3.0.3": version "3.1.0" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" + resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== "@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": version "1.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" + resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== "@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": version "1.4.14" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz" integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== "@jridgewell/trace-mapping@0.3.9": version "0.3.9" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz" integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== dependencies: "@jridgewell/resolve-uri" "^3.0.3" @@ -1964,7 +1964,7 @@ "@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.9": version "0.3.17" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz" integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== dependencies: "@jridgewell/resolve-uri" "3.1.0" @@ -1972,19 +1972,19 @@ "@js-joda/core@^5.2.0": version "5.5.2" - resolved "https://registry.yarnpkg.com/@js-joda/core/-/core-5.5.2.tgz#3d7953004d70adf6a0a4140a78c948de758284e0" + resolved "https://registry.npmjs.org/@js-joda/core/-/core-5.5.2.tgz" integrity sha512-retLUN4TwCJ0QJDi9OCJwYVaXAz93NeOkEtEQL98M2bykBOxmURlP0YlfsuE46kItOOVZIWRYC3KsSLhQ1R2Qw== "@koa/cors@^4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@koa/cors/-/cors-4.0.0.tgz#b2d300d7368d2e0ad6faa1d918eff6d0cde0859a" + resolved "https://registry.npmjs.org/@koa/cors/-/cors-4.0.0.tgz" integrity sha512-Y4RrbvGTlAaa04DBoPBWJqDR5gPj32OOz827ULXfgB1F7piD1MB/zwn8JR2LAnvdILhxUbXbkXGWuNVsFuVFCQ== dependencies: vary "^1.1.2" "@koa/router@^12.0.0": version "12.0.0" - resolved "https://registry.yarnpkg.com/@koa/router/-/router-12.0.0.tgz#2ae7937093fd392761c0e5833c368379d4a35737" + resolved "https://registry.npmjs.org/@koa/router/-/router-12.0.0.tgz" integrity sha512-cnnxeKHXlt7XARJptflGURdJaO+ITpNkOHmQu7NHmCoRinPbyvFzce/EG/E8Zy81yQ1W9MoSdtklc3nyaDReUw== dependencies: http-errors "^2.0.0" @@ -1994,7 +1994,7 @@ "@lerna/add@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/add/-/add-6.4.1.tgz#fa20fe9ff875dc5758141262c8cde0d9a6481ec4" + resolved "https://registry.npmjs.org/@lerna/add/-/add-6.4.1.tgz" integrity sha512-YSRnMcsdYnQtQQK0NSyrS9YGXvB3jzvx183o+JTH892MKzSlBqwpBHekCknSibyxga1HeZ0SNKQXgsHAwWkrRw== dependencies: "@lerna/bootstrap" "6.4.1" @@ -2010,7 +2010,7 @@ "@lerna/bootstrap@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-6.4.1.tgz#a76ff22c3160d134fb60bcfddb3f8b0759b4f1ff" + resolved "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-6.4.1.tgz" integrity sha512-64cm0mnxzxhUUjH3T19ZSjPdn28vczRhhTXhNAvOhhU0sQgHrroam1xQC1395qbkV3iosSertlu8e7xbXW033w== dependencies: "@lerna/command" "6.4.1" @@ -2038,7 +2038,7 @@ "@lerna/changed@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-6.4.1.tgz#4da6d08df7c53bc90c0c0d9d04839f91dd6d70a9" + resolved "https://registry.npmjs.org/@lerna/changed/-/changed-6.4.1.tgz" integrity sha512-Z/z0sTm3l/iZW0eTSsnQpcY5d6eOpNO0g4wMOK+hIboWG0QOTc8b28XCnfCUO+33UisKl8PffultgoaHMKkGgw== dependencies: "@lerna/collect-updates" "6.4.1" @@ -2048,7 +2048,7 @@ "@lerna/check-working-tree@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-6.4.1.tgz#c0dcb5c474faf214865058e2fedda44962367a4e" + resolved "https://registry.npmjs.org/@lerna/check-working-tree/-/check-working-tree-6.4.1.tgz" integrity sha512-EnlkA1wxaRLqhJdn9HX7h+JYxqiTK9aWEFOPqAE8lqjxHn3RpM9qBp1bAdL7CeUk3kN1lvxKwDEm0mfcIyMbPA== dependencies: "@lerna/collect-uncommitted" "6.4.1" @@ -2057,7 +2057,7 @@ "@lerna/child-process@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-6.4.1.tgz#d697fb769f4c5b57c59f87471eb9b3d65be904a3" + resolved "https://registry.npmjs.org/@lerna/child-process/-/child-process-6.4.1.tgz" integrity sha512-dvEKK0yKmxOv8pccf3I5D/k+OGiLxQp5KYjsrDtkes2pjpCFfQAMbmpol/Tqx6w/2o2rSaRrLsnX8TENo66FsA== dependencies: chalk "^4.1.0" @@ -2066,7 +2066,7 @@ "@lerna/clean@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-6.4.1.tgz#e9ee365ee6879ee998b78b3269fad02b5f385771" + resolved "https://registry.npmjs.org/@lerna/clean/-/clean-6.4.1.tgz" integrity sha512-FuVyW3mpos5ESCWSkQ1/ViXyEtsZ9k45U66cdM/HnteHQk/XskSQw0sz9R+whrZRUDu6YgYLSoj1j0YAHVK/3A== dependencies: "@lerna/command" "6.4.1" @@ -2080,7 +2080,7 @@ "@lerna/cli@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-6.4.1.tgz#2b2d093baace40e822caee8c90f698e98a437a2f" + resolved "https://registry.npmjs.org/@lerna/cli/-/cli-6.4.1.tgz" integrity sha512-2pNa48i2wzFEd9LMPKWI3lkW/3widDqiB7oZUM1Xvm4eAOuDWc9I3RWmAUIVlPQNf3n4McxJCvsZZ9BpQN50Fg== dependencies: "@lerna/global-options" "6.4.1" @@ -2090,7 +2090,7 @@ "@lerna/collect-uncommitted@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-6.4.1.tgz#ae62bcaa5ecaa5b7fbc41eb9ae90b6711be156ec" + resolved "https://registry.npmjs.org/@lerna/collect-uncommitted/-/collect-uncommitted-6.4.1.tgz" integrity sha512-5IVQGhlLrt7Ujc5ooYA1Xlicdba/wMcDSnbQwr8ufeqnzV2z4729pLCVk55gmi6ZienH/YeBPHxhB5u34ofE0Q== dependencies: "@lerna/child-process" "6.4.1" @@ -2099,7 +2099,7 @@ "@lerna/collect-updates@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-6.4.1.tgz#4f7cf1c411f3253d0104e7b64cb0aa315a5dfc81" + resolved "https://registry.npmjs.org/@lerna/collect-updates/-/collect-updates-6.4.1.tgz" integrity sha512-pzw2/FC+nIqYkknUHK9SMmvP3MsLEjxI597p3WV86cEDN3eb1dyGIGuHiKShtjvT08SKSwpTX+3bCYvLVxtC5Q== dependencies: "@lerna/child-process" "6.4.1" @@ -2110,7 +2110,7 @@ "@lerna/command@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/command/-/command-6.4.1.tgz#96c4f5d88792c6c638738c66fcc3a7ad0d2487e2" + resolved "https://registry.npmjs.org/@lerna/command/-/command-6.4.1.tgz" integrity sha512-3Lifj8UTNYbRad8JMP7IFEEdlIyclWyyvq/zvNnTS9kCOEymfmsB3lGXr07/AFoi6qDrvN64j7YSbPZ6C6qonw== dependencies: "@lerna/child-process" "6.4.1" @@ -2126,7 +2126,7 @@ "@lerna/conventional-commits@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-6.4.1.tgz#b8d44a8a71865b4d37b900137acef623f3a0a11b" + resolved "https://registry.npmjs.org/@lerna/conventional-commits/-/conventional-commits-6.4.1.tgz" integrity sha512-NIvCOjStjQy5O8VojB7/fVReNNDEJOmzRG2sTpgZ/vNS4AzojBQZ/tobzhm7rVkZZ43R9srZeuhfH9WgFsVUSA== dependencies: "@lerna/validation-error" "6.4.1" @@ -2142,7 +2142,7 @@ "@lerna/create-symlink@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-6.4.1.tgz#0efec22d78dd814a70d8345ced52c39beb05874b" + resolved "https://registry.npmjs.org/@lerna/create-symlink/-/create-symlink-6.4.1.tgz" integrity sha512-rNivHFYV1GAULxnaTqeGb2AdEN2OZzAiZcx5CFgj45DWXQEGwPEfpFmCSJdXhFZbyd3K0uiDlAXjAmV56ov3FQ== dependencies: cmd-shim "^5.0.0" @@ -2151,7 +2151,7 @@ "@lerna/create@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/create/-/create-6.4.1.tgz#3fc8556adadff1265432a6cee69ee14465798e71" + resolved "https://registry.npmjs.org/@lerna/create/-/create-6.4.1.tgz" integrity sha512-qfQS8PjeGDDlxEvKsI/tYixIFzV2938qLvJohEKWFn64uvdLnXCamQ0wvRJST8p1ZpHWX4AXrB+xEJM3EFABrA== dependencies: "@lerna/child-process" "6.4.1" @@ -2173,7 +2173,7 @@ "@lerna/describe-ref@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-6.4.1.tgz#c0a0beca5dfeada3a39b030f69c8c98f5623bb13" + resolved "https://registry.npmjs.org/@lerna/describe-ref/-/describe-ref-6.4.1.tgz" integrity sha512-MXGXU8r27wl355kb1lQtAiu6gkxJ5tAisVJvFxFM1M+X8Sq56icNoaROqYrvW6y97A9+3S8Q48pD3SzkFv31Xw== dependencies: "@lerna/child-process" "6.4.1" @@ -2181,7 +2181,7 @@ "@lerna/diff@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-6.4.1.tgz#ca9e62a451ce199faaa7ef5990ded3fad947e2f9" + resolved "https://registry.npmjs.org/@lerna/diff/-/diff-6.4.1.tgz" integrity sha512-TnzJsRPN2fOjUrmo5Boi43fJmRtBJDsVgwZM51VnLoKcDtO1kcScXJ16Od2Xx5bXbp5dES5vGDLL/USVVWfeAg== dependencies: "@lerna/child-process" "6.4.1" @@ -2191,7 +2191,7 @@ "@lerna/exec@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-6.4.1.tgz#493ce805b6959e8299ec58fab8d31fd01ed209ba" + resolved "https://registry.npmjs.org/@lerna/exec/-/exec-6.4.1.tgz" integrity sha512-KAWfuZpoyd3FMejHUORd0GORMr45/d9OGAwHitfQPVs4brsxgQFjbbBEEGIdwsg08XhkDb4nl6IYVASVTq9+gA== dependencies: "@lerna/child-process" "6.4.1" @@ -2204,7 +2204,7 @@ "@lerna/filter-options@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-6.4.1.tgz#571d37436878fab8b2ac84ca1c3863acd3515cfb" + resolved "https://registry.npmjs.org/@lerna/filter-options/-/filter-options-6.4.1.tgz" integrity sha512-efJh3lP2T+9oyNIP2QNd9EErf0Sm3l3Tz8CILMsNJpjSU6kO43TYWQ+L/ezu2zM99KVYz8GROLqDcHRwdr8qUA== dependencies: "@lerna/collect-updates" "6.4.1" @@ -2214,7 +2214,7 @@ "@lerna/filter-packages@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-6.4.1.tgz#e138b182816a049c81de094069cad12aaa41a236" + resolved "https://registry.npmjs.org/@lerna/filter-packages/-/filter-packages-6.4.1.tgz" integrity sha512-LCMGDGy4b+Mrb6xkcVzp4novbf5MoZEE6ZQF1gqG0wBWqJzNcKeFiOmf352rcDnfjPGZP6ct5+xXWosX/q6qwg== dependencies: "@lerna/validation-error" "6.4.1" @@ -2223,14 +2223,14 @@ "@lerna/get-npm-exec-opts@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-6.4.1.tgz#42681f6db4238277889b3423f87308eda5dc01ec" + resolved "https://registry.npmjs.org/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-6.4.1.tgz" integrity sha512-IvN/jyoklrWcjssOf121tZhOc16MaFPOu5ii8a+Oy0jfTriIGv929Ya8MWodj75qec9s+JHoShB8yEcMqZce4g== dependencies: npmlog "^6.0.2" "@lerna/get-packed@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-6.4.1.tgz#b3b8b907002d50bf8792dd97e2729249c0b0e0cd" + resolved "https://registry.npmjs.org/@lerna/get-packed/-/get-packed-6.4.1.tgz" integrity sha512-uaDtYwK1OEUVIXn84m45uPlXShtiUcw6V9TgB3rvHa3rrRVbR7D4r+JXcwVxLGrAS7LwxVbYWEEO/Z/bX7J/Lg== dependencies: fs-extra "^9.1.0" @@ -2239,7 +2239,7 @@ "@lerna/github-client@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-6.4.1.tgz#25d19b440395a6039b9162ee58dadb9dce990ff0" + resolved "https://registry.npmjs.org/@lerna/github-client/-/github-client-6.4.1.tgz" integrity sha512-ridDMuzmjMNlcDmrGrV9mxqwUKzt9iYqCPwVYJlRYrnE3jxyg+RdooquqskVFj11djcY6xCV2Q2V1lUYwF+PmA== dependencies: "@lerna/child-process" "6.4.1" @@ -2250,7 +2250,7 @@ "@lerna/gitlab-client@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-6.4.1.tgz#a01d962dc52a55b8272ea52bc54d72c5fd9db6f9" + resolved "https://registry.npmjs.org/@lerna/gitlab-client/-/gitlab-client-6.4.1.tgz" integrity sha512-AdLG4d+jbUvv0jQyygQUTNaTCNSMDxioJso6aAjQ/vkwyy3fBJ6FYzX74J4adSfOxC2MQZITFyuG+c9ggp7pyQ== dependencies: node-fetch "^2.6.1" @@ -2258,12 +2258,12 @@ "@lerna/global-options@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-6.4.1.tgz#7df76b1d38500606a8dc3ce0804bab6894c4f4a3" + resolved "https://registry.npmjs.org/@lerna/global-options/-/global-options-6.4.1.tgz" integrity sha512-UTXkt+bleBB8xPzxBPjaCN/v63yQdfssVjhgdbkQ//4kayaRA65LyEtJTi9rUrsLlIy9/rbeb+SAZUHg129fJg== "@lerna/has-npm-version@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-6.4.1.tgz#04eba7df687e665294834253b659430efc1e01bb" + resolved "https://registry.npmjs.org/@lerna/has-npm-version/-/has-npm-version-6.4.1.tgz" integrity sha512-vW191w5iCkwNWWWcy4542ZOpjKYjcP/pU3o3+w6NM1J3yBjWZcNa8lfzQQgde2QkGyNi+i70o6wIca1o0sdKwg== dependencies: "@lerna/child-process" "6.4.1" @@ -2271,7 +2271,7 @@ "@lerna/import@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/import/-/import-6.4.1.tgz#b5696fed68a32d32398d66f95192267f1da5110e" + resolved "https://registry.npmjs.org/@lerna/import/-/import-6.4.1.tgz" integrity sha512-oDg8g1PNrCM1JESLsG3rQBtPC+/K9e4ohs0xDKt5E6p4l7dc0Ib4oo0oCCT/hGzZUlNwHxrc2q9JMRzSAn6P/Q== dependencies: "@lerna/child-process" "6.4.1" @@ -2285,7 +2285,7 @@ "@lerna/info@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/info/-/info-6.4.1.tgz#30354fcb82c99b1f0ed753f957fbaca5b250c3fa" + resolved "https://registry.npmjs.org/@lerna/info/-/info-6.4.1.tgz" integrity sha512-Ks4R7IndIr4vQXz+702gumPVhH6JVkshje0WKA3+ew2qzYZf68lU1sBe1OZsQJU3eeY2c60ax+bItSa7aaIHGw== dependencies: "@lerna/command" "6.4.1" @@ -2294,7 +2294,7 @@ "@lerna/init@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/init/-/init-6.4.1.tgz#ea4905ca976189db4b0bf04d78919060146bf684" + resolved "https://registry.npmjs.org/@lerna/init/-/init-6.4.1.tgz" integrity sha512-CXd/s/xgj0ZTAoOVyolOTLW2BG7uQOhWW4P/ktlwwJr9s3c4H/z+Gj36UXw3q5X1xdR29NZt7Vc6fvROBZMjUQ== dependencies: "@lerna/child-process" "6.4.1" @@ -2306,7 +2306,7 @@ "@lerna/link@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/link/-/link-6.4.1.tgz#f31ed1f6aea1581e358a9ff545be78b61e923175" + resolved "https://registry.npmjs.org/@lerna/link/-/link-6.4.1.tgz" integrity sha512-O8Rt7MAZT/WT2AwrB/+HY76ktnXA9cDFO9rhyKWZGTHdplbzuJgfsGzu8Xv0Ind+w+a8xLfqtWGPlwiETnDyrw== dependencies: "@lerna/command" "6.4.1" @@ -2318,7 +2318,7 @@ "@lerna/list@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/list/-/list-6.4.1.tgz#12ad83902e148d1e5ba007149b72b14636f9f1ba" + resolved "https://registry.npmjs.org/@lerna/list/-/list-6.4.1.tgz" integrity sha512-7a6AKgXgC4X7nK6twVPNrKCiDhrCiAhL/FE4u9HYhHqw9yFwyq8Qe/r1RVOkAOASNZzZ8GuBvob042bpunupCw== dependencies: "@lerna/command" "6.4.1" @@ -2328,7 +2328,7 @@ "@lerna/listable@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-6.4.1.tgz#6f5c83865391c6beeb41802951c674e2de119bde" + resolved "https://registry.npmjs.org/@lerna/listable/-/listable-6.4.1.tgz" integrity sha512-L8ANeidM10aoF8aL3L/771Bb9r/TRkbEPzAiC8Iy2IBTYftS87E3rT/4k5KBEGYzMieSKJaskSFBV0OQGYV1Cw== dependencies: "@lerna/query-graph" "6.4.1" @@ -2337,7 +2337,7 @@ "@lerna/log-packed@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-6.4.1.tgz#43eae50d5c0cd906b1977a58b62b35541cf89ec1" + resolved "https://registry.npmjs.org/@lerna/log-packed/-/log-packed-6.4.1.tgz" integrity sha512-Pwv7LnIgWqZH4vkM1rWTVF+pmWJu7d0ZhVwyhCaBJUsYbo+SyB2ZETGygo3Z/A+vZ/S7ImhEEKfIxU9bg5lScQ== dependencies: byte-size "^7.0.0" @@ -2347,7 +2347,7 @@ "@lerna/npm-conf@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-6.4.1.tgz#64dba237ff41472a24f96192669c1bc0dce15edb" + resolved "https://registry.npmjs.org/@lerna/npm-conf/-/npm-conf-6.4.1.tgz" integrity sha512-Q+83uySGXYk3n1pYhvxtzyGwBGijYgYecgpiwRG1YNyaeGy+Mkrj19cyTWubT+rU/kM5c6If28+y9kdudvc7zQ== dependencies: config-chain "^1.1.12" @@ -2355,7 +2355,7 @@ "@lerna/npm-dist-tag@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-6.4.1.tgz#f14e7176f7e323284e8aa8636b44818a61738fd1" + resolved "https://registry.npmjs.org/@lerna/npm-dist-tag/-/npm-dist-tag-6.4.1.tgz" integrity sha512-If1Hn4q9fn0JWuBm455iIZDWE6Fsn4Nv8Tpqb+dYf0CtoT5Hn+iT64xSiU5XJw9Vc23IR7dIujkEXm2MVbnvZw== dependencies: "@lerna/otplease" "6.4.1" @@ -2365,7 +2365,7 @@ "@lerna/npm-install@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-6.4.1.tgz#99f5748cb43de9786ea2b538c94a7183d38fc476" + resolved "https://registry.npmjs.org/@lerna/npm-install/-/npm-install-6.4.1.tgz" integrity sha512-7gI1txMA9qTaT3iiuk/8/vL78wIhtbbOLhMf8m5yQ2G+3t47RUA8MNgUMsq4Zszw9C83drayqesyTf0u8BzVRg== dependencies: "@lerna/child-process" "6.4.1" @@ -2378,7 +2378,7 @@ "@lerna/npm-publish@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-6.4.1.tgz#baf07b108ae8b32932612db63206bcd5b5ee0e88" + resolved "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-6.4.1.tgz" integrity sha512-lbNEg+pThPAD8lIgNArm63agtIuCBCF3umxvgTQeLzyqUX6EtGaKJFyz/6c2ANcAuf8UfU7WQxFFbOiolibXTQ== dependencies: "@lerna/otplease" "6.4.1" @@ -2392,7 +2392,7 @@ "@lerna/npm-run-script@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-6.4.1.tgz#86db4f15d359b8a371db666aa51c9b2b87b602f3" + resolved "https://registry.npmjs.org/@lerna/npm-run-script/-/npm-run-script-6.4.1.tgz" integrity sha512-HyvwuyhrGqDa1UbI+pPbI6v+wT6I34R0PW3WCADn6l59+AyqLOCUQQr+dMW7jdYNwjO6c/Ttbvj4W58EWsaGtQ== dependencies: "@lerna/child-process" "6.4.1" @@ -2401,21 +2401,21 @@ "@lerna/otplease@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-6.4.1.tgz#9573e053c43e7139442da96fe655aa02749cb8a3" + resolved "https://registry.npmjs.org/@lerna/otplease/-/otplease-6.4.1.tgz" integrity sha512-ePUciFfFdythHNMp8FP5K15R/CoGzSLVniJdD50qm76c4ATXZHnGCW2PGwoeAZCy4QTzhlhdBq78uN0wAs75GA== dependencies: "@lerna/prompt" "6.4.1" "@lerna/output@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/output/-/output-6.4.1.tgz#327baf768b8fb63db9d52f68288d387379f814f7" + resolved "https://registry.npmjs.org/@lerna/output/-/output-6.4.1.tgz" integrity sha512-A1yRLF0bO+lhbIkrryRd6hGSD0wnyS1rTPOWJhScO/Zyv8vIPWhd2fZCLR1gI2d/Kt05qmK3T/zETTwloK7Fww== dependencies: npmlog "^6.0.2" "@lerna/pack-directory@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-6.4.1.tgz#e78aae4e7944057d8fc6cb4dd8ae50be7a95c2fd" + resolved "https://registry.npmjs.org/@lerna/pack-directory/-/pack-directory-6.4.1.tgz" integrity sha512-kBtDL9bPP72/Nl7Gqa2CA3Odb8CYY1EF2jt801f+B37TqRLf57UXQom7yF3PbWPCPmhoU+8Fc4RMpUwSbFC46Q== dependencies: "@lerna/get-packed" "6.4.1" @@ -2428,7 +2428,7 @@ "@lerna/package-graph@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-6.4.1.tgz#7a18024d531f0bd88609944e572b4861f0f8868f" + resolved "https://registry.npmjs.org/@lerna/package-graph/-/package-graph-6.4.1.tgz" integrity sha512-fQvc59stRYOqxT3Mn7g/yI9/Kw5XetJoKcW5l8XeqKqcTNDURqKnN0qaNBY6lTTLOe4cR7gfXF2l1u3HOz0qEg== dependencies: "@lerna/prerelease-id-from-version" "6.4.1" @@ -2439,7 +2439,7 @@ "@lerna/package@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/package/-/package-6.4.1.tgz#ebbd4c5f58f4b6cf77019271a686be9585272a3b" + resolved "https://registry.npmjs.org/@lerna/package/-/package-6.4.1.tgz" integrity sha512-TrOah58RnwS9R8d3+WgFFTu5lqgZs7M+e1dvcRga7oSJeKscqpEK57G0xspvF3ycjfXQwRMmEtwPmpkeEVLMzA== dependencies: load-json-file "^6.2.0" @@ -2448,14 +2448,14 @@ "@lerna/prerelease-id-from-version@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-6.4.1.tgz#65eb1835cdfd112783eea6b596812c64f535386b" + resolved "https://registry.npmjs.org/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-6.4.1.tgz" integrity sha512-uGicdMFrmfHXeC0FTosnUKRgUjrBJdZwrmw7ZWMb5DAJGOuTzrvJIcz5f0/eL3XqypC/7g+9DoTgKjX3hlxPZA== dependencies: semver "^7.3.4" "@lerna/profiler@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/profiler/-/profiler-6.4.1.tgz#0d5e017e1389e35960d671f43db7eb16337fda1b" + resolved "https://registry.npmjs.org/@lerna/profiler/-/profiler-6.4.1.tgz" integrity sha512-dq2uQxcu0aq6eSoN+JwnvHoAnjtZAVngMvywz5bTAfzz/sSvIad1v8RCpJUMBQHxaPtbfiNvOIQgDZOmCBIM4g== dependencies: fs-extra "^9.1.0" @@ -2464,7 +2464,7 @@ "@lerna/project@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/project/-/project-6.4.1.tgz#0519323aa8bde5b73fc0bf1c428385a556a445f0" + resolved "https://registry.npmjs.org/@lerna/project/-/project-6.4.1.tgz" integrity sha512-BPFYr4A0mNZ2jZymlcwwh7PfIC+I6r52xgGtJ4KIrIOB6mVKo9u30dgYJbUQxmSuMRTOnX7PJZttQQzSda4gEg== dependencies: "@lerna/package" "6.4.1" @@ -2483,7 +2483,7 @@ "@lerna/prompt@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-6.4.1.tgz#5ede06b4c8e17ec3045180b10ec5bd313cbc8585" + resolved "https://registry.npmjs.org/@lerna/prompt/-/prompt-6.4.1.tgz" integrity sha512-vMxCIgF9Vpe80PnargBGAdS/Ib58iYEcfkcXwo7mYBCxEVcaUJFKZ72FEW8rw+H5LkxBlzrBJyfKRoOe0ks9gQ== dependencies: inquirer "^8.2.4" @@ -2491,7 +2491,7 @@ "@lerna/publish@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-6.4.1.tgz#e1bdfa67297ca4a3054863e7acfc8482bf613c35" + resolved "https://registry.npmjs.org/@lerna/publish/-/publish-6.4.1.tgz" integrity sha512-/D/AECpw2VNMa1Nh4g29ddYKRIqygEV1ftV8PYXVlHpqWN7VaKrcbRU6pn0ldgpFlMyPtESfv1zS32F5CQ944w== dependencies: "@lerna/check-working-tree" "6.4.1" @@ -2525,21 +2525,21 @@ "@lerna/pulse-till-done@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-6.4.1.tgz#85c38a43939bf5e21b61091d0bcf73a1109a59db" + resolved "https://registry.npmjs.org/@lerna/pulse-till-done/-/pulse-till-done-6.4.1.tgz" integrity sha512-efAkOC1UuiyqYBfrmhDBL6ufYtnpSqAG+lT4d/yk3CzJEJKkoCwh2Hb692kqHHQ5F74Uusc8tcRB7GBcfNZRWA== dependencies: npmlog "^6.0.2" "@lerna/query-graph@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-6.4.1.tgz#3c224a49ff392d08ce8aeeaa1af4458f522a2b78" + resolved "https://registry.npmjs.org/@lerna/query-graph/-/query-graph-6.4.1.tgz" integrity sha512-gBGZLgu2x6L4d4ZYDn4+d5rxT9RNBC+biOxi0QrbaIq83I+JpHVmFSmExXK3rcTritrQ3JT9NCqb+Yu9tL9adQ== dependencies: "@lerna/package-graph" "6.4.1" "@lerna/resolve-symlink@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-6.4.1.tgz#ab42dcbd03bc4028ec77ee481c5db8884ebaf40a" + resolved "https://registry.npmjs.org/@lerna/resolve-symlink/-/resolve-symlink-6.4.1.tgz" integrity sha512-gnqltcwhWVLUxCuwXWe/ch9WWTxXRI7F0ZvCtIgdfOpbosm3f1g27VO1LjXeJN2i6ks03qqMowqy4xB4uMR9IA== dependencies: fs-extra "^9.1.0" @@ -2548,7 +2548,7 @@ "@lerna/rimraf-dir@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-6.4.1.tgz#116e379f653135b3ae955dcba703bdf212cab51a" + resolved "https://registry.npmjs.org/@lerna/rimraf-dir/-/rimraf-dir-6.4.1.tgz" integrity sha512-5sDOmZmVj0iXIiEgdhCm0Prjg5q2SQQKtMd7ImimPtWKkV0IyJWxrepJFbeQoFj5xBQF7QB5jlVNEfQfKhD6pQ== dependencies: "@lerna/child-process" "6.4.1" @@ -2558,7 +2558,7 @@ "@lerna/run-lifecycle@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-6.4.1.tgz#1eac136afae97e197bdb564e67fb385f4d346685" + resolved "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-6.4.1.tgz" integrity sha512-42VopI8NC8uVCZ3YPwbTycGVBSgukJltW5Saein0m7TIqFjwSfrcP0n7QJOr+WAu9uQkk+2kBstF5WmvKiqgEA== dependencies: "@lerna/npm-conf" "6.4.1" @@ -2568,7 +2568,7 @@ "@lerna/run-topologically@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-6.4.1.tgz#640b07d83f1d1e6d3bc36f81a74957839bb1672f" + resolved "https://registry.npmjs.org/@lerna/run-topologically/-/run-topologically-6.4.1.tgz" integrity sha512-gXlnAsYrjs6KIUGDnHM8M8nt30Amxq3r0lSCNAt+vEu2sMMEOh9lffGGaJobJZ4bdwoXnKay3uER/TU8E9owMw== dependencies: "@lerna/query-graph" "6.4.1" @@ -2576,7 +2576,7 @@ "@lerna/run@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/run/-/run-6.4.1.tgz#985279f071ff23ae15f92837f85f979a1352fc01" + resolved "https://registry.npmjs.org/@lerna/run/-/run-6.4.1.tgz" integrity sha512-HRw7kS6KNqTxqntFiFXPEeBEct08NjnL6xKbbOV6pXXf+lXUQbJlF8S7t6UYqeWgTZ4iU9caIxtZIY+EpW93mQ== dependencies: "@lerna/command" "6.4.1" @@ -2593,7 +2593,7 @@ "@lerna/symlink-binary@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-6.4.1.tgz#d8e1b653a7ae9fe38834851c66c92278e3bb25ae" + resolved "https://registry.npmjs.org/@lerna/symlink-binary/-/symlink-binary-6.4.1.tgz" integrity sha512-poZX90VmXRjL/JTvxaUQPeMDxFUIQvhBkHnH+dwW0RjsHB/2Tu4QUAsE0OlFnlWQGsAtXF4FTtW8Xs57E/19Kw== dependencies: "@lerna/create-symlink" "6.4.1" @@ -2603,7 +2603,7 @@ "@lerna/symlink-dependencies@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-6.4.1.tgz#988203cc260406b64d61294367821a0f26419ee6" + resolved "https://registry.npmjs.org/@lerna/symlink-dependencies/-/symlink-dependencies-6.4.1.tgz" integrity sha512-43W2uLlpn3TTYuHVeO/2A6uiTZg6TOk/OSKi21ujD7IfVIYcRYCwCV+8LPP12R3rzyab0JWkWnhp80Z8A2Uykw== dependencies: "@lerna/create-symlink" "6.4.1" @@ -2615,7 +2615,7 @@ "@lerna/temp-write@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/temp-write/-/temp-write-6.4.1.tgz#1c46d05b633597c77b0c5f5ab46c1315195f7786" + resolved "https://registry.npmjs.org/@lerna/temp-write/-/temp-write-6.4.1.tgz" integrity sha512-7uiGFVoTyos5xXbVQg4bG18qVEn9dFmboXCcHbMj5mc/+/QmU9QeNz/Cq36O5TY6gBbLnyj3lfL5PhzERWKMFg== dependencies: graceful-fs "^4.1.15" @@ -2626,19 +2626,19 @@ "@lerna/timer@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-6.4.1.tgz#47fe50b56bd2fc32396a2559f7bb65de8200f07d" + resolved "https://registry.npmjs.org/@lerna/timer/-/timer-6.4.1.tgz" integrity sha512-ogmjFTWwRvevZr76a2sAbhmu3Ut2x73nDIn0bcwZwZ3Qc3pHD8eITdjs/wIKkHse3J7l3TO5BFJPnrvDS7HLnw== "@lerna/validation-error@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-6.4.1.tgz#2cab92c2be395158c3d65fa57ddb73892617d7e8" + resolved "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-6.4.1.tgz" integrity sha512-fxfJvl3VgFd7eBfVMRX6Yal9omDLs2mcGKkNYeCEyt4Uwlz1B5tPAXyk/sNMfkKV2Aat/mlK5tnY13vUrMKkyA== dependencies: npmlog "^6.0.2" "@lerna/version@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/version/-/version-6.4.1.tgz#01011364df04240ce92dffed1d2fa76bb9f959ff" + resolved "https://registry.npmjs.org/@lerna/version/-/version-6.4.1.tgz" integrity sha512-1/krPq0PtEqDXtaaZsVuKev9pXJCkNC1vOo2qCcn6PBkODw/QTAvGcUi0I+BM2c//pdxge9/gfmbDo1lC8RtAQ== dependencies: "@lerna/check-working-tree" "6.4.1" @@ -2671,7 +2671,7 @@ "@lerna/write-log-file@6.4.1": version "6.4.1" - resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-6.4.1.tgz#b9b959e4b853cdabf0309bc5da1513fa025117ec" + resolved "https://registry.npmjs.org/@lerna/write-log-file/-/write-log-file-6.4.1.tgz" integrity sha512-LE4fueQSDrQo76F4/gFXL0wnGhqdG7WHVH8D8TrKouF2Afl4NHltObCm4WsSMPjcfciVnZQFfx1ruxU4r/enHQ== dependencies: npmlog "^6.0.2" @@ -2679,7 +2679,7 @@ "@manypkg/find-root@^1.1.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@manypkg/find-root/-/find-root-1.1.0.tgz#a62d8ed1cd7e7d4c11d9d52a8397460b5d4ad29f" + resolved "https://registry.npmjs.org/@manypkg/find-root/-/find-root-1.1.0.tgz" integrity sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA== dependencies: "@babel/runtime" "^7.5.5" @@ -2689,7 +2689,7 @@ "@manypkg/get-packages@^1.1.3": version "1.1.3" - resolved "https://registry.yarnpkg.com/@manypkg/get-packages/-/get-packages-1.1.3.tgz#e184db9bba792fa4693de4658cfb1463ac2c9c47" + resolved "https://registry.npmjs.org/@manypkg/get-packages/-/get-packages-1.1.3.tgz" integrity sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A== dependencies: "@babel/runtime" "^7.5.5" @@ -2701,7 +2701,7 @@ "@mapbox/node-pre-gyp@^1.0.0": version "1.0.10" - resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.10.tgz#8e6735ccebbb1581e5a7e652244cadc8a844d03c" + resolved "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.10.tgz" integrity sha512-4ySo4CjzStuprMwk35H5pPbkymjv1SF3jGLj6rAHp/xT/RF7TL7bd9CTm1xDY49K2qF7jmR/g7k+SkLETP6opA== dependencies: detect-libc "^2.0.0" @@ -2716,7 +2716,7 @@ "@nestjs/common@^9.2.1": version "9.2.1" - resolved "https://registry.yarnpkg.com/@nestjs/common/-/common-9.2.1.tgz#24de19ee85a8f1747288980fe517b12753cf66ea" + resolved "https://registry.npmjs.org/@nestjs/common/-/common-9.2.1.tgz" integrity sha512-nZuo3oDsSSlC5mti/M2aCWTEIfHPGDXmBwWgPeCpRbrNz3IWd109rkajll+yxgidVjznAdBS9y00JkAVJblNYw== dependencies: iterare "1.2.1" @@ -2725,7 +2725,7 @@ "@nestjs/core@^9.2.1": version "9.2.1" - resolved "https://registry.yarnpkg.com/@nestjs/core/-/core-9.2.1.tgz#598e51a421a0aaafc568c1a02499f7c1f9491caf" + resolved "https://registry.npmjs.org/@nestjs/core/-/core-9.2.1.tgz" integrity sha512-a9GkXuu8uXgNgCVW+17iI8kLCltO+HwHpU2IhR+32JKnN2WEQ1YEWU4t3GJ2MNq44YkjIw9zrKvFkjJBlYrNbQ== dependencies: "@nuxtjs/opencollective" "0.3.2" @@ -2738,7 +2738,7 @@ "@nestjs/platform-express@^9.2.1": version "9.2.1" - resolved "https://registry.yarnpkg.com/@nestjs/platform-express/-/platform-express-9.2.1.tgz#74b88a531239eaee3fe23af2f2912ebef313866f" + resolved "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-9.2.1.tgz" integrity sha512-7PecaXt8lrdS1p6Vb1X/am3GGv+EO1VahyDzaEGOK6C0zwhc0VPfLtwihkjjfhS6BjpRIXXgviwEjONUvxVZnA== dependencies: body-parser "1.20.1" @@ -2749,7 +2749,7 @@ "@nestjs/platform-fastify@^9.2.1": version "9.2.1" - resolved "https://registry.yarnpkg.com/@nestjs/platform-fastify/-/platform-fastify-9.2.1.tgz#d07febbc54da2ab5fcfe9c9dc0fae2934f8d54d4" + resolved "https://registry.npmjs.org/@nestjs/platform-fastify/-/platform-fastify-9.2.1.tgz" integrity sha512-vhygCrU1Q4VkgsSo9EbS5Ihn2J78ZAK+Zb4M5Bbg+DGWGyrOLbMWL/gYgGSGIV4Fe7CVzp7H9xwuCfl8oqEFNg== dependencies: "@fastify/cors" "8.2.0" @@ -2762,7 +2762,7 @@ "@nodelib/fs.scandir@2.1.5": version "2.1.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: "@nodelib/fs.stat" "2.0.5" @@ -2770,12 +2770,12 @@ "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": version "2.0.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: "@nodelib/fs.scandir" "2.1.5" @@ -2783,7 +2783,7 @@ "@npmcli/arborist@5.3.0": version "5.3.0" - resolved "https://registry.yarnpkg.com/@npmcli/arborist/-/arborist-5.3.0.tgz#321d9424677bfc08569e98a5ac445ee781f32053" + resolved "https://registry.npmjs.org/@npmcli/arborist/-/arborist-5.3.0.tgz" integrity sha512-+rZ9zgL1lnbl8Xbb1NQdMjveOMwj4lIYfcDtyJHHi5x4X8jtR6m8SXooJMZy5vmFVZ8w7A2Bnd/oX9eTuU8w5A== dependencies: "@isaacs/string-locale-compare" "^1.1.0" @@ -2823,7 +2823,7 @@ "@npmcli/arborist@^5.6.3": version "5.6.3" - resolved "https://registry.yarnpkg.com/@npmcli/arborist/-/arborist-5.6.3.tgz#40810080272e097b4a7a4f56108f4a31638a9874" + resolved "https://registry.npmjs.org/@npmcli/arborist/-/arborist-5.6.3.tgz" integrity sha512-/7hbqEM6YuRjwTcQXkK1+xKslEblY5kFQe0tZ7jKyMlIR6x4iOmhLErIkBBGtTKvYxRKdpcxnFXjCobg3UqmsA== dependencies: "@isaacs/string-locale-compare" "^1.1.0" @@ -2866,12 +2866,12 @@ "@npmcli/ci-detect@^2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@npmcli/ci-detect/-/ci-detect-2.0.0.tgz#e63c91bcd4185ac1e85720a34fc48e164ece5b89" + resolved "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-2.0.0.tgz" integrity sha512-8yQtQ9ArHh/TzdUDKQwEvwCgpDuhSWTDAbiKMl3854PcT+Dk4UmWaiawuFTLy9n5twzXOBXVflWe+90/ffXQrA== "@npmcli/config@^4.2.1": version "4.2.2" - resolved "https://registry.yarnpkg.com/@npmcli/config/-/config-4.2.2.tgz#2e3334dda84f48d059309c53d152e66b05ca24b7" + resolved "https://registry.npmjs.org/@npmcli/config/-/config-4.2.2.tgz" integrity sha512-5GNcLd+0c4bYBnFop53+26CO5GQP0R9YcxlernohpHDWdIgzUg9I0+GEMk3sNHnLntATVU39d283A4OO+W402w== dependencies: "@npmcli/map-workspaces" "^2.0.2" @@ -2885,14 +2885,14 @@ "@npmcli/disparity-colors@^2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@npmcli/disparity-colors/-/disparity-colors-2.0.0.tgz#cb518166ee21573b96241a3613fef70acb2a60ba" + resolved "https://registry.npmjs.org/@npmcli/disparity-colors/-/disparity-colors-2.0.0.tgz" integrity sha512-FFXGrIjhvd2qSZ8iS0yDvbI7nbjdyT2VNO7wotosjYZM2p2r8PN3B7Om3M5NO9KqW/OVzfzLB3L0V5Vo5QXC7A== dependencies: ansi-styles "^4.3.0" "@npmcli/fs@^1.0.0": version "1.1.1" - resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" + resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz" integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== dependencies: "@gar/promisify" "^1.0.1" @@ -2900,7 +2900,7 @@ "@npmcli/fs@^2.1.0", "@npmcli/fs@^2.1.1": version "2.1.2" - resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-2.1.2.tgz#a9e2541a4a2fec2e69c29b35e6060973da79b865" + resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz" integrity sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ== dependencies: "@gar/promisify" "^1.1.3" @@ -2908,7 +2908,7 @@ "@npmcli/git@^3.0.0": version "3.0.2" - resolved "https://registry.yarnpkg.com/@npmcli/git/-/git-3.0.2.tgz#5c5de6b4d70474cf2d09af149ce42e4e1dacb931" + resolved "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz" integrity sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w== dependencies: "@npmcli/promise-spawn" "^3.0.0" @@ -2923,7 +2923,7 @@ "@npmcli/installed-package-contents@^1.0.7": version "1.0.7" - resolved "https://registry.yarnpkg.com/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" + resolved "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz" integrity sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw== dependencies: npm-bundled "^1.1.1" @@ -2931,7 +2931,7 @@ "@npmcli/map-workspaces@^2.0.2", "@npmcli/map-workspaces@^2.0.3": version "2.0.4" - resolved "https://registry.yarnpkg.com/@npmcli/map-workspaces/-/map-workspaces-2.0.4.tgz#9e5e8ab655215a262aefabf139782b894e0504fc" + resolved "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-2.0.4.tgz" integrity sha512-bMo0aAfwhVwqoVM5UzX1DJnlvVvzDCHae821jv48L1EsrYwfOZChlqWYXEtto/+BkBXetPbEWgau++/brh4oVg== dependencies: "@npmcli/name-from-folder" "^1.0.1" @@ -2941,7 +2941,7 @@ "@npmcli/metavuln-calculator@^3.0.1": version "3.1.1" - resolved "https://registry.yarnpkg.com/@npmcli/metavuln-calculator/-/metavuln-calculator-3.1.1.tgz#9359bd72b400f8353f6a28a25c8457b562602622" + resolved "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-3.1.1.tgz" integrity sha512-n69ygIaqAedecLeVH3KnO39M6ZHiJ2dEv5A7DGvcqCB8q17BGUgW8QaanIkbWUo2aYGZqJaOORTLAlIvKjNDKA== dependencies: cacache "^16.0.0" @@ -2951,7 +2951,7 @@ "@npmcli/move-file@^1.0.1": version "1.1.2" - resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" + resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz" integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== dependencies: mkdirp "^1.0.4" @@ -2959,7 +2959,7 @@ "@npmcli/move-file@^2.0.0": version "2.0.1" - resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-2.0.1.tgz#26f6bdc379d87f75e55739bab89db525b06100e4" + resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz" integrity sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ== dependencies: mkdirp "^1.0.4" @@ -2967,31 +2967,31 @@ "@npmcli/name-from-folder@^1.0.1": version "1.0.1" - resolved "https://registry.yarnpkg.com/@npmcli/name-from-folder/-/name-from-folder-1.0.1.tgz#77ecd0a4fcb772ba6fe927e2e2e155fbec2e6b1a" + resolved "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-1.0.1.tgz" integrity sha512-qq3oEfcLFwNfEYOQ8HLimRGKlD8WSeGEdtUa7hmzpR8Sa7haL1KVQrvgO6wqMjhWFFVjgtrh1gIxDz+P8sjUaA== "@npmcli/node-gyp@^2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz#8c20e53e34e9078d18815c1d2dda6f2420d75e35" + resolved "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz" integrity sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A== "@npmcli/package-json@^2.0.0": version "2.0.0" - resolved "https://registry.yarnpkg.com/@npmcli/package-json/-/package-json-2.0.0.tgz#3bbcf4677e21055adbe673d9f08c9f9cde942e4a" + resolved "https://registry.npmjs.org/@npmcli/package-json/-/package-json-2.0.0.tgz" integrity sha512-42jnZ6yl16GzjWSH7vtrmWyJDGVa/LXPdpN2rcUWolFjc9ON2N3uz0qdBbQACfmhuJZ2lbKYtmK5qx68ZPLHMA== dependencies: json-parse-even-better-errors "^2.3.1" "@npmcli/promise-spawn@^3.0.0": version "3.0.0" - resolved "https://registry.yarnpkg.com/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz#53283b5f18f855c6925f23c24e67c911501ef573" + resolved "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz" integrity sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g== dependencies: infer-owner "^1.0.4" "@npmcli/query@^1.2.0": version "1.2.0" - resolved "https://registry.yarnpkg.com/@npmcli/query/-/query-1.2.0.tgz#46468d583cf013aa92102970700f9555314aabe4" + resolved "https://registry.npmjs.org/@npmcli/query/-/query-1.2.0.tgz" integrity sha512-uWglsUM3PjBLgTSmZ3/vygeGdvWEIZ3wTUnzGFbprC/RtvQSaT+GAXu1DXmSFj2bD3oOZdcRm1xdzsV2z1YWdw== dependencies: npm-package-arg "^9.1.0" @@ -3000,7 +3000,7 @@ "@npmcli/run-script@^4.1.0", "@npmcli/run-script@^4.1.3", "@npmcli/run-script@^4.1.7", "@npmcli/run-script@^4.2.0", "@npmcli/run-script@^4.2.1": version "4.2.1" - resolved "https://registry.yarnpkg.com/@npmcli/run-script/-/run-script-4.2.1.tgz#c07c5c71bc1c70a5f2a06b0d4da976641609b946" + resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz" integrity sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg== dependencies: "@npmcli/node-gyp" "^2.0.0" @@ -3011,14 +3011,14 @@ "@nrwl/cli@15.5.0": version "15.5.0" - resolved "https://registry.yarnpkg.com/@nrwl/cli/-/cli-15.5.0.tgz#c6aead1f0e6bb61264029766feb0452414a938bc" + resolved "https://registry.npmjs.org/@nrwl/cli/-/cli-15.5.0.tgz" integrity sha512-bHO0kn3pTARDCSDkNtRtGge2a08yWTW/Kjg1vBXqUUv5+Bwu7XndHi/Mfy87ZCxW78hedtQYSnNc84p5d7kYAg== dependencies: nx "15.5.0" "@nrwl/devkit@>=15.4.2 < 16": version "15.5.0" - resolved "https://registry.yarnpkg.com/@nrwl/devkit/-/devkit-15.5.0.tgz#42051857859dbf3c22e6aead9f0d606519911f5e" + resolved "https://registry.npmjs.org/@nrwl/devkit/-/devkit-15.5.0.tgz" integrity sha512-qJcOG1FpLhL1HpNm7kSZZ9JxGRjuwgciz2l348RZHUyFSA3fM/OeoygHS3E+Nl7OZQgjzFM3w7FtqvLJ4y5a3g== dependencies: "@phenomnomnominal/tsquery" "4.1.1" @@ -3029,14 +3029,14 @@ "@nrwl/tao@15.5.0": version "15.5.0" - resolved "https://registry.yarnpkg.com/@nrwl/tao/-/tao-15.5.0.tgz#efa930157ae0d53e3c262f027c9dcb74a9d01d07" + resolved "https://registry.npmjs.org/@nrwl/tao/-/tao-15.5.0.tgz" integrity sha512-50blIKmbjkd8JvUNkAe9nPYX1bTrPS1n5vUh5rLJAvShGSKfulORPmght5I6M8JhBtRgYOsqyqsB0s0LZll85A== dependencies: nx "15.5.0" "@nuxtjs/opencollective@0.3.2": version "0.3.2" - resolved "https://registry.yarnpkg.com/@nuxtjs/opencollective/-/opencollective-0.3.2.tgz#620ce1044f7ac77185e825e1936115bb38e2681c" + resolved "https://registry.npmjs.org/@nuxtjs/opencollective/-/opencollective-0.3.2.tgz" integrity sha512-um0xL3fO7Mf4fDxcqx9KryrB7zgRM5JSlvGN5AGkP6JLM5XEKyjeAiPbNxdXVXQ16isuAhYpvP88NgL2BGd6aA== dependencies: chalk "^4.1.0" @@ -3045,14 +3045,14 @@ "@octokit/auth-token@^3.0.0": version "3.0.2" - resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-3.0.2.tgz#a0fc8de149fd15876e1ac78f6525c1c5ab48435f" + resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.2.tgz" integrity sha512-pq7CwIMV1kmzkFTimdwjAINCXKTajZErLB4wMLYapR2nuB/Jpr66+05wOTZMSCBXP6n4DdDWT2W19Bm17vU69Q== dependencies: "@octokit/types" "^8.0.0" "@octokit/core@^4.1.0": version "4.1.0" - resolved "https://registry.yarnpkg.com/@octokit/core/-/core-4.1.0.tgz#b6b03a478f1716de92b3f4ec4fd64d05ba5a9251" + resolved "https://registry.npmjs.org/@octokit/core/-/core-4.1.0.tgz" integrity sha512-Czz/59VefU+kKDy+ZfDwtOIYIkFjExOKf+HA92aiTZJ6EfWpFzYQWw0l54ji8bVmyhc+mGaLUbSUmXazG7z5OQ== dependencies: "@octokit/auth-token" "^3.0.0" @@ -3065,7 +3065,7 @@ "@octokit/endpoint@^7.0.0": version "7.0.3" - resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-7.0.3.tgz#0b96035673a9e3bedf8bab8f7335de424a2147ed" + resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.3.tgz" integrity sha512-57gRlb28bwTsdNXq+O3JTQ7ERmBTuik9+LelgcLIVfYwf235VHbN9QNo4kXExtp/h8T423cR5iJThKtFYxC7Lw== dependencies: "@octokit/types" "^8.0.0" @@ -3074,7 +3074,7 @@ "@octokit/graphql@^5.0.0": version "5.0.4" - resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-5.0.4.tgz#519dd5c05123868276f3ae4e50ad565ed7dff8c8" + resolved "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.4.tgz" integrity sha512-amO1M5QUQgYQo09aStR/XO7KAl13xpigcy/kI8/N1PnZYSS69fgte+xA4+c2DISKqUZfsh0wwjc2FaCt99L41A== dependencies: "@octokit/request" "^6.0.0" @@ -3083,29 +3083,29 @@ "@octokit/openapi-types@^14.0.0": version "14.0.0" - resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-14.0.0.tgz#949c5019028c93f189abbc2fb42f333290f7134a" + resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-14.0.0.tgz" integrity sha512-HNWisMYlR8VCnNurDU6os2ikx0s0VyEjDYHNS/h4cgb8DeOxQ0n72HyinUtdDVxJhFy3FWLGl0DJhfEWk3P5Iw== "@octokit/plugin-enterprise-rest@^6.0.1": version "6.0.1" - resolved "https://registry.yarnpkg.com/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" + resolved "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz" integrity sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw== "@octokit/plugin-paginate-rest@^5.0.0": version "5.0.1" - resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-5.0.1.tgz#93d7e74f1f69d68ba554fa6b888c2a9cf1f99a83" + resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-5.0.1.tgz" integrity sha512-7A+rEkS70pH36Z6JivSlR7Zqepz3KVucEFVDnSrgHXzG7WLAzYwcHZbKdfTXHwuTHbkT1vKvz7dHl1+HNf6Qyw== dependencies: "@octokit/types" "^8.0.0" "@octokit/plugin-request-log@^1.0.4": version "1.0.4" - resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" + resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz" integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== "@octokit/plugin-rest-endpoint-methods@^6.7.0": version "6.7.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-6.7.0.tgz#2f6f17f25b6babbc8b41d2bb0a95a8839672ce7c" + resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-6.7.0.tgz" integrity sha512-orxQ0fAHA7IpYhG2flD2AygztPlGYNAdlzYz8yrD8NDgelPfOYoRPROfEyIe035PlxvbYrgkfUZIhSBKju/Cvw== dependencies: "@octokit/types" "^8.0.0" @@ -3113,7 +3113,7 @@ "@octokit/request-error@^3.0.0": version "3.0.2" - resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-3.0.2.tgz#f74c0f163d19463b87528efe877216c41d6deb0a" + resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.2.tgz" integrity sha512-WMNOFYrSaX8zXWoJg9u/pKgWPo94JXilMLb2VManNOby9EZxrQaBe/QSC4a1TzpAlpxofg2X/jMnCyZgL6y7eg== dependencies: "@octokit/types" "^8.0.0" @@ -3122,7 +3122,7 @@ "@octokit/request@^6.0.0": version "6.2.2" - resolved "https://registry.yarnpkg.com/@octokit/request/-/request-6.2.2.tgz#a2ba5ac22bddd5dcb3f539b618faa05115c5a255" + resolved "https://registry.npmjs.org/@octokit/request/-/request-6.2.2.tgz" integrity sha512-6VDqgj0HMc2FUX2awIs+sM6OwLgwHvAi4KCK3mT2H2IKRt6oH9d0fej5LluF5mck1lRR/rFWN0YIDSYXYSylbw== dependencies: "@octokit/endpoint" "^7.0.0" @@ -3134,7 +3134,7 @@ "@octokit/rest@^19.0.0", "@octokit/rest@^19.0.3": version "19.0.5" - resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-19.0.5.tgz#4dbde8ae69b27dca04b5f1d8119d282575818f6c" + resolved "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.5.tgz" integrity sha512-+4qdrUFq2lk7Va+Qff3ofREQWGBeoTKNqlJO+FGjFP35ZahP+nBenhZiGdu8USSgmq4Ky3IJ/i4u0xbLqHaeow== dependencies: "@octokit/core" "^4.1.0" @@ -3144,14 +3144,14 @@ "@octokit/types@^8.0.0": version "8.1.0" - resolved "https://registry.yarnpkg.com/@octokit/types/-/types-8.1.0.tgz#63f88d4b60692f450bd1ed43a2d8b96eeefdfe2f" + resolved "https://registry.npmjs.org/@octokit/types/-/types-8.1.0.tgz" integrity sha512-N4nLjzkiWBqVQqljTTsCrbvHGoWdWfcCeZjbHdggw7a9HbJMnxbK8A+UWdqwR4out30JarlSa3eqKyVK0n5aBg== dependencies: "@octokit/openapi-types" "^14.0.0" "@parcel/watcher@2.0.4": version "2.0.4" - resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.0.4.tgz#f300fef4cc38008ff4b8c29d92588eced3ce014b" + resolved "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.0.4.tgz" integrity sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg== dependencies: node-addon-api "^3.2.1" @@ -3159,14 +3159,14 @@ "@phenomnomnominal/tsquery@4.1.1": version "4.1.1" - resolved "https://registry.yarnpkg.com/@phenomnomnominal/tsquery/-/tsquery-4.1.1.tgz#42971b83590e9d853d024ddb04a18085a36518df" + resolved "https://registry.npmjs.org/@phenomnomnominal/tsquery/-/tsquery-4.1.1.tgz" integrity sha512-jjMmK1tnZbm1Jq5a7fBliM4gQwjxMU7TFoRNwIyzwlO+eHPRCFv/Nv+H/Gi1jc3WR7QURG8D5d0Tn12YGrUqBQ== dependencies: esquery "^1.0.1" "@semantic-release/changelog@^6.0.2": version "6.0.2" - resolved "https://registry.yarnpkg.com/@semantic-release/changelog/-/changelog-6.0.2.tgz#fdcdbd368788c8fcc69c4af29bf2064f4afb45f4" + resolved "https://registry.npmjs.org/@semantic-release/changelog/-/changelog-6.0.2.tgz" integrity sha512-jHqfTkoPbDEOAgAP18mGP53IxeMwxTISN+GwTRy9uLu58UjARoZU8ScCgWGeO2WPkEsm57H8AkyY02W2ntIlIw== dependencies: "@semantic-release/error" "^3.0.0" @@ -3176,7 +3176,7 @@ "@semantic-release/commit-analyzer@^9.0.2": version "9.0.2" - resolved "https://registry.yarnpkg.com/@semantic-release/commit-analyzer/-/commit-analyzer-9.0.2.tgz#a78e54f9834193b55f1073fa6258eecc9a545e03" + resolved "https://registry.npmjs.org/@semantic-release/commit-analyzer/-/commit-analyzer-9.0.2.tgz" integrity sha512-E+dr6L+xIHZkX4zNMe6Rnwg4YQrWNXK+rNsvwOPpdFppvZO1olE2fIgWhv89TkQErygevbjsZFSIxp+u6w2e5g== dependencies: conventional-changelog-angular "^5.0.0" @@ -3189,17 +3189,17 @@ "@semantic-release/error@^2.2.0": version "2.2.0" - resolved "https://registry.yarnpkg.com/@semantic-release/error/-/error-2.2.0.tgz#ee9d5a09c9969eade1ec864776aeda5c5cddbbf0" + resolved "https://registry.npmjs.org/@semantic-release/error/-/error-2.2.0.tgz" integrity sha512-9Tj/qn+y2j+sjCI3Jd+qseGtHjOAeg7dU2/lVcqIQ9TV3QDaDXDYXcoOHU+7o2Hwh8L8ymL4gfuO7KxDs3q2zg== "@semantic-release/error@^3.0.0": version "3.0.0" - resolved "https://registry.yarnpkg.com/@semantic-release/error/-/error-3.0.0.tgz#30a3b97bbb5844d695eb22f9d3aa40f6a92770c2" + resolved "https://registry.npmjs.org/@semantic-release/error/-/error-3.0.0.tgz" integrity sha512-5hiM4Un+tpl4cKw3lV4UgzJj+SmfNIDCLLw0TepzQxz9ZGV5ixnqkzIVF+3tp0ZHgcMKE+VNGHJjEeyFG2dcSw== "@semantic-release/git@^10.0.1": version "10.0.1" - resolved "https://registry.yarnpkg.com/@semantic-release/git/-/git-10.0.1.tgz#c646e55d67fae623875bf3a06a634dd434904498" + resolved "https://registry.npmjs.org/@semantic-release/git/-/git-10.0.1.tgz" integrity sha512-eWrx5KguUcU2wUPaO6sfvZI0wPafUKAMNC18aXY4EnNcrZL86dEmpNVnC9uMpGZkmZJ9EfCVJBQx4pV4EMGT1w== dependencies: "@semantic-release/error" "^3.0.0" @@ -3213,7 +3213,7 @@ "@semantic-release/github@^8.0.0": version "8.0.7" - resolved "https://registry.yarnpkg.com/@semantic-release/github/-/github-8.0.7.tgz#643aee7a5cdd2acd3ae643bb90ad4ac796901de6" + resolved "https://registry.npmjs.org/@semantic-release/github/-/github-8.0.7.tgz" integrity sha512-VtgicRIKGvmTHwm//iqTh/5NGQwsncOMR5vQK9pMT92Aem7dv37JFKKRuulUsAnUOIlO4G8wH3gPiBAA0iW0ww== dependencies: "@octokit/rest" "^19.0.0" @@ -3235,7 +3235,7 @@ "@semantic-release/npm@^9.0.0": version "9.0.1" - resolved "https://registry.yarnpkg.com/@semantic-release/npm/-/npm-9.0.1.tgz#d81828eb1fb771e2767b3a8ee989915e1af27075" + resolved "https://registry.npmjs.org/@semantic-release/npm/-/npm-9.0.1.tgz" integrity sha512-I5nVZklxBzfMFwemhRNbSrkiN/dsH3c7K9+KSk6jUnq0rdLFUuJt7EBsysq4Ir3moajQgFkfEryEHPqiKJj20g== dependencies: "@semantic-release/error" "^3.0.0" @@ -3254,7 +3254,7 @@ "@semantic-release/release-notes-generator@^10.0.0": version "10.0.3" - resolved "https://registry.yarnpkg.com/@semantic-release/release-notes-generator/-/release-notes-generator-10.0.3.tgz#85f7ca78bfa6b01fb5fda0ac48112855d69171dc" + resolved "https://registry.npmjs.org/@semantic-release/release-notes-generator/-/release-notes-generator-10.0.3.tgz" integrity sha512-k4x4VhIKneOWoBGHkx0qZogNjCldLPRiAjnIpMnlUh6PtaWXp/T+C9U7/TaNDDtgDa5HMbHl4WlREdxHio6/3w== dependencies: conventional-changelog-angular "^5.0.0" @@ -3270,7 +3270,7 @@ "@shopify/jest-koa-mocks@^3.1.0": version "3.1.5" - resolved "https://registry.yarnpkg.com/@shopify/jest-koa-mocks/-/jest-koa-mocks-3.1.5.tgz#11f77ccfbcaf35cf5ee2c6108a286e61e6bea084" + resolved "https://registry.npmjs.org/@shopify/jest-koa-mocks/-/jest-koa-mocks-3.1.5.tgz" integrity sha512-gQ3/7ELerv00TWO37AGFX5mT9CsFCS+3/UbKMuoIlKEU0QH2OX8BV9WBf/EKw7adCDNlxss0lqV6J8kf5pgr4A== dependencies: koa "^2.13.4" @@ -3278,68 +3278,68 @@ "@sinclair/typebox@^0.24.1": version "0.24.51" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.51.tgz#645f33fe4e02defe26f2f5c0410e1c094eac7f5f" + resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz" integrity sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA== "@sinonjs/commons@^1.7.0": version "1.8.6" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" + resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz" integrity sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ== dependencies: type-detect "4.0.8" "@sinonjs/fake-timers@^9.1.2": version "9.1.2" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz#4eaab737fab77332ab132d396a3c0d364bd0ea8c" + resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz" integrity sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw== dependencies: "@sinonjs/commons" "^1.7.0" "@tokenizer/token@^0.3.0": version "0.3.0" - resolved "https://registry.yarnpkg.com/@tokenizer/token/-/token-0.3.0.tgz#fe98a93fe789247e998c75e74e9c7c63217aa276" + resolved "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz" integrity sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A== "@tootallnate/once@1": version "1.1.2" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + resolved "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== "@tootallnate/once@2": version "2.0.0" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" + resolved "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz" integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== "@tsconfig/node10@^1.0.7": version "1.0.9" - resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2" + resolved "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz" integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA== "@tsconfig/node12@^1.0.7": version "1.0.11" - resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" + resolved "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz" integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== "@tsconfig/node14@^1.0.0": version "1.0.3" - resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" + resolved "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz" integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== "@tsconfig/node16@^1.0.2": version "1.0.3" - resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e" + resolved "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz" integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== "@types/accepts@*": version "1.3.5" - resolved "https://registry.yarnpkg.com/@types/accepts/-/accepts-1.3.5.tgz#c34bec115cfc746e04fe5a059df4ce7e7b391575" + resolved "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.5.tgz" integrity sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ== dependencies: "@types/node" "*" "@types/babel__core@^7.1.14": version "7.1.20" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.20.tgz#e168cdd612c92a2d335029ed62ac94c95b362359" + resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.20.tgz" integrity sha512-PVb6Bg2QuscZ30FvOU7z4guG6c926D9YRvOxEaelzndpMsvP+YM74Q/dAFASpg2l6+XLalxSGxcq/lrgYWZtyQ== dependencies: "@babel/parser" "^7.1.0" @@ -3350,14 +3350,14 @@ "@types/babel__generator@*": version "7.6.4" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" + resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz" integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== dependencies: "@babel/types" "^7.0.0" "@types/babel__template@*": version "7.4.1" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" + resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz" integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== dependencies: "@babel/parser" "^7.1.0" @@ -3365,14 +3365,14 @@ "@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": version "7.18.3" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.3.tgz#dfc508a85781e5698d5b33443416b6268c4b3e8d" + resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz" integrity sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w== dependencies: "@babel/types" "^7.3.0" "@types/body-parser@*": version "1.19.2" - resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.2.tgz#aea2059e28b7658639081347ac4fab3de166e6f0" + resolved "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz" integrity sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g== dependencies: "@types/connect" "*" @@ -3380,24 +3380,24 @@ "@types/connect@*": version "3.4.35" - resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1" + resolved "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz" integrity sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ== dependencies: "@types/node" "*" "@types/content-disposition@*": version "0.5.5" - resolved "https://registry.yarnpkg.com/@types/content-disposition/-/content-disposition-0.5.5.tgz#650820e95de346e1f84e30667d168c8fd25aa6e3" + resolved "https://registry.npmjs.org/@types/content-disposition/-/content-disposition-0.5.5.tgz" integrity sha512-v6LCdKfK6BwcqMo+wYW05rLS12S0ZO0Fl4w1h4aaZMD7bqT3gVUns6FvLJKGZHQmYn3SX55JWGpziwJRwVgutA== "@types/cookiejar@*": version "2.1.2" - resolved "https://registry.yarnpkg.com/@types/cookiejar/-/cookiejar-2.1.2.tgz#66ad9331f63fe8a3d3d9d8c6e3906dd10f6446e8" + resolved "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.2.tgz" integrity sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog== "@types/cookies@*": version "0.7.7" - resolved "https://registry.yarnpkg.com/@types/cookies/-/cookies-0.7.7.tgz#7a92453d1d16389c05a5301eef566f34946cfd81" + resolved "https://registry.npmjs.org/@types/cookies/-/cookies-0.7.7.tgz" integrity sha512-h7BcvPUogWbKCzBR2lY4oqaZbO3jXZksexYJVFvkrFeLgbZjQkU4x8pRq6eg2MHXQhY0McQdqmmsxRWlVAHooA== dependencies: "@types/connect" "*" @@ -3407,14 +3407,14 @@ "@types/debug@^4.1.7": version "4.1.7" - resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.7.tgz#7cc0ea761509124709b8b2d1090d8f6c17aadb82" + resolved "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz" integrity sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg== dependencies: "@types/ms" "*" "@types/eslint@^8.4.2": version "8.4.10" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.4.10.tgz#19731b9685c19ed1552da7052b6f668ed7eb64bb" + resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz" integrity sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw== dependencies: "@types/estree" "*" @@ -3422,12 +3422,12 @@ "@types/estree@*": version "1.0.0" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.0.tgz#5fb2e536c1ae9bf35366eed879e827fa59ca41c2" + resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz" integrity sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ== "@types/express-serve-static-core@^4.17.31": version "4.17.32" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.32.tgz#93dda387f5516af616d8d3f05f2c4c79d81e1b82" + resolved "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.32.tgz" integrity sha512-aI5h/VOkxOF2Z1saPy0Zsxs5avets/iaiAJYznQFm5By/pamU31xWKL//epiF4OfUA2qTOc9PV6tCUjhO8wlZA== dependencies: "@types/node" "*" @@ -3436,7 +3436,7 @@ "@types/express@*": version "4.17.15" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.15.tgz#9290e983ec8b054b65a5abccb610411953d417ff" + resolved "https://registry.npmjs.org/@types/express/-/express-4.17.15.tgz" integrity sha512-Yv0k4bXGOH+8a+7bELd2PqHQsuiANB+A8a4gnQrkRWzrkKlb6KHaVvyXhqs04sVW/OWlbPyYxRgYlIXLfrufMQ== dependencies: "@types/body-parser" "*" @@ -3446,48 +3446,48 @@ "@types/geojson@^7946.0.10": version "7946.0.10" - resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.10.tgz#6dfbf5ea17142f7f9a043809f1cd4c448cb68249" + resolved "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz" integrity sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA== "@types/graceful-fs@^4.1.3": version "4.1.6" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae" + resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz" integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw== dependencies: "@types/node" "*" "@types/http-assert@*": version "1.5.3" - resolved "https://registry.yarnpkg.com/@types/http-assert/-/http-assert-1.5.3.tgz#ef8e3d1a8d46c387f04ab0f2e8ab8cb0c5078661" + resolved "https://registry.npmjs.org/@types/http-assert/-/http-assert-1.5.3.tgz" integrity sha512-FyAOrDuQmBi8/or3ns4rwPno7/9tJTijVW6aQQjK02+kOQ8zmoNg2XJtAuQhvQcy1ASJq38wirX5//9J1EqoUA== "@types/http-errors@*": version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.1.tgz#20172f9578b225f6c7da63446f56d4ce108d5a65" + resolved "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.1.tgz" integrity sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ== "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" + resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz" integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== "@types/istanbul-lib-report@*": version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== dependencies: "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz" integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== dependencies: "@types/istanbul-lib-report" "*" "@types/jest@^29.2.5": version "29.2.5" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.2.5.tgz#c27f41a9d6253f288d1910d3c5f09484a56b73c0" + resolved "https://registry.npmjs.org/@types/jest/-/jest-29.2.5.tgz" integrity sha512-H2cSxkKgVmqNHXP7TC2L/WUorrZu8ZigyRywfVzv6EyBlxj39n4C00hjXYQWsbwqgElaj/CiAeSRmk5GoaKTgw== dependencies: expect "^29.0.0" @@ -3495,48 +3495,48 @@ "@types/json-api-serializer@^2.6.3": version "2.6.3" - resolved "https://registry.yarnpkg.com/@types/json-api-serializer/-/json-api-serializer-2.6.3.tgz#fc1c1afa64ad1b87abdb33ffa0359a5f5a12a5e5" + resolved "https://registry.npmjs.org/@types/json-api-serializer/-/json-api-serializer-2.6.3.tgz" integrity sha512-u+lY4YjPQ4BbwXH+W5rWopjkKESOElbnSZXaRFTfYOyw4QPOE8dX/9PeWQ8CScC8tBgCRb18hVb8vewaHwXa1A== "@types/json-schema@*", "@types/json-schema@^7.0.9": version "7.0.11" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" + resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz" integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== "@types/json5@^0.0.29": version "0.0.29" - resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== "@types/jsonwebtoken@^9.0.1": version "9.0.1" - resolved "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-9.0.1.tgz#29b1369c4774200d6d6f63135bf3d1ba3ef997a4" + resolved "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-9.0.1.tgz" integrity sha512-c5ltxazpWabia/4UzhIoaDcIza4KViOQhdbjRlfcIGVnsE3c3brkz9Z+F/EeJIECOQP7W7US2hNE930cWWkPiw== dependencies: "@types/node" "*" "@types/keygrip@*": version "1.0.2" - resolved "https://registry.yarnpkg.com/@types/keygrip/-/keygrip-1.0.2.tgz#513abfd256d7ad0bf1ee1873606317b33b1b2a72" + resolved "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.2.tgz" integrity sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw== "@types/koa-bodyparser@^4.3.10": version "4.3.10" - resolved "https://registry.yarnpkg.com/@types/koa-bodyparser/-/koa-bodyparser-4.3.10.tgz#02b8d3d57579aa7d491d553f1f4058088bfe127f" + resolved "https://registry.npmjs.org/@types/koa-bodyparser/-/koa-bodyparser-4.3.10.tgz" integrity sha512-6ae05pjhmrmGhUR8GYD5qr5p9LTEMEGfGXCsK8VaSL+totwigm8+H/7MHW7K4854CMeuwRAubT8qcc/EagaeIA== dependencies: "@types/koa" "*" "@types/koa-compose@*": version "3.2.5" - resolved "https://registry.yarnpkg.com/@types/koa-compose/-/koa-compose-3.2.5.tgz#85eb2e80ac50be95f37ccf8c407c09bbe3468e9d" + resolved "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.5.tgz" integrity sha512-B8nG/OoE1ORZqCkBVsup/AKcvjdgoHnfi4pZMn5UwAPCbhk/96xyv284eBYW8JlQbQ7zDmnpFr68I/40mFoIBQ== dependencies: "@types/koa" "*" "@types/koa@*", "@types/koa@^2.13.5": version "2.13.5" - resolved "https://registry.yarnpkg.com/@types/koa/-/koa-2.13.5.tgz#64b3ca4d54e08c0062e89ec666c9f45443b21a61" + resolved "https://registry.npmjs.org/@types/koa/-/koa-2.13.5.tgz" integrity sha512-HSUOdzKz3by4fnqagwthW/1w/yJspTgppyyalPVbgZf8jQWvdIXcVW5h2DGtw4zYntOaeRGx49r1hxoPWrD4aA== dependencies: "@types/accepts" "*" @@ -3550,120 +3550,120 @@ "@types/koa__cors@^3.3.0": version "3.3.0" - resolved "https://registry.yarnpkg.com/@types/koa__cors/-/koa__cors-3.3.0.tgz#2986b320d3d7ddf05c4e2e472b25a321cb16bd3b" + resolved "https://registry.npmjs.org/@types/koa__cors/-/koa__cors-3.3.0.tgz" integrity sha512-FUN8YxcBakIs+walVe3+HcNP+Bxd0SB8BJHBWkglZ5C1XQWljlKcEFDG/dPiCIqwVCUbc5X0nYDlH62uEhdHMA== dependencies: "@types/koa" "*" "@types/koa__router@^12.0.0": version "12.0.0" - resolved "https://registry.yarnpkg.com/@types/koa__router/-/koa__router-12.0.0.tgz#19b0f287f9708267dfd8842feb5f2de407d93af2" + resolved "https://registry.npmjs.org/@types/koa__router/-/koa__router-12.0.0.tgz" integrity sha512-S6eHyZyoWCZLNHyy8j0sMW85cPrpByCbGGU2/BO4IzGiI87aHJ92lZh4E9xfsM9DcbCT469/OIqyC0sSJXSIBQ== dependencies: "@types/koa" "*" "@types/lru-cache@^7.10.10": version "7.10.10" - resolved "https://registry.yarnpkg.com/@types/lru-cache/-/lru-cache-7.10.10.tgz#3fa937c35ff4b3f6753d5737915c9bf8e693a713" + resolved "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-7.10.10.tgz" integrity sha512-nEpVRPWW9EBmx2SCfNn3ClYxPL7IktPX12HhIoSc/H5mMjdeW3+YsXIpseLQ2xF35+OcpwKQbEUw5VtqE4PDNA== dependencies: lru-cache "*" "@types/luxon@^3.2.0": version "3.2.0" - resolved "https://registry.yarnpkg.com/@types/luxon/-/luxon-3.2.0.tgz#99901b4ab29a5fdffc88fff59b3b47fbfbe0557b" + resolved "https://registry.npmjs.org/@types/luxon/-/luxon-3.2.0.tgz" integrity sha512-lGmaGFoaXHuOLXFvuju2bfvZRqxAqkHPx9Y9IQdQABrinJJshJwfNCKV+u7rR3kJbiqfTF/NhOkcxxAFrObyaA== "@types/mdast@^3.0.0": version "3.0.10" - resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.10.tgz#4724244a82a4598884cbbe9bcfd73dff927ee8af" + resolved "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz" integrity sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA== dependencies: "@types/unist" "*" "@types/mime@*": version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/mime/-/mime-3.0.1.tgz#5f8f2bca0a5863cb69bc0b0acd88c96cb1d4ae10" + resolved "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz" integrity sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA== "@types/minimatch@^3.0.3": version "3.0.5" - resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" + resolved "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz" integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== "@types/minimist@^1.2.0": version "1.2.2" - resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" + resolved "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== "@types/ms@*": version "0.7.31" - resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.31.tgz#31b7ca6407128a3d2bbc27fe2d21b345397f6197" + resolved "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz" integrity sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA== "@types/node@*", "@types/node@^18.11.18": version "18.11.18" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.18.tgz#8dfb97f0da23c2293e554c5a50d61ef134d7697f" + resolved "https://registry.npmjs.org/@types/node/-/node-18.11.18.tgz" integrity sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA== "@types/node@^12.7.1": version "12.20.55" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" + resolved "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz" integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== "@types/node@^14.0.1": version "14.18.36" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.36.tgz#c414052cb9d43fab67d679d5f3c641be911f5835" + resolved "https://registry.npmjs.org/@types/node/-/node-14.18.36.tgz" integrity sha512-FXKWbsJ6a1hIrRxv+FoukuHnGTgEzKYGi7kilfMae96AL9UNkPFNWJEEYWzdRI9ooIkbr4AKldyuSTLql06vLQ== "@types/node@^17.0.45": version "17.0.45" - resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.45.tgz#2c0fafd78705e7a18b7906b5201a522719dc5190" + resolved "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz" integrity sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw== "@types/normalize-package-data@^2.4.0": version "2.4.1" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" + resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz" integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== "@types/object-hash@^3.0.2": version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/object-hash/-/object-hash-3.0.2.tgz#f3656433e6c6049571fc3fb3fb42f389af96c0eb" + resolved "https://registry.npmjs.org/@types/object-hash/-/object-hash-3.0.2.tgz" integrity sha512-tfyXl1JPCf2hzIDK29gO7qGqJjThKBzg/Cn3bA68R9NmWdOx+f7k5mm4to/n43BHspCwcoUC6FU4NpUoK/h9bQ== "@types/parse-json@^4.0.0": version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== "@types/prettier@^2.1.5", "@types/prettier@^2.6.0": version "2.7.2" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.2.tgz#6c2324641cc4ba050a8c710b2b251b377581fbf0" + resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz" integrity sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg== "@types/qs@*": version "6.9.7" - resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.7.tgz#63bb7d067db107cc1e457c303bc25d511febf6cb" + resolved "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz" integrity sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw== "@types/range-parser@*": version "1.2.4" - resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" + resolved "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz" integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== "@types/retry@0.12.0": version "0.12.0" - resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d" + resolved "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz" integrity sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA== "@types/semver@^7.3.12": version "7.3.13" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" + resolved "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz" integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== "@types/serve-static@*": version "1.15.0" - resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.0.tgz#c7930ff61afb334e121a9da780aac0d9b8f34155" + resolved "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz" integrity sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg== dependencies: "@types/mime" "*" @@ -3671,12 +3671,12 @@ "@types/stack-utils@^2.0.0": version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz" integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== "@types/superagent@^4.1.16": version "4.1.16" - resolved "https://registry.yarnpkg.com/@types/superagent/-/superagent-4.1.16.tgz#12c9c16f232f9d89beab91d69368f96ce8e2d881" + resolved "https://registry.npmjs.org/@types/superagent/-/superagent-4.1.16.tgz" integrity sha512-tLfnlJf6A5mB6ddqF159GqcDizfzbMUB1/DeT59/wBNqzRTNNKsaw79A/1TZ84X+f/EwWH8FeuSkjlCLyqS/zQ== dependencies: "@types/cookiejar" "*" @@ -3684,27 +3684,27 @@ "@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2": version "2.0.6" - resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.6.tgz#250a7b16c3b91f672a24552ec64678eeb1d3a08d" + resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz" integrity sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ== "@types/uuid@^9.0.0": version "9.0.0" - resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.0.tgz#53ef263e5239728b56096b0a869595135b7952d2" + resolved "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.0.tgz" integrity sha512-kr90f+ERiQtKWMz5rP32ltJ/BtULDI5RVO0uavn1HQUOwjx0R1h0rnDYNL0CepF1zL5bSY6FISAfd9tOdDhU5Q== "@types/validator@^13.7.1": version "13.7.10" - resolved "https://registry.yarnpkg.com/@types/validator/-/validator-13.7.10.tgz#f9763dc0933f8324920afa9c0790308eedf55ca7" + resolved "https://registry.npmjs.org/@types/validator/-/validator-13.7.10.tgz" integrity sha512-t1yxFAR2n0+VO6hd/FJ9F2uezAZVWHLmpmlJzm1eX03+H7+HsuTAp7L8QJs+2pQCfWkP1+EXsGK9Z9v7o/qPVQ== "@types/webidl-conversions@*": version "7.0.0" - resolved "https://registry.yarnpkg.com/@types/webidl-conversions/-/webidl-conversions-7.0.0.tgz#2b8e60e33906459219aa587e9d1a612ae994cfe7" + resolved "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.0.tgz" integrity sha512-xTE1E+YF4aWPJJeUzaZI5DRntlkY3+BCVJi0axFptnjGmAoWxkyREIh/XMrfxVLejwQxMCfDXdICo0VLxThrog== "@types/whatwg-url@^8.2.1": version "8.2.2" - resolved "https://registry.yarnpkg.com/@types/whatwg-url/-/whatwg-url-8.2.2.tgz#749d5b3873e845897ada99be4448041d4cc39e63" + resolved "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz" integrity sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA== dependencies: "@types/node" "*" @@ -3712,19 +3712,19 @@ "@types/yargs-parser@*": version "21.0.0" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" + resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz" integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== "@types/yargs@^17.0.8": version "17.0.19" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.19.tgz#8dbecdc9ab48bee0cb74f6e3327de3fa0d0c98ae" + resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.19.tgz" integrity sha512-cAx3qamwaYX9R0fzOIZAlFpo4A+1uBVCxqpKz9D26uTF4srRXaGTTsikQmaotCtNdbhzyUH7ft6p9ktz9s6UNQ== dependencies: "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^5.48.1": version "5.48.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.48.1.tgz#deee67e399f2cb6b4608c935777110e509d8018c" + resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.48.1.tgz" integrity sha512-9nY5K1Rp2ppmpb9s9S2aBiF3xo5uExCehMDmYmmFqqyxgenbHJ3qbarcLt4ITgaD6r/2ypdlcFRdcuVPnks+fQ== dependencies: "@typescript-eslint/scope-manager" "5.48.1" @@ -3739,7 +3739,7 @@ "@typescript-eslint/parser@^5.10.0", "@typescript-eslint/parser@^5.48.1": version "5.48.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.48.1.tgz#d0125792dab7e232035434ab8ef0658154db2f10" + resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.48.1.tgz" integrity sha512-4yg+FJR/V1M9Xoq56SF9Iygqm+r5LMXvheo6DQ7/yUWynQ4YfCRnsKuRgqH4EQ5Ya76rVwlEpw4Xu+TgWQUcdA== dependencies: "@typescript-eslint/scope-manager" "5.48.1" @@ -3749,7 +3749,7 @@ "@typescript-eslint/scope-manager@5.48.1": version "5.48.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.48.1.tgz#39c71e4de639f5fe08b988005beaaf6d79f9d64d" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.48.1.tgz" integrity sha512-S035ueRrbxRMKvSTv9vJKIWgr86BD8s3RqoRZmsSh/s8HhIs90g6UlK8ZabUSjUZQkhVxt7nmZ63VJ9dcZhtDQ== dependencies: "@typescript-eslint/types" "5.48.1" @@ -3757,7 +3757,7 @@ "@typescript-eslint/type-utils@5.48.1": version "5.48.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.48.1.tgz#5d94ac0c269a81a91ad77c03407cea2caf481412" + resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.48.1.tgz" integrity sha512-Hyr8HU8Alcuva1ppmqSYtM/Gp0q4JOp1F+/JH5D1IZm/bUBrV0edoewQZiEc1r6I8L4JL21broddxK8HAcZiqQ== dependencies: "@typescript-eslint/typescript-estree" "5.48.1" @@ -3767,12 +3767,12 @@ "@typescript-eslint/types@5.48.1": version "5.48.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.48.1.tgz#efd1913a9aaf67caf8a6e6779fd53e14e8587e14" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.48.1.tgz" integrity sha512-xHyDLU6MSuEEdIlzrrAerCGS3T7AA/L8Hggd0RCYBi0w3JMvGYxlLlXHeg50JI9Tfg5MrtsfuNxbS/3zF1/ATg== "@typescript-eslint/typescript-estree@5.48.1": version "5.48.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.48.1.tgz#9efa8ee2aa471c6ab62e649f6e64d8d121bc2056" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.48.1.tgz" integrity sha512-Hut+Osk5FYr+sgFh8J/FHjqX6HFcDzTlWLrFqGoK5kVUN3VBHF/QzZmAsIXCQ8T/W9nQNBTqalxi1P3LSqWnRA== dependencies: "@typescript-eslint/types" "5.48.1" @@ -3785,7 +3785,7 @@ "@typescript-eslint/utils@5.48.1", "@typescript-eslint/utils@^5.10.0": version "5.48.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.48.1.tgz#20f2f4e88e9e2a0961cbebcb47a1f0f7da7ba7f9" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.48.1.tgz" integrity sha512-SmQuSrCGUOdmGMwivW14Z0Lj8dxG1mOFZ7soeJ0TQZEJcs3n5Ndgkg0A4bcMFzBELqLJ6GTHnEU+iIoaD6hFGA== dependencies: "@types/json-schema" "^7.0.9" @@ -3799,7 +3799,7 @@ "@typescript-eslint/visitor-keys@5.48.1": version "5.48.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.48.1.tgz#79fd4fb9996023ef86849bf6f904f33eb6c8fccb" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.48.1.tgz" integrity sha512-Ns0XBwmfuX7ZknznfXozgnydyR8F6ev/KEGePP4i74uL3ArsKbEhJ7raeKr1JSa997DBDwol/4a0Y+At82c9dA== dependencies: "@typescript-eslint/types" "5.48.1" @@ -3807,12 +3807,12 @@ "@yarnpkg/lockfile@^1.1.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" + resolved "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz" integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== "@yarnpkg/parsers@^3.0.0-rc.18": version "3.0.0-rc.35" - resolved "https://registry.yarnpkg.com/@yarnpkg/parsers/-/parsers-3.0.0-rc.35.tgz#5a22f2c4e9341ca991e4331de0f0c286a0fcefab" + resolved "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.35.tgz" integrity sha512-J6ySgEdQUqAmlttvZOoXOEsrDTAnHyR/MtEvuAG5a+gwKY/2Cc7xn4CWcpgfuwkp+0a4vXmt2BDwzacDoGDN1g== dependencies: js-yaml "^3.10.0" @@ -3820,14 +3820,14 @@ "@zkochan/js-yaml@0.0.6": version "0.0.6" - resolved "https://registry.yarnpkg.com/@zkochan/js-yaml/-/js-yaml-0.0.6.tgz#975f0b306e705e28b8068a07737fa46d3fc04826" + resolved "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.6.tgz" integrity sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg== dependencies: argparse "^2.0.1" JSONStream@^1.0.4: version "1.3.5" - resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" + resolved "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz" integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== dependencies: jsonparse "^1.2.0" @@ -3835,24 +3835,24 @@ JSONStream@^1.0.4: abbrev@1, abbrev@^1.0.0, abbrev@~1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== abort-controller@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz" integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== dependencies: event-target-shim "^5.0.0" abstract-logging@^2.0.0, abstract-logging@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/abstract-logging/-/abstract-logging-2.0.1.tgz#6b0c371df212db7129b57d2e7fcf282b8bf1c839" + resolved "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz" integrity sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA== accepts@^1.3.5, accepts@^1.3.7, accepts@~1.3.8: version "1.3.8" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + resolved "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz" integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== dependencies: mime-types "~2.1.34" @@ -3860,34 +3860,34 @@ accepts@^1.3.5, accepts@^1.3.7, accepts@~1.3.8: acorn-jsx@^5.3.2: version "5.3.2" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^8.1.1: version "8.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" + resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== acorn@^8.4.1, acorn@^8.8.0: version "8.8.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz" integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== add-stream@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" + resolved "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz" integrity sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ== agent-base@6, agent-base@^6.0.2: version "6.0.2" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + resolved "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz" integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== dependencies: debug "4" agentkeepalive@^4.1.3, agentkeepalive@^4.2.1: version "4.2.1" - resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.2.1.tgz#a7975cbb9f83b367f06c90cc51ff28fe7d499717" + resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz" integrity sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA== dependencies: debug "^4.1.0" @@ -3896,7 +3896,7 @@ agentkeepalive@^4.1.3, agentkeepalive@^4.2.1: aggregate-error@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz" integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== dependencies: clean-stack "^2.0.0" @@ -3904,14 +3904,14 @@ aggregate-error@^3.0.0: ajv-formats@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" + resolved "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz" integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== dependencies: ajv "^8.0.0" ajv@^6.10.0, ajv@^6.10.2, ajv@^6.11.0, ajv@^6.12.0, ajv@^6.12.4, ajv@^6.12.6: version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" @@ -3921,7 +3921,7 @@ ajv@^6.10.0, ajv@^6.10.2, ajv@^6.11.0, ajv@^6.12.0, ajv@^6.12.4, ajv@^6.12.6: ajv@^8.0.0, ajv@^8.1.0, ajv@^8.10.0, ajv@^8.11.0: version "8.12.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + resolved "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz" integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== dependencies: fast-deep-equal "^3.1.1" @@ -3931,70 +3931,70 @@ ajv@^8.0.0, ajv@^8.1.0, ajv@^8.10.0, ajv@^8.11.0: ansi-colors@^4.1.1: version "4.1.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz" integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== ansi-escapes@^4.2.1: version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: type-fest "^0.21.3" ansi-escapes@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-5.0.0.tgz#b6a0caf0eef0c41af190e9a749e0c00ec04bb2a6" + resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-5.0.0.tgz" integrity sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA== dependencies: type-fest "^1.0.2" ansi-regex@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== ansi-regex@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz" integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== ansi-regex@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-styles@^2.2.1: version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== ansi-styles@^3.2.0, ansi-styles@^3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" ansi-styles@^4.0.0, ansi-styles@^4.1.0, ansi-styles@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" ansi-styles@^5.0.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== ansicolors@~0.3.2: version "0.3.2" - resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.3.2.tgz#665597de86a9ffe3aa9bfbe6cae5c6ea426b4979" + resolved "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz" integrity sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg== anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: normalize-path "^3.0.0" @@ -4002,22 +4002,22 @@ anymatch@^3.0.3, anymatch@~3.1.2: append-field@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/append-field/-/append-field-1.0.0.tgz#1e3440e915f0b1203d23748e78edd7b9b5b43e56" + resolved "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz" integrity sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw== "aproba@^1.0.3 || ^2.0.0", aproba@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + resolved "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz" integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== archy@^1.0.0, archy@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" + resolved "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz" integrity sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw== are-we-there-yet@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz#372e0e7bd279d8e94c653aaa1f67200884bf3e1c" + resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz" integrity sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw== dependencies: delegates "^1.0.0" @@ -4025,7 +4025,7 @@ are-we-there-yet@^2.0.0: are-we-there-yet@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz#679df222b278c64f2cdba1175cdc00b0d96164bd" + resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz" integrity sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg== dependencies: delegates "^1.0.0" @@ -4033,44 +4033,44 @@ are-we-there-yet@^3.0.0: arg@^4.1.0: version "4.1.3" - resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" + resolved "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz" integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== argparse@^1.0.7: version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" argparse@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== argv-formatter@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/argv-formatter/-/argv-formatter-1.0.0.tgz#a0ca0cbc29a5b73e836eebe1cbf6c5e0e4eb82f9" + resolved "https://registry.npmjs.org/argv-formatter/-/argv-formatter-1.0.0.tgz" integrity sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw== array-differ@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" + resolved "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz" integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== array-flatten@1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz" integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== array-ify@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" + resolved "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz" integrity sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng== array-includes@^3.1.6: version "3.1.6" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.6.tgz#9e9e720e194f198266ba9e18c29e6a9b0e4b225f" + resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz" integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw== dependencies: call-bind "^1.0.2" @@ -4081,12 +4081,12 @@ array-includes@^3.1.6: array-union@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== array.prototype.flat@^1.3.1: version "1.3.1" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz#ffc6576a7ca3efc2f46a143b9d1dda9b4b3cf5e2" + resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz" integrity sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA== dependencies: call-bind "^1.0.2" @@ -4096,7 +4096,7 @@ array.prototype.flat@^1.3.1: array.prototype.flatmap@^1.3.0: version "1.3.1" - resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz#1aae7903c2100433cb8261cd4ed310aab5c4a183" + resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz" integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ== dependencies: call-bind "^1.0.2" @@ -4106,47 +4106,47 @@ array.prototype.flatmap@^1.3.0: arrify@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz" integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== arrify@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" + resolved "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz" integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== asap@^2.0.0: version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== async@^3.2.3, async@^3.2.4: version "3.2.4" - resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" + resolved "https://registry.npmjs.org/async/-/async-3.2.4.tgz" integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== asynckit@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== at-least-node@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + resolved "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz" integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== atomic-sleep@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" + resolved "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz" integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== available-typed-arrays@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" + resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz" integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== avvio@^6.5.0: version "6.5.0" - resolved "https://registry.yarnpkg.com/avvio/-/avvio-6.5.0.tgz#d2cf119967fe90d2156afc29de350ced800cdaab" + resolved "https://registry.npmjs.org/avvio/-/avvio-6.5.0.tgz" integrity sha512-BmzcZ7gFpyFJsW8G+tfQw8vJNUboA9SDkkHLZ9RAALhvw/rplfWwni8Ee1rA11zj/J7/E5EvZmweusVvTHjWCA== dependencies: archy "^1.0.0" @@ -4155,7 +4155,7 @@ avvio@^6.5.0: avvio@^7.1.2: version "7.2.5" - resolved "https://registry.yarnpkg.com/avvio/-/avvio-7.2.5.tgz#65ba255f10b0bea7ac6eded71a5344cd88f5de19" + resolved "https://registry.npmjs.org/avvio/-/avvio-7.2.5.tgz" integrity sha512-AOhBxyLVdpOad3TujtC9kL/9r3HnTkxwQ5ggOsYrvvZP1cCFvzHWJd5XxZDFuTn+IN8vkKSG5SEJrd27vCSbeA== dependencies: archy "^1.0.0" @@ -4165,7 +4165,7 @@ avvio@^7.1.2: avvio@^8.2.0: version "8.2.0" - resolved "https://registry.yarnpkg.com/avvio/-/avvio-8.2.0.tgz#aff28b0266617bf07ffc1c2d5f4220c3663ce1c2" + resolved "https://registry.npmjs.org/avvio/-/avvio-8.2.0.tgz" integrity sha512-bbCQdg7bpEv6kGH41RO/3B2/GMMmJSo2iBK+X8AWN9mujtfUipMDfIjsgHCfpnKqoGEQrrmCDKSa5OQ19+fDmg== dependencies: archy "^1.0.0" @@ -4174,7 +4174,7 @@ avvio@^8.2.0: axios@^1.0.0: version "1.2.2" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.2.2.tgz#72681724c6e6a43a9fea860fc558127dbe32f9f1" + resolved "https://registry.npmjs.org/axios/-/axios-1.2.2.tgz" integrity sha512-bz/J4gS2S3I7mpN/YZfGFTqhXTYzRho8Ay38w2otuuDR322KzFIWm/4W2K6gIwvWaws5n+mnb7D1lN9uD+QH6Q== dependencies: follow-redirects "^1.15.0" @@ -4183,7 +4183,7 @@ axios@^1.0.0: babel-jest@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.3.1.tgz#05c83e0d128cd48c453eea851482a38782249f44" + resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.3.1.tgz" integrity sha512-aard+xnMoxgjwV70t0L6wkW/3HQQtV+O0PEimxKgzNqCJnbYmroPojdP2tqKSOAt8QAKV/uSZU8851M7B5+fcA== dependencies: "@jest/transform" "^29.3.1" @@ -4196,7 +4196,7 @@ babel-jest@^29.3.1: babel-plugin-istanbul@^6.1.1: version "6.1.1" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz" integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -4207,7 +4207,7 @@ babel-plugin-istanbul@^6.1.1: babel-plugin-jest-hoist@^29.2.0: version "29.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.2.0.tgz#23ee99c37390a98cfddf3ef4a78674180d823094" + resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.2.0.tgz" integrity sha512-TnspP2WNiR3GLfCsUNHqeXw0RoQ2f9U5hQ5L3XFpwuO8htQmSrhh8qsB6vi5Yi8+kuynN1yjDjQsPfkebmB6ZA== dependencies: "@babel/template" "^7.3.3" @@ -4217,7 +4217,7 @@ babel-plugin-jest-hoist@^29.2.0: babel-preset-current-node-syntax@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz" integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== dependencies: "@babel/plugin-syntax-async-generators" "^7.8.4" @@ -4235,7 +4235,7 @@ babel-preset-current-node-syntax@^1.0.0: babel-preset-jest@^29.2.0: version "29.2.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.2.0.tgz#3048bea3a1af222e3505e4a767a974c95a7620dc" + resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.2.0.tgz" integrity sha512-z9JmMJppMxNv8N7fNRHvhMg9cvIkMxQBXgFkane3yKVEvEOP+kB50lk8DFRvF9PGqbyXxlmebKWhuDORO8RgdA== dependencies: babel-plugin-jest-hoist "^29.2.0" @@ -4243,27 +4243,27 @@ babel-preset-jest@^29.2.0: bail@^1.0.0: version "1.0.5" - resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" + resolved "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz" integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== base64-js@^1.3.1: version "1.5.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== before-after-hook@^2.2.0: version "2.2.3" - resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c" + resolved "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz" integrity sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ== bin-links@^3.0.0, bin-links@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/bin-links/-/bin-links-3.0.3.tgz#3842711ef3db2cd9f16a5f404a996a12db355a6e" + resolved "https://registry.npmjs.org/bin-links/-/bin-links-3.0.3.tgz" integrity sha512-zKdnMPWEdh4F5INR07/eBrodC7QrF5JKvqskjz/ZZRXg5YSAZIbn8zGhbhUrElzHBZ2fvEQdOU59RHcTG3GiwA== dependencies: cmd-shim "^5.0.0" @@ -4275,12 +4275,12 @@ bin-links@^3.0.0, bin-links@^3.0.3: binary-extensions@^2.0.0, binary-extensions@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== bl@^4.0.3, bl@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" + resolved "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz" integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== dependencies: buffer "^5.5.0" @@ -4289,7 +4289,7 @@ bl@^4.0.3, bl@^4.1.0: bl@^5.0.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/bl/-/bl-5.1.0.tgz#183715f678c7188ecef9fe475d90209400624273" + resolved "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz" integrity sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ== dependencies: buffer "^6.0.3" @@ -4298,12 +4298,12 @@ bl@^5.0.0: blork@^9.3.0: version "9.3.0" - resolved "https://registry.yarnpkg.com/blork/-/blork-9.3.0.tgz#6c0b4fbb6b754998ae5460c26463d95c635e4a35" + resolved "https://registry.npmjs.org/blork/-/blork-9.3.0.tgz" integrity sha512-9naBrHS2bwCQeGqGR9ptcoll6utsox9jtk1E0SwOAFa4RCV/IQHoBJARdi8AhHQTPPoWkjixMrzHvQKAV5Fx2A== body-parser@1.20.1: version "1.20.1" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668" + resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz" integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw== dependencies: bytes "3.1.2" @@ -4321,22 +4321,22 @@ body-parser@1.20.1: boolbase@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz" integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== bottleneck@^2.18.1: version "2.19.5" - resolved "https://registry.yarnpkg.com/bottleneck/-/bottleneck-2.19.5.tgz#5df0b90f59fd47656ebe63c78a98419205cadd91" + resolved "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz" integrity sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw== bowser@^2.11.0: version "2.11.0" - resolved "https://registry.yarnpkg.com/bowser/-/bowser-2.11.0.tgz#5ca3c35757a7aa5771500c70a73a9f91ef420a8f" + resolved "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz" integrity sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA== brace-expansion@^1.1.7: version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" @@ -4344,21 +4344,21 @@ brace-expansion@^1.1.7: brace-expansion@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz" integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== dependencies: balanced-match "^1.0.0" braces@^3.0.1, braces@^3.0.2, braces@~3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" browserslist@^4.21.3: version "4.21.4" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.4.tgz#e7496bbc67b9e39dd0f98565feccdcb0d4ff6987" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz" integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw== dependencies: caniuse-lite "^1.0.30001400" @@ -4368,41 +4368,41 @@ browserslist@^4.21.3: bs-logger@0.x: version "0.2.6" - resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + resolved "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz" integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== dependencies: fast-json-stable-stringify "2.x" bser@2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz" integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== dependencies: node-int64 "^0.4.0" bson@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/bson/-/bson-5.0.1.tgz#4cd3eeeabf6652ef0d6ab600f9a18212d39baac3" + resolved "https://registry.npmjs.org/bson/-/bson-5.0.1.tgz" integrity sha512-y09gBGusgHtinMon/GVbv1J6FrXhnr/+6hqLlSmEFzkz6PodqF6TxjyvfvY3AfO+oG1mgUtbC86xSbOlwvM62Q== buffer-equal-constant-time@1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" + resolved "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz" integrity sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA== buffer-from@^1.0.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== buffer-writer@2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-2.0.0.tgz#ce7eb81a38f7829db09c873f2fbb792c0c98ec04" + resolved "https://registry.npmjs.org/buffer-writer/-/buffer-writer-2.0.0.tgz" integrity sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw== buffer@^5.5.0: version "5.7.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + resolved "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz" integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== dependencies: base64-js "^1.3.1" @@ -4410,7 +4410,7 @@ buffer@^5.5.0: buffer@^6.0.3: version "6.0.3" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + resolved "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz" integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== dependencies: base64-js "^1.3.1" @@ -4418,36 +4418,36 @@ buffer@^6.0.3: builtins@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" + resolved "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz" integrity sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ== builtins@^5.0.0: version "5.0.1" - resolved "https://registry.yarnpkg.com/builtins/-/builtins-5.0.1.tgz#87f6db9ab0458be728564fa81d876d8d74552fa9" + resolved "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz" integrity sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ== dependencies: semver "^7.0.0" busboy@^1.0.0: version "1.6.0" - resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" + resolved "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz" integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== dependencies: streamsearch "^1.1.0" byte-size@^7.0.0: version "7.0.1" - resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-7.0.1.tgz#b1daf3386de7ab9d706b941a748dbfc71130dee3" + resolved "https://registry.npmjs.org/byte-size/-/byte-size-7.0.1.tgz" integrity sha512-crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A== bytes@3.1.2: version "3.1.2" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" + resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== cacache@^15.2.0: version "15.3.0" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" + resolved "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz" integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== dependencies: "@npmcli/fs" "^1.0.0" @@ -4471,7 +4471,7 @@ cacache@^15.2.0: cacache@^16.0.0, cacache@^16.0.6, cacache@^16.1.0, cacache@^16.1.3: version "16.1.3" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-16.1.3.tgz#a02b9f34ecfaf9a78c9f4bc16fceb94d5d67a38e" + resolved "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz" integrity sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ== dependencies: "@npmcli/fs" "^2.1.0" @@ -4495,7 +4495,7 @@ cacache@^16.0.0, cacache@^16.0.6, cacache@^16.1.0, cacache@^16.1.3: cache-content-type@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-content-type/-/cache-content-type-1.0.1.tgz#035cde2b08ee2129f4a8315ea8f00a00dba1453c" + resolved "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz" integrity sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA== dependencies: mime-types "^2.1.18" @@ -4503,7 +4503,7 @@ cache-content-type@^1.0.0: call-bind@^1.0.0, call-bind@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== dependencies: function-bind "^1.1.1" @@ -4511,12 +4511,12 @@ call-bind@^1.0.0, call-bind@^1.0.2: callsites@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== camelcase-keys@^6.2.2: version "6.2.2" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" + resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz" integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== dependencies: camelcase "^5.3.1" @@ -4525,22 +4525,22 @@ camelcase-keys@^6.2.2: camelcase@^5.3.1: version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== camelcase@^6.2.0: version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001400: version "1.0.30001444" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001444.tgz#c0a530776eb44d933b493de1d05346f2527b30fc" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001444.tgz" integrity sha512-ecER9xgJQVMqcrxThKptsW0pPxSae8R2RB87LNa+ivW9ppNWRHEplXcDzkCOP4LYWGj8hunXLqaiC41iBATNyg== cardinal@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/cardinal/-/cardinal-2.1.1.tgz#7cc1055d822d212954d07b085dea251cc7bc5505" + resolved "https://registry.npmjs.org/cardinal/-/cardinal-2.1.1.tgz" integrity sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw== dependencies: ansicolors "~0.3.2" @@ -4548,12 +4548,12 @@ cardinal@^2.1.1: ccount@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.1.0.tgz#246687debb6014735131be8abab2d93898f8d043" + resolved "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz" integrity sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg== chalk@4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz" integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== dependencies: ansi-styles "^4.1.0" @@ -4561,7 +4561,7 @@ chalk@4.1.0: chalk@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + resolved "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== dependencies: ansi-styles "^2.2.1" @@ -4572,7 +4572,7 @@ chalk@^1.1.3: chalk@^2.0.0, chalk@^2.3.2: version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: ansi-styles "^3.2.1" @@ -4581,7 +4581,7 @@ chalk@^2.0.0, chalk@^2.3.2: chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: ansi-styles "^4.1.0" @@ -4589,37 +4589,37 @@ chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: chalk@^5.0.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.2.0.tgz#249623b7d66869c673699fb66d65723e54dfcfb3" + resolved "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz" integrity sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA== char-regex@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + resolved "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz" integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== character-entities-legacy@^1.0.0: version "1.1.4" - resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" + resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz" integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== character-entities@^1.0.0: version "1.2.4" - resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" + resolved "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz" integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== character-reference-invalid@^1.0.0: version "1.1.4" - resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" + resolved "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz" integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== chardet@^0.7.0: version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== cheerio-select@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-2.1.0.tgz#4d8673286b8126ca2a8e42740d5e3c4884ae21b4" + resolved "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz" integrity sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g== dependencies: boolbase "^1.0.0" @@ -4631,7 +4631,7 @@ cheerio-select@^2.1.0: cheerio@^1.0.0-rc.10: version "1.0.0-rc.12" - resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.12.tgz#788bf7466506b1c6bf5fae51d24a2c4d62e47683" + resolved "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz" integrity sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q== dependencies: cheerio-select "^2.1.0" @@ -4644,7 +4644,7 @@ cheerio@^1.0.0-rc.10: chokidar@^3.5.2: version "3.5.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== dependencies: anymatch "~3.1.2" @@ -4659,39 +4659,39 @@ chokidar@^3.5.2: chownr@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + resolved "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz" integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== ci-info@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== ci-info@^3.2.0: version "3.7.1" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.7.1.tgz#708a6cdae38915d597afdf3b145f2f8e1ff55f3f" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz" integrity sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w== cidr-regex@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/cidr-regex/-/cidr-regex-3.1.1.tgz#ba1972c57c66f61875f18fd7dd487469770b571d" + resolved "https://registry.npmjs.org/cidr-regex/-/cidr-regex-3.1.1.tgz" integrity sha512-RBqYd32aDwbCMFJRL6wHOlDNYJsPNTt8vC82ErHF5vKt8QQzxm1FrkW8s/R5pVrXMf17sba09Uoy91PKiddAsw== dependencies: ip-regex "^4.1.0" cjs-module-lexer@^1.0.0: version "1.2.2" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" + resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz" integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== clean-stack@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== cli-columns@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/cli-columns/-/cli-columns-4.0.0.tgz#9fe4d65975238d55218c41bd2ed296a7fa555646" + resolved "https://registry.npmjs.org/cli-columns/-/cli-columns-4.0.0.tgz" integrity sha512-XW2Vg+w+L9on9wtwKpyzluIPCWXjaBahI7mTcYjx+BVIYD9c3yqcv/yKC7CmdCZat4rq2yiE1UMSJC5ivKfMtQ== dependencies: string-width "^4.2.3" @@ -4699,24 +4699,24 @@ cli-columns@^4.0.0: cli-cursor@3.1.0, cli-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz" integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== dependencies: restore-cursor "^3.1.0" cli-spinners@2.6.1: version "2.6.1" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" + resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz" integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== cli-spinners@^2.5.0: version "2.7.0" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" + resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz" integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== cli-table3@^0.6.1, cli-table3@^0.6.2: version "0.6.3" - resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.3.tgz#61ab765aac156b52f222954ffc607a6f01dbeeb2" + resolved "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz" integrity sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg== dependencies: string-width "^4.2.0" @@ -4725,12 +4725,12 @@ cli-table3@^0.6.1, cli-table3@^0.6.2: cli-width@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" + resolved "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz" integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== cliui@^7.0.2: version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== dependencies: string-width "^4.2.0" @@ -4739,7 +4739,7 @@ cliui@^7.0.2: cliui@^8.0.1: version "8.0.1" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + resolved "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz" integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== dependencies: string-width "^4.2.0" @@ -4748,7 +4748,7 @@ cliui@^8.0.1: clone-deep@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + resolved "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz" integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== dependencies: is-plain-object "^2.0.4" @@ -4757,19 +4757,19 @@ clone-deep@^4.0.1: clone@^1.0.2: version "1.0.4" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + resolved "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz" integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== cmd-shim@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-5.0.0.tgz#8d0aaa1a6b0708630694c4dbde070ed94c707724" + resolved "https://registry.npmjs.org/cmd-shim/-/cmd-shim-5.0.0.tgz" integrity sha512-qkCtZ59BidfEwHltnJwkyVZn+XQojdAySM1D1gSeh11Z4pW1Kpolkyo53L5noc0nrxmIvyFwTmJRo4xs7FFLPw== dependencies: mkdirp-infer-owner "^2.0.0" co-body@^6.0.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/co-body/-/co-body-6.1.0.tgz#d87a8efc3564f9bfe3aced8ef5cd04c7a8766547" + resolved "https://registry.npmjs.org/co-body/-/co-body-6.1.0.tgz" integrity sha512-m7pOT6CdLN7FuXUcpuz/8lfQ/L77x8SchHCF4G0RBTJO20Wzmhn5Sp4/5WsKy8OSpifBSUrmg83qEqaDHdyFuQ== dependencies: inflation "^2.0.0" @@ -4779,46 +4779,46 @@ co-body@^6.0.0: co@^4.6.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz" integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== collect-v8-coverage@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" + resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz" integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" color-convert@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: color-name "~1.1.4" color-name@1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== color-name@~1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== color-support@^1.1.2, color-support@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + resolved "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== columnify@^1.6.0: version "1.6.0" - resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.6.0.tgz#6989531713c9008bb29735e61e37acf5bd553cf3" + resolved "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz" integrity sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q== dependencies: strip-ansi "^6.0.1" @@ -4826,29 +4826,29 @@ columnify@^1.6.0: combined-stream@^1.0.8: version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" commander@^6.2.0: version "6.2.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" + resolved "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz" integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== common-ancestor-path@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz#4f7d2d1394d91b7abdf51871c62f71eadb0182a7" + resolved "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz" integrity sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w== common-tags@^1.4.0: version "1.8.2" - resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.2.tgz#94ebb3c076d26032745fd54face7f688ef5ac9c6" + resolved "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz" integrity sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA== compare-func@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3" + resolved "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz" integrity sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA== dependencies: array-ify "^1.0.0" @@ -4856,17 +4856,17 @@ compare-func@^2.0.0: component-emitter@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz" integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== concat-map@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== concat-stream@^1.5.2: version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz" integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== dependencies: buffer-from "^1.0.0" @@ -4876,7 +4876,7 @@ concat-stream@^1.5.2: concat-stream@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" + resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz" integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== dependencies: buffer-from "^1.0.0" @@ -4886,7 +4886,7 @@ concat-stream@^2.0.0: config-chain@^1.1.12: version "1.1.13" - resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" + resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz" integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== dependencies: ini "^1.3.4" @@ -4894,34 +4894,34 @@ config-chain@^1.1.12: confusing-browser-globals@^1.0.10: version "1.0.11" - resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz#ae40e9b57cdd3915408a2805ebd3a5585608dc81" + resolved "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz" integrity sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA== consola@^2.15.0: version "2.15.3" - resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" + resolved "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz" integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw== console-control-strings@^1.0.0, console-control-strings@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + resolved "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz" integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== content-disposition@0.5.4, content-disposition@^0.5.3, content-disposition@~0.5.2: version "0.5.4" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" + resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz" integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== dependencies: safe-buffer "5.2.1" content-type@^1.0.4, content-type@~1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz" integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== conventional-changelog-angular@^5.0.0, conventional-changelog-angular@^5.0.11, conventional-changelog-angular@^5.0.12: version "5.0.13" - resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" + resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz" integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA== dependencies: compare-func "^2.0.0" @@ -4929,7 +4929,7 @@ conventional-changelog-angular@^5.0.0, conventional-changelog-angular@^5.0.11, c conventional-changelog-conventionalcommits@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-5.0.0.tgz#41bdce54eb65a848a4a3ffdca93e92fa22b64a86" + resolved "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-5.0.0.tgz" integrity sha512-lCDbA+ZqVFQGUj7h9QBKoIpLhl8iihkO0nCTyRNzuXtcd7ubODpYB04IFy31JloiJgG0Uovu8ot8oxRzn7Nwtw== dependencies: compare-func "^2.0.0" @@ -4938,7 +4938,7 @@ conventional-changelog-conventionalcommits@^5.0.0: conventional-changelog-core@^4.2.4: version "4.2.4" - resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz#e50d047e8ebacf63fac3dc67bf918177001e1e9f" + resolved "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz" integrity sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg== dependencies: add-stream "^1.0.0" @@ -4958,12 +4958,12 @@ conventional-changelog-core@^4.2.4: conventional-changelog-preset-loader@^2.3.4: version "2.3.4" - resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz#14a855abbffd59027fd602581f1f34d9862ea44c" + resolved "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz" integrity sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g== conventional-changelog-writer@^5.0.0: version "5.0.1" - resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-5.0.1.tgz#e0757072f045fe03d91da6343c843029e702f359" + resolved "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-5.0.1.tgz" integrity sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ== dependencies: conventional-commits-filter "^2.0.7" @@ -4978,7 +4978,7 @@ conventional-changelog-writer@^5.0.0: conventional-commits-filter@^2.0.0, conventional-commits-filter@^2.0.7: version "2.0.7" - resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz#f8d9b4f182fce00c9af7139da49365b136c8a0b3" + resolved "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz" integrity sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA== dependencies: lodash.ismatch "^4.4.0" @@ -4986,7 +4986,7 @@ conventional-commits-filter@^2.0.0, conventional-commits-filter@^2.0.7: conventional-commits-parser@^3.2.0, conventional-commits-parser@^3.2.2, conventional-commits-parser@^3.2.3: version "3.2.4" - resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz#a7d3b77758a202a9b2293d2112a8d8052c740972" + resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz" integrity sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q== dependencies: JSONStream "^1.0.4" @@ -4998,7 +4998,7 @@ conventional-commits-parser@^3.2.0, conventional-commits-parser@^3.2.2, conventi conventional-recommended-bump@^6.1.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz#cfa623285d1de554012f2ffde70d9c8a22231f55" + resolved "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz" integrity sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw== dependencies: concat-stream "^2.0.0" @@ -5012,37 +5012,37 @@ conventional-recommended-bump@^6.1.0: convert-source-map@^1.6.0, convert-source-map@^1.7.0: version "1.9.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== convert-source-map@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== cookie-signature@1.0.6: version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + resolved "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz" integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== cookie@0.5.0, cookie@^0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" + resolved "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz" integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== cookie@^0.4.0: version "0.4.2" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" + resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz" integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== cookiejar@^2.1.3: version "2.1.4" - resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.4.tgz#ee669c1fea2cf42dc31585469d193fef0d65771b" + resolved "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz" integrity sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw== cookies@~0.8.0: version "0.8.0" - resolved "https://registry.yarnpkg.com/cookies/-/cookies-0.8.0.tgz#1293ce4b391740a8406e3c9870e828c4b54f3f90" + resolved "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz" integrity sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow== dependencies: depd "~2.0.0" @@ -5050,17 +5050,17 @@ cookies@~0.8.0: copy-to@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/copy-to/-/copy-to-2.0.1.tgz#2680fbb8068a48d08656b6098092bdafc906f4a5" + resolved "https://registry.npmjs.org/copy-to/-/copy-to-2.0.1.tgz" integrity sha512-3DdaFaU/Zf1AnpLiFDeNCD4TOWe3Zl2RZaTzUvWiIk5ERzcCodOE20Vqq4fzCbNoHURFHT4/us/Lfq+S2zyY4w== core-util-is@~1.0.0: version "1.0.3" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== cors@2.8.5: version "2.8.5" - resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" + resolved "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz" integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g== dependencies: object-assign "^4" @@ -5068,12 +5068,12 @@ cors@2.8.5: cosmiconfig-typescript-loader@^4.0.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.3.0.tgz#c4259ce474c9df0f32274ed162c0447c951ef073" + resolved "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.3.0.tgz" integrity sha512-NTxV1MFfZDLPiBMjxbHRwSh5LaLcPMwNdCutmnHJCKoVnlvldPWlllonKwrsRJ5pYZBIBGRWWU2tfvzxgeSW5Q== cosmiconfig@^7.0.0, cosmiconfig@^7.0.1: version "7.1.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" + resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz" integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== dependencies: "@types/parse-json" "^4.0.0" @@ -5084,7 +5084,7 @@ cosmiconfig@^7.0.0, cosmiconfig@^7.0.1: cosmiconfig@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.0.0.tgz#e9feae014eab580f858f8a0288f38997a7bebe97" + resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.0.0.tgz" integrity sha512-da1EafcpH6b/TD8vDRaWV7xFINlHlF6zKsGwS1TsuVJTZRkquaS5HTMq7uq6h31619QjbsYl21gVDOm32KM1vQ== dependencies: import-fresh "^3.2.1" @@ -5094,12 +5094,12 @@ cosmiconfig@^8.0.0: create-require@^1.1.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" + resolved "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz" integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" @@ -5108,12 +5108,12 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: crypto-random-string@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" + resolved "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz" integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== css-select@^5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.1.0.tgz#b8ebd6554c3637ccc76688804ad3f6a6fdaea8a6" + resolved "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz" integrity sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg== dependencies: boolbase "^1.0.0" @@ -5124,53 +5124,53 @@ css-select@^5.1.0: css-what@^6.1.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" + resolved "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz" integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== cssesc@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== dargs@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" + resolved "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz" integrity sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg== dateformat@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" + resolved "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== debug@2.6.9: version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" debug@4, debug@4.x, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4: version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" debug@^3.2.6, debug@^3.2.7: version "3.2.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" debuglog@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" + resolved "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz" integrity sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw== decamelize-keys@^1.1.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.1.tgz#04a2d523b2f18d80d0158a43b895d56dff8d19d8" + resolved "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz" integrity sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg== dependencies: decamelize "^1.1.0" @@ -5178,49 +5178,49 @@ decamelize-keys@^1.1.0: decamelize@^1.1.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== dedent@^0.7.0: version "0.7.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + resolved "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz" integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA== deep-equal@~1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz" integrity sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw== deep-extend@^0.6.0: version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== deep-is@^0.1.3: version "0.1.4" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== deepmerge@^4.2.2: version "4.2.2" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" + resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== defaults@^1.0.3: version "1.0.4" - resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a" + resolved "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz" integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A== dependencies: clone "^1.0.2" define-lazy-prop@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" + resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== define-properties@^1.1.3, define-properties@^1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1" + resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz" integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== dependencies: has-property-descriptors "^1.0.0" @@ -5228,7 +5228,7 @@ define-properties@^1.1.3, define-properties@^1.1.4: del@^6.0.0: version "6.1.1" - resolved "https://registry.yarnpkg.com/del/-/del-6.1.1.tgz#3b70314f1ec0aa325c6b14eb36b95786671edb7a" + resolved "https://registry.npmjs.org/del/-/del-6.1.1.tgz" integrity sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg== dependencies: globby "^11.0.1" @@ -5242,62 +5242,62 @@ del@^6.0.0: delayed-stream@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== delegates@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz" integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== denque@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/denque/-/denque-2.1.0.tgz#e93e1a6569fb5e66f16a3c2a2964617d349d6ab1" + resolved "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz" integrity sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw== depd@2.0.0, depd@^2.0.0, depd@~2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== depd@^1.1.0, depd@^1.1.2, depd@~1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== deprecation@^2.0.0, deprecation@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" + resolved "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz" integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== destroy@1.2.0, destroy@^1.0.4: version "1.2.0" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz" integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== detect-indent@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz" integrity sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g== detect-indent@^6.0.0, detect-indent@^6.1.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz" integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== detect-libc@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.1.tgz#e1897aa88fa6ad197862937fbc0441ef352ee0cd" + resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz" integrity sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w== detect-newline@^3.0.0, detect-newline@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== dezalgo@^1.0.0, dezalgo@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.4.tgz#751235260469084c132157dfa857f386d4c33d81" + resolved "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz" integrity sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig== dependencies: asap "^2.0.0" @@ -5305,48 +5305,48 @@ dezalgo@^1.0.0, dezalgo@^1.0.4: diff-sequences@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.3.1.tgz#104b5b95fe725932421a9c6e5b4bef84c3f2249e" + resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.3.1.tgz" integrity sha512-hlM3QR272NXCi4pq+N4Kok4kOp6EsgOM3ZSpJI7Da3UAs+Ttsi8MRmB6trM/lhyzUxGfOgnpkHtgqm5Q/CTcfQ== diff@^4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" + resolved "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== diff@^5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-5.1.0.tgz#bc52d298c5ea8df9194800224445ed43ffc87e40" + resolved "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz" integrity sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw== dir-glob@^3.0.0, dir-glob@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== dependencies: path-type "^4.0.0" dlv@^1.1.0: version "1.1.3" - resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" + resolved "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz" integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== doctrine@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== dependencies: esutils "^2.0.2" doctrine@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== dependencies: esutils "^2.0.2" dom-serializer@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53" + resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz" integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg== dependencies: domelementtype "^2.3.0" @@ -5355,19 +5355,19 @@ dom-serializer@^2.0.0: domelementtype@^2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" + resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== domhandler@^5.0.1, domhandler@^5.0.2, domhandler@^5.0.3: version "5.0.3" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" + resolved "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz" integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== dependencies: domelementtype "^2.3.0" domutils@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.0.1.tgz#696b3875238338cb186b6c0612bd4901c89a4f1c" + resolved "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz" integrity sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q== dependencies: dom-serializer "^2.0.0" @@ -5376,113 +5376,113 @@ domutils@^3.0.1: dot-prop@^5.1.0: version "5.3.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" + resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz" integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== dependencies: is-obj "^2.0.0" dot-prop@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" + resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz" integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA== dependencies: is-obj "^2.0.0" dotenv@^16.0.3: version "16.0.3" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.3.tgz#115aec42bac5053db3c456db30cc243a5a836a07" + resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz" integrity sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ== dotenv@~10.0.0: version "10.0.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" + resolved "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz" integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== dottie@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/dottie/-/dottie-2.0.2.tgz#cc91c0726ce3a054ebf11c55fbc92a7f266dd154" + resolved "https://registry.npmjs.org/dottie/-/dottie-2.0.2.tgz" integrity sha512-fmrwR04lsniq/uSr8yikThDTrM7epXHBAAjH9TbeH3rEA8tdCO7mRzB9hdmdGyJCxF8KERo9CITcm3kGuoyMhg== duplexer2@~0.1.0: version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" + resolved "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz" integrity sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA== dependencies: readable-stream "^2.0.2" duplexer@^0.1.1: version "0.1.2" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" + resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== ecdsa-sig-formatter@1.0.11: version "1.0.11" - resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" + resolved "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz" integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== dependencies: safe-buffer "^5.0.1" ee-first@1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== ejs@^3.1.7: version "3.1.8" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.8.tgz#758d32910c78047585c7ef1f92f9ee041c1c190b" + resolved "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz" integrity sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ== dependencies: jake "^10.8.5" electron-to-chromium@^1.4.251: version "1.4.284" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz#61046d1e4cab3a25238f6bf7413795270f125592" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz" integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA== emittery@^0.13.1: version "0.13.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" + resolved "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz" integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== emoji-regex@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== encodeurl@^1.0.2, encodeurl@~1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz" integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== encoding@^0.1.12, encoding@^0.1.13: version "0.1.13" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" + resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz" integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== dependencies: iconv-lite "^0.6.2" end-of-stream@^1.1.0, end-of-stream@^1.4.1: version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== dependencies: once "^1.4.0" enquirer@~2.3.6: version "2.3.6" - resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== dependencies: ansi-colors "^4.1.1" entities@^4.2.0, entities@^4.3.0, entities@^4.4.0: version "4.4.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" + resolved "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz" integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== env-ci@^5.0.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/env-ci/-/env-ci-5.5.0.tgz#43364e3554d261a586dec707bc32be81112b545f" + resolved "https://registry.npmjs.org/env-ci/-/env-ci-5.5.0.tgz" integrity sha512-o0JdWIbOLP+WJKIUt36hz1ImQQFuN92nhsfTkHHap+J8CiI8WgGpH/a9jEGHh4/TU5BUUGjlnKXNoDb57+ne+A== dependencies: execa "^5.0.0" @@ -5491,29 +5491,29 @@ env-ci@^5.0.0: env-paths@^2.2.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz" integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== envinfo@^7.7.4: version "7.8.1" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" + resolved "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz" integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== err-code@^2.0.2: version "2.0.3" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + resolved "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz" integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== error-ex@^1.3.1: version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" es-abstract@^1.19.0, es-abstract@^1.20.4: version "1.21.1" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.21.1.tgz#e6105a099967c08377830a0c9cb589d570dd86c6" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz" integrity sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg== dependencies: available-typed-arrays "^1.0.5" @@ -5552,7 +5552,7 @@ es-abstract@^1.19.0, es-abstract@^1.20.4: es-aggregate-error@^1.0.8: version "1.0.9" - resolved "https://registry.yarnpkg.com/es-aggregate-error/-/es-aggregate-error-1.0.9.tgz#b50925cdf78c8a634bd766704f6f7825902be3d9" + resolved "https://registry.npmjs.org/es-aggregate-error/-/es-aggregate-error-1.0.9.tgz" integrity sha512-fvnX40sb538wdU6r4s35cq4EY6Lr09Upj40BEVem4LEsuW8XgQep9yD5Q1U2KftokNp1rWODFJ2qwZSsAjFpbg== dependencies: define-properties "^1.1.4" @@ -5565,7 +5565,7 @@ es-aggregate-error@^1.0.8: es-set-tostringtag@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" + resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz" integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg== dependencies: get-intrinsic "^1.1.3" @@ -5574,14 +5574,14 @@ es-set-tostringtag@^2.0.1: es-shim-unscopables@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" + resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz" integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== dependencies: has "^1.0.3" es-to-primitive@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== dependencies: is-callable "^1.1.4" @@ -5590,32 +5590,32 @@ es-to-primitive@^1.2.1: escalade@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== escape-html@^1.0.3, escape-html@~1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz" integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== escape-string-regexp@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== eslint-config-airbnb-base@^15.0.0: version "15.0.0" - resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz#6b09add90ac79c2f8d723a2580e07f3925afd236" + resolved "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz" integrity sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig== dependencies: confusing-browser-globals "^1.0.10" @@ -5625,19 +5625,19 @@ eslint-config-airbnb-base@^15.0.0: eslint-config-airbnb-typescript@^17.0.0: version "17.0.0" - resolved "https://registry.yarnpkg.com/eslint-config-airbnb-typescript/-/eslint-config-airbnb-typescript-17.0.0.tgz#360dbcf810b26bbcf2ff716198465775f1c49a07" + resolved "https://registry.npmjs.org/eslint-config-airbnb-typescript/-/eslint-config-airbnb-typescript-17.0.0.tgz" integrity sha512-elNiuzD0kPAPTXjFWg+lE24nMdHMtuxgYoD30OyMD6yrW1AhFZPAg27VX7d3tzOErw+dgJTNWfRSDqEcXb4V0g== dependencies: eslint-config-airbnb-base "^15.0.0" eslint-config-prettier@^8.6.0: version "8.6.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz#dec1d29ab728f4fa63061774e1672ac4e363d207" + resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz" integrity sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA== eslint-import-resolver-node@^0.3.7: version "0.3.7" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz#83b375187d412324a1963d84fa664377a23eb4d7" + resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz" integrity sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA== dependencies: debug "^3.2.7" @@ -5646,14 +5646,14 @@ eslint-import-resolver-node@^0.3.7: eslint-module-utils@^2.7.4: version "2.7.4" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz#4f3e41116aaf13a20792261e61d3a2e7e0583974" + resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz" integrity sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA== dependencies: debug "^3.2.7" eslint-plugin-import@^2.27.4: version "2.27.4" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.27.4.tgz#319c2f6f6580e1678d674a258ee5e981c10cc25b" + resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.27.4.tgz" integrity sha512-Z1jVt1EGKia1X9CnBCkpAOhWy8FgQ7OmJ/IblEkT82yrFU/xJaxwujaTzLWqigewwynRQ9mmHfX9MtAfhxm0sA== dependencies: array-includes "^3.1.6" @@ -5674,21 +5674,21 @@ eslint-plugin-import@^2.27.4: eslint-plugin-jest@^27.2.1: version "27.2.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-27.2.1.tgz#b85b4adf41c682ea29f1f01c8b11ccc39b5c672c" + resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.2.1.tgz" integrity sha512-l067Uxx7ZT8cO9NJuf+eJHvt6bqJyz2Z29wykyEdz/OtmcELQl2MQGQLX8J94O1cSJWAwUSEvCjwjA7KEK3Hmg== dependencies: "@typescript-eslint/utils" "^5.10.0" eslint-plugin-prettier@^4.2.1: version "4.2.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz#651cbb88b1dab98bfd42f017a12fa6b2d993f94b" + resolved "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz" integrity sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ== dependencies: prettier-linter-helpers "^1.0.0" eslint-scope@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== dependencies: esrecurse "^4.3.0" @@ -5696,7 +5696,7 @@ eslint-scope@^5.1.1: eslint-scope@^7.0.0, eslint-scope@^7.1.1: version "7.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz" integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw== dependencies: esrecurse "^4.3.0" @@ -5704,24 +5704,24 @@ eslint-scope@^7.0.0, eslint-scope@^7.1.1: eslint-utils@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz" integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== dependencies: eslint-visitor-keys "^2.0.0" eslint-visitor-keys@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== eslint-visitor-keys@^3.1.0, eslint-visitor-keys@^3.3.0: version "3.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz" integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== eslint@^8.31.0, eslint@^8.7.0: version "8.31.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.31.0.tgz#75028e77cbcff102a9feae1d718135931532d524" + resolved "https://registry.npmjs.org/eslint/-/eslint-8.31.0.tgz" integrity sha512-0tQQEVdmPZ1UtUKXjX7EMm9BlgJ08G90IhWh0PKDCb3ZLsgAOHI8fYSIzYVZej92zsgq+ft0FGsxhJ3xo2tbuA== dependencies: "@eslint/eslintrc" "^1.4.1" @@ -5766,7 +5766,7 @@ eslint@^8.31.0, eslint@^8.7.0: espree@^9.0.0, espree@^9.4.0: version "9.4.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.4.1.tgz#51d6092615567a2c2cff7833445e37c28c0065bd" + resolved "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz" integrity sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg== dependencies: acorn "^8.8.0" @@ -5775,61 +5775,66 @@ espree@^9.0.0, espree@^9.4.0: esprima@^4.0.0, esprima@~4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== esquery@^1.0.1, esquery@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" + resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== dependencies: estraverse "^5.1.0" esrecurse@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: estraverse "^5.2.0" estraverse@^4.1.1: version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== estraverse@^5.1.0, estraverse@^5.2.0: version "5.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== esutils@^2.0.2: version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== etag@~1.8.1: version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== event-target-shim@^5.0.0: version "5.0.1" - resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== eventemitter3@^4.0.4: version "4.0.7" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== events@^3.0.0, events@^3.3.0: version "3.3.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== +eventsource@2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-2.0.2.tgz#76dfcc02930fb2ff339520b6d290da573a9e8508" + integrity sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA== + excel4node@^1.8.0: version "1.8.0" - resolved "https://registry.yarnpkg.com/excel4node/-/excel4node-1.8.0.tgz#d86dc8280e4790f2add9a370903f5369f552f25e" + resolved "https://registry.npmjs.org/excel4node/-/excel4node-1.8.0.tgz" integrity sha512-xFbnHlPNMHVNyEiXb8XV/PhbOAiBHygT7wrCcUL5H0V1IsLNKhIQ1E3qdwzCsOIg+2dHCnAuaoqIaH1wAbx9Gg== dependencies: deepmerge "^4.2.2" @@ -5846,7 +5851,7 @@ excel4node@^1.8.0: execa@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" + resolved "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz" integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== dependencies: cross-spawn "^7.0.0" @@ -5861,7 +5866,7 @@ execa@^4.1.0: execa@^5.0.0: version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz" integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== dependencies: cross-spawn "^7.0.3" @@ -5876,12 +5881,12 @@ execa@^5.0.0: exit@^0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz" integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== expect@^29.0.0, expect@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/expect/-/expect-29.3.1.tgz#92877aad3f7deefc2e3f6430dd195b92295554a6" + resolved "https://registry.npmjs.org/expect/-/expect-29.3.1.tgz" integrity sha512-gGb1yTgU30Q0O/tQq+z30KBWv24ApkMgFUpvKBkyLUBL68Wv8dHdJxTBZFl/iT8K/bqDHvUYRH6IIN3rToopPA== dependencies: "@jest/expect-utils" "^29.3.1" @@ -5892,7 +5897,7 @@ expect@^29.0.0, expect@^29.3.1: express@4.18.2, express@^4.17.1, express@^4.18.2: version "4.18.2" - resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" + resolved "https://registry.npmjs.org/express/-/express-4.18.2.tgz" integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== dependencies: accepts "~1.3.8" @@ -5929,12 +5934,12 @@ express@4.18.2, express@^4.17.1, express@^4.18.2: extend@^3.0.0: version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== external-editor@^3.0.3: version "3.1.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + resolved "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz" integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== dependencies: chardet "^0.7.0" @@ -5943,22 +5948,22 @@ external-editor@^3.0.3: fast-decode-uri-component@^1.0.0, fast-decode-uri-component@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz#46f8b6c22b30ff7a81357d4f59abfae938202543" + resolved "https://registry.npmjs.org/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz" integrity sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg== fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-diff@^1.1.2: version "1.2.0" - resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" + resolved "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz" integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== fast-glob@3.2.7: version "3.2.7" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz" integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q== dependencies: "@nodelib/fs.stat" "^2.0.2" @@ -5969,7 +5974,7 @@ fast-glob@3.2.7: fast-glob@^3.1.1, fast-glob@^3.2.9: version "3.2.12" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz" integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== dependencies: "@nodelib/fs.stat" "^2.0.2" @@ -5980,12 +5985,12 @@ fast-glob@^3.1.1, fast-glob@^3.2.9: fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-json-stringify@^1.18.0: version "1.21.0" - resolved "https://registry.yarnpkg.com/fast-json-stringify/-/fast-json-stringify-1.21.0.tgz#51bc8c6d77d8c7b2cc7e5fa754f7f909f9e1262f" + resolved "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-1.21.0.tgz" integrity sha512-xY6gyjmHN3AK1Y15BCbMpeO9+dea5ePVsp3BouHCdukcx0hOHbXwFhRodhcI0NpZIgDChSeAKkHW9YjKvhwKBA== dependencies: ajv "^6.11.0" @@ -5994,7 +5999,7 @@ fast-json-stringify@^1.18.0: fast-json-stringify@^2.5.2: version "2.7.13" - resolved "https://registry.yarnpkg.com/fast-json-stringify/-/fast-json-stringify-2.7.13.tgz#277aa86c2acba4d9851bd6108ed657aa327ed8c0" + resolved "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-2.7.13.tgz" integrity sha512-ar+hQ4+OIurUGjSJD1anvYSDcUflywhKjfxnsW4TBTD7+u0tJufv6DKRWoQk3vI6YBOWMoz0TQtfbe7dxbQmvA== dependencies: ajv "^6.11.0" @@ -6004,7 +6009,7 @@ fast-json-stringify@^2.5.2: fast-json-stringify@^5.0.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/fast-json-stringify/-/fast-json-stringify-5.5.0.tgz#6655cb944df8da43f6b15312a9564b81c55dadab" + resolved "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.5.0.tgz" integrity sha512-rmw2Z8/mLkND8zI+3KTYIkNPEoF5v6GqDP/o+g7H3vjdWjBwuKpgAYFHIzL6ORRB+iqDjjtJnLIW9Mzxn5szOA== dependencies: "@fastify/deepmerge" "^1.0.0" @@ -6016,39 +6021,39 @@ fast-json-stringify@^5.0.0: fast-levenshtein@^2.0.6: version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== fast-querystring@^1.0.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-querystring/-/fast-querystring-1.1.0.tgz#bb645c365db88a3b6433fb6484f7e9e66764cfb9" + resolved "https://registry.npmjs.org/fast-querystring/-/fast-querystring-1.1.0.tgz" integrity sha512-LWkjBCZlxjnSanuPpZ6mHswjy8hQv3VcPJsQB3ltUF2zjvrycr0leP3TSTEEfvQ1WEMSRl5YNsGqaft9bjLqEw== dependencies: fast-decode-uri-component "^1.0.1" fast-redact@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-2.1.0.tgz#dfe3c1ca69367fb226f110aa4ec10ec85462ffdf" + resolved "https://registry.npmjs.org/fast-redact/-/fast-redact-2.1.0.tgz" integrity sha512-0LkHpTLyadJavq9sRzzyqIoMZemWli77K2/MGOkafrR64B9ItrvZ9aT+jluvNDsv0YEHjSNhlMBtbokuoqii4A== fast-redact@^3.0.0, fast-redact@^3.1.1: version "3.1.2" - resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.1.2.tgz#d58e69e9084ce9fa4c1a6fa98a3e1ecf5d7839aa" + resolved "https://registry.npmjs.org/fast-redact/-/fast-redact-3.1.2.tgz" integrity sha512-+0em+Iya9fKGfEQGcd62Yv6onjBmmhV1uh86XVfOU8VwAe6kaFdQCWI9s0/Nnugx5Vd9tdbZ7e6gE2tR9dzXdw== fast-safe-stringify@2.1.1, fast-safe-stringify@^2.0.7, fast-safe-stringify@^2.0.8, fast-safe-stringify@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" + resolved "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz" integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== fast-uri@^2.0.0, fast-uri@^2.1.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-2.2.0.tgz#519a0f849bef714aad10e9753d69d8f758f7445a" + resolved "https://registry.npmjs.org/fast-uri/-/fast-uri-2.2.0.tgz" integrity sha512-cIusKBIt/R/oI6z/1nyfe2FvGKVTohVRfvkOhvx0nCEW+xf5NoCXjAHcWp93uOUBchzYcsvPlrapAdX1uW+YGg== fast-xml-parser@4.0.11: version "4.0.11" - resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.0.11.tgz#42332a9aca544520631c8919e6ea871c0185a985" + resolved "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.0.11.tgz" integrity sha512-4aUg3aNRR/WjQAcpceODG1C3x3lFANXRo8+1biqfieHmg9pyMt7qB4lQV/Ta6sJCTbA5vfD8fnA8S54JATiFUA== dependencies: strnum "^1.0.5" @@ -6060,17 +6065,17 @@ fastest-levenshtein@^1.0.12: fastify-plugin@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/fastify-plugin/-/fastify-plugin-3.0.1.tgz#79e84c29f401020f38b524f59f2402103fd21ed2" + resolved "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-3.0.1.tgz" integrity sha512-qKcDXmuZadJqdTm6vlCqioEbyewF60b/0LOFCcYN1B6BIZGlYJumWWOYs70SFYLDAH4YqdE1cxH/RKMG7rFxgA== fastify-plugin@^4.0.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/fastify-plugin/-/fastify-plugin-4.5.0.tgz#8b853923a0bba6ab6921bb8f35b81224e6988d91" + resolved "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.0.tgz" integrity sha512-79ak0JxddO0utAXAQ5ccKhvs6vX2MGyHHMMsmZkBANrq3hXc1CHzvNPHOcvTsVMEPl5I+NT+RO4YKMGehOfSIg== "fastify2@npm:fastify@^2.15.3": version "2.15.3" - resolved "https://registry.yarnpkg.com/fastify/-/fastify-2.15.3.tgz#ba941e9b62175f053ef01c3eea9fa76e91fffed1" + resolved "https://registry.npmjs.org/fastify/-/fastify-2.15.3.tgz" integrity sha512-2O+A9SjHpbH/SgDDMA+xIznhx/rDeNuwPIiZSFVU7fwOiiFfQjHmfu21jp22wMmsZ5PYKYFR+pze2TzoAUmOtw== dependencies: abstract-logging "^2.0.0" @@ -6090,7 +6095,7 @@ fastify-plugin@^4.0.0: fastify@4.10.2: version "4.10.2" - resolved "https://registry.yarnpkg.com/fastify/-/fastify-4.10.2.tgz#0dd1cb8d16df3c14eff938c08aa6da63b4035d0d" + resolved "https://registry.npmjs.org/fastify/-/fastify-4.10.2.tgz" integrity sha512-0T+4zI6N3S8ex0LCZi3H4FasJR4AzWw834fUkPWvV8r6GBJkLmAOfFxH8f5V29Plef24IK0QSQD/tz1Nx+1UOA== dependencies: "@fastify/ajv-compiler" "^3.3.1" @@ -6111,7 +6116,7 @@ fastify@4.10.2: fastify@^3.29.0: version "3.29.4" - resolved "https://registry.yarnpkg.com/fastify/-/fastify-3.29.4.tgz#294e33017b55f3cb72f315c41cf51431bc9b7a34" + resolved "https://registry.npmjs.org/fastify/-/fastify-3.29.4.tgz" integrity sha512-BEyKidZQvscNaiF1BLh+YLE7AzHH03NexhPzrwZP6KBQ+jG2czdgq72X+RFB5rK9hbqdaafVb5yiWN+hCvHfYg== dependencies: "@fastify/ajv-compiler" "^1.0.0" @@ -6133,35 +6138,35 @@ fastify@^3.29.0: fastq@^1.6.0, fastq@^1.6.1: version "1.15.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" + resolved "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz" integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== dependencies: reusify "^1.0.4" fb-watchman@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" + resolved "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz" integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== dependencies: bser "2.1.1" figures@3.2.0, figures@^3.0.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" + resolved "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz" integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== dependencies: escape-string-regexp "^1.0.5" figures@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + resolved "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz" integrity sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA== dependencies: escape-string-regexp "^1.0.5" file-entry-cache@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== dependencies: flat-cache "^3.0.4" @@ -6177,21 +6182,21 @@ file-type@version-16: filelist@^1.0.1: version "1.0.4" - resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" + resolved "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz" integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== dependencies: minimatch "^5.0.1" fill-range@^7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: to-regex-range "^5.0.1" finalhandler@1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" + resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz" integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== dependencies: debug "2.6.9" @@ -6204,7 +6209,7 @@ finalhandler@1.2.0: find-my-way@^2.2.2: version "2.2.5" - resolved "https://registry.yarnpkg.com/find-my-way/-/find-my-way-2.2.5.tgz#86ce825266fa28cd962e538a45ec2aaa84c3d514" + resolved "https://registry.npmjs.org/find-my-way/-/find-my-way-2.2.5.tgz" integrity sha512-GjRZZlGcGmTh9t+6Xrj5K0YprpoAFCAiCPgmAH9Kb09O4oX6hYuckDfnDipYj+Q7B1GtYWSzDI5HEecNYscLQg== dependencies: fast-decode-uri-component "^1.0.0" @@ -6213,7 +6218,7 @@ find-my-way@^2.2.2: find-my-way@^4.5.0: version "4.5.1" - resolved "https://registry.yarnpkg.com/find-my-way/-/find-my-way-4.5.1.tgz#758e959194b90aea0270db18fff75e2fceb2239f" + resolved "https://registry.npmjs.org/find-my-way/-/find-my-way-4.5.1.tgz" integrity sha512-kE0u7sGoUFbMXcOG/xpkmz4sRLCklERnBcg7Ftuu1iAxsfEt2S46RLJ3Sq7vshsEy2wJT2hZxE58XZK27qa8kg== dependencies: fast-decode-uri-component "^1.0.1" @@ -6223,7 +6228,7 @@ find-my-way@^4.5.0: find-my-way@^7.3.0: version "7.4.0" - resolved "https://registry.yarnpkg.com/find-my-way/-/find-my-way-7.4.0.tgz#22363e6cd1c466f88883703e169a20c983f9c9cc" + resolved "https://registry.npmjs.org/find-my-way/-/find-my-way-7.4.0.tgz" integrity sha512-JFT7eURLU5FumlZ3VBGnveId82cZz7UR7OUu+THQJOwdQXxmS/g8v0KLoFhv97HreycOrmAbqjXD/4VG2j0uMQ== dependencies: fast-deep-equal "^3.1.3" @@ -6232,14 +6237,14 @@ find-my-way@^7.3.0: find-up@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz" integrity sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ== dependencies: locate-path "^2.0.0" find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz" integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== dependencies: locate-path "^5.0.0" @@ -6247,7 +6252,7 @@ find-up@^4.0.0, find-up@^4.1.0: find-up@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== dependencies: locate-path "^6.0.0" @@ -6255,21 +6260,21 @@ find-up@^5.0.0: find-versions@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-4.0.0.tgz#3c57e573bf97769b8cb8df16934b627915da4965" + resolved "https://registry.npmjs.org/find-versions/-/find-versions-4.0.0.tgz" integrity sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ== dependencies: semver-regex "^3.1.2" fishery@^2.2.2: version "2.2.2" - resolved "https://registry.yarnpkg.com/fishery/-/fishery-2.2.2.tgz#94d3d9380295dd3ce555021e9353c5348b8beb77" + resolved "https://registry.npmjs.org/fishery/-/fishery-2.2.2.tgz" integrity sha512-jeU0nDhPHJkupmjX+r9niKgVMTBDB8X+U/pktoGHAiWOSyNlMd0HhmqnjrpjUOCDPJYaSSu4Ze16h6dZOKSp2w== dependencies: lodash.mergewith "^4.6.2" flat-cache@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== dependencies: flatted "^3.1.0" @@ -6277,34 +6282,34 @@ flat-cache@^3.0.4: flat@^5.0.2: version "5.0.2" - resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + resolved "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== flatstr@^1.0.12: version "1.0.12" - resolved "https://registry.yarnpkg.com/flatstr/-/flatstr-1.0.12.tgz#c2ba6a08173edbb6c9640e3055b95e287ceb5931" + resolved "https://registry.npmjs.org/flatstr/-/flatstr-1.0.12.tgz" integrity sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw== flatted@^3.1.0: version "3.2.7" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" + resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== follow-redirects@^1.15.0: version "1.15.2" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz" integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== for-each@^0.3.3: version "0.3.3" - resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" + resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz" integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== dependencies: is-callable "^1.1.3" forest-ip-utils@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/forest-ip-utils/-/forest-ip-utils-1.0.1.tgz#4c53a4c1e16f20beed71ee862315e18b34508d0c" + resolved "https://registry.npmjs.org/forest-ip-utils/-/forest-ip-utils-1.0.1.tgz" integrity sha512-m/pXGliPvJ6pt5/kyTgNT3X4AKHBdeKJX+cg1RVHWrQiqvD7Qs6WbSaP8/l1nJz1FhrLC/EQJAWXTj/kdJjDEQ== dependencies: ip-address "^5.8.9" @@ -6312,7 +6317,7 @@ forest-ip-utils@^1.0.1: form-data@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz" integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== dependencies: asynckit "^0.4.0" @@ -6321,7 +6326,7 @@ form-data@^4.0.0: formidable@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/formidable/-/formidable-2.1.1.tgz#81269cbea1a613240049f5f61a9d97731517414f" + resolved "https://registry.npmjs.org/formidable/-/formidable-2.1.1.tgz" integrity sha512-0EcS9wCFEzLvfiks7omJ+SiYJAiD+TzK4Pcw1UlUoGnhUxDcMKjt0P7x8wEb0u6OHu8Nb98WG3nxtlF5C7bvUQ== dependencies: dezalgo "^1.0.4" @@ -6331,17 +6336,17 @@ formidable@^2.1.1: forwarded@0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + resolved "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== fresh@0.5.2, fresh@^0.5.2, fresh@~0.5.2: version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== from2@^2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + resolved "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz" integrity sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g== dependencies: inherits "^2.0.1" @@ -6349,17 +6354,17 @@ from2@^2.3.0: fromentries@^1.3.2: version "1.3.2" - resolved "https://registry.yarnpkg.com/fromentries/-/fromentries-1.3.2.tgz#e4bca6808816bf8f93b52750f1127f5a6fd86e3a" + resolved "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz" integrity sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg== fs-constants@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" + resolved "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== fs-extra@^10.0.0: version "10.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz" integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== dependencies: graceful-fs "^4.2.0" @@ -6368,7 +6373,7 @@ fs-extra@^10.0.0: fs-extra@^11.0.0, fs-extra@^11.1.0: version "11.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.0.tgz#5784b102104433bb0e090f48bfc4a30742c357ed" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.0.tgz" integrity sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw== dependencies: graceful-fs "^4.2.0" @@ -6377,7 +6382,7 @@ fs-extra@^11.0.0, fs-extra@^11.1.0: fs-extra@^8.1.0: version "8.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz" integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== dependencies: graceful-fs "^4.2.0" @@ -6386,7 +6391,7 @@ fs-extra@^8.1.0: fs-extra@^9.1.0: version "9.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz" integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== dependencies: at-least-node "^1.0.0" @@ -6396,29 +6401,29 @@ fs-extra@^9.1.0: fs-minipass@^2.0.0, fs-minipass@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz" integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== dependencies: minipass "^3.0.0" fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@^2.3.2, fsevents@~2.3.2: version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== function-bind@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== function.prototype.name@^1.1.5: version "1.1.5" - resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" + resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz" integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== dependencies: call-bind "^1.0.2" @@ -6428,12 +6433,12 @@ function.prototype.name@^1.1.5: functions-have-names@^1.2.2, functions-have-names@^1.2.3: version "1.2.3" - resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== gauge@^3.0.0: version "3.0.2" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-3.0.2.tgz#03bf4441c044383908bcfa0656ad91803259b395" + resolved "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz" integrity sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q== dependencies: aproba "^1.0.3 || ^2.0.0" @@ -6448,7 +6453,7 @@ gauge@^3.0.0: gauge@^4.0.3: version "4.0.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" + resolved "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz" integrity sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg== dependencies: aproba "^1.0.3 || ^2.0.0" @@ -6462,24 +6467,24 @@ gauge@^4.0.3: generate-function@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.3.1.tgz#f069617690c10c868e73b8465746764f97c3479f" + resolved "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz" integrity sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ== dependencies: is-property "^1.0.2" gensync@^1.0.0-beta.2: version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== get-caller-file@^2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.3.tgz#063c84329ad93e83893c7f4f243ef63ffa351385" + resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz" integrity sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A== dependencies: function-bind "^1.1.1" @@ -6488,12 +6493,12 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3: get-package-type@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz" integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== get-pkg-repo@^4.0.0: version "4.2.1" - resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz#75973e1c8050c73f48190c52047c4cee3acbf385" + resolved "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz" integrity sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA== dependencies: "@hutson/parse-repository-url" "^3.0.0" @@ -6503,24 +6508,24 @@ get-pkg-repo@^4.0.0: get-port@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" + resolved "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz" integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== get-stream@^5.0.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz" integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== dependencies: pump "^3.0.0" get-stream@^6.0.0, get-stream@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== get-symbol-description@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" + resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz" integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== dependencies: call-bind "^1.0.2" @@ -6528,7 +6533,7 @@ get-symbol-description@^1.0.0: git-log-parser@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/git-log-parser/-/git-log-parser-1.2.0.tgz#2e6a4c1b13fc00028207ba795a7ac31667b9fd4a" + resolved "https://registry.npmjs.org/git-log-parser/-/git-log-parser-1.2.0.tgz" integrity sha512-rnCVNfkTL8tdNryFuaY0fYiBWEBcgF748O6ZI61rslBvr2o7U65c2/6npCRqH40vuAhtgtDiqLTJjBVdrejCzA== dependencies: argv-formatter "~1.0.0" @@ -6540,7 +6545,7 @@ git-log-parser@^1.2.0: git-raw-commits@^2.0.0, git-raw-commits@^2.0.8: version "2.0.11" - resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.11.tgz#bc3576638071d18655e1cc60d7f524920008d723" + resolved "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz" integrity sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A== dependencies: dargs "^7.0.0" @@ -6551,7 +6556,7 @@ git-raw-commits@^2.0.0, git-raw-commits@^2.0.8: git-remote-origin-url@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f" + resolved "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz" integrity sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw== dependencies: gitconfiglocal "^1.0.0" @@ -6559,7 +6564,7 @@ git-remote-origin-url@^2.0.0: git-semver-tags@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-4.1.1.tgz#63191bcd809b0ec3e151ba4751c16c444e5b5780" + resolved "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-4.1.1.tgz" integrity sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA== dependencies: meow "^8.0.0" @@ -6567,7 +6572,7 @@ git-semver-tags@^4.1.1: git-up@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/git-up/-/git-up-7.0.0.tgz#bace30786e36f56ea341b6f69adfd83286337467" + resolved "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz" integrity sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ== dependencies: is-ssh "^1.4.0" @@ -6575,35 +6580,35 @@ git-up@^7.0.0: git-url-parse@^13.1.0: version "13.1.0" - resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-13.1.0.tgz#07e136b5baa08d59fabdf0e33170de425adf07b4" + resolved "https://registry.npmjs.org/git-url-parse/-/git-url-parse-13.1.0.tgz" integrity sha512-5FvPJP/70WkIprlUZ33bm4UAaFdjcLkJLpWft1BeZKqwR0uhhNGoKwlUaPtVb4LxCSQ++erHapRak9kWGj+FCA== dependencies: git-up "^7.0.0" gitconfiglocal@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" + resolved "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz" integrity sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ== dependencies: ini "^1.3.2" glob-parent@^5.1.1, glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" glob-parent@^6.0.2: version "6.0.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz" integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== dependencies: is-glob "^4.0.3" glob@7.1.4: version "7.1.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz" integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== dependencies: fs.realpath "^1.0.0" @@ -6615,7 +6620,7 @@ glob@7.1.4: glob@^7.1.3, glob@^7.1.4: version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" @@ -6626,9 +6631,9 @@ glob@^7.1.3, glob@^7.1.4: path-is-absolute "^1.0.0" glob@^8.0.1: - version "8.0.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e" - integrity sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ== + version "8.1.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -6638,33 +6643,33 @@ glob@^8.0.1: global-dirs@^0.1.1: version "0.1.1" - resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" + resolved "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz" integrity sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg== dependencies: ini "^1.3.4" globals@^11.1.0: version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== globals@^13.19.0: version "13.19.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.19.0.tgz#7a42de8e6ad4f7242fbcca27ea5b23aca367b5c8" + resolved "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz" integrity sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ== dependencies: type-fest "^0.20.2" globalthis@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" + resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz" integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== dependencies: define-properties "^1.1.3" globby@11.0.4: version "11.0.4" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5" + resolved "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz" integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== dependencies: array-union "^2.1.0" @@ -6676,7 +6681,7 @@ globby@11.0.4: globby@^11.0.0, globby@^11.0.1, globby@^11.0.2, globby@^11.1.0: version "11.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== dependencies: array-union "^2.1.0" @@ -6688,24 +6693,24 @@ globby@^11.0.0, globby@^11.0.1, globby@^11.0.2, globby@^11.1.0: gopd@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" + resolved "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz" integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== dependencies: get-intrinsic "^1.1.3" graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.10, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.10" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== grapheme-splitter@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e" + resolved "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz" integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== handlebars@^4.7.7: version "4.7.7" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" + resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz" integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== dependencies: minimist "^1.2.5" @@ -6717,118 +6722,118 @@ handlebars@^4.7.7: hard-rejection@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" + resolved "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz" integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== has-ansi@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + resolved "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz" integrity sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg== dependencies: ansi-regex "^2.0.0" has-bigints@^1.0.1, has-bigints@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" + resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz" integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== has-flag@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== has-property-descriptors@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" + resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz" integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== dependencies: get-intrinsic "^1.1.1" has-proto@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" + resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz" integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== has-symbols@^1.0.2, has-symbols@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== has-tostringtag@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== dependencies: has-symbols "^1.0.2" has-unicode@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz" integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== has@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: function-bind "^1.1.1" hexoid@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/hexoid/-/hexoid-1.0.0.tgz#ad10c6573fb907de23d9ec63a711267d9dc9bc18" + resolved "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz" integrity sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g== hook-std@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/hook-std/-/hook-std-2.0.0.tgz#ff9aafdebb6a989a354f729bb6445cf4a3a7077c" + resolved "https://registry.npmjs.org/hook-std/-/hook-std-2.0.0.tgz" integrity sha512-zZ6T5WcuBMIUVh49iPQS9t977t7C0l7OtHrpeMb5uk48JdflRX0NSFvCekfYNmGQETnLq9W/isMyHl69kxGi8g== hosted-git-info@^2.1.4: version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== hosted-git-info@^3.0.6: version "3.0.8" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.8.tgz#6e35d4cc87af2c5f816e4cb9ce350ba87a3f370d" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz" integrity sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw== dependencies: lru-cache "^6.0.0" hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: version "4.1.0" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz" integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA== dependencies: lru-cache "^6.0.0" hosted-git-info@^5.0.0, hosted-git-info@^5.2.1: version "5.2.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-5.2.1.tgz#0ba1c97178ef91f3ab30842ae63d6a272341156f" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz" integrity sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw== dependencies: lru-cache "^7.5.1" html-escaper@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== html-link-extractor@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/html-link-extractor/-/html-link-extractor-1.0.5.tgz#a4be345cb13b8c3352d82b28c8b124bb7bf5dd6f" + resolved "https://registry.npmjs.org/html-link-extractor/-/html-link-extractor-1.0.5.tgz" integrity sha512-ADd49pudM157uWHwHQPUSX4ssMsvR/yHIswOR5CUfBdK9g9ZYGMhVSE6KZVHJ6kCkR0gH4htsfzU6zECDNVwyw== dependencies: cheerio "^1.0.0-rc.10" htmlparser2@^8.0.1: version "8.0.1" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-8.0.1.tgz#abaa985474fcefe269bc761a779b544d7196d010" + resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz" integrity sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA== dependencies: domelementtype "^2.3.0" @@ -6838,7 +6843,7 @@ htmlparser2@^8.0.1: http-assert@^1.3.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/http-assert/-/http-assert-1.5.0.tgz#c389ccd87ac16ed2dfa6246fd73b926aa00e6b8f" + resolved "https://registry.npmjs.org/http-assert/-/http-assert-1.5.0.tgz" integrity sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w== dependencies: deep-equal "~1.0.1" @@ -6846,12 +6851,12 @@ http-assert@^1.3.0: http-cache-semantics@^4.1.0: version "4.1.1" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" + resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz" integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== http-errors@2.0.0, http-errors@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz" integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== dependencies: depd "2.0.0" @@ -6862,7 +6867,7 @@ http-errors@2.0.0, http-errors@^2.0.0: http-errors@^1.6.3, http-errors@~1.8.0: version "1.8.1" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz" integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== dependencies: depd "~1.1.2" @@ -6873,7 +6878,7 @@ http-errors@^1.6.3, http-errors@~1.8.0: http-proxy-agent@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz" integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== dependencies: "@tootallnate/once" "1" @@ -6882,7 +6887,7 @@ http-proxy-agent@^4.0.1: http-proxy-agent@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" + resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz" integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w== dependencies: "@tootallnate/once" "2" @@ -6891,7 +6896,7 @@ http-proxy-agent@^5.0.0: https-proxy-agent@^5.0.0: version "5.0.1" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz" integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== dependencies: agent-base "6" @@ -6899,77 +6904,77 @@ https-proxy-agent@^5.0.0: human-signals@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz" integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== human-signals@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== humanize-ms@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + resolved "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz" integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ== dependencies: ms "^2.0.0" husky@^8.0.3: version "8.0.3" - resolved "https://registry.yarnpkg.com/husky/-/husky-8.0.3.tgz#4936d7212e46d1dea28fef29bb3a108872cd9184" + resolved "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz" integrity sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg== iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: safer-buffer ">= 2.1.2 < 3" iconv-lite@^0.6.2, iconv-lite@^0.6.3: version "0.6.3" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz" integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== dependencies: safer-buffer ">= 2.1.2 < 3.0.0" ieee754@^1.1.13, ieee754@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== ignore-by-default@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" + resolved "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz" integrity sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA== ignore-walk@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-5.0.1.tgz#5f199e23e1288f518d90358d461387788a154776" + resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz" integrity sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw== dependencies: minimatch "^5.0.1" ignore@^5.0.4, ignore@^5.1.4, ignore@^5.2.0: version "5.2.4" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" + resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz" integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== image-size@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/image-size/-/image-size-1.0.2.tgz#d778b6d0ab75b2737c1556dd631652eb963bc486" + resolved "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz" integrity sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg== dependencies: queue "6.0.2" immediate@~3.0.5: version "3.0.6" - resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" + resolved "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz" integrity sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ== import-fresh@^3.0.0, import-fresh@^3.2.1: version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" @@ -6977,12 +6982,12 @@ import-fresh@^3.0.0, import-fresh@^3.2.1: import-from@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/import-from/-/import-from-4.0.0.tgz#2710b8d66817d232e16f4166e319248d3d5492e2" + resolved "https://registry.npmjs.org/import-from/-/import-from-4.0.0.tgz" integrity sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ== import-local@^3.0.2: version "3.1.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + resolved "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz" integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== dependencies: pkg-dir "^4.2.0" @@ -6990,32 +6995,32 @@ import-local@^3.0.2: imurmurhash@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== indent-string@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== infer-owner@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + resolved "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz" integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== inflation@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/inflation/-/inflation-2.0.0.tgz#8b417e47c28f925a45133d914ca1fd389107f30f" + resolved "https://registry.npmjs.org/inflation/-/inflation-2.0.0.tgz" integrity sha512-m3xv4hJYR2oXw4o4Y5l6P5P16WYmazYof+el6Al3f+YlggGj6qT9kImBAnzDelRALnP5d3h4jGBPKzYCizjZZw== inflection@^1.13.2: version "1.13.4" - resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.13.4.tgz#65aa696c4e2da6225b148d7a154c449366633a32" + resolved "https://registry.npmjs.org/inflection/-/inflection-1.13.4.tgz" integrity sha512-6I/HUDeYFfuNCVS3td055BaXBwKYuzw7K3ExVMStBowKo9oOAMJIXIHvdyR3iboTCp1b+1i5DSkIZTcwIktuDw== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" @@ -7023,22 +7028,22 @@ inflight@^1.0.4: inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== ini@^1.3.2, ini@^1.3.4, ini@~1.3.0: version "1.3.8" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== ini@^3.0.0, ini@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/ini/-/ini-3.0.1.tgz#c76ec81007875bc44d544ff7a11a55d12294102d" + resolved "https://registry.npmjs.org/ini/-/ini-3.0.1.tgz" integrity sha512-it4HyVAUTKBc6m8e1iXWvXSTdndF7HbdN713+kvLrymxTaU4AUBWrJ4vEooP+V7fexnVD3LKcBshjGGPefSMUQ== init-package-json@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-3.0.2.tgz#f5bc9bac93f2bdc005778bc2271be642fecfcd69" + resolved "https://registry.npmjs.org/init-package-json/-/init-package-json-3.0.2.tgz" integrity sha512-YhlQPEjNFqlGdzrBfDNRLhvoSgX7iQRgSxgsNknRQ9ITXFT7UMfVMWhBTOh2Y+25lRnGrv5Xz8yZwQ3ACR6T3A== dependencies: npm-package-arg "^9.0.1" @@ -7051,7 +7056,7 @@ init-package-json@^3.0.2: inquirer@^8.2.4: version "8.2.5" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.2.5.tgz#d8654a7542c35a9b9e069d27e2df4858784d54f8" + resolved "https://registry.npmjs.org/inquirer/-/inquirer-8.2.5.tgz" integrity sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ== dependencies: ansi-escapes "^4.2.1" @@ -7072,7 +7077,7 @@ inquirer@^8.2.4: internal-slot@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.4.tgz#8551e7baf74a7a6ba5f749cfb16aa60722f0d6f3" + resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz" integrity sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ== dependencies: get-intrinsic "^1.1.3" @@ -7081,7 +7086,7 @@ internal-slot@^1.0.4: into-stream@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-6.0.0.tgz#4bfc1244c0128224e18b8870e85b2de8e66c6702" + resolved "https://registry.npmjs.org/into-stream/-/into-stream-6.0.0.tgz" integrity sha512-XHbaOAvP+uFKUFsOgoNPRjLkwB+I22JFPFe5OjTkQ0nwgj6+pSjb4NmB6VMxaPshLiOf+zcpOCBQuLwC1KHhZA== dependencies: from2 "^2.3.0" @@ -7089,7 +7094,7 @@ into-stream@^6.0.0: ip-address@^5.8.9: version "5.9.4" - resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-5.9.4.tgz#4660ac261ad61bd397a860a007f7e98e4eaee386" + resolved "https://registry.npmjs.org/ip-address/-/ip-address-5.9.4.tgz" integrity sha512-dHkI3/YNJq4b/qQaz+c8LuarD3pY24JqZWfjB8aZx1gtpc2MDILu9L9jpZe1sHpzo/yWFweQVn+U//FhazUxmw== dependencies: jsbn "1.1.0" @@ -7098,42 +7103,42 @@ ip-address@^5.8.9: ip-regex@^4.1.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-4.3.0.tgz#687275ab0f57fa76978ff8f4dddc8a23d5990db5" + resolved "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz" integrity sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q== ip6@0.0.4: version "0.0.4" - resolved "https://registry.yarnpkg.com/ip6/-/ip6-0.0.4.tgz#44c5a9db79e39d405201b4d78d13b3870e48db31" + resolved "https://registry.npmjs.org/ip6/-/ip6-0.0.4.tgz" integrity sha512-0FJ0rKtTQYCp92ru/hNzNpmy2sa8nINqbuyiiVOI75+ltMtAly9dtEparm+xh//kndXL/s6FOdWzSYvUDiBpbg== ip@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ip/-/ip-2.0.0.tgz#4cf4ab182fee2314c75ede1276f8c80b479936da" + resolved "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz" integrity sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ== ipaddr.js@1.2: version "1.2.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.2.0.tgz#8aba49c9192799585bdd643e0ccb50e8ae777ba4" + resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.2.0.tgz" integrity sha512-ku//LD7ie/m9UVGCm9KweBIIHP4mB0maNGvav6Hz778fQCNLQF7iZ+H/UuHuqmjJCHCpA5hw8hOeRKxZl8IlXw== ipaddr.js@1.9.1: version "1.9.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== is-absolute-url@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-4.0.1.tgz#16e4d487d4fded05cfe0685e53ec86804a5e94dc" + resolved "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-4.0.1.tgz" integrity sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A== is-alphabetical@^1.0.0: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" + resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz" integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== is-alphanumerical@^1.0.0: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" + resolved "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz" integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== dependencies: is-alphabetical "^1.0.0" @@ -7141,7 +7146,7 @@ is-alphanumerical@^1.0.0: is-array-buffer@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.1.tgz#deb1db4fcae48308d54ef2442706c0393997052a" + resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz" integrity sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ== dependencies: call-bind "^1.0.2" @@ -7150,26 +7155,26 @@ is-array-buffer@^3.0.1: is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-bigint@^1.0.1: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz" integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== dependencies: has-bigints "^1.0.1" is-binary-path@~2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== dependencies: binary-extensions "^2.0.0" is-boolean-object@^1.1.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== dependencies: call-bind "^1.0.2" @@ -7177,158 +7182,158 @@ is-boolean-object@^1.1.0: is-buffer@^2.0.0: version "2.0.5" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz" integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: version "1.2.7" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== is-ci@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + resolved "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz" integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== dependencies: ci-info "^2.0.0" is-cidr@^4.0.2: version "4.0.2" - resolved "https://registry.yarnpkg.com/is-cidr/-/is-cidr-4.0.2.tgz#94c7585e4c6c77ceabf920f8cde51b8c0fda8814" + resolved "https://registry.npmjs.org/is-cidr/-/is-cidr-4.0.2.tgz" integrity sha512-z4a1ENUajDbEl/Q6/pVBpTR1nBjjEE1X7qb7bmWYanNnPoKAvUCPFKeXV6Fe4mgTkWKBqiHIcwsI3SndiO5FeA== dependencies: cidr-regex "^3.1.1" is-core-module@^2.11.0, is-core-module@^2.5.0, is-core-module@^2.8.1, is-core-module@^2.9.0: version "2.11.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz" integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== dependencies: has "^1.0.3" is-date-object@^1.0.1: version "1.0.5" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== dependencies: has-tostringtag "^1.0.0" is-decimal@^1.0.0: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" + resolved "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz" integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-fullwidth-code-point@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== is-generator-fn@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== is-generator-function@^1.0.7: version "1.0.10" - resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72" + resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz" integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A== dependencies: has-tostringtag "^1.0.0" is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" is-hexadecimal@^1.0.0: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" + resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz" integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== is-interactive@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" + resolved "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz" integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w== is-lambda@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" + resolved "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz" integrity sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ== is-negative-zero@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" + resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz" integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== is-number-object@^1.0.4: version "1.0.7" - resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" + resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz" integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== dependencies: has-tostringtag "^1.0.0" is-number@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-obj@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" + resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== is-path-cwd@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" + resolved "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz" integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== is-path-inside@^3.0.2, is-path-inside@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz" integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== is-plain-obj@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== is-plain-object@^2.0.4: version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== dependencies: isobject "^3.0.1" is-plain-object@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" + resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== is-property@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" + resolved "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz" integrity sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g== is-regex@^1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== dependencies: call-bind "^1.0.2" @@ -7336,54 +7341,54 @@ is-regex@^1.1.4: is-relative-url@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/is-relative-url/-/is-relative-url-4.0.0.tgz#4d8371999ff6033b76e4d9972fb5bf496fddfa97" + resolved "https://registry.npmjs.org/is-relative-url/-/is-relative-url-4.0.0.tgz" integrity sha512-PkzoL1qKAYXNFct5IKdKRH/iBQou/oCC85QhXj6WKtUQBliZ4Yfd3Zk27RHu9KQG8r6zgvAA2AQKC9p+rqTszg== dependencies: is-absolute-url "^4.0.1" is-shared-array-buffer@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" + resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz" integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== dependencies: call-bind "^1.0.2" is-ssh@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.4.0.tgz#4f8220601d2839d8fa624b3106f8e8884f01b8b2" + resolved "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz" integrity sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ== dependencies: protocols "^2.0.1" is-stream@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== is-string@^1.0.5, is-string@^1.0.7: version "1.0.7" - resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== dependencies: has-tostringtag "^1.0.0" is-symbol@^1.0.2, is-symbol@^1.0.3: version "1.0.4" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== dependencies: has-symbols "^1.0.2" is-text-path@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e" + resolved "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz" integrity sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w== dependencies: text-extensions "^1.0.0" is-typed-array@^1.1.10, is-typed-array@^1.1.9: version "1.1.10" - resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.10.tgz#36a5b5cb4189b575d1a3e4b08536bfb485801e3f" + resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz" integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A== dependencies: available-typed-arrays "^1.0.5" @@ -7394,53 +7399,53 @@ is-typed-array@^1.1.10, is-typed-array@^1.1.9: is-typedarray@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== is-unicode-supported@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" + resolved "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== is-weakref@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" + resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz" integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== dependencies: call-bind "^1.0.2" is-wsl@^2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz" integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== dependencies: is-docker "^2.0.0" isarray@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isemail@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.2.0.tgz#59310a021931a9fb06bbb51e155ce0b3f236832c" + resolved "https://registry.npmjs.org/isemail/-/isemail-3.2.0.tgz" integrity sha512-zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg== dependencies: punycode "2.x.x" isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isobject@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== issue-parser@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/issue-parser/-/issue-parser-6.0.0.tgz#b1edd06315d4f2044a9755daf85fdafde9b4014a" + resolved "https://registry.npmjs.org/issue-parser/-/issue-parser-6.0.0.tgz" integrity sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA== dependencies: lodash.capitalize "^4.2.1" @@ -7451,12 +7456,12 @@ issue-parser@^6.0.0: istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" + resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: version "5.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" + resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz" integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== dependencies: "@babel/core" "^7.12.3" @@ -7467,7 +7472,7 @@ istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: istanbul-lib-report@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== dependencies: istanbul-lib-coverage "^3.0.0" @@ -7476,7 +7481,7 @@ istanbul-lib-report@^3.0.0: istanbul-lib-source-maps@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz" integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== dependencies: debug "^4.1.1" @@ -7485,7 +7490,7 @@ istanbul-lib-source-maps@^4.0.0: istanbul-reports@^3.1.3: version "3.1.5" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae" + resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz" integrity sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w== dependencies: html-escaper "^2.0.0" @@ -7493,12 +7498,12 @@ istanbul-reports@^3.1.3: iterare@1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/iterare/-/iterare-1.2.1.tgz#139c400ff7363690e33abffa33cbba8920f00042" + resolved "https://registry.npmjs.org/iterare/-/iterare-1.2.1.tgz" integrity sha512-RKYVTCjAnRthyJes037NX/IiqeidgN1xc3j1RjFfECFp28A1GVwK9nA+i0rJPaHqSZwygLzRnFlzUuHFoWWy+Q== jake@^10.8.5: version "10.8.5" - resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46" + resolved "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz" integrity sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw== dependencies: async "^3.2.3" @@ -7508,12 +7513,12 @@ jake@^10.8.5: java-properties@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/java-properties/-/java-properties-1.0.2.tgz#ccd1fa73907438a5b5c38982269d0e771fe78211" + resolved "https://registry.npmjs.org/java-properties/-/java-properties-1.0.2.tgz" integrity sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ== jest-changed-files@^29.2.0: version "29.2.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.2.0.tgz#b6598daa9803ea6a4dce7968e20ab380ddbee289" + resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.2.0.tgz" integrity sha512-qPVmLLyBmvF5HJrY7krDisx6Voi8DmlV3GZYX0aFNbaQsZeoz1hfxcCMbqDGuQCxU1dJy9eYc2xscE8QrCCYaA== dependencies: execa "^5.0.0" @@ -7521,7 +7526,7 @@ jest-changed-files@^29.2.0: jest-circus@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.3.1.tgz#177d07c5c0beae8ef2937a67de68f1e17bbf1b4a" + resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-29.3.1.tgz" integrity sha512-wpr26sEvwb3qQQbdlmei+gzp6yoSSoSL6GsLPxnuayZSMrSd5Ka7IjAvatpIernBvT2+Ic6RLTg+jSebScmasg== dependencies: "@jest/environment" "^29.3.1" @@ -7546,7 +7551,7 @@ jest-circus@^29.3.1: jest-cli@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.3.1.tgz#e89dff427db3b1df50cea9a393ebd8640790416d" + resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-29.3.1.tgz" integrity sha512-TO/ewvwyvPOiBBuWZ0gm04z3WWP8TIK8acgPzE4IxgsLKQgb377NYGrQLc3Wl/7ndWzIH2CDNNsUjGxwLL43VQ== dependencies: "@jest/core" "^29.3.1" @@ -7564,7 +7569,7 @@ jest-cli@^29.3.1: jest-config@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.3.1.tgz#0bc3dcb0959ff8662957f1259947aedaefb7f3c6" + resolved "https://registry.npmjs.org/jest-config/-/jest-config-29.3.1.tgz" integrity sha512-y0tFHdj2WnTEhxmGUK1T7fgLen7YK4RtfvpLFBXfQkh2eMJAQq24Vx9472lvn5wg0MAO6B+iPfJfzdR9hJYalg== dependencies: "@babel/core" "^7.11.6" @@ -7592,7 +7597,7 @@ jest-config@^29.3.1: jest-diff@^29.0.0, jest-diff@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.3.1.tgz#d8215b72fed8f1e647aed2cae6c752a89e757527" + resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.3.1.tgz" integrity sha512-vU8vyiO7568tmin2lA3r2DP8oRvzhvRcD4DjpXc6uGveQodyk7CKLhQlCSiwgx3g0pFaE88/KLZ0yaTWMc4Uiw== dependencies: chalk "^4.0.0" @@ -7602,14 +7607,14 @@ jest-diff@^29.0.0, jest-diff@^29.3.1: jest-docblock@^29.2.0: version "29.2.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.2.0.tgz#307203e20b637d97cee04809efc1d43afc641e82" + resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.2.0.tgz" integrity sha512-bkxUsxTgWQGbXV5IENmfiIuqZhJcyvF7tU4zJ/7ioTutdz4ToB5Yx6JOFBpgI+TphRY4lhOyCWGNH/QFQh5T6A== dependencies: detect-newline "^3.0.0" jest-each@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.3.1.tgz#bc375c8734f1bb96625d83d1ca03ef508379e132" + resolved "https://registry.npmjs.org/jest-each/-/jest-each-29.3.1.tgz" integrity sha512-qrZH7PmFB9rEzCSl00BWjZYuS1BSOH8lLuC0azQE9lQrAx3PWGKHTDudQiOSwIy5dGAJh7KA0ScYlCP7JxvFYA== dependencies: "@jest/types" "^29.3.1" @@ -7620,7 +7625,7 @@ jest-each@^29.3.1: jest-environment-node@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.3.1.tgz#5023b32472b3fba91db5c799a0d5624ad4803e74" + resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.3.1.tgz" integrity sha512-xm2THL18Xf5sIHoU7OThBPtuH6Lerd+Y1NLYiZJlkE3hbE+7N7r8uvHIl/FkZ5ymKXJe/11SQuf3fv4v6rUMag== dependencies: "@jest/environment" "^29.3.1" @@ -7632,7 +7637,7 @@ jest-environment-node@^29.3.1: jest-extended@^3.2.3: version "3.2.3" - resolved "https://registry.yarnpkg.com/jest-extended/-/jest-extended-3.2.3.tgz#286c19b4622e2ab828e1bb28d3b2d4a1ed64f8b9" + resolved "https://registry.npmjs.org/jest-extended/-/jest-extended-3.2.3.tgz" integrity sha512-YcdjfFv3+N2AiWq4aG6gT/r1mfLtDKnbXs0hKXNlL/hf37TKQJTlh2zNwuMUYnvwKRRMtO/X9CfZU1EmOgUREA== dependencies: jest-diff "^29.0.0" @@ -7640,12 +7645,12 @@ jest-extended@^3.2.3: jest-get-type@^29.0.0, jest-get-type@^29.2.0: version "29.2.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.2.0.tgz#726646f927ef61d583a3b3adb1ab13f3a5036408" + resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.2.0.tgz" integrity sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA== jest-haste-map@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.3.1.tgz#af83b4347f1dae5ee8c2fb57368dc0bb3e5af843" + resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.3.1.tgz" integrity sha512-/FFtvoG1xjbbPXQLFef+WSU4yrc0fc0Dds6aRPBojUid7qlPqZvxdUBA03HW0fnVHXVCnCdkuoghYItKNzc/0A== dependencies: "@jest/types" "^29.3.1" @@ -7664,7 +7669,7 @@ jest-haste-map@^29.3.1: jest-leak-detector@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.3.1.tgz#95336d020170671db0ee166b75cd8ef647265518" + resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.3.1.tgz" integrity sha512-3DA/VVXj4zFOPagGkuqHnSQf1GZBmmlagpguxEERO6Pla2g84Q1MaVIB3YMxgUaFIaYag8ZnTyQgiZ35YEqAQA== dependencies: jest-get-type "^29.2.0" @@ -7672,7 +7677,7 @@ jest-leak-detector@^29.3.1: jest-matcher-utils@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.3.1.tgz#6e7f53512f80e817dfa148672bd2d5d04914a572" + resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.3.1.tgz" integrity sha512-fkRMZUAScup3txIKfMe3AIZZmPEjWEdsPJFK3AIy5qRohWqQFg1qrmKfYXR9qEkNc7OdAu2N4KPHibEmy4HPeQ== dependencies: chalk "^4.0.0" @@ -7682,7 +7687,7 @@ jest-matcher-utils@^29.3.1: jest-message-util@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.3.1.tgz#37bc5c468dfe5120712053dd03faf0f053bd6adb" + resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.3.1.tgz" integrity sha512-lMJTbgNcDm5z+6KDxWtqOFWlGQxD6XaYwBqHR8kmpkP+WWWG90I35kdtQHY67Ay5CSuydkTBbJG+tH9JShFCyA== dependencies: "@babel/code-frame" "^7.12.13" @@ -7697,7 +7702,7 @@ jest-message-util@^29.3.1: jest-mock@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.3.1.tgz#60287d92e5010979d01f218c6b215b688e0f313e" + resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-29.3.1.tgz" integrity sha512-H8/qFDtDVMFvFP4X8NuOT3XRDzOUTz+FeACjufHzsOIBAxivLqkB1PoLCaJx9iPPQ8dZThHPp/G3WRWyMgA3JA== dependencies: "@jest/types" "^29.3.1" @@ -7706,17 +7711,17 @@ jest-mock@^29.3.1: jest-pnp-resolver@^1.2.2: version "1.2.3" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" + resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz" integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== jest-regex-util@^29.2.0: version "29.2.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.2.0.tgz#82ef3b587e8c303357728d0322d48bbfd2971f7b" + resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.2.0.tgz" integrity sha512-6yXn0kg2JXzH30cr2NlThF+70iuO/3irbaB4mh5WyqNIvLLP+B6sFdluO1/1RJmslyh/f9osnefECflHvTbwVA== jest-resolve-dependencies@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.3.1.tgz#a6a329708a128e68d67c49f38678a4a4a914c3bf" + resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.3.1.tgz" integrity sha512-Vk0cYq0byRw2WluNmNWGqPeRnZ3p3hHmjJMp2dyyZeYIfiBskwq4rpiuGFR6QGAdbj58WC7HN4hQHjf2mpvrLA== dependencies: jest-regex-util "^29.2.0" @@ -7724,7 +7729,7 @@ jest-resolve-dependencies@^29.3.1: jest-resolve@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.3.1.tgz#9a4b6b65387a3141e4a40815535c7f196f1a68a7" + resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.3.1.tgz" integrity sha512-amXJgH/Ng712w3Uz5gqzFBBjxV8WFLSmNjoreBGMqxgCz5cH7swmBZzgBaCIOsvb0NbpJ0vgaSFdJqMdT+rADw== dependencies: chalk "^4.0.0" @@ -7739,7 +7744,7 @@ jest-resolve@^29.3.1: jest-runner@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.3.1.tgz#a92a879a47dd096fea46bb1517b0a99418ee9e2d" + resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-29.3.1.tgz" integrity sha512-oFvcwRNrKMtE6u9+AQPMATxFcTySyKfLhvso7Sdk/rNpbhg4g2GAGCopiInk1OP4q6gz3n6MajW4+fnHWlU3bA== dependencies: "@jest/console" "^29.3.1" @@ -7766,7 +7771,7 @@ jest-runner@^29.3.1: jest-runtime@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.3.1.tgz#21efccb1a66911d6d8591276a6182f520b86737a" + resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.3.1.tgz" integrity sha512-jLzkIxIqXwBEOZx7wx9OO9sxoZmgT2NhmQKzHQm1xwR1kNW/dn0OjxR424VwHHf1SPN6Qwlb5pp1oGCeFTQ62A== dependencies: "@jest/environment" "^29.3.1" @@ -7794,7 +7799,7 @@ jest-runtime@^29.3.1: jest-snapshot@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.3.1.tgz#17bcef71a453adc059a18a32ccbd594b8cc4e45e" + resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.3.1.tgz" integrity sha512-+3JOc+s28upYLI2OJM4PWRGK9AgpsMs/ekNryUV0yMBClT9B1DF2u2qay8YxcQd338PPYSFNb0lsar1B49sLDA== dependencies: "@babel/core" "^7.11.6" @@ -7824,7 +7829,7 @@ jest-snapshot@^29.3.1: jest-util@^29.0.0, jest-util@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.3.1.tgz#1dda51e378bbcb7e3bc9d8ab651445591ed373e1" + resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.3.1.tgz" integrity sha512-7YOVZaiX7RJLv76ZfHt4nbNEzzTRiMW/IiOG7ZOKmTXmoGBxUDefgMAxQubu6WPVqP5zSzAdZG0FfLcC7HOIFQ== dependencies: "@jest/types" "^29.3.1" @@ -7836,7 +7841,7 @@ jest-util@^29.0.0, jest-util@^29.3.1: jest-validate@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.3.1.tgz#d56fefaa2e7d1fde3ecdc973c7f7f8f25eea704a" + resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-29.3.1.tgz" integrity sha512-N9Lr3oYR2Mpzuelp1F8negJR3YE+L1ebk1rYA5qYo9TTY3f9OWdptLoNSPP9itOCBIRBqjt/S5XHlzYglLN67g== dependencies: "@jest/types" "^29.3.1" @@ -7848,7 +7853,7 @@ jest-validate@^29.3.1: jest-watcher@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.3.1.tgz#3341547e14fe3c0f79f9c3a4c62dbc3fc977fd4a" + resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.3.1.tgz" integrity sha512-RspXG2BQFDsZSRKGCT/NiNa8RkQ1iKAjrO0//soTMWx/QUt+OcxMqMSBxz23PYGqUuWm2+m2mNNsmj0eIoOaFg== dependencies: "@jest/test-result" "^29.3.1" @@ -7862,7 +7867,7 @@ jest-watcher@^29.3.1: jest-worker@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.3.1.tgz#e9462161017a9bb176380d721cab022661da3d6b" + resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.3.1.tgz" integrity sha512-lY4AnnmsEWeiXirAIA0c9SDPbuCBq8IYuDVL8PMm0MZ2PEs2yPvRA/J64QBXuZp7CYKrDM/rmNrc9/i3KJQncw== dependencies: "@types/node" "*" @@ -7872,7 +7877,7 @@ jest-worker@^29.3.1: jest@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-29.3.1.tgz#c130c0d551ae6b5459b8963747fed392ddbde122" + resolved "https://registry.npmjs.org/jest/-/jest-29.3.1.tgz" integrity sha512-6iWfL5DTT0Np6UYs/y5Niu7WIfNv/wRTtN5RSXt2DIEft3dx3zPuw/3WJQBCJfmEzvDiEKwoqMbGD9n49+qLSA== dependencies: "@jest/core" "^29.3.1" @@ -7882,34 +7887,34 @@ jest@^29.3.1: jose@^4.10.0: version "4.11.2" - resolved "https://registry.yarnpkg.com/jose/-/jose-4.11.2.tgz#d9699307c02e18ff56825843ba90e2fae9f09e23" + resolved "https://registry.npmjs.org/jose/-/jose-4.11.2.tgz" integrity sha512-njj0VL2TsIxCtgzhO+9RRobBvws4oYyCM8TpvoUQwl/MbIM3NFJRR9+e6x0sS5xXaP1t6OCBkaBME98OV9zU5A== js-md4@^0.3.2: version "0.3.2" - resolved "https://registry.yarnpkg.com/js-md4/-/js-md4-0.3.2.tgz#cd3b3dc045b0c404556c81ddb5756c23e59d7cf5" + resolved "https://registry.npmjs.org/js-md4/-/js-md4-0.3.2.tgz" integrity sha512-/GDnfQYsltsjRswQhN9fhv3EMw2sCpUdrdxyWDOUK7eyD++r3gRhzgiQgc/x4MAv2i1iuQ4lxO5mvqM3vj4bwA== js-sdsl@^4.1.4: version "4.2.0" - resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.2.0.tgz#278e98b7bea589b8baaf048c20aeb19eb7ad09d0" + resolved "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz" integrity sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ== js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-yaml@4.1.0, js-yaml@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" js-yaml@^3.10.0, js-yaml@^3.13.1, js-yaml@^3.6.1: version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" @@ -7917,93 +7922,93 @@ js-yaml@^3.10.0, js-yaml@^3.13.1, js-yaml@^3.6.1: jsbi@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/jsbi/-/jsbi-4.3.0.tgz#b54ee074fb6fcbc00619559305c8f7e912b04741" + resolved "https://registry.npmjs.org/jsbi/-/jsbi-4.3.0.tgz" integrity sha512-SnZNcinB4RIcnEyZqFPdGPVgrg2AcnykiBy0sHVJQKHYeaLUvi3Exj+iaPpLnFVkDPZIV4U0yvgC9/R4uEAZ9g== jsbn@1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-1.1.0.tgz#b01307cb29b618a1ed26ec79e911f803c4da0040" + resolved "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz" integrity sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A== jsesc@^2.5.1: version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== json-api-serializer@^2.6.6: version "2.6.6" - resolved "https://registry.yarnpkg.com/json-api-serializer/-/json-api-serializer-2.6.6.tgz#fa5d283b913e0ea25653f4d04f981dc44d66dd4f" + resolved "https://registry.npmjs.org/json-api-serializer/-/json-api-serializer-2.6.6.tgz" integrity sha512-l7/e2O5/0+GU38RTMowRUKxRlT8zFc1oryAYBxqK54sFZnvJOJI2bo4XbbxnkTtvSzwkyv5DoBUuFm0hvG3avg== dependencies: setimmediate "^1.0.5" json-parse-better-errors@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== json-schema-traverse@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== json-schema-traverse@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== json-stringify-nice@^1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz#2c937962b80181d3f317dd39aa323e14f5a60a67" + resolved "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz" integrity sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw== json-stringify-pretty-compact@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/json-stringify-pretty-compact/-/json-stringify-pretty-compact-3.0.0.tgz#f71ef9d82ef16483a407869556588e91b681d9ab" + resolved "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-3.0.0.tgz" integrity sha512-Rc2suX5meI0S3bfdZuA7JMFBGkJ875ApfVyq2WHELjBiiG22My/l7/8zPpH/CfFVQHuVLd8NLR0nv6vi0BYYKA== json-stringify-safe@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== json5@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz" integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" json5@^2.2.2, json5@^2.2.3: version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@3.2.0, jsonc-parser@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" + resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz" integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== jsonfile@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz" integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg== optionalDependencies: graceful-fs "^4.1.6" jsonfile@^6.0.1: version "6.1.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz" integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== dependencies: universalify "^2.0.0" @@ -8012,12 +8017,12 @@ jsonfile@^6.0.1: jsonparse@^1.2.0, jsonparse@^1.3.1: version "1.3.1" - resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + resolved "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz" integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg== jsonwebtoken@^9.0.0: version "9.0.0" - resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-9.0.0.tgz#d0faf9ba1cc3a56255fe49c0961a67e520c1926d" + resolved "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.0.tgz" integrity sha512-tuGfYXxkQGDPnLJ7SibiQgVgeDgfbPq2k2ICcbgqW8WxWLBAxKQM/ZCu/IT8SOSwmaYl4dpTFCW5xZv7YbbWUw== dependencies: jws "^3.2.2" @@ -8027,7 +8032,7 @@ jsonwebtoken@^9.0.0: jszip@^3.10.0: version "3.10.1" - resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.10.1.tgz#34aee70eb18ea1faec2f589208a157d1feb091c2" + resolved "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz" integrity sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g== dependencies: lie "~3.3.0" @@ -8037,17 +8042,17 @@ jszip@^3.10.0: just-diff-apply@^5.2.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/just-diff-apply/-/just-diff-apply-5.5.0.tgz#771c2ca9fa69f3d2b54e7c3f5c1dfcbcc47f9f0f" + resolved "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.5.0.tgz" integrity sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw== just-diff@^5.0.1: version "5.2.0" - resolved "https://registry.yarnpkg.com/just-diff/-/just-diff-5.2.0.tgz#60dca55891cf24cd4a094e33504660692348a241" + resolved "https://registry.npmjs.org/just-diff/-/just-diff-5.2.0.tgz" integrity sha512-6ufhP9SHjb7jibNFrNxyFZ6od3g+An6Ai9mhGRvcYe8UJlH0prseN64M+6ZBBUoKYHZsitDP42gAJ8+eVWr3lw== jwa@^1.4.1: version "1.4.1" - resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" + resolved "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz" integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== dependencies: buffer-equal-constant-time "1.0.1" @@ -8056,7 +8061,7 @@ jwa@^1.4.1: jwa@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/jwa/-/jwa-2.0.0.tgz#a7e9c3f29dae94027ebcaf49975c9345593410fc" + resolved "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz" integrity sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA== dependencies: buffer-equal-constant-time "1.0.1" @@ -8065,7 +8070,7 @@ jwa@^2.0.0: jws@^3.2.2: version "3.2.2" - resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" + resolved "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz" integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== dependencies: jwa "^1.4.1" @@ -8073,7 +8078,7 @@ jws@^3.2.2: jws@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/jws/-/jws-4.0.0.tgz#2d4e8cf6a318ffaa12615e9dec7e86e6c97310f4" + resolved "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz" integrity sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg== dependencies: jwa "^2.0.0" @@ -8081,29 +8086,29 @@ jws@^4.0.0: kareem@2.5.1: version "2.5.1" - resolved "https://registry.yarnpkg.com/kareem/-/kareem-2.5.1.tgz#7b8203e11819a8e77a34b3517d3ead206764d15d" + resolved "https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz" integrity sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA== keygrip@~1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/keygrip/-/keygrip-1.1.0.tgz#871b1681d5e159c62a445b0c74b615e0917e7226" + resolved "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz" integrity sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ== dependencies: tsscmp "1.0.6" kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== kleur@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== koa-bodyparser@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/koa-bodyparser/-/koa-bodyparser-4.3.0.tgz#274c778555ff48fa221ee7f36a9fbdbace22759a" + resolved "https://registry.npmjs.org/koa-bodyparser/-/koa-bodyparser-4.3.0.tgz" integrity sha512-uyV8G29KAGwZc4q/0WUAjH+Tsmuv9ImfBUF2oZVyZtaeo0husInagyn/JH85xMSxM0hEk/mbCII5ubLDuqW/Rw== dependencies: co-body "^6.0.0" @@ -8111,12 +8116,12 @@ koa-bodyparser@^4.3.0: koa-compose@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/koa-compose/-/koa-compose-4.1.0.tgz#507306b9371901db41121c812e923d0d67d3e877" + resolved "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz" integrity sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw== koa-convert@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/koa-convert/-/koa-convert-2.0.0.tgz#86a0c44d81d40551bae22fee6709904573eea4f5" + resolved "https://registry.npmjs.org/koa-convert/-/koa-convert-2.0.0.tgz" integrity sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA== dependencies: co "^4.6.0" @@ -8124,7 +8129,7 @@ koa-convert@^2.0.0: koa-jwt@^4.0.4: version "4.0.4" - resolved "https://registry.yarnpkg.com/koa-jwt/-/koa-jwt-4.0.4.tgz#1bb5ca337fe9b05e51b85530a0681db12aee64c2" + resolved "https://registry.npmjs.org/koa-jwt/-/koa-jwt-4.0.4.tgz" integrity sha512-Tid9BQfpVtUG/8YZV38a+hDKll0pfVhfl7A/2cNaYThS1cxMFXylZzfARqHQqvNhHy9qM+qkxd4/z6EaIV4SAQ== dependencies: jsonwebtoken "^9.0.0" @@ -8133,12 +8138,12 @@ koa-jwt@^4.0.4: koa-unless@^1.0.7: version "1.0.7" - resolved "https://registry.yarnpkg.com/koa-unless/-/koa-unless-1.0.7.tgz#b9df375e2b4da3043918d48622520c2c0b79f032" + resolved "https://registry.npmjs.org/koa-unless/-/koa-unless-1.0.7.tgz" integrity sha512-NKiz+nk4KxSJFskiJMuJvxeA41Lcnx3d8Zy+8QETgifm4ab4aOeGD3RgR6bIz0FGNWwo3Fz0DtnK77mEIqHWxA== koa@^2.13.4, koa@^2.14.1: version "2.14.1" - resolved "https://registry.yarnpkg.com/koa/-/koa-2.14.1.tgz#defb9589297d8eb1859936e777f3feecfc26925c" + resolved "https://registry.npmjs.org/koa/-/koa-2.14.1.tgz" integrity sha512-USJFyZgi2l0wDgqkfD27gL4YGno7TfUkcmOe6UOLFOVuN+J7FwnNu4Dydl4CUQzraM1lBAiGed0M9OVJoT0Kqw== dependencies: accepts "^1.3.5" @@ -8167,7 +8172,7 @@ koa@^2.13.4, koa@^2.14.1: lerna@^6.4.1: version "6.4.1" - resolved "https://registry.yarnpkg.com/lerna/-/lerna-6.4.1.tgz#a1e5abcb6c00de3367f50d75eca449e382525e0f" + resolved "https://registry.npmjs.org/lerna/-/lerna-6.4.1.tgz" integrity sha512-0t8TSG4CDAn5+vORjvTFn/ZEGyc4LOEsyBUpzcdIxODHPKM4TVOGvbW9dBs1g40PhOrQfwhHS+3fSx/42j42dQ== dependencies: "@lerna/add" "6.4.1" @@ -8198,12 +8203,12 @@ lerna@^6.4.1: leven@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== levn@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== dependencies: prelude-ls "^1.2.1" @@ -8211,7 +8216,7 @@ levn@^0.4.1: libnpmaccess@^6.0.3, libnpmaccess@^6.0.4: version "6.0.4" - resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-6.0.4.tgz#2dd158bd8a071817e2207d3b201d37cf1ad6ae6b" + resolved "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-6.0.4.tgz" integrity sha512-qZ3wcfIyUoW0+qSFkMBovcTrSGJ3ZeyvpR7d5N9pEYv/kXs8sHP2wiqEIXBKLFrZlmM0kR0RJD7mtfLngtlLag== dependencies: aproba "^2.0.0" @@ -8221,7 +8226,7 @@ libnpmaccess@^6.0.3, libnpmaccess@^6.0.4: libnpmdiff@^4.0.5: version "4.0.5" - resolved "https://registry.yarnpkg.com/libnpmdiff/-/libnpmdiff-4.0.5.tgz#ffaf93fa9440ea759444b8830fdb5c661b09a7c0" + resolved "https://registry.npmjs.org/libnpmdiff/-/libnpmdiff-4.0.5.tgz" integrity sha512-9fICQIzmH892UwHHPmb+Seup50UIBWcMIK2FdxvlXm9b4kc1nSH0b/BuY1mORJQtB6ydPMnn+BLzOTmd/SKJmw== dependencies: "@npmcli/disparity-colors" "^2.0.0" @@ -8235,7 +8240,7 @@ libnpmdiff@^4.0.5: libnpmexec@^4.0.14: version "4.0.14" - resolved "https://registry.yarnpkg.com/libnpmexec/-/libnpmexec-4.0.14.tgz#9ad44232434b374e477eb2c2e4548baaf698f773" + resolved "https://registry.npmjs.org/libnpmexec/-/libnpmexec-4.0.14.tgz" integrity sha512-dwmzv2K29SdoAHBOa7QR6CfQbFG/PiZDRF6HZrlI6C4DLt2hNgOHTFaUGOpqE2C+YGu0ZwYTDywxRe0eOnf0ZA== dependencies: "@npmcli/arborist" "^5.6.3" @@ -8255,14 +8260,14 @@ libnpmexec@^4.0.14: libnpmfund@^3.0.5: version "3.0.5" - resolved "https://registry.yarnpkg.com/libnpmfund/-/libnpmfund-3.0.5.tgz#817f9e2120889beb483d9ba8eda142bb84293e4e" + resolved "https://registry.npmjs.org/libnpmfund/-/libnpmfund-3.0.5.tgz" integrity sha512-KdeRoG/dem8H3PcEU2/0SKi3ip7AWwczgS72y/3PE+PBrz/s/G52FNIA9jeLnBirkLC0sOyQHfeM3b7e24ZM+g== dependencies: "@npmcli/arborist" "^5.6.3" libnpmhook@^8.0.4: version "8.0.4" - resolved "https://registry.yarnpkg.com/libnpmhook/-/libnpmhook-8.0.4.tgz#6c58e5fe763ff5d600ae9c20457ea9a69d1f7d87" + resolved "https://registry.npmjs.org/libnpmhook/-/libnpmhook-8.0.4.tgz" integrity sha512-nuD6e+Nx0OprjEi0wOeqASMl6QIH235th/Du2/8upK3evByFhzIgdfOeP1OhstavW4xtsl0hk5Vw4fAWWuSUgA== dependencies: aproba "^2.0.0" @@ -8270,7 +8275,7 @@ libnpmhook@^8.0.4: libnpmorg@^4.0.4: version "4.0.4" - resolved "https://registry.yarnpkg.com/libnpmorg/-/libnpmorg-4.0.4.tgz#2a01d49372cf0df90d79a61e69bddaf2ed704311" + resolved "https://registry.npmjs.org/libnpmorg/-/libnpmorg-4.0.4.tgz" integrity sha512-1bTpD7iub1rDCsgiBguhJhiDufLQuc8DEti20euqsXz9O0ncXVpCYqf2SMmHR4GEdmAvAj2r7FMiyA9zGdaTpA== dependencies: aproba "^2.0.0" @@ -8278,7 +8283,7 @@ libnpmorg@^4.0.4: libnpmpack@^4.1.3: version "4.1.3" - resolved "https://registry.yarnpkg.com/libnpmpack/-/libnpmpack-4.1.3.tgz#025cfe39829acd8260662bf259e3a9331fc1e4b2" + resolved "https://registry.npmjs.org/libnpmpack/-/libnpmpack-4.1.3.tgz" integrity sha512-rYP4X++ME3ZiFO+2iN3YnXJ4LB4Gsd0z5cgszWJZxaEpDN4lRIXirSyynGNsN/hn4taqnlxD+3DPlFDShvRM8w== dependencies: "@npmcli/run-script" "^4.1.3" @@ -8287,7 +8292,7 @@ libnpmpack@^4.1.3: libnpmpublish@^6.0.4, libnpmpublish@^6.0.5: version "6.0.5" - resolved "https://registry.yarnpkg.com/libnpmpublish/-/libnpmpublish-6.0.5.tgz#5a894f3de2e267d62f86be2a508e362599b5a4b1" + resolved "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-6.0.5.tgz" integrity sha512-LUR08JKSviZiqrYTDfywvtnsnxr+tOvBU0BF8H+9frt7HMvc6Qn6F8Ubm72g5hDTHbq8qupKfDvDAln2TVPvFg== dependencies: normalize-package-data "^4.0.0" @@ -8298,14 +8303,14 @@ libnpmpublish@^6.0.4, libnpmpublish@^6.0.5: libnpmsearch@^5.0.4: version "5.0.4" - resolved "https://registry.yarnpkg.com/libnpmsearch/-/libnpmsearch-5.0.4.tgz#b32aa2b23051c00cdcc0912274d0d416e6655d81" + resolved "https://registry.npmjs.org/libnpmsearch/-/libnpmsearch-5.0.4.tgz" integrity sha512-XHDmsvpN5+pufvGnfLRqpy218gcGGbbbXR6wPrDJyd1em6agKdYByzU5ccskDHH9iVm2UeLydpDsW1ksYuU0cg== dependencies: npm-registry-fetch "^13.0.0" libnpmteam@^4.0.4: version "4.0.4" - resolved "https://registry.yarnpkg.com/libnpmteam/-/libnpmteam-4.0.4.tgz#ac26068808d93b1051d926457db14e4b3ff669ef" + resolved "https://registry.npmjs.org/libnpmteam/-/libnpmteam-4.0.4.tgz" integrity sha512-rzKSwi6MLzwwevbM/vl+BBQTErgn24tCfgPUdzBlszrw3j5necOu7WnTzgvZMDv6maGUwec6Ut1rxszOgH0l+Q== dependencies: aproba "^2.0.0" @@ -8313,7 +8318,7 @@ libnpmteam@^4.0.4: libnpmversion@^3.0.7: version "3.0.7" - resolved "https://registry.yarnpkg.com/libnpmversion/-/libnpmversion-3.0.7.tgz#e4c6c07ee28cf351ce1e2293a5ac9922b09ea94d" + resolved "https://registry.npmjs.org/libnpmversion/-/libnpmversion-3.0.7.tgz" integrity sha512-O0L4eNMUIMQ+effi1HsZPKp2N6wecwqGqB8PvkvmLPWN7EsdabdzAVG48nv0p/OjlbIai5KQg/L+qMMfCA4ZjA== dependencies: "@npmcli/git" "^3.0.0" @@ -8324,14 +8329,14 @@ libnpmversion@^3.0.7: lie@~3.3.0: version "3.3.0" - resolved "https://registry.yarnpkg.com/lie/-/lie-3.3.0.tgz#dcf82dee545f46074daf200c7c1c5a08e0f40f6a" + resolved "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz" integrity sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ== dependencies: immediate "~3.0.5" light-my-request@5.6.1: version "5.6.1" - resolved "https://registry.yarnpkg.com/light-my-request/-/light-my-request-5.6.1.tgz#cff5c75d8cb35a354433d75406fea74a2f8bcdb1" + resolved "https://registry.npmjs.org/light-my-request/-/light-my-request-5.6.1.tgz" integrity sha512-sbJnC1UBRivi9L1kICr3CESb82pNiPNB3TvtdIrZZqW0Qh8uDXvoywMmWKZlihDcmw952CMICCzM+54LDf+E+g== dependencies: cookie "^0.5.0" @@ -8340,7 +8345,7 @@ light-my-request@5.6.1: light-my-request@^3.7.3: version "3.8.0" - resolved "https://registry.yarnpkg.com/light-my-request/-/light-my-request-3.8.0.tgz#7da96786e4d479371b25cfd524ee05d5d583dae8" + resolved "https://registry.npmjs.org/light-my-request/-/light-my-request-3.8.0.tgz" integrity sha512-cIOWmNsgoStysmkzcv2EwvLwMb2hEm6oqKMerG/b5ey9F0we2Qony8cAZgBktmGPYUvPyKsDCzMcYU6fXbpWew== dependencies: ajv "^6.10.2" @@ -8350,7 +8355,7 @@ light-my-request@^3.7.3: light-my-request@^4.2.0: version "4.12.0" - resolved "https://registry.yarnpkg.com/light-my-request/-/light-my-request-4.12.0.tgz#fd59329a7b4f794842103c7bef69e12252478831" + resolved "https://registry.npmjs.org/light-my-request/-/light-my-request-4.12.0.tgz" integrity sha512-0y+9VIfJEsPVzK5ArSIJ8Dkxp8QMP7/aCuxCUtG/tr9a2NoOf/snATE/OUc05XUplJCEnRh6gTkH7xh9POt1DQ== dependencies: ajv "^8.1.0" @@ -8360,7 +8365,7 @@ light-my-request@^4.2.0: light-my-request@^5.6.1: version "5.8.0" - resolved "https://registry.yarnpkg.com/light-my-request/-/light-my-request-5.8.0.tgz#93b28615d4cd134b4e2370bcf2ff7e35b51c8d29" + resolved "https://registry.npmjs.org/light-my-request/-/light-my-request-5.8.0.tgz" integrity sha512-4BtD5C+VmyTpzlDPCZbsatZMJVgUIciSOwYhJDCbLffPZ35KoDkDj4zubLeHDEb35b4kkPeEv5imbh+RJxK/Pg== dependencies: cookie "^0.5.0" @@ -8369,17 +8374,17 @@ light-my-request@^5.6.1: lines-and-columns@^1.1.6: version "1.2.4" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== lines-and-columns@~2.0.3: version "2.0.3" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-2.0.3.tgz#b2f0badedb556b747020ab8ea7f0373e22efac1b" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz" integrity sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w== link-check@^5.2.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/link-check/-/link-check-5.2.0.tgz#595a339d305900bed8c1302f4342a29c366bf478" + resolved "https://registry.npmjs.org/link-check/-/link-check-5.2.0.tgz" integrity sha512-xRbhYLaGDw7eRDTibTAcl6fXtmUQ13vkezQiTqshHHdGueQeumgxxmQMIOmJYsh2p8BF08t8thhDQ++EAOOq3w== dependencies: is-relative-url "^4.0.0" @@ -8389,7 +8394,7 @@ link-check@^5.2.0: load-json-file@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz" integrity sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw== dependencies: graceful-fs "^4.1.2" @@ -8399,7 +8404,7 @@ load-json-file@^4.0.0: load-json-file@^6.2.0: version "6.2.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz" integrity sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ== dependencies: graceful-fs "^4.1.15" @@ -8409,7 +8414,7 @@ load-json-file@^6.2.0: locate-path@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" integrity sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA== dependencies: p-locate "^2.0.0" @@ -8417,141 +8422,141 @@ locate-path@^2.0.0: locate-path@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz" integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== dependencies: p-locate "^4.1.0" locate-path@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== dependencies: p-locate "^5.0.0" lodash.camelcase@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + resolved "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz" integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA== lodash.capitalize@^4.2.1: version "4.2.1" - resolved "https://registry.yarnpkg.com/lodash.capitalize/-/lodash.capitalize-4.2.1.tgz#f826c9b4e2a8511d84e3aca29db05e1a4f3b72a9" + resolved "https://registry.npmjs.org/lodash.capitalize/-/lodash.capitalize-4.2.1.tgz" integrity sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw== lodash.escaperegexp@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz#64762c48618082518ac3df4ccf5d5886dae20347" + resolved "https://registry.npmjs.org/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz" integrity sha1-ZHYsSGGAglGKw99Mz11YhtriA0c= lodash.get@^4.4.2: version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + resolved "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz" integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ== lodash.isboolean@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" + resolved "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz" integrity sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg== lodash.isequal@^4.5.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" + resolved "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz" integrity sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ== lodash.isfunction@^3.0.9: version "3.0.9" - resolved "https://registry.yarnpkg.com/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz#06de25df4db327ac931981d1bdb067e5af68d051" + resolved "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz" integrity sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw== lodash.ismatch@^4.4.0: version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" + resolved "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz" integrity sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g== lodash.isnil@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/lodash.isnil/-/lodash.isnil-4.0.0.tgz#49e28cd559013458c814c5479d3c663a21bfaa6c" + resolved "https://registry.npmjs.org/lodash.isnil/-/lodash.isnil-4.0.0.tgz" integrity sha512-up2Mzq3545mwVnMhTDMdfoG1OurpA/s5t88JmQX809eH3C8491iu2sfKhTfhQtKY78oPNhiaHJUpT/dUDAAtng== lodash.isplainobject@^4.0.6: version "4.0.6" - resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" + resolved "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz" integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== lodash.isstring@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" + resolved "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz" integrity sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw== lodash.isundefined@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash.isundefined/-/lodash.isundefined-3.0.1.tgz#23ef3d9535565203a66cefd5b830f848911afb48" + resolved "https://registry.npmjs.org/lodash.isundefined/-/lodash.isundefined-3.0.1.tgz" integrity sha512-MXB1is3s899/cD8jheYYE2V9qTHwKvt+npCwpD+1Sxm3Q3cECXCiYHjeHWXNwr6Q0SOBPrYUDxendrO6goVTEA== lodash.kebabcase@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" + resolved "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz" integrity sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g== lodash.memoize@4.x: version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== lodash.merge@^4.6.0, lodash.merge@^4.6.2: version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== lodash.mergewith@^4.6.2: version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz#617121f89ac55f59047c7aec1ccd6654c6590f55" + resolved "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz" integrity sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ== lodash.reduce@^4.6.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz#f1ab6b839299ad48f784abbf476596f03b914d3b" + resolved "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz" integrity sha512-6raRe2vxCYBhpBu+B+TtNGUzah+hQjVdu3E17wfusjyrXBka2nBS8OH/gjVZ5PvHOhWmIZTYri09Z6n/QfnNMw== lodash.snakecase@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz#39d714a35357147837aefd64b5dcbb16becd8f8d" + resolved "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz" integrity sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw== lodash.startcase@^4.4.0: version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8" + resolved "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz" integrity sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg== lodash.uniq@^4.5.0: version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + resolved "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz" integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== lodash.uniqby@^4.7.0: version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz#d99c07a669e9e6d24e1362dfe266c67616af1302" + resolved "https://registry.npmjs.org/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz" integrity sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww== lodash.uniqueid@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.uniqueid/-/lodash.uniqueid-4.0.1.tgz#3268f26a7c88e4f4b1758d679271814e31fa5b26" + resolved "https://registry.npmjs.org/lodash.uniqueid/-/lodash.uniqueid-4.0.1.tgz" integrity sha512-GQQWaIeGlL6DIIr06kj1j6sSmBxyNMwI8kaX9aKpHR/XsMTiaXDVPNPAkiboOTK9OJpTJF/dXT3xYoFQnj386Q== lodash.upperfirst@^4.3.1: version "4.3.1" - resolved "https://registry.yarnpkg.com/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz#1365edf431480481ef0d1c68957a5ed99d49f7ce" + resolved "https://registry.npmjs.org/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz" integrity sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg== lodash@^4.17.15, lodash@^4.17.21, lodash@^4.17.4: version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== log-symbols@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" + resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz" integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== dependencies: chalk "^4.1.0" @@ -8559,7 +8564,7 @@ log-symbols@^4.1.0: loglevel-colored-level-prefix@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/loglevel-colored-level-prefix/-/loglevel-colored-level-prefix-1.0.0.tgz#6a40218fdc7ae15fc76c3d0f3e676c465388603e" + resolved "https://registry.npmjs.org/loglevel-colored-level-prefix/-/loglevel-colored-level-prefix-1.0.0.tgz" integrity sha512-u45Wcxxc+SdAlh4yeF/uKlC1SPUPCy0gullSNKXod5I4bmifzk+Q4lSLExNEVn19tGaJipbZ4V4jbFn79/6mVA== dependencies: chalk "^1.1.3" @@ -8567,51 +8572,51 @@ loglevel-colored-level-prefix@^1.0.0: loglevel@^1.4.1: version "1.8.1" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.8.1.tgz#5c621f83d5b48c54ae93b6156353f555963377b4" + resolved "https://registry.npmjs.org/loglevel/-/loglevel-1.8.1.tgz" integrity sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg== long@^5.2.1: version "5.2.1" - resolved "https://registry.yarnpkg.com/long/-/long-5.2.1.tgz#e27595d0083d103d2fa2c20c7699f8e0c92b897f" + resolved "https://registry.npmjs.org/long/-/long-5.2.1.tgz" integrity sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A== longest-streak@^2.0.0: version "2.0.4" - resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.4.tgz#b8599957da5b5dab64dee3fe316fa774597d90e4" + resolved "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz" integrity sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg== lru-cache@*, lru-cache@^7.14.0, lru-cache@^7.14.1, lru-cache@^7.4.4, lru-cache@^7.5.1, lru-cache@^7.7.1: version "7.14.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.14.1.tgz#8da8d2f5f59827edb388e63e459ac23d6d408fea" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz" integrity sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA== lru-cache@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz" integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== dependencies: yallist "^3.0.2" lru-cache@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== dependencies: yallist "^4.0.0" lunr@^2.3.9: version "2.3.9" - resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" + resolved "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz" integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== luxon@^3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.2.1.tgz#14f1af209188ad61212578ea7e3d518d18cee45f" + resolved "https://registry.npmjs.org/luxon/-/luxon-3.2.1.tgz" integrity sha512-QrwPArQCNLAKGO/C+ZIilgIuDnEnKx5QYODdDtbFaxzsbZcc/a7WFq7MhsVYgRlwawLtvOUESTlfJ+hc/USqPg== make-dir@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz" integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== dependencies: pify "^4.0.1" @@ -8619,19 +8624,19 @@ make-dir@^2.1.0: make-dir@^3.0.0, make-dir@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== dependencies: semver "^6.0.0" make-error@1.x, make-error@^1.1.1: version "1.3.6" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== make-fetch-happen@^10.0.3, make-fetch-happen@^10.0.6, make-fetch-happen@^10.2.0: version "10.2.1" - resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz#f5e3835c5e9817b617f2770870d9492d28678164" + resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz" integrity sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w== dependencies: agentkeepalive "^4.2.1" @@ -8653,7 +8658,7 @@ make-fetch-happen@^10.0.3, make-fetch-happen@^10.0.6, make-fetch-happen@^10.2.0: make-fetch-happen@^9.1.0: version "9.1.0" - resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" + resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz" integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== dependencies: agentkeepalive "^4.1.3" @@ -8675,24 +8680,24 @@ make-fetch-happen@^9.1.0: makeerror@1.0.12: version "1.0.12" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz" integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== dependencies: tmpl "1.0.5" map-obj@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz" integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg== map-obj@^4.0.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" + resolved "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz" integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== mariadb@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/mariadb/-/mariadb-3.0.2.tgz#427ae286b8fb35f4046b3457f4df729a5019d6c3" + resolved "https://registry.npmjs.org/mariadb/-/mariadb-3.0.2.tgz" integrity sha512-dVjiQZ6RW0IXFnX+T/ZEmnqs724DgkQsXqfCyInXn0XxVfO2Px6KbS4M3Ny6UiBg0zJ93SHHvfVBgYO4ZnFvvw== dependencies: "@types/geojson" "^7946.0.10" @@ -8704,7 +8709,7 @@ mariadb@^3.0.2: markdown-link-check@^3.10.3: version "3.10.3" - resolved "https://registry.yarnpkg.com/markdown-link-check/-/markdown-link-check-3.10.3.tgz#27881fa43fa61c05f82c21d979c10ed0553d4673" + resolved "https://registry.npmjs.org/markdown-link-check/-/markdown-link-check-3.10.3.tgz" integrity sha512-uGdJiZOy1CVWlRe7CyBSJ0Gz80Xm4vt++xjX9sNFjB7qcAxLinaMmzFQ5xOwERaXC9mK770BhnqnsyJT1gTr9w== dependencies: async "^3.2.4" @@ -8718,7 +8723,7 @@ markdown-link-check@^3.10.3: markdown-link-extractor@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/markdown-link-extractor/-/markdown-link-extractor-3.1.0.tgz#0d5a703630d791a9e2017449e1a9b294f2d2b676" + resolved "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-3.1.0.tgz" integrity sha512-r0NEbP1dsM+IqB62Ru9TXLP/HDaTdBNIeylYXumuBi6Xv4ufjE1/g3TnslYL8VNqNcGAGbMptQFHrrdfoZ/Sug== dependencies: html-link-extractor "^1.0.5" @@ -8726,14 +8731,14 @@ markdown-link-extractor@^3.1.0: markdown-table@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-2.0.0.tgz#194a90ced26d31fe753d8b9434430214c011865b" + resolved "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz" integrity sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A== dependencies: repeat-string "^1.0.0" marked-terminal@^5.0.0: version "5.1.1" - resolved "https://registry.yarnpkg.com/marked-terminal/-/marked-terminal-5.1.1.tgz#d2edc2991841d893ee943b44b40b2ee9518b4d9f" + resolved "https://registry.npmjs.org/marked-terminal/-/marked-terminal-5.1.1.tgz" integrity sha512-+cKTOx9P4l7HwINYhzbrBSyzgxO2HaHKGZGuB1orZsMIgXYaJyfidT81VXRdpelW/PcHEWxywscePVgI/oUF6g== dependencies: ansi-escapes "^5.0.0" @@ -8745,12 +8750,12 @@ marked-terminal@^5.0.0: marked@^4.0.10, marked@^4.1.0, marked@^4.2.5: version "4.2.5" - resolved "https://registry.yarnpkg.com/marked/-/marked-4.2.5.tgz#979813dfc1252cc123a79b71b095759a32f42a5d" + resolved "https://registry.npmjs.org/marked/-/marked-4.2.5.tgz" integrity sha512-jPueVhumq7idETHkb203WDD4fMA3yV9emQ5vLwop58lu8bTclMghBWcYAavlDqIEMaisADinV1TooIFCfqOsYQ== mdast-util-find-and-replace@^1.1.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz#b7db1e873f96f66588c321f1363069abf607d1b5" + resolved "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz" integrity sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA== dependencies: escape-string-regexp "^4.0.0" @@ -8759,7 +8764,7 @@ mdast-util-find-and-replace@^1.1.0: mdast-util-from-markdown@^0.8.0: version "0.8.5" - resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz#d1ef2ca42bc377ecb0463a987910dae89bd9a28c" + resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz" integrity sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ== dependencies: "@types/mdast" "^3.0.0" @@ -8770,7 +8775,7 @@ mdast-util-from-markdown@^0.8.0: mdast-util-gfm-autolink-literal@^0.1.0: version "0.1.3" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz#9c4ff399c5ddd2ece40bd3b13e5447d84e385fb7" + resolved "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz" integrity sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A== dependencies: ccount "^1.0.0" @@ -8779,14 +8784,14 @@ mdast-util-gfm-autolink-literal@^0.1.0: mdast-util-gfm-strikethrough@^0.2.0: version "0.2.3" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz#45eea337b7fff0755a291844fbea79996c322890" + resolved "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz" integrity sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA== dependencies: mdast-util-to-markdown "^0.6.0" mdast-util-gfm-table@^0.1.0: version "0.1.6" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz#af05aeadc8e5ee004eeddfb324b2ad8c029b6ecf" + resolved "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz" integrity sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ== dependencies: markdown-table "^2.0.0" @@ -8794,14 +8799,14 @@ mdast-util-gfm-table@^0.1.0: mdast-util-gfm-task-list-item@^0.1.0: version "0.1.6" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz#70c885e6b9f543ddd7e6b41f9703ee55b084af10" + resolved "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz" integrity sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A== dependencies: mdast-util-to-markdown "~0.6.0" mdast-util-gfm@^0.1.0: version "0.1.2" - resolved "https://registry.yarnpkg.com/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz#8ecddafe57d266540f6881f5c57ff19725bd351c" + resolved "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz" integrity sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ== dependencies: mdast-util-gfm-autolink-literal "^0.1.0" @@ -8812,7 +8817,7 @@ mdast-util-gfm@^0.1.0: mdast-util-to-markdown@^0.6.0, mdast-util-to-markdown@^0.6.1, mdast-util-to-markdown@^0.6.2, mdast-util-to-markdown@~0.6.0: version "0.6.5" - resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz#b33f67ca820d69e6cc527a93d4039249b504bebe" + resolved "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz" integrity sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ== dependencies: "@types/unist" "^2.0.0" @@ -8824,22 +8829,22 @@ mdast-util-to-markdown@^0.6.0, mdast-util-to-markdown@^0.6.1, mdast-util-to-mark mdast-util-to-string@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz#b8cfe6a713e1091cb5b728fc48885a4767f8b97b" + resolved "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz" integrity sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w== media-typer@0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + resolved "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz" integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== memory-pager@^1.0.2: version "1.5.0" - resolved "https://registry.yarnpkg.com/memory-pager/-/memory-pager-1.5.0.tgz#d8751655d22d384682741c972f2c3d6dfa3e66b5" + resolved "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz" integrity sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg== meow@^8.0.0, meow@^8.1.2: version "8.1.2" - resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" + resolved "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz" integrity sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q== dependencies: "@types/minimist" "^1.2.0" @@ -8856,60 +8861,60 @@ meow@^8.0.0, meow@^8.1.2: merge-descriptors@1.0.1, merge-descriptors@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + resolved "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz" integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== merge-stream@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== methods@^1.1.2, methods@~1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== micromark-extension-gfm-autolink-literal@~0.5.0: version "0.5.7" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz#53866c1f0c7ef940ae7ca1f72c6faef8fed9f204" + resolved "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz" integrity sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw== dependencies: micromark "~2.11.3" micromark-extension-gfm-strikethrough@~0.6.5: version "0.6.5" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz#96cb83356ff87bf31670eefb7ad7bba73e6514d1" + resolved "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz" integrity sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw== dependencies: micromark "~2.11.0" micromark-extension-gfm-table@~0.4.0: version "0.4.3" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz#4d49f1ce0ca84996c853880b9446698947f1802b" + resolved "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz" integrity sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA== dependencies: micromark "~2.11.0" micromark-extension-gfm-tagfilter@~0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz#d9f26a65adee984c9ccdd7e182220493562841ad" + resolved "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz" integrity sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q== micromark-extension-gfm-task-list-item@~0.3.0: version "0.3.3" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz#d90c755f2533ed55a718129cee11257f136283b8" + resolved "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz" integrity sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ== dependencies: micromark "~2.11.0" micromark-extension-gfm@^0.3.0: version "0.3.3" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz#36d1a4c089ca8bdfd978c9bd2bf1a0cb24e2acfe" + resolved "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz" integrity sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A== dependencies: micromark "~2.11.0" @@ -8921,7 +8926,7 @@ micromark-extension-gfm@^0.3.0: micromark@^2.11.3, micromark@~2.11.0, micromark@~2.11.3: version "2.11.4" - resolved "https://registry.yarnpkg.com/micromark/-/micromark-2.11.4.tgz#d13436138eea826383e822449c9a5c50ee44665a" + resolved "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz" integrity sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA== dependencies: debug "^4.0.0" @@ -8929,7 +8934,7 @@ micromark@^2.11.3, micromark@~2.11.0, micromark@~2.11.3: micromatch@4.0.2: version "4.0.2" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz" integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== dependencies: braces "^3.0.1" @@ -8937,7 +8942,7 @@ micromatch@4.0.2: micromatch@^4.0.0, micromatch@^4.0.2, micromatch@^4.0.4: version "4.0.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== dependencies: braces "^3.0.2" @@ -8945,7 +8950,7 @@ micromatch@^4.0.0, micromatch@^4.0.2, micromatch@^4.0.4: middie@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/middie/-/middie-4.1.0.tgz#0fe986c83d5081489514ca1a2daba5ca36263436" + resolved "https://registry.npmjs.org/middie/-/middie-4.1.0.tgz" integrity sha512-eylPpZA+K3xO9kpDjagoPkEUkNcWV3EAo5OEz0MqsekUpT7KbnQkk8HNZkh4phx2vvOAmNNZuLRWF9lDDHPpVQ== dependencies: path-to-regexp "^4.0.0" @@ -8953,65 +8958,72 @@ middie@^4.1.0: mime-db@1.52.0: version "1.52.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== mime-types@^2.1.12, mime-types@^2.1.18, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" mime@1.6.0, mime@^1.3.4: version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== mime@2.6.0: version "2.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" + resolved "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz" integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== mime@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz#b374550dca3a0c18443b0c950a6a58f1931cf7a7" + resolved "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz" integrity sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A== mimic-fn@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== min-indent@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" + resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== minimatch@3.0.5: version "3.0.5" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.5.tgz#4da8f1290ee0f0f8e83d60ca69f8f134068604a3" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz" integrity sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw== dependencies: brace-expansion "^1.1.7" minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" -minimatch@^5.0.1, minimatch@^5.1.0, minimatch@^5.1.2: +minimatch@^5.0.1: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + +minimatch@^5.1.0, minimatch@^5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.2.tgz#0939d7d6f0898acbd1508abe534d1929368a8fff" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz" integrity sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg== dependencies: brace-expansion "^2.0.1" minimist-options@4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" + resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz" integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== dependencies: arrify "^1.0.1" @@ -9020,19 +9032,19 @@ minimist-options@4.1.0: minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: version "1.2.7" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz" integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== minipass-collect@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + resolved "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz" integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== dependencies: minipass "^3.0.0" minipass-fetch@^1.3.2: version "1.4.1" - resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" + resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz" integrity sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw== dependencies: minipass "^3.1.0" @@ -9043,7 +9055,7 @@ minipass-fetch@^1.3.2: minipass-fetch@^2.0.3: version "2.1.2" - resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-2.1.2.tgz#95560b50c472d81a3bc76f20ede80eaed76d8add" + resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz" integrity sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA== dependencies: minipass "^3.1.6" @@ -9054,14 +9066,14 @@ minipass-fetch@^2.0.3: minipass-flush@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + resolved "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz" integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== dependencies: minipass "^3.0.0" minipass-json-stream@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz#7edbb92588fbfc2ff1db2fc10397acb7b6b44aa7" + resolved "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz" integrity sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg== dependencies: jsonparse "^1.3.1" @@ -9069,35 +9081,35 @@ minipass-json-stream@^1.0.1: minipass-pipeline@^1.2.2, minipass-pipeline@^1.2.4: version "1.2.4" - resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + resolved "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz" integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== dependencies: minipass "^3.0.0" minipass-sized@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" + resolved "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz" integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== dependencies: minipass "^3.0.0" minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3, minipass@^3.1.6: version "3.3.6" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" + resolved "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz" integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== dependencies: yallist "^4.0.0" minipass@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-4.0.0.tgz#7cebb0f9fa7d56f0c5b17853cbe28838a8dbbd3b" + resolved "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz" integrity sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw== dependencies: yallist "^4.0.0" minizlib@^2.0.0, minizlib@^2.1.1, minizlib@^2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + resolved "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz" integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== dependencies: minipass "^3.0.0" @@ -9105,7 +9117,7 @@ minizlib@^2.0.0, minizlib@^2.1.1, minizlib@^2.1.2: mkdirp-infer-owner@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" + resolved "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz" integrity sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw== dependencies: chownr "^2.0.0" @@ -9114,43 +9126,43 @@ mkdirp-infer-owner@^2.0.0: mkdirp@^0.5.4: version "0.5.6" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz" integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== dependencies: minimist "^1.2.6" mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== mnemonist@0.39.5: version "0.39.5" - resolved "https://registry.yarnpkg.com/mnemonist/-/mnemonist-0.39.5.tgz#5850d9b30d1b2bc57cc8787e5caa40f6c3420477" + resolved "https://registry.npmjs.org/mnemonist/-/mnemonist-0.39.5.tgz" integrity sha512-FPUtkhtJ0efmEFGpU14x7jGbTB+s18LrzRL2KgoWz9YvcY3cPomz8tih01GbHwnGk/OmkOKfqd/RAQoc8Lm7DQ== dependencies: obliterator "^2.0.1" modify-values@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" + resolved "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== moment-timezone@^0.5.35, moment-timezone@^0.5.38: version "0.5.40" - resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.40.tgz#c148f5149fd91dd3e29bf481abc8830ecba16b89" + resolved "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.40.tgz" integrity sha512-tWfmNkRYmBkPJz5mr9GVDn9vRlVZOTe6yqY92rFxiOdWXbjaR0+9LwQnZGGuNR63X456NqmEkbskte8tWL5ePg== dependencies: moment ">= 2.9.0" "moment@>= 2.9.0", moment@^2.29.1: version "2.29.4" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108" + resolved "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz" integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w== mongodb-connection-string-url@^2.6.0: version "2.6.0" - resolved "https://registry.yarnpkg.com/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz#57901bf352372abdde812c81be47b75c6b2ec5cf" + resolved "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz" integrity sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ== dependencies: "@types/whatwg-url" "^8.2.1" @@ -9158,7 +9170,7 @@ mongodb-connection-string-url@^2.6.0: mongodb@5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-5.1.0.tgz#e551f9e496777bde9173e51d16c163ab2c805b9d" + resolved "https://registry.npmjs.org/mongodb/-/mongodb-5.1.0.tgz" integrity sha512-qgKb7y+EI90y4weY3z5+lIgm8wmexbonz0GalHkSElQXVKtRuwqXuhXKccyvIjXCJVy9qPV82zsinY0W1FBnJw== dependencies: bson "^5.0.1" @@ -9169,7 +9181,7 @@ mongodb@5.1.0: mongoose@^7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-7.0.1.tgz#9afc737d10b3920c2c9b77ac5ac77fd6ff828d3d" + resolved "https://registry.npmjs.org/mongoose/-/mongoose-7.0.1.tgz" integrity sha512-fxm2bPRG457Hb8RLwN8cMCokK8HNem/7g+qp5SrHC7Pt4Z4jqn1+/3cuc8W7uqehKDWEtpirggI7uw08x2ZIjQ== dependencies: bson "^5.0.1" @@ -9182,34 +9194,34 @@ mongoose@^7.0.1: mpath@0.9.0: version "0.9.0" - resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.9.0.tgz#0c122fe107846e31fc58c75b09c35514b3871904" + resolved "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz" integrity sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew== mquery@5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/mquery/-/mquery-5.0.0.tgz#a95be5dfc610b23862df34a47d3e5d60e110695d" + resolved "https://registry.npmjs.org/mquery/-/mquery-5.0.0.tgz" integrity sha512-iQMncpmEK8R8ncT8HJGsGc9Dsp8xcgYMVSbs5jgnm1lFHTZqMJTUWTDx1LBO8+mK3tPNZWFLBghQEIOULSTHZg== dependencies: debug "4.x" ms@2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== ms@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.2, ms@^2.1.3: version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== multer@1.4.4-lts.1: version "1.4.4-lts.1" - resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.4-lts.1.tgz#24100f701a4611211cfae94ae16ea39bb314e04d" + resolved "https://registry.npmjs.org/multer/-/multer-1.4.4-lts.1.tgz" integrity sha512-WeSGziVj6+Z2/MwQo3GvqzgR+9Uc+qt8SwHKh3gvNPiISKfsMfG4SvCOFYlxxgkXt7yIV2i1yczehm0EOKIxIg== dependencies: append-field "^1.0.0" @@ -9222,7 +9234,7 @@ multer@1.4.4-lts.1: multi-semantic-release@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/multi-semantic-release/-/multi-semantic-release-3.0.1.tgz#e9d888c3f7aa4bdd06027ba162ac8150f95e8d94" + resolved "https://registry.npmjs.org/multi-semantic-release/-/multi-semantic-release-3.0.1.tgz" integrity sha512-EFA9ttP95Q9T8lR0BVsOZN70QBqBs25bQkeFef3xCQhB/P7Mm5DwHsNg++KkduMHfLevOpbr28MnMzR4jMbmFw== dependencies: "@manypkg/get-packages" "^1.1.3" @@ -9246,7 +9258,7 @@ multi-semantic-release@^3.0.1: multimatch@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" + resolved "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz" integrity sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA== dependencies: "@types/minimatch" "^3.0.3" @@ -9257,12 +9269,12 @@ multimatch@^5.0.0: mute-stream@0.0.8, mute-stream@~0.0.4: version "0.0.8" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== mysql2@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/mysql2/-/mysql2-3.0.1.tgz#436db56e96d5b7fed350192387f54881658b8b44" + resolved "https://registry.npmjs.org/mysql2/-/mysql2-3.0.1.tgz" integrity sha512-Wrh5KuE0OOlm6wRwRhE2q+C8LjwwfT3sFKVauyTwMwPbOd2i0SzxMqTZPqs90ZNAEWjot5GFywje84qVn3ITYw== dependencies: denque "^2.1.0" @@ -9276,29 +9288,29 @@ mysql2@^3.0.1: named-placeholders@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/named-placeholders/-/named-placeholders-1.1.3.tgz#df595799a36654da55dda6152ba7a137ad1d9351" + resolved "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.3.tgz" integrity sha512-eLoBxg6wE/rZkJPhU/xRX1WTpkFEwDJEN96oxFrTsqBdbT5ec295Q+CoHrL9IT0DipqKhmGcaZmwOt8OON5x1w== dependencies: lru-cache "^7.14.1" native-duplexpair@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/native-duplexpair/-/native-duplexpair-1.0.0.tgz#7899078e64bf3c8a3d732601b3d40ff05db58fa0" + resolved "https://registry.npmjs.org/native-duplexpair/-/native-duplexpair-1.0.0.tgz" integrity sha512-E7QQoM+3jvNtlmyfqRZ0/U75VFgCls+fSkbml2MpgWkWyz3ox8Y58gNhfuziuQYGNNQAbFZJQck55LHCnCK6CA== natural-compare-lite@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" + resolved "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz" integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== natural-compare@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== needle@^3.1.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/needle/-/needle-3.2.0.tgz#07d240ebcabfd65c76c03afae7f6defe6469df44" + resolved "https://registry.npmjs.org/needle/-/needle-3.2.0.tgz" integrity sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ== dependencies: debug "^3.2.6" @@ -9307,22 +9319,22 @@ needle@^3.1.0: negotiator@0.6.3, negotiator@^0.6.2, negotiator@^0.6.3: version "0.6.3" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== neo-async@^2.6.0: version "2.6.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== nerf-dart@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/nerf-dart/-/nerf-dart-1.0.0.tgz#e6dab7febf5ad816ea81cf5c629c5a0ebde72c1a" + resolved "https://registry.npmjs.org/nerf-dart/-/nerf-dart-1.0.0.tgz" integrity sha512-EZSPZB70jiVsivaBLYDCyntd5eH8NTSMOn3rB+HxwdmKThGELLdYv8qVIMWvZEFy9w8ZZpW9h9OB32l1rGtj7g== nock@^13.3.0: version "13.3.0" - resolved "https://registry.yarnpkg.com/nock/-/nock-13.3.0.tgz#b13069c1a03f1ad63120f994b04bfd2556925768" + resolved "https://registry.npmjs.org/nock/-/nock-13.3.0.tgz" integrity sha512-HHqYQ6mBeiMc+N038w8LkMpDCRquCHWeNmN3v6645P3NhN2+qXOBqvPqo7Rt1VyCMzKhJ733wZqw5B7cQVFNPg== dependencies: debug "^4.1.0" @@ -9332,41 +9344,41 @@ nock@^13.3.0: node-abort-controller@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/node-abort-controller/-/node-abort-controller-3.0.1.tgz#f91fa50b1dee3f909afabb7e261b1e1d6b0cb74e" + resolved "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.0.1.tgz" integrity sha512-/ujIVxthRs+7q6hsdjHMaj8hRG9NuWmwrz+JdRwZ14jdFoKSkm+vDsCbF9PLpnSqjaWQJuTmVtcWHNLr+vrOFw== node-addon-api@^3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161" + resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz" integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== node-addon-api@^4.2.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.3.0.tgz#52a1a0b475193e0928e98e0426a0d1254782b77f" + resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz" integrity sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ== node-emoji@^1.11.0: version "1.11.0" - resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.11.0.tgz#69a0150e6946e2f115e9d7ea4df7971e2628301c" + resolved "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz" integrity sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A== dependencies: lodash "^4.17.21" node-fetch@^2.3.0, node-fetch@^2.6.1, node-fetch@^2.6.7: version "2.6.8" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.8.tgz#a68d30b162bc1d8fd71a367e81b997e1f4d4937e" + resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.8.tgz" integrity sha512-RZ6dBYuj8dRSfxpUSu+NsdF1dpPpluJxwOp+6IoDp/sH2QNDSvurYsAa+F1WxY2RjA1iP93xhcsUoYbF2XBqVg== dependencies: whatwg-url "^5.0.0" node-gyp-build@^4.3.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.6.0.tgz#0c52e4cbf54bbd28b709820ef7b6a3c2d6209055" + resolved "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz" integrity sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ== node-gyp@8.x: version "8.4.1" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-8.4.1.tgz#3d49308fc31f768180957d6b5746845fbd429937" + resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz" integrity sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w== dependencies: env-paths "^2.2.0" @@ -9382,7 +9394,7 @@ node-gyp@8.x: node-gyp@^9.0.0, node-gyp@^9.1.0: version "9.3.1" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-9.3.1.tgz#1e19f5f290afcc9c46973d68700cbd21a96192e4" + resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.1.tgz" integrity sha512-4Q16ZCqq3g8awk6UplT7AuxQ35XN4R/yf/+wSAwcBUAjg7l58RTactWaP8fIDTi0FzI7YcVLujwExakZlfWkXg== dependencies: env-paths "^2.2.0" @@ -9398,12 +9410,12 @@ node-gyp@^9.0.0, node-gyp@^9.1.0: node-int64@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== node-mocks-http@^1.5.8: version "1.12.1" - resolved "https://registry.yarnpkg.com/node-mocks-http/-/node-mocks-http-1.12.1.tgz#838e176019daf177caff6bb8534e3a32646e7531" + resolved "https://registry.npmjs.org/node-mocks-http/-/node-mocks-http-1.12.1.tgz" integrity sha512-jrA7Sn3qI6GsHgWtUW3gMj0vO6Yz0nJjzg3jRZYjcfj4tzi8oWPauDK1qHVJoAxTbwuDHF1JiM9GISZ/ocI/ig== dependencies: accepts "^1.3.7" @@ -9419,12 +9431,12 @@ node-mocks-http@^1.5.8: node-releases@^2.0.6: version "2.0.8" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.8.tgz#0f349cdc8fcfa39a92ac0be9bc48b7706292b9ae" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz" integrity sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A== nodemon@^2.0.20: version "2.0.20" - resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-2.0.20.tgz#e3537de768a492e8d74da5c5813cb0c7486fc701" + resolved "https://registry.npmjs.org/nodemon/-/nodemon-2.0.20.tgz" integrity sha512-Km2mWHKKY5GzRg6i1j5OxOHQtuvVsgskLfigG25yTtbyfRGn/GNvIbRyOf1PSCKJ2aT/58TiuUsuOU5UToVViw== dependencies: chokidar "^3.5.2" @@ -9440,28 +9452,28 @@ nodemon@^2.0.20: nopt@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" + resolved "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz" integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== dependencies: abbrev "1" nopt@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-6.0.0.tgz#245801d8ebf409c6df22ab9d95b65e1309cdb16d" + resolved "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz" integrity sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g== dependencies: abbrev "^1.0.0" nopt@~1.0.10: version "1.0.10" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee" + resolved "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz" integrity sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg== dependencies: abbrev "1" normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== dependencies: hosted-git-info "^2.1.4" @@ -9471,7 +9483,7 @@ normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: normalize-package-data@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz" integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== dependencies: hosted-git-info "^4.0.1" @@ -9481,7 +9493,7 @@ normalize-package-data@^3.0.0: normalize-package-data@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-4.0.1.tgz#b46b24e0616d06cadf9d5718b29b6d445a82a62c" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz" integrity sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg== dependencies: hosted-git-info "^5.0.0" @@ -9491,62 +9503,62 @@ normalize-package-data@^4.0.0: normalize-path@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz" integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== dependencies: remove-trailing-separator "^1.0.1" normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== normalize-url@^6.0.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" + resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== npm-audit-report@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/npm-audit-report/-/npm-audit-report-3.0.0.tgz#1bf3e531208b5f77347c8d00c3d9badf5be30cd6" + resolved "https://registry.npmjs.org/npm-audit-report/-/npm-audit-report-3.0.0.tgz" integrity sha512-tWQzfbwz1sc4244Bx2BVELw0EmZlCsCF0X93RDcmmwhonCsPMoEviYsi+32R+mdRvOWXolPce9zo64n2xgPESw== dependencies: chalk "^4.0.0" npm-bundled@^1.1.1: version "1.1.2" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" + resolved "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz" integrity sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ== dependencies: npm-normalize-package-bin "^1.0.1" npm-bundled@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-2.0.1.tgz#94113f7eb342cd7a67de1e789f896b04d2c600f4" + resolved "https://registry.npmjs.org/npm-bundled/-/npm-bundled-2.0.1.tgz" integrity sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw== dependencies: npm-normalize-package-bin "^2.0.0" npm-install-checks@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-5.0.0.tgz#5ff27d209a4e3542b8ac6b0c1db6063506248234" + resolved "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz" integrity sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA== dependencies: semver "^7.1.1" npm-normalize-package-bin@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" + resolved "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz" integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== npm-normalize-package-bin@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz#9447a1adaaf89d8ad0abe24c6c84ad614a675fff" + resolved "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz" integrity sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ== npm-package-arg@8.1.1: version "8.1.1" - resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.1.1.tgz#00ebf16ac395c63318e67ce66780a06db6df1b04" + resolved "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.1.tgz" integrity sha512-CsP95FhWQDwNqiYS+Q0mZ7FAEDytDZAkNxQqea6IaAFJTAY9Lhhqyl0irU/6PMc7BGfUmnsbHcqxJD7XuVM/rg== dependencies: hosted-git-info "^3.0.6" @@ -9555,7 +9567,7 @@ npm-package-arg@8.1.1: npm-package-arg@^9.0.0, npm-package-arg@^9.0.1, npm-package-arg@^9.1.0: version "9.1.2" - resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-9.1.2.tgz#fc8acecb00235f42270dda446f36926ddd9ac2bc" + resolved "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.2.tgz" integrity sha512-pzd9rLEx4TfNJkovvlBSLGhq31gGu2QDexFPWT19yCDh0JgnRhlBLNo5759N0AJmBk+kQ9Y/hXoLnlgFD+ukmg== dependencies: hosted-git-info "^5.0.0" @@ -9565,7 +9577,7 @@ npm-package-arg@^9.0.0, npm-package-arg@^9.0.1, npm-package-arg@^9.1.0: npm-packlist@^5.1.0, npm-packlist@^5.1.1: version "5.1.3" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-5.1.3.tgz#69d253e6fd664b9058b85005905012e00e69274b" + resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.3.tgz" integrity sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg== dependencies: glob "^8.0.1" @@ -9575,7 +9587,7 @@ npm-packlist@^5.1.0, npm-packlist@^5.1.1: npm-pick-manifest@^7.0.0, npm-pick-manifest@^7.0.2: version "7.0.2" - resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-7.0.2.tgz#1d372b4e7ea7c6712316c0e99388a73ed3496e84" + resolved "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.2.tgz" integrity sha512-gk37SyRmlIjvTfcYl6RzDbSmS9Y4TOBXfsPnoYqTHARNgWbyDiCSMLUpmALDj4jjcTZpURiEfsSHJj9k7EV4Rw== dependencies: npm-install-checks "^5.0.0" @@ -9585,7 +9597,7 @@ npm-pick-manifest@^7.0.0, npm-pick-manifest@^7.0.2: npm-profile@^6.2.0: version "6.2.1" - resolved "https://registry.yarnpkg.com/npm-profile/-/npm-profile-6.2.1.tgz#975c31ec75a6ae029ab5b8820ffdcbae3a1e3d5e" + resolved "https://registry.npmjs.org/npm-profile/-/npm-profile-6.2.1.tgz" integrity sha512-Tlu13duByHyDd4Xy0PgroxzxnBYWbGGL5aZifNp8cx2DxUrHSoETXtPKg38aRPsBWMRfDtvcvVfJNasj7oImQQ== dependencies: npm-registry-fetch "^13.0.1" @@ -9593,7 +9605,7 @@ npm-profile@^6.2.0: npm-registry-fetch@^13.0.0, npm-registry-fetch@^13.0.1, npm-registry-fetch@^13.3.0, npm-registry-fetch@^13.3.1: version "13.3.1" - resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz#bb078b5fa6c52774116ae501ba1af2a33166af7e" + resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz" integrity sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw== dependencies: make-fetch-happen "^10.0.6" @@ -9606,19 +9618,19 @@ npm-registry-fetch@^13.0.0, npm-registry-fetch@^13.0.1, npm-registry-fetch@^13.3 npm-run-path@^4.0.0, npm-run-path@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: path-key "^3.0.0" npm-user-validate@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/npm-user-validate/-/npm-user-validate-1.0.1.tgz#31428fc5475fe8416023f178c0ab47935ad8c561" + resolved "https://registry.npmjs.org/npm-user-validate/-/npm-user-validate-1.0.1.tgz" integrity sha512-uQwcd/tY+h1jnEaze6cdX/LrhWhoBxfSknxentoqmIuStxUExxjWd3ULMLFPiFUrZKbOVMowH6Jq2FRWfmhcEw== npm@^8.3.0: version "8.19.3" - resolved "https://registry.yarnpkg.com/npm/-/npm-8.19.3.tgz#adb51bf8886d519dd4df162726d0ad157ecfa272" + resolved "https://registry.npmjs.org/npm/-/npm-8.19.3.tgz" integrity sha512-0QjmyPtDxSyMWWD8I91QGbrgx9KzbV6C9FK1liEb/K0zppiZkr5KxXc990G+LzPwBHDfRjUBlO9T1qZ08vl9mA== dependencies: "@isaacs/string-locale-compare" "^1.1.0" @@ -9697,7 +9709,7 @@ npm@^8.3.0: npmlog@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-5.0.1.tgz#f06678e80e29419ad67ab964e0fa69959c1eb8b0" + resolved "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz" integrity sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw== dependencies: are-we-there-yet "^2.0.0" @@ -9707,7 +9719,7 @@ npmlog@^5.0.1: npmlog@^6.0.0, npmlog@^6.0.2: version "6.0.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" + resolved "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz" integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== dependencies: are-we-there-yet "^3.0.0" @@ -9717,14 +9729,14 @@ npmlog@^6.0.0, npmlog@^6.0.2: nth-check@^2.0.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" + resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz" integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== dependencies: boolbase "^1.0.0" nx@15.5.0, "nx@>=15.4.2 < 16": version "15.5.0" - resolved "https://registry.yarnpkg.com/nx/-/nx-15.5.0.tgz#6c5da686f78472d2b56177ea24219093bd788527" + resolved "https://registry.npmjs.org/nx/-/nx-15.5.0.tgz" integrity sha512-N6gp339SS6YaDClY1Vpxad9OsdGyVmkXWEUpUbdm+YZw1GVCAD7MQd5jy9xU/byccTlv32eZ0/tTAfvTf+HQzA== dependencies: "@nrwl/cli" "15.5.0" @@ -9765,32 +9777,32 @@ nx@15.5.0, "nx@>=15.4.2 < 16": object-assign@^4, object-assign@^4.1.1: version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== object-hash@3.0.0, object-hash@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" + resolved "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz" integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== object-hash@^2.0.1: version "2.2.0" - resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-2.2.0.tgz#5ad518581eefc443bd763472b8ff2e9c2c0d54a5" + resolved "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz" integrity sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw== object-inspect@^1.12.2, object-inspect@^1.9.0: version "1.12.3" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz" integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== object-keys@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object.assign@^4.1.2, object.assign@^4.1.4: version "4.1.4" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" + resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz" integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== dependencies: call-bind "^1.0.2" @@ -9800,7 +9812,7 @@ object.assign@^4.1.2, object.assign@^4.1.4: object.entries@^1.1.5: version "1.1.6" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23" + resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz" integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w== dependencies: call-bind "^1.0.2" @@ -9809,7 +9821,7 @@ object.entries@^1.1.5: object.values@^1.1.6: version "1.1.6" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d" + resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz" integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw== dependencies: call-bind "^1.0.2" @@ -9818,48 +9830,48 @@ object.values@^1.1.6: obliterator@^2.0.1: version "2.0.4" - resolved "https://registry.yarnpkg.com/obliterator/-/obliterator-2.0.4.tgz#fa650e019b2d075d745e44f1effeb13a2adbe816" + resolved "https://registry.npmjs.org/obliterator/-/obliterator-2.0.4.tgz" integrity sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ== oidc-token-hash@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/oidc-token-hash/-/oidc-token-hash-5.0.1.tgz#ae6beec3ec20f0fd885e5400d175191d6e2f10c6" + resolved "https://registry.npmjs.org/oidc-token-hash/-/oidc-token-hash-5.0.1.tgz" integrity sha512-EvoOtz6FIEBzE+9q253HsLCVRiK/0doEJ2HCvvqMQb3dHZrP3WlJKYtJ55CRTw4jmYomzH4wkPuCj/I3ZvpKxQ== on-exit-leak-free@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz#5c703c968f7e7f851885f6459bf8a8a57edc9cc4" + resolved "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz" integrity sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w== on-finished@2.4.1, on-finished@^2.3.0: version "2.4.1" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz" integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== dependencies: ee-first "1.1.1" once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" onetime@^5.1.0, onetime@^5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" only@~0.0.2: version "0.0.2" - resolved "https://registry.yarnpkg.com/only/-/only-0.0.2.tgz#2afde84d03e50b9a8edc444e30610a70295edfb4" + resolved "https://registry.npmjs.org/only/-/only-0.0.2.tgz" integrity sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ== open@^8.0.0, open@^8.4.0: version "8.4.0" - resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" + resolved "https://registry.npmjs.org/open/-/open-8.4.0.tgz" integrity sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q== dependencies: define-lazy-prop "^2.0.0" @@ -9868,12 +9880,12 @@ open@^8.0.0, open@^8.4.0: opener@^1.5.2: version "1.5.2" - resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" + resolved "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz" integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== openid-client@^5.3.1: version "5.3.1" - resolved "https://registry.yarnpkg.com/openid-client/-/openid-client-5.3.1.tgz#69a5fa7d2b5ad479032f576852d40b4d4435488a" + resolved "https://registry.npmjs.org/openid-client/-/openid-client-5.3.1.tgz" integrity sha512-RLfehQiHch9N6tRWNx68cicf3b1WR0x74bJWHRc25uYIbSRwjxYcTFaRnzbbpls5jroLAaB/bFIodTgA5LJMvw== dependencies: jose "^4.10.0" @@ -9883,7 +9895,7 @@ openid-client@^5.3.1: optionator@^0.9.1: version "0.9.1" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== dependencies: deep-is "^0.1.3" @@ -9895,7 +9907,7 @@ optionator@^0.9.1: ora@^5.4.1: version "5.4.1" - resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" + resolved "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz" integrity sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ== dependencies: bl "^4.1.0" @@ -9910,12 +9922,12 @@ ora@^5.4.1: os-tmpdir@~1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== p-any@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/p-any/-/p-any-2.1.0.tgz#719489408e14f5f941a748f1e817f5c71cab35cb" + resolved "https://registry.npmjs.org/p-any/-/p-any-2.1.0.tgz" integrity sha512-JAERcaMBLYKMq+voYw36+x5Dgh47+/o7yuv2oQYuSSUml4YeqJEFznBrY2UeEkoSHqBua6hz518n/PsowTYLLg== dependencies: p-cancelable "^2.0.0" @@ -9924,98 +9936,98 @@ p-any@^2.1.0: p-cancelable@^2.0.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf" + resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz" integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg== p-each-series@^2.1.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" + resolved "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz" integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== p-filter@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/p-filter/-/p-filter-2.1.0.tgz#1b1472562ae7a0f742f0f3d3d3718ea66ff9c09c" + resolved "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz" integrity sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw== dependencies: p-map "^2.0.0" p-finally@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz" integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== p-is-promise@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-3.0.0.tgz#58e78c7dfe2e163cf2a04ff869e7c1dba64a5971" + resolved "https://registry.npmjs.org/p-is-promise/-/p-is-promise-3.0.0.tgz" integrity sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ== p-limit@^1.1.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz" integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== dependencies: p-try "^1.0.0" p-limit@^2.2.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== dependencies: p-try "^2.0.0" p-limit@^3.0.2, p-limit@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== dependencies: yocto-queue "^0.1.0" p-locate@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz" integrity sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg== dependencies: p-limit "^1.1.0" p-locate@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz" integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== dependencies: p-limit "^2.2.0" p-locate@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== dependencies: p-limit "^3.0.2" p-map-series@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/p-map-series/-/p-map-series-2.1.0.tgz#7560d4c452d9da0c07e692fdbfe6e2c81a2a91f2" + resolved "https://registry.npmjs.org/p-map-series/-/p-map-series-2.1.0.tgz" integrity sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q== p-map@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" + resolved "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz" integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== p-map@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz" integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== dependencies: aggregate-error "^3.0.0" p-pipe@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-3.1.0.tgz#48b57c922aa2e1af6a6404cb7c6bf0eb9cc8e60e" + resolved "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz" integrity sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw== p-queue@^6.6.2: version "6.6.2" - resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" + resolved "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz" integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== dependencies: eventemitter3 "^4.0.4" @@ -10023,12 +10035,12 @@ p-queue@^6.6.2: p-reduce@^2.0.0, p-reduce@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-2.1.0.tgz#09408da49507c6c274faa31f28df334bc712b64a" + resolved "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz" integrity sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw== p-retry@^4.0.0: version "4.6.2" - resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16" + resolved "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz" integrity sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ== dependencies: "@types/retry" "0.12.0" @@ -10036,7 +10048,7 @@ p-retry@^4.0.0: p-some@^4.0.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/p-some/-/p-some-4.1.0.tgz#28e73bc1e0d62db54c2ed513acd03acba30d5c04" + resolved "https://registry.npmjs.org/p-some/-/p-some-4.1.0.tgz" integrity sha512-MF/HIbq6GeBqTrTIl5OJubzkGU+qfFhAFi0gnTAK6rgEIJIknEiABHOTtQu4e6JiXjIwuMPMUFQzyHh5QjCl1g== dependencies: aggregate-error "^3.0.0" @@ -10044,36 +10056,36 @@ p-some@^4.0.0: p-timeout@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" + resolved "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz" integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== dependencies: p-finally "^1.0.0" p-try@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz" integrity sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww== p-try@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== p-waterfall@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/p-waterfall/-/p-waterfall-2.1.1.tgz#63153a774f472ccdc4eb281cdb2967fcf158b2ee" + resolved "https://registry.npmjs.org/p-waterfall/-/p-waterfall-2.1.1.tgz" integrity sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw== dependencies: p-reduce "^2.0.0" packet-reader@1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/packet-reader/-/packet-reader-1.0.0.tgz#9238e5480dedabacfe1fe3f2771063f164157d74" + resolved "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz" integrity sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ== pacote@^13.0.3, pacote@^13.6.1, pacote@^13.6.2: version "13.6.2" - resolved "https://registry.yarnpkg.com/pacote/-/pacote-13.6.2.tgz#0d444ba3618ab3e5cd330b451c22967bbd0ca48a" + resolved "https://registry.npmjs.org/pacote/-/pacote-13.6.2.tgz" integrity sha512-Gu8fU3GsvOPkak2CkbojR7vjs3k3P9cA6uazKTHdsdV0gpCEQq2opelnEv30KRQWgVzP5Vd/5umjcedma3MKtg== dependencies: "@npmcli/git" "^3.0.0" @@ -10100,19 +10112,19 @@ pacote@^13.0.3, pacote@^13.6.1, pacote@^13.6.2: pako@~1.0.2: version "1.0.11" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" + resolved "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz" integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== parent-module@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== dependencies: callsites "^3.0.0" parse-conflict-json@^2.0.1, parse-conflict-json@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/parse-conflict-json/-/parse-conflict-json-2.0.2.tgz#3d05bc8ffe07d39600dc6436c6aefe382033d323" + resolved "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-2.0.2.tgz" integrity sha512-jDbRGb00TAPFsKWCpZZOT93SxVP9nONOSgES3AevqRq/CHvavEBvKAjxX9p5Y5F0RZLxH9Ufd9+RwtCsa+lFDA== dependencies: json-parse-even-better-errors "^2.3.1" @@ -10121,7 +10133,7 @@ parse-conflict-json@^2.0.1, parse-conflict-json@^2.0.2: parse-entities@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8" + resolved "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz" integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== dependencies: character-entities "^1.0.0" @@ -10133,7 +10145,7 @@ parse-entities@^2.0.0: parse-json@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz" integrity sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw== dependencies: error-ex "^1.3.1" @@ -10141,7 +10153,7 @@ parse-json@^4.0.0: parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== dependencies: "@babel/code-frame" "^7.0.0" @@ -10151,21 +10163,21 @@ parse-json@^5.0.0, parse-json@^5.2.0: parse-path@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-7.0.0.tgz#605a2d58d0a749c8594405d8cc3a2bf76d16099b" + resolved "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz" integrity sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog== dependencies: protocols "^2.0.0" parse-url@^8.1.0: version "8.1.0" - resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-8.1.0.tgz#972e0827ed4b57fc85f0ea6b0d839f0d8a57a57d" + resolved "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz" integrity sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w== dependencies: parse-path "^7.0.0" parse5-htmlparser2-tree-adapter@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz#23c2cc233bcf09bb7beba8b8a69d46b08c62c2f1" + resolved "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz" integrity sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g== dependencies: domhandler "^5.0.2" @@ -10173,101 +10185,101 @@ parse5-htmlparser2-tree-adapter@^7.0.0: parse5@^7.0.0: version "7.1.2" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" + resolved "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz" integrity sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw== dependencies: entities "^4.4.0" parseurl@^1.3.2, parseurl@^1.3.3, parseurl@~1.3.3: version "1.3.3" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== path-exists@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== path-exists@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-parse@^1.0.7: version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== path-to-regexp@0.1.7: version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz" integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== path-to-regexp@3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-3.2.0.tgz#fa7877ecbc495c601907562222453c43cc204a5f" + resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.2.0.tgz" integrity sha512-jczvQbCUS7XmS7o+y1aEO9OBVFeZBQ1MDSEqmO7xSoPgOPoowY/SxLpZ6Vh97/8qHZOteiCKb7gkG9gA2ZUxJA== path-to-regexp@^4.0.0: version "4.0.5" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-4.0.5.tgz#2d4fd140af9a369bf7b68f77a7fdc340490f4239" + resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-4.0.5.tgz" integrity sha512-l+fTaGG2N9ZRpCEUj5fG1VKdDLaiqwCIvPngpnxzREhcdobhZC4ou4w984HBu72DqAJ5CfcdV6tjqNOunfpdsQ== path-to-regexp@^6.1.0, path-to-regexp@^6.2.1: version "6.2.1" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.2.1.tgz#d54934d6798eb9e5ef14e7af7962c945906918e5" + resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz" integrity sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw== path-type@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz" integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== dependencies: pify "^3.0.0" path-type@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== peek-readable@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/peek-readable/-/peek-readable-4.1.0.tgz#4ece1111bf5c2ad8867c314c81356847e8a62e72" + resolved "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz" integrity sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg== pg-connection-string@^2.5.0: version "2.5.0" - resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.5.0.tgz#538cadd0f7e603fc09a12590f3b8a452c2c0cf34" + resolved "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.5.0.tgz" integrity sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ== pg-int8@1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c" + resolved "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz" integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw== pg-pool@^3.5.2: version "3.5.2" - resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.5.2.tgz#ed1bed1fb8d79f1c6fd5fb1c99e990fbf9ddf178" + resolved "https://registry.npmjs.org/pg-pool/-/pg-pool-3.5.2.tgz" integrity sha512-His3Fh17Z4eg7oANLob6ZvH8xIVen3phEZh2QuyrIl4dQSDVEabNducv6ysROKpDNPSD+12tONZVWfSgMvDD9w== pg-protocol@^1.5.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.5.0.tgz#b5dd452257314565e2d54ab3c132adc46565a6a0" + resolved "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.5.0.tgz" integrity sha512-muRttij7H8TqRNu/DxrAJQITO4Ac7RmX3Klyr/9mJEOBeIpgnF8f9jAfRz5d3XwQZl5qBjF9gLsUtMPJE0vezQ== pg-types@^2.1.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-2.2.0.tgz#2d0250d636454f7cfa3b6ae0382fdfa8063254a3" + resolved "https://registry.npmjs.org/pg-types/-/pg-types-2.2.0.tgz" integrity sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA== dependencies: pg-int8 "1.0.1" @@ -10278,7 +10290,7 @@ pg-types@^2.1.0: pg@^8.8.0: version "8.8.0" - resolved "https://registry.yarnpkg.com/pg/-/pg-8.8.0.tgz#a77f41f9d9ede7009abfca54667c775a240da686" + resolved "https://registry.npmjs.org/pg/-/pg-8.8.0.tgz" integrity sha512-UXYN0ziKj+AeNNP7VDMwrehpACThH7LUl/p8TDFpEUuSejCUIwGSfxpHsPvtM6/WXFy6SU4E5RG4IJV/TZAGjw== dependencies: buffer-writer "2.0.0" @@ -10291,44 +10303,44 @@ pg@^8.8.0: pgpass@1.x: version "1.0.5" - resolved "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.5.tgz#9b873e4a564bb10fa7a7dbd55312728d422a223d" + resolved "https://registry.npmjs.org/pgpass/-/pgpass-1.0.5.tgz" integrity sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug== dependencies: split2 "^4.1.0" picocolors@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pify@^2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz" integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== pify@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg== pify@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== pify@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" + resolved "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz" integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== pino-abstract-transport@v1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-1.0.0.tgz#cc0d6955fffcadb91b7b49ef220a6cc111d48bb3" + resolved "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.0.0.tgz" integrity sha512-c7vo5OpW4wIS42hUVcT5REsL8ZljsUfBjqV/e2sFxmFEFZiq1XLUp5EYLtuDH6PEHq9W1egWqRbnLUP5FuZmOA== dependencies: readable-stream "^4.0.0" @@ -10336,22 +10348,22 @@ pino-abstract-transport@v1.0.0: pino-std-serializers@^2.4.2: version "2.5.0" - resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-2.5.0.tgz#40ead781c65a0ce7ecd9c1c33f409d31fe712315" + resolved "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-2.5.0.tgz" integrity sha512-wXqbqSrIhE58TdrxxlfLwU9eDhrzppQDvGhBEr1gYbzzM4KKo3Y63gSjiDXRKLVS2UOXdPNR2v+KnQgNrs+xUg== pino-std-serializers@^3.1.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-3.2.0.tgz#b56487c402d882eb96cd67c257868016b61ad671" + resolved "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-3.2.0.tgz" integrity sha512-EqX4pwDPrt3MuOAAUBMU0Tk5kR/YcCM5fNPEzgCO2zJ5HfX0vbiH9HbJglnyeQsN96Kznae6MWD47pZB5avTrg== pino-std-serializers@^6.0.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-6.1.0.tgz#307490fd426eefc95e06067e85d8558603e8e844" + resolved "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.1.0.tgz" integrity sha512-KO0m2f1HkrPe9S0ldjx7za9BJjeHqBku5Ch8JyxETxT8dEFGz1PwgrHaOQupVYitpzbFSYm7nnljxD8dik2c+g== pino@^5.17.0: version "5.17.0" - resolved "https://registry.yarnpkg.com/pino/-/pino-5.17.0.tgz#b9def314e82402154f89a25d76a31f20ca84b4c8" + resolved "https://registry.npmjs.org/pino/-/pino-5.17.0.tgz" integrity sha512-LqrqmRcJz8etUjyV0ddqB6OTUutCgQULPFg2b4dtijRHUsucaAdBgSUW58vY6RFSX+NT8963F+q0tM6lNwGShA== dependencies: fast-redact "^2.0.0" @@ -10363,7 +10375,7 @@ pino@^5.17.0: pino@^6.13.0: version "6.14.0" - resolved "https://registry.yarnpkg.com/pino/-/pino-6.14.0.tgz#b745ea87a99a6c4c9b374e4f29ca7910d4c69f78" + resolved "https://registry.npmjs.org/pino/-/pino-6.14.0.tgz" integrity sha512-iuhEDel3Z3hF9Jfe44DPXR8l07bhjuFY3GMHIXbjnY9XcafbyDDwl2sN2vw2GjMPf5Nkoe+OFao7ffn9SXaKDg== dependencies: fast-redact "^3.0.0" @@ -10376,7 +10388,7 @@ pino@^6.13.0: pino@^8.5.0: version "8.8.0" - resolved "https://registry.yarnpkg.com/pino/-/pino-8.8.0.tgz#1f0d6695a224aa06afc7ad60f2ccc4772d3b9233" + resolved "https://registry.npmjs.org/pino/-/pino-8.8.0.tgz" integrity sha512-cF8iGYeu2ODg2gIwgAHcPrtR63ILJz3f7gkogaHC/TXVVXxZgInmNYiIpDYEwgEkxZti2Se6P2W2DxlBIZe6eQ== dependencies: atomic-sleep "^1.0.0" @@ -10393,12 +10405,12 @@ pino@^8.5.0: pirates@^4.0.4: version "4.0.5" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" + resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz" integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== pkg-conf@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-2.1.0.tgz#2126514ca6f2abfebd168596df18ba57867f0058" + resolved "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz" integrity sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g== dependencies: find-up "^2.0.0" @@ -10406,19 +10418,19 @@ pkg-conf@^2.1.0: pkg-dir@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz" integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== dependencies: find-up "^4.0.0" pluralize@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" + resolved "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz" integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== postcss-selector-parser@^6.0.10: version "6.0.11" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz#2e41dc39b7ad74046e1615185185cd0b17d0c8dc" + resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz" integrity sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g== dependencies: cssesc "^3.0.0" @@ -10426,34 +10438,34 @@ postcss-selector-parser@^6.0.10: postgres-array@~2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e" + resolved "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz" integrity sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA== postgres-bytea@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-1.0.0.tgz#027b533c0aa890e26d172d47cf9ccecc521acd35" + resolved "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.0.tgz" integrity sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w== postgres-date@~1.0.4: version "1.0.7" - resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.7.tgz#51bc086006005e5061c591cee727f2531bf641a8" + resolved "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz" integrity sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q== postgres-interval@^1.1.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-1.2.0.tgz#b460c82cb1587507788819a06aa0fffdb3544695" + resolved "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.2.0.tgz" integrity sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ== dependencies: xtend "^4.0.0" prelude-ls@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== prettier-eslint@^15.0.1: version "15.0.1" - resolved "https://registry.yarnpkg.com/prettier-eslint/-/prettier-eslint-15.0.1.tgz#2543a43e9acec2a9767ad6458165ce81f353db9c" + resolved "https://registry.npmjs.org/prettier-eslint/-/prettier-eslint-15.0.1.tgz" integrity sha512-mGOWVHixSvpZWARqSDXbdtTL54mMBxc5oQYQ6RAqy8jecuNJBgN3t9E5a81G66F8x8fsKNiR1HWaBV66MJDOpg== dependencies: "@types/eslint" "^8.4.2" @@ -10473,19 +10485,19 @@ prettier-eslint@^15.0.1: prettier-linter-helpers@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" + resolved "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz" integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== dependencies: fast-diff "^1.1.2" prettier@^2.5.1, prettier@^2.8.2: version "2.8.2" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.2.tgz#c4ea1b5b454d7c4b59966db2e06ed7eec5dfd160" + resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.2.tgz" integrity sha512-BtRV9BcncDyI2tsuS19zzhzoxD8Dh8LiCx7j7tHzrkz8GFXAexeWFdi22mjE1d16dftH2qNaytVxqiRTGlMfpw== pretty-format@^23.0.1: version "23.6.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-23.6.0.tgz#5eaac8eeb6b33b987b7fe6097ea6a8a146ab5760" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-23.6.0.tgz" integrity sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw== dependencies: ansi-regex "^3.0.0" @@ -10493,7 +10505,7 @@ pretty-format@^23.0.1: pretty-format@^29.0.0, pretty-format@^29.3.1: version "29.3.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.3.1.tgz#1841cac822b02b4da8971dacb03e8a871b4722da" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.3.1.tgz" integrity sha512-FyLnmb1cYJV8biEIiRyzRFvs2lry7PPIvOqKVe1GCUEYg4YGmlx1qG9EJNMxArYm7piII4qb8UV1Pncq5dxmcg== dependencies: "@jest/schemas" "^29.0.0" @@ -10502,57 +10514,57 @@ pretty-format@^29.0.0, pretty-format@^29.3.1: proc-log@^2.0.0, proc-log@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-2.0.1.tgz#8f3f69a1f608de27878f91f5c688b225391cb685" + resolved "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz" integrity sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw== process-nextick-args@~2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== process-warning@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-1.0.0.tgz#980a0b25dc38cd6034181be4b7726d89066b4616" + resolved "https://registry.npmjs.org/process-warning/-/process-warning-1.0.0.tgz" integrity sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q== process-warning@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-2.1.0.tgz#1e60e3bfe8183033bbc1e702c2da74f099422d1a" + resolved "https://registry.npmjs.org/process-warning/-/process-warning-2.1.0.tgz" integrity sha512-9C20RLxrZU/rFnxWncDkuF6O999NdIf3E1ws4B0ZeY3sRVPzWBMsYDE2lxjxhiXxg464cQTgKUGm8/i6y2YGXg== process@^0.11.10: version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + resolved "https://registry.npmjs.org/process/-/process-0.11.10.tgz" integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== progress@^2.0.3: version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== promise-all-reject-late@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz#f8ebf13483e5ca91ad809ccc2fcf25f26f8643c2" + resolved "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz" integrity sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw== promise-call-limit@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-call-limit/-/promise-call-limit-1.0.1.tgz#4bdee03aeb85674385ca934da7114e9bcd3c6e24" + resolved "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-1.0.1.tgz" integrity sha512-3+hgaa19jzCGLuSCbieeRsu5C2joKfYn8pY6JAuXFRVfF4IO+L7UPpFWNTeWT9pM7uhskvbPPd/oEOktCn317Q== promise-events@^0.2.4: version "0.2.4" - resolved "https://registry.yarnpkg.com/promise-events/-/promise-events-0.2.4.tgz#3b46508b2dfbd0b0fd349a404f65bf279fc483eb" + resolved "https://registry.npmjs.org/promise-events/-/promise-events-0.2.4.tgz" integrity sha512-GCM6DmJcSCC8XboZIzYJAlADwkIS1P54XFUJQYhB7dpE7rtXPzPrT13dsV4Qm0FMCKptwMTyF8ZCir803RfKzA== promise-inflight@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz" integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== promise-retry@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + resolved "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz" integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== dependencies: err-code "^2.0.2" @@ -10560,7 +10572,7 @@ promise-retry@^2.0.1: prompts@^2.0.1: version "2.4.2" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + resolved "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz" integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== dependencies: kleur "^3.0.3" @@ -10568,29 +10580,29 @@ prompts@^2.0.1: promzard@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" + resolved "https://registry.npmjs.org/promzard/-/promzard-0.3.0.tgz" integrity sha512-JZeYqd7UAcHCwI+sTOeUDYkvEU+1bQ7iE0UT1MgB/tERkAPkesW46MrpIySzODi+owTjZtiF8Ay5j9m60KmMBw== dependencies: read "1" propagate@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/propagate/-/propagate-2.0.1.tgz#40cdedab18085c792334e64f0ac17256d38f9a45" + resolved "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz" integrity sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag== proto-list@~1.2.1: version "1.2.4" - resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + resolved "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz" integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA== protocols@^2.0.0, protocols@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86" + resolved "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz" integrity sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q== proxy-addr@^2.0.6, proxy-addr@^2.0.7, proxy-addr@~2.0.7: version "2.0.7" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + resolved "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz" integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== dependencies: forwarded "0.2.0" @@ -10598,17 +10610,17 @@ proxy-addr@^2.0.6, proxy-addr@^2.0.7, proxy-addr@~2.0.7: proxy-from-env@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== pstree.remy@^1.1.8: version "1.1.8" - resolved "https://registry.yarnpkg.com/pstree.remy/-/pstree.remy-1.1.8.tgz#c242224f4a67c21f686839bbdb4ac282b8373d3a" + resolved "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz" integrity sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w== pump@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz" integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== dependencies: end-of-stream "^1.1.0" @@ -10616,61 +10628,61 @@ pump@^3.0.0: punycode@2.x.x, punycode@^2.1.0, punycode@^2.1.1: version "2.2.0" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.2.0.tgz#2092cc57cd2582c38e4e7e8bb869dc8d3148bc74" + resolved "https://registry.npmjs.org/punycode/-/punycode-2.2.0.tgz" integrity sha512-LN6QV1IJ9ZhxWTNdktaPClrNfp8xdSAYS0Zk2ddX7XsXZAxckMHPCBcHRo0cTcEIgYPRiGEkmji3Idkh2yFtYw== q@^1.5.1: version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz" integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== qrcode-terminal@^0.12.0: version "0.12.0" - resolved "https://registry.yarnpkg.com/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz#bb5b699ef7f9f0505092a3748be4464fe71b5819" + resolved "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz" integrity sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ== qs@6.11.0, qs@^6.11.0, qs@^6.5.2: version "6.11.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" + resolved "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz" integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== dependencies: side-channel "^1.0.4" queue-microtask@^1.1.2, queue-microtask@^1.2.2: version "1.2.3" - resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== queue@6.0.2: version "6.0.2" - resolved "https://registry.yarnpkg.com/queue/-/queue-6.0.2.tgz#b91525283e2315c7553d2efa18d83e76432fed65" + resolved "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz" integrity sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA== dependencies: inherits "~2.0.3" quick-format-unescaped@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-3.0.3.tgz#fb3e468ac64c01d22305806c39f121ddac0d1fb9" + resolved "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.3.tgz" integrity sha512-dy1yjycmn9blucmJLXOfZDx1ikZJUi6E8bBZLnhPG5gBrVhHXx2xVyqqgKBubVNEXmx51dBACMHpoMQK/N/AXQ== quick-format-unescaped@^4.0.3: version "4.0.4" - resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz#93ef6dd8d3453cbc7970dd614fad4c5954d6b5a7" + resolved "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz" integrity sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg== quick-lru@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" + resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz" integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== range-parser@^1.2.0, range-parser@~1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== range_check@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/range_check/-/range_check-1.4.0.tgz#cd87c7ac62c40ba9df69b8703c604f60c3748635" + resolved "https://registry.npmjs.org/range_check/-/range_check-1.4.0.tgz" integrity sha512-UhRtGxKoAm7NQqAPj3P6JVUlgs3hehoV+pA593il2FiHYZUK49/535laoi3Rvz7lP04XLCAdgbL4TprpVZZ/IQ== dependencies: ip6 "0.0.4" @@ -10678,7 +10690,7 @@ range_check@^1.4.0: raw-body@2.5.1, raw-body@^2.3.3: version "2.5.1" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" + resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz" integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== dependencies: bytes "3.1.2" @@ -10688,7 +10700,7 @@ raw-body@2.5.1, raw-body@^2.3.3: rc@1.2.8, rc@^1.2.8: version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== dependencies: deep-extend "^0.6.0" @@ -10698,17 +10710,17 @@ rc@1.2.8, rc@^1.2.8: react-is@^18.0.0: version "18.2.0" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" + resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== read-cmd-shim@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-3.0.1.tgz#868c235ec59d1de2db69e11aec885bc095aea087" + resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-3.0.1.tgz" integrity sha512-kEmDUoYf/CDy8yZbLTmhB1X9kkjf9Q80PCNsDMb7ufrGd6zZSQA1+UyjrO+pZm5K/S4OXCWJeiIt1JA8kAsa6g== read-package-json-fast@^2.0.2, read-package-json-fast@^2.0.3: version "2.0.3" - resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" + resolved "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz" integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== dependencies: json-parse-even-better-errors "^2.3.0" @@ -10716,7 +10728,7 @@ read-package-json-fast@^2.0.2, read-package-json-fast@^2.0.3: read-package-json@^5.0.0, read-package-json@^5.0.1, read-package-json@^5.0.2: version "5.0.2" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-5.0.2.tgz#b8779ccfd169f523b67208a89cc912e3f663f3fa" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.2.tgz" integrity sha512-BSzugrt4kQ/Z0krro8zhTwV1Kd79ue25IhNN/VtHFy1mG/6Tluyi+msc0UpwaoQzxSHa28mntAjIZY6kEgfR9Q== dependencies: glob "^8.0.1" @@ -10726,7 +10738,7 @@ read-package-json@^5.0.0, read-package-json@^5.0.1, read-package-json@^5.0.2: read-pkg-up@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz" integrity sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw== dependencies: find-up "^2.0.0" @@ -10734,7 +10746,7 @@ read-pkg-up@^3.0.0: read-pkg-up@^7.0.0, read-pkg-up@^7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz" integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== dependencies: find-up "^4.1.0" @@ -10743,7 +10755,7 @@ read-pkg-up@^7.0.0, read-pkg-up@^7.0.1: read-pkg@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz" integrity sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA== dependencies: load-json-file "^4.0.0" @@ -10752,7 +10764,7 @@ read-pkg@^3.0.0: read-pkg@^5.0.0, read-pkg@^5.2.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz" integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== dependencies: "@types/normalize-package-data" "^2.4.0" @@ -10762,7 +10774,7 @@ read-pkg@^5.0.0, read-pkg@^5.2.0: read-yaml-file@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/read-yaml-file/-/read-yaml-file-1.1.0.tgz#9362bbcbdc77007cc8ea4519fe1c0b821a7ce0d8" + resolved "https://registry.npmjs.org/read-yaml-file/-/read-yaml-file-1.1.0.tgz" integrity sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA== dependencies: graceful-fs "^4.1.5" @@ -10772,14 +10784,14 @@ read-yaml-file@^1.1.0: read@1, read@^1.0.7, read@~1.0.7: version "1.0.7" - resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" + resolved "https://registry.npmjs.org/read/-/read-1.0.7.tgz" integrity sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ== dependencies: mute-stream "~0.0.4" readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== dependencies: inherits "^2.0.3" @@ -10788,7 +10800,7 @@ readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stre readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.2.2, readable-stream@~2.3.6: version "2.3.7" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== dependencies: core-util-is "~1.0.0" @@ -10801,7 +10813,7 @@ readable-stream@^2.0.0, readable-stream@^2.0.2, readable-stream@^2.2.2, readable readable-stream@^4.0.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.3.0.tgz#0914d0c72db03b316c9733bb3461d64a3cc50cba" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-4.3.0.tgz" integrity sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ== dependencies: abort-controller "^3.0.0" @@ -10811,14 +10823,14 @@ readable-stream@^4.0.0: readable-web-to-node-stream@^3.0.0: version "3.0.2" - resolved "https://registry.yarnpkg.com/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz#5d52bb5df7b54861fd48d015e93a2cb87b3ee0bb" + resolved "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz" integrity sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw== dependencies: readable-stream "^3.6.0" readdir-scoped-modules@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" + resolved "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz" integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw== dependencies: debuglog "^1.0.1" @@ -10828,19 +10840,19 @@ readdir-scoped-modules@^1.1.0: readdirp@~3.6.0: version "3.6.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz" integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: picomatch "^2.2.1" real-require@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/real-require/-/real-require-0.2.0.tgz#209632dea1810be2ae063a6ac084fee7e33fba78" + resolved "https://registry.npmjs.org/real-require/-/real-require-0.2.0.tgz" integrity sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg== redent@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" + resolved "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz" integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== dependencies: indent-string "^4.0.0" @@ -10848,24 +10860,24 @@ redent@^3.0.0: redeyed@~2.1.0: version "2.1.1" - resolved "https://registry.yarnpkg.com/redeyed/-/redeyed-2.1.1.tgz#8984b5815d99cb220469c99eeeffe38913e6cc0b" + resolved "https://registry.npmjs.org/redeyed/-/redeyed-2.1.1.tgz" integrity sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ== dependencies: esprima "~4.0.0" reflect-metadata@^0.1.13: version "0.1.13" - resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.13.tgz#67ae3ca57c972a2aa1642b10fe363fe32d49dc08" + resolved "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz" integrity sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg== regenerator-runtime@^0.13.11: version "0.13.11" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" + resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz" integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== regexp.prototype.flags@^1.4.3: version "1.4.3" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" + resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz" integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== dependencies: call-bind "^1.0.2" @@ -10874,19 +10886,19 @@ regexp.prototype.flags@^1.4.3: regexpp@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== registry-auth-token@^4.0.0: version "4.2.2" - resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.2.tgz#f02d49c3668884612ca031419491a13539e21fac" + resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz" integrity sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg== dependencies: rc "1.2.8" remark-gfm@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/remark-gfm/-/remark-gfm-1.0.0.tgz#9213643001be3f277da6256464d56fd28c3b3c0d" + resolved "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz" integrity sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA== dependencies: mdast-util-gfm "^0.1.0" @@ -10894,75 +10906,75 @@ remark-gfm@^1.0.0: remark-parse@^9.0.0: version "9.0.0" - resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-9.0.0.tgz#4d20a299665880e4f4af5d90b7c7b8a935853640" + resolved "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz" integrity sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw== dependencies: mdast-util-from-markdown "^0.8.0" remark-stringify@^9.0.1: version "9.0.1" - resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-9.0.1.tgz#576d06e910548b0a7191a71f27b33f1218862894" + resolved "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz" integrity sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg== dependencies: mdast-util-to-markdown "^0.6.0" remove-trailing-separator@^1.0.1: version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz" integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== repeat-string@^1.0.0: version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== require-directory@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== require-from-string@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== require-relative@^0.8.7: version "0.8.7" - resolved "https://registry.yarnpkg.com/require-relative/-/require-relative-0.8.7.tgz#7999539fc9e047a37928fa196f8e1563dabd36de" + resolved "https://registry.npmjs.org/require-relative/-/require-relative-0.8.7.tgz" integrity sha512-AKGr4qvHiryxRb19m3PsLRGuKVAbJLUD7E6eOaHkfKhwc+vSgVOCY5xNvm9EkolBKTOf0GrQAZKLimOCz81Khg== resolve-cwd@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz" integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== dependencies: resolve-from "^5.0.0" resolve-from@5.0.0, resolve-from@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== resolve-from@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== resolve-global@1.0.0, resolve-global@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/resolve-global/-/resolve-global-1.0.0.tgz#a2a79df4af2ca3f49bf77ef9ddacd322dad19255" + resolved "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz" integrity sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw== dependencies: global-dirs "^0.1.1" resolve.exports@^1.1.0: version "1.1.1" - resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.1.tgz#05cfd5b3edf641571fd46fa608b610dda9ead999" + resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz" integrity sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ== resolve@^1.10.0, resolve@^1.20.0, resolve@^1.22.1: version "1.22.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz" integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== dependencies: is-core-module "^2.9.0" @@ -10971,7 +10983,7 @@ resolve@^1.10.0, resolve@^1.20.0, resolve@^1.22.1: restore-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz" integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== dependencies: onetime "^5.1.0" @@ -10979,73 +10991,73 @@ restore-cursor@^3.1.0: ret@~0.2.0: version "0.2.2" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.2.2.tgz#b6861782a1f4762dce43402a71eb7a283f44573c" + resolved "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz" integrity sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ== retry-as-promised@^7.0.3: version "7.0.3" - resolved "https://registry.yarnpkg.com/retry-as-promised/-/retry-as-promised-7.0.3.tgz#ca3c13b15525a7bfbf0f56d2996f0e75649d068b" + resolved "https://registry.npmjs.org/retry-as-promised/-/retry-as-promised-7.0.3.tgz" integrity sha512-SEvMa4khHvpU/o6zgh7sK24qm6rxVgKnrSyzb5POeDvZx5N9Bf0s5sQsQ4Fl+HjRp0X+w2UzACGfUnXtx6cJ9Q== retry@^0.12.0: version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + resolved "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz" integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== retry@^0.13.1: version "0.13.1" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" + resolved "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz" integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== reusify@^1.0.2, reusify@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== rfdc@^1.1.2, rfdc@^1.1.4, rfdc@^1.2.0, rfdc@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" + resolved "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz" integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== rimraf@^3.0.0, rimraf@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== dependencies: glob "^7.1.3" run-async@^2.4.0: version "2.4.1" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" + resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz" integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== run-parallel@^1.1.9: version "1.2.0" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== dependencies: queue-microtask "^1.2.2" rxjs@^7.5.5, rxjs@^7.8.0: version "7.8.0" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.0.tgz#90a938862a82888ff4c7359811a595e14e1e09a4" + resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz" integrity sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg== dependencies: tslib "^2.1.0" safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@~5.2.0: version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== safe-regex-test@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" + resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz" integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA== dependencies: call-bind "^1.0.2" @@ -11054,41 +11066,41 @@ safe-regex-test@^1.0.0: safe-regex2@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/safe-regex2/-/safe-regex2-2.0.0.tgz#b287524c397c7a2994470367e0185e1916b1f5b9" + resolved "https://registry.npmjs.org/safe-regex2/-/safe-regex2-2.0.0.tgz" integrity sha512-PaUSFsUaNNuKwkBijoAPHAK6/eM6VirvyPWlZ7BAQy4D+hCvh4B6lIG+nPdhbFfIbP+gTGBcrdsOaUs0F+ZBOQ== dependencies: ret "~0.2.0" safe-stable-stringify@^2.3.1: version "2.4.2" - resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz#ec7b037768098bf65310d1d64370de0dc02353aa" + resolved "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz" integrity sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA== "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== saslprep@^1.0.3: version "1.0.3" - resolved "https://registry.yarnpkg.com/saslprep/-/saslprep-1.0.3.tgz#4c02f946b56cf54297e347ba1093e7acac4cf226" + resolved "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz" integrity sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag== dependencies: sparse-bitfield "^3.0.3" sax@^1.2.4: version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== secure-json-parse@^2.0.0, secure-json-parse@^2.1.0, secure-json-parse@^2.5.0: version "2.7.0" - resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.7.0.tgz#5a5f9cd6ae47df23dba3151edd06855d47e09862" + resolved "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz" integrity sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw== semantic-release-slack-bot@^3.5.3: version "3.5.3" - resolved "https://registry.yarnpkg.com/semantic-release-slack-bot/-/semantic-release-slack-bot-3.5.3.tgz#eaf638509210e01bbd401dcbc2af17ed36549348" + resolved "https://registry.npmjs.org/semantic-release-slack-bot/-/semantic-release-slack-bot-3.5.3.tgz" integrity sha512-QoLRfZPkgkER2s/DiIu0qA9pYu4am8ASu7xq3omCXl2oJ+fKdb1Rentgezzv7RefMXhO2q2aah1aqutWnSnlhw== dependencies: "@semantic-release/error" "^2.2.0" @@ -11098,7 +11110,7 @@ semantic-release-slack-bot@^3.5.3: semantic-release@^19.0.5: version "19.0.5" - resolved "https://registry.yarnpkg.com/semantic-release/-/semantic-release-19.0.5.tgz#d7fab4b33fc20f1288eafd6c441e5d0938e5e174" + resolved "https://registry.npmjs.org/semantic-release/-/semantic-release-19.0.5.tgz" integrity sha512-NMPKdfpXTnPn49FDogMBi36SiBfXkSOJqCkk0E4iWOY1tusvvgBwqUmxTX1kmlT6kIYed9YwNKD1sfPpqa5yaA== dependencies: "@semantic-release/commit-analyzer" "^9.0.2" @@ -11132,53 +11144,53 @@ semantic-release@^19.0.5: semver-diff@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b" + resolved "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz" integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg== dependencies: semver "^6.3.0" semver-regex@^3.1.2: version "3.1.4" - resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-3.1.4.tgz#13053c0d4aa11d070a2f2872b6b1e3ae1e1971b4" + resolved "https://registry.npmjs.org/semver-regex/-/semver-regex-3.1.4.tgz" integrity sha512-6IiqeZNgq01qGf0TId0t3NvKzSvUsjcpdEO3AQNeIjR6A2+ckTnQlDpl4qu1bjRv0RzN3FP9hzFmws3lKqRWkA== semver-store@^0.3.0: version "0.3.0" - resolved "https://registry.yarnpkg.com/semver-store/-/semver-store-0.3.0.tgz#ce602ff07df37080ec9f4fb40b29576547befbe9" + resolved "https://registry.npmjs.org/semver-store/-/semver-store-0.3.0.tgz" integrity sha512-TcZvGMMy9vodEFSse30lWinkj+JgOBvPn8wRItpQRSayhc+4ssDs335uklkfvQQJgL/WvmHLVj4Ycv2s7QCQMg== "semver@2 || 3 || 4 || 5", semver@^5.6.0, semver@^5.7.1: version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== semver@7.3.4: version "7.3.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97" + resolved "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz" integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== dependencies: lru-cache "^6.0.0" semver@7.3.8, semver@7.x, semver@^7.0.0, semver@^7.1.1, semver@^7.1.2, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8: version "7.3.8" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" + resolved "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz" integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== dependencies: lru-cache "^6.0.0" semver@^6.0.0, semver@^6.3.0: version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== semver@~7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" + resolved "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz" integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== send@0.18.0: version "0.18.0" - resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" + resolved "https://registry.npmjs.org/send/-/send-0.18.0.tgz" integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== dependencies: debug "2.6.9" @@ -11197,17 +11209,17 @@ send@0.18.0: seq-queue@^0.0.5: version "0.0.5" - resolved "https://registry.yarnpkg.com/seq-queue/-/seq-queue-0.0.5.tgz#d56812e1c017a6e4e7c3e3a37a1da6d78dd3c93e" + resolved "https://registry.npmjs.org/seq-queue/-/seq-queue-0.0.5.tgz" integrity sha512-hr3Wtp/GZIc/6DAGPDcV4/9WoZhjrkXsi5B/07QgX8tsdc6ilr7BFM6PM6rbdAX1kFSDYeZGLipIZZKyQP0O5Q== sequelize-pool@^7.1.0: version "7.1.0" - resolved "https://registry.yarnpkg.com/sequelize-pool/-/sequelize-pool-7.1.0.tgz#210b391af4002762f823188fd6ecfc7413020768" + resolved "https://registry.npmjs.org/sequelize-pool/-/sequelize-pool-7.1.0.tgz" integrity sha512-G9c0qlIWQSK29pR/5U2JF5dDQeqqHRragoyahj/Nx4KOOQ3CPPfzxnfqFPCSB7x5UgjOgnZ61nSxz+fjDpRlJg== sequelize@^6.28.0: version "6.29.0" - resolved "https://registry.yarnpkg.com/sequelize/-/sequelize-6.29.0.tgz#7b8750487adb7502ce8a7005b460d50c8ccc58b7" + resolved "https://registry.npmjs.org/sequelize/-/sequelize-6.29.0.tgz" integrity sha512-m8Wi90rs3NZP9coXE52c7PL4Q078nwYZXqt1IxPvgki7nOFn0p/F0eKsYDBXCPw9G8/BCEa6zZNk0DQUAT4ypA== dependencies: "@types/debug" "^4.1.7" @@ -11229,7 +11241,7 @@ sequelize@^6.28.0: serve-static@1.15.0: version "1.15.0" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" + resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz" integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== dependencies: encodeurl "~1.0.2" @@ -11239,46 +11251,46 @@ serve-static@1.15.0: set-blocking@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== set-cookie-parser@^2.4.1: version "2.5.1" - resolved "https://registry.yarnpkg.com/set-cookie-parser/-/set-cookie-parser-2.5.1.tgz#ddd3e9a566b0e8e0862aca974a6ac0e01349430b" + resolved "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.5.1.tgz" integrity sha512-1jeBGaKNGdEq4FgIrORu/N570dwoPYio8lSoYLWmX7sQ//0JY08Xh9o5pBcgmHQ/MbsYp/aZnOe1s1lIsbLprQ== setimmediate@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz" integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== setprototypeof@1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== shallow-clone@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + resolved "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz" integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== dependencies: kind-of "^6.0.2" shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== shiki@^0.12.1: version "0.12.1" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-0.12.1.tgz#26fce51da12d055f479a091a5307470786f300cd" + resolved "https://registry.npmjs.org/shiki/-/shiki-0.12.1.tgz" integrity sha512-aieaV1m349rZINEBkjxh2QbBvFFQOlgqYTNtCal82hHj4dDZ76oMlQIX+C7ryerBTDiga3e5NfH6smjdJ02BbQ== dependencies: jsonc-parser "^3.2.0" @@ -11287,7 +11299,7 @@ shiki@^0.12.1: side-channel@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== dependencies: call-bind "^1.0.0" @@ -11296,17 +11308,17 @@ side-channel@^1.0.4: sift@16.0.1: version "16.0.1" - resolved "https://registry.yarnpkg.com/sift/-/sift-16.0.1.tgz#e9c2ccc72191585008cf3e36fc447b2d2633a053" + resolved "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz" integrity sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ== signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== signale@^1.2.1, signale@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/signale/-/signale-1.4.0.tgz#c4be58302fb0262ac00fc3d886a7c113759042f1" + resolved "https://registry.npmjs.org/signale/-/signale-1.4.0.tgz" integrity sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w== dependencies: chalk "^2.3.2" @@ -11315,19 +11327,19 @@ signale@^1.2.1, signale@^1.4.0: simple-update-notifier@^1.0.7: version "1.1.0" - resolved "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz#67694c121de354af592b347cdba798463ed49c82" + resolved "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz" integrity sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg== dependencies: semver "~7.0.0" sisteransi@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== slackify-markdown@^4.3.0: version "4.3.1" - resolved "https://registry.yarnpkg.com/slackify-markdown/-/slackify-markdown-4.3.1.tgz#1bfaf03bc4a8d617827326e137a9316b165ba4ab" + resolved "https://registry.npmjs.org/slackify-markdown/-/slackify-markdown-4.3.1.tgz" integrity sha512-6Uktkq4rEB6JZlRguI/dpPDF6Rak6QXZm3Gv2IM0VMeYQRSufp+TLFfOylxwINnOeMRc9ciYRhsbt1hUFD+uuQ== dependencies: mdast-util-to-markdown "^0.6.2" @@ -11340,17 +11352,17 @@ slackify-markdown@^4.3.0: slash@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== smart-buffer@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" + resolved "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz" integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== socks-proxy-agent@^6.0.0: version "6.2.1" - resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz#2687a31f9d7185e38d530bef1944fe1f1496d6ce" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz" integrity sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ== dependencies: agent-base "^6.0.2" @@ -11359,7 +11371,7 @@ socks-proxy-agent@^6.0.0: socks-proxy-agent@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz#dc069ecf34436621acb41e3efa66ca1b5fed15b6" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz" integrity sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww== dependencies: agent-base "^6.0.2" @@ -11368,7 +11380,7 @@ socks-proxy-agent@^7.0.0: socks@^2.6.2, socks@^2.7.1: version "2.7.1" - resolved "https://registry.yarnpkg.com/socks/-/socks-2.7.1.tgz#d8e651247178fde79c0663043e07240196857d55" + resolved "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz" integrity sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ== dependencies: ip "^2.0.0" @@ -11376,7 +11388,7 @@ socks@^2.6.2, socks@^2.7.1: sonic-boom@^0.7.5: version "0.7.7" - resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-0.7.7.tgz#d921de887428208bfa07b0ae32c278de043f350a" + resolved "https://registry.npmjs.org/sonic-boom/-/sonic-boom-0.7.7.tgz" integrity sha512-Ei5YOo5J64GKClHIL/5evJPgASXFVpfVYbJV9PILZQytTK6/LCwHvsZJW2Ig4p9FMC2OrBrMnXKgRN/OEoAWfg== dependencies: atomic-sleep "^1.0.0" @@ -11384,7 +11396,7 @@ sonic-boom@^0.7.5: sonic-boom@^1.0.2: version "1.4.1" - resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-1.4.1.tgz#d35d6a74076624f12e6f917ade7b9d75e918f53e" + resolved "https://registry.npmjs.org/sonic-boom/-/sonic-boom-1.4.1.tgz" integrity sha512-LRHh/A8tpW7ru89lrlkU4AszXt1dbwSjVWguGrmlxE7tawVmDBlI1PILMkXAxJTwqhgsEeTHzj36D5CmHgQmNg== dependencies: atomic-sleep "^1.0.0" @@ -11392,28 +11404,28 @@ sonic-boom@^1.0.2: sonic-boom@^3.1.0: version "3.2.1" - resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-3.2.1.tgz#972ceab831b5840a08a002fa95a672008bda1c38" + resolved "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.2.1.tgz" integrity sha512-iITeTHxy3B9FGu8aVdiDXUVAcHMF9Ss0cCsAOo2HfCrmVGT3/DT5oYaeu0M/YKZDlKTvChEyPq0zI9Hf33EX6A== dependencies: atomic-sleep "^1.0.0" sort-keys@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" + resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz" integrity sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg== dependencies: is-plain-obj "^1.0.0" sort-keys@^4.0.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-4.2.0.tgz#6b7638cee42c506fff8c1cecde7376d21315be18" + resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz" integrity sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg== dependencies: is-plain-obj "^2.0.0" source-map-support@0.5.13: version "0.5.13" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz" integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== dependencies: buffer-from "^1.0.0" @@ -11421,24 +11433,24 @@ source-map-support@0.5.13: source-map@^0.6.0, source-map@^0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== sparse-bitfield@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz#ff4ae6e68656056ba4b3e792ab3334d38273ca11" + resolved "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz" integrity sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ== dependencies: memory-pager "^1.0.2" spawn-error-forwarder@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/spawn-error-forwarder/-/spawn-error-forwarder-1.0.0.tgz#1afd94738e999b0346d7b9fc373be55e07577029" + resolved "https://registry.npmjs.org/spawn-error-forwarder/-/spawn-error-forwarder-1.0.0.tgz" integrity sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g== spdx-correct@^3.0.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz" integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== dependencies: spdx-expression-parse "^3.0.0" @@ -11446,12 +11458,12 @@ spdx-correct@^3.0.0: spdx-exceptions@^2.1.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== spdx-expression-parse@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== dependencies: spdx-exceptions "^2.1.0" @@ -11459,48 +11471,48 @@ spdx-expression-parse@^3.0.0: spdx-license-ids@^3.0.0: version "3.0.12" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz#69077835abe2710b65f03969898b6637b505a779" + resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz" integrity sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA== split2@^3.0.0: version "3.2.2" - resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" + resolved "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz" integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg== dependencies: readable-stream "^3.0.0" split2@^4.0.0, split2@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/split2/-/split2-4.1.0.tgz#101907a24370f85bb782f08adaabe4e281ecf809" + resolved "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz" integrity sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ== split2@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/split2/-/split2-1.0.0.tgz#52e2e221d88c75f9a73f90556e263ff96772b314" + resolved "https://registry.npmjs.org/split2/-/split2-1.0.0.tgz" integrity sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg== dependencies: through2 "~2.0.0" split@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" + resolved "https://registry.npmjs.org/split/-/split-1.0.1.tgz" integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg== dependencies: through "2" sprintf-js@1.1.2, sprintf-js@^1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673" + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz" integrity sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug== sprintf-js@~1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== sqlite3@^5.1.4: version "5.1.6" - resolved "https://registry.yarnpkg.com/sqlite3/-/sqlite3-5.1.6.tgz#1d4fbc90fe4fbd51e952e0a90fd8f6c2b9098e97" + resolved "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.6.tgz" integrity sha512-olYkWoKFVNSSSQNvxVUfjiVbz3YtBwTJj+mfV5zpHmqW3sELx2Cf4QCdirMelhM5Zh+KDVaKgQHqCxrqiWHybw== dependencies: "@mapbox/node-pre-gyp" "^1.0.0" @@ -11511,53 +11523,53 @@ sqlite3@^5.1.4: sqlstring@^2.3.2: version "2.3.3" - resolved "https://registry.yarnpkg.com/sqlstring/-/sqlstring-2.3.3.tgz#2ddc21f03bce2c387ed60680e739922c65751d0c" + resolved "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.3.tgz" integrity sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg== ssri@^8.0.0, ssri@^8.0.1: version "8.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" + resolved "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz" integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== dependencies: minipass "^3.1.1" ssri@^9.0.0, ssri@^9.0.1: version "9.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-9.0.1.tgz#544d4c357a8d7b71a19700074b6883fcb4eae057" + resolved "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz" integrity sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q== dependencies: minipass "^3.1.1" stack-utils@^2.0.3: version "2.0.6" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" + resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz" integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== dependencies: escape-string-regexp "^2.0.0" statuses@2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== "statuses@>= 1.5.0 < 2", statuses@^1.5.0: version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== stoppable@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/stoppable/-/stoppable-1.1.0.tgz#32da568e83ea488b08e4d7ea2c3bcc9d75015d5b" + resolved "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz" integrity sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw== stream-buffers@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/stream-buffers/-/stream-buffers-3.0.2.tgz#5249005a8d5c2d00b3a32e6e0a6ea209dc4f3521" + resolved "https://registry.npmjs.org/stream-buffers/-/stream-buffers-3.0.2.tgz" integrity sha512-DQi1h8VEBA/lURbSwFtEHnSTb9s2/pwLEaFuNhXwy1Dx3Sa0lOuYT2yNUr4/j2fs8oCAMANtrZ5OrPZtyVs3MQ== stream-combiner2@~1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.1.1.tgz#fb4d8a1420ea362764e21ad4780397bebcb41cbe" + resolved "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz" integrity sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw== dependencies: duplexer2 "~0.1.0" @@ -11565,12 +11577,12 @@ stream-combiner2@~1.1.1: streamsearch@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" + resolved "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz" integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== string-length@^4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz" integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== dependencies: char-regex "^1.0.2" @@ -11578,12 +11590,12 @@ string-length@^4.0.1: string-similarity@^4.0.1: version "4.0.4" - resolved "https://registry.yarnpkg.com/string-similarity/-/string-similarity-4.0.4.tgz#42d01ab0b34660ea8a018da8f56a3309bb8b2a5b" + resolved "https://registry.npmjs.org/string-similarity/-/string-similarity-4.0.4.tgz" integrity sha512-/q/8Q4Bl4ZKAPjj8WerIBJWALKkaPRfrvhfF8k/B23i4nzrlRj2/go1m90In7nG/3XDSbOo0+pu6RvCTM9RGMQ== "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: emoji-regex "^8.0.0" @@ -11592,7 +11604,7 @@ string-similarity@^4.0.1: string.prototype.trimend@^1.0.6: version "1.0.6" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" + resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz" integrity sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ== dependencies: call-bind "^1.0.2" @@ -11601,7 +11613,7 @@ string.prototype.trimend@^1.0.6: string.prototype.trimstart@^1.0.6: version "1.0.6" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz#e90ab66aa8e4007d92ef591bbf3cd422c56bdcf4" + resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz" integrity sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA== dependencies: call-bind "^1.0.2" @@ -11610,72 +11622,72 @@ string.prototype.trimstart@^1.0.6: string_decoder@^1.1.1: version "1.3.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== dependencies: safe-buffer "~5.2.0" string_decoder@~1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== dependencies: safe-buffer "~5.1.0" strip-ansi@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== dependencies: ansi-regex "^2.0.0" strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" strip-bom@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== strip-bom@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== strip-final-newline@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== strip-indent@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" + resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz" integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== dependencies: min-indent "^1.0.0" strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== strip-json-comments@~2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz" integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== strnum@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.0.5.tgz#5c4e829fe15ad4ff0d20c3db5ac97b73c9b072db" + resolved "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz" integrity sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA== strong-log-transformer@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz#0f5ed78d325e0421ac6f90f7f10e691d6ae3ae10" + resolved "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz" integrity sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA== dependencies: duplexer "^0.1.1" @@ -11684,7 +11696,7 @@ strong-log-transformer@^2.1.0: strtok3@^6.2.4: version "6.3.0" - resolved "https://registry.yarnpkg.com/strtok3/-/strtok3-6.3.0.tgz#358b80ffe6d5d5620e19a073aa78ce947a90f9a0" + resolved "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz" integrity sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw== dependencies: "@tokenizer/token" "^0.3.0" @@ -11692,7 +11704,7 @@ strtok3@^6.2.4: superagent@^8.0.6: version "8.0.6" - resolved "https://registry.yarnpkg.com/superagent/-/superagent-8.0.6.tgz#e3fb0b3112b79b12acd605c08846253197765bf6" + resolved "https://registry.npmjs.org/superagent/-/superagent-8.0.6.tgz" integrity sha512-HqSe6DSIh3hEn6cJvCkaM1BLi466f1LHi4yubR0tpewlMpk4RUFFy35bKz8SsPBwYfIIJy5eclp+3tCYAuX0bw== dependencies: component-emitter "^1.3.0" @@ -11708,33 +11720,33 @@ superagent@^8.0.6: supports-color@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== supports-color@^5.3.0, supports-color@^5.5.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" supports-color@^7.0.0, supports-color@^7.1.0: version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" supports-color@^8.0.0: version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz" integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== dependencies: has-flag "^4.0.0" supports-hyperlinks@^2.2.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" + resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz" integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== dependencies: has-flag "^4.0.0" @@ -11742,12 +11754,12 @@ supports-hyperlinks@^2.2.0: supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== tar-stream@~2.2.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" + resolved "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz" integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== dependencies: bl "^4.0.3" @@ -11758,7 +11770,7 @@ tar-stream@~2.2.0: tar@^6.0.2, tar@^6.1.0, tar@^6.1.11, tar@^6.1.2: version "6.1.13" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.13.tgz#46e22529000f612180601a6fe0680e7da508847b" + resolved "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz" integrity sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw== dependencies: chownr "^2.0.0" @@ -11770,7 +11782,7 @@ tar@^6.0.2, tar@^6.1.0, tar@^6.1.11, tar@^6.1.2: tedious@^15.1.2: version "15.1.2" - resolved "https://registry.yarnpkg.com/tedious/-/tedious-15.1.2.tgz#4dd3c33134be01d64520475e911ca83e276fcfeb" + resolved "https://registry.npmjs.org/tedious/-/tedious-15.1.2.tgz" integrity sha512-94slmnggCX8zG6iLNnM3k6PplTguP0p7R2RWOKTXdPmK1VmTpWk4+e0J4koIMXm1jjG7sGlZ1/JlaGVAdF1OOg== dependencies: "@azure/identity" "^2.0.4" @@ -11788,17 +11800,17 @@ tedious@^15.1.2: temp-dir@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" + resolved "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz" integrity sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ== temp-dir@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" + resolved "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz" integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg== tempy@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/tempy/-/tempy-1.0.1.tgz#30fe901fd869cfb36ee2bd999805aa72fbb035de" + resolved "https://registry.npmjs.org/tempy/-/tempy-1.0.1.tgz" integrity sha512-biM9brNqxSc04Ee71hzFbryD11nX7VPhQQY32AdDmjFvodsRFz/3ufeoTZ6uYkRFfGo188tENcASNs3vTdsM0w== dependencies: del "^6.0.0" @@ -11809,7 +11821,7 @@ tempy@^1.0.0: test-exclude@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: "@istanbuljs/schema" "^0.1.2" @@ -11818,24 +11830,24 @@ test-exclude@^6.0.0: text-extensions@^1.0.0: version "1.9.0" - resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" + resolved "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz" integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== text-table@^0.2.0, text-table@~0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== thread-stream@^2.0.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/thread-stream/-/thread-stream-2.3.0.tgz#4fc07fb39eff32ae7bad803cb7dd9598349fed33" + resolved "https://registry.npmjs.org/thread-stream/-/thread-stream-2.3.0.tgz" integrity sha512-kaDqm1DET9pp3NXwR8382WHbnpXnRkN9xGN9dQt3B2+dmXiW8X1SOwmFOxAErEQ47ObhZ96J6yhZNXuyCOL7KA== dependencies: real-require "^0.2.0" through2@^2.0.0, through2@~2.0.0: version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz" integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== dependencies: readable-stream "~2.3.6" @@ -11843,75 +11855,75 @@ through2@^2.0.0, through2@~2.0.0: through2@^4.0.0: version "4.0.2" - resolved "https://registry.yarnpkg.com/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" + resolved "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz" integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw== dependencies: readable-stream "3" through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6: version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== tiny-lru@^10.0.0: version "10.0.1" - resolved "https://registry.yarnpkg.com/tiny-lru/-/tiny-lru-10.0.1.tgz#aaf5d22207e641ed1b176ac2e616d6cc2fc9ef66" + resolved "https://registry.npmjs.org/tiny-lru/-/tiny-lru-10.0.1.tgz" integrity sha512-Vst+6kEsWvb17Zpz14sRJV/f8bUWKhqm6Dc+v08iShmIJ/WxqWytHzCTd6m88pS33rE2zpX34TRmOpAJPloNCA== tiny-lru@^7.0.2: version "7.0.6" - resolved "https://registry.yarnpkg.com/tiny-lru/-/tiny-lru-7.0.6.tgz#b0c3cdede1e5882aa2d1ae21cb2ceccf2a331f24" + resolved "https://registry.npmjs.org/tiny-lru/-/tiny-lru-7.0.6.tgz" integrity sha512-zNYO0Kvgn5rXzWpL0y3RS09sMK67eGaQj9805jlK9G6pSadfriTczzLHFXa/xcW4mIRfmlB9HyQ/+SgL0V1uow== tiny-lru@^8.0.1: version "8.0.2" - resolved "https://registry.yarnpkg.com/tiny-lru/-/tiny-lru-8.0.2.tgz#812fccbe6e622ded552e3ff8a4c3b5ff34a85e4c" + resolved "https://registry.npmjs.org/tiny-lru/-/tiny-lru-8.0.2.tgz" integrity sha512-ApGvZ6vVvTNdsmt676grvCkUCGwzG9IqXma5Z07xJgiC5L7akUMof5U8G2JTI9Rz/ovtVhJBlY6mNhEvtjzOIg== tiny-relative-date@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/tiny-relative-date/-/tiny-relative-date-1.3.0.tgz#fa08aad501ed730f31cc043181d995c39a935e07" + resolved "https://registry.npmjs.org/tiny-relative-date/-/tiny-relative-date-1.3.0.tgz" integrity sha512-MOQHpzllWxDCHHaDno30hhLfbouoYlOI8YlMNtvKe1zXbjEVhbcEovQxvZrPvtiYW630GQDoMMarCnjfyfHA+A== tmp@^0.0.33: version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz" integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== dependencies: os-tmpdir "~1.0.2" tmp@~0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" + resolved "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz" integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ== dependencies: rimraf "^3.0.0" tmpl@1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== to-fast-properties@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" toidentifier@1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== token-types@^4.1.1: version "4.2.1" - resolved "https://registry.yarnpkg.com/token-types/-/token-types-4.2.1.tgz#0f897f03665846982806e138977dbe72d44df753" + resolved "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz" integrity sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ== dependencies: "@tokenizer/token" "^0.3.0" @@ -11919,51 +11931,51 @@ token-types@^4.1.1: toposort-class@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/toposort-class/-/toposort-class-1.0.1.tgz#7ffd1f78c8be28c3ba45cd4e1a3f5ee193bd9988" + resolved "https://registry.npmjs.org/toposort-class/-/toposort-class-1.0.1.tgz" integrity sha512-OsLcGGbYF3rMjPUf8oKktyvCiUxSbqMMS39m33MAjLTC1DVIH6x3WSt63/M77ihI09+Sdfk1AXvfhCEeUmC7mg== touch@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/touch/-/touch-3.1.0.tgz#fe365f5f75ec9ed4e56825e0bb76d24ab74af83b" + resolved "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz" integrity sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA== dependencies: nopt "~1.0.10" tr46@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9" + resolved "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz" integrity sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA== dependencies: punycode "^2.1.1" tr46@~0.0.3: version "0.0.3" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== traverse@~0.6.6: version "0.6.7" - resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.6.7.tgz#46961cd2d57dd8706c36664acde06a248f1173fe" + resolved "https://registry.npmjs.org/traverse/-/traverse-0.6.7.tgz" integrity sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg== treeverse@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/treeverse/-/treeverse-2.0.0.tgz#036dcef04bc3fd79a9b79a68d4da03e882d8a9ca" + resolved "https://registry.npmjs.org/treeverse/-/treeverse-2.0.0.tgz" integrity sha512-N5gJCkLu1aXccpOTtqV6ddSEi6ZmGkh3hjmbu1IjcavJK4qyOVQmi0myQKM7z5jVGmD68SJoliaVrMmVObhj6A== trim-newlines@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" + resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== trough@^1.0.0: version "1.0.5" - resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406" + resolved "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz" integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== ts-jest@^29.0.4: version "29.0.5" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.0.5.tgz#c5557dcec8fe434fcb8b70c3e21c6b143bfce066" + resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-29.0.5.tgz" integrity sha512-PL3UciSgIpQ7f6XjVOmbi96vmDHUqAyqDr8YxzopDqX3kfgYtX1cuNeBjP+L9sFXi6nzsGGA6R3fP3DDDJyrxA== dependencies: bs-logger "0.x" @@ -11977,7 +11989,7 @@ ts-jest@^29.0.4: ts-node@^10.8.1: version "10.9.1" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" + resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz" integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== dependencies: "@cspotcode/source-map-support" "^0.8.0" @@ -11996,7 +12008,7 @@ ts-node@^10.8.1: tsconfig-paths@^3.14.1: version "3.14.1" - resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz#ba0734599e8ea36c862798e920bcf163277b137a" + resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz" integrity sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ== dependencies: "@types/json5" "^0.0.29" @@ -12006,7 +12018,7 @@ tsconfig-paths@^3.14.1: tsconfig-paths@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-4.1.2.tgz#4819f861eef82e6da52fb4af1e8c930a39ed979a" + resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.1.2.tgz" integrity sha512-uhxiMgnXQp1IR622dUXI+9Ehnws7i/y6xvpZB9IbUVOPy0muvdvgXeZOn88UcGPiT98Vp3rJPTa8bFoalZ3Qhw== dependencies: json5 "^2.2.2" @@ -12015,91 +12027,91 @@ tsconfig-paths@^4.1.2: tslib@2.4.1, tslib@^2.2.0: version "2.4.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.1.tgz#0d0bfbaac2880b91e22df0768e55be9753a5b17e" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz" integrity sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA== tslib@^1.11.1, tslib@^1.8.1: version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== tslib@^2.1.0, tslib@^2.3.0, tslib@^2.3.1, tslib@^2.4.0: version "2.4.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz" integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== tsscmp@1.0.6: version "1.0.6" - resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb" + resolved "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz" integrity sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA== tsutils@^3.21.0: version "3.21.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz" integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== dependencies: tslib "^1.8.1" type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== dependencies: prelude-ls "^1.2.1" type-detect@4.0.8: version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== type-fest@^0.16.0: version "0.16.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.16.0.tgz#3240b891a78b0deae910dbeb86553e552a148860" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.16.0.tgz" integrity sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg== type-fest@^0.18.0: version "0.18.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz" integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw== type-fest@^0.20.2: version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== type-fest@^0.21.3: version "0.21.3" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== type-fest@^0.3.0: version "0.3.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz" integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== type-fest@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.4.1.tgz#8bdf77743385d8a4f13ba95f610f5ccd68c728f8" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.4.1.tgz" integrity sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw== type-fest@^0.6.0: version "0.6.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz" integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== type-fest@^0.8.1: version "0.8.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== type-fest@^1.0.2: version "1.4.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz" integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== type-is@^1.6.16, type-is@^1.6.18, type-is@^1.6.4, type-is@~1.6.18: version "1.6.18" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz" integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== dependencies: media-typer "0.3.0" @@ -12107,7 +12119,7 @@ type-is@^1.6.16, type-is@^1.6.18, type-is@^1.6.4, type-is@~1.6.18: typed-array-length@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" + resolved "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz" integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng== dependencies: call-bind "^1.0.2" @@ -12116,24 +12128,24 @@ typed-array-length@^1.0.4: typedarray-to-buffer@^3.1.5: version "3.1.5" - resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + resolved "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz" integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== dependencies: is-typedarray "^1.0.0" typedarray@^0.0.6: version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== typedoc-plugin-resolve-crossmodule-references@^0.3.3: version "0.3.3" - resolved "https://registry.yarnpkg.com/typedoc-plugin-resolve-crossmodule-references/-/typedoc-plugin-resolve-crossmodule-references-0.3.3.tgz#812a6e7083f46031c69fe0021bb3913b10bd68cb" + resolved "https://registry.npmjs.org/typedoc-plugin-resolve-crossmodule-references/-/typedoc-plugin-resolve-crossmodule-references-0.3.3.tgz" integrity sha512-ZWWBy2WR8z9a6iXYGlyB3KrpV+JDdZv1mndYU6Eh6mInrfMCrQJi3Y5K9ihMBfuaBGB//le1nEmQLgzU3IO+dw== typedoc@^0.23.24: version "0.23.24" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.23.24.tgz#01cf32c09f2c19362e72a9ce1552d6e5b48c4fef" + resolved "https://registry.npmjs.org/typedoc/-/typedoc-0.23.24.tgz" integrity sha512-bfmy8lNQh+WrPYcJbtjQ6JEEsVl/ce1ZIXyXhyW+a1vFrjO39t6J8sL/d6FfAGrJTc7McCXgk9AanYBSNvLdIA== dependencies: lunr "^2.3.9" @@ -12143,17 +12155,17 @@ typedoc@^0.23.24: "typescript@^3 || ^4", typescript@^4.5.4, typescript@^4.6.4, typescript@^4.9.4: version "4.9.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.4.tgz#a2a3d2756c079abda241d75f149df9d561091e78" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz" integrity sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg== uglify-js@^3.1.4: version "3.17.4" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz" integrity sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g== unbox-primitive@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" + resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz" integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== dependencies: call-bind "^1.0.2" @@ -12163,12 +12175,12 @@ unbox-primitive@^1.0.2: undefsafe@^2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/undefsafe/-/undefsafe-2.0.5.tgz#38733b9327bdcd226db889fb723a6efd162e6e2c" + resolved "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz" integrity sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA== unified@^9.0.0: version "9.2.2" - resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.2.tgz#67649a1abfc3ab85d2969502902775eb03146975" + resolved "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz" integrity sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ== dependencies: bail "^1.0.0" @@ -12180,61 +12192,61 @@ unified@^9.0.0: unique-filename@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz" integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== dependencies: unique-slug "^2.0.0" unique-filename@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-2.0.1.tgz#e785f8675a9a7589e0ac77e0b5c34d2eaeac6da2" + resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz" integrity sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A== dependencies: unique-slug "^3.0.0" unique-slug@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" + resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz" integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== dependencies: imurmurhash "^0.1.4" unique-slug@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-3.0.0.tgz#6d347cf57c8a7a7a6044aabd0e2d74e4d76dc7c9" + resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz" integrity sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w== dependencies: imurmurhash "^0.1.4" unique-string@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" + resolved "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz" integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== dependencies: crypto-random-string "^2.0.0" unist-util-is@^4.0.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.1.0.tgz#976e5f462a7a5de73d94b706bac1b90671b57797" + resolved "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz" integrity sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg== unist-util-remove@^2.0.1: version "2.1.0" - resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-2.1.0.tgz#b0b4738aa7ee445c402fda9328d604a02d010588" + resolved "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz" integrity sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q== dependencies: unist-util-is "^4.0.0" unist-util-stringify-position@^2.0.0: version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da" + resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz" integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== dependencies: "@types/unist" "^2.0.2" unist-util-visit-parents@^3.0.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz#65a6ce698f78a6b0f56aa0e88f13801886cdaef6" + resolved "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz" integrity sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg== dependencies: "@types/unist" "^2.0.0" @@ -12242,7 +12254,7 @@ unist-util-visit-parents@^3.0.0: unist-util-visit@^2.0.3: version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.3.tgz#c3703893146df47203bb8a9795af47d7b971208c" + resolved "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz" integrity sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q== dependencies: "@types/unist" "^2.0.0" @@ -12251,39 +12263,39 @@ unist-util-visit@^2.0.3: universal-user-agent@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" + resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz" integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== universalify@^0.1.0: version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== universalify@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz" integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== unixify@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/unixify/-/unixify-1.0.0.tgz#3a641c8c2ffbce4da683a5c70f03a462940c2090" + resolved "https://registry.npmjs.org/unixify/-/unixify-1.0.0.tgz" integrity sha512-6bc58dPYhCMHHuwxldQxO3RRNZ4eCogZ/st++0+fcC1nr0jiGUtAdBJ2qzmLQWSxbtz42pWt4QQMiZ9HvZf5cg== dependencies: normalize-path "^2.1.1" unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== upath@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" + resolved "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz" integrity sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w== update-browserslist-db@^1.0.9: version "1.0.10" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" + resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz" integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== dependencies: escalade "^3.1.1" @@ -12291,49 +12303,49 @@ update-browserslist-db@^1.0.9: uri-js@^4.2.2: version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" url-join@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7" + resolved "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz" integrity sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA== util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== utils-merge@1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz" integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== uuid@9.0.0, uuid@^9.0.0: version "9.0.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5" + resolved "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz" integrity sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg== uuid@^8.3.0, uuid@^8.3.2: version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== v8-compile-cache-lib@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" + resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz" integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== v8-compile-cache@2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== v8-to-istanbul@^9.0.1: version "9.0.1" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz#b6f994b0b5d4ef255e17a0d17dc444a9f5132fa4" + resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz" integrity sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w== dependencies: "@jridgewell/trace-mapping" "^0.3.12" @@ -12342,7 +12354,7 @@ v8-to-istanbul@^9.0.1: validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== dependencies: spdx-correct "^3.0.0" @@ -12350,31 +12362,31 @@ validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: validate-npm-package-name@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" + resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz" integrity sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw== dependencies: builtins "^1.0.3" validate-npm-package-name@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz#fe8f1c50ac20afdb86f177da85b3600f0ac0d747" + resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz" integrity sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q== dependencies: builtins "^5.0.0" validator@^13.7.0: version "13.7.0" - resolved "https://registry.yarnpkg.com/validator/-/validator-13.7.0.tgz#4f9658ba13ba8f3d82ee881d3516489ea85c0857" + resolved "https://registry.npmjs.org/validator/-/validator-13.7.0.tgz" integrity sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw== vary@^1, vary@^1.1.2, vary@~1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== vfile-message@^2.0.0: version "2.0.4" - resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz#5b43b88171d409eae58477d13f23dd41d52c371a" + resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz" integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== dependencies: "@types/unist" "^2.0.0" @@ -12382,7 +12394,7 @@ vfile-message@^2.0.0: vfile@^4.0.0: version "4.2.1" - resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.2.1.tgz#03f1dce28fc625c625bc6514350fbdb00fa9e624" + resolved "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz" integrity sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA== dependencies: "@types/unist" "^2.0.0" @@ -12392,17 +12404,17 @@ vfile@^4.0.0: vscode-oniguruma@^1.7.0: version "1.7.0" - resolved "https://registry.yarnpkg.com/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz#439bfad8fe71abd7798338d1cd3dc53a8beea94b" + resolved "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz" integrity sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA== vscode-textmate@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-8.0.0.tgz#2c7a3b1163ef0441097e0b5d6389cd5504b59e5d" + resolved "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz" integrity sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg== vue-eslint-parser@^8.0.1: version "8.3.0" - resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-8.3.0.tgz#5d31129a1b3dd89c0069ca0a1c88f970c360bd0d" + resolved "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-8.3.0.tgz" integrity sha512-dzHGG3+sYwSf6zFBa0Gi9ZDshD7+ad14DGOdTLjruRVgZXe2J+DcZ9iUhyR48z5g1PqRa20yt3Njna/veLJL/g== dependencies: debug "^4.3.2" @@ -12415,36 +12427,36 @@ vue-eslint-parser@^8.0.1: walk-up-path@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/walk-up-path/-/walk-up-path-1.0.0.tgz#d4745e893dd5fd0dbb58dd0a4c6a33d9c9fec53e" + resolved "https://registry.npmjs.org/walk-up-path/-/walk-up-path-1.0.0.tgz" integrity sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg== walker@^1.0.8: version "1.0.8" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz" integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== dependencies: makeerror "1.0.12" wcwidth@^1.0.0, wcwidth@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + resolved "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz" integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg== dependencies: defaults "^1.0.3" webidl-conversions@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== webidl-conversions@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz" integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== whatwg-url@^11.0.0: version "11.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-11.0.0.tgz#0a849eebb5faf2119b901bb76fd795c2848d4018" + resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz" integrity sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ== dependencies: tr46 "^3.0.0" @@ -12452,7 +12464,7 @@ whatwg-url@^11.0.0: whatwg-url@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz" integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" @@ -12460,7 +12472,7 @@ whatwg-url@^5.0.0: which-boxed-primitive@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== dependencies: is-bigint "^1.0.1" @@ -12471,7 +12483,7 @@ which-boxed-primitive@^1.0.2: which-typed-array@^1.1.9: version "1.1.9" - resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6" + resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz" integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA== dependencies: available-typed-arrays "^1.0.5" @@ -12483,38 +12495,38 @@ which-typed-array@^1.1.9: which@^2.0.1, which@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" wide-align@^1.1.2, wide-align@^1.1.5: version "1.1.5" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" + resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz" integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== dependencies: string-width "^1.0.2 || 2 || 3 || 4" wkx@^0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/wkx/-/wkx-0.5.0.tgz#c6c37019acf40e517cc6b94657a25a3d4aa33e8c" + resolved "https://registry.npmjs.org/wkx/-/wkx-0.5.0.tgz" integrity sha512-Xng/d4Ichh8uN4l0FToV/258EjMGU9MGcA0HV2d9B/ZpZB3lqQm7nkOdZdm5GhKtLLhAE7PiVQwN4eN+2YJJUg== dependencies: "@types/node" "*" word-wrap@^1.2.3: version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== wordwrap@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz" integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== wrap-ansi@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" @@ -12523,12 +12535,12 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== write-file-atomic@^2.4.2: version "2.4.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz" integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== dependencies: graceful-fs "^4.1.11" @@ -12537,7 +12549,7 @@ write-file-atomic@^2.4.2: write-file-atomic@^3.0.0: version "3.0.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz" integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== dependencies: imurmurhash "^0.1.4" @@ -12547,7 +12559,7 @@ write-file-atomic@^3.0.0: write-file-atomic@^4.0.0, write-file-atomic@^4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz" integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== dependencies: imurmurhash "^0.1.4" @@ -12555,7 +12567,7 @@ write-file-atomic@^4.0.0, write-file-atomic@^4.0.1: write-json-file@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-3.2.0.tgz#65bbdc9ecd8a1458e15952770ccbadfcff5fe62a" + resolved "https://registry.npmjs.org/write-json-file/-/write-json-file-3.2.0.tgz" integrity sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ== dependencies: detect-indent "^5.0.0" @@ -12567,7 +12579,7 @@ write-json-file@^3.2.0: write-json-file@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-4.3.0.tgz#908493d6fd23225344af324016e4ca8f702dd12d" + resolved "https://registry.npmjs.org/write-json-file/-/write-json-file-4.3.0.tgz" integrity sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ== dependencies: detect-indent "^6.0.0" @@ -12579,7 +12591,7 @@ write-json-file@^4.3.0: write-pkg@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/write-pkg/-/write-pkg-4.0.0.tgz#675cc04ef6c11faacbbc7771b24c0abbf2a20039" + resolved "https://registry.npmjs.org/write-pkg/-/write-pkg-4.0.0.tgz" integrity sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA== dependencies: sort-keys "^2.0.0" @@ -12588,52 +12600,52 @@ write-pkg@^4.0.0: xmlbuilder@^15.1.1: version "15.1.1" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz#9dcdce49eea66d8d10b42cae94a79c3c8d0c2ec5" + resolved "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz" integrity sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg== xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== y18n@^5.0.5: version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yallist@^3.0.2: version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== yallist@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yaml@^1.10.0: version "1.10.2" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== yargs-parser@20.2.4: version "20.2.4" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz" integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== yargs-parser@21.1.1, yargs-parser@^21.0.1, yargs-parser@^21.1.1: version "21.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== yargs-parser@^20.2.2, yargs-parser@^20.2.3: version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== yargs@^16.2.0: version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== dependencies: cliui "^7.0.2" @@ -12646,7 +12658,7 @@ yargs@^16.2.0: yargs@^17.0.0, yargs@^17.3.1, yargs@^17.6.2: version "17.6.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.2.tgz#2e23f2944e976339a1ee00f18c77fedee8332541" + resolved "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz" integrity sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw== dependencies: cliui "^8.0.1" @@ -12659,20 +12671,20 @@ yargs@^17.0.0, yargs@^17.3.1, yargs@^17.6.2: ylru@^1.2.0: version "1.3.2" - resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.3.2.tgz#0de48017473275a4cbdfc83a1eaf67c01af8a785" + resolved "https://registry.npmjs.org/ylru/-/ylru-1.3.2.tgz" integrity sha512-RXRJzMiK6U2ye0BlGGZnmpwJDPgakn6aNQ0A7gHRbD4I0uvK4TW6UqkK1V0pp9jskjJBAXd3dRrbzWkqJ+6cxA== yn@3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" + resolved "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz" integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== yocto-queue@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== zwitch@^1.0.0: version "1.0.5" - resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz#d11d7381ffed16b742f6af7b3f223d5cd9fe9920" + resolved "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz" integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw== From f7f71be4078f87fd36bef3fd6ece32a2a4742cd7 Mon Sep 17 00:00:00 2001 From: Thenkei Date: Tue, 30 May 2023 16:44:22 +0200 Subject: [PATCH 39/61] chore: merge main into alpha --- packages/_example/CHANGELOG.md | 10 ++++++++ packages/_example/package.json | 4 ++-- .../src/routes/modification/action/action.ts | 10 ++++---- .../utils/forest-schema/generator-actions.ts | 6 ++++- .../routes/modification/action/action.test.ts | 10 ++++---- packages/datasource-sql/CHANGELOG.md | 7 ++++++ packages/datasource-sql/package.json | 2 +- .../src/connection/reverse-proxy.ts | 15 +++++++++--- .../forest-admin-client-with-cache.test.ts | 24 +++++++++++++++++++ 9 files changed, 72 insertions(+), 16 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index f6774f506b..d17f216347 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.3.9](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.8...example@1.3.9) (2023-05-30) + + + + + +### Dependencies + +* **@forestadmin/datasource-sql:** upgraded to 1.6.2 + ## example [1.3.8](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.7...example@1.3.8) (2023-05-25) diff --git a/packages/_example/package.json b/packages/_example/package.json index 9e338423e5..2c15c8c3df 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,6 +1,6 @@ { "name": "example", - "version": "1.3.5-alpha-webhook-custom-actions.1", + "version": "1.3.9-alpha-webhook-custom-actions.1", "license": "GPL-V3", "private": true, "dependencies": { @@ -9,7 +9,7 @@ "@forestadmin/datasource-dummy": "1.0.30-alpha-webhook-custom-actions.1", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.1", - "@forestadmin/datasource-sql": "1.6.1", + "@forestadmin/datasource-sql": "1.6.2", "@forestadmin/datasource-toolkit": "1.5.0", "@koa/router": "^12.0.0", "@nestjs/common": "^9.2.1", diff --git a/packages/agent/src/routes/modification/action/action.ts b/packages/agent/src/routes/modification/action/action.ts index e58d090937..3c480d0e34 100644 --- a/packages/agent/src/routes/modification/action/action.ts +++ b/packages/agent/src/routes/modification/action/action.ts @@ -43,16 +43,18 @@ export default class ActionRoute extends CollectionRoute { } setupRoutes(router: Router): void { + // Generate url that matches the declaration in forest-schema/generator-actions.ts const actionIndex = Object.keys(this.collection.schema.actions).indexOf(this.actionName); - const path = `/_actions/${this.collection.name}/${actionIndex}`; + const slug = SchemaGeneratorActions.getActionSlug(this.actionName); + const path = `/_actions/${this.collection.name}/${actionIndex}/${slug}`; router.post( - `${path}/:slug`, + `${path}`, this.middlewareCustomActionApprovalRequestData.bind(this), this.handleExecute.bind(this), ); - router.post(`${path}/:slug/hooks/load`, this.handleHook.bind(this)); - router.post(`${path}/:slug/hooks/change`, this.handleHook.bind(this)); + router.post(`${path}/hooks/load`, this.handleHook.bind(this)); + router.post(`${path}/hooks/change`, this.handleHook.bind(this)); } private async handleExecute(context: Context): Promise { diff --git a/packages/agent/src/utils/forest-schema/generator-actions.ts b/packages/agent/src/utils/forest-schema/generator-actions.ts index 8468a519fc..a6b733dbb9 100644 --- a/packages/agent/src/utils/forest-schema/generator-actions.ts +++ b/packages/agent/src/utils/forest-schema/generator-actions.ts @@ -33,12 +33,16 @@ export default class SchemaGeneratorActions { }, ]; + static getActionSlug(name: string) { + return name.toLocaleLowerCase().replace(/[^a-z0-9-]+/g, '-'); + } + static async buildSchema(collection: Collection, name: string): Promise { const schema = collection.schema.actions[name]; const actionIndex = Object.keys(collection.schema.actions).indexOf(name); // Generate url-safe friendly name (which won't be unique, but that's OK). - const slug = name.toLocaleLowerCase().replace(/[^a-z0-9-]+/g, '-'); + const slug = SchemaGeneratorActions.getActionSlug(name); const fields = await SchemaGeneratorActions.buildFields(collection, name, schema); return { diff --git a/packages/agent/test/routes/modification/action/action.test.ts b/packages/agent/test/routes/modification/action/action.test.ts index 682f25fdd7..5b96401a61 100644 --- a/packages/agent/test/routes/modification/action/action.test.ts +++ b/packages/agent/test/routes/modification/action/action.test.ts @@ -53,7 +53,7 @@ describe('ActionRoute', () => { dataSource = factories.dataSource.buildWithCollections([ factories.collection.build({ name: 'books', - schema: { actions: { MySingleAction: null } }, + schema: { actions: { MySingleAction: undefined } }, getForm: jest.fn(), execute: jest.fn(), }), @@ -64,16 +64,16 @@ describe('ActionRoute', () => { route.setupRoutes(router); expect(router.post).toHaveBeenCalledWith( - '/_actions/books/0/:slug', + '/_actions/books/0/mysingleaction', expect.any(Function), // middlewareCustomActionApprovalRequestData expect.any(Function), ); expect(router.post).toHaveBeenCalledWith( - '/_actions/books/0/:slug/hooks/load', + '/_actions/books/0/mysingleaction/hooks/load', expect.any(Function), ); expect(router.post).toHaveBeenCalledWith( - '/_actions/books/0/:slug/hooks/change', + '/_actions/books/0/mysingleaction/hooks/change', expect.any(Function), ); }); @@ -83,7 +83,7 @@ describe('ActionRoute', () => { dataSource = factories.dataSource.buildWithCollections([ factories.collection.build({ name: 'books', - schema: { actions: { My_Action: null } }, + schema: { actions: { My_Action: undefined } }, getForm: jest.fn(), execute: jest.fn(), }), diff --git a/packages/datasource-sql/CHANGELOG.md b/packages/datasource-sql/CHANGELOG.md index 32558be516..bdde3f7291 100644 --- a/packages/datasource-sql/CHANGELOG.md +++ b/packages/datasource-sql/CHANGELOG.md @@ -1,3 +1,10 @@ +## @forestadmin/datasource-sql [1.6.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-sql@1.6.1...@forestadmin/datasource-sql@1.6.2) (2023-05-30) + + +### Bug Fixes + +* **datasource-sql:** do not crash at connection time when using proxy without providing port ([#705](https://github.com/ForestAdmin/agent-nodejs/issues/705)) ([c3d7d60](https://github.com/ForestAdmin/agent-nodejs/commit/c3d7d6007f726d20d9a50e1f2240568976336aa5)) + ## @forestadmin/datasource-sql [1.6.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-sql@1.6.0...@forestadmin/datasource-sql@1.6.1) (2023-05-16) diff --git a/packages/datasource-sql/package.json b/packages/datasource-sql/package.json index 34e17616ff..71f514589e 100644 --- a/packages/datasource-sql/package.json +++ b/packages/datasource-sql/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/datasource-sql", - "version": "1.6.1", + "version": "1.6.2", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { diff --git a/packages/datasource-sql/src/connection/reverse-proxy.ts b/packages/datasource-sql/src/connection/reverse-proxy.ts index 202f0b9f08..86cd3328f1 100644 --- a/packages/datasource-sql/src/connection/reverse-proxy.ts +++ b/packages/datasource-sql/src/connection/reverse-proxy.ts @@ -62,9 +62,18 @@ export default class ReverseProxy { } private get destinationPort(): number { - return Number( - this.destination.uri ? new URL(this.destination.uri).port : this.destination.port, - ); + // Use port from object or uri if provided + if (this.destination.port) return this.destination.port; + if (this.destination.uri && new URL(this.destination.uri).port) + return Number(new URL(this.destination.uri).port); + + // Use default port for known dialects otherwise + if (this.destination.dialect === 'postgres') return 5432; + if (this.destination.dialect === 'mysql' || this.destination.dialect === 'mariadb') return 3306; + if (this.destination.dialect === 'mssql') return 1433; + + // Otherwise throw an error + throw new Error('Port is required'); } private async onConnection(socket: net.Socket): Promise { diff --git a/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts b/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts index 474b6ce235..c5dce50974 100644 --- a/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts +++ b/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts @@ -25,7 +25,10 @@ describe('ForestAdminClientWithCache', () => { whiteListService, factories.schema.build(), factories.auth.build(), +<<<<<<< HEAD factories.modelCustomization.build(), +======= +>>>>>>> main factories.eventsSubscription.build(), ); @@ -50,7 +53,10 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), schemaService, factories.auth.build(), +<<<<<<< HEAD factories.modelCustomization.build(), +======= +>>>>>>> main factories.eventsSubscription.build(), ); @@ -81,7 +87,10 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), factories.auth.build(), +<<<<<<< HEAD factories.modelCustomization.build(), +======= +>>>>>>> main factories.eventsSubscription.build(), ); @@ -109,7 +118,10 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), authService, +<<<<<<< HEAD factories.modelCustomization.build(), +======= +>>>>>>> main factories.eventsSubscription.build(), ); @@ -133,7 +145,10 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), authService, +<<<<<<< HEAD factories.modelCustomization.build(), +======= +>>>>>>> main factories.eventsSubscription.build(), ); @@ -157,7 +172,10 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), factories.auth.build(), +<<<<<<< HEAD factories.modelCustomization.build(), +======= +>>>>>>> main factories.eventsSubscription.build(), ); @@ -179,7 +197,10 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), factories.auth.build(), +<<<<<<< HEAD factories.modelCustomization.build(), +======= +>>>>>>> main factories.eventsSubscription.build(), ); @@ -202,7 +223,10 @@ describe('ForestAdminClientWithCache', () => { factories.ipWhiteList.build(), factories.schema.build(), factories.auth.build(), +<<<<<<< HEAD factories.modelCustomization.build(), +======= +>>>>>>> main factories.eventsSubscription.build(), ); From 3789600c29f001d7426eb17669590e8a7e554ba8 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Tue, 30 May 2023 15:32:59 +0000 Subject: [PATCH 40/61] chore(release): @forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.1 [skip ci] # @forestadmin/forestadmin-client [1.3.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.2.0...@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.1) (2023-05-30) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/forestadmin-client/CHANGELOG.md | 7 +++++++ packages/forestadmin-client/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/forestadmin-client/CHANGELOG.md b/packages/forestadmin-client/CHANGELOG.md index 4f9033d6e6..6aa20036ee 100644 --- a/packages/forestadmin-client/CHANGELOG.md +++ b/packages/forestadmin-client/CHANGELOG.md @@ -1,3 +1,10 @@ +# @forestadmin/forestadmin-client [1.3.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.2.0...@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.1) (2023-05-30) + + +### Features + +* **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) + # @forestadmin/forestadmin-client [1.2.0-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.2...@forestadmin/forestadmin-client@1.2.0-alpha-webhook-custom-actions.3) (2023-05-10) diff --git a/packages/forestadmin-client/package.json b/packages/forestadmin-client/package.json index 0e6357febc..4ee3a4b35a 100644 --- a/packages/forestadmin-client/package.json +++ b/packages/forestadmin-client/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/forestadmin-client", - "version": "1.2.0-alpha-webhook-custom-actions.3", + "version": "1.3.0-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From 39a5b42d38aec75068c2ac79c608aefccad3ff9b Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Tue, 30 May 2023 15:33:02 +0000 Subject: [PATCH 41/61] chore(release): example@1.3.10-alpha-webhook-custom-actions.1 [skip ci] ## [1.3.10-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.9...example@1.3.10-alpha-webhook-custom-actions.1) (2023-05-30) ### Bug Fixes * **agent:** make sure that triggered actions from the frontend execute the right code even after an addition or removal of custom actions ([#706](https://github.com/ForestAdmin/agent-nodejs/issues/706)) ([9581036](https://github.com/ForestAdmin/agent-nodejs/commit/95810369f175d84c7e176bad6cbf70fcdb44c772)) * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/_example/CHANGELOG.md | 10 ++++++++++ packages/_example/package.json | 6 +++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index d17f216347..16636648f1 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.3.10-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.9...example@1.3.10-alpha-webhook-custom-actions.1) (2023-05-30) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.10.0-alpha-webhook-custom-actions.1 + ## example [1.3.9](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.8...example@1.3.9) (2023-05-30) diff --git a/packages/_example/package.json b/packages/_example/package.json index 2c15c8c3df..4414bd38b8 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,12 +1,12 @@ { "name": "example", - "version": "1.3.9-alpha-webhook-custom-actions.1", + "version": "1.3.10-alpha-webhook-custom-actions.1", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.9.0-alpha-webhook-custom-actions.8", - "@forestadmin/datasource-dummy": "1.0.30-alpha-webhook-custom-actions.1", + "@forestadmin/agent": "1.10.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-dummy": "1.0.30", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.1", "@forestadmin/datasource-sql": "1.6.2", From 71dd06f11412e000c141aa6aba4c27351e36233c Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Tue, 30 May 2023 15:33:07 +0000 Subject: [PATCH 42/61] chore(release): @forestadmin/agent@1.10.0-alpha-webhook-custom-actions.1 [skip ci] # [1.10.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.1...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.1) (2023-05-30) ### Bug Fixes * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) ### Features * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/agent/CHANGELOG.md | 20 ++++++++++++++++++++ packages/agent/package.json | 4 ++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 97edc841f2..b59a9aa76f 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,23 @@ +# @forestadmin/agent [1.10.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.1...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.1) (2023-05-30) + + +### Bug Fixes + +* **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) +* **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) + + +### Features + +* **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) + + + + + +### Dependencies + +* **@forestadmin/forestadmin-client:** upgraded to 1.3.0-alpha-webhook-custom-actions.1 ## @forestadmin/agent [1.9.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.0...@forestadmin/agent@1.9.1) (2023-05-30) ### Bug Fixes diff --git a/packages/agent/package.json b/packages/agent/package.json index 44560fa250..6a4d8d800d 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.9.0-alpha-webhook-custom-actions.8", + "version": "1.10.0-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -16,7 +16,7 @@ "@fastify/express": "^1.1.0", "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.5.0", - "@forestadmin/forestadmin-client": "1.2.0-alpha-webhook-custom-actions.3", + "@forestadmin/forestadmin-client": "1.3.0-alpha-webhook-custom-actions.1", "@koa/cors": "^4.0.0", "@koa/router": "^12.0.0", "forest-ip-utils": "^1.0.1", From 8f4704e4564bc34413ce7a2a01cdff2ee6762a82 Mon Sep 17 00:00:00 2001 From: Morgan PERRE Date: Wed, 31 May 2023 10:28:22 +0200 Subject: [PATCH 43/61] feat(events-subscription): allow to instantly refresh customizations when they change (#704) --- packages/agent/src/agent.ts | 68 +++++++++++++------ packages/agent/src/utils/options-validator.ts | 7 ++ .../test/__factories__/forest-admin-client.ts | 1 + packages/agent/test/agent.test.ts | 56 +++++++++++++++ .../src/build-application-services.ts | 3 + .../src/events-subscription/index.ts | 5 +- .../native-refresh-events-handler-service.ts | 17 +++-- .../src/events-subscription/types.ts | 5 +- .../src/forest-admin-client-with-cache.ts | 10 ++- packages/forestadmin-client/src/index.ts | 2 + packages/forestadmin-client/src/types.ts | 1 + .../native-refresh-events-handler-service.ts | 1 + .../test/__factories__/forest-admin-client.ts | 2 + .../test/__factories__/index.ts | 2 +- .../test/events-subscription/index.test.ts | 31 +++++++-- ...ive-refresh-events-handler-service.test.ts | 36 ++++++++-- .../forest-admin-client-with-cache.test.ts | 35 ++++++++++ 17 files changed, 238 insertions(+), 44 deletions(-) diff --git a/packages/agent/src/agent.ts b/packages/agent/src/agent.ts index 7f34fa33fb..6efc405a48 100644 --- a/packages/agent/src/agent.ts +++ b/packages/agent/src/agent.ts @@ -62,8 +62,6 @@ export default class Agent extends FrameworkMounter this.options = allOptions; this.customizer = new DataSourceCustomizer(); - this.nocodeCustomizer = new DataSourceCustomizer(); - this.nocodeCustomizer.addDataSource(this.customizer.getFactory()); this.actionCustomizationService = new ActionCustomizationService(allOptions); } @@ -71,26 +69,22 @@ export default class Agent extends FrameworkMounter * Start the agent. */ async start(): Promise { - const { isProduction, logger, skipSchemaUpdate, typingsPath, typingsMaxDepth } = this.options; - - await this.nocodeCustomizer.use( - this.actionCustomizationService.addWebhookActions, - this.options.experimental?.webhookCustomActions, - ); + const router = await this.buildRouterAndSendSchema(); - const dataSource = await this.nocodeCustomizer.getDataSource(logger); + await this.options.forestAdminClient.subscribeToServerEvents(); + this.options.forestAdminClient.onRefreshCustomizations(this.restart.bind(this)); - const [router] = await Promise.all([ - this.getRouter(dataSource), - !skipSchemaUpdate ? this.sendSchema(dataSource) : Promise.resolve(), - !isProduction && typingsPath - ? this.customizer.updateTypesOnFileSystem(typingsPath, typingsMaxDepth) - : Promise.resolve(), + await this.mount(router); + } - this.options.forestAdminClient.subscribeToServerEvents(), - ]); + /** + * Restart the agent at runtime (remount routes). + */ + private async restart(): Promise { + // We force sending schema when restarting + const updatedRouter = await this.buildRouterAndSendSchema(); - await this.mount(router); + await this.remount(updatedRouter); } /** @@ -172,16 +166,50 @@ export default class Agent extends FrameworkMounter return router; } + private async buildRouterAndSendSchema(): Promise { + const { isProduction, logger, typingsPath, typingsMaxDepth, experimental } = this.options; + + // It allows to rebuild the full customization stack with no code customizations + this.nocodeCustomizer = new DataSourceCustomizer(); + this.nocodeCustomizer.addDataSource(this.customizer.getFactory()); + this.nocodeCustomizer.use( + this.actionCustomizationService.addWebhookActions, + experimental?.webhookCustomActions, + ); + + const dataSource = await this.nocodeCustomizer.getDataSource(logger); + const [router] = await Promise.all([ + this.getRouter(dataSource), + this.sendSchema(dataSource), + !isProduction && typingsPath + ? this.customizer.updateTypesOnFileSystem(typingsPath, typingsMaxDepth) + : Promise.resolve(), + ]); + + return router; + } + /** * Send the apimap to forest admin server */ private async sendSchema(dataSource: DataSource): Promise { - const { schemaPath } = this.options; + const { schemaPath, skipSchemaUpdate, isProduction, experimental } = this.options; + + // skipSchemaUpdate is mainly used in cloud version + if (skipSchemaUpdate) { + this.options.logger( + 'Warn', + 'Schema update was skipped (caused by options.skipSchemaUpdate=true)', + ); + + return; + } // Either load the schema from the file system or build it let schema: ForestSchema; - if (this.options.isProduction) { + // When using experimental no-code features even in production we need to build a new schema + if (!experimental?.webhookCustomActions && isProduction) { try { schema = JSON.parse(await readFile(schemaPath, { encoding: 'utf-8' })); } catch (e) { diff --git a/packages/agent/src/utils/options-validator.ts b/packages/agent/src/utils/options-validator.ts index f34ac8f4a4..40f7d0d5ab 100644 --- a/packages/agent/src/utils/options-validator.ts +++ b/packages/agent/src/utils/options-validator.ts @@ -45,6 +45,13 @@ export default class OptionsValidator { ); } + if (copyOptions.skipSchemaUpdate && copyOptions.experimental) { + copyOptions.logger( + 'Warn', + 'options.skipSchemaUpdate=true is incompatible with options.experimental', + ); + } + // When using the event source to refresh cache we set a one year cache duration copyOptions.permissionsCacheDurationInSeconds = copyOptions.instantCacheRefresh ? DEFAULT_CACHE_DURATION_WITH_EVENTS diff --git a/packages/agent/test/__factories__/forest-admin-client.ts b/packages/agent/test/__factories__/forest-admin-client.ts index 2b8904661f..4d23a0f269 100644 --- a/packages/agent/test/__factories__/forest-admin-client.ts +++ b/packages/agent/test/__factories__/forest-admin-client.ts @@ -38,6 +38,7 @@ const forestAdminClientFactory = ForestAdminClientFactory.define(() => ({ getConfiguration: jest.fn(), }, subscribeToServerEvents: jest.fn(), + onRefreshCustomizations: jest.fn(), })); export default forestAdminClientFactory; diff --git a/packages/agent/test/agent.test.ts b/packages/agent/test/agent.test.ts index 2f12b74556..2b1414654a 100644 --- a/packages/agent/test/agent.test.ts +++ b/packages/agent/test/agent.test.ts @@ -58,6 +58,7 @@ beforeEach(() => { mockDatasourceCustomizer .mockReset() .mockImplementationOnce(() => mockCustomizer) + .mockImplementationOnce(() => mockNocodeCustomizer) .mockImplementationOnce(() => mockNocodeCustomizer); mockMakeRoutes.mockReturnValue([{ setupRoutes: mockSetupRoute, bootstrap: mockBootstrap }]); @@ -131,6 +132,7 @@ describe('Agent', () => { mockCustomizer.getFactory.mockReturnValueOnce('factory'); const agent = new Agent(options); + await agent.start(); expect(agent).toBeTruthy(); @@ -189,6 +191,60 @@ describe('Agent', () => { expect(mockNocodeCustomizer.use).toHaveBeenCalledTimes(1); expect(mockNocodeCustomizer.use).toHaveBeenCalledWith(mockAddWebhookActions, true); }); + + test('start should subscribe server events and add listener to restart', async () => { + const agent = new Agent({ + ...options, + experimental: { + webhookCustomActions: true, + }, + instantCacheRefresh: true, + }); + + await agent.start(); + + expect(options.forestAdminClient.subscribeToServerEvents).toHaveBeenCalledTimes(1); + expect(options.forestAdminClient.onRefreshCustomizations).toHaveBeenCalledTimes(1); + }); + + test('restart should not subscribe server events and add listener to restart', async () => { + const agent = new Agent({ + ...options, + experimental: { + webhookCustomActions: true, + }, + instantCacheRefresh: true, + }); + + await agent.start(); + // @ts-expect-error: testing fakes RefreshCustomizations event + await agent.restart(); + + expect(options.forestAdminClient.subscribeToServerEvents).toHaveBeenCalledTimes(1); + expect(options.forestAdminClient.onRefreshCustomizations).toHaveBeenCalledTimes(1); + }); + + test('restart should re-build datasource and re-bootstrap routes', async () => { + const agent = new Agent({ + ...options, + experimental: { + webhookCustomActions: true, + }, + instantCacheRefresh: true, + }); + + await agent.start(); + // @ts-expect-error: testing fakes RefreshCustomizations event + await agent.restart(); + + expect(mockSetupRoute).toHaveBeenCalledTimes(2); + expect(mockBootstrap).toHaveBeenCalledTimes(2); + expect(mockMakeRoutes).toHaveBeenCalledTimes(2); + expect(mockNocodeCustomizer.getDataSource).toHaveBeenCalledTimes(2); + expect(mockCustomizer.updateTypesOnFileSystem).toHaveBeenCalledTimes(2); + + expect(mockNocodeCustomizer.use).toHaveBeenCalledTimes(2); + }); }); describe('Production', () => { diff --git a/packages/forestadmin-client/src/build-application-services.ts b/packages/forestadmin-client/src/build-application-services.ts index 0ace4ce242..cf7eb712a3 100644 --- a/packages/forestadmin-client/src/build-application-services.ts +++ b/packages/forestadmin-client/src/build-application-services.ts @@ -2,6 +2,7 @@ import AuthService from './auth'; import ChartHandler from './charts/chart-handler'; import EventsSubscriptionService from './events-subscription'; import NativeRefreshEventsHandlerService from './events-subscription/native-refresh-events-handler-service'; +import { RefreshEventsHandlerService } from './events-subscription/types'; import IpWhiteListService from './ip-whitelist'; import ModelCustomizationFromApiService from './model-customizations/model-customization-from-api'; import { ModelCustomizationService } from './model-customizations/types'; @@ -32,6 +33,7 @@ export default function buildApplicationServices( auth: AuthService; modelCustomizationService: ModelCustomizationService; eventsSubscription: EventsSubscriptionService; + eventsHandler: RefreshEventsHandlerService; } { const optionsWithDefaults = { forestServerUrl: 'https://api.forestadmin.com', @@ -75,6 +77,7 @@ export default function buildApplicationServices( permission, contextVariables, eventsSubscription, + eventsHandler, chartHandler: new ChartHandler(contextVariables), ipWhitelist: new IpWhiteListService(optionsWithDefaults), schema: new SchemaService(optionsWithDefaults), diff --git a/packages/forestadmin-client/src/events-subscription/index.ts b/packages/forestadmin-client/src/events-subscription/index.ts index ffdd0653db..1c2c357e65 100644 --- a/packages/forestadmin-client/src/events-subscription/index.ts +++ b/packages/forestadmin-client/src/events-subscription/index.ts @@ -39,7 +39,8 @@ export default class EventsSubscriptionService implements BaseEventsSubscription source.addEventListener('error', this.onEventError.bind(this)); - source.addEventListener('open', () => this.onEventOpen()); + // Only listen after first open + source.once('open', () => source.addEventListener('open', () => this.onEventOpenAgain())); source.addEventListener(ServerEventType.RefreshUsers, async () => this.refreshEventsHandlerService.refreshUsers(), @@ -80,7 +81,7 @@ export default class EventsSubscriptionService implements BaseEventsSubscription this.options.logger('Warn', `Server Event - Error: ${JSON.stringify(event)}`); } - private onEventOpen() { + private onEventOpenAgain() { this.options.logger( 'Debug', 'Server Event - Open EventSource (SSE) connection with Forest Admin servers', diff --git a/packages/forestadmin-client/src/events-subscription/native-refresh-events-handler-service.ts b/packages/forestadmin-client/src/events-subscription/native-refresh-events-handler-service.ts index b39b38f4a1..d7344c634b 100644 --- a/packages/forestadmin-client/src/events-subscription/native-refresh-events-handler-service.ts +++ b/packages/forestadmin-client/src/events-subscription/native-refresh-events-handler-service.ts @@ -5,16 +5,15 @@ import ActionPermissionService from '../permissions/action-permission'; import RenderingPermissionService from '../permissions/rendering-permission'; import UserPermissionService from '../permissions/user-permission'; -export default class NativeRefreshEventsHandlerService - extends EventEmitter - implements RefreshEventsHandlerService -{ +export default class NativeRefreshEventsHandlerService implements RefreshEventsHandlerService { + private readonly eventEmitter: EventEmitter; + constructor( private readonly actionPermissionService: ActionPermissionService, private readonly usersPermissionService: UserPermissionService, private readonly renderingPermissionService: RenderingPermissionService, ) { - super(); + this.eventEmitter = new EventEmitter(); } public refreshUsers() { @@ -31,7 +30,11 @@ export default class NativeRefreshEventsHandlerService } public refreshCustomizations() { - this.emit('RefreshCustomizations'); + this.eventEmitter.emit('RefreshCustomizations'); + } + + public onRefreshCustomizations(handler: () => void | Promise) { + this.eventEmitter.on('RefreshCustomizations', handler); } public refreshEverything() { @@ -40,6 +43,6 @@ export default class NativeRefreshEventsHandlerService this.renderingPermissionService.invalidateAllCache(); // Emit RefreshCustomizations event - this.emit('RefreshCustomizations'); + this.eventEmitter.emit('RefreshCustomizations'); } } diff --git a/packages/forestadmin-client/src/events-subscription/types.ts b/packages/forestadmin-client/src/events-subscription/types.ts index adec47a2f2..946282da0c 100644 --- a/packages/forestadmin-client/src/events-subscription/types.ts +++ b/packages/forestadmin-client/src/events-subscription/types.ts @@ -1,5 +1,3 @@ -import EventEmitter from 'events'; - export enum ServerEventType { RefreshUsers = 'refresh-users', RefreshRoles = 'refresh-roles', @@ -12,11 +10,12 @@ export type ServerEvent = MessageEvent<{ data?: string; }>; -export interface RefreshEventsHandlerService extends EventEmitter { +export interface RefreshEventsHandlerService { refreshUsers: () => Promise | void; refreshRoles: () => Promise | void; refreshRenderings: (renderingIds: [string | number]) => Promise | void; refreshCustomizations: () => Promise | void; + onRefreshCustomizations: (handler: () => void | Promise) => void; refreshEverything: () => Promise | void; } diff --git a/packages/forestadmin-client/src/forest-admin-client-with-cache.ts b/packages/forestadmin-client/src/forest-admin-client-with-cache.ts index 74fd9145ac..0230ba4cd4 100644 --- a/packages/forestadmin-client/src/forest-admin-client-with-cache.ts +++ b/packages/forestadmin-client/src/forest-admin-client-with-cache.ts @@ -3,7 +3,10 @@ import { Client } from 'openid-client'; import AuthService from './auth'; import { UserInfo } from './auth/types'; import ChartHandler from './charts/chart-handler'; -import { BaseEventsSubscriptionService } from './events-subscription/types'; +import { + BaseEventsSubscriptionService, + RefreshEventsHandlerService, +} from './events-subscription/types'; import IpWhiteListService from './ip-whitelist'; import { IpWhitelistConfiguration } from './ip-whitelist/types'; import { ModelCustomizationService } from './model-customizations/types'; @@ -31,6 +34,7 @@ export default class ForestAdminClientWithCache implements ForestAdminClient { protected readonly authService: AuthService, public readonly modelCustomizationService: ModelCustomizationService, protected readonly eventsSubscription: BaseEventsSubscriptionService, + protected readonly eventsHandler: RefreshEventsHandlerService, ) {} verifySignedActionParameters(signedParameters: string): TSignedParameters { @@ -77,4 +81,8 @@ export default class ForestAdminClientWithCache implements ForestAdminClient { public async subscribeToServerEvents() { await this.eventsSubscription.subscribeEvents(); } + + public onRefreshCustomizations(handler: () => void | Promise) { + this.eventsHandler.onRefreshCustomizations(handler); + } } diff --git a/packages/forestadmin-client/src/index.ts b/packages/forestadmin-client/src/index.ts index 902ca7f5a0..5c80309fbd 100644 --- a/packages/forestadmin-client/src/index.ts +++ b/packages/forestadmin-client/src/index.ts @@ -44,6 +44,7 @@ export default function createForestAdminClient( auth, modelCustomizationService, eventsSubscription, + eventsHandler, } = buildApplicationServices(new ForestHttpApi(), options); return new ForestAdminClientWithCache( @@ -57,6 +58,7 @@ export default function createForestAdminClient( auth, modelCustomizationService, eventsSubscription, + eventsHandler, ); } diff --git a/packages/forestadmin-client/src/types.ts b/packages/forestadmin-client/src/types.ts index 07ccd605a2..fcc303c7f7 100644 --- a/packages/forestadmin-client/src/types.ts +++ b/packages/forestadmin-client/src/types.ts @@ -55,6 +55,7 @@ export interface ForestAdminClient { markScopesAsUpdated(renderingId: number | string): void; subscribeToServerEvents(): Promise; + onRefreshCustomizations(handler: () => void | Promise): void; } export interface PermissionService { diff --git a/packages/forestadmin-client/test/__factories__/events-subscription/native-refresh-events-handler-service.ts b/packages/forestadmin-client/test/__factories__/events-subscription/native-refresh-events-handler-service.ts index bf2f4e4faa..394e1d4337 100644 --- a/packages/forestadmin-client/test/__factories__/events-subscription/native-refresh-events-handler-service.ts +++ b/packages/forestadmin-client/test/__factories__/events-subscription/native-refresh-events-handler-service.ts @@ -12,6 +12,7 @@ export class NativeRefreshEventsHandlerServiceFactory extends Factory { events[event] = callback; }); +const once = jest.fn((event, callback) => { + events[event] = callback; +}); + jest.mock('eventsource', () => ({ __esModule: true, default: jest.fn().mockImplementation(() => ({ addEventListener, + once, })), })); @@ -18,7 +23,7 @@ describe('EventsSubscriptionService', () => { beforeEach(() => jest.clearAllMocks()); const options = factories.forestAdminClientOptions.build(); - const refreshEventsHandlerService = factories.nativeRefreshEventsHandler.mockAllMethods().build(); + const refreshEventsHandlerService = factories.eventsHandler.mockAllMethods().build(); describe('subscribeEvents', () => { test('should add listener for message events', async () => { @@ -27,7 +32,7 @@ describe('EventsSubscriptionService', () => { eventsSubscriptionService.subscribeEvents(); expect(addEventListener).toHaveBeenCalledWith('error', expect.any(Function)); - expect(addEventListener).toHaveBeenCalledWith('open', expect.any(Function)); + expect(once).toHaveBeenCalledWith('open', expect.any(Function)); expect(addEventListener).toHaveBeenCalledWith( ServerEventType.RefreshUsers, @@ -147,8 +152,24 @@ describe('EventsSubscriptionService', () => { }); }); - describe('onEventOpen', () => { - test('should refreshEverything using refreshEventsHandlerService', async () => { + describe('onEventOpenAgain', () => { + test('should add new open listener on first open event', async () => { + const eventsSubscriptionService = new EventsSubscriptionService( + options, + refreshEventsHandlerService, + ); + + eventsSubscriptionService.subscribeEvents(); + + // eslint-disable-next-line @typescript-eslint/dot-notation + events['open'](); + + expect(addEventListener).toHaveBeenCalledWith('open', expect.any(Function)); + + expect(refreshEventsHandlerService.refreshEverything).not.toHaveBeenCalled(); + }); + + test('should refreshEverything using refreshEventsHandlerService on re-open', async () => { const eventsSubscriptionService = new EventsSubscriptionService( options, refreshEventsHandlerService, @@ -156,6 +177,8 @@ describe('EventsSubscriptionService', () => { eventsSubscriptionService.subscribeEvents(); + // eslint-disable-next-line @typescript-eslint/dot-notation + events['open'](); // eslint-disable-next-line @typescript-eslint/dot-notation events['open'](); diff --git a/packages/forestadmin-client/test/events-subscription/native-refresh-events-handler-service.test.ts b/packages/forestadmin-client/test/events-subscription/native-refresh-events-handler-service.test.ts index fbf80fede2..fcc8d558c3 100644 --- a/packages/forestadmin-client/test/events-subscription/native-refresh-events-handler-service.test.ts +++ b/packages/forestadmin-client/test/events-subscription/native-refresh-events-handler-service.test.ts @@ -75,19 +75,20 @@ describe('NativeRefreshEventsHandlerService', () => { }); describe('refreshCustomizations', () => { - test('should emit RefreshCustomizations (it will call listener)', async () => { + test('should called registered handlers', async () => { const refreshEventsHandler = new NativeRefreshEventsHandlerService( actionPermission, usersPermission, renderingPermission, ); - const spyEmit = jest.spyOn(refreshEventsHandler, 'emit'); + const handler = jest.fn(); + refreshEventsHandler.onRefreshCustomizations(handler); + expect(handler).not.toHaveBeenCalled(); refreshEventsHandler.refreshCustomizations(); - expect(spyEmit).toHaveBeenCalled(); - expect(spyEmit).toHaveBeenCalledWith('RefreshCustomizations'); + expect(handler).toHaveBeenCalled(); expect(usersPermission.invalidateCache).not.toHaveBeenCalled(); expect(actionPermission.invalidateCache).not.toHaveBeenCalled(); @@ -103,15 +104,38 @@ describe('NativeRefreshEventsHandlerService', () => { renderingPermission, ); - const spyEmit = jest.spyOn(refreshEventsHandler, 'emit'); + const handler = jest.fn(); + refreshEventsHandler.onRefreshCustomizations(handler); + expect(handler).not.toHaveBeenCalled(); refreshEventsHandler.refreshEverything(); expect(usersPermission.invalidateCache).toHaveBeenCalled(); expect(actionPermission.invalidateCache).toHaveBeenCalled(); expect(renderingPermission.invalidateAllCache).toHaveBeenCalled(); + expect(handler).toHaveBeenCalled(); + }); + }); + + describe('onRefreshCustomizations', () => { + test('should registered handlers', async () => { + const refreshEventsHandler = new NativeRefreshEventsHandlerService( + actionPermission, + usersPermission, + renderingPermission, + ); + + const handler = jest.fn(); + const secondHandler = jest.fn(); + + refreshEventsHandler.onRefreshCustomizations(handler); + refreshEventsHandler.onRefreshCustomizations(secondHandler); + + // Actually calling them + refreshEventsHandler.refreshCustomizations(); - expect(spyEmit).toHaveBeenCalled(); + expect(handler).toHaveBeenCalled(); + expect(secondHandler).toHaveBeenCalled(); }); }); }); diff --git a/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts b/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts index 474b6ce235..df557c1341 100644 --- a/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts +++ b/packages/forestadmin-client/test/forest-admin-client-with-cache.test.ts @@ -27,6 +27,7 @@ describe('ForestAdminClientWithCache', () => { factories.auth.build(), factories.modelCustomization.build(), factories.eventsSubscription.build(), + factories.eventsHandler.build(), ); const config = await forestAdminClient.getIpWhitelistConfiguration(); @@ -52,6 +53,7 @@ describe('ForestAdminClientWithCache', () => { factories.auth.build(), factories.modelCustomization.build(), factories.eventsSubscription.build(), + factories.eventsHandler.build(), ); const result = await forestAdminClient.postSchema({ @@ -83,6 +85,7 @@ describe('ForestAdminClientWithCache', () => { factories.auth.build(), factories.modelCustomization.build(), factories.eventsSubscription.build(), + factories.eventsHandler.build(), ); verifyAndExtractApprovalMock.mockReturnValue(signedParameters); @@ -111,6 +114,7 @@ describe('ForestAdminClientWithCache', () => { authService, factories.modelCustomization.build(), factories.eventsSubscription.build(), + factories.eventsHandler.build(), ); const result = await forestAdminClient.getUserInfo(1, 'token'); @@ -135,6 +139,7 @@ describe('ForestAdminClientWithCache', () => { authService, factories.modelCustomization.build(), factories.eventsSubscription.build(), + factories.eventsHandler.build(), ); const result = await forestAdminClient.getOpenIdClient(); @@ -159,6 +164,7 @@ describe('ForestAdminClientWithCache', () => { factories.auth.build(), factories.modelCustomization.build(), factories.eventsSubscription.build(), + factories.eventsHandler.build(), ); await forestAdminClient.markScopesAsUpdated(42); @@ -181,6 +187,7 @@ describe('ForestAdminClientWithCache', () => { factories.auth.build(), factories.modelCustomization.build(), factories.eventsSubscription.build(), + factories.eventsHandler.build(), ); await forestAdminClient.markScopesAsUpdated(42); @@ -204,6 +211,7 @@ describe('ForestAdminClientWithCache', () => { factories.auth.build(), factories.modelCustomization.build(), factories.eventsSubscription.build(), + factories.eventsHandler.build(), ); (renderingPermissionService.getScope as jest.Mock).mockResolvedValue('scope'); @@ -237,6 +245,7 @@ describe('ForestAdminClientWithCache', () => { factories.auth.build(), factories.modelCustomization.build(), eventsSubscriptionService, + factories.eventsHandler.build(), ); await forestAdminClient.subscribeToServerEvents(); @@ -244,4 +253,30 @@ describe('ForestAdminClientWithCache', () => { expect(eventsSubscriptionService.subscribeEvents).toHaveBeenCalledWith(); }); }); + + describe('onRefreshCustomizations', () => { + it('should subscribes to Server Events rendering service', async () => { + const eventsHandlerService = factories.eventsHandler.mockAllMethods().build(); + const forestAdminClient = new ForestAdminClient( + factories.forestAdminClientOptions.build(), + factories.permission.build(), + factories.renderingPermission.build(), + factories.contextVariablesInstantiator.build(), + factories.chartHandler.build(), + factories.ipWhiteList.build(), + factories.schema.build(), + factories.auth.build(), + factories.modelCustomization.build(), + factories.eventsSubscription.build(), + eventsHandlerService, + ); + + const handler = jest.fn(); + + forestAdminClient.onRefreshCustomizations(handler); + + expect(eventsHandlerService.onRefreshCustomizations).toHaveBeenCalled(); + expect(eventsHandlerService.onRefreshCustomizations).toHaveBeenCalledWith(handler); + }); + }); }); From f0937b86fc1d070a07331c46f441b29a92df1df5 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 31 May 2023 08:39:48 +0000 Subject: [PATCH 44/61] chore(release): @forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.2 [skip ci] # @forestadmin/forestadmin-client [1.3.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.1...@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.2) (2023-05-31) ### Features * **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) --- packages/forestadmin-client/CHANGELOG.md | 7 +++++++ packages/forestadmin-client/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/forestadmin-client/CHANGELOG.md b/packages/forestadmin-client/CHANGELOG.md index 6aa20036ee..ee4890608e 100644 --- a/packages/forestadmin-client/CHANGELOG.md +++ b/packages/forestadmin-client/CHANGELOG.md @@ -1,3 +1,10 @@ +# @forestadmin/forestadmin-client [1.3.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.1...@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.2) (2023-05-31) + + +### Features + +* **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) + # @forestadmin/forestadmin-client [1.3.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.2.0...@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.1) (2023-05-30) diff --git a/packages/forestadmin-client/package.json b/packages/forestadmin-client/package.json index 4ee3a4b35a..b650d4c102 100644 --- a/packages/forestadmin-client/package.json +++ b/packages/forestadmin-client/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/forestadmin-client", - "version": "1.3.0-alpha-webhook-custom-actions.1", + "version": "1.3.0-alpha-webhook-custom-actions.2", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From d24ee2dbbb75b30bafbb50c3784934c816d1d94a Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 31 May 2023 08:39:52 +0000 Subject: [PATCH 45/61] chore(release): example@1.3.10-alpha-webhook-custom-actions.2 [skip ci] ## [1.3.10-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.10-alpha-webhook-custom-actions.1...example@1.3.10-alpha-webhook-custom-actions.2) (2023-05-31) ### Features * **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) --- packages/_example/CHANGELOG.md | 10 ++++++++++ packages/_example/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index 16636648f1..4390d5a448 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.3.10-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.10-alpha-webhook-custom-actions.1...example@1.3.10-alpha-webhook-custom-actions.2) (2023-05-31) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.10.0-alpha-webhook-custom-actions.2 + ## example [1.3.10-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.9...example@1.3.10-alpha-webhook-custom-actions.1) (2023-05-30) diff --git a/packages/_example/package.json b/packages/_example/package.json index 4414bd38b8..67cf2c451b 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,11 +1,11 @@ { "name": "example", - "version": "1.3.10-alpha-webhook-custom-actions.1", + "version": "1.3.10-alpha-webhook-custom-actions.2", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.10.0-alpha-webhook-custom-actions.1", + "@forestadmin/agent": "1.10.0-alpha-webhook-custom-actions.2", "@forestadmin/datasource-dummy": "1.0.30", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.1", From e4655e6378638a2dba09e2cf2eb8dff94e130ba9 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 31 May 2023 08:39:56 +0000 Subject: [PATCH 46/61] chore(release): @forestadmin/agent@1.10.0-alpha-webhook-custom-actions.2 [skip ci] # [1.10.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.1...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.2) (2023-05-31) ### Features * **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) --- packages/agent/CHANGELOG.md | 15 +++++++++++++++ packages/agent/package.json | 4 ++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index b59a9aa76f..cacbdda3de 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,18 @@ +# @forestadmin/agent [1.10.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.1...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.2) (2023-05-31) + + +### Features + +* **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) + + + + + +### Dependencies + +* **@forestadmin/forestadmin-client:** upgraded to 1.3.0-alpha-webhook-custom-actions.2 + # @forestadmin/agent [1.10.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.1...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.1) (2023-05-30) diff --git a/packages/agent/package.json b/packages/agent/package.json index 6a4d8d800d..d607615a18 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.10.0-alpha-webhook-custom-actions.1", + "version": "1.10.0-alpha-webhook-custom-actions.2", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -16,7 +16,7 @@ "@fastify/express": "^1.1.0", "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.5.0", - "@forestadmin/forestadmin-client": "1.3.0-alpha-webhook-custom-actions.1", + "@forestadmin/forestadmin-client": "1.3.0-alpha-webhook-custom-actions.2", "@koa/cors": "^4.0.0", "@koa/router": "^12.0.0", "forest-ip-utils": "^1.0.1", From 3354a02cb022d1a160c9d5d5e094c47919ca67ca Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 1 Jun 2023 09:28:50 +0000 Subject: [PATCH 47/61] chore(release): @forestadmin/agent@1.10.0-alpha-webhook-custom-actions.3 [skip ci] # @forestadmin/agent [1.10.0-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.2...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.3) (2023-06-01) ### Dependencies * **@forestadmin/forestadmin-client:** upgraded to 1.3.0-alpha-webhook-custom-actions.3 --- packages/agent/CHANGELOG.md | 10 ++++++++++ packages/agent/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 789a3c7f9e..f867767c86 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,13 @@ +# @forestadmin/agent [1.10.0-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.2...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.3) (2023-06-01) + + + + + +### Dependencies + +* **@forestadmin/forestadmin-client:** upgraded to 1.3.0-alpha-webhook-custom-actions.3 + ## @forestadmin/agent [1.9.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.9.1...@forestadmin/agent@1.9.2) (2023-05-31) diff --git a/packages/agent/package.json b/packages/agent/package.json index d607615a18..511155209b 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.10.0-alpha-webhook-custom-actions.2", + "version": "1.10.0-alpha-webhook-custom-actions.3", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -16,7 +16,7 @@ "@fastify/express": "^1.1.0", "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", "@forestadmin/datasource-toolkit": "1.5.0", - "@forestadmin/forestadmin-client": "1.3.0-alpha-webhook-custom-actions.2", + "@forestadmin/forestadmin-client": "1.3.0-alpha-webhook-custom-actions.3", "@koa/cors": "^4.0.0", "@koa/router": "^12.0.0", "forest-ip-utils": "^1.0.1", From b56a7ae0012bf1d6bbba6612edf0e788d679be8b Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 1 Jun 2023 09:28:54 +0000 Subject: [PATCH 48/61] chore(release): example@1.3.14-alpha-webhook-custom-actions.1 [skip ci] ## [1.3.14-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.13...example@1.3.14-alpha-webhook-custom-actions.1) (2023-06-01) ### Bug Fixes * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) ### Features * **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/_example/CHANGELOG.md | 10 ++++++++++ packages/_example/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index ad2308451a..50930ad120 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.3.14-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.13...example@1.3.14-alpha-webhook-custom-actions.1) (2023-06-01) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.10.0-alpha-webhook-custom-actions.3 + ## example [1.3.13](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.12...example@1.3.13) (2023-05-31) diff --git a/packages/_example/package.json b/packages/_example/package.json index c3991d2cd7..9c1912513c 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,11 +1,11 @@ { "name": "example", - "version": "1.3.10-alpha-webhook-custom-actions.2", + "version": "1.3.14-alpha-webhook-custom-actions.1", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.10.0-alpha-webhook-custom-actions.2", + "@forestadmin/agent": "1.10.0-alpha-webhook-custom-actions.3", "@forestadmin/datasource-dummy": "1.0.30", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.1", From 6a717d46a1045bf26e89d23cbb5b71593e57e1ef Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 1 Jun 2023 09:28:58 +0000 Subject: [PATCH 49/61] chore(release): @forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.3 [skip ci] # [1.3.0-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.2...@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.3) (2023-06-01) ### Bug Fixes * **datasource-sql:** send proper server name indication on tls connections through socks proxy ([#708](https://github.com/ForestAdmin/agent-nodejs/issues/708)) ([b072cee](https://github.com/ForestAdmin/agent-nodejs/commit/b072cee0c7fd02df88b030015c9f33540b353b5a)) --- packages/forestadmin-client/CHANGELOG.md | 2 ++ packages/forestadmin-client/package.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/forestadmin-client/CHANGELOG.md b/packages/forestadmin-client/CHANGELOG.md index 75fb345d86..663240703b 100644 --- a/packages/forestadmin-client/CHANGELOG.md +++ b/packages/forestadmin-client/CHANGELOG.md @@ -1,3 +1,5 @@ +# @forestadmin/forestadmin-client [1.3.0-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.2...@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.3) (2023-06-01) + ## @forestadmin/forestadmin-client [1.2.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.2.0...@forestadmin/forestadmin-client@1.2.1) (2023-05-31) # @forestadmin/forestadmin-client [1.3.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.1...@forestadmin/forestadmin-client@1.3.0-alpha-webhook-custom-actions.2) (2023-05-31) diff --git a/packages/forestadmin-client/package.json b/packages/forestadmin-client/package.json index b650d4c102..b64672c242 100644 --- a/packages/forestadmin-client/package.json +++ b/packages/forestadmin-client/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/forestadmin-client", - "version": "1.3.0-alpha-webhook-custom-actions.2", + "version": "1.3.0-alpha-webhook-custom-actions.3", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From 7e4f11f3b06d90ef3a451b1fc0fab8e8720ac83b Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Thu, 1 Jun 2023 11:50:06 +0200 Subject: [PATCH 50/61] fix: improve errors from webhook endpoints (#713) --- .../agent/src/services/model-customizations/execute-webhook.ts | 2 +- .../test/services/model-customizations/execute-webhook.test.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/agent/src/services/model-customizations/execute-webhook.ts b/packages/agent/src/services/model-customizations/execute-webhook.ts index dfba446b0e..b754c72866 100644 --- a/packages/agent/src/services/model-customizations/execute-webhook.ts +++ b/packages/agent/src/services/model-customizations/execute-webhook.ts @@ -54,7 +54,7 @@ export default async function executeWebhook( if ((e as ResponseError).response) { return { type: 'Error', - message: `Error received from the server: ${e.status} ${e.message}.`, + message: `Error received from the webhook endpoint: ${e.status} ${e.message}.`, }; } diff --git a/packages/agent/test/services/model-customizations/execute-webhook.test.ts b/packages/agent/test/services/model-customizations/execute-webhook.test.ts index ca3b98e904..f8b8678feb 100644 --- a/packages/agent/test/services/model-customizations/execute-webhook.test.ts +++ b/packages/agent/test/services/model-customizations/execute-webhook.test.ts @@ -274,7 +274,7 @@ describe('Services > ModelCustomizations > WebhookExecutor', () => { expect(result).toEqual({ type: 'Error', - message: 'Error received from the server: 400 Bad request.', + message: 'Error received from the webhook endpoint: 400 Bad request.', }); }); }); From c17afd0cecf6414799252dd6e7d18ff7b723be23 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 1 Jun 2023 10:02:25 +0000 Subject: [PATCH 51/61] chore(release): @forestadmin/agent@1.10.0-alpha-webhook-custom-actions.4 [skip ci] # @forestadmin/agent [1.10.0-alpha-webhook-custom-actions.4](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.3...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.4) (2023-06-01) ### Bug Fixes * improve errors from webhook endpoints ([#713](https://github.com/ForestAdmin/agent-nodejs/issues/713)) ([7e4f11f](https://github.com/ForestAdmin/agent-nodejs/commit/7e4f11f3b06d90ef3a451b1fc0fab8e8720ac83b)) --- packages/agent/CHANGELOG.md | 7 +++++++ packages/agent/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index f867767c86..3a7d64cc0b 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,10 @@ +# @forestadmin/agent [1.10.0-alpha-webhook-custom-actions.4](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.3...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.4) (2023-06-01) + + +### Bug Fixes + +* improve errors from webhook endpoints ([#713](https://github.com/ForestAdmin/agent-nodejs/issues/713)) ([7e4f11f](https://github.com/ForestAdmin/agent-nodejs/commit/7e4f11f3b06d90ef3a451b1fc0fab8e8720ac83b)) + # @forestadmin/agent [1.10.0-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.2...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.3) (2023-06-01) diff --git a/packages/agent/package.json b/packages/agent/package.json index 511155209b..3454860526 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.10.0-alpha-webhook-custom-actions.3", + "version": "1.10.0-alpha-webhook-custom-actions.4", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From 3d22bad5375700cb5fa04b2e4eefa27b274868c5 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Thu, 1 Jun 2023 10:02:28 +0000 Subject: [PATCH 52/61] chore(release): example@1.3.14-alpha-webhook-custom-actions.2 [skip ci] ## [1.3.14-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.14-alpha-webhook-custom-actions.1...example@1.3.14-alpha-webhook-custom-actions.2) (2023-06-01) ### Bug Fixes * improve errors from webhook endpoints ([#713](https://github.com/ForestAdmin/agent-nodejs/issues/713)) ([7e4f11f](https://github.com/ForestAdmin/agent-nodejs/commit/7e4f11f3b06d90ef3a451b1fc0fab8e8720ac83b)) --- packages/_example/CHANGELOG.md | 10 ++++++++++ packages/_example/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index 50930ad120..b5aad6970f 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,13 @@ +## example [1.3.14-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.14-alpha-webhook-custom-actions.1...example@1.3.14-alpha-webhook-custom-actions.2) (2023-06-01) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.10.0-alpha-webhook-custom-actions.4 + ## example [1.3.14-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.13...example@1.3.14-alpha-webhook-custom-actions.1) (2023-06-01) diff --git a/packages/_example/package.json b/packages/_example/package.json index 9c1912513c..20798c50e1 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,11 +1,11 @@ { "name": "example", - "version": "1.3.14-alpha-webhook-custom-actions.1", + "version": "1.3.14-alpha-webhook-custom-actions.2", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.10.0-alpha-webhook-custom-actions.3", + "@forestadmin/agent": "1.10.0-alpha-webhook-custom-actions.4", "@forestadmin/datasource-dummy": "1.0.30", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.1", From 19277d5af9345f4e0fe3b021a8af1c0e212cc667 Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Fri, 2 Jun 2023 09:07:38 +0200 Subject: [PATCH 53/61] chore: empty commit From ace4da32577481dbed7bdcd85ed31869a685c7f4 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 7 Jun 2023 09:01:47 +0000 Subject: [PATCH 54/61] chore(release): example@1.3.14-alpha-webhook-custom-actions.3 [skip ci] ## example [1.3.14-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.14-alpha-webhook-custom-actions.2...example@1.3.14-alpha-webhook-custom-actions.3) (2023-06-07) ### Dependencies * **@forestadmin/agent:** upgraded to 1.10.0-alpha-webhook-custom-actions.5 * **@forestadmin/datasource-dummy:** upgraded to 1.0.31-alpha-webhook-custom-actions.1 --- packages/_example/CHANGELOG.md | 11 +++++++++++ packages/_example/package.json | 6 +++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/packages/_example/CHANGELOG.md b/packages/_example/CHANGELOG.md index b5aad6970f..0191214bb8 100644 --- a/packages/_example/CHANGELOG.md +++ b/packages/_example/CHANGELOG.md @@ -1,3 +1,14 @@ +## example [1.3.14-alpha-webhook-custom-actions.3](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.14-alpha-webhook-custom-actions.2...example@1.3.14-alpha-webhook-custom-actions.3) (2023-06-07) + + + + + +### Dependencies + +* **@forestadmin/agent:** upgraded to 1.10.0-alpha-webhook-custom-actions.5 +* **@forestadmin/datasource-dummy:** upgraded to 1.0.31-alpha-webhook-custom-actions.1 + ## example [1.3.14-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/example@1.3.14-alpha-webhook-custom-actions.1...example@1.3.14-alpha-webhook-custom-actions.2) (2023-06-01) diff --git a/packages/_example/package.json b/packages/_example/package.json index 20798c50e1..003397341f 100644 --- a/packages/_example/package.json +++ b/packages/_example/package.json @@ -1,12 +1,12 @@ { "name": "example", - "version": "1.3.14-alpha-webhook-custom-actions.2", + "version": "1.3.14-alpha-webhook-custom-actions.3", "license": "GPL-V3", "private": true, "dependencies": { "@faker-js/faker": "^7.6.0", - "@forestadmin/agent": "1.10.0-alpha-webhook-custom-actions.4", - "@forestadmin/datasource-dummy": "1.0.30", + "@forestadmin/agent": "1.10.0-alpha-webhook-custom-actions.5", + "@forestadmin/datasource-dummy": "1.0.31-alpha-webhook-custom-actions.1", "@forestadmin/datasource-mongoose": "1.4.0", "@forestadmin/datasource-sequelize": "1.3.1", "@forestadmin/datasource-sql": "1.6.4", From d293f46756472e8e300eca232dad4d2920f577d4 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 7 Jun 2023 09:01:50 +0000 Subject: [PATCH 55/61] chore(release): @forestadmin/agent@1.10.0-alpha-webhook-custom-actions.5 [skip ci] # [1.10.0-alpha-webhook-custom-actions.5](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.4...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.5) (2023-06-07) ### Features * **plugin-aws-s3:** add S3Client endpoint option ([#718](https://github.com/ForestAdmin/agent-nodejs/issues/718)) ([f725bbe](https://github.com/ForestAdmin/agent-nodejs/commit/f725bbed405c2c54b4cd975bbfa95274e422e22b)) --- packages/agent/CHANGELOG.md | 10 ++++++++++ packages/agent/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/agent/CHANGELOG.md b/packages/agent/CHANGELOG.md index 3a7d64cc0b..6c4aefebe0 100644 --- a/packages/agent/CHANGELOG.md +++ b/packages/agent/CHANGELOG.md @@ -1,3 +1,13 @@ +# @forestadmin/agent [1.10.0-alpha-webhook-custom-actions.5](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.4...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.5) (2023-06-07) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.2 + # @forestadmin/agent [1.10.0-alpha-webhook-custom-actions.4](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.3...@forestadmin/agent@1.10.0-alpha-webhook-custom-actions.4) (2023-06-01) diff --git a/packages/agent/package.json b/packages/agent/package.json index 3454860526..2d6e8a6438 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/agent", - "version": "1.10.0-alpha-webhook-custom-actions.4", + "version": "1.10.0-alpha-webhook-custom-actions.5", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -14,7 +14,7 @@ "dependencies": { "@fast-csv/format": "^4.3.5", "@fastify/express": "^1.1.0", - "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.2", "@forestadmin/datasource-toolkit": "1.5.0", "@forestadmin/forestadmin-client": "1.3.0-alpha-webhook-custom-actions.3", "@koa/cors": "^4.0.0", From 10826fd8d2217a97201c51b29b37025db892c4f6 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 7 Jun 2023 09:01:53 +0000 Subject: [PATCH 56/61] chore(release): @forestadmin/datasource-customizer@1.8.0-alpha-webhook-custom-actions.2 [skip ci] # [1.8.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.8.0-alpha-webhook-custom-actions.1...@forestadmin/datasource-customizer@1.8.0-alpha-webhook-custom-actions.2) (2023-06-07) ### Bug Fixes * **agent:** make sure that triggered actions from the frontend execute the right code even after an addition or removal of custom actions ([#706](https://github.com/ForestAdmin/agent-nodejs/issues/706)) ([9581036](https://github.com/ForestAdmin/agent-nodejs/commit/95810369f175d84c7e176bad6cbf70fcdb44c772)) * **datasource-sql:** do not crash at connection time when using proxy without providing port ([#705](https://github.com/ForestAdmin/agent-nodejs/issues/705)) ([c3d7d60](https://github.com/ForestAdmin/agent-nodejs/commit/c3d7d6007f726d20d9a50e1f2240568976336aa5)) * **datasource-sql:** export missing type ([#691](https://github.com/ForestAdmin/agent-nodejs/issues/691)) ([885de9e](https://github.com/ForestAdmin/agent-nodejs/commit/885de9ecad70c8d9e03afc590c7ecef5aeeadabb)) * **datasource-sql:** send proper server name indication on tls connections through socks proxy ([#708](https://github.com/ForestAdmin/agent-nodejs/issues/708)) ([b072cee](https://github.com/ForestAdmin/agent-nodejs/commit/b072cee0c7fd02df88b030015c9f33540b353b5a)) * **ds-sql:** close the proxy when sequelize instance closes ([#694](https://github.com/ForestAdmin/agent-nodejs/issues/694)) ([d31276c](https://github.com/ForestAdmin/agent-nodejs/commit/d31276cba54b1c4d42e884bdaddb38200cd1364b)) * improve errors from webhook endpoints ([#713](https://github.com/ForestAdmin/agent-nodejs/issues/713)) ([7e4f11f](https://github.com/ForestAdmin/agent-nodejs/commit/7e4f11f3b06d90ef3a451b1fc0fab8e8720ac83b)) * **in-app-onboarding:** do not force skipLibCheck on customers TS configuration ([#680](https://github.com/ForestAdmin/agent-nodejs/issues/680)) ([c374117](https://github.com/ForestAdmin/agent-nodejs/commit/c37411763507f274dd4dba2d3dd08adb8c1b4222)) * **typings:** allow incomplete records to be passed to collection.create ([#700](https://github.com/ForestAdmin/agent-nodejs/issues/700)) ([95483e2](https://github.com/ForestAdmin/agent-nodejs/commit/95483e277d695a9f3ed19d86b2f6834413007afc)) * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) ### Features * **datasource-sql:** enable to proxify the tcp connection by a socks5 proxy ([#690](https://github.com/ForestAdmin/agent-nodejs/issues/690)) ([971a712](https://github.com/ForestAdmin/agent-nodejs/commit/971a71286338ee085d00794dd4fa9f9cf1d05520)) * **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) * **events-subscription:** allow to instantly refresh permissions when they change ([#692](https://github.com/ForestAdmin/agent-nodejs/issues/692)) ([e108183](https://github.com/ForestAdmin/agent-nodejs/commit/e1081838e42f216e8edc19048531eb8ef05d3fa0)) * **plugin-aws-s3:** add S3Client endpoint option ([#718](https://github.com/ForestAdmin/agent-nodejs/issues/718)) ([f725bbe](https://github.com/ForestAdmin/agent-nodejs/commit/f725bbed405c2c54b4cd975bbfa95274e422e22b)) --- packages/datasource-customizer/CHANGELOG.md | 7 +++++++ packages/datasource-customizer/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/datasource-customizer/CHANGELOG.md b/packages/datasource-customizer/CHANGELOG.md index 7e4cd0414c..52f7c9d4f4 100644 --- a/packages/datasource-customizer/CHANGELOG.md +++ b/packages/datasource-customizer/CHANGELOG.md @@ -1,3 +1,10 @@ +# @forestadmin/datasource-customizer [1.8.0-alpha-webhook-custom-actions.2](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.8.0-alpha-webhook-custom-actions.1...@forestadmin/datasource-customizer@1.8.0-alpha-webhook-custom-actions.2) (2023-06-07) + + +### Bug Fixes + +* **typings:** allow incomplete records to be passed to collection.create ([#700](https://github.com/ForestAdmin/agent-nodejs/issues/700)) ([95483e2](https://github.com/ForestAdmin/agent-nodejs/commit/95483e277d695a9f3ed19d86b2f6834413007afc)) + # @forestadmin/datasource-customizer [1.8.0-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-customizer@1.7.1...@forestadmin/datasource-customizer@1.8.0-alpha-webhook-custom-actions.1) (2023-04-28) diff --git a/packages/datasource-customizer/package.json b/packages/datasource-customizer/package.json index db4f7947e2..91442d3a23 100644 --- a/packages/datasource-customizer/package.json +++ b/packages/datasource-customizer/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/datasource-customizer", - "version": "1.8.0-alpha-webhook-custom-actions.1", + "version": "1.8.0-alpha-webhook-custom-actions.2", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { From 5cdd19f3f0ec3271dd4895b812f3ed1a75f45589 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 7 Jun 2023 09:01:58 +0000 Subject: [PATCH 57/61] chore(release): @forestadmin/datasource-dummy@1.0.31-alpha-webhook-custom-actions.1 [skip ci] ## [1.0.31-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.30...@forestadmin/datasource-dummy@1.0.31-alpha-webhook-custom-actions.1) (2023-06-07) ### Bug Fixes * **agent:** make sure that triggered actions from the frontend execute the right code even after an addition or removal of custom actions ([#706](https://github.com/ForestAdmin/agent-nodejs/issues/706)) ([9581036](https://github.com/ForestAdmin/agent-nodejs/commit/95810369f175d84c7e176bad6cbf70fcdb44c772)) * **datasource-sql:** do not crash at connection time when using proxy without providing port ([#705](https://github.com/ForestAdmin/agent-nodejs/issues/705)) ([c3d7d60](https://github.com/ForestAdmin/agent-nodejs/commit/c3d7d6007f726d20d9a50e1f2240568976336aa5)) * **datasource-sql:** send proper server name indication on tls connections through socks proxy ([#708](https://github.com/ForestAdmin/agent-nodejs/issues/708)) ([b072cee](https://github.com/ForestAdmin/agent-nodejs/commit/b072cee0c7fd02df88b030015c9f33540b353b5a)) * improve errors from webhook endpoints ([#713](https://github.com/ForestAdmin/agent-nodejs/issues/713)) ([7e4f11f](https://github.com/ForestAdmin/agent-nodejs/commit/7e4f11f3b06d90ef3a451b1fc0fab8e8720ac83b)) * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) ### Features * **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) * **events-subscription:** allow to instantly refresh permissions when they change ([#692](https://github.com/ForestAdmin/agent-nodejs/issues/692)) ([e108183](https://github.com/ForestAdmin/agent-nodejs/commit/e1081838e42f216e8edc19048531eb8ef05d3fa0)) * **plugin-aws-s3:** add S3Client endpoint option ([#718](https://github.com/ForestAdmin/agent-nodejs/issues/718)) ([f725bbe](https://github.com/ForestAdmin/agent-nodejs/commit/f725bbed405c2c54b4cd975bbfa95274e422e22b)) * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/datasource-dummy/CHANGELOG.md | 10 ++++++++++ packages/datasource-dummy/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/datasource-dummy/CHANGELOG.md b/packages/datasource-dummy/CHANGELOG.md index 94a7cfc697..9f668ded0a 100644 --- a/packages/datasource-dummy/CHANGELOG.md +++ b/packages/datasource-dummy/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/datasource-dummy [1.0.31-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.30...@forestadmin/datasource-dummy@1.0.31-alpha-webhook-custom-actions.1) (2023-06-07) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.2 + ## @forestadmin/datasource-dummy [1.0.30](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/datasource-dummy@1.0.29...@forestadmin/datasource-dummy@1.0.30) (2023-05-24) diff --git a/packages/datasource-dummy/package.json b/packages/datasource-dummy/package.json index 377759ae53..735f2a60d9 100644 --- a/packages/datasource-dummy/package.json +++ b/packages/datasource-dummy/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/datasource-dummy", - "version": "1.0.30-alpha-webhook-custom-actions.1", + "version": "1.0.31-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -12,7 +12,7 @@ "directory": "packages/datasource-dummy" }, "dependencies": { - "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.2", "@forestadmin/datasource-toolkit": "1.5.0" }, "files": [ From 0c1f24cef0352c50bc5b2949664352486f6e23af Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 7 Jun 2023 09:02:03 +0000 Subject: [PATCH 58/61] chore(release): @forestadmin/plugin-aws-s3@1.2.1-alpha-webhook-custom-actions.1 [skip ci] ## [1.2.1-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.2.0...@forestadmin/plugin-aws-s3@1.2.1-alpha-webhook-custom-actions.1) (2023-06-07) ### Bug Fixes * improve errors from webhook endpoints ([#713](https://github.com/ForestAdmin/agent-nodejs/issues/713)) ([7e4f11f](https://github.com/ForestAdmin/agent-nodejs/commit/7e4f11f3b06d90ef3a451b1fc0fab8e8720ac83b)) * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) ### Features * **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/plugin-aws-s3/CHANGELOG.md | 10 ++++++++++ packages/plugin-aws-s3/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/plugin-aws-s3/CHANGELOG.md b/packages/plugin-aws-s3/CHANGELOG.md index 130d08b2e6..10099816cb 100644 --- a/packages/plugin-aws-s3/CHANGELOG.md +++ b/packages/plugin-aws-s3/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/plugin-aws-s3 [1.2.1-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.2.0...@forestadmin/plugin-aws-s3@1.2.1-alpha-webhook-custom-actions.1) (2023-06-07) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.2 + # @forestadmin/plugin-aws-s3 [1.2.0](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-aws-s3@1.1.5...@forestadmin/plugin-aws-s3@1.2.0) (2023-06-02) diff --git a/packages/plugin-aws-s3/package.json b/packages/plugin-aws-s3/package.json index 3b280550e0..a6234121bd 100644 --- a/packages/plugin-aws-s3/package.json +++ b/packages/plugin-aws-s3/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/plugin-aws-s3", - "version": "1.1.5-alpha-webhook-custom-actions.1", + "version": "1.2.1-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -16,7 +16,7 @@ "@aws-sdk/s3-request-presigner": "^3.157.0" }, "devDependencies": { - "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.2", "@forestadmin/datasource-toolkit": "1.5.0" }, "files": [ From 751b6b55d45011e57cb95019ca1227fa8d1e5ee0 Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 7 Jun 2023 09:02:07 +0000 Subject: [PATCH 59/61] chore(release): @forestadmin/plugin-export-advanced@1.0.8-alpha-webhook-custom-actions.1 [skip ci] ## [1.0.8-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.7...@forestadmin/plugin-export-advanced@1.0.8-alpha-webhook-custom-actions.1) (2023-06-07) ### Bug Fixes * **agent:** make sure that triggered actions from the frontend execute the right code even after an addition or removal of custom actions ([#706](https://github.com/ForestAdmin/agent-nodejs/issues/706)) ([9581036](https://github.com/ForestAdmin/agent-nodejs/commit/95810369f175d84c7e176bad6cbf70fcdb44c772)) * **datasource-sql:** do not crash at connection time when using proxy without providing port ([#705](https://github.com/ForestAdmin/agent-nodejs/issues/705)) ([c3d7d60](https://github.com/ForestAdmin/agent-nodejs/commit/c3d7d6007f726d20d9a50e1f2240568976336aa5)) * **datasource-sql:** send proper server name indication on tls connections through socks proxy ([#708](https://github.com/ForestAdmin/agent-nodejs/issues/708)) ([b072cee](https://github.com/ForestAdmin/agent-nodejs/commit/b072cee0c7fd02df88b030015c9f33540b353b5a)) * improve errors from webhook endpoints ([#713](https://github.com/ForestAdmin/agent-nodejs/issues/713)) ([7e4f11f](https://github.com/ForestAdmin/agent-nodejs/commit/7e4f11f3b06d90ef3a451b1fc0fab8e8720ac83b)) * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) ### Features * **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) * **events-subscription:** allow to instantly refresh permissions when they change ([#692](https://github.com/ForestAdmin/agent-nodejs/issues/692)) ([e108183](https://github.com/ForestAdmin/agent-nodejs/commit/e1081838e42f216e8edc19048531eb8ef05d3fa0)) * **plugin-aws-s3:** add S3Client endpoint option ([#718](https://github.com/ForestAdmin/agent-nodejs/issues/718)) ([f725bbe](https://github.com/ForestAdmin/agent-nodejs/commit/f725bbed405c2c54b4cd975bbfa95274e422e22b)) * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/plugin-export-advanced/CHANGELOG.md | 10 ++++++++++ packages/plugin-export-advanced/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/plugin-export-advanced/CHANGELOG.md b/packages/plugin-export-advanced/CHANGELOG.md index faf7a9742c..12c468c787 100644 --- a/packages/plugin-export-advanced/CHANGELOG.md +++ b/packages/plugin-export-advanced/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/plugin-export-advanced [1.0.8-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.7...@forestadmin/plugin-export-advanced@1.0.8-alpha-webhook-custom-actions.1) (2023-06-07) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.2 + ## @forestadmin/plugin-export-advanced [1.0.7](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-export-advanced@1.0.6...@forestadmin/plugin-export-advanced@1.0.7) (2023-05-24) diff --git a/packages/plugin-export-advanced/package.json b/packages/plugin-export-advanced/package.json index 30b10b7dff..ddc6bf5f18 100644 --- a/packages/plugin-export-advanced/package.json +++ b/packages/plugin-export-advanced/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/plugin-export-advanced", - "version": "1.0.7-alpha-webhook-custom-actions.1", + "version": "1.0.8-alpha-webhook-custom-actions.1", "main": "dist/index.js", "license": "GPL-3.0", "publishConfig": { @@ -15,7 +15,7 @@ "excel4node": "^1.8.0" }, "devDependencies": { - "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.2", "@forestadmin/datasource-toolkit": "1.5.0" }, "files": [ From eaee919eb050bbe9d03b20b2e6799adfd5636aab Mon Sep 17 00:00:00 2001 From: Forest Bot Date: Wed, 7 Jun 2023 09:02:11 +0000 Subject: [PATCH 60/61] chore(release): @forestadmin/plugin-flattener@1.0.21-alpha-webhook-custom-actions.1 [skip ci] ## [1.0.21-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.20...@forestadmin/plugin-flattener@1.0.21-alpha-webhook-custom-actions.1) (2023-06-07) ### Bug Fixes * **agent:** make sure that triggered actions from the frontend execute the right code even after an addition or removal of custom actions ([#706](https://github.com/ForestAdmin/agent-nodejs/issues/706)) ([9581036](https://github.com/ForestAdmin/agent-nodejs/commit/95810369f175d84c7e176bad6cbf70fcdb44c772)) * **datasource-sql:** do not crash at connection time when using proxy without providing port ([#705](https://github.com/ForestAdmin/agent-nodejs/issues/705)) ([c3d7d60](https://github.com/ForestAdmin/agent-nodejs/commit/c3d7d6007f726d20d9a50e1f2240568976336aa5)) * **datasource-sql:** send proper server name indication on tls connections through socks proxy ([#708](https://github.com/ForestAdmin/agent-nodejs/issues/708)) ([b072cee](https://github.com/ForestAdmin/agent-nodejs/commit/b072cee0c7fd02df88b030015c9f33540b353b5a)) * improve errors from webhook endpoints ([#713](https://github.com/ForestAdmin/agent-nodejs/issues/713)) ([7e4f11f](https://github.com/ForestAdmin/agent-nodejs/commit/7e4f11f3b06d90ef3a451b1fc0fab8e8720ac83b)) * **webhook-custom-actions:** improve error reporting when calling a webhook ([#687](https://github.com/ForestAdmin/agent-nodejs/issues/687)) ([c3f7f9a](https://github.com/ForestAdmin/agent-nodejs/commit/c3f7f9a2803185a1058fe570f12072ffbec94a2c)) * **webhook-custom-actions:** register webhook actions configured from the frontend ([#686](https://github.com/ForestAdmin/agent-nodejs/issues/686)) ([fd9334a](https://github.com/ForestAdmin/agent-nodejs/commit/fd9334a76699f33e217f766b1ed29a7be179951c)) ### Features * **events-subscription:** allow to instantly refresh customizations when they change ([#704](https://github.com/ForestAdmin/agent-nodejs/issues/704)) ([8f4704e](https://github.com/ForestAdmin/agent-nodejs/commit/8f4704e4564bc34413ce7a2a01cdff2ee6762a82)) * **events-subscription:** allow to instantly refresh permissions when they change ([#692](https://github.com/ForestAdmin/agent-nodejs/issues/692)) ([e108183](https://github.com/ForestAdmin/agent-nodejs/commit/e1081838e42f216e8edc19048531eb8ef05d3fa0)) * **plugin-aws-s3:** add S3Client endpoint option ([#718](https://github.com/ForestAdmin/agent-nodejs/issues/718)) ([f725bbe](https://github.com/ForestAdmin/agent-nodejs/commit/f725bbed405c2c54b4cd975bbfa95274e422e22b)) * **webhook-custom-actions:** use webhook nocode smart actions configured in the frontend ([#671](https://github.com/ForestAdmin/agent-nodejs/issues/671)) ([7629699](https://github.com/ForestAdmin/agent-nodejs/commit/762969922c98ad4b15ee2407d5789ab939059020)) --- packages/plugin-flattener/CHANGELOG.md | 10 ++++++++++ packages/plugin-flattener/package.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/plugin-flattener/CHANGELOG.md b/packages/plugin-flattener/CHANGELOG.md index 87c6c5d25c..460ff9f721 100644 --- a/packages/plugin-flattener/CHANGELOG.md +++ b/packages/plugin-flattener/CHANGELOG.md @@ -1,3 +1,13 @@ +## @forestadmin/plugin-flattener [1.0.21-alpha-webhook-custom-actions.1](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.20...@forestadmin/plugin-flattener@1.0.21-alpha-webhook-custom-actions.1) (2023-06-07) + + + + + +### Dependencies + +* **@forestadmin/datasource-customizer:** upgraded to 1.8.0-alpha-webhook-custom-actions.2 + ## @forestadmin/plugin-flattener [1.0.20](https://github.com/ForestAdmin/agent-nodejs/compare/@forestadmin/plugin-flattener@1.0.19...@forestadmin/plugin-flattener@1.0.20) (2023-05-24) diff --git a/packages/plugin-flattener/package.json b/packages/plugin-flattener/package.json index 24aaf189ff..b199ae2726 100644 --- a/packages/plugin-flattener/package.json +++ b/packages/plugin-flattener/package.json @@ -1,6 +1,6 @@ { "name": "@forestadmin/plugin-flattener", - "version": "1.0.20-alpha-webhook-custom-actions.1", + "version": "1.0.21-alpha-webhook-custom-actions.1", "description": "A plugin that allows to flatten columns and relations in Forest Admin", "main": "dist/index.js", "license": "GPL-3.0", @@ -24,7 +24,7 @@ "test": "jest" }, "devDependencies": { - "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.1", + "@forestadmin/datasource-customizer": "1.8.0-alpha-webhook-custom-actions.2", "@types/object-hash": "^3.0.2" }, "dependencies": { From 77a926b5429dc67b391aa211c245748f4f255413 Mon Sep 17 00:00:00 2001 From: Guillaume Gautreau Date: Thu, 8 Jun 2023 08:23:21 +0200 Subject: [PATCH 61/61] chore: empty commit