gitextract_4oa5dsxh/ ├── .editorconfig ├── .eslintignore ├── .eslintrc.js ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ ├── config.yml │ │ └── feature_request.yml │ ├── PULL_REQUEST_TEMPLATE.md │ ├── commit-convention.md │ ├── settings.yml │ └── workflows/ │ ├── docs.yml │ ├── lint.yml │ ├── release.yml │ └── test.yml ├── .gitignore ├── .husky/ │ ├── commit-msg │ ├── pre-commit │ └── prepare-commit-msg ├── .npmrc ├── .stylelintignore ├── .vscode/ │ ├── extensions.json │ └── settings.json ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── commitlint.config.js ├── lint-staged.config.js ├── netlify.toml ├── package.json ├── packages/ │ ├── doc/ │ │ ├── .vuepress/ │ │ │ ├── client.ts │ │ │ ├── components/ │ │ │ │ ├── DemoA.vue │ │ │ │ └── NpmBadge.vue │ │ │ ├── configs/ │ │ │ │ ├── index.ts │ │ │ │ ├── navbar/ │ │ │ │ │ ├── en.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── zh.ts │ │ │ │ └── sidebar/ │ │ │ │ ├── en.ts │ │ │ │ ├── index.ts │ │ │ │ └── zh.ts │ │ │ ├── examples/ │ │ │ │ └── firstHouse/ │ │ │ │ ├── demo.css │ │ │ │ ├── html.html │ │ │ │ ├── react.tsx │ │ │ │ ├── vue2.vue │ │ │ │ └── vue3.vue │ │ │ ├── index.build.html │ │ │ ├── plugins/ │ │ │ │ ├── code-demo/ │ │ │ │ │ ├── CodeDemo.props.ts │ │ │ │ │ ├── CodeDemo.vue │ │ │ │ │ ├── Icons.tsx │ │ │ │ │ ├── clientConfigFile.ts │ │ │ │ │ ├── constant.ts │ │ │ │ │ ├── global.d.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── plugin.ts │ │ │ │ └── index.ts │ │ │ ├── public/ │ │ │ │ ├── browserconfig.xml │ │ │ │ ├── code-demo-templates/ │ │ │ │ │ ├── demo.css.txt │ │ │ │ │ ├── html/ │ │ │ │ │ │ └── package.json.txt │ │ │ │ │ ├── react/ │ │ │ │ │ │ ├── index.html.txt │ │ │ │ │ │ ├── package.json.txt │ │ │ │ │ │ ├── src/ │ │ │ │ │ │ │ └── main.tsx.txt │ │ │ │ │ │ ├── tsconfig.json.txt │ │ │ │ │ │ └── vite.config.ts.txt │ │ │ │ │ ├── vue2/ │ │ │ │ │ │ ├── index.html.txt │ │ │ │ │ │ ├── package.json.txt │ │ │ │ │ │ ├── src/ │ │ │ │ │ │ │ ├── App.vue.txt │ │ │ │ │ │ │ └── main.ts.txt │ │ │ │ │ │ ├── tsconfig.json.txt │ │ │ │ │ │ ├── types/ │ │ │ │ │ │ │ └── module.d.ts.txt │ │ │ │ │ │ └── vite.config.ts.txt │ │ │ │ │ └── vue3/ │ │ │ │ │ ├── index.html.txt │ │ │ │ │ ├── package.json.txt │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── App.vue.txt │ │ │ │ │ │ └── main.ts.txt │ │ │ │ │ ├── tsconfig.json.txt │ │ │ │ │ ├── types/ │ │ │ │ │ │ └── module.d.ts.txt │ │ │ │ │ └── vite.config.ts.txt │ │ │ │ └── manifest.webmanifest │ │ │ ├── styles/ │ │ │ │ └── index.scss │ │ │ ├── theme/ │ │ │ │ ├── components/ │ │ │ │ │ ├── Home.vue │ │ │ │ │ ├── HomeFeatures.vue │ │ │ │ │ └── HomeVrBg.vue │ │ │ │ └── index.ts │ │ │ ├── types/ │ │ │ │ └── module.d.ts │ │ │ └── utils/ │ │ │ └── common.ts │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── bundler.config.ts │ │ ├── guide/ │ │ │ ├── README.md │ │ │ └── questions.md │ │ ├── libs/ │ │ │ ├── vr360-core/ │ │ │ │ ├── README.md │ │ │ │ ├── events.md │ │ │ │ ├── example.md │ │ │ │ ├── methods.md │ │ │ │ └── properties.md │ │ │ ├── vr360-ui/ │ │ │ │ └── README.md │ │ │ ├── vr360-ui-react/ │ │ │ │ └── README.md │ │ │ ├── vr360-ui-vue2/ │ │ │ │ └── README.md │ │ │ └── vr360-ui-vue3/ │ │ │ └── README.md │ │ ├── package.json │ │ ├── tsconfig.json │ │ └── vuepress.config.ts │ ├── vr360-core/ │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── package.json │ │ ├── scripts/ │ │ │ └── build.ts │ │ ├── src/ │ │ │ ├── helper.ts │ │ │ ├── index.ts │ │ │ ├── manager/ │ │ │ │ ├── index.ts │ │ │ │ ├── space.ts │ │ │ │ └── tip.ts │ │ │ ├── types.ts │ │ │ └── vr360.ts │ │ ├── test/ │ │ │ ├── index.ts │ │ │ └── setup.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── vr360-shared/ │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── build.config.ts │ │ ├── package.json │ │ ├── src/ │ │ │ ├── build-utils/ │ │ │ │ ├── build-script.util.ts │ │ │ │ ├── index.ts │ │ │ │ └── vite-config-common.util.ts │ │ │ ├── index.ts │ │ │ ├── test-react-utils.ts │ │ │ ├── test-utils/ │ │ │ │ ├── common/ │ │ │ │ │ ├── helper.util.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── mock-global-api.ts │ │ │ │ │ ├── mock-server.util.ts │ │ │ │ │ ├── polyfill-fetch.util.ts │ │ │ │ │ └── polyfill-pointer-events.util.ts │ │ │ │ ├── react/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── react-helper.util.ts │ │ │ │ │ └── react-mount.util.ts │ │ │ │ └── vue/ │ │ │ │ ├── index.ts │ │ │ │ ├── vue-helper.util.ts │ │ │ │ └── vue-mount.util.ts │ │ │ ├── test-utils.ts │ │ │ └── test-vue-utils.ts │ │ ├── test-react-utils.d.ts │ │ ├── test-utils.d.ts │ │ ├── test-vue-utils.d.ts │ │ ├── tsconfig.json │ │ └── types/ │ │ └── global.d.ts │ ├── vr360-ui/ │ │ └── README.md │ ├── vr360-ui-react/ │ │ └── README.md │ ├── vr360-ui-vue2/ │ │ └── README.md │ └── vr360-ui-vue3/ │ └── README.md ├── playgrounds/ │ ├── react/ │ │ ├── index.html │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Example.tsx │ │ │ └── main.tsx │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── vue2/ │ │ ├── index.html │ │ ├── package.json │ │ ├── src/ │ │ │ ├── App.vue │ │ │ └── main.ts │ │ ├── tsconfig.json │ │ ├── types/ │ │ │ └── module.d.ts │ │ ├── unocss.config.ts │ │ └── vite.config.ts │ └── vue3/ │ ├── index.html │ ├── package.json │ ├── src/ │ │ ├── App.vue │ │ ├── ContextMenu.vue │ │ ├── Editor.vue │ │ ├── EditorHotPointManager.vue │ │ ├── EditorLeftBar.vue │ │ ├── EditorSceneManager.vue │ │ ├── EditorSettings.vue │ │ ├── EditorTipsManager.vue │ │ ├── EditorTopBar.vue │ │ ├── Icons.tsx │ │ ├── helper.ts │ │ ├── main.ts │ │ └── useVr360.ts │ ├── tsconfig.json │ ├── types/ │ │ └── module.d.ts │ ├── unocss.config.ts │ └── vite.config.ts ├── pnpm-workspace.yaml ├── prettier.config.js ├── scripts/ │ ├── build.ts │ ├── check-update.ts │ ├── release.ts │ └── utils.ts ├── stylelint.config.js ├── textures.json ├── tsconfig-base.json ├── tsconfig.json └── turbo.json