Skip to content

chore: WPB-28401 Update project with latest template - #47

Merged
spoonman01 merged 10 commits into
stagingfrom
chore/WPB-28401_update_project_with_latest_template
Sep 22, 2026
Merged

spoonman01 merged 10 commits into
stagingfrom
chore/WPB-28401_update_project_with_latest_template

Conversation

@MarianKijewski

@MarianKijewski MarianKijewski commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

PR Submission Checklist for internal contributors

  • The PR Title

    • conforms to the style of semantic commits messages¹ supported in Wire's Github Workflow²
    • contains a reference JIRA issue number like SQPIT-764
    • answers the question: If merged, this PR will: ... ³
  • The PR Description

    • is free of optional paragraphs and you have filled the relevant parts to the best of your ability

What's new in this PR?

This project originally got created from this template: https://github.com/OfficeDev/Office-Addin-TaskPane-React
The goal of this PR was to match the dependencies versions with the current state of the template.

Issues

  • Usage of deprecated dependencies
  • Dependencies not up-to-date
  • Lots of vulnerabilities

Causes

The project wasn't maintained for long time.

Solutions

  • Upgrade dependencies according to the template project.
  • Follow migration guides to ensure correct libraries API usage.
  • Remove unused dependencies.
  • Adjust configuration of: webpack, babel, and eslint.

Testing

How to Test

Build and run the project according to the README: https://github.com/wireapp/outlook-addin#how-to-install-the-add-in-in-ms-outlook

Notes

This PR aims to match the state with the template. The following PRs will address the remaining necessary updates.


References
  1. https://sparkbox.com/foundry/semantic_commit_messages
  2. https://github.com/wireapp/.github#usage
  3. E.g. feat(conversation-list): Sort conversations by most emojis in the title #SQPIT-764.

MarianKijewski and others added 10 commits September 21, 2026 16:04
Below is a list of dependencies that bumped their major version, and therefore will be handeled separately as they might require further attention.

dependencies:
- react
- react-dom
- @fluentui/react - legacy version used

devDependencies:
- @babel/core
- @babel/preset-typescript
- @types/react
- @types/react-dom
- babel-loader
- copy-webpack-plugin
- eslint-plugin-office-addins
- html-loader
- less-loader
- office-addin-cli
- office-addin-debugging
- office-addin-dev-certs
- office-addin-lint
- office-addin-manifest
- office-addin-prettier-config
- source-map-loader
- webpack-dev-server

New:
- @babel/preset-env

# Conflicts:
#	package-lock.json
#	package.json
The bump on author side was driven by internal tooling changes and no breaking API.
Reference: OfficeDev/Office-Addin-Scripts#896

Notes relevant for specific scripts:

- office-addin-debugging – On MacOS the add-ins must be loaded manually anyway.
- office-addin-lint – Running linter yeilds exact same issues as before update, thefore I won't apply fix in this PR.
- office-addin-manifest – The manifest file remains valid.
This also includes changing babel-loader version from 9 to 10 based on the compatibility matrix.

* Ensure Node version required by Babel 8 is used

* Use type-only imports where necessary for compatibility

* Remove duplicate preset configuration

It's already present in the `babel.config.json`.
Use native Fast Refresh instead of deprecated react-hot-loader

* Install the requried dependencies
* Update webpack and babel configs
* Enable HotModuleReplacement
* Remove all the occurences of the old plugin

Update client rendering API

Only now React 18 is actually used.
Reference: https://reactjs.org/link/switch-to-createroot

Migrate from Fluent UI React v8 to v9

* `ThemeProvider`: https://storybooks.fluentui.dev/react/?path=/docs/concepts-migration-keeping-design-consistent--docs
* Button migration: https://storybooks.fluentui.dev/react/?path=/docs/concepts-migration-from-v8-components-button-migration--docs
* Spinner migration: https://storybooks.fluentui.dev/react/?path=/docs/concepts-migration-from-v8-components-spinner-migration--docs
* Remove dead code for icons initialization

Remove IE11 from browserlist
The engine requirement is already fulfilled.

* Bump Webpack dev server version from 4 to 6
* Bump copy-webpack-plugin version from 11 to 14
* Bump html-loader version from 4 to 5
* less
* source-map-loader
In other words, I ran `npm audit fix`.
  - Upgrade Office development tools and resolve dependency vulnerabilities
  - Remove unused direct dependencies
  - Migrate ESLint configuration and fix lint issues
  - Use Ubuntu 24.04 for staging CI
  - Fix the polyfill chunk name and manifest paths in npm scripts
  - Handle login dialog cancellation, errors, and duplicate messages
  - Clarify local development setup in the README
@spoonman01
spoonman01 force-pushed the chore/WPB-28401_update_project_with_latest_template branch from 2958641 to cb1eac0 Compare September 22, 2026 14:50
@spoonman01
spoonman01 requested a review from a team as a code owner September 22, 2026 14:50
@spoonman01
spoonman01 merged commit 9436ee4 into staging Sep 22, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants