Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
68d3580
Bump @mui/x-date-pickers from 8.22.0 to 8.25.0
dependabot[bot] Jan 16, 2026
bae8475
Bump @mui/material from 7.3.2 to 7.3.7
dependabot[bot] Jan 16, 2026
91d8fbb
Bump next from 15.5.9 to 16.1.2
dependabot[bot] Jan 16, 2026
60d3cc1
Bump react from 19.1.1 to 19.2.3
dependabot[bot] Jan 16, 2026
5cf55c3
Bump react-error-boundary from 6.0.0 to 6.1.0
dependabot[bot] Jan 16, 2026
32c7cdf
Update index.js
JohnDuprey Jan 21, 2026
8366ae5
feat: removal of ips and countries in named locations now have dropdo…
kris6673 Jan 21, 2026
da9766d
feat(named-locations): update conditions for removal actions
kris6673 Jan 21, 2026
4df236e
feat(named-locations): add IP validation for CIDR format
kris6673 Jan 21, 2026
35365fd
feat: Update country options to exclude already selected countries.
kris6673 Jan 21, 2026
56e7ec1
feat(validators): enhance validation for country and IP inputs
kris6673 Jan 21, 2026
3f6dfd7
Ensure dashboard cards fill container height
Zacgoose Jan 23, 2026
81988f2
Merge pull request #5256 from Zacgoose/Dashboard-fixes
KelvinTegelaar Jan 23, 2026
b921a7a
Merge pull request #5247 from kris6673/remove-namedlocations
KelvinTegelaar Jan 23, 2026
856849a
Merge pull request #5207 from KelvinTegelaar/dependabot/npm_and_yarn/…
KelvinTegelaar Jan 23, 2026
f8a9e15
Merge pull request #5206 from KelvinTegelaar/dependabot/npm_and_yarn/…
KelvinTegelaar Jan 23, 2026
8970738
Merge pull request #5205 from KelvinTegelaar/dependabot/npm_and_yarn/…
KelvinTegelaar Jan 23, 2026
bb52501
Merge pull request #5204 from KelvinTegelaar/dependabot/npm_and_yarn/…
KelvinTegelaar Jan 23, 2026
2c0f35b
Merge pull request #5203 from KelvinTegelaar/dependabot/npm_and_yarn/…
KelvinTegelaar Jan 23, 2026
d9f7a9a
Turbopack!
KelvinTegelaar Jan 23, 2026
1f327c0
Migrate import paths
KelvinTegelaar Jan 23, 2026
cecfd26
migrate more import paths
KelvinTegelaar Jan 23, 2026
4c9366a
Enhance partner tenant info display in deployment wizard
JohnDuprey Jan 25, 2026
24ad050
Remove redundant section headers from results components
JohnDuprey Jan 25, 2026
919dd4a
Update react-dom and remove unused React import
JohnDuprey Jan 25, 2026
4dd5d07
Improve partner tenant connection UX in CippTenantModeDeploy
JohnDuprey Jan 25, 2026
c7e527f
Add retry logic for AADSTS650051 in token exchange
JohnDuprey Jan 25, 2026
37f8b18
Reorder CippApiResults components in tenant deploy
JohnDuprey Jan 25, 2026
0e7a736
Update CippTranslations.jsx
JohnDuprey Jan 25, 2026
4932a13
Improve appId refetch logic and add retry for AADSTS650051
JohnDuprey Jan 25, 2026
8c23378
Add queryKey props to tenant components
JohnDuprey Jan 25, 2026
01bbccf
Limit separate tenant scopes
JohnDuprey Jan 25, 2026
111465c
Update CippTenantModeDeploy.jsx
JohnDuprey Jan 25, 2026
bd9b260
Add scope prop to AuthButton in CippTenantModeDeploy
JohnDuprey Jan 25, 2026
df7a1a7
Add authentication prompt to M365 OAuth button
JohnDuprey Jan 25, 2026
98fd367
Show current tenant info in token update wizard
JohnDuprey Jan 25, 2026
219ffe7
Refetch appIdInfo after successful refresh token storage
JohnDuprey Jan 25, 2026
df4e0a9
ci(workflows): update runners to use ubuntu-slim
kris6673 Jan 25, 2026
a5ad4e5
fix(devices): update action to reset device passcode
kris6673 Jan 25, 2026
c4ee199
Update permissions for Setup Wizard and Custom Data
JohnDuprey Jan 26, 2026
9871bcd
Added standard to enable windows diagnostic data settings in Intune
ngms-psh Jan 27, 2026
2bd2ffd
Merge pull request #5272 from ngms-psh/feat-intuneWindowsDiagData
KelvinTegelaar Jan 27, 2026
9b5f8cb
feat: add new calendar configuration options for room mailbox
kris6673 Jan 28, 2026
5daaf97
feat: add refresh button to room mailbox edit page
kris6673 Jan 28, 2026
5fe7d07
fix: use skeleton while refreshing data instead of spinner
kris6673 Jan 28, 2026
f5a408a
feat: enhance InactiveLicensedUsers alert
kris6673 Jan 28, 2026
504fd9f
Merge pull request #5283 from kris6673/issue5273
KelvinTegelaar Jan 29, 2026
d8e745b
Merge pull request #5282 from kris6673/room-options
KelvinTegelaar Jan 29, 2026
3c4a88f
Merge pull request #5264 from kris6673/ios-remove-passcode
KelvinTegelaar Jan 29, 2026
fa1dd40
Merge pull request #5263 from kris6673/slimming
KelvinTegelaar Jan 29, 2026
c2b7653
add mfa report jumps
KelvinTegelaar Jan 29, 2026
637cb4f
added sanKey link props
KelvinTegelaar Jan 29, 2026
cb51d69
string type checking
KelvinTegelaar Jan 29, 2026
e8d4bdb
add formatting for assignedUsers
KelvinTegelaar Jan 29, 2026
31f1700
prettification
KelvinTegelaar Jan 29, 2026
7987bd2
comma instead of linebreak for when processing in excel.
KelvinTegelaar Jan 29, 2026
c1d667d
remove quad9 as valid resolved
KelvinTegelaar Jan 29, 2026
96ebf9d
Bump version to 10.0.6
JohnDuprey Jan 29, 2026
1006052
Merge pull request #5293 from KelvinTegelaar/dev
JohnDuprey Jan 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
8 changes: 4 additions & 4 deletions .github/workflows/Assign_Issue_Volunteer.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
name: 'Assign Issue to Volunteer'
on: [issue_comment] # yamllint disable-line rule:truthy
name: "Assign Issue to Volunteer"
on: [issue_comment] # yamllint disable-line rule:truthy
jobs:
build:
runs-on: ubuntu-latest
runs-on: ubuntu-slim
steps:
- uses: bhermann/issue-volunteer@v0.1.12
with:
GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}'
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
2 changes: 1 addition & 1 deletion .github/workflows/Check_for_Version_Update.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
build:
if: github.repository_owner == 'KelvinTegelaar'
name: "Check for Version Update"
runs-on: ubuntu-latest
runs-on: ubuntu-slim
steps:
- name: Check for Changed Files
uses: brettcannon/check-for-changed-files@v1.1.0
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/Close_Stale_Issues_and_PRs.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
---
name: 'Close stale issues and PRs'
name: "Close stale issues and PRs"
on:
schedule:
- cron: '30 1 * * *'
- cron: "30 1 * * *"
jobs:
stale:
if: github.repository_owner == 'KelvinTegelaar'
runs-on: ubuntu-latest
runs-on: ubuntu-slim
steps:
- uses: actions/stale@v4
with:
stale-issue-message: 'This issue is stale because it has been open 10 days with no activity. We will close this issue soon. If you want this feature implemented you can contribute it. See: https://docs.cipp.app/dev-documentation/contributing-to-the-code . Please notify the team if you are working on this yourself.'
close-issue-message: 'This issue was closed because it has been stalled for 14 days with no activity.'
stale-issue-label: 'no-activity'
exempt-issue-labels: 'planned,bug,roadmap'
stale-issue-message: "This issue is stale because it has been open 10 days with no activity. We will close this issue soon. If you want this feature implemented you can contribute it. See: https://docs.cipp.app/dev-documentation/contributing-to-the-code . Please notify the team if you are working on this yourself."
close-issue-message: "This issue was closed because it has been stalled for 14 days with no activity."
stale-issue-label: "no-activity"
exempt-issue-labels: "planned,bug,roadmap"
days-before-stale: 9
days-before-close: 5
4 changes: 2 additions & 2 deletions .github/workflows/Comment_on_Issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
jobs:
add-comment_bug:
if: github.repository_owner == 'KelvinTegelaar' && github.event.label.name == 'unconfirmed-by-user'
runs-on: ubuntu-latest
runs-on: ubuntu-slim
permissions:
issues: write
steps:
Expand All @@ -18,5 +18,5 @@ jobs:
body: |
Thank you for reporting a potential bug. If you would like to work on this bug, please comment:
> I would like to work on this please!
Thank you for helping us maintain the project!
8 changes: 4 additions & 4 deletions .github/workflows/Label_Issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,23 @@ on:
jobs:
label_issues_bugs:
if: github.repository_owner == 'KelvinTegelaar' && contains(github.event.issue.title, 'Bug')
runs-on: ubuntu-latest
runs-on: ubuntu-slim
permissions:
issues: write
steps:
- name: Label Issues
uses: andymckay/labeler@5c59dabdfd4dd5bd9c6e6d255b01b9d764af4414
with:
add-labels: 'not-assigned'
add-labels: "not-assigned"
repo-token: ${{ secrets.GITHUB_TOKEN }}
label_issues_frs:
if: github.repository_owner == 'KelvinTegelaar' && contains(github.event.issue.title, 'Feature')
runs-on: ubuntu-latest
runs-on: ubuntu-slim
permissions:
issues: write
steps:
- name: Label Issues
uses: andymckay/labeler@5c59dabdfd4dd5bd9c6e6d255b01b9d764af4414
with:
add-labels: 'enhancement, not-assigned'
add-labels: "enhancement, not-assigned"
repo-token: ${{ secrets.GITHUB_TOKEN }}
2 changes: 1 addition & 1 deletion .github/workflows/auto_comments.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:

