├── 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 |
3 |
4 |
5 |
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 |
--------------------------------------------------------------------------------