├── src ├── utils │ ├── index.ts │ ├── bootstrap.ts │ └── initialization.ts ├── style │ ├── global.scss │ └── index.ts ├── types │ ├── package.json │ ├── index.ts │ ├── xmppVideoRoom.ts │ ├── webRTCStreamer.ts │ ├── htmlMapMarker.ts │ └── janusVideoRoom.ts ├── main.ts └── core │ ├── htmlMapMarker.ts │ ├── webRTCStreamer.ts │ └── janusVideoRoom.ts ├── index.mjs ├── .stylelintignore ├── .eslintignore ├── .husky ├── pre-commit ├── commit-msg └── lintstagedrc.js ├── renovate.json ├── .prettierignore ├── index.cjs ├── index.js ├── .github ├── ISSUE_TEMPLATE │ ├── documentation.md │ ├── config.yml │ ├── feature_request.md │ └── bug_report.md └── workflows │ ├── pr-build.yml │ ├── sync-gitee.yml │ └── npm-publish.yml ├── SECURITY.md ├── .editorconfig ├── tsconfig.json ├── prettier.config.js ├── commitlint.config.js ├── LICENSE ├── .eslintrc.js ├── README.md ├── stylelint.config.js ├── .gitignore ├── rollup.config.js ├── changelog-option.js ├── package.json ├── CODE_OF_CONDUCT.md └── CHANGELOG.md /src/utils/index.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/global.scss: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/utils/bootstrap.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /index.mjs: -------------------------------------------------------------------------------- 1 | export * from './index.js' 2 | -------------------------------------------------------------------------------- /src/style/index.ts: -------------------------------------------------------------------------------- 1 | import './global.scss' 2 | -------------------------------------------------------------------------------- /.stylelintignore: -------------------------------------------------------------------------------- 1 | /dist/* 2 | /public/* 3 | dist/* 4 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | */build/*.js 2 | */public 3 | dist 4 | .husky/ 5 | lib 6 | */node_modules 7 | package-lock.json 8 | -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | . "$(dirname -- "$0")/_/husky.sh" 3 | 4 | npm run lint-changelog 5 | -------------------------------------------------------------------------------- /src/types/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "//": "this file is here to make typescript happy when moduleResolution=node16+" 3 | } 4 | -------------------------------------------------------------------------------- /.husky/commit-msg: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | . "$(dirname -- "$0")/_/husky.sh" 3 | 4 | npx --no-install commitlint --edit "" 5 | -------------------------------------------------------------------------------- /src/main.ts: -------------------------------------------------------------------------------- 1 | import './style' 2 | export * from './core/webRTCStreamer' 3 | export * from './core/htmlMapMarker' 4 | export * from './core/janusVideoRoom' 5 | -------------------------------------------------------------------------------- /src/types/index.ts: -------------------------------------------------------------------------------- 1 | export * from './webRTCStreamer' 2 | export * from './htmlMapMarker' 3 | export * from './janusVideoRoom' 4 | export * from './xmppVideoRoom' 5 | -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://docs.renovatebot.com/renovate-schema.json", 3 | "extends": [ 4 | "config:base" 5 | ], 6 | "baseBranches": ["dev"] 7 | } 8 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | /dist/* 2 | .local 3 | .output.js 4 | /node_modules/** 5 | 6 | /packages/**/node_modules/** 7 | /packages/**/dist/** 8 | 9 | **/*.svg 10 | **/*.sh 11 | 12 | /public/* 13 | -------------------------------------------------------------------------------- /index.cjs: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | if (process.env.NODE_ENV === 'production') { 4 | module.exports = require('./dist/index.cjs.min.js') 5 | } else { 6 | module.exports = require('./dist/index.cjs.js') 7 | } 8 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | if (process.env.NODE_ENV === 'production') { 4 | module.exports = require('./dist/index.cjs.min.js') 5 | } else { 6 | module.exports = require('./dist/index.cjs.js') 7 | } 8 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/documentation.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: "📝 Documentation (文档相关)" 3 | about: 'Repair or supplement documentation(修复或补充文档)' 4 | labels: '📝 Documentation' 5 | --- 6 | 7 | 10 | 11 | ## 哪些文档页面需要修复 12 | 13 | ## 需要修改什么来解决问题 14 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: true 2 | contact_links: 3 | - name: 🤔 Ask a question(提问和讨论) 4 | url: https://github.com/zhensherlock/webrtc-streamer-helper/discussions 5 | about: Ask questions and discuss with other community members(提出问题并与其他社区成员讨论) 6 | -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Policy 2 | 3 | Have you found a security vulnerability? Please report it here: [zhensherlock@126.com](mailto:zhensherlock@126.com). 4 | 5 | Please provide as much details as possible: reproduction steps, screenshots, GIFs, etc. 6 | 7 | Thanks for keeping everyone safe! 8 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: '✨ Feature request(新需求)' 3 | about: 'Propose new functional requirements(提出新的功能需求)' 4 | labels: '✨ Feature Request' 5 | --- 6 | 7 | 10 | 11 | ## 新功能 12 | 13 | ### 您建议的新功能或更新功能是什么? 14 | 15 | ### 为什么要包含此功能? 16 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | 15 | [Makefile] 16 | indent_style = tab 17 | -------------------------------------------------------------------------------- /src/types/xmppVideoRoom.ts: -------------------------------------------------------------------------------- 1 | import type { EventEmitter } from 'eventemitter3' 2 | export interface XmppVideoRoomOptions { 3 | /** 4 | * url of XMPP server 5 | */ 6 | xmppUrl: string; 7 | /** 8 | * url of webrtc-streamer (default is current location) 9 | */ 10 | url: string; 11 | /** 12 | * event bus 13 | */ 14 | eventBus?: EventEmitter; 15 | } 16 | -------------------------------------------------------------------------------- /src/types/webRTCStreamer.ts: -------------------------------------------------------------------------------- 1 | export interface WebRTCStreamerOptions { 2 | /** 3 | * id of the video element tag 4 | */ 5 | element: HTMLVideoElement | string; 6 | /** 7 | * url of webrtc-streamer (default is current location) 8 | */ 9 | url: string; 10 | } 11 | 12 | export type MediaConstraints = { 13 | offerToReceiveAudio: boolean; 14 | offerToReceiveVideo: boolean; 15 | }; 16 | -------------------------------------------------------------------------------- /src/types/htmlMapMarker.ts: -------------------------------------------------------------------------------- 1 | export interface HtmlMapMarkerOptions { 2 | /** 3 | * marker position 4 | */ 5 | latLng: google.maps.LatLng; 6 | /** 7 | * marker content 8 | */ 9 | html: string; 10 | /** 11 | * map instance 12 | */ 13 | map: google.maps.Map; 14 | /** 15 | * marker width 16 | */ 17 | width: number; 18 | /** 19 | * marker height 20 | */ 21 | height: number; 22 | } 23 | -------------------------------------------------------------------------------- /.husky/lintstagedrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | '*.{js,jsx,cjs,tsx,ts}': ['eslint --fix', 'prettier --write'], 3 | '{!(package)*.json,*.code-snippets,.!(browserslist)*rc}': ['prettier --write--parser json'], 4 | 'package.json': ['prettier --write'], 5 | '*.vue': ['eslint --fix', 'prettier --write', 'stylelint --fix'], 6 | '*.{css,less,scss,styl,postcss,html}': ['stylelint --fix', 'prettier --write'], 7 | // '*.md': ['prettier --write'], 8 | }; 9 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: "🐛 Bug Report (缺陷反馈)" 3 | about: 'Report errors to help us improve(报告错误以帮助我们改进)' 4 | labels: '🐛 Bug' 5 | --- 6 | 7 | 12 | 13 | ### 以前的Issues 14 | 15 | 16 | 17 | ### 问题描述 18 | 19 | 20 | 21 | ### 复现步骤 22 | 23 | 26 | -------------------------------------------------------------------------------- /src/types/janusVideoRoom.ts: -------------------------------------------------------------------------------- 1 | import type { EventEmitter } from 'eventemitter3' 2 | 3 | export interface JanusVideoRoomOptions { 4 | /** 5 | * url of Janus Gateway 6 | */ 7 | janusUrl: string; 8 | /** 9 | * url of webrtc-streamer (default is current location) 10 | */ 11 | url: string; 12 | /** 13 | * event bus 14 | */ 15 | eventBus?: EventEmitter; 16 | } 17 | 18 | export interface JanusVideoRoomAdvancedUrl { 19 | video?: string; 20 | audio?: string; 21 | options?: string; 22 | } 23 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "esnext", 4 | "target": "es5", 5 | "declaration": true, 6 | "emitDeclarationOnly": true, 7 | "outDir": "./dist/types", 8 | "moduleResolution": "node", 9 | "esModuleInterop": true, 10 | "strict": true, 11 | "skipLibCheck": true, 12 | "noUnusedLocals": true, 13 | "resolveJsonModule": true, 14 | "jsx": "preserve", 15 | "lib": ["es2015", "es2017", "dom"] 16 | }, 17 | "exclude": ["**/node_modules/**", "**/dist/**"] 18 | } 19 | -------------------------------------------------------------------------------- /src/utils/initialization.ts: -------------------------------------------------------------------------------- 1 | import type { WebRTCStreamerOptions, JanusVideoRoomOptions, XmppVideoRoomOptions } from '../types' 2 | 3 | export const initialWebRTCStreamerOptions: WebRTCStreamerOptions = { 4 | element: '', 5 | url: '', 6 | } 7 | 8 | export const initialJanusVideoRoomOptions: JanusVideoRoomOptions = { 9 | janusUrl: '', 10 | url: '', 11 | eventBus: undefined, 12 | } 13 | 14 | export const initialXmppVideoRoomOptions: XmppVideoRoomOptions = { 15 | xmppUrl: '', 16 | url: '', 17 | eventBus: undefined, 18 | } 19 | -------------------------------------------------------------------------------- /prettier.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | printWidth: 100, 3 | tabWidth: 2, 4 | useTabs: false, 5 | semi: true, 6 | vueIndentScriptAndStyle: true, 7 | singleQuote: true, 8 | quoteProps: 'as-needed', 9 | bracketSpacing: true, 10 | trailingComma: 'es5', 11 | jsxBracketSameLine: false, 12 | jsxSingleQuote: false, 13 | arrowParens: 'always', 14 | insertPragma: false, 15 | requirePragma: false, 16 | proseWrap: 'never', 17 | htmlWhitespaceSensitivity: 'strict', 18 | endOfLine: 'auto', 19 | rangeStart: 0, 20 | }; 21 | -------------------------------------------------------------------------------- /.github/workflows/pr-build.yml: -------------------------------------------------------------------------------- 1 | name: PR Build 2 | 3 | on: 4 | pull_request: 5 | branches: 6 | - main 7 | - dev 8 | 9 | jobs: 10 | build: 11 | runs-on: ubuntu-latest 12 | steps: 13 | - name: Checkout 14 | uses: actions/checkout@v4 15 | with: 16 | fetch-depth: 0 17 | 18 | - name: Install Node 19 | uses: actions/setup-node@v4 20 | with: 21 | node-version: 16 22 | cache: npm 23 | 24 | - name: Install Package 25 | run: npm ci 26 | 27 | - name: Build Package 28 | run: npm run build 29 | -------------------------------------------------------------------------------- /.github/workflows/sync-gitee.yml: -------------------------------------------------------------------------------- 1 | name: Sync to Gitee 2 | 3 | on: 4 | push: 5 | branches: [main, gh-pages] 6 | 7 | jobs: 8 | build: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - name: Sync to Gitee 12 | uses: wearerequired/git-mirror-action@master 13 | env: 14 | # 在 Settings->Secrets 配置 GITEE_RSA_PRIVATE_KEY 15 | SSH_PRIVATE_KEY: ${{ secrets.GITEE_RSA_PRIVATE_KEY }} 16 | with: 17 | # GitHub 源仓库地址 18 | source-repo: git@github.com:zhensherlock/webrtc-streamer-helper.git 19 | # Gitee 目标仓库地址 20 | destination-repo: git@gitee.com:cs_huayi_zhensherlock/webrtc-streamer-helper.git 21 | -------------------------------------------------------------------------------- /commitlint.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | extends: ['@commitlint/config-conventional'], 3 | rules: { 4 | // type 类型定义,表示 git 提交的 type 必须在以下类型范围内 5 | 'type-enum': [ 6 | 2, 7 | 'always', 8 | [ 9 | 'feat', // 新功能 10 | 'fix', // 修复 11 | 'docs', // 文档变更 12 | 'style', // 代码格式 13 | 'refactor', // 重构 14 | 'pref', // 性能优化 15 | 'test', // 增加测试 16 | 'build', // 构建 17 | 'ci', // CI配置 18 | 'chore', // 构建过程或辅助工具的变动 19 | 'revert', // 回退 20 | 'build', // 打包 21 | 'release' // 发版 22 | ] 23 | ], 24 | // subject 大小写不做校验 25 | 'subject-case': [0] 26 | } 27 | }; 28 | -------------------------------------------------------------------------------- /.github/workflows/npm-publish.yml: -------------------------------------------------------------------------------- 1 | # This workflow will run tests using node and then publish a package to GitHub Packages when a release is created 2 | # For more information see: https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages 3 | 4 | name: npm-publish 5 | 6 | on: 7 | release: 8 | types: [created] 9 | 10 | jobs: 11 | build: 12 | runs-on: ubuntu-latest 13 | steps: 14 | - name: Checkout 15 | uses: actions/checkout@v4 16 | with: 17 | fetch-depth: 0 18 | 19 | - name: Install Node 20 | uses: actions/setup-node@v4 21 | with: 22 | node-version: 16 23 | registry-url: https://registry.npmjs.org/ 24 | cache: npm 25 | 26 | - name: Install Package 27 | run: npm ci 28 | 29 | - name: Build Package 30 | run: npm run build 31 | 32 | - name: Publish NPM Package 33 | run: npm publish 34 | env: 35 | NODE_AUTH_TOKEN: ${{secrets.npm_token}} 36 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 MichaelSun 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | parser: '@typescript-eslint/parser', // 解析器,默认使用Espree 3 | env: { // 指定脚本的运行环境。每种环境都有一组特定的预定义全局变量。 4 | browser: true, // 运行在浏览器 5 | es2021: true, // 支持es2021 6 | es6: true, 7 | }, 8 | extends: [ // 使用的外部代码格式化配置文件 9 | // 'semistandard', 10 | 'plugin:import/recommended' 11 | ], 12 | plugins: [ 13 | 'import' 14 | ], 15 | parserOptions: { 16 | ecmaVersion: 12, // ecmaVersion 用来指定支持的 ECMAScript 版本 。默认为 5,即仅支持es5 17 | sourceType: 'module', 18 | }, 19 | globals: { // 脚本在执行期间访问的额外的全局变量 20 | describe: true, 21 | it: true, 22 | after: true, 23 | before: true, 24 | afterEach: true, 25 | beforeEach: true, 26 | __BUILD__: true, 27 | __DEV__: true, 28 | __SIT__: true, 29 | __UAT__: true, 30 | __PROD__: true 31 | }, 32 | rules: { 33 | // 启用的规则及其各自的错误级别。0(off) 1(warning) 2(error) 34 | 'no-console': 0, 35 | semi: [1, 'never'], 36 | quotes: [1, 'single'], 37 | 'no-unused-vars': 0, 38 | }, 39 | settings: { 40 | 'import/resolver': { 41 | node: { 42 | extensions: ['.js', '.jsx', '.ts', '.tsx'] 43 | } 44 | } 45 | }, 46 | }; 47 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 | npm package 3 | npm bundle size 4 | npm download week 5 | GitHub 6 |

