@gct-paas/core 6.0.0-dev.9 → 6.0.0-test.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.esm.min.js +2 -2
- package/dist/{redirect-index-60183YGE.js → redirect-index-Rqeo3nQ0.js} +1 -1
- package/es/_virtual/_plugin-vue_export-helper.mjs +8 -0
- package/es/constants/core.d.ts +1 -0
- package/es/constants/core.d.ts.map +1 -0
- package/es/constants/core.mjs +2 -0
- package/es/constants/core.mjs.map +1 -0
- package/es/constants/default-date-type/default-date-type.d.ts +1 -0
- package/es/constants/default-date-type/default-date-type.d.ts.map +1 -0
- package/es/constants/default-date-type/default-date-type.mjs +2 -0
- package/es/constants/default-date-type/default-date-type.mjs.map +1 -0
- package/es/constants/editor-register/editor-register.d.ts +1 -0
- package/es/constants/editor-register/editor-register.d.ts.map +1 -0
- package/es/constants/editor-register/editor-register.mjs +2 -0
- package/es/constants/editor-register/editor-register.mjs.map +1 -0
- package/es/constants/expression-type/BuiltOperators.d.ts +1 -0
- package/es/constants/expression-type/BuiltOperators.d.ts.map +1 -0
- package/es/constants/expression-type/BuiltOperators.mjs +2 -0
- package/es/constants/expression-type/BuiltOperators.mjs.map +1 -0
- package/es/constants/expression-type/FunctionKeys.d.ts +1 -0
- package/es/constants/expression-type/FunctionKeys.d.ts.map +1 -0
- package/es/constants/expression-type/FunctionKeys.mjs +7 -0
- package/es/constants/expression-type/FunctionKeys.mjs.map +1 -0
- package/es/constants/expression-type/editor.d.ts +1 -0
- package/es/constants/expression-type/editor.d.ts.map +1 -0
- package/es/constants/expression-type/editor.mjs +2 -0
- package/es/constants/expression-type/editor.mjs.map +1 -0
- package/es/constants/expression-type/function.d.ts +1 -0
- package/es/constants/expression-type/function.d.ts.map +1 -0
- package/es/constants/expression-type/function.mjs +46 -1
- package/es/constants/expression-type/function.mjs.map +1 -0
- package/es/constants/expression-type/index.d.ts +1 -0
- package/es/constants/expression-type/index.d.ts.map +1 -0
- package/es/constants/expression-type/index.mjs +5 -0
- package/es/constants/expression-type/index.mjs.map +1 -0
- package/es/constants/expression-type/modeCfg.d.ts +1 -0
- package/es/constants/expression-type/modeCfg.d.ts.map +1 -0
- package/es/constants/expression-type/modeCfg.mjs +6 -2
- package/es/constants/expression-type/modeCfg.mjs.map +1 -0
- package/es/constants/expression-type/variable.d.ts +1 -0
- package/es/constants/expression-type/variable.d.ts.map +1 -0
- package/es/constants/expression-type/variable.mjs +2 -0
- package/es/constants/expression-type/variable.mjs.map +1 -0
- package/es/constants/form-container-type/form-container-type.d.ts +1 -0
- package/es/constants/form-container-type/form-container-type.d.ts.map +1 -0
- package/es/constants/form-container-type/form-container-type.mjs +2 -0
- package/es/constants/form-container-type/form-container-type.mjs.map +1 -0
- package/es/constants/index.d.ts +1 -0
- package/es/constants/index.d.ts.map +1 -0
- package/es/constants/index.mjs +2 -0
- package/es/constants/index.mjs.map +1 -0
- package/es/constants/page-designer/model.d.ts +1 -0
- package/es/constants/page-designer/model.d.ts.map +1 -0
- package/es/constants/page-designer/model.mjs +2 -0
- package/es/constants/page-designer/model.mjs.map +1 -0
- package/es/constants/page-designer/regex.d.ts +1 -0
- package/es/constants/page-designer/regex.d.ts.map +1 -0
- package/es/constants/page-designer/regex.mjs +2 -0
- package/es/constants/page-designer/regex.mjs.map +1 -0
- package/es/create-app-vue.d.ts +1 -0
- package/es/create-app-vue.d.ts.map +1 -0
- package/es/create-app-vue.mjs +2 -0
- package/es/create-app-vue.mjs.map +1 -0
- package/es/enums/app-designer/index.d.ts +1 -0
- package/es/enums/app-designer/index.d.ts.map +1 -0
- package/es/enums/app-designer/index.mjs +2 -0
- package/es/enums/app-designer/index.mjs.map +1 -0
- package/es/enums/appEnum.d.ts +1 -0
- package/es/enums/appEnum.d.ts.map +1 -0
- package/es/enums/appEnum.mjs +2 -0
- package/es/enums/appEnum.mjs.map +1 -0
- package/es/enums/appStateEnum.d.ts +1 -0
- package/es/enums/appStateEnum.d.ts.map +1 -0
- package/es/enums/appStateEnum.mjs +2 -0
- package/es/enums/appStateEnum.mjs.map +1 -0
- package/es/enums/authActionEnum.d.ts +1 -0
- package/es/enums/authActionEnum.d.ts.map +1 -0
- package/es/enums/authActionEnum.mjs +2 -0
- package/es/enums/authActionEnum.mjs.map +1 -0
- package/es/enums/breakpointEnum.d.ts +1 -0
- package/es/enums/breakpointEnum.d.ts.map +1 -0
- package/es/enums/breakpointEnum.mjs +2 -0
- package/es/enums/breakpointEnum.mjs.map +1 -0
- package/es/enums/cacheEnum.d.ts +1 -0
- package/es/enums/cacheEnum.d.ts.map +1 -0
- package/es/enums/cacheEnum.mjs +2 -0
- package/es/enums/cacheEnum.mjs.map +1 -0
- package/es/enums/designEnum.d.ts +1 -0
- package/es/enums/designEnum.d.ts.map +1 -0
- package/es/enums/designEnum.mjs +4 -1
- package/es/enums/designEnum.mjs.map +1 -0
- package/es/enums/developer-center/index.d.ts +1 -0
- package/es/enums/developer-center/index.d.ts.map +1 -0
- package/es/enums/developer-center/integration.d.ts +1 -0
- package/es/enums/developer-center/integration.d.ts.map +1 -0
- package/es/enums/developer-center/integration.mjs +2 -0
- package/es/enums/developer-center/integration.mjs.map +1 -0
- package/es/enums/exceptionEnum.d.ts +1 -0
- package/es/enums/exceptionEnum.d.ts.map +1 -0
- package/es/enums/exceptionEnum.mjs +2 -0
- package/es/enums/exceptionEnum.mjs.map +1 -0
- package/es/enums/expressionEnum.d.ts +1 -0
- package/es/enums/expressionEnum.d.ts.map +1 -0
- package/es/enums/expressionEnum.mjs +2 -0
- package/es/enums/expressionEnum.mjs.map +1 -0
- package/es/enums/globalEnum.d.ts +1 -0
- package/es/enums/globalEnum.d.ts.map +1 -0
- package/es/enums/globalEnum.mjs +2 -0
- package/es/enums/globalEnum.mjs.map +1 -0
- package/es/enums/httpEnum.d.ts +1 -0
- package/es/enums/httpEnum.d.ts.map +1 -0
- package/es/enums/httpEnum.mjs +2 -0
- package/es/enums/httpEnum.mjs.map +1 -0
- package/es/enums/index.d.ts +1 -0
- package/es/enums/index.d.ts.map +1 -0
- package/es/enums/index.mjs +2 -0
- package/es/enums/index.mjs.map +1 -0
- package/es/enums/menuEnum.d.ts +1 -0
- package/es/enums/menuEnum.d.ts.map +1 -0
- package/es/enums/menuEnum.mjs +2 -0
- package/es/enums/menuEnum.mjs.map +1 -0
- package/es/enums/page-designer/designer.d.ts +1 -0
- package/es/enums/page-designer/designer.d.ts.map +1 -0
- package/es/enums/page-designer/designer.mjs +2 -0
- package/es/enums/page-designer/designer.mjs.map +1 -0
- package/es/enums/page-designer/index.d.ts +1 -0
- package/es/enums/page-designer/index.d.ts.map +1 -0
- package/es/enums/page-designer/layout.d.ts +7 -0
- package/es/enums/page-designer/layout.d.ts.map +1 -0
- package/es/enums/page-designer/layout.mjs +10 -1
- package/es/enums/page-designer/layout.mjs.map +1 -0
- package/es/enums/page-designer/panel.d.ts +5 -2
- package/es/enums/page-designer/panel.d.ts.map +1 -0
- package/es/enums/page-designer/panel.mjs +5 -1
- package/es/enums/page-designer/panel.mjs.map +1 -0
- package/es/enums/page-designer/toolkit.d.ts +1 -0
- package/es/enums/page-designer/toolkit.d.ts.map +1 -0
- package/es/enums/page-designer/toolkit.mjs +2 -0
- package/es/enums/page-designer/toolkit.mjs.map +1 -0
- package/es/enums/page-designer/widget.d.ts +1 -0
- package/es/enums/page-designer/widget.d.ts.map +1 -0
- package/es/enums/page-designer/widget.mjs +2 -0
- package/es/enums/page-designer/widget.mjs.map +1 -0
- package/es/enums/pageEnum.d.ts +1 -0
- package/es/enums/pageEnum.d.ts.map +1 -0
- package/es/enums/pageEnum.mjs +2 -0
- package/es/enums/pageEnum.mjs.map +1 -0
- package/es/enums/plugin-enum.d.ts +1 -0
- package/es/enums/plugin-enum.d.ts.map +1 -0
- package/es/enums/plugin-enum.mjs +2 -0
- package/es/enums/plugin-enum.mjs.map +1 -0
- package/es/enums/process.d.ts +1 -0
- package/es/enums/process.d.ts.map +1 -0
- package/es/enums/process.mjs +2 -0
- package/es/enums/process.mjs.map +1 -0
- package/es/enums/processEnum.d.ts +1 -0
- package/es/enums/processEnum.d.ts.map +1 -0
- package/es/enums/processEnum.mjs +2 -0
- package/es/enums/processEnum.mjs.map +1 -0
- package/es/enums/roleEnum.d.ts +1 -0
- package/es/enums/roleEnum.d.ts.map +1 -0
- package/es/enums/roleEnum.mjs +2 -0
- package/es/enums/roleEnum.mjs.map +1 -0
- package/es/enums/sizeEnum.d.ts +1 -0
- package/es/enums/sizeEnum.d.ts.map +1 -0
- package/es/enums/sizeEnum.mjs +2 -0
- package/es/enums/sizeEnum.mjs.map +1 -0
- package/es/global/gct/gct.d.ts +5 -1
- package/es/global/gct/gct.d.ts.map +1 -0
- package/es/global/gct/gct.mjs +3 -0
- package/es/global/gct/gct.mjs.map +1 -0
- package/es/global/index.d.ts +1 -0
- package/es/global/index.d.ts.map +1 -0
- package/es/hooks/index.d.ts +1 -0
- package/es/hooks/index.d.ts.map +1 -0
- package/es/hooks/use-app-inst/use-app-inst.d.ts +1 -0
- package/es/hooks/use-app-inst/use-app-inst.d.ts.map +1 -0
- package/es/hooks/use-app-inst/use-app-inst.mjs +2 -0
- package/es/hooks/use-app-inst/use-app-inst.mjs.map +1 -0
- package/es/hooks/use-modal/use-modal.d.ts +1 -0
- package/es/hooks/use-modal/use-modal.d.ts.map +1 -0
- package/es/hooks/use-modal/use-modal.mjs +2 -0
- package/es/hooks/use-modal/use-modal.mjs.map +1 -0
- package/es/hooks/use-sub-app-utils/use-sub-app-utils.d.ts +1 -0
- package/es/hooks/use-sub-app-utils/use-sub-app-utils.d.ts.map +1 -0
- package/es/hooks/use-sub-app-utils/use-sub-app-utils.mjs +2 -0
- package/es/hooks/use-sub-app-utils/use-sub-app-utils.mjs.map +1 -0
- package/es/hooks/useCopyToClipboard.d.ts +1 -0
- package/es/hooks/useCopyToClipboard.d.ts.map +1 -0
- package/es/hooks/useCopyToClipboard.mjs +2 -0
- package/es/hooks/useCopyToClipboard.mjs.map +1 -0
- package/es/hooks/useDebouncePromise.d.ts +1 -0
- package/es/hooks/useDebouncePromise.d.ts.map +1 -0
- package/es/hooks/useDebouncePromise.mjs +2 -0
- package/es/hooks/useDebouncePromise.mjs.map +1 -0
- package/es/hooks/useFile.d.ts +1 -0
- package/es/hooks/useFile.d.ts.map +1 -0
- package/es/hooks/useFile.mjs +2 -0
- package/es/hooks/useFile.mjs.map +1 -0
- package/es/hooks/useObserver.d.ts +1 -0
- package/es/hooks/useObserver.d.ts.map +1 -0
- package/es/hooks/useObserver.mjs +2 -0
- package/es/hooks/useObserver.mjs.map +1 -0
- package/es/index.d.ts +1 -0
- package/es/index.d.ts.map +1 -0
- package/es/index.mjs +5 -3
- package/es/index.mjs.map +1 -0
- package/es/interface/i-action-item/i-action-item.d.ts +1 -0
- package/es/interface/i-action-item/i-action-item.d.ts.map +1 -0
- package/es/interface/i-app-context/i-app-context.d.ts +1 -0
- package/es/interface/i-app-context/i-app-context.d.ts.map +1 -0
- package/es/interface/i-dictionary/i-dictionary-item.d.ts +1 -0
- package/es/interface/i-dictionary/i-dictionary-item.d.ts.map +1 -0
- package/es/interface/i-dictionary/i-dictionary.d.ts +1 -0
- package/es/interface/i-dictionary/i-dictionary.d.ts.map +1 -0
- package/es/interface/i-field-code-chain/i-field-code-chain.d.ts +1 -0
- package/es/interface/i-field-code-chain/i-field-code-chain.d.ts.map +1 -0
- package/es/interface/i-global-register/i-global-register.d.ts +1 -0
- package/es/interface/i-global-register/i-global-register.d.ts.map +1 -0
- package/es/interface/i-global-var/i-global-var.d.ts +1 -0
- package/es/interface/i-global-var/i-global-var.d.ts.map +1 -0
- package/es/interface/i-kit-plugin-module/i-kit-plugin-module.d.ts +3 -1
- package/es/interface/i-kit-plugin-module/i-kit-plugin-module.d.ts.map +1 -0
- package/es/interface/i-mobile-home-menu-item/i-mobile-home-menu-item.d.ts +1 -0
- package/es/interface/i-mobile-home-menu-item/i-mobile-home-menu-item.d.ts.map +1 -0
- package/es/interface/i-pinia-action/i-global-actions.d.ts +1 -0
- package/es/interface/i-pinia-action/i-global-actions.d.ts.map +1 -0
- package/es/interface/i-pinia-getter/i-global-getters.d.ts +1 -0
- package/es/interface/i-pinia-getter/i-global-getters.d.ts.map +1 -0
- package/es/interface/i-pinia-state/i-global-state.d.ts +1 -0
- package/es/interface/i-pinia-state/i-global-state.d.ts.map +1 -0
- package/es/interface/i-popover-options/i-popover-options.d.ts +1 -0
- package/es/interface/i-popover-options/i-popover-options.d.ts.map +1 -0
- package/es/interface/index.d.ts +1 -0
- package/es/interface/index.d.ts.map +1 -0
- package/es/interface/model-designer/entity.d.ts +1 -0
- package/es/interface/model-designer/entity.d.ts.map +1 -0
- package/es/interface/model-designer/serial.d.ts +1 -0
- package/es/interface/model-designer/serial.d.ts.map +1 -0
- package/es/interface/model-designer/serial.mjs +2 -0
- package/es/interface/model-designer/serial.mjs.map +1 -0
- package/es/interface/open-util/i-app-full-screen-container-options/i-app-full-screen-container-options.d.ts +1 -0
- package/es/interface/open-util/i-app-full-screen-container-options/i-app-full-screen-container-options.d.ts.map +1 -0
- package/es/interface/open-util/i-confirm-util/i-confirm-util.d.ts +1 -0
- package/es/interface/open-util/i-confirm-util/i-confirm-util.d.ts.map +1 -0
- package/es/interface/open-util/i-drawer-options/i-drawer-options.d.ts +1 -0
- package/es/interface/open-util/i-drawer-options/i-drawer-options.d.ts.map +1 -0
- package/es/interface/open-util/i-message-util/i-message-util.d.ts +1 -0
- package/es/interface/open-util/i-message-util/i-message-util.d.ts.map +1 -0
- package/es/interface/open-util/i-modal/i-modal.d.ts +1 -0
- package/es/interface/open-util/i-modal/i-modal.d.ts.map +1 -0
- package/es/interface/open-util/i-modal-data/i-modal-data.d.ts +1 -0
- package/es/interface/open-util/i-modal-data/i-modal-data.d.ts.map +1 -0
- package/es/interface/open-util/i-modal-options/i-modal-options.d.ts +1 -0
- package/es/interface/open-util/i-modal-options/i-modal-options.d.ts.map +1 -0
- package/es/interface/open-util/i-open-window-options/i-open-window-options.d.ts +1 -0
- package/es/interface/open-util/i-open-window-options/i-open-window-options.d.ts.map +1 -0
- package/es/interface/open-util/i-overlay-container/i-overlay-container.d.ts +1 -0
- package/es/interface/open-util/i-overlay-container/i-overlay-container.d.ts.map +1 -0
- package/es/interface/open-util/i-overlay-controller/i-overlay-controller.d.ts +1 -0
- package/es/interface/open-util/i-overlay-controller/i-overlay-controller.d.ts.map +1 -0
- package/es/interface/open-util/i-overlay-popover-container/i-overlay-popover-container.d.ts +1 -0
- package/es/interface/open-util/i-overlay-popover-container/i-overlay-popover-container.d.ts.map +1 -0
- package/es/interface/open-util/index.d.ts +1 -0
- package/es/interface/open-util/index.d.ts.map +1 -0
- package/es/interface/provider/i-provider-basic/i-provider-basic.d.ts +1 -0
- package/es/interface/provider/i-provider-basic/i-provider-basic.d.ts.map +1 -0
- package/es/interface/provider/index.d.ts +1 -0
- package/es/interface/provider/index.d.ts.map +1 -0
- package/es/interface/style/i-border.d.ts +1 -0
- package/es/interface/style/i-border.d.ts.map +1 -0
- package/es/interface/style/i-font.d.ts +1 -0
- package/es/interface/style/i-font.d.ts.map +1 -0
- package/es/interface/style/i-margin.d.ts +1 -0
- package/es/interface/style/i-margin.d.ts.map +1 -0
- package/es/interface/style/i-padding.d.ts +1 -0
- package/es/interface/style/i-padding.d.ts.map +1 -0
- package/es/interface/style/i-position.d.ts +1 -0
- package/es/interface/style/i-position.d.ts.map +1 -0
- package/es/interface/style/i-spacing.d.ts +1 -0
- package/es/interface/style/i-spacing.d.ts.map +1 -0
- package/es/interface/style/index.d.ts +1 -0
- package/es/interface/style/index.d.ts.map +1 -0
- package/es/locale/auto-register.d.ts +1 -0
- package/es/locale/auto-register.d.ts.map +1 -0
- package/es/locale/auto-register.mjs +2 -0
- package/es/locale/auto-register.mjs.map +1 -0
- package/es/locale/index.d.ts +1 -0
- package/es/locale/index.d.ts.map +1 -0
- package/es/locale/index.mjs +7 -1
- package/es/locale/index.mjs.map +1 -0
- package/es/locale/sys/model.d.ts +1 -0
- package/es/locale/sys/model.d.ts.map +1 -0
- package/es/locale/sys/model.mjs +2 -0
- package/es/locale/sys/model.mjs.map +1 -0
- package/es/locale/sys.d.ts +1 -0
- package/es/locale/sys.d.ts.map +1 -0
- package/es/locale/sys.mjs +2 -0
- package/es/locale/sys.mjs.map +1 -0
- package/es/modules/env-manager/env-manager.const.d.ts +1 -0
- package/es/modules/env-manager/env-manager.const.d.ts.map +1 -0
- package/es/modules/env-manager/env-manager.const.mjs +2 -0
- package/es/modules/env-manager/env-manager.const.mjs.map +1 -0
- package/es/modules/env-manager/env-manager.d.ts +2 -0
- package/es/modules/env-manager/env-manager.d.ts.map +1 -0
- package/es/modules/env-manager/env-manager.interface.d.ts +7 -0
- package/es/modules/env-manager/env-manager.interface.d.ts.map +1 -0
- package/es/modules/env-manager/env-manager.interface.mjs +2 -0
- package/es/modules/env-manager/env-manager.interface.mjs.map +1 -0
- package/es/modules/env-manager/env-manager.mjs +11 -0
- package/es/modules/env-manager/env-manager.mjs.map +1 -0
- package/es/modules/env-manager/env-manager.util.d.ts +1 -0
- package/es/modules/env-manager/env-manager.util.d.ts.map +1 -0
- package/es/modules/env-manager/env-manager.util.mjs +2 -0
- package/es/modules/env-manager/env-manager.util.mjs.map +1 -0
- package/es/modules/env-manager/index.d.ts +1 -0
- package/es/modules/env-manager/index.d.ts.map +1 -0
- package/es/modules/error-handler/error-handler.const.d.ts +1 -0
- package/es/modules/error-handler/error-handler.const.d.ts.map +1 -0
- package/es/modules/error-handler/error-handler.const.mjs +2 -0
- package/es/modules/error-handler/error-handler.const.mjs.map +1 -0
- package/es/modules/error-handler/error-handler.interface.d.ts +1 -0
- package/es/modules/error-handler/error-handler.interface.d.ts.map +1 -0
- package/es/modules/error-handler/error-strategy.d.ts +1 -0
- package/es/modules/error-handler/error-strategy.d.ts.map +1 -0
- package/es/modules/error-handler/error-strategy.mjs +2 -0
- package/es/modules/error-handler/error-strategy.mjs.map +1 -0
- package/es/modules/error-handler/index.d.ts +1 -0
- package/es/modules/error-handler/index.d.ts.map +1 -0
- package/es/modules/error-handler/index.mjs +2 -0
- package/es/modules/error-handler/index.mjs.map +1 -0
- package/es/modules/mqtt/constants/mqtt.const.d.ts +1 -0
- package/es/modules/mqtt/constants/mqtt.const.d.ts.map +1 -0
- package/es/modules/mqtt/constants/mqtt.const.mjs +2 -0
- package/es/modules/mqtt/constants/mqtt.const.mjs.map +1 -0
- package/es/modules/mqtt/enums/mqtt-status.enum.d.ts +1 -0
- package/es/modules/mqtt/enums/mqtt-status.enum.d.ts.map +1 -0
- package/es/modules/mqtt/enums/mqtt-status.enum.mjs +2 -0
- package/es/modules/mqtt/enums/mqtt-status.enum.mjs.map +1 -0
- package/es/modules/mqtt/index.d.ts +1 -0
- package/es/modules/mqtt/index.d.ts.map +1 -0
- package/es/modules/mqtt/interfaces/i-mqtt.d.ts +1 -0
- package/es/modules/mqtt/interfaces/i-mqtt.d.ts.map +1 -0
- package/es/modules/mqtt/mqtt-client.d.ts +1 -0
- package/es/modules/mqtt/mqtt-client.d.ts.map +1 -0
- package/es/modules/mqtt/mqtt-client.mjs +2 -0
- package/es/modules/mqtt/mqtt-client.mjs.map +1 -0
- package/es/modules/mqtt/mqtt-manager.d.ts +2 -1
- package/es/modules/mqtt/mqtt-manager.d.ts.map +1 -0
- package/es/modules/mqtt/mqtt-manager.mjs +5 -2
- package/es/modules/mqtt/mqtt-manager.mjs.map +1 -0
- package/es/modules/mqtt/utils/mqtt-broker-url.util.d.ts +7 -0
- package/es/modules/mqtt/utils/mqtt-broker-url.util.d.ts.map +1 -0
- package/es/modules/mqtt/utils/mqtt-broker-url.util.mjs +13 -0
- package/es/modules/mqtt/utils/mqtt-broker-url.util.mjs.map +1 -0
- package/es/modules/platform-config/constants/index.d.ts +1 -0
- package/es/modules/platform-config/constants/index.d.ts.map +1 -0
- package/es/modules/platform-config/constants/login.const.d.ts +1 -0
- package/es/modules/platform-config/constants/login.const.d.ts.map +1 -0
- package/es/modules/platform-config/constants/login.const.mjs +2 -0
- package/es/modules/platform-config/constants/login.const.mjs.map +1 -0
- package/es/modules/platform-config/constants/org.const.d.ts +1 -0
- package/es/modules/platform-config/constants/org.const.d.ts.map +1 -0
- package/es/modules/platform-config/constants/org.const.mjs +2 -0
- package/es/modules/platform-config/constants/org.const.mjs.map +1 -0
- package/es/modules/platform-config/constants/theme.const.d.ts +1 -0
- package/es/modules/platform-config/constants/theme.const.d.ts.map +1 -0
- package/es/modules/platform-config/constants/theme.const.mjs +2 -0
- package/es/modules/platform-config/constants/theme.const.mjs.map +1 -0
- package/es/modules/platform-config/constants/watermark.const.d.ts +1 -0
- package/es/modules/platform-config/constants/watermark.const.d.ts.map +1 -0
- package/es/modules/platform-config/constants/watermark.const.mjs +2 -0
- package/es/modules/platform-config/constants/watermark.const.mjs.map +1 -0
- package/es/modules/platform-config/enums/deploy.enum.d.ts +1 -0
- package/es/modules/platform-config/enums/deploy.enum.d.ts.map +1 -0
- package/es/modules/platform-config/enums/deploy.enum.mjs +2 -0
- package/es/modules/platform-config/enums/deploy.enum.mjs.map +1 -0
- package/es/modules/platform-config/enums/index.d.ts +1 -0
- package/es/modules/platform-config/enums/index.d.ts.map +1 -0
- package/es/modules/platform-config/enums/login.enum.d.ts +1 -0
- package/es/modules/platform-config/enums/login.enum.d.ts.map +1 -0
- package/es/modules/platform-config/enums/login.enum.mjs +2 -0
- package/es/modules/platform-config/enums/login.enum.mjs.map +1 -0
- package/es/modules/platform-config/enums/platform.enum.d.ts +5 -0
- package/es/modules/platform-config/enums/platform.enum.d.ts.map +1 -0
- package/es/modules/platform-config/enums/platform.enum.mjs +8 -1
- package/es/modules/platform-config/enums/platform.enum.mjs.map +1 -0
- package/es/modules/platform-config/index.d.ts +1 -0
- package/es/modules/platform-config/index.d.ts.map +1 -0
- package/es/modules/platform-config/interfaces/index.d.ts +1 -0
- package/es/modules/platform-config/interfaces/index.d.ts.map +1 -0
- package/es/modules/platform-config/interfaces/login-config.interface.d.ts +1 -0
- package/es/modules/platform-config/interfaces/login-config.interface.d.ts.map +1 -0
- package/es/modules/platform-config/interfaces/platform-map.interface.d.ts +1 -0
- package/es/modules/platform-config/interfaces/platform-map.interface.d.ts.map +1 -0
- package/es/modules/platform-config/interfaces/theme-setting.interface.d.ts +1 -0
- package/es/modules/platform-config/interfaces/theme-setting.interface.d.ts.map +1 -0
- package/es/modules/platform-config/store.d.ts +5 -1
- package/es/modules/platform-config/store.d.ts.map +1 -0
- package/es/modules/platform-config/store.mjs +2 -0
- package/es/modules/platform-config/store.mjs.map +1 -0
- package/es/modules/platform-config/useBasicSetting.d.ts +1 -0
- package/es/modules/platform-config/useBasicSetting.d.ts.map +1 -0
- package/es/modules/platform-config/useBasicSetting.mjs +2 -0
- package/es/modules/platform-config/useBasicSetting.mjs.map +1 -0
- package/es/modules/platform-config/useDeploySetting.d.ts +1 -0
- package/es/modules/platform-config/useDeploySetting.d.ts.map +1 -0
- package/es/modules/platform-config/useDeploySetting.mjs +2 -0
- package/es/modules/platform-config/useDeploySetting.mjs.map +1 -0
- package/es/modules/platform-config/useLoginSetting.d.ts +1 -0
- package/es/modules/platform-config/useLoginSetting.d.ts.map +1 -0
- package/es/modules/platform-config/useLoginSetting.mjs +2 -0
- package/es/modules/platform-config/useLoginSetting.mjs.map +1 -0
- package/es/modules/platform-config/useOrgSetting.d.ts +1 -0
- package/es/modules/platform-config/useOrgSetting.d.ts.map +1 -0
- package/es/modules/platform-config/useOrgSetting.mjs +2 -0
- package/es/modules/platform-config/useOrgSetting.mjs.map +1 -0
- package/es/modules/platform-config/useProjectSetting.d.ts +1 -0
- package/es/modules/platform-config/useProjectSetting.d.ts.map +1 -0
- package/es/modules/platform-config/useProjectSetting.mjs +2 -0
- package/es/modules/platform-config/useProjectSetting.mjs.map +1 -0
- package/es/modules/platform-config/useSecuritySetting.d.ts +2 -0
- package/es/modules/platform-config/useSecuritySetting.d.ts.map +1 -0
- package/es/modules/platform-config/useSecuritySetting.mjs +13 -0
- package/es/modules/platform-config/useSecuritySetting.mjs.map +1 -0
- package/es/modules/platform-config/useThemeSetting.d.ts +1 -0
- package/es/modules/platform-config/useThemeSetting.d.ts.map +1 -0
- package/es/modules/platform-config/useThemeSetting.mjs +2 -0
- package/es/modules/platform-config/useThemeSetting.mjs.map +1 -0
- package/es/modules/platform-config/useWatermarkSetting.d.ts +1 -0
- package/es/modules/platform-config/useWatermarkSetting.d.ts.map +1 -0
- package/es/modules/platform-config/useWatermarkSetting.mjs +2 -0
- package/es/modules/platform-config/useWatermarkSetting.mjs.map +1 -0
- package/es/modules/sign-log/index.d.ts +1 -0
- package/es/modules/sign-log/index.d.ts.map +1 -0
- package/es/modules/sign-log/sign-log.d.ts +1 -0
- package/es/modules/sign-log/sign-log.d.ts.map +1 -0
- package/es/modules/sign-log/sign-log.mjs +2 -0
- package/es/modules/sign-log/sign-log.mjs.map +1 -0
- package/es/modules/sign-log/sing-log.interface.d.ts +1 -0
- package/es/modules/sign-log/sing-log.interface.d.ts.map +1 -0
- package/es/modules/system-mqtt/index.d.ts +1 -0
- package/es/modules/system-mqtt/index.d.ts.map +1 -0
- package/es/modules/system-mqtt/system-mqtt.interface.d.ts +1 -0
- package/es/modules/system-mqtt/system-mqtt.interface.d.ts.map +1 -0
- package/es/modules/system-mqtt/system-mqtt.service.d.ts +1 -0
- package/es/modules/system-mqtt/system-mqtt.service.d.ts.map +1 -0
- package/es/modules/system-mqtt/system-mqtt.service.mjs +2 -0
- package/es/modules/system-mqtt/system-mqtt.service.mjs.map +1 -0
- package/es/modules/user-stores/index.d.ts +1 -0
- package/es/modules/user-stores/index.d.ts.map +1 -0
- package/es/modules/user-stores/store/permission.store.d.ts +1 -0
- package/es/modules/user-stores/store/permission.store.d.ts.map +1 -0
- package/es/modules/user-stores/store/permission.store.mjs +2 -0
- package/es/modules/user-stores/store/permission.store.mjs.map +1 -0
- package/es/modules/user-stores/store/tenant.store.d.ts +1 -0
- package/es/modules/user-stores/store/tenant.store.d.ts.map +1 -0
- package/es/modules/user-stores/store/tenant.store.mjs +2 -0
- package/es/modules/user-stores/store/tenant.store.mjs.map +1 -0
- package/es/modules/user-stores/store/user.store.d.ts +5 -0
- package/es/modules/user-stores/store/user.store.d.ts.map +1 -0
- package/es/modules/user-stores/store/user.store.mjs +2 -0
- package/es/modules/user-stores/store/user.store.mjs.map +1 -0
- package/es/modules/user-stores/types/permission.d.ts +1 -0
- package/es/modules/user-stores/types/permission.d.ts.map +1 -0
- package/es/modules/user-stores/types/tenant.d.ts +1 -0
- package/es/modules/user-stores/types/tenant.d.ts.map +1 -0
- package/es/modules/user-stores/types/user.d.ts +1 -0
- package/es/modules/user-stores/types/user.d.ts.map +1 -0
- package/es/router/guard/index.d.ts +1 -0
- package/es/router/guard/index.d.ts.map +1 -0
- package/es/router/guard/index.mjs +2 -0
- package/es/router/guard/index.mjs.map +1 -0
- package/es/router/index.d.ts +1 -0
- package/es/router/index.d.ts.map +1 -0
- package/es/router/index.mjs +2 -0
- package/es/router/index.mjs.map +1 -0
- package/es/router/redirect/redirect-index.vue.d.ts +1 -0
- package/es/router/redirect/redirect-index.vue.d.ts.map +1 -0
- package/es/router/redirect/redirect-index.vue.mjs +8 -1
- package/es/router/redirect/redirect-index.vue.mjs.map +1 -0
- package/es/router/redirect/redirect-index.vue_vue_type_script_setup_true_lang.mjs +18 -4
- package/es/router/redirect/redirect-index.vue_vue_type_script_setup_true_lang.mjs.map +1 -0
- package/es/setup-app.d.ts +1 -0
- package/es/setup-app.d.ts.map +1 -0
- package/es/setup-app.mjs +8 -0
- package/es/setup-app.mjs.map +1 -0
- package/es/state/global-pinia-state/global-pinia-state.d.ts +1 -0
- package/es/state/global-pinia-state/global-pinia-state.d.ts.map +1 -0
- package/es/state/global-pinia-state/global-pinia-state.mjs +2 -0
- package/es/state/global-pinia-state/global-pinia-state.mjs.map +1 -0
- package/es/state/index.d.ts +1 -0
- package/es/state/index.d.ts.map +1 -0
- package/es/store/global-store.d.ts +1 -0
- package/es/store/global-store.d.ts.map +1 -0
- package/es/store/global-store.mjs +2 -0
- package/es/store/global-store.mjs.map +1 -0
- package/es/store/index.d.ts +1 -0
- package/es/store/index.d.ts.map +1 -0
- package/es/store/index.mjs +2 -0
- package/es/store/index.mjs.map +1 -0
- package/es/store/session-store.d.ts +1 -0
- package/es/store/session-store.d.ts.map +1 -0
- package/es/store/session-store.mjs +2 -0
- package/es/store/session-store.mjs.map +1 -0
- package/es/store/storage-store.d.ts +1 -0
- package/es/store/storage-store.d.ts.map +1 -0
- package/es/store/storage-store.mjs +2 -0
- package/es/store/storage-store.mjs.map +1 -0
- package/es/types/index.d.ts +4 -17
- package/es/utils/auth-util/auth-util.d.ts +1 -0
- package/es/utils/auth-util/auth-util.d.ts.map +1 -0
- package/es/utils/auth-util/auth-util.mjs +2 -0
- package/es/utils/auth-util/auth-util.mjs.map +1 -0
- package/es/utils/axios/check-status.d.ts +1 -0
- package/es/utils/axios/check-status.d.ts.map +1 -0
- package/es/utils/axios/check-status.mjs +2 -0
- package/es/utils/axios/check-status.mjs.map +1 -0
- package/es/utils/axios/interceptors.d.ts +1 -0
- package/es/utils/axios/interceptors.d.ts.map +1 -0
- package/es/utils/axios/interceptors.mjs +35 -3
- package/es/utils/axios/interceptors.mjs.map +1 -0
- package/es/utils/cache-adapter/cache-adapter.d.ts +1 -0
- package/es/utils/cache-adapter/cache-adapter.d.ts.map +1 -0
- package/es/utils/cache-adapter/cache-adapter.mjs +2 -0
- package/es/utils/cache-adapter/cache-adapter.mjs.map +1 -0
- package/es/utils/css-loader/css-loader.d.ts +1 -0
- package/es/utils/css-loader/css-loader.d.ts.map +1 -0
- package/es/utils/css-loader/css-loader.mjs +2 -0
- package/es/utils/css-loader/css-loader.mjs.map +1 -0
- package/es/utils/data-prems/const.d.ts +1 -0
- package/es/utils/data-prems/const.d.ts.map +1 -0
- package/es/utils/data-prems/const.mjs +2 -0
- package/es/utils/data-prems/const.mjs.map +1 -0
- package/es/utils/design/design.d.ts +1 -0
- package/es/utils/design/design.d.ts.map +1 -0
- package/es/utils/design/design.mjs +2 -0
- package/es/utils/design/design.mjs.map +1 -0
- package/es/utils/deviceFingerprint.d.ts +1 -0
- package/es/utils/deviceFingerprint.d.ts.map +1 -0
- package/es/utils/deviceFingerprint.mjs +2 -0
- package/es/utils/deviceFingerprint.mjs.map +1 -0
- package/es/utils/dictionary/dictionary.d.ts +1 -0
- package/es/utils/dictionary/dictionary.d.ts.map +1 -0
- package/es/utils/dictionary/dictionary.mjs +2 -0
- package/es/utils/dictionary/dictionary.mjs.map +1 -0
- package/es/utils/file/base64Conver.d.ts +1 -0
- package/es/utils/file/base64Conver.d.ts.map +1 -0
- package/es/utils/file/base64Conver.mjs +2 -0
- package/es/utils/file/base64Conver.mjs.map +1 -0
- package/es/utils/file/download.d.ts +1 -0
- package/es/utils/file/download.d.ts.map +1 -0
- package/es/utils/file/download.mjs +2 -0
- package/es/utils/file/download.mjs.map +1 -0
- package/es/utils/file/parser.d.ts +1 -0
- package/es/utils/file/parser.d.ts.map +1 -0
- package/es/utils/file/parser.mjs +2 -0
- package/es/utils/file/parser.mjs.map +1 -0
- package/es/utils/i18n/index.d.ts +1 -0
- package/es/utils/i18n/index.d.ts.map +1 -0
- package/es/utils/i18n/index.mjs +2 -0
- package/es/utils/i18n/index.mjs.map +1 -0
- package/es/utils/index.d.ts +1 -0
- package/es/utils/index.d.ts.map +1 -0
- package/es/utils/is-sort-filed/is-sort-filed.d.ts +1 -0
- package/es/utils/is-sort-filed/is-sort-filed.d.ts.map +1 -0
- package/es/utils/is-sort-filed/is-sort-filed.mjs +2 -0
- package/es/utils/is-sort-filed/is-sort-filed.mjs.map +1 -0
- package/es/utils/kit-pkg-util/kit-pkg-util.d.ts +5 -0
- package/es/utils/kit-pkg-util/kit-pkg-util.d.ts.map +1 -0
- package/es/utils/kit-pkg-util/kit-pkg-util.mjs +15 -2
- package/es/utils/kit-pkg-util/kit-pkg-util.mjs.map +1 -0
- package/es/utils/linked-list/linked-list.d.ts +1 -0
- package/es/utils/linked-list/linked-list.d.ts.map +1 -0
- package/es/utils/linked-list/linked-list.mjs +2 -0
- package/es/utils/linked-list/linked-list.mjs.map +1 -0
- package/es/utils/linked-node/linked-node.d.ts +1 -0
- package/es/utils/linked-node/linked-node.d.ts.map +1 -0
- package/es/utils/linked-node/linked-node.mjs +2 -0
- package/es/utils/linked-node/linked-node.mjs.map +1 -0
- package/es/utils/lowcode/utils.d.ts +1 -0
- package/es/utils/lowcode/utils.d.ts.map +1 -0
- package/es/utils/lowcode/utils.mjs +2 -0
- package/es/utils/lowcode/utils.mjs.map +1 -0
- package/es/utils/lowcode/validate.d.ts +1 -0
- package/es/utils/lowcode/validate.d.ts.map +1 -0
- package/es/utils/lowcode/validate.mjs +2 -0
- package/es/utils/lowcode/validate.mjs.map +1 -0
- package/es/utils/mitt/mitt.d.ts +1 -0
- package/es/utils/mitt/mitt.d.ts.map +1 -0
- package/es/utils/mitt/mitt.mjs +2 -0
- package/es/utils/mitt/mitt.mjs.map +1 -0
- package/es/utils/model-loader/model-loader.d.ts +1 -0
- package/es/utils/model-loader/model-loader.d.ts.map +1 -0
- package/es/utils/model-loader/model-loader.mjs +2 -0
- package/es/utils/model-loader/model-loader.mjs.map +1 -0
- package/es/utils/namespace/namespace.d.ts +1 -0
- package/es/utils/namespace/namespace.d.ts.map +1 -0
- package/es/utils/namespace/namespace.mjs +2 -0
- package/es/utils/namespace/namespace.mjs.map +1 -0
- package/es/utils/openUtil/index.d.ts +1 -0
- package/es/utils/openUtil/index.d.ts.map +1 -0
- package/es/utils/openUtil/modal/modal.d.ts +1 -0
- package/es/utils/openUtil/modal/modal.d.ts.map +1 -0
- package/es/utils/openUtil/modal/modal.mjs +2 -0
- package/es/utils/openUtil/modal/modal.mjs.map +1 -0
- package/es/utils/openUtil/overlay-container/overlay-container.d.ts +1 -0
- package/es/utils/openUtil/overlay-container/overlay-container.d.ts.map +1 -0
- package/es/utils/openUtil/overlay-container/overlay-container.mjs +7 -0
- package/es/utils/openUtil/overlay-container/overlay-container.mjs.map +1 -0
- package/es/utils/openUtil/overlay-popover-container/overlay-popover-container.d.ts +1 -0
- package/es/utils/openUtil/overlay-popover-container/overlay-popover-container.d.ts.map +1 -0
- package/es/utils/openUtil/overlay-popover-container/overlay-popover-container.mjs +2 -0
- package/es/utils/openUtil/overlay-popover-container/overlay-popover-container.mjs.map +1 -0
- package/es/utils/permission.d.ts +1 -0
- package/es/utils/permission.d.ts.map +1 -0
- package/es/utils/permission.mjs +2 -0
- package/es/utils/permission.mjs.map +1 -0
- package/es/utils/plugin-pkg-util/plugin-pkg-util.d.ts +1 -0
- package/es/utils/plugin-pkg-util/plugin-pkg-util.d.ts.map +1 -0
- package/es/utils/plugin-pkg-util/plugin-pkg-util.mjs +2 -0
- package/es/utils/plugin-pkg-util/plugin-pkg-util.mjs.map +1 -0
- package/es/utils/plugin-static-resource/plugin-static-resource.d.ts +1 -0
- package/es/utils/plugin-static-resource/plugin-static-resource.d.ts.map +1 -0
- package/es/utils/plugin-static-resource/plugin-static-resource.mjs +2 -0
- package/es/utils/plugin-static-resource/plugin-static-resource.mjs.map +1 -0
- package/es/utils/script-loader/script-loader.d.ts +1 -0
- package/es/utils/script-loader/script-loader.d.ts.map +1 -0
- package/es/utils/script-loader/script-loader.mjs +2 -0
- package/es/utils/script-loader/script-loader.mjs.map +1 -0
- package/es/utils/select-user-utils.d.ts +1 -0
- package/es/utils/select-user-utils.d.ts.map +1 -0
- package/es/utils/select-user-utils.mjs +2 -0
- package/es/utils/select-user-utils.mjs.map +1 -0
- package/es/utils/style/index.d.ts +1 -0
- package/es/utils/style/index.d.ts.map +1 -0
- package/es/utils/style/index.mjs +2 -0
- package/es/utils/style/index.mjs.map +1 -0
- package/es/utils/text-measure/text-measure.d.ts +1 -0
- package/es/utils/text-measure/text-measure.d.ts.map +1 -0
- package/es/utils/text-measure/text-measure.mjs +2 -0
- package/es/utils/text-measure/text-measure.mjs.map +1 -0
- package/es/utils/tools/tools.d.ts +3 -0
- package/es/utils/tools/tools.d.ts.map +1 -0
- package/es/utils/tools/tools.mjs +10 -4
- package/es/utils/tools/tools.mjs.map +1 -0
- package/es/utils/treeHelper/treeHelper.d.ts +1 -0
- package/es/utils/treeHelper/treeHelper.d.ts.map +1 -0
- package/es/utils/treeHelper/treeHelper.mjs +2 -0
- package/es/utils/treeHelper/treeHelper.mjs.map +1 -0
- package/es/utils/uploader/uploader.d.ts +1 -0
- package/es/utils/uploader/uploader.d.ts.map +1 -0
- package/es/utils/uploader/uploader.mjs +2 -0
- package/es/utils/uploader/uploader.mjs.map +1 -0
- package/es/utils/useUUid.d.ts +1 -0
- package/es/utils/useUUid.d.ts.map +1 -0
- package/es/utils/useUUid.mjs +2 -0
- package/es/utils/useUUid.mjs.map +1 -0
- package/es/utils/util.d.ts +1 -0
- package/es/utils/util.d.ts.map +1 -0
- package/es/utils/util.mjs +2 -0
- package/es/utils/util.mjs.map +1 -0
- package/es/utils/uuid/uuid.d.ts +1 -0
- package/es/utils/uuid/uuid.d.ts.map +1 -0
- package/es/utils/uuid/uuid.mjs +2 -0
- package/es/utils/uuid/uuid.mjs.map +1 -0
- package/es/utils/validate.d.ts +1 -0
- package/es/utils/validate.d.ts.map +1 -0
- package/es/utils/validate.mjs +2 -0
- package/es/utils/validate.mjs.map +1 -0
- package/es/utils/value-helper/value-helper.d.ts +1 -0
- package/es/utils/value-helper/value-helper.d.ts.map +1 -0
- package/es/utils/value-helper/value-helper.mjs +2 -0
- package/es/utils/value-helper/value-helper.mjs.map +1 -0
- package/es/utils/vue-component-code.d.ts +1 -0
- package/es/utils/vue-component-code.d.ts.map +1 -0
- package/es/utils/vue-component-code.mjs +2 -0
- package/es/utils/vue-component-code.mjs.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i-spacing.d.ts","sourceRoot":"","sources":["../../../src/interface/style/i-spacing.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/interface/style/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,YAAY,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-register.d.ts","sourceRoot":"","sources":["../../src/locale/auto-register.ts"],"names":[],"mappings":"AAOA,8BAA8B;AAC9B,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-register.mjs","names":[],"sources":["../../src/locale/auto-register.ts"],"sourcesContent":["const localeModules = import.meta.glob(\n ['./**/*.ts', '!./index.ts', '!./auto-register.ts'],\n {\n eager: true,\n },\n) as Record<string, { default: Record<string, unknown> }>;\n\n/** 注册 core 包的 locale 多语言资源 */\nexport function registerCoreLocale(): void {\n _gct.i18nUtil.autoRegisterLocale(localeModules);\n}\n"],"mappings":";;;AAAA,IAAM,gBAAgB,uBAAA,OAAA;CAAA,kBAAA;CAAA,YAAA;EAKrB;;AAGD,SAAgB,qBAA2B;CACzC,KAAK,SAAS,mBAAmB,cAAc"}
|
package/es/locale/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/locale/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,GAAG,EAAO,MAAM,KAAK,CAAC;AAEpC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,KAAK,UAAU,GAAG,IAAI,CACpB,kBAAkB,EAClB,IAAI,GAAG,YAAY,GAAG,iBAAiB,GAAG,UAAU,GAAG,aAAa,GAAG,OAAO,CAC/E,CAAC;AACF,KAAK,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC9C,KAAK,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;AAC3D,qBAAa,UAAU;IACrB,UAAU,EAAE,UAAU,EAAE,CAAM;IAE9B,IAAI,EAAE,IAAI,CAgBP;IAEH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,gBAAgB,IAAI,UAAU,EAAE,CAInC;IACK,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7C;;;;;OAKG;IACH,qBAAqB,CAAC,YAAY,EAAE,mBAAmB,GAAG,IAAI;IAM9D;;;;;;OAMG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI;IAKlE,sBAAsB;IAChB,WAAW;IAUX,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,iBAAiB;cACD,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB7C,YAAY;cACI,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;cAsB5B,YAAY,CAC1B,GAAG,CAAC,EAAE,MAAM,EACZ,MAAM,GAAE,MAAoB,GAC3B,OAAO,CAAC,IAAI,CAAC;IAahB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAoCrB,aAAa,CACX,OAAO,EACH;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAClB;QACE,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,eAAe,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GACJ,MAAM;IAcT;;;;;;;OAOG;IACH,kBAAkB,CAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,EAChE,MAAM,GAAE,MAAgB,GACvB,IAAI;IAWP,qEAAqE;IACrE,OAAO,CAAC,eAAe;IAMvB,0EAA0E;IAC1E,OAAO,CAAC,aAAa;IAmBrB;;;;OAIG;IACH,OAAO,CAAC,eAAe;CAGxB;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,QAEjC"}
|
package/es/locale/index.mjs
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { EnvironmentType } from "../modules/env-manager/env-manager.interface.mjs";
|
|
1
2
|
import { globalRefStorage } from "../store/storage-store.mjs";
|
|
2
3
|
import "../store/index.mjs";
|
|
4
|
+
import "../modules/env-manager/index.mjs";
|
|
3
5
|
import { createI18n } from "vue-i18n";
|
|
4
6
|
import { HttpUtil } from "@gct-paas/api";
|
|
5
7
|
//#region src/locale/index.ts
|
|
@@ -130,7 +132,9 @@ var LocaleUtil = class {
|
|
|
130
132
|
}
|
|
131
133
|
getMessageUrl(payload) {
|
|
132
134
|
if ("app" in payload) {
|
|
133
|
-
|
|
135
|
+
let tag = payload.env;
|
|
136
|
+
if (payload.env === EnvironmentType.DEV) tag = `dev_${payload.branch}`;
|
|
137
|
+
else if (payload.env === EnvironmentType.SANDBOX) tag = EnvironmentType.PROD;
|
|
134
138
|
return `/minio/${payload.app}/locale-js/${tag}/${payload.locale}__.json`;
|
|
135
139
|
}
|
|
136
140
|
return `/minio/locale-js/${payload.locale}__platform__.json`;
|
|
@@ -183,3 +187,5 @@ function setupI18n(app) {
|
|
|
183
187
|
}
|
|
184
188
|
//#endregion
|
|
185
189
|
export { LocaleUtil, setupI18n };
|
|
190
|
+
|
|
191
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../src/locale/index.ts"],"sourcesContent":["import { createI18n } from 'vue-i18n';\nimport type { I18n } from 'vue-i18n';\nimport type { App, Ref } from 'vue';\nimport { globalRefStorage } from '@/store';\nimport type { I18nConfigResponse } from '@gct-paas/api/platform';\nimport { HttpUtil } from '@gct-paas/api';\nimport { EnvironmentType } from '../modules/env-manager';\n\ntype localeItem = Pick<\n I18nConfigResponse,\n 'id' | 'configured' | 'defaultLanguage' | 'language' | 'languageTag' | 'state'\n>;\ntype ILocaleMessages = Record<string, string>;\ntype ILocaleDeclarations = Record<string, ILocaleMessages>;\nexport class LocaleUtil {\n localeList: localeItem[] = [];\n\n i18n: I18n = createI18n({\n legacy: false,\n locale: 'zh-CN',\n fallbackLocale: 'en',\n messages: {\n en: {\n message: {\n hello: 'hello world',\n },\n },\n ja: {\n message: {\n hello: 'こんにちは、世界',\n },\n },\n },\n });\n\n get locale(): string {\n return globalRefStorage.value.lang;\n }\n\n get enableLocaleList(): localeItem[] {\n return this.localeList.filter(d => {\n return d.configured === 1 && d.state === 1;\n });\n }\n async changeLang(lang: string): Promise<void> {\n globalRefStorage.value.lang = lang;\n (this.i18n.global.locale as Ref<string>).value = lang;\n this.setHtmlPageLang(lang);\n await this.loadI18nJson();\n }\n /**\n * 动态增量新增多语言声明。\n * 传入语言标识与文案键值映射后,会与现有语言包进行增量合并。\n *\n * @param {ILocaleDeclarations} declarations\n */\n addLocaleDeclarations(declarations: ILocaleDeclarations): void {\n Object.entries(declarations).forEach(([locale, messages]) => {\n this.i18n.global.mergeLocaleMessage(locale, messages);\n });\n }\n\n /**\n * 动态增量新增单语言声明。\n * 仅对指定语言进行文案合并,适用于按需加载场景。\n *\n * @param {string} locale 语言标识\n * @param {ILocaleMessages} messages 文案键值映射\n */\n addLocaleMessages(locale: string, messages: ILocaleMessages): void {\n this.addLocaleDeclarations({\n [locale]: messages,\n });\n }\n /**只加载应用专用i18n JSON */\n async initAppJson() {\n const app_platformUrl = this.getMessageUrl({\n locale: this.locale,\n app: _gct.store.context.aid,\n env: _gct.env.getEnv(),\n branch: _gct.store.context.bid,\n });\n await this.loadMessages(app_platformUrl);\n }\n\n async init(): Promise<void> {\n await this.loadLocales();\n await this.loadI18nJson();\n }\n\n /**加载应用国际化json */\n protected async loadI18nJson(): Promise<void> {\n //平台json\n const platformUrl = this.getMessageUrl({\n locale: this.locale,\n });\n //应用json\n const app_platformUrl = _gct.store.context.aid\n ? this.getMessageUrl({\n locale: this.locale,\n app: _gct.store.context.aid,\n env: _gct.env.getEnv(),\n branch: _gct.store.context.bid,\n })\n : undefined;\n try {\n await Promise.all([\n this.loadMessages(platformUrl),\n this.loadMessages(app_platformUrl),\n ]);\n } catch (error) {\n console.error('加载国际化资源失败', error);\n }\n }\n\n /**加载语言列表 */\n protected async loadLocales(): Promise<void> {\n const res = await _api.platform.i18NConfig.getList({});\n this.localeList = res\n .map(i => {\n return {\n id: i.id,\n configured: i.configured,\n defaultLanguage: i.defaultLanguage,\n language: i.language,\n languageTag: i.languageTag,\n state: i.state,\n };\n })\n .filter(i => i.configured === 1 && i.state === 1);\n const defaultItem = this.localeList.find(item => !!item.defaultLanguage);\n globalRefStorage.value.lang =\n (globalRefStorage.value.lang ?? defaultItem?.languageTag) || 'zh-CN';\n (this.i18n.global.locale as Ref<string>).value =\n globalRefStorage.value.lang;\n this.setHtmlPageLang(globalRefStorage.value.lang);\n }\n\n protected async loadMessages(\n url?: string,\n locale: string = this.locale,\n ): Promise<void> {\n if (!url) return;\n const data = await HttpUtil.get<string>(\n url,\n {},\n {},\n {},\n { headers: { 'Content-Type': undefined }, nativeData: true },\n );\n const messages = this.parseMessages(data);\n this.i18n.global.mergeLocaleMessage(locale, messages);\n }\n\n /**\n * 容错解析多语言文件内容。\n * 兼容:已解析的 JSON 对象、JSON 字符串、双重编码的 JSON 字符串、旧版按行 key:value 文本。\n *\n * @param data 接口返回的多语言内容\n * @returns 解析后的 key→文案 映射\n */\n private parseMessages(data: unknown): ILocaleMessages {\n // 新模式:已为对象,直接返回\n if (data !== null && typeof data === 'object' && !Array.isArray(data)) {\n return data as ILocaleMessages;\n }\n if (typeof data !== 'string') return {};\n\n const str = data.trim();\n if (!str) return {};\n\n // 新模式:JSON 字符串(含双重编码场景,最多解析两次)\n try {\n let parsed: unknown = JSON.parse(str);\n if (typeof parsed === 'string') {\n parsed = JSON.parse(parsed);\n }\n if (\n parsed !== null &&\n typeof parsed === 'object' &&\n !Array.isArray(parsed)\n ) {\n return parsed as ILocaleMessages;\n }\n } catch {\n // 非 JSON,进入旧模式回退\n }\n\n // 旧模式:按行 key:value 解析\n // TODO: 旧模式仅为兼容历史多语言文件保留,过段时间待所有资源迁移到 JSON 后删除\n return str.split('\\n').reduce((acc: ILocaleMessages, item: string) => {\n const [key, ...value] = item.split(':');\n acc[key as string] = value.join(':');\n return acc;\n }, {});\n }\n\n getMessageUrl(\n payload:\n | { locale: string }\n | {\n locale: string;\n app: string;\n env: EnvironmentType;\n branch?: string;\n },\n ): string {\n if ('app' in payload) {\n // 环境标识:dev 环境带分支号;沙箱环境(sbx)复用 prod 产物\n let tag: string = payload.env;\n if (payload.env === EnvironmentType.DEV) {\n tag = `dev_${payload.branch}`;\n } else if (payload.env === EnvironmentType.SANDBOX) {\n tag = EnvironmentType.PROD;\n }\n return `/minio/${payload.app}/locale-js/${tag}/${payload.locale}__.json`;\n }\n return `/minio/locale-js/${payload.locale}__platform__.json`;\n }\n\n /**\n * 自动注册 import.meta.glob 扫描到的 locale 模块。\n * 根据文件路径生成 key(去除 locale 目录和 .ts 后缀,/ 替换为 .),\n * 构建嵌套对象后合并到 i18n 实例。\n *\n * @param globResult - import.meta.glob 返回的模块映射\n * @param locale - 目标语言标识,默认 'zh-CN'\n */\n autoRegisterLocale(\n globResult: Record<string, { default: Record<string, unknown> }>,\n locale: string = 'zh-CN',\n ): void {\n for (const path in globResult) {\n const mod = globResult[path];\n if (!mod?.default) continue;\n const key = this.pathToLocaleKey(path);\n if (!key) continue;\n const messages = this.flattenObject(mod.default, key);\n this.addLocaleMessages(locale, messages as ILocaleMessages);\n }\n }\n\n /** 路径转 key: './sys/pageDesigner.ts' → 'sys.pageDesigner',排除 index */\n private pathToLocaleKey(path: string): string | null {\n const cleaned = path.replace(/^\\.\\//, '').replace(/\\.ts$/, '');\n if (cleaned === 'index' || cleaned.endsWith('/index')) return null;\n return cleaned.replace(/\\//g, '.');\n }\n\n /** 将嵌套对象展平为点号路径: { a: { b: 'hi' } }, 'prefix' → { 'prefix.a.b': 'hi' } */\n private flattenObject(\n obj: Record<string, unknown>,\n prefix: string,\n ): Record<string, unknown> {\n const result: Record<string, unknown> = {};\n for (const [k, v] of Object.entries(obj)) {\n const fullKey = `${prefix}.${k}`;\n if (v !== null && typeof v === 'object' && !Array.isArray(v)) {\n Object.assign(\n result,\n this.flattenObject(v as Record<string, unknown>, fullKey),\n );\n } else {\n result[fullKey] = v;\n }\n }\n return result;\n }\n\n /**\n * 设置 HTML 根元素的 lang 属性,供浏览器、辅助技术识别当前语言\n *\n * @param locale 语言标识,如 zh-CN、en\n */\n private setHtmlPageLang(locale: string): void {\n document.querySelector('html')?.setAttribute('lang', locale);\n }\n}\n\nexport function setupI18n(app: App) {\n app.use(_gct.i18n);\n}\n"],"mappings":"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"}
|
package/es/locale/sys/model.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/locale/sys/model.ts"],"names":[],"mappings":";;;;AAAA,wBAGE"}
|
package/es/locale/sys/model.mjs
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.mjs","names":[],"sources":["../../../src/locale/sys/model.ts"],"sourcesContent":["export default {\n modelNameError: '不能包含表情符号及以下特殊字符:?*:,[]#',\n notModelNameError: '不能包含表情符号及以下特殊字符:\\\\/?*:,[]#',\n};\n"],"mappings":";;;AAAA,IAAA,gBAAe;CACb,gBAAgB;CAChB,mBAAmB;CACpB"}
|
package/es/locale/sys.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sys.d.ts","sourceRoot":"","sources":["../../src/locale/sys.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,wBAoBE"}
|
package/es/locale/sys.mjs
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sys.mjs","names":[],"sources":["../../src/locale/sys.ts"],"sourcesContent":["export default {\n errMsg401: '请重新登录',\n errMsg403: '用户得到授权,但是访问是被禁止的!',\n errMsg404: '网络请求错误,未找到该资源!',\n errMsg405: '网络请求错误,请求方法未允许!',\n errMsg408: '网络请求超时!',\n errMsg500: '服务器错误,请联系管理员!',\n errMsg501: '网络未实现!',\n errMsg502: '网络错误!',\n errMsg503: '服务不可用,服务器暂时过载或维护!',\n errMsg504: '网络超时!',\n errMsg505: 'http版本不支持该请求!',\n errorTip: '错误提示',\n apiTimeoutMessage: '接口请求超时,请刷新页面重试!',\n networkExceptionMsg: '网络异常,请检查您的网络连接是否正常!',\n notNull: '该值不能为空',\n regError: '校验格式不正确',\n loginWarning: '登录警告',\n loginWarningContent: '当前账号已在其他设备登录',\n understood: '知道了',\n};\n"],"mappings":";;;AAAA,IAAA,cAAe;CACb,WAAW;CACX,WAAW;CACX,WAAW;CACX,WAAW;CACX,WAAW;CACX,WAAW;CACX,WAAW;CACX,WAAW;CACX,WAAW;CACX,WAAW;CACX,WAAW;CACX,UAAU;CACV,mBAAmB;CACnB,qBAAqB;CACrB,SAAS;CACT,UAAU;CACV,cAAc;CACd,qBAAqB;CACrB,YAAY;CACb"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-manager.const.d.ts","sourceRoot":"","sources":["../../../src/modules/env-manager/env-manager.const.ts"],"names":[],"mappings":"AAAA,gBAAgB;AAChB,eAAO,MAAM,MAAM,QAA+C,CAAC;AAEnE,cAAc;AACd,eAAO,MAAM,QAAQ,QAAmC,CAAC;AAEzD,mBAAmB;AACnB,eAAO,MAAM,gBAAgB,QACmC,CAAC;AAEjE,oBAAoB;AACpB,eAAO,MAAM,iBAAiB,QAA2B,CAAC;AAE1D,oBAAoB;AACpB,eAAO,MAAM,oBAAoB,QAAmB,CAAC;AAErD,sBAAsB;AACtB,eAAO,MAAM,mBAAmB,QAAmB,CAAC;AAEpD,qBAAqB;AACrB,eAAO,MAAM,oBAAoB,QAAoB,CAAC;AAEtD,kBAAkB;AAClB,eAAO,MAAM,gBAAgB,QAA6B,CAAC;AAE3D,mBAAmB;AACnB,eAAO,MAAM,eAAe,QAA8C,CAAC"}
|
|
@@ -19,3 +19,5 @@ var SANDBOX_PATH_REG = /(mobile|pad|web)-sandbox/;
|
|
|
19
19
|
var SINGLE_PATH_REG = /\/web-single\/|dev-single\/|test-single\//;
|
|
20
20
|
//#endregion
|
|
21
21
|
export { APP_PREVIEW_PATH_REG, APP_PROD_PATH_REG, APP_RUN_PATH_REG, DEV_SINGLE_PATH_REG, HOST_REG, IP_REG, SANDBOX_PATH_REG, SINGLE_PATH_REG, TEST_SINGLE_PATH_REG };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=env-manager.const.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-manager.const.mjs","names":[],"sources":["../../../src/modules/env-manager/env-manager.const.ts"],"sourcesContent":["/** IP地址正则表达式 */\nexport const IP_REG = /^http:\\/\\/\\d{1,3}(\\.\\d{1,3}){3}:(\\d{1,5})$/;\n\n/** 域名正则表达式 */\nexport const HOST_REG = /^https?:\\/\\/([a-z0-9]+)-test\\./;\n\n/** 应用运行时路径正则表达式 */\nexport const APP_RUN_PATH_REG =\n /\\/web-render|\\/web\\/|web-single\\/|dev-single\\/|test-single\\//;\n\n/** 应用生产环境路径正则表达式 */\nexport const APP_PROD_PATH_REG = /\\/web\\/|\\/web-single\\//;\n\n/** 应用预览环境路径正则表达式 */\nexport const APP_PREVIEW_PATH_REG = /\\/web-render\\//;\n\n/** dev环境单应用路径正则表达式 */\nexport const DEV_SINGLE_PATH_REG = /\\/dev-single\\//;\n\n/** 测试环境单应用路径正则表达式 */\nexport const TEST_SINGLE_PATH_REG = /\\/test-single\\//;\n\n/** 沙箱环境路径正则表达式 */\nexport const SANDBOX_PATH_REG = /(mobile|pad|web)-sandbox/;\n\n/** 单应用环境路径正则表达式 */\nexport const SINGLE_PATH_REG = /\\/web-single\\/|dev-single\\/|test-single\\//;\n"],"mappings":";;AACA,IAAa,SAAS;;AAGtB,IAAa,WAAW;;AAGxB,IAAa,mBACX;;AAGF,IAAa,oBAAoB;;AAGjC,IAAa,uBAAuB;;AAGpC,IAAa,sBAAsB;;AAGnC,IAAa,uBAAuB;;AAGpC,IAAa,mBAAmB;;AAGhC,IAAa,kBAAkB"}
|
|
@@ -52,9 +52,11 @@ export declare class EnvironmentManager implements IEnvironmentManager {
|
|
|
52
52
|
* 检测是否为测试环境
|
|
53
53
|
*/
|
|
54
54
|
checkIsTestEnv(): Promise<void>;
|
|
55
|
+
checkBranch(): Promise<void>;
|
|
55
56
|
/**
|
|
56
57
|
* 获取当前环境类型
|
|
57
58
|
* @returns 环境类型
|
|
58
59
|
*/
|
|
59
60
|
getEnv(): EnvironmentType;
|
|
60
61
|
}
|
|
62
|
+
//# sourceMappingURL=env-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-manager.d.ts","sourceRoot":"","sources":["../../../src/modules/env-manager/env-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D;;;;GAIG;AAEH,qBAAa,kBAAmB,YAAW,mBAAmB;IAC5D,aAAa;IACb,OAAO,CAAC,QAAQ,CAAS;IAEzB,eAAe;IACf,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAc;IAE9C,WAAW;IACX,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IAEzC,eAAe;IACf,OAAO,CAAC,WAAW,CAAS;;IAO5B,eAAe;IACf,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED;;;;;OAKG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IACD;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAmC/B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBlC;;;OAGG;IACH,MAAM,IAAI,eAAe;CAY1B"}
|
|
@@ -35,9 +35,16 @@ export interface IEnvironmentManager {
|
|
|
35
35
|
* @param loadTenant 是否加载租户信息
|
|
36
36
|
*/
|
|
37
37
|
checkIsTestEnv(loadTenant?: boolean): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* 检查分支信息,如果是 dev 环境时,aid 存在的情况下,未指定分支去后台获取默认分支
|
|
40
|
+
*
|
|
41
|
+
* @return {*} {Promise<void>}
|
|
42
|
+
*/
|
|
43
|
+
checkBranch(): Promise<void>;
|
|
38
44
|
/**
|
|
39
45
|
* 获取当前环境类型
|
|
40
46
|
* @returns 环境类型
|
|
41
47
|
*/
|
|
42
48
|
getEnv(): EnvironmentType;
|
|
43
49
|
}
|
|
50
|
+
//# sourceMappingURL=env-manager.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-manager.interface.d.ts","sourceRoot":"","sources":["../../../src/modules/env-manager/env-manager.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD;;GAEG;AACH,oBAAY,eAAe;IACzB,WAAW;IACX,GAAG,QAAQ;IACX,WAAW;IACX,IAAI,SAAS;IACb,WAAW;IACX,IAAI,SAAS;IACb,WAAW;IACX,OAAO,QAAQ;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,mBAAmB;IACnB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,cAAc;IACd,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,cAAc;IACd,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,WAAW;IACX,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,gBAAgB;IAChB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,eAAe;IACf,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,cAAc;IACd,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,cAAc,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpD;;;;OAIG;IACH,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7B;;;OAGG;IACH,MAAM,IAAI,eAAe,CAAC;CAC3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-manager.interface.mjs","names":[],"sources":["../../../src/modules/env-manager/env-manager.interface.ts"],"sourcesContent":["import type { Tenant } from '@gct-paas/api/platform';\n\n/**\n * 环境类型枚举\n */\nexport enum EnvironmentType {\n /** 开发环境 */\n DEV = 'dev',\n /** 测试环境 */\n TEST = 'test',\n /** 生产环境 */\n PROD = 'prod',\n /** 沙箱环境 */\n SANDBOX = 'sbx',\n}\n\n/**\n * 环境管理器接口\n */\nexport interface IEnvironmentManager {\n /** 是否为安卓混合模式下运行 */\n readonly isAndroid: boolean;\n /** 是否为生产环境 */\n readonly isAppProd: boolean;\n /** 是否为测试环境 */\n readonly isTestEnv: boolean;\n /** 平台地址 */\n readonly platformOrigin: string;\n /** 是否为域名访问模式 */\n readonly isHostMode: boolean;\n /** 测试环境租户数据 */\n readonly testTenantData: Tenant;\n /** 是否为沙箱环境 */\n isSandbox: boolean;\n /**\n * 检测是否为测试环境\n * @param loadTenant 是否加载租户信息\n */\n checkIsTestEnv(loadTenant?: boolean): Promise<void>;\n\n /**\n * 检查分支信息,如果是 dev 环境时,aid 存在的情况下,未指定分支去后台获取默认分支\n *\n * @return {*} {Promise<void>}\n */\n checkBranch(): Promise<void>;\n\n /**\n * 获取当前环境类型\n * @returns 环境类型\n */\n getEnv(): EnvironmentType;\n}\n"],"mappings":";;;;AAKA,IAAY,kBAAL,yBAAA,iBAAA;;CAEL,gBAAA,SAAM;;CAEN,gBAAA,UAAO;;CAEP,gBAAA,UAAO;;CAEP,gBAAA,aAAU;;KACX"}
|
|
@@ -94,6 +94,15 @@ var EnvironmentManager = class {
|
|
|
94
94
|
}
|
|
95
95
|
if (this._testEnv) await _gct.store.setContext({ env: EnvironmentType.TEST });
|
|
96
96
|
}
|
|
97
|
+
async checkBranch() {
|
|
98
|
+
if (_gct.store.context.aid && !_gct.store.context.bid && _gct.store.context.env === EnvironmentType.DEV) try {
|
|
99
|
+
const defaultBranch = (await _api.apaas.appBranch.getList()).find((item) => item.head === 1);
|
|
100
|
+
if (defaultBranch) _gct.store.setContext({ bid: defaultBranch.id });
|
|
101
|
+
else console.warn("未找到默认分支,请检查后台配置");
|
|
102
|
+
} catch (error) {
|
|
103
|
+
console.error("获取默认分支失败", error);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
97
106
|
/**
|
|
98
107
|
* 获取当前环境类型
|
|
99
108
|
* @returns 环境类型
|
|
@@ -107,3 +116,5 @@ var EnvironmentManager = class {
|
|
|
107
116
|
};
|
|
108
117
|
//#endregion
|
|
109
118
|
export { EnvironmentManager };
|
|
119
|
+
|
|
120
|
+
//# sourceMappingURL=env-manager.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-manager.mjs","names":[],"sources":["../../../src/modules/env-manager/env-manager.ts"],"sourcesContent":["import type { Tenant } from '@gct-paas/api/platform';\nimport type { IEnvironmentManager } from './env-manager.interface';\nimport { EnvironmentType } from './env-manager.interface';\nimport { IP_REG, HOST_REG } from './env-manager.const';\nimport { ENV } from '@/store/session-store';\n/**\n * 环境管理器\n *\n * @description 负责检测和管理应用运行环境,包括测试环境检测、租户信息获取等功能\n */\n\nexport class EnvironmentManager implements IEnvironmentManager {\n /** 测试环境标识 */\n private _testEnv = false;\n\n /** 测试环境租户数据 */\n private readonly _testTenantData: Tenant = {};\n\n /** 平台地址 */\n private readonly _platformOrigin: string;\n\n /** 域名访问模式标识 */\n private _isHostMode = false;\n\n constructor() {\n this._platformOrigin = location.origin || '';\n this._isHostMode = HOST_REG.test(this._platformOrigin);\n }\n\n /**安卓混合开发模式下 */\n get isAndroid(): boolean {\n return window.__GCT_ANDROID__ === true;\n }\n\n /**\n * 是否为生产环境\n */\n get isAppProd(): boolean {\n return _gct.store.context.env === EnvironmentType.PROD;\n }\n\n /**\n * 是否为测试环境\n */\n get isTestEnv(): boolean {\n return this._testEnv || _gct.store.context.env === EnvironmentType.TEST;\n }\n\n /**\n * 平台地址\n */\n get platformOrigin(): string {\n return this._platformOrigin;\n }\n\n /**\n * 是否为域名访问模式\n */\n get isHostMode(): boolean {\n return this._isHostMode;\n }\n\n /**\n * 测试环境租户数据\n */\n get testTenantData(): Tenant {\n return this._testTenantData;\n }\n\n /**\n * 是否为单应用模式\n *\n * @readonly\n * @type {boolean}\n */\n get isAppSingle(): boolean {\n return _gct.store.context.mode === 'single';\n }\n\n /**\n * 是否为沙箱环境\n */\n get isSandbox(): boolean {\n return _gct.store.context.env === EnvironmentType.SANDBOX;\n }\n /**\n * 检测是否为测试环境\n */\n async checkIsTestEnv(): Promise<void> {\n let matches: RegExpMatchArray | null = null;\n\n if (this._isHostMode) {\n // 域名模式\n matches = this._platformOrigin.match(HOST_REG);\n this._testEnv = !!(matches && matches[1]);\n\n if (this._testEnv) {\n const data = await _api.platform.tenant.getInfoByPortOrDomain({\n domain: matches![1],\n });\n Object.assign(this._testTenantData, data);\n }\n } else {\n // IP模式\n matches = this._platformOrigin.match(IP_REG);\n const port = matches && matches[2];\n\n if (port) {\n const data = await _api.platform.tenant.getInfoByPortOrDomain({\n port,\n });\n if (data) {\n Object.assign(this._testTenantData, data);\n this._testEnv = data.testEnvPort === port;\n }\n }\n }\n\n if (this._testEnv) {\n await _gct.store.setContext({ env: EnvironmentType.TEST });\n }\n }\n\n async checkBranch(): Promise<void> {\n // 处理开发环境下未指定 bid 时,从后台获取默认的 bid\n if (\n _gct.store.context.aid &&\n !_gct.store.context.bid &&\n _gct.store.context.env === EnvironmentType.DEV\n ) {\n try {\n const list = await _api.apaas.appBranch.getList();\n const defaultBranch = list.find(item => item.head === 1);\n if (defaultBranch) {\n _gct.store.setContext({ bid: defaultBranch.id });\n } else {\n console.warn('未找到默认分支,请检查后台配置');\n }\n } catch (error) {\n console.error('获取默认分支失败', error);\n }\n }\n }\n\n /**\n * 获取当前环境类型\n * @returns 环境类型\n */\n getEnv(): EnvironmentType {\n if (ENV.value) {\n return ENV.value as EnvironmentType;\n }\n if (this.isTestEnv) {\n return EnvironmentType.TEST;\n }\n if (_gct.store.context.env) {\n return _gct.store.context.env;\n }\n return EnvironmentType.DEV;\n }\n}\n"],"mappings":";;;;;;;;;AAWA,IAAa,qBAAb,MAA+D;;CAE7D,WAAmB;;CAGnB,kBAA2C,EAAE;;CAG7C;;CAGA,cAAsB;CAEtB,cAAc;EACZ,KAAK,kBAAkB,SAAS,UAAU;EAC1C,KAAK,cAAc,SAAS,KAAK,KAAK,gBAAgB;;;CAIxD,IAAI,YAAqB;EACvB,OAAO,OAAO,oBAAoB;;;;;CAMpC,IAAI,YAAqB;EACvB,OAAO,KAAK,MAAM,QAAQ,QAAQ,gBAAgB;;;;;CAMpD,IAAI,YAAqB;EACvB,OAAO,KAAK,YAAY,KAAK,MAAM,QAAQ,QAAQ,gBAAgB;;;;;CAMrE,IAAI,iBAAyB;EAC3B,OAAO,KAAK;;;;;CAMd,IAAI,aAAsB;EACxB,OAAO,KAAK;;;;;CAMd,IAAI,iBAAyB;EAC3B,OAAO,KAAK;;;;;;;;CASd,IAAI,cAAuB;EACzB,OAAO,KAAK,MAAM,QAAQ,SAAS;;;;;CAMrC,IAAI,YAAqB;EACvB,OAAO,KAAK,MAAM,QAAQ,QAAQ,gBAAgB;;;;;CAKpD,MAAM,iBAAgC;EACpC,IAAI,UAAmC;EAEvC,IAAI,KAAK,aAAa;GAEpB,UAAU,KAAK,gBAAgB,MAAM,SAAS;GAC9C,KAAK,WAAW,CAAC,EAAE,WAAW,QAAQ;GAEtC,IAAI,KAAK,UAAU;IACjB,MAAM,OAAO,MAAM,KAAK,SAAS,OAAO,sBAAsB,EAC5D,QAAQ,QAAS,IAClB,CAAC;IACF,OAAO,OAAO,KAAK,iBAAiB,KAAK;;SAEtC;GAEL,UAAU,KAAK,gBAAgB,MAAM,OAAO;GAC5C,MAAM,OAAO,WAAW,QAAQ;GAEhC,IAAI,MAAM;IACR,MAAM,OAAO,MAAM,KAAK,SAAS,OAAO,sBAAsB,EAC5D,MACD,CAAC;IACF,IAAI,MAAM;KACR,OAAO,OAAO,KAAK,iBAAiB,KAAK;KACzC,KAAK,WAAW,KAAK,gBAAgB;;;;EAK3C,IAAI,KAAK,UACP,MAAM,KAAK,MAAM,WAAW,EAAE,KAAK,gBAAgB,MAAM,CAAC;;CAI9D,MAAM,cAA6B;EAEjC,IACE,KAAK,MAAM,QAAQ,OACnB,CAAC,KAAK,MAAM,QAAQ,OACpB,KAAK,MAAM,QAAQ,QAAQ,gBAAgB,KAE3C,IAAI;GAEF,MAAM,iBAAgB,MADH,KAAK,MAAM,UAAU,SAAS,EACtB,MAAK,SAAQ,KAAK,SAAS,EAAE;GACxD,IAAI,eACF,KAAK,MAAM,WAAW,EAAE,KAAK,cAAc,IAAI,CAAC;QAEhD,QAAQ,KAAK,kBAAkB;WAE1B,OAAO;GACd,QAAQ,MAAM,YAAY,MAAM;;;;;;;CAStC,SAA0B;EACxB,IAAI,IAAI,OACN,OAAO,IAAI;EAEb,IAAI,KAAK,WACP,OAAO,gBAAgB;EAEzB,IAAI,KAAK,MAAM,QAAQ,KACrB,OAAO,KAAK,MAAM,QAAQ;EAE5B,OAAO,gBAAgB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-manager.util.d.ts","sourceRoot":"","sources":["../../../src/modules/env-manager/env-manager.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAI1D;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe,GAAG,SAAS,CAKtE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-manager.util.mjs","names":[],"sources":["../../../src/modules/env-manager/env-manager.util.ts"],"sourcesContent":["import { EnvironmentType } from './env-manager.interface';\n\nconst ENV_VALUES = new Set<string>(Object.values(EnvironmentType));\n\n/**\n * 校验并规范化环境类型\n */\nexport function normalizeEnv(env: unknown): EnvironmentType | undefined {\n if (typeof env === 'string' && ENV_VALUES.has(env)) {\n return env as EnvironmentType;\n }\n return undefined;\n}\n"],"mappings":";;AAEA,IAAM,aAAa,IAAI,IAAY,OAAO,OAAO,gBAAgB,CAAC;;;;AAKlE,SAAgB,aAAa,KAA2C;CACtE,IAAI,OAAO,QAAQ,YAAY,WAAW,IAAI,IAAI,EAChD,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/env-manager/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-handler.const.d.ts","sourceRoot":"","sources":["../../../src/modules/error-handler/error-handler.const.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB,eAAO,MAAM,gBAAgB;IAC3B,UAAU;;IAEV,WAAW;;IAEX,YAAY;;IAEZ,cAAc;;IAEd,WAAW;;IAEX,YAAY;;IAEZ,WAAW;;CAEH,CAAC;AAEX,eAAe;AACf,eAAO,MAAM,kBAAkB;IAC7B,sBAAsB;;IAEtB,iBAAiB;;IAEjB,eAAe;;IAEf,kBAAkB;;IAElB,mBAAmB;;CAEX,CAAC;AAEX,aAAa;AACb,eAAO,MAAM,sBAAsB;IACjC,aAAa;;IAEb,aAAa;;CAEL,CAAC;AAEX,eAAe;AACf,eAAO,MAAM,iBAAiB;IAC5B,sBAAsB;;IAEtB,mBAAmB;;IAEnB,aAAa;;IAEb,aAAa;;CAEL,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-handler.const.mjs","names":[],"sources":["../../../src/modules/error-handler/error-handler.const.ts"],"sourcesContent":["/** HTTP 状态码常量 */\nexport const HTTP_STATUS_CODE = {\n /** 未授权 */\n UNAUTHORIZED: 401,\n /** 禁止访问 */\n FORBIDDEN: 403,\n /** 资源未找到 */\n NOT_FOUND: 404,\n /** 内部服务器错误 */\n INTERNAL_SERVER_ERROR: 500,\n /** 网关错误 */\n BAD_GATEWAY: 502,\n /** 服务不可用 */\n SERVICE_UNAVAILABLE: 503,\n /** 网关超时 */\n GATEWAY_TIMEOUT: 504,\n} as const;\n\n/** 错误日志输出模板 */\nexport const ERROR_LOG_TEMPLATE = {\n /** JavaScript 错误模板 */\n SCRIPT_ERROR: '[SCRIPT ERROR]',\n /** Vue 组件错误模板 */\n VUE_ERROR: '[VUE ERROR]',\n /** 资源加载错误模板 */\n RESOURCE_ERROR: '[RESOURCE ERROR]',\n /** Ajax 请求错误模板 */\n AJAX_ERROR: '[AJAX ERROR]',\n /** Promise 异常模板 */\n PROMISE_ERROR: '[PROMISE ERROR]',\n} as const;\n\n/** 网络状态消息 */\nexport const NETWORK_STATUS_MESSAGE = {\n /** 网络连接丢失 */\n CONNECTION_LOST: 'Network connection lost',\n /** 网络连接恢复 */\n CONNECTION_RESTORED: 'Network connection restored',\n} as const;\n\n/** 错误处理事件名称 */\nexport const ERROR_EVENT_NAMES = {\n /** JavaScript 错误事件 */\n ERROR: 'error',\n /** Promise 拒绝事件 */\n UNHANDLED_REJECTION: 'unhandledrejection',\n /** 网络离线事件 */\n OFFLINE: 'offline',\n /** 网络在线事件 */\n ONLINE: 'online',\n} as const;\n"],"mappings":";;AACA,IAAa,mBAAmB;;CAE9B,cAAc;;CAEd,WAAW;;CAEX,WAAW;;CAEX,uBAAuB;;CAEvB,aAAa;;CAEb,qBAAqB;;CAErB,iBAAiB;CAClB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-handler.interface.d.ts","sourceRoot":"","sources":["../../../src/modules/error-handler/error-handler.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,WAAW;IACX,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,eAAe;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW;IACX,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW;IACX,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,MAAM,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;CACrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-strategy.d.ts","sourceRoot":"","sources":["../../../src/modules/error-handler/error-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,qBAAqB,EACtB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D;;;;;;;GAOG;AACH,qBAAa,uBAAwB,YAAW,qBAAqB;IACnE;;;;OAIG;IACI,MAAM,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;CAG3C;AAED;;;;;;;GAOG;AACH,qBAAa,gBAAiB,YAAW,qBAAqB;IAC5D;;;;OAIG;IACI,MAAM,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;CAM3C;AAED;;;;;;;GAOG;AACH,qBAAa,oBAAqB,YAAW,qBAAqB;IAChE;;;;OAIG;IACI,MAAM,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;CAa3C;AAED;;;;;;;GAOG;AACH,qBAAa,iBAAkB,YAAW,qBAAqB;IAC7D;;;;OAIG;IACI,MAAM,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;IAgC1C;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;;;OAKG;IACH,OAAO,CAAC,uBAAuB;IAY/B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAM3B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAKvB;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;CAK3B;AAED;;;;;;GAMG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAC,WAAW,CACwB;IAElD;;;;OAIG;IACH,MAAM,CAAC,IAAI,IAAI,IAAI;IAOnB;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,aAAa,GAAG,qBAAqB,GAAG,SAAS;IAI1E;;;;;;OAMG;IACH,MAAM,CAAC,gBAAgB,CACrB,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,qBAAqB,GAC9B,IAAI;CAGR"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-strategy.mjs","names":[],"sources":["../../../src/modules/error-handler/error-strategy.ts"],"sourcesContent":["import type {\n IErrorInfo,\n IErrorHandlerStrategy,\n} from './error-handler.interface';\nimport { HTTP_STATUS_CODE } from './error-handler.const';\nimport { ErrorTypeEnum } from '../../enums/exceptionEnum';\n\n/**\n * JavaScript 错误处理策略\n * 负责处理 JavaScript 运行时错误\n *\n * @export\n * @class JavaScriptErrorStrategy\n * @implements {IErrorHandlerStrategy}\n */\nexport class JavaScriptErrorStrategy implements IErrorHandlerStrategy {\n /**\n * 处理 JavaScript 错误\n *\n * @param {IErrorInfo} errorInfo 错误信息\n */\n public handle(errorInfo: IErrorInfo): void {\n console.error(errorInfo);\n }\n}\n\n/**\n * Vue 组件错误处理策略\n * 负责处理 Vue 组件相关错误\n *\n * @export\n * @class VueErrorStrategy\n * @implements {IErrorHandlerStrategy}\n */\nexport class VueErrorStrategy implements IErrorHandlerStrategy {\n /**\n * 处理 Vue 组件错误\n *\n * @param {IErrorInfo} errorInfo 错误信息\n */\n public handle(errorInfo: IErrorInfo): void {\n // Vue 错误的特殊处理逻辑\n console.error(errorInfo);\n // 可以在这里添加组件错误恢复逻辑\n // 例如:重新渲染组件、显示错误边界等\n }\n}\n\n/**\n * Promise 错误处理策略\n * 负责处理未捕获的 Promise 异常,包括 HTTP 请求错误\n *\n * @export\n * @class PromiseErrorStrategy\n * @implements {IErrorHandlerStrategy}\n */\nexport class PromiseErrorStrategy implements IErrorHandlerStrategy {\n /**\n * 处理 Promise 错误\n *\n * @param {IErrorInfo} errorInfo 错误信息\n */\n public handle(errorInfo: IErrorInfo): void {\n // 如果是 HTTP 相关错误,使用 HTTP 错误处理策略\n if (errorInfo.type === ErrorTypeEnum.AJAX) {\n const httpStrategy = new HttpErrorStrategy();\n httpStrategy.handle(errorInfo);\n return;\n }\n\n console.error(errorInfo);\n\n // 可以在这里添加 Promise 错误的特殊处理逻辑\n // 例如:记录特定类型的 Promise 错误、用户行为分析等\n }\n}\n\n/**\n * HTTP 错误处理策略\n * 负责处理 HTTP 请求相关错误,包括网络错误和业务错误\n *\n * @export\n * @class HttpErrorStrategy\n * @implements {IErrorHandlerStrategy}\n */\nexport class HttpErrorStrategy implements IErrorHandlerStrategy {\n /**\n * 处理 HTTP 错误\n *\n * @param {IErrorInfo} errorInfo 错误信息\n */\n public handle(errorInfo: IErrorInfo): void {\n // 解析错误信息中的 HTTP 状态码\n const status = this._extractStatusCode(errorInfo.message);\n\n if (status) {\n // 根据 HTTP 状态码进行特殊处理\n switch (status) {\n case HTTP_STATUS_CODE.UNAUTHORIZED:\n this._handleUnauthorized();\n break;\n case HTTP_STATUS_CODE.FORBIDDEN:\n this._handleForbidden();\n break;\n case HTTP_STATUS_CODE.NOT_FOUND:\n this._handleNotFound();\n break;\n case HTTP_STATUS_CODE.INTERNAL_SERVER_ERROR:\n case HTTP_STATUS_CODE.BAD_GATEWAY:\n case HTTP_STATUS_CODE.SERVICE_UNAVAILABLE:\n case HTTP_STATUS_CODE.GATEWAY_TIMEOUT:\n this._handleServerError(status);\n break;\n default:\n this._handleGenericHttpError(errorInfo);\n break;\n }\n } else {\n // 处理没有状态码的 HTTP 错误(如网络错误、业务错误等)\n this._handleGenericHttpError(errorInfo);\n }\n }\n\n /**\n * 从错误消息中提取 HTTP 状态码\n *\n * @private\n * @param {string} message 错误消息\n * @return {number | null} HTTP 状态码,如果没有找到则返回 null\n */\n private _extractStatusCode(message: string): number | null {\n // 匹配 \"HTTP 404:\" 或 \"Business Error [404]:\" 等格式\n const statusMatch = message.match(\n /HTTP\\s+(\\d{3})|Business\\s+Error\\s+\\[(\\d+)\\]/,\n );\n if (statusMatch) {\n return parseInt(\n (statusMatch[1] as string) || (statusMatch[2] as string),\n 10,\n );\n }\n return null;\n }\n\n /**\n * 处理通用 HTTP 错误\n *\n * @private\n * @param {IErrorInfo} errorInfo 错误信息\n */\n private _handleGenericHttpError(errorInfo: IErrorInfo): void {\n if (errorInfo.message.includes('Business Error')) {\n console.debug('Handling business error:', errorInfo.message);\n // 可以在这里添加业务错误的特殊处理逻辑\n } else if (errorInfo.message.includes('Network')) {\n console.debug('Handling network error:', errorInfo.message);\n // 可以在这里添加网络错误的特殊处理逻辑\n } else {\n console.debug('Handling HTTP error:', errorInfo.message);\n }\n }\n\n /**\n * 处理未授权错误\n *\n * @private\n */\n private _handleUnauthorized(): void {\n console.warn('Unauthorized access, redirecting to login...');\n // 可以在这里实现跳转登录页面的逻辑\n // 例如:清除本地 token、跳转到登录页等\n }\n\n /**\n * 处理禁止访问错误\n *\n * @private\n */\n private _handleForbidden(): void {\n console.warn('Access forbidden');\n // 可以在这里实现权限不足的处理逻辑\n // 例如:显示权限不足提示、跳转到无权限页面等\n }\n\n /**\n * 处理资源未找到错误\n *\n * @private\n */\n private _handleNotFound(): void {\n console.warn('Resource not found');\n // 可以在这里实现 404 页面跳转逻辑\n }\n\n /**\n * 处理服务器错误\n *\n * @private\n * @param {number} [status] HTTP 状态码\n */\n private _handleServerError(status?: number): void {\n console.warn(`Server error: ${status}`);\n // 可以在这里实现服务器错误的处理逻辑\n // 例如:显示服务器错误提示、重试请求等\n }\n}\n\n/**\n * 错误处理策略工厂\n * 负责根据错误类型创建对应的处理策略\n *\n * @export\n * @class ErrorStrategyFactory\n */\nexport class ErrorStrategyFactory {\n private static _strategies: Map<ErrorTypeEnum, IErrorHandlerStrategy> =\n new Map<ErrorTypeEnum, IErrorHandlerStrategy>();\n\n /**\n * 初始化策略工厂\n *\n * @static\n */\n static init(): void {\n this.registerStrategy(ErrorTypeEnum.SCRIPT, new JavaScriptErrorStrategy());\n this.registerStrategy(ErrorTypeEnum.VUE, new VueErrorStrategy());\n this.registerStrategy(ErrorTypeEnum.PROMISE, new PromiseErrorStrategy());\n this.registerStrategy(ErrorTypeEnum.AJAX, new HttpErrorStrategy());\n }\n\n /**\n * 获取错误处理策略\n *\n * @static\n * @param {ErrorTypeEnum} type 错误类型\n * @return {IErrorHandlerStrategy | undefined} 错误处理策略\n */\n static getStrategy(type: ErrorTypeEnum): IErrorHandlerStrategy | undefined {\n return this._strategies.get(type);\n }\n\n /**\n * 注册自定义错误处理策略\n *\n * @static\n * @param {ErrorTypeEnum} type 错误类型\n * @param {IErrorHandlerStrategy} strategy 错误处理策略\n */\n static registerStrategy(\n type: ErrorTypeEnum,\n strategy: IErrorHandlerStrategy,\n ): void {\n this._strategies.set(type, strategy);\n }\n}\n"],"mappings":";;;;;;;;;;;AAeA,IAAa,0BAAb,MAAsE;;;;;;CAMpE,OAAc,WAA6B;EACzC,QAAQ,MAAM,UAAU;;;;;;;;;;;AAY5B,IAAa,mBAAb,MAA+D;;;;;;CAM7D,OAAc,WAA6B;EAEzC,QAAQ,MAAM,UAAU;;;;;;;;;;;AAc5B,IAAa,uBAAb,MAAmE;;;;;;CAMjE,OAAc,WAA6B;EAEzC,IAAI,UAAU,SAAS,cAAc,MAAM;GAEzC,IADyB,mBACzB,CAAa,OAAO,UAAU;GAC9B;;EAGF,QAAQ,MAAM,UAAU;;;;;;;;;;;AAe5B,IAAa,oBAAb,MAAgE;;;;;;CAM9D,OAAc,WAA6B;EAEzC,MAAM,SAAS,KAAK,mBAAmB,UAAU,QAAQ;EAEzD,IAAI,QAEF,QAAQ,QAAR;GACE,KAAK,iBAAiB;IACpB,KAAK,qBAAqB;IAC1B;GACF,KAAK,iBAAiB;IACpB,KAAK,kBAAkB;IACvB;GACF,KAAK,iBAAiB;IACpB,KAAK,iBAAiB;IACtB;GACF,KAAK,iBAAiB;GACtB,KAAK,iBAAiB;GACtB,KAAK,iBAAiB;GACtB,KAAK,iBAAiB;IACpB,KAAK,mBAAmB,OAAO;IAC/B;GACF;IACE,KAAK,wBAAwB,UAAU;IACvC;;OAIJ,KAAK,wBAAwB,UAAU;;;;;;;;;CAW3C,mBAA2B,SAAgC;EAEzD,MAAM,cAAc,QAAQ,MAC1B,8CACD;EACD,IAAI,aACF,OAAO,SACJ,YAAY,MAAkB,YAAY,IAC3C,GACD;EAEH,OAAO;;;;;;;;CAST,wBAAgC,WAA6B;EAC3D,IAAI,UAAU,QAAQ,SAAS,iBAAiB,EAC9C,QAAQ,MAAM,4BAA4B,UAAU,QAAQ;OAEvD,IAAI,UAAU,QAAQ,SAAS,UAAU,EAC9C,QAAQ,MAAM,2BAA2B,UAAU,QAAQ;OAG3D,QAAQ,MAAM,wBAAwB,UAAU,QAAQ;;;;;;;CAS5D,sBAAoC;EAClC,QAAQ,KAAK,+CAA+C;;;;;;;CAU9D,mBAAiC;EAC/B,QAAQ,KAAK,mBAAmB;;;;;;;CAUlC,kBAAgC;EAC9B,QAAQ,KAAK,qBAAqB;;;;;;;;CAUpC,mBAA2B,QAAuB;EAChD,QAAQ,KAAK,iBAAiB,SAAS;;;;;;;;;;AAa3C,IAAa,uBAAb,MAAkC;CAChC,OAAe,8BACb,IAAI,KAA2C;;;;;;CAOjD,OAAO,OAAa;EAClB,KAAK,iBAAiB,cAAc,QAAQ,IAAI,yBAAyB,CAAC;EAC1E,KAAK,iBAAiB,cAAc,KAAK,IAAI,kBAAkB,CAAC;EAChE,KAAK,iBAAiB,cAAc,SAAS,IAAI,sBAAsB,CAAC;EACxE,KAAK,iBAAiB,cAAc,MAAM,IAAI,mBAAmB,CAAC;;;;;;;;;CAUpE,OAAO,YAAY,MAAwD;EACzE,OAAO,KAAK,YAAY,IAAI,KAAK;;;;;;;;;CAUnC,OAAO,iBACL,MACA,UACM;EACN,KAAK,YAAY,IAAI,MAAM,SAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/error-handler/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE/B;;;;;;;;;GASG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAe;IAEvC;;;;OAIG;IACH,OAAO;IAIP;;;;;OAKG;IACH,MAAM,CAAC,WAAW,IAAI,YAAY;IAOlC;;;;;OAKG;IACH,MAAM,CAAC,IAAI,IAAI,IAAI;IAInB;;;;;;;OAOG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAYrE;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAChB,KAAK,EAAE,KAAK,EACZ,IAAI,GAAE,aAAoC,GACzC,IAAI;IAYP;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;;;;OAKG;IACH,OAAO,CAAC,aAAa;CAKtB;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAqB/D;AAGD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/modules/error-handler/index.ts"],"sourcesContent":["import type { IErrorInfo } from './error-handler.interface';\nimport { ErrorStrategyFactory } from './error-strategy';\nimport { ErrorTypeEnum } from '../../enums/exceptionEnum';\nimport type { App } from 'vue';\n\n/**\n * 全局异常处理器\n * 负责捕获和处理各种类型的异常,包括 Vue 组件异常、JavaScript 异常、\n * 资源加载异常、Ajax 请求异常、Promise 异常等\n *\n * 采用策略模式和单例模式设计,支持扩展和配置\n *\n * @export\n * @class ErrorHandler\n */\nexport class ErrorHandler {\n private static _instance: ErrorHandler;\n\n /**\n * 私有构造函数,实现单例模式\n *\n * @private\n */\n private constructor() {\n this._initializeStrategies();\n }\n\n /**\n * 获取单例实例\n *\n * @static\n * @return {ErrorHandler} 错误处理器实例\n */\n static getInstance(): ErrorHandler {\n if (!ErrorHandler._instance) {\n ErrorHandler._instance = new ErrorHandler();\n }\n return ErrorHandler._instance;\n }\n\n /**\n * 初始化全局异常处理\n * 设置全局异常监听器和处理策略\n *\n * @static\n */\n static init(): void {\n ErrorHandler.getInstance();\n }\n\n /**\n * 处理 Vue 组件异常\n *\n * @static\n * @param {Error} error 错误对象\n * @param {unknown} _vm Vue 组件实例\n * @param {string} info 错误信息\n */\n static handleVueError(error: Error, _vm: unknown, info: string): void {\n const errorInfo: IErrorInfo = {\n type: ErrorTypeEnum.VUE,\n message: `Vue Error: ${error.message} | Info: ${info}`,\n stack: error.stack,\n timestamp: Date.now(),\n userAgent: navigator.userAgent,\n };\n\n this._instance._processError(errorInfo);\n }\n\n /**\n * 手动报告错误\n *\n * @static\n * @param {Error} error 错误对象\n * @param {ErrorTypeEnum} [type=ErrorTypeEnum.SCRIPT] 错误类型\n */\n static reportError(\n error: Error,\n type: ErrorTypeEnum = ErrorTypeEnum.SCRIPT,\n ): void {\n const errorInfo: IErrorInfo = {\n type,\n message: error.message,\n stack: error.stack,\n timestamp: Date.now(),\n userAgent: navigator.userAgent,\n };\n\n this._instance._processError(errorInfo);\n }\n\n /**\n * 初始化错误处理策略\n *\n * @private\n */\n private _initializeStrategies(): void {\n ErrorStrategyFactory.init();\n }\n\n /**\n * 处理错误信息\n *\n * @private\n * @param {IErrorInfo} errorInfo 错误信息\n */\n private _processError(errorInfo: IErrorInfo): void {\n // 使用策略模式处理不同类型的错误\n const strategy = ErrorStrategyFactory.getStrategy(errorInfo.type);\n strategy?.handle(errorInfo);\n }\n}\n\n/**\n * 设置全局错误处理器\n *\n * @author chitanda\n * @date 2025-08-20 13:08:23\n * @export\n * @param {App} app\n * @returns {*} {Promise<void>}\n */\nexport async function setupErrorHandler(app: App): Promise<void> {\n ErrorHandler.init();\n // 配置 Vue 错误处理器\n app.config.errorHandler = (error, vm, info) => {\n ErrorHandler.handleVueError(error as Error, vm, info);\n };\n // 配置 Vue 警告处理器\n app.config.warnHandler = (msg, _vm, trace) => {\n console.warn(`Vue Warning: ${msg}`);\n if (trace) {\n console.warn('Trace:', trace);\n }\n };\n // 全局 js 运行时错误处理\n window.addEventListener('error', event => {\n ErrorHandler.reportError(new Error(event.message), ErrorTypeEnum.SCRIPT);\n });\n // 全局 promise 异常处理\n window.addEventListener('unhandledrejection', event => {\n ErrorHandler.reportError(event.reason as Error, ErrorTypeEnum.PROMISE);\n });\n}\n\n// 重新导出接口和类型,保持向后兼容\nexport type { IErrorInfo };\nexport { ErrorStrategyFactory } from './error-strategy';\n"],"mappings":";;;;;;;;;;;;;AAeA,IAAa,eAAb,MAAa,aAAa;CACxB,OAAe;;;;;;CAOf,cAAsB;EACpB,KAAK,uBAAuB;;;;;;;;CAS9B,OAAO,cAA4B;EACjC,IAAI,CAAC,aAAa,WAChB,aAAa,YAAY,IAAI,cAAc;EAE7C,OAAO,aAAa;;;;;;;;CAStB,OAAO,OAAa;EAClB,aAAa,aAAa;;;;;;;;;;CAW5B,OAAO,eAAe,OAAc,KAAc,MAAoB;EACpE,MAAM,YAAwB;GAC5B,MAAM,cAAc;GACpB,SAAS,cAAc,MAAM,QAAQ,WAAW;GAChD,OAAO,MAAM;GACb,WAAW,KAAK,KAAK;GACrB,WAAW,UAAU;GACtB;EAED,KAAK,UAAU,cAAc,UAAU;;;;;;;;;CAUzC,OAAO,YACL,OACA,OAAsB,cAAc,QAC9B;EACN,MAAM,YAAwB;GAC5B;GACA,SAAS,MAAM;GACf,OAAO,MAAM;GACb,WAAW,KAAK,KAAK;GACrB,WAAW,UAAU;GACtB;EAED,KAAK,UAAU,cAAc,UAAU;;;;;;;CAQzC,wBAAsC;EACpC,qBAAqB,MAAM;;;;;;;;CAS7B,cAAsB,WAA6B;EAGjD,qBADsC,YAAY,UAAU,KAC5D,EAAU,OAAO,UAAU;;;;;;;;;;;;AAa/B,eAAsB,kBAAkB,KAAyB;CAC/D,aAAa,MAAM;CAEnB,IAAI,OAAO,gBAAgB,OAAO,IAAI,SAAS;EAC7C,aAAa,eAAe,OAAgB,IAAI,KAAK;;CAGvD,IAAI,OAAO,eAAe,KAAK,KAAK,UAAU;EAC5C,QAAQ,KAAK,gBAAgB,MAAM;EACnC,IAAI,OACF,QAAQ,KAAK,UAAU,MAAM;;CAIjC,OAAO,iBAAiB,UAAS,UAAS;EACxC,aAAa,YAAY,IAAI,MAAM,MAAM,QAAQ,EAAE,cAAc,OAAO;GACxE;CAEF,OAAO,iBAAiB,uBAAsB,UAAS;EACrD,aAAa,YAAY,MAAM,QAAiB,cAAc,QAAQ;GACtE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mqtt.const.d.ts","sourceRoot":"","sources":["../../../../src/modules/mqtt/constants/mqtt.const.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,4BAA4B;IACvC,uBAAuB;;IAEvB,iBAAiB;;IAEjB;;;OAGG;;IAEH,iCAAiC;;CAEzB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,iBAAiB;IAC5B,aAAa;;IAEb,UAAU;;IAEV,YAAY;;IAEZ,WAAW;;IAEX,WAAW;;CAEH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mqtt.const.mjs","names":[],"sources":["../../../../src/modules/mqtt/constants/mqtt.const.ts"],"sourcesContent":["/**\n * MQTT 默认连接选项\n *\n * @description 连接时未显式指定的选项将使用以下默认值\n */\nexport const MQTT_DEFAULT_CONNECT_OPTIONS = {\n /** 心跳保活间隔(秒),0 表示禁用 */\n keepalive: 60,\n /** 连接超时时间(毫秒) */\n connectTimeout: 30000,\n /**\n * 重连间隔(毫秒),由 mqtt.js 内置重连机制使用\n * 设为 0 可禁用自动重连\n */\n reconnectPeriod: 5000,\n /** 是否清除会话,true 表示每次重连后订阅信息不保留 */\n clean: false,\n} as const;\n\n/**\n * MQTT 连接级事件名称常量\n */\nexport const MQTT_CLIENT_EVENT = {\n /** 成功建立连接 */\n CONNECT: 'connect',\n /** 重连中 */\n RECONNECT: 'reconnect',\n /** 连接已断开 */\n DISCONNECT: 'disconnect',\n /** 发生错误 */\n ERROR: 'error',\n /** 收到消息 */\n MESSAGE: 'message',\n} as const;\n"],"mappings":";;;;;;AAKA,IAAa,+BAA+B;;CAE1C,WAAW;;CAEX,gBAAgB;;;;;CAKhB,iBAAiB;;CAEjB,OAAO;CACR;;;;AAKD,IAAa,oBAAoB;;CAE/B,SAAS;;CAET,WAAW;;CAEX,YAAY;;CAEZ,OAAO;;CAEP,SAAS;CACV"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mqtt-status.enum.d.ts","sourceRoot":"","sources":["../../../../src/modules/mqtt/enums/mqtt-status.enum.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AAEnE;;;;;;;GAOG;AACH,oBAAY,oBAAoB;IAC9B,YAAY;IACZ,UAAU,eAAe;IACzB,YAAY;IACZ,SAAS,cAAc;IACvB,cAAc;IACd,aAAa,kBAAkB;IAC/B,YAAY;IACZ,YAAY,iBAAiB;IAC7B,YAAY;IACZ,YAAY,iBAAiB;CAC9B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mqtt-status.enum.mjs","names":[],"sources":["../../../../src/modules/mqtt/enums/mqtt-status.enum.ts"],"sourcesContent":["export const DEFAULT_MQTT_INSTANCE_ID = 'DEFAULT_MQTT_INSTANCE_ID';\n\n/**\n * MQTT 连接状态枚举\n *\n * @description 描述 MQTT 客户端当前的连接生命周期状态\n *\n * @export\n * @enum {string}\n */\nexport enum MqttConnectionStatus {\n /** 正在连接中 */\n CONNECTING = 'connecting',\n /** 已成功连接 */\n CONNECTED = 'connected',\n /** 正在断开连接中 */\n DISCONNECTING = 'disconnecting',\n /** 已断开连接 */\n DISCONNECTED = 'disconnected',\n /** 正在重连中 */\n RECONNECTING = 'reconnecting',\n}\n"],"mappings":";AAAA,IAAa,2BAA2B;;;;;;;;;AAUxC,IAAY,uBAAL,yBAAA,sBAAA;;CAEL,qBAAA,gBAAa;;CAEb,qBAAA,eAAY;;CAEZ,qBAAA,mBAAgB;;CAEhB,qBAAA,kBAAe;;CAEf,qBAAA,kBAAe;;KAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/mqtt/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i-mqtt.d.ts","sourceRoot":"","sources":["../../../../src/modules/mqtt/interfaces/i-mqtt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAC5E;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,aAAa;IACb,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa;IACb,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,YAAY;IACZ,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,aAAa;IACb,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAE1D;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,yCAAyC;IACzC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChB,sBAAsB;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,cAAc;IACd,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,aAAa;IACb,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IAEtC;;OAEG;IACH,OAAO,IAAI,IAAI,CAAC;IAEhB;;OAEG;IACH,UAAU,IAAI,IAAI,CAAC;IAEnB;;;;;;OAMG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,GAAG,aAAa,CAAC;IAEzE;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAElC;;;;;;OAMG;IACH,OAAO,CACL,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;OAKG;IACH,EAAE,CAAC,CAAC,SAAS,MAAM,mBAAmB,EACpC,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC/B,IAAI,CAAC;IAER;;;;;OAKG;IACH,GAAG,CAAC,CAAC,SAAS,MAAM,mBAAmB,EACrC,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC/B,IAAI,CAAC;CACT;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,WAAW,CAAC;IAEtE;;;;;OAKG;IACH,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC;IAEjD;;;;OAIG;IACH,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IAEjC;;;;OAIG;IACH,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAElC;;OAEG;IACH,UAAU,IAAI,IAAI,CAAC;CACpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mqtt-client.d.ts","sourceRoot":"","sources":["../../../src/modules/mqtt/mqtt-client.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAKhE,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;;GAUG;AACH,qBAAa,UAAW,YAAW,WAAW;IAC5C,cAAc;IACd,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,0BAA0B;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAErB,uBAAuB;IACvB,OAAO,CAAC,OAAO,CAAgC;IAE/C,aAAa;IACb,OAAO,CAAC,OAAO,CAA2D;IAE1E,sBAAsB;IACtB,OAAO,CAAC,QAAQ,CAAC,cAAc,CACgB;IAE/C,sBAAsB;IACtB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAO9B;IAEF,gBAAgB;IAChB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAE1C;;;;;OAKG;gBACS,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB;IAuBzE,eAAe;IACf,IAAI,MAAM,IAAI,oBAAoB,CAEjC;IAED;;;;OAIG;IACH,OAAO,IAAI,IAAI;IAaf;;;;OAIG;IACH,UAAU,IAAI,IAAI;IAYlB;;;;;;OAMG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,GAAG,aAAa;IAyBvE;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAOhC;;;;;;;OAOG;IACH,OAAO,CACL,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,IAAI,CAAC;IAwBhB;;;;;OAKG;IACH,EAAE,CAAC,CAAC,SAAS,MAAM,mBAAmB,EACpC,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC/B,IAAI;IAIP;;;;;OAKG;IACH,GAAG,CAAC,CAAC,SAAS,MAAM,mBAAmB,EACrC,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC/B,IAAI;IAUP,OAAO,CAAC,QAAQ;IAQhB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAiCzB;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAgBnB;;;;;;OAMG;IACH,OAAO,CAAC,UAAU;CAgBnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mqtt-client.mjs","names":[],"sources":["../../../src/modules/mqtt/mqtt-client.ts"],"sourcesContent":["import mqtt from 'mqtt';\nimport type {\n IClientOptions,\n IClientPublishOptions,\n IConnackPacket,\n} from 'mqtt';\nimport { MqttConnectionStatus } from './enums/mqtt-status.enum';\nimport {\n MQTT_CLIENT_EVENT,\n MQTT_DEFAULT_CONNECT_OPTIONS,\n} from './constants/mqtt.const';\nimport type {\n MqttCancelSub,\n IMqttClient,\n IMqttClientEventMap,\n IMqttConnectOptions,\n IMqttMessageCallback,\n IMqttPublishOptions,\n} from './interfaces/i-mqtt';\n\n/**\n * MQTT 客户端\n *\n * @description 封装单个 MQTT 连接,提供连接、断连、订阅、取消订阅、发布等功能。\n * 重连逻辑完全委托给 mqtt.js 内置机制(reconnectPeriod),本类仅负责\n * 状态同步、消息分发与事件转发。\n *\n * @export\n * @class MqttClient\n * @implements {IMqttClient}\n */\nexport class MqttClient implements IMqttClient {\n /** 客户端唯一标识 */\n readonly instanceId: string;\n\n /** 连接 URL(即 brokerUrl) */\n readonly url: string;\n\n /** 内部 mqtt.js 客户端实例 */\n private _client: mqtt.MqttClient | null = null;\n\n /** 当前连接状态 */\n private _status: MqttConnectionStatus = MqttConnectionStatus.DISCONNECTED;\n\n /** topic -> 消息回调集合 */\n private readonly _subscriptions: Map<string, Set<IMqttMessageCallback>> =\n new Map<string, Set<IMqttMessageCallback>>();\n\n /** 用户注册的连接级事件监听器集合 */\n private readonly _eventListeners: {\n [E in keyof IMqttClientEventMap]: Set<IMqttClientEventMap[E]>;\n } = {\n connect: new Set(),\n disconnect: new Set(),\n reconnect: new Set(),\n error: new Set(),\n };\n\n /** 内部保存的连接选项 */\n private readonly _options: IClientOptions;\n\n /**\n * 创建 MQTT 客户端实例\n *\n * @param instanceId 实例唯一标识\n * @param options 连接选项\n */\n constructor(instanceId: string, url: string, options: IMqttConnectOptions) {\n if (!instanceId) {\n throw new Error('MqttClient: instanceId 不能为空');\n }\n if (!url) {\n throw new Error('MqttClient: url 不能为空');\n }\n if (!options.clientId) {\n throw new Error('MqttClient: options.clientId 不能为空');\n }\n this.instanceId = instanceId;\n this.url = url;\n this._options = {\n ...options,\n keepalive: options.keepalive ?? MQTT_DEFAULT_CONNECT_OPTIONS.keepalive,\n connectTimeout:\n options.connectTimeout ?? MQTT_DEFAULT_CONNECT_OPTIONS.connectTimeout,\n reconnectPeriod:\n options.reconnectPeriod ?? MQTT_DEFAULT_CONNECT_OPTIONS.reconnectPeriod,\n clean: options.clean ?? MQTT_DEFAULT_CONNECT_OPTIONS.clean,\n };\n }\n\n /** 获取当前连接状态 */\n get status(): MqttConnectionStatus {\n return this._status;\n }\n\n /**\n * 建立 MQTT 连接\n *\n * @description 若当前已连接或正在连接中则不重复建链\n */\n connect(): void {\n if (\n this._status === MqttConnectionStatus.CONNECTED ||\n this._status === MqttConnectionStatus.CONNECTING\n ) {\n return;\n }\n this._status = MqttConnectionStatus.CONNECTING;\n this._client = mqtt.connect(this.url, this._options);\n\n this._bindClientEvents();\n }\n\n /**\n * 断开 MQTT 连接\n *\n * @description 主动断开并停止 mqtt.js 内置重连\n */\n disconnect(): void {\n if (!this._client) {\n this._status = MqttConnectionStatus.DISCONNECTED;\n return;\n }\n this._status = MqttConnectionStatus.DISCONNECTING;\n this._client.end(false, {}, () => {\n this._status = MqttConnectionStatus.DISCONNECTED;\n this._emitEvent(MQTT_CLIENT_EVENT.DISCONNECT);\n });\n }\n\n /**\n * 订阅一个主题\n *\n * @param topic 主题\n * @param callback 消息回调函数\n * @returns 取消订阅函数\n */\n subscribe(topic: string, callback: IMqttMessageCallback): MqttCancelSub {\n if (!this._subscriptions.has(topic)) {\n this._subscriptions.set(topic, new Set<IMqttMessageCallback>());\n // 若已连接则立即向 Broker 发起订阅\n if (this._client && this._status === MqttConnectionStatus.CONNECTED) {\n this._client.subscribe(topic);\n }\n }\n (this._subscriptions.get(topic) as Set<IMqttMessageCallback>).add(callback);\n\n return () => {\n const arr = this._subscriptions.get(topic) as Set<IMqttMessageCallback>;\n if (arr) {\n arr.delete(callback);\n if (arr.size === 0) {\n this.unsubscribe(topic);\n }\n } else {\n console.warn(\n `MqttClient [${this.instanceId}]: 取消订阅时未找到 topic [${topic}] 的回调集合`,\n );\n }\n };\n }\n\n /**\n * 取消订阅一个主题,取消订阅时会移除所有回调函数\n *\n * @param topic 主题\n */\n unsubscribe(topic: string): void {\n this._subscriptions.delete(topic);\n if (this._client && this._status === MqttConnectionStatus.CONNECTED) {\n this._client.unsubscribe(topic);\n }\n }\n\n /**\n * 向指定主题发布消息\n *\n * @param topic 目标主题\n * @param payload 消息内容\n * @param options 发布选项\n * @returns Promise,发布成功后 resolve\n */\n publish(\n topic: string,\n payload: string | Buffer,\n options?: IMqttPublishOptions,\n ): Promise<void> {\n return new Promise((resolve, reject) => {\n if (!this._client || this._status !== MqttConnectionStatus.CONNECTED) {\n reject(\n new Error(\n `MqttClient [${this.instanceId}]: 尚未建立连接,无法发布消息`,\n ),\n );\n return;\n }\n const publishOptions: IClientPublishOptions = {\n qos: options?.qos ?? 0,\n retain: options?.retain ?? false,\n };\n this._client.publish(topic, payload, publishOptions, err => {\n if (err) {\n reject(err);\n } else {\n resolve();\n }\n });\n });\n }\n\n /**\n * 监听连接级事件\n *\n * @param event 事件名\n * @param listener 监听函数\n */\n on<E extends keyof IMqttClientEventMap>(\n event: E,\n listener: IMqttClientEventMap[E],\n ): void {\n (this._eventListeners[event] as Set<IMqttClientEventMap[E]>).add(listener);\n }\n\n /**\n * 取消监听连接级事件\n *\n * @param event 事件名\n * @param listener 监听函数\n */\n off<E extends keyof IMqttClientEventMap>(\n event: E,\n listener: IMqttClientEventMap[E],\n ): void {\n (this._eventListeners[event] as Set<IMqttClientEventMap[E]>).delete(\n listener,\n );\n }\n\n // ─────────────────────────────────────────────\n // 私有方法\n // ─────────────────────────────────────────────\n\n private _connect(): void {\n this._subscriptions.forEach((_, topic) => {\n if (this._client) {\n this._client.subscribe(topic);\n }\n });\n }\n\n /**\n * 绑定 mqtt.js 内部事件\n *\n * @private\n */\n private _bindClientEvents(): void {\n if (!this._client) return;\n\n this._client.on('connect', (_connack: IConnackPacket) => {\n console.debug(`[${this._options.clientId}] MQTT 已连接`);\n this._connect();\n this._status = MqttConnectionStatus.CONNECTED;\n this._emitEvent(MQTT_CLIENT_EVENT.CONNECT);\n });\n\n this._client.on('reconnect', () => {\n console.debug(`[${this._options.clientId}] MQTT 正在尝试重连...`);\n this._status = MqttConnectionStatus.RECONNECTING;\n this._emitEvent(MQTT_CLIENT_EVENT.RECONNECT);\n });\n\n this._client.on('error', (err: Error) => {\n console.error(`[${this._options.clientId}] MQTT 连接错误:`, err);\n this._emitEvent(MQTT_CLIENT_EVENT.ERROR, err);\n });\n\n this._client.on('close', () => {\n console.debug(`[${this._options.clientId}] MQTT 连接已关闭`);\n if (this._status !== MqttConnectionStatus.DISCONNECTING) {\n this._status = MqttConnectionStatus.DISCONNECTED;\n }\n });\n\n this._client.on('message', (topic: string, payload: Buffer) => {\n this._dispatchMessage(topic, payload);\n });\n }\n\n /**\n * 向所有已订阅该 topic 的回调函数分发消息\n *\n * @private\n * @param topic 消息主题\n * @param payload 消息内容\n */\n private _dispatchMessage(topic: string, payload: Buffer): void {\n // 精确匹配\n const callbacks = this._subscriptions.get(topic);\n if (callbacks) {\n callbacks.forEach(cb => cb(topic, payload));\n }\n // 通配符匹配\n this._subscriptions.forEach((cbSet, pattern) => {\n if (pattern !== topic && this._matchTopic(pattern, topic)) {\n cbSet.forEach(cb => cb(topic, payload));\n }\n });\n }\n\n /**\n * MQTT 通配符主题匹配\n *\n * @private\n * @param pattern 订阅时使用的通配符 pattern(支持 + 和 #)\n * @param topic 实际消息的主题\n */\n private _matchTopic(pattern: string, topic: string): boolean {\n const patternSegments = pattern.split('/');\n const topicSegments = topic.split('/');\n\n for (let i = 0; i < patternSegments.length; i++) {\n const p = patternSegments[i];\n if (p === '#') {\n return true;\n }\n if (p !== '+' && p !== topicSegments[i]) {\n return false;\n }\n }\n return patternSegments.length === topicSegments.length;\n }\n\n /**\n * 触发连接级事件\n *\n * @private\n * @param event 事件名\n * @param arg 可选参数(如 Error)\n */\n private _emitEvent(\n event: (typeof MQTT_CLIENT_EVENT)[keyof typeof MQTT_CLIENT_EVENT],\n arg?: Error,\n ): void {\n if (event === MQTT_CLIENT_EVENT.ERROR && arg) {\n (this._eventListeners.error as Set<(err: Error) => void>).forEach(fn =>\n fn(arg),\n );\n } else if (event === MQTT_CLIENT_EVENT.CONNECT) {\n this._eventListeners.connect.forEach(fn => fn());\n } else if (event === MQTT_CLIENT_EVENT.DISCONNECT) {\n this._eventListeners.disconnect.forEach(fn => fn());\n } else if (event === MQTT_CLIENT_EVENT.RECONNECT) {\n this._eventListeners.reconnect.forEach(fn => fn());\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -12,10 +12,10 @@ import { IMqttClient, IMqttConnectOptions, IMqttManager } from './interfaces/i-m
|
|
|
12
12
|
*
|
|
13
13
|
* // 创建一个 MQTT 客户端实例
|
|
14
14
|
* const client = manager.create('device-001', {
|
|
15
|
-
* brokerUrl: 'ws://localhost:8083/mqtt',
|
|
16
15
|
* username: 'admin',
|
|
17
16
|
* password: 'password',
|
|
18
17
|
* });
|
|
18
|
+
* // 默认连接地址随页面协议自动切换:HTTP 使用 ws,HTTPS 使用 wss。
|
|
19
19
|
*
|
|
20
20
|
* // 连接
|
|
21
21
|
* client.connect();
|
|
@@ -85,3 +85,4 @@ export declare class MqttManager implements IMqttManager {
|
|
|
85
85
|
*/
|
|
86
86
|
destroyAll(): void;
|
|
87
87
|
}
|
|
88
|
+
//# sourceMappingURL=mqtt-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mqtt-manager.d.ts","sourceRoot":"","sources":["../../../src/modules/mqtt/mqtt-manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,YAAY,EACb,MAAM,qBAAqB,CAAC;AAK7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,qBAAa,WAAY,YAAW,YAAY;IAC9C;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IAErC,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAGrB;IAEJ;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,WAAW;IAmBrE;;;;;OAKG;IACH,GAAG,CAAC,UAAU,GAAE,MAAiC,GAAG,WAAW,GAAG,SAAS;IAI3E;;;;;OAKG;IACH,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIhC;;;;;OAKG;IACH,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAQjC;;;;OAIG;IACH,UAAU,IAAI,IAAI;CAMnB"}
|