From 0f6c1b1f63198864b6aad890bf0c6f9f4336e581 Mon Sep 17 00:00:00 2001 From: alexgomezlf <99926015+alexgomezlf@users.noreply.github.com> Date: Wed, 21 Feb 2024 18:08:32 -0500 Subject: [PATCH] Alex/update vulnerable dependencies (#42) * Update client packaages due to jsrsasign vulnerability * update eslint * fix lint --------- Co-authored-by: alexandria.gomez --- index.ts | 130 ++++++++------ package-lock.json | 418 ++++++++++++++++++++++++++-------------------- package.json | 6 +- 3 files changed, 318 insertions(+), 236 deletions(-) diff --git a/index.ts b/index.ts index 5a9453b..4deace1 100644 --- a/index.ts +++ b/index.ts @@ -24,7 +24,7 @@ import { ImportEntryRequestPdfOptions, StartImportUploadedPartsRequest, GeneratePagesImageType, - TaskStatus + TaskStatus, } from '@laserfiche/lf-repository-api-client-v2'; import { OAuthAccessKey, @@ -79,9 +79,10 @@ async function main(): Promise { * Prints the information of all the available repositories. */ async function printAllRepositoryNames(): Promise { - const collectionResponse: RepositoryCollectionResponse = (await _RepositoryApiClient.repositoriesClient.listRepositories({})); + const collectionResponse: RepositoryCollectionResponse = + await _RepositoryApiClient.repositoriesClient.listRepositories({}); const repositories: Repository[] = collectionResponse.value ?? []; - repositories.forEach(repository => { + repositories.forEach((repository) => { const repositoryName = repository.name ?? ''; const repositoryId = repository.id ?? ''; console.log(`Repository Name: '${repositoryName}' Repository Id: [${repositoryId}]`); @@ -103,7 +104,7 @@ async function printFolderName(folderEntryId: number | undefined): Promise /*** * Prints the information of the child entries of the given folder's entry Id. */ -async function printFolderChildrenInformation(folderEntryId: number| undefined): Promise { +async function printFolderChildrenInformation(folderEntryId: number | undefined): Promise { const collectionResponse: EntryCollectionResponse = await _RepositoryApiClient.entriesClient.listEntries({ repositoryId: repositoryId, entryId: folderEntryId ?? 1, @@ -140,7 +141,7 @@ async function createSampleProjectFolder(): Promise { * Imports a document into the folder specified by the given entry Id. */ async function importDocument(folderEntryId: number | undefined, sampleProjectFileName: string): Promise { - let blob: any; + let blob: Blob | NodeBlob; const obj = { hello: 'world' }; if (isBrowser()) { blob = new Blob([JSON.stringify(obj, null, 2)], { @@ -186,7 +187,7 @@ async function setEntryFields(entryId: number | undefined): Promise { if (!fieldDefinitions) { console.log('There is no FieldDefinition available.'); return; - } + } for (let i = 0; i < fieldDefinitions.length; i++) { if ( fieldDefinitions[i].fieldType == FieldType.String && @@ -222,10 +223,10 @@ async function setEntryFields(entryId: number | undefined): Promise { * Prints the fields assigned to the entry specified by the given entry Id. */ async function printEntryFields(entryId: number | undefined): Promise { - const collectionResponse: FieldCollectionResponse = - await _RepositoryApiClient.entriesClient.listFields({ - repositoryId: repositoryId, - entryId: entryId ?? 1 }); + const collectionResponse: FieldCollectionResponse = await _RepositoryApiClient.entriesClient.listFields({ + repositoryId: repositoryId, + entryId: entryId ?? 1, + }); const fields: Field[] | undefined = collectionResponse.value; if (!fields) { console.log('There is no fields set on the entry.'); @@ -233,7 +234,9 @@ async function printEntryFields(entryId: number | undefined): Promise { } for (let i = 0; i < fields.length; i++) { const field: Field = fields[i]; - console.log(`${i + 1}: Id: ${field.id} Name: '${field.name}' Type: ${field.fieldType} Value: ${JSON.stringify(field.values)}}`); + console.log( + `${i + 1}: Id: ${field.id} Name: '${field.name}' Type: ${field.fieldType} Value: ${JSON.stringify(field.values)}}` + ); } } @@ -267,10 +270,10 @@ async function deleteSampleProjectFolder(sampleProjectFolderEntryId: number | un }); const taskId: string = taskResponse.taskId ?? ''; console.log(`Task Id: ${taskId}`); - const taskIds = [taskId]; + const taskIds = [taskId]; const taskCollectionResopnse: TaskCollectionResponse = await _RepositoryApiClient.tasksClient.listTasks({ repositoryId: repositoryId, - taskIds: taskIds + taskIds: taskIds, }); if (taskCollectionResopnse.value) { const taskStatus = taskCollectionResopnse.value[0].status; @@ -284,17 +287,16 @@ async function deleteSampleProjectFolder(sampleProjectFolderEntryId: number | un async function importLargeDocument(folderEntryId: number | undefined, filePath: string): Promise { const eTags = new Array(); let dataSource = null; - try - { - const blob = new NodeBlob([""], { - type: "application/json", + try { + const blob = new NodeBlob([''], { + type: 'application/json', }); const file: FileParameter = { fileName: filePath, - data: blob - } + data: blob, + }; dataSource = await fsPromise.open(file.fileName, 'r'); - const mimeType = "application/pdf"; + const mimeType = 'application/pdf'; const numberOfUrlsRequestedInEachCall = 10; let thereAreMoreParts = true; let uploadId = null; @@ -303,25 +305,35 @@ async function importLargeDocument(folderEntryId: number | undefined, filePath: // Iteratively request URLs and write file parts into the URLs. while (thereAreMoreParts) { iteration++; - + // Step 1: Request a batch of URLs by calling the CreateMultipartUploadUrls API. console.log(`Requesting upload URLs...`); - const requestForURLs = prepareRequestForCreateMultipartUploadUrlsApi(iteration, numberOfUrlsRequestedInEachCall, getFileName(file.fileName), mimeType, uploadId); + const requestForURLs = prepareRequestForCreateMultipartUploadUrlsApi( + iteration, + numberOfUrlsRequestedInEachCall, + getFileName(file.fileName), + mimeType, + uploadId + ); const response = await _RepositoryApiClient.entriesClient.createMultipartUploadUrls({ repositoryId: repositoryId, - request: requestForURLs + request: requestForURLs, }); if (iteration == 1) { uploadId = response.uploadId; } - + // Step 2: Split the file and write the parts to current batch of URLs. console.log(`Writing file parts to upload URLs...`); - const eTagsForThisIteration = await writeFileParts(dataSource!, response.urls!); - eTags.push(...eTagsForThisIteration); - thereAreMoreParts = eTagsForThisIteration.length == numberOfUrlsRequestedInEachCall; - } + if (dataSource && response.urls) { + const eTagsForThisIteration = await writeFileParts(dataSource, response.urls); + eTags.push(...eTagsForThisIteration); + thereAreMoreParts = eTagsForThisIteration.length == numberOfUrlsRequestedInEachCall; + } else { + throw new Error('Unexpected null dataSource or response.urls'); + } + } // Step 3: File parts are written, and eTags are ready. Start the import task. console.log(`Starting the import task...`); @@ -340,7 +352,7 @@ async function importLargeDocument(folderEntryId: number | undefined, filePath: const taskResponse: StartTaskResponse = await _RepositoryApiClient.entriesClient.startImportUploadedParts({ repositoryId: repositoryId, entryId: folderEntryId ?? 1, - request: finalRequest + request: finalRequest, }); const taskId: string = taskResponse.taskId ?? ''; console.log(`Task Id: ${taskId}`); @@ -355,7 +367,7 @@ async function importLargeDocument(folderEntryId: number | undefined, filePath: console.log(`Checking status of the import task...`); const taskCollectionResopnse: TaskCollectionResponse = await _RepositoryApiClient.tasksClient.listTasks({ repositoryId: repositoryId, - taskIds: taskIds + taskIds: taskIds, }); if (taskCollectionResopnse.value) { const taskProgress = taskCollectionResopnse.value[0]; @@ -364,9 +376,9 @@ async function importLargeDocument(folderEntryId: number | undefined, filePath: console.log(`Task status: ${taskStatus}`); if (taskStatus == TaskStatus.Completed) { console.log(`Entry Id: ${taskProgress.result?.entryId}`); - } else if (taskStatus == TaskStatus.Failed){ + } else if (taskStatus == TaskStatus.Failed) { console.log(`Errors: ${JSON.stringify(taskProgress.errors)}`); - } + } } } } finally { @@ -379,17 +391,26 @@ async function importLargeDocument(folderEntryId: number | undefined, filePath: /** * Prepares the request body for calling the CreateMultipartUploadUrls API. */ -function prepareRequestForCreateMultipartUploadUrlsApi(iteration: number, numberOfUrlsRequestedInEachCall: number, fileName: string, mimeType: string, uploadId? : string | null): CreateMultipartUploadUrlsRequest { - const parameters = (iteration == 1) ? { - startingPartNumber: 1, - numberOfParts: numberOfUrlsRequestedInEachCall, - fileName: fileName, - mimeType: mimeType - } : { - uploadId: uploadId, - startingPartNumber: (iteration - 1) * numberOfUrlsRequestedInEachCall + 1, - numberOfParts: numberOfUrlsRequestedInEachCall, - }; +function prepareRequestForCreateMultipartUploadUrlsApi( + iteration: number, + numberOfUrlsRequestedInEachCall: number, + fileName: string, + mimeType: string, + uploadId?: string | null +): CreateMultipartUploadUrlsRequest { + const parameters = + iteration == 1 + ? { + startingPartNumber: 1, + numberOfParts: numberOfUrlsRequestedInEachCall, + fileName: fileName, + mimeType: mimeType, + } + : { + uploadId: uploadId, + startingPartNumber: (iteration - 1) * numberOfUrlsRequestedInEachCall + 1, + numberOfParts: numberOfUrlsRequestedInEachCall, + }; return CreateMultipartUploadUrlsRequest.fromJS(parameters); } @@ -404,11 +425,11 @@ function getFileName(filePath: string): string { } return fileName; } - + /** * Reads data from the given source and writes it, in parts, into the given URLs. */ -async function writeFileParts(source: any, urls: string[]): Promise { +async function writeFileParts(source: fsPromise.FileHandle, urls: string[]): Promise { const partSizeInMB = 5; const eTags = new Array(urls.length); let writtenParts = 0; @@ -443,18 +464,22 @@ async function readOnePart(file: fsPromise.FileHandle, partSizeInMB: number): Pr * Writes a given part into a given URL. */ async function writeFilePart(part: Uint8Array, url: string): Promise { - let eTag = ""; + let eTag: string | undefined; const response = await fetch(url, { method: 'PUT', body: part, - headers: {'Content-Type': 'application/octet-stream'} }); + headers: { 'Content-Type': 'application/octet-stream' }, + }); if (response.ok && response.body !== null && response.status == 200) { - eTag = response.headers.get("ETag")!; + eTag = response.headers.get('ETag') ?? undefined; if (eTag) { eTag = eTag.substring(1, eTag.length - 1); // Remove heading and trailing double-quotation } - } + } + if (!eTag) { + throw new Error('ETag is not defined'); + } return eTag; } @@ -462,7 +487,11 @@ async function writeFilePart(part: Uint8Array, url: string): Promise { * Creates RepositoryApiClient for cloud, from an access key. */ function createCloudRepositoryApiClient(scope: string): IRepositoryApiClient { - const repositoryApiClient = RepositoryApiClient.createFromAccessKey(servicePrincipalKey, OAuthAccessKey, scope); + const repositoryApiClient: RepositoryApiClient = RepositoryApiClient.createFromAccessKey( + servicePrincipalKey, + OAuthAccessKey, + scope + ); return repositoryApiClient; } @@ -473,4 +502,3 @@ function createSelfHostedRepositoryApiClient(): IRepositoryApiClient { const repositoryApiClient = RepositoryApiClient.createFromUsernamePassword(repositoryId, username, password, baseUrl); return repositoryApiClient; } - diff --git a/package-lock.json b/package-lock.json index 052952e..86f6ba1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,9 +9,9 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "@laserfiche/lf-api-client-core": "^1.1.8", + "@laserfiche/lf-api-client-core": "^1.1.10", "@laserfiche/lf-js-utils": "4.0.7", - "@laserfiche/lf-repository-api-client-v2": "^1.0.0", + "@laserfiche/lf-repository-api-client-v2": "^1.0.1", "@types/node": "^18.11.9", "dotenv": "^16.0.3", "isomorphic-fetch": "^3.0.0" @@ -19,20 +19,53 @@ "devDependencies": { "@typescript-eslint/eslint-plugin": "^5.44.0", "@typescript-eslint/parser": "^5.44.0", - "eslint": "^8.28.0", + "eslint": "^8.56.0", "eslint-plugin-react": "^7.31.11" } }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, "node_modules/@eslint/eslintrc": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", - "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.15.0", + "espree": "^9.6.0", + "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", @@ -46,14 +79,23 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/@eslint/js": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.7", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.7.tgz", - "integrity": "sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==", + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", "minimatch": "^3.0.5" }, "engines": { @@ -74,19 +116,19 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, "node_modules/@laserfiche/lf-api-client-core": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/@laserfiche/lf-api-client-core/-/lf-api-client-core-1.1.8.tgz", - "integrity": "sha512-eMf4BTGs3MXb67nD3i/bwng3cffp6dIP+Bt5+4uO8oyr12hA7wW+r+NKKhUA27DNMwFwTCGRL576BNc+steCKA==", + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@laserfiche/lf-api-client-core/-/lf-api-client-core-1.1.10.tgz", + "integrity": "sha512-TkY9QeO8P3ARtxdOTaas7EZejmLA4sC7A/PULFbXHtR1mpp3IWyoRLZl4Rw72lEBxADxMJoyaUORdb153Bdd6Q==", "dependencies": { "@laserfiche/lf-js-utils": "^4.0.2", "dotenv": "^16.0.1", - "jsrsasign": "^10.5.25", + "jsrsasign": "^11.0.0", "jsrsasign-util": "^1.0.5" } }, @@ -96,11 +138,11 @@ "integrity": "sha512-zNZXBiwDP25934zM6UFetvViyoos3EoqqT0BKTBdDaAloWABrBkesJu9gSCJqR9TdFC0cKAO85TLZdeTJ+UMXA==" }, "node_modules/@laserfiche/lf-repository-api-client-v2": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@laserfiche/lf-repository-api-client-v2/-/lf-repository-api-client-v2-1.0.0.tgz", - "integrity": "sha512-nte45y82+hRlwBSBkT95aFplyksWMEkfYMiHUMZv1Tq1flhcCh8TqDQcqzflbbIwvbVjOqxgfW3FBINnEnvlIQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@laserfiche/lf-repository-api-client-v2/-/lf-repository-api-client-v2-1.0.1.tgz", + "integrity": "sha512-f4iMrYcvzuFxQOcli4Dm01S1aIH3U5MF1IgzzCoKRE1Nf54wiuWY0WEKBuA3KIbKHWv4V0jG5EpVKlOmnc4biw==", "dependencies": { - "@laserfiche/lf-api-client-core": "^1.1.7", + "@laserfiche/lf-api-client-core": "^1.1.10", "@laserfiche/lf-js-utils": "^4.0.5" } }, @@ -343,10 +385,16 @@ "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, "node_modules/acorn": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", - "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -721,49 +769,48 @@ } }, "node_modules/eslint": { - "version": "8.28.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.28.0.tgz", - "integrity": "sha512-S27Di+EVyMxcHiwDrFzk8dJYAaD+/5SoWKxL1ri/71CRHsnJnRDPNt2Kzj24+MT9FDupf4aqqyqPrvI8MvQ4VQ==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.3.3", - "@humanwhocodes/config-array": "^0.11.6", + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.56.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "find-up": "^5.0.0", "glob-parent": "^6.0.2", - "globals": "^13.15.0", - "grapheme-splitter": "^1.0.4", + "globals": "^13.19.0", + "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", + "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" }, "bin": { @@ -876,18 +923,21 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -895,17 +945,20 @@ }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "dependencies": { - "acorn": "^8.8.0", + "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" + "eslint-visitor-keys": "^3.4.1" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -915,9 +968,9 @@ } }, "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -1172,9 +1225,9 @@ } }, "node_modules/globals": { - "version": "13.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.18.0.tgz", - "integrity": "sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -1206,10 +1259,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, "node_modules/has": { @@ -1563,16 +1616,6 @@ "whatwg-fetch": "^3.4.1" } }, - "node_modules/js-sdsl": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", - "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" - } - }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -1609,9 +1652,9 @@ "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==" }, "node_modules/jsrsasign": { - "version": "10.5.25", - "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-10.5.25.tgz", - "integrity": "sha512-N7zxHaCwYvFlXsybq4p4RxRwn4AbEq3cEiyjbCrWmwA7g8aS4LTKDJ9AJmsXxwtYesYx0imJ+ITtkyyxLCgeIg==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-11.0.0.tgz", + "integrity": "sha512-BtRwVKS+5dsgPpAtzJcpo5OoWjSs1/zllSBG0+8o8/aV0Ki76m6iZwHnwnsqoTdhfFZDN1XIdcaZr5ZkP+H2gg==", "funding": { "url": "https://github.com/kjur/jsrsasign#donations" } @@ -1883,17 +1926,17 @@ } }, "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "type-check": "^0.4.0" }, "engines": { "node": ">= 0.8.0" @@ -2016,9 +2059,9 @@ } }, "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, "engines": { "node": ">=6" @@ -2461,15 +2504,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -2496,16 +2530,37 @@ } }, "dependencies": { + "@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true + }, + "@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^3.3.0" + } + }, + "@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "dev": true + }, "@eslint/eslintrc": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", - "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.15.0", + "espree": "^9.6.0", + "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", @@ -2513,14 +2568,20 @@ "strip-json-comments": "^3.1.1" } }, + "@eslint/js": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", + "dev": true + }, "@humanwhocodes/config-array": { - "version": "0.11.7", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.7.tgz", - "integrity": "sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==", + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", "dev": true, "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", "minimatch": "^3.0.5" } }, @@ -2531,19 +2592,19 @@ "dev": true }, "@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, "@laserfiche/lf-api-client-core": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/@laserfiche/lf-api-client-core/-/lf-api-client-core-1.1.8.tgz", - "integrity": "sha512-eMf4BTGs3MXb67nD3i/bwng3cffp6dIP+Bt5+4uO8oyr12hA7wW+r+NKKhUA27DNMwFwTCGRL576BNc+steCKA==", + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@laserfiche/lf-api-client-core/-/lf-api-client-core-1.1.10.tgz", + "integrity": "sha512-TkY9QeO8P3ARtxdOTaas7EZejmLA4sC7A/PULFbXHtR1mpp3IWyoRLZl4Rw72lEBxADxMJoyaUORdb153Bdd6Q==", "requires": { "@laserfiche/lf-js-utils": "^4.0.2", "dotenv": "^16.0.1", - "jsrsasign": "^10.5.25", + "jsrsasign": "^11.0.0", "jsrsasign-util": "^1.0.5" } }, @@ -2553,11 +2614,11 @@ "integrity": "sha512-zNZXBiwDP25934zM6UFetvViyoos3EoqqT0BKTBdDaAloWABrBkesJu9gSCJqR9TdFC0cKAO85TLZdeTJ+UMXA==" }, "@laserfiche/lf-repository-api-client-v2": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@laserfiche/lf-repository-api-client-v2/-/lf-repository-api-client-v2-1.0.0.tgz", - "integrity": "sha512-nte45y82+hRlwBSBkT95aFplyksWMEkfYMiHUMZv1Tq1flhcCh8TqDQcqzflbbIwvbVjOqxgfW3FBINnEnvlIQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@laserfiche/lf-repository-api-client-v2/-/lf-repository-api-client-v2-1.0.1.tgz", + "integrity": "sha512-f4iMrYcvzuFxQOcli4Dm01S1aIH3U5MF1IgzzCoKRE1Nf54wiuWY0WEKBuA3KIbKHWv4V0jG5EpVKlOmnc4biw==", "requires": { - "@laserfiche/lf-api-client-core": "^1.1.7", + "@laserfiche/lf-api-client-core": "^1.1.10", "@laserfiche/lf-js-utils": "^4.0.5" } }, @@ -2702,10 +2763,16 @@ "eslint-visitor-keys": "^3.3.0" } }, + "@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, "acorn": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", - "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "dev": true }, "acorn-jsx": { @@ -2982,56 +3049,55 @@ "dev": true }, "eslint": { - "version": "8.28.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.28.0.tgz", - "integrity": "sha512-S27Di+EVyMxcHiwDrFzk8dJYAaD+/5SoWKxL1ri/71CRHsnJnRDPNt2Kzj24+MT9FDupf4aqqyqPrvI8MvQ4VQ==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.3.3", - "@humanwhocodes/config-array": "^0.11.6", + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.56.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "find-up": "^5.0.0", "glob-parent": "^6.0.2", - "globals": "^13.15.0", - "grapheme-splitter": "^1.0.4", + "globals": "^13.19.0", + "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", + "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" }, "dependencies": { "eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "requires": { "esrecurse": "^4.3.0", @@ -3116,26 +3182,26 @@ } }, "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true }, "espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "requires": { - "acorn": "^8.8.0", + "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" + "eslint-visitor-keys": "^3.4.1" } }, "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "requires": { "estraverse": "^5.1.0" @@ -3332,9 +3398,9 @@ } }, "globals": { - "version": "13.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.18.0.tgz", - "integrity": "sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -3354,10 +3420,10 @@ "slash": "^3.0.0" } }, - "grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, "has": { @@ -3600,12 +3666,6 @@ "whatwg-fetch": "^3.4.1" } }, - "js-sdsl": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", - "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", - "dev": true - }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -3639,9 +3699,9 @@ "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==" }, "jsrsasign": { - "version": "10.5.25", - "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-10.5.25.tgz", - "integrity": "sha512-N7zxHaCwYvFlXsybq4p4RxRwn4AbEq3cEiyjbCrWmwA7g8aS4LTKDJ9AJmsXxwtYesYx0imJ+ITtkyyxLCgeIg==" + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-11.0.0.tgz", + "integrity": "sha512-BtRwVKS+5dsgPpAtzJcpo5OoWjSs1/zllSBG0+8o8/aV0Ki76m6iZwHnwnsqoTdhfFZDN1XIdcaZr5ZkP+H2gg==" }, "jsrsasign-util": { "version": "1.0.5", @@ -3839,17 +3899,17 @@ } }, "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "requires": { + "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "type-check": "^0.4.0" } }, "p-limit": { @@ -3933,9 +3993,9 @@ } }, "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true }, "queue-microtask": { @@ -4240,12 +4300,6 @@ "is-symbol": "^1.0.3" } }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true - }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", diff --git a/package.json b/package.json index 03fa3e0..5209dea 100644 --- a/package.json +++ b/package.json @@ -12,9 +12,9 @@ "author": "Laserfiche", "license": "MIT", "dependencies": { - "@laserfiche/lf-api-client-core": "^1.1.8", + "@laserfiche/lf-api-client-core": "^1.1.10", "@laserfiche/lf-js-utils": "4.0.7", - "@laserfiche/lf-repository-api-client-v2": "^1.0.0", + "@laserfiche/lf-repository-api-client-v2": "^1.0.1", "@types/node": "^18.11.9", "dotenv": "^16.0.3", "isomorphic-fetch": "^3.0.0" @@ -22,7 +22,7 @@ "devDependencies": { "@typescript-eslint/eslint-plugin": "^5.44.0", "@typescript-eslint/parser": "^5.44.0", - "eslint": "^8.28.0", + "eslint": "^8.56.0", "eslint-plugin-react": "^7.31.11" } }