From fb07e789411bfe14bad88fae7fe73069a9363b4a Mon Sep 17 00:00:00 2001 From: Wells Date: Mon, 19 Feb 2024 17:57:22 +0800 Subject: [PATCH 1/3] chore: update --- .github/workflows/{deploy => deploy.yml} | 2 +- .github/workflows/typedoc.yml | 34 ------------------------ 2 files changed, 1 insertion(+), 35 deletions(-) rename .github/workflows/{deploy => deploy.yml} (97%) delete mode 100644 .github/workflows/typedoc.yml diff --git a/.github/workflows/deploy b/.github/workflows/deploy.yml similarity index 97% rename from .github/workflows/deploy rename to .github/workflows/deploy.yml index 1beeeef1..158bb2dc 100644 --- a/.github/workflows/deploy +++ b/.github/workflows/deploy.yml @@ -4,7 +4,7 @@ name: Deploy static content to Pages on: # Runs on pushes targeting the default branch push: - branches: ['main'] + branches: ['main', 'typedoc'] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: diff --git a/.github/workflows/typedoc.yml b/.github/workflows/typedoc.yml deleted file mode 100644 index 042bdcf0..00000000 --- a/.github/workflows/typedoc.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: 'typedoc' - -on: - push: - branches: [main] - -permissions: - contents: read - pages: write - id-token: write - -jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 - # Generate your TypeDoc documentation - - run: npx typedoc - # https://github.com/actions/upload-pages-artifact - - uses: actions/upload-pages-artifact@v2 - with: - path: ./docs # This should be your TypeDoc "out" path. - deploy: - runs-on: ubuntu-latest - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - needs: build - steps: - - name: Deploy to GitHub Pages - id: deployment - # https://github.com/actions/deploy-pages - uses: actions/deploy-pages@v2 From 315bbfcaa52eb325704ba79d310da1cf3a7139fa Mon Sep 17 00:00:00 2001 From: Wells Date: Mon, 19 Feb 2024 19:00:53 +0800 Subject: [PATCH 2/3] chore: update --- .github/workflows/deploy.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 158bb2dc..22c9697f 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,10 +1,10 @@ # Simple workflow for deploying static content to GitHub Pages -name: Deploy static content to Pages +name: Deploy Github Pages on: # Runs on pushes targeting the default branch push: - branches: ['main', 'typedoc'] + branches: ['main'] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: From 694f0e195f58ad85b20bf66ab4660076094c258e Mon Sep 17 00:00:00 2001 From: Wells Date: Mon, 19 Feb 2024 20:05:40 +0800 Subject: [PATCH 3/3] chore: remove website --- README.md | 2 +- README.zh-CN.md | 2 +- apps/website/.gitignore | 20 - apps/website/README.md | 41 - apps/website/babel.config.js | 3 - .../2023-08-30-welcome/codein-codeout.png | Bin 304553 -> 0 bytes apps/website/blog/2023-08-30-welcome/index.md | 76 - .../2023-08-30-welcome/lowocode-engine.png | Bin 265335 -> 0 bytes .../2023-08-30-welcome/tango-milestones.png | Bin 26764 -> 0 bytes apps/website/blog/authors.yml | 5 - apps/website/docs/boot/app-spec.mdx | 38 - apps/website/docs/boot/app.mdx | 134 - apps/website/docs/boot/global.mdx | 87 - apps/website/docs/boot/helpers.mdx | 130 - apps/website/docs/boot/i18n.mdx | 24 - apps/website/docs/boot/intro.mdx | 139 - apps/website/docs/boot/model.mdx | 66 - apps/website/docs/boot/page.mdx | 45 - apps/website/docs/boot/ref.mdx | 33 - apps/website/docs/boot/service.mdx | 90 - apps/website/docs/boot/store.mdx | 214 - apps/website/docs/boot/tango-config.mdx | 96 - .../docs/designer/customize/components.mdx | 135 - .../docs/designer/customize/editor.mdx | 5 - .../docs/designer/customize/panels.mdx | 72 - .../docs/designer/customize/selections.mdx | 4 - .../docs/designer/customize/setters.mdx | 95 - .../docs/designer/customize/sidebar.mdx | 53 - .../website/docs/designer/customize/tools.mdx | 53 - .../website/docs/designer/deploy/designer.mdx | 18 - apps/website/docs/designer/deploy/sandbox.mdx | 19 - apps/website/docs/designer/deploy/server.mdx | 7 - .../docs/designer/design/filesystem.mdx | 5 - .../website/docs/designer/design/overview.mdx | 112 - apps/website/docs/designer/design/sandbox.mdx | 5 - apps/website/docs/designer/quick-start.mdx | 75 - apps/website/docs/intro.md | 31 - .../docs/protocol/material-package-spec.mdx | 136 - .../docs/protocol/material-protocol.mdx | 148 - apps/website/docusaurus.config.js | 174 - apps/website/i18n/en/code.json | 318 - .../2023-08-30-welcome/codein-codeout.png | Bin 285815 -> 0 bytes .../2023-08-30-welcome/engine-components.png | Bin 260561 -> 0 bytes .../2023-08-30-welcome/engine-flow.png | Bin 62176 -> 0 bytes .../2023-08-30-welcome/index.md | 80 - .../2023-08-30-welcome/tango-milestones.png | Bin 26764 -> 0 bytes .../authors.yml | 5 - .../options.json | 14 - .../current.json | 6 - .../current/boot/app-spec.mdx | 37 - .../current/boot/app.mdx | 134 - .../current/boot/global.mdx | 87 - .../current/boot/helpers.mdx | 130 - .../current/boot/i18n.mdx | 24 - .../current/boot/intro.mdx | 138 - .../current/boot/model.mdx | 66 - .../current/boot/page.mdx | 41 - .../current/boot/ref.mdx | 33 - .../current/boot/service.mdx | 90 - .../current/boot/store.mdx | 214 - .../current/boot/tango-config.mdx | 86 - .../current/designer/extend/overview.mdx | 58 - .../designer/extend/remote-service.mdx | 67 - .../current/designer/material-import.mdx | 141 - .../designer/modules/designer-panel.mdx | 9 - .../current/designer/modules/designer.mdx | 56 - .../current/designer/modules/hooks.mdx | 27 - .../current/designer/modules/sandbox.mdx | 9 - .../designer/modules/setting-panel.mdx | 9 - .../designer/modules/sidebar-panel.mdx | 38 - .../current/designer/modules/view-panel.mdx | 10 - .../designer/modules/workspace-panel.mdx | 3 - .../current/designer/quick-start.mdx | 71 - .../current/designer/setters.mdx | 81 - .../current/intro.md | 35 - .../protocol/material-package-spec.mdx | 136 - .../current/protocol/material-protocol.mdx | 148 - .../en/docusaurus-theme-classic/footer.json | 42 - .../en/docusaurus-theme-classic/navbar.json | 30 - apps/website/package.json | 45 - apps/website/sidebars.js | 68 - apps/website/src/components/Alert.tsx | 29 - .../src/components/HomepageFeatures/index.tsx | 68 - .../HomepageFeatures/styles.module.css | 12 - apps/website/src/components/Timeline.tsx | 79 - apps/website/src/components/TypesTable.tsx | 181 - apps/website/src/components/index.module.css | 30 - apps/website/src/components/tango-types.json | 85348 ---------------- apps/website/src/css/custom.css | 30 - apps/website/src/pages/index.module.css | 35 - apps/website/src/pages/index.tsx | 64 - apps/website/static/.nojekyll | 0 apps/website/static/img/cpu-f.svg | 1 - apps/website/static/img/digital-content-4.svg | 1 - apps/website/static/img/favicon.ico | Bin 15406 -> 0 bytes apps/website/static/img/html-d.svg | 1 - apps/website/static/img/logo.png | Bin 5229 -> 0 bytes apps/website/static/img/social-card.png | Bin 20992 -> 0 bytes apps/website/tsconfig.json | 9 - package.json | 3 - 100 files changed, 2 insertions(+), 90867 deletions(-) delete mode 100644 apps/website/.gitignore delete mode 100644 apps/website/README.md delete mode 100644 apps/website/babel.config.js delete mode 100644 apps/website/blog/2023-08-30-welcome/codein-codeout.png delete mode 100644 apps/website/blog/2023-08-30-welcome/index.md delete mode 100644 apps/website/blog/2023-08-30-welcome/lowocode-engine.png delete mode 100644 apps/website/blog/2023-08-30-welcome/tango-milestones.png delete mode 100644 apps/website/blog/authors.yml delete mode 100644 apps/website/docs/boot/app-spec.mdx delete mode 100644 apps/website/docs/boot/app.mdx delete mode 100644 apps/website/docs/boot/global.mdx delete mode 100644 apps/website/docs/boot/helpers.mdx delete mode 100644 apps/website/docs/boot/i18n.mdx delete mode 100644 apps/website/docs/boot/intro.mdx delete mode 100644 apps/website/docs/boot/model.mdx delete mode 100644 apps/website/docs/boot/page.mdx delete mode 100644 apps/website/docs/boot/ref.mdx delete mode 100644 apps/website/docs/boot/service.mdx delete mode 100644 apps/website/docs/boot/store.mdx delete mode 100644 apps/website/docs/boot/tango-config.mdx delete mode 100644 apps/website/docs/designer/customize/components.mdx delete mode 100644 apps/website/docs/designer/customize/editor.mdx delete mode 100644 apps/website/docs/designer/customize/panels.mdx delete mode 100644 apps/website/docs/designer/customize/selections.mdx delete mode 100644 apps/website/docs/designer/customize/setters.mdx delete mode 100644 apps/website/docs/designer/customize/sidebar.mdx delete mode 100644 apps/website/docs/designer/customize/tools.mdx delete mode 100644 apps/website/docs/designer/deploy/designer.mdx delete mode 100644 apps/website/docs/designer/deploy/sandbox.mdx delete mode 100644 apps/website/docs/designer/deploy/server.mdx delete mode 100644 apps/website/docs/designer/design/filesystem.mdx delete mode 100644 apps/website/docs/designer/design/overview.mdx delete mode 100644 apps/website/docs/designer/design/sandbox.mdx delete mode 100644 apps/website/docs/designer/quick-start.mdx delete mode 100644 apps/website/docs/intro.md delete mode 100644 apps/website/docs/protocol/material-package-spec.mdx delete mode 100644 apps/website/docs/protocol/material-protocol.mdx delete mode 100644 apps/website/docusaurus.config.js delete mode 100644 apps/website/i18n/en/code.json delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-blog/2023-08-30-welcome/codein-codeout.png delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-blog/2023-08-30-welcome/engine-components.png delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-blog/2023-08-30-welcome/engine-flow.png delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-blog/2023-08-30-welcome/index.md delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-blog/2023-08-30-welcome/tango-milestones.png delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-blog/authors.yml delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-blog/options.json delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current.json delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/app-spec.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/app.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/global.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/helpers.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/i18n.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/intro.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/model.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/page.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/ref.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/service.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/store.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/boot/tango-config.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/extend/overview.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/extend/remote-service.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/material-import.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/modules/designer-panel.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/modules/designer.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/modules/hooks.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/modules/sandbox.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/modules/setting-panel.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/modules/sidebar-panel.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/modules/view-panel.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/modules/workspace-panel.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/quick-start.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/designer/setters.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/intro.md delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/protocol/material-package-spec.mdx delete mode 100644 apps/website/i18n/en/docusaurus-plugin-content-docs/current/protocol/material-protocol.mdx delete mode 100644 apps/website/i18n/en/docusaurus-theme-classic/footer.json delete mode 100644 apps/website/i18n/en/docusaurus-theme-classic/navbar.json delete mode 100644 apps/website/package.json delete mode 100644 apps/website/sidebars.js delete mode 100644 apps/website/src/components/Alert.tsx delete mode 100644 apps/website/src/components/HomepageFeatures/index.tsx delete mode 100644 apps/website/src/components/HomepageFeatures/styles.module.css delete mode 100644 apps/website/src/components/Timeline.tsx delete mode 100644 apps/website/src/components/TypesTable.tsx delete mode 100644 apps/website/src/components/index.module.css delete mode 100644 apps/website/src/components/tango-types.json delete mode 100644 apps/website/src/css/custom.css delete mode 100644 apps/website/src/pages/index.module.css delete mode 100644 apps/website/src/pages/index.tsx delete mode 100644 apps/website/static/.nojekyll delete mode 100644 apps/website/static/img/cpu-f.svg delete mode 100644 apps/website/static/img/digital-content-4.svg delete mode 100644 apps/website/static/img/favicon.ico delete mode 100644 apps/website/static/img/html-d.svg delete mode 100644 apps/website/static/img/logo.png delete mode 100644 apps/website/static/img/social-card.png delete mode 100644 apps/website/tsconfig.json diff --git a/README.md b/README.md index bd373f1f..dcd0add9 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ English | [简体中文](/README.zh-CN.md) You can view the detailed usage guide through the following links: -- Document site: +- Document site: - Playground application: ## ✨ Features diff --git a/README.zh-CN.md b/README.zh-CN.md index 6aa2f718..b6d6a34a 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -20,7 +20,7 @@ 可以通过下面的链接查看详细的使用指南: -- 官方文档站点: +- 官方文档站点: - 演示应用: ## ✨ 特性 diff --git a/apps/website/.gitignore b/apps/website/.gitignore deleted file mode 100644 index b2d6de30..00000000 --- a/apps/website/.gitignore +++ /dev/null @@ -1,20 +0,0 @@ -# Dependencies -/node_modules - -# Production -/build - -# Generated files -.docusaurus -.cache-loader - -# Misc -.DS_Store -.env.local -.env.development.local -.env.test.local -.env.production.local - -npm-debug.log* -yarn-debug.log* -yarn-error.log* diff --git a/apps/website/README.md b/apps/website/README.md deleted file mode 100644 index aaba2fa1..00000000 --- a/apps/website/README.md +++ /dev/null @@ -1,41 +0,0 @@ -# Website - -This website is built using [Docusaurus 2](https://docusaurus.io/), a modern static website generator. - -### Installation - -``` -$ yarn -``` - -### Local Development - -``` -$ yarn start -``` - -This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server. - -### Build - -``` -$ yarn build -``` - -This command generates static content into the `build` directory and can be served using any static contents hosting service. - -### Deployment - -Using SSH: - -``` -$ USE_SSH=true yarn deploy -``` - -Not using SSH: - -``` -$ GIT_USER= yarn deploy -``` - -If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch. diff --git a/apps/website/babel.config.js b/apps/website/babel.config.js deleted file mode 100644 index e00595da..00000000 --- a/apps/website/babel.config.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - presets: [require.resolve('@docusaurus/core/lib/babel/preset')], -}; diff --git a/apps/website/blog/2023-08-30-welcome/codein-codeout.png b/apps/website/blog/2023-08-30-welcome/codein-codeout.png deleted file mode 100644 index 3ab6844845b11c9b705259b67dc73b5c75b6ac6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 304553 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 ^9@kAv53uCa3#a9?M+-{;KlGgiGCNWI`4z@mvkk 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
  • 5-;I<4X8+^j^pnjG>4}{C3NUs*Kx~Os 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

    xv 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 diff --git a/apps/website/blog/2023-08-30-welcome/index.md b/apps/website/blog/2023-08-30-welcome/index.md deleted file mode 100644 index ff34cc32..00000000 --- a/apps/website/blog/2023-08-30-welcome/index.md +++ /dev/null @@ -1,76 +0,0 @@ ---- -title: Tango LowCode Builder Released! -authors: [wwsun] -tags: [netease, tango, open-source] ---- - -## 📝 Tango 简介 - -Tango 是一个用于快速构建低代码平台的低代码设计器框架,借助 Tango 只需要数行代码就可以完成一个基本的低代码平台前端系统的搭建。Tango 低代码设计器直接读取前端项目的源代码,并以源代码为中心,执行和渲染前端视图,并为用户提供低代码可视化搭建能力,用户的搭建操作会转为对源代码的修改。借助于 Tango 构建的低代码工具或平台,可以实现 源码进,源码出的效果,无缝与企业内部现有的研发体系进行集成。 - -### ✨ 核心特性 - -- 经历网易云音乐内网生产环境的实际检验,可灵活集成应用于低代码平台,本地开发工具等 -- 基于源码 AST 驱动,无私有 DSL 和协议 -- 提供实时出码能力,支持源码进,源码出 -- 开箱即用的前端低代码设计器,提供灵活易用的设计器 React 组件 -- 使用 TypeScript 开发,提供完整的类型定义文件 - -### 🏗️ 基于源码的低代码搭建方案 - -Tango 低代码引擎不依赖私有搭建协议和 DSL,而是直接使用源代码驱动,引擎内部将源码转为 AST,用户的所有的搭建操作转为对 AST 的遍历和修改,进而将 AST 重新生成为代码,将代码同步给在线沙箱执行。与传统的 [基于 Schema 驱动的低代码方案](https://mp.weixin.qq.com/s/yqYey76qLGYPfDtpGkVFfA) 相比,不受私有 DSL 和协议的限制,能够完美的实现低代码搭建与源码开发的无缝集成。 - - - -### 📄 源码进,源码出 - -由于引擎内核完全基于源代码驱动实现,Tango 低代码引擎能够实现源代码进,源代码出的可视化搭建能力,不提供任何私有的中间产物。如果公司内部已经有了一套完善的研发体系(代码托管、构建、部署、CDN),那么可以直接使用 Tango 低代码引擎与现有的服务集成构建低代码开发平台。 - -![code in, code out](./codein-codeout.png) - -### 🏆 产品优势 - -与基于私有 Schema 的低代码搭建方案相比,Tango 低代码引擎具有如下优势: - -| 对比项 | 基于 Schema 的低代码搭建方案 | Tango(基于源码 AST 转换) | -| ------------ | -------------------------------------------------- | --------------------------------------------------------------------- | -| 适用场景 | 面向特定的垂直搭建场景,例如表单,营销页面等 | 🔥 面面向以源码为中心的应用搭建场景 | -| 语言能力 | 依赖私有协议扩展,不灵活,且难以与编程语言能力对齐 | 🔥 直接基于 JavaScript 语言,可以使用所有的语言特性,不存在扩展性问题 | -| 开发能力 | LowCode | 🔥 LowCode + ProCode | -| 源码导出 | 以 Schema 为中心,单向出码,不可逆 | 🔥 以源码为中心,双向转码 | -| 自定义依赖 | 需要根据私有协议扩展封装,定制成本高 | 🔥 原有组件可以无缝低成本接入 | -| 集成研发设施 | 定制成本高,需要额外定制 | 🔥 低成本接入,可以直接复用原有的部署发布能力 | - -## 📐 技术架构 - -Tango 低代码引擎在实现上进行了分层解藕,使得上层的低代码平台与底层的低代码引擎可以独立开发和维护,快速集成部署。此外,Tango 低代码引擎定义了一套开放的物料生态体系,开发者可以自由的贡献扩展组件配置能力的属性设置器,以及扩展低代码物料的二方三方业务组件。 - -具体的技术架构如下图所示: - -![low-code engine](./lowocode-engine.png) - -## ⏰ 开源里程碑 - -Tango 低代码引擎是网易云音乐内部低代码平台的核心构件,开源涉及到大量的核心逻辑解藕的工作,这将给我们正常的工作带来大量的额外工作,因此我们计划分阶段推进 Tango 低代码引擎的开源事项。 - -1. 今天我们正式发布 Tango 低代码引擎的第一个社区版本,该版本将会包括 Tango 低代码引擎的核心代码库,TangoBoot 应用框架,以及基于 antd v4 适配的低代码组件库。 -2. 我们计划在今年的 **9 月 30 日** 发布低代码引擎的 **1.0 Beta** 版本,该版本将会对核心的实现面向社区场景重构,移除掉我们在云音乐内部的一些兼容代码,并将核心的实现进行重构和优化。 -3. 我们计划在今年的 **10 月 30 日** 发布低代码引擎的 **1.0 RC** 版本,该版本将会保证核心 API 基本稳定,不再发生 BREAKING CHANGE,同时我们将会提供完善翔实的开发指南、部署文档、和演示应用。 -4. **正式版**本我们将在 **2023 年 Q4 结束前** 发布,届时我们会进一步完善我们的开源社区运营机制。 - -![milestones](./tango-milestones.png) - -## 🤝 社区建设 - -我们的开源工作正在积极推进中,可以通过如下的信息了解到我们的最新进展: - -- Github 仓库: -- 文档站点: - -欢迎大家加入到我们的社区中来,一起参与到 Tango 低代码引擎的开源建设中来。有任何问题都可以通过 [Github Issues](https://github.com/NetEase/tango/issues) 反馈给我们,我们会及时跟进处理。 - -## 💗 致谢 - -感谢网易云音乐公共技术团队,大前端团队,直播技术团队,以及所有参与过 Tango 项目的同学们。 - -感谢 CodeSandbox 提供的 [Sandpack](https://sandpack.codesandbox.io/) 项目,为 Tango 提供了强大的基于浏览器的代码构建与执行能力。 diff --git a/apps/website/blog/2023-08-30-welcome/lowocode-engine.png b/apps/website/blog/2023-08-30-welcome/lowocode-engine.png deleted file mode 100644 index f8aa4c1cdb26b13d745882d650f82658c7e47ac7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 265335 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

    l_lGjirtKNmE(|6fYIx< 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%0DuX?JWP@=cEZQrs|2{4-w*-^I=DiTiakL3I30Eb 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

    jgMl;If9>U*6)KWwBdCvIx`L6A$_ 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

      hpO9M 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 diff --git a/apps/website/blog/2023-08-30-welcome/tango-milestones.png b/apps/website/blog/2023-08-30-welcome/tango-milestones.png deleted file mode 100644 index b47eb068550f6d1980f7b0a4a579624b66a97b5c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26764 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 diff --git a/apps/website/blog/authors.yml b/apps/website/blog/authors.yml deleted file mode 100644 index 185f1751..00000000 --- a/apps/website/blog/authors.yml +++ /dev/null @@ -1,5 +0,0 @@ -wwsun: - name: Wells SUN - title: Core maintainer - url: https://github.com/wwsun - image_url: https://github.com/wwsun.png diff --git a/apps/website/docs/boot/app-spec.mdx b/apps/website/docs/boot/app-spec.mdx deleted file mode 100644 index da492248..00000000 --- a/apps/website/docs/boot/app-spec.mdx +++ /dev/null @@ -1,38 +0,0 @@ -# 目录结构 - -## 目录结构规范 - -在目录结构上,我们约定了一套通用的目录结构 - -```md -── src -│ +── assets -│ +── pages -│ +── components -│ +── services/index.js -│ +── stores -│ ├── routes.js // 路由配置 -│ ├── global.less // 全局样式 -| |-- index.js 应用启动配置 -└── package.json -|---tango.config.json 设计器和 external 配置 -``` - -## `src/components` 自定义组件 - -该目录放置本地开发的组件,例如 - -```jsx -// src/components/sample.jsx -import React from 'react'; -import { Box } from '@music163/antd'; - -// 如果需要被搭建,使用 Box 代替 div,并且支持透出属性 -export function Sample(props) { - return sample component; -} -``` - -:::info -注意,如果需要 Sample 组件能够被设计器解析和搭建,则一定要使用 MusicOne 的 `Box` 组件代替普遍的 `div` 元素,你也可以使用 `` 来改变渲染的 html 元素。 -::: diff --git a/apps/website/docs/boot/app.mdx b/apps/website/docs/boot/app.mdx deleted file mode 100644 index 6f400bd8..00000000 --- a/apps/website/docs/boot/app.mdx +++ /dev/null @@ -1,134 +0,0 @@ -# 应用入口 - -框架通过 `runApp` 创建渲染整个应用,在创建应用时可以传入应用的全局配置。 - -## 基本配置 - -通过 `src/index.js` 对应用进行全局配置,设置路由、运行时环境、服务函数、状态模型等。 - -```js -import { runApp, tangoBootConfig } from '@music163/tango-boot'; -import { message } from '@music163/antd'; - -// 配置请求错误发生时消息默认的展现方式,此处使用 message 组件进行消息浮层的展示 -tangoBootConfig.toast = message; - -runApp({ - // 启动项配置 - boot: {}, - - // 应用容器注入 - providers: [], - - // 状态模型 - stores: {}, - - // 服务函数 - services: {}, - - // 路由配置 - router: {}, -}); -``` - -## 启动项配置 - -`boot` 配置项用于应用的启动项配置: - -```js -runApp({ - boot: { - // 应用挂载的 dom 结点 - mountElement: document.querySelector('#root'), - - // 是否开启 qiankun,如开启则对应为 `qiankun: { appName: string }` - qiankun: false, - }, -}); -``` - -## 路由配置 - -`router` 配置项用于配置应用的前端路由,底层基于 `react-router` 实现: - -```js -import routes from './routes'; - -runApp({ - router: { - // 路由类型: hash | browser - type: 'hash', - - // 路由配置信息 - config: routes, - - // basename, - }, -}); -``` - -TangoBoot 使用的是 ReactRouter 的[静态路由配置方案](https://github.com/remix-run/react-router/tree/v5/packages/react-router-config)。具体的路由配置文件如下: - -```js -// routes.js -import Index from './pages/index'; -import About from './pages/about'; - -const routes = [ - { - path: '/', - exact: true, - component: Index, - }, - { - path: '/about', - component: About, - }, - { - path: '/user/:id', - component: About, - }, -]; - -export default routes; -``` - -## 应用容器配置 - -由于 `runApp` 封装了根组件的渲染逻辑,某些时候,你可能想要为根组件包裹特定的容器类组件,例如多语言配置,状态容器等等,可以借助 `providers` 配置项进行: - -```js -runApp({ - // 传入 providers 组件实例,按照传入顺序进行包裹 - providers: [, ], -}); -``` - -## 设置环境变量 {#env} - -某些时候你可能需要自定义一些环境变量,以便在应用运行在不同的环境中的时候进行快速的判断。你可以借助 `tango.env` 来快速的获取到应用的环境信息。需要注意的是,默认情况下不会有任何的环境信息,你可以在需要的时候通过在 `runApp` 中传入 `getEnv` 设置的方式来设置你想要的环境变量。 - -例如: - -```js -runApp({ - // 自定义应用的环境信息,你可以返回对象 - getEnv() { - if (location.origin.includes('tango')) { - // tango 设计器中 - return 'development'; - } - if (location.origin.includes('localhost')) { - // 本地开发 - return 'local'; - } - return 'production'; - }, -}); -``` - -在任意地方消费环境变量,例如: - -```jsx -一个仅在开发态显示的区域 -``` diff --git a/apps/website/docs/boot/global.mdx b/apps/website/docs/boot/global.mdx deleted file mode 100644 index 831be286..00000000 --- a/apps/website/docs/boot/global.mdx +++ /dev/null @@ -1,87 +0,0 @@ -# 全局单例 - -TangoBoot 默认提供全局单例模式,意味着,您可以在项目中始终使用该全局单例来进行必要的应用运行时信息的访问。 - -:::tip -单例意味着单一实例,也叫单例模式,是一种比较常见的设计模式。限制类实例化次数只能一次,一个类只有一个实例,并提供一个访问它的全局访问点。TangoBoot 单例意味着您的应用各种始终只有一个 TangoBoot 实例,并且可以借助该单一实例,一致的获取到应用到运行时信息。 -::: - -## 如何获取全局单例 - -```js -// 从模块包引入 -import tango from '@music163/tango-boot'; - -// 或直接从 window 获取 -window.tango; - -// 两者是对等的 -console.log(tango === window.tango); // true -``` - -### 可以从 `tango` 单例中获取的信息 - -```js -// tango -{ - // 自定义配置信息 - config: {}, - - // 自定义辅助函数 - helpers: {}, - - // History - history: History; - - // 服务函数集合 - services: {}, - - // 状态模型集合 - stores: {}, - - // builtin helpers - closeModal: Function; - openModal: Function; - setStoreValue: Function; - getStoreValue: Function; - // ... -} -``` - -## 如何使用 - -### 在模型定义中使用 - -```jsx -import tango, { defineModel } from '@music163/tango-boot'; - -export default defineModel( - { - title: 'hello', - - async listUsers() { - const data = await tango.services.listUsers(); - this.title = data; - }, - }, - 'app' -); -``` - -### 在视图中使用 - -```jsx -import tango, { definePage } from '@music163/tango-boot'; - -function App() { - return ( - - {tango.stores.app.title} - - - - ); -} - -export default definePage(App); -``` diff --git a/apps/website/docs/boot/helpers.mdx b/apps/website/docs/boot/helpers.mdx deleted file mode 100644 index ea21c29d..00000000 --- a/apps/website/docs/boot/helpers.mdx +++ /dev/null @@ -1,130 +0,0 @@ -# 常用的工具函数 - -tango-boot 提供了一组便捷的工具函数,用于应对日常开发过程中的典型操作逻辑。 - -### `getUser()` - -> 从 v1.15.0 开始提供 - -获取当前的登录用户 - -```js -const user = tango.getUser(); -``` - -### `checkPrivilege({ appCode, privilegeCode })` - -> 从 v1.15.0 开始提供 - -检查 PMS 权限 - -```js -const test = await tango.checkPrivilege({ appCode, privilegeCode }); -``` - -### `copyToClipboard(text: string)` - -复制文本到剪贴板 - -```js -tango.copyToClipboard('hello world'); -``` - -### `navigateTo(link: string, data?: object)` - -导航到其他前端路由 - -```js -// 基本用法 -tango.navigateTo('/about'); - -// 带路由参数 -tango.navigateTo('/about', { the: 'query' }); // /about?the=query -``` - -### `showToast(text: string, type: string, time: number)` - -- text 消息正文 -- type 消息类型 `success | error | warn` -- time 消息展示的时间,单位秒,默认为 3 秒 - -消息提示 - -```js -tango.showToast('hello world'); - -tango.showToast('something is error', 'error', 3); -``` - -### `openModal(modalId: string)` - -根据弹层 ID 唤起目标弹层 - -```js -tango.openModal('modal123'); -``` - -### `closeModal(modalId: string)` - -根据弹层 ID 关闭目标弹层 - -```js -tango.closeModal('modal123'); -``` - -### `formatDate(date, format)` - -- date: `number | string | Moment` 日期值 -- format: `string` 格式化,取值参考 https://momentjs.com/docs/#/displaying/format/ - -格式化日期值 - -```js -tango.formatDate(1659496225323, 'YYYY-MM-DD HH:mm:ss'); // 2022-08-03 11:10:25 - -tango.formatDate('2022-11-11', 'X'); // 1668096000 -``` - -### `formatNumber(number, locale, options)` - -- number: `number` -- locale: `string` -- options: `Intl.NumberFormatOptions`,参考取值 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat - -格式化数字 - -```js -tango.formatNumber(99999); // 99,999 -``` - -### `getCurrentLanguage` - -获取当前语种 - -```js -tango.getCurrentLanguage(); // en-US -``` - -### `setLanguage(localeCode)` - -设置当前语种 - -```js -tango.setLanguage('en-US'); -``` - -### `getLanguageList` - -获取当前应用可用语种列表 - -```js -tango.getLanguageList(); -``` - -### `trans(module:key)` - -根据多语言 key 获取当前语种文案 - -```js -tango.trans('common:add'); // 新增 -``` diff --git a/apps/website/docs/boot/i18n.mdx b/apps/website/docs/boot/i18n.mdx deleted file mode 100644 index 124836df..00000000 --- a/apps/website/docs/boot/i18n.mdx +++ /dev/null @@ -1,24 +0,0 @@ -# 国际化 - -TangoBoot 本身不提供国际化功能,国际化和您的 UI 组件库相关,在云音乐,我们采用的是基于 `@music163/antd` 的 UI 层解决方案。可以借助应用入口的容器配置功能进行国际化配置。 - -:::tip -如果您还不了解应用入口配置,可以先访问 [应用入口](./app) 一节进行了解。 -::: - -## 配置示例 - -```js -import { runApp } from '@music163/tango-boot'; -import { ConfigProvider } from '@music163/antd'; -import locale from '@music163/antd/es/locale/zh_CN'; -import 'moment/dist/locale/zh-cn'; - -// 设置 moment 的文案 -moment.locale('zh-cn'); - -runApp({ - // 设置 UI 组件库的文案配置 - providers: [], -}); -``` diff --git a/apps/website/docs/boot/intro.mdx b/apps/website/docs/boot/intro.mdx deleted file mode 100644 index f009c12c..00000000 --- a/apps/website/docs/boot/intro.mdx +++ /dev/null @@ -1,139 +0,0 @@ -# TangoBoot - -TangoBoot 是一个服务于 Tango 低代码应用开发体系的前端应用框架,提供了标准的数据请求,状态管理,路由方案,并提供了通用的运行时工具函数,让开发者通过简单的配置即可生成单页应用。 - -## 应用架构 - -TangoBoot 的应用架构使用的是 View-Model-Service 三层模型,其中模型层定义了 Observable States,视图层观察 Model 的变化而进行自动更新,服务层用来创建一组服务函数,供视图层和模型层消费。图如下图所示: - -image - -## 核心 API - -- `runApp` 创建应用入口 -- `definePage` 定义 Reactive 视图 -- `defineStore` 定义可观察的状态模型 -- `defineServices` 定义服务函数 - -### 创建应用入口 - -其中`index.js` 为应用的入口文件,一个基本的实现为 - -```jsx -import { runApp } from '@music163/tango-boot'; -import routes from './routes'; -import services from './services'; -import home from './stores/home'; -import counter from './stores/counter'; -// 全局样式 -import './global.less'; - -const { mount, unmount, bootstrap } = runApp({ - boot: { - mountElement: document.querySelector('#root'), - qiankun: false, - }, - - stores: { - home, - counter, - }, - - services, - - router: { - type: 'browser', - config: routes, - }, -}); - -export { mount, unmount, bootstrap }; -``` - -### 创建视图模型 - -通过 defineStore 来进行视图模型的定义非常简单,只需简单的声明状态和动作即可 - -```jsx -import { defineStore } from '@music163/tango-boot'; - -const counter = defineStore({ - num: 0, - - get() {}, - - decrement: function () { - counter.num--; - }, - - increment: () => counter.num++, -}); - -export default counter; -``` - -### 创建 Reactive 视图 - -视图层如果要监听状态的变化,只需要 `definePage` 对视图组件进行一层包裹即可。 - -```jsx -import React from 'react'; -import tango, { definePage } from '@music163/tango-boot'; - -class App extends React.Component { - increment = () => { - tango.stores.counter.increment(); - }; - - render() { - return ( -
      -

      Counter: {tango.stores.counter.num}

      - -
      - ); - } -} - -export default definePage(App); -``` - -### 创建数据服务函数 - -`defineServices` 提供了低成本声明异步服务函数的能力。 - -```jsx -import { defineServices } from '@music163/tango-boot'; - -export default defineServices({ - list: { - url: 'https://nei.hz.netease.com/api/apimock-v2/c45109399a1d33d83e32a59984b25b00/api/users', - formatter: (res) => { - const { data, message } = res; - return { - code: 200, - list: data, - total: data.length, - message, - }; - }, - }, - add: { - url: 'https://nei.hz.netease.com/api/apimock-v2/c45109399a1d33d83e32a59984b25b00/api/users', - method: 'post', - }, - update: { - url: 'https://nei.hz.netease.com/api/apimock-v2/c45109399a1d33d83e32a59984b25b00/api/users', - method: 'post', - }, - delete: { - url: 'https://nei.hz.netease.com/api/apimock-v2/c45109399a1d33d83e32a59984b25b00/api/users?id=1', - }, -}); -``` diff --git a/apps/website/docs/boot/model.mdx b/apps/website/docs/boot/model.mdx deleted file mode 100644 index ee584f4f..00000000 --- a/apps/website/docs/boot/model.mdx +++ /dev/null @@ -1,66 +0,0 @@ -# 双向绑定 - -TangoBoot 支持快捷实现组件与视图双向绑定。 - -## 借助 `withModel` 实现双向绑定 - -`withModel` 是 TangoBoot 内置的模型绑定 HOC,支持将组件的内部状态同步到某个 store 定义的状态中。基本的用法如下: - -```jsx -class Input extends React.Component { - foo() {} - - render() { - return ; - } -} - -const ModelInput = withModel({ - // 设置从组件同步到 store 中的状态值 - getValueFromEvent(e: any) { - return e.target.value; - }, -})(Input); -``` - -现在 `ModelInput` 获取了双向绑定的能力,其 `value` 变化后的值将会通过 `onChange` 事件同步给绑定的模型变量 - -```jsx -const Store = defineStore( - { - name: 'alice', - }, - 'user' -); - -const ModelApp = defineView((props) => { - return ( -
      - -
      - ); -}); -``` - -## 配置选项 - -`withModel` 的定义如下: - -```jsx -withModel(options)(Component); -``` - -其中 options 的配置如下: - -| 属性名 | 类型 | 默认值 | 说明 | -| ----------------- | ------------------ | ---------- | -------------------------- | -| name | string | | 组件的 displayName | -| valuePropName | string | "value" | 组件的受控值 | -| trigger | string | "onChange" | 组件值变化时的回调函数 | -| getValueFromEvent | `(...args) => any` | | 从回调函数参数中的取值方法 | - -借助 `withModel` 增强后,Component 组件将会获得如下属性: - -| 属性名 | 类型 | 默认值 | 说明 | -| ------ | ------ | ------ | ------------------------ | -| model | string | | 绑定的模型变量的变量路径 | diff --git a/apps/website/docs/boot/page.mdx b/apps/website/docs/boot/page.mdx deleted file mode 100644 index b68be604..00000000 --- a/apps/website/docs/boot/page.mdx +++ /dev/null @@ -1,45 +0,0 @@ ---- -sidebar_position: 4 ---- - -# 创建页面 - -TangoBoot 内置提供了一个创建 reactive 视图的模型,用户无需关注复杂的依赖关系,只需要将视图组件使用 `definePage` 包裹即可。 - -## definePage - -基于传递进来的组件创建一个 reactive 视图。reactive 视图会根据 store 数据的变化来自动触发视图重新渲染。例如 - -```jsx -import React from 'react'; -import { definePage, defineStore } from '@music163/tango-boot'; - -const user = defineStore({ name: 'Bob' }); - -export default definePage(() =>
      Hello {user.name}!
      ); -``` - -`definePage` 内部为被包裹的组件实现了一个最佳的 `shouldComponentUpdate` 或 `memo`。 - -使用 `definePage` 包裹后的组件还会默认接收一些额外的属性,以便于开发者便捷的获取部分状态信息。具体包括: - -- `routerData` 路由数据:包括 `params` 路由参数,`query` 查询参数,`pathname` 路径名 -- `stores` 模型索引 -- `services` 服务索引 - -## defineView - -`defineView` 是一个更加轻量的实现 reactive 视图的包裹器,推荐所有在视图中使用的本地组件都使用它来进行包裹。与 `definePage` 不同的是,他没有额外的属性透传进来。 - -```jsx -export default defineView(() => ( -
      -
      Hello {user.name}!
      -
      Your first post is: {timeline.posts[0]}
      -
      -)); -``` - -:::info -`defineView` 的实现依赖了 [react-easy-state](https://github.com/RisingStack/react-easy-state#creating-reactive-views),感兴趣的同学可以访问对应的链接了解更详细的内容。 -::: diff --git a/apps/website/docs/boot/ref.mdx b/apps/website/docs/boot/ref.mdx deleted file mode 100644 index a72f684b..00000000 --- a/apps/website/docs/boot/ref.mdx +++ /dev/null @@ -1,33 +0,0 @@ -# 组件实例获取 - -TangoBoot 支持快捷设置和获取组件的实例。 - -## 借助 `withRef` 注册组件实例 - -`withRef` 是 TangoBoot 内置的实例注册 HOC,可以快捷的进行组件实例的注册和获取。基本的用法如下: - -```tsx -class Input extends React.Component { - foo() {} - - render() { - return ; - } -} - -const ClassInput = withRef()(Input); -``` - -借助 `withRef` 包裹组件后,当新的组件实例被设置 `id` 属性时,会自动将对应的实例注册到 `tango.refs` 中。例如: - -```tsx -export function Basic() { - const inputRef = useRef(); - useEffect(() => { - console.log(tango.refs.classInput, inputRef.current); - }, []); - - // 设置 id 属性后,会自动组件实例到 `tango.refs` 中 - return ; -} -``` diff --git a/apps/website/docs/boot/service.mdx b/apps/website/docs/boot/service.mdx deleted file mode 100644 index 2665b3ad..00000000 --- a/apps/website/docs/boot/service.mdx +++ /dev/null @@ -1,90 +0,0 @@ -# 消费异步数据服务 - -TangoBoot 提供一个配置式的创建数据服务函数的方法,通过 `defineServices` 可以非常轻松的声明一组异步服务函数,供视图层或模型层消费。 - -## 简单用法 - -```js -import { defineServices } from '@music163/tango-boot'; - -const services = defineServices({ - list: { - url: 'https://nei.hz.netease.com/api/apimock-v2/c45109399a1d33d83e32a59984b25b00/api/users', - }, - add: { - url: 'https://nei.hz.netease.com/api/apimock-v2/c45109399a1d33d83e32a59984b25b00/api/users', - method: 'post', - }, -}); -``` - -调用异步服务函数 - -```js -async () => { - // 最简单的调用方法 - await services.list(); - - // 用可以快捷传递参数,参数1为数据载荷,参数2为请求配置 - await services.add(payload, config); -}; -``` - -## 请求配置 - -默认情况下,`defineServices` 底层采用 [axios](https://github.com/axios/axios) 发起请求。 - -```js -import { defineServices } from '@music163/tango-boot'; - -export default defineServices({ - list: { - url: 'https://nei.hz.netease.com/api/apimock-v2/c45109399a1d33d83e32a59984b25b00/api/users', - formatter: (res) => { - const { data, message } = res; - return { - code: 200, - list: data, - total: data.length, - message, - }; - }, - // 这里你也可以传入 axios 的其他配置 - }, -}); -``` - -常用的配置如下: - -- url 请求地址 -- method 请求方法,默认为 `GET` - - `GET` - - `POST` - - `PUT` - - `DELETE` -- formatter 格式化响应数据 -- requestType 请求体编码类型(content-type),默认值为 `json` - - `json` 默认将 JavaScript 对象序列化为 JSON - - `x-www-form-urlencoded` 对应为 `application/x-www-form-urlencoded` -- headers 自定义请求头 -- timeout 超时的毫秒数 - -更多的配置选项可以参考 [axios 请求配置文档](https://axios-http.com/zh/docs/req_config)。 - -:::tip 请求体编码 -默认情况下 TangoBoot 将 JavaScript 对象序列化为 JSON。如果要以 `application/x-www-form-urlencoded` 格式发送数据,可以将 `requestType` 设置为 `x-www-form-urlencoded`。 - -`application/x-www-form-urlencoded` 数据被编码成以 '&' 分隔的键 - 值对,同时以 '=' 分隔键和值。非字母或数字的字符会被 [percent-encoding](https://developer.mozilla.org/zh-CN/docs/Glossary/percent-encoding): 这也就是为什么这种类型不支持二进制数据 (应使用 multipart/form-data 代替). -::: - - -## 配置错误消息展示 - -配置请求错误发生时消息默认的展现方式,此处使用 `message` 组件进行消息浮层的展示。推荐在应用的入口文件进行配置: - -```js -import { tangoBootConfig } from '@music163/tango-boot'; -import { message } from '@music163/antd'; - -tangoBootConfig.toast = message; -``` diff --git a/apps/website/docs/boot/store.mdx b/apps/website/docs/boot/store.mdx deleted file mode 100644 index e4ac78f4..00000000 --- a/apps/website/docs/boot/store.mdx +++ /dev/null @@ -1,214 +0,0 @@ -# 管理前端应用状态 - -TangoBoot 采用了一个轻量级的使用 Reactive 的状态管理方案,开发者可以非常轻松的进行页面状态的管理。一个最基本的示例如下所示: - -```js -import React from 'react'; -import { defineStore, definePage } from '@music163/tango-boot'; - -const counter = defineStore({ - num: 0, - increment: () => counter.num++, -}); - -// 当状态变化的时候,视图会自动刷新 -export default definePage(() => ); -``` - -值得注意的是,开发者必须借助 `defineStore` 来定义状态,它会帮助你创建一个 observable 的状态对象。借助 `definePage` 来定义视图,它会帮你订一个 reactive 的视图组件,并且在自动监听状态的变化,按需进行 UI 更新。 - -## 创建状态模型 Stores - -基本语法为 `defineStore(storeObject: object, namespace?: string)` - -- `storeObject` 为原始的状态对象 -- `namespace` 为该 Store 对应的命名空间,如果你定义了,可以借助 `tango.stores[namespace]` 来获取该引用 - -一个基本的例子如下: - -```js -import { defineStore } from '@music163/tango-boot'; - -const user = defineStore({ name: 'Rick' }); -// stores behave like normal JS objects -user.name = 'Bob'; -``` - -### 复杂的数据结构 - -```js -// stores can include any valid JS structure -// including nested data, arrays, Maps, Sets, getters, setters, inheritance, ... -const user = defineStore({ - profile: { - firstName: 'Bob', - lastName: 'Smith', - get name() { - return `${user.profile.firstName} ${user.profile.lastName}`; - }, - }, - hobbies: ['programming', 'sports'], - friends: new Map(), -}); - -// stores may be mutated in any syntactically valid way -user.profile.firstName = 'Bob'; -delete user.profile.lastName; -user.hobbies.push('reading'); -user.friends.set('id', otherUser); -``` - -### 异步方法 - -```js -const userStore = defineStore({ - user: {}, - async fetchUser() { - userStore.user = await fetch('/user'); - - // or use this - // this.user = await fetch('/user'); - }, -}); -``` - -### 多个 Store - -useStore.js - -```js -import { store } from '@music163/tango-boot'; - -const userStore = defineStore( - { - user: {}, - async fetchUser() { - userStore.user = await fetch('/user'); - }, - }, - 'userStore', -); - -export default userStore; -``` - -recipesStore.js - -```js -import tango, { store } from '@music163/tango-boot'; -import userStore from './userStore'; - -const recipesStore = defineStore( - { - recipes: [], - - // 方式1:直接用调用 - async fetchRecipes() { - recipesStore.recipes = await fetch(`/recipes?user=${userStore.user.id}`); - }, - - // 方法2:使用 this 调用,仅支持 method property,不支持箭头函数 - async fetchRecipes2() { - this.recipes = await fetch(`/recipes?user=${userStore.user.id}`); - }, - - // 方法3:使用 tango 全局变量调用,你也可以使用这种方式引入其他的 store - async fetchRecipes3() { - tango.stores.recipesStore.recipes = await fetch( - `/recipes?user=${tango.stores.userStore.user.id}`, - ); - }, - }, - 'recipesStore', -); - -export default recipesStore; -``` - -## 创建 Reactive 视图 - -你可以借助 `definePage` 创建视图,也可以直接包裹您的原始组件。基本用法为 `definePage(Component)`,借助 `definePage` 可以帮你自动监听状态的变化,并在变化时自动触发视图的重新渲染。 - -一个简单的例子如下: - -```js -import React from 'react'; -import { view, store } from '@music163/tango-boot'; - -// this is a global state store -const user = defineStore({ name: 'Bob' }); - -// this is re-rendered whenever user.name changes -export default definePage(() => ( -
      - (user.name = ev.target.value)} /> -
      Hello {user.name}!
      -
      -)); -``` - -## 实现视图与状态双向绑定 - -TangoBoot 提供了一个名为 `withModel` 的 [HOC](https://zh-hans.reactjs.org/docs/higher-order-components.html),可以借助它来实现视图与状态的双向绑定。 - -使用方法如下: - -```js -withModel(options)(BaseComponent); -``` - -### 参数配置 - -其中可配置的 options 参数包括: - -- `name` 用于配置包裹后组件的 displayName,可选 -- `valuePropName` 绑定的 value 属性名,用于实现双向绑定的受控逻辑,默认为 `value` -- `trigger` 设置收集字段值变更的时机,默认为 `onChange` -- `getValueFromEvent` 设置从事件回调中获取 value 值的方法,默认为 `val => val`,直接返回 trigger 的第一个参数 - -嵌套 `whitModel` 后,组件将会获得两个新增的属性: - -- `model` 用于绑定 Store 中的状态 -- `innerRef` 用于获取内部组件的 [ref](https://zh-hans.reactjs.org/docs/refs-and-the-dom.html) 引用 - -### 双向绑定示例 - -基本用法如下: - -```jsx -import tango, { withModel, defineView, defineStore } from '@music163/tango-boot'; - -// 定义一个基本的 Input 组件 -class Input extends React.Component { - foo() {} - - render() { - return ; - } -} - -// 实现双向绑定 -const ModelInput = withModel({ - getValueFromEvent(e) { - return e.target.value; - }, -})(Input); - -// 定义一个 Store -defineStore( - { - name: 'alice', - }, - 'user', -); - -// 双向绑定验证 -const ModelApp = defineView((props) => { - return ( -
      - -
      {tango.stores.user.name}
      -
      - ); -}); -``` diff --git a/apps/website/docs/boot/tango-config.mdx b/apps/website/docs/boot/tango-config.mdx deleted file mode 100644 index 463a46e1..00000000 --- a/apps/website/docs/boot/tango-config.mdx +++ /dev/null @@ -1,96 +0,0 @@ -# tango.config.json - -`tango.config.json` 是 Tango 项目的核心配置文件,当您的项目使用 Tango 设计器在线开发时会读取该文件进行线上开发环境的初始化。 - -## entry - -非必填。`entry` 是项目的入口文件,用于在线设计器的初始化,默认取值为 `/src/index.js`。 - -## packages - -项目使用的 npm 包依赖信息,用于定义依赖的类型以及外置依赖资源。该配置项为一个 map,key 为对应的 npm 包名,value 为该依赖的配置信息。 - -- version 包的版本号,必选 -- library UMD 包中的全局变量名,必选 -- type 依赖的类型 - - baseDependency 基础依赖包 - - bizDependency 业务组件依赖包 - - dependency 其他依赖包 -- resources 外置依赖资源列表 -- designerResources 在设计器视图载入的外置资源列表,用来需要区别加载时使用 -- description 描述信息 - -依赖的类型 `type` 可以是 `baseDependency` 即项目的基础依赖,用于获取项目基础物料列表的信息;也可以是 `bizDependency` 即业务组件依赖,用于获取合并到物料面板业务组件菜单中的业务组件列表;也可以是 `depenency` 即项目的其他依赖,只用于提供 external 信息与版本信息等,不会和物料面板产生关系。 - -当配置了外置依赖资源 `resources` 与其对应的全局变量 `library` 时,当这些依赖被 import 时,相关资源不会被打包到 bundle 中,而是在运行时再去外部获取这些扩展依赖,其等效于之前的 `sandbox.externalResources` 与 `sandbox.externals` 配置项。此外,可以将 `resource` 中的版本号替换为 `{{version}}`,其会在平台上构建时替换为版本号。特殊的,可以定义 `designerResources` 用于适配平台的设计器视图。 - -```json -{ - "react": { - "version": "17.0.2", - "library": "React", - "type": "dependency", - "resources": ["https://unpkg.com/react@{{version}}/umd/react.development.js"] - }, - "react-dom": { - "version": "17.0.2", - "library": "ReactDOM", - "type": "dependency", - "resources": ["https://unpkg.com/react-dom@{{version}}/umd/react-dom.development.js"] - }, - "@music163/tango-boot": { - "version": "0.1.3", - "library": "TangoBoot", - "type": "baseDependency", - "resources": ["https://unpkg.com/@music163/tango-boot@{{version}}/dist/boot.js"], - "description": "云音乐低代码运行时框架" - }, - "@music163/antd": { - "version": "0.1.2", - "library": "TangoAntd", - "type": "baseDependency", - "resources": [ - "https://unpkg.com/@music163/antd/{{version}}/dist/index.js", - "https://unpkg.com/@music163/antd/{{version}}/dist/index.css" - ], - "description": "云音乐低代码中后台应用基础物料", - "designerResources": [ - "https://unpkg.com/@music163/antd/{{version}}/dist/designer.js", - "https://unpkg.com/@music163/antd/{{version}}/dist/index.css" - ] - }, - "@music163/biz-comp": { - "type": "bizDependency", - "version": "0.0.2" - } -} -``` - -:::tip 注意依赖的先后顺序 -由于依赖是按照定义的先后顺序注入至沙箱内,因此需要确保 `packages` 内依赖的先后顺序,否则可能会导致应用加载依赖失败(例如将 `react` 放置在组件包之后,会导致组件包无法正常加载)。 -::: - -## externalResources - -除了上述 `packages` 定义的外置依赖资源外,在这里可以定义沙箱启动时引入的非 npm 包的外置依赖资源列表,可以是 `js` 或 `css` 等静态文件。例如: - -```json -{ - "externalResources": ["https://tango.netease.io/script.js"] -} -``` - -## proxy - -非必填。项目的代理规则。 - -```json -{ - "proxy": { - "/api/pms": { - "target": "http://cms.qa.igame.163.com", - "changeOrigin": true - } - } -} -``` diff --git a/apps/website/docs/designer/customize/components.mdx b/apps/website/docs/designer/customize/components.mdx deleted file mode 100644 index 0567dada..00000000 --- a/apps/website/docs/designer/customize/components.mdx +++ /dev/null @@ -1,135 +0,0 @@ -# 组件库自定义 - -Tango 提供了基于源码的低代码开发能力,默认不提供私有的内置组件库,仅提供了一个简单的示例用于说明如何将只有组件库接入到 Tango 中。 - -:::tip -**组件库接入**意味着开发者可以将自己的组件库接入到 Tango 中,以便于在设计器中使用自己的组件,包括拖拽、配置、生成等行为。 -::: - -## 基本的目录结构 - -基本的组件库目录结构如下: - -```text -+ src - + button - - view.tsx // 默认视图文件 - - index.ts // 渲染视图入口文件 - - designer.ts // 设计器视图入口文件 - - prototype.ts // 【新增】组件描述文件 - + date-picker - - index.ts // 组件包默认入口文件 - - designer.ts // 【新增】组件包设计器视图入口文件 -``` - -可以发现,相比正常的组件代码,Tango 对于接入的组件库要求提供 2 个全新的文件 `designer.ts` 和 `prototype.ts`。其中 `designer.ts` 为设计视图文件,用来实现在 Tango 设计器中的辅助搭建行为,如果无需定制,可以直接保持 `designer.ts` 文件和 `index.ts` 文件一致。而 `prototype.ts` 文件则是用来描述组件的属性和行为的,用于在设计器中渲染组件的配置项,和控制组件的拖拽行为等。 - -一个可供参考的示例代码是 - -### designer.ts - -在 `designer.ts` 文件中,相比原有的组件库入口文件,还需要导出 `menuData` 和 `prototypes` 两个模块。 - -```jsx -export * from './button'; -export * from './card'; -//... - -// 组件的配置描述列表 -export const prototypes = [ - { - title: '按钮', - name: 'Button', - props: [ - { - name: 'size', - setter: 'textSetter', - }, - //... - ], - }, - //... -]; - -export const menuData = { - // 常用组件 - common: [ - { - title: '基本', - items: ['Button'], - }, - ], -}; -``` - -其中 `menuData` 的 `key` 可选列表如下: - -| key | 说明 | -| ------- | -------- | -| common | 常用组件 | -| atom | 原子组件 | -| snippet | 代码片段 | - -### prototype.ts - -组件的配置描述文件。 - -## 组件配置描述 - -### ComponentPrototypeType - -组件的配置描述。 - -| 属性 | 说明 | 类型 | 默认值 | -| -------------- | ----------------------------------------------- | ---------------------------------------------------------------------------- | ------ | -| childrenName | 子组件的名称 | `string` | - | -| docs | 组件的文档地址 | `string` | - | -| exportType | 组件的导出类型 `defaultExport` \| `namedExport` | `string` | - | -| hasChildren | 是否有子组件 | `boolean` | - | -| help | 组件的帮助文档 | `string` | - | -| icon | 组件的图标,图片地址或 iconfont 图标名 | string | - | -| name | 组件的名称 | `string` | - | -| package | 组件的包名,或引入路径 | `string` | - | -| props | 组件的属性描述 | `ComponentPropType[]` | - | -| relatedImports | 组件的相关引入 | `string[]` | - | -| rules | 组件的规则 | `ComponentDndRulesType` | - | -| title | 组件的标题 | `string` | - | -| type | 组件的类型 | "page" \| "container" \| "placeholder" \| "element" \| "snippet" \| "block"` | - | -| usage | 组件的使用说明 | `string` | - | - -### ComponentPropType - -组件的属性描述。 - -| 属性 | 说明 | 类型 | 默认值 | -| --------------------- | -------------------------------------------- | ------------------------------------------- | ------ | -| autoCompleteOptions | 自动补全的提示值,仅对 ExpressionSetter 有效 | `string[]` | - | -| autoInitValue | 如果没提供 initValue, 是否自动初始化值 | `boolean` | - | -| defaultValue | 组件的内置默认值 | `any` | - | -| disableVariableSetter | 是否禁用变量设置器 | `boolean` | - | -| docs | 属性的文档地址 | `string` | - | -| getProp | 动态设置属性,覆盖已有的 prop 对象 | `(form) => any` | - | -| getSetterProps | 动态设置属性,覆盖已有的 setterProps 对象 | `(form) => any` | - | -| getVisible | 动态设置表单项是否展示 | `(form) => boolean` | - | -| group | 属性的分组 | `basic` \| `event` \| `style` \| `advanced` | - | -| initValue | 首次拖拽后用来初始化组件的属性值 | `any` | - | -| name | 属性的名称 | `string` | - | -| options | 属性的选项 | `any[]` | - | -| placeholder | 属性的占位符 | `string` | - | -| props | 如果是对象属性,这里声明子属性列表 | `ComponentPropType[]` | - | -| setter | 属性的设置器 | `string` | - | -| setterProps | 设置器的属性设置 | `any` | - | -| tips | 属性的提示 | `string` | - | -| title | 属性的标题 | `string` | - | - -### ComponentDndRulesType - -组件拖拽规则类型 - -| 属性 | 说明 | 类型 | 默认值 | -| ------------------------- | ---------------------------------------------------------------------------- | --------------------------- | ------ | -| canDrag | 当前组件是否可以被拖拽 | `() => boolean` | - | -| canDrop | 当前节点是否可以拖拽到目标节点中 | `(targetName) => boolean` | - | -| canMoveIn | 进来的节点是否可以落进来,仅适用于容器节点 | `(incomingName) => boolean` | - | -| canMoveOut | 被拖拽的节点是否可以被拖离当前节点,仅适用于容器节点 | `(outgoingName) => boolean` | - | -| childrenContainerSelector | 子节点的容器选择器,用于快速定位子节点容器,适合组件存在多个可搭建区域时使用 | `string` | - | diff --git a/apps/website/docs/designer/customize/editor.mdx b/apps/website/docs/designer/customize/editor.mdx deleted file mode 100644 index fcfb74cf..00000000 --- a/apps/website/docs/designer/customize/editor.mdx +++ /dev/null @@ -1,5 +0,0 @@ -# 编辑器自定义 - -:::tip -正在编写中,敬请期待。 -::: diff --git a/apps/website/docs/designer/customize/panels.mdx b/apps/website/docs/designer/customize/panels.mdx deleted file mode 100644 index ae9cc66f..00000000 --- a/apps/website/docs/designer/customize/panels.mdx +++ /dev/null @@ -1,72 +0,0 @@ -# 面板自定义 - -Tango 设计器由多个可自定义的面板组成,默认提供了一个标准的低代码设计器布局,可以根据实际需求进行自定义。如下图所示,可以对设计器的多个区域进行自定义,包括工具栏、侧边栏、配置面板、选择工具栏等等。 - -![panels](https://p5.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/33769559515/5564/0630/b437/02cd440a1789b8138ee64d058f86db20.png) - -- 工具栏(Toolbar):设计器的顶部区域,通常用来放置一些全局信息和操作按钮,例如项目信息,顶部工具栏、发布按钮等等。 -- 侧边栏(Sidebar):设计器的左侧区域,通常用来放置一些核心功能的入口,例如k组件库、页面列表、变量配置、数据源配置等。 -- 配置面板(Properties):设计器的右侧区域,通常用来放置一些配置项,例如组件属性配置、页面属性配置等。 -- 选择工具栏(SelectionMenu):设计器的底部区域,通常用来放置一些选择工具,例如复制、删除、定位等。 - -除了使用预定义的设计器布局组件,Tango 支持完全使用开发者自行开发的组件进行替换。 - -## 内置设计器布局组件介绍 - -内置的设计器布局组件包括: - -- Designer:设计器的状态容器,用来提供设计器核心状态的上下文容器,包括主题、引擎状态、沙箱状态等。 -- DesignerPanel:设计器的主框架,提供了核心的布局容器,便于开发者进行后续的自定义。 -- Toolbar:工具栏容器组件,提供了默认的工具栏的布局设置,可以通过 `Toolbar.Item` 进行快捷的定义工具栏的子项。 -- Sidebar:侧边栏容器组件,提供了默认的侧边栏的布局设置,可以通过 `Sidebar.Item` 进行快捷的定义侧边栏的子项。 -- WorkspacePanel:工作区容器组件,设计器中央的区域,包括画布和编辑等用户核心工作区,提供了默认的工作区的布局配置。 -- WorkspaceView:工作区的视图组件,用于快捷定制工作区的多种视图模式,可以实例化多个工作区视图,但同一时间只能由一个工作区视图处于激活状态。 -- SettingPanel:配置面板组件,提供了默认的属性配置能力。 - -## 基本的设计器布局 - -一个基本的的设计器布局示例如下图所示: - -```jsx -export default function App() { - return ( - - } - description={} - actions={ - - - - - - - - - - - - - - - - } - > - - } /> - } /> - - - - - - - - - - - - - ); -} -``` diff --git a/apps/website/docs/designer/customize/selections.mdx b/apps/website/docs/designer/customize/selections.mdx deleted file mode 100644 index d2a474c7..00000000 --- a/apps/website/docs/designer/customize/selections.mdx +++ /dev/null @@ -1,4 +0,0 @@ -# 选择器自定义 - -提供设计器视图中用户选中某个区域后展示的快捷工具。 - diff --git a/apps/website/docs/designer/customize/setters.mdx b/apps/website/docs/designer/customize/setters.mdx deleted file mode 100644 index b92b2ea4..00000000 --- a/apps/website/docs/designer/customize/setters.mdx +++ /dev/null @@ -1,95 +0,0 @@ -# 设置器自定义 - -属性设置器用于在配置面板中展示特定配置项的配置逻辑。Tango 内置了多种标准的属性设置器,对于一些特殊场景,内置的属性设置器可能无法满足你的需要,此时开发者可以扩展自己的属性设置。 - -## 设置器组件 - -### SettingPanel - -| 属性 | 说明 | 类型 | 默认值 | -| ---------------- | -------------------------------------- | ---------------------------- | ------ | -| title | 面板标题 | string | - | -| defaultValue | 默认值 | object | - | -| groupOptions | 分组选项 | object | - | -| model | 表单状态管理实例 | FormModel | - | -| onChange | 值变化回调 | (name, value, field) => void | - | -| prototype | 组件的可配置描述 | ComponentPrototype | - | -| renderItemExtra | 自定义渲染表单项的额外内容(标签右侧) | (props) => ReactNode | - | -| showGroups | 是否展示分组 | boolean | - | -| showItemSubtitle | 是否展示表单项的副标题 | boolean | - | -| showSearch | 是否展示搜索框 | boolean | - | - -## 内置属性设置器 - -| 设置器名 | 接收值类型 | 设置器说明 | 可配置项 | -| ----------------- | ------------------------------------ | -------------------------- | ------------------ | -| eventSetter | expression | 动作函数或事件监听器设置器 | | -| actionListSetter | | ActionList 的 value 设置器 | | -| boolSetter | boolean | 布尔值设置器 | | -| choiceSetter | `{ label: string, value: string }[]` | RadioGroup 设置器 | - options 选项列表 | -| pickerSetter | `{ label: string, value: string }[]` | 下拉值设置器 | - options 选项列表 | -| colorSetter | string | 色彩 | | -| dateSetter | string | 日期设置器 | | -| dateRangeSetter | `string[]` | 日期范围设置器 | | -| timeSetter | `string` | 时间设置器 | | -| timeRangeSetter | `string[]` | 时间范围设置器 | | -| expressionSetter | expression | 表达式设置器 | | -| jsonSetter | json expression | JSON 表达式设置器 | | -| jsxSetter | jsx expression | JSX 设置器 | | -| numberSetter | number | 数字类型设置器 | | -| textSetter | string | 文本设置器 | | -| textAreaSetter | string | 文本域设置器 | | -| modelSetter | string | 变量绑定设置器 | | -| enumSetter | enum | 枚举值设置器 | | -| sliderSetter | number | 滑块设置器 | | -| listSetter | `object[]` | 列表值设置器 | | -| renderPropsSetter | Function | render props 设置器 | | - -## 注册自定义属性设置器 - -### 属性设置器的实现标准 - -属性设置器组件是一个标准的受控型表单组件,开发者所开发的组件只需要暴露 `value` 和 `onChange(value)` 两个属性让属性面板的表单容器进行控制即可。 - -例如,我们可以实现一个简单的字符串设置器 StringSetter,其实现如下: - -```jsx -function StringSetter({ value, onChange, ...rest }) { - const handleChange = (e) => { - onChange(e.target.value); - }; - return ; -} -``` - -### 注册属性设置器 - -注册属性设置器非常简单,只需要借助设置器暴露出来的 `registerSetter` 即可。 - -```jsx -import { registerSetter } from '@music163/tango-designer'; - -// 注册自定义 setter -registerSetter({ - name: 'stringSetter', - component: StringSetter, -}); -``` - -### 使用自定义的属性设置器 - -在组件的物料协议中直接声明对应的属性设置器名称即可。例如: - -```jsx -const prototype = { - name: 'PageHeader', - title: 'PageHeader', - props: [ - { - name: 'title', - title: '标题', - setter: 'stringSetter', - }, - ], -}; -``` diff --git a/apps/website/docs/designer/customize/sidebar.mdx b/apps/website/docs/designer/customize/sidebar.mdx deleted file mode 100644 index e213b823..00000000 --- a/apps/website/docs/designer/customize/sidebar.mdx +++ /dev/null @@ -1,53 +0,0 @@ -# 侧边栏自定义 - -提供了默认的设计器左侧边栏的布局设置。 - -## 侧边栏组件 - -### Sidebar - -侧边栏容器组件。 - -### Sidebar.Item - -侧边栏子项 - -| 属性 | 说明 | 类型 | 默认值 | -| ----------- | ------------------------------------------------ | ------------------------------------------------- | ------ | -| key | 子项的唯一标识 | `string` | - | -| label | 子项的描述文本,推荐不超过2个字 | `string` | - | -| icon | 图标 | `ReactNode` | - | -| showBadge | 是否显示角标 | `boolean` \| `{ count?: number; dot?: boolean; }` | - | -| title | 展开面板的标题 | `string` | - | -| width | 展开面板的宽度 | `number` | - | -| isFloat | 展开面板是否为浮动面板,浮动面板不压缩工作区宽度 | `boolean` | - | -| widgetProps | 子项的属性 | `object` | - | -| children | 子项的展开面板内容 | `ReactNode` | - | - -## 内置的工具栏组件 - -设计器内置了一些基本的侧边栏组件,当子项的 `key` 使用了特定的值时,会自动的进行渲染。 - -| key | 组件 | -| ---------- | ---------- | -| components | 组件列表 | -| outline | 结构 | -| dependency | 依赖管理 | -| variables | 变量管理 | -| dataSource | 数据源管理 | - -例如,下面的代码会自动渲染一个结构面板: - -```jsx -} /> -``` - -## 自定义侧边栏子项 - -可以直接在 `Sidebar.Item` 的子节点传入自定义的内容来渲染需要的结果,例如: - -```jsx -}> -
      展开的内容部分
      -
      -``` diff --git a/apps/website/docs/designer/customize/tools.mdx b/apps/website/docs/designer/customize/tools.mdx deleted file mode 100644 index df9f7ffd..00000000 --- a/apps/website/docs/designer/customize/tools.mdx +++ /dev/null @@ -1,53 +0,0 @@ -# 工具栏自定义 - -提供了默认的设计器工具栏的布局设置。 - -## 工具栏组件 - -### Toolbar - -工具栏列表容器 - -### Toolbar.Item - -工具栏子项 - -| 属性 | 说明 | 类型 | 默认值 | -| ----------- | -------------- | --------------------------- | ------- | -| key | 子项的唯一标识 | `string` | - | -| placement | 放置的位置 | `left` \| `right` \| `left` | `right` | -| widgetProps | 子项的属性 | `object` | - | - -### Toolbar.Separator - -工具栏分隔线,用来对工具栏子项进行分组展示。 - -## 内置的工具栏组件 - -设计器内置了一些基本的工具栏组件,当工具栏子项使用了特定的 `key` 值时,会自动的进行渲染。 - -| key | 组件 | -| ----------- | ------------------------------------ | -| routeSwitch | 路由切换 | -| history | 历史记录 | -| preview | 沙箱预览 | -| modeSwitch | 工作区模式切换,在源码和设计模式切换 | -| togglePanel | 切换布局面板的显示和隐藏 | - -例如,下面的代码会自动渲染为一个路由切换的工具项。 - -```jsx - -``` - -## 自定义工具栏项 - -可以直接在 `Toolbar.Item` 的子节点传入自定义的工具栏项,例如: - -```jsx - - - - - -``` diff --git a/apps/website/docs/designer/deploy/designer.mdx b/apps/website/docs/designer/deploy/designer.mdx deleted file mode 100644 index 53fed846..00000000 --- a/apps/website/docs/designer/deploy/designer.mdx +++ /dev/null @@ -1,18 +0,0 @@ -# 设计器接入 - -设计器为用户提供应用搭建的可视化界面。有两种方式初始化低代码设计器: - -1. clone 官方示例代码,按照文档说明直接启动项目。 -2. 手工引入设计器的 npm 包,自定义配置、启动、运行。 - -## 方法1: 通过示例代码启动设计器 - -WIP - -:::tip -官方示例是一个包含了低代码设计器前后端低完整项目,可以直接启动。对于后端部分,作为示例而言,仅提供了最基本的逻辑,用户需要按照需求自行扩展。 -::: - -## 方法2: 手工引入设计器的 npm 包 - -WIP diff --git a/apps/website/docs/designer/deploy/sandbox.mdx b/apps/website/docs/designer/deploy/sandbox.mdx deleted file mode 100644 index 3852b2b9..00000000 --- a/apps/website/docs/designer/deploy/sandbox.mdx +++ /dev/null @@ -1,19 +0,0 @@ -# 低代码沙箱接入 - -沙箱是搭建产物(对于 Tango 主要是源码)的运行环境,它是一个独立的环境,可以在其中运行搭建产物,以便于开发者可以在不影响生产环境的情况下进行调试和测试。 - -Tango 沙箱由三个部分构成,包括低代码沙箱前端组件、在线打包器、沙箱后端服务,如下图所示。 - -![tango sandbox](https://p5.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30579143007/ab5d/3611/950e/5ae276b6131a4a479d6fb10e50ebbfcb.png) - -- 沙箱前端组件:一个开箱即用的沙箱组件,只需要传入代码和配置就可以完成应用的渲染。 -- 在线打包器:提供搭建产物的浏览器端构建能力,类似于一个浏览器版本的 webpack,此部分逻辑主要来自于 [sandpack](https://sandpack.codesandbox.io/) 项目。 -- 沙箱后端服务:对依赖的资源进行预构建,以及提供资源合并等服务,用来加速沙箱内部的构建打包过程。 - -## 沙箱的前端组件接入 - -WIP - -## 沙箱的后端服务接入 - -WIP diff --git a/apps/website/docs/designer/deploy/server.mdx b/apps/website/docs/designer/deploy/server.mdx deleted file mode 100644 index 563c3ccf..00000000 --- a/apps/website/docs/designer/deploy/server.mdx +++ /dev/null @@ -1,7 +0,0 @@ -# 服务端接入 - -介绍一个基本的服务端实现,以及如何接入。 - -:::tip -正在编写中,敬请期待。 -::: diff --git a/apps/website/docs/designer/design/filesystem.mdx b/apps/website/docs/designer/design/filesystem.mdx deleted file mode 100644 index e82406e8..00000000 --- a/apps/website/docs/designer/design/filesystem.mdx +++ /dev/null @@ -1,5 +0,0 @@ -# 文件系统 - -:::tip -正在编写中,敬请期待。 -::: diff --git a/apps/website/docs/designer/design/overview.mdx b/apps/website/docs/designer/design/overview.mdx deleted file mode 100644 index 41425b18..00000000 --- a/apps/website/docs/designer/design/overview.mdx +++ /dev/null @@ -1,112 +0,0 @@ -# 技术架构概览 - -我们在 2023年8月底[正式开源了 Tango 低代码引擎](https://juejin.cn/post/7273051203562749971)。Tango 是一个基于源码的低代码设计器框架,支持直接基于项目源码提供低代码可视化开发能力,可以无缝的与既有的本地开发工作流进行集成,从而提供渐进式的低代码开发能力。 - -![Tango 低代码引擎使用演示](https://p6.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30108735057/7ba9/dced/9ac3/420f6e04b371dd47de06e7d71142560d.gif) - -按照计划,我们在 2023年9月底[发布了 1.0 alpha 版本](https://github.com/NetEase/tango/releases),在此版本中我们遵循 **“最小内核”** 的原则对 Tango 的核心实现进行了大幅的重构,剥离了大量冗余的代码实现。 - -为了帮助大家更近一步的了解 Tango 开源版本的核心构成与代码实现,本文将会详细揭秘 Tango 低代码引擎的设计思考与实现过程。 - -- Github 仓库: -- 发行历史: -- 文档站点: - -## 低代码可视化搭建之殇 - -从实现上看,低代码搭建能力的核心是 UI 可视化编程。借助 UI 可视化编程,可以大大的弱化使用者对于代码编程的感知,但在真实的业务需求场景中,我们面临着大量的复杂的应用逻辑,使用者很难借助 UI 操作表达功能逻辑。例如下图中的合同管理,资金结算等页面。如果借助于传统的低代码方案,通常会发现,很容易一条路走到黑,没有回头路。所以,经常会有开发者抱怨,稍微复杂的场景下,低代码的效率甚至不如写代码。 - -![在实际业务场景中面临大量难以低代码开发的前端应用](https://p5.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30577891541/dac5/e050/986b/9466633e32518be2685e882618343251.png) - -## 传统低代码方案的问题 - -我们不妨先简单分析一下传统的低代码方案的问题。传统的低代码搭建方案往往采用定义私有 Schema 协议来可视化表达视图逻辑,也就是将代码逻辑转换为私有的描述,大致的原理可以参考下面这张图。 - -![基于 Schema 的低代码可视化搭建方案](https://p6.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30577932595/1456/2196/aeee/a10fbe99c3f6d050629b140ecfbbc257.png) - -这类方案很容易面临不断膨胀的私有 JSON 协议。并且,私有协议扩展性和灵活性差,难以达到图灵完备状态。例如在我们的实际开发过程中,传统的低代码方案会面临各种各样的扩展性卡点。此外,开发能力往往受限于内置的组件和模板。且难以复用现有的前端资产,例如组件和代码等等。对于开发者而言,私有协议也导致问题定位难,调试难。 - -借助于私有协议的搭建方案通常适合于轻业务逻辑的简单类表单,营销类的活动页面等等,很难用于复杂的业务逻辑搭建场景,因为私有协议难以有效的应对这类场景的复杂性和灵活性需求。虽然,有些方案提供了协议转代码的能力,但通常只实现了单向转码,可视化开发和代码开发是两条完全割裂的路径。 - -**在此基础上,我们就需要重新思考低代码搭建协议的设计问题。** - -## 从私有搭建协议到公有协议 - -那么,我们能否不使用私有协议,而是采用公有协议? - -答案是,可以的![ESTree](https://github.com/estree/estree) 规范作为主流的处理 JavaScript 源代码的标准社区协议,被广泛用于浏览器 JavaScript Parser 的实现。借助于 ESTree 协议,可以完美的实现对源码逻辑的描述,并且社区有大量的工具可以帮助我们完成这个过程。 - -![基于ESTree规范,实现双向互转的低代码搭建能力](https://p6.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30578051842/b7b4/f625/9458/3ead74325547a45f501ae99c7270cffa.png) - -因此,我们尝试使用 ESTree 规范来实现低代码搭建过程。借助于 ESTree 规范,我们无需定义私有的渲染描述协议,并且可以低成本的实现代码到协议,协议到代码到互转。借助于双向转码的能力,我们获得全新的低代码开发体验。 - -## Tango 低代码引擎实现原理 - -基于这个思路,我们设计了基于 ESTree 规范的低代码引擎方案 -- Tango。可以通过下面这张图来简单的描述下实现逻辑: - -![Tango 低代码引擎实现分析](https://p5.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30578073085/61cd/b2db/e103/9ed9dd334a6679c6ec18a02270efe446.png) - -首先将源代码解析为 AST。用户的拖拉拽等操作则映射为对 AST 的遍历和修改。最后将新的 AST 重新生成代码,交给设计器沙箱去渲染执行。而对 AST 的解析、遍历、修改、生成,则可以借助大量的社区工具,这里我们选择的是 babel! - -> AST 的全称是抽象语法树,是一种分层的程序表达,根据编程语言的语法呈现源代码的结构。 - -![大量的工具基于 AST 实现](https://p6.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30578121562/578f/1bac/9dd3/69b5b4e5c1171babf4db427f41981b4d.png) - -其实,数量众多的前端工具库都是基于 AST 操纵实现的。我们可以发现,在任意的前端项目中的 package.json 里的 devDependencies 里的很多工具包是基于 AST 解析操纵实现的,例如 JS 的转译,代码压缩,ESLint 等等,我们可以阅读这些工具的源码来进一步的学习。 - -![将源码转为 AST 描述的基本过程](https://p6.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30578132788/1f4b/d7d7/56b8/feb4220a611afae0629d76758479118a.png) - -如图所示,将源代码转为 AST 描述的基本过程包括词法分析和句法分析两个阶段: - -- 词法分析:借助词法分析器将代码字符串分割为标记列表。 -- 句法分析:借助句法分析器将标记数据转为 AST 描述。 - -最后,我们可以获得源代码的结构化描述树。有很多工具可以帮我们来实现这个过程,例如 babel -- 它可以帮助我们轻松的实现代码到 ast,ast 遍历修改,ast 到代码的过程。 - -## 基于 AST 实现搭建的基本过程 - -我们来看一下使用 ast 实现搭建逻辑的基本过程。 - -看一个具体的例子:通过修改 AST,在 Page 中插入一个 Section 节点。 - -![基于 AST 实现搭建逻辑](https://p6.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30579119959/aea0/6e5a/6aba/979804c4270f5ad05b84da2220624afd.png) - -中间这段代码,展示了核心的逻辑,通过遍历整个 AST 中的所有 JSXElement 节点,找到第一个 Page 元素,然后在 Page 元素的 children 里插入新的 Section 节点。这只是一段演示代码,具体的过程比这个要复杂的多,因为有很多的边际逻辑要处理。最后,我们可以将 ast 重新生成为代码,得到我们想要的结果。 - -## Tango 的数据变更流程设计 - -了解了基本的实现原理后,我们来看一下低代码引擎的数据变更流程设计。 - -![数据变更流程设计](https://p6.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30579135078/e381/579c/61ed/91e110abd1d17c742e8aa7d407d0327b.png) - -首先是引擎初始化。源码文件会被引擎内核解析进行状态初始化。接下来,对于用户的操作,会触发浏览器事件,引擎接收到相应的事件,触发内核中的状态变更,更新 AST。 - -然后,内核会基于新的 AST 的同步生成代码,由引擎将代码同步给渲染沙箱。渲染沙箱感知到代码变化后,会触发页面重新渲染,也就是沙箱的 HMR 过程。 - -## 基于源码的在线渲染沙箱设计 - -接下来,我们需要考虑的是如何在浏览器中执行 JavaScript 源码工程?有很多方案可以选择,我们选择的方案是 [sandpack](https://sandpack.codesandbox.io/),它是由 CodeSandbox 开源的可以在浏览器中实时运行 JavaScript 项目的的工具库。在具体实现上,[我们对 sandpack 进行了一系列的改造](https://juejin.cn/post/7102243774985666596),以满足低代码生产环境的需要。 - -基于 sandpack 的在线渲染沙箱方案如下图图所示。 - -![Tango 沙箱设计](https://p5.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30579143007/ab5d/3611/950e/5ae276b6131a4a479d6fb10e50ebbfcb.png) - -在实现上,主要包括 3 个部分,分别是:​ - -- 低代码沙箱:它是一个开箱即用的前端组件,只需要传入源代码和构建配置信息即可完成前端项目的构建和执行。 -- 在线 Bundler:是低代码沙箱的核心,用来在浏览器上构建和执行源代码,本质上是一个在浏览器端运行的简化版 webpack。 -- 打包服务:是一个 node 服务,用来对 npm 包执行预构建和资源合并。 - -从沙箱执行流程来看,首先 Sandbox 组件将项目的源代码和 compile 指令使用 postMessage 传递给在线 Bundler,在线 Bundler 在接收到 compile 指令后,bundler 会从 packager 打包服务加载项目的 npm 依赖,然后编译和执行代码,最后发送 success 消息给低代码沙箱。 - -## Tango 低代码引擎的构成 - -结合上面的介绍,在构成上,Tango 低代码引擎主要包括 3 个核心组成部分,分别是: - -- 引擎内核:扶额建立文件,节点模型,提供输入输出能力。 -- 拖拽引擎和可视化面板:提供可视化开发能力 -- 渲染沙箱:提供源码在浏览器上的编译执行能力。 - -![引擎构成](https://p6.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30579167082/1404/27e2/b8e5/0c719ca82494a282080d73adeff7196e.png) - -借助于 Tango 低代码引擎,我们可以为开发者提供全新的在线开发体验,支持源码级的自定义能力。对可视化开发而言,可视化配置会触发 AST 的修改,进而会重新生成对应的源码。而对源码开发而言,修改源码后会同步更新 AST。 diff --git a/apps/website/docs/designer/design/sandbox.mdx b/apps/website/docs/designer/design/sandbox.mdx deleted file mode 100644 index 5a1d1728..00000000 --- a/apps/website/docs/designer/design/sandbox.mdx +++ /dev/null @@ -1,5 +0,0 @@ -# 沙箱实现 - -:::tip -正在编写中,敬请期待。 -::: diff --git a/apps/website/docs/designer/quick-start.mdx b/apps/website/docs/designer/quick-start.mdx deleted file mode 100644 index 1b8c9991..00000000 --- a/apps/website/docs/designer/quick-start.mdx +++ /dev/null @@ -1,75 +0,0 @@ -import Link from '@docusaurus/Link'; - -# 快速开始 - -Tango 是一个用于快速构建低代码平台的低代码设计器框架,借助 Tango 只需要数行代码就可以完成一个基本的低代码平台前端系统的搭建。 - -:::warning 测试版免责声明 -当前开源版本为低代码引擎的 beta 演示版本,API 可能不稳定,不建议在生产环境中使用。为了保障社区版本能够有效与内部版本解藕,并且项目开源涉及到大量的额外的代码分离工作,我们预计在 2023 年 Q4 发布可以运行在生产环境的正式版。 -::: - -## 环境要求 - -- 安装 node 16.0.0 以上版本: -- 安装 npm 8.x 或 yarn 1.x: - -## 启动 Tango Playground - -1. 克隆仓库至本地 - ```sh - git clone https://github.com/NetEase/tango.git - ``` -2. 在 hosts 文件下添加本地开发的域名 - ```hosts - 127.0.0.1 local.netease.com - ``` -3. 安装依赖并启动 Tango Playground - ```sh - yarn install - yarn start - ``` -4. 打开浏览器访问 并允许不安全的证书 - -## 启动本地沙箱 - -本地开发除了需要启动 Tango 的 playground 外,还需要一个可用的沙箱环境来承载设计器。 - -:::tip -沙箱部分来源于 codesandbox,不属于 tango 的核心代码库,我们在原有的 codesandbox 基础上进行了一系列的改造 -::: - -如果没有可用的在线沙箱,可以通过本地启动一个沙箱来完成开发;如果已有一个在线沙箱,且沙箱与本地的 playground 共用一级域名,请直接跳至第 7 步修改 `bundlerURL` 为在线沙箱的地址。 - -1. 克隆仓库至本地 - ```sh - git clone https://github.com/NetEase/codesandbox-client.git - ``` -2. 修改 `Caddyfile`,将 `:8080` 修改为 playground 的域名,例如 `local.netease.com` -3. 将上述域名添加至 hosts 文件 - ```hosts - 127.0.0.1 local.netease.com - ``` -4. 安装依赖并构建沙箱产物 - ```sh - yarn install - yarn build:deps - yarn build:sandpack - ``` - 你也可以从 [这里](https://github.com/NetEase/codesandbox-client/releases) 下载预构建的沙箱产物,创建 `www` 子文件夹并将压缩包解压到该文件夹内 -5. 使用 Caddy 托管构建沙箱后的静态文件,若本地没有 Caddy 可前往 下载 - ```sh - caddy run - ``` -6. 打开浏览器访问 并允许不安全的证书 -7. 修改 `apps/playground/src/pages/index.tsx`,找到 `` 组件,将 `bundlerURL` 修改为 `https://local.netease.com:8443` - ```jsx - - ``` -8. 回到 playground 页面并刷新,现在 playground 将使用你指定的沙箱来运行设计器 - -若你本地有 Docker 也可将上述的第 4-5 步改为使用 Docker 构建镜像并启动: - -```sh -docker build -t tango-codesandbox . -docker run -p 8443:8443 tango-codesandbox -``` diff --git a/apps/website/docs/intro.md b/apps/website/docs/intro.md deleted file mode 100644 index bdadcadb..00000000 --- a/apps/website/docs/intro.md +++ /dev/null @@ -1,31 +0,0 @@ -import Link from '@docusaurus/Link'; - -# 简介 - -Tango 是一个用于快速构建低代码平台的低代码设计器框架,借助 Tango 只需要数行代码就可以完成一个基本的低代码平台前端系统的搭建。Tango 低代码设计器直接读取前端项目的源代码,并以源代码为中心,执行和渲染前端视图,并为用户提供低代码可视化搭建能力,用户的搭建操作会转为对源代码的修改。借助于 Tango 构建的低代码工具或平台,可以实现 源码进,源码出的效果,无缝与企业内部现有的研发体系进行集成。 - -preview - -## 核心特性 - -- 经历网易云音乐内网生产环境的实际检验,可灵活集成应用于低代码平台,本地开发工具等 -- 基于源码 AST 驱动,无私有 DSL 和协议 -- 提供实时出码能力,支持源码进,源码出 -- 开箱即用的前端低代码设计器,提供灵活易用的设计器 React 组件 -- 使用 TypeScript 开发,提供完整的类型定义文件 - -## 实现原理 - -Tango 低代码引擎不依赖私有搭建协议和 DSL,而是直接使用源代码驱动,引擎内部将源码转为 AST,用户的所有的搭建操作转为对 AST 的遍历和修改,进而将 AST 重新生成为代码,将代码同步给在线沙箱执行。具体的过程如下图所示,首先将源代码解析为 AST。用户的拖拉拽等操作则映射为对 AST 的遍历和修改。最后将新的 AST 重新生成代码,交给设计器沙箱去渲染执行。而对 AST 的解析、遍历、修改、生成,则可以借助大量的社区工具,这里我们选择的是 babel! - -![Tango 低代码引擎实现分析](https://p5.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30578073085/61cd/b2db/e103/9ed9dd334a6679c6ec18a02270efe446.png) - -## 技术架构 - -Tango 低代码引擎主要包括 3 个核心组成部分,分别是: - -- 引擎内核:扶额建立文件,节点模型,提供输入输出能力。 -- 拖拽引擎和可视化面板:提供可视化开发能力 -- 渲染沙箱:提供源码在浏览器上的编译执行能力。 - -![引擎构成](https://p6.music.126.net/obj/wonDlsKUwrLClGjCm8Kx/30579167082/1404/27e2/b8e5/0c719ca82494a282080d73adeff7196e.png) diff --git a/apps/website/docs/protocol/material-package-spec.mdx b/apps/website/docs/protocol/material-package-spec.mdx deleted file mode 100644 index 9bb40e2a..00000000 --- a/apps/website/docs/protocol/material-package-spec.mdx +++ /dev/null @@ -1,136 +0,0 @@ -# 基础组件包规范 - -## 目录结构 - -```txt -+ src - + button - - view.tsx // 默认视图文件 - - index.ts // 渲染视图入口文件 - - designer.ts // 设计器视图入口文件 - - prototype.ts // 组件描述文件 - + date-picker - - index.ts // 组件包默认入口文件 - - designer.ts // 组件包设计器视图入口文件 -``` - -## 组件包入口 - -### 默认入口 - -`src/index.ts` 是组件包的默认出口文件。 - -### 设计视图入口 - -`src/designer.ts` 是组件包的设计视图出口文件。您至少应该导出 `menuData` 和 `prototypes` 两个模块: - -```ts -export { Button } from './button'; -export { Card } from './card'; -//... - -// 组件的配置描述列表 -export const prototypes = [ - { - title: '按钮', - name: 'Button', - props: [ - { - name: 'size', - setter: 'textSetter', - }, - //... - ], - }, - //... -]; - -export const menuData = { - // 常用组件 - common: [ - { - title: '基本', - items: ['Button'], - }, - ], -}; -``` - -其中 `menuData` 的 key 可选列表如下: - -| key | 分类标题 | -| ------- | -------- | -| common | 常用组件 | -| atom | 原子组件 | -| snippet | 组合 | -| block | 区块 | - -## 组件入口 - -### 组件默认视图文件 - -`src/button/view.tsx` - -```tsx -export function Button({ children, ...rest }) { - return ; -} -``` - -需要注意的是,你需要将组件多余的属性 `...rest` 透传给跟结点 `\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n{ foo: 'foo' }\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n[{ foo: 'bar' }]\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n() => {}\n```" - } - ] - }, - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 81, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L81" - } - ], - "parameters": [ - { - "id": 1143, - "name": "code", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "输入字符串" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Identifier" - }, - "name": "Identifier", - "package": "@babel/types" - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1144, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1145, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1145 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "NullLiteral" - }, - "name": "NullLiteral", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1146, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1147, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1147 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "NumericLiteral" - }, - "name": "NumericLiteral", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1148, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1149, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1149 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "StringLiteral" - }, - "name": "StringLiteral", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1150, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1151, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1151 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "BooleanLiteral" - }, - "name": "BooleanLiteral", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1152, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1153, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1153 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "ArrayExpression" - }, - "name": "ArrayExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1154, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1155, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1155 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "AssignmentExpression" - }, - "name": "AssignmentExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1156, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1157, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1157 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "BinaryExpression" - }, - "name": "BinaryExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1158, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1159, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1159 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "CallExpression" - }, - "name": "CallExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1160, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1161, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1161 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "ConditionalExpression" - }, - "name": "ConditionalExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1162, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1163, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1163 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "FunctionExpression" - }, - "name": "FunctionExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1164, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1165, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1165 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "RegExpLiteral" - }, - "name": "RegExpLiteral", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1166, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1167, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1167 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "LogicalExpression" - }, - "name": "LogicalExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1168, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1169, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1169 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "MemberExpression" - }, - "name": "MemberExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1170, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1171, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1171 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "NewExpression" - }, - "name": "NewExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1172, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1173, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1173 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "ObjectExpression" - }, - "name": "ObjectExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1174, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1175, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1175 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "SequenceExpression" - }, - "name": "SequenceExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1176, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1177, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1177 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "ParenthesizedExpression" - }, - "name": "ParenthesizedExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1178, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1179, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1179 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "ThisExpression" - }, - "name": "ThisExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1180, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1181, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1181 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "UnaryExpression" - }, - "name": "UnaryExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1182, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1183, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1183 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "UpdateExpression" - }, - "name": "UpdateExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1184, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1185, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1185 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "ArrowFunctionExpression" - }, - "name": "ArrowFunctionExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1186, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1187, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1187 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "ClassExpression" - }, - "name": "ClassExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1188, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1189, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1189 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "MetaProperty" - }, - "name": "MetaProperty", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1190, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1191, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1191 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Super" - }, - "name": "Super", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1192, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1193, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1193 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "TaggedTemplateExpression" - }, - "name": "TaggedTemplateExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1194, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1195, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1195 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "TemplateLiteral" - }, - "name": "TemplateLiteral", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1196, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1197, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1197 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "YieldExpression" - }, - "name": "YieldExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1198, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1199, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1199 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "AwaitExpression" - }, - "name": "AwaitExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1200, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1201, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1201 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Import" - }, - "name": "Import", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1202, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1203, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1203 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "BigIntLiteral" - }, - "name": "BigIntLiteral", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1204, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1205, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1205 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "OptionalMemberExpression" - }, - "name": "OptionalMemberExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1206, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1207, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1207 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "OptionalCallExpression" - }, - "name": "OptionalCallExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1208, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1209, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1209 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "TypeCastExpression" - }, - "name": "TypeCastExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1210, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1211, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1211 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXFragment" - }, - "name": "JSXFragment", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1212, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1213, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1213 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "BindExpression" - }, - "name": "BindExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1214, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1215, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1215 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "DoExpression" - }, - "name": "DoExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1216, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1217, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1217 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "RecordExpression" - }, - "name": "RecordExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1218, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1219, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1219 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "TupleExpression" - }, - "name": "TupleExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1220, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1221, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1221 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "DecimalLiteral" - }, - "name": "DecimalLiteral", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1222, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1223, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1223 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "ModuleExpression" - }, - "name": "ModuleExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1224, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1225, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1225 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "TopicReference" - }, - "name": "TopicReference", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1226, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1227, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1227 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "PipelineTopicExpression" - }, - "name": "PipelineTopicExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1228, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1229, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1229 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "PipelineBareFunction" - }, - "name": "PipelineBareFunction", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1230, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1231, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1231 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "PipelinePrimaryTopicReference" - }, - "name": "PipelinePrimaryTopicReference", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1232, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1233, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1233 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "TSInstantiationExpression" - }, - "name": "TSInstantiationExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1234, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1235, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1235 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "TSAsExpression" - }, - "name": "TSAsExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1236, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1237, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1237 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "TSSatisfiesExpression" - }, - "name": "TSSatisfiesExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1238, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1239, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1239 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "TSTypeAssertion" - }, - "name": "TSTypeAssertion", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1240, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1241, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1241 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - }, - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "TSNonNullExpression" - }, - "name": "TSNonNullExpression", - "package": "@babel/types" - }, - { - "type": "reflection", - "declaration": { - "id": 1242, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1243, - "name": "errors", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 238, - "character": 2 - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "qualifiedName": "ParseError" - }, - "name": "ParseError", - "package": "@babel/parser" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1243 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@babel/parser/typings/babel-parser.d.ts", - "line": 237, - "character": 36 - } - ] - } - } - ] - } - ] - } - } - ] - }, - { - "id": 1244, - "name": "code2jsxAttributeValueNode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 189, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L189" - } - ], - "signatures": [ - { - "id": 1245, - "name": "code2jsxAttributeValueNode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 189, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L189" - } - ], - "parameters": [ - { - "id": 1246, - "name": "code", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXExpressionContainer" - }, - "name": "JSXExpressionContainer", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1247, - "name": "copyObject", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 31, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L31" - } - ], - "signatures": [ - { - "id": 1248, - "name": "copyObject", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "拷贝对象" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [ - { - "kind": "text", - "text": "返回拷贝后的对象" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 31, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L31" - } - ], - "parameters": [ - { - "id": 1249, - "name": "obj", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "原始对象" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "object" - } - }, - { - "id": 1250, - "name": "omitKeys", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "忽略掉 key 列表" - } - ] - }, - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - } - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1251, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 32, - "character": 14, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L32" - } - ] - } - } - } - ] - }, - { - "id": 1252, - "name": "createEngine", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/factory.ts", - "line": 20, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/factory.ts#L20" - } - ], - "signatures": [ - { - "id": 1253, - "name": "createEngine", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Designer 实例化工厂函数" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/factory.ts", - "line": 20, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/factory.ts#L20" - } - ], - "parameters": [ - { - "id": 1254, - "name": "options", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/core/src/factory.ts", - "qualifiedName": "ICreateEngineOptions" - }, - "name": "ICreateEngineOptions", - "package": "@music163/tango-core" - } - } - ], - "type": { - "type": "reference", - "target": 111, - "name": "Engine", - "package": "@music163/tango-core" - } - } - ] - }, - { - "id": 1255, - "name": "deepCloneNode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/schema-helpers.ts", - "line": 4, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/schema-helpers.ts#L4" - } - ], - "signatures": [ - { - "id": 1256, - "name": "deepCloneNode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/schema-helpers.ts", - "line": 4, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/schema-helpers.ts#L4" - } - ], - "parameters": [ - { - "id": 1257, - "name": "obj", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - }, - { - "id": 1258, - "name": "component", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "any" - } - } - ] - }, - { - "id": 1259, - "name": "deleteServiceConfigFromServiceFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 883, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L883" - } - ], - "signatures": [ - { - "id": 1260, - "name": "deleteServiceConfigFromServiceFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 883, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L883" - } - ], - "parameters": [ - { - "id": 1261, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1262, - "name": "serviceFunctionName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1263, - "name": "expression2code", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/generate.ts", - "line": 47, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/generate.ts#L47" - } - ], - "signatures": [ - { - "id": 1264, - "name": "expression2code", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将表达式生成为块级代码" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/generate.ts", - "line": 47, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/generate.ts#L47" - } - ], - "parameters": [ - { - "id": 1265, - "name": "node", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Expression" - }, - "name": "Expression", - "package": "@babel/types" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1266, - "name": "expressionCode2ast", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 105, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L105" - } - ], - "signatures": [ - { - "id": 1267, - "name": "expressionCode2ast", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "表达式代码片段转为 ast 树" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [ - { - "kind": "text", - "text": "File" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 105, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L105" - } - ], - "parameters": [ - { - "id": 1268, - "name": "code", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1269, - "name": "formatCode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 159, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L159" - } - ], - "signatures": [ - { - "id": 1270, - "name": "formatCode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "格式化代码" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [ - { - "kind": "text", - "text": "the formatted code" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 159, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L159" - } - ], - "parameters": [ - { - "id": 1271, - "name": "code", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "original source code" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1272, - "name": "parser", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "prettier parser, see https://prettier.io/docs/en/options.html#parser" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "string" - }, - "defaultValue": "'babel'" - } - ], - "type": { - "type": "intrinsic", - "name": "any" - } - } - ] - }, - { - "id": 1273, - "name": "getBlockNameByFilename", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 200, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L200" - } - ], - "signatures": [ - { - "id": 1274, - "name": "getBlockNameByFilename", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "根据文件路径计算区块的名字" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [ - { - "kind": "text", - "text": "返回计算后的区块名(大驼峰)" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 200, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L200" - } - ], - "parameters": [ - { - "id": 1275, - "name": "filename", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "文件路径" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1276, - "name": "getFilepath", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 135, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L135" - } - ], - "signatures": [ - { - "id": 1277, - "name": "getFilepath", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "基于路由名生成文件路径" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 135, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L135" - } - ], - "parameters": [ - { - "id": 1278, - "name": "routePath", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "路由地址" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1279, - "name": "baseDir", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "base dir" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1280, - "name": "ext", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "后缀名" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "string" - }, - "defaultValue": "''" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1281, - "name": "getImportDeclarationPayloadByPrototype", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/prototype.ts", - "line": 18, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/prototype.ts#L18" - } - ], - "signatures": [ - { - "id": 1282, - "name": "getImportDeclarationPayloadByPrototype", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "根据组件的 prototype 生成 ImportDeclarationPayload" - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/prototype.ts", - "line": 18, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/prototype.ts#L18" - } - ], - "parameters": [ - { - "id": 1283, - "name": "prototype", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2508, - "name": "ComponentPrototypeType", - "package": "@music163/tango-helpers" - } - }, - { - "id": 1284, - "name": "relativeFilepath", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": 1022, - "name": "ImportDeclarationPayloadType", - "package": "@music163/tango-core" - } - } - ] - }, - { - "id": 1285, - "name": "getJSXElementAttributes", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 116, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L116" - } - ], - "signatures": [ - { - "id": 1286, - "name": "getJSXElementAttributes", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "获取 jsx 节点的属性集" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 116, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L116" - } - ], - "parameters": [ - { - "id": 1287, - "name": "node", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Record" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "Record", - "package": "typescript" - } - } - ] - }, - { - "id": 1288, - "name": "getJSXElementChildrenNames", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 129, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L129" - } - ], - "signatures": [ - { - "id": 1289, - "name": "getJSXElementChildrenNames", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "获取 jsx 结点的子元素名字" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 129, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L129" - } - ], - "parameters": [ - { - "id": 1290, - "name": "node", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - } - } - ] - }, - { - "id": 1291, - "name": "getModuleNameByFilename", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 121, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L121" - } - ], - "signatures": [ - { - "id": 1292, - "name": "getModuleNameByFilename", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "从 filename 中解析获得 moduleName" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n/stores/user.js -> user\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n/services/foo-bar.js -> fooBar\n```" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 121, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L121" - } - ], - "parameters": [ - { - "id": 1293, - "name": "filename", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1294, - "name": "getPrivilegeCode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 146, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L146" - } - ], - "signatures": [ - { - "id": 1295, - "name": "getPrivilegeCode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 146, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L146" - } - ], - "parameters": [ - { - "id": 1296, - "name": "appName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1297, - "name": "routePath", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1298, - "name": "getRelativePath", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 211, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L211" - } - ], - "signatures": [ - { - "id": 1299, - "name": "getRelativePath", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "FIXME: 有问题,需要优化下\n基于 from 文件的地址计算 to 文件的相对引用路径" - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 211, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L211" - } - ], - "parameters": [ - { - "id": 1300, - "name": "from", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1301, - "name": "to", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1302, - "name": "inferFileType", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 8, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L8" - } - ], - "signatures": [ - { - "id": 1303, - "name": "inferFileType", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "推断JS模块类型" - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 8, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L8" - } - ], - "parameters": [ - { - "id": 1304, - "name": "filename", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": 21, - "name": "FileType", - "package": "@music163/tango-core" - } - } - ] - }, - { - "id": 1305, - "name": "insertSiblingAfterJSXElement", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 253, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L253" - } - ], - "signatures": [ - { - "id": 1306, - "name": "insertSiblingAfterJSXElement", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "在目标 jsx 元素后添加兄弟节点" - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 253, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L253" - } - ], - "parameters": [ - { - "id": 1307, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1308, - "name": "targetJSXElementNodeId", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1309, - "name": "newNode", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1310, - "name": "insertSiblingBeforeJSXElement", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 284, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L284" - } - ], - "signatures": [ - { - "id": 1311, - "name": "insertSiblingBeforeJSXElement", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "在目标 jsx 元素前添加兄弟节点" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 284, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L284" - } - ], - "parameters": [ - { - "id": 1312, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1313, - "name": "targetJSXElementNodeId", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1314, - "name": "newNode", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1315, - "name": "isDefineService", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/assert.ts", - "line": 9, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/assert.ts#L9" - } - ], - "signatures": [ - { - "id": 1316, - "name": "isDefineService", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "判断给定的函数名是否是 defineServices" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/assert.ts", - "line": 9, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/assert.ts#L9" - } - ], - "parameters": [ - { - "id": 1317, - "name": "name", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - }, - { - "id": 1318, - "name": "isDefineStore", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/assert.ts", - "line": 20, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/assert.ts#L20" - } - ], - "signatures": [ - { - "id": 1319, - "name": "isDefineStore", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "判断给定的函数名是否是 defineStore" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/assert.ts", - "line": 20, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/assert.ts#L20" - } - ], - "parameters": [ - { - "id": 1320, - "name": "name", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - }, - { - "id": 1321, - "name": "isFilepath", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 224, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L224" - } - ], - "signatures": [ - { - "id": 1322, - "name": "isFilepath", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "判断给定字符串是否是文件路径" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n./pages/index.js -- yes\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n../pages/index.js -- yes\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n/src/pages/index.js -- yes\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n@music163/tango-designer -- no\n```" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 224, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L224" - } - ], - "parameters": [ - { - "id": 1323, - "name": "str", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - }, - { - "id": 1324, - "name": "isPathnameMatchRoute", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 179, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L179" - } - ], - "signatures": [ - { - "id": 1325, - "name": "isPathnameMatchRoute", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否匹配路由" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\nisPathnameMatchRoute('/user/123', '/users/:id') -> true\n```" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 179, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L179" - } - ], - "parameters": [ - { - "id": 1326, - "name": "pathname", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1327, - "name": "route", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - }, - { - "id": 1328, - "name": "isPlainObject", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 10, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L10" - } - ], - "signatures": [ - { - "id": 1329, - "name": "isPlainObject", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否是简单的 js 对象" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - }, - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "https://github.com/sindresorhus/is-plain-obj/blob/main/index.js" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 10, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L10" - } - ], - "parameters": [ - { - "id": 1330, - "name": "value", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - }, - { - "id": 1331, - "name": "isValidCode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 36, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L36" - } - ], - "signatures": [ - { - "id": 1332, - "name": "isValidCode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "检测代码是否是合法的代码" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [ - { - "kind": "text", - "text": "true 为合法代码,false 为非法代码" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 36, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L36" - } - ], - "parameters": [ - { - "id": 1333, - "name": "code", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - }, - { - "id": 1334, - "name": "isValidComponentName", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 82, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L82" - } - ], - "signatures": [ - { - "id": 1335, - "name": "isValidComponentName", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "判断组件名是否合法" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\nButton -> valid\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\ndiv -> invalid\n```" - } - ] - }, - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 82, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L82" - } - ], - "parameters": [ - { - "id": 1336, - "name": "name", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - }, - { - "id": 1337, - "name": "isValidExpressionCode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 50, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L50" - } - ], - "signatures": [ - { - "id": 1338, - "name": "isValidExpressionCode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "检测代码是否是合法的表达式代码" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 50, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L50" - } - ], - "parameters": [ - { - "id": 1339, - "name": "code", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - }, - { - "id": 1340, - "name": "jsxAttributeValueNode2value", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/generate.ts", - "line": 219, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/generate.ts#L219" - } - ], - "signatures": [ - { - "id": 1341, - "name": "jsxAttributeValueNode2value", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "jsx 属性值节点转为 js value" - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/generate.ts", - "line": 219, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/generate.ts#L219" - } - ], - "parameters": [ - { - "id": 1342, - "name": "node", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Node" - }, - "name": "Node", - "package": "@babel/types" - } - } - ], - "type": { - "type": "intrinsic", - "name": "any" - } - } - ] - }, - { - "id": 1343, - "name": "keyNode2value", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/generate.ts", - "line": 98, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/generate.ts#L98" - } - ], - "signatures": [ - { - "id": 1344, - "name": "keyNode2value", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将 的 jsxAttributeName 或 objectPropertyKey 转换为 js value" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [ - { - "kind": "text", - "text": "simple js value" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/generate.ts", - "line": 98, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/generate.ts#L98" - } - ], - "parameters": [ - { - "id": 1345, - "name": "node", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "jsxAttributeName or objectPropertyKey" - } - ] - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Node" - }, - "name": "Node", - "package": "@babel/types" - } - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "intrinsic", - "name": "number" - } - ] - } - } - ] - }, - { - "id": 1346, - "name": "makeImportDeclaration", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 462, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L462" - } - ], - "signatures": [ - { - "id": 1347, - "name": "makeImportDeclaration", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "生成新的 ImportDeclaration" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 462, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L462" - } - ], - "parameters": [ - { - "id": 1348, - "name": "importedModule", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 1022, - "name": "ImportDeclarationPayloadType", - "package": "@music163/tango-core" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "ImportDeclaration" - }, - "name": "ImportDeclaration", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1349, - "name": "makeJSXAttribute", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 249, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L249" - } - ], - "signatures": [ - { - "id": 1350, - "name": "makeJSXAttribute", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "给定具体的 value 值,生成 JSXAttribute" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 249, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L249" - } - ], - "parameters": [ - { - "id": 1351, - "name": "name", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "属性名" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1352, - "name": "value", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "属性值代码" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXAttribute" - }, - "name": "JSXAttribute", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1353, - "name": "makeJSXAttributeByCode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 259, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L259" - } - ], - "signatures": [ - { - "id": 1354, - "name": "makeJSXAttributeByCode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "给定具体的 value 代码,生成 JSXAttribute" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 259, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L259" - } - ], - "parameters": [ - { - "id": 1355, - "name": "name", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "属性名" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1356, - "name": "valueCode", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "属性值代码" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXAttribute" - }, - "name": "JSXAttribute", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1357, - "name": "makeJSXElement", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 271, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L271" - } - ], - "signatures": [ - { - "id": 1358, - "name": "makeJSXElement", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "生成 JSXElement" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 271, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L271" - } - ], - "parameters": [ - { - "id": 1359, - "name": "name", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1360, - "name": "attributes", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXAttribute" - }, - "name": "JSXAttribute", - "package": "@babel/types" - } - } - }, - { - "id": 1361, - "name": "children", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "array", - "elementType": { - "type": "union", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXFragment" - }, - "name": "JSXFragment", - "package": "@babel/types" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXExpressionContainer" - }, - "name": "JSXExpressionContainer", - "package": "@babel/types" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXSpreadChild" - }, - "name": "JSXSpreadChild", - "package": "@babel/types" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXText" - }, - "name": "JSXText", - "package": "@babel/types" - } - ] - } - } - }, - { - "id": 1362, - "name": "selfClosing", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1363, - "name": "mergeVariableArray", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/array.ts", - "line": 8, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/array.ts#L8" - } - ], - "signatures": [ - { - "id": 1364, - "name": "mergeVariableArray", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "合并变量数组" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/array.ts", - "line": 8, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/array.ts#L8" - } - ], - "parameters": [ - { - "id": 1365, - "name": "list", - "variant": "param", - "kind": 32768, - "flags": { - "isRest": true - }, - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "any" - } - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "any" - } - } - } - ] - }, - { - "id": 1366, - "name": "namesToImportDeclarations", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 69, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L69" - } - ], - "signatures": [ - { - "id": 1367, - "name": "namesToImportDeclarations", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "导入列表解析为导入声明对象" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 69, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L69" - } - ], - "parameters": [ - { - "id": 1368, - "name": "names", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - } - }, - { - "id": 1369, - "name": "nameMap", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Record" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reflection", - "declaration": { - "id": 1370, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1371, - "name": "isDefault", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 71, - "character": 45, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L71" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1372, - "name": "package", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 71, - "character": 28, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L71" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1371, - 1372 - ] - } - ], - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 71, - "character": 26, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L71" - } - ] - } - } - ], - "name": "Record", - "package": "typescript" - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 1022, - "name": "ImportDeclarationPayloadType", - "package": "@music163/tango-core" - } - } - } - ] - }, - { - "id": 1373, - "name": "node2code", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/generate.ts", - "line": 136, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/generate.ts#L136" - } - ], - "signatures": [ - { - "id": 1374, - "name": "node2code", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将 t.Node 生成为字符串代码" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/generate.ts", - "line": 136, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/generate.ts#L136" - } - ], - "parameters": [ - { - "id": 1375, - "name": "node", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Node" - }, - "name": "Node", - "package": "@babel/types" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1376, - "name": "node2value", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/generate.ts", - "line": 162, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/generate.ts#L162" - } - ], - "signatures": [ - { - "id": 1377, - "name": "node2value", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将 t.Node 生成为 js 值" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [ - { - "kind": "text", - "text": "a plain javascript value" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/generate.ts", - "line": 162, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/generate.ts#L162" - } - ], - "parameters": [ - { - "id": 1378, - "name": "node", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "ast node" - } - ] - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Node" - }, - "name": "Node", - "package": "@babel/types" - } - }, - { - "id": 1379, - "name": "hasExpressionWrapper", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否包裹表达式" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "boolean" - }, - "defaultValue": "true" - } - ], - "type": { - "type": "intrinsic", - "name": "any" - } - } - ] - }, - { - "id": 1380, - "name": "object2node", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 174, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L174" - } - ], - "signatures": [ - { - "id": 1381, - "name": "object2node", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将 js 普通对象解析为 t.Node" - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 174, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L174" - } - ], - "parameters": [ - { - "id": 1382, - "name": "obj", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "object" - } - }, - { - "id": 1383, - "name": "getValueNode", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reflection", - "declaration": { - "id": 1384, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 176, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L176" - } - ], - "signatures": [ - { - "id": 1385, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 176, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L176" - } - ], - "parameters": [ - { - "id": 1386, - "name": "value", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - }, - { - "id": 1387, - "name": "key", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Expression" - }, - "name": "Expression", - "package": "@babel/types" - } - } - ] - } - }, - "defaultValue": "value2node" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Expression" - }, - "name": "Expression", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1388, - "name": "prototype2code", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/prototype.ts", - "line": 104, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/prototype.ts#L104" - } - ], - "signatures": [ - { - "id": 1389, - "name": "prototype2code", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "prototype -> " - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/prototype.ts", - "line": 104, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/prototype.ts#L104" - } - ], - "parameters": [ - { - "id": 1390, - "name": "prototype", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2508, - "name": "ComponentPrototypeType", - "package": "@music163/tango-helpers" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1391, - "name": "prototype2jsxElement", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/prototype.ts", - "line": 138, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/prototype.ts#L138" - } - ], - "signatures": [ - { - "id": 1392, - "name": "prototype2jsxElement", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "基于 prototype 信息生成 t.JSXElement" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\nButtonPrototype -> -> t.JSXElement\n```" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/prototype.ts", - "line": 138, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/prototype.ts#L138" - } - ], - "parameters": [ - { - "id": 1393, - "name": "prototype", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2508, - "name": "ComponentPrototypeType", - "package": "@music163/tango-helpers" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1394, - "name": "prototype2schemaNode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/prototype.ts", - "line": 143, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/prototype.ts#L143" - } - ], - "signatures": [ - { - "id": 1395, - "name": "prototype2schemaNode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/prototype.ts", - "line": 143, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/prototype.ts#L143" - } - ], - "parameters": [ - { - "id": 1396, - "name": "prototype", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2508, - "name": "ComponentPrototypeType", - "package": "@music163/tango-helpers" - } - } - ], - "type": { - "type": "reference", - "target": 2607, - "name": "TangoSchemaTreeNodeType", - "package": "@music163/tango-helpers" - } - } - ] - }, - { - "id": 1397, - "name": "queryXFormItemFields", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 188, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L188" - } - ], - "signatures": [ - { - "id": 1398, - "name": "queryXFormItemFields", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "查询所有XFormItem的字段名" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [ - { - "kind": "text", - "text": "所有 XFormItem 的字段名" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 188, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L188" - } - ], - "parameters": [ - { - "id": 1399, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "当前文件AST" - } - ] - }, - "type": { - "type": "union", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - ] - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - } - } - ] - }, - { - "id": 1400, - "name": "removeJSXElement", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 328, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L328" - } - ], - "signatures": [ - { - "id": 1401, - "name": "removeJSXElement", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "删除目标 jsx 元素" - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 328, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L328" - } - ], - "parameters": [ - { - "id": 1402, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1403, - "name": "targetJSXElementNodeId", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1404, - "name": "removeRouteFromRouteFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 635, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L635" - } - ], - "signatures": [ - { - "id": 1405, - "name": "removeRouteFromRouteFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 635, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L635" - } - ], - "parameters": [ - { - "id": 1406, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1407, - "name": "routePath", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1408, - "name": "importPath", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1409, - "name": "removeStoreState", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 764, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L764" - } - ], - "signatures": [ - { - "id": 1410, - "name": "removeStoreState", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 764, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L764" - } - ], - "parameters": [ - { - "id": 1411, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1412, - "name": "stateName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1413, - "name": "removeStoreToEntryFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 718, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L718" - } - ], - "signatures": [ - { - "id": 1414, - "name": "removeStoreToEntryFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "在 stores/index.js 中移除一行导出语句" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\nexport { default as app } from \"./app\";\n```" - } - ] - }, - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 718, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L718" - } - ], - "parameters": [ - { - "id": 1415, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1416, - "name": "storeName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1417, - "name": "removeUnusedImportSpecifiers", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1081, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1081" - } - ], - "signatures": [ - { - "id": 1418, - "name": "removeUnusedImportSpecifiers", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "清除文件中的无效导入代码" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1081, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1081" - } - ], - "parameters": [ - { - "id": 1419, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1420, - "name": "replaceJSXElement", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 307, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L307" - } - ], - "signatures": [ - { - "id": 1421, - "name": "replaceJSXElement", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "替换目标 jsx 元素为新的元素" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 307, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L307" - } - ], - "parameters": [ - { - "id": 1422, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1423, - "name": "targetJSXElementNodeId", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1424, - "name": "newNode", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1425, - "name": "replaceRootJSXElementChildren", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 355, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L355" - } - ], - "signatures": [ - { - "id": 1426, - "name": "replaceRootJSXElementChildren", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "替换跟结点的子元素" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n例如替换 `return (empty block)` 的子元素\n```" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 355, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L355" - } - ], - "parameters": [ - { - "id": 1427, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1428, - "name": "nodes", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1429, - "name": "serviceConfig2Node", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 912, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L912" - } - ], - "signatures": [ - { - "id": 1430, - "name": "serviceConfig2Node", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将服务函数的配置参数转为 ast 节点" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 912, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L912" - } - ], - "parameters": [ - { - "id": 1431, - "name": "payload", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 1073, - "name": "ServiceFunctionPayloadType", - "package": "@music163/tango-core" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Expression" - }, - "name": "Expression", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1432, - "name": "string2object", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 47, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L47" - } - ], - "signatures": [ - { - "id": 1433, - "name": "string2object", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将对象的序列化字符串转为原始的 js 对象" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 47, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L47" - } - ], - "parameters": [ - { - "id": 1434, - "name": "str", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1435, - "name": "defaultValue", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Function" - }, - "name": "Function", - "package": "typescript" - } - } - ] - }, - { - "id": 1436, - "name": "toTreeData", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/array.ts", - "line": 26, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/array.ts#L26" - } - ], - "signatures": [ - { - "id": 1437, - "name": "toTreeData", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将输入值转换为 tree data 嵌套数组" - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/array.ts", - "line": 26, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/array.ts#L26" - } - ], - "parameters": [ - { - "id": 1438, - "name": "list", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 1085, - "name": "TangoViewNodeDataType", - "package": "@music163/tango-core" - } - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 1085, - "name": "TangoViewNodeDataType", - "package": "@music163/tango-core" - } - } - } - ] - }, - { - "id": 1439, - "name": "traverseExpressionNode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 51, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L51" - } - ], - "signatures": [ - { - "id": 1440, - "name": "traverseExpressionNode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将 Node 节点构造为一棵树,并执行树的遍历操作,此操作会修改原始的节点" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [ - { - "kind": "text", - "text": "返回完整的 File AST" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 51, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L51" - } - ], - "parameters": [ - { - "id": 1441, - "name": "node", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Expression" - }, - "name": "Expression", - "package": "@babel/types" - } - }, - { - "id": 1442, - "name": "options", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/babel__traverse/index.d.ts", - "qualifiedName": "TraverseOptions" - }, - "name": "TraverseOptions", - "package": "@types/babel__traverse" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1443, - "name": "traverseRouteFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 658, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L658" - } - ], - "signatures": [ - { - "id": 1444, - "name": "traverseRouteFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 658, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L658" - } - ], - "parameters": [ - { - "id": 1445, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 1066, - "name": "RouteDataType", - "package": "@music163/tango-core" - } - } - } - ] - }, - { - "id": 1446, - "name": "traverseServiceFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 999, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L999" - } - ], - "signatures": [ - { - "id": 1447, - "name": "traverseServiceFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 999, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L999" - } - ], - "parameters": [ - { - "id": 1448, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1449, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1450, - "name": "baseConfig", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1021, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1021" - } - ], - "type": { - "type": "intrinsic", - "name": "any" - } - }, - { - "id": 1451, - "name": "services", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1020, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1020" - } - ], - "type": { - "type": "intrinsic", - "name": "undefined" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1450, - 1451 - ] - } - ], - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1019, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1019" - } - ] - } - } - } - ] - }, - { - "id": 1452, - "name": "traverseStoreEntryFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 731, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L731" - } - ], - "signatures": [ - { - "id": 1453, - "name": "traverseStoreEntryFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 731, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L731" - } - ], - "parameters": [ - { - "id": 1454, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - } - } - ] - }, - { - "id": 1455, - "name": "traverseStoreFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 820, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L820" - } - ], - "signatures": [ - { - "id": 1456, - "name": "traverseStoreFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 820, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L820" - } - ], - "parameters": [ - { - "id": 1457, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1458, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1459, - "name": "actions", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 879, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L879" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 1080, - "name": "StorePropertyType", - "package": "@music163/tango-core" - } - } - }, - { - "id": 1460, - "name": "namespace", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 877, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L877" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1461, - "name": "states", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 878, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L878" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 1080, - "name": "StorePropertyType", - "package": "@music163/tango-core" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1459, - 1460, - 1461 - ] - } - ], - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 876, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L876" - } - ] - } - } - } - ] - }, - { - "id": 1462, - "name": "traverseViewFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1123, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1123" - } - ], - "signatures": [ - { - "id": 1463, - "name": "traverseViewFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1123, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1123" - } - ], - "parameters": [ - { - "id": 1464, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1465, - "name": "idGenerator", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 117, - "name": "IdGenerator", - "package": "@music163/tango-core" - } - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1466, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1467, - "name": "ast", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1223, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1223" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1468, - "name": "classProperties", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1227, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1227" - } - ], - "type": { - "type": "reference", - "target": 2527, - "typeArguments": [ - { - "type": "reference", - "target": 1011, - "name": "ClassPropertyNodeType", - "package": "@music163/tango-core" - } - ], - "name": "Dict", - "package": "@music163/tango-helpers" - } - }, - { - "id": 1469, - "name": "cleanAst", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1224, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1224" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1470, - "name": "importedModules", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1229, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1229" - } - ], - "type": { - "type": "reference", - "target": 2527, - "typeArguments": [ - { - "type": "union", - "types": [ - { - "type": "reference", - "target": 1022, - "name": "ImportDeclarationPayloadType", - "package": "@music163/tango-core" - }, - { - "type": "array", - "elementType": { - "type": "reference", - "target": 1022, - "name": "ImportDeclarationPayloadType", - "package": "@music163/tango-core" - } - } - ] - } - ], - "name": "Dict", - "package": "@music163/tango-helpers" - } - }, - { - "id": 1471, - "name": "nodes", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1225, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1225" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 1085, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - ], - "name": "TangoViewNodeDataType", - "package": "@music163/tango-core" - } - } - }, - { - "id": 1472, - "name": "stateCode", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1226, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1226" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1473, - "name": "stateProperties", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1228, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1228" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - } - }, - { - "id": 1474, - "name": "variables", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1230, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1230" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1467, - 1468, - 1469, - 1470, - 1471, - 1472, - 1473, - 1474 - ] - } - ], - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1222, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1222" - } - ] - } - } - } - ] - }, - { - "id": 1475, - "name": "typeOf", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 59, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L59" - } - ], - "signatures": [ - { - "id": 1476, - "name": "typeOf", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "获得传入对象的类型" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/object.ts", - "line": 59, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/object.ts#L59" - } - ], - "parameters": [ - { - "id": 1477, - "name": "obj", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1478, - "name": "updateBaseConfigToServiceFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 963, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L963" - } - ], - "signatures": [ - { - "id": 1479, - "name": "updateBaseConfigToServiceFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 963, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L963" - } - ], - "parameters": [ - { - "id": 1480, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1481, - "name": "configName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1482, - "name": "configValue", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1483, - "name": "updateClassProperty", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 558, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L558" - } - ], - "signatures": [ - { - "id": 1484, - "name": "updateClassProperty", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "更新类属性" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 558, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L558" - } - ], - "parameters": [ - { - "id": 1485, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1486, - "name": "targetPropertyName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1487, - "name": "propertyValueNode", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Expression" - }, - "name": "Expression", - "package": "@babel/types" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1488, - "name": "updateImportDeclaration", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 521, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L521" - } - ], - "signatures": [ - { - "id": 1489, - "name": "updateImportDeclaration", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "更新已有的导入语句" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 521, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L521" - } - ], - "parameters": [ - { - "id": 1490, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1491, - "name": "importedModule", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 1022, - "name": "ImportDeclarationPayloadType", - "package": "@music163/tango-core" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1492, - "name": "updateJSXAttributes", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 416, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L416" - } - ], - "signatures": [ - { - "id": 1493, - "name": "updateJSXAttributes", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 416, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L416" - } - ], - "parameters": [ - { - "id": 1494, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1495, - "name": "nodeId", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1496, - "name": "config", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Record" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "Record", - "package": "typescript" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1497, - "name": "updateJSXElementAttribute", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 386, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L386" - } - ], - "signatures": [ - { - "id": 1498, - "name": "updateJSXElementAttribute", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 386, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L386" - } - ], - "parameters": [ - { - "id": 1499, - "name": "node", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - }, - { - "id": 1500, - "name": "attrName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1501, - "name": "attrValue", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1502, - "name": "updateRouteToRouteFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 618, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L618" - } - ], - "signatures": [ - { - "id": 1503, - "name": "updateRouteToRouteFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "更新页面路由" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 618, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L618" - } - ], - "parameters": [ - { - "id": 1504, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1505, - "name": "oldRoutePath", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1506, - "name": "newRoutePath", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1507, - "name": "updateServiceConfigToServiceFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 921, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L921" - } - ], - "signatures": [ - { - "id": 1508, - "name": "updateServiceConfigToServiceFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 921, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L921" - } - ], - "parameters": [ - { - "id": 1509, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1510, - "name": "config", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reflection", - "declaration": { - "id": 1511, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 923, - "character": 10, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L923" - } - ], - "indexSignature": { - "id": 1512, - "name": "__index", - "variant": "signature", - "kind": 8192, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 923, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L923" - } - ], - "parameters": [ - { - "id": 1513, - "name": "key", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": 1073, - "name": "ServiceFunctionPayloadType", - "package": "@music163/tango-core" - } - } - } - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1514, - "name": "updateStateCodeOfViewFile", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1238, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1238" - } - ], - "signatures": [ - { - "id": 1515, - "name": "updateStateCodeOfViewFile", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "更新视图文件中的 state 定义" - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 1238, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L1238" - } - ], - "parameters": [ - { - "id": 1516, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1517, - "name": "stateCode", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1518, - "name": "updateStoreState", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 789, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L789" - } - ], - "signatures": [ - { - "id": 1519, - "name": "updateStoreState", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/traverse.ts", - "line": 789, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/traverse.ts#L789" - } - ], - "parameters": [ - { - "id": 1520, - "name": "ast", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - }, - { - "id": 1521, - "name": "stateName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1522, - "name": "code", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "File" - }, - "name": "File", - "package": "@babel/types" - } - } - ] - }, - { - "id": 1523, - "name": "upperCamelCase", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 110, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L110" - } - ], - "signatures": [ - { - "id": 1524, - "name": "upperCamelCase", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将输入字符串转换为大驼峰格式" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\nabout -> About\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\nnot-found -> NotFound\n```" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 110, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L110" - } - ], - "parameters": [ - { - "id": 1525, - "name": "str", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1526, - "name": "value2code", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 169, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L169" - } - ], - "signatures": [ - { - "id": 1527, - "name": "value2code", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将 js value 转换为代码字符串" - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/string.ts", - "line": 169, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/string.ts#L169" - } - ], - "parameters": [ - { - "id": 1528, - "name": "value", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 1529, - "name": "value2jsxAttributeValueNode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 193, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L193" - } - ], - "signatures": [ - { - "id": 1530, - "name": "value2jsxAttributeValueNode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 193, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L193" - } - ], - "parameters": [ - { - "id": 1531, - "name": "value", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "StringLiteral" - }, - "name": "StringLiteral", - "package": "@babel/types" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXExpressionContainer" - }, - "name": "JSXExpressionContainer", - "package": "@babel/types" - } - ] - } - } - ] - }, - { - "id": 1532, - "name": "value2jsxChildrenValueNode", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 220, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L220" - } - ], - "signatures": [ - { - "id": 1533, - "name": "value2jsxChildrenValueNode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 220, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L220" - } - ], - "parameters": [ - { - "id": 1534, - "name": "value", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "union", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXElement" - }, - "name": "JSXElement", - "package": "@babel/types" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXFragment" - }, - "name": "JSXFragment", - "package": "@babel/types" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXExpressionContainer" - }, - "name": "JSXExpressionContainer", - "package": "@babel/types" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXSpreadChild" - }, - "name": "JSXSpreadChild", - "package": "@babel/types" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "JSXText" - }, - "name": "JSXText", - "package": "@babel/types" - } - ] - } - } - } - ] - }, - { - "id": 1535, - "name": "value2node", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 118, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L118" - } - ], - "signatures": [ - { - "id": 1536, - "name": "value2node", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将 js 值解析为 t.Node" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/core/src/helpers/ast/parse.ts", - "line": 118, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/core/src/helpers/ast/parse.ts#L118" - } - ], - "parameters": [ - { - "id": 1537, - "name": "value", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "NullLiteral" - }, - "name": "t.NullLiteral", - "package": "@babel/types", - "qualifiedName": "NullLiteral" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Identifier" - }, - "name": "t.Identifier", - "package": "@babel/types", - "qualifiedName": "Identifier" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "NumericLiteral" - }, - "name": "t.NumericLiteral", - "package": "@babel/types", - "qualifiedName": "NumericLiteral" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "StringLiteral" - }, - "name": "t.StringLiteral", - "package": "@babel/types", - "qualifiedName": "StringLiteral" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "BooleanLiteral" - }, - "name": "t.BooleanLiteral", - "package": "@babel/types", - "qualifiedName": "BooleanLiteral" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@babel/types/lib/index.d.ts", - "qualifiedName": "Expression" - }, - "name": "t.Expression", - "package": "@babel/types", - "qualifiedName": "Expression" - } - ] - } - } - ] - } - ], - "groups": [ - { - "title": "Enumerations", - "children": [ - 2, - 8, - 11, - 14, - 17, - 21 - ] - }, - { - "title": "Classes", - "children": [ - 37, - 86, - 111, - 117, - 130, - 159, - 205, - 257, - 295, - 339, - 446 - ] - }, - { - "title": "Interfaces", - "children": [ - 690, - 763, - 777 - ] - }, - { - "title": "Type Aliases", - "children": [ - 1011, - 1016, - 1017, - 1022, - 1027, - 1028, - 1029, - 1037, - 1043, - 1066, - 1073, - 1078, - 1079, - 1080, - 1085, - 1094 - ] - }, - { - "title": "Functions", - "children": [ - 1100, - 1104, - 1108, - 1113, - 1118, - 1122, - 1128, - 1132, - 1135, - 1138, - 1141, - 1244, - 1247, - 1252, - 1255, - 1259, - 1263, - 1266, - 1269, - 1273, - 1276, - 1281, - 1285, - 1288, - 1291, - 1294, - 1298, - 1302, - 1305, - 1310, - 1315, - 1318, - 1321, - 1324, - 1328, - 1331, - 1334, - 1337, - 1340, - 1343, - 1346, - 1349, - 1353, - 1357, - 1363, - 1366, - 1373, - 1376, - 1380, - 1388, - 1391, - 1394, - 1397, - 1400, - 1404, - 1409, - 1413, - 1417, - 1420, - 1425, - 1429, - 1432, - 1436, - 1439, - 1443, - 1446, - 1452, - 1455, - 1462, - 1475, - 1478, - 1483, - 1488, - 1492, - 1497, - 1502, - 1507, - 1514, - 1518, - 1523, - 1526, - 1529, - 1532, - 1535 - ] - } - ], - "packageVersion": "0.1.1" - }, - { - "id": 1538, - "name": "@music163/tango-designer", - "variant": "declaration", - "kind": 2, - "flags": {}, - "children": [ - { - "id": 1539, - "name": "ToolbarPanel", - "variant": "declaration", - "kind": 4, - "flags": {}, - "children": [ - { - "id": 1540, - "name": "Item", - "variant": "declaration", - "kind": 32, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 89, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L89" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1541, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 81, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L81" - } - ], - "signatures": [ - { - "id": 1542, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 81, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L81" - } - ], - "parameters": [ - { - "id": 1543, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/toolbar-panel.tsx", - "qualifiedName": "ToolbarPanelItemProps" - }, - "name": "ToolbarPanelItemProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - } - } - }, - { - "id": 1544, - "name": "Separator", - "variant": "declaration", - "kind": 32, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 90, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L90" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1545, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 85, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L85" - } - ], - "signatures": [ - { - "id": 1546, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 85, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L85" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - } - } - } - ], - "groups": [ - { - "title": "Variables", - "children": [ - 1540, - 1544 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 24, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L24" - }, - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 89, - "character": 0, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L89" - }, - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 90, - "character": 0, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L90" - } - ] - }, - { - "id": 1547, - "name": "DndQuery", - "variant": "declaration", - "kind": 128, - "flags": {}, - "children": [ - { - "id": 1548, - "name": "constructor", - "variant": "declaration", - "kind": 512, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 83, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L83" - } - ], - "signatures": [ - { - "id": 1549, - "name": "new DndQuery", - "variant": "signature", - "kind": 16384, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 83, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L83" - } - ], - "parameters": [ - { - "id": 1550, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "qualifiedName": "DndQueryOptions" - }, - "name": "DndQueryOptions", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": 1547, - "name": "DndQuery", - "package": "@music163/tango-designer" - } - } - ] - }, - { - "id": 1551, - "name": "_container", - "variant": "declaration", - "kind": 1024, - "flags": { - "isPrivate": true, - "isReadonly": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "拖拽沙箱的外层容器选择器,用于辅助计算相对位置" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 40, - "character": 19, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L40" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1552, - "name": "_context", - "variant": "declaration", - "kind": 1024, - "flags": { - "isPrivate": true, - "isReadonly": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "dnd 上下文选择器,如果是 iframe,则是 iframe 里的 window 对象" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 32, - "character": 19, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L32" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1553, - "name": "_secondaryContext", - "variant": "declaration", - "kind": 1024, - "flags": { - "isPrivate": true, - "isReadonly": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "dnd 二级上下文选择器,适用于存在 iframe 多层嵌套的场景" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 36, - "character": 19, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L36" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1554, - "name": "container", - "variant": "declaration", - "kind": 262144, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 42, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L42" - } - ], - "getSignature": { - "id": 1555, - "name": "container", - "variant": "signature", - "kind": 524288, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 42, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L42" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "EleLoose" - }, - "name": "EleLoose", - "package": "cash-dom" - } - } - }, - { - "id": 1556, - "name": "context", - "variant": "declaration", - "kind": 262144, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 46, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L46" - } - ], - "getSignature": { - "id": 1557, - "name": "context", - "variant": "signature", - "kind": 524288, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 46, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L46" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "EleLoose" - }, - "name": "EleLoose", - "package": "cash-dom" - } - } - }, - { - "id": 1558, - "name": "isSeparated", - "variant": "declaration", - "kind": 262144, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 60, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L60" - } - ], - "getSignature": { - "id": 1559, - "name": "isSeparated", - "variant": "signature", - "kind": 524288, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否是隔离的沙箱环境,目前仅 iframe 环境为隔离沙箱" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 60, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L60" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - }, - { - "id": 1560, - "name": "scrollTop", - "variant": "declaration", - "kind": 262144, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 75, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L75" - } - ], - "getSignature": { - "id": 1561, - "name": "scrollTop", - "variant": "signature", - "kind": 524288, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 75, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L75" - } - ], - "type": { - "type": "intrinsic", - "name": "number" - } - } - }, - { - "id": 1562, - "name": "window", - "variant": "declaration", - "kind": 262144, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 67, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L67" - } - ], - "getSignature": { - "id": 1563, - "name": "window", - "variant": "signature", - "kind": 524288, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 67, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L67" - } - ], - "type": { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "Window" - }, - "name": "Window", - "package": "typescript" - }, - { - "type": "query", - "queryType": { - "type": "reference", - "target": { - "sourceFileName": "\u0000", - "qualifiedName": "globalThis" - }, - "name": "globalThis" - } - } - ] - } - } - }, - { - "id": 1564, - "name": "get", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 89, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L89" - } - ], - "signatures": [ - { - "id": 1565, - "name": "get", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 89, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L89" - } - ], - "parameters": [ - { - "id": 1566, - "name": "selector", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "Selector" - }, - "name": "Selector", - "package": "cash-dom" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "Cash" - }, - "name": "Cash", - "package": "cash-dom" - } - } - ] - }, - { - "id": 1567, - "name": "getDraggableDescendants", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 140, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L140" - } - ], - "signatures": [ - { - "id": 1568, - "name": "getDraggableDescendants", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "获取可拖拽的子元素" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 140, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L140" - } - ], - "parameters": [ - { - "id": 1569, - "name": "selector", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "Selector" - }, - "name": "Selector", - "package": "cash-dom" - } - }, - { - "id": 1570, - "name": "descendantSelector", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - }, - "defaultValue": "DRAGGABLE_SELECTOR" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "EleLoose" - }, - "name": "EleLoose", - "package": "cash-dom" - } - } - } - ] - }, - { - "id": 1571, - "name": "getDraggableElementsDataByArea", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 170, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L170" - } - ], - "signatures": [ - { - "id": 1572, - "name": "getDraggableElementsDataByArea", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "获得最近的一个可拖拽的父结点的所有子结点" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 170, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L170" - } - ], - "parameters": [ - { - "id": 1573, - "name": "selector", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "Selector" - }, - "name": "Selector", - "package": "cash-dom" - } - }, - { - "id": 1574, - "name": "startPoint", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2547, - "name": "MousePoint", - "package": "@music163/tango-helpers" - } - }, - { - "id": 1575, - "name": "endPoint", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2547, - "name": "MousePoint", - "package": "@music163/tango-helpers" - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 2436, - "name": "ISelectedItemData", - "package": "@music163/tango-helpers" - } - } - } - ] - }, - { - "id": 1576, - "name": "getDraggableParents", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 123, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L123" - } - ], - "signatures": [ - { - "id": 1577, - "name": "getDraggableParents", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 123, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L123" - } - ], - "parameters": [ - { - "id": 1578, - "name": "selector", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "Selector" - }, - "name": "Selector", - "package": "cash-dom" - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "EleLoose" - }, - "name": "EleLoose", - "package": "cash-dom" - } - } - } - ] - }, - { - "id": 1579, - "name": "getDraggableParentsData", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 144, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L144" - } - ], - "signatures": [ - { - "id": 1580, - "name": "getDraggableParentsData", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 144, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L144" - } - ], - "parameters": [ - { - "id": 1581, - "name": "selector", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "Selector" - }, - "name": "Selector", - "package": "cash-dom" - } - }, - { - "id": 1582, - "name": "hasParents", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ], - "type": { - "type": "reference", - "target": 2436, - "name": "ISelectedItemData", - "package": "@music163/tango-helpers" - } - } - ] - }, - { - "id": 1583, - "name": "getElement", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 93, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L93" - } - ], - "signatures": [ - { - "id": 1584, - "name": "getElement", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 93, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L93" - } - ], - "parameters": [ - { - "id": 1585, - "name": "selector", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "Selector" - }, - "name": "Selector", - "package": "cash-dom" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "EleLoose" - }, - "name": "EleLoose", - "package": "cash-dom" - } - } - ] - }, - { - "id": 1586, - "name": "getElementBounding", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 105, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L105" - } - ], - "signatures": [ - { - "id": 1587, - "name": "getElementBounding", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 105, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L105" - } - ], - "parameters": [ - { - "id": 1588, - "name": "element", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLElement" - }, - "name": "HTMLElement", - "package": "typescript" - } - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1589, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 1590, - "name": "height", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/helpers/dom.ts", - "line": 37, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/helpers/dom.ts#L37" - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "defaultValue": "element.offsetHeight" - }, - { - "id": 1591, - "name": "left", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/helpers/dom.ts", - "line": 39, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/helpers/dom.ts#L39" - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "defaultValue": "x" - }, - { - "id": 1592, - "name": "top", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/helpers/dom.ts", - "line": 38, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/helpers/dom.ts#L38" - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "defaultValue": "y" - }, - { - "id": 1593, - "name": "width", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/helpers/dom.ts", - "line": 36, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/helpers/dom.ts#L36" - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "defaultValue": "element.offsetWidth" - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1590, - 1591, - 1592, - 1593 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/helpers/dom.ts", - "line": 35, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/helpers/dom.ts#L35" - } - ] - } - } - } - ] - }, - { - "id": 1594, - "name": "getElementBySlotId", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 97, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L97" - } - ], - "signatures": [ - { - "id": 1595, - "name": "getElementBySlotId", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 97, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L97" - } - ], - "parameters": [ - { - "id": 1596, - "name": "slotId", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/cash-dom/dist/cash.d.ts", - "qualifiedName": "EleLoose" - }, - "name": "EleLoose", - "package": "cash-dom" - } - } - ] - }, - { - "id": 1597, - "name": "getElementData", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 101, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L101" - } - ], - "signatures": [ - { - "id": 1598, - "name": "getElementData", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 101, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L101" - } - ], - "parameters": [ - { - "id": 1599, - "name": "element", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLElement" - }, - "name": "HTMLElement", - "package": "typescript" - } - } - ], - "type": { - "type": "reference", - "target": 2436, - "name": "ISelectedItemData", - "package": "@music163/tango-helpers" - } - } - ] - }, - { - "id": 1600, - "name": "getRelativePoint", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 113, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L113" - } - ], - "signatures": [ - { - "id": 1601, - "name": "getRelativePoint", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "获取相对容器的位置" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 113, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L113" - } - ], - "parameters": [ - { - "id": 1602, - "name": "point", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2547, - "name": "MousePoint", - "package": "@music163/tango-helpers" - } - } - ], - "type": { - "type": "reference", - "target": 2547, - "name": "MousePoint", - "package": "@music163/tango-helpers" - } - } - ] - }, - { - "id": 1603, - "name": "isChildOfElement", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 117, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L117" - } - ], - "signatures": [ - { - "id": 1604, - "name": "isChildOfElement", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 117, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L117" - } - ], - "parameters": [ - { - "id": 1605, - "name": "parentElementSlotId", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1606, - "name": "childElementSlotId", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - }, - { - "id": 1607, - "name": "reload", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 195, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L195" - } - ], - "signatures": [ - { - "id": 1608, - "name": "reload", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 195, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L195" - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - }, - { - "id": 1609, - "name": "scrollTo", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 191, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L191" - } - ], - "signatures": [ - { - "id": 1610, - "name": "scrollTo", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 191, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L191" - } - ], - "parameters": [ - { - "id": 1611, - "name": "leftOffset", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "number" - } - }, - { - "id": 1612, - "name": "topOffset", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "number" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - ], - "groups": [ - { - "title": "Constructors", - "children": [ - 1548 - ] - }, - { - "title": "Properties", - "children": [ - 1551, - 1552, - 1553 - ] - }, - { - "title": "Accessors", - "children": [ - 1554, - 1556, - 1558, - 1560, - 1562 - ] - }, - { - "title": "Methods", - "children": [ - 1564, - 1567, - 1571, - 1576, - 1579, - 1583, - 1586, - 1594, - 1597, - 1600, - 1603, - 1607, - 1609 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 28, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L28" - } - ] - }, - { - "id": 1613, - "name": "CodeEditorProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 1614, - "name": "autoRemoveUnusedImports", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否自动清楚未使用的导入" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/editor/editor.tsx", - "line": 28, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/editor/editor.tsx#L28" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1615, - "name": "defaultFiles", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 38, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "qualifiedName": "filelist" - }, - "name": "filelist", - "package": "react-monaco-editor-lite" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.defaultFiles" - } - }, - { - "id": 1616, - "name": "defaultPath", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 24, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.defaultPath" - } - }, - { - "id": 1617, - "name": "defaultTheme", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 25, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.defaultTheme" - } - }, - { - "id": 1618, - "name": "ideConfig", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 8, - "character": 4 - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1619, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "children": [ - { - "id": 1620, - "name": "disableEslint", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 19, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1621, - "name": "disableFileOps", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 9, - "character": 8 - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1622, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "children": [ - { - "id": 1623, - "name": "add", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 10, - "character": 12 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1624, - "name": "delete", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 12, - "character": 12 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1625, - "name": "rename", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 11, - "character": 12 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1623, - 1624, - 1625 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 9, - "character": 25 - } - ] - } - } - }, - { - "id": 1626, - "name": "disableFolderOps", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 14, - "character": 8 - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1627, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "children": [ - { - "id": 1628, - "name": "add", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 15, - "character": 12 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1629, - "name": "delete", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 17, - "character": 12 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1630, - "name": "rename", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 16, - "character": 12 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1628, - 1629, - 1630 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 14, - "character": 27 - } - ] - } - } - }, - { - "id": 1631, - "name": "disablePrettier", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 21, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1632, - "name": "disableSetting", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 20, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1633, - "name": "saveWhenBlur", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 22, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1620, - 1621, - 1626, - 1631, - 1632, - 1633 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 8, - "character": 16 - } - ] - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.ideConfig" - } - }, - { - "id": 1634, - "name": "onFileChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 29, - "character": 4 - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1635, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 29, - "character": 19 - } - ], - "signatures": [ - { - "id": 1636, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 29, - "character": 19 - } - ], - "parameters": [ - { - "id": 1637, - "name": "type", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "qualifiedName": "FileChangeType" - }, - "name": "FileChangeType", - "package": "react-monaco-editor-lite" - } - }, - { - "id": 1638, - "name": "info", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true, - "isOptional": true - }, - "type": { - "type": "reflection", - "declaration": { - "id": 1639, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "children": [ - { - "id": 1640, - "name": "filename", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 32, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1641, - "name": "newfilename", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 35, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1642, - "name": "newpath", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 33, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1643, - "name": "newvalue", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 34, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1644, - "name": "path", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 30, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1645, - "name": "value", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 31, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1640, - 1641, - 1642, - 1643, - 1644, - 1645 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 29, - "character": 49 - } - ] - } - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.onFileChange" - } - }, - { - "id": 1646, - "name": "onFileSave", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 37, - "character": 4 - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1647, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 37, - "character": 17 - } - ], - "signatures": [ - { - "id": 1648, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 37, - "character": 17 - } - ], - "parameters": [ - { - "id": 1649, - "name": "key", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1650, - "name": "value", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.onFileSave" - } - }, - { - "id": 1651, - "name": "onPathChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 26, - "character": 4 - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1652, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 26, - "character": 19 - } - ], - "signatures": [ - { - "id": 1653, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 26, - "character": 19 - } - ], - "parameters": [ - { - "id": 1654, - "name": "key", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.onPathChange" - } - }, - { - "id": 1655, - "name": "onRenameFile", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 28, - "character": 4 - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1656, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 28, - "character": 19 - } - ], - "signatures": [ - { - "id": 1657, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 28, - "character": 19 - } - ], - "parameters": [ - { - "id": 1658, - "name": "oldpath", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1659, - "name": "newpath", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.onRenameFile" - } - }, - { - "id": 1660, - "name": "onValueChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 27, - "character": 4 - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1661, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 27, - "character": 20 - } - ], - "signatures": [ - { - "id": 1662, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 27, - "character": 20 - } - ], - "parameters": [ - { - "id": 1663, - "name": "v", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1664, - "name": "path", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.onValueChange" - } - }, - { - "id": 1665, - "name": "options", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 39, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/monaco-editor/esm/vs/editor/editor.api.d.ts", - "qualifiedName": "editor.IStandaloneEditorConstructionOptions" - }, - "name": "IStandaloneEditorConstructionOptions", - "package": "monaco-editor", - "qualifiedName": "editor.IStandaloneEditorConstructionOptions" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.options" - } - }, - { - "id": 1666, - "name": "title", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "line": 40, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Partial.title" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1614, - 1615, - 1616, - 1617, - 1618, - 1634, - 1646, - 1651, - 1655, - 1660, - 1665, - 1666 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/editor/editor.tsx", - "line": 24, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/editor/editor.tsx#L24" - } - ], - "extendedTypes": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Partial" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/react-monaco-editor-lite/dist/src/multi/Editor.d.ts", - "qualifiedName": "MultiEditorIProps" - }, - "name": "MultiEditorProps", - "package": "react-monaco-editor-lite", - "qualifiedName": "MultiEditorIProps" - } - ], - "name": "Partial", - "package": "typescript" - } - ] - }, - { - "id": 1667, - "name": "ComponentsViewProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 1668, - "name": "getBizCompName", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 43, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L43" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1669, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 43, - "character": 19, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L43" - } - ], - "signatures": [ - { - "id": 1670, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "设置业务组件调用名" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 43, - "character": 19, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L43" - } - ], - "parameters": [ - { - "id": 1671, - "name": "name", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - } - } - }, - { - "id": 1672, - "name": "loading", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "动态加载物料 loading,避免未加载完成用户点击空列表" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 33, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L33" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1673, - "name": "menuData", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "菜单数据" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 21, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L21" - } - ], - "type": { - "type": "reference", - "target": 2127, - "name": "MenuDataType", - "package": "@music163/tango-designer" - } - }, - { - "id": 1674, - "name": "onBizDependencyAdd", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "安装依赖后回调" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 37, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L37" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "qualifiedName": "AddBizDependencyHandlerType" - }, - "name": "AddBizDependencyHandlerType", - "package": "@music163/tango-designer" - } - }, - { - "id": 1675, - "name": "showBizComps", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "展示业务组件分类" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 25, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L25" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1676, - "name": "showBlocks", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "展示基础组件分类" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 29, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L29" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1668, - 1672, - 1673, - 1674, - 1675, - 1676 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 17, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L17" - } - ] - }, - { - "id": 1677, - "name": "DesignerPanelProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 1678, - "name": "actions", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "主行动点" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/designer-panel.tsx", - "line": 17, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/designer-panel.tsx#L17" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - } - }, - { - "id": 1679, - "name": "children", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/base.ts", - "line": 19, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/base.ts#L19" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "ReactComponentProps.children" - } - }, - { - "id": 1680, - "name": "className", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/base.ts", - "line": 21, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/base.ts#L21" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "ReactComponentProps.className" - } - }, - { - "id": 1681, - "name": "description", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "项目描述" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/designer-panel.tsx", - "line": 13, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/designer-panel.tsx#L13" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - } - }, - { - "id": 1682, - "name": "header", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "自定义头部节点" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/designer-panel.tsx", - "line": 21, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/designer-panel.tsx#L21" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - } - }, - { - "id": 1683, - "name": "logo", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "品牌图标" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/designer-panel.tsx", - "line": 9, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/designer-panel.tsx#L9" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - } - }, - { - "id": 1684, - "name": "style", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/base.ts", - "line": 20, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/base.ts#L20" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.CSSProperties" - }, - "name": "CSSProperties", - "package": "@types/react", - "qualifiedName": "React.CSSProperties" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "ReactComponentProps.style" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1678, - 1679, - 1680, - 1681, - 1682, - 1683, - 1684 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/designer-panel.tsx", - "line": 5, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/designer-panel.tsx#L5" - } - ], - "extendedTypes": [ - { - "type": "reference", - "target": 2561, - "name": "ReactComponentProps", - "package": "@music163/tango-helpers" - } - ] - }, - { - "id": 1685, - "name": "DesignerProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "TODO: 是不是直接合并到 Context 中" - } - ] - }, - "children": [ - { - "id": 1686, - "name": "children", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/designer.tsx", - "line": 19, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/designer.tsx#L19" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - } - }, - { - "id": 1687, - "name": "engine", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "低代码引擎" - } - ] - }, - "sources": [ - { - "fileName": "packages/context/lib/esm/context.d.ts", - "line": 7, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": 111, - "name": "Engine", - "package": "@music163/tango-core" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "ITangoEngineContext.engine" - } - }, - { - "id": 1688, - "name": "iconfontScriptUrl", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "自定义图表库svg脚本地址" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/designer.tsx", - "line": 18, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/designer.tsx#L18" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1689, - "name": "remoteServices", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "远程服务" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/context.ts", - "line": 15, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/context.ts#L15" - } - ], - "type": { - "type": "reference", - "target": 2579, - "name": "TangoRemoteServicesType", - "package": "@music163/tango-helpers" - }, - "inheritedFrom": { - "type": "reference", - "target": 1693, - "name": "IDesignerContext.remoteServices" - } - }, - { - "id": 1690, - "name": "sandboxQuery", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "沙箱查询实例" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/context.ts", - "line": 11, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/context.ts#L11" - } - ], - "type": { - "type": "reference", - "target": 1547, - "name": "DndQuery", - "package": "@music163/tango-designer" - }, - "inheritedFrom": { - "type": "reference", - "target": 1694, - "name": "IDesignerContext.sandboxQuery" - } - }, - { - "id": 1691, - "name": "theme", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "主题包" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/designer.tsx", - "line": 14, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/designer.tsx#L14" - } - ], - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1686, - 1687, - 1688, - 1689, - 1690, - 1691 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/designer.tsx", - "line": 10, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/designer.tsx#L10" - } - ], - "extendedTypes": [ - { - "type": "reference", - "target": 1692, - "name": "IDesignerContext", - "package": "@music163/tango-designer" - }, - { - "type": "reference", - "target": { - "sourceFileName": "packages/context/lib/esm/context.d.ts", - "qualifiedName": "ITangoEngineContext" - }, - "name": "ITangoEngineContext", - "package": "@music163/tango-context" - } - ] - }, - { - "id": 1692, - "name": "IDesignerContext", - "variant": "declaration", - "kind": 256, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "TODO: 是不是直接合并到 Context 中" - } - ] - }, - "children": [ - { - "id": 1693, - "name": "remoteServices", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "远程服务" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/context.ts", - "line": 15, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/context.ts#L15" - } - ], - "type": { - "type": "reference", - "target": 2579, - "name": "TangoRemoteServicesType", - "package": "@music163/tango-helpers" - } - }, - { - "id": 1694, - "name": "sandboxQuery", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "沙箱查询实例" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/context.ts", - "line": 11, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/context.ts#L11" - } - ], - "type": { - "type": "reference", - "target": 1547, - "name": "DndQuery", - "package": "@music163/tango-designer" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1693, - 1694 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/context.ts", - "line": 7, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/context.ts#L7" - } - ], - "extendedBy": [ - { - "type": "reference", - "target": 1685, - "name": "DesignerProps" - } - ] - }, - { - "id": 1695, - "name": "OutlineViewProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 1696, - "name": "showStateView", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "展示状态视图" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/pages-view/index.tsx", - "line": 11, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/pages-view/index.tsx#L11" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1696 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/pages-view/index.tsx", - "line": 7, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/pages-view/index.tsx#L7" - } - ] - }, - { - "id": 1697, - "name": "SettingPanelProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 1698, - "name": "actionVariables", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "动作变量列表" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 41, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L41" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "any" - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.actionVariables" - } - }, - { - "id": 1699, - "name": "defaultValue", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "默认状态初值,如果没有传 model,则会基于 defaultValue 在表单内进行 model 实例化" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/form.tsx", - "line": 76, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/form.tsx#L76" - } - ], - "type": { - "type": "intrinsic", - "name": "unknown" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.defaultValue" - } - }, - { - "id": 1700, - "name": "disableSwitchExpressionSetter", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否允许表单项切换到表达式设置器" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 25, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L25" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.disableSwitchExpressionSetter" - } - }, - { - "id": 1701, - "name": "evaluateContext", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "探测输入上下文的对象" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 29, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L29" - } - ], - "type": { - "type": "intrinsic", - "name": "object" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.evaluateContext" - } - }, - { - "id": 1702, - "name": "expressionVariables", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "表达式变量列表(含状态变量和动作变量)" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 45, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L45" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "any" - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.expressionVariables" - } - }, - { - "id": 1703, - "name": "formFieldsOptions", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "关联的表单域列表" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 57, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L57" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "any" - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.formFieldsOptions" - } - }, - { - "id": 1704, - "name": "groupOptions", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "选项分组信息" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/form.tsx", - "line": 88, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/form.tsx#L88" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": { - "sourceFileName": "packages/setting-form/src/form.tsx", - "qualifiedName": "GroupOptionType" - }, - "name": "GroupOptionType", - "package": "@music163/tango-setting-form" - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.groupOptions" - } - }, - { - "id": 1705, - "name": "modalOptions", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "可选弹窗列表" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 53, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L53" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "any" - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.modalOptions" - } - }, - { - "id": 1706, - "name": "model", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "表单状态管理模型实例" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/form.tsx", - "line": 72, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/form.tsx#L72" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/setting-form/src/form-model.tsx", - "qualifiedName": "FormModel" - }, - "name": "FormModel", - "package": "@music163/tango-setting-form" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.model" - } - }, - { - "id": 1707, - "name": "modelVariables", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "状态变量列表" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 37, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L37" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "any" - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.modelVariables" - } - }, - { - "id": 1708, - "name": "onAction", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 33, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L33" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1709, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 33, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L33" - } - ], - "signatures": [ - { - "id": 1710, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "表单动作发生时的回调" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 33, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L33" - } - ], - "parameters": [ - { - "id": 1711, - "name": "fn", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1712, - "name": "args", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "unknown" - } - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.onAction" - } - }, - { - "id": 1713, - "name": "onChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/setting-form/src/form.tsx", - "line": 80, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/form.tsx#L80" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1714, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/setting-form/src/form-model.tsx", - "line": 11, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/form-model.tsx#L11" - } - ], - "signatures": [ - { - "id": 1715, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "表单值变化时的回调,在校验执行后触发,仅在使用内置 model 时有效" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/form-model.tsx", - "line": 11, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/form-model.tsx#L11" - } - ], - "parameters": [ - { - "id": 1716, - "name": "name", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1717, - "name": "value", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - }, - { - "id": 1718, - "name": "field", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/setting-form/src/form-model.tsx", - "qualifiedName": "Field" - }, - "name": "Field", - "package": "@music163/tango-setting-form" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.onChange" - } - }, - { - "id": 1719, - "name": "prototype", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "组件的可配置描述" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/form.tsx", - "line": 84, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/form.tsx#L84" - } - ], - "type": { - "type": "reference", - "target": 2508, - "name": "ComponentPrototypeType", - "package": "@music163/tango-helpers" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.prototype" - } - }, - { - "id": 1720, - "name": "remoteServices", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "远程服务" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 61, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L61" - } - ], - "type": { - "type": "reference", - "target": 2579, - "name": "TangoRemoteServicesType", - "package": "@music163/tango-helpers" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.remoteServices" - } - }, - { - "id": 1721, - "name": "routeOptions", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "路由选项" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/context.tsx", - "line": 49, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/context.tsx#L49" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "any" - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "SettingFormProps.routeOptions" - } - }, - { - "id": 1722, - "name": "title", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/setting-panel.tsx", - "line": 10, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/setting-panel.tsx#L10" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1698, - 1699, - 1700, - 1701, - 1702, - 1703, - 1704, - 1705, - 1706, - 1707, - 1708, - 1713, - 1719, - 1720, - 1721, - 1722 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/setting-panel.tsx", - "line": 9, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/setting-panel.tsx#L9" - } - ], - "extendedTypes": [ - { - "type": "reference", - "target": { - "sourceFileName": "packages/setting-form/src/form.tsx", - "qualifiedName": "SettingFormProps" - }, - "name": "SettingFormProps", - "package": "@music163/tango-setting-form" - } - ] - }, - { - "id": 1723, - "name": "SettingViewProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 1724, - "name": "dependencyConfig", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/setting-view/index.tsx", - "line": 10, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/setting-view/index.tsx#L10" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/widgets/sidebar/setting-view/dependency-config.tsx", - "qualifiedName": "DependencyConfigProps" - }, - "name": "DependencyConfigProps", - "package": "@music163/tango-designer" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1724 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/setting-view/index.tsx", - "line": 9, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/setting-view/index.tsx#L9" - } - ] - }, - { - "id": 1725, - "name": "SidebarPanelItemProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 1726, - "name": "about", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1954, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.about" - } - }, - { - "id": 1727, - "name": "accessKey", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1928, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.accessKey" - } - }, - { - "id": 1728, - "name": "alignContent", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 73, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.AlignContent" - }, - "name": "AlignContent", - "package": "csstype", - "qualifiedName": "Property.AlignContent" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.alignContent" - } - }, - { - "id": 1729, - "name": "alignItems", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 72, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.AlignItems" - }, - "name": "AlignItems", - "package": "csstype", - "qualifiedName": "Property.AlignItems" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.alignItems" - } - }, - { - "id": 1730, - "name": "alignSelf", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 86, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.AlignSelf" - }, - "name": "AlignSelf", - "package": "csstype", - "qualifiedName": "Property.AlignSelf" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.alignSelf" - } - }, - { - "id": 1731, - "name": "aria-activedescendant", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1637, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-activedescendant" - } - }, - { - "id": 1732, - "name": "aria-atomic", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1639, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-atomic" - } - }, - { - "id": 1733, - "name": "aria-autocomplete", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for an input and specifies how predictions would be\npresented if they are made." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1644, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "inline" - }, - { - "type": "literal", - "value": "none" - }, - { - "type": "literal", - "value": "both" - }, - { - "type": "literal", - "value": "list" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-autocomplete" - } - }, - { - "id": 1734, - "name": "aria-braillelabel", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines a string value that labels the current element, which is intended to be converted into Braille." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-label." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1650, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-braillelabel" - } - }, - { - "id": 1735, - "name": "aria-brailleroledescription", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines a human-readable, author-localized abbreviated description for the role of an element, which is intended to be converted into Braille." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-roledescription." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1655, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-brailleroledescription" - } - }, - { - "id": 1736, - "name": "aria-busy", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1656, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-busy" - } - }, - { - "id": 1737, - "name": "aria-checked", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates the current \"checked\" state of checkboxes, radio buttons, and other widgets." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-pressed" - }, - { - "kind": "text", - "text": "\n" - }, - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-selected." - }, - { - "kind": "text", - "text": "\n" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1661, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "boolean" - }, - { - "type": "literal", - "value": "mixed" - }, - { - "type": "literal", - "value": "false" - }, - { - "type": "literal", - "value": "true" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-checked" - } - }, - { - "id": 1738, - "name": "aria-colcount", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines the total number of columns in a table, grid, or treegrid." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-colindex." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1666, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-colcount" - } - }, - { - "id": 1739, - "name": "aria-colindex", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines an element's column index or position with respect to the total number of columns within a table, grid, or treegrid." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-colcount" - }, - { - "kind": "text", - "text": "\n" - }, - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-colspan." - }, - { - "kind": "text", - "text": "\n" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1671, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-colindex" - } - }, - { - "id": 1740, - "name": "aria-colindextext", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines a human readable text alternative of aria-colindex." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-rowindextext." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1676, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-colindextext" - } - }, - { - "id": 1741, - "name": "aria-colspan", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-colindex" - }, - { - "kind": "text", - "text": "\n" - }, - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-rowspan." - }, - { - "kind": "text", - "text": "\n" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1681, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-colspan" - } - }, - { - "id": 1742, - "name": "aria-controls", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Identifies the element (or elements) whose contents or presence are controlled by the current element." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-owns." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1686, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-controls" - } - }, - { - "id": 1743, - "name": "aria-current", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates the element that represents the current item within a container or set of related elements." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1688, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "boolean" - }, - { - "type": "literal", - "value": "page" - }, - { - "type": "literal", - "value": "time" - }, - { - "type": "literal", - "value": "false" - }, - { - "type": "literal", - "value": "true" - }, - { - "type": "literal", - "value": "step" - }, - { - "type": "literal", - "value": "location" - }, - { - "type": "literal", - "value": "date" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-current" - } - }, - { - "id": 1744, - "name": "aria-describedby", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Identifies the element (or elements) that describes the object." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-labelledby" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1693, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-describedby" - } - }, - { - "id": 1745, - "name": "aria-description", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines a string value that describes or annotates the current element." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "related aria-describedby." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1698, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-description" - } - }, - { - "id": 1746, - "name": "aria-details", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Identifies the element that provides a detailed, extended description for the object." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-describedby." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1703, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-details" - } - }, - { - "id": 1747, - "name": "aria-disabled", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-hidden" - }, - { - "kind": "text", - "text": "\n" - }, - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-readonly." - }, - { - "kind": "text", - "text": "\n" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1708, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-disabled" - } - }, - { - "id": 1748, - "name": "aria-dropeffect", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates what functions can be performed when a dragged object is released on the drop target." - } - ], - "blockTags": [ - { - "tag": "@deprecated", - "content": [ - { - "kind": "text", - "text": "in ARIA 1.1" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1713, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "copy" - }, - { - "type": "literal", - "value": "link" - }, - { - "type": "literal", - "value": "none" - }, - { - "type": "literal", - "value": "move" - }, - { - "type": "literal", - "value": "execute" - }, - { - "type": "literal", - "value": "popup" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-dropeffect" - } - }, - { - "id": 1749, - "name": "aria-errormessage", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Identifies the element that provides an error message for the object." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-invalid" - }, - { - "kind": "text", - "text": "\n" - }, - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-describedby." - }, - { - "kind": "text", - "text": "\n" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1718, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-errormessage" - } - }, - { - "id": 1750, - "name": "aria-expanded", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1720, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-expanded" - } - }, - { - "id": 1751, - "name": "aria-flowto", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Identifies the next element (or elements) in an alternate reading order of content which, at the user's discretion,\nallows assistive technology to override the general default of reading in document source order." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1725, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-flowto" - } - }, - { - "id": 1752, - "name": "aria-grabbed", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates an element's \"grabbed\" state in a drag-and-drop operation." - } - ], - "blockTags": [ - { - "tag": "@deprecated", - "content": [ - { - "kind": "text", - "text": "in ARIA 1.1" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1730, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-grabbed" - } - }, - { - "id": 1753, - "name": "aria-haspopup", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1732, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "boolean" - }, - { - "type": "literal", - "value": "dialog" - }, - { - "type": "literal", - "value": "menu" - }, - { - "type": "literal", - "value": "grid" - }, - { - "type": "literal", - "value": "listbox" - }, - { - "type": "literal", - "value": "false" - }, - { - "type": "literal", - "value": "true" - }, - { - "type": "literal", - "value": "tree" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-haspopup" - } - }, - { - "id": 1754, - "name": "aria-hidden", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates whether the element is exposed to an accessibility API." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-disabled." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1737, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-hidden" - } - }, - { - "id": 1755, - "name": "aria-invalid", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates the entered value does not conform to the format expected by the application." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-errormessage." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1742, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "boolean" - }, - { - "type": "literal", - "value": "false" - }, - { - "type": "literal", - "value": "true" - }, - { - "type": "literal", - "value": "grammar" - }, - { - "type": "literal", - "value": "spelling" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-invalid" - } - }, - { - "id": 1756, - "name": "aria-keyshortcuts", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1744, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-keyshortcuts" - } - }, - { - "id": 1757, - "name": "aria-label", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines a string value that labels the current element." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-labelledby." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1749, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-label" - } - }, - { - "id": 1758, - "name": "aria-labelledby", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Identifies the element (or elements) that labels the current element." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-describedby." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1754, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-labelledby" - } - }, - { - "id": 1759, - "name": "aria-level", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines the hierarchical level of an element within a structure." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1756, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-level" - } - }, - { - "id": 1760, - "name": "aria-live", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1758, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "off" - }, - { - "type": "literal", - "value": "assertive" - }, - { - "type": "literal", - "value": "polite" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-live" - } - }, - { - "id": 1761, - "name": "aria-modal", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates whether an element is modal when displayed." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1760, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-modal" - } - }, - { - "id": 1762, - "name": "aria-multiline", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates whether a text box accepts multiple lines of input or only a single line." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1762, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-multiline" - } - }, - { - "id": 1763, - "name": "aria-multiselectable", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates that the user may select more than one item from the current selectable descendants." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1764, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-multiselectable" - } - }, - { - "id": 1764, - "name": "aria-orientation", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1766, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "horizontal" - }, - { - "type": "literal", - "value": "vertical" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-orientation" - } - }, - { - "id": 1765, - "name": "aria-owns", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship\nbetween DOM elements where the DOM hierarchy cannot be used to represent the relationship." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-controls." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1772, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-owns" - } - }, - { - "id": 1766, - "name": "aria-placeholder", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.\nA hint could be a sample value or a brief description of the expected format." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1777, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-placeholder" - } - }, - { - "id": 1767, - "name": "aria-posinset", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines an element's number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-setsize." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1782, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-posinset" - } - }, - { - "id": 1768, - "name": "aria-pressed", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates the current \"pressed\" state of toggle buttons." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-checked" - }, - { - "kind": "text", - "text": "\n" - }, - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-selected." - }, - { - "kind": "text", - "text": "\n" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1787, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "boolean" - }, - { - "type": "literal", - "value": "mixed" - }, - { - "type": "literal", - "value": "false" - }, - { - "type": "literal", - "value": "true" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-pressed" - } - }, - { - "id": 1769, - "name": "aria-readonly", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates that the element is not editable, but is otherwise operable." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-disabled." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1792, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-readonly" - } - }, - { - "id": 1770, - "name": "aria-relevant", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-atomic." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1797, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "text" - }, - { - "type": "literal", - "value": "all" - }, - { - "type": "literal", - "value": "additions" - }, - { - "type": "literal", - "value": "additions removals" - }, - { - "type": "literal", - "value": "additions text" - }, - { - "type": "literal", - "value": "removals" - }, - { - "type": "literal", - "value": "removals additions" - }, - { - "type": "literal", - "value": "removals text" - }, - { - "type": "literal", - "value": "text additions" - }, - { - "type": "literal", - "value": "text removals" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-relevant" - } - }, - { - "id": 1771, - "name": "aria-required", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates that user input is required on the element before a form may be submitted." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1799, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-required" - } - }, - { - "id": 1772, - "name": "aria-roledescription", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines a human-readable, author-localized description for the role of an element." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1801, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-roledescription" - } - }, - { - "id": 1773, - "name": "aria-rowcount", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines the total number of rows in a table, grid, or treegrid." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-rowindex." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1806, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-rowcount" - } - }, - { - "id": 1774, - "name": "aria-rowindex", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines an element's row index or position with respect to the total number of rows within a table, grid, or treegrid." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-rowcount" - }, - { - "kind": "text", - "text": "\n" - }, - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-rowspan." - }, - { - "kind": "text", - "text": "\n" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1811, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-rowindex" - } - }, - { - "id": 1775, - "name": "aria-rowindextext", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines a human readable text alternative of aria-rowindex." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-colindextext." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1816, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-rowindextext" - } - }, - { - "id": 1776, - "name": "aria-rowspan", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-rowindex" - }, - { - "kind": "text", - "text": "\n" - }, - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-colspan." - }, - { - "kind": "text", - "text": "\n" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1821, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-rowspan" - } - }, - { - "id": 1777, - "name": "aria-selected", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates the current \"selected\" state of various widgets." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-checked" - }, - { - "kind": "text", - "text": "\n" - }, - { - "kind": "text", - "text": " - " - }, - { - "kind": "text", - "text": "aria-pressed." - }, - { - "kind": "text", - "text": "\n" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1826, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-selected" - } - }, - { - "id": 1778, - "name": "aria-setsize", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-posinset." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1831, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-setsize" - } - }, - { - "id": 1779, - "name": "aria-sort", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Indicates if items in a table or grid are sorted in ascending or descending order." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1833, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "other" - }, - { - "type": "literal", - "value": "none" - }, - { - "type": "literal", - "value": "ascending" - }, - { - "type": "literal", - "value": "descending" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-sort" - } - }, - { - "id": 1780, - "name": "aria-valuemax", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines the maximum allowed value for a range widget." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1835, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-valuemax" - } - }, - { - "id": 1781, - "name": "aria-valuemin", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines the minimum allowed value for a range widget." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1837, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-valuemin" - } - }, - { - "id": 1782, - "name": "aria-valuenow", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines the current value for a range widget." - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "aria-valuetext." - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1842, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-valuenow" - } - }, - { - "id": 1783, - "name": "aria-valuetext", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Defines the human readable text alternative of aria-valuenow for a range widget." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1844, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.aria-valuetext" - } - }, - { - "id": 1784, - "name": "as", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 165, - "character": 4 - }, - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 153, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "As" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "As", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.as" - } - }, - { - "id": 1785, - "name": "autoCapitalize", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1967, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.autoCapitalize" - } - }, - { - "id": 1786, - "name": "autoCorrect", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1968, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.autoCorrect" - } - }, - { - "id": 1787, - "name": "autoFocus", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1929, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.autoFocus" - } - }, - { - "id": 1788, - "name": "autoSave", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1969, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.autoSave" - } - }, - { - "id": 1789, - "name": "background", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 44, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Background" - }, - "typeArguments": [ - { - "type": "union", - "types": [ - { - "type": "literal", - "value": 0 - }, - { - "type": "intersection", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reflection", - "declaration": { - "id": 1790, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - ] - } - ] - } - ], - "name": "Background", - "package": "csstype", - "qualifiedName": "Property.Background" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.background" - } - }, - { - "id": 1791, - "name": "backgroundColor", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 45, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Color" - }, - "name": "Color", - "package": "csstype", - "qualifiedName": "Property.Color" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.backgroundColor" - } - }, - { - "id": 1792, - "name": "bg", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 43, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Background" - }, - "typeArguments": [ - { - "type": "union", - "types": [ - { - "type": "literal", - "value": 0 - }, - { - "type": "intersection", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reflection", - "declaration": { - "id": 1793, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - ] - } - ] - } - ], - "name": "Background", - "package": "csstype", - "qualifiedName": "Property.Background" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.bg" - } - }, - { - "id": 1794, - "name": "border", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 107, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.border" - } - }, - { - "id": 1795, - "name": "borderBottom", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 110, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderBottom" - } - }, - { - "id": 1796, - "name": "borderBottomColor", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 116, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Color" - }, - "name": "Color", - "package": "csstype", - "qualifiedName": "Property.Color" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderBottomColor" - } - }, - { - "id": 1797, - "name": "borderColor", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 113, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Color" - }, - "name": "Color", - "package": "csstype", - "qualifiedName": "Property.Color" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderColor" - } - }, - { - "id": 1798, - "name": "borderLeft", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 111, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderLeft" - } - }, - { - "id": 1799, - "name": "borderLeftColor", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 117, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Color" - }, - "name": "Color", - "package": "csstype", - "qualifiedName": "Property.Color" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderLeftColor" - } - }, - { - "id": 1800, - "name": "borderRadius", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 118, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderRadius" - } - }, - { - "id": 1801, - "name": "borderRight", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 109, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderRight" - } - }, - { - "id": 1802, - "name": "borderRightColor", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 115, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Color" - }, - "name": "Color", - "package": "csstype", - "qualifiedName": "Property.Color" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderRightColor" - } - }, - { - "id": 1803, - "name": "borderTop", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 108, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderTop" - } - }, - { - "id": 1804, - "name": "borderTopColor", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 114, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Color" - }, - "name": "Color", - "package": "csstype", - "qualifiedName": "Property.Color" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderTopColor" - } - }, - { - "id": 1805, - "name": "borderWidth", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 112, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "StringOrNumber" - }, - "name": "StringOrNumber", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.borderWidth" - } - }, - { - "id": 1806, - "name": "bottom", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 125, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.bottom" - } - }, - { - "id": 1807, - "name": "boxShadow", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 130, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "BoxShadowValue" - }, - "name": "BoxShadowValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.boxShadow" - } - }, - { - "id": 1808, - "name": "children", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1421, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.children" - } - }, - { - "id": 1809, - "name": "className", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1930, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.className" - } - }, - { - "id": 1810, - "name": "color", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 42, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Color" - }, - "name": "Color", - "package": "csstype", - "qualifiedName": "Property.Color" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.color" - } - }, - { - "id": 1811, - "name": "columnGap", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 78, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.ColumnGap" - }, - "typeArguments": [ - { - "type": "union", - "types": [ - { - "type": "literal", - "value": 0 - }, - { - "type": "intersection", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reflection", - "declaration": { - "id": 1812, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - ] - } - ] - } - ], - "name": "ColumnGap", - "package": "csstype", - "qualifiedName": "Property.ColumnGap" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.columnGap" - } - }, - { - "id": 1813, - "name": "content", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1955, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.content" - } - }, - { - "id": 1814, - "name": "contentEditable", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1931, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "inherit" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.contentEditable" - } - }, - { - "id": 1815, - "name": "contextMenu", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1932, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.contextMenu" - } - }, - { - "id": 1816, - "name": "css", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "自定义样式,传入 css`` 的结果" - } - ] - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 150, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "Interpolation" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "Interpolation", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.css" - } - }, - { - "id": 1817, - "name": "dangerouslySetInnerHTML", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1422, - "character": 8 - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 1818, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "children": [ - { - "id": 1819, - "name": "__html", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1425, - "character": 12 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/global.d.ts", - "qualifiedName": "TrustedHTML" - }, - "name": "TrustedHTML", - "package": "@types/react" - } - ] - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1819 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1422, - "character": 34 - } - ] - } - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.dangerouslySetInnerHTML" - } - }, - { - "id": 1820, - "name": "datatype", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1956, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.datatype" - } - }, - { - "id": 1821, - "name": "defaultChecked", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1922, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.defaultChecked" - } - }, - { - "id": 1822, - "name": "defaultValue", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1923, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "intrinsic", - "name": "number" - }, - { - "type": "typeOperator", - "operator": "readonly", - "target": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - } - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.defaultValue" - } - }, - { - "id": 1823, - "name": "dir", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1933, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.dir" - } - }, - { - "id": 1824, - "name": "display", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 56, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Display" - }, - "name": "Display", - "package": "csstype", - "qualifiedName": "Property.Display" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.display" - } - }, - { - "id": 1825, - "name": "doc", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "文档地址" - } - ], - "blockTags": [ - { - "tag": "@deprecated", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 78, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L78" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 1826, - "name": "draggable", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1934, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.draggable" - } - }, - { - "id": 1827, - "name": "flex", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 81, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Flex" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "Length" - }, - "name": "Length", - "package": "coral-system" - } - ], - "name": "Flex", - "package": "csstype", - "qualifiedName": "Property.Flex" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.flex" - } - }, - { - "id": 1828, - "name": "flexBasis", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 84, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.FlexBasis" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "Length" - }, - "name": "Length", - "package": "coral-system" - } - ], - "name": "FlexBasis", - "package": "csstype", - "qualifiedName": "Property.FlexBasis" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.flexBasis" - } - }, - { - "id": 1829, - "name": "flexDirection", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 77, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.FlexDirection" - }, - "name": "FlexDirection", - "package": "csstype", - "qualifiedName": "Property.FlexDirection" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.flexDirection" - } - }, - { - "id": 1830, - "name": "flexGrow", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 82, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.FlexGrow" - }, - "name": "FlexGrow", - "package": "csstype", - "qualifiedName": "Property.FlexGrow" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.flexGrow" - } - }, - { - "id": 1831, - "name": "flexShrink", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 83, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.FlexShrink" - }, - "name": "FlexShrink", - "package": "csstype", - "qualifiedName": "Property.FlexShrink" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.flexShrink" - } - }, - { - "id": 1832, - "name": "flexWrap", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 76, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.FlexWrap" - }, - "name": "FlexWrap", - "package": "csstype", - "qualifiedName": "Property.FlexWrap" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.flexWrap" - } - }, - { - "id": 1833, - "name": "fontFamily", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 63, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.FontFamily" - }, - "name": "FontFamily", - "package": "csstype", - "qualifiedName": "Property.FontFamily" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.fontFamily" - } - }, - { - "id": 1834, - "name": "fontSize", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 67, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.fontSize" - } - }, - { - "id": 1835, - "name": "fontStyle", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 64, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.FontStyle" - }, - "name": "FontStyle", - "package": "csstype", - "qualifiedName": "Property.FontStyle" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.fontStyle" - } - }, - { - "id": 1836, - "name": "fontWeight", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 68, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.FontWeight" - }, - "name": "FontWeight", - "package": "csstype", - "qualifiedName": "Property.FontWeight" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.fontWeight" - } - }, - { - "id": 1837, - "name": "gap", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 80, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Gap" - }, - "typeArguments": [ - { - "type": "union", - "types": [ - { - "type": "literal", - "value": 0 - }, - { - "type": "intersection", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reflection", - "declaration": { - "id": 1838, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - ] - } - ] - } - ], - "name": "Gap", - "package": "csstype", - "qualifiedName": "Property.Gap" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gap" - } - }, - { - "id": 1839, - "name": "gridArea", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 99, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridArea" - }, - "name": "GridArea", - "package": "csstype", - "qualifiedName": "Property.GridArea" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridArea" - } - }, - { - "id": 1840, - "name": "gridColumn", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 93, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridColumn" - }, - "name": "GridColumn", - "package": "csstype", - "qualifiedName": "Property.GridColumn" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridColumn" - } - }, - { - "id": 1841, - "name": "gridColumnEnd", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 95, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridColumnEnd" - }, - "name": "GridColumnEnd", - "package": "csstype", - "qualifiedName": "Property.GridColumnEnd" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridColumnEnd" - } - }, - { - "id": 1842, - "name": "gridColumnGap", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 92, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridColumnGap" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "Length" - }, - "name": "Length", - "package": "coral-system" - } - ], - "name": "GridColumnGap", - "package": "csstype", - "qualifiedName": "Property.GridColumnGap" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridColumnGap" - } - }, - { - "id": 1843, - "name": "gridColumnStart", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 94, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridColumnStart" - }, - "name": "GridColumnStart", - "package": "csstype", - "qualifiedName": "Property.GridColumnStart" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridColumnStart" - } - }, - { - "id": 1844, - "name": "gridGap", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 90, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridGap" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "Length" - }, - "name": "Length", - "package": "coral-system" - } - ], - "name": "GridGap", - "package": "csstype", - "qualifiedName": "Property.GridGap" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridGap" - } - }, - { - "id": 1845, - "name": "gridRow", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 96, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridRow" - }, - "name": "GridRow", - "package": "csstype", - "qualifiedName": "Property.GridRow" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridRow" - } - }, - { - "id": 1846, - "name": "gridRowEnd", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 98, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridRowEnd" - }, - "name": "GridRowEnd", - "package": "csstype", - "qualifiedName": "Property.GridRowEnd" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridRowEnd" - } - }, - { - "id": 1847, - "name": "gridRowGap", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 91, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridRowGap" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "Length" - }, - "name": "Length", - "package": "coral-system" - } - ], - "name": "GridRowGap", - "package": "csstype", - "qualifiedName": "Property.GridRowGap" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridRowGap" - } - }, - { - "id": 1848, - "name": "gridRowStart", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 97, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridRowStart" - }, - "name": "GridRowStart", - "package": "csstype", - "qualifiedName": "Property.GridRowStart" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridRowStart" - } - }, - { - "id": 1849, - "name": "gridTemplateAreas", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 102, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridTemplateAreas" - }, - "name": "GridTemplateAreas", - "package": "csstype", - "qualifiedName": "Property.GridTemplateAreas" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridTemplateAreas" - } - }, - { - "id": 1850, - "name": "gridTemplateColumns", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 101, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridTemplateColumns" - }, - "typeArguments": [ - { - "type": "union", - "types": [ - { - "type": "literal", - "value": 0 - }, - { - "type": "intersection", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reflection", - "declaration": { - "id": 1851, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - ] - } - ] - } - ], - "name": "GridTemplateColumns", - "package": "csstype", - "qualifiedName": "Property.GridTemplateColumns" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridTemplateColumns" - } - }, - { - "id": 1852, - "name": "gridTemplateRows", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 100, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.GridTemplateRows" - }, - "typeArguments": [ - { - "type": "union", - "types": [ - { - "type": "literal", - "value": 0 - }, - { - "type": "intersection", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reflection", - "declaration": { - "id": 1853, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - ] - } - ] - } - ], - "name": "GridTemplateRows", - "package": "csstype", - "qualifiedName": "Property.GridTemplateRows" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.gridTemplateRows" - } - }, - { - "id": 1854, - "name": "height", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 52, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "StringOrNumber" - }, - "name": "StringOrNumber", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.height" - } - }, - { - "id": 1855, - "name": "hidden", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1935, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.hidden" - } - }, - { - "id": 1856, - "name": "icon", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "侧边栏图标" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 237, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L237" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Omit.icon" - } - }, - { - "id": 1857, - "name": "id", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1936, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.id" - } - }, - { - "id": 1858, - "name": "inlist", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1957, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "any" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.inlist" - } - }, - { - "id": 1859, - "name": "inputMode", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Hints at the type of data that might be entered by the user while editing the element or its contents" - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "https://html.spec.whatwg.org/multipage/interaction.html#input-modalities:-the-inputmode-attribute" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1985, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "search" - }, - { - "type": "literal", - "value": "text" - }, - { - "type": "literal", - "value": "none" - }, - { - "type": "literal", - "value": "tel" - }, - { - "type": "literal", - "value": "url" - }, - { - "type": "literal", - "value": "email" - }, - { - "type": "literal", - "value": "numeric" - }, - { - "type": "literal", - "value": "decimal" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.inputMode" - } - }, - { - "id": 1860, - "name": "is", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Specify that a standard HTML element should behave like a defined custom built-in element" - } - ], - "blockTags": [ - { - "tag": "@see", - "content": [ - { - "kind": "text", - "text": "https://html.spec.whatwg.org/multipage/custom-elements.html#attr-is" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1990, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.is" - } - }, - { - "id": 1861, - "name": "isFloat", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否为浮动面板" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 82, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L82" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 1862, - "name": "itemID", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1974, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.itemID" - } - }, - { - "id": 1863, - "name": "itemProp", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1971, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.itemProp" - } - }, - { - "id": 1864, - "name": "itemRef", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1975, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.itemRef" - } - }, - { - "id": 1865, - "name": "itemScope", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1972, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.itemScope" - } - }, - { - "id": 1866, - "name": "itemType", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1973, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.itemType" - } - }, - { - "id": 1867, - "name": "justifyContent", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 75, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.JustifyContent" - }, - "name": "JustifyContent", - "package": "csstype", - "qualifiedName": "Property.JustifyContent" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.justifyContent" - } - }, - { - "id": 1868, - "name": "justifyItems", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 74, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.JustifyItems" - }, - "name": "JustifyItems", - "package": "csstype", - "qualifiedName": "Property.JustifyItems" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.justifyItems" - } - }, - { - "id": 1869, - "name": "justifySelf", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 85, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.JustifySelf" - }, - "name": "JustifySelf", - "package": "csstype", - "qualifiedName": "Property.JustifySelf" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.justifySelf" - } - }, - { - "id": 1870, - "name": "key", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "面板唯一标识符" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 68, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L68" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "overwrites": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.key" - } - }, - { - "id": 1871, - "name": "label", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "侧边栏图标说明,推荐使用 2 个字" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 241, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L241" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Omit.label" - } - }, - { - "id": 1872, - "name": "lang", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1937, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.lang" - } - }, - { - "id": 1873, - "name": "left", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 126, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.left" - } - }, - { - "id": 1874, - "name": "letterSpacing", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 65, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.LetterSpacing" - }, - "typeArguments": [ - { - "type": "union", - "types": [ - { - "type": "literal", - "value": 0 - }, - { - "type": "intersection", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reflection", - "declaration": { - "id": 1875, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - ] - } - ] - } - ], - "name": "LetterSpacing", - "package": "csstype", - "qualifiedName": "Property.LetterSpacing" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.letterSpacing" - } - }, - { - "id": 1876, - "name": "lineHeight", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 69, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "StringOrNumber" - }, - "name": "StringOrNumber", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.lineHeight" - } - }, - { - "id": 1877, - "name": "m", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 12, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.m" - } - }, - { - "id": 1878, - "name": "margin", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 13, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.margin" - } - }, - { - "id": 1879, - "name": "marginBottom", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 19, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.marginBottom" - } - }, - { - "id": 1880, - "name": "marginLeft", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 21, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.marginLeft" - } - }, - { - "id": 1881, - "name": "marginRight", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 17, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.marginRight" - } - }, - { - "id": 1882, - "name": "marginTop", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 15, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.marginTop" - } - }, - { - "id": 1883, - "name": "marginX", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 23, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.marginX" - } - }, - { - "id": 1884, - "name": "marginY", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 25, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.marginY" - } - }, - { - "id": 1885, - "name": "maxHeight", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 54, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "StringOrNumber" - }, - "name": "StringOrNumber", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.maxHeight" - } - }, - { - "id": 1886, - "name": "maxWidth", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 51, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "StringOrNumber" - }, - "name": "StringOrNumber", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.maxWidth" - } - }, - { - "id": 1887, - "name": "mb", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 18, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.mb" - } - }, - { - "id": 1888, - "name": "minHeight", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 53, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "StringOrNumber" - }, - "name": "StringOrNumber", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.minHeight" - } - }, - { - "id": 1889, - "name": "minWidth", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 50, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "StringOrNumber" - }, - "name": "StringOrNumber", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.minWidth" - } - }, - { - "id": 1890, - "name": "ml", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 20, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.ml" - } - }, - { - "id": 1891, - "name": "mr", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 16, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.mr" - } - }, - { - "id": 1892, - "name": "mt", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 14, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.mt" - } - }, - { - "id": 1893, - "name": "mx", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 22, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.mx" - } - }, - { - "id": 1894, - "name": "my", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 24, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.my" - } - }, - { - "id": 1895, - "name": "nonce", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1938, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.nonce" - } - }, - { - "id": 1896, - "name": "onAbort", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1481, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onAbort" - } - }, - { - "id": 1897, - "name": "onAbortCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1482, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onAbortCapture" - } - }, - { - "id": 1898, - "name": "onAnimationEnd", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1613, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.AnimationEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "AnimationEventHandler", - "package": "@types/react", - "qualifiedName": "React.AnimationEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onAnimationEnd" - } - }, - { - "id": 1899, - "name": "onAnimationEndCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1614, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.AnimationEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "AnimationEventHandler", - "package": "@types/react", - "qualifiedName": "React.AnimationEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onAnimationEndCapture" - } - }, - { - "id": 1900, - "name": "onAnimationIteration", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1615, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.AnimationEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "AnimationEventHandler", - "package": "@types/react", - "qualifiedName": "React.AnimationEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onAnimationIteration" - } - }, - { - "id": 1901, - "name": "onAnimationIterationCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1616, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.AnimationEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "AnimationEventHandler", - "package": "@types/react", - "qualifiedName": "React.AnimationEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onAnimationIterationCapture" - } - }, - { - "id": 1902, - "name": "onAnimationStart", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1611, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.AnimationEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "AnimationEventHandler", - "package": "@types/react", - "qualifiedName": "React.AnimationEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onAnimationStart" - } - }, - { - "id": 1903, - "name": "onAnimationStartCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1612, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.AnimationEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "AnimationEventHandler", - "package": "@types/react", - "qualifiedName": "React.AnimationEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onAnimationStartCapture" - } - }, - { - "id": 1904, - "name": "onAuxClick", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1529, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onAuxClick" - } - }, - { - "id": 1905, - "name": "onAuxClickCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1530, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onAuxClickCapture" - } - }, - { - "id": 1906, - "name": "onBeforeInput", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1453, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onBeforeInput" - } - }, - { - "id": 1907, - "name": "onBeforeInputCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1454, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onBeforeInputCapture" - } - }, - { - "id": 1908, - "name": "onBlur", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1447, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FocusEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FocusEventHandler", - "package": "@types/react", - "qualifiedName": "React.FocusEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onBlur" - } - }, - { - "id": 1909, - "name": "onBlurCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1448, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FocusEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FocusEventHandler", - "package": "@types/react", - "qualifiedName": "React.FocusEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onBlurCapture" - } - }, - { - "id": 1910, - "name": "onCanPlay", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1483, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCanPlay" - } - }, - { - "id": 1911, - "name": "onCanPlayCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1484, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCanPlayCapture" - } - }, - { - "id": 1912, - "name": "onCanPlayThrough", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1485, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCanPlayThrough" - } - }, - { - "id": 1913, - "name": "onCanPlayThroughCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1486, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCanPlayThroughCapture" - } - }, - { - "id": 1914, - "name": "onChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1451, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onChange" - } - }, - { - "id": 1915, - "name": "onChangeCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1452, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onChangeCapture" - } - }, - { - "id": 1916, - "name": "onClick", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1531, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onClick" - } - }, - { - "id": 1917, - "name": "onClickCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1532, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onClickCapture" - } - }, - { - "id": 1918, - "name": "onCompositionEnd", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1437, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.CompositionEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "CompositionEventHandler", - "package": "@types/react", - "qualifiedName": "React.CompositionEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCompositionEnd" - } - }, - { - "id": 1919, - "name": "onCompositionEndCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1438, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.CompositionEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "CompositionEventHandler", - "package": "@types/react", - "qualifiedName": "React.CompositionEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCompositionEndCapture" - } - }, - { - "id": 1920, - "name": "onCompositionStart", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1439, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.CompositionEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "CompositionEventHandler", - "package": "@types/react", - "qualifiedName": "React.CompositionEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCompositionStart" - } - }, - { - "id": 1921, - "name": "onCompositionStartCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1440, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.CompositionEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "CompositionEventHandler", - "package": "@types/react", - "qualifiedName": "React.CompositionEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCompositionStartCapture" - } - }, - { - "id": 1922, - "name": "onCompositionUpdate", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1441, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.CompositionEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "CompositionEventHandler", - "package": "@types/react", - "qualifiedName": "React.CompositionEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCompositionUpdate" - } - }, - { - "id": 1923, - "name": "onCompositionUpdateCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1442, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.CompositionEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "CompositionEventHandler", - "package": "@types/react", - "qualifiedName": "React.CompositionEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCompositionUpdateCapture" - } - }, - { - "id": 1924, - "name": "onContextMenu", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1533, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onContextMenu" - } - }, - { - "id": 1925, - "name": "onContextMenuCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1534, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onContextMenuCapture" - } - }, - { - "id": 1926, - "name": "onCopy", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1429, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ClipboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ClipboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.ClipboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCopy" - } - }, - { - "id": 1927, - "name": "onCopyCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1430, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ClipboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ClipboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.ClipboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCopyCapture" - } - }, - { - "id": 1928, - "name": "onCut", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1431, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ClipboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ClipboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.ClipboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCut" - } - }, - { - "id": 1929, - "name": "onCutCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1432, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ClipboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ClipboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.ClipboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onCutCapture" - } - }, - { - "id": 1930, - "name": "onDoubleClick", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1535, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDoubleClick" - } - }, - { - "id": 1931, - "name": "onDoubleClickCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1536, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDoubleClickCapture" - } - }, - { - "id": 1932, - "name": "onDrag", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1537, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDrag" - } - }, - { - "id": 1933, - "name": "onDragCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1538, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragCapture" - } - }, - { - "id": 1934, - "name": "onDragEnd", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1539, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragEnd" - } - }, - { - "id": 1935, - "name": "onDragEndCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1540, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragEndCapture" - } - }, - { - "id": 1936, - "name": "onDragEnter", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1541, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragEnter" - } - }, - { - "id": 1937, - "name": "onDragEnterCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1542, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragEnterCapture" - } - }, - { - "id": 1938, - "name": "onDragExit", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1543, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragExit" - } - }, - { - "id": 1939, - "name": "onDragExitCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1544, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragExitCapture" - } - }, - { - "id": 1940, - "name": "onDragLeave", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1545, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragLeave" - } - }, - { - "id": 1941, - "name": "onDragLeaveCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1546, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragLeaveCapture" - } - }, - { - "id": 1942, - "name": "onDragOver", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1547, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragOver" - } - }, - { - "id": 1943, - "name": "onDragOverCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1548, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragOverCapture" - } - }, - { - "id": 1944, - "name": "onDragStart", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1549, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragStart" - } - }, - { - "id": 1945, - "name": "onDragStartCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1550, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDragStartCapture" - } - }, - { - "id": 1946, - "name": "onDrop", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1551, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDrop" - } - }, - { - "id": 1947, - "name": "onDropCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1552, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "DragEventHandler", - "package": "@types/react", - "qualifiedName": "React.DragEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDropCapture" - } - }, - { - "id": 1948, - "name": "onDurationChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1487, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDurationChange" - } - }, - { - "id": 1949, - "name": "onDurationChangeCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1488, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onDurationChangeCapture" - } - }, - { - "id": 1950, - "name": "onEmptied", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1489, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onEmptied" - } - }, - { - "id": 1951, - "name": "onEmptiedCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1490, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onEmptiedCapture" - } - }, - { - "id": 1952, - "name": "onEncrypted", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1491, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onEncrypted" - } - }, - { - "id": 1953, - "name": "onEncryptedCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1492, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onEncryptedCapture" - } - }, - { - "id": 1954, - "name": "onEnded", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1493, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onEnded" - } - }, - { - "id": 1955, - "name": "onEndedCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1494, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onEndedCapture" - } - }, - { - "id": 1956, - "name": "onError", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1467, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onError" - } - }, - { - "id": 1957, - "name": "onErrorCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1468, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onErrorCapture" - } - }, - { - "id": 1958, - "name": "onFocus", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1445, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FocusEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FocusEventHandler", - "package": "@types/react", - "qualifiedName": "React.FocusEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onFocus" - } - }, - { - "id": 1959, - "name": "onFocusCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1446, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FocusEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FocusEventHandler", - "package": "@types/react", - "qualifiedName": "React.FocusEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onFocusCapture" - } - }, - { - "id": 1960, - "name": "onGotPointerCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1597, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onGotPointerCapture" - } - }, - { - "id": 1961, - "name": "onGotPointerCaptureCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1598, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onGotPointerCaptureCapture" - } - }, - { - "id": 1962, - "name": "onInput", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1455, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onInput" - } - }, - { - "id": 1963, - "name": "onInputCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1456, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onInputCapture" - } - }, - { - "id": 1964, - "name": "onInvalid", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1461, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onInvalid" - } - }, - { - "id": 1965, - "name": "onInvalidCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1462, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onInvalidCapture" - } - }, - { - "id": 1966, - "name": "onKeyDown", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1471, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.KeyboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "KeyboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.KeyboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onKeyDown" - } - }, - { - "id": 1967, - "name": "onKeyDownCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1472, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.KeyboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "KeyboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.KeyboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onKeyDownCapture" - } - }, - { - "id": 1968, - "name": "onKeyPress", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [], - "blockTags": [ - { - "tag": "@deprecated", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1474, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.KeyboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "KeyboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.KeyboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onKeyPress" - } - }, - { - "id": 1969, - "name": "onKeyPressCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "comment": { - "summary": [], - "blockTags": [ - { - "tag": "@deprecated", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1476, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.KeyboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "KeyboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.KeyboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onKeyPressCapture" - } - }, - { - "id": 1970, - "name": "onKeyUp", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1477, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.KeyboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "KeyboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.KeyboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onKeyUp" - } - }, - { - "id": 1971, - "name": "onKeyUpCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1478, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.KeyboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "KeyboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.KeyboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onKeyUpCapture" - } - }, - { - "id": 1972, - "name": "onLoad", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1465, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onLoad" - } - }, - { - "id": 1973, - "name": "onLoadCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1466, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onLoadCapture" - } - }, - { - "id": 1974, - "name": "onLoadStart", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1499, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onLoadStart" - } - }, - { - "id": 1975, - "name": "onLoadStartCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1500, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onLoadStartCapture" - } - }, - { - "id": 1976, - "name": "onLoadedData", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1495, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onLoadedData" - } - }, - { - "id": 1977, - "name": "onLoadedDataCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1496, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onLoadedDataCapture" - } - }, - { - "id": 1978, - "name": "onLoadedMetadata", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1497, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onLoadedMetadata" - } - }, - { - "id": 1979, - "name": "onLoadedMetadataCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1498, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onLoadedMetadataCapture" - } - }, - { - "id": 1980, - "name": "onLostPointerCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1599, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onLostPointerCapture" - } - }, - { - "id": 1981, - "name": "onLostPointerCaptureCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1600, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onLostPointerCaptureCapture" - } - }, - { - "id": 1982, - "name": "onMouseDown", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1553, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseDown" - } - }, - { - "id": 1983, - "name": "onMouseDownCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1554, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseDownCapture" - } - }, - { - "id": 1984, - "name": "onMouseEnter", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1555, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseEnter" - } - }, - { - "id": 1985, - "name": "onMouseLeave", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1556, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseLeave" - } - }, - { - "id": 1986, - "name": "onMouseMove", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1557, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseMove" - } - }, - { - "id": 1987, - "name": "onMouseMoveCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1558, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseMoveCapture" - } - }, - { - "id": 1988, - "name": "onMouseOut", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1559, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseOut" - } - }, - { - "id": 1989, - "name": "onMouseOutCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1560, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseOutCapture" - } - }, - { - "id": 1990, - "name": "onMouseOver", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1561, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseOver" - } - }, - { - "id": 1991, - "name": "onMouseOverCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1562, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseOverCapture" - } - }, - { - "id": 1992, - "name": "onMouseUp", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1563, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseUp" - } - }, - { - "id": 1993, - "name": "onMouseUpCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1564, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "MouseEventHandler", - "package": "@types/react", - "qualifiedName": "React.MouseEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onMouseUpCapture" - } - }, - { - "id": 1994, - "name": "onPaste", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1433, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ClipboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ClipboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.ClipboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPaste" - } - }, - { - "id": 1995, - "name": "onPasteCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1434, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ClipboardEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ClipboardEventHandler", - "package": "@types/react", - "qualifiedName": "React.ClipboardEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPasteCapture" - } - }, - { - "id": 1996, - "name": "onPause", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1501, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPause" - } - }, - { - "id": 1997, - "name": "onPauseCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1502, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPauseCapture" - } - }, - { - "id": 1998, - "name": "onPlay", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1503, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPlay" - } - }, - { - "id": 1999, - "name": "onPlayCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1504, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPlayCapture" - } - }, - { - "id": 2000, - "name": "onPlaying", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1505, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPlaying" - } - }, - { - "id": 2001, - "name": "onPlayingCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1506, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPlayingCapture" - } - }, - { - "id": 2002, - "name": "onPointerCancel", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1587, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerCancel" - } - }, - { - "id": 2003, - "name": "onPointerCancelCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1588, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerCancelCapture" - } - }, - { - "id": 2004, - "name": "onPointerDown", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1581, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerDown" - } - }, - { - "id": 2005, - "name": "onPointerDownCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1582, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerDownCapture" - } - }, - { - "id": 2006, - "name": "onPointerEnter", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1589, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerEnter" - } - }, - { - "id": 2007, - "name": "onPointerEnterCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1590, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerEnterCapture" - } - }, - { - "id": 2008, - "name": "onPointerLeave", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1591, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerLeave" - } - }, - { - "id": 2009, - "name": "onPointerLeaveCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1592, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerLeaveCapture" - } - }, - { - "id": 2010, - "name": "onPointerMove", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1583, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerMove" - } - }, - { - "id": 2011, - "name": "onPointerMoveCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1584, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerMoveCapture" - } - }, - { - "id": 2012, - "name": "onPointerOut", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1595, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerOut" - } - }, - { - "id": 2013, - "name": "onPointerOutCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1596, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerOutCapture" - } - }, - { - "id": 2014, - "name": "onPointerOver", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1593, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerOver" - } - }, - { - "id": 2015, - "name": "onPointerOverCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1594, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerOverCapture" - } - }, - { - "id": 2016, - "name": "onPointerUp", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1585, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerUp" - } - }, - { - "id": 2017, - "name": "onPointerUpCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1586, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PointerEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "PointerEventHandler", - "package": "@types/react", - "qualifiedName": "React.PointerEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onPointerUpCapture" - } - }, - { - "id": 2018, - "name": "onProgress", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1507, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onProgress" - } - }, - { - "id": 2019, - "name": "onProgressCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1508, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onProgressCapture" - } - }, - { - "id": 2020, - "name": "onRateChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1509, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onRateChange" - } - }, - { - "id": 2021, - "name": "onRateChangeCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1510, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onRateChangeCapture" - } - }, - { - "id": 2022, - "name": "onReset", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1457, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onReset" - } - }, - { - "id": 2023, - "name": "onResetCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1458, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onResetCapture" - } - }, - { - "id": 2024, - "name": "onResize", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1511, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onResize" - } - }, - { - "id": 2025, - "name": "onResizeCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1512, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onResizeCapture" - } - }, - { - "id": 2026, - "name": "onScroll", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1603, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.UIEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "UIEventHandler", - "package": "@types/react", - "qualifiedName": "React.UIEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onScroll" - } - }, - { - "id": 2027, - "name": "onScrollCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1604, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.UIEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "UIEventHandler", - "package": "@types/react", - "qualifiedName": "React.UIEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onScrollCapture" - } - }, - { - "id": 2028, - "name": "onSeeked", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1513, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onSeeked" - } - }, - { - "id": 2029, - "name": "onSeekedCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1514, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onSeekedCapture" - } - }, - { - "id": 2030, - "name": "onSeeking", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1515, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onSeeking" - } - }, - { - "id": 2031, - "name": "onSeekingCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1516, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onSeekingCapture" - } - }, - { - "id": 2032, - "name": "onSelect", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1567, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onSelect" - } - }, - { - "id": 2033, - "name": "onSelectCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1568, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onSelectCapture" - } - }, - { - "id": 2034, - "name": "onStalled", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1517, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onStalled" - } - }, - { - "id": 2035, - "name": "onStalledCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1518, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onStalledCapture" - } - }, - { - "id": 2036, - "name": "onSubmit", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1459, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onSubmit" - } - }, - { - "id": 2037, - "name": "onSubmitCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1460, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FormEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "FormEventHandler", - "package": "@types/react", - "qualifiedName": "React.FormEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onSubmitCapture" - } - }, - { - "id": 2038, - "name": "onSuspend", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1519, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onSuspend" - } - }, - { - "id": 2039, - "name": "onSuspendCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1520, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onSuspendCapture" - } - }, - { - "id": 2040, - "name": "onTimeUpdate", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1521, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTimeUpdate" - } - }, - { - "id": 2041, - "name": "onTimeUpdateCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1522, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTimeUpdateCapture" - } - }, - { - "id": 2042, - "name": "onTouchCancel", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1571, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.TouchEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "TouchEventHandler", - "package": "@types/react", - "qualifiedName": "React.TouchEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTouchCancel" - } - }, - { - "id": 2043, - "name": "onTouchCancelCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1572, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.TouchEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "TouchEventHandler", - "package": "@types/react", - "qualifiedName": "React.TouchEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTouchCancelCapture" - } - }, - { - "id": 2044, - "name": "onTouchEnd", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1573, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.TouchEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "TouchEventHandler", - "package": "@types/react", - "qualifiedName": "React.TouchEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTouchEnd" - } - }, - { - "id": 2045, - "name": "onTouchEndCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1574, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.TouchEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "TouchEventHandler", - "package": "@types/react", - "qualifiedName": "React.TouchEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTouchEndCapture" - } - }, - { - "id": 2046, - "name": "onTouchMove", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1575, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.TouchEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "TouchEventHandler", - "package": "@types/react", - "qualifiedName": "React.TouchEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTouchMove" - } - }, - { - "id": 2047, - "name": "onTouchMoveCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1576, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.TouchEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "TouchEventHandler", - "package": "@types/react", - "qualifiedName": "React.TouchEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTouchMoveCapture" - } - }, - { - "id": 2048, - "name": "onTouchStart", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1577, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.TouchEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "TouchEventHandler", - "package": "@types/react", - "qualifiedName": "React.TouchEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTouchStart" - } - }, - { - "id": 2049, - "name": "onTouchStartCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1578, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.TouchEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "TouchEventHandler", - "package": "@types/react", - "qualifiedName": "React.TouchEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTouchStartCapture" - } - }, - { - "id": 2050, - "name": "onTransitionEnd", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1619, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.TransitionEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "TransitionEventHandler", - "package": "@types/react", - "qualifiedName": "React.TransitionEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTransitionEnd" - } - }, - { - "id": 2051, - "name": "onTransitionEndCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1620, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.TransitionEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "TransitionEventHandler", - "package": "@types/react", - "qualifiedName": "React.TransitionEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onTransitionEndCapture" - } - }, - { - "id": 2052, - "name": "onVolumeChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1523, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onVolumeChange" - } - }, - { - "id": 2053, - "name": "onVolumeChangeCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1524, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onVolumeChangeCapture" - } - }, - { - "id": 2054, - "name": "onWaiting", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1525, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onWaiting" - } - }, - { - "id": 2055, - "name": "onWaitingCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1526, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "ReactEventHandler", - "package": "@types/react", - "qualifiedName": "React.ReactEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onWaitingCapture" - } - }, - { - "id": 2056, - "name": "onWheel", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1607, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.WheelEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "WheelEventHandler", - "package": "@types/react", - "qualifiedName": "React.WheelEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onWheel" - } - }, - { - "id": 2057, - "name": "onWheelCapture", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1608, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.WheelEventHandler" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLDivElement" - }, - "name": "HTMLDivElement", - "package": "typescript" - } - ], - "name": "WheelEventHandler", - "package": "@types/react", - "qualifiedName": "React.WheelEventHandler" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.onWheelCapture" - } - }, - { - "id": 2058, - "name": "opacity", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 46, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Opacity" - }, - "name": "Opacity", - "package": "csstype", - "qualifiedName": "Property.Opacity" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.opacity" - } - }, - { - "id": 2059, - "name": "order", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 87, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Order" - }, - "name": "Order", - "package": "csstype", - "qualifiedName": "Property.Order" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.order" - } - }, - { - "id": 2060, - "name": "overflow", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 58, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Overflow" - }, - "name": "Overflow", - "package": "csstype", - "qualifiedName": "Property.Overflow" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.overflow" - } - }, - { - "id": 2061, - "name": "overflowX", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 59, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.OverflowX" - }, - "name": "OverflowX", - "package": "csstype", - "qualifiedName": "Property.OverflowX" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.overflowX" - } - }, - { - "id": 2062, - "name": "overflowY", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 60, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.OverflowY" - }, - "name": "OverflowY", - "package": "csstype", - "qualifiedName": "Property.OverflowY" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.overflowY" - } - }, - { - "id": 2063, - "name": "p", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 26, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.p" - } - }, - { - "id": 2064, - "name": "padding", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 27, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.padding" - } - }, - { - "id": 2065, - "name": "paddingBottom", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 33, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.paddingBottom" - } - }, - { - "id": 2066, - "name": "paddingLeft", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 35, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.paddingLeft" - } - }, - { - "id": 2067, - "name": "paddingRight", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 31, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.paddingRight" - } - }, - { - "id": 2068, - "name": "paddingTop", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 29, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.paddingTop" - } - }, - { - "id": 2069, - "name": "paddingX", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 37, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.paddingX" - } - }, - { - "id": 2070, - "name": "paddingY", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 39, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.paddingY" - } - }, - { - "id": 2071, - "name": "pb", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 32, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.pb" - } - }, - { - "id": 2072, - "name": "pl", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 34, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.pl" - } - }, - { - "id": 2073, - "name": "placeholder", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1939, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.placeholder" - } - }, - { - "id": 2074, - "name": "position", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 121, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.Position" - }, - "name": "Position", - "package": "csstype", - "qualifiedName": "Property.Position" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.position" - } - }, - { - "id": 2075, - "name": "pr", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 30, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.pr" - } - }, - { - "id": 2076, - "name": "prefix", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1958, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.prefix" - } - }, - { - "id": 2077, - "name": "property", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1959, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.property" - } - }, - { - "id": 2078, - "name": "pt", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 28, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.pt" - } - }, - { - "id": 2079, - "name": "px", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 36, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.px" - } - }, - { - "id": 2080, - "name": "py", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 38, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "SpaceTokenValue" - }, - "name": "SpaceTokenValue", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.py" - } - }, - { - "id": 2081, - "name": "radioGroup", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1948, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.radioGroup" - } - }, - { - "id": 2082, - "name": "rel", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1960, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.rel" - } - }, - { - "id": 2083, - "name": "resource", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1961, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.resource" - } - }, - { - "id": 2084, - "name": "results", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1976, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.results" - } - }, - { - "id": 2085, - "name": "rev", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1962, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.rev" - } - }, - { - "id": 2086, - "name": "right", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 124, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.right" - } - }, - { - "id": 2087, - "name": "role", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1951, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.AriaRole" - }, - "name": "AriaRole", - "package": "@types/react", - "qualifiedName": "React.AriaRole" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.role" - } - }, - { - "id": 2088, - "name": "rowGap", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 79, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.RowGap" - }, - "typeArguments": [ - { - "type": "union", - "types": [ - { - "type": "literal", - "value": 0 - }, - { - "type": "intersection", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reflection", - "declaration": { - "id": 2089, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - ] - } - ] - } - ], - "name": "RowGap", - "package": "csstype", - "qualifiedName": "Property.RowGap" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.rowGap" - } - }, - { - "id": 2090, - "name": "security", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1977, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.security" - } - }, - { - "id": 2091, - "name": "showBadge", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否展示徽标" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 245, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L245" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": false - }, - { - "type": "reflection", - "declaration": { - "id": 2092, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2093, - "name": "count", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "展示的数字" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 255, - "character": 8, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L255" - } - ], - "type": { - "type": "intrinsic", - "name": "number" - } - }, - { - "id": 2094, - "name": "dot", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否显示小圆点" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 251, - "character": 8, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L251" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2093, - 2094 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 247, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L247" - } - ] - } - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "Omit.showBadge" - } - }, - { - "id": 2095, - "name": "size", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 55, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/base.d.ts", - "qualifiedName": "StringOrNumber" - }, - "name": "StringOrNumber", - "package": "coral-system" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.size" - } - }, - { - "id": 2096, - "name": "slot", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1940, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.slot" - } - }, - { - "id": 2097, - "name": "spellCheck", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1941, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "Booleanish" - }, - "name": "Booleanish", - "package": "@types/react" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.spellCheck" - } - }, - { - "id": 2098, - "name": "style", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1942, - "character": 8 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.CSSProperties" - }, - "name": "CSSProperties", - "package": "@types/react", - "qualifiedName": "React.CSSProperties" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.style" - } - }, - { - "id": 2099, - "name": "suppressContentEditableWarning", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1924, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.suppressContentEditableWarning" - } - }, - { - "id": 2100, - "name": "suppressHydrationWarning", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1925, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.suppressHydrationWarning" - } - }, - { - "id": 2101, - "name": "tabIndex", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1943, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.tabIndex" - } - }, - { - "id": 2102, - "name": "textAlign", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 66, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.TextAlign" - }, - "name": "TextAlign", - "package": "csstype", - "qualifiedName": "Property.TextAlign" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.textAlign" - } - }, - { - "id": 2103, - "name": "textShadow", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 131, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.TextShadow" - }, - "name": "TextShadow", - "package": "csstype", - "qualifiedName": "Property.TextShadow" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.textShadow" - } - }, - { - "id": 2104, - "name": "title", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "面板标题" - } - ], - "blockTags": [ - { - "tag": "@deprecated", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 73, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L73" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "overwrites": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.title" - } - }, - { - "id": 2105, - "name": "top", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 123, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.top" - } - }, - { - "id": 2106, - "name": "translate", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1945, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "yes" - }, - { - "type": "literal", - "value": "no" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.translate" - } - }, - { - "id": 2107, - "name": "typeof", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1963, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.typeof" - } - }, - { - "id": 2108, - "name": "unselectable", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1978, - "character": 8 - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "on" - }, - { - "type": "literal", - "value": "off" - } - ] - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.unselectable" - } - }, - { - "id": 2109, - "name": "verticalAlign", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 57, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.VerticalAlign" - }, - "typeArguments": [ - { - "type": "union", - "types": [ - { - "type": "literal", - "value": 0 - }, - { - "type": "intersection", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reflection", - "declaration": { - "id": 2110, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - ] - } - ] - } - ], - "name": "VerticalAlign", - "package": "csstype", - "qualifiedName": "Property.VerticalAlign" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.verticalAlign" - } - }, - { - "id": 2111, - "name": "vocab", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 1964, - "character": 8 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.vocab" - } - }, - { - "id": 2112, - "name": "width", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "面板宽度" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 86, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L86" - } - ], - "type": { - "type": "intrinsic", - "name": "number" - }, - "overwrites": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.width" - } - }, - { - "id": 2113, - "name": "zIndex", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true, - "isOptional": true - }, - "sources": [ - { - "fileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "line": 122, - "character": 4 - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/csstype/index.d.ts", - "qualifiedName": "Property.ZIndex" - }, - "name": "ZIndex", - "package": "csstype", - "qualifiedName": "Property.ZIndex" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "HTMLCoralProps.zIndex" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 1726, - 1727, - 1728, - 1729, - 1730, - 1731, - 1732, - 1733, - 1734, - 1735, - 1736, - 1737, - 1738, - 1739, - 1740, - 1741, - 1742, - 1743, - 1744, - 1745, - 1746, - 1747, - 1748, - 1749, - 1750, - 1751, - 1752, - 1753, - 1754, - 1755, - 1756, - 1757, - 1758, - 1759, - 1760, - 1761, - 1762, - 1763, - 1764, - 1765, - 1766, - 1767, - 1768, - 1769, - 1770, - 1771, - 1772, - 1773, - 1774, - 1775, - 1776, - 1777, - 1778, - 1779, - 1780, - 1781, - 1782, - 1783, - 1784, - 1785, - 1786, - 1787, - 1788, - 1789, - 1791, - 1792, - 1794, - 1795, - 1796, - 1797, - 1798, - 1799, - 1800, - 1801, - 1802, - 1803, - 1804, - 1805, - 1806, - 1807, - 1808, - 1809, - 1810, - 1811, - 1813, - 1814, - 1815, - 1816, - 1817, - 1820, - 1821, - 1822, - 1823, - 1824, - 1825, - 1826, - 1827, - 1828, - 1829, - 1830, - 1831, - 1832, - 1833, - 1834, - 1835, - 1836, - 1837, - 1839, - 1840, - 1841, - 1842, - 1843, - 1844, - 1845, - 1846, - 1847, - 1848, - 1849, - 1850, - 1852, - 1854, - 1855, - 1856, - 1857, - 1858, - 1859, - 1860, - 1861, - 1862, - 1863, - 1864, - 1865, - 1866, - 1867, - 1868, - 1869, - 1870, - 1871, - 1872, - 1873, - 1874, - 1876, - 1877, - 1878, - 1879, - 1880, - 1881, - 1882, - 1883, - 1884, - 1885, - 1886, - 1887, - 1888, - 1889, - 1890, - 1891, - 1892, - 1893, - 1894, - 1895, - 1896, - 1897, - 1898, - 1899, - 1900, - 1901, - 1902, - 1903, - 1904, - 1905, - 1906, - 1907, - 1908, - 1909, - 1910, - 1911, - 1912, - 1913, - 1914, - 1915, - 1916, - 1917, - 1918, - 1919, - 1920, - 1921, - 1922, - 1923, - 1924, - 1925, - 1926, - 1927, - 1928, - 1929, - 1930, - 1931, - 1932, - 1933, - 1934, - 1935, - 1936, - 1937, - 1938, - 1939, - 1940, - 1941, - 1942, - 1943, - 1944, - 1945, - 1946, - 1947, - 1948, - 1949, - 1950, - 1951, - 1952, - 1953, - 1954, - 1955, - 1956, - 1957, - 1958, - 1959, - 1960, - 1961, - 1962, - 1963, - 1964, - 1965, - 1966, - 1967, - 1968, - 1969, - 1970, - 1971, - 1972, - 1973, - 1974, - 1975, - 1976, - 1977, - 1978, - 1979, - 1980, - 1981, - 1982, - 1983, - 1984, - 1985, - 1986, - 1987, - 1988, - 1989, - 1990, - 1991, - 1992, - 1993, - 1994, - 1995, - 1996, - 1997, - 1998, - 1999, - 2000, - 2001, - 2002, - 2003, - 2004, - 2005, - 2006, - 2007, - 2008, - 2009, - 2010, - 2011, - 2012, - 2013, - 2014, - 2015, - 2016, - 2017, - 2018, - 2019, - 2020, - 2021, - 2022, - 2023, - 2024, - 2025, - 2026, - 2027, - 2028, - 2029, - 2030, - 2031, - 2032, - 2033, - 2034, - 2035, - 2036, - 2037, - 2038, - 2039, - 2040, - 2041, - 2042, - 2043, - 2044, - 2045, - 2046, - 2047, - 2048, - 2049, - 2050, - 2051, - 2052, - 2053, - 2054, - 2055, - 2056, - 2057, - 2058, - 2059, - 2060, - 2061, - 2062, - 2063, - 2064, - 2065, - 2066, - 2067, - 2068, - 2069, - 2070, - 2071, - 2072, - 2073, - 2074, - 2075, - 2076, - 2077, - 2078, - 2079, - 2080, - 2081, - 2082, - 2083, - 2084, - 2085, - 2086, - 2087, - 2088, - 2090, - 2091, - 2095, - 2096, - 2097, - 2098, - 2099, - 2100, - 2101, - 2102, - 2103, - 2104, - 2105, - 2106, - 2107, - 2108, - 2109, - 2111, - 2112, - 2113 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 62, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L62" - } - ], - "extendedTypes": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Omit" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/sidebar-panel.tsx", - "qualifiedName": "SidebarPanelBarItemProps" - }, - "name": "SidebarPanelBarItemProps", - "package": "@music163/tango-designer" - }, - { - "type": "literal", - "value": "isActive" - } - ], - "name": "Omit", - "package": "typescript" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/coral-system/dist/esm/types/system.d.ts", - "qualifiedName": "HTMLCoralProps" - }, - "typeArguments": [ - { - "type": "literal", - "value": "div" - } - ], - "name": "HTMLCoralProps", - "package": "coral-system" - } - ] - }, - { - "id": 2114, - "name": "SidebarPanelProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 2115, - "name": "children", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/base.ts", - "line": 19, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/base.ts#L19" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "ReactComponentProps.children" - } - }, - { - "id": 2116, - "name": "className", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/base.ts", - "line": 21, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/base.ts#L21" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "ReactComponentProps.className" - } - }, - { - "id": 2117, - "name": "footer", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "底部附加内容" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 59, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L59" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - } - }, - { - "id": 2118, - "name": "panelWidth", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "面板宽度" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 55, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L55" - } - ], - "type": { - "type": "intrinsic", - "name": "number" - } - }, - { - "id": 2119, - "name": "style", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/base.ts", - "line": 20, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/base.ts#L20" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.CSSProperties" - }, - "name": "CSSProperties", - "package": "@types/react", - "qualifiedName": "React.CSSProperties" - }, - "inheritedFrom": { - "type": "reference", - "target": -1, - "name": "ReactComponentProps.style" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2115, - 2116, - 2117, - 2118, - 2119 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 51, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L51" - } - ], - "extendedTypes": [ - { - "type": "reference", - "target": 2561, - "name": "ReactComponentProps", - "package": "@music163/tango-helpers" - } - ] - }, - { - "id": 2120, - "name": "ViewPanelProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 2121, - "name": "children", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/view-panel.tsx", - "line": 11, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/view-panel.tsx#L11" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - } - }, - { - "id": 2122, - "name": "mode", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "视图面板模式,对应 Workspace 的模式" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/view-panel.tsx", - "line": 10, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/view-panel.tsx#L10" - } - ], - "type": { - "type": "reference", - "target": 1016, - "name": "DesignerViewType", - "package": "@music163/tango-core" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2121, - 2122 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/view-panel.tsx", - "line": 6, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/view-panel.tsx#L6" - } - ] - }, - { - "id": 2123, - "name": "CombinedSandboxRef", - "variant": "declaration", - "kind": 2097152, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 30, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L30" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2124, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2125, - "name": "designSandbox", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 31, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L31" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/sandbox/lib/esm/code-sandbox/index.d.ts", - "qualifiedName": "CodeSandbox" - }, - "name": "CodeSandbox", - "package": "@music163/tango-sandbox" - } - }, - { - "id": 2126, - "name": "previewSandbox", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 32, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L32" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/sandbox/lib/esm/code-sandbox/index.d.ts", - "qualifiedName": "CodeSandbox" - }, - "name": "CodeSandbox", - "package": "@music163/tango-sandbox" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2125, - 2126 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 30, - "character": 33, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L30" - } - ] - } - } - }, - { - "id": 2127, - "name": "MenuDataType", - "variant": "declaration", - "kind": 2097152, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 14, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L14" - } - ], - "type": { - "type": "reference", - "target": 2558, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "qualifiedName": "MenuKeyType" - }, - "name": "MenuKeyType", - "package": "@music163/tango-designer" - }, - { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "qualifiedName": "MenuValueType" - }, - "name": "MenuValueType", - "package": "@music163/tango-designer" - } - ], - "name": "PartialRecord", - "package": "@music163/tango-helpers" - } - }, - { - "id": 2128, - "name": "SandboxProps", - "variant": "declaration", - "kind": 2097152, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 19, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L19" - } - ], - "type": { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Omit" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "packages/sandbox/lib/esm/types.d.ts", - "qualifiedName": "CodeSandboxProps" - }, - "name": "CodeSandboxProps", - "package": "@music163/tango-sandbox" - }, - { - "type": "union", - "types": [ - { - "type": "literal", - "value": "files" - }, - { - "type": "literal", - "value": "eventHandlers" - }, - { - "type": "literal", - "value": "onMessage" - } - ] - } - ], - "name": "Omit", - "package": "typescript" - }, - { - "type": "reflection", - "declaration": { - "id": 2129, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2130, - "name": "injectScript", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 24, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L24" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2131, - "name": "isPreview", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 20, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L20" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 2132, - "name": "mode", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 23, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L23" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "single" - }, - { - "type": "literal", - "value": "combined" - } - ] - } - }, - { - "id": 2133, - "name": "onLoad", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 27, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L27" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2134, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 27, - "character": 11, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L27" - } - ], - "signatures": [ - { - "id": 2135, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "parameters": [ - { - "id": 2136, - "name": "config", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "qualifiedName": "SandboxEventHandlerConfig" - }, - "name": "SandboxEventHandlerConfig", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2137, - "name": "onMessage", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 26, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L26" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2138, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 26, - "character": 14, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L26" - } - ], - "signatures": [ - { - "id": 2139, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "parameters": [ - { - "id": 2140, - "name": "data", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - }, - { - "id": 2141, - "name": "config", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "qualifiedName": "SandboxEventHandlerConfig" - }, - "name": "SandboxEventHandlerConfig", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2142, - "name": "onViewChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 25, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L25" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2143, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 25, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L25" - } - ], - "signatures": [ - { - "id": 2144, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "parameters": [ - { - "id": 2145, - "name": "data", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - }, - { - "id": 2146, - "name": "config", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "qualifiedName": "SandboxEventHandlerConfig" - }, - "name": "SandboxEventHandlerConfig", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2147, - "name": "sandboxType", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 22, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L22" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "design" - }, - { - "type": "literal", - "value": "preview" - } - ] - } - }, - { - "id": 2148, - "name": "selectionTools", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 21, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L21" - } - ], - "type": { - "type": "indexedAccess", - "indexType": { - "type": "literal", - "value": "actions" - }, - "objectType": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/simulator/selection.tsx", - "qualifiedName": "SelectionToolsProps" - }, - "name": "SelectionToolsProps", - "package": "@music163/tango-designer" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2130, - 2131, - 2132, - 2133, - 2137, - 2142, - 2147, - 2148 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 19, - "character": 93, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L19" - } - ] - } - } - ] - } - }, - { - "id": 2149, - "name": "WorkspacePanelProps", - "variant": "declaration", - "kind": 2097152, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/workspace-panel.tsx", - "line": 5, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/workspace-panel.tsx#L5" - } - ], - "type": { - "type": "reference", - "target": 2561, - "name": "ReactComponentProps", - "package": "@music163/tango-helpers" - } - }, - { - "id": 2150, - "name": "DRAGGABLE_SELECTOR", - "variant": "declaration", - "kind": 32, - "flags": { - "isConst": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 10, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L10" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "defaultValue": "..." - }, - { - "id": 2151, - "name": "DomQuery", - "variant": "declaration", - "kind": 32, - "flags": { - "isConst": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/dnd-query.ts", - "line": 212, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/dnd-query.ts#L212" - } - ], - "type": { - "type": "query", - "queryType": { - "type": "reference", - "target": 1547, - "name": "DndQuery", - "package": "@music163/tango-designer" - } - }, - "defaultValue": "DndQuery" - }, - { - "id": 2152, - "name": "INTERNAL_SELECTION_TOOLS", - "variant": "declaration", - "kind": 32, - "flags": { - "isConst": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/simulator/selection.tsx", - "line": 24, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/simulator/selection.tsx#L24" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - }, - "defaultValue": "..." - }, - { - "id": 2153, - "name": "CodeEditor", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/editor/editor.tsx", - "line": 31, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/editor/editor.tsx#L31" - } - ], - "signatures": [ - { - "id": 2154, - "name": "CodeEditor", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/editor/editor.tsx", - "line": 32, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/editor/editor.tsx#L32" - } - ], - "parameters": [ - { - "id": 2155, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 1613, - "name": "CodeEditorProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2156, - "name": "CombinedSandbox", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 177, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L177" - } - ], - "signatures": [ - { - "id": 2157, - "name": "CombinedSandbox", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 178, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L178" - } - ], - "parameters": [ - { - "id": 2158, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2128, - "name": "SandboxProps", - "package": "@music163/tango-designer" - } - }, - { - "id": 2159, - "name": "ref", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ForwardedRef" - }, - "typeArguments": [ - { - "type": "reference", - "target": 2123, - "name": "CombinedSandboxRef", - "package": "@music163/tango-designer" - } - ], - "name": "ForwardedRef", - "package": "@types/react", - "qualifiedName": "React.ForwardedRef" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - }, - { - "id": 2160, - "name": "CombinedSandbox", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "**NOTE**: Exotic components are not callable." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 393, - "character": 8 - } - ], - "parameters": [ - { - "id": 2161, - "name": "props", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Omit" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "packages/sandbox/lib/esm/types.d.ts", - "qualifiedName": "CodeSandboxProps" - }, - "name": "CodeSandboxProps", - "package": "@music163/tango-sandbox" - }, - { - "type": "union", - "types": [ - { - "type": "literal", - "value": "files" - }, - { - "type": "literal", - "value": "eventHandlers" - }, - { - "type": "literal", - "value": "onMessage" - } - ] - } - ], - "name": "Omit", - "package": "typescript" - }, - { - "type": "reflection", - "declaration": { - "id": 2162, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2163, - "name": "injectScript", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 24, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L24" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2164, - "name": "isPreview", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 20, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L20" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 2165, - "name": "mode", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 23, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L23" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "single" - }, - { - "type": "literal", - "value": "combined" - } - ] - } - }, - { - "id": 2166, - "name": "onLoad", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 27, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L27" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2167, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 27, - "character": 11, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L27" - } - ], - "signatures": [ - { - "id": 2168, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 27, - "character": 11, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L27" - } - ], - "parameters": [ - { - "id": 2169, - "name": "config", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "qualifiedName": "SandboxEventHandlerConfig" - }, - "name": "SandboxEventHandlerConfig", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2170, - "name": "onMessage", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 26, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L26" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2171, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 26, - "character": 14, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L26" - } - ], - "signatures": [ - { - "id": 2172, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 26, - "character": 14, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L26" - } - ], - "parameters": [ - { - "id": 2173, - "name": "data", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - }, - { - "id": 2174, - "name": "config", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "qualifiedName": "SandboxEventHandlerConfig" - }, - "name": "SandboxEventHandlerConfig", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2175, - "name": "onViewChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 25, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L25" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2176, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 25, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L25" - } - ], - "signatures": [ - { - "id": 2177, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 25, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L25" - } - ], - "parameters": [ - { - "id": 2178, - "name": "data", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - }, - { - "id": 2179, - "name": "config", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "qualifiedName": "SandboxEventHandlerConfig" - }, - "name": "SandboxEventHandlerConfig", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2180, - "name": "sandboxType", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 22, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L22" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "preview" - }, - { - "type": "literal", - "value": "design" - } - ] - } - }, - { - "id": 2181, - "name": "selectionTools", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 21, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L21" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactElement" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - }, - { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSXElementConstructor" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "JSXElementConstructor", - "package": "@types/react", - "qualifiedName": "React.JSXElementConstructor" - } - ] - } - ], - "name": "ReactElement", - "package": "@types/react", - "qualifiedName": "React.ReactElement" - } - ] - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2163, - 2164, - 2165, - 2166, - 2170, - 2175, - 2180, - 2181 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 19, - "character": 93, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L19" - } - ] - } - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.RefAttributes" - }, - "typeArguments": [ - { - "type": "reference", - "target": 2123, - "name": "CombinedSandboxRef", - "package": "@music163/tango-designer" - } - ], - "name": "RefAttributes", - "package": "@types/react", - "qualifiedName": "React.RefAttributes" - } - ] - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - } - } - ] - }, - { - "id": 2182, - "name": "ComponentsView", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 86, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L86" - } - ], - "signatures": [ - { - "id": 2183, - "name": "ComponentsView", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 87, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L87" - } - ], - "parameters": [ - { - "id": 2184, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 1667, - "name": "ComponentsViewProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2185, - "name": "DataSourceView", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/datasource-view/index.tsx", - "line": 9, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/datasource-view/index.tsx#L9" - } - ], - "signatures": [ - { - "id": 2186, - "name": "DataSourceView", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/datasource-view/index.tsx", - "line": 9, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/datasource-view/index.tsx#L9" - } - ], - "parameters": [ - { - "id": 2187, - "name": "props", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Record" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "Record", - "package": "typescript" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2188, - "name": "DependencyView", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/setting-view/dependency-config.tsx", - "line": 45, - "character": 0, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/setting-view/dependency-config.tsx#L45" - } - ], - "signatures": [ - { - "id": 2189, - "name": "DependencyView", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/setting-view/dependency-config.tsx", - "line": 45, - "character": 24, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/setting-view/dependency-config.tsx#L45" - } - ], - "parameters": [ - { - "id": 2190, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/widgets/sidebar/setting-view/dependency-config.tsx", - "qualifiedName": "DependencyConfigProps" - }, - "name": "DependencyConfigProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2191, - "name": "Designer", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/designer.tsx", - "line": 27, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/designer.tsx#L27" - } - ], - "signatures": [ - { - "id": 2192, - "name": "Designer", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "设计器状态和设置容器" - } - ], - "blockTags": [ - { - "tag": "@returns", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/designer.tsx", - "line": 27, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/designer.tsx#L27" - } - ], - "parameters": [ - { - "id": 2193, - "name": "props", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 1685, - "name": "DesignerProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2194, - "name": "DesignerPanel", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/designer-panel.tsx", - "line": 27, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/designer-panel.tsx#L27" - } - ], - "signatures": [ - { - "id": 2195, - "name": "DesignerPanel", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "设计器面板" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/framework/designer-panel.tsx", - "line": 27, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/designer-panel.tsx#L27" - } - ], - "parameters": [ - { - "id": 2196, - "name": "props", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 1677, - "name": "DesignerPanelProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2197, - "name": "DesignerProvider", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/context.ts", - "line": 18, - "character": 7, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/context.ts#L18" - } - ], - "signatures": [ - { - "id": 2198, - "name": "DesignerProvider", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "**NOTE**: Exotic components are not callable." - } - ] - }, - "sources": [ - { - "fileName": "node_modules/@types/react/index.d.ts", - "line": 393, - "character": 8 - } - ], - "parameters": [ - { - "id": 2199, - "name": "props", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ProviderProps" - }, - "typeArguments": [ - { - "type": "reference", - "target": 1692, - "name": "IDesignerContext", - "package": "@music163/tango-designer" - } - ], - "name": "ProviderProps", - "package": "@types/react", - "qualifiedName": "React.ProviderProps" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ReactNode" - }, - "name": "ReactNode", - "package": "@types/react", - "qualifiedName": "React.ReactNode" - } - } - ] - }, - { - "id": 2200, - "name": "HistoryTool", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/history.tsx", - "line": 6, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/history.tsx#L6" - } - ], - "signatures": [ - { - "id": 2201, - "name": "HistoryTool", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/history.tsx", - "line": 6, - "character": 36, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/history.tsx#L6" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2202, - "name": "HistoryView", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/history-view.tsx", - "line": 7, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/history-view.tsx#L7" - } - ], - "signatures": [ - { - "id": 2203, - "name": "HistoryView", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/history-view.tsx", - "line": 7, - "character": 36, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/history-view.tsx#L7" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2204, - "name": "ModeSwitchTool", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/mode-switch.tsx", - "line": 6, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/mode-switch.tsx#L6" - } - ], - "signatures": [ - { - "id": 2205, - "name": "ModeSwitchTool", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/mode-switch.tsx", - "line": 6, - "character": 39, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/mode-switch.tsx#L6" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2206, - "name": "ModelView", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/model-view.tsx", - "line": 13, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/model-view.tsx#L13" - } - ], - "signatures": [ - { - "id": 2207, - "name": "ModelView", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/model-view.tsx", - "line": 13, - "character": 34, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/model-view.tsx#L13" - } - ], - "parameters": [ - { - "id": 2208, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/widgets/sidebar/model-view.tsx", - "qualifiedName": "ModelViewProps" - }, - "name": "ModelViewProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2209, - "name": "PagesView", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/pages-view/index.tsx", - "line": 14, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/pages-view/index.tsx#L14" - } - ], - "signatures": [ - { - "id": 2210, - "name": "PagesView", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/pages-view/index.tsx", - "line": 14, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/pages-view/index.tsx#L14" - } - ], - "parameters": [ - { - "id": 2211, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 1695, - "name": "OutlineViewProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2212, - "name": "PreviewTool", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/preview.tsx", - "line": 6, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/preview.tsx#L6" - } - ], - "signatures": [ - { - "id": 2213, - "name": "PreviewTool", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/preview.tsx", - "line": 6, - "character": 36, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/preview.tsx#L6" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2214, - "name": "RouteSwitchTool", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/route-switch.tsx", - "line": 10, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/route-switch.tsx#L10" - } - ], - "signatures": [ - { - "id": 2215, - "name": "RouteSwitchTool", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/route-switch.tsx", - "line": 10, - "character": 40, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/route-switch.tsx#L10" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2216, - "name": "Sandbox", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 274, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L274" - } - ], - "signatures": [ - { - "id": 2217, - "name": "Sandbox", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sandbox/sandbox.tsx", - "line": 275, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sandbox/sandbox.tsx#L275" - } - ], - "parameters": [ - { - "id": 2218, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2128, - "name": "SandboxProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2219, - "name": "SettingPanel", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/setting-panel.tsx", - "line": 17, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/setting-panel.tsx#L17" - } - ], - "signatures": [ - { - "id": 2220, - "name": "SettingPanel", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/setting-panel.tsx", - "line": 17, - "character": 37, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/setting-panel.tsx#L17" - } - ], - "parameters": [ - { - "id": 2221, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 1697, - "name": "SettingPanelProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2222, - "name": "SettingView", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/setting-view/index.tsx", - "line": 13, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/setting-view/index.tsx#L13" - } - ], - "signatures": [ - { - "id": 2223, - "name": "SettingView", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/setting-view/index.tsx", - "line": 13, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/setting-view/index.tsx#L13" - } - ], - "parameters": [ - { - "id": 2224, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 1723, - "name": "SettingViewProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2225, - "name": "SidebarPanel", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 227, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L227" - } - ], - "signatures": [ - { - "id": 2226, - "name": "SidebarPanel", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/sidebar-panel.tsx", - "line": 136, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/sidebar-panel.tsx#L136" - } - ], - "parameters": [ - { - "id": 2227, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2114, - "name": "SidebarPanelProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2228, - "name": "TogglePanelTool", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/toggle-panel.tsx", - "line": 6, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/toggle-panel.tsx#L6" - } - ], - "signatures": [ - { - "id": 2229, - "name": "TogglePanelTool", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/toggle-panel.tsx", - "line": 6, - "character": 40, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/toggle-panel.tsx#L6" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2230, - "name": "ToolbarPanel", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 24, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L24" - }, - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 89, - "character": 0, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L89" - }, - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 90, - "character": 0, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L90" - } - ], - "signatures": [ - { - "id": 2231, - "name": "ToolbarPanel", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/toolbar-panel.tsx", - "line": 24, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/toolbar-panel.tsx#L24" - } - ], - "parameters": [ - { - "id": 2232, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/toolbar-panel.tsx", - "qualifiedName": "ToolbarPanelProps" - }, - "name": "ToolbarPanelProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2233, - "name": "ViewPanel", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/view-panel.tsx", - "line": 14, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/view-panel.tsx#L14" - } - ], - "signatures": [ - { - "id": 2234, - "name": "ViewPanel", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/view-panel.tsx", - "line": 14, - "character": 34, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/view-panel.tsx#L14" - } - ], - "parameters": [ - { - "id": 2235, - "name": "props", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2120, - "name": "ViewPanelProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2236, - "name": "ViewportRefreshTool", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/viewport-refresh.tsx", - "line": 8, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/viewport-refresh.tsx#L8" - } - ], - "signatures": [ - { - "id": 2237, - "name": "ViewportRefreshTool", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [], - "blockTags": [ - { - "tag": "@deprecated", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/viewport-refresh.tsx", - "line": 8, - "character": 35, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/viewport-refresh.tsx#L8" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2238, - "name": "ViewportSwitchTool", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/viewport-switch.tsx", - "line": 10, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/viewport-switch.tsx#L10" - } - ], - "signatures": [ - { - "id": 2239, - "name": "ViewportSwitchTool", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [], - "blockTags": [ - { - "tag": "@deprecated", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/toolbar/viewport-switch.tsx", - "line": 10, - "character": 43, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/toolbar/viewport-switch.tsx#L10" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2240, - "name": "WorkspacePanel", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/workspace-panel.tsx", - "line": 7, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/workspace-panel.tsx#L7" - } - ], - "signatures": [ - { - "id": 2241, - "name": "WorkspacePanel", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/workspace-panel.tsx", - "line": 7, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/workspace-panel.tsx#L7" - } - ], - "parameters": [ - { - "id": 2242, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": 2561, - "name": "ReactComponentProps", - "package": "@music163/tango-helpers" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.JSX.Element" - }, - "name": "Element", - "package": "@types/react", - "qualifiedName": "React.JSX.Element" - } - } - ] - }, - { - "id": 2243, - "name": "getApiDefaultName", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/datasource-view/interface-config.tsx", - "line": 26, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/datasource-view/interface-config.tsx#L26" - } - ], - "signatures": [ - { - "id": 2244, - "name": "getApiDefaultName", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "将 api 路径转换为默认的驼峰方法名" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/datasource-view/interface-config.tsx", - "line": 26, - "character": 33, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/datasource-view/interface-config.tsx#L26" - } - ], - "parameters": [ - { - "id": 2245, - "name": "url", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ] - }, - { - "id": 2246, - "name": "inferServiceType", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/datasource-view/interface-config.tsx", - "line": 56, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/datasource-view/interface-config.tsx#L56" - } - ], - "signatures": [ - { - "id": 2247, - "name": "inferServiceType", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "根据 url 类型推断方法类型" - } - ] - }, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/datasource-view/interface-config.tsx", - "line": 56, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/datasource-view/interface-config.tsx#L56" - } - ], - "parameters": [ - { - "id": 2248, - "name": "url", - "variant": "param", - "kind": 32768, - "flags": { - "isOptional": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": -1, - "name": "ESFDataSourceType", - "refersToTypeParameter": true - } - } - ] - }, - { - "id": 2249, - "name": "observer", - "variant": "declaration", - "kind": 64, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 5, - "character": 24 - }, - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 8, - "character": 24 - }, - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 9, - "character": 24 - }, - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 10, - "character": 24 - } - ], - "signatures": [ - { - "id": 2250, - "name": "observer", - "variant": "signature", - "kind": 4096, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 5, - "character": 24 - } - ], - "typeParameter": [ - { - "id": 2251, - "name": "P", - "variant": "typeParam", - "kind": 131072, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "object" - } - }, - { - "id": 2252, - "name": "TRef", - "variant": "typeParam", - "kind": 131072, - "flags": { - "isExternal": true - }, - "default": { - "type": "reflection", - "declaration": { - "id": 2253, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - } - ], - "parameters": [ - { - "id": 2254, - "name": "baseComponent", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ForwardRefRenderFunction" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "TRef", - "refersToTypeParameter": true - }, - { - "type": "reference", - "target": -1, - "name": "P", - "refersToTypeParameter": true - } - ], - "name": "ForwardRefRenderFunction", - "package": "@types/react", - "qualifiedName": "React.ForwardRefRenderFunction" - } - }, - { - "id": 2255, - "name": "options", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "qualifiedName": "IObserverOptions" - }, - "name": "IObserverOptions", - "package": "mobx-react-lite" - }, - { - "type": "reflection", - "declaration": { - "id": 2256, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "children": [ - { - "id": 2257, - "name": "forwardRef", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 6, - "character": 4 - } - ], - "type": { - "type": "literal", - "value": true - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2257 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 5, - "character": 146 - } - ] - } - } - ] - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MemoExoticComponent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ForwardRefExoticComponent" - }, - "typeArguments": [ - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PropsWithoutRef" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "P", - "refersToTypeParameter": true - } - ], - "name": "React.PropsWithoutRef", - "package": "@types/react" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.RefAttributes" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "TRef", - "refersToTypeParameter": true - } - ], - "name": "React.RefAttributes", - "package": "@types/react" - } - ] - } - ], - "name": "React.ForwardRefExoticComponent", - "package": "@types/react" - } - ], - "name": "React.MemoExoticComponent", - "package": "@types/react" - } - }, - { - "id": 2258, - "name": "observer", - "variant": "signature", - "kind": 4096, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 8, - "character": 24 - } - ], - "typeParameter": [ - { - "id": 2259, - "name": "P", - "variant": "typeParam", - "kind": 131072, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "object" - } - }, - { - "id": 2260, - "name": "TRef", - "variant": "typeParam", - "kind": 131072, - "flags": { - "isExternal": true - }, - "default": { - "type": "reflection", - "declaration": { - "id": 2261, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - } - ], - "parameters": [ - { - "id": 2262, - "name": "baseComponent", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ForwardRefExoticComponent" - }, - "typeArguments": [ - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PropsWithoutRef" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "P", - "refersToTypeParameter": true - } - ], - "name": "PropsWithoutRef", - "package": "@types/react", - "qualifiedName": "React.PropsWithoutRef" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.RefAttributes" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "TRef", - "refersToTypeParameter": true - } - ], - "name": "RefAttributes", - "package": "@types/react", - "qualifiedName": "React.RefAttributes" - } - ] - } - ], - "name": "ForwardRefExoticComponent", - "package": "@types/react", - "qualifiedName": "React.ForwardRefExoticComponent" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MemoExoticComponent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ForwardRefExoticComponent" - }, - "typeArguments": [ - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PropsWithoutRef" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "P", - "refersToTypeParameter": true - } - ], - "name": "React.PropsWithoutRef", - "package": "@types/react" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.RefAttributes" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "TRef", - "refersToTypeParameter": true - } - ], - "name": "React.RefAttributes", - "package": "@types/react" - } - ] - } - ], - "name": "React.ForwardRefExoticComponent", - "package": "@types/react" - } - ], - "name": "React.MemoExoticComponent", - "package": "@types/react" - } - }, - { - "id": 2263, - "name": "observer", - "variant": "signature", - "kind": 4096, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 9, - "character": 24 - } - ], - "typeParameter": [ - { - "id": 2264, - "name": "P", - "variant": "typeParam", - "kind": 131072, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "object" - } - } - ], - "parameters": [ - { - "id": 2265, - "name": "baseComponent", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FunctionComponent" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "P", - "refersToTypeParameter": true - } - ], - "name": "FunctionComponent", - "package": "@types/react", - "qualifiedName": "React.FunctionComponent" - } - }, - { - "id": 2266, - "name": "options", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true, - "isOptional": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "qualifiedName": "IObserverOptions" - }, - "name": "IObserverOptions", - "package": "mobx-react-lite" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FunctionComponent" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "P", - "refersToTypeParameter": true - } - ], - "name": "React.FunctionComponent", - "package": "@types/react" - } - }, - { - "id": 2267, - "name": "observer", - "variant": "signature", - "kind": 4096, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 10, - "character": 24 - } - ], - "typeParameter": [ - { - "id": 2268, - "name": "C", - "variant": "typeParam", - "kind": 131072, - "flags": { - "isExternal": true - }, - "type": { - "type": "union", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.FunctionComponent" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "FunctionComponent", - "package": "@types/react", - "qualifiedName": "React.FunctionComponent" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ForwardRefRenderFunction" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - }, - { - "type": "reflection", - "declaration": { - "id": 2269, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - } - } - } - ], - "name": "ForwardRefRenderFunction", - "package": "@types/react", - "qualifiedName": "React.ForwardRefRenderFunction" - } - ] - } - }, - { - "id": 2270, - "name": "Options", - "variant": "typeParam", - "kind": 131072, - "flags": { - "isExternal": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "qualifiedName": "IObserverOptions" - }, - "name": "IObserverOptions", - "package": "mobx-react-lite" - } - } - ], - "parameters": [ - { - "id": 2271, - "name": "baseComponent", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "reference", - "target": -1, - "name": "C", - "refersToTypeParameter": true - } - }, - { - "id": 2272, - "name": "options", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true, - "isOptional": true - }, - "type": { - "type": "reference", - "target": -1, - "name": "Options", - "refersToTypeParameter": true - } - } - ], - "type": { - "type": "conditional", - "checkType": { - "type": "reference", - "target": -1, - "name": "Options", - "refersToTypeParameter": true - }, - "extendsType": { - "type": "reflection", - "declaration": { - "id": 2273, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "children": [ - { - "id": 2274, - "name": "forwardRef", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 11, - "character": 4 - } - ], - "type": { - "type": "literal", - "value": true - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2274 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 10, - "character": 199 - } - ] - } - }, - "trueType": { - "type": "conditional", - "checkType": { - "type": "reference", - "target": -1, - "name": "C", - "refersToTypeParameter": true - }, - "extendsType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ForwardRefRenderFunction" - }, - "typeArguments": [ - { - "type": "inferred", - "name": "TRef" - }, - { - "type": "inferred", - "name": "P" - } - ], - "name": "React.ForwardRefRenderFunction", - "package": "@types/react" - }, - "trueType": { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": -1, - "name": "C", - "refersToTypeParameter": true - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MemoExoticComponent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ForwardRefExoticComponent" - }, - "typeArguments": [ - { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.PropsWithoutRef" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "P", - "refersToTypeParameter": true - } - ], - "name": "React.PropsWithoutRef", - "package": "@types/react" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.RefAttributes" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "TRef", - "refersToTypeParameter": true - } - ], - "name": "React.RefAttributes", - "package": "@types/react" - } - ] - } - ], - "name": "React.ForwardRefExoticComponent", - "package": "@types/react" - } - ], - "name": "React.MemoExoticComponent", - "package": "@types/react" - } - ] - }, - "falseType": { - "type": "intrinsic", - "name": "never" - } - }, - "falseType": { - "type": "intersection", - "types": [ - { - "type": "reference", - "target": -1, - "name": "C", - "refersToTypeParameter": true - }, - { - "type": "reflection", - "declaration": { - "id": 2275, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "children": [ - { - "id": 2276, - "name": "displayName", - "variant": "declaration", - "kind": 1024, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 13, - "character": 4 - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2276 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/mobx-react-lite/dist/observer.d.ts", - "line": 12, - "character": 199 - } - ] - } - } - ] - } - } - } - ] - }, - { - "id": 2277, - "name": "registerSetter", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/setting-form/src/form-item.tsx", - "line": 242, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/form-item.tsx#L242" - } - ], - "signatures": [ - { - "id": 2278, - "name": "registerSetter", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Setter 注册" - } - ] - }, - "sources": [ - { - "fileName": "packages/setting-form/src/form-item.tsx", - "line": 242, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/setting-form/src/form-item.tsx#L242" - } - ], - "parameters": [ - { - "id": 2279, - "name": "options", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/setting-form/src/form-item.tsx", - "qualifiedName": "FormItemCreateOptionsType" - }, - "name": "FormItemCreateOptionsType", - "package": "@music163/tango-setting-form" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - }, - { - "id": 2280, - "name": "useDesigner", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/context/lib/esm/context.d.ts", - "line": 12, - "character": 21 - } - ], - "signatures": [ - { - "id": 2281, - "name": "useDesigner", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/context/lib/esm/context.d.ts", - "line": 12, - "character": 34 - } - ], - "type": { - "type": "reference", - "target": 37, - "name": "Designer", - "package": "@music163/tango-core" - } - } - ] - }, - { - "id": 2282, - "name": "useDnd", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 34, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L34" - } - ], - "signatures": [ - { - "id": 2283, - "name": "useDnd", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 34, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L34" - } - ], - "parameters": [ - { - "id": 2284, - "name": "__namedParameters", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "qualifiedName": "UseDndProps" - }, - "name": "UseDndProps", - "package": "@music163/tango-designer" - } - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "reflection", - "declaration": { - "id": 2285, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2286, - "name": "onClick", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 414, - "character": 51, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L414" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2287, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 121, - "character": 18, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L121" - } - ], - "signatures": [ - { - "id": 2288, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 121, - "character": 18, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L121" - } - ], - "parameters": [ - { - "id": 2289, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "Element" - }, - "name": "Element", - "package": "typescript" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "MouseEvent" - }, - "name": "MouseEvent", - "package": "typescript" - } - ], - "name": "MouseEvent", - "package": "@types/react", - "qualifiedName": "React.MouseEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2290, - "name": "onDragEnd", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 421, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L421" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2291, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 154, - "character": 20, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L154" - } - ], - "signatures": [ - { - "id": 2292, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 154, - "character": 20, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L154" - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2293, - "name": "onDragEnter", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 418, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L418" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2294, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 177, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L177" - } - ], - "signatures": [ - { - "id": 2295, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 177, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L177" - } - ], - "parameters": [ - { - "id": 2296, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLElement" - }, - "name": "HTMLElement", - "package": "typescript" - } - ], - "name": "DragEvent", - "package": "@types/react", - "qualifiedName": "React.DragEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2297, - "name": "onDragOver", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 419, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L419" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2298, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 342, - "character": 21, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L342" - } - ], - "signatures": [ - { - "id": 2299, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 342, - "character": 21, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L342" - } - ], - "parameters": [ - { - "id": 2300, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLElement" - }, - "name": "HTMLElement", - "package": "typescript" - } - ], - "name": "DragEvent", - "package": "@types/react", - "qualifiedName": "React.DragEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2301, - "name": "onDragStart", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 417, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L417" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2302, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 128, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L128" - } - ], - "signatures": [ - { - "id": 2303, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 128, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L128" - } - ], - "parameters": [ - { - "id": 2304, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "Element" - }, - "name": "Element", - "package": "typescript" - } - ], - "name": "DragEvent", - "package": "@types/react", - "qualifiedName": "React.DragEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2305, - "name": "onDrop", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 420, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L420" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2306, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 160, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L160" - } - ], - "signatures": [ - { - "id": 2307, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 160, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L160" - } - ], - "parameters": [ - { - "id": 2308, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "Element" - }, - "name": "Element", - "package": "typescript" - } - ], - "name": "DragEvent", - "package": "@types/react", - "qualifiedName": "React.DragEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2309, - "name": "onKeyDown", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 423, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L423" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2310, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 373, - "character": 20, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L373" - } - ], - "signatures": [ - { - "id": 2311, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 373, - "character": 20, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L373" - } - ], - "parameters": [ - { - "id": 2312, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.KeyboardEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "Element" - }, - "name": "Element", - "package": "typescript" - } - ], - "name": "KeyboardEvent", - "package": "@types/react", - "qualifiedName": "React.KeyboardEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2313, - "name": "onMouseDown", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 414, - "character": 65, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L414" - } - ], - "type": { - "type": "intrinsic", - "name": "undefined" - } - }, - { - "id": 2314, - "name": "onScroll", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 422, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L422" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2315, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 349, - "character": 19, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L349" - } - ], - "signatures": [ - { - "id": 2316, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 349, - "character": 19, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L349" - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2317, - "name": "onTango", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 424, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L424" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2318, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 382, - "character": 18, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L382" - } - ], - "signatures": [ - { - "id": 2319, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 382, - "character": 18, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L382" - } - ], - "parameters": [ - { - "id": 2320, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "CustomEvent" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "CustomEvent", - "package": "typescript" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2286, - 2290, - 2293, - 2297, - 2301, - 2305, - 2309, - 2313, - 2314, - 2317 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 416, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L416" - } - ] - } - }, - { - "type": "reflection", - "declaration": { - "id": 2321, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2322, - "name": "onClick", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 414, - "character": 51, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L414" - } - ], - "type": { - "type": "intrinsic", - "name": "undefined" - } - }, - { - "id": 2323, - "name": "onDragEnd", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 421, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L421" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2324, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 154, - "character": 20, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L154" - } - ], - "signatures": [ - { - "id": 2325, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 154, - "character": 20, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L154" - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2326, - "name": "onDragEnter", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 418, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L418" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2327, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 177, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L177" - } - ], - "signatures": [ - { - "id": 2328, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 177, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L177" - } - ], - "parameters": [ - { - "id": 2329, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLElement" - }, - "name": "HTMLElement", - "package": "typescript" - } - ], - "name": "DragEvent", - "package": "@types/react", - "qualifiedName": "React.DragEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2330, - "name": "onDragOver", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 419, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L419" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2331, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 342, - "character": 21, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L342" - } - ], - "signatures": [ - { - "id": 2332, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 342, - "character": 21, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L342" - } - ], - "parameters": [ - { - "id": 2333, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLElement" - }, - "name": "HTMLElement", - "package": "typescript" - } - ], - "name": "DragEvent", - "package": "@types/react", - "qualifiedName": "React.DragEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2334, - "name": "onDragStart", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 417, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L417" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2335, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 128, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L128" - } - ], - "signatures": [ - { - "id": 2336, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 128, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L128" - } - ], - "parameters": [ - { - "id": 2337, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "Element" - }, - "name": "Element", - "package": "typescript" - } - ], - "name": "DragEvent", - "package": "@types/react", - "qualifiedName": "React.DragEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2338, - "name": "onDrop", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 420, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L420" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2339, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 160, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L160" - } - ], - "signatures": [ - { - "id": 2340, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 160, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L160" - } - ], - "parameters": [ - { - "id": 2341, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.DragEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "Element" - }, - "name": "Element", - "package": "typescript" - } - ], - "name": "DragEvent", - "package": "@types/react", - "qualifiedName": "React.DragEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2342, - "name": "onKeyDown", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 423, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L423" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2343, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 373, - "character": 20, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L373" - } - ], - "signatures": [ - { - "id": 2344, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 373, - "character": 20, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L373" - } - ], - "parameters": [ - { - "id": 2345, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.KeyboardEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "Element" - }, - "name": "Element", - "package": "typescript" - } - ], - "name": "KeyboardEvent", - "package": "@types/react", - "qualifiedName": "React.KeyboardEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2346, - "name": "onMouseDown", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 414, - "character": 65, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L414" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2347, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 67, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L67" - } - ], - "signatures": [ - { - "id": 2348, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 67, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L67" - } - ], - "parameters": [ - { - "id": 2349, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MouseEvent" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "Element" - }, - "name": "Element", - "package": "typescript" - }, - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "MouseEvent" - }, - "name": "MouseEvent", - "package": "typescript" - } - ], - "name": "MouseEvent", - "package": "@types/react", - "qualifiedName": "React.MouseEvent" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2350, - "name": "onScroll", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 422, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L422" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2351, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 349, - "character": 19, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L349" - } - ], - "signatures": [ - { - "id": 2352, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 349, - "character": 19, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L349" - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2353, - "name": "onTango", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 424, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L424" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2354, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 382, - "character": 18, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L382" - } - ], - "signatures": [ - { - "id": 2355, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 382, - "character": 18, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L382" - } - ], - "parameters": [ - { - "id": 2356, - "name": "e", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "CustomEvent" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "CustomEvent", - "package": "typescript" - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2322, - 2323, - 2326, - 2330, - 2334, - 2338, - 2342, - 2346, - 2350, - 2353 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/framework/dnd/use-dnd.ts", - "line": 416, - "character": 9, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/framework/dnd/use-dnd.ts#L416" - } - ] - } - } - ] - } - } - ] - }, - { - "id": 2357, - "name": "useFlatMenuData", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 58, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L58" - } - ], - "signatures": [ - { - "id": 2358, - "name": "useFlatMenuData", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 58, - "character": 16, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L58" - } - ], - "typeParameter": [ - { - "id": 2359, - "name": "T", - "variant": "typeParam", - "kind": 131072, - "flags": {} - } - ], - "parameters": [ - { - "id": 2360, - "name": "menuData", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reflection", - "declaration": { - "id": 2361, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2362, - "name": "items", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 73, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L73" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - }, - "defaultValue": "flatList" - }, - { - "id": 2363, - "name": "title", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 72, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L72" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - }, - "defaultValue": "'搜索结果'" - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2362, - 2363 - ] - } - ], - "sources": [ - { - "fileName": "packages/designer/src/widgets/sidebar/components-view.tsx", - "line": 71, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/widgets/sidebar/components-view.tsx#L71" - } - ] - } - } - } - } - ] - }, - { - "id": 2364, - "name": "useRemoteServices", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/context.ts", - "line": 28, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/context.ts#L28" - } - ], - "signatures": [ - { - "id": 2365, - "name": "useRemoteServices", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/context.ts", - "line": 28, - "character": 33, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/context.ts#L28" - } - ], - "type": { - "type": "reference", - "target": 2579, - "name": "TangoRemoteServicesType", - "package": "@music163/tango-helpers" - } - } - ] - }, - { - "id": 2366, - "name": "useSandboxQuery", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/context.ts", - "line": 24, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/context.ts#L24" - } - ], - "signatures": [ - { - "id": 2367, - "name": "useSandboxQuery", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/designer/src/context.ts", - "line": 24, - "character": 31, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/designer/src/context.ts#L24" - } - ], - "type": { - "type": "reference", - "target": 1547, - "name": "DndQuery", - "package": "@music163/tango-designer" - } - } - ] - }, - { - "id": 2368, - "name": "useWorkspace", - "variant": "declaration", - "kind": 64, - "flags": {}, - "sources": [ - { - "fileName": "packages/context/lib/esm/context.d.ts", - "line": 11, - "character": 21 - } - ], - "signatures": [ - { - "id": 2369, - "name": "useWorkspace", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/context/lib/esm/context.d.ts", - "line": 11, - "character": 35 - } - ], - "type": { - "type": "reference", - "target": 777, - "name": "IWorkspace", - "package": "@music163/tango-core" - } - } - ] - } - ], - "groups": [ - { - "title": "Namespaces", - "children": [ - 1539 - ] - }, - { - "title": "Classes", - "children": [ - 1547 - ] - }, - { - "title": "Interfaces", - "children": [ - 1613, - 1667, - 1677, - 1685, - 1692, - 1695, - 1697, - 1723, - 1725, - 2114, - 2120 - ] - }, - { - "title": "Type Aliases", - "children": [ - 2123, - 2127, - 2128, - 2149 - ] - }, - { - "title": "Variables", - "children": [ - 2150, - 2151, - 2152 - ] - }, - { - "title": "Functions", - "children": [ - 2153, - 2156, - 2182, - 2185, - 2188, - 2191, - 2194, - 2197, - 2200, - 2202, - 2204, - 2206, - 2209, - 2212, - 2214, - 2216, - 2219, - 2222, - 2225, - 2228, - 2230, - 2233, - 2236, - 2238, - 2240, - 2243, - 2246, - 2249, - 2277, - 2280, - 2282, - 2357, - 2364, - 2366, - 2368 - ] - } - ], - "packageVersion": "0.1.1" - }, - { - "id": 2370, - "name": "@music163/tango-helpers", - "variant": "declaration", - "kind": 2, - "flags": {}, - "children": [ - { - "id": 2371, - "name": "hoistNonReactStatics", - "variant": "declaration", - "kind": 4, - "flags": { - "isExternal": true - }, - "children": [ - { - "id": 2372, - "name": "NonReactStatics", - "variant": "declaration", - "kind": 2097152, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@types/hoist-non-react-statics/index.d.ts", - "line": 51, - "character": 9 - } - ], - "typeParameters": [ - { - "id": 2373, - "name": "S", - "variant": "typeParam", - "kind": 131072, - "flags": { - "isExternal": true - }, - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ComponentType" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "React.ComponentType", - "package": "@types/react" - } - }, - { - "id": 2374, - "name": "C", - "variant": "typeParam", - "kind": 131072, - "flags": { - "isExternal": true - }, - "type": { - "type": "reflection", - "declaration": { - "id": 2375, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@types/hoist-non-react-statics/index.d.ts", - "line": 53, - "character": 18 - } - ], - "indexSignature": { - "id": 2376, - "name": "__index", - "variant": "signature", - "kind": 8192, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@types/hoist-non-react-statics/index.d.ts", - "line": 54, - "character": 12 - } - ], - "parameters": [ - { - "id": 2377, - "name": "key", - "variant": "param", - "kind": 32768, - "flags": { - "isExternal": true - }, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "literal", - "value": true - } - } - } - }, - "default": { - "type": "reflection", - "declaration": { - "id": 2378, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": { - "isExternal": true - }, - "sources": [ - { - "fileName": "node_modules/@types/hoist-non-react-statics/index.d.ts", - "line": 55, - "character": 12 - } - ] - } - } - } - ], - "type": { - "type": "mapped", - "parameter": "key", - "parameterType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Exclude" - }, - "typeArguments": [ - { - "type": "typeOperator", - "operator": "keyof", - "target": { - "type": "reference", - "target": -1, - "name": "S", - "refersToTypeParameter": true - } - }, - { - "type": "conditional", - "checkType": { - "type": "reference", - "target": -1, - "name": "S", - "refersToTypeParameter": true - }, - "extendsType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.MemoExoticComponent" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "React.MemoExoticComponent", - "package": "@types/react" - }, - "trueType": { - "type": "union", - "types": [ - { - "type": "typeOperator", - "operator": "keyof", - "target": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/hoist-non-react-statics/index.d.ts", - "qualifiedName": "MEMO_STATICS" - }, - "name": "MEMO_STATICS", - "package": "@types/hoist-non-react-statics" - } - }, - { - "type": "typeOperator", - "operator": "keyof", - "target": { - "type": "reference", - "target": -1, - "name": "C", - "refersToTypeParameter": true - } - } - ] - }, - "falseType": { - "type": "conditional", - "checkType": { - "type": "reference", - "target": -1, - "name": "S", - "refersToTypeParameter": true - }, - "extendsType": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/react/index.d.ts", - "qualifiedName": "React.ForwardRefExoticComponent" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "React.ForwardRefExoticComponent", - "package": "@types/react" - }, - "trueType": { - "type": "union", - "types": [ - { - "type": "typeOperator", - "operator": "keyof", - "target": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/hoist-non-react-statics/index.d.ts", - "qualifiedName": "FORWARD_REF_STATICS" - }, - "name": "FORWARD_REF_STATICS", - "package": "@types/hoist-non-react-statics" - } - }, - { - "type": "typeOperator", - "operator": "keyof", - "target": { - "type": "reference", - "target": -1, - "name": "C", - "refersToTypeParameter": true - } - } - ] - }, - "falseType": { - "type": "union", - "types": [ - { - "type": "typeOperator", - "operator": "keyof", - "target": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/hoist-non-react-statics/index.d.ts", - "qualifiedName": "REACT_STATICS" - }, - "name": "REACT_STATICS", - "package": "@types/hoist-non-react-statics" - } - }, - { - "type": "typeOperator", - "operator": "keyof", - "target": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/@types/hoist-non-react-statics/index.d.ts", - "qualifiedName": "KNOWN_STATICS" - }, - "name": "KNOWN_STATICS", - "package": "@types/hoist-non-react-statics" - } - }, - { - "type": "typeOperator", - "operator": "keyof", - "target": { - "type": "reference", - "target": -1, - "name": "C", - "refersToTypeParameter": true - } - } - ] - } - } - } - ], - "name": "Exclude", - "package": "typescript" - }, - "templateType": { - "type": "indexedAccess", - "indexType": { - "type": "reference", - "target": -1, - "name": "key", - "refersToTypeParameter": true - }, - "objectType": { - "type": "reference", - "target": -1, - "name": "S", - "refersToTypeParameter": true - } - } - } - } - ], - "groups": [ - { - "title": "Type Aliases", - "children": [ - 2372 - ] - } - ], - "sources": [ - { - "fileName": "node_modules/@types/hoist-non-react-statics/index.d.ts", - "line": 68, - "character": 17 - }, - { - "fileName": "node_modules/@types/hoist-non-react-statics/index.d.ts", - "line": 50, - "character": 18 - } - ] - }, - { - "id": 2379, - "name": "ExpressionInstruction", - "variant": "declaration", - "kind": 8, - "flags": {}, - "children": [ - { - "id": 2380, - "name": "InlineExpression", - "variant": "declaration", - "kind": 16, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/helpers/enums.ts", - "line": 10, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/helpers/enums.ts#L10" - } - ], - "type": { - "type": "literal", - "value": "tango_inlineExpression" - } - } - ], - "groups": [ - { - "title": "Enumeration Members", - "children": [ - 2380 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/helpers/enums.ts", - "line": 9, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/helpers/enums.ts#L9" - } - ] - }, - { - "id": 2381, - "name": "TangoEventName", - "variant": "declaration", - "kind": 8, - "flags": {}, - "children": [ - { - "id": 2382, - "name": "DesignerAction", - "variant": "declaration", - "kind": 16, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/helpers/enums.ts", - "line": 6, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/helpers/enums.ts#L6" - } - ], - "type": { - "type": "literal", - "value": "tango_designerAction" - } - }, - { - "id": 2383, - "name": "OpenModal", - "variant": "declaration", - "kind": 16, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/helpers/enums.ts", - "line": 2, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/helpers/enums.ts#L2" - } - ], - "type": { - "type": "literal", - "value": "tango_openModal" - } - }, - { - "id": 2384, - "name": "ViewChange", - "variant": "declaration", - "kind": 16, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/helpers/enums.ts", - "line": 4, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/helpers/enums.ts#L4" - } - ], - "type": { - "type": "literal", - "value": "tango_viewChange" - } - } - ], - "groups": [ - { - "title": "Enumeration Members", - "children": [ - 2382, - 2383, - 2384 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/helpers/enums.ts", - "line": 1, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/helpers/enums.ts#L1" - } - ] - }, - { - "id": 2385, - "name": "WizardType", - "variant": "declaration", - "kind": 8, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "智能向导生成类型" - } - ] - }, - "children": [ - { - "id": 2386, - "name": "NEW", - "variant": "declaration", - "kind": 16, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 171, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L171" - } - ], - "type": { - "type": "literal", - "value": "new" - } - }, - { - "id": 2387, - "name": "PREVIEW", - "variant": "declaration", - "kind": 16, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 173, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L173" - } - ], - "type": { - "type": "literal", - "value": "preview" - } - }, - { - "id": 2388, - "name": "REPLACE", - "variant": "declaration", - "kind": 16, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 172, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L172" - } - ], - "type": { - "type": "literal", - "value": "replace" - } - } - ], - "groups": [ - { - "title": "Enumeration Members", - "children": [ - 2386, - 2387, - 2388 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 170, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L170" - } - ] - }, - { - "id": 2389, - "name": "ListStore", - "variant": "declaration", - "kind": 128, - "flags": {}, - "children": [ - { - "id": 2390, - "name": "constructor", - "variant": "declaration", - "kind": 512, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 19, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L19" - } - ], - "signatures": [ - { - "id": 2391, - "name": "new ListStore", - "variant": "signature", - "kind": 16384, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 19, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L19" - } - ], - "typeParameter": [ - { - "id": 2392, - "name": "T", - "variant": "typeParam", - "kind": 131072, - "flags": {}, - "default": { - "type": "intrinsic", - "name": "object" - } - } - ], - "parameters": [ - { - "id": 2393, - "name": "options", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/helpers/src/stores/list-store.ts", - "qualifiedName": "ListStoreOptionsType" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - ], - "name": "ListStoreOptionsType", - "package": "@music163/tango-helpers" - } - } - ], - "type": { - "type": "reference", - "target": 2389, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - ], - "name": "ListStore", - "package": "@music163/tango-helpers" - } - } - ] - }, - { - "id": 2394, - "name": "childrenProp", - "variant": "declaration", - "kind": 1024, - "flags": { - "isPrivate": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 13, - "character": 10, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L13" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2395, - "name": "keyProp", - "variant": "declaration", - "kind": 1024, - "flags": { - "isPrivate": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 12, - "character": 10, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L12" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2396, - "name": "nodeMap", - "variant": "declaration", - "kind": 1024, - "flags": { - "isPrivate": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 11, - "character": 10, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L11" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es2015.collection.d.ts", - "qualifiedName": "Map" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - ], - "name": "Map", - "package": "typescript" - } - }, - { - "id": 2397, - "name": "nodes", - "variant": "declaration", - "kind": 262144, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 15, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L15" - } - ], - "getSignature": { - "id": 2398, - "name": "nodes", - "variant": "signature", - "kind": 524288, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 15, - "character": 6, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L15" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es2015.iterable.d.ts", - "qualifiedName": "IterableIterator" - }, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - ], - "name": "IterableIterator", - "package": "typescript" - } - } - }, - { - "id": 2399, - "name": "getNode", - "variant": "declaration", - "kind": 2048, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 26, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L26" - } - ], - "signatures": [ - { - "id": 2400, - "name": "getNode", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 26, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L26" - } - ], - "parameters": [ - { - "id": 2401, - "name": "key", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - } - ] - }, - { - "id": 2402, - "name": "visitNodes", - "variant": "declaration", - "kind": 2048, - "flags": { - "isPrivate": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 34, - "character": 10, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L34" - } - ], - "signatures": [ - { - "id": 2403, - "name": "visitNodes", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 34, - "character": 10, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L34" - } - ], - "parameters": [ - { - "id": 2404, - "name": "nodes", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - ], - "groups": [ - { - "title": "Constructors", - "children": [ - 2390 - ] - }, - { - "title": "Properties", - "children": [ - 2394, - 2395, - 2396 - ] - }, - { - "title": "Accessors", - "children": [ - 2397 - ] - }, - { - "title": "Methods", - "children": [ - 2399, - 2402 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/stores/list-store.ts", - "line": 10, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/stores/list-store.ts#L10" - } - ], - "typeParameters": [ - { - "id": 2405, - "name": "T", - "variant": "typeParam", - "kind": 131072, - "flags": {}, - "default": { - "type": "intrinsic", - "name": "object" - } - } - ] - }, - { - "id": 2406, - "name": "CommonGuideFormValueType", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 2407, - "name": "childComponentName", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 211, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L211" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2408, - "name": "childPropsConfig", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 214, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L214" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2409, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2410, - "name": "fieldDescriptionName", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 218, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L218" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2411, - "name": "fieldName", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 216, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L216" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2412, - "name": "fieldType", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 220, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L220" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2410, - 2411, - 2412 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 214, - "character": 20, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L214" - } - ] - } - } - }, - { - "id": 2413, - "name": "children", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 212, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L212" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "packages/helpers/src/types/advanced.ts", - "qualifiedName": "ChildType" - }, - "name": "ChildType", - "package": "@music163/tango-helpers" - } - }, - { - "id": 2414, - "name": "dataProviderProps", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 213, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L213" - } - ], - "type": { - "type": "reference", - "target": 2538, - "name": "IDataProviderFormProps", - "package": "@music163/tango-helpers" - } - }, - { - "id": 2415, - "name": "fatherComponentName", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 209, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L209" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2416, - "name": "fatherProps", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 210, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L210" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Record" - }, - "typeArguments": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "intrinsic", - "name": "any" - } - ], - "name": "Record", - "package": "typescript" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2407, - 2408, - 2413, - 2414, - 2415, - 2416 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 208, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L208" - } - ] - }, - { - "id": 2417, - "name": "CreateContextOptions", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 2418, - "name": "errorMessage", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "Error message to throw if the context is " - }, - { - "kind": "code", - "text": "`undefined`" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/helpers/react-helper.ts", - "line": 14, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/helpers/react-helper.ts#L14" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2419, - "name": "name", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "The display name of the context" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/helpers/react-helper.ts", - "line": 18, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/helpers/react-helper.ts#L18" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2420, - "name": "strict", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "If " - }, - { - "kind": "code", - "text": "`true`" - }, - { - "kind": "text", - "text": ", React will throw if context is " - }, - { - "kind": "code", - "text": "`null`" - }, - { - "kind": "text", - "text": " or " - }, - { - "kind": "code", - "text": "`undefined`" - }, - { - "kind": "text", - "text": "\nIn some cases, you might want to support nested context, so you can set it to " - }, - { - "kind": "code", - "text": "`false`" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/helpers/react-helper.ts", - "line": 10, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/helpers/react-helper.ts#L10" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2418, - 2419, - 2420 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/helpers/react-helper.ts", - "line": 5, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/helpers/react-helper.ts#L5" - } - ] - }, - { - "id": 2421, - "name": "IOXModel", - "variant": "declaration", - "kind": 256, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "智能向导OX模型定义" - } - ] - }, - "children": [ - { - "id": 2422, - "name": "basicDataModelName", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 183, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L183" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "boolean" - }, - { - "type": "literal", - "value": "List" - }, - { - "type": "literal", - "value": "Integer" - }, - { - "type": "literal", - "value": "int" - }, - { - "type": "literal", - "value": "String" - }, - { - "type": "literal", - "value": "long" - }, - { - "type": "literal", - "value": "ENUM" - } - ] - } - }, - { - "id": 2423, - "name": "dataModelFieldDTOList", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 184, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L184" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 2421, - "name": "IOXModel", - "package": "@music163/tango-helpers" - } - } - }, - { - "id": 2424, - "name": "description", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 182, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L182" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2425, - "name": "extra", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 186, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L186" - } - ], - "type": { - "type": "reference", - "target": 2421, - "name": "IOXModel", - "package": "@music163/tango-helpers" - } - }, - { - "id": 2426, - "name": "extras", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 187, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L187" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 2421, - "name": "IOXModel", - "package": "@music163/tango-helpers" - } - } - }, - { - "id": 2427, - "name": "key", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 180, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L180" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2428, - "name": "linkedDataModelName", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 188, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L188" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "String" - }, - "name": "String", - "package": "typescript" - } - }, - { - "id": 2429, - "name": "linkedModelDTO", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 189, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L189" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2430, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2431, - "name": "fieldDTOList", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 191, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L191" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 2421, - "name": "IOXModel", - "package": "@music163/tango-helpers" - } - } - }, - { - "id": 2432, - "name": "type", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 190, - "character": 4, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L190" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "ENUM" - }, - { - "type": "literal", - "value": "ARRAY" - }, - { - "type": "literal", - "value": "BASIC" - }, - { - "type": "literal", - "value": "CLASS" - }, - { - "type": "literal", - "value": "GENERIC" - }, - { - "type": "literal", - "value": "MAP" - } - ] - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2431, - 2432 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 189, - "character": 18, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L189" - } - ] - } - } - }, - { - "id": 2433, - "name": "name", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 181, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L181" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2434, - "name": "paramType", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 193, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L193" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "RequestParam" - }, - { - "type": "literal", - "value": "JsonRequestParam" - } - ] - } - }, - { - "id": 2435, - "name": "type", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 185, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L185" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "ENUM" - }, - { - "type": "literal", - "value": "ARRAY" - }, - { - "type": "literal", - "value": "BASIC" - }, - { - "type": "literal", - "value": "CLASS" - }, - { - "type": "literal", - "value": "GENERIC" - }, - { - "type": "literal", - "value": "MAP" - } - ] - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2422, - 2423, - 2424, - 2425, - 2426, - 2427, - 2428, - 2429, - 2433, - 2434, - 2435 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 179, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L179" - } - ] - }, - { - "id": 2436, - "name": "ISelectedItemData", - "variant": "declaration", - "kind": 256, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "选中项数据类型" - } - ] - }, - "children": [ - { - "id": 2437, - "name": "bounding", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 157, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L157" - } - ], - "type": { - "type": "reference", - "target": 2532, - "name": "ElementBoundingType", - "package": "@music163/tango-helpers" - } - }, - { - "id": 2438, - "name": "display", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "元素的CSS Display 值" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 156, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L156" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2439, - "name": "element", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 158, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L158" - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts", - "qualifiedName": "HTMLElement" - }, - "name": "HTMLElement", - "package": "typescript" - } - }, - { - "id": 2440, - "name": "filename", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "所属文件路径" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 148, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L148" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2441, - "name": "id", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 140, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L140" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2442, - "name": "module", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [], - "blockTags": [ - { - "tag": "@deprecated", - "content": [ - { - "kind": "text", - "text": "使用 filename 取代" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 152, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L152" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2443, - "name": "name", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "组件名" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 144, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L144" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2444, - "name": "parents", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 159, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L159" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 2436, - "name": "ISelectedItemData", - "package": "@music163/tango-helpers" - } - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2437, - 2438, - 2439, - 2440, - 2441, - 2442, - 2443, - 2444 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/types/advanced.ts", - "line": 139, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/advanced.ts#L139" - } - ] - }, - { - "id": 2445, - "name": "UseControllableStateProps", - "variant": "declaration", - "kind": 256, - "flags": {}, - "children": [ - { - "id": 2446, - "name": "defaultValue", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 12, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L12" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - }, - { - "type": "reflection", - "declaration": { - "id": 2447, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 12, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L12" - } - ], - "signatures": [ - { - "id": 2448, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 12, - "character": 22, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L12" - } - ], - "type": { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - } - ] - } - } - ] - } - }, - { - "id": 2449, - "name": "onChange", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 13, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L13" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2450, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 13, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L13" - } - ], - "signatures": [ - { - "id": 2451, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 13, - "character": 13, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L13" - } - ], - "parameters": [ - { - "id": 2452, - "name": "value", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - } - ], - "type": { - "type": "intrinsic", - "name": "void" - } - } - ] - } - } - }, - { - "id": 2453, - "name": "shouldUpdate", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 14, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L14" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2454, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 14, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L14" - } - ], - "signatures": [ - { - "id": 2455, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 14, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L14" - } - ], - "parameters": [ - { - "id": 2456, - "name": "prev", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - }, - { - "id": 2457, - "name": "next", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - } - } - }, - { - "id": 2458, - "name": "value", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 11, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L11" - } - ], - "type": { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2446, - 2449, - 2453, - 2458 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/hooks/use-controllable.ts", - "line": 10, - "character": 17, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/hooks/use-controllable.ts#L10" - } - ], - "typeParameters": [ - { - "id": 2459, - "name": "T", - "variant": "typeParam", - "kind": 131072, - "flags": {} - } - ] - }, - { - "id": 2460, - "name": "ComponentDndRulesType", - "variant": "declaration", - "kind": 2097152, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "组件拖拽规则类型" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 99, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L99" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2461, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2462, - "name": "canDrag", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 103, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L103" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2463, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 103, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L103" - } - ], - "signatures": [ - { - "id": 2464, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "当前节点是否可以被拖拽" - } - ] - }, - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - } - } - }, - { - "id": 2465, - "name": "canDrop", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 107, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L107" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2466, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 107, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L107" - } - ], - "signatures": [ - { - "id": 2467, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "当前节点是否可以拖拽到目标节点中" - } - ] - }, - "parameters": [ - { - "id": 2468, - "name": "targetName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - } - } - }, - { - "id": 2469, - "name": "canMoveIn", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 111, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L111" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2470, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 111, - "character": 14, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L111" - } - ], - "signatures": [ - { - "id": 2471, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "进来的节点是否可以落进来,仅适用于容器节点" - } - ] - }, - "parameters": [ - { - "id": 2472, - "name": "incomingName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - } - } - }, - { - "id": 2473, - "name": "canMoveOut", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 115, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L115" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2474, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 115, - "character": 15, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L115" - } - ], - "signatures": [ - { - "id": 2475, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "被拖拽的节点是否可以被拖离当前节点,仅适用于容器节点" - } - ] - }, - "parameters": [ - { - "id": 2476, - "name": "outgoingName", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - } - } - }, - { - "id": 2477, - "name": "childrenContainerSelector", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "子节点的容器选择器,用于快速定位子节点容器,适合组件存在多个可搭建区域时使用" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 119, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L119" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2462, - 2465, - 2469, - 2473, - 2477 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 99, - "character": 36, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L99" - } - ] - } - } - }, - { - "id": 2478, - "name": "ComponentPropType", - "variant": "declaration", - "kind": 2097152, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "组件属性类型" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 10, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L10" - } - ], - "typeParameters": [ - { - "id": 2479, - "name": "T", - "variant": "typeParam", - "kind": 131072, - "flags": {}, - "default": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2480, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2481, - "name": "autoCompleteOptions", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "自动补全的提示值,仅对 ExpressionSetter 有效" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 64, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L64" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - } - }, - { - "id": 2482, - "name": "autoInitValue", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "如果没提供 initValue,是否自动初始化" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 60, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L60" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 2483, - "name": "defaultValue", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "组件默认展示的值" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 39, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L39" - } - ], - "type": { - "type": "intrinsic", - "name": "any" - } - }, - { - "id": 2484, - "name": "disableVariableSetter", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否禁用变量绑定" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 89, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L89" - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - }, - { - "id": 2485, - "name": "docs", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "帮助文档链接地址" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\nhttps://foo.bar/help\n```" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 35, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L35" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2486, - "name": "getProp", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 81, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L81" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2487, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 81, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L81" - } - ], - "signatures": [ - { - "id": 2488, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "动态设置属性,覆盖已有的 prop 对象" - } - ] - }, - "parameters": [ - { - "id": 2489, - "name": "form", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Partial" - }, - "typeArguments": [ - { - "type": "reference", - "target": { - "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts", - "qualifiedName": "Omit" - }, - "typeArguments": [ - { - "type": "reference", - "target": 2478, - "typeArguments": [ - { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - ], - "name": "ComponentPropType", - "package": "@music163/tango-helpers" - }, - { - "type": "literal", - "value": "getProp" - } - ], - "name": "Omit", - "package": "typescript" - } - ], - "name": "Partial", - "package": "typescript" - } - } - ] - } - } - }, - { - "id": 2490, - "name": "getSetterProps", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 77, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L77" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2491, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 77, - "character": 19, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L77" - } - ], - "signatures": [ - { - "id": 2492, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "动态设置传递给 setter 的属性" - } - ], - "blockTags": [ - { - "tag": "@deprecated", - "content": [ - { - "kind": "text", - "text": "请使用 getProp 代替" - } - ] - } - ] - }, - "parameters": [ - { - "id": 2493, - "name": "form", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - } - ] - } - } - }, - { - "id": 2494, - "name": "getVisible", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 93, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L93" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2495, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 93, - "character": 15, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L93" - } - ], - "signatures": [ - { - "id": 2496, - "name": "__type", - "variant": "signature", - "kind": 4096, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "动态设置表单项是否展示" - } - ] - }, - "parameters": [ - { - "id": 2497, - "name": "form", - "variant": "param", - "kind": 32768, - "flags": {}, - "type": { - "type": "intrinsic", - "name": "any" - } - } - ], - "type": { - "type": "intrinsic", - "name": "boolean" - } - } - ] - } - } - }, - { - "id": 2498, - "name": "group", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "属性的分组\n- basic 常用属性\n- event 事件属性\n- style 样式属性\n- advanced 高级属性" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 30, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L30" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "basic" - }, - { - "type": "literal", - "value": "event" - }, - { - "type": "literal", - "value": "style" - }, - { - "type": "literal", - "value": "advanced" - } - ] - } - }, - { - "id": 2499, - "name": "initValue", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "首次拖拽后用来初始化组件的属性值" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n\"str\" 字符串\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n1 数字\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n\"{() => {}}\" 函数\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n\"{1}\" 表达式\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n\"%random()%\" 内置命令\n```" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 48, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L48" - } - ], - "type": { - "type": "intrinsic", - "name": "any" - } - }, - { - "id": 2500, - "name": "name", - "variant": "declaration", - "kind": 1024, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "属性名" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 14, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L14" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2501, - "name": "options", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "配置项的可选值,setterProps.options 的简写" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 85, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L85" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 2551, - "name": "OptionType", - "package": "@music163/tango-helpers" - } - } - }, - { - "id": 2502, - "name": "placeholder", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "输入提示" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 56, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L56" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2503, - "name": "props", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "如果是对象属性,这里声明子属性列表" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 52, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L52" - } - ], - "type": { - "type": "array", - "elementType": { - "type": "reference", - "target": 2478, - "name": "ComponentPropType", - "package": "@music163/tango-helpers" - } - } - }, - { - "id": 2504, - "name": "setter", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "设置器" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 68, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L68" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2505, - "name": "setterProps", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "传递给设置器的属性" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 72, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L72" - } - ], - "type": { - "type": "reference", - "target": -1, - "name": "T", - "refersToTypeParameter": true - } - }, - { - "id": 2506, - "name": "tip", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "属性提示信息" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 22, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L22" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2507, - "name": "title", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "属性中文名" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 18, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L18" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - } - ], - "groups": [ - { - "title": "Properties", - "children": [ - 2481, - 2482, - 2483, - 2484, - 2485, - 2486, - 2490, - 2494, - 2498, - 2499, - 2500, - 2501, - 2502, - 2503, - 2504, - 2505, - 2506, - 2507 - ] - } - ], - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 10, - "character": 41, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L10" - } - ] - } - } - }, - { - "id": 2508, - "name": "ComponentPrototypeType", - "variant": "declaration", - "kind": 2097152, - "flags": {}, - "comment": { - "summary": [ - { - "kind": "text", - "text": "组件原型类型" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 125, - "character": 12, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L125" - } - ], - "type": { - "type": "reflection", - "declaration": { - "id": 2509, - "name": "__type", - "variant": "declaration", - "kind": 65536, - "flags": {}, - "children": [ - { - "id": 2510, - "name": "category", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "分类\nbasic 通用\nlayout 布局容器\ncondition 条件容器\ntypography 排版\nnav 导航\nform 表单容器\ninput 输入\ndisplay 展示\nfeedback 反馈\nother 其他\nbiz 业务扩展" - } - ], - "blockTags": [ - { - "tag": "@deprecated", - "content": [ - { - "kind": "text", - "text": "已废弃,可以不提供" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 190, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L190" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "basic" - }, - { - "type": "literal", - "value": "layout" - }, - { - "type": "literal", - "value": "condition" - }, - { - "type": "literal", - "value": "typography" - }, - { - "type": "literal", - "value": "nav" - }, - { - "type": "literal", - "value": "form" - }, - { - "type": "literal", - "value": "xform" - }, - { - "type": "literal", - "value": "xtable" - }, - { - "type": "literal", - "value": "input" - }, - { - "type": "literal", - "value": "display" - }, - { - "type": "literal", - "value": "feedback" - }, - { - "type": "literal", - "value": "other" - }, - { - "type": "literal", - "value": "biz" - } - ] - } - }, - { - "id": 2511, - "name": "childrenName", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "直接子节点的类型" - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 230, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L230" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "intrinsic", - "name": "string" - }, - { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "string" - } - } - ] - } - }, - { - "id": 2512, - "name": "defaultChildren", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "已废弃,请使用 initChildren 替代" - } - ], - "blockTags": [ - { - "tag": "@deprecated", - "content": [] - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 218, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L218" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2513, - "name": "docs", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "物料的文档地址" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\nhttps://music-one.fn.netease.com/docs/button\n```" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 160, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L160" - } - ], - "type": { - "type": "intrinsic", - "name": "string" - } - }, - { - "id": 2514, - "name": "exportType", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "导出方式" - } - ], - "blockTags": [ - { - "tag": "@default", - "content": [ - { - "kind": "code", - "text": "```ts\nnamedExport\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\nimport { Button } from 'antd';\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\nimport request from 'antd';\n```" - } - ] - } - ] - }, - "sources": [ - { - "fileName": "packages/helpers/src/types/prototype.ts", - "line": 142, - "character": 2, - "url": "https://github.com/NetEase/tango/blob/f3c51b7/packages/helpers/src/types/prototype.ts#L142" - } - ], - "type": { - "type": "union", - "types": [ - { - "type": "literal", - "value": "defaultExport" - }, - { - "type": "literal", - "value": "namedExport" - } - ] - } - }, - { - "id": 2515, - "name": "hasChildren", - "variant": "declaration", - "kind": 1024, - "flags": { - "isOptional": true - }, - "comment": { - "summary": [ - { - "kind": "text", - "text": "是否有子元素,决定了组件标签的声明方式" - } - ], - "blockTags": [ - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n\n```" - } - ] - }, - { - "tag": "@example", - "content": [ - { - "kind": "code", - "text": "```ts\n