后端迁移平台配置云触手展示
This commit is contained in:
+19
-25
@@ -1,5 +1,3 @@
|
|||||||
// @ts-check
|
|
||||||
|
|
||||||
import { getCloudtentaclesSourceByKey } from "../../platforms/cloudtentacles/source-config-service.js";
|
import { getCloudtentaclesSourceByKey } from "../../platforms/cloudtentacles/source-config-service.js";
|
||||||
import { getCloudtentaclesSessionStateByKey } from "../../platforms/cloudtentacles/session-state-service.js";
|
import { getCloudtentaclesSessionStateByKey } from "../../platforms/cloudtentacles/session-state-service.js";
|
||||||
import {
|
import {
|
||||||
@@ -10,18 +8,18 @@ import { maskPhone, maskSecret } from "./mappers.js";
|
|||||||
|
|
||||||
const DEFAULT_CLOUDTENTACLES_BASE_URL = "https://123.207.217.176";
|
const DEFAULT_CLOUDTENTACLES_BASE_URL = "https://123.207.217.176";
|
||||||
|
|
||||||
function _resolveSourceKey(payload = {}) {
|
type JsonObject = Record<string, any>
|
||||||
|
|
||||||
|
function _resolveSourceKey(payload: JsonObject = {}) {
|
||||||
return String(payload.sourceKey || "").trim() || "default";
|
return String(payload.sourceKey || "").trim() || "default";
|
||||||
}
|
}
|
||||||
|
|
||||||
export function resolveAdminCloudtentaclesCredentialPayload(
|
export function resolveAdminCloudtentaclesCredentialPayload(
|
||||||
payload = {},
|
payload: JsonObject = {},
|
||||||
options = {}
|
options: JsonObject = {}
|
||||||
) {
|
) {
|
||||||
const sourceKey = _resolveSourceKey(payload);
|
const sourceKey = _resolveSourceKey(payload);
|
||||||
const savedSource = /** @type {Record<string, unknown>} */ (
|
const savedSource = options.savedSource || getCloudtentaclesSourceByKey(sourceKey) || {};
|
||||||
options.savedSource || getCloudtentaclesSourceByKey(sourceKey) || {}
|
|
||||||
);
|
|
||||||
const defaultBaseUrl = String(
|
const defaultBaseUrl = String(
|
||||||
options.defaultBaseUrl || DEFAULT_CLOUDTENTACLES_BASE_URL
|
options.defaultBaseUrl || DEFAULT_CLOUDTENTACLES_BASE_URL
|
||||||
).trim();
|
).trim();
|
||||||
@@ -42,18 +40,14 @@ export function resolveAdminCloudtentaclesCredentialPayload(
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function resolveAdminCloudtentaclesSessionPayload(
|
export function resolveAdminCloudtentaclesSessionPayload(
|
||||||
payload = {},
|
payload: JsonObject = {},
|
||||||
options = {}
|
options: JsonObject = {}
|
||||||
) {
|
) {
|
||||||
const sourceKey = _resolveSourceKey(payload);
|
const sourceKey = _resolveSourceKey(payload);
|
||||||
const savedSource = /** @type {Record<string, unknown>} */ (
|
const savedSource = options.savedSource || getCloudtentaclesSourceByKey(sourceKey) || {};
|
||||||
options.savedSource || getCloudtentaclesSourceByKey(sourceKey) || {}
|
const persistedSession = options.persistedSession ||
|
||||||
);
|
|
||||||
const persistedSession = /** @type {Record<string, unknown>} */ (
|
|
||||||
options.persistedSession ||
|
|
||||||
getCloudtentaclesSessionStateByKey(sourceKey) ||
|
getCloudtentaclesSessionStateByKey(sourceKey) ||
|
||||||
{}
|
{};
|
||||||
);
|
|
||||||
|
|
||||||
return resolveCloudtentaclesAdminContext(payload, {
|
return resolveCloudtentaclesAdminContext(payload, {
|
||||||
savedSource,
|
savedSource,
|
||||||
@@ -64,8 +58,8 @@ export function resolveAdminCloudtentaclesSessionPayload(
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function buildAdminCloudtentaclesPersistedSessionPayload(
|
export function buildAdminCloudtentaclesPersistedSessionPayload(
|
||||||
session = {},
|
session: JsonObject = {},
|
||||||
options = {}
|
options: JsonObject = {}
|
||||||
) {
|
) {
|
||||||
return {
|
return {
|
||||||
token: String(session.token || "").trim(),
|
token: String(session.token || "").trim(),
|
||||||
@@ -79,8 +73,8 @@ export function buildAdminCloudtentaclesPersistedSessionPayload(
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function buildAdminCloudtentaclesSessionSummary(
|
export function buildAdminCloudtentaclesSessionSummary(
|
||||||
session = {},
|
session: JsonObject = {},
|
||||||
savedSession = {},
|
savedSession: JsonObject = {},
|
||||||
sourceKey = "default"
|
sourceKey = "default"
|
||||||
) {
|
) {
|
||||||
const permissions = Array.isArray(session.permissions)
|
const permissions = Array.isArray(session.permissions)
|
||||||
@@ -97,8 +91,8 @@ export function buildAdminCloudtentaclesSessionSummary(
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function buildAdminCloudtentaclesLoginResult(
|
export function buildAdminCloudtentaclesLoginResult(
|
||||||
session = {},
|
session: JsonObject = {},
|
||||||
savedSession = {},
|
savedSession: JsonObject = {},
|
||||||
sourceKey = "default"
|
sourceKey = "default"
|
||||||
) {
|
) {
|
||||||
return {
|
return {
|
||||||
@@ -120,8 +114,8 @@ export function buildAdminCloudtentaclesLoginResult(
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function buildAdminCloudtentaclesValidateResult(
|
export function buildAdminCloudtentaclesValidateResult(
|
||||||
session = {},
|
session: JsonObject = {},
|
||||||
savedSession = {},
|
savedSession: JsonObject = {},
|
||||||
sourceKey = "default"
|
sourceKey = "default"
|
||||||
) {
|
) {
|
||||||
return {
|
return {
|
||||||
@@ -599,6 +599,14 @@
|
|||||||
- `npm run typecheck`
|
- `npm run typecheck`
|
||||||
- `npm run build`
|
- `npm run build`
|
||||||
- `npm test` 共 139 个用例通过
|
- `npm test` 共 139 个用例通过
|
||||||
|
141. 后台 Cloudtentacles 配置展示模块迁移到 `.ts`:
|
||||||
|
- `src/services/admin/platform-config/cloudtentacles.ts`
|
||||||
|
142. Cloudtentacles 凭据 payload、会话 payload、持久化 session、登录 / 校验响应摘要已进入 TS 编译链路;来源、会话与响应对象补齐动态类型
|
||||||
|
143. Docker 内验证通过:
|
||||||
|
- `src/services/admin/platform-config/cloudtentacles.test.js` 共 6 个用例通过
|
||||||
|
- `npm run typecheck`
|
||||||
|
- `npm run build`
|
||||||
|
- `npm test` 共 139 个用例通过
|
||||||
|
|
||||||
## 下一步建议
|
## 下一步建议
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user