-
-
-
- {isCloudVersion &&
}
+
+
+
+
+ {isCloudVersion && }
+
diff --git a/apps/builder/src/page/Resource/Create/style.ts b/apps/builder/src/page/Resource/Create/style.ts
index 7aa6966cf3..25382ee0a2 100644
--- a/apps/builder/src/page/Resource/Create/style.ts
+++ b/apps/builder/src/page/Resource/Create/style.ts
@@ -4,9 +4,16 @@ export const containerStyle = css`
display: flex;
justify-content: center;
gap: 32px;
+ width: 1032px;
+`
+
+export const outerContainerStyle = css`
+ display: flex;
+ width: 100%;
+ justify-content: center;
`
export const innerContainerStyle = css`
- width: 1032px;
+ width: 100%;
height: 100%;
`
diff --git a/apps/builder/src/page/Resource/Edit/index.tsx b/apps/builder/src/page/Resource/Edit/index.tsx
index 0e8f3a20ea..cec35bfa9c 100644
--- a/apps/builder/src/page/Resource/Edit/index.tsx
+++ b/apps/builder/src/page/Resource/Edit/index.tsx
@@ -8,14 +8,18 @@ import { FC } from "react"
import { useTranslation } from "react-i18next"
import { useSelector } from "react-redux"
import { Navigate, useParams } from "react-router-dom"
-import { useMessage } from "@illa-design/react"
+import { Divider, useMessage } from "@illa-design/react"
import { ConfigElementProvider } from "@/page/App/components/Actions/ResourceGenerator/ConfigElements/provider"
import { getAllResources } from "@/redux/resource/resourceSelector"
import { track } from "@/utils/mixpanelHelper"
import { ConfigElement } from "../../App/components/Actions/ResourceGenerator/ConfigElements"
import { Header } from "../components/resourceHeader"
import { WhiteList } from "../components/whiteList"
-import { containerStyle, innerContainerStyle } from "./style"
+import {
+ containerStyle,
+ innerContainerStyle,
+ outerContainerStyle,
+} from "./style"
export const ResourceEdit: FC = () => {
const { resourceID } = useParams()
@@ -57,14 +61,16 @@ export const ResourceEdit: FC = () => {
>
-
-
-
- {isCloudVersion &&
}
+
+
+
+
+ {isCloudVersion && }
+
diff --git a/apps/builder/src/page/Resource/Edit/style.ts b/apps/builder/src/page/Resource/Edit/style.ts
index 7aa6966cf3..25382ee0a2 100644
--- a/apps/builder/src/page/Resource/Edit/style.ts
+++ b/apps/builder/src/page/Resource/Edit/style.ts
@@ -4,9 +4,16 @@ export const containerStyle = css`
display: flex;
justify-content: center;
gap: 32px;
+ width: 1032px;
+`
+
+export const outerContainerStyle = css`
+ display: flex;
+ width: 100%;
+ justify-content: center;
`
export const innerContainerStyle = css`
- width: 1032px;
+ width: 100%;
height: 100%;
`
diff --git a/apps/builder/src/page/Resource/components/resourceHeader/index.tsx b/apps/builder/src/page/Resource/components/resourceHeader/index.tsx
index 3df7a4394e..990ce50da2 100644
--- a/apps/builder/src/page/Resource/components/resourceHeader/index.tsx
+++ b/apps/builder/src/page/Resource/components/resourceHeader/index.tsx
@@ -9,6 +9,7 @@ import { ResourceHeaderProps } from "./interface"
import {
buttonContainerStyle,
headerContainerStyle,
+ headerOuterContainerStyle,
titleContainerStyle,
titleNameContainerStyle,
titleNameStyle,
@@ -22,28 +23,30 @@ export const Header: FC
= (props) => {
}
return (
-
-
- }
- variant="text"
- colorScheme="gray"
- type="button"
- onClick={handleClickBack}
- >
- {t("back")}
-
-
-
-
- {getIconFromResourceType(resourceType, "24px")}
-
- {getResourceNameFromResourceType(resourceType)}
-
+
+
+
+ }
+ variant="text"
+ colorScheme="gray"
+ type="button"
+ onClick={handleClickBack}
+ >
+ {t("back")}
+
-
-
-
+
+
+ {getIconFromResourceType(resourceType, "24px")}
+
+ {getResourceNameFromResourceType(resourceType)}
+
+
+
+
+
+
diff --git a/apps/builder/src/page/Resource/components/resourceHeader/style.ts b/apps/builder/src/page/Resource/components/resourceHeader/style.ts
index ff79319699..e4e3a7aff1 100644
--- a/apps/builder/src/page/Resource/components/resourceHeader/style.ts
+++ b/apps/builder/src/page/Resource/components/resourceHeader/style.ts
@@ -1,6 +1,13 @@
import { css } from "@emotion/react"
import { getColor } from "@illa-design/react"
+export const headerOuterContainerStyle = css`
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+`
+
export const headerContainerStyle = css`
width: 1032px;
padding: 16px 0;
diff --git a/apps/builder/src/services/team.ts b/apps/builder/src/services/team.ts
index 68e1e65aa0..3a06232165 100644
--- a/apps/builder/src/services/team.ts
+++ b/apps/builder/src/services/team.ts
@@ -1,13 +1,5 @@
import { authCloudRequest } from "@illa-public/illa-net"
-import {
- MemberInfo,
- TeamInfo,
- getCurrentTeamInfo,
- teamActions,
-} from "@illa-public/user-data"
-import store from "../store"
-import { getCurrentTeamID } from "../utils/team"
-
+import { TeamInfo } from "@illa-public/user-data"
export const fetchMyTeamsInfo = () => {
return authCloudRequest
({
@@ -15,140 +7,3 @@ export const fetchMyTeamsInfo = () => {
method: "GET",
})
}
-
-export const fetchUpdateMembers = () => {
- return authCloudRequest(
- {
- method: "GET",
- url: "/members",
- },
- {
- teamID: getCurrentTeamID(),
- },
- )
-}
-
-export const fetchRemoveTeam = () => {
- return authCloudRequest(
- {
- method: "DELETE",
- },
- {
- teamID: getCurrentTeamID(),
- },
- )
-}
-
-interface IInviteLinkStatusRequest {
- inviteLinkEnabled: boolean
-}
-
-export const fetchUpdateInviteLinkStatus = (data: IInviteLinkStatusRequest) => {
- return authCloudRequest(
- {
- method: "PATCH",
- url: `/configInviteLink`,
- data,
- },
- {
- teamID: getCurrentTeamID(),
- },
- )
-}
-
-interface IUpdateTeamPermissionConfigRequest {
- allowEditorManageTeamMember: boolean
- allowViewerManageTeamMember: boolean
-}
-
-export const fetchUpdateTeamPermissionConfig = (
- data: IUpdateTeamPermissionConfigRequest,
-) => {
- return authCloudRequest(
- {
- method: "PATCH",
- url: `/permission`,
- data,
- },
- {
- teamID: getCurrentTeamID(),
- },
- )
-}
-
-export const fetchRemoveTeamMember = (teamMemberID: string) => {
- return authCloudRequest(
- {
- method: "DELETE",
- url: `/teamMembers/${teamMemberID}`,
- },
- {
- teamID: getCurrentTeamID(),
- },
- )
-}
-
-export const updateMembers = async () => {
- const response = await fetchUpdateMembers()
- if (!response.data) return
- store.dispatch(teamActions.updateMemberListReducer(response.data))
- return response.data
-}
-
-export const updateTeamsInfo = async (teamIdentifier?: string) => {
- const response = await fetchMyTeamsInfo()
- const data = response.data
- const currentTeamInfo = data.find(
- (item) => item.identifier === teamIdentifier,
- )
- if (currentTeamInfo) {
- store.dispatch(teamActions.updateCurrentIdReducer(currentTeamInfo.id))
- store.dispatch(teamActions.updateTeamItemsReducer(data))
- } else {
- store.dispatch(
- teamActions.updateTeamReducer({
- currentId: data?.[0]?.id,
- items: data,
- }),
- )
- }
- return data
-}
-
-export const removeTeam = async () => {
- await fetchRemoveTeam()
- window.open("/", "_self")
- return true
-}
-
-export const setInviteLinkEnabled = async (inviteLinkEnabled: boolean) => {
- await fetchUpdateInviteLinkStatus({ inviteLinkEnabled })
- const teamInfo = getCurrentTeamInfo(store.getState())
- const teamIdentifier = teamInfo?.identifier
- await updateTeamsInfo(teamIdentifier)
- return inviteLinkEnabled
-}
-
-export const updateTeamPermissionConfig = async (
- allowEditorManageTeamMember: boolean,
- allowViewerManageTeamMember: boolean,
- blockRegister: boolean,
-) => {
- const teamInfo = getCurrentTeamInfo(store.getState())
- const teamIdentifier = teamInfo?.identifier
-
- const requestData = {
- allowEditorManageTeamMember,
- allowViewerManageTeamMember,
- blockRegister,
- }
- await fetchUpdateTeamPermissionConfig(requestData)
- await updateTeamsInfo(teamIdentifier)
- return allowEditorManageTeamMember && allowViewerManageTeamMember
-}
-
-export const removeTeamMembers = async (teamMemberID: string) => {
- await fetchRemoveTeamMember(teamMemberID)
- await updateMembers()
- return true
-}
\ No newline at end of file
diff --git a/apps/builder/src/utils/action/runAction.ts b/apps/builder/src/utils/action/runAction.ts
index c95901600e..7b0f43f640 100644
--- a/apps/builder/src/utils/action/runAction.ts
+++ b/apps/builder/src/utils/action/runAction.ts
@@ -68,6 +68,7 @@ const fetchActionResult = async (
appId: string,
actionID: string,
actionContent: ActionContent,
+ actionContext: Record = {},
abortSignal?: AbortSignal,
) => {
const canSendRequest = checkCanSendRequest(actionType, actionContent)
@@ -80,6 +81,7 @@ const fetchActionResult = async (
actionType,
displayName,
content: actionContent,
+ context: actionContext,
}
return await fetchActionRunResult(
appId,
@@ -93,6 +95,7 @@ const fetchActionResult = async (
export interface IExecutionActions extends ActionItem {
$actionID: string
$resourceID: string
+ $context: Record
}
export const runActionWithExecutionResult = async (
@@ -103,7 +106,8 @@ export const runActionWithExecutionResult = async (
const { displayName } = action as ActionItem<
MysqlLikeAction | RestApiAction
>
- const { content, $actionID, $resourceID, actionType, transformer } = action
+ const { content, $actionID, $resourceID, actionType, transformer, $context } =
+ action
const originActionList = getActionList(store.getState())
const originAction = originActionList.find(
(item) => item.displayName === displayName,
@@ -163,6 +167,7 @@ export const runActionWithExecutionResult = async (
appId,
currentActionId,
actionContent,
+ $context,
abortSignal,
)) as AxiosResponse<
IActionRunResultResponseData[]>,
@@ -250,21 +255,24 @@ export const runActionWithDelay = (
const { advancedConfig } = config
const { delayWhenLoaded } = advancedConfig
return new Promise((resolve, reject) => {
- const timeoutID = window.setTimeout(async () => {
- window.clearTimeout(timeoutID)
+ const timeoutID = window.setTimeout(
+ async () => {
+ window.clearTimeout(timeoutID)
- try {
- const result = await runActionWithExecutionResult(
- action,
- true,
- abortSignal,
- )
- return resolve(result)
- } catch (e) {
- console.log("e", e)
- return reject(e)
- }
- }, delayWhenLoaded as unknown as number)
+ try {
+ const result = await runActionWithExecutionResult(
+ action,
+ true,
+ abortSignal,
+ )
+ return resolve(result)
+ } catch (e) {
+ console.log("e", e)
+ return reject(e)
+ }
+ },
+ delayWhenLoaded as unknown as number,
+ )
})
}
@@ -282,9 +290,12 @@ export const registerActionPeriod = (action: IExecutionActions) => {
return
}
removeActionPeriod(action.$actionID)
- const timeID = window.setInterval(() => {
- runActionWithExecutionResult(action)
- }, (config.advancedConfig.periodInterval as unknown as number) * 1000)
+ const timeID = window.setInterval(
+ () => {
+ runActionWithExecutionResult(action)
+ },
+ (config.advancedConfig.periodInterval as unknown as number) * 1000,
+ )
actionIDMapTimerID[action.$actionID] = timeID
}
diff --git a/apps/builder/src/utils/actionResourceTransformer.ts b/apps/builder/src/utils/actionResourceTransformer.ts
index a0b9058d23..6ff85d576d 100644
--- a/apps/builder/src/utils/actionResourceTransformer.ts
+++ b/apps/builder/src/utils/actionResourceTransformer.ts
@@ -1,12 +1,6 @@
import { ActionType } from "@/redux/currentApp/action/actionState"
import { ResourceType } from "@/redux/resource/resourceState"
-export function getActionTypeFromResourceType(
- resourceType: ResourceType | null | undefined,
-): ActionType | null {
- return resourceType as ActionType
-}
-
export function getActionSubTitleFromActionType(
actionType: ActionType | null | undefined,
): string {
diff --git a/apps/builder/src/utils/billing/errorHandler.ts b/apps/builder/src/utils/billing/errorHandler.ts
index 0bbc66ad25..8722e3c75a 100644
--- a/apps/builder/src/utils/billing/errorHandler.ts
+++ b/apps/builder/src/utils/billing/errorHandler.ts
@@ -1,11 +1,8 @@
import { ERROR_FLAG } from "@illa-public/illa-net/errorFlag"
import { getILLACloudURL, isCloudVersion } from "@illa-public/utils"
import { matchPath } from "react-router-dom"
-import { createMessage } from "@illa-design/react"
-import i18n from "@/i18n/config"
import { isILLAAPiError } from "@/utils/typeHelper"
-const message = createMessage()
export const commonBillingErrorHandler = (error: unknown) => {
if (isILLAAPiError(error) && isCloudVersion) {
switch (error.data.errorFlag) {
@@ -21,23 +18,3 @@ export const commonBillingErrorHandler = (error: unknown) => {
}
}
}
-
-export const leaveTeamErrorHandler = (error: unknown) => {
- if (isILLAAPiError(error)) {
- switch (error.data.errorFlag) {
- case ERROR_FLAG.ERROR_FLAG_CAN_NOT_REMOVE_TEAM_MEMBER_BECAUSE_APPSUMO_BUYER:
- message.error({
- content: i18n.t("billing.message.appsumo.leave"),
- })
- break
- case ERROR_FLAG.ERROR_FLAG_CAN_NOT_REMOVE_OWNER_FROM_TEAM:
- location.reload()
- break
- default:
- message.error({
- content: i18n.t("team_setting.mes.leave_fail"),
- })
- break
- }
- }
-}
diff --git a/apps/builder/src/utils/dayjs.ts b/apps/builder/src/utils/dayjs.ts
deleted file mode 100644
index e1b05efb36..0000000000
--- a/apps/builder/src/utils/dayjs.ts
+++ /dev/null
@@ -1,98 +0,0 @@
-/* eslint-disable import/no-named-as-default-member */
-import dayjs from "dayjs"
-import advancedFormat from "dayjs/plugin/advancedFormat"
-import customParseFormat from "dayjs/plugin/customParseFormat"
-import isBetween from "dayjs/plugin/isBetween"
-import isToday from "dayjs/plugin/isToday"
-import localeData from "dayjs/plugin/localeData"
-import LocalizedFormat from "dayjs/plugin/localizedFormat"
-import QuarterOfYear from "dayjs/plugin/quarterOfYear"
-import relativeTime from "dayjs/plugin/relativeTime"
-import updateLocale from "dayjs/plugin/updateLocale"
-import utc from "dayjs/plugin/utc"
-import weekOfYear from "dayjs/plugin/weekOfYear"
-import weekYear from "dayjs/plugin/weekYear"
-import i18n, { formatLanguage } from "@/i18n/config"
-
-dayjs.extend(isToday)
-dayjs.extend(isBetween)
-dayjs.extend(LocalizedFormat)
-dayjs.extend(relativeTime)
-dayjs.extend(utc)
-dayjs.extend(localeData)
-dayjs.extend(updateLocale)
-dayjs.extend(weekOfYear)
-dayjs.extend(advancedFormat)
-dayjs.extend(weekYear)
-dayjs.extend(QuarterOfYear)
-dayjs.extend(customParseFormat)
-
-const PER_SECOND = 1000
-const PER_MINUTE = PER_SECOND * 60
-const PER_HOUR = PER_MINUTE * 60
-const PER_DAY = PER_HOUR * 24
-
-const FORMAT_RULE = {
- "zh-cn": {
- inYear: "MMMD日 HH:MM",
- otherYear: "YYYY年MMMDD日HH:MM",
- },
- "en-us": {
- inYear: "HH:MM MMM DD",
- otherYear: "HH:MM MMM DD, YYYY",
- },
-}
-
-async function initDayjs() {
- const local = localStorage.getItem("i18nextLng") || "en-US"
- const language = formatLanguage(local)
- switch (language) {
- case "zh-CN":
- await import("dayjs/locale/zh-cn")
- dayjs.locale("zh-cn")
- break
- case "en-US":
- default:
- await import("dayjs/locale/en")
- dayjs.locale("en-us")
- break
- }
-}
-
-initDayjs()
-
-export const fromNow = (date: string) => {
- if (!date) return ""
- const now = dayjs()
- const diff = now.diff(date)
- const local = dayjs.locale() as "zh-cn" | "en-us"
- if (diff / PER_MINUTE <= 1) {
- return i18n.t("dayjs.just_now")
- }
-
- if (diff / PER_DAY >= 7 && dayjs(date).isSame(now, "year")) {
- return dayjs(date).format(
- FORMAT_RULE[local]?.inYear || FORMAT_RULE["en-us"].inYear,
- )
- }
-
- if (diff / PER_DAY >= 7 && !dayjs(date).isSame(now, "year")) {
- return dayjs(date).format(
- FORMAT_RULE[local]?.otherYear || FORMAT_RULE["en-us"].otherYear,
- )
- }
- return dayjs(date).fromNow()
-}
-
-export const formatDate = (dateString: string) => {
- const date = dayjs(dateString)
- const now = dayjs()
-
- if (date.format("YYYYMMDD") === now.format("YYYYMMDD")) {
- return date.format("hh:mm A")
- } else if (date.year() === now.year()) {
- return date.format("MMMM DD, h:mm A")
- } else {
- return date.format("YYYY MMM DD, h:mm A")
- }
-}
diff --git a/apps/builder/src/utils/evaluateDynamicString/dynamicConverter.ts b/apps/builder/src/utils/evaluateDynamicString/dynamicConverter.ts
index c5cdba48a7..4daecb4fbc 100644
--- a/apps/builder/src/utils/evaluateDynamicString/dynamicConverter.ts
+++ b/apps/builder/src/utils/evaluateDynamicString/dynamicConverter.ts
@@ -75,21 +75,30 @@ export const getDynamicValue = (
ILLAEditorRuntimePropsCollectorInstance.getThirdPartyPackages(),
)
if (stringSnippets.length) {
+ let context: Record = {}
const values = jsSnippets.map((jsSnippet, index) => {
if (jsSnippet) {
- return evalScript(jsSnippet, calcContext)
+ const value = evalScript(jsSnippet, calcContext)
+ context[jsSnippet] = value
+ return value
} else {
return stringSnippets[index]
}
})
if (stringSnippets.length === 1) {
- return values[0]
+ return {
+ result: values[0],
+ context,
+ }
+ }
+ return {
+ result: substituteDynamicBindingWithValues(
+ dynamicString,
+ stringSnippets,
+ values,
+ evaluationType,
+ ),
+ context,
}
- return substituteDynamicBindingWithValues(
- dynamicString,
- stringSnippets,
- values,
- evaluationType,
- )
}
}
diff --git a/apps/builder/src/utils/evaluateDynamicString/index.ts b/apps/builder/src/utils/evaluateDynamicString/index.ts
index ca54c9c669..ed01c0c78a 100644
--- a/apps/builder/src/utils/evaluateDynamicString/index.ts
+++ b/apps/builder/src/utils/evaluateDynamicString/index.ts
@@ -17,7 +17,8 @@ export const evaluateDynamicString = (
evalResult = realInputValueWithScript(dynamicString, true)
} else {
try {
- evalResult = getDynamicValue(dynamicString, dataTree, evaluationType)
+ const result = getDynamicValue(dynamicString, dataTree, evaluationType)
+ evalResult = result?.result
} catch (error) {
evalResult = undefined
throw error
@@ -28,3 +29,35 @@ export const evaluateDynamicString = (
}
return evalResult
}
+
+export const evaluateDynamicStringAndGetCalcContext = (
+ keyInDataTree: string,
+ dynamicString: string,
+ dataTree: Record,
+ evaluationType: EVALUATION_TYPE = EVALUATION_TYPE.TEMPLATE,
+) => {
+ const requiresEval = hasDynamicStringSnippet(dynamicString)
+ let evalResult
+ let context: Record = {}
+ if (requiresEval) {
+ if (isRunScriptAttr(keyInDataTree) && isWrapperCode(dynamicString)) {
+ evalResult = realInputValueWithScript(dynamicString, true)
+ } else {
+ try {
+ const result = getDynamicValue(dynamicString, dataTree, evaluationType)
+ evalResult = result?.result
+ context = result?.context || {}
+ } catch (error) {
+ evalResult = undefined
+ context = {}
+ throw error
+ }
+ }
+ } else {
+ evalResult = dynamicString
+ }
+ return {
+ result: evalResult,
+ context,
+ }
+}
diff --git a/apps/builder/src/utils/executionTreeHelper/executionTreeFactory.ts b/apps/builder/src/utils/executionTreeHelper/executionTreeFactory.ts
index 0a3390b901..8f2d309c4e 100644
--- a/apps/builder/src/utils/executionTreeHelper/executionTreeFactory.ts
+++ b/apps/builder/src/utils/executionTreeHelper/executionTreeFactory.ts
@@ -11,7 +11,7 @@ import {
ExecutionState,
} from "@/redux/currentApp/executionTree/executionState"
import store from "@/store"
-import { evaluateDynamicString } from "@/utils/evaluateDynamicString"
+import { evaluateDynamicStringAndGetCalcContext } from "@/utils/evaluateDynamicString"
import { getSnippets } from "@/utils/evaluateDynamicString/dynamicConverter"
import {
getDisplayNameAndAttrPath,
@@ -647,11 +647,20 @@ export class ExecutionTreeFactory {
const requiredEval = hasDynamicStringSnippet(widgetOrActionAttribute)
if (requiredEval) {
try {
- evaluateValue = evaluateDynamicString(
- attrPath,
- widgetOrActionAttribute,
- current,
- )
+ const { result, context } =
+ evaluateDynamicStringAndGetCalcContext(
+ attrPath,
+ widgetOrActionAttribute,
+ current,
+ )
+ evaluateValue = result
+
+ const currentContext = get(current, `${displayName}.$context`, {})
+
+ Object.keys(context).forEach((key) => {
+ const value = context[key] ?? ""
+ currentContext[key] = value
+ })
if (typeof evaluateValue === "function") {
set(current, fullPath, undefined)
diff --git a/apps/builder/src/utils/executionTreeHelper/generateRawAction.ts b/apps/builder/src/utils/executionTreeHelper/generateRawAction.ts
index 818de0ed4f..7d3f7b913b 100644
--- a/apps/builder/src/utils/executionTreeHelper/generateRawAction.ts
+++ b/apps/builder/src/utils/executionTreeHelper/generateRawAction.ts
@@ -56,6 +56,9 @@ export const generateRawAction = (
modifiedAction.$dynamicAttrPaths = [
...((newProps?.$dynamicAttrPaths ?? []) as string[]),
]
+ let context: Record = {}
+
+ modifiedAction.$context = context
return modifiedAction
}
diff --git a/apps/builder/src/utils/executionTreeHelper/generateUrlParams.ts b/apps/builder/src/utils/executionTreeHelper/generateUrlParams.ts
index ef2b9452a1..fa6f1fead1 100644
--- a/apps/builder/src/utils/executionTreeHelper/generateUrlParams.ts
+++ b/apps/builder/src/utils/executionTreeHelper/generateUrlParams.ts
@@ -7,9 +7,8 @@ export const generateUrlParams = () => {
const query = href.split("?")[1]
const queryArray = parse(query)
let appURL = href
- const appUrlArray = window.location.pathname.split("/")
if (getIsILLAProductMode(store.getState())) {
- appURL = window.location.origin + appUrlArray.slice(0, 5).join("/")
+ appURL = window.location.origin + window.location.pathname
}
return {
query: queryArray,
diff --git a/apps/builder/src/utils/navigate/index.ts b/apps/builder/src/utils/navigate/index.ts
index ecbd24f550..6be291f679 100644
--- a/apps/builder/src/utils/navigate/index.ts
+++ b/apps/builder/src/utils/navigate/index.ts
@@ -1,25 +1,7 @@
-import { ILLARoute } from "@/router"
-
export const handleLinkOpen = (link: string) => {
window.open(link, "_blank")
}
-export const toRegister = () => {
- ILLARoute.navigate("/register")
-}
-
-export const toForgotPassword = () => {
- ILLARoute.navigate("/forgotPassword")
-}
-
export const openDiscord = () => {
handleLinkOpen("https://discord.com/invite/illacloud")
}
-
-export const openIssues = () => {
- handleLinkOpen("https://github.com/illacloud/illa-builder/issues")
-}
-
-export const openDocumentation = () => {
- handleLinkOpen("https://www.illacloud.com/docs/about-illa")
-}
diff --git a/packages/illa-design b/packages/illa-design
index f065cfa737..3ab7f1734a 160000
--- a/packages/illa-design
+++ b/packages/illa-design
@@ -1 +1 @@
-Subproject commit f065cfa7378420c19203079584c929bb62be8438
+Subproject commit 3ab7f1734a75ea3060ab92ab52147acf22a67b7e
diff --git a/packages/illa-public-component b/packages/illa-public-component
index 0c7a40d6fd..1fffb26259 160000
--- a/packages/illa-public-component
+++ b/packages/illa-public-component
@@ -1 +1 @@
-Subproject commit 0c7a40d6fddf771a639a9d6f4d1e7bb78a8a81cb
+Subproject commit 1fffb26259df45a8e9598cf550eba3cefdc21483