UNPKG

dingtalk-docs-cool-app

Version:

钉钉文档酷应用插件扩展 开发者初始化包

1 lines 918 B
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.initScript=void 0;var _utils=require("./utils"),_loadScript=require("./loadScript"),_error=require("./types/error");class ScriptExecutor{async init(t,r){try{const i=(0,_utils.getWindowName)(t),{isPre:e,dingtalkDocsAddonVersion:o}=(0,_utils.parseScriptServiceFrameName)(i);if("boolean"!=typeof e||"string"!=typeof o)throw new _error.Exception("invalid_operation","not running in the dingtalk-docs runtime.");const n=(0,_utils.jointDingtalkDocsAddonSandboxCdnUrl)(e,o);if(await(0,_loadScript.loadScript)(n),!t.__dingtalk_docs_addon_global)throw new _error.Exception("internal_error");t.__dingtalk_docs_addon_global.initScript(r)}catch(t){Promise.reject(t),r?.onError?.(t)}}}let scriptExecutor=null;const initScript=async t=>{scriptExecutor||(scriptExecutor=new ScriptExecutor,await scriptExecutor.init(window,t))};exports.initScript=initScript;