7 | 8 | # webrtc-streamer-helper 9 | 10 | > This is a webrtc streamer helper. 11 | 12 | ## Installing 13 | 14 | ```bash 15 | # or pnpm or yarn 16 | npm install webrtc-streamer-helper 17 | ``` 18 | 19 | ## Usage 20 | 21 | ```ts 22 | import { WebRTCStreamer } from 'webrtc-streamer-helper' 23 | 24 | const webRtcServer = new WebRTCStreamer({ 25 | url: 'http://10.57.2.244:8000', 26 | element: '#div-1' 27 | }) 28 | 29 | webRtcServer.connect( 30 | videoUrl, 31 | audioUrl, 32 | 'rtptransport=tcp&timeout=60&width=320&height=0' 33 | ) 34 | ``` 35 | 36 | ## Maintainers 37 | 38 | [@zhensherlock](https://github.com/zhensherlock). 39 | 40 | ## Contributing 41 | 42 | Feel free to dive in! [Open an issue](https://github.com/zhensherlock/webrtc-streamer-helper/issues/new/choose) or submit PRs. 43 | 44 | Standard Readme follows the [Contributor Covenant](http://contributor-covenant.org/version/1/3/0/) Code of Conduct. 45 | 46 | ### Contributors 47 | 48 | This project exists thanks to all the people who contribute. 49 | 50 | 51 | 52 | 53 | 54 | ## License 55 | 56 | [MIT](LICENSE) © MichaelSun 57 | -------------------------------------------------------------------------------- /stylelint.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | plugins: ['stylelint-order'], 4 | extends: [ 5 | // 'stylelint-config-standard', 6 | // 'stylelint-config-standard-scss', 7 | // 'stylelint-config-prettier', 8 | ], 9 | rules: { 10 | 'selector-pseudo-class-no-unknown': [ 11 | true, 12 | { 13 | ignorePseudoClasses: ['global'], 14 | }, 15 | ], 16 | 'selector-pseudo-element-no-unknown': [ 17 | true, 18 | { 19 | ignorePseudoElements: ['v-deep'], 20 | }, 21 | ], 22 | 'at-rule-no-unknown': [ 23 | true, 24 | { 25 | ignoreAtRules: [ 26 | 'tailwind', 27 | 'apply', 28 | 'variants', 29 | 'responsive', 30 | 'screen', 31 | 'function', 32 | 'if', 33 | 'each', 34 | 'include', 35 | 'mixin', 36 | ], 37 | }, 38 | ], 39 | 'no-empty-source': null, 40 | 'named-grid-areas-no-invalid': null, 41 | // 'unicode-bom': 'never', 42 | 'no-descending-specificity': null, 43 | 'font-family-no-missing-generic-family-keyword': null, 44 | // 'declaration-colon-space-after': 'always-single-line', 45 | // 'declaration-colon-space-before': 'never', 46 | // 'declaration-block-trailing-semicolon': 'always', 47 | 'rule-empty-line-before': [ 48 | 'always', 49 | { 50 | ignore: ['after-comment', 'first-nested'], 51 | }, 52 | ], 53 | 'unit-no-unknown': [true, { ignoreUnits: ['rpx'] }], 54 | 'order/order': [ 55 | [ 56 | 'dollar-variables', 57 | 'custom-properties', 58 | 'at-rules', 59 | 'declarations', 60 | { 61 | type: 'at-rule', 62 | name: 'supports', 63 | }, 64 | { 65 | type: 'at-rule', 66 | name: 'media', 67 | }, 68 | 'rules', 69 | ], 70 | { severity: 'warning' }, 71 | ], 72 | }, 73 | ignoreFiles: ['**/*.js', '**/*.cjs', '**/*.jsx', '**/*.tsx', '**/*.ts'], 74 | }; 75 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | 9 | # Diagnostic reports (https://nodejs.org/api/report.html) 10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 11 | 12 | # Runtime data 13 | pids 14 | *.pid 15 | *.seed 16 | *.pid.lock 17 | 18 | # Directory for instrumented libs generated by jscoverage/JSCover 19 | lib-cov 20 | 21 | # Coverage directory used by tools like istanbul 22 | coverage 23 | *.lcov 24 | 25 | # nyc test coverage 26 | .nyc_output 27 | 28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 29 | .grunt 30 | 31 | # Bower dependency directory (https://bower.io/) 32 | bower_components 33 | 34 | # node-waf configuration 35 | .lock-wscript 36 | 37 | # Compiled binary addons (https://nodejs.org/api/addons.html) 38 | build/Release 39 | 40 | # Dependency directories 41 | node_modules/ 42 | jspm_packages/ 43 | 44 | # TypeScript v1 declaration files 45 | typings/ 46 | 47 | # TypeScript cache 48 | *.tsbuildinfo 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Microbundle cache 57 | .rpt2_cache/ 58 | .rts2_cache_cjs/ 59 | .rts2_cache_es/ 60 | .rts2_cache_umd/ 61 | 62 | # Optional REPL history 63 | .node_repl_history 64 | 65 | # Output of 'npm pack' 66 | *.tgz 67 | 68 | # Yarn Integrity file 69 | .yarn-integrity 70 | 71 | # dotenv environment variables file 72 | .env 73 | .env.test 74 | 75 | # parcel-bundler cache (https://parceljs.org/) 76 | .cache 77 | 78 | # Next.js build output 79 | .next 80 | 81 | # Nuxt.js build / generate output 82 | .nuxt 83 | dist 84 | 85 | # Gatsby files 86 | .cache/ 87 | # Comment in the public line in if your project uses Gatsby and *not* Next.js 88 | # https://nextjs.org/blog/next-9-1#public-directory-support 89 | # public 90 | 91 | # vuepress build output 92 | .vuepress/dist 93 | 94 | # Serverless directories 95 | .serverless/ 96 | 97 | # FuseBox cache 98 | .fusebox/ 99 | 100 | # DynamoDB Local files 101 | .dynamodb/ 102 | 103 | # TernJS port file 104 | .tern-port 105 | /.idea/ 106 | -------------------------------------------------------------------------------- /rollup.config.js: -------------------------------------------------------------------------------- 1 | import filesize from 'rollup-plugin-filesize' 2 | import typescript from '@rollup/plugin-typescript' 3 | import resolve from '@rollup/plugin-node-resolve' 4 | import strip from '@rollup/plugin-strip' 5 | import eslint from '@rollup/plugin-eslint' 6 | import babel from '@rollup/plugin-babel' 7 | import terser from '@rollup/plugin-terser' 8 | import postcss from 'rollup-plugin-postcss' 9 | import autoprefixer from 'autoprefixer' 10 | import cssnano from 'cssnano' 11 | // import sass from 'rollup-plugin-sass' 12 | 13 | const output = [ 14 | { 15 | name: 'WebrtcStreamerHelper', 16 | format: 'esm', 17 | file: 'dist/index.esm.js', 18 | sourcemap: true 19 | }, 20 | { 21 | name: 'WebrtcStreamerHelper', 22 | format: 'umd', 23 | file: 'dist/index.umd.js', 24 | sourcemap: true 25 | }, 26 | { 27 | name: 'WebrtcStreamerHelper', 28 | format: 'iife', 29 | file: 'dist/index.iife.js', 30 | sourcemap: true 31 | }, 32 | { 33 | name: 'WebrtcStreamerHelper', 34 | format: 'cjs', 35 | file: 'dist/index.cjs.js', 36 | sourcemap: true 37 | }, 38 | // min 39 | { 40 | name: 'WebrtcStreamerHelper', 41 | format: 'esm', 42 | file: 'dist/index.esm.min.js', 43 | plugins: [terser()] 44 | }, 45 | { 46 | name: 'WebrtcStreamerHelper', 47 | format: 'umd', 48 | file: 'dist/index.umd.min.js', 49 | plugins: [terser()] 50 | }, 51 | { 52 | name: 'WebrtcStreamerHelper', 53 | format: 'iife', 54 | file: 'dist/index.iife.min.js', 55 | plugins: [terser()] 56 | }, 57 | { 58 | name: 'WebrtcStreamerHelper', 59 | format: 'cjs', 60 | file: 'dist/index.cjs.min.js', 61 | plugins: [terser()] 62 | } 63 | ] 64 | 65 | export default [ 66 | { 67 | input: 'src/main.ts', 68 | output, 69 | plugins: [ 70 | eslint({ 71 | throwOnError: true, 72 | throwOnWarning: true, 73 | include: ['src/**'], 74 | exclude: ['node_modules/**', 'src/style/**'] 75 | }), 76 | resolve(), 77 | strip(), 78 | typescript(), 79 | postcss({ 80 | plugins: [ 81 | autoprefixer(), 82 | cssnano() 83 | ] 84 | }), 85 | // sass({ 86 | // insert: true 87 | // }), 88 | babel({ babelHelpers: 'runtime', exclude: ['node_modules/**'] }), 89 | filesize() 90 | ], 91 | external: [] 92 | } 93 | ] 94 | -------------------------------------------------------------------------------- /changelog-option.js: -------------------------------------------------------------------------------- 1 | const compareFunc = require('compare-func') 2 | 3 | module.exports = { 4 | writerOpts: { 5 | transform: (commit, context) => { 6 | let discard = true 7 | const issues = [] 8 | 9 | commit.notes.forEach(note => { 10 | note.title = 'BREAKING CHANGES' 11 | discard = false 12 | }) 13 | if (commit.type === 'feat') { 14 | commit.type = '✨ Features | 新功能' 15 | } else if (commit.type === 'fix') { 16 | commit.type = '🐛 Bug Fixes | Bug 修复' 17 | } else if (commit.type === 'perf') { 18 | commit.type = '⚡ Performance Improvements | 性能优化' 19 | } else if (commit.type === 'revert' || commit.revert) { 20 | commit.type = '⏪ Reverts | 回退' 21 | } else if (commit.type === 'refactor') { 22 | commit.type = '♻ Code Refactoring | 代码重构' 23 | } else if (commit.type === 'test') { 24 | commit.type = '✅ Tests | 测试' 25 | } else if (commit.type === 'build') { 26 | commit.type = '👷‍ Build System | 构建' 27 | } else if (commit.type === 'chore') { 28 | commit.type = '🎫 Chores | 其他更新' 29 | } else if (commit.type === 'style') { 30 | commit.type = '💄 Styles | 风格' 31 | } else if (discard) { 32 | return 33 | } else if (commit.type === 'ci') { 34 | commit.type = '🔧 Continuous Integration | CI 配置' 35 | } else if (commit.type === 'docs') { 36 | commit.type = '📝 Documentation | 文档' 37 | } 38 | 39 | if (commit.scope === '*') { 40 | commit.scope = '' 41 | } 42 | 43 | if (typeof commit.hash === 'string') { 44 | commit.shortHash = commit.hash.substring(0, 7) 45 | } 46 | 47 | if (typeof commit.subject === 'string') { 48 | let url = context.repository 49 | ? `${context.host}/${context.owner}/${context.repository}` 50 | : context.repoUrl 51 | 52 | if (url) { 53 | url = `${url}/issues/` 54 | // Issue URLs. 55 | commit.subject = commit.subject.replace(/#([0-9]+)/g, (_, issue) => { 56 | issues.push(issue) 57 | return `[#${issue}](${url}${issue})` 58 | }) 59 | } 60 | 61 | if (context.host) { 62 | // User URLs. 63 | commit.subject = commit.subject.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g, (_, username) => { 64 | if (username.includes('/')) { 65 | return `@${username}` 66 | } 67 | return `[@${username}](${context.host}/${username})` 68 | }) 69 | } 70 | } 71 | 72 | // remove references that already appear in the subject 73 | commit.references = commit.references.filter(reference => { 74 | if (issues.indexOf(reference.issue) === -1) { 75 | return true 76 | } 77 | return false 78 | }) 79 | return commit 80 | }, 81 | groupBy: 'type', 82 | commitGroupsSort: 'title', 83 | commitsSort: ['scope', 'subject'], 84 | noteGroupsSort: 'title', 85 | notesSort: compareFunc 86 | } 87 | } 88 | -------------------------------------------------------------------------------- /src/core/htmlMapMarker.ts: -------------------------------------------------------------------------------- 1 | /// 2 | 3 | /** 4 | * Interface with WebRTC-streamer API 5 | */ 6 | import type { HtmlMapMarkerOptions } from '../types' 7 | 8 | class HtmlMapMarker extends google.maps.OverlayView { 9 | /** 10 | * marker position 11 | * @private 12 | */ 13 | private readonly latLng: google.maps.LatLng 14 | /** 15 | * marker content 16 | * @private 17 | */ 18 | private readonly html: string 19 | /** 20 | * map instance 21 | * @private 22 | */ 23 | private readonly map: google.maps.Map 24 | /** 25 | * marker width 26 | * @private 27 | */ 28 | private width: number 29 | /** 30 | * marker height 31 | * @private 32 | */ 33 | private height: number 34 | /** 35 | * div for marker content 36 | * @private 37 | */ 38 | private div?: HTMLDivElement 39 | 40 | /** 41 | * Instantiate object 42 | * accepts latLng, html, map etc 43 | * @constructor 44 | * @param args 45 | */ 46 | constructor(args: HtmlMapMarkerOptions) { 47 | super() 48 | this.latLng = args.latLng 49 | this.html = args.html 50 | this.map = args.map 51 | this.width = args.width 52 | this.height = args.height 53 | this.setMap(args.map) 54 | } 55 | 56 | /** 57 | * create a div to hold the marker content 58 | */ 59 | createDiv(): void { 60 | this.div = document.createElement('div') 61 | this.div.style.position = 'absolute' 62 | if (this.width && this.height) { 63 | this.div.style.width = `${this.width}px` 64 | this.div.style.height = `${this.height}px` 65 | } 66 | if (this.html) { 67 | this.div.innerHTML = this.html 68 | } 69 | 70 | google.maps.event.addDomListener(this.div, 'click', (event: any) => { 71 | event.stopPropagation() 72 | google.maps.event.trigger(this, 'click', event) 73 | }) 74 | } 75 | 76 | /** 77 | * position the marker div 78 | */ 79 | positionDiv(): void { 80 | const point = this.getProjection().fromLatLngToDivPixel(this.latLng) 81 | if (point) { 82 | const left = point.x - this.div!.clientWidth / 2 83 | this.div!.style.left = `${left}px` 84 | const top = point.y - this.div!.clientHeight / 2 85 | this.div!.style.top = `${top}px` 86 | } 87 | } 88 | 89 | /** 90 | * add the marker div to the map 91 | */ 92 | onAdd(): void { 93 | if (!this.div) { 94 | this.createDiv() 95 | const panes = this.getPanes() 96 | panes?.overlayMouseTarget.appendChild(this.div!) 97 | } 98 | this.positionDiv() 99 | } 100 | 101 | /** 102 | * reposition the marker div 103 | */ 104 | draw() { 105 | this.positionDiv() 106 | } 107 | 108 | /** 109 | * remove the marker div from the map 110 | */ 111 | onRemove(): void { 112 | if (this.div) { 113 | this.div.parentNode?.removeChild(this.div) 114 | this.div = undefined 115 | } 116 | } 117 | 118 | /** 119 | * get the marker position 120 | */ 121 | getPosition(): google.maps.LatLng { 122 | return this.latLng 123 | } 124 | 125 | /** 126 | * remove the marker from the map 127 | */ 128 | detach(): void { 129 | if (this.getMap()) { 130 | this.setMap(null) 131 | } 132 | } 133 | 134 | /** 135 | * attach the marker to the map 136 | * @param map 137 | */ 138 | attach(map?: google.maps.Map): void { 139 | if (!this.getMap()) { 140 | this.setMap(map || this.map) 141 | } 142 | } 143 | 144 | /** 145 | * set size of the marker div 146 | * @param width 147 | * @param height 148 | */ 149 | setSize(width: number, height: number): void { 150 | this.width = width 151 | this.height = height 152 | if (this.div) { 153 | this.div.style.width = `${this.width}px` 154 | this.div.style.height = `${this.height}px` 155 | } 156 | } 157 | } 158 | 159 | export { HtmlMapMarker } 160 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "webrtc-streamer-helper", 3 | "version": "1.4.4", 4 | "description": "webrtc streamer helper", 5 | "scripts": { 6 | "clean:dist": "rimraf dist", 7 | "prepare": "husky install", 8 | "lint:lint-staged": "lint-staged -c ./.husky/lintstagedrc.js", 9 | "lint:prettier": "prettier --write \"src/**/*.{js,jsx,cjs,json,tsx,ts,css,less,scss,vue,html,md}\"", 10 | "lint:eslint": "eslint --cache --max-warnings 0 \"src/**/*.{js,jsx,cjs,tsx,ts}\" --fix", 11 | "lint:stylelint": "stylelint --cache --fix \"src/**/*.{css,less,scss,styl,postcss,vue}\" --cache --cache-location node_modules/.cache/stylelint/", 12 | "lint": "npx eslint \"src/**/*.{ts,js}\" --fix", 13 | "dev": "concurrently \"npm run src:dev\"", 14 | "src:dev": "rollup -c --watch --bundleConfigAsCjs", 15 | "build:types": "npm run clean:dist && tsc", 16 | "build": "npm run build:types && rollup -c --bundleConfigAsCjs --environment NODE_ENV:production", 17 | "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 -n changelog-option.js", 18 | "lint-changelog": "concurrently \"npm run lint\" \"npm run changelog\"" 19 | }, 20 | "repository": { 21 | "type": "git", 22 | "url": "git+https://github.com/zhensherlock/webrtc-streamer-helper.git" 23 | }, 24 | "author": "zhensherlock", 25 | "license": "MIT", 26 | "bugs": { 27 | "url": "https://github.com/zhensherlock/webrtc-streamer-helper/issues" 28 | }, 29 | "homepage": "https://github.com/zhensherlock/webrtc-streamer-helper#readme", 30 | "keywords": [ 31 | "webrtc-streamer", 32 | "webrtc-streamer-helper" 33 | ], 34 | "main": "dist/index.cjs.js", 35 | "module": "dist/index.esm.js", 36 | "webpack": "dist/index.esm.js", 37 | "browser": "dist/index.esm.js", 38 | "unpkg": "dist/index.iife.js", 39 | "jsdelivr": "dist/index.iife.js", 40 | "types": "dist/types/main.d.ts", 41 | "exports": { 42 | ".": { 43 | "types": "./dist/types/src/index.d.ts", 44 | "import": { 45 | "node": "./index.mjs", 46 | "default": "./dist/index.esm.js" 47 | }, 48 | "require": "./dist/index.cjs.js" 49 | }, 50 | "./package.json": "./package.json", 51 | "./dist/*": "./dist/*" 52 | }, 53 | "files": [ 54 | "dist", 55 | "index.js", 56 | "index.mjs", 57 | "index.cjs", 58 | "LICENSE", 59 | "README.md" 60 | ], 61 | "devDependencies": { 62 | "@babel/core": "^7.24.7", 63 | "@babel/eslint-parser": "^7.24.7", 64 | "@babel/plugin-transform-runtime": "^7.24.7", 65 | "@babel/preset-env": "^7.24.7", 66 | "@commitlint/cli": "^19.3.0", 67 | "@commitlint/config-conventional": "^19.2.2", 68 | "@rollup/plugin-babel": "^6.0.4", 69 | "@rollup/plugin-eslint": "^9.0.5", 70 | "@rollup/plugin-node-resolve": "^15.2.3", 71 | "@rollup/plugin-strip": "^3.0.4", 72 | "@rollup/plugin-terser": "^0.4.4", 73 | "@rollup/plugin-typescript": "^11.1.6", 74 | "@types/google.maps": "^3.55.11", 75 | "@typescript-eslint/parser": "^8.0.0", 76 | "autoprefixer": "^10.4.19", 77 | "concurrently": "^8.2.2", 78 | "conventional-changelog-angular": "^7.0.0", 79 | "conventional-changelog-cli": "^4.1.0", 80 | "cssnano": "^7.0.3", 81 | "eslint": "^8.57.0", 82 | "eslint-config-airbnb-base": "^15.0.0", 83 | "eslint-config-prettier": "^9.1.0", 84 | "eslint-config-semistandard": "^17.0.0", 85 | "eslint-define-config": "^2.1.0", 86 | "eslint-plugin-import": "^2.29.1", 87 | "eslint-plugin-prettier": "^5.1.3", 88 | "husky": "^9.0.11", 89 | "lint-staged": "^15.2.7", 90 | "prettier": "^3.3.2", 91 | "rimraf": "^6.0.0", 92 | "rollup": "^4.18.0", 93 | "rollup-plugin-filesize": "^10.0.0", 94 | "rollup-plugin-postcss": "^4.0.2", 95 | "rollup-plugin-sass": "^1.13.1", 96 | "stylelint": "^16.6.1", 97 | "stylelint-order": "^6.0.4", 98 | "typescript": "5.6.3" 99 | }, 100 | "browserslist": [ 101 | "defaults", 102 | "not ie < 8", 103 | "last 2 versions", 104 | "> 1%", 105 | "iOS 7", 106 | "last 3 iOS versions" 107 | ], 108 | "dependencies": { 109 | "eventemitter3": "^5.0.1" 110 | } 111 | } 112 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, caste, color, religion, or sexual identity and orientation. 6 | 7 | We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community. 8 | 9 | ## Our Standards 10 | 11 | Examples of behavior that contributes to a positive environment for our community include: 12 | 13 | - Demonstrating empathy and kindness toward other people 14 | - Being respectful of differing opinions, viewpoints, and experiences 15 | - Giving and gracefully accepting constructive feedback 16 | - Accepting responsibility and apologizing to those affected by our mistakes, and learning from the experience 17 | - Focusing on what is best not just for us as individuals, but for the overall community 18 | 19 | Examples of unacceptable behavior include: 20 | 21 | - The use of sexualized language or imagery, and sexual attention or advances of any kind 22 | - Trolling, insulting or derogatory comments, and personal or political attacks 23 | - Public or private harassment 24 | - Publishing others' private information, such as a physical or email address, without their explicit permission 25 | - Other conduct which could reasonably be considered inappropriate in a professional setting 26 | 27 | ## Enforcement Responsibilities 28 | 29 | Community leaders are responsible for clarifying and enforcing our standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful. 30 | 31 | Community leaders have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, and will communicate reasons for moderation decisions when appropriate. 32 | 33 | ## Scope 34 | 35 | This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public spaces. Examples of representing our community include using an official e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. 36 | 37 | ## Enforcement 38 | 39 | Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the community leaders responsible for enforcement at [zhensherlock@126.com](mailto:zhensherlock@126.com). All complaints will be reviewed and investigated promptly and fairly. 40 | 41 | All community leaders are obligated to respect the privacy and security of the reporter of any incident. 42 | 43 | ## Enforcement Guidelines 44 | 45 | Community leaders will follow these Community Impact Guidelines in determining the consequences for any action they deem in violation of this Code of Conduct: 46 | 47 | ### 1. Correction 48 | 49 | **Community Impact**: Use of inappropriate language or other behavior deemed unprofessional or unwelcome in the community. 50 | 51 | **Consequence**: A private, written warning from community leaders, providing clarity around the nature of the violation and an explanation of why the behavior was inappropriate. A public apology may be requested. 52 | 53 | ### 2. Warning 54 | 55 | **Community Impact**: A violation through a single incident or series of actions. 56 | 57 | **Consequence**: A warning with consequences for continued behavior. No interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, for a specified period of time. This includes avoiding interactions in community spaces as well as external channels like social media. Violating these terms may lead to a temporary or permanent ban. 58 | 59 | ### 3. Temporary Ban 60 | 61 | **Community Impact**: A serious violation of community standards, including sustained inappropriate behavior. 62 | 63 | **Consequence**: A temporary ban from any sort of interaction or public communication with the community for a specified period of time. No public or private interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, is allowed during this period. Violating these terms may lead to a permanent ban. 64 | 65 | ### 4. Permanent Ban 66 | 67 | **Community Impact**: Demonstrating a pattern of violation of community standards, including sustained inappropriate behavior, harassment of an individual, or aggression toward or disparagement of classes of individuals. 68 | 69 | **Consequence**: A permanent ban from any sort of public interaction within the community. 70 | 71 | ## Attribution 72 | 73 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 2.1, available at [https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1]. 74 | 75 | Community Impact Guidelines were inspired by [Mozilla's code of conduct enforcement ladder][Mozilla CoC]. 76 | 77 | For answers to common questions about this code of conduct, see the FAQ at [https://www.contributor-covenant.org/faq][FAQ]. Translations are available at [https://www.contributor-covenant.org/translations][translations]. 78 | 79 | [homepage]: https://www.contributor-covenant.org 80 | [v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html 81 | [Mozilla CoC]: https://github.com/mozilla/diversity 82 | [FAQ]: https://www.contributor-covenant.org/faq 83 | [translations]: https://www.contributor-covenant.org/translations 84 | -------------------------------------------------------------------------------- /src/core/webRTCStreamer.ts: -------------------------------------------------------------------------------- 1 | import type { MediaConstraints, WebRTCStreamerOptions } from '../types' 2 | import { initialWebRTCStreamerOptions } from '../utils/initialization' 3 | 4 | /** 5 | * Interface with WebRTC-streamer API 6 | */ 7 | class WebRTCStreamer { 8 | private element?: HTMLVideoElement 9 | private options: WebRTCStreamerOptions 10 | private peerConnection: RTCPeerConnection | null = null 11 | private peerConnectionConfig?: RTCConfiguration 12 | private peerConnectionId: number = 0 13 | private mediaConstraints: MediaConstraints 14 | private iceServers: RTCConfiguration | null = null 15 | private earlyCandidates: RTCIceCandidate[] = [] 16 | 17 | /** 18 | * Instantiate object 19 | * @constructor 20 | * @param args 21 | */ 22 | constructor(args: Partial = {}) { 23 | this.options = Object.assign({}, initialWebRTCStreamerOptions, args) 24 | if (!this.options.url) { 25 | this.options.url = `${window.location.protocol}//${window.location.hostname}:${window.location.port}` 26 | } 27 | this.mediaConstraints = { offerToReceiveAudio: true, offerToReceiveVideo: true } 28 | this.changeElement(this.options.element) 29 | } 30 | 31 | /** 32 | * Connect a WebRTC Stream to videoElement 33 | * @param videUrl 34 | * @param audioUrl 35 | * @param options 36 | * @param localStream 37 | * @param preferenceMime 38 | */ 39 | connect(videUrl: string, audioUrl: string, options: string, localStream?: MediaStream, preferenceMime?: string): void { 40 | this.disconnect() 41 | 42 | if (!this.iceServers) { 43 | fetch(`${this.options.url}/api/getIceServers`) 44 | .then(this.handleHttpErrors) 45 | .then((res: Response) => { 46 | return res.json() 47 | }) 48 | .then((res) => { 49 | return this.onReceiveGetIceServers(res, videUrl, audioUrl, options, localStream, preferenceMime) 50 | }) 51 | .catch((error) => this.onError(`getIceServers ${error}`)) 52 | } else { 53 | this.onReceiveGetIceServers(this.iceServers, videUrl, audioUrl, options, localStream, preferenceMime) 54 | } 55 | } 56 | 57 | /** 58 | * Disconnect a WebRTC Stream and clear videoElement source 59 | */ 60 | disconnect(): void { 61 | if (this.element?.srcObject) { 62 | // @ts-ignore 63 | this.element.srcObject.getTracks().forEach((track: any) => { 64 | track.stop() 65 | // @ts-ignore 66 | this.element?.srcObject?.removeTrack(track) 67 | }) 68 | } 69 | if (this.peerConnection) { 70 | fetch(`${this.options.url}/api/hangup?peerid=${this.peerConnectionId}`) 71 | .then(this.handleHttpErrors) 72 | .catch((error: Error) => this.onError(`hangup ${error}`)) 73 | 74 | try { 75 | this.peerConnection.close() 76 | } catch (e) { 77 | console.log(`Failure close peer connection: ${e}`) 78 | } 79 | this.peerConnection = null 80 | } 81 | } 82 | 83 | private changeElement(element: HTMLVideoElement | string): void { 84 | if (typeof element === 'string') { 85 | const dom = document.querySelector(element) 86 | dom && (this.element = dom) 87 | } else { 88 | this.element = element 89 | } 90 | } 91 | 92 | private handleHttpErrors(res: Response): Response { 93 | if (!res.ok) { 94 | throw Error(res.statusText) 95 | } 96 | return res 97 | } 98 | 99 | /** 100 | * GetIceServers callback 101 | * @param iceServers 102 | * @param videoUrl 103 | * @param audioUrl 104 | * @param options 105 | * @param stream 106 | * @private 107 | */ 108 | private onReceiveGetIceServers( 109 | iceServers: RTCConfiguration, 110 | videoUrl: string, 111 | audioUrl: string, 112 | options: string, 113 | stream?: MediaStream, 114 | preferenceMime?: string 115 | ): void { 116 | this.iceServers = iceServers 117 | this.peerConnectionConfig = iceServers || { iceServers: [] } 118 | try { 119 | this.createPeerConnection() 120 | 121 | let callUrl = `${this.options.url}/api/call?peerid=${ 122 | this.peerConnectionId 123 | }&url=${encodeURIComponent(videoUrl)}` 124 | if (audioUrl) { 125 | callUrl += `&audiourl=${encodeURIComponent(audioUrl)}` 126 | } 127 | if (options) { 128 | callUrl += `&options=${encodeURIComponent(options)}` 129 | } 130 | 131 | if (stream) { 132 | // @ts-ignore 133 | this.peerConnection.addStream(stream) 134 | } 135 | 136 | // clear early candidates 137 | this.earlyCandidates.length = 0 138 | 139 | // create Offer 140 | this.peerConnection?.createOffer(this.mediaConstraints).then( 141 | (sessionDescription) => { 142 | console.log(`Create offer: ${JSON.stringify(sessionDescription)}`) 143 | console.log(`video codecs:${Array.from(new Set(RTCRtpReceiver.getCapabilities('video')?.codecs?.map(codec => codec.mimeType)))}`) 144 | console.log(`audio codecs:${Array.from(new Set(RTCRtpReceiver.getCapabilities('audio')?.codecs?.map(codec => codec.mimeType)))}`) 145 | 146 | if (preferenceMime !== undefined) { 147 | // set preference codec 148 | let [preferenceKind] = preferenceMime.split('/') 149 | const codecs = RTCRtpReceiver.getCapabilities(preferenceKind)?.codecs || [] 150 | let preferenceCodecs = codecs.filter((codec: RTCRtpCodecCapability) => codec.mimeType === preferenceMime) 151 | 152 | console.log(`preferenceCodecs: ${JSON.stringify(preferenceCodecs)}`) 153 | this.peerConnection?.getTransceivers().filter(transceiver => transceiver.receiver.track.kind === preferenceKind).forEach(item => { 154 | if(item.setCodecPreferences !== undefined) { 155 | item.setCodecPreferences(preferenceCodecs) 156 | } 157 | }) 158 | } 159 | this.peerConnection?.setLocalDescription(sessionDescription).then( 160 | () => { 161 | fetch(callUrl, { 162 | method: 'POST', 163 | body: JSON.stringify(sessionDescription), 164 | }) 165 | .then(this.handleHttpErrors) 166 | .then((res: Response) => { 167 | return res.json() 168 | }) 169 | .then((res) => { 170 | this.onReceiveCall(res) 171 | }) 172 | .catch((error) => this.onError(`call ${error}`)) 173 | }, 174 | (error: Error) => { 175 | console.log(`setLocalDescription error: ${JSON.stringify(error)}`) 176 | } 177 | ) 178 | }, 179 | (error: Error) => { 180 | console.log(`Create offer error: ${JSON.stringify(error)}`) 181 | } 182 | ) 183 | } catch (e) { 184 | this.disconnect() 185 | console.log(`connect error: ${e}`) 186 | } 187 | } 188 | 189 | /** 190 | * AJAX callback for Error 191 | * @param status 192 | * @private 193 | */ 194 | private onError(status: string): void { 195 | console.log(`onError: ${status}`) 196 | } 197 | 198 | /** 199 | * create RTCPeerConnection 200 | * @private 201 | */ 202 | private createPeerConnection(): RTCPeerConnection { 203 | console.log(`createPeerConnection config: ${JSON.stringify(this.peerConnectionConfig)}`) 204 | this.peerConnection = new RTCPeerConnection(this.peerConnectionConfig) 205 | this.peerConnectionId = Math.random() 206 | 207 | this.peerConnection.onicecandidate = (event) => { 208 | this.onIceCandidate(event) 209 | } 210 | // @ts-ignore 211 | this.peerConnection.onaddstream = (event) => { 212 | this.onAddStream(event) 213 | } 214 | this.peerConnection.oniceconnectionstatechange = (evt) => { 215 | console.log(`oniceconnectionstatechange state: ${this.peerConnection?.iceConnectionState}`) 216 | if (!this.element) { 217 | return 218 | } 219 | switch (this.peerConnection?.iceConnectionState) { 220 | case 'connected': 221 | (this.element).style.opacity = '1.0' 222 | break 223 | case 'disconnected': 224 | (this.element).style.opacity = '0.25' 225 | break 226 | case 'failed': 227 | case 'closed': 228 | (this.element).style.opacity = '0.5' 229 | break 230 | case 'new': 231 | this.getIceCandidate() 232 | break 233 | } 234 | } 235 | this.peerConnection.ondatachannel = function (event) { 236 | console.log(`remote datachannel created: ${JSON.stringify(event)}`) 237 | 238 | event.channel.onopen = function () { 239 | console.log('remote datachannel open') 240 | this.send('remote channel opened') 241 | } 242 | event.channel.onmessage = function (event) { 243 | console.log(`remote datachannel receive: ${JSON.stringify(event.data)}`) 244 | } 245 | } 246 | // this.peerConnection.onicegatheringstatechange = () => { 247 | // if (this.peerConnection?.iceGatheringState === 'complete') { 248 | // const receivers = this.peerConnection.getReceivers() 249 | // 250 | // receivers.forEach((receiver) => { 251 | // if (receiver.track && receiver.track.kind === 'video') { 252 | // console.log(`codecs: ${JSON.stringify(receiver.getParameters().codecs)}`) 253 | // } 254 | // }) 255 | // } 256 | // } 257 | 258 | try { 259 | const dataChannel = this.peerConnection.createDataChannel('ClientDataChannel') 260 | dataChannel.onopen = function () { 261 | console.log('local datachannel open') 262 | this.send('local channel opened') 263 | } 264 | dataChannel.onmessage = function (event) { 265 | console.log(`local datachannel receiver: ${JSON.stringify(event.data)}`) 266 | } 267 | } catch (e) { 268 | console.log(`Cannot create datachannel error: ${e}`) 269 | } 270 | 271 | console.log( 272 | `Created RTCPeerConnection with config: ${JSON.stringify(this.peerConnectionConfig)}` 273 | ) 274 | return this.peerConnection 275 | } 276 | 277 | /** 278 | * AJAX /call callback 279 | * @param dataJson 280 | * @private 281 | */ 282 | private onReceiveCall(dataJson: RTCSessionDescriptionInit): void { 283 | console.log(`offer: ${JSON.stringify(dataJson)}`) 284 | const sessionDescription = new RTCSessionDescription(dataJson) 285 | this.peerConnection?.setRemoteDescription(sessionDescription).then( 286 | () => { 287 | console.log('setRemoteDescription ok') 288 | while (this.earlyCandidates.length) { 289 | const candidate = this.earlyCandidates.shift() 290 | this.addIceCandidate(this.peerConnectionId, candidate) 291 | } 292 | this.getIceCandidate() 293 | }, 294 | (error: Error) => { 295 | console.log(`setRemoteDescription error: ${JSON.stringify(error)}`) 296 | } 297 | ) 298 | } 299 | 300 | private addIceCandidate(id: number, candidate: any): void { 301 | fetch(`${this.options.url}/api/addIceCandidate?peerid=${id}`, { 302 | method: 'POST', 303 | body: JSON.stringify(candidate), 304 | }) 305 | .then(this.handleHttpErrors) 306 | .then((res: Response) => { 307 | return res.json() 308 | }) 309 | .then((res) => { 310 | console.log(`addIceCandidate ok: ${res}`) 311 | }) 312 | .catch((error) => this.onError(`addIceCandidate ${error}`)) 313 | } 314 | 315 | private getIceCandidate(): void { 316 | fetch(`${this.options.url}/api/getIceCandidate?peerid=${this.peerConnectionId}`) 317 | .then(this.handleHttpErrors) 318 | .then((res: Response) => { 319 | return res.json() 320 | }) 321 | .then((res) => { 322 | this.onReceiveCandidate(res) 323 | }) 324 | .catch((error) => this.onError(`getIceCandidate ${error}`)) 325 | } 326 | 327 | /** 328 | * AJAX /getIceCandidate callback 329 | * @param dataJson 330 | * @private 331 | */ 332 | private onReceiveCandidate(dataJson: RTCIceCandidateInit[]): void { 333 | console.log(`candidate: ${JSON.stringify(dataJson)}`) 334 | if (dataJson) { 335 | for (let i = 0; i < dataJson.length; i++) { 336 | const candidate = new RTCIceCandidate(dataJson[i]) 337 | console.log(`Adding ICE candidate: ${JSON.stringify(candidate)}`) 338 | this.peerConnection?.addIceCandidate(candidate).then( 339 | () => { 340 | console.log('addIceCandidate OK') 341 | }, 342 | (error: Error) => { 343 | console.log(`addIceCandidate error: ${JSON.stringify(error)}`) 344 | } 345 | ) 346 | } 347 | this.peerConnection?.addIceCandidate() 348 | } 349 | } 350 | 351 | /** 352 | * RTCPeerConnection AddTrack callback 353 | * @param event 354 | * @private 355 | */ 356 | private onAddStream(event: any): void { 357 | console.log(`Remote track added: ${JSON.stringify(event)}`) 358 | 359 | this.element!.srcObject = event.stream 360 | const promise = (this.element).play() 361 | if (promise !== undefined) { 362 | promise.catch((error: Error) => { 363 | console.warn(`error: ${error}`) 364 | this.element?.setAttribute('controls', 'true') 365 | }) 366 | } 367 | } 368 | 369 | /** 370 | * RTCPeerConnection IceCandidate callback 371 | * @param event 372 | * @private 373 | */ 374 | private onIceCandidate(event: RTCPeerConnectionIceEvent): void { 375 | if (event.candidate) { 376 | if (this.peerConnection?.currentRemoteDescription) { 377 | this.addIceCandidate(this.peerConnectionId, event.candidate) 378 | } else { 379 | this.earlyCandidates.push(event.candidate) 380 | } 381 | } else { 382 | console.log('End of candidates.') 383 | } 384 | } 385 | } 386 | 387 | export { WebRTCStreamer } 388 | -------------------------------------------------------------------------------- /src/core/janusVideoRoom.ts: -------------------------------------------------------------------------------- 1 | import type { JanusVideoRoomOptions, JanusVideoRoomAdvancedUrl } from '../types' 2 | import { initialJanusVideoRoomOptions } from '../utils/initialization' 3 | 4 | /** 5 | * Interface with Janus Gateway Video Room and WebRTC-streamer API 6 | */ 7 | class JanusVideoRoom { 8 | private options: JanusVideoRoomOptions 9 | private readonly connection: { [key: string]: { sessionId: string; pluginId: string } } = {} 10 | 11 | /** 12 | * Instantiate object 13 | * @constructor 14 | * @param args 15 | */ 16 | constructor(args: Partial = {}) { 17 | this.options = Object.assign({}, initialJanusVideoRoomOptions, args) 18 | this.options.url = 19 | this.options.url || 20 | `${window.location.protocol}//${window.location.hostname}:${window.location.port}` 21 | } 22 | 23 | /** 24 | * Ask to publish a stream from WebRTC-streamer in a Janus Video Room user 25 | * @param janusRoomId - id of the Janus Video Room to join 26 | * @param url - WebRTC stream to publish 27 | * @param name - name in Janus Video Room 28 | */ 29 | join(janusRoomId: string, url: string, name: string): void { 30 | const createRequest = { 31 | janus: 'create', 32 | transaction: Math.random().toString(), 33 | } 34 | fetch(this.options.janusUrl, { 35 | method: 'POST', 36 | body: JSON.stringify(createRequest), 37 | }) 38 | .then(this.handleHttpErrors) 39 | .then((res: Response) => { 40 | return res.json() 41 | }) 42 | .then((res) => { 43 | this.onCreateSession(res, janusRoomId, url, name) 44 | }) 45 | .catch((error: Error) => this.onError(`create ${error}`)) 46 | } 47 | 48 | leave(janusRoomId: string, url: string, name: string): void { 49 | const connection = this.connection[`${janusRoomId}_${url}_${name}`] 50 | if (connection) { 51 | const sessionId = connection.sessionId 52 | const pluginId = connection.pluginId 53 | 54 | const leaveRequest = { 55 | janus: 'message', 56 | body: { 57 | request: 'unpublish', 58 | }, 59 | transaction: Math.random().toString(), 60 | } 61 | fetch(`${this.options.janusUrl}/${sessionId}/${pluginId}`, { 62 | method: 'POST', 63 | body: JSON.stringify(leaveRequest), 64 | }) 65 | .then(this.handleHttpErrors) 66 | .then((res) => { 67 | return res.json() 68 | }) 69 | .then((res) => { 70 | console.log(`leave janus room answer: ${res}`) 71 | }) 72 | .catch((error: Error) => this.onError(`leave ${error}`)) 73 | } 74 | } 75 | 76 | private handleHttpErrors(res: Response): Response { 77 | if (!res.ok) { 78 | throw Error(res.statusText) 79 | } 80 | return res 81 | } 82 | 83 | private emit(name: string, state: string) { 84 | this.options.eventBus?.emit('state', name, state) 85 | } 86 | 87 | /** 88 | * Janus callback for Session Creation 89 | * @param dataJson 90 | * @param janusRoomId 91 | * @param url 92 | * @param name 93 | * @private 94 | */ 95 | private onCreateSession(dataJson: any, janusRoomId: string, url: string, name: string) { 96 | const sessionId = dataJson.data.id 97 | console.log(`onCreateSession sessionId: ${sessionId}`) 98 | 99 | // attach to video room plugin 100 | const attachRequest = { 101 | janus: 'attach', 102 | plugin: 'janus.plugin.videoroom', 103 | transaction: Math.random().toString(), 104 | } 105 | 106 | fetch(`${this.options.janusUrl}/${sessionId}`, { 107 | method: 'POST', 108 | body: JSON.stringify(attachRequest), 109 | }) 110 | .then(this.handleHttpErrors) 111 | .then((res: Response) => { 112 | return res.json() 113 | }) 114 | .then((res) => { 115 | this.onPluginsAttached(res, janusRoomId, url, name, sessionId) 116 | }) 117 | .catch((error: Error) => this.onError(`attach ${error}`)) 118 | } 119 | 120 | /** 121 | * Janus callback for Video Room Plugins Connection 122 | * @param dataJson 123 | * @param janusRoomId 124 | * @param url 125 | * @param name 126 | * @param sessionId 127 | * @private 128 | */ 129 | private onPluginsAttached( 130 | dataJson: any, 131 | janusRoomId: string, 132 | url: string, 133 | name: string, 134 | sessionId: string 135 | ) { 136 | const pluginId = dataJson.data.id 137 | console.log(`onPluginsAttached pluginId: ${pluginId}`) 138 | this.emit(name, 'joining') 139 | const joinRequest = { 140 | janus: 'message', 141 | body: { 142 | request: 'join', 143 | room: janusRoomId, 144 | ptype: 'publisher', 145 | display: name, 146 | }, 147 | transaction: Math.random().toString(), 148 | } 149 | fetch(`${this.options.janusUrl}/${sessionId}/${pluginId}`, { 150 | method: 'POST', 151 | body: JSON.stringify(joinRequest), 152 | }) 153 | .then(this.handleHttpErrors) 154 | .then((res) => { 155 | return res.json() 156 | }) 157 | .then((response) => { 158 | this.onJoinRoom(response, janusRoomId, url, name, sessionId, pluginId) 159 | }) 160 | .catch((error: Error) => this.onError(`join ${error}`)) 161 | } 162 | 163 | /** 164 | * Janus callback for Video Room Joined 165 | * @param dataJson 166 | * @param janusRoomId 167 | * @param url 168 | * @param name 169 | * @param sessionId 170 | * @param pluginId 171 | * @private 172 | */ 173 | private onJoinRoom( 174 | dataJson: any, 175 | janusRoomId: string, 176 | url: string, 177 | name: string, 178 | sessionId: string, 179 | pluginId: string 180 | ) { 181 | console.log(`onJoinRoom: ${JSON.stringify(dataJson)}`) 182 | 183 | fetch(`${this.options.janusUrl}/${sessionId}?rid=${new Date().getTime()}&maxev=1`) 184 | .then(this.handleHttpErrors) 185 | .then((response) => { 186 | return response.json() 187 | }) 188 | .then((response) => { 189 | this.onJoinRoomResult(response, janusRoomId, url, name, sessionId, pluginId) 190 | }) 191 | .catch((error) => this.onError(`join answer ${error}`)) 192 | } 193 | 194 | /** 195 | * Janus callback for Video Room Joined 196 | * @param dataJson 197 | * @param janusRoomId 198 | * @param url 199 | * @param name 200 | * @param sessionId 201 | * @param pluginId 202 | * @private 203 | */ 204 | private onJoinRoomResult( 205 | dataJson: any, 206 | janusRoomId: string, 207 | url: JanusVideoRoomAdvancedUrl | string, 208 | name: string, 209 | sessionId: string, 210 | pluginId: string 211 | ) { 212 | console.log(`onJoinRoomResult: ${JSON.stringify(dataJson)}`) 213 | 214 | if (dataJson.plugindata.data.videoroom === 'joined') { 215 | // register connection 216 | this.connection[`${janusRoomId}_${url}_${name}`] = { sessionId, pluginId } 217 | 218 | // member of the room 219 | const publishers = dataJson.plugindata.data.publishers 220 | for (let i = 0; i < publishers.length; i++) { 221 | const publisher = publishers[i] 222 | this.emit(publisher.display, 'up') 223 | } 224 | 225 | if (name) { 226 | // notify new state 227 | this.emit(name, 'joined') 228 | 229 | const peerId = Math.random().toString() 230 | let createOfferUrl: string 231 | 232 | if (typeof url === 'string') { 233 | createOfferUrl = `${ 234 | this.options.url 235 | }/api/createOffer?peerid=${peerId}&url=${encodeURIComponent(url)}` 236 | } else { 237 | createOfferUrl = `${ 238 | this.options.url 239 | }/api/createOffer?peerid=${peerId}&url=${encodeURIComponent(url.video || '')}` 240 | if (url.audio) { 241 | createOfferUrl += `&audiourl=${encodeURIComponent(url.audio)}` 242 | } 243 | if (url.options) { 244 | createOfferUrl += `&options=${encodeURIComponent(url.options)}` 245 | } 246 | } 247 | 248 | fetch(createOfferUrl) 249 | .then(this.handleHttpErrors) 250 | .then((res) => { 251 | return res.json() 252 | }) 253 | .then((res) => { 254 | this.onCreateOffer(res, name, sessionId, pluginId, peerId) 255 | }) 256 | .catch((error) => this.onError(`createOffer ${error}`)) 257 | } else { 258 | // start long polling 259 | this.longPoll(null, name, sessionId) 260 | } 261 | } else { 262 | this.emit(name, 'joining room failed') 263 | } 264 | } 265 | 266 | /** 267 | * WebRTC streamer callback for Offer 268 | * @param dataJson 269 | * @param name 270 | * @param sessionId 271 | * @param pluginId 272 | * @param peerId 273 | * @private 274 | */ 275 | private onCreateOffer( 276 | dataJson: any, 277 | name: string, 278 | sessionId: string, 279 | pluginId: string, 280 | peerId: string 281 | ) { 282 | console.log(`onCreateOffer: ${JSON.stringify(dataJson)}`) 283 | 284 | this.emit(name, 'publishing') 285 | 286 | const publishReq = { 287 | janus: 'message', 288 | body: { request: 'publish', video: true, audio: true, data: true }, 289 | jsep: dataJson, 290 | transaction: Math.random().toString(), 291 | } 292 | 293 | fetch(`${this.options.janusUrl}/${sessionId}/${pluginId}`, { 294 | method: 'POST', 295 | body: JSON.stringify(publishReq), 296 | }) 297 | .then(this.handleHttpErrors) 298 | .then((res) => { 299 | return res.json() 300 | }) 301 | .then((res) => { 302 | this.onPublishStream(res, name, sessionId, pluginId, peerId) 303 | }) 304 | .catch((error) => this.onError(`publish ${error}`)) 305 | } 306 | 307 | /** 308 | * Janus callback for WebRTC stream is published 309 | * @param dataJson 310 | * @param name 311 | * @param sessionId 312 | * @param pluginId 313 | * @param peerId 314 | * @private 315 | */ 316 | private onPublishStream( 317 | dataJson: any, 318 | name: string, 319 | sessionId: string, 320 | pluginId: string, 321 | peerId: string 322 | ) { 323 | console.log(`onPublishStream: ${JSON.stringify(dataJson)}`) 324 | 325 | fetch(`${this.options.janusUrl}/${sessionId}?rid=${new Date().getTime()}&maxev=1`) 326 | .then(this.handleHttpErrors) 327 | .then((res) => { 328 | return res.json() 329 | }) 330 | .then((res) => { 331 | this.onPublishStreamResult(res, name, sessionId, pluginId, peerId) 332 | }) 333 | .catch((error) => this.onError(`publish answer ${error}`)) 334 | } 335 | 336 | /** 337 | * Janus callback for WebRTC stream is published 338 | * @param dataJson 339 | * @param name 340 | * @param sessionId 341 | * @param pluginId 342 | * @param peerId 343 | * @private 344 | */ 345 | private onPublishStreamResult( 346 | dataJson: any, 347 | name: string, 348 | sessionId: string, 349 | pluginId: string, 350 | peerId: string 351 | ) { 352 | console.log(`onPublishStreamResult: ${JSON.stringify(dataJson)}`) 353 | 354 | if (dataJson.jsep) { 355 | fetch(`${this.options.url}/api/setAnswer?peerid=${peerId}`, { 356 | method: 'POST', 357 | body: JSON.stringify(dataJson.jsep), 358 | }) 359 | .then(this.handleHttpErrors) 360 | .then((res) => { 361 | return res.json() 362 | }) 363 | .then((response) => { 364 | this.onSetAnswer(response, name, sessionId, pluginId, peerId) 365 | }) 366 | .catch((error) => this.onError(`setAnswer ${error}`)) 367 | } else { 368 | this.emit(name, 'publishing failed (no SDP)') 369 | } 370 | } 371 | 372 | /** 373 | * WebRTC streamer callback for Answer 374 | * @param dataJson 375 | * @param name 376 | * @param sessionId 377 | * @param pluginId 378 | * @param peerId 379 | * @private 380 | */ 381 | private onSetAnswer( 382 | dataJson: any, 383 | name: string, 384 | sessionId: string, 385 | pluginId: string, 386 | peerId: string 387 | ) { 388 | console.log(`onSetAnswer: ${JSON.stringify(dataJson)}`) 389 | 390 | fetch(`${this.options.url}/api/getIceCandidate?peerid=${peerId}`) 391 | .then(this.handleHttpErrors) 392 | .then((res) => { 393 | return res.json() 394 | }) 395 | .then((res) => { 396 | this.onReceiveCandidate(res, name, sessionId, pluginId) 397 | }) 398 | .catch((error) => this.onError(`getIceCandidate ${error}`)) 399 | } 400 | 401 | /** 402 | * WebRTC streamer callback for ICE candidate 403 | * @param dataJson 404 | * @param name 405 | * @param sessionId 406 | * @param pluginId 407 | */ 408 | onReceiveCandidate(dataJson: any, name: string, sessionId: string, pluginId: string) { 409 | console.log(`onReceiveCandidate answer: ${JSON.stringify(dataJson)}`) 410 | 411 | for (let i = 0; i < dataJson.length; i++) { 412 | // send ICE candidate to Janus 413 | const candidateRequest = { 414 | janus: 'trickle', 415 | candidate: dataJson[i], 416 | transaction: Math.random().toString(), 417 | } 418 | 419 | fetch(`${this.options.janusUrl}/${sessionId}/${pluginId}`, { 420 | method: 'POST', 421 | body: JSON.stringify(candidateRequest), 422 | }) 423 | .then(this.handleHttpErrors) 424 | .then((res) => { 425 | return res.json() 426 | }) 427 | .then((res) => { 428 | console.log(`onReceiveCandidate janus answer: ${JSON.stringify(res)}`) 429 | }) 430 | .catch((error) => this.onError(`setAnswer ${error}`)) 431 | } 432 | 433 | // start long polling 434 | this.longPoll(null, name, sessionId) 435 | } 436 | 437 | /** 438 | * Janus callback for Long Polling 439 | * @param dataJson 440 | * @param name 441 | * @param sessionId 442 | * @private 443 | */ 444 | private longPoll(dataJson: any, name: string, sessionId: string) { 445 | if (dataJson) { 446 | console.log(`poll evt: ${JSON.stringify(dataJson)}`) 447 | 448 | if (dataJson.janus === 'webrtcup') { 449 | // notify connection 450 | this.emit(name, 'up') 451 | 452 | // start keep alive 453 | setInterval(() => { 454 | this.keepAlive(sessionId) 455 | }, 10000) 456 | } else if (dataJson.janus === 'hangup') { 457 | // notify connection 458 | this.emit(name, 'down') 459 | } else if (dataJson.janus === 'event') { 460 | // member of the room 461 | const publishers = dataJson.plugindata.data.publishers 462 | if (publishers) { 463 | for (let i = 0; i < publishers.length; i++) { 464 | const publisher = publishers[i] 465 | this.emit(publisher.display, 'up') 466 | } 467 | } 468 | } 469 | } 470 | 471 | fetch(`${this.options.janusUrl}/${sessionId}?rid=${new Date().getTime()}&maxev=1`) 472 | .then(this.handleHttpErrors) 473 | .then((res) => { 474 | return res.json() 475 | }) 476 | .then((res) => { 477 | this.longPoll(res, name, sessionId) 478 | }) 479 | .catch((error) => this.onError(`long poll answer ${error}`)) 480 | } 481 | 482 | /** 483 | * Janus callback for keepAlive Session 484 | * @param sessionId 485 | * @private 486 | */ 487 | private keepAlive(sessionId: string) { 488 | const keepAliveReq = { 489 | janus: 'keepalive', 490 | session_id: sessionId, 491 | transaction: Math.random().toString(), 492 | } 493 | 494 | fetch(`${this.options.janusUrl}/${sessionId}`, { 495 | method: 'POST', 496 | body: JSON.stringify(keepAliveReq), 497 | }) 498 | .then(this.handleHttpErrors) 499 | .then((res) => { 500 | return res.json() 501 | }) 502 | .then((res) => { 503 | console.log(`keepAlive answer: ${JSON.stringify(res)}`) 504 | }) 505 | .catch((error) => this.onError(`keepAlive ${error}`)) 506 | } 507 | 508 | /** 509 | * Janus callback for Error 510 | * @param status 511 | * @private 512 | */ 513 | private onError(status: any): void { 514 | console.log(`onError: ${status}`) 515 | } 516 | } 517 | 518 | export { JanusVideoRoom } 519 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | ## [1.4.4](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.4.3...v1.4.4) (2024-06-03) 2 | 3 | 4 | ### 🎫 Chores | 其他更新 5 | 6 | * **deps:** update dependency @typescript-eslint/parser to v7.11.0 ([cc5c44b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/cc5c44bf6c70d5705ab834834e10b6524cf17aef)) 7 | * **deps:** update dependency lint-staged to v15.2.5 ([15d9ebb](https://github.com/zhensherlock/webrtc-streamer-helper/commit/15d9ebb31e6ccac623fae48a2796ef3b7e48f0ef)) 8 | * **deps:** update dependency prettier to v3.3.0 ([3afca9f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3afca9f8677f924ddb96e11cfcd8c4ed1a7978a6)) 9 | * **deps:** update dependency stylelint to v16.6.1 ([2dafb8b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/2dafb8b24dee92ae7408443a8b6934d0a866d8dc)) 10 | * update dependency @typescript-eslint/parser to v7.11.0 ([#366](https://github.com/zhensherlock/webrtc-streamer-helper/issues/366)) ([5461cc5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5461cc5b30ba2fbf338947f197dfa295c9bbea4d)) 11 | * update dependency lint-staged to v15.2.5 ([#364](https://github.com/zhensherlock/webrtc-streamer-helper/issues/364)) ([27c0054](https://github.com/zhensherlock/webrtc-streamer-helper/commit/27c0054ff6f990fe59ab3146bbb012b1ee1ae195)) 12 | * update dependency prettier to v3.3.0 ([#368](https://github.com/zhensherlock/webrtc-streamer-helper/issues/368)) ([5bb0926](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5bb0926a41ee8d87f680e6831a1d1214f1b303a8)) 13 | * update dependency stylelint to v16.6.1 ([#365](https://github.com/zhensherlock/webrtc-streamer-helper/issues/365)) ([99dd40b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/99dd40b9417bd1971d82b1f7b6b7bee4578a8be5)) 14 | 15 | 16 | 17 | ## [1.4.3](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.4.2...v1.4.3) (2024-05-24) 18 | 19 | 20 | ### 🎫 Chores | 其他更新 21 | 22 | * **deps:** update babel monorepo to v7.24.6 ([435f536](https://github.com/zhensherlock/webrtc-streamer-helper/commit/435f536473309b2f01fda7316abde4982fdb71a3)) 23 | * **deps:** update dependency @typescript-eslint/parser to v7.10.0 ([f2929e3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f2929e3767d75ea9e08837e05f96e3698c7955ae)) 24 | * **deps:** update dependency lint-staged to v15.2.4 ([d40df74](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d40df74c76b98ffc3899546746ca2f7c6a3c9f1d)) 25 | * **deps:** update dependency rollup to v4.18.0 ([ce87b78](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ce87b786e01500628bb67888a7275688cb91a5ad)) 26 | * **deps:** update dependency stylelint to v16.6.0 ([33269af](https://github.com/zhensherlock/webrtc-streamer-helper/commit/33269af8641fc5114033e7119ddf5d763bd0a8d8)) 27 | * update babel monorepo to v7.24.6 ([#356](https://github.com/zhensherlock/webrtc-streamer-helper/issues/356)) ([3f3c2f4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3f3c2f489704e0c4966e355307238931c93d8647)) 28 | * update dependency @typescript-eslint/parser to v7.10.0 ([#358](https://github.com/zhensherlock/webrtc-streamer-helper/issues/358)) ([9b77b5b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/9b77b5b301aec93123f7df6850170c68191b08a0)) 29 | * update dependency lint-staged to v15.2.4 ([#357](https://github.com/zhensherlock/webrtc-streamer-helper/issues/357)) ([7c9d471](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7c9d471494d078dfe465a0ed2b184366663a289e)) 30 | * update dependency rollup to v4.18.0 ([#359](https://github.com/zhensherlock/webrtc-streamer-helper/issues/359)) ([d6e2e34](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d6e2e34db2e37a9fb56cd198bbe90d2b9d6acabe)) 31 | * update dependency stylelint to v16.6.0 ([#360](https://github.com/zhensherlock/webrtc-streamer-helper/issues/360)) ([37b37f0](https://github.com/zhensherlock/webrtc-streamer-helper/commit/37b37f05433f250e6c6e7b2fc57848b292741221)) 32 | 33 | 34 | 35 | ## [1.4.2](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.4.1...v1.4.2) (2024-05-18) 36 | 37 | 38 | ### 🎫 Chores | 其他更新 39 | 40 | * **deps:** update dependency @types/google.maps to v3.55.9 ([7a6b7a3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7a6b7a3723718f4a69f5b60fb795f50fe3dc4e34)) 41 | * update dependency @types/google.maps to v3.55.9 ([#350](https://github.com/zhensherlock/webrtc-streamer-helper/issues/350)) ([d09e321](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d09e32139c0dab14ae54b028a92d8d7f7b21cc0c)) 42 | 43 | 44 | 45 | ## [1.4.1](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.4.0...v1.4.1) (2024-05-14) 46 | 47 | 48 | ### 🎫 Chores | 其他更新 49 | 50 | * **deps:** update dependency @typescript-eslint/parser to v7.9.0 ([d152145](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d152145272b471cb4f6fadb751164202f7e4cf23)) 51 | * **deps:** update dependency rimraf to v5.0.7 ([5fb9897](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5fb98971939312b0b90903d5c98616a2678bc1ef)) 52 | * update dependency @typescript-eslint/parser to v7.9.0 ([#348](https://github.com/zhensherlock/webrtc-streamer-helper/issues/348)) ([f1ecd0c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f1ecd0c61f6a84f3eeb214738edb5d5c51b81524)) 53 | * update dependency rimraf to v5.0.7 ([#347](https://github.com/zhensherlock/webrtc-streamer-helper/issues/347)) ([7d962d6](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7d962d64ee59c09e1eca70504a988589f74bf20f)) 54 | 55 | 56 | 57 | # [1.4.0](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.28...v1.4.0) (2024-05-10) 58 | 59 | 60 | ### ✨ Features | 新功能 61 | 62 | * support exports import node environment ([a1cb0cb](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a1cb0cbe101dca77f3de66e9bac87fb834ae4f80)) 63 | 64 | 65 | 66 | ## [1.3.28](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.27...v1.3.28) (2024-05-03) 67 | 68 | 69 | ### 🎫 Chores | 其他更新 70 | 71 | * **deps:** update babel monorepo to v7.24.5 ([ffcce62](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ffcce62f6feaa43b262223fdadf73a1faf07ca6c)) 72 | * **deps:** update dependency @types/google.maps to v3.55.8 ([2484f47](https://github.com/zhensherlock/webrtc-streamer-helper/commit/2484f47ef2bcd1470c8c250d528c7c1ef58de56e)) 73 | * **deps:** update dependency @typescript-eslint/parser to v7.8.0 ([265931e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/265931ebe77ccdbb834a4e8ac74d7d8a03aa51a4)) 74 | * **deps:** update dependency rollup to v4.17.2 ([007e86f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/007e86fa830ad2e72aa0f15d2c0160526d8f9c73)) 75 | * **deps:** update dependency stylelint to v16.5.0 ([06078fc](https://github.com/zhensherlock/webrtc-streamer-helper/commit/06078fcf6f9038754c54ce221ed36b26f90e71b2)) 76 | * update babel monorepo to v7.24.5 ([#337](https://github.com/zhensherlock/webrtc-streamer-helper/issues/337)) ([5d50b46](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5d50b466aee1b08692c17374540691ff06fd57b3)) 77 | * update dependency @types/google.maps to v3.55.8 ([#338](https://github.com/zhensherlock/webrtc-streamer-helper/issues/338)) ([b6ab005](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b6ab0050d95a44506e26be5b3f33509478cebd06)) 78 | * update dependency @typescript-eslint/parser to v7.8.0 ([#340](https://github.com/zhensherlock/webrtc-streamer-helper/issues/340)) ([438552a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/438552a0d6aa560c901025c052b7fd26161db20c)) 79 | * update dependency rollup to v4.17.2 ([#339](https://github.com/zhensherlock/webrtc-streamer-helper/issues/339)) ([95613f8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/95613f8ee7549b4762928939ad49a69d1b644504)) 80 | * update dependency stylelint to v16.5.0 ([#341](https://github.com/zhensherlock/webrtc-streamer-helper/issues/341)) ([b086893](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b0868936b4af1b9603c57c3ceb778ff7ab9ba116)) 81 | 82 | 83 | 84 | ## [1.3.27](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.26...v1.3.27) (2024-04-29) 85 | 86 | 87 | ### 🎫 Chores | 其他更新 88 | 89 | * **deps:** update dependency cssnano to v7.0.1 ([31432a4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/31432a4df6a79f6d18e36433643eaa27bf3c358d)) 90 | * **deps:** update dependency rollup to v4.17.0 ([d9c7582](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d9c7582dd21e1bcaf02a04c183d3270a20125545)) 91 | * update dependency cssnano to v7.0.1 ([#330](https://github.com/zhensherlock/webrtc-streamer-helper/issues/330)) ([ff94972](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ff94972cf7f67acfa6e813ad9812120ef943b20b)) 92 | * update dependency rollup to v4.17.0 ([#331](https://github.com/zhensherlock/webrtc-streamer-helper/issues/331)) ([535d53f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/535d53fed8634c4faa558a4bf03e167d608200cf)) 93 | 94 | 95 | 96 | ## [1.3.26](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.25...v1.3.26) (2024-04-25) 97 | 98 | 99 | ### 🎫 Chores | 其他更新 100 | 101 | * **deps:** update dependency @commitlint/cli to v19.3.0 ([c9f83a8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c9f83a86b55c6c1237abd698c030a333d22d330b)) 102 | * **deps:** update dependency @typescript-eslint/parser to v7.7.1 ([f1c0866](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f1c086621efc0ea39e3feb1541124364de7f5cfb)) 103 | * **deps:** update dependency cssnano to v7 ([1c2ab7f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1c2ab7f5b736d0827081cc8877e4c9c48bca3e79)) 104 | * **deps:** update dependency rollup to v4.16.4 ([e0eaf29](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e0eaf29b8f60860b6d9eb01dcc09c73a32eaebf5)) 105 | * **deps:** update dependency stylelint to v16.4.0 ([9c191cd](https://github.com/zhensherlock/webrtc-streamer-helper/commit/9c191cd0a9de35b43633925e3d5ab22fe34636ed)) 106 | * update dependency @commitlint/cli to v19.3.0 ([#326](https://github.com/zhensherlock/webrtc-streamer-helper/issues/326)) ([a05b449](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a05b449f6fab806256c7d73835531c99c93ce301)) 107 | * update dependency @typescript-eslint/parser to v7.7.1 ([#324](https://github.com/zhensherlock/webrtc-streamer-helper/issues/324)) ([1965d80](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1965d80d9b00fac36bc8fc3acb43274c6511753a)) 108 | * update dependency rollup to v4.16.4 ([#325](https://github.com/zhensherlock/webrtc-streamer-helper/issues/325)) ([f6a9648](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f6a964805337ea5c9730c3a1908f2ac163b3b093)) 109 | * update dependency stylelint to v16.4.0 ([#327](https://github.com/zhensherlock/webrtc-streamer-helper/issues/327)) ([afe08b4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/afe08b414be248ff5f2f9814a2ce7ed6eb8eeba2)) 110 | 111 | 112 | 113 | ## [1.3.25](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.24...v1.3.25) (2024-04-21) 114 | 115 | 116 | ### 🎫 Chores | 其他更新 117 | 118 | * **deps:** update dependency rollup to v4.16.0 ([e987caf](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e987caff19404c70464cb770ffd29a9d6538fc4a)) 119 | * **deps:** update dependency rollup-plugin-sass to v1.12.22 ([e8bbb60](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e8bbb60e2ca5e3c353d3222314a34f5acef6ab50)) 120 | * update dependency rollup to v4.16.0 ([#318](https://github.com/zhensherlock/webrtc-streamer-helper/issues/318)) ([ec9f514](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ec9f514dfbf81748f7ccb088cfd1a27c237149e3)) 121 | * update dependency rollup-plugin-sass to v1.12.22 ([#317](https://github.com/zhensherlock/webrtc-streamer-helper/issues/317)) ([24e1a9b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/24e1a9bb8935c732ed8a069644e467c6041b891d)) 122 | 123 | 124 | 125 | ## [1.3.24](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.23...v1.3.24) (2024-04-16) 126 | 127 | 128 | ### 🎫 Chores | 其他更新 129 | 130 | * **deps:** update commitlint monorepo to v19.2.2 ([109d12c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/109d12cba6ba501bf6c275e87ce7d1fa39a2394d)) 131 | * **deps:** update dependency @typescript-eslint/parser to v7.7.0 ([30c7f96](https://github.com/zhensherlock/webrtc-streamer-helper/commit/30c7f9672b09a5d93e29efdfce0fe15789d788bb)) 132 | * **deps:** update dependency rollup to v4.14.3 ([1e83ce4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1e83ce4230bad57aaa4d89391842957077658895)) 133 | * update commitlint monorepo to v19.2.2 ([#312](https://github.com/zhensherlock/webrtc-streamer-helper/issues/312)) ([21ea0c6](https://github.com/zhensherlock/webrtc-streamer-helper/commit/21ea0c6cd901180b196aead8c62b4b0dd75ae8cf)) 134 | * update dependency @typescript-eslint/parser to v7.7.0 ([#314](https://github.com/zhensherlock/webrtc-streamer-helper/issues/314)) ([cb43a3c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/cb43a3c3dfaa48efc737fff13c90390bcb60c174)) 135 | * update dependency rollup to v4.14.3 ([#313](https://github.com/zhensherlock/webrtc-streamer-helper/issues/313)) ([70215cf](https://github.com/zhensherlock/webrtc-streamer-helper/commit/70215cf4e58eba5902d897cb981f9d53eace1dc1)) 136 | 137 | 138 | 139 | ## [1.3.23](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.22...v1.3.23) (2024-04-12) 140 | 141 | 142 | ### 🎫 Chores | 其他更新 143 | 144 | * **deps:** update dependency typescript to v5.4.5 ([7656391](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7656391b3fb67bc2d3b8781c31f071a77783de4c)) 145 | * update dependency @typescript-eslint/parser to v7.6.0 ([#308](https://github.com/zhensherlock/webrtc-streamer-helper/issues/308)) ([4726fee](https://github.com/zhensherlock/webrtc-streamer-helper/commit/4726fee8294553e66af738f1ac9c67bd4df57c80)) 146 | 147 | 148 | 149 | ## [1.3.22](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.21...v1.3.22) (2024-04-08) 150 | 151 | 152 | ### 🎫 Chores | 其他更新 153 | 154 | * **deps:** update babel monorepo to v7.24.4 ([8c70a4a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/8c70a4a29442b82aaab0e3495f346d9e350ad76a)) 155 | * **deps:** update dependency @types/google.maps to v3.55.7 ([2a89f64](https://github.com/zhensherlock/webrtc-streamer-helper/commit/2a89f6481ffb3c7804cd79d14603b44158675005)) 156 | * **deps:** update dependency rollup to v4.14.1 ([8383bb0](https://github.com/zhensherlock/webrtc-streamer-helper/commit/8383bb088b299cca227383ad4239fa97dbea8411)) 157 | * **deps:** update dependency typescript to v5.4.4 ([223436d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/223436d1c88690c80a53abbe5f8780689d18d666)) 158 | * update babel monorepo to v7.24.4 ([#303](https://github.com/zhensherlock/webrtc-streamer-helper/issues/303)) ([05ba1e8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/05ba1e878687fb2a2c625fa3b43c25cb751c99b6)) 159 | * update dependency @types/google.maps to v3.55.7 ([#304](https://github.com/zhensherlock/webrtc-streamer-helper/issues/304)) ([69e8e62](https://github.com/zhensherlock/webrtc-streamer-helper/commit/69e8e6243b307799fbc7da44eca6665108c2da13)) 160 | * update dependency rollup to v4.14.1 ([#305](https://github.com/zhensherlock/webrtc-streamer-helper/issues/305)) ([6f00603](https://github.com/zhensherlock/webrtc-streamer-helper/commit/6f006039d8fc03ca7a1fac09772ad4807901e5f4)) 161 | 162 | 163 | 164 | ## [1.3.21](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.20...v1.3.21) (2024-04-03) 165 | 166 | 167 | ### 🎫 Chores | 其他更新 168 | 169 | * **deps:** update dependency rollup to v4.14.0 ([c4c26a2](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c4c26a2ef4ce88d5c0d2abca231156a09dc3e509)) 170 | * update dependency rollup to v4.14.0 ([#297](https://github.com/zhensherlock/webrtc-streamer-helper/issues/297)) ([df1a461](https://github.com/zhensherlock/webrtc-streamer-helper/commit/df1a461208d43e7b2bafb4745f72653dab738b02)) 171 | 172 | 173 | 174 | ## [1.3.20](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.19...v1.3.20) (2024-03-30) 175 | 176 | 177 | ### 🎫 Chores | 其他更新 178 | 179 | * **deps:** update dependency rollup to v4.13.2 ([9a1c650](https://github.com/zhensherlock/webrtc-streamer-helper/commit/9a1c650144ef251208cf692cac83f10eb2b13030)) 180 | * update dependency rollup to v4.13.2 ([#295](https://github.com/zhensherlock/webrtc-streamer-helper/issues/295)) ([090b80e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/090b80e9e46a6c0d52f0abefcd58ea04f60335fa)) 181 | 182 | 183 | 184 | ## [1.3.19](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.18...v1.3.19) (2024-03-27) 185 | 186 | 187 | ### 🎫 Chores | 其他更新 188 | 189 | * **deps:** update dependency cssnano to v6.1.2 ([ef01fac](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ef01facfde2114b43328acd2525625e9f00a2679)) 190 | * **deps:** update dependency stylelint to v16.3.1 ([1778542](https://github.com/zhensherlock/webrtc-streamer-helper/commit/17785425abb8472dc4d5bea858a90a8c2d75f649)) 191 | * update dependency cssnano to v6.1.2 ([#292](https://github.com/zhensherlock/webrtc-streamer-helper/issues/292)) ([815e3f3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/815e3f3191b451694f81845e661a0c272de4c27d)) 192 | * update dependency stylelint to v16.3.1 ([#293](https://github.com/zhensherlock/webrtc-streamer-helper/issues/293)) ([33f7669](https://github.com/zhensherlock/webrtc-streamer-helper/commit/33f76693dbf3f30d5932a0dd1e29d744ed2d03a7)) 193 | 194 | 195 | 196 | ## [1.3.18](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.17...v1.3.18) (2024-03-23) 197 | 198 | 199 | ### 🎫 Chores | 其他更新 200 | 201 | * **deps:** update babel monorepo ([ac0fef1](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ac0fef1026ef90e0100a8b687fdb09f7a0b70fbf)) 202 | * **deps:** update dependency @commitlint/cli to v19.2.1 ([6808196](https://github.com/zhensherlock/webrtc-streamer-helper/commit/6808196d69eedd7f455b0e7a5d8a7c938dd923e0)) 203 | * **deps:** update dependency @types/google.maps to v3.55.5 ([62f4e3f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/62f4e3f2fb10df8e670a75ed2a3b87f99a81a99f)) 204 | * **deps:** update dependency autoprefixer to v10.4.19 ([3f93f1e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3f93f1e3d2c847e5c987d523f8fa10312e48d423)) 205 | * **deps:** update dependency cssnano to v6.1.1 ([68206c2](https://github.com/zhensherlock/webrtc-streamer-helper/commit/68206c260695283ec14542f037a1d0a054eacbf8)) 206 | * **deps:** update dependency typescript to v5.4.3 ([7580edb](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7580edbf4e62e4d5728a82eab637cfafc8010b06)) 207 | * update babel monorepo ([#284](https://github.com/zhensherlock/webrtc-streamer-helper/issues/284)) ([a926c25](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a926c25db808c848c3a8943d8ccc86dbc4c2f4e4)) 208 | * update dependency @commitlint/cli to v19.2.1 ([#285](https://github.com/zhensherlock/webrtc-streamer-helper/issues/285)) ([fe3def3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/fe3def39471c5cf6dcd65e72ea566c7221a21bf2)) 209 | * update dependency @types/google.maps to v3.55.5 ([#286](https://github.com/zhensherlock/webrtc-streamer-helper/issues/286)) ([b34059a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b34059a5afe4d2e4a48d9d7cfc6c0fd451bfb7bc)) 210 | * update dependency autoprefixer to v10.4.19 ([#289](https://github.com/zhensherlock/webrtc-streamer-helper/issues/289)) ([5f2feb0](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5f2feb0da3818965e95430dba2277d998fd815f9)) 211 | * update dependency cssnano to v6.1.1 ([#288](https://github.com/zhensherlock/webrtc-streamer-helper/issues/288)) ([f2b2e3d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f2b2e3d3669ed293f6e1b6699a691cc6ffd52a50)) 212 | 213 | 214 | 215 | ## [1.3.17](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.16...v1.3.17) (2024-03-19) 216 | 217 | 218 | ### 🎫 Chores | 其他更新 219 | 220 | * **deps:** update dependency @commitlint/cli to v19.2.0 ([1dcd93c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1dcd93c245257a49e617fdb269d1730f6a4c2f58)) 221 | * **deps:** update dependency @typescript-eslint/parser to v7.3.0 ([1af4ef5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1af4ef546108ee09c8264714d0d1c8c59f9fe843)) 222 | * update dependency @commitlint/cli to v19.2.0 ([#276](https://github.com/zhensherlock/webrtc-streamer-helper/issues/276)) ([b51f500](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b51f500271b0c6895566833e2e7f2e878f2a0c0e)) 223 | * update dependency @typescript-eslint/parser to v7.3.0 ([#277](https://github.com/zhensherlock/webrtc-streamer-helper/issues/277)) ([5139af2](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5139af2bd3db79b48246a5b8abfdeca6bfc67a65)) 224 | 225 | 226 | 227 | ## [1.3.16](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.15...v1.3.16) (2024-03-15) 228 | 229 | 230 | ### 🎫 Chores | 其他更新 231 | 232 | * **deps:** update commitlint monorepo to v19.1.0 ([7e2f951](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7e2f95117e3009520074062e4c938a4c6a09c9c4)) 233 | * **deps:** update dependency rollup to v4.13.0 ([5e3b39d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5e3b39dc1f4f4b2bb99bb81a452bf4cac63147f1)) 234 | * update commitlint monorepo to v19.1.0 ([#272](https://github.com/zhensherlock/webrtc-streamer-helper/issues/272)) ([383710c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/383710c144e7b71fc6837d2d3b2288f1c34c8167)) 235 | * update dependency rollup to v4.13.0 ([#273](https://github.com/zhensherlock/webrtc-streamer-helper/issues/273)) ([6c0a4e5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/6c0a4e55eb2bd37d1dfba33439437764168fb743)) 236 | 237 | 238 | 239 | ## [1.3.15](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.14...v1.3.15) (2024-03-12) 240 | 241 | 242 | ### 🎫 Chores | 其他更新 243 | 244 | * **deps:** update dependency @typescript-eslint/parser to v7.2.0 ([0318ae3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/0318ae39a91e878e842fbc165449142c06e773d9)) 245 | * update dependency @typescript-eslint/parser to v7.2.0 ([#269](https://github.com/zhensherlock/webrtc-streamer-helper/issues/269)) ([18cc1c6](https://github.com/zhensherlock/webrtc-streamer-helper/commit/18cc1c6888e934da2cbd502f57049e38838e3106)) 246 | 247 | 248 | 249 | ## [1.3.14](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.13...v1.3.14) (2024-03-07) 250 | 251 | 252 | ### 🎫 Chores | 其他更新 253 | 254 | * **deps:** update dependency @typescript-eslint/parser to v7.1.1 ([cbe433d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/cbe433da747e88a5632119f6b47492678903b440)) 255 | * **deps:** update dependency cssnano to v6.1.0 ([8836277](https://github.com/zhensherlock/webrtc-streamer-helper/commit/883627763d2f8f1d6bf433fc2421e67fff16f9a0)) 256 | * **deps:** update dependency rollup to v4.12.1 ([0423ac5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/0423ac52b03cbe97d5b22eeaae404912c06cdb49)) 257 | * **deps:** update dependency typescript to v5.4.2 ([081b381](https://github.com/zhensherlock/webrtc-streamer-helper/commit/081b381716b2156d2a7e73d25f395ecc492d1566)) 258 | * update dependency @typescript-eslint/parser to v7.1.1 ([#264](https://github.com/zhensherlock/webrtc-streamer-helper/issues/264)) ([61d5269](https://github.com/zhensherlock/webrtc-streamer-helper/commit/61d5269cd3ecd1f35b0025e532a92fe70ff69986)) 259 | * update dependency cssnano to v6.1.0 ([#266](https://github.com/zhensherlock/webrtc-streamer-helper/issues/266)) ([9909663](https://github.com/zhensherlock/webrtc-streamer-helper/commit/9909663f225234cae3eb2ef6eec471150fdd20df)) 260 | * update dependency rollup to v4.12.1 ([#265](https://github.com/zhensherlock/webrtc-streamer-helper/issues/265)) ([d56d13d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d56d13d794cea09cf87dd5ba24778830d6d4c077)) 261 | 262 | 263 | 264 | ## [1.3.13](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.12...v1.3.13) (2024-03-03) 265 | 266 | 267 | ### 🎫 Chores | 其他更新 268 | 269 | * **deps:** update babel monorepo to v7.24.0 ([66c279a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/66c279ad4c6e504adecbf07611b34a6a254f66d8)) 270 | * **deps:** update commitlint monorepo to v19.0.3 ([65e87f4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/65e87f4a7030a89b6651807d957d480b9f46d852)) 271 | * **deps:** update dependency @types/google.maps to v3.55.4 ([51f4aa3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/51f4aa366fdc4606c2a2214932ce063dd6517fc3)) 272 | * **deps:** update dependency autoprefixer to v10.4.18 ([869b459](https://github.com/zhensherlock/webrtc-streamer-helper/commit/869b459c091561bd0e118d58cf15e771fc57575b)) 273 | * update babel monorepo to v7.24.0 ([#256](https://github.com/zhensherlock/webrtc-streamer-helper/issues/256)) ([d8e4e27](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d8e4e272f4a03b3cc96e0da69a930b2778aca2cc)) 274 | * update commitlint monorepo to v19.0.3 ([#259](https://github.com/zhensherlock/webrtc-streamer-helper/issues/259)) ([f8a8011](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f8a801150022e766a2988cb9825f096a0db9a694)) 275 | * update dependency @types/google.maps to v3.55.4 ([#258](https://github.com/zhensherlock/webrtc-streamer-helper/issues/258)) ([fe868c5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/fe868c520a128df3b8c8e885d8b714f1abb19b2f)) 276 | * update dependency autoprefixer to v10.4.18 ([#257](https://github.com/zhensherlock/webrtc-streamer-helper/issues/257)) ([7480498](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7480498922703d757adb720d95d9835b5b4106de)) 277 | 278 | 279 | 280 | ## [1.3.12](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.11...v1.3.12) (2024-02-28) 281 | 282 | 283 | ### 🎫 Chores | 其他更新 284 | 285 | * **deps:** update commitlint monorepo to v19 ([b3925d5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b3925d5046b1dbedafd297fe9afa2fcc5056a4dc)) 286 | * **deps:** update dependency @commitlint/cli to v19.0.1 ([1b65aca](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1b65acacac09d8d990e90a592766c434d3d302ac)) 287 | * **deps:** update dependency @typescript-eslint/parser to v7.1.0 ([ff688c5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ff688c5e3abdf51f2330a7534bdf37877dacc915)) 288 | * **deps:** update dependency cssnano to v6.0.5 ([f963d15](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f963d15b6dd8ab1411372379475c427f64fd44cd)) 289 | * update dependency @commitlint/cli to v19.0.1 ([#251](https://github.com/zhensherlock/webrtc-streamer-helper/issues/251)) ([db9c8ca](https://github.com/zhensherlock/webrtc-streamer-helper/commit/db9c8caa258b2d250d07919c907e384c6e971e4f)) 290 | * update dependency @typescript-eslint/parser to v7.1.0 ([#248](https://github.com/zhensherlock/webrtc-streamer-helper/issues/248)) ([a53fee2](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a53fee2e3b34449f8f40d126989a95ccad719cab)) 291 | * update dependency cssnano to v6.0.5 ([#249](https://github.com/zhensherlock/webrtc-streamer-helper/issues/249)) ([e44f2e3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e44f2e3b7da102ee2073a44b53521b2b924d9d9a)) 292 | 293 | 294 | 295 | ## [1.3.11](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.10...v1.3.11) (2024-02-24) 296 | 297 | 298 | ### 🎫 Chores | 其他更新 299 | 300 | * **deps:** update dependency cssnano to v6.0.4 ([e488bc1](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e488bc1a91e567cd6f4aeb2e18c058c7e54086d2)) 301 | * **deps:** update dependency eslint to v8.57.0 ([90bbe30](https://github.com/zhensherlock/webrtc-streamer-helper/commit/90bbe3010635162e22425668469c1eefe92fee70)) 302 | * update dependency cssnano to v6.0.4 ([#242](https://github.com/zhensherlock/webrtc-streamer-helper/issues/242)) ([8f3bd7a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/8f3bd7ab834e64d1cd95137ddc720b691f7c996f)) 303 | * update dependency eslint to v8.57.0 ([#243](https://github.com/zhensherlock/webrtc-streamer-helper/issues/243)) ([ba6e7c5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ba6e7c56ab5f4145e747a0103dfdf2326aef68b7)) 304 | 305 | 306 | 307 | ## [1.3.10](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.9...v1.3.10) (2024-02-20) 308 | 309 | 310 | ### 🎫 Chores | 其他更新 311 | 312 | * **deps:** update dependency @typescript-eslint/parser to v7.0.2 ([add6e6d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/add6e6d002425e83e924373e475a43241e4644a0)) 313 | * **deps:** update dependency rollup to v4.12.0 ([602bb58](https://github.com/zhensherlock/webrtc-streamer-helper/commit/602bb589e00e2045513aabe43274e0f3dd129218)) 314 | * update dependency @typescript-eslint/parser to v7.0.2 ([#239](https://github.com/zhensherlock/webrtc-streamer-helper/issues/239)) ([e0c4d6f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e0c4d6f4ae3d258f06ab4c4180898bc97eb17a80)) 315 | * update dependency rollup to v4.12.0 ([#237](https://github.com/zhensherlock/webrtc-streamer-helper/issues/237)) ([08dcf73](https://github.com/zhensherlock/webrtc-streamer-helper/commit/08dcf73d6ab49b8d05931b4766f4f0c691c28e80)) 316 | 317 | 318 | 319 | ## [1.3.9](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.8...v1.3.9) (2024-02-15) 320 | 321 | 322 | ### 🎫 Chores | 其他更新 323 | 324 | * **deps:** update commitlint monorepo to v18.6.1 ([4ffef9f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/4ffef9f2c613053a050c249e4d5292142db794f1)) 325 | * **deps:** update dependency @typescript-eslint/parser to v7 ([0889a69](https://github.com/zhensherlock/webrtc-streamer-helper/commit/0889a698495daa4ccc29848529094d9bee3cd791)) 326 | * **deps:** update dependency husky to v9.0.11 ([f526a8d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f526a8d39741494339386cb942578ce2d02fa3f2)) 327 | * **deps:** update dependency rollup to v4.11.0 ([3cea235](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3cea23551fa95d2531a6d97613c47ad12570d3e7)) 328 | * update commitlint monorepo to v18.6.1 ([#235](https://github.com/zhensherlock/webrtc-streamer-helper/issues/235)) ([a196c68](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a196c68414b77fb0c939051ee8074ad887b0a0ed)) 329 | * update dependency husky to v9.0.11 ([#234](https://github.com/zhensherlock/webrtc-streamer-helper/issues/234)) ([158ed12](https://github.com/zhensherlock/webrtc-streamer-helper/commit/158ed127e9a0f29c278d7a5e56a6fcb607ab7a94)) 330 | * update dependency rollup to v4.11.0 ([#233](https://github.com/zhensherlock/webrtc-streamer-helper/issues/233)) ([24e86ea](https://github.com/zhensherlock/webrtc-streamer-helper/commit/24e86eadc2e09f8ad2465ac5b3ce7ba228eda45d)) 331 | 332 | 333 | 334 | ## [1.3.8](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.7...v1.3.8) (2024-02-12) 335 | 336 | 337 | ### 🎫 Chores | 其他更新 338 | 339 | * **deps:** update dependency @types/google.maps to v3.55.3 ([dbe4409](https://github.com/zhensherlock/webrtc-streamer-helper/commit/dbe44095df6b65abc10156a25c1c06d456c05dc5)) 340 | * **deps:** update dependency rollup to v4.10.0 ([fc5041c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/fc5041cf8a87a39f2a4ceee3fa463817362aa0d6)) 341 | * update dependency @types/google.maps to v3.55.3 ([#228](https://github.com/zhensherlock/webrtc-streamer-helper/issues/228)) ([5766b3f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5766b3fc7cc45f44ec5fc0625c5bea5ff0fba5d6)) 342 | * update dependency rollup to v4.10.0 ([#226](https://github.com/zhensherlock/webrtc-streamer-helper/issues/226)) ([66b3bae](https://github.com/zhensherlock/webrtc-streamer-helper/commit/66b3bae14829609eb8834ccbb3902046314478ba)) 343 | 344 | 345 | 346 | ## [1.3.7](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.6...v1.3.7) (2024-02-08) 347 | 348 | 349 | ### 🎫 Chores | 其他更新 350 | 351 | * **deps:** update dependency @types/google.maps to v3.55.2 ([a192aea](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a192aea43bc8ff0f0a348199995f85ab83971430)) 352 | * **deps:** update dependency lint-staged to v15.2.2 ([e3adaa7](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e3adaa7ee903c85e054ff877893948a053979631)) 353 | * **deps:** update dependency prettier to v3.2.5 ([f320d61](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f320d6128b6d18f4e4d250f9b396a26250218680)) 354 | * update dependency @types/google.maps to v3.55.2 ([#224](https://github.com/zhensherlock/webrtc-streamer-helper/issues/224)) ([1d6cfe9](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1d6cfe923db7fecb29f43bf7458e9552e7b6c859)) 355 | * update dependency lint-staged to v15.2.2 ([#223](https://github.com/zhensherlock/webrtc-streamer-helper/issues/223)) ([a2e08c2](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a2e08c2275be5ac62850ef4272fc42e74b31f3b9)) 356 | * update dependency prettier to v3.2.5 ([#222](https://github.com/zhensherlock/webrtc-streamer-helper/issues/222)) ([3c65614](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3c6561401430dc36cbfd5819cb1800357babe84d)) 357 | 358 | 359 | 360 | ## [1.3.6](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.5...v1.3.6) (2024-02-04) 361 | 362 | 363 | ### 🎫 Chores | 其他更新 364 | 365 | * **deps:** update dependency @babel/eslint-parser to v7.23.10 ([cbb714e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/cbb714e689f8a68bab060763cdad24dfb64b3dd9)) 366 | * **deps:** update dependency husky to v9.0.10 ([bc3332a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/bc3332af83e173f2a860e30dfae20b9cc71761dc)) 367 | * **deps:** update dependency lint-staged to v15.2.1 ([94604db](https://github.com/zhensherlock/webrtc-streamer-helper/commit/94604db05c61c0a98a21f83c5c4e6adfc8180b67)) 368 | * **deps:** update dependency stylelint to v16.2.1 ([0b5e5ec](https://github.com/zhensherlock/webrtc-streamer-helper/commit/0b5e5ecd86f7ee6b01cccba55ba328701731a592)) 369 | * update dependency @babel/eslint-parser to v7.23.10 ([#218](https://github.com/zhensherlock/webrtc-streamer-helper/issues/218)) ([62ecfa1](https://github.com/zhensherlock/webrtc-streamer-helper/commit/62ecfa1c1fa6dd6e824ab60b5d7e95a8ebab897e)) 370 | * update dependency husky to v9.0.10 ([#217](https://github.com/zhensherlock/webrtc-streamer-helper/issues/217)) ([17bd693](https://github.com/zhensherlock/webrtc-streamer-helper/commit/17bd693efcfb21bec0617f7cc4ae74333a0d0ede)) 371 | * update dependency lint-staged to v15.2.1 ([#216](https://github.com/zhensherlock/webrtc-streamer-helper/issues/216)) ([f5a5a89](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f5a5a899040ca9e766713dd075a674fc181edc8c)) 372 | * update dependency stylelint to v16.2.1 ([#215](https://github.com/zhensherlock/webrtc-streamer-helper/issues/215)) ([e277f1f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e277f1fab33858af2689cae534826d3e7b9c3f59)) 373 | 374 | 375 | 376 | ## [1.3.5](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.4...v1.3.5) (2024-01-31) 377 | 378 | 379 | ### 🎫 Chores | 其他更新 380 | 381 | * **deps:** update dependency @types/google.maps to v3.55.1 ([735f14b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/735f14bbd6f65ea6461b66fa452855203f3183c2)) 382 | * **deps:** update dependency husky to v9.0.7 ([2ef2816](https://github.com/zhensherlock/webrtc-streamer-helper/commit/2ef28168cab3c5b022737ed6a8583d337ef295f4)) 383 | * update dependency @types/google.maps to v3.55.1 ([#210](https://github.com/zhensherlock/webrtc-streamer-helper/issues/210)) ([968c72f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/968c72f0954d84402cf228b0edabd93747396dfd)) 384 | * update dependency husky to v9.0.7 ([#209](https://github.com/zhensherlock/webrtc-streamer-helper/issues/209)) ([73045fe](https://github.com/zhensherlock/webrtc-streamer-helper/commit/73045fe38887dda2efcfe650c2ba3a23644f3b20)) 385 | 386 | 387 | 388 | ## [1.3.4](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.3...v1.3.4) (2024-01-27) 389 | 390 | 391 | ### 🎫 Chores | 其他更新 392 | 393 | * **deps:** update babel monorepo to v7.23.9 ([546a102](https://github.com/zhensherlock/webrtc-streamer-helper/commit/546a1029726dc1178143d8882d06f5e44075b2c5)) 394 | * **deps:** update commitlint monorepo to v18.6.0 ([c885746](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c8857466a27d76a4355ded12387fe89e03202142)) 395 | * **deps:** update dependency @types/google.maps to v3.55.0 ([2aa47c3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/2aa47c3783969610dddee2f01491212a18dc99e4)) 396 | * **deps:** update dependency husky to v9 ([d4fea07](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d4fea078ec8082b66185c3348c3f3b412a14b04e)) 397 | * update babel monorepo to v7.23.9 ([#206](https://github.com/zhensherlock/webrtc-streamer-helper/issues/206)) ([9612861](https://github.com/zhensherlock/webrtc-streamer-helper/commit/96128616b125c460b241ec91aae38811b133c5b9)) 398 | * update commitlint monorepo to v18.6.0 ([#205](https://github.com/zhensherlock/webrtc-streamer-helper/issues/205)) ([83b843b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/83b843bab370574c231d34763345e55d147ea56c)) 399 | * update dependency @types/google.maps to v3.55.0 ([#204](https://github.com/zhensherlock/webrtc-streamer-helper/issues/204)) ([33e179c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/33e179c89447ba24e694cecde9c5fde71c561bc4)) 400 | * update dependency husky to v9 ([#203](https://github.com/zhensherlock/webrtc-streamer-helper/issues/203)) ([4042299](https://github.com/zhensherlock/webrtc-streamer-helper/commit/40422991c7b31ec5c60d545ed50c93f1636136bf)) 401 | 402 | 403 | 404 | ## [1.3.3](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.2...v1.3.3) (2024-01-23) 405 | 406 | 407 | ### 🎫 Chores | 其他更新 408 | 409 | * **deps:** update commitlint monorepo to v18.5.0 ([894cfdd](https://github.com/zhensherlock/webrtc-streamer-helper/commit/894cfddb6015d9cabbb3ddc42160959c32ddeb06)) 410 | * **deps:** update dependency rollup to v4.9.6 ([ef0af14](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ef0af146ff5582637de1be3ed8644ce4feb95a71)) 411 | * **deps:** update dependency stylelint to v16.2.0 ([5e5b066](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5e5b066540973bd8e5bbb7d5f7e06ac4cb07ef65)) 412 | * update commitlint monorepo to v18.5.0 ([#197](https://github.com/zhensherlock/webrtc-streamer-helper/issues/197)) ([f96bc96](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f96bc96311ed9c17d160aac01faf0a1524b0c5a4)) 413 | * update dependency rollup to v4.9.6 ([#198](https://github.com/zhensherlock/webrtc-streamer-helper/issues/198)) ([42a744a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/42a744ad5710967ddba56a1a27575d821dcb62e8)) 414 | * update dependency stylelint to v16.2.0 ([#196](https://github.com/zhensherlock/webrtc-streamer-helper/issues/196)) ([f4cddf1](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f4cddf152f0a6f21ac8b940005144b1370cbf57d)) 415 | 416 | 417 | 418 | ## [1.3.2](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.1...v1.3.2) (2024-01-19) 419 | 420 | 421 | ### 🎫 Chores | 其他更新 422 | 423 | * **deps:** update dependency autoprefixer to v10.4.17 ([a5a7c6a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a5a7c6ab5b7b9075a64b5bff71a47e5cf8d8cac1)) 424 | * **deps:** update dependency prettier to v3.2.4 ([bbefdf4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/bbefdf4061364fe89bf96aaa11e49495eeca4d3c)) 425 | * update dependency autoprefixer to v10.4.17 ([#192](https://github.com/zhensherlock/webrtc-streamer-helper/issues/192)) ([8a88e18](https://github.com/zhensherlock/webrtc-streamer-helper/commit/8a88e184c3cb191ab2557daff65d8067a0cbc82f)) 426 | * update dependency prettier to v3.2.4 ([#191](https://github.com/zhensherlock/webrtc-streamer-helper/issues/191)) ([0cac17c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/0cac17c7cfb2d8ffa122fd954874394a49edd694)) 427 | 428 | 429 | 430 | ## [1.3.1](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.3.0...v1.3.1) (2024-01-15) 431 | 432 | 433 | ### 🎫 Chores | 其他更新 434 | 435 | * **deps:** update dependency prettier to v3.2.2 ([ca23dfd](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ca23dfd0ba00516ad3eb54d03afd7b942ea205de)) 436 | * **deps:** update dependency rollup to v4.9.5 ([25e06bd](https://github.com/zhensherlock/webrtc-streamer-helper/commit/25e06bd6de402c7d32366aa1a0db13cced2f69a3)) 437 | * update dependency prettier to v3.2.2 ([#187](https://github.com/zhensherlock/webrtc-streamer-helper/issues/187)) ([95d364b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/95d364b5b16069a167e5d8ab869f1d835ca53121)) 438 | * update dependency rollup to v4.9.5 ([#188](https://github.com/zhensherlock/webrtc-streamer-helper/issues/188)) ([125f317](https://github.com/zhensherlock/webrtc-streamer-helper/commit/125f317816eb35aed2233b2146b74e744546628d)) 439 | 440 | 441 | 442 | # [1.3.0](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.32...v1.3.0) (2024-01-11) 443 | 444 | 445 | ### ✨ Features | 新功能 446 | 447 | * webRTCStreamer add preferenceMime param ([b79d1aa](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b79d1aaeb4a4b55495bf6246ed7f846d81550c11)) 448 | 449 | 450 | ### 🎫 Chores | 其他更新 451 | 452 | * **deps:** update dependency @babel/preset-env to v7.23.8 ([f558977](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f558977589b8c7962dbb33db8302bdd39204bc01)) 453 | * **deps:** update dependency @rollup/plugin-typescript to v11.1.6 ([9180823](https://github.com/zhensherlock/webrtc-streamer-helper/commit/91808233e4fa97b301fb223d7effaa9257f918c8)) 454 | * **deps:** update dependency eslint-plugin-prettier to v5.1.3 ([539df42](https://github.com/zhensherlock/webrtc-streamer-helper/commit/539df429e5a4955632500dcf33211474ca89e8d8)) 455 | * update dependency @babel/preset-env to v7.23.8 ([#184](https://github.com/zhensherlock/webrtc-streamer-helper/issues/184)) ([21f91f9](https://github.com/zhensherlock/webrtc-streamer-helper/commit/21f91f9ff2628c83b538605139fb40df2b2e6a48)) 456 | * update dependency @rollup/plugin-typescript to v11.1.6 ([#183](https://github.com/zhensherlock/webrtc-streamer-helper/issues/183)) ([99d6705](https://github.com/zhensherlock/webrtc-streamer-helper/commit/99d670507cd1f630decb467a821ecd22144779ab)) 457 | * update dependency eslint-plugin-prettier to v5.1.3 ([#182](https://github.com/zhensherlock/webrtc-streamer-helper/issues/182)) ([1c1ec62](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1c1ec620bbed4f6f75dbf0f8bd14211c43cb50f0)) 458 | 459 | 460 | 461 | ## [1.2.32](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.31...v1.2.32) (2024-01-07) 462 | 463 | 464 | ### 🎫 Chores | 其他更新 465 | 466 | * **deps:** update commitlint monorepo to v18.4.4 ([9710d1c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/9710d1cdcae59a7957b1a1b8c2d7da903ed1c8e3)) 467 | * **deps:** update dependency cssnano to v6.0.3 ([77ad6e3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/77ad6e32377913da0a466138818f218311217b55)) 468 | * **deps:** update dependency rollup to v4.9.4 ([1e80a30](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1e80a30d2a43889436cb381593a807366e321356)) 469 | * update commitlint monorepo to v18.4.4 ([#178](https://github.com/zhensherlock/webrtc-streamer-helper/issues/178)) ([d74b51e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d74b51ebd8e4459b0422aae713449c45262cdaa8)) 470 | * update dependency cssnano to v6.0.3 ([#177](https://github.com/zhensherlock/webrtc-streamer-helper/issues/177)) ([2222357](https://github.com/zhensherlock/webrtc-streamer-helper/commit/222235714970d223e4486a57262e8f5b149a05f1)) 471 | * update dependency rollup to v4.9.4 ([#176](https://github.com/zhensherlock/webrtc-streamer-helper/issues/176)) ([ba49c6c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ba49c6c856fbd3094c8615fcac368ccd3d221bd2)) 472 | 473 | 474 | 475 | ## [1.2.31](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.30...v1.2.31) (2024-01-03) 476 | 477 | 478 | ### 🎫 Chores | 其他更新 479 | 480 | * **deps:** update dependency rollup to v4.9.2 ([7a02470](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7a0247041ebc05d0fb090457f8785911b290e7a9)) 481 | * update dependency rollup to v4.9.2 ([#172](https://github.com/zhensherlock/webrtc-streamer-helper/issues/172)) ([a3f7603](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a3f760353ecffc72727d69444bcac299527e4eac)) 482 | 483 | 484 | 485 | ## [1.2.30](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.29...v1.2.30) (2023-12-30) 486 | 487 | 488 | ### 🎫 Chores | 其他更新 489 | 490 | * **deps:** update babel monorepo to v7.23.7 ([528aa9c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/528aa9c1a1952cc9de84198f8660711655c203f0)) 491 | * **deps:** update dependency eslint-define-config to v2.1.0 ([7dd1bcd](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7dd1bcd014435132b9ff82c7bced2f4ae9391348)) 492 | * update babel monorepo to v7.23.7 ([#170](https://github.com/zhensherlock/webrtc-streamer-helper/issues/170)) ([578eedb](https://github.com/zhensherlock/webrtc-streamer-helper/commit/578eedbcd6a0c0402beb19f1285b7d0c93fecb85)) 493 | * update dependency eslint-define-config to v2.1.0 ([#169](https://github.com/zhensherlock/webrtc-streamer-helper/issues/169)) ([c6b5ff5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c6b5ff5dd54a80ac20d28c9722fb657cbfe4905f)) 494 | 495 | 496 | 497 | ## [1.2.29](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.28...v1.2.29) (2023-12-26) 498 | 499 | 500 | ### 🎫 Chores | 其他更新 501 | 502 | * **deps:** update dependency eslint-plugin-prettier to v5.1.2 ([21c2f4b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/21c2f4b0ea022b8706531af77f00a601d2379e14)) 503 | * **deps:** update dependency stylelint to v16.1.0 ([88d3ca8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/88d3ca83213414f6549fd9bc3c7ec6ebf3f9caaa)) 504 | * update dependency eslint-plugin-prettier to v5.1.2 ([#166](https://github.com/zhensherlock/webrtc-streamer-helper/issues/166)) ([62d385f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/62d385f4d1e1ca630d31e8fa63be2c2e2292d250)) 505 | * update dependency rollup to v4 ([31702ef](https://github.com/zhensherlock/webrtc-streamer-helper/commit/31702ef67a4d50e0bad86c2cd10db6e1ef8fbbec)) 506 | * update dependency stylelint to v16.1.0 ([#165](https://github.com/zhensherlock/webrtc-streamer-helper/issues/165)) ([93e2b3d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/93e2b3d58d8983681ff1f243bc509a7e1f4fa610)) 507 | 508 | 509 | 510 | ## [1.2.28](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.27...v1.2.28) (2023-12-22) 511 | 512 | 513 | ### 🎫 Chores | 其他更新 514 | 515 | * **deps:** update dependency eslint-plugin-prettier to v5.1.1 ([f29c83b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f29c83bb39404a5a7b28098d132ed7ffadce5427)) 516 | * update dependency eslint-plugin-prettier to v5.1.1 ([#162](https://github.com/zhensherlock/webrtc-streamer-helper/issues/162)) ([6e54ff5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/6e54ff53b71e5fb021d50898f34a81d2c7ea3ee5)) 517 | 518 | 519 | 520 | ## [1.2.27](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.26...v1.2.27) (2023-12-18) 521 | 522 | 523 | ### 🎫 Chores | 其他更新 524 | 525 | * **deps:** update dependency cssnano to v6.0.2 ([ec197a5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ec197a5f2267c09c1da3a1dd2d405b481be212a8)) 526 | * **deps:** update dependency eslint to v8.56.0 ([de87cfe](https://github.com/zhensherlock/webrtc-streamer-helper/commit/de87cfe602897970d11d9d35f99965ef5991ef53)) 527 | * **deps:** update dependency eslint-plugin-import to v2.29.1 ([3665f04](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3665f0416d77d355d5c5fa675779c1c05a4bef8c)) 528 | * **deps:** update dependency stylelint to v16.0.2 ([11f217f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/11f217ffc9bf34dc8b7826cd135da37c8b207d71)) 529 | * update dependency cssnano to v6.0.2 ([#60](https://github.com/zhensherlock/webrtc-streamer-helper/issues/60)) ([fd63205](https://github.com/zhensherlock/webrtc-streamer-helper/commit/fd63205cdd3bf2400fa4b327c75014b298e1bfe3)) 530 | * update dependency eslint to v8.56.0 ([#157](https://github.com/zhensherlock/webrtc-streamer-helper/issues/157)) ([0d774e8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/0d774e805309bf680f11c5ce838fb05f9a46f838)) 531 | * update dependency eslint-plugin-import to v2.29.1 ([#159](https://github.com/zhensherlock/webrtc-streamer-helper/issues/159)) ([3dbc960](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3dbc9603d2d154c6d4a823858f49f8f520be9a56)) 532 | * update dependency stylelint to v16.0.2 ([#158](https://github.com/zhensherlock/webrtc-streamer-helper/issues/158)) ([613bcfb](https://github.com/zhensherlock/webrtc-streamer-helper/commit/613bcfbcb57c1496593f47e067101a6f2aca4f70)) 533 | 534 | 535 | 536 | ## [1.2.26](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.25...v1.2.26) (2023-12-14) 537 | 538 | 539 | ### 🎫 Chores | 其他更新 540 | 541 | * **deps:** update babel monorepo to v7.23.6 ([e86aa1b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e86aa1be92ae3cff7febc029b74ce027fd3b5a9a)) 542 | * **deps:** update dependency prettier to v3.1.1 ([2346738](https://github.com/zhensherlock/webrtc-streamer-helper/commit/2346738a3b3a102a17a987b361ff1e48a3aa703d)) 543 | * **deps:** update dependency stylelint to v16 ([4f97d77](https://github.com/zhensherlock/webrtc-streamer-helper/commit/4f97d77a8f0994cc99a5403280a333ede372c669)) 544 | * update babel monorepo to v7.23.6 ([#152](https://github.com/zhensherlock/webrtc-streamer-helper/issues/152)) ([39d3f74](https://github.com/zhensherlock/webrtc-streamer-helper/commit/39d3f74eedbb828e49ee58b14d860f0a98942c5f)) 545 | * update dependency prettier to v3.1.1 ([#151](https://github.com/zhensherlock/webrtc-streamer-helper/issues/151)) ([a93083d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a93083d75d26cd48fbfb42c507bcf13f6352fc61)) 546 | 547 | 548 | 549 | ## [1.2.25](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.24...v1.2.25) (2023-12-10) 550 | 551 | 552 | ### 🎫 Chores | 其他更新 553 | 554 | * **deps:** update dependency stylelint-order to v6.0.4 ([22c63a7](https://github.com/zhensherlock/webrtc-streamer-helper/commit/22c63a799ef5bfa6082ed090525409bb610094d1)) 555 | * **deps:** update dependency typescript to v5.3.3 ([1882952](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1882952b3d0ca5d15d3410a6149ef3128e19f68a)) 556 | * update dependency stylelint-order to v6.0.4 ([#148](https://github.com/zhensherlock/webrtc-streamer-helper/issues/148)) ([db90ca8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/db90ca8614fbe3f0ca20f2a4be57c732cf9f8a49)) 557 | 558 | 559 | 560 | ## [1.2.24](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.23...v1.2.24) (2023-12-06) 561 | 562 | 563 | ### 🎫 Chores | 其他更新 564 | 565 | * **deps:** update dependency eslint-config-prettier to v9.1.0 ([c7e51bf](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c7e51bfe54e542a00b8bb3b4b74ef4ca946fb893)) 566 | * **deps:** update dependency lint-staged to v15.2.0 ([405d42c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/405d42c5f6e6f181808332bb3f75f883df208bdf)) 567 | * update dependency eslint-config-prettier to v9.1.0 ([#143](https://github.com/zhensherlock/webrtc-streamer-helper/issues/143)) ([221b342](https://github.com/zhensherlock/webrtc-streamer-helper/commit/221b3424a1018da6a9a11e4b7f351ff38e10a99b)) 568 | * update dependency lint-staged to v15.2.0 ([#142](https://github.com/zhensherlock/webrtc-streamer-helper/issues/142)) ([a541aca](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a541acae3053b6bfe04a1ad2bfa8e89fac7b8229)) 569 | 570 | 571 | 572 | ## [1.2.23](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.22...v1.2.23) (2023-12-02) 573 | 574 | 575 | ### 🎫 Chores | 其他更新 576 | 577 | * **deps:** update babel monorepo to v7.23.5 ([59a43e0](https://github.com/zhensherlock/webrtc-streamer-helper/commit/59a43e0e07a9b18ea856fc4bdbd27d4a3e93a771)) 578 | * **deps:** update dependency eslint to v8.55.0 ([6d62d46](https://github.com/zhensherlock/webrtc-streamer-helper/commit/6d62d46fc588940843c34336afdd4d4e0b9b212a)) 579 | * update babel monorepo to v7.23.5 ([#139](https://github.com/zhensherlock/webrtc-streamer-helper/issues/139)) ([bac8303](https://github.com/zhensherlock/webrtc-streamer-helper/commit/bac8303e87556853e3a5f71ad49e2bc0aee9c9af)) 580 | * update dependency eslint to v8.55.0 ([#138](https://github.com/zhensherlock/webrtc-streamer-helper/issues/138)) ([ca52574](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ca52574832b6f717373baf39eee2de170458ac86)) 581 | 582 | 583 | 584 | ## [1.2.22](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.21...v1.2.22) (2023-11-28) 585 | 586 | 587 | ### 🎫 Chores | 其他更新 588 | 589 | * **deps:** update dependency @types/google.maps to v3.54.10 ([bd95e36](https://github.com/zhensherlock/webrtc-streamer-helper/commit/bd95e3619597d46c288f5bc3b6ab978658f81467)) 590 | * update dependency @types/google.maps to v3.54.10 ([#135](https://github.com/zhensherlock/webrtc-streamer-helper/issues/135)) ([3657f1b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3657f1b4b21615b02185d694bf2f9915be0259cd)) 591 | 592 | 593 | 594 | ## [1.2.21](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.20...v1.2.21) (2023-11-24) 595 | 596 | 597 | ### 🎫 Chores | 其他更新 598 | 599 | * **deps:** update commitlint monorepo to v18.4.3 ([02ceb0b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/02ceb0b42185510f1d366116c42048f073c2c238)) 600 | * **deps:** update dependency @babel/plugin-transform-runtime to v7.23.4 ([1c1faa3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1c1faa33c5210bfcf757253c6b09c77520b80b8c)) 601 | * **deps:** update dependency @types/google.maps to v3.54.9 ([62e2bbd](https://github.com/zhensherlock/webrtc-streamer-helper/commit/62e2bbd2e21caec5babcbd5b7fe000930dcb60cc)) 602 | * **deps:** update dependency typescript to v5.3.2 ([cc13763](https://github.com/zhensherlock/webrtc-streamer-helper/commit/cc13763f156bd942e4e2e091dc09c0c0ed3d6867)) 603 | * update commitlint monorepo to v18.4.3 ([#133](https://github.com/zhensherlock/webrtc-streamer-helper/issues/133)) ([78cf91a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/78cf91ac5589741805ca5455809e049da8959893)) 604 | * update dependency @babel/plugin-transform-runtime to v7.23.4 ([#132](https://github.com/zhensherlock/webrtc-streamer-helper/issues/132)) ([1af9688](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1af968890bd23fcb717ea1490989452a18ab4bbd)) 605 | * update dependency @types/google.maps to v3.54.9 ([#131](https://github.com/zhensherlock/webrtc-streamer-helper/issues/131)) ([1d6cef5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1d6cef54d2841e389bd0367c91a5dc2a0f39f018)) 606 | 607 | 608 | 609 | ## [1.2.20](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.19...v1.2.20) (2023-11-19) 610 | 611 | 612 | ### 🎫 Chores | 其他更新 613 | 614 | * **deps:** update commitlint monorepo to v18.4.2 ([732e7ef](https://github.com/zhensherlock/webrtc-streamer-helper/commit/732e7efa4bab70cbde0862bb5e03c8ce5a3c82e0)) 615 | * **deps:** update dependency @types/google.maps to v3.54.8 ([71de6ae](https://github.com/zhensherlock/webrtc-streamer-helper/commit/71de6ae332c051fdbd350f0234e74ba5d9bedfe0)) 616 | * **deps:** update dependency eslint to v8.54.0 ([3c89321](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3c89321ec713aa017b92097daec8cf2865ff3dac)) 617 | * **deps:** update dependency eslint-define-config to v2 ([768fbec](https://github.com/zhensherlock/webrtc-streamer-helper/commit/768fbecbff0536f856abfd601cee9e8dd6eb6962)) 618 | * update commitlint monorepo to v18.4.2 ([#125](https://github.com/zhensherlock/webrtc-streamer-helper/issues/125)) ([9afc4e3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/9afc4e35c9c974af73eda1c38da7a2384a868476)) 619 | * update dependency @types/google.maps to v3.54.8 ([#124](https://github.com/zhensherlock/webrtc-streamer-helper/issues/124)) ([f9c6e2f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f9c6e2fcae0141e40920d3f37d9c9abf6d497fce)) 620 | * update dependency eslint to v8.54.0 ([#123](https://github.com/zhensherlock/webrtc-streamer-helper/issues/123)) ([5c422b5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5c422b5edc2c7bc20ae8e24ba6d0f70a5d432cf2)) 621 | 622 | 623 | 624 | ## [1.2.19](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.18...v1.2.19) (2023-11-16) 625 | 626 | 627 | ### 🎫 Chores | 其他更新 628 | 629 | * **deps:** update dependency @commitlint/cli to v18.4.1 ([8702857](https://github.com/zhensherlock/webrtc-streamer-helper/commit/8702857436baa348aa3f7a24d03025c35132eb19)) 630 | * **deps:** update dependency prettier to v3.1.0 ([23ba100](https://github.com/zhensherlock/webrtc-streamer-helper/commit/23ba100f2c9b1bf3574eb136c53cbc4dc86c3755)) 631 | * update dependency @commitlint/cli to v18.4.1 ([#118](https://github.com/zhensherlock/webrtc-streamer-helper/issues/118)) ([53426aa](https://github.com/zhensherlock/webrtc-streamer-helper/commit/53426aa81c3e2227fe681be5d1ce92a4061f754f)) 632 | * update dependency prettier to v3.1.0 ([#117](https://github.com/zhensherlock/webrtc-streamer-helper/issues/117)) ([7464faf](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7464faf6980f0afaf247c6815898eb6e610a25e5)) 633 | 634 | 635 | 636 | ## [1.2.18](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.17...v1.2.18) (2023-11-12) 637 | 638 | 639 | ### 🎫 Chores | 其他更新 640 | 641 | * **deps:** update babel monorepo to v7.23.3 ([6168560](https://github.com/zhensherlock/webrtc-streamer-helper/commit/61685605c5a241ce5330294193cd5636aaf46656)) 642 | * **deps:** update commitlint monorepo to v18.4.0 ([ba76969](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ba76969005bd3a19e80fdb4ec133be9696c28ad4)) 643 | * **deps:** update dependency lint-staged to v15.1.0 ([d7fc1f5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d7fc1f51a96f2479f25b9e83f7b2feefc04816d9)) 644 | * update babel monorepo to v7.23.3 ([#114](https://github.com/zhensherlock/webrtc-streamer-helper/issues/114)) ([22a225a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/22a225af61a1ff36266455f290ffbd1f2e3d71e9)) 645 | * update commitlint monorepo to v18.4.0 ([#113](https://github.com/zhensherlock/webrtc-streamer-helper/issues/113)) ([a567dd5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a567dd57731c23cb633716acea79d63e48ce2ac4)) 646 | * update dependency lint-staged to v15.1.0 ([#112](https://github.com/zhensherlock/webrtc-streamer-helper/issues/112)) ([1d61325](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1d61325fe287c18a76a0f7f9e65524eb2642ba90)) 647 | 648 | 649 | 650 | ## [1.2.17](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.16...v1.2.17) (2023-11-08) 651 | 652 | 653 | ### 🎫 Chores | 其他更新 654 | 655 | * **deps:** update dependency @types/google.maps to v3.54.7 ([64d00a2](https://github.com/zhensherlock/webrtc-streamer-helper/commit/64d00a266e936447a517991d4f637163c98088fa)) 656 | * update dependency @types/google.maps to v3.54.7 ([#108](https://github.com/zhensherlock/webrtc-streamer-helper/issues/108)) ([8d47342](https://github.com/zhensherlock/webrtc-streamer-helper/commit/8d473421b3608c65082690befc6f99c2b1c4e64f)) 657 | 658 | 659 | 660 | ## [1.2.16](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.15...v1.2.16) (2023-11-04) 661 | 662 | 663 | ### 🎫 Chores | 其他更新 664 | 665 | * **deps:** update dependency eslint to v8.53.0 ([951b97b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/951b97bf1516fd1fb91c1767e44c096fc29bf007)) 666 | * update dependency eslint to v8.53.0 ([#06](https://github.com/zhensherlock/webrtc-streamer-helper/issues/06)) ([aba0cb0](https://github.com/zhensherlock/webrtc-streamer-helper/commit/aba0cb000752e5e9628fa0bacfc2cb3e0bbc7bad)) 667 | 668 | 669 | 670 | ## [1.2.15](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.14...v1.2.15) (2023-10-31) 671 | 672 | 673 | ### 🎫 Chores | 其他更新 674 | 675 | * **deps:** update dependency @types/google.maps to v3.54.6 ([da5e407](https://github.com/zhensherlock/webrtc-streamer-helper/commit/da5e407d6658acc9a6f7e813e7d688fba88d4a9d)) 676 | * update dependency @types/google.maps to v3.54.6 ([#104](https://github.com/zhensherlock/webrtc-streamer-helper/issues/104)) ([1ea1ae5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1ea1ae55b2c5049091cd1998491a0d2a919179da)) 677 | 678 | 679 | 680 | ## [1.2.14](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.13...v1.2.14) (2023-10-27) 681 | 682 | 683 | ### 🎫 Chores | 其他更新 684 | 685 | * **deps:** update actions/setup-node action to v4 ([513866e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/513866e038fac048247d094269a6920f33b0d7ff)) 686 | * **deps:** update commitlint monorepo to v18.2.0 ([c5f5a96](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c5f5a968dbae2e7c4f20bf88d0b76a98ebfe384b)) 687 | * **deps:** update dependency @types/google.maps to v3.54.5 ([bc1f3ba](https://github.com/zhensherlock/webrtc-streamer-helper/commit/bc1f3ba8a65938d810dbd59279d4f85a9a66cdd1)) 688 | * **deps:** update dependency eslint-plugin-import to v2.29.0 ([c3bf755](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c3bf75522c48efd0497d9a273063b825d65ca397)) 689 | * update commitlint monorepo to v18.1.0 ([2488aa3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/2488aa38387c28918534048e0e8bcb48c926e4a8)) 690 | * update commitlint monorepo to v18.2.0 ([#101](https://github.com/zhensherlock/webrtc-streamer-helper/issues/101)) ([c980ed3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c980ed31f3bc94deaa3103c6aee9871467f32769)) 691 | * update dependency @types/google.maps to v3.54.5 ([#102](https://github.com/zhensherlock/webrtc-streamer-helper/issues/102)) ([e81baa4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e81baa4a8ee52ff08f1fa0b61e70e67f8f82f1a7)) 692 | * update dependency eslint-plugin-import to v2.29.0 ([#100](https://github.com/zhensherlock/webrtc-streamer-helper/issues/100)) ([abc7016](https://github.com/zhensherlock/webrtc-streamer-helper/commit/abc70160b1e66b86220d8e1570b4312507f38ab1)) 693 | 694 | 695 | 696 | ## [1.2.13](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.12...v1.2.13) (2023-10-23) 697 | 698 | 699 | ### 🎫 Chores | 其他更新 700 | 701 | * **deps:** update commitlint monorepo to v18 ([50781b8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/50781b8cfc92c1ef24420ea0bbd0b37928b4d85d)) 702 | * update dependency concurrently to v8.2.2 ([#5](https://github.com/zhensherlock/webrtc-streamer-helper/issues/5)) ([ea7e50f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ea7e50f81f1d6180b661b36e27ecc749284838dc)) 703 | * update dependency eslint to v8.52.0 ([#93](https://github.com/zhensherlock/webrtc-streamer-helper/issues/93)) ([136e7b7](https://github.com/zhensherlock/webrtc-streamer-helper/commit/136e7b789a82962387908f220a49c07690abe0e7)) 704 | * update dependency lint-staged to v15.0.2 ([#94](https://github.com/zhensherlock/webrtc-streamer-helper/issues/94)) ([be52145](https://github.com/zhensherlock/webrtc-streamer-helper/commit/be52145fef87039818e75f53ae0be421e46984ea)) 705 | 706 | 707 | 708 | ## [1.2.12](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.11...v1.2.12) (2023-10-19) 709 | 710 | 711 | ### 🎫 Chores | 其他更新 712 | 713 | * **deps:** update dependency @rollup/plugin-strip to v3.0.4 ([117c94f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/117c94f2382e9fdd69f1645f2cef41fc1effffab)) 714 | * **deps:** update dependency @types/google.maps to v3.54.4 ([7b0cd9f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7b0cd9fbd7dc203c8ec5927fa2c2973344c0dde3)) 715 | * **deps:** update dependency concurrently to v8.2.2 ([fc04c18](https://github.com/zhensherlock/webrtc-streamer-helper/commit/fc04c18fd4e5a415f4a44d810c3aea2436a70aa5)) 716 | * **deps:** update dependency lint-staged to v15 ([3a6ee17](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3a6ee17d311e6b6e1eade897f5b42d69ca574dd4)) 717 | * **deps:** update dependency lint-staged to v15.0.1 ([32e5f6b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/32e5f6bcb991fc8cbe54f04d056a743efbb09665)) 718 | * **deps:** update dependency stylelint to v15.11.0 ([7abc6c6](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7abc6c6f671005a796f984437b8cb2afaf257859)) 719 | * update dependency @rollup/plugin-strip to v3.0.4 ([#86](https://github.com/zhensherlock/webrtc-streamer-helper/issues/86)) ([25c20bc](https://github.com/zhensherlock/webrtc-streamer-helper/commit/25c20bcc3366b21a291b9b2727bc5a3b57e0343c)) 720 | * update dependency @types/google.maps to v3.54.4 ([#85](https://github.com/zhensherlock/webrtc-streamer-helper/issues/85)) ([ee4c0e2](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ee4c0e2e460089bd999985293eb2dbf895d22474)) 721 | * update dependency lint-staged to v15.0.1 ([#84](https://github.com/zhensherlock/webrtc-streamer-helper/issues/84)) ([e4b128d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e4b128d38cf1d5fdcdc844505e08913b943cbbb8)) 722 | * update dependency stylelint to v15.11.0 ([#83](https://github.com/zhensherlock/webrtc-streamer-helper/issues/83)) ([67eeb1e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/67eeb1e6d6bdc97b66eb6df31aa7e97d9469d1de)) 723 | 724 | 725 | 726 | ## [1.2.11](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.10...v1.2.11) (2023-10-14) 727 | 728 | 729 | ### 🎫 Chores | 其他更新 730 | 731 | * **deps:** update babel monorepo to v7.23.2 ([346c781](https://github.com/zhensherlock/webrtc-streamer-helper/commit/346c78148c27d0f9a4d42ce8df57a51ed4f0f72c)) 732 | * **deps:** update commitlint monorepo to v17.8.0 ([af8fb9d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/af8fb9de3445844e11cb3545508694d994f24ac8)) 733 | * **deps:** update dependency eslint-plugin-prettier to v5.0.1 ([ead20e4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ead20e4ec6a353e3bdb16fe5f5cc203f39143c21)) 734 | * update babel monorepo to v7.23.2 ([#77](https://github.com/zhensherlock/webrtc-streamer-helper/issues/77)) ([5d4cf2e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5d4cf2efe1c5335e3b2d6b34798b2d83233c2f0c)) 735 | * update commitlint monorepo to v17.8.0 ([#75](https://github.com/zhensherlock/webrtc-streamer-helper/issues/75)) ([f150ac4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f150ac47a3a5ffa88801e897349ac9579c41f7d8)) 736 | * update dependency eslint-plugin-prettier to v5.0.1 ([#76](https://github.com/zhensherlock/webrtc-streamer-helper/issues/76)) ([a7b2f6f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a7b2f6f65ef50e250da65016d748d6ac5350fad1)) 737 | 738 | 739 | 740 | ## [1.2.10](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.9...v1.2.10) (2023-10-11) 741 | 742 | 743 | ### 🎫 Chores | 其他更新 744 | 745 | * **deps:** update dependency @rollup/plugin-node-resolve to v15.2.3 ([d3762f9](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d3762f9c8454d7a4d7f3e8434931d597bfa06114)) 746 | * **deps:** update dependency eslint-define-config to v1.24.1 ([b9773c3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b9773c35ccbc82ef52587da31fda8ad6e2332918)) 747 | * **deps:** update dependency rollup-plugin-sass to v1.12.21 ([e082c28](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e082c288659b079cbaea3b8a1cfeb9b59af48858)) 748 | * update dependency @rollup/plugin-node-resolve to v15.2.3 ([#69](https://github.com/zhensherlock/webrtc-streamer-helper/issues/69)) ([0e6036d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/0e6036d493755e4db5c9100b8d12d86924cbd15c)) 749 | * update dependency eslint-define-config to v1.24.1 ([#70](https://github.com/zhensherlock/webrtc-streamer-helper/issues/70)) ([6002191](https://github.com/zhensherlock/webrtc-streamer-helper/commit/60021910fa3e1605c00565fe8098467ca85e28dd)) 750 | * update dependency rollup-plugin-sass to v1.12.21 ([#71](https://github.com/zhensherlock/webrtc-streamer-helper/issues/71)) ([cc53c5e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/cc53c5e44e33bd084cee053f4dcf81b87991934d)) 751 | 752 | 753 | 754 | ## [1.2.9](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.8...v1.2.9) (2023-10-07) 755 | 756 | 757 | ### 🎫 Chores | 其他更新 758 | 759 | * **deps:** update dependency @rollup/plugin-babel to v6.0.4 ([fca26a5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/fca26a5435e584e87d0b25ff2136e273df9b6656)) 760 | * **deps:** update dependency @rollup/plugin-eslint to v9.0.5 ([844b7bd](https://github.com/zhensherlock/webrtc-streamer-helper/commit/844b7bdd0f53f70289c75f68b9240f91631154fc)) 761 | * **deps:** update dependency @rollup/plugin-node-resolve to v15.2.2 ([3de6de5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3de6de54153afd5ec1aba19fc46affe08a163172)) 762 | * **deps:** update dependency @rollup/plugin-strip to v3.0.3 ([f99b041](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f99b04185d1565ad3a27a182ffd1111f5daae5e7)) 763 | * **deps:** update dependency @rollup/plugin-terser to v0.4.4 ([c06d68c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c06d68c9e3d509ca2982504a4a8b475fd8084a4f)) 764 | * **deps:** update dependency @rollup/plugin-typescript to v11.1.5 ([317fc7c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/317fc7c5b7c111e0dce30083ff7933b0f330382e)) 765 | * **deps:** update dependency eslint to v8.51.0 ([e817e3e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e817e3ec870223769f5151ddfec67c4cbabf344d)) 766 | * update dependency @rollup/plugin-babel to v6.0.4 ([#65](https://github.com/zhensherlock/webrtc-streamer-helper/issues/65)) ([7039b72](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7039b72358daf74b7a0e92e13cef059fb96c3a1c)) 767 | * update dependency @rollup/plugin-eslint to v9.0.5 ([#65](https://github.com/zhensherlock/webrtc-streamer-helper/issues/65)) ([d14a96a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d14a96ac4398e3931649c7b2f7a90bd0aa4f7dcf)) 768 | * update dependency @rollup/plugin-node-resolve to v15.2.2 ([#63](https://github.com/zhensherlock/webrtc-streamer-helper/issues/63)) ([cd14b41](https://github.com/zhensherlock/webrtc-streamer-helper/commit/cd14b41ea4861a1037a13e53e90b685e745ffe60)) 769 | * update dependency @rollup/plugin-strip to v3.0.3 ([#62](https://github.com/zhensherlock/webrtc-streamer-helper/issues/62)) ([8b033f1](https://github.com/zhensherlock/webrtc-streamer-helper/commit/8b033f1565afa33191850359605d16fac110d9ca)) 770 | * update dependency @rollup/plugin-terser to v0.4.4 ([#61](https://github.com/zhensherlock/webrtc-streamer-helper/issues/61)) ([5896716](https://github.com/zhensherlock/webrtc-streamer-helper/commit/58967160792badee719968edc98eec7edca10e39)) 771 | * update dependency @rollup/plugin-typescript to v11.1.5 ([#60](https://github.com/zhensherlock/webrtc-streamer-helper/issues/60)) ([deb73b2](https://github.com/zhensherlock/webrtc-streamer-helper/commit/deb73b25fc7290511217714bb2d4bdb78c529eaf)) 772 | * update dependency eslint to v8.51.0 ([#59](https://github.com/zhensherlock/webrtc-streamer-helper/issues/59)) ([4411c00](https://github.com/zhensherlock/webrtc-streamer-helper/commit/4411c00e6cb521cc541fd1cf18edd122368eb2c0)) 773 | 774 | 775 | 776 | ## [1.2.8](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.7...v1.2.8) (2023-10-03) 777 | 778 | 779 | ### 🎫 Chores | 其他更新 780 | 781 | * **deps:** update dependency @commitlint/cli to v17.7.2 ([3a07c28](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3a07c2830b8a307a6575473ad3c42f0c60400224)) 782 | * **deps:** update dependency @rollup/plugin-typescript to v11.1.4 ([17f39f7](https://github.com/zhensherlock/webrtc-streamer-helper/commit/17f39f74ecf9084681a7ab6e8259bfbd279fbd72)) 783 | * **deps:** update dependency @types/google.maps to v3.54.3 ([a4e91fa](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a4e91fa94d95a5b333f37e3d1a511adfd199d652)) 784 | * update dependency @commitlint/cli to v17.7.2 ([#50](https://github.com/zhensherlock/webrtc-streamer-helper/issues/50)) ([d49607e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d49607e5aadff13799f39831e4b6b64d5596800f)) 785 | * update dependency @rollup/plugin-typescript to v11.1.4 ([#49](https://github.com/zhensherlock/webrtc-streamer-helper/issues/49)) ([a3f2149](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a3f21496ff051ab23e027e1db2f17487e1878ba7)) 786 | * update dependency @types/google.maps to v3.54.3 ([#48](https://github.com/zhensherlock/webrtc-streamer-helper/issues/48)) ([87e696b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/87e696b71bd62ff1cefa8f4685e8f8fdf34a47ef)) 787 | 788 | 789 | 790 | ## [1.2.7](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.6...v1.2.7) (2023-09-28) 791 | 792 | 793 | ### 🎫 Chores | 其他更新 794 | 795 | * **deps:** update dependency @babel/core to v7.23.0 ([8079601](https://github.com/zhensherlock/webrtc-streamer-helper/commit/8079601bc70fb10fdef54fff1d50955ac549ee5e)) 796 | * **deps:** update dependency @types/google.maps to v3.54.2 ([42e95bc](https://github.com/zhensherlock/webrtc-streamer-helper/commit/42e95bc4c568d3c2c4e93f37c6d558ab00e1e625)) 797 | * **deps:** update dependency rimraf to v5.0.5 ([d753419](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d753419ad4732420b631f81f335f97bbd1ae770c)) 798 | * **deps:** update dependency rollup to v3.29.4 ([ba40a26](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ba40a266264db47036986b2fe761429c2da1655f)) 799 | * update dependency @babel/core to v7.23.0 ([#42](https://github.com/zhensherlock/webrtc-streamer-helper/issues/42)) ([054b8dd](https://github.com/zhensherlock/webrtc-streamer-helper/commit/054b8dd7a6d05342fc5acd6ed72d693d2041e8b6)) 800 | * update dependency @types/google.maps to v3.54.2 ([#45](https://github.com/zhensherlock/webrtc-streamer-helper/issues/45)) ([317291c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/317291c94156a56f0328d89346e07bac14d1a5d7)) 801 | * update dependency rimraf to v5.0.5 ([#44](https://github.com/zhensherlock/webrtc-streamer-helper/issues/44)) ([b482d97](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b482d97030835633eb3d95e324adf3e63d4b7524)) 802 | * update dependency rollup to v3.29.4 ([#43](https://github.com/zhensherlock/webrtc-streamer-helper/issues/43)) ([e20c2c0](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e20c2c0b56074d1b857ee76515e4b8ae1df59fd8)) 803 | 804 | 805 | 806 | ## [1.2.6](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.5...v1.2.6) (2023-09-25) 807 | 808 | 809 | ### 🎫 Chores | 其他更新 810 | 811 | * **deps:** update dependency eslint to v8.50.0 ([4c9f437](https://github.com/zhensherlock/webrtc-streamer-helper/commit/4c9f437bbf0c77342371d27f30cb6789811c7ff4)) 812 | * **deps:** update dependency rollup to v3.29.3 ([93d8860](https://github.com/zhensherlock/webrtc-streamer-helper/commit/93d8860193caa5763abd753d40c239e6dba75976)) 813 | * update dependency eslint to v8.50.0 ([#35](https://github.com/zhensherlock/webrtc-streamer-helper/issues/35)) ([68acd1b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/68acd1b240d425607dfe4fbfcf68a68d202f693b)) 814 | * update dependency rollup to v3.29.3 ([#36](https://github.com/zhensherlock/webrtc-streamer-helper/issues/36)) ([8a00615](https://github.com/zhensherlock/webrtc-streamer-helper/commit/8a0061533a52cf6068d629244f8cec829acfde89)) 815 | 816 | 817 | 818 | ## [1.2.5](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.4...v1.2.5) (2023-09-21) 819 | 820 | 821 | ### 🎫 Chores | 其他更新 822 | 823 | * **deps:** update dependency autoprefixer to v10.4.16 ([078aad4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/078aad45c47ed698c692b959232a3481427a50b5)) 824 | * update dependency autoprefixer to v10.4.16 ([#32](https://github.com/zhensherlock/webrtc-streamer-helper/issues/32)) ([c38f9c7](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c38f9c72cd7e7e52bd6394b8eeff515062e57ab7)) 825 | 826 | 827 | 828 | ## [1.2.4](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.3...v1.2.4) (2023-09-17) 829 | 830 | 831 | ### 🎫 Chores | 其他更新 832 | 833 | * **deps:** update babel monorepo to v7.22.20 ([f2ac800](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f2ac8003ba09eb72f7b7cf3bfc9dabac614f93f7)) 834 | * **deps:** update dependency @types/google.maps to v3.54.1 ([43d8f98](https://github.com/zhensherlock/webrtc-streamer-helper/commit/43d8f98812789afa1aa2ea1b72c2caf458e427b9)) 835 | * **deps:** update dependency rollup to v3.29.2 ([4ee7319](https://github.com/zhensherlock/webrtc-streamer-helper/commit/4ee73191267fd478332cb341577a466334bb3d53)) 836 | * update babel monorepo to v7.22.20 (@babel/core, @babel/preset-env) ([#30](https://github.com/zhensherlock/webrtc-streamer-helper/issues/30)) ([a5714f6](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a5714f6f569e71cf7af87497cc7e2bc5468d61bb)) 837 | * update dependency @types/google.maps to v3.54.1 ([#29](https://github.com/zhensherlock/webrtc-streamer-helper/issues/29)) ([96b05bf](https://github.com/zhensherlock/webrtc-streamer-helper/commit/96b05bf0986db2282e64e93011f87e6aa472a899)) 838 | * update dependency rollup to v3.29.2 ([#28](https://github.com/zhensherlock/webrtc-streamer-helper/issues/28)) ([e86642a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e86642a6dc0cc3e802d0660c9944d3473e3d5a9e)) 839 | 840 | 841 | 842 | ## [1.2.3](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.2...v1.2.3) (2023-09-13) 843 | 844 | 845 | ### 🎫 Chores | 其他更新 846 | 847 | * **deps:** update dependency rollup to v3.29.1 ([ca1676d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ca1676da32c73adc9976e2a5cec68dd6b3ed42b8)) 848 | * update dependency rollup to v3.29.1 ([#25](https://github.com/zhensherlock/webrtc-streamer-helper/issues/25)) ([915221f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/915221f660d529720b651e86e386ac2a7e9720ad)) 849 | 850 | 851 | 852 | ## [1.2.2](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.2.1...v1.2.2) (2023-09-09) 853 | 854 | 855 | ### 🎫 Chores | 其他更新 856 | 857 | * **deps:** update actions/checkout action to v4 ([f55f89d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f55f89dbe4c20225058da40ca379b21e3699edfc)) 858 | * update dependencies ([12ec067](https://github.com/zhensherlock/webrtc-streamer-helper/commit/12ec067f910f1ee26ca7aa65cfe59d28731cadf1)) 859 | * update dependency @babel/core to v7.22.17 ([#24](https://github.com/zhensherlock/webrtc-streamer-helper/issues/24)) ([6782ceb](https://github.com/zhensherlock/webrtc-streamer-helper/commit/6782ceb04fddf9fc7713020c925cd6112e46e8ea)) 860 | * update dependency conventional-changelog-cli to v4.1.0 ([#21](https://github.com/zhensherlock/webrtc-streamer-helper/issues/21)) ([9f3cad5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/9f3cad5c7e6adb9a8ba61f33696aad1098a7bc4b)) 861 | * update dependency eslint to v8.49.0 ([#22](https://github.com/zhensherlock/webrtc-streamer-helper/issues/22)) ([67476a0](https://github.com/zhensherlock/webrtc-streamer-helper/commit/67476a024f8d2c0f3c2ee73c0e70df6881feaf5b)) 862 | * update dependency rollup to v3.29.0 ([#20](https://github.com/zhensherlock/webrtc-streamer-helper/issues/20)) ([412edf1](https://github.com/zhensherlock/webrtc-streamer-helper/commit/412edf1f990d1fc0982a47152b34b45dd3b6de4a)) 863 | * update stylelint config ([c2f4924](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c2f49241fde656723fa3ac62364a5a7aaa1e61cd)) 864 | 865 | 866 | 867 | # [1.2.0](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.1.1...v1.2.0) (2023-09-02) 868 | 869 | 870 | ### 🎫 Chores | 其他更新 871 | 872 | * add lint-staged, prettier, eslint, stylelint ([eaa574d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/eaa574dbf6dd83ce6af0582be9c7243d803ef710)) 873 | * update lint-changelog ([f0894ea](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f0894eaed15ac1145314e96b37323175af18bf5b)) 874 | * update pre-commit ([b3a51bd](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b3a51bd0484cb6da6095085535886cfc6bf0aa2b)) 875 | * update pre-commit ([5dcf816](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5dcf816984d6feb7967d7afc3ad5b896f55c8a4f)) 876 | * update typescript version ([e4d92d4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e4d92d4aa19a0ce84f5b04158bacb51cd25410e2)) 877 | 878 | 879 | ### 💄 Styles | 风格 880 | 881 | * update code style ([c1d0d58](https://github.com/zhensherlock/webrtc-streamer-helper/commit/c1d0d589ff8762b5f1fe8101c8b90c0e6c6c0b73)) 882 | * update code style ([d3b9338](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d3b93381b3ce93393b532677d92222391deccca3)) 883 | 884 | 885 | 886 | ## [1.1.1](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.1.0...v1.1.1) (2023-08-29) 887 | 888 | 889 | ### 🎫 Chores | 其他更新 890 | 891 | * **deps:** update dependency @rollup/plugin-typescript to v11.1.3 ([76ce4f8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/76ce4f84fe08cf3f6e3d376be369bac469750cd6)) 892 | * **deps:** update dependency conventional-changelog-angular to v7 ([cfc804c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/cfc804c7c8f1a8f6bf8705d62f0b476728d5e46d)) 893 | * **deps:** update dependency eslint to v8.48.0 ([4ed5113](https://github.com/zhensherlock/webrtc-streamer-helper/commit/4ed5113530678f019ad7190f85a79f6c0458a79f)) 894 | * update dependencies ([b0ce3e5](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b0ce3e55f3cd26ea10016d2fd899ebce2075f7c7)) 895 | 896 | 897 | 898 | # [1.1.0](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.0.6...v1.1.0) (2023-08-25) 899 | 900 | 901 | ### 🎫 Chores | 其他更新 902 | 903 | * **deps:** update dependency @types/google.maps to v3.54.0 ([f905c72](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f905c72dc3d0d5de206407fb0d20c13120d4e02c)) 904 | * **deps:** update dependency typescript to v5.2.2 ([436c37e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/436c37ecfbf4a2a9f704e688d9b35bcfd7c24a83)) 905 | * update dependencies ([046ef1c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/046ef1cb028cf71ed2a20a758525c73ec090f6e9)) 906 | 907 | 908 | 909 | ## [1.0.6](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.0.5...v1.0.6) (2023-08-23) 910 | 911 | 912 | ### 🎫 Chores | 其他更新 913 | 914 | * update dependencies ([91c70cf](https://github.com/zhensherlock/webrtc-streamer-helper/commit/91c70cfc22bc617b6901504fedbdf8aab8bb98b4)) 915 | 916 | 917 | 918 | ## [1.0.5](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.0.4...v1.0.5) (2023-08-19) 919 | 920 | 921 | ### 🎫 Chores | 其他更新 922 | 923 | * update dependencies ([d9dca0f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d9dca0f566bf29d379beeda0ad43ea0ff4571e87)) 924 | 925 | 926 | 927 | ## [1.0.4](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.0.3...v1.0.4) (2023-08-17) 928 | 929 | 930 | ### 🎫 Chores | 其他更新 931 | 932 | * update dependencies ([5948680](https://github.com/zhensherlock/webrtc-streamer-helper/commit/594868002894741a17a23c266f58c1e6ad0d0a0c)) 933 | 934 | 935 | 936 | ## [1.0.3](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.0.2...v1.0.3) (2023-08-14) 937 | 938 | 939 | ### 🎫 Chores | 其他更新 940 | 941 | * update dependencies ([18446d6](https://github.com/zhensherlock/webrtc-streamer-helper/commit/18446d60b7616f0bfe7c3cf7d1ac4cb276668a5d)) 942 | 943 | 944 | 945 | ## [1.0.2](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.0.1...v1.0.2) (2023-08-11) 946 | 947 | 948 | ### 🎫 Chores | 其他更新 949 | 950 | * update dependencies ([a418be8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a418be8a86c1e498b6425c8cc6e3bb69f61a74a1)) 951 | 952 | 953 | 954 | ## [1.0.1](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v1.0.0...v1.0.1) (2023-08-05) 955 | 956 | 957 | ### 🎫 Chores | 其他更新 958 | 959 | * update dependencies ([05b927a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/05b927abe233b68c1fac2aab2d6eeb9e190ddad8)) 960 | 961 | 962 | 963 | # [1.0.0](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.2.3...v1.0.0) (2023-08-02) 964 | 965 | 966 | ### 🎫 Chores | 其他更新 967 | 968 | * update dependencies ([fe7e8c8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/fe7e8c8d924c0ce3eb524e0748a2a39ff238e1d4)) 969 | 970 | 971 | 972 | ## [0.2.3](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.2.1...v0.2.3) (2023-07-29) 973 | 974 | 975 | ### 🎫 Chores | 其他更新 976 | 977 | * update dependencies ([45c47a1](https://github.com/zhensherlock/webrtc-streamer-helper/commit/45c47a17c631e5f9fb16d472b1a18877580b5e07)) 978 | 979 | 980 | 981 | ## [0.2.1](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.2.0...v0.2.1) (2023-07-24) 982 | 983 | 984 | ### 🎫 Chores | 其他更新 985 | 986 | * update dependencies ([29b837a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/29b837aea187295500a6020954921eb8280cc04c)) 987 | 988 | 989 | ### 👷‍ Build System | 构建 990 | 991 | * add git hooks ([d8fe707](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d8fe707aa6319cd725663b4535cc2741720348eb)) 992 | 993 | 994 | 995 | # [0.2.0](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.1.9...v0.2.0) (2023-07-21) 996 | 997 | 998 | ### 🎫 Chores | 其他更新 999 | 1000 | * update dependencies ([fef3ac1](https://github.com/zhensherlock/webrtc-streamer-helper/commit/fef3ac16eb9fbb7fbf5032239405db1e48604d49)) 1001 | 1002 | 1003 | ### 👷‍ Build System | 构建 1004 | 1005 | * add changelog ([debe3e8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/debe3e841ff54ce62492ce6d8ddc43fa8c85b274)) 1006 | 1007 | 1008 | 1009 | ## [0.1.9](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.1.8...v0.1.9) (2023-07-18) 1010 | 1011 | 1012 | ### 🎫 Chores | 其他更新 1013 | 1014 | * update dependencies ([498e1e3](https://github.com/zhensherlock/webrtc-streamer-helper/commit/498e1e3a8ba56e1a345343f93c5ca72169c8ec2f)) 1015 | 1016 | 1017 | 1018 | ## [0.1.8](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.1.7...v0.1.8) (2023-07-12) 1019 | 1020 | 1021 | ### 🎫 Chores | 其他更新 1022 | 1023 | * update dependencies ([5df317f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5df317f30e0b6d06c64114df26ceff4bd3ab01f5)) 1024 | 1025 | 1026 | 1027 | ## [0.1.7](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.1.6...v0.1.7) (2023-07-09) 1028 | 1029 | 1030 | ### 🎫 Chores | 其他更新 1031 | 1032 | * update dependencies ([0d3ef21](https://github.com/zhensherlock/webrtc-streamer-helper/commit/0d3ef21f8860a734906878be1b5a796bbd20f394)) 1033 | 1034 | 1035 | 1036 | ## [0.1.6](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.1.5...v0.1.6) (2023-07-06) 1037 | 1038 | 1039 | ### 🎫 Chores | 其他更新 1040 | 1041 | * update dependencies ([e313c8b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e313c8b53b3715ddbc14d78530804096bfac6b18)) 1042 | 1043 | 1044 | 1045 | ## [0.1.5](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.1.4...v0.1.5) (2023-07-03) 1046 | 1047 | 1048 | ### 🎫 Chores | 其他更新 1049 | 1050 | * update dependencies ([827bb92](https://github.com/zhensherlock/webrtc-streamer-helper/commit/827bb927089aac6c11f4d30e8b4093784e4b1f66)) 1051 | 1052 | 1053 | 1054 | ## [0.1.4](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.1.3...v0.1.4) (2023-06-30) 1055 | 1056 | 1057 | ### 🎫 Chores | 其他更新 1058 | 1059 | * update dependencies ([90409c4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/90409c41a1f059f98c7ec19bf7955ff865aead2f)) 1060 | 1061 | 1062 | 1063 | ## [0.1.3](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.1.2...v0.1.3) (2023-06-27) 1064 | 1065 | 1066 | ### 🎫 Chores | 其他更新 1067 | 1068 | * update dependencies ([ea6cb6a](https://github.com/zhensherlock/webrtc-streamer-helper/commit/ea6cb6aacd055e046a2f78983ecd196c84f17407)) 1069 | 1070 | 1071 | 1072 | ## [0.1.2](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.1.1...v0.1.2) (2023-06-21) 1073 | 1074 | 1075 | ### 🎫 Chores | 其他更新 1076 | 1077 | * update dependencies ([7ca6dc1](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7ca6dc110b54319b987c8dac74fef789748e14fe)) 1078 | 1079 | 1080 | 1081 | ## [0.1.1](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.1.0...v0.1.1) (2023-06-15) 1082 | 1083 | 1084 | ### 🎫 Chores | 其他更新 1085 | 1086 | * update dependencies ([35e8bca](https://github.com/zhensherlock/webrtc-streamer-helper/commit/35e8bca51d548ac3995feeaefd2bf65939ddda63)) 1087 | 1088 | 1089 | 1090 | # [0.1.0](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.18...v0.1.0) (2023-06-12) 1091 | 1092 | 1093 | ### 🎫 Chores | 其他更新 1094 | 1095 | * update dependencies ([a26540e](https://github.com/zhensherlock/webrtc-streamer-helper/commit/a26540ea433e71468844cd74d61e60704b4ec610)) 1096 | 1097 | 1098 | 1099 | ## [0.0.18](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.17...v0.0.18) (2023-06-09) 1100 | 1101 | 1102 | ### 🎫 Chores | 其他更新 1103 | 1104 | * update dependencies ([641b2ae](https://github.com/zhensherlock/webrtc-streamer-helper/commit/641b2aee8b8cad0e1181bff5ef7541d87765c54f)) 1105 | 1106 | 1107 | 1108 | ## [0.0.17](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.16...v0.0.17) (2023-06-06) 1109 | 1110 | 1111 | ### 🎫 Chores | 其他更新 1112 | 1113 | * update dependencies ([5cf2980](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5cf2980b175931ba18b4ca4090f54adcc1dabb62)) 1114 | 1115 | 1116 | 1117 | ## [0.0.16](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.15...v0.0.16) (2023-06-03) 1118 | 1119 | 1120 | ### 🎫 Chores | 其他更新 1121 | 1122 | * update dependencies ([18d01f4](https://github.com/zhensherlock/webrtc-streamer-helper/commit/18d01f4a453816bbf045d3d2a98d1f659178e2ac)) 1123 | 1124 | 1125 | 1126 | ## [0.0.15](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.14...v0.0.15) (2023-05-31) 1127 | 1128 | 1129 | ### 🎫 Chores | 其他更新 1130 | 1131 | * update dependencies ([be8eb72](https://github.com/zhensherlock/webrtc-streamer-helper/commit/be8eb72fcd15f7c939c5c849585bf31d63a53a20)) 1132 | 1133 | 1134 | 1135 | ## [0.0.14](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.13...v0.0.14) (2023-05-28) 1136 | 1137 | 1138 | ### 🎫 Chores | 其他更新 1139 | 1140 | * update dependencies ([4a29ada](https://github.com/zhensherlock/webrtc-streamer-helper/commit/4a29adaa1cf584c340db35ffc7712260ff7a6608)) 1141 | 1142 | 1143 | 1144 | ## [0.0.13](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.12...v0.0.13) (2023-05-25) 1145 | 1146 | 1147 | ### ✨ Features | 新功能 1148 | 1149 | * add XmppVideoRoomOptions type ([588b842](https://github.com/zhensherlock/webrtc-streamer-helper/commit/588b842c15d4abd952f23119689833785f4b8a0c)) 1150 | 1151 | 1152 | ### 🎫 Chores | 其他更新 1153 | 1154 | * update dependencies ([b95e15c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b95e15c4adfc4fce5e18fdd96db34b62bd45c2e4)) 1155 | 1156 | 1157 | 1158 | ## [0.0.12](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.11...v0.0.12) (2023-05-22) 1159 | 1160 | 1161 | ### 🎫 Chores | 其他更新 1162 | 1163 | * update dependencies ([7a004a0](https://github.com/zhensherlock/webrtc-streamer-helper/commit/7a004a09ac33a6c675e390e0b851c10d7304d6d5)) 1164 | 1165 | 1166 | 1167 | ## [0.0.11](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.10...v0.0.11) (2023-05-19) 1168 | 1169 | 1170 | ### 🎫 Chores | 其他更新 1171 | 1172 | * update dependencies ([cd05e0f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/cd05e0f77ede3b04c7c6463325f495900692cbc7)) 1173 | 1174 | 1175 | 1176 | ## [0.0.10](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.9...v0.0.10) (2023-05-16) 1177 | 1178 | 1179 | ### ✨ Features | 新功能 1180 | 1181 | * optimized typescript ([3a674f6](https://github.com/zhensherlock/webrtc-streamer-helper/commit/3a674f6fe8cbfb8156fdba33a26c15a3b02659c3)) 1182 | 1183 | 1184 | ### 🎫 Chores | 其他更新 1185 | 1186 | * update dependencies ([9408363](https://github.com/zhensherlock/webrtc-streamer-helper/commit/940836317c67f471fd291c05f89c99f541a9a3a1)) 1187 | 1188 | 1189 | 1190 | ## [0.0.9](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.8...v0.0.9) (2023-05-13) 1191 | 1192 | 1193 | ### 🎫 Chores | 其他更新 1194 | 1195 | * update dependencies ([f02688f](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f02688f2515682ba5ab3e9397c89da00413440c5)) 1196 | 1197 | 1198 | 1199 | ## [0.0.8](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.7...v0.0.8) (2023-05-10) 1200 | 1201 | 1202 | ### 🎫 Chores | 其他更新 1203 | 1204 | * update dependencies ([046b834](https://github.com/zhensherlock/webrtc-streamer-helper/commit/046b8347226511d22513b7b0bc52e425158c380a)) 1205 | 1206 | 1207 | 1208 | ## [0.0.7](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.6...v0.0.7) (2023-05-07) 1209 | 1210 | 1211 | ### ✨ Features | 新功能 1212 | 1213 | * better webpack support ([427152d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/427152d4a0e49d608fcb7b047ecbc178702cc663)) 1214 | * optimized typescript ([e548acf](https://github.com/zhensherlock/webrtc-streamer-helper/commit/e548acf0cee21d200794b45fb7e958d890c32339)) 1215 | 1216 | 1217 | ### 🎫 Chores | 其他更新 1218 | 1219 | * update dependencies ([79b9dd7](https://github.com/zhensherlock/webrtc-streamer-helper/commit/79b9dd7d47e613e9875c7935cf4dc286a4ea94d6)) 1220 | 1221 | 1222 | 1223 | ## [0.0.6](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.5...v0.0.6) (2023-05-04) 1224 | 1225 | 1226 | ### ♻ Code Refactoring | 代码重构 1227 | 1228 | * update variable name ([b4c60b1](https://github.com/zhensherlock/webrtc-streamer-helper/commit/b4c60b1372e54cafdc492deefb3e02aa4267360f)) 1229 | 1230 | 1231 | ### ✨ Features | 新功能 1232 | 1233 | * add JanusVideoRoom class ([6da4e7d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/6da4e7d8287c7d214b1bc9f9701019c8d5c0e835)) 1234 | 1235 | 1236 | ### 🎫 Chores | 其他更新 1237 | 1238 | * update dependencies ([bcc967c](https://github.com/zhensherlock/webrtc-streamer-helper/commit/bcc967cf73c6399c3bb5bc3fce09ecfd4dc6afc0)) 1239 | 1240 | 1241 | ### 🐛 Bug Fixes | Bug 修复 1242 | 1243 | * eslint error ([d0da1db](https://github.com/zhensherlock/webrtc-streamer-helper/commit/d0da1db4b6eb463e9df1562397b983d96645b8a1)) 1244 | 1245 | 1246 | 1247 | ## [0.0.5](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.4...v0.0.5) (2023-05-01) 1248 | 1249 | 1250 | ### ♻ Code Refactoring | 代码重构 1251 | 1252 | * update variable name ([6a944ce](https://github.com/zhensherlock/webrtc-streamer-helper/commit/6a944ce5ea95910418027eb16fdd1230bbe89f88)) 1253 | * update variable name ([5db7226](https://github.com/zhensherlock/webrtc-streamer-helper/commit/5db72268caf694f0a60c5295f8793bfc103cb310)) 1254 | 1255 | 1256 | ### 🎫 Chores | 其他更新 1257 | 1258 | * update dependencies ([17fb8ec](https://github.com/zhensherlock/webrtc-streamer-helper/commit/17fb8ec45bdbd13e7c0d2681fcd0599b14d4c7bc)) 1259 | 1260 | 1261 | 1262 | ## [0.0.4](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.3...v0.0.4) (2023-04-28) 1263 | 1264 | 1265 | ### ✨ Features | 新功能 1266 | 1267 | * add htmlMapMarker ([1d18990](https://github.com/zhensherlock/webrtc-streamer-helper/commit/1d18990a3f69f3eeebd25fa76608989f6544e524)) 1268 | 1269 | 1270 | 1271 | ## [0.0.3](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.2...v0.0.3) (2023-04-27) 1272 | 1273 | 1274 | ### ✨ Features | 新功能 1275 | 1276 | * update global style ([f843379](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f8433793b7e13034472c179d6d888277644068d6)) 1277 | 1278 | 1279 | ### 🐛 Bug Fixes | Bug 修复 1280 | 1281 | * video element srcObject is null ([66efc81](https://github.com/zhensherlock/webrtc-streamer-helper/commit/66efc81b03f8f8db7eb8fc4adf5c38a75c3b5923)) 1282 | 1283 | 1284 | 1285 | ## [0.0.2](https://github.com/zhensherlock/webrtc-streamer-helper/compare/v0.0.1...v0.0.2) (2023-04-27) 1286 | 1287 | 1288 | ### ✨ Features | 新功能 1289 | 1290 | * support typescript ([66bb37d](https://github.com/zhensherlock/webrtc-streamer-helper/commit/66bb37dba97052d0207a24a48eb36936d32dc447)) 1291 | * update version number ([0690ff6](https://github.com/zhensherlock/webrtc-streamer-helper/commit/0690ff6f8bffa6c7d21f0dd077cea748ed8b8c48)) 1292 | 1293 | 1294 | 1295 | ## [0.0.1](https://github.com/zhensherlock/webrtc-streamer-helper/compare/fed5df6142ce14aeefed05fdcbe71574b8ebe396...v0.0.1) (2023-04-27) 1296 | 1297 | 1298 | ### ✨ Features | 新功能 1299 | 1300 | * add rollup plugins ([f45a75b](https://github.com/zhensherlock/webrtc-streamer-helper/commit/f45a75b5abbc52d5f71ec8ce5cb4a99bb512e2e2)) 1301 | * add webRTCStreamer ([74bf8a8](https://github.com/zhensherlock/webrtc-streamer-helper/commit/74bf8a8773523dd96878cfb9e8c1eeb73bc9263e)) 1302 | * initialization rollup ([fed5df6](https://github.com/zhensherlock/webrtc-streamer-helper/commit/fed5df6142ce14aeefed05fdcbe71574b8ebe396)) 1303 | * support typescript ([71ad915](https://github.com/zhensherlock/webrtc-streamer-helper/commit/71ad915b13941adc988aa0bcdcb821cc6f9e20cb)) 1304 | 1305 | 1306 | 1307 | --------------------------------------------------------------------------------