diff --git a/.env.dev b/.env.dev
index af51d161..b285a162 100644
--- a/.env.dev
+++ b/.env.dev
@@ -1,7 +1,7 @@
# .env.dev
NODE_ENV=dev
#VUE_APP_DEV_IP=demo.casaos.io
-VUE_APP_DEV_IP=10.0.0.71
+VUE_APP_DEV_IP=10.0.0.72
# VUE_APP_DEV_IP=10.147.20.1
# VUE_APP_DEV_IP=192.168.2.15
# VUE_APP_DEV_IP=192.168.2.219
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index b0a6b032..14206eae 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -13,7 +13,7 @@ dependencies:
version: 0.4.9-alpha7
'@icewhale/casaos-openapi':
specifier: latest
- version: 0.4.9-0883f5f
+ version: 0.4.11-3a835c0
'@icewhale/icewhale-files-openapi':
specifier: 1.2.2-alpha4
version: 1.2.2-alpha4
@@ -1662,8 +1662,8 @@ packages:
- debug
dev: false
- /@icewhale/casaos-openapi@0.4.9-0883f5f:
- resolution: {integrity: sha512-GRf+D3rTPo6OLHzbNGOEPHEavBru7xu4ii2hDQW28YgYy9cues6lxHRXnvocDHvG6y44cC3lpv2xoecNvarZzA==}
+ /@icewhale/casaos-openapi@0.4.11-3a835c0:
+ resolution: {integrity: sha512-bwyYfxuvIvoa5xm5hAQmETeoNqAdGdmdp0yQYu+AkxoC1M8A23b4ZfL4Uh/hKki7FzCU2EtW8Mv4h2SZ5fG5Hw==}
dependencies:
axios: 1.6.8
transitivePeerDependencies:
diff --git a/public/favicon.svg b/public/favicon.svg
index a4720273..9db979f8 100644
--- a/public/favicon.svg
+++ b/public/favicon.svg
@@ -1,28 +1,4 @@
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/src/assets/lang/en_GB.json b/src/assets/lang/en_GB.json
index c083a1c9..2e2dc33f 100644
--- a/src/assets/lang/en_GB.json
+++ b/src/assets/lang/en_GB.json
@@ -82,13 +82,13 @@
"REQUIRE": "REQUIRE",
"MEMORY": "MEMORY",
"App Store": "App Store",
- "Import to CasaOS": "Import to CasaOS",
+ "Import to CasaOS": "Import to ZimaOS",
"[Optional]": "Optional",
"Notice: If there are multiple services, only the first set can be analyzed correctly": "When there are more than 1 containers specified in the Docker compose file, only the first one will be imported for now.",
"There was an error loading the data, please try again!": "There was an error loading the data. Please try again.",
"Port": "Ports",
"Single Drive Storage": "Single storage drive",
- "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "CasaOS reserves 1% of file space when creating storage in EXT4 format.",
+ "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "ZimaOS reserves 1% of file space when creating storage in EXT4 format.",
"Delete": "Delete",
"Download in preparation...": "Preparing to download...",
"Copied to clipboard": "Copied to clipboard",
@@ -96,6 +96,7 @@
"Create Folder": "Create folder",
"Create File": "Create file",
"Add External Link/APP": "Add external link",
+ "External link setting": "External link setting",
"Local URL,Public URL": "A local URL or a public URL here",
"Eg: //192.168.1.1:5000 or https://www.google.com": "E.g. //192.168.1.1:5000 or https://www.google.com",
"App Name": "Title",
diff --git a/src/assets/lang/en_US.json b/src/assets/lang/en_US.json
index 9b772ae3..09543714 100644
--- a/src/assets/lang/en_US.json
+++ b/src/assets/lang/en_US.json
@@ -95,6 +95,7 @@
"Create Folder": "Create folder",
"Create File": "Create file",
"Add External Link/APP": "Add external link",
+ "External link setting": "External link setting",
"Local URL,Public URL": "A local URL or a public URL here",
"Eg: //192.168.1.1:5000 or https://www.google.com": "E.g. //192.168.1.1:5000 or https://www.google.com",
"App Name": "Title",
diff --git a/src/assets/lang/it_IT.json b/src/assets/lang/it_IT.json
index ee56e32a..577f06b7 100644
--- a/src/assets/lang/it_IT.json
+++ b/src/assets/lang/it_IT.json
@@ -82,13 +82,13 @@
"REQUIRE": "RICHIEDI",
"MEMORY": "MEMORIA",
"App Store": "App Store",
- "Import to CasaOS": "Importa in CasaOS",
+ "Import to CasaOS": "Importa in ZimaOS",
"[Optional]": "Facoltativo",
"Notice: If there are multiple services, only the first set can be analyzed correctly": "Se c'è più di 1 container specificato nel Docker Compose, per il momento solo il primo verrà importato.",
"There was an error loading the data, please try again!": "Si è verificato un errore nel caricamento dei dati. Si prega di riprovare.",
"Port": "Porte",
"Single Drive Storage": "Unità di archiviazione singola",
- "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "CasaOS si riserva l'1% di spazio di archiviazione quando viene create una partizione in formato EXT4.",
+ "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "ZimaOS si riserva l'1% di spazio di archiviazione quando viene create una partizione in formato EXT4.",
"Delete": "Elimina",
"Download in preparation...": "Preparazione al download...",
"Copied to clipboard": "Copiato negli appunti",
@@ -96,6 +96,7 @@
"Create Folder": "Crea cartella",
"Create File": "Crea file",
"Add External Link/APP": "Aggiungi collegamento esterno",
+ "External link setting": "Impostazioni collegamento esterno",
"Local URL,Public URL": "Un URL locale o un URL pubblico qui",
"Eg: //192.168.1.1:5000 or https://www.google.com": "Per es.: //192.168.1.1:5000 o https://www.google.com",
"App Name": "Titolo",
diff --git a/src/assets/lang/ja_JP.json b/src/assets/lang/ja_JP.json
index 51ba9986..ea52add2 100644
--- a/src/assets/lang/ja_JP.json
+++ b/src/assets/lang/ja_JP.json
@@ -82,13 +82,13 @@
"REQUIRE": "要件",
"MEMORY": "メモリ",
"App Store": "App Store",
- "Import to CasaOS": "CasaOSにインポートする",
+ "Import to CasaOS": "ZimaOSにインポートする",
"[Optional]": "オプショナル",
"Notice: If there are multiple services, only the first set can be analyzed correctly": "Docker Composeファイルに複数のコンテナが指定されている場合、現時点では最初のコンテナのみがインポートされます。",
"There was an error loading the data, please try again!": "データの読み込み中にエラーが発生しました。再試行してください。",
"Port": "ポート",
"Single Drive Storage": "シングルドライブストレージ",
- "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "CasaOSはEXT4形式でストレージを作成する際、ファイルスペースの1%を予約します。",
+ "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "ZimaOSはEXT4形式でストレージを作成する際、ファイルスペースの1%を予約します。",
"Delete": "削除",
"Download in preparation...": "ダウンロードを準備中...",
"Copied to clipboard": "クリップボードにコピーされました",
@@ -96,6 +96,7 @@
"Create Folder": "フォルダ作成",
"Create File": "ファイル作成",
"Add External Link/APP": "外部リンク/アプリを追加",
+ "External link setting": "外部リンク設定",
"Local URL,Public URL": "ローカルURL、パブリックURL",
"Eg: //192.168.1.1:5000 or https://www.google.com": "例://192.168.1.1:5000またはhttps://www.google.com",
"App Name": "アプリ名",
diff --git a/src/assets/lang/ko_KR.json b/src/assets/lang/ko_KR.json
index 2fb2d7e4..e32fecf8 100644
--- a/src/assets/lang/ko_KR.json
+++ b/src/assets/lang/ko_KR.json
@@ -82,13 +82,13 @@
"REQUIRE": "필수",
"MEMORY": "메모리",
"App Store": "앱스토어",
- "Import to CasaOS": "CasaOS로 불러오기",
+ "Import to CasaOS": "ZimaOS로 불러오기",
"[Optional]": "선택사항",
"Notice: If there are multiple services, only the first set can be analyzed correctly": "Docker compose 파일에 1개 이상의 컨테이너가 명시되어 있는 경우, 우선 첫번째 컨테이너만 불러옵니다.",
"There was an error loading the data, please try again!": "데이터를 불러오는 중 오류가 발생했습니다. 다시 시도해 주세요.",
"Port": "포트",
"Single Drive Storage": "단일 저장소 드라이브",
- "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "CasaOS는 EXT4 형식의 저장소를 생성할 때 1%의 저장 공간을 예약합니다.",
+ "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "ZimaOS는 EXT4 형식의 저장소를 생성할 때 1%의 저장 공간을 예약합니다.",
"Delete": "삭제",
"Download in preparation...": "다운로드 준비 중...",
"Copied to clipboard": "클립보드에 복사됨",
@@ -96,6 +96,7 @@
"Create Folder": "폴더 생성",
"Create File": "파일 생성",
"Add External Link/APP": "외부 링크 추가",
+ "External link setting": "외부 링크 설정",
"Local URL,Public URL": "로컬 URL 혹은 공용 URL",
"Eg: //192.168.1.1:5000 or https://www.google.com": "예시: //192.168.1.1:5000 또는 https://www.google.com",
"App Name": "제목",
diff --git a/src/assets/lang/nb_NO.json b/src/assets/lang/nb_NO.json
index e6b8b4ab..9feeff19 100644
--- a/src/assets/lang/nb_NO.json
+++ b/src/assets/lang/nb_NO.json
@@ -82,13 +82,13 @@
"REQUIRE": "PÅKREVD",
"MEMORY": "MINNE",
"App Store": "App Butikk",
- "Import to CasaOS": "Importer til CasaOS",
+ "Import to CasaOS": "Importer til ZimaOS",
"[Optional]": "Valgfri",
"Notice: If there are multiple services, only the first set can be analyzed correctly": "Når det er mer enn 1 container som er spesifisert i Docker-filen, vil bare den første bli importert.",
"There was an error loading the data, please try again!": "Det oppstod en feil under innhenting av data. Vennligst forsøk igjen.",
"Port": "Port",
"Single Drive Storage": "Enkel harddisk",
- "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "CasaOS reserverer 1 % av filplassen ved oppretting av lagring i EXT4-formatet.",
+ "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "ZimaOS reserverer 1 % av filplassen ved oppretting av lagring i EXT4-formatet.",
"Delete": "Slett",
"Download in preparation...": "Forbereder nedlasting...",
"Copied to clipboard": "Kopiert til utklippstavle",
@@ -96,6 +96,7 @@
"Create Folder": "Opprett mappe",
"Create File": "Opprett fil",
"Add External Link/APP": "Legg til ekstern lenke",
+ "External link setting": "Ekstern lenke innstillinger",
"Local URL,Public URL": "En lokal URL eller offentlig URL her",
"Eg: //192.168.1.1:5000 or https://www.google.com": "F.eks. //192.168.1.1:5000 eller https://www.google.com",
"App Name": "Tittel",
diff --git a/src/assets/lang/zh_CN.json b/src/assets/lang/zh_CN.json
index 31dba081..f056ec04 100644
--- a/src/assets/lang/zh_CN.json
+++ b/src/assets/lang/zh_CN.json
@@ -82,13 +82,13 @@
"REQUIRE": "必须",
"MEMORY": "内存",
"App Store": "应用中心",
- "Import to CasaOS": "导入到 CasaOS",
+ "Import to CasaOS": "导入到 ZimaOS",
"[Optional]": "可选",
"Notice: If there are multiple services, only the first set can be analyzed correctly": "当在 Docker compose 文件中指定多个容器时,现在只导入第一个容器。",
"There was an error loading the data, please try again!": "加载数据时出错了,请重试!",
"Port": "端口",
"Single Drive Storage": "单分区存储驱动器",
- "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "CasaOS在创建EXT4格式的存储空间时会预留 1% 的文件空间。",
+ "CasaOS reserves 1% of file space when creating storage in EXT4 format.": "ZimaOS在创建EXT4格式的存储空间时会预留 1% 的文件空间。",
"Delete": "删除",
"Download in preparation...": "正在准备下载...",
"Copied to clipboard": "已复制到剪贴板",
@@ -96,6 +96,7 @@
"Create Folder": "新建文件夹",
"Create File": "新建文件",
"Add External Link/APP": "添加外部链接",
+ "External link setting": "外部链接设置",
"Local URL,Public URL": "在这里添加本地URL或公共URL",
"Eg: //192.168.1.1:5000 or https://www.google.com": "例如: //192.168.1:5000 或 https://www.google.com",
"App Name": "标题",
diff --git a/src/assets/scss/app.scss b/src/assets/scss/app.scss
index 6341f60c..d6a4f578 100644
--- a/src/assets/scss/app.scss
+++ b/src/assets/scss/app.scss
@@ -14,7 +14,7 @@
@layer base {
@font-face {
font-family: 'BrittiSans';
- src: url(/font/britti-sans-regular.woff) format('woff');
+ src: url(/modules/icewhale_app/font/britti-sans-regular.woff) format('woff');
}
}
diff --git a/src/components/AppSetting/ComposeConfig.vue b/src/components/AppSetting/ComposeConfig.vue
index a03c9dd7..217f6bdd 100644
--- a/src/components/AppSetting/ComposeConfig.vue
+++ b/src/components/AppSetting/ComposeConfig.vue
@@ -178,6 +178,8 @@
diff --git a/src/components/AppStoreSource/AppStoreSourceManagement.vue b/src/components/AppStoreSource/AppStoreSourceManagement.vue
index c383b257..24aed2bf 100644
--- a/src/components/AppStoreSource/AppStoreSourceManagement.vue
+++ b/src/components/AppStoreSource/AppStoreSourceManagement.vue
@@ -2,6 +2,7 @@
import { getCurrentInstance, onBeforeUnmount, onMounted, ref } from "vue";
import { vOnClickOutside } from "@vueuse/components";
import i18n from "@/plugins/i18n";
+import DOMPurify from 'dompurify';
const emit = defineEmits(["refreshAppStore", "refreshSize"]);
const props = defineProps(["totalApps"]);
@@ -95,7 +96,7 @@ function registerAppStore(repoUrl) {
.catch((err) => {
if ([400, 409, 500].includes(err.response.status)) {
app.$buefy.toast.open({
- message: err.response.data.message,
+ message: new Option(err.response.data.message).innerHTML,
duration: 5000,
type: "is-warning",
});
diff --git a/src/components/Apps/AppSection.vue b/src/components/Apps/AppSection.vue
index 3c404305..d3458ed2 100644
--- a/src/components/Apps/AppSection.vue
+++ b/src/components/Apps/AppSection.vue
@@ -369,12 +369,15 @@ export default {
this.oldAppList = orgOldAppList;
let linkAppList = await this.getLinkAppList();
- linkAppList.forEach((item) => {
+ linkAppList.forEach((item, i) => {
// linkApp does not have title.
item.title = {
en_us: item.name,
};
+ item.linkId = i;
});
+ console.log("linkAppList", linkAppList);
+
// mirco app list
if (this.mircoAppList.length === 0) {
const mircoAppListRaw = await this.getModuleUIEntries();
@@ -455,7 +458,7 @@ export default {
);
});
- const sortedList = sortedAppList.map((obj) => obj.name);
+ const sortedList = sortedAppList.map((obj) => obj.name);
this.appList = sortedAppList;
if (!isEqual(lateSortList, sortedList)) {
this.saveSortData();
@@ -677,6 +680,7 @@ export default {
linkName: item.name,
linkHost: item.hostname,
linkIcon: item.icon,
+ linkId: item.linkId?.toString() ?? "",
},
});
},
diff --git a/src/components/Apps/ExternalLinkPanel.vue b/src/components/Apps/ExternalLinkPanel.vue
index 6d4abd23..0516315a 100644
--- a/src/components/Apps/ExternalLinkPanel.vue
+++ b/src/components/Apps/ExternalLinkPanel.vue
@@ -10,276 +10,318 @@
-->
-
-
-
-
-
{{ panelTitle }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $t('Address') }}
-
-
-
-
-
-
+
+
+
+
+
{{ panelTitle }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ $t("Address") }}
+
+
+
+
+
+
-
-
-
-
-
- {{ $t('Eg: //192.168.1.1:5000 or https://www.google.com') }}
-
-
+
+
+
+
+
+ {{ $t("Eg: //192.168.1.1:5000 or https://www.google.com") }}
+