Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "cipp",
"version": "10.4.4",
"version": "10.4.5",
"author": "CIPP Contributors",
"homepage": "https://cipp.app/",
"bugs": {
Expand Down
21 changes: 16 additions & 5 deletions public/manifest.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,26 @@
{
"short_name": "Carpatin",
"name": "Carpatin",
"short_name": "CIPP",
"name": "CIPP - CyberDrian Improved Partner Portal",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
},
{
"src": "android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png"
}
],
"start_url": ".",
"start_url": "/",
"scope": "/",
"display": "standalone",
"theme_color": "#000000",
"theme_color": "#ffffff",
"background_color": "#ffffff"
}
}
8 changes: 8 additions & 0 deletions public/sw.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
// Minimal service worker to satisfy Chrome's installability criteria.
// This does NOT cache anything or provide offline support — it simply
// passes all requests through to the network so Chrome treats the site
// as an installable web app.

self.addEventListener('install', () => self.skipWaiting())
self.addEventListener('activate', (event) => event.waitUntil(self.clients.claim()))
self.addEventListener('fetch', () => {})
2 changes: 1 addition & 1 deletion public/version.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"version": "10.4.4"
"version": "10.4.5"
}
2 changes: 1 addition & 1 deletion src/components/CippComponents/CippIntunePolicyDetails.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -60,5 +60,5 @@ export const CippIntunePolicyDetails = ({ row, tenant }) => {
)
}

return <CippJsonView object={settingsObject} type="intune" defaultOpen title="Policy Settings" />
return <CippJsonView object={settingsObject} type="intune" defaultOpen title="Policy Settings" tenant={tenantFilter} />
}
10 changes: 6 additions & 4 deletions src/components/CippFormPages/CippJSONView.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -248,27 +248,29 @@ function CippJsonView({
type,
defaultOpen = false,
title = 'Policy Details',
tenant = null,
}) {
const [viewJson, setViewJson] = useState(false)
const [accordionOpen, setAccordionOpen] = useState(defaultOpen)
const [drilldownData, setDrilldownData] = useState([]) // Array of { data, title }

const objectTenant =
tenant || object?.Tenant || object?.tenant || object?.TenantFilter || object?.tenantFilter || null

// Use the GUID resolver hook
const { guidMapping, isLoadingGuids, resolveGuids, isGuid } = useGuidResolver()
const { guidMapping, isLoadingGuids, resolveGuids, isGuid } = useGuidResolver(objectTenant)
const resolvedType =
type ||
(object?.omaSettings || object?.settings || object?.definitionValues || object?.added
? 'intune'
: undefined)
const adminTemplateTenant =
object?.Tenant || object?.tenant || object?.TenantFilter || object?.tenantFilter || null
const {
definitionsMap: addedDefinitionsMap,
isLoadingDefinitions,
isDefinitionsError,
} = useAdminTemplateDefinitions({
added: object?.added,
manualTenant: adminTemplateTenant,
manualTenant: objectTenant,
waiting: resolvedType === 'intune',
})

Expand Down
5 changes: 5 additions & 0 deletions src/pages/_app.js
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,11 @@ const App = (props) => {
useEffect(() => {
if (typeof window === 'undefined') return

// Register minimal service worker for Chrome installability
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/sw.js').catch(() => {})
}

const language = navigator.language || navigator.userLanguage || 'en-US'
const baseLang = language.split('-')[0]

Expand Down
6 changes: 6 additions & 0 deletions src/pages/_document.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,12 @@ class CustomDocument extends Document {
return (
<Html lang="en">
<Head>
<link rel="manifest" href="/manifest.json" />
<meta name="theme-color" content="#ffffff" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
<meta name="apple-mobile-web-app-title" content="CIPP" />
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
<link
rel="preconnect"
href="https://fonts.googleapis.com"
Expand Down