+ {nightly ? (
+
+ You are using a nightly build. This version is built from the
+ latest development branch and may not have release notes.
+
+ ) : (
+ <>
+
+
+
+ >
+ )}
+
+
+
+
+
+ }
+ />
+ )
+}
+
+export default ModalAppUpdaterChangelog
diff --git a/web/containers/ModalAppUpdaterNotAvailable/index.tsx b/web/containers/ModalAppUpdaterNotAvailable/index.tsx
new file mode 100644
index 000000000..5f2b25fda
--- /dev/null
+++ b/web/containers/ModalAppUpdaterNotAvailable/index.tsx
@@ -0,0 +1,57 @@
+import React, { useEffect, useState } from 'react'
+
+import { Button, Modal } from '@janhq/joi'
+
+import { useAtom } from 'jotai'
+
+import LogoMark from '../Brand/Logo/Mark'
+
+import { appUpdateNotAvailableAtom } from '@/helpers/atoms/App.atom'
+
+const ModalAppUpdaterNotAvailable = () => {
+ const [appUpdateNotAvailable, setAppUpdateNotAvailable] = useAtom(
+ appUpdateNotAvailableAtom
+ )
+
+ const [open, setOpen] = useState(appUpdateNotAvailable)
+
+ useEffect(() => {
+ setOpen(appUpdateNotAvailable)
+ }, [appUpdateNotAvailable])
+
+ return (
+