From 46464361f7be9b9104f48fd22757b5a48fa961b3 Mon Sep 17 00:00:00 2001 From: Logan Cook <2997336+MWG-Logan@users.noreply.github.com> Date: Tue, 24 Feb 2026 15:41:22 -0500 Subject: [PATCH 01/34] fix(edit): trigger form validation on room info update --- src/pages/email/resources/management/list-rooms/edit.jsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pages/email/resources/management/list-rooms/edit.jsx b/src/pages/email/resources/management/list-rooms/edit.jsx index a8125a3f8be8..9505c7e4c19b 100644 --- a/src/pages/email/resources/management/list-rooms/edit.jsx +++ b/src/pages/email/resources/management/list-rooms/edit.jsx @@ -115,6 +115,7 @@ const EditRoomMailbox = () => { } : null, }); + void formControl.trigger(); } }, [roomInfo.isSuccess, roomInfo.data]); From 08a63ae276620c886a9d1d7264ac80958e8566de Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Feb 2026 23:44:20 +0000 Subject: [PATCH 02/34] Bump @tiptap/starter-kit from 3.19.0 to 3.20.0 Bumps [@tiptap/starter-kit](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit) from 3.19.0 to 3.20.0. - [Release notes](https://github.com/ueberdosis/tiptap/releases) - [Changelog](https://github.com/ueberdosis/tiptap/blob/develop/packages/starter-kit/CHANGELOG.md) - [Commits](https://github.com/ueberdosis/tiptap/commits/v3.20.0/packages/starter-kit) --- updated-dependencies: - dependency-name: "@tiptap/starter-kit" dependency-version: 3.20.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 250 +++++++++++++++++++++++++-------------------------- 2 files changed, 126 insertions(+), 126 deletions(-) diff --git a/package.json b/package.json index d575cae8d4cb..cc533cb63980 100644 --- a/package.json +++ b/package.json @@ -51,7 +51,7 @@ "@tiptap/extension-table": "^3.19.0", "@tiptap/pm": "^3.4.1", "@tiptap/react": "^3.4.1", - "@tiptap/starter-kit": "^3.19.0", + "@tiptap/starter-kit": "^3.20.0", "@uiw/react-json-view": "^2.0.0-alpha.41", "@vvo/tzdb": "^6.198.0", "apexcharts": "5.3.5", diff --git a/yarn.lock b/yarn.lock index 435c9b238443..d91465507c1a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2255,20 +2255,20 @@ resolved "https://registry.yarnpkg.com/@tanstack/virtual-core/-/virtual-core-3.11.2.tgz#00409e743ac4eea9afe5b7708594d5fcebb00212" integrity sha512-vTtpNt7mKCiZ1pwU9hfKPhpdVO2sVzFQsxoVBGtOSHxlrRRzYr8iQ2TlwbAcRYCcEiZ9ECAM8kBzH0v2+VzfKw== -"@tiptap/core@^3.19.0", "@tiptap/core@^3.4.1": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/core/-/core-3.19.0.tgz#dca483b50e1b8a596f695aecde387a79fe7da717" - integrity sha512-bpqELwPW+DG8gWiD8iiFtSl4vIBooG5uVJod92Qxn3rA9nFatyXRr4kNbMJmOZ66ezUvmCjXVe/5/G4i5cyzKA== +"@tiptap/core@^3.20.0", "@tiptap/core@^3.4.1": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/core/-/core-3.20.0.tgz#dac72894d83829f2fbbabee2e90a748d7c1479ee" + integrity sha512-aC9aROgia/SpJqhsXFiX9TsligL8d+oeoI8W3u00WI45s0VfsqjgeKQLDLF7Tu7hC+7F02teC84SAHuup003VQ== -"@tiptap/extension-blockquote@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-blockquote/-/extension-blockquote-3.19.0.tgz#86c52e8e3b6d1e072ae0d9c895723034a1e37096" - integrity sha512-y3UfqY9KD5XwWz3ndiiJ089Ij2QKeiXy/g1/tlAN/F1AaWsnkHEHMLxCP1BIqmMpwsX7rZjMLN7G5Lp7c9682A== +"@tiptap/extension-blockquote@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-blockquote/-/extension-blockquote-3.20.0.tgz#92e4a8ed00cf4fcab056766b848fc0a551847e5b" + integrity sha512-LQzn6aGtL4WXz2+rYshl/7/VnP2qJTpD7fWL96GXAzhqviPEY1bJES7poqJb3MU/gzl8VJUVzVzU1VoVfUKlbA== -"@tiptap/extension-bold@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-bold/-/extension-bold-3.19.0.tgz#ef0ddfd9b242ef9c25e3348aef9bf2dc681cdc19" - integrity sha512-UZgb1d0XK4J/JRIZ7jW+s4S6KjuEDT2z1PPM6ugcgofgJkWQvRZelCPbmtSFd3kwsD+zr9UPVgTh9YIuGQ8t+Q== +"@tiptap/extension-bold@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-bold/-/extension-bold-3.20.0.tgz#4298d24cb6c7759f6233eec5e24e9fd7c7efdf38" + integrity sha512-sQklEWiyf58yDjiHtm5vmkVjfIc/cBuSusmCsQ0q9vGYnEF1iOHKhGpvnCeEXNeqF3fiJQRlquzt/6ymle3Iwg== "@tiptap/extension-bubble-menu@^3.13.0": version "3.13.0" @@ -2277,127 +2277,127 @@ dependencies: "@floating-ui/dom" "^1.0.0" -"@tiptap/extension-bullet-list@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-bullet-list/-/extension-bullet-list-3.19.0.tgz#acf12e952b6a5873dc20b58530f2f524807bbd6f" - integrity sha512-F9uNnqd0xkJbMmRxVI5RuVxwB9JaCH/xtRqOUNQZnRBt7IdAElCY+Dvb4hMCtiNv+enGM/RFGJuFHR9TxmI7rw== +"@tiptap/extension-bullet-list@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-bullet-list/-/extension-bullet-list-3.20.0.tgz#57bcba5988990f39cb71c7901173da9b4979523b" + integrity sha512-OcKMeopBbqWzhSi6o8nNz0aayogg1sfOAhto3NxJu3Ya32dwBFqmHXSYM6uW4jOphNvVPyjiq9aNRh3qTdd1dw== -"@tiptap/extension-code-block@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-code-block/-/extension-code-block-3.19.0.tgz#71a7a362b3fa68c1789c8b9ac224ca89eb410630" - integrity sha512-b/2qR+tMn8MQb+eaFYgVk4qXnLNkkRYmwELQ8LEtEDQPxa5Vl7J3eu8+4OyoIFhZrNDZvvoEp80kHMCP8sI6rg== +"@tiptap/extension-code-block@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-code-block/-/extension-code-block-3.20.0.tgz#5c00e8ae017c32ff4dd629447635a25fcb9d0f52" + integrity sha512-lBbmNek14aCjrHcBcq3PRqWfNLvC6bcRa2Osc6e/LtmXlcpype4f6n+Yx+WZ+f2uUh0UmDRCz7BEyUETEsDmlQ== -"@tiptap/extension-code@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-code/-/extension-code-3.19.0.tgz#15d53c139ad64d1debcc08c7ca5afbcc8e531f0b" - integrity sha512-2kqqQIXBXj2Or+4qeY3WoE7msK+XaHKL6EKOcKlOP2BW8eYqNTPzNSL+PfBDQ3snA7ljZQkTs/j4GYDj90vR1A== +"@tiptap/extension-code@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-code/-/extension-code-3.20.0.tgz#6aa18bc21ed8a3a6a899653c48add1cecc64783d" + integrity sha512-TYDWFeSQ9umiyrqsT6VecbuhL8XIHkUhO+gEk0sVvH67ZLwjFDhAIIgWIr1/dbIGPcvMZM19E7xUUhAdIaXaOQ== -"@tiptap/extension-document@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-document/-/extension-document-3.19.0.tgz#dfa6889cff748d489e0bc1028918bf4571372ba5" - integrity sha512-AOf0kHKSFO0ymjVgYSYDncRXTITdTcrj1tqxVazrmO60KNl1Rc2dAggDvIVTEBy5NvceF0scc7q3sE/5ZtVV7A== +"@tiptap/extension-document@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-document/-/extension-document-3.20.0.tgz#e10f92139c97354ab917f3095d4011d6703528f6" + integrity sha512-oJfLIG3vAtZo/wg29WiBcyWt22KUgddpP8wqtCE+kY5Dw8znLR9ehNmVWlSWJA5OJUMO0ntAHx4bBT+I2MBd5w== -"@tiptap/extension-dropcursor@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-dropcursor/-/extension-dropcursor-3.19.0.tgz#fbef441944842f23fe0a35154b519103166a4848" - integrity sha512-sf3dEZXiLvsGqVK2maUIzXY6qtYYCvBumag7+VPTMGQ0D4hiZ1X/4ukt4+6VXDg5R2WP1CoIt/QvUetUjWNhbQ== +"@tiptap/extension-dropcursor@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-dropcursor/-/extension-dropcursor-3.20.0.tgz#459d6c5d7e5f4dc1152246901387e000596fbb40" + integrity sha512-d+cxplRlktVgZPwatnc34IArlppM0IFKS1J5wLk+ba1jidizsbMVh45tP/BTK2flhyfRqcNoB5R0TArhUpbkNQ== "@tiptap/extension-floating-menu@^3.13.0": version "3.13.0" resolved "https://registry.yarnpkg.com/@tiptap/extension-floating-menu/-/extension-floating-menu-3.13.0.tgz#03d03292add49d1b380cdb1ff3890b2956d4e3f5" integrity sha512-OsezV2cMofZM4c13gvgi93IEYBUzZgnu8BXTYZQiQYekz4bX4uulBmLa1KOA9EN71FzS+SoLkXHU0YzlbLjlxA== -"@tiptap/extension-gapcursor@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-gapcursor/-/extension-gapcursor-3.19.0.tgz#64e5462a4ab2f0bd110738410dcbf3597d76349f" - integrity sha512-w7DACS4oSZaDWjz7gropZHPc9oXqC9yERZTcjWxyORuuIh1JFf0TRYspleK+OK28plK/IftojD/yUDn1MTRhvA== +"@tiptap/extension-gapcursor@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-gapcursor/-/extension-gapcursor-3.20.0.tgz#df89dd19417c020c6e9529e2db5077d08353e4a1" + integrity sha512-P/LasfvG9/qFq43ZAlNbAnPnXC+/RJf49buTrhtFvI9Zg0+Lbpjx1oh6oMHB19T88Y28KtrckfFZ8aTSUWDq6w== -"@tiptap/extension-hard-break@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-hard-break/-/extension-hard-break-3.19.0.tgz#7120524cec9ed4b957963693cb4c57cbecbaecf8" - integrity sha512-lAmQraYhPS5hafvCl74xDB5+bLuNwBKIEsVoim35I0sDJj5nTrfhaZgMJ91VamMvT+6FF5f1dvBlxBxAWa8jew== +"@tiptap/extension-hard-break@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-hard-break/-/extension-hard-break-3.20.0.tgz#fff1553d3b41ad32d3979d618f0f894cee926f46" + integrity sha512-rqvhMOw4f+XQmEthncbvDjgLH6fz8L9splnKZC7OeS0eX8b0qd7+xI1u5kyxF3KA2Z0BnigES++jjWuecqV6mA== -"@tiptap/extension-heading@^3.19.0", "@tiptap/extension-heading@^3.4.1": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-heading/-/extension-heading-3.19.0.tgz#d0bc93426c01a2ed36b9124c1a8205ab3945e77a" - integrity sha512-uLpLlfyp086WYNOc0ekm1gIZNlEDfmzOhKzB0Hbyi6jDagTS+p9mxUNYeYOn9jPUxpFov43+Wm/4E24oY6B+TQ== +"@tiptap/extension-heading@^3.20.0", "@tiptap/extension-heading@^3.4.1": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-heading/-/extension-heading-3.20.0.tgz#a16dbb625d91556399912fa110b04b2ad2dfd2e3" + integrity sha512-JgJhurnCe3eN6a0lEsNQM/46R1bcwzwWWZEFDSb1P9dR8+t1/5v7cMZWsSInpD7R4/74iJn0+M5hcXLwCmBmYA== -"@tiptap/extension-horizontal-rule@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-3.19.0.tgz#0e77078fcd53beca786277ce83d259e2103cc361" - integrity sha512-iqUHmgMGhMgYGwG6L/4JdelVQ5Mstb4qHcgTGd/4dkcUOepILvhdxajPle7OEdf9sRgjQO6uoAU5BVZVC26+ng== +"@tiptap/extension-horizontal-rule@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-3.20.0.tgz#53ffe2f9b9627f27f85b02d75878583dfb044107" + integrity sha512-6uvcutFMv+9wPZgptDkbRDjAm3YVxlibmkhWD5GuaWwS9L/yUtobpI3GycujRSUZ8D3q6Q9J7LqpmQtQRTalWA== "@tiptap/extension-image@^3.4.1": version "3.13.0" resolved "https://registry.yarnpkg.com/@tiptap/extension-image/-/extension-image-3.13.0.tgz#55edb952e86c2ebed436cd53def8b2e743d71d7e" integrity sha512-223uzLUkIa1rkK7aQK3AcIXe6LbCtmnpVb7sY5OEp+LpSaSPyXwyrZ4A0EO1o98qXG68/0B2OqMntFtA9c5Fbw== -"@tiptap/extension-italic@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-italic/-/extension-italic-3.19.0.tgz#af2a9c095ec846e379041f3e17e1dd101a5a4bf8" - integrity sha512-6GffxOnS/tWyCbDkirWNZITiXRta9wrCmrfa4rh+v32wfaOL1RRQNyqo9qN6Wjyl1R42Js+yXTzTTzZsOaLMYA== +"@tiptap/extension-italic@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-italic/-/extension-italic-3.20.0.tgz#176c2080a75082d296797618c2ed84e9defc7ef9" + integrity sha512-/DhnKQF8yN8RxtuL8abZ28wd5281EaGoE2Oha35zXSOF1vNYnbyt8Ymkv/7u1BcWEWTvRPgaju0YCGXisPRLYw== -"@tiptap/extension-link@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-link/-/extension-link-3.19.0.tgz#e8e656735bda6ca1d4b6577821e06274ab0ff6c8" - integrity sha512-HEGDJnnCPfr7KWu7Dsq+eRRe/mBCsv6DuI+7fhOCLDJjjKzNgrX2abbo/zG3D/4lCVFaVb+qawgJubgqXR/Smw== +"@tiptap/extension-link@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-link/-/extension-link-3.20.0.tgz#b3f2d89aabb88ed1eb66925e59fe82d1d2b866e9" + integrity sha512-qI/5A+R0ZWBxo/8HxSn1uOyr7odr3xHBZ/gzOR1GUJaZqjlJxkWFX0RtXMbLKEGEvT25o345cF7b0wFznEh8qA== dependencies: linkifyjs "^4.3.2" -"@tiptap/extension-list-item@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-list-item/-/extension-list-item-3.19.0.tgz#b2218ff6be694b581fd7d817810a33ee1c218311" - integrity sha512-VsSKuJz4/Tb6ZmFkXqWpDYkRzmaLTyE6dNSEpNmUpmZ32sMqo58mt11/huADNwfBFB0Ve7siH/VnFNIJYY3xvg== +"@tiptap/extension-list-item@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-list-item/-/extension-list-item-3.20.0.tgz#60ec36a3326d3bf28982b653b63f6cab5c7d9d9f" + integrity sha512-qEtjaaGPuqaFB4VpLrGDoIe9RHnckxPfu6d3rc22ap6TAHCDyRv05CEyJogqccnFceG/v5WN4znUBER8RWnWHA== -"@tiptap/extension-list-keymap@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-list-keymap/-/extension-list-keymap-3.19.0.tgz#41b87b154560aad92e779bff5c6e32e125b792ea" - integrity sha512-bxgmAgA3RzBGA0GyTwS2CC1c+QjkJJq9hC+S6PSOWELGRiTbwDN3MANksFXLjntkTa0N5fOnL27vBHtMStURqw== +"@tiptap/extension-list-keymap@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-list-keymap/-/extension-list-keymap-3.20.0.tgz#3e49292b0cdf0a7b6d8f08ae5acdd7014c15cdc1" + integrity sha512-Z4GvKy04Ms4cLFN+CY6wXswd36xYsT2p/YL0V89LYFMZTerOeTjFYlndzn6svqL8NV1PRT5Diw4WTTxJSmcJPA== -"@tiptap/extension-list@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-list/-/extension-list-3.19.0.tgz#737dcb56ba9838a4431c1afb035bd622fab46d21" - integrity sha512-N6nKbFB2VwMsPlCw67RlAtYSK48TAsAUgjnD+vd3ieSlIufdQnLXDFUP6hFKx9mwoUVUgZGz02RA6bkxOdYyTw== +"@tiptap/extension-list@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-list/-/extension-list-3.20.0.tgz#17d379fe34e09a9b42ab620f7ff571826485c7d5" + integrity sha512-+V0/gsVWAv+7vcY0MAe6D52LYTIicMSHw00wz3ISZgprSb2yQhJ4+4gurOnUrQ4Du3AnRQvxPROaofwxIQ66WQ== -"@tiptap/extension-ordered-list@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-ordered-list/-/extension-ordered-list-3.19.0.tgz#f6f8bfe41d3429c505b44764b473b6dfd7bcd2a1" - integrity sha512-cxGsINquwHYE1kmhAcLNLHAofmoDEG6jbesR5ybl7tU5JwtKVO7S/xZatll2DU1dsDAXWPWEeeMl4e/9svYjCg== +"@tiptap/extension-ordered-list@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-ordered-list/-/extension-ordered-list-3.20.0.tgz#ec449716854d496ef7c1ea9243c2c467fa5d3cb1" + integrity sha512-jVKnJvrizLk7etwBMfyoj6H2GE4M+PD4k7Bwp6Bh1ohBWtfIA1TlngdS842Mx5i1VB2e3UWIwr8ZH46gl6cwMA== -"@tiptap/extension-paragraph@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-paragraph/-/extension-paragraph-3.19.0.tgz#91adde189aabf13a2bfbb2d961833d3bc2bc055f" - integrity sha512-xWa6gj82l5+AzdYyrSk9P4ynySaDzg/SlR1FarXE5yPXibYzpS95IWaVR0m2Qaz7Rrk+IiYOTGxGRxcHLOelNg== +"@tiptap/extension-paragraph@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-paragraph/-/extension-paragraph-3.20.0.tgz#b1778746021ac38894287d62d9429ac309a632ef" + integrity sha512-mM99zK4+RnEXIMCv6akfNATAs0Iija6FgyFA9J9NZ6N4o8y9QiNLLa6HjLpAC+W+VoCgQIekyoF/Q9ftxmAYDQ== -"@tiptap/extension-strike@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-strike/-/extension-strike-3.19.0.tgz#eac7712cc791488f4c1c48baf3aed1a8d95f398c" - integrity sha512-xYpabHsv7PccLUBQaP8AYiFCnYbx6P93RHPd0lgNwhdOjYFd931Zy38RyoxPHAgbYVmhf1iyx7lpuLtBnhS5dA== +"@tiptap/extension-strike@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-strike/-/extension-strike-3.20.0.tgz#a1ec09a1a56aad98d6e7dc493d77547cad4403ee" + integrity sha512-0vcTZRRAiDfon3VM1mHBr9EFmTkkUXMhm0Xtdtn0bGe+sIqufyi+hUYTEw93EQOD9XNsPkrud6jzQNYpX2H3AQ== "@tiptap/extension-table@^3.19.0": version "3.19.0" resolved "https://registry.yarnpkg.com/@tiptap/extension-table/-/extension-table-3.19.0.tgz#a5f9be88e319f60dc7b8df1321f95a31b20fe991" integrity sha512-Lg8DlkkDUMYE/CcGOxoCWF98B2i7VWh+AGgqlF+XWrHjhlKHfENLRXm1a0vWuyyP3NknRYILoaaZ1s7QzmXKRA== -"@tiptap/extension-text@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-text/-/extension-text-3.19.0.tgz#353278c97bd8f5bdc29f06942fbd1e856bdb5b18" - integrity sha512-K95+SnbZy0h6hNFtfy23n8t/nOcTFEf69In9TSFVVmwn/Nwlke+IfiESAkqbt1/7sKJeegRXYO7WzFEmFl9Q/g== +"@tiptap/extension-text@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-text/-/extension-text-3.20.0.tgz#bdf0ac6e0c638c9dbb99a5a2b5a07db2b8cba1de" + integrity sha512-tf8bE8tSaOEWabCzPm71xwiUhyMFKqY9jkP5af3Kr1/F45jzZFIQAYZooHI/+zCHRrgJ99MQHKHe1ZNvODrKHQ== -"@tiptap/extension-underline@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extension-underline/-/extension-underline-3.19.0.tgz#bbc81d085725981d256127ab416f91d0802ec2a4" - integrity sha512-800MGEWfG49j10wQzAFiW/ele1HT04MamcL8iyuPNu7ZbjbGN2yknvdrJlRy7hZlzIrVkZMr/1tz62KN33VHIw== +"@tiptap/extension-underline@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extension-underline/-/extension-underline-3.20.0.tgz#535aebafc9e30da51df3be2c2065c49539535672" + integrity sha512-LzNXuy2jwR/y+ymoUqC72TiGzbOCjioIjsDu0MNYpHuHqTWPK5aV9Mh0nbZcYFy/7fPlV1q0W139EbJeYBZEAQ== -"@tiptap/extensions@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/extensions/-/extensions-3.19.0.tgz#5747c0ebf460b9669e8b4362561872448f66abfe" - integrity sha512-ZmGUhLbMWaGqnJh2Bry+6V4M6gMpUDYo4D1xNux5Gng/E/eYtc+PMxMZ/6F7tNTAuujLBOQKj6D+4SsSm457jw== +"@tiptap/extensions@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/extensions/-/extensions-3.20.0.tgz#22bad09a1d861446e17e0d9732439940d80ed808" + integrity sha512-HIsXX942w3nbxEQBlMAAR/aa6qiMBEP7CsSMxaxmTIVAmW35p6yUASw6GdV1u0o3lCZjXq2OSRMTskzIqi5uLg== -"@tiptap/pm@^3.19.0", "@tiptap/pm@^3.4.1": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/pm/-/pm-3.19.0.tgz#5cb499c7b2603ec6550d0c7a70b924f27fdb7692" - integrity sha512-789zcnM4a8OWzvbD2DL31d0wbSm9BVeO/R7PLQwLIGysDI3qzrcclyZ8yhqOEVuvPitRRwYLq+mY14jz7kY4cw== +"@tiptap/pm@^3.20.0", "@tiptap/pm@^3.4.1": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/pm/-/pm-3.20.0.tgz#d9a1b92a1cb061059977952e6ec2afe8dff67857" + integrity sha512-jn+2KnQZn+b+VXr8EFOJKsnjVNaA4diAEr6FOazupMt8W8ro1hfpYtZ25JL87Kao/WbMze55sd8M8BDXLUKu1A== dependencies: prosemirror-changeset "^2.3.0" prosemirror-collab "^1.3.1" @@ -2430,35 +2430,35 @@ "@tiptap/extension-bubble-menu" "^3.13.0" "@tiptap/extension-floating-menu" "^3.13.0" -"@tiptap/starter-kit@^3.19.0": - version "3.19.0" - resolved "https://registry.yarnpkg.com/@tiptap/starter-kit/-/starter-kit-3.19.0.tgz#312440bd18c3cce379ea8eab3fe174b8141dd313" - integrity sha512-dTCkHEz+Y8ADxX7h+xvl6caAj+3nII/wMB1rTQchSuNKqJTOrzyUsCWm094+IoZmLT738wANE0fRIgziNHs/ug== - dependencies: - "@tiptap/core" "^3.19.0" - "@tiptap/extension-blockquote" "^3.19.0" - "@tiptap/extension-bold" "^3.19.0" - "@tiptap/extension-bullet-list" "^3.19.0" - "@tiptap/extension-code" "^3.19.0" - "@tiptap/extension-code-block" "^3.19.0" - "@tiptap/extension-document" "^3.19.0" - "@tiptap/extension-dropcursor" "^3.19.0" - "@tiptap/extension-gapcursor" "^3.19.0" - "@tiptap/extension-hard-break" "^3.19.0" - "@tiptap/extension-heading" "^3.19.0" - "@tiptap/extension-horizontal-rule" "^3.19.0" - "@tiptap/extension-italic" "^3.19.0" - "@tiptap/extension-link" "^3.19.0" - "@tiptap/extension-list" "^3.19.0" - "@tiptap/extension-list-item" "^3.19.0" - "@tiptap/extension-list-keymap" "^3.19.0" - "@tiptap/extension-ordered-list" "^3.19.0" - "@tiptap/extension-paragraph" "^3.19.0" - "@tiptap/extension-strike" "^3.19.0" - "@tiptap/extension-text" "^3.19.0" - "@tiptap/extension-underline" "^3.19.0" - "@tiptap/extensions" "^3.19.0" - "@tiptap/pm" "^3.19.0" +"@tiptap/starter-kit@^3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@tiptap/starter-kit/-/starter-kit-3.20.0.tgz#d356f15632c52f90e8eea8b5c912cab3b01b0866" + integrity sha512-W4+1re35pDNY/7rpXVg+OKo/Fa4Gfrn08Bq3E3fzlJw6gjE3tYU8dY9x9vC2rK9pd9NOp7Af11qCFDaWpohXkw== + dependencies: + "@tiptap/core" "^3.20.0" + "@tiptap/extension-blockquote" "^3.20.0" + "@tiptap/extension-bold" "^3.20.0" + "@tiptap/extension-bullet-list" "^3.20.0" + "@tiptap/extension-code" "^3.20.0" + "@tiptap/extension-code-block" "^3.20.0" + "@tiptap/extension-document" "^3.20.0" + "@tiptap/extension-dropcursor" "^3.20.0" + "@tiptap/extension-gapcursor" "^3.20.0" + "@tiptap/extension-hard-break" "^3.20.0" + "@tiptap/extension-heading" "^3.20.0" + "@tiptap/extension-horizontal-rule" "^3.20.0" + "@tiptap/extension-italic" "^3.20.0" + "@tiptap/extension-link" "^3.20.0" + "@tiptap/extension-list" "^3.20.0" + "@tiptap/extension-list-item" "^3.20.0" + "@tiptap/extension-list-keymap" "^3.20.0" + "@tiptap/extension-ordered-list" "^3.20.0" + "@tiptap/extension-paragraph" "^3.20.0" + "@tiptap/extension-strike" "^3.20.0" + "@tiptap/extension-text" "^3.20.0" + "@tiptap/extension-underline" "^3.20.0" + "@tiptap/extensions" "^3.20.0" + "@tiptap/pm" "^3.20.0" "@trysound/sax@0.2.0": version "0.2.0" From 85673f6556c43ea91506af9c4335b895ec42e127 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Feb 2026 23:44:39 +0000 Subject: [PATCH 03/34] Bump i18next from 25.5.2 to 25.8.13 Bumps [i18next](https://github.com/i18next/i18next) from 25.5.2 to 25.8.13. - [Release notes](https://github.com/i18next/i18next/releases) - [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md) - [Commits](https://github.com/i18next/i18next/compare/v25.5.2...v25.8.13) --- updated-dependencies: - dependency-name: i18next dependency-version: 25.8.13 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index d575cae8d4cb..e9b3b606b37b 100644 --- a/package.json +++ b/package.json @@ -61,7 +61,7 @@ "export-to-csv": "^1.3.0", "formik": "2.4.9", "gray-matter": "4.0.3", - "i18next": "25.5.2", + "i18next": "25.8.13", "javascript-time-ago": "^2.6.2", "jspdf": "^4.1.0", "jspdf-autotable": "^5.0.7", diff --git a/yarn.lock b/yarn.lock index 435c9b238443..668cf1e54e8d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4898,12 +4898,12 @@ hyphen@^1.6.4: resolved "https://registry.yarnpkg.com/hyphen/-/hyphen-1.10.6.tgz#0e779d280e696102b97d7e42f5ca5de2cc97e274" integrity sha512-fXHXcGFTXOvZTSkPJuGOQf5Lv5T/R2itiiCVPg9LxAje5D00O0pP83yJShFq5V89Ly//Gt6acj7z8pbBr34stw== -i18next@25.5.2: - version "25.5.2" - resolved "https://registry.yarnpkg.com/i18next/-/i18next-25.5.2.tgz#16efa309e154d46dac7583e6a315ccb47e3e3a10" - integrity sha512-lW8Zeh37i/o0zVr+NoCHfNnfvVw+M6FQbRp36ZZ/NyHDJ3NJVpp2HhAUyU9WafL5AssymNoOjMRB48mmx2P6Hw== +i18next@25.8.13: + version "25.8.13" + resolved "https://registry.yarnpkg.com/i18next/-/i18next-25.8.13.tgz#1f9df59329f1706f02b2b58b5d1f75196ddb6e4a" + integrity sha512-E0vzjBY1yM+nsFrtgkjLhST2NBkirkvOVoQa0MSldhsuZ3jUge7ZNpuwG0Cfc74zwo5ZwRzg3uOgT+McBn32iA== dependencies: - "@babel/runtime" "^7.27.6" + "@babel/runtime" "^7.28.4" ignore@^5.2.0: version "5.3.2" From ff82c7427406e7698fb0aae81ffa415fcd8e4389 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Feb 2026 23:45:25 +0000 Subject: [PATCH 04/34] Bump bhermann/issue-volunteer from 0.1.12 to 0.1.20 Bumps [bhermann/issue-volunteer](https://github.com/bhermann/issue-volunteer) from 0.1.12 to 0.1.20. - [Release notes](https://github.com/bhermann/issue-volunteer/releases) - [Commits](https://github.com/bhermann/issue-volunteer/compare/v0.1.12...v0.1.20) --- updated-dependencies: - dependency-name: bhermann/issue-volunteer dependency-version: 0.1.20 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/Assign_Issue_Volunteer.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/Assign_Issue_Volunteer.yml b/.github/workflows/Assign_Issue_Volunteer.yml index 23ef1d16ffc0..fe199038b2e5 100644 --- a/.github/workflows/Assign_Issue_Volunteer.yml +++ b/.github/workflows/Assign_Issue_Volunteer.yml @@ -5,6 +5,6 @@ jobs: build: runs-on: ubuntu-slim steps: - - uses: bhermann/issue-volunteer@v0.1.12 + - uses: bhermann/issue-volunteer@v0.1.20 with: GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" From 61a9e9da57199fcd2dad9f1ff9a50e7d0488cfb8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Feb 2026 23:45:30 +0000 Subject: [PATCH 05/34] Bump JasonEtco/is-sponsor-label-action from 1.2.0 to 2.0.0 Bumps [JasonEtco/is-sponsor-label-action](https://github.com/jasonetco/is-sponsor-label-action) from 1.2.0 to 2.0.0. - [Release notes](https://github.com/jasonetco/is-sponsor-label-action/releases) - [Commits](https://github.com/jasonetco/is-sponsor-label-action/compare/v1.2.0...v2.0.0) --- updated-dependencies: - dependency-name: JasonEtco/is-sponsor-label-action dependency-version: 2.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/label_sponsor_requests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/label_sponsor_requests.yml b/.github/workflows/label_sponsor_requests.yml index bb9d6a31b427..28b84ea4e9b6 100644 --- a/.github/workflows/label_sponsor_requests.yml +++ b/.github/workflows/label_sponsor_requests.yml @@ -11,7 +11,7 @@ jobs: issues: write steps: - name: Sponsor Labels - uses: JasonEtco/is-sponsor-label-action@v1.2.0 + uses: JasonEtco/is-sponsor-label-action@v2.0.0 with: label: "Sponsor Priority" env: From 83b3e802dbad0924cffd8c7543d297c0e4d198c5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Feb 2026 23:45:35 +0000 Subject: [PATCH 06/34] Bump peter-evans/create-or-update-comment from 3 to 5 Bumps [peter-evans/create-or-update-comment](https://github.com/peter-evans/create-or-update-comment) from 3 to 5. - [Release notes](https://github.com/peter-evans/create-or-update-comment/releases) - [Commits](https://github.com/peter-evans/create-or-update-comment/compare/v3...v5) --- updated-dependencies: - dependency-name: peter-evans/create-or-update-comment dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/Comment_on_Issues.yml | 2 +- .github/workflows/auto_comments.yml | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/Comment_on_Issues.yml b/.github/workflows/Comment_on_Issues.yml index c408d8b38c84..6a6014f38dcd 100644 --- a/.github/workflows/Comment_on_Issues.yml +++ b/.github/workflows/Comment_on_Issues.yml @@ -12,7 +12,7 @@ jobs: issues: write steps: - name: Add Comment - uses: peter-evans/create-or-update-comment@v3 + uses: peter-evans/create-or-update-comment@v5 with: issue-number: ${{ github.event.issue.number }} body: | diff --git a/.github/workflows/auto_comments.yml b/.github/workflows/auto_comments.yml index 6cd003a36ae8..5955dfd28169 100644 --- a/.github/workflows/auto_comments.yml +++ b/.github/workflows/auto_comments.yml @@ -30,7 +30,7 @@ jobs: # 2) Post a sponsor-specific reply - name: Reply to !notasponsor if: contains(github.event.comment.body, '!notasponsor') - uses: peter-evans/create-or-update-comment@v3 + uses: peter-evans/create-or-update-comment@v5 with: issue-number: ${{ github.event.issue.number }} body: | @@ -51,7 +51,7 @@ jobs: # 3) If the comment includes '!support', classify as a support request - name: Reply to !support if: contains(github.event.comment.body, '!support') - uses: peter-evans/create-or-update-comment@v3 + uses: peter-evans/create-or-update-comment@v5 with: issue-number: ${{ github.event.issue.number }} body: | @@ -69,7 +69,7 @@ jobs: # 4) If the comment includes '!incomplete', note the bug or feature request is incomplete - name: Reply to !incomplete if: contains(github.event.comment.body, '!incomplete') - uses: peter-evans/create-or-update-comment@v3 + uses: peter-evans/create-or-update-comment@v5 with: issue-number: ${{ github.event.issue.number }} body: | From 03e9cf4b5f5c79a3798052c8446d1cf31122b546 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Feb 2026 23:45:41 +0000 Subject: [PATCH 07/34] Bump actions/github-script from 6 to 8 Bumps [actions/github-script](https://github.com/actions/github-script) from 6 to 8. - [Release notes](https://github.com/actions/github-script/releases) - [Commits](https://github.com/actions/github-script/compare/v6...v8) --- updated-dependencies: - dependency-name: actions/github-script dependency-version: '8' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/auto_comments.yml | 2 +- .github/workflows/pr_check.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/auto_comments.yml b/.github/workflows/auto_comments.yml index 6cd003a36ae8..ddb5fb4445b6 100644 --- a/.github/workflows/auto_comments.yml +++ b/.github/workflows/auto_comments.yml @@ -17,7 +17,7 @@ jobs: # 1) If the comment includes '!notasponsor', delete it using GitHub Script - name: Delete !notasponsor comment if: contains(github.event.comment.body, '!notasponsor') - uses: actions/github-script@v6 + uses: actions/github-script@v8 with: github-token: ${{ secrets.GITHUB_TOKEN }} script: | diff --git a/.github/workflows/pr_check.yml b/.github/workflows/pr_check.yml index 08cce1de130b..15b52ecd4e82 100644 --- a/.github/workflows/pr_check.yml +++ b/.github/workflows/pr_check.yml @@ -25,7 +25,7 @@ jobs: github.event.pull_request.head.repo.fork == true && ((github.event.pull_request.head.ref == 'main' || github.event.pull_request.head.ref == 'master') || (github.event.pull_request.base.ref == 'main' || github.event.pull_request.base.ref == 'master')) - uses: actions/github-script@v7 + uses: actions/github-script@v8 with: github-token: ${{ secrets.GITHUB_TOKEN }} script: | From 119f7a4745046fd310f94512208f4e42810ca403 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Feb 2026 23:45:46 +0000 Subject: [PATCH 08/34] Bump LanceMcCarthy/Action-AzureBlobUpload from 3.3.1 to 3.7.0 Bumps [LanceMcCarthy/Action-AzureBlobUpload](https://github.com/lancemccarthy/action-azureblobupload) from 3.3.1 to 3.7.0. - [Release notes](https://github.com/lancemccarthy/action-azureblobupload/releases) - [Commits](https://github.com/lancemccarthy/action-azureblobupload/compare/v3.3.1...v3.7.0) --- updated-dependencies: - dependency-name: LanceMcCarthy/Action-AzureBlobUpload dependency-version: 3.7.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/cipp_dev_build.yml | 2 +- .github/workflows/cipp_frontend_build.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cipp_dev_build.yml b/.github/workflows/cipp_dev_build.yml index 31d0f846d016..432d9363cade 100644 --- a/.github/workflows/cipp_dev_build.yml +++ b/.github/workflows/cipp_dev_build.yml @@ -47,7 +47,7 @@ jobs: # Upload to Azure Blob Storage - name: Azure Blob Upload - uses: LanceMcCarthy/Action-AzureBlobUpload@v3.3.1 + uses: LanceMcCarthy/Action-AzureBlobUpload@v3.7.0 with: connection_string: ${{ secrets.AZURE_CONNECTION_STRING }} container_name: cipp diff --git a/.github/workflows/cipp_frontend_build.yml b/.github/workflows/cipp_frontend_build.yml index d6df65f2320e..5db059b438a8 100644 --- a/.github/workflows/cipp_frontend_build.yml +++ b/.github/workflows/cipp_frontend_build.yml @@ -47,7 +47,7 @@ jobs: # Upload to Azure Blob Storage - name: Azure Blob Upload - uses: LanceMcCarthy/Action-AzureBlobUpload@v3.3.1 + uses: LanceMcCarthy/Action-AzureBlobUpload@v3.7.0 with: connection_string: ${{ secrets.AZURE_CONNECTION_STRING }} container_name: cipp From 35400890e5c6360e90895df09efcb079f8acaf28 Mon Sep 17 00:00:00 2001 From: Zacgoose <107489668+Zacgoose@users.noreply.github.com> Date: Thu, 26 Feb 2026 14:12:11 +0800 Subject: [PATCH 09/34] Send defaultDomainName in offboarding updates Include tenant defaultDomainName in offboarding update payloads and use tenantDetails.data?.id as the customerId fallback. Add an updateOffboardingDefaults.mutate call on reset to clear offboardingDefaults on the server, and disable the Reset button while an update is pending or tenant details are fetching to avoid concurrent actions. --- src/pages/tenant/manage/edit.js | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/pages/tenant/manage/edit.js b/src/pages/tenant/manage/edit.js index fdc18281a1f8..b96994fe7069 100644 --- a/src/pages/tenant/manage/edit.js +++ b/src/pages/tenant/manage/edit.js @@ -136,6 +136,15 @@ const Page = () => { }; offboardingFormControl.reset({ offboardingDefaults: defaultOffboardingValues }); + + updateOffboardingDefaults.mutate({ + url: "/api/EditTenantOffboardingDefaults", + data: { + customerId: tenantDetails.data?.id || currentTenant, + defaultDomainName: tenantDetails.data?.defaultDomainName || currentTenant, + offboardingDefaults: null, + }, + }); }; const title = "Manage Tenant"; @@ -275,7 +284,8 @@ const Page = () => { onClick={offboardingFormControl.handleSubmit((values) => { const offboardingSettings = values.offboardingDefaults || values; const formattedValues = { - customerId: currentTenant, + customerId: tenantDetails.data?.id || currentTenant, + defaultDomainName: tenantDetails.data?.defaultDomainName || currentTenant, offboardingDefaults: offboardingSettings, }; updateOffboardingDefaults.mutate({ @@ -309,6 +319,7 @@ const Page = () => { + + } + /> + { + if (response?.QueueId) { + setSyncQueueId(response.QueueId); + } + }, + }} + /> + ); }; -Page.getLayout = (page) => {page}; +Page.getLayout = (page) => {page}; export default Page; From c1787b7cc735dc587f33b60793c4d9927cff4712 Mon Sep 17 00:00:00 2001 From: John Duprey Date: Thu, 26 Feb 2026 17:44:56 -0500 Subject: [PATCH 20/34] Use report DB for ListMailboxes calls Add data: { UseReportDB: true } to /api/ListMailboxes requests so mailbox listings are fetched from the reporting database. Applied to CippMailboxRestoreDrawer and the mailbox-restore add form to ensure consistent mailbox results. --- src/components/CippComponents/CippMailboxRestoreDrawer.jsx | 1 + src/pages/email/tools/mailbox-restores/add.jsx | 1 + 2 files changed, 2 insertions(+) diff --git a/src/components/CippComponents/CippMailboxRestoreDrawer.jsx b/src/components/CippComponents/CippMailboxRestoreDrawer.jsx index 81e03bb4c659..ab8923e2c1b7 100644 --- a/src/components/CippComponents/CippMailboxRestoreDrawer.jsx +++ b/src/components/CippComponents/CippMailboxRestoreDrawer.jsx @@ -275,6 +275,7 @@ export const CippMailboxRestoreDrawer = ({ ItemCount: "ItemCount", }, url: "/api/ListMailboxes", + data: { UseReportDB: true }, showRefresh: true, }} validators={{ diff --git a/src/pages/email/tools/mailbox-restores/add.jsx b/src/pages/email/tools/mailbox-restores/add.jsx index a238c0c29b1a..0d9a74ba686a 100644 --- a/src/pages/email/tools/mailbox-restores/add.jsx +++ b/src/pages/email/tools/mailbox-restores/add.jsx @@ -126,6 +126,7 @@ const MailboxRestoreForm = () => { valueField: "UPN", addedField: { displayName: "displayName", ExchangeGuid: "ExchangeGuid" }, url: "/api/ListMailboxes", + data: { UseReportDB: true }, }} validators={{ validate: (value) => (value ? true : "Please select a target mailbox.") }} /> From 43104af427caac02cb3aece44b783882698d56c7 Mon Sep 17 00:00:00 2001 From: John Duprey Date: Thu, 26 Feb 2026 18:00:36 -0500 Subject: [PATCH 21/34] set required fields --- src/components/CippFormPages/CippAddEditUser.jsx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/components/CippFormPages/CippAddEditUser.jsx b/src/components/CippFormPages/CippAddEditUser.jsx index 87e8088861a0..4f3029976390 100644 --- a/src/components/CippFormPages/CippAddEditUser.jsx +++ b/src/components/CippFormPages/CippAddEditUser.jsx @@ -76,7 +76,7 @@ const CippAddEditUser = (props) => { const tenantGroupsList = tenantGroups?.data || []; return tenantGroupsList.filter( - (tenantGroup) => !userGroups?.data?.some((userGroup) => userGroup.id === tenantGroup.id) + (tenantGroup) => !userGroups?.data?.some((userGroup) => userGroup.id === tenantGroup.id), ); } return []; @@ -139,7 +139,7 @@ const CippAddEditUser = (props) => { const generatedUsername = generateUsername( formatString, watcher.givenName, - watcher.surname + watcher.surname, ); if (generatedUsername) { formControl.setValue("username", generatedUsername); @@ -153,7 +153,7 @@ const CippAddEditUser = (props) => { useEffect(() => { if (formType === "add" && userTemplates.isSuccess && !watcher.userTemplate) { const defaultTemplate = userTemplates.data?.find( - (template) => template.defaultForTenant === true + (template) => template.defaultForTenant === true, ); if (defaultTemplate) { formControl.setValue("userTemplate", { @@ -307,6 +307,7 @@ const CippAddEditUser = (props) => { onChange={(e) => { setDisplayNameManuallySet(true); }} + required={true} /> @@ -322,6 +323,7 @@ const CippAddEditUser = (props) => { onChange={(e) => { setUsernameManuallySet(true); }} + required={true} /> From 7656bc18caa21d874f88e29fd6526852c35612cc Mon Sep 17 00:00:00 2001 From: John Duprey Date: Thu, 26 Feb 2026 18:08:37 -0500 Subject: [PATCH 22/34] add validators --- src/components/CippFormPages/CippAddEditUser.jsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/components/CippFormPages/CippAddEditUser.jsx b/src/components/CippFormPages/CippAddEditUser.jsx index 4f3029976390..db64e6b2cf00 100644 --- a/src/components/CippFormPages/CippAddEditUser.jsx +++ b/src/components/CippFormPages/CippAddEditUser.jsx @@ -308,6 +308,7 @@ const CippAddEditUser = (props) => { setDisplayNameManuallySet(true); }} required={true} + validators={{ required: "Display Name is required" }} /> @@ -324,6 +325,7 @@ const CippAddEditUser = (props) => { setUsernameManuallySet(true); }} required={true} + validators={{ required: "Username is required" }} /> From 56e0df7a092ed5fc869d7a51976ce36c10d44dea Mon Sep 17 00:00:00 2001 From: John Duprey Date: Thu, 26 Feb 2026 18:10:32 -0500 Subject: [PATCH 23/34] add shouldDirty --- src/components/CippFormPages/CippAddEditUser.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/CippFormPages/CippAddEditUser.jsx b/src/components/CippFormPages/CippAddEditUser.jsx index db64e6b2cf00..1273be90a360 100644 --- a/src/components/CippFormPages/CippAddEditUser.jsx +++ b/src/components/CippFormPages/CippAddEditUser.jsx @@ -124,7 +124,7 @@ const CippAddEditUser = (props) => { displayName += selectedTemplate.displayName; } - formControl.setValue("displayName", displayName); + formControl.setValue("displayName", displayName, { shouldDirty: true }); } // Auto-generate username if template has usernameFormat @@ -142,7 +142,7 @@ const CippAddEditUser = (props) => { watcher.surname, ); if (generatedUsername) { - formControl.setValue("username", generatedUsername); + formControl.setValue("username", generatedUsername, { shouldDirty: true }); } } } From a3d6eb6393b61d6a9c2d94eb220065930872086f Mon Sep 17 00:00:00 2001 From: John Duprey Date: Thu, 26 Feb 2026 18:22:53 -0500 Subject: [PATCH 24/34] Preserve userTemplate on form resets Keep the currently selected userTemplate across form resets and copy operations. Updates in CippAddUserDrawer.jsx and add.jsx ensure the form retains userTemplate when copying properties. When a user is created or the add drawer is closed, the reset preserves the tenant default template (if current template has addedFields.defaultForTenant). In CippAddEditUser.jsx, add an effect to clear manual display/username flags and deselect the selected template when the add form fields are emptied, but only clear non-default templates. Also includes a minor JSX formatting adjustment for the create button label. --- .../CippComponents/CippAddUserDrawer.jsx | 34 +++++++++++++++---- .../CippFormPages/CippAddEditUser.jsx | 12 +++++++ .../identity/administration/users/add.jsx | 6 ++++ 3 files changed, 46 insertions(+), 6 deletions(-) diff --git a/src/components/CippComponents/CippAddUserDrawer.jsx b/src/components/CippComponents/CippAddUserDrawer.jsx index 6e8e333b317f..970ac9ca8333 100644 --- a/src/components/CippComponents/CippAddUserDrawer.jsx +++ b/src/components/CippComponents/CippAddUserDrawer.jsx @@ -52,16 +52,30 @@ export const CippAddUserDrawer = ({ } newFields.tenantFilter = userSettingsDefaults.currentTenant; + // Preserve the currently selected template when copying properties + const currentTemplate = formControl.getValues("userTemplate"); + if (currentTemplate) { + newFields.userTemplate = currentTemplate; + } + formControl.reset(newFields); } }, [formValues]); useEffect(() => { if (createUser.isSuccess) { - formControl.reset({ + const resetValues = { tenantFilter: userSettingsDefaults.currentTenant, usageLocation: userSettingsDefaults.usageLocation, - }); + }; + + // Preserve the default template if it exists + const currentTemplate = formControl.getValues("userTemplate"); + if (currentTemplate?.addedFields?.defaultForTenant) { + resetValues.userTemplate = currentTemplate; + } + + formControl.reset(resetValues); } }, [createUser.isSuccess]); @@ -84,10 +98,18 @@ export const CippAddUserDrawer = ({ const handleCloseDrawer = () => { setDrawerVisible(false); - formControl.reset({ + const resetValues = { tenantFilter: userSettingsDefaults.currentTenant, usageLocation: userSettingsDefaults.usageLocation, - }); + }; + + // Preserve the default template if it exists + const currentTemplate = formControl.getValues("userTemplate"); + if (currentTemplate?.addedFields?.defaultForTenant) { + resetValues.userTemplate = currentTemplate; + } + + formControl.reset(resetValues); }; return ( @@ -117,8 +139,8 @@ export const CippAddUserDrawer = ({ {createUser.isPending ? "Creating User..." : createUser.isSuccess - ? "Create Another User" - : "Create User"} + ? "Create Another User" + : "Create User"}