jobs:
handle_comment:
runs-on: ubuntu-latest
runs-on: ubuntu-slim
# We need permissions to modify issue comments.
# 'issues: write' is required for deleting comments.
permissions:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/label_sponsor_requests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ on:
jobs:
label_issues_bugs:
if: github.repository_owner == 'KelvinTegelaar' && contains(github.event.issue.title, 'Bug')
runs-on: ubuntu-latest
runs-on: ubuntu-slim
permissions:
issues: write
steps:
- name: Sponsor Labels
uses: JasonEtco/is-sponsor-label-action@v1.2.0
with:
label: 'Sponsor Priority'
label: "Sponsor Priority"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
6 changes: 3 additions & 3 deletions .github/workflows/pr_check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ permissions:

jobs:
check-branch:
runs-on: ubuntu-latest
runs-on: ubuntu-slim
steps:
- name: Check and Comment on PR
# Only process fork PRs with specific branch conditions
Expand Down Expand Up @@ -46,14 +46,14 @@ jobs:
}
message += '🔒 This PR will now be automatically closed due to the above rules.';
// Post the comment
await github.rest.issues.createComment({
...context.repo,
issue_number: context.issue.number,
body: message
});
// Close the PR
await github.rest.pulls.update({
...context.repo,
Expand Down
13 changes: 7 additions & 6 deletions next.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@ const config = {
images: {
unoptimized: true,
},
webpack(config) {
config.module.rules.push({
test: /\.svg$/,
use: ["@svgr/webpack"],
});
return config;
turbopack: {
rules: {
"*.svg": {
loaders: ["@svgr/webpack"],
as: "*.js",
},
},
},
async redirects() {
return [];
Expand Down
14 changes: 7 additions & 7 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "cipp",
"version": "10.0.3",
"version": "10.0.6",
"author": "CIPP Contributors",
"homepage": "https://cipp.app/",
"bugs": {
Expand Down Expand Up @@ -32,9 +32,9 @@
"@monaco-editor/react": "^4.6.0",
"@mui/icons-material": "7.3.2",
"@mui/lab": "7.0.0-beta.17",
"@mui/material": "7.3.2",
"@mui/material": "7.3.7",
"@mui/system": "7.3.2",
"@mui/x-date-pickers": "^8.11.1",
"@mui/x-date-pickers": "^8.25.0",
"@musement/iso-duration": "^1.0.0",
"@nivo/core": "^0.99.0",
"@nivo/sankey": "^0.99.0",
Expand Down Expand Up @@ -72,18 +72,18 @@
"material-react-table": "^3.0.1",
"monaco-editor": "^0.53.0",
"mui-tiptap": "^1.14.0",
"next": "^15.2.2",
"next": "^16.1.2",
"nprogress": "0.2.0",
"numeral": "2.0.6",
"prop-types": "15.8.1",
"punycode": "^2.3.1",
"react": "19.1.1",
"react": "19.2.3",
"react-apexcharts": "1.7.0",
"react-beautiful-dnd": "13.1.1",
"react-copy-to-clipboard": "^5.1.0",
"react-dom": "19.1.1",
"react-dom": "19.2.3",
"react-dropzone": "14.3.8",
"react-error-boundary": "^6.0.0",
"react-error-boundary": "^6.1.0",
"react-grid-layout": "^1.5.0",
"react-hook-form": "^7.53.0",
"react-hot-toast": "2.6.0",
Expand Down
4 changes: 2 additions & 2 deletions public/version.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"version": "10.0.3"
}
"version": "10.0.6"
}
6 changes: 3 additions & 3 deletions src/components/CippCards/CippDomainCards.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,9 @@ import WarningIcon from "@mui/icons-material/Warning";
import HelpIcon from "@mui/icons-material/Help";
import MoreVertIcon from "@mui/icons-material/MoreVert";
import { Controller, useForm } from "react-hook-form";
import { ApiGetCall } from "/src/api/ApiCall";
import CippButtonCard from "/src/components/CippCards/CippButtonCard";
import { CippCodeBlock } from "/src/components/CippComponents/CippCodeBlock";
import { ApiGetCall } from "../../api/ApiCall";
import CippButtonCard from "./CippButtonCard";
import { CippCodeBlock } from "../CippComponents/CippCodeBlock";
import { CippOffCanvas } from "../CippComponents/CippOffCanvas";
import { CippPropertyListCard } from "./CippPropertyListCard";
import { getCippFormatting } from "../../utils/get-cipp-formatting";
Expand Down
4 changes: 2 additions & 2 deletions src/components/CippCards/CippExchangeInfoCard.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ import {
CircularProgress,
Alert,
} from "@mui/material";
import { PropertyList } from "/src/components/property-list";
import { PropertyListItem } from "/src/components/property-list-item";
import { PropertyList } from "../property-list";
import { PropertyListItem } from "../property-list-item";
import { getCippFormatting } from "../../utils/get-cipp-formatting";
import { Check as CheckIcon, Close as CloseIcon, Sync } from "@mui/icons-material";
import { LinearProgressWithLabel } from "../linearProgressWithLabel";
Expand Down
4 changes: 2 additions & 2 deletions src/components/CippCards/CippUserInfoCard.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ import {
CircularProgress,
} from "@mui/material";
import { AccountCircle, PhotoCamera, Delete } from "@mui/icons-material";
import { PropertyList } from "/src/components/property-list";
import { PropertyListItem } from "/src/components/property-list-item";
import { PropertyList } from "../property-list";
import { PropertyListItem } from "../property-list-item";
import { getCippFormatting } from "../../utils/get-cipp-formatting";
import { Stack, Grid, Box } from "@mui/system";
import { useState, useRef, useCallback } from "react";
Expand Down
91 changes: 89 additions & 2 deletions src/components/CippComponents/AuthMethodCard.jsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
import { Box, Card, CardHeader, CardContent, Typography, Skeleton } from "@mui/material";
import { People as UsersIcon } from "@mui/icons-material";
import { CippSankey } from "./CippSankey";
import { useRouter } from "next/router";

export const AuthMethodCard = ({ data, isLoading }) => {
const router = useRouter();

const processData = () => {
if (!data || !Array.isArray(data) || data.length === 0) {
return null;
Expand Down Expand Up @@ -110,8 +113,87 @@ export const AuthMethodCard = ({ data, isLoading }) => {

const processedData = processData();

const handleNodeClick = (node) => {
let filters = [];

switch (node.id) {
case "Users":
filters = [{ id: "AccountEnabled", value: "Yes" }];
break;
case "Single factor":
filters = [
{ id: "AccountEnabled", value: "Yes" },
{ id: "MFARegistration", value: "No" },
];
break;
case "Multi factor":
// Per-user MFA enabled/enforced
filters = [{ id: "AccountEnabled", value: "Yes" }];
break;
case "Phishable":
filters = [
{ id: "AccountEnabled", value: "Yes" },
{ id: "MFARegistration", value: "Yes" },
];
break;
case "Phish resistant":
filters = [
{ id: "AccountEnabled", value: "Yes" },
{ id: "MFARegistration", value: "Yes" },
];
break;
default:
return;
}

router.push({
pathname: "/identity/reports/mfa-report",
query: { filters: JSON.stringify(filters) },
});
};

const handleLinkClick = (link) => {
let filters = [];

if (link.source.id === "Users" && link.target.id === "Single factor") {
filters = [
{ id: "AccountEnabled", value: "Yes" },
{ id: "MFARegistration", value: "No" },
];
} else if (link.source.id === "Users" && link.target.id === "Multi factor") {
filters = [{ id: "AccountEnabled", value: "Yes" }];
} else if (link.source.id === "Users" && link.target.id === "Phishable") {
filters = [
{ id: "AccountEnabled", value: "Yes" },
{ id: "MFARegistration", value: "Yes" },
];
} else if (link.source.id === "Users" && link.target.id === "Phish resistant") {
filters = [
{ id: "AccountEnabled", value: "Yes" },
{ id: "MFARegistration", value: "Yes" },
];
} else if (link.source.id === "Phishable") {
filters = [
{ id: "AccountEnabled", value: "Yes" },
{ id: "MFARegistration", value: "Yes" },
];
} else if (link.source.id === "Phish resistant") {
filters = [
{ id: "AccountEnabled", value: "Yes" },
{ id: "MFARegistration", value: "Yes" },
];
}

if (filters.length > 0) {
router.push({
pathname: "/identity/reports/mfa-report",
query: { filters: JSON.stringify(filters) },
});
}
};

return (
<Card sx={{ flex: 1 }}>
<Card sx={{ flex: 1, height: "100%" }}>
<CardHeader
title={
<Box sx={{ display: "flex", alignItems: "center", gap: 1 }}>
Expand All @@ -126,14 +208,19 @@ export const AuthMethodCard = ({ data, isLoading }) => {
{isLoading ? (
<Skeleton variant="rectangular" width="100%" height={300} />
) : processedData ? (
<CippSankey data={{ nodes: processedData.nodes, links: processedData.links }} />
<CippSankey
data={{ nodes: processedData.nodes, links: processedData.links }}
onNodeClick={handleNodeClick}
onLinkClick={handleLinkClick}
/>
) : (
<Box
sx={{
display: "flex",
alignItems: "center",
justifyContent: "center",
height: "100%",
width: "100%",
}}
>
<Typography variant="body2" color="text.secondary">
Expand Down
2 changes: 1 addition & 1 deletion src/components/CippComponents/BPASyncDialog.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import {
import { Sync } from "@mui/icons-material";
import { useForm, FormProvider } from "react-hook-form";
import { CippFormTenantSelector } from "./CippFormTenantSelector";
import { ApiPostCall } from "/src/api/ApiCall";
import { ApiPostCall } from "../../api/ApiCall";
import { CippApiResults } from "./CippApiResults";

export const BPASyncDialog = ({ createDialog }) => {
Expand Down
2 changes: 1 addition & 1 deletion src/components/CippComponents/BreachSearchDialog.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { useState } from "react";
import { Dialog, DialogContent, DialogTitle, Button, DialogActions } from "@mui/material";
import { Search } from "@mui/icons-material";
import { useForm, FormProvider } from "react-hook-form";
import { ApiPostCall } from "/src/api/ApiCall";
import { ApiPostCall } from "../../api/ApiCall";
import { CippApiResults } from "./CippApiResults";
import { useSettings } from "../../hooks/use-settings";

Expand Down
Loading