From 13938aa16b8d134f933c0ec5e42a825ef951b0a4 Mon Sep 17 00:00:00 2001 From: Yao Sun Date: Fri, 16 Aug 2024 14:19:49 +0800 Subject: [PATCH 1/2] Enable address for streaming function --- .../src/parseTree.ts | 6 --- .../expected.json | 41 +++++++++++++++++++ .../streaming-invocation-address/functions.js | 24 +++++++++++ .../streaming-invocation-address/functions.ts | 24 +++++++++++ 4 files changed, 89 insertions(+), 6 deletions(-) create mode 100644 packages/custom-functions-metadata/test/cases/streaming-invocation-address/expected.json create mode 100644 packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.js create mode 100644 packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.ts diff --git a/packages/custom-functions-metadata/src/parseTree.ts b/packages/custom-functions-metadata/src/parseTree.ts index eab4b2e7f..3ace26779 100644 --- a/packages/custom-functions-metadata/src/parseTree.ts +++ b/packages/custom-functions-metadata/src/parseTree.ts @@ -483,12 +483,6 @@ function getOptions( const errorString = `Since ${errorParam} is present, the last function parameter should be of type CustomFunctions.Invocation :`; extra.errors.push(logError(errorString, functionPosition)); } - - if (isStreamingFunction) { - const functionPosition = getPosition(func); - const errorString = `${errorParam} cannot be used with @streaming.`; - extra.errors.push(logError(errorString, functionPosition)); - } } if ( diff --git a/packages/custom-functions-metadata/test/cases/streaming-invocation-address/expected.json b/packages/custom-functions-metadata/test/cases/streaming-invocation-address/expected.json new file mode 100644 index 000000000..e9a64207d --- /dev/null +++ b/packages/custom-functions-metadata/test/cases/streaming-invocation-address/expected.json @@ -0,0 +1,41 @@ +{ + "allowCustomDataForDataTypeAny": true, + "functions": [ + { + "description": "Test function for enable address prop in streaming invocation object.", + "id": "TESTSTREAMINGINVOCATIONADDRESS", + "name": "TESTSTREAMINGINVOCATIONADDRESS", + "options": { + "requiresAddress": true, + "stream": true + }, + "parameters": [ + { + "name": "x", + "type": "string" + } + ], + "result": { + "type": "number" + } + }, + { + "description": "Test function for enable parameter address prop in streaming invocation object.", + "id": "TESTSTREAMINGINVOCATIONPARAMETERADDRESS", + "name": "TESTSTREAMINGINVOCATIONPARAMETERADDRESS", + "options": { + "stream": true, + "requiresParameterAddresses": true + }, + "parameters": [ + { + "name": "x", + "type": "string" + } + ], + "result": { + "type": "number" + } + } + ] +} \ No newline at end of file diff --git a/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.js b/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.js new file mode 100644 index 000000000..a7a8f766f --- /dev/null +++ b/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.js @@ -0,0 +1,24 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT license. + +/** + * Test function for enable address prop in streaming invocation object. + * @param x {string} + * @param invocation {CustomFunctions.StreamingInvocation} + * @customfunction + * @requiresAddress + */ +function testStreamingInvocationAddress(x, invocation) { +// Empty +} + +/** + * Test function for enable parameter address prop in streaming invocation object. + * @param x {string} + * @param invocation {CustomFunctions.StreamingInvocation} + * @customfunction + * @requiresParameterAddresses + */ +function testStreamingInvocationParameterAddress(x, invocation) { +// Empty +} \ No newline at end of file diff --git a/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.ts b/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.ts new file mode 100644 index 000000000..04b8349aa --- /dev/null +++ b/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.ts @@ -0,0 +1,24 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT license. + +/** + * Test function for enable address prop in streaming invocation object. + * @param x + * @param invocation + * @customfunction + * @requiresAddress + */ +function testStreamingInvocationAddress(x: string, invocation: CustomFunctions.StreamingInvocation) { +// Empty +} + +/** + * Test function for enable parameter address prop in streaming invocation object. + * @param x + * @param invocation + * @customfunction + * @requiresParameterAddresses + */ +function testStreamingInvocationParameterAddress(x: string, invocation: CustomFunctions.StreamingInvocation) { +// Empty +} \ No newline at end of file From 569736e43ede34ff9cc933be3c969474f7cb1ed5 Mon Sep 17 00:00:00 2001 From: sunyao-ms Date: Fri, 16 Aug 2024 16:11:51 +0800 Subject: [PATCH 2/2] Add test case --- .../package-lock.json | 594 +++++++++--------- .../expected.js.errors.txt | 1 - .../expected.ts.errors.txt | 1 - .../expected.js.errors.txt | 1 - .../expected.ts.errors.txt | 1 - .../requiresaddress-streaming/expected.json | 24 + .../functions.js | 0 .../functions.ts | 0 .../expected.json | 24 + .../functions.js | 0 .../functions.ts | 0 .../expected.json | 41 -- .../streaming-invocation-address/functions.js | 24 - .../streaming-invocation-address/functions.ts | 24 - 14 files changed, 332 insertions(+), 403 deletions(-) delete mode 100644 packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/expected.js.errors.txt delete mode 100644 packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/expected.ts.errors.txt delete mode 100644 packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/expected.js.errors.txt delete mode 100644 packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/expected.ts.errors.txt create mode 100644 packages/custom-functions-metadata/test/cases/requiresaddress-streaming/expected.json rename packages/custom-functions-metadata/test/cases/{error-requiresaddress-streaming => requiresaddress-streaming}/functions.js (100%) rename packages/custom-functions-metadata/test/cases/{error-requiresaddress-streaming => requiresaddress-streaming}/functions.ts (100%) create mode 100644 packages/custom-functions-metadata/test/cases/requiresparameteraddresses-streaming/expected.json rename packages/custom-functions-metadata/test/cases/{error-requiresparameteraddresses-streaming => requiresparameteraddresses-streaming}/functions.js (100%) rename packages/custom-functions-metadata/test/cases/{error-requiresparameteraddresses-streaming => requiresparameteraddresses-streaming}/functions.ts (100%) delete mode 100644 packages/custom-functions-metadata/test/cases/streaming-invocation-address/expected.json delete mode 100644 packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.js delete mode 100644 packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.ts diff --git a/packages/custom-functions-metadata/package-lock.json b/packages/custom-functions-metadata/package-lock.json index 9fcbe82ad..3de5867db 100644 --- a/packages/custom-functions-metadata/package-lock.json +++ b/packages/custom-functions-metadata/package-lock.json @@ -12,7 +12,7 @@ "assert": "^1.5.0", "commander": "^10.0.0", "nconf": "^0.12.0", - "office-addin-usage-data": "^1.6.11", + "office-addin-usage-data": "^1.6.12", "xregexp": "^4.3.0" }, "bin": { @@ -26,8 +26,8 @@ "@types/xregexp": "^3.0.30", "concurrently": "^6.2.2", "mocha": "^9.1.1", - "office-addin-lint": "^2.3.2", - "office-addin-prettier-config": "^1.2.0", + "office-addin-lint": "^2.3.3", + "office-addin-prettier-config": "^1.2.1", "rimraf": "^3.0.2", "ts-node": "^10.9.1", "typescript": "^4.7.4" @@ -80,9 +80,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.1.tgz", - "integrity": "sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==", + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -276,16 +276,16 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.0.tgz", - "integrity": "sha512-FX1X6AF0w8MdVFLSdqwqN/me2hyhuQg4ykN6ZpVhh1ij/80pTvDKclX1sZB9iqex8SjQfVhwMKs3JtnnMLzG9w==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.18.0.tgz", + "integrity": "sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "7.13.0", - "@typescript-eslint/type-utils": "7.13.0", - "@typescript-eslint/utils": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/type-utils": "7.18.0", + "@typescript-eslint/utils": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -309,15 +309,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.13.0.tgz", - "integrity": "sha512-EjMfl69KOS9awXXe83iRN7oIEXy9yYdqWfqdrFAYAAr6syP8eLEFI7ZE4939antx2mNgPRW/o1ybm2SFYkbTVA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.18.0.tgz", + "integrity": "sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "7.13.0", - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/typescript-estree": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", "debug": "^4.3.4" }, "engines": { @@ -337,9 +337,9 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", "dev": true, "dependencies": { "ms": "2.1.2" @@ -360,13 +360,13 @@ "dev": true }, "node_modules/@typescript-eslint/rule-tester": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/rule-tester/-/rule-tester-7.13.0.tgz", - "integrity": "sha512-FPkJnu95k3JwiY+gUqGYFiF8rN6R6FMDww4OErWvDHGecMce9A3bwi33HONYgKuwZkTsRnlv231faUT+jrfY4w==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/rule-tester/-/rule-tester-7.18.0.tgz", + "integrity": "sha512-ClrFQlwen9pJcYPIBLuarzBpONQAwjmJ0+YUjAo1TGzoZFJPyUK/A7bb4Mps0u+SMJJnFXbfMN8I9feQDf0O5A==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "7.13.0", - "@typescript-eslint/utils": "7.13.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/utils": "7.18.0", "ajv": "^6.12.6", "json-stable-stringify-without-jsonify": "^1.0.1", "lodash.merge": "4.6.2", @@ -385,13 +385,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.13.0.tgz", - "integrity": "sha512-ZrMCe1R6a01T94ilV13egvcnvVJ1pxShkE0+NDjDzH4nvG1wXpwsVI5bZCvE7AEDH1mXEx5tJSVR68bLgG7Dng==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz", + "integrity": "sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0" + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -402,13 +402,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.13.0.tgz", - "integrity": "sha512-xMEtMzxq9eRkZy48XuxlBFzpVMDurUAfDu5Rz16GouAtXm0TaAoTFzqWUFPPuQYXI/CDaH/Bgx/fk/84t/Bc9A==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz", + "integrity": "sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "7.13.0", - "@typescript-eslint/utils": "7.13.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/utils": "7.18.0", "debug": "^4.3.4", "ts-api-utils": "^1.3.0" }, @@ -429,9 +429,9 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", "dev": true, "dependencies": { "ms": "2.1.2" @@ -452,9 +452,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.0.tgz", - "integrity": "sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz", + "integrity": "sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -465,13 +465,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.0.tgz", - "integrity": "sha512-cAvBvUoobaoIcoqox1YatXOnSl3gx92rCZoMRPzMNisDiM12siGilSM4+dJAekuuHTibI2hVC2fYK79iSFvWjw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz", + "integrity": "sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -502,9 +502,9 @@ } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", "dev": true, "dependencies": { "ms": "2.1.2" @@ -519,9 +519,9 @@ } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -540,15 +540,15 @@ "dev": true }, "node_modules/@typescript-eslint/utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.13.0.tgz", - "integrity": "sha512-jceD8RgdKORVnB4Y6BqasfIkFhl4pajB1wVxrF4akxD2QPM8GNYjgGwEzYS+437ewlqqrg7Dw+6dhdpjMpeBFQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.18.0.tgz", + "integrity": "sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "7.13.0", - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/typescript-estree": "7.13.0" + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -562,12 +562,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.0.tgz", - "integrity": "sha512-nxn+dozQx+MK61nn/JP+M4eCkHDSxSLDpgE3WcQo0+fkjEolnaB5jswvIKC4K56By8MMgIho7f1PVxERHEo8rw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz", + "integrity": "sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "7.13.0", + "@typescript-eslint/types": "7.18.0", "eslint-visitor-keys": "^3.4.3" }, "engines": { @@ -804,18 +804,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array.prototype.toreversed": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/array.prototype.toreversed/-/array.prototype.toreversed-1.1.2.tgz", - "integrity": "sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - } - }, "node_modules/array.prototype.tosorted": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", @@ -1656,9 +1644,9 @@ } }, "node_modules/eslint-plugin-office-addins": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-office-addins/-/eslint-plugin-office-addins-3.0.1.tgz", - "integrity": "sha512-6/GOGiw1hQxCGe2EVWQJx2yOlDFy0RfbiZ8XppimvAhphFsV2dq5MxSAKbNT0EBJX5j51CbjCmncUZavgsGbEw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-office-addins/-/eslint-plugin-office-addins-3.0.2.tgz", + "integrity": "sha512-VxX3juMvfQ7UKKzRvUV1JgopJmZsOa9iWA4Mg3+p+sTIqNmuaYiSgy9AT+MheP4zopWHjvJR4rRfyZWTXtUjeA==", "dev": true, "dependencies": { "@typescript-eslint/rule-tester": "^7.5.0", @@ -1667,7 +1655,7 @@ "eslint-plugin-prettier": "^5.1.3", "eslint-plugin-react": "^7.34.1", "eslint-plugin-react-native": "^4.1.0", - "office-addin-prettier-config": "^1.2.0", + "office-addin-prettier-config": "^1.2.1", "prettier": "^3.2.5", "requireindex": "~1.2.0", "typescript": "^5.4.3", @@ -1678,9 +1666,9 @@ } }, "node_modules/eslint-plugin-office-addins/node_modules/typescript": { - "version": "5.4.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", - "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", + "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -1691,13 +1679,13 @@ } }, "node_modules/eslint-plugin-prettier": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.3.tgz", - "integrity": "sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.1.tgz", + "integrity": "sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==", "dev": true, "dependencies": { "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.8.6" + "synckit": "^0.9.1" }, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -1721,35 +1709,35 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.34.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.2.tgz", - "integrity": "sha512-2HCmrU+/JNigDN6tg55cRDKCQWicYAPB38JGSFDQt95jDm8rrvSUo7YPkOIm5l6ts1j1zCvysNcasvfTMQzUOw==", + "version": "7.35.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.0.tgz", + "integrity": "sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==", "dev": true, "dependencies": { "array-includes": "^3.1.8", "array.prototype.findlast": "^1.2.5", "array.prototype.flatmap": "^1.3.2", - "array.prototype.toreversed": "^1.1.2", - "array.prototype.tosorted": "^1.1.3", + "array.prototype.tosorted": "^1.1.4", "doctrine": "^2.1.0", "es-iterator-helpers": "^1.0.19", "estraverse": "^5.3.0", + "hasown": "^2.0.2", "jsx-ast-utils": "^2.4.1 || ^3.0.0", "minimatch": "^3.1.2", "object.entries": "^1.1.8", "object.fromentries": "^2.0.8", - "object.hasown": "^1.1.4", "object.values": "^1.2.0", "prop-types": "^15.8.1", "resolve": "^2.0.0-next.5", "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.11" + "string.prototype.matchall": "^4.0.11", + "string.prototype.repeat": "^1.0.0" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" } }, "node_modules/eslint-plugin-react-native": { @@ -1849,9 +1837,9 @@ } }, "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -2332,9 +2320,9 @@ } }, "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, "engines": { "node": ">= 4" @@ -2486,12 +2474,15 @@ } }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.0.tgz", + "integrity": "sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==", "dev": true, "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3123,10 +3114,13 @@ } }, "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", + "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", "dev": true, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -3190,23 +3184,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/object.hasown": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.4.tgz", - "integrity": "sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==", - "dev": true, - "dependencies": { - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/object.values": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", @@ -3225,9 +3202,9 @@ } }, "node_modules/office-addin-lint": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/office-addin-lint/-/office-addin-lint-2.3.2.tgz", - "integrity": "sha512-1+RF0kZJJHBtw6Uw9o8UYyeAXqGC1B9gMiRQbQSJpDNnexwgEAk0GVqaVukkYBlAObC/v52vfP0ud5/BYPOOww==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/office-addin-lint/-/office-addin-lint-2.3.3.tgz", + "integrity": "sha512-Makne5gVQuC/t0Bh6NsXk8SGm7jLZS5Kj6VGM4nAHFNZZfWuAmoNWOKKb8PAMRlRqBqIhAPknIeu6OwcGhNCfA==", "dev": true, "dependencies": { "@typescript-eslint/eslint-plugin": "^7.3.0", @@ -3235,10 +3212,10 @@ "commander": "^6.2.0", "eslint": "^8.57.0", "eslint-config-prettier": "^9.1.0", - "eslint-plugin-office-addins": "^3.0.1", + "eslint-plugin-office-addins": "^3.0.2", "eslint-plugin-prettier": "^5.1.3", - "office-addin-prettier-config": "^1.2.0", - "office-addin-usage-data": "^1.6.11", + "office-addin-prettier-config": "^1.2.1", + "office-addin-usage-data": "^1.6.12", "prettier": "^3.2.5" }, "bin": { @@ -3255,15 +3232,15 @@ } }, "node_modules/office-addin-prettier-config": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/office-addin-prettier-config/-/office-addin-prettier-config-1.2.0.tgz", - "integrity": "sha512-42/w9BUlUvgbLNn8vLaGULVTrcTFBnhn+xAe6IwSOhPrFQpi2GxZPl8ln/f5X4lterVrJz7U6Vi+VeN7WYAsGQ==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/office-addin-prettier-config/-/office-addin-prettier-config-1.2.1.tgz", + "integrity": "sha512-FlBMKuZostX7/g2M5Y8qUtkdy83STzm7zDonx3ZRr9NnrFyhdUVANqnDCy4NwCOpcALxMVnpNOYMmTFIQBXaAw==", "dev": true }, "node_modules/office-addin-usage-data": { - "version": "1.6.11", - "resolved": "https://registry.npmjs.org/office-addin-usage-data/-/office-addin-usage-data-1.6.11.tgz", - "integrity": "sha512-8n86S1PkAktGFtrM2kYVX8zbgo/i8VyH6RzO3ApX6GeFOeTWJPtYVWmGs7WklkoTlZGTwDjfiR+noB0vWA9Vpg==", + "version": "1.6.12", + "resolved": "https://registry.npmjs.org/office-addin-usage-data/-/office-addin-usage-data-1.6.12.tgz", + "integrity": "sha512-K9Ii5Jsc6Vuf6LrBvo5BycMzTmDwTkk3g5W2zS4PLffvvQYeI/RO3oYpGpOT6z7Pa8oh5gQ2QMDUgmjQGQZ7PA==", "dependencies": { "applicationinsights": "^1.7.3", "commander": "^6.2.0", @@ -3423,9 +3400,9 @@ } }, "node_modules/prettier": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.2.tgz", - "integrity": "sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", + "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -3732,9 +3709,9 @@ "integrity": "sha1-8MgtmKOxOah3aogIBQuCRDEIf8o=" }, "node_modules/semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, "bin": { "semver": "bin/semver.js" @@ -3887,6 +3864,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, "node_modules/string.prototype.trim": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", @@ -3987,9 +3974,9 @@ } }, "node_modules/synckit": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz", - "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz", + "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==", "dev": true, "dependencies": { "@pkgr/core": "^0.1.0", @@ -4216,14 +4203,14 @@ } }, "node_modules/typescript-eslint": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-7.13.0.tgz", - "integrity": "sha512-upO0AXxyBwJ4BbiC6CRgAJKtGYha2zw4m1g7TIVPSonwYEuf7vCicw3syjS1OxdDMTz96sZIXl3Jx3vWJLLKFw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-7.18.0.tgz", + "integrity": "sha512-PonBkP603E3tt05lDkbOMyaxJjvKqQrXsnow72sVeOFINDE/qNmnnd+f9b4N+U7W6MXnnYyrhtmF2t08QWwUbA==", "dev": true, "dependencies": { - "@typescript-eslint/eslint-plugin": "7.13.0", - "@typescript-eslint/parser": "7.13.0", - "@typescript-eslint/utils": "7.13.0" + "@typescript-eslint/eslint-plugin": "7.18.0", + "@typescript-eslint/parser": "7.18.0", + "@typescript-eslint/utils": "7.18.0" }, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -4319,13 +4306,13 @@ } }, "node_modules/which-builtin-type": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", - "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.4.tgz", + "integrity": "sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==", "dev": true, "dependencies": { - "function.prototype.name": "^1.1.5", - "has-tostringtag": "^1.0.0", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", "is-async-function": "^2.0.0", "is-date-object": "^1.0.5", "is-finalizationregistry": "^1.0.2", @@ -4334,8 +4321,8 @@ "is-weakref": "^1.0.2", "isarray": "^2.0.5", "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.15" }, "engines": { "node": ">= 0.4" @@ -4537,9 +4524,9 @@ } }, "@eslint-community/regexpp": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.1.tgz", - "integrity": "sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==", + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", "dev": true }, "@eslint/eslintrc": { @@ -4691,16 +4678,16 @@ "dev": true }, "@typescript-eslint/eslint-plugin": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.0.tgz", - "integrity": "sha512-FX1X6AF0w8MdVFLSdqwqN/me2hyhuQg4ykN6ZpVhh1ij/80pTvDKclX1sZB9iqex8SjQfVhwMKs3JtnnMLzG9w==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.18.0.tgz", + "integrity": "sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "7.13.0", - "@typescript-eslint/type-utils": "7.13.0", - "@typescript-eslint/utils": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/type-utils": "7.18.0", + "@typescript-eslint/utils": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -4708,22 +4695,22 @@ } }, "@typescript-eslint/parser": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.13.0.tgz", - "integrity": "sha512-EjMfl69KOS9awXXe83iRN7oIEXy9yYdqWfqdrFAYAAr6syP8eLEFI7ZE4939antx2mNgPRW/o1ybm2SFYkbTVA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.18.0.tgz", + "integrity": "sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "7.13.0", - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/typescript-estree": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", "debug": "^4.3.4" }, "dependencies": { "debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", "dev": true, "requires": { "ms": "2.1.2" @@ -4738,13 +4725,13 @@ } }, "@typescript-eslint/rule-tester": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/rule-tester/-/rule-tester-7.13.0.tgz", - "integrity": "sha512-FPkJnu95k3JwiY+gUqGYFiF8rN6R6FMDww4OErWvDHGecMce9A3bwi33HONYgKuwZkTsRnlv231faUT+jrfY4w==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/rule-tester/-/rule-tester-7.18.0.tgz", + "integrity": "sha512-ClrFQlwen9pJcYPIBLuarzBpONQAwjmJ0+YUjAo1TGzoZFJPyUK/A7bb4Mps0u+SMJJnFXbfMN8I9feQDf0O5A==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "7.13.0", - "@typescript-eslint/utils": "7.13.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/utils": "7.18.0", "ajv": "^6.12.6", "json-stable-stringify-without-jsonify": "^1.0.1", "lodash.merge": "4.6.2", @@ -4752,31 +4739,31 @@ } }, "@typescript-eslint/scope-manager": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.13.0.tgz", - "integrity": "sha512-ZrMCe1R6a01T94ilV13egvcnvVJ1pxShkE0+NDjDzH4nvG1wXpwsVI5bZCvE7AEDH1mXEx5tJSVR68bLgG7Dng==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz", + "integrity": "sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==", "dev": true, "requires": { - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0" + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0" } }, "@typescript-eslint/type-utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.13.0.tgz", - "integrity": "sha512-xMEtMzxq9eRkZy48XuxlBFzpVMDurUAfDu5Rz16GouAtXm0TaAoTFzqWUFPPuQYXI/CDaH/Bgx/fk/84t/Bc9A==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz", + "integrity": "sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "7.13.0", - "@typescript-eslint/utils": "7.13.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/utils": "7.18.0", "debug": "^4.3.4", "ts-api-utils": "^1.3.0" }, "dependencies": { "debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", "dev": true, "requires": { "ms": "2.1.2" @@ -4791,19 +4778,19 @@ } }, "@typescript-eslint/types": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.0.tgz", - "integrity": "sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz", + "integrity": "sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.0.tgz", - "integrity": "sha512-cAvBvUoobaoIcoqox1YatXOnSl3gx92rCZoMRPzMNisDiM12siGilSM4+dJAekuuHTibI2hVC2fYK79iSFvWjw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz", + "integrity": "sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==", "dev": true, "requires": { - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/visitor-keys": "7.13.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -4822,18 +4809,18 @@ } }, "debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", "dev": true, "requires": { "ms": "2.1.2" } }, "minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "requires": { "brace-expansion": "^2.0.1" @@ -4848,24 +4835,24 @@ } }, "@typescript-eslint/utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.13.0.tgz", - "integrity": "sha512-jceD8RgdKORVnB4Y6BqasfIkFhl4pajB1wVxrF4akxD2QPM8GNYjgGwEzYS+437ewlqqrg7Dw+6dhdpjMpeBFQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.18.0.tgz", + "integrity": "sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "7.13.0", - "@typescript-eslint/types": "7.13.0", - "@typescript-eslint/typescript-estree": "7.13.0" + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0" } }, "@typescript-eslint/visitor-keys": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.0.tgz", - "integrity": "sha512-nxn+dozQx+MK61nn/JP+M4eCkHDSxSLDpgE3WcQo0+fkjEolnaB5jswvIKC4K56By8MMgIho7f1PVxERHEo8rw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz", + "integrity": "sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==", "dev": true, "requires": { - "@typescript-eslint/types": "7.13.0", + "@typescript-eslint/types": "7.18.0", "eslint-visitor-keys": "^3.4.3" } }, @@ -5032,18 +5019,6 @@ "es-shim-unscopables": "^1.0.0" } }, - "array.prototype.toreversed": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/array.prototype.toreversed/-/array.prototype.toreversed-1.1.2.tgz", - "integrity": "sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - } - }, "array.prototype.tosorted": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", @@ -5693,9 +5668,9 @@ "requires": {} }, "eslint-plugin-office-addins": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-office-addins/-/eslint-plugin-office-addins-3.0.1.tgz", - "integrity": "sha512-6/GOGiw1hQxCGe2EVWQJx2yOlDFy0RfbiZ8XppimvAhphFsV2dq5MxSAKbNT0EBJX5j51CbjCmncUZavgsGbEw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-office-addins/-/eslint-plugin-office-addins-3.0.2.tgz", + "integrity": "sha512-VxX3juMvfQ7UKKzRvUV1JgopJmZsOa9iWA4Mg3+p+sTIqNmuaYiSgy9AT+MheP4zopWHjvJR4rRfyZWTXtUjeA==", "dev": true, "requires": { "@typescript-eslint/rule-tester": "^7.5.0", @@ -5704,7 +5679,7 @@ "eslint-plugin-prettier": "^5.1.3", "eslint-plugin-react": "^7.34.1", "eslint-plugin-react-native": "^4.1.0", - "office-addin-prettier-config": "^1.2.0", + "office-addin-prettier-config": "^1.2.1", "prettier": "^3.2.5", "requireindex": "~1.2.0", "typescript": "^5.4.3", @@ -5712,47 +5687,47 @@ }, "dependencies": { "typescript": { - "version": "5.4.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", - "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", + "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", "dev": true } } }, "eslint-plugin-prettier": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.3.tgz", - "integrity": "sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.1.tgz", + "integrity": "sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==", "dev": true, "requires": { "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.8.6" + "synckit": "^0.9.1" } }, "eslint-plugin-react": { - "version": "7.34.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.2.tgz", - "integrity": "sha512-2HCmrU+/JNigDN6tg55cRDKCQWicYAPB38JGSFDQt95jDm8rrvSUo7YPkOIm5l6ts1j1zCvysNcasvfTMQzUOw==", + "version": "7.35.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.0.tgz", + "integrity": "sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==", "dev": true, "requires": { "array-includes": "^3.1.8", "array.prototype.findlast": "^1.2.5", "array.prototype.flatmap": "^1.3.2", - "array.prototype.toreversed": "^1.1.2", - "array.prototype.tosorted": "^1.1.3", + "array.prototype.tosorted": "^1.1.4", "doctrine": "^2.1.0", "es-iterator-helpers": "^1.0.19", "estraverse": "^5.3.0", + "hasown": "^2.0.2", "jsx-ast-utils": "^2.4.1 || ^3.0.0", "minimatch": "^3.1.2", "object.entries": "^1.1.8", "object.fromentries": "^2.0.8", - "object.hasown": "^1.1.4", "object.values": "^1.2.0", "prop-types": "^15.8.1", "resolve": "^2.0.0-next.5", "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.11" + "string.prototype.matchall": "^4.0.11", + "string.prototype.repeat": "^1.0.0" }, "dependencies": { "doctrine": { @@ -5815,9 +5790,9 @@ } }, "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, "requires": { "estraverse": "^5.1.0" @@ -6162,9 +6137,9 @@ "dev": true }, "ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true }, "import-fresh": { @@ -6268,12 +6243,12 @@ "dev": true }, "is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.0.tgz", + "integrity": "sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==", "dev": true, "requires": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" } }, "is-data-view": { @@ -6719,9 +6694,9 @@ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", + "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", "dev": true }, "object-keys": { @@ -6765,17 +6740,6 @@ "es-object-atoms": "^1.0.0" } }, - "object.hasown": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.4.tgz", - "integrity": "sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==", - "dev": true, - "requires": { - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - } - }, "object.values": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", @@ -6788,9 +6752,9 @@ } }, "office-addin-lint": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/office-addin-lint/-/office-addin-lint-2.3.2.tgz", - "integrity": "sha512-1+RF0kZJJHBtw6Uw9o8UYyeAXqGC1B9gMiRQbQSJpDNnexwgEAk0GVqaVukkYBlAObC/v52vfP0ud5/BYPOOww==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/office-addin-lint/-/office-addin-lint-2.3.3.tgz", + "integrity": "sha512-Makne5gVQuC/t0Bh6NsXk8SGm7jLZS5Kj6VGM4nAHFNZZfWuAmoNWOKKb8PAMRlRqBqIhAPknIeu6OwcGhNCfA==", "dev": true, "requires": { "@typescript-eslint/eslint-plugin": "^7.3.0", @@ -6798,10 +6762,10 @@ "commander": "^6.2.0", "eslint": "^8.57.0", "eslint-config-prettier": "^9.1.0", - "eslint-plugin-office-addins": "^3.0.1", + "eslint-plugin-office-addins": "^3.0.2", "eslint-plugin-prettier": "^5.1.3", - "office-addin-prettier-config": "^1.2.0", - "office-addin-usage-data": "^1.6.11", + "office-addin-prettier-config": "^1.2.1", + "office-addin-usage-data": "^1.6.12", "prettier": "^3.2.5" }, "dependencies": { @@ -6814,15 +6778,15 @@ } }, "office-addin-prettier-config": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/office-addin-prettier-config/-/office-addin-prettier-config-1.2.0.tgz", - "integrity": "sha512-42/w9BUlUvgbLNn8vLaGULVTrcTFBnhn+xAe6IwSOhPrFQpi2GxZPl8ln/f5X4lterVrJz7U6Vi+VeN7WYAsGQ==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/office-addin-prettier-config/-/office-addin-prettier-config-1.2.1.tgz", + "integrity": "sha512-FlBMKuZostX7/g2M5Y8qUtkdy83STzm7zDonx3ZRr9NnrFyhdUVANqnDCy4NwCOpcALxMVnpNOYMmTFIQBXaAw==", "dev": true }, "office-addin-usage-data": { - "version": "1.6.11", - "resolved": "https://registry.npmjs.org/office-addin-usage-data/-/office-addin-usage-data-1.6.11.tgz", - "integrity": "sha512-8n86S1PkAktGFtrM2kYVX8zbgo/i8VyH6RzO3ApX6GeFOeTWJPtYVWmGs7WklkoTlZGTwDjfiR+noB0vWA9Vpg==", + "version": "1.6.12", + "resolved": "https://registry.npmjs.org/office-addin-usage-data/-/office-addin-usage-data-1.6.12.tgz", + "integrity": "sha512-K9Ii5Jsc6Vuf6LrBvo5BycMzTmDwTkk3g5W2zS4PLffvvQYeI/RO3oYpGpOT6z7Pa8oh5gQ2QMDUgmjQGQZ7PA==", "requires": { "applicationinsights": "^1.7.3", "commander": "^6.2.0", @@ -6936,9 +6900,9 @@ "dev": true }, "prettier": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.2.tgz", - "integrity": "sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", + "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", "dev": true }, "prettier-linter-helpers": { @@ -7130,9 +7094,9 @@ "integrity": "sha1-8MgtmKOxOah3aogIBQuCRDEIf8o=" }, "semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true }, "serialize-javascript": { @@ -7249,6 +7213,16 @@ "side-channel": "^1.0.6" } }, + "string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, "string.prototype.trim": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", @@ -7313,9 +7287,9 @@ "dev": true }, "synckit": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz", - "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz", + "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==", "dev": true, "requires": { "@pkgr/core": "^0.1.0", @@ -7467,14 +7441,14 @@ "dev": true }, "typescript-eslint": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-7.13.0.tgz", - "integrity": "sha512-upO0AXxyBwJ4BbiC6CRgAJKtGYha2zw4m1g7TIVPSonwYEuf7vCicw3syjS1OxdDMTz96sZIXl3Jx3vWJLLKFw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-7.18.0.tgz", + "integrity": "sha512-PonBkP603E3tt05lDkbOMyaxJjvKqQrXsnow72sVeOFINDE/qNmnnd+f9b4N+U7W6MXnnYyrhtmF2t08QWwUbA==", "dev": true, "requires": { - "@typescript-eslint/eslint-plugin": "7.13.0", - "@typescript-eslint/parser": "7.13.0", - "@typescript-eslint/utils": "7.13.0" + "@typescript-eslint/eslint-plugin": "7.18.0", + "@typescript-eslint/parser": "7.18.0", + "@typescript-eslint/utils": "7.18.0" } }, "unbox-primitive": { @@ -7540,13 +7514,13 @@ } }, "which-builtin-type": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", - "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.4.tgz", + "integrity": "sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==", "dev": true, "requires": { - "function.prototype.name": "^1.1.5", - "has-tostringtag": "^1.0.0", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", "is-async-function": "^2.0.0", "is-date-object": "^1.0.5", "is-finalizationregistry": "^1.0.2", @@ -7555,8 +7529,8 @@ "is-weakref": "^1.0.2", "isarray": "^2.0.5", "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.15" } }, "which-collection": { diff --git a/packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/expected.js.errors.txt b/packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/expected.js.errors.txt deleted file mode 100644 index dea67836f..000000000 --- a/packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/expected.js.errors.txt +++ /dev/null @@ -1 +0,0 @@ -@requiresAddress cannot be used with @streaming. (1,1) \ No newline at end of file diff --git a/packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/expected.ts.errors.txt b/packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/expected.ts.errors.txt deleted file mode 100644 index dea67836f..000000000 --- a/packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/expected.ts.errors.txt +++ /dev/null @@ -1 +0,0 @@ -@requiresAddress cannot be used with @streaming. (1,1) \ No newline at end of file diff --git a/packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/expected.js.errors.txt b/packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/expected.js.errors.txt deleted file mode 100644 index 988da5a38..000000000 --- a/packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/expected.js.errors.txt +++ /dev/null @@ -1 +0,0 @@ -@requiresParameterAddresses cannot be used with @streaming. (1,1) \ No newline at end of file diff --git a/packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/expected.ts.errors.txt b/packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/expected.ts.errors.txt deleted file mode 100644 index 988da5a38..000000000 --- a/packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/expected.ts.errors.txt +++ /dev/null @@ -1 +0,0 @@ -@requiresParameterAddresses cannot be used with @streaming. (1,1) \ No newline at end of file diff --git a/packages/custom-functions-metadata/test/cases/requiresaddress-streaming/expected.json b/packages/custom-functions-metadata/test/cases/requiresaddress-streaming/expected.json new file mode 100644 index 000000000..c7ab0f2e5 --- /dev/null +++ b/packages/custom-functions-metadata/test/cases/requiresaddress-streaming/expected.json @@ -0,0 +1,24 @@ +{ + "allowCustomDataForDataTypeAny": true, + "functions": [ + { + "description": "Test the new streaming invocation type", + "id": "CUSTOMFUNCTIONSTREAMINGINVOCATIONTEST", + "name": "CUSTOMFUNCTIONSTREAMINGINVOCATIONTEST", + "options": { + "requiresAddress": true, + "stream": true + }, + "parameters": [ + { + "description": "string", + "name": "x", + "type": "string" + } + ], + "result": { + "type": "string" + } + } + ] +} \ No newline at end of file diff --git a/packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/functions.js b/packages/custom-functions-metadata/test/cases/requiresaddress-streaming/functions.js similarity index 100% rename from packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/functions.js rename to packages/custom-functions-metadata/test/cases/requiresaddress-streaming/functions.js diff --git a/packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/functions.ts b/packages/custom-functions-metadata/test/cases/requiresaddress-streaming/functions.ts similarity index 100% rename from packages/custom-functions-metadata/test/cases/error-requiresaddress-streaming/functions.ts rename to packages/custom-functions-metadata/test/cases/requiresaddress-streaming/functions.ts diff --git a/packages/custom-functions-metadata/test/cases/requiresparameteraddresses-streaming/expected.json b/packages/custom-functions-metadata/test/cases/requiresparameteraddresses-streaming/expected.json new file mode 100644 index 000000000..f32c53316 --- /dev/null +++ b/packages/custom-functions-metadata/test/cases/requiresparameteraddresses-streaming/expected.json @@ -0,0 +1,24 @@ +{ + "allowCustomDataForDataTypeAny": true, + "functions": [ + { + "description": "Test the new streaming invocation type", + "id": "CUSTOMFUNCTIONSTREAMINGINVOCATIONTEST", + "name": "CUSTOMFUNCTIONSTREAMINGINVOCATIONTEST", + "options": { + "stream": true, + "requiresParameterAddresses": true + }, + "parameters": [ + { + "description": "string", + "name": "x", + "type": "string" + } + ], + "result": { + "type": "string" + } + } + ] +} \ No newline at end of file diff --git a/packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/functions.js b/packages/custom-functions-metadata/test/cases/requiresparameteraddresses-streaming/functions.js similarity index 100% rename from packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/functions.js rename to packages/custom-functions-metadata/test/cases/requiresparameteraddresses-streaming/functions.js diff --git a/packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/functions.ts b/packages/custom-functions-metadata/test/cases/requiresparameteraddresses-streaming/functions.ts similarity index 100% rename from packages/custom-functions-metadata/test/cases/error-requiresparameteraddresses-streaming/functions.ts rename to packages/custom-functions-metadata/test/cases/requiresparameteraddresses-streaming/functions.ts diff --git a/packages/custom-functions-metadata/test/cases/streaming-invocation-address/expected.json b/packages/custom-functions-metadata/test/cases/streaming-invocation-address/expected.json deleted file mode 100644 index e9a64207d..000000000 --- a/packages/custom-functions-metadata/test/cases/streaming-invocation-address/expected.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "allowCustomDataForDataTypeAny": true, - "functions": [ - { - "description": "Test function for enable address prop in streaming invocation object.", - "id": "TESTSTREAMINGINVOCATIONADDRESS", - "name": "TESTSTREAMINGINVOCATIONADDRESS", - "options": { - "requiresAddress": true, - "stream": true - }, - "parameters": [ - { - "name": "x", - "type": "string" - } - ], - "result": { - "type": "number" - } - }, - { - "description": "Test function for enable parameter address prop in streaming invocation object.", - "id": "TESTSTREAMINGINVOCATIONPARAMETERADDRESS", - "name": "TESTSTREAMINGINVOCATIONPARAMETERADDRESS", - "options": { - "stream": true, - "requiresParameterAddresses": true - }, - "parameters": [ - { - "name": "x", - "type": "string" - } - ], - "result": { - "type": "number" - } - } - ] -} \ No newline at end of file diff --git a/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.js b/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.js deleted file mode 100644 index a7a8f766f..000000000 --- a/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.js +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT license. - -/** - * Test function for enable address prop in streaming invocation object. - * @param x {string} - * @param invocation {CustomFunctions.StreamingInvocation} - * @customfunction - * @requiresAddress - */ -function testStreamingInvocationAddress(x, invocation) { -// Empty -} - -/** - * Test function for enable parameter address prop in streaming invocation object. - * @param x {string} - * @param invocation {CustomFunctions.StreamingInvocation} - * @customfunction - * @requiresParameterAddresses - */ -function testStreamingInvocationParameterAddress(x, invocation) { -// Empty -} \ No newline at end of file diff --git a/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.ts b/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.ts deleted file mode 100644 index 04b8349aa..000000000 --- a/packages/custom-functions-metadata/test/cases/streaming-invocation-address/functions.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT license. - -/** - * Test function for enable address prop in streaming invocation object. - * @param x - * @param invocation - * @customfunction - * @requiresAddress - */ -function testStreamingInvocationAddress(x: string, invocation: CustomFunctions.StreamingInvocation) { -// Empty -} - -/** - * Test function for enable parameter address prop in streaming invocation object. - * @param x - * @param invocation - * @customfunction - * @requiresParameterAddresses - */ -function testStreamingInvocationParameterAddress(x: string, invocation: CustomFunctions.StreamingInvocation) { -// Empty -} \ No newline at end of file