- Try the following keyboard shortcuts:
-
- -
- Ctrl+Alt+1 to Show task pane.
-
- -
- Ctrl+Alt+2 to Hide task pane.
-
- -
- Ctrl+Alt+3 to cycle through cell colors.
-
- -
-
-
-
- If using a shortcut that conflicts with existing Excel shortcuts,
- the user will see a conflict modal. For e.g. try pressing Ctrl+R.
-
- The shortcut is programmed to log "test conflict" in the console, but in order to use the shortcut,
- the user must first confirm which action the shortcut must take.
-
- After making a selection, if you wish to reset the shortcut preference,
- search for "Reset Office Add-in Shortcut Preferences" in the Tell Me Search box.
-
+
+
Try the following keyboard shortcuts.
+
+ -
+ Ctrl+Alt+1: Open the add-in's task pane.
+
+ -
+ Ctrl+Alt+2: Hide the add-in's task pane.
+
+ -
+
+ Ctrl+Alt+3: Run an action that's specific to the current Office host.
+ In Excel, this shortcut cycles through colors in the currently selected cell.
+ In Word, this shortcut adds text to the document.
+
+
+
+
+
+ If a custom shortcut conflicts with an existing shortcut that's defined in the host application or in another add-in, a dialog will be shown.
+ This dialog will ask you to confirm which action you want to be mapped to the keyboard shortcut.
+
+
To test this now, press Ctrl+R.
+
After you select an action, you can change your preference by invoking Reset Office Add-in Shortcut Preferences from the search field.
+
diff --git a/Samples/office-keyboard-shortcuts/src/taskpane.js b/Samples/office-keyboard-shortcuts/src/taskpane.js
new file mode 100644
index 000000000..d91e78039
--- /dev/null
+++ b/Samples/office-keyboard-shortcuts/src/taskpane.js
@@ -0,0 +1,84 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.
+ * See LICENSE in the project root for license information.
+ */
+
+/* global console, document, Excel, Office */
+
+// Initialize the Office JavaScript API library.
+Office.onReady(() => {
+ document.getElementById("sideload-msg").style.display = "none";
+ document.getElementById("app-body").style.display = "flex";
+});
+
+// Configure the keyboard shortcut to open the task pane.
+Office.actions.associate("ShowTaskpane", () => {
+return Office.addin
+ .showAsTaskpane()
+ .then(() => {
+ return;
+ })
+ .catch((error) => {
+ return error.code;
+ });
+});
+
+// Configure the keyboard shortcut to close the task pane.
+Office.actions.associate("HideTaskpane", () => {
+return Office.addin
+ .hide()
+ .then(() => {
+ return;
+ })
+ .catch((error) => {
+ return error.code;
+ });
+});
+
+// Configure the keyboard shortcut to run an action that's specific to the current Office host.
+Office.actions.associate("RunAction", () => {
+const host = Office.context.host;
+
+// Cycle through cell colors in Excel.
+if (host === Office.HostType.Excel) {
+ const context = new Excel.RequestContext();
+ const range = context.workbook.getSelectedRange();
+ const rangeFormat = range.format;
+ rangeFormat.fill.load();
+ const colors = ["#FFFFFF", "#C7CC7A", "#7560BA", "#9DD9D2", "#FFE1A8", "#E26D5C"];
+ return context.sync().then(() => {
+ const rangeTarget = context.workbook.getSelectedRange();
+ let currentColor = -1;
+ for (let i = 0; i < colors.length; i++) {
+ if (colors[i] == rangeFormat.fill.color) {
+ currentColor = i;
+ break;
+ }
+ }
+ if (currentColor == -1) {
+ currentColor = 0;
+ } else if (currentColor == colors.length - 1) {
+ currentColor = 0;
+ } else {
+ currentColor++;
+ }
+ rangeTarget.format.fill.color = colors[currentColor];
+ return context.sync();
+ });
+} else if (host === Office.HostType.Word) {
+ // Insert text into the Word document.
+ const context = new Word.RequestContext();
+ return context.sync().then(() => {
+ context.document.body.insertText(
+ "Added using a custom keyboard shortcut.",
+ Word.InsertLocation.start
+ );
+ return context.sync();
+ });
+}
+});
+
+// Display the shortcut conflict dialog for testing.
+Office.actions.associate("TestConflict", () => {
+ console.log("Display the shortcut conflict dialog for testing.");
+});
diff --git a/Samples/outlook-encrypt-attachments/src/commands/commands.js b/Samples/outlook-encrypt-attachments/src/commands/commands.js
index 6b9770fca..dc467eb48 100644
--- a/Samples/outlook-encrypt-attachments/src/commands/commands.js
+++ b/Samples/outlook-encrypt-attachments/src/commands/commands.js
@@ -303,7 +303,7 @@ function onAppointmentAttendeesChangedHandler(event) {
* Method that fires when an attachment is being added or removed from the compose email or appointment
* @param {Office.AsyncResult} event default: Office.AsyncResult
*/
-function onItemAttachmentsChangedHandler(event) {
+function onItemAttachmentsChangedHandler(event) {
if (Office.context.platform !== Office.PlatformType.OfficeOnline){
console.warn(`onItemAttachmentsChangedHandler(): Unsupported platform for encrypting/decrypting attachments (${Office.context.platform}); leaving...`);
event.completed();
@@ -546,7 +546,7 @@ function onAppointmentTimeChangedHandler(event) {
console.error(`onAppointmentTimeChangedHandler(): Action failed with message ${asyncResult.error.message}`);
event.completed();
}
- });
+ });
}
// 1st parameter: FunctionName of LaunchEvent in the manifest; 2nd parameter: Its implementation in this .js file.
diff --git a/Samples/outlook-set-signature/package-lock.json b/Samples/outlook-set-signature/package-lock.json
index b5ad6d02c..94a3d09de 100644
--- a/Samples/outlook-set-signature/package-lock.json
+++ b/Samples/outlook-set-signature/package-lock.json
@@ -4825,6 +4825,7 @@
"integrity": "sha512-DnyqqifT4Jrcvb8USYjp6FHtBpEIz1mnXu6pTRHZ0RL69LbQYiO+0lDFg5+OKA7U29oWSs3a/i8fhn8ZcceIWg==",
"dev": true,
"license": "MIT",
+ "peer": true,
"engines": {
"node": ">=12.0"
}
@@ -5264,9 +5265,9 @@
}
},
"node_modules/axios": {
- "version": "1.7.2",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.2.tgz",
- "integrity": "sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==",
+ "version": "1.7.3",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.3.tgz",
+ "integrity": "sha512-Ar7ND9pU99eJ9GpoGQKhKf58GpUOgnzuaB7ueNQ5BMi0p+LZ5oaEnfF999fAArcTIBwXTCHAmGcHOZJaWPq9Nw==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -7771,9 +7772,9 @@
"peer": true
},
"node_modules/fast-xml-parser": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.0.tgz",
- "integrity": "sha512-kLY3jFlwIYwBNDojclKsNAC12sfD6NwW74QB2CoNGPvtVxjliYehVunB3HYyNi+n4Tt1dAcgwYvmKF/Z18flqg==",
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz",
+ "integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==",
"dev": true,
"funding": [
{
@@ -10836,26 +10837,36 @@
}
},
"node_modules/office-addin-debugging": {
- "version": "5.1.3",
- "resolved": "https://registry.npmjs.org/office-addin-debugging/-/office-addin-debugging-5.1.3.tgz",
- "integrity": "sha512-Y/uW4Gt93MIkHcSk8Kb+k/MuNQTWwtl9WmfdKFqC3UI4V8UO01jGkCk1uRuNhO186pLWD1SBZLG+jbmI7EC+qw==",
+ "version": "5.1.4",
+ "resolved": "https://registry.npmjs.org/office-addin-debugging/-/office-addin-debugging-5.1.4.tgz",
+ "integrity": "sha512-nFxUmDxWRUxMZq+nCXcUXEjLU1ZLtM1hKEBrxwsUfyH62wbQBDLH1k0GeU38Rb29wIbrIY7kG3L6SAzf2xYU2A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "adm-zip": "^0.5.9",
+ "adm-zip": "0.5.12",
"commander": "^6.2.0",
"node-fetch": "^2.6.1",
"office-addin-cli": "^1.6.3",
"office-addin-dev-certs": "^1.13.3",
- "office-addin-dev-settings": "^2.3.3",
- "office-addin-manifest": "^1.13.3",
- "office-addin-node-debugger": "^0.9.3",
+ "office-addin-dev-settings": "^2.3.4",
+ "office-addin-manifest": "^1.13.4",
+ "office-addin-node-debugger": "^0.9.4",
"office-addin-usage-data": "^1.6.12"
},
"bin": {
"office-addin-debugging": "cli.js"
}
},
+ "node_modules/office-addin-debugging/node_modules/adm-zip": {
+ "version": "0.5.12",
+ "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.12.tgz",
+ "integrity": "sha512-6TVU49mK6KZb4qG6xWaaM4C7sA/sgUMLy/JYMOzkcp3BvVLpW0fXDFQiIzAuxFCt/2+xD7fNIiPFAoLZPhVNLQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.0"
+ }
+ },
"node_modules/office-addin-dev-certs": {
"version": "1.13.3",
"resolved": "https://registry.npmjs.org/office-addin-dev-certs/-/office-addin-dev-certs-1.13.3.tgz",
@@ -10889,18 +10900,18 @@
}
},
"node_modules/office-addin-dev-settings": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/office-addin-dev-settings/-/office-addin-dev-settings-2.3.3.tgz",
- "integrity": "sha512-Zw+GnG0NnT471tkSPPuatNqXH4VZsCqCmItx+nGEj6fCwFowPbmP6eBcypIGS47x/T3+V9KNIKsoUKKps4Kefw==",
+ "version": "2.3.4",
+ "resolved": "https://registry.npmjs.org/office-addin-dev-settings/-/office-addin-dev-settings-2.3.4.tgz",
+ "integrity": "sha512-MpO1wj5mrNJeNisvhziFo1lg/4ARH/kILBEygL+WmS1F36nAi9EfY+kH0GkVSHd0WF8d/eaOBFRxOxrkdtidLQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "adm-zip": "0.5.10",
+ "adm-zip": "0.5.12",
"commander": "^6.2.0",
"fs-extra": "^11.2.0",
"inquirer": "^7.3.3",
"junk": "^3.1.0",
- "office-addin-manifest": "^1.13.3",
+ "office-addin-manifest": "^1.13.4",
"office-addin-usage-data": "^1.6.12",
"open": "^6.4.0",
"string_decoder": "1.3.0",
@@ -10915,9 +10926,9 @@
}
},
"node_modules/office-addin-dev-settings/node_modules/adm-zip": {
- "version": "0.5.10",
- "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.10.tgz",
- "integrity": "sha512-x0HvcHqVJNTPk/Bw8JbLWlWoo6Wwnsug0fnYYro1HBrjxZ3G7/AZk7Ahv8JwDe1uIcz8eBqvu86FuF1POiG7vQ==",
+ "version": "0.5.12",
+ "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.12.tgz",
+ "integrity": "sha512-6TVU49mK6KZb4qG6xWaaM4C7sA/sgUMLy/JYMOzkcp3BvVLpW0fXDFQiIzAuxFCt/2+xD7fNIiPFAoLZPhVNLQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -11022,14 +11033,14 @@
}
},
"node_modules/office-addin-manifest": {
- "version": "1.13.3",
- "resolved": "https://registry.npmjs.org/office-addin-manifest/-/office-addin-manifest-1.13.3.tgz",
- "integrity": "sha512-pcIJTkLCKddGWyTQYkxWRcumZo9NzPdkQN43c17oylpvH2W0HgsZyBIazkwAjqAETy0VX40NbSQ8ejf4c9jvcA==",
+ "version": "1.13.4",
+ "resolved": "https://registry.npmjs.org/office-addin-manifest/-/office-addin-manifest-1.13.4.tgz",
+ "integrity": "sha512-bzjc+ypvJT+UBUSsfugftOZh/CZECR5GwJ7PMYcFuB/zGPuh41jeAxbuXhlAy8AeJpQgEsTK3B7N1aDr+JPqjg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@microsoft/teams-manifest": "^0.1.3",
- "adm-zip": "^0.5.9",
+ "adm-zip": "0.5.12",
"chalk": "^2.4.2",
"commander": "^6.2.0",
"fs-extra": "^7.0.1",
@@ -11070,6 +11081,16 @@
"node": "^12.20.0 || >=14"
}
},
+ "node_modules/office-addin-manifest/node_modules/adm-zip": {
+ "version": "0.5.12",
+ "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.12.tgz",
+ "integrity": "sha512-6TVU49mK6KZb4qG6xWaaM4C7sA/sgUMLy/JYMOzkcp3BvVLpW0fXDFQiIzAuxFCt/2+xD7fNIiPFAoLZPhVNLQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.0"
+ }
+ },
"node_modules/office-addin-manifest/node_modules/ansi-styles": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
@@ -11174,9 +11195,9 @@
}
},
"node_modules/office-addin-node-debugger": {
- "version": "0.9.3",
- "resolved": "https://registry.npmjs.org/office-addin-node-debugger/-/office-addin-node-debugger-0.9.3.tgz",
- "integrity": "sha512-S0e1lh7ykrcfaccF6jYvK40WJHh0JkZCdUENsYiThqKRB1843Rk0OLYZGHqEqSZYMondO21zUEVYLrwjaaMmwg==",
+ "version": "0.9.4",
+ "resolved": "https://registry.npmjs.org/office-addin-node-debugger/-/office-addin-node-debugger-0.9.4.tgz",
+ "integrity": "sha512-OXqlwOSyBas8GO+GD+8+sIqRr7Oh8eTe/8MaA3de+AUKl1IdwxpmkcTdTeFJQeSmuGmD2aaoytGDFLN5E1FT0A==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -18192,7 +18213,8 @@
"version": "0.5.14",
"resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.14.tgz",
"integrity": "sha512-DnyqqifT4Jrcvb8USYjp6FHtBpEIz1mnXu6pTRHZ0RL69LbQYiO+0lDFg5+OKA7U29oWSs3a/i8fhn8ZcceIWg==",
- "dev": true
+ "dev": true,
+ "peer": true
},
"agent-base": {
"version": "7.1.1",
@@ -18506,9 +18528,9 @@
}
},
"axios": {
- "version": "1.7.2",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.2.tgz",
- "integrity": "sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==",
+ "version": "1.7.3",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.3.tgz",
+ "integrity": "sha512-Ar7ND9pU99eJ9GpoGQKhKf58GpUOgnzuaB7ueNQ5BMi0p+LZ5oaEnfF999fAArcTIBwXTCHAmGcHOZJaWPq9Nw==",
"dev": true,
"peer": true,
"requires": {
@@ -20352,9 +20374,9 @@
"peer": true
},
"fast-xml-parser": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.0.tgz",
- "integrity": "sha512-kLY3jFlwIYwBNDojclKsNAC12sfD6NwW74QB2CoNGPvtVxjliYehVunB3HYyNi+n4Tt1dAcgwYvmKF/Z18flqg==",
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz",
+ "integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==",
"dev": true,
"peer": true,
"requires": {
@@ -22515,20 +22537,28 @@
}
},
"office-addin-debugging": {
- "version": "5.1.3",
- "resolved": "https://registry.npmjs.org/office-addin-debugging/-/office-addin-debugging-5.1.3.tgz",
- "integrity": "sha512-Y/uW4Gt93MIkHcSk8Kb+k/MuNQTWwtl9WmfdKFqC3UI4V8UO01jGkCk1uRuNhO186pLWD1SBZLG+jbmI7EC+qw==",
+ "version": "5.1.4",
+ "resolved": "https://registry.npmjs.org/office-addin-debugging/-/office-addin-debugging-5.1.4.tgz",
+ "integrity": "sha512-nFxUmDxWRUxMZq+nCXcUXEjLU1ZLtM1hKEBrxwsUfyH62wbQBDLH1k0GeU38Rb29wIbrIY7kG3L6SAzf2xYU2A==",
"dev": true,
"requires": {
- "adm-zip": "^0.5.9",
+ "adm-zip": "0.5.12",
"commander": "^6.2.0",
"node-fetch": "^2.6.1",
"office-addin-cli": "^1.6.3",
"office-addin-dev-certs": "^1.13.3",
- "office-addin-dev-settings": "^2.3.3",
- "office-addin-manifest": "^1.13.3",
- "office-addin-node-debugger": "^0.9.3",
+ "office-addin-dev-settings": "^2.3.4",
+ "office-addin-manifest": "^1.13.4",
+ "office-addin-node-debugger": "^0.9.4",
"office-addin-usage-data": "^1.6.12"
+ },
+ "dependencies": {
+ "adm-zip": {
+ "version": "0.5.12",
+ "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.12.tgz",
+ "integrity": "sha512-6TVU49mK6KZb4qG6xWaaM4C7sA/sgUMLy/JYMOzkcp3BvVLpW0fXDFQiIzAuxFCt/2+xD7fNIiPFAoLZPhVNLQ==",
+ "dev": true
+ }
}
},
"office-addin-dev-certs": {
@@ -22558,17 +22588,17 @@
}
},
"office-addin-dev-settings": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/office-addin-dev-settings/-/office-addin-dev-settings-2.3.3.tgz",
- "integrity": "sha512-Zw+GnG0NnT471tkSPPuatNqXH4VZsCqCmItx+nGEj6fCwFowPbmP6eBcypIGS47x/T3+V9KNIKsoUKKps4Kefw==",
+ "version": "2.3.4",
+ "resolved": "https://registry.npmjs.org/office-addin-dev-settings/-/office-addin-dev-settings-2.3.4.tgz",
+ "integrity": "sha512-MpO1wj5mrNJeNisvhziFo1lg/4ARH/kILBEygL+WmS1F36nAi9EfY+kH0GkVSHd0WF8d/eaOBFRxOxrkdtidLQ==",
"dev": true,
"requires": {
- "adm-zip": "0.5.10",
+ "adm-zip": "0.5.12",
"commander": "^6.2.0",
"fs-extra": "^11.2.0",
"inquirer": "^7.3.3",
"junk": "^3.1.0",
- "office-addin-manifest": "^1.13.3",
+ "office-addin-manifest": "^1.13.4",
"office-addin-usage-data": "^1.6.12",
"open": "^6.4.0",
"string_decoder": "1.3.0",
@@ -22577,9 +22607,9 @@
},
"dependencies": {
"adm-zip": {
- "version": "0.5.10",
- "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.10.tgz",
- "integrity": "sha512-x0HvcHqVJNTPk/Bw8JbLWlWoo6Wwnsug0fnYYro1HBrjxZ3G7/AZk7Ahv8JwDe1uIcz8eBqvu86FuF1POiG7vQ==",
+ "version": "0.5.12",
+ "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.12.tgz",
+ "integrity": "sha512-6TVU49mK6KZb4qG6xWaaM4C7sA/sgUMLy/JYMOzkcp3BvVLpW0fXDFQiIzAuxFCt/2+xD7fNIiPFAoLZPhVNLQ==",
"dev": true
},
"fs-extra": {
@@ -22654,13 +22684,13 @@
}
},
"office-addin-manifest": {
- "version": "1.13.3",
- "resolved": "https://registry.npmjs.org/office-addin-manifest/-/office-addin-manifest-1.13.3.tgz",
- "integrity": "sha512-pcIJTkLCKddGWyTQYkxWRcumZo9NzPdkQN43c17oylpvH2W0HgsZyBIazkwAjqAETy0VX40NbSQ8ejf4c9jvcA==",
+ "version": "1.13.4",
+ "resolved": "https://registry.npmjs.org/office-addin-manifest/-/office-addin-manifest-1.13.4.tgz",
+ "integrity": "sha512-bzjc+ypvJT+UBUSsfugftOZh/CZECR5GwJ7PMYcFuB/zGPuh41jeAxbuXhlAy8AeJpQgEsTK3B7N1aDr+JPqjg==",
"dev": true,
"requires": {
"@microsoft/teams-manifest": "^0.1.3",
- "adm-zip": "^0.5.9",
+ "adm-zip": "0.5.12",
"chalk": "^2.4.2",
"commander": "^6.2.0",
"fs-extra": "^7.0.1",
@@ -22671,6 +22701,12 @@
"xml2js": "^0.5.0"
},
"dependencies": {
+ "adm-zip": {
+ "version": "0.5.12",
+ "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.12.tgz",
+ "integrity": "sha512-6TVU49mK6KZb4qG6xWaaM4C7sA/sgUMLy/JYMOzkcp3BvVLpW0fXDFQiIzAuxFCt/2+xD7fNIiPFAoLZPhVNLQ==",
+ "dev": true
+ },
"ansi-styles": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
@@ -22771,9 +22807,9 @@
}
},
"office-addin-node-debugger": {
- "version": "0.9.3",
- "resolved": "https://registry.npmjs.org/office-addin-node-debugger/-/office-addin-node-debugger-0.9.3.tgz",
- "integrity": "sha512-S0e1lh7ykrcfaccF6jYvK40WJHh0JkZCdUENsYiThqKRB1843Rk0OLYZGHqEqSZYMondO21zUEVYLrwjaaMmwg==",
+ "version": "0.9.4",
+ "resolved": "https://registry.npmjs.org/office-addin-node-debugger/-/office-addin-node-debugger-0.9.4.tgz",
+ "integrity": "sha512-OXqlwOSyBas8GO+GD+8+sIqRr7Oh8eTe/8MaA3de+AUKl1IdwxpmkcTdTeFJQeSmuGmD2aaoytGDFLN5E1FT0A==",
"dev": true,
"requires": {
"commander": "^6.2.0",
diff --git a/Samples/outlook-spam-reporting/README.md b/Samples/outlook-spam-reporting/README.md
index b6a292c0a..427962e4d 100644
--- a/Samples/outlook-spam-reporting/README.md
+++ b/Samples/outlook-spam-reporting/README.md
@@ -144,5 +144,6 @@ This project has adopted the [Microsoft Open Source Code of Conduct](https://ope
| ----- | ----- | ----- |
| 1.0 | March 26, 2024 | Initial release |
| 1.1 | July 1, 2024 | Create separate JavaScript files for supported clients |
+| 1.2 | September 11, 2024 | Correct the `Office.actions.associate` call and consolidate the JavaScript files |