agora-appbuilder-core 4.0.5 → 4.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/template/agora-rn-uikit/src/Contexts/PropsContext.tsx +2 -1
- package/template/agora-rn-uikit/src/Controls/Icons.ts +4 -4
- package/template/agora-rn-uikit/src/index.ts +1 -0
- package/template/customization-api/sub-components.ts +3 -2
- package/template/customization-api/types.ts +2 -1
- package/template/src/components/Controls.tsx +2 -4
- package/template/src/components/EventsConfigure.tsx +2 -2
- package/template/src/components/livestream/LiveStreamContext.tsx +2 -2
- package/template/src/components/participants/UserActionMenuOptions.tsx +2 -2
- package/template/src/components/popups/StartScreenSharePopup.native.tsx +2 -2
- package/template/src/components/popups/StopScreenSharePopup.native.tsx +2 -2
- package/template/src/pages/video-call/VideoRenderer.tsx +1 -1
- package/template/src/subComponents/LocalEndCall.tsx +2 -2
- package/template/src/subComponents/ScreenShareNotice.tsx +2 -2
- package/template/src/subComponents/screenshare/ScreenshareButton.tsx +3 -3
- package/template/src/subComponents/screenshare/ScreenshareConfigure.native.tsx +4 -4
- package/template/src/subComponents/screenshare/ScreenshareConfigure.tsx +4 -4
- package/template/src/subComponents/screenshare/useScreenshare.tsx +4 -4
package/package.json
CHANGED
|
@@ -88,7 +88,8 @@ export interface DefaultContentInterface {
|
|
|
88
88
|
export interface CustomContentInterface<T> {
|
|
89
89
|
type: T extends DefaultContentInterface['type'] ? never : T;
|
|
90
90
|
}
|
|
91
|
-
interface ExtenedContentInterface
|
|
91
|
+
export interface ExtenedContentInterface
|
|
92
|
+
extends CustomContentInterface<string> {
|
|
92
93
|
[key: string]: any;
|
|
93
94
|
}
|
|
94
95
|
export type ContentInterface =
|
|
@@ -72,13 +72,13 @@ const icons: IconsInterface = {
|
|
|
72
72
|
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAADUSURBVHgB5VPtDYIwEL0S/ssIHYERGEE3qBPoBuIGMgFsAk6iI7hBfadHUpsirZFfvOSlxx333RKtDmoUrLUax4nS8QDPSik+KXMMBqwoHUb4Qu4Z78i0pwRIZ8X4ndGfkVM4q8GhHdWFZwT90amGu+l836kKW0c+gCWCVfS5tJa+AQ412ItsA/YKvAX0PfvOVfgz8ikDso4tbcEdve9b4egNZqhiA/LV0SI38BsQiJfReP/EVRjanryEmmaw6Ay5gtKZUSw0eA0F7MS4oTQM4rtWPAFxAE4MEjNhpQAAAABJRU5ErkJggg==',
|
|
73
73
|
done: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABDSURBVHgB1c3BDQAgCAPAjuIIbKQjuJmjOIKjICS+TBPCkyZ99QhAvahqs64M3lZhoxB8KH7Ax/7hgeC9oxlidoQ6ue+PS8aRUCPDAAAAAElFTkSuQmCC',
|
|
74
74
|
chat_attachment_pdf:
|
|
75
|
-
'data:image/png;base64,
|
|
75
|
+
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAEnklEQVR4Ae2dS2wTRxjH/+O4EXU5tBLlIVLEtoc+pFaBnlooQqJBbS8k6qUSlQhVUa9Vc6h6KlUPVQ8IOHNIDnCOufEUj/C6EFCQIByIw0sICaEIhYCQ8bBfFstrYyf2zuzO7Oz3kyztOrOR9/vN4xt7dhdgGIZhGIZhGCZrCGigVHqwFnk5DMhef/ddWERpaiq8e1UKuX/Lpk0jsIQcFAmCX7niB38zLAt+E3qFFMOnxsb+hiUoC/CDvxf2B74OWcFuWySoCwD6kUJskaBDQGqxQUKmBRCmJWReAGFSAgt4jSkJLCCECQksoIGkJbCAJiQpgQW0ICkJLGABkpDAAhYhbgksoA3ilMAC2iQuCSygA+KQwAI6RLcEFhABnRJYQERIwsmzZwehiPMCcrn4TlFA7IAizgvo7u5GbEhshiLOC3h/+fJYW4EqzgvI5/NY3dODQqEAG8kjA5CEFStXwkY4CzIMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzAMCzBMpHtFyMHv1kJiGFL0+nupuko+TPm9ZZhd9zVmtmxDVLwPVivdb6Pjg+eDXxFX0hz4RmbXb8CjH39BFFQFdN4FSbHXpeATS8fPY0npJkwQQYBM5b0hFqNwfRwm4EH4Nbnnz2CC+BZmFd4BtjZpLHNPgTtTwORE/fvLVgAbv32zfLUsHdfIJ1/4r8/RkkcPgXMnYDMxClgKDPzc+u8UnP3/+gG+FeyTgIXKFw8Co4fq36PgL3QMibNcQHJdEAWcXlUo4H/9H7SURqi2h8sS/X6gd/0B10hmbSgFc2gw2KaA/zoEfPlVsL2xDzhWrC9PreK/P4Nt6sa2/xZsU9mxE292X8SBPdbX9mYkPwhT7R6/WNtv1gLCkJzRg7X9ge1wCTNZ0GJBbyRcs9d8BJdIbnk6ZSzEp/7AuXWg9v74pcWPDY8HreTtGgpeYXZ8D9tJRkB1wG2keKiWBWUUMxdo0CA6drz9QXPNh7XtZvMBgsaV2+mTmVwWVM1qGtPLdvimr7Z9Y6J5mcsXUpkFJdcCogS+mqaGZ9TnjsMl7LxGjAbsPSPBbDo86FJKGk5hHcDei/Ro4K5C/f7RYvB1hGPEJ2ButjaBajVwhqEuarRJgBf6Mm7yWu2YOyWkkRgFPA3SzHYhAZ2UJ0jM5ATSTISZsJiBg1SWvA0TdC5AyKtwkOfexzBBBAHY6VoreLKhD3OfrYcJOhYgRo5MIyfXQYgiUg4tS6ElKY9/+AmmUH6GTOnufYkMk/yylEaEmEZ2Ue6K1QVITCOzCOWERMMPMvIMsorAYSiiLqD8Yh+ySpd6IqIswPM8vx8Up5ExcgIj3qpV01BEz2/CZeHPDeDkDLkFM5Wu3D/QgBYBnufXBCG1fKBU4J+rjtpPaFsV4fX0+GNBxXkJFf8cg3PVg5aHeYYp3bv3O6Sg2/o6tYQd1MVSzdcYfEK7AIIe8Cm7Xu4WQv3OsnbgJxl5sVNXt1P3nxEj809afUv2+5O1bTY+6rYlNLufn2C+PINyeV+Q6TEMwzAMwzAMw+jhFRM1de8F+M56AAAAAElFTkSuQmCC',
|
|
76
76
|
chat_attachment_doc:
|
|
77
|
-
'data:image/png;base64,
|
|
77
|
+
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAFR0lEQVR4Ae2dTWwbRRTH/+OYUEUUIiSK26ZRjATi4EotXCJVCpa4IERpjsAB0lNz4ICEBBIg1RxAwIUgcSinRFzokYKEckG4LUW9oEaCA+JQG1pUjumHqjaNPd2X9ciTzdrb9ezuzNrvd2n98Zr4/d68+ai9BhiGYRiGYRiGGTUEEqDRuDaDolwG5CHv5iQconH5sn5zTQr51YtzcytwhAIM8ZPfvuQlvwrHkh/CISHF8i/nz5+EIxgL8JL/JdxP/DZkGzVXJJgLAOaRQ1yRkISA3OKChJEWQNiWMPICCJsSWEAHWxJYgIYNCSwgQNYSWEAIWUpgAT3ISgIL6EMWElhABGlLYAEPQJoSWMADkpYEFhCDNCSwgJgkLYEFDECSEljAgJCEn8+dW4AhQy+gUEjvJQqIt2DI0AsYHx9HakhUYcjQC3hiz55UR4EpQy+gWCxi/9QUJiYm4CJFjAAk4clSCS7CqyDLsADLsADLsADLsADLsADLsADLsADLsADLsADLsADLsADLsADLsADLsADLsADLsADLsADLsADLDHStiFJNztyTWJaAc9eGiMO+R1p45ZnbOPHcTQxK+cB+o+ttxA6m5G9IXEKOEx/kqCehNreOQTAVELsFeZWfu2tDRPHj3xP4/VqKb+DqQ2wBMqfXhoii/s8u2IAn4Q4379pJRSpvzHrdm5oPBJrUjTvAr03gz//7x05P+vGVEvCYV5TXvbif/gK+W4sX96/X0r+o+3+6TGoCjsyEP0YJObYSnpjFWeCTl3be//KzwHvV3nHvV/3HdY50fo9TF4EPV+EsqY87ShhVsYIqtb7oV6pOMPnXOyNGjzuz4Fe3TjD59PP0ONdJXcDb3wNPfQYcXuq2H0rip1qy6faJ2e7tz+t+DFU8xamqJwn68+i2nvwPVv3nqzhqWy5XP5HZzENJfHWlOxqoRR0sdf8+Pdl9HvVuPY4kKhY1AXryKdnfXOwd5yqZTv1qQlVUNAGKsMn2QrMrjkaLkqW3sahJ2lUyX3vpk6haKel9/UqPVYs+j6jnH9QERK2uXIX3AZbJXEBY1erVXenxOQp9lKhRpI+mipufv4gkUwHUu/V+r9qNPi+E7R9oPa8E6Mtamhv6xeWBzARQhX77WjeRtFb/ozMCaCSopNIIobW9IrjU1Fc6+sRLMYuBJSrtG1wfGbGPUh8/KWXUc35Y6FYkJZaOIfSjCbqvemp7CwluxOgxFadXP8XpLevreX+E9IoLiwnj6NPekfQL8c8tTI+jU/+QHiVB799U+R+t7jxSoCODR3d1q386cJZEo+XN0zsTSWt9uk9VfzCO2ltU8m2SigBqDcHjAKpKSuKFZu842oCdXvN3u6p1kKjfmv3X+bTbpUTTmZGKo7ZG9/X7eS6QmoBBoYQPcnxAiXY92WEMMgnHb5Q5YPfDbdggtgAhkNNNf3+eL23ABrEFtIDjGLJR8EblFqozdmbq2ALWa6LZFjgsBXJw1tiffbtbW29JeXf2Bmxh/B0yjSv/Re4LhpnM35ayAyGaGF2MW7G5AIkmRhZhvCBJ4CxInsWoInAGhpgL2NxYwqgyJowXIsYCyuWy1wdFHSNGQWClvHdvE4Ykcxy9KYZubxDBenus8DESIBEB5bJXCUIm8gvlAu+1JlH9RGL/IVOemvLmgvbQS2h7r9F/rcmQyJd56jSuXn0HUtBlfScxXKxvVX6CyScSF0DQF3zKsVZNCPMry7qBt8goiuNJtZ1t/zJSZOubVh+S895m7ZiLX3XbE9rdb20wW2exubnkr/QYhmEYhmEYhmGS4T4UntJm2xhgXwAAAABJRU5ErkJggg==',
|
|
78
78
|
chat_attachment_image:
|
|
79
|
-
'data:image/png;base64,
|
|
79
|
+
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAFM0lEQVR4Ae2d22scVRzHv2d2djfZXBqLuaxJwLVoES1WHwQtlogPoiCWQnzxQUsFrw9SRPBBjX9AbX0QER/aBy2lguBLoRDRNkgebbWh9dJsIAkpMSbbbdbNbmZ3nDNxyybNbmd35sw5M/v7QCA7ZzjsfD/nnLmc2RmAIAiCIAiCIIhWg8ED0umFe6GbJwBzr/WxBwqRnp6u/njRZOZnz+zffxKKoMElG+GXf7HCH4Fi4W/DXmayEz9OTHwMRXAtwAr/GNQPfhNmGWOqSHAvADiAAKKKBC8EBBYVJLS0AI5sCS0vgCNTAgn4H1kSSEAVMiSQgC34LYEEbIOfEkhADfySQALq4IcEEnAHREsgAQ4QKYEEOESUBBLQACIkkIAG8VoCCWgCLyWQgCbhEn64cOFVuCT0AjRN3CYysFfgktALiMViEIaJEbgk9AJ6+/qE9gK3hF6ArusYHBpCIpGAiuhoAbiE/oEBqAgdBUmGBEiGBEiGBEiGBEiGBEiGBEiGBEiGBEiGBEiGBEjGl2tB2VIE4zfvwpKho1BW3/l98TU81XkD3ZESRCM8DR7+6ZVezBdjgQifM11ow+nlXvu7i0Z4IhOrOwITfDUFU8N4VvxP34Qnw1tTUFkyohAN7YTrwHuBaEiAZEiAZEiAZEI5J9zDruNg/CiS7C+0sRyulPbhbPF1ZEz15oVD1wN4+G+3vYmUdskOn/Ng5Gdr2Vt2mWqETsDzsS9vBV9NG1vFwdhRqIZSQ1A+O4n8jUn7/3jHQ2jvfgKa3t1IFXZrr0VSuwbVUEJA7p9zWJoZw3phdtPyaHwYXX2j2Dl8xHFda2an3dq3o9ZymUgfgpZnP8XC74dvC5/Dl/Fy/ueUhfKummVXjH1QDakCnIbL11n801kv+K74nt0LtsKXnV1/A6ohTcBSeqyhlp39+4wjCRmzH5+vfWEdej5pf+bBp8uP2Mt4mWr4vg8oG1l7vM8unkGjcAmcvvvri+NBnyqMIQj4KoCHP395FIV/p9AsTiUEBd+GIKMwh9lLz7oKvwKXsHD1sC006PgigIfPW/52RzrNkls+Z9fZrISIMY1YfhzRwiS00iJkIXwIKuSmcP3qa56Gf6tuqzdxCYMPf+v4hE0v/oq21a+gGZueJ4pSbA/yXUdQjvTBT4T3gPmpUSHhV6hIcNIT4rlvkMh8cFv4nEjxN3Qsv4Oo1Sv8RLgAP8bpigRjba7mOjz8eO5U3XqYmUP7zWO+SgjNxThbwtT2EpyEX42fEkJ1NZQPdVslNBp+Bb8khO5ydLWEZsOvwCWIJpQzYraEy89h9z3WDJgu8IfaHhDaOeH14gr+mLuGolGEyoR6Up6Hr7qE0N8VobqElrgtRWUJLXNfUEVCvpCHSggX0B7tgirYEubVkuBeAGMz9YoHdzwAlSiVS44lDHc/eqdVMnCJewEmZuoVv/zYR0r1Ao4TCbFIAo8PvFS/IrCLcIkHQ5B5vl7pzkQS7z/9NfYkR6AStSTw4Ps7duOFXR+iM3Z3/UoYvodLXL9HLJ1O91hnmytoRXQtlUomZ+AC1z0glUpZ4yD7CS2GxnDSbfh2PfACgx2CBzukAJEpR7RP4AGeCLD64Yw1m+HJFwoE1rZ60fo5np0HpIaGjlvzX6GXULa2cWNbvcGTl3lWk56bexcm44/1DdTrDR2QsVu+h+FzPBfA4S/4NCOlMcbcP1lWDayDDJ0d8mrY2VQzBGK/aTVqHrBO1l5U8VW3NeFn9/YJZuk8DOP4xpEeQRAEQRAEQRCEN/wHfTpF+u7LGxoAAAAASUVORK5CYII=',
|
|
80
80
|
chat_attachment_unknown:
|
|
81
|
-
'data:image/png;base64,
|
|
81
|
+
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAADEElEQVR4Ae3dbU4TQRzH8d+0a5uQSDDKU1qU9QR4AULiAYSXvlJu4A3EE4gngHe+RA9gFDgAnIA2seILNTb4qk3bcbatSTFA2c5s/7O7v88r+oZ059tuZx8yCxARERERUd4oOFCrfV9FoPcAvWZezsEjtbOz0ZenWul3T9fX9+GJAiwNBr93YgZ/A54N/hXWlFZ7n4+PX8MT1gHM4L+F/wN/ie5hx5cI9gGATaSQLxFcBEgtHyLkOkBEOkLuA0QkIzDAkFQEBhghEYEB/jPtCAxwhWlGYIBrTCsCA9xgGhEYYIykIzDALSQZgQFuKakIDBBDEhEYICbXERhgAi4jMMCEogifjo5ewlLmAxQKyW2ignoBS5kPUCqVkBiNDVjKfID5hYVEvwW2Mh8gCAJUqlXMzMzARwFyIIqwuLQEH3EWJIwBhDGAMAYQxgDCGEAYAwhjAGEMIIwBhDGAMAYQxgDCGEAYAwhjAGEMIIwBhDGAsInWinh/cLCqdHHP/Ond2hBxlMslzN9/gEplGZMKVypW623Evig/HPwTpHjg/2m12micn6PVbuFxuAoJsXdBBQSpWxtinB8/f+Hi4g8kxA6gtU7l2hDj/G42IYE/wkOdThcSGEAYAwhjAGEMIIwBhDGAMAYQxgDCGEAYAwhjAGEMIIwBhDGAMAYQNkkAmSsXCQuCIiRMEuAUGTQ7excS4l+SVN1tZOxbsLS4gHtzMpe5Ywd4vrVVNxGeKIUPSLlyudy/JeXRwxVIsX6GTO3rN40cs70vyH4WpFQd+WW9K7YPoFFHbinrCYmD4wB9iLxS+AhL9gE67V3kVVFZT0SsA4RhaPaD6gtypqCwHy4v12HJzamIjsrcscEYzV6x8AYOOAkQhuaToLSTN5QKZltdfPojzk7GhdWq+S3oZT5Cz2zjYFvdcPIwz1G1RuOVOV8RLeubqVvYEe1io0++w8GPOA8QiR7wqYvdHaXsV5b1g5lkBGrb1W7n0n9GgvpPWr2jN83B2jMfH3V7rejovn+A2T1Ep7M7mOkRERERERG58RfsH+jT00AlhAAAAABJRU5ErkJggg==',
|
|
82
82
|
chat_emoji_fill:
|
|
83
83
|
'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzUwNTFfNTQ5MjApIj4KPG1hc2sgaWQ9Im1hc2swXzUwNTFfNTQ5MjAiIHN0eWxlPSJtYXNrLXR5cGU6YWxwaGEiIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiIHg9IjAiIHk9IjAiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+CjxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iI0Q5RDlEOSIvPgo8L21hc2s+CjxnIG1hc2s9InVybCgjbWFzazBfNTA1MV81NDkyMCkiPgo8cGF0aCBkPSJNMjEgMTJDMjEgMTYuOTcwNiAxNi45NzA2IDIxIDEyIDIxQzcuMDI5NDQgMjEgMyAxNi45NzA2IDMgMTJDMyA3LjAyOTQ0IDcuMDI5NDQgMyAxMiAzQzE2Ljk3MDYgMyAyMSA3LjAyOTQ0IDIxIDEyWiIgZmlsbD0iI0ZGQUIwMCIvPgo8cGF0aCBkPSJNOS41NDUwMyAyMS4xNjg1QzguMjc3IDIwLjgyODggNy4xNDk1OSAyMC4yNjg4IDYuMTYyOCAxOS40ODg2QzUuMTc1OTkgMTguNzA4MyA0LjM4MDQ0IDE3Ljc5NTIgMy43NzYxNSAxNi43NDkxQzMuMTcxODUgMTUuNzAyOSAyLjc3ODM5IDE0LjU1NzcgMi41OTU3NyAxMy4zMTM1QzIuNDEzMTQgMTIuMDY5MiAyLjQ5MTcxIDEwLjgxMzEgMi44MzE0OCA5LjU0NTAzQzMuMTcxMjUgOC4yNzcgMy43MzEyNCA3LjE0OTU5IDQuNTExNDQgNi4xNjI4QzUuMjkxNjYgNS4xNzU5OSA2LjIwNDgyIDQuMzgwNDQgNy4yNTA5NCAzLjc3NjE1QzguMjk3MDggMy4xNzE4NSA5LjQ0MjI4IDIuNzc4MzkgMTAuNjg2NSAyLjU5NTc3QzExLjkzMDggMi40MTMxNCAxMy4xODY5IDIuNDkxNzEgMTQuNDU1IDIuODMxNDhDMTUuNzIzIDMuMTcxMjUgMTYuODUwNCAzLjczMTI0IDE3LjgzNzIgNC41MTE0NEMxOC44MjQgNS4yOTE2NiAxOS42MTk2IDYuMjA0ODIgMjAuMjIzOCA3LjI1MDk0QzIwLjgyODEgOC4yOTcwOCAyMS4yMjE2IDkuNDQyMjggMjEuNDA0MiAxMC42ODY1QzIxLjU4NjkgMTEuOTMwOCAyMS41MDgzIDEzLjE4NjkgMjEuMTY4NSAxNC40NTVDMjAuODI4OCAxNS43MjMgMjAuMjY4OCAxNi44NTA0IDE5LjQ4ODYgMTcuODM3MkMxOC43MDgzIDE4LjgyNCAxNy43OTUyIDE5LjYxOTYgMTYuNzQ5MSAyMC4yMjM4QzE1LjcwMjkgMjAuODI4MSAxNC41NTc3IDIxLjIyMTYgMTMuMzEzNSAyMS40MDQyQzEyLjA2OTIgMjEuNTg2OSAxMC44MTMxIDIxLjUwODMgOS41NDUwMyAyMS4xNjg1Wk05LjkzMTI5IDE5LjcyMDVDMTIuMDg2NiAyMC4yOTggMTQuMTEyNiAyMC4wMzkzIDE2LjAwOTMgMTguOTQ0MkMxNy45MDU5IDE3Ljg0OTIgMTkuMTQzIDE2LjIyNCAxOS43MjA1IDE0LjA2ODdDMjAuMjk4IDExLjkxMzQgMjAuMDM5MyA5Ljg4NzQxIDE4Ljk0NDIgNy45OTA3NUMxNy44NDkyIDYuMDk0MDkgMTYuMjI0IDQuODU3IDE0LjA2ODcgNC4yNzk0OUMxMS45MTM0IDMuNzAxOTcgOS44ODc0MSAzLjk2MDczIDcuOTkwNzUgNS4wNTU3N0M2LjA5NDA5IDYuMTUwODEgNC44NTcgNy43NzU5OCA0LjI3OTQ5IDkuOTMxMjlDMy43MDE5NyAxMi4wODY2IDMuOTYwNzMgMTQuMTEyNiA1LjA1NTc3IDE2LjAwOTNDNi4xNTA4MSAxNy45MDU5IDcuNzc1OTggMTkuMTQzIDkuOTMxMjkgMTkuNzIwNVpNMTAuNjU3MyAxNy4wMTA5QzExLjUyMzUgMTcuMjQzIDEyLjM3NzUgMTcuMjUyIDEzLjIxOTEgMTcuMDM3OUMxNC4wNjA4IDE2LjgyMzkgMTQuODA0MiAxNi40MjY2IDE1LjQ0OTMgMTUuODQ2M0MxNS41ODc3IDE1LjY5NTEgMTUuNjMyMSAxNS41MTc3IDE1LjU4MjYgMTUuMzE0MUMxNS41MzMgMTUuMTEwNSAxNS40MDQ5IDE0Ljk4MSAxNS4xOTgzIDE0LjkyNTdMNy43NjczNSAxMi45MzQ2QzcuNTYwNzMgMTIuODc5MiA3LjM4NTA3IDEyLjkyNzMgNy4yNDAzNiAxMy4wNzg4QzcuMDk1NjcgMTMuMjMwMyA3LjA0NTQ1IDEzLjQwNjIgNy4wODk3MiAxMy42MDYzQzcuMzU4MTggMTQuNDMxNSA3LjgwNzA4IDE1LjE0ODIgOC40MzY0MiAxNS43NTY0QzkuMDY1NzggMTYuMzY0NiA5LjgwNjA5IDE2Ljc4MjggMTAuNjU3MyAxNy4wMTA5WiIgZmlsbD0iIzExMTExMSIvPgo8cGF0aCBkPSJNMTAuNzQ2MiAxMC4yNTY2QzEwLjQzNTcgMTAuNTY5NiAxMC4wNTU2IDEwLjcyNjEgOS42MDU5OCAxMC43MjYxQzkuMTU2MzQgMTAuNzI2MSA4Ljc3NjI3IDEwLjU3MDggOC40NjU3NSAxMC4yNjAzQzguMTU1MjUgOS45NDk4MiA4IDkuNTY3NCA4IDkuMTEzMDVDOCA4LjY1ODcgOC4xNTUyNSA4LjI3NjI3IDguNDY1NzUgNy45NjU3N0M4Ljc3NjI3IDcuNjU1MjYgOS4xNTg3IDcuNSA5LjYxMzA1IDcuNUMxMC4wNTcyIDcuNSAxMC40MzQ3IDcuNjU3NjEgMTAuNzQ1NiA3Ljk3MjgyQzExLjA1NjUgOC4yODgwNCAxMS4yMTIgOC42NjkyMiAxMS4yMTIgOS4xMTYzN0MxMS4yMTIgOS41NjM1MiAxMS4wNTY3IDkuOTQzNiAxMC43NDYyIDEwLjI1NjZaIiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNMTYuNzQ2MiAxMS43NTY2QzE2LjQzNTcgMTIuMDY5NiAxNi4wNTU2IDEyLjIyNjEgMTUuNjA2IDEyLjIyNjFDMTUuMTU2MyAxMi4yMjYxIDE0Ljc3NjMgMTIuMDcwOCAxNC40NjU4IDExLjc2MDNDMTQuMTU1MyAxMS40NDk4IDE0IDExLjA2NzQgMTQgMTAuNjEzQzE0IDEwLjE1ODcgMTQuMTU1MyA5Ljc3NjI3IDE0LjQ2NTggOS40NjU3N0MxNC43NzYzIDkuMTU1MjYgMTUuMTU4NyA5IDE1LjYxMyA5QzE2LjA1NzIgOSAxNi40MzQ3IDkuMTU3NjEgMTYuNzQ1NiA5LjQ3MjgyQzE3LjA1NjUgOS43ODgwNCAxNy4yMTIgMTAuMTY5MiAxNy4yMTIgMTAuNjE2NEMxNy4yMTIgMTEuMDYzNSAxNy4wNTY3IDExLjQ0MzYgMTYuNzQ2MiAxMS43NTY2WiIgZmlsbD0iYmxhY2siLz4KPC9nPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzUwNTFfNTQ5MjAiPgo8cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==',
|
|
84
84
|
chat_emoji:
|
|
@@ -56,6 +56,7 @@ export type {
|
|
|
56
56
|
ActionInterface,
|
|
57
57
|
ActionType,
|
|
58
58
|
} from './Contexts/RtcContext';
|
|
59
|
+
export type {ExtenedContentInterface} from './Contexts/PropsContext';
|
|
59
60
|
export type {DispatchType} from './Contexts/DispatchContext';
|
|
60
61
|
|
|
61
62
|
export {default as BtnTemplate} from './Controls/BtnTemplate';
|
|
@@ -28,6 +28,7 @@ export {default as GridLayout} from '../src/components/GridVideo';
|
|
|
28
28
|
export {default as PinnedLayout} from '../src/components/PinnedVideo';
|
|
29
29
|
export {default as VideoComponent} from '../src/pages/video-call/VideoComponent';
|
|
30
30
|
export {default as MaxVideoView} from '../src/pages/video-call/VideoRenderer';
|
|
31
|
+
export type {VideoRendererProps as MaxVideoViewProps} from '../src/pages/video-call/VideoRenderer';
|
|
31
32
|
export {default as NameWithMicIcon} from '../src/pages/video-call/NameWithMicIcon';
|
|
32
33
|
export {default as NetworkQualityPill} from '../src/subComponents/NetworkQualityPill';
|
|
33
34
|
//videocall screen
|
|
@@ -49,8 +50,8 @@ export {WhiteboardListener} from '../src/components/Controls';
|
|
|
49
50
|
//export {SidePanelButtonsArray} from '../src/subComponents/SidePanelButtons';
|
|
50
51
|
export {
|
|
51
52
|
MaxVideoView as UiKitMaxVideoView,
|
|
52
|
-
|
|
53
|
-
|
|
53
|
+
ClientRoleType as UikitClientRole,
|
|
54
|
+
ChannelProfileType as UikitChannelProfile,
|
|
54
55
|
PropsContext as UikitPropsContext,
|
|
55
56
|
} from '../agora-rn-uikit';
|
|
56
57
|
export {default as Toolbar} from '../src/atoms/Toolbar';
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
//audio/video toggle state
|
|
2
2
|
export {
|
|
3
3
|
ToggleState,
|
|
4
|
-
|
|
4
|
+
ClientRoleType,
|
|
5
5
|
} from '../agora-rn-uikit/src/Contexts/PropsContext';
|
|
6
6
|
export type {
|
|
7
7
|
ContentInterface,
|
|
8
8
|
ContentStateInterface,
|
|
9
|
+
ExtenedContentInterface,
|
|
9
10
|
UidType,
|
|
10
11
|
} from '../agora-rn-uikit';
|
|
11
12
|
export {
|
|
@@ -300,7 +300,7 @@ const MoreButton = () => {
|
|
|
300
300
|
} = useRoomInfo();
|
|
301
301
|
const {setShowInvitePopup, setShowStopRecordingPopup, setShowLayoutOption} =
|
|
302
302
|
useVideoCall();
|
|
303
|
-
const {isScreenshareActive,
|
|
303
|
+
const {isScreenshareActive, startScreenshare, stopScreenshare} =
|
|
304
304
|
useScreenshare();
|
|
305
305
|
const {isRecordingActive, startRecording, inProgress} = useRecording();
|
|
306
306
|
const {setChatType} = useChatUIControls();
|
|
@@ -571,9 +571,7 @@ const MoreButton = () => {
|
|
|
571
571
|
title: screenShareButton(isScreenshareActive),
|
|
572
572
|
callback: () => {
|
|
573
573
|
setActionMenuVisible(false);
|
|
574
|
-
isScreenshareActive
|
|
575
|
-
? stopUserScreenShare()
|
|
576
|
-
: startUserScreenshare();
|
|
574
|
+
isScreenshareActive ? stopScreenshare() : startScreenshare();
|
|
577
575
|
},
|
|
578
576
|
});
|
|
579
577
|
}
|
|
@@ -222,7 +222,7 @@ const EventsConfigure: React.FC<Props> = props => {
|
|
|
222
222
|
}, [waitingRoomApprovalRequiredSecondaryBtnTextTT]);
|
|
223
223
|
|
|
224
224
|
//@ts-ignore
|
|
225
|
-
const {isScreenshareActive, ScreenshareStoppedCallback,
|
|
225
|
+
const {isScreenshareActive, ScreenshareStoppedCallback, stopScreenshare} =
|
|
226
226
|
useScreenshare();
|
|
227
227
|
const isLiveStream = $config.EVENT_MODE;
|
|
228
228
|
const {dispatch} = useContext(DispatchContext);
|
|
@@ -293,7 +293,7 @@ const EventsConfigure: React.FC<Props> = props => {
|
|
|
293
293
|
isScreenshareActiveRef.current.isScreenshareActive
|
|
294
294
|
) {
|
|
295
295
|
//@ts-ignore
|
|
296
|
-
|
|
296
|
+
stopScreenshare(false, true);
|
|
297
297
|
} else {
|
|
298
298
|
isWebInternal()
|
|
299
299
|
? await RtcEngineUnsafe.muteLocalVideoStream(true)
|
|
@@ -543,7 +543,7 @@ export const LiveStreamContextProvider: React.FC<
|
|
|
543
543
|
raiseHandApprovedRequestRecallToastHeading?.current(),
|
|
544
544
|
null,
|
|
545
545
|
);
|
|
546
|
-
screenshareContextInstanceRef?.current?.
|
|
546
|
+
screenshareContextInstanceRef?.current?.stopScreenshare(); // This will not exist on ios
|
|
547
547
|
|
|
548
548
|
// Demote user's privileges to audience
|
|
549
549
|
changeClientRoleTo(ClientRoleType.ClientRoleAudience);
|
|
@@ -716,7 +716,7 @@ export const LiveStreamContextProvider: React.FC<
|
|
|
716
716
|
ClientRoleType.ClientRoleBroadcaster &&
|
|
717
717
|
raiseHandList[localUidRef.current]?.raised === RaiseHandValue.TRUE
|
|
718
718
|
) {
|
|
719
|
-
screenshareContextInstanceRef?.current?.
|
|
719
|
+
screenshareContextInstanceRef?.current?.stopScreenshare(); // This will not exist on ios
|
|
720
720
|
// Change role
|
|
721
721
|
changeClientRoleTo(ClientRoleType.ClientRoleAudience);
|
|
722
722
|
}
|
|
@@ -78,7 +78,7 @@ export default function UserActionMenuOptionsOptions(
|
|
|
78
78
|
const [showVideoMuteModal, setShowVideoMuteModal] = useState(false);
|
|
79
79
|
const [isPosCalculated, setIsPosCalculated] = useState(false);
|
|
80
80
|
const {setFocus} = useFocus();
|
|
81
|
-
const {
|
|
81
|
+
const {stopScreenshare} = useScreenshare();
|
|
82
82
|
const remoteEndScreenshare = useRemoteEndScreenshare();
|
|
83
83
|
const [removeScreensharePopupVisible, setRemoveScreensharePopupVisible] =
|
|
84
84
|
useState(false);
|
|
@@ -379,7 +379,7 @@ export default function UserActionMenuOptionsOptions(
|
|
|
379
379
|
setActionMenuVisible(false);
|
|
380
380
|
//for local user directly stop the screenshare
|
|
381
381
|
if (localuid === user.parentUid) {
|
|
382
|
-
|
|
382
|
+
stopScreenshare();
|
|
383
383
|
}
|
|
384
384
|
//for remote user show popup and then user will use cta to stop screenshare
|
|
385
385
|
else {
|
|
@@ -24,7 +24,7 @@ const StartScreenSharePopup = () => {
|
|
|
24
24
|
const {showStartScreenSharePopup, setShowStartScreenSharePopup} =
|
|
25
25
|
useVideoCall();
|
|
26
26
|
const {video} = useLocalUserInfo();
|
|
27
|
-
const {
|
|
27
|
+
const {startScreenshare, isScreenshareActive} = useScreenshare();
|
|
28
28
|
const isDesktop = useIsDesktop()('popup');
|
|
29
29
|
const cancelLabel = useString(cancelText)();
|
|
30
30
|
const proceedLabel = useString(nativeScreensharePopupPrimaryBtnText)();
|
|
@@ -42,7 +42,7 @@ const StartScreenSharePopup = () => {
|
|
|
42
42
|
const doStartScreenShare = () => {
|
|
43
43
|
if (!isScreenshareActive) {
|
|
44
44
|
//@ts-ignore native only we will have argument
|
|
45
|
-
|
|
45
|
+
startScreenshare && startScreenshare(shareAudio);
|
|
46
46
|
setShowStartScreenSharePopup(false);
|
|
47
47
|
}
|
|
48
48
|
};
|
|
@@ -24,7 +24,7 @@ import {cancelText} from '../../language/default-labels/commonLabels';
|
|
|
24
24
|
const StopScreenSharePopup = () => {
|
|
25
25
|
const {showStopScreenSharePopup, setShowStopScreenSharePopup} =
|
|
26
26
|
useVideoCall();
|
|
27
|
-
const {
|
|
27
|
+
const {stopScreenshare, isScreenshareActive} = useScreenshare();
|
|
28
28
|
const isDesktop = useIsDesktop()('popup');
|
|
29
29
|
const localMute = useMuteToggleLocal();
|
|
30
30
|
const screenshareLabelHeading = useString(
|
|
@@ -43,7 +43,7 @@ const StopScreenSharePopup = () => {
|
|
|
43
43
|
if (isScreenshareActive) {
|
|
44
44
|
//true means keep the video enabled and stop only the screenshare
|
|
45
45
|
//@ts-ignore
|
|
46
|
-
|
|
46
|
+
stopScreenshare(true);
|
|
47
47
|
setShowStopScreenSharePopup(false);
|
|
48
48
|
}
|
|
49
49
|
};
|
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
moreBtnViewInLarge,
|
|
38
38
|
moreBtnViewWhiteboard,
|
|
39
39
|
} from '../../language/default-labels/videoCallScreenLabels';
|
|
40
|
-
interface VideoRendererProps {
|
|
40
|
+
export interface VideoRendererProps {
|
|
41
41
|
user: ContentInterface;
|
|
42
42
|
isMax?: boolean;
|
|
43
43
|
CustomChild?: React.ComponentType;
|
|
@@ -27,7 +27,7 @@ export const stopForegroundService = () => {
|
|
|
27
27
|
};
|
|
28
28
|
|
|
29
29
|
const LocalEndcall = (props: LocalEndcallProps) => {
|
|
30
|
-
const {isScreenshareActive,
|
|
30
|
+
const {isScreenshareActive, stopScreenshare} = useScreenshare();
|
|
31
31
|
const {isToolbarMenuItem} = useToolbarMenu();
|
|
32
32
|
const {isOnActionSheet, showLabel} = useActionSheet();
|
|
33
33
|
const endCallLabel = useString(toolbarItemLeaveText)();
|
|
@@ -50,7 +50,7 @@ const LocalEndcall = (props: LocalEndcallProps) => {
|
|
|
50
50
|
props.customExit();
|
|
51
51
|
} else {
|
|
52
52
|
if ((isAndroid() || isIOS()) && isScreenshareActive) {
|
|
53
|
-
|
|
53
|
+
stopScreenshare();
|
|
54
54
|
setEndCallState(true);
|
|
55
55
|
} else {
|
|
56
56
|
executeEndCall();
|
|
@@ -39,7 +39,7 @@ function ScreenShareNotice({uid, isMax}: {uid: UidType; isMax: boolean}) {
|
|
|
39
39
|
videoRoomScreenshareStopSharingBtnText,
|
|
40
40
|
)();
|
|
41
41
|
const {currentLayout} = useLayout();
|
|
42
|
-
const {
|
|
42
|
+
const {stopScreenshare} = useScreenshare();
|
|
43
43
|
const {rtcProps} = useContext(PropsContext);
|
|
44
44
|
return uid === rtcProps?.screenShareUid ? (
|
|
45
45
|
<View style={styles.screenSharingMessageContainer}>
|
|
@@ -56,7 +56,7 @@ function ScreenShareNotice({uid, isMax}: {uid: UidType; isMax: boolean}) {
|
|
|
56
56
|
) : (
|
|
57
57
|
<TouchableOpacity
|
|
58
58
|
style={styles.btnContainer}
|
|
59
|
-
onPress={() =>
|
|
59
|
+
onPress={() => stopScreenshare()}>
|
|
60
60
|
<View style={styles.iconContainer}>
|
|
61
61
|
<ImageIcon
|
|
62
62
|
iconType="plain"
|
|
@@ -49,21 +49,21 @@ const ScreenshareButton = (props: ScreenshareButtonProps) => {
|
|
|
49
49
|
} = useRoomInfo();
|
|
50
50
|
const local = useLocalUserInfo();
|
|
51
51
|
const isHandRaised = useIsHandRaised();
|
|
52
|
-
const {isScreenshareActive,
|
|
52
|
+
const {isScreenshareActive, startScreenshare, stopScreenshare} =
|
|
53
53
|
useScreenshare();
|
|
54
54
|
const {setShowStartScreenSharePopup} = useVideoCall();
|
|
55
55
|
const screenShareButtonLabel = useString<boolean>(toolbarItemShareText);
|
|
56
56
|
const lstooltip = useString<boolean>(livestreamingShareTooltipText);
|
|
57
57
|
const onPress = () => {
|
|
58
58
|
if (isScreenshareActive) {
|
|
59
|
-
|
|
59
|
+
stopScreenshare();
|
|
60
60
|
} else {
|
|
61
61
|
if (isAndroid() || isIOS()) {
|
|
62
62
|
//native screen we need to stop user video before proceeding the screenshare
|
|
63
63
|
//so showing confirm popup to stop camera(if cam on ) and option to share audio
|
|
64
64
|
setShowStartScreenSharePopup(true);
|
|
65
65
|
} else {
|
|
66
|
-
|
|
66
|
+
startScreenshare();
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
};
|
|
@@ -240,7 +240,7 @@ export const ScreenshareConfigure = (props: {children: React.ReactNode}) => {
|
|
|
240
240
|
};
|
|
241
241
|
}, []);
|
|
242
242
|
|
|
243
|
-
const
|
|
243
|
+
const startScreenshare = async (captureAudio: boolean = false) => {
|
|
244
244
|
if (!isScreenshareActive) {
|
|
245
245
|
// either user can publish local video or screenshare stream
|
|
246
246
|
// so if user video is turned on then we are turning off video before screenshare
|
|
@@ -275,7 +275,7 @@ export const ScreenshareConfigure = (props: {children: React.ReactNode}) => {
|
|
|
275
275
|
}, 1000);
|
|
276
276
|
}, [appState]);
|
|
277
277
|
|
|
278
|
-
const
|
|
278
|
+
const stopScreenshare = async (
|
|
279
279
|
enableVideo: boolean = false,
|
|
280
280
|
forceStop: boolean = false,
|
|
281
281
|
) => {
|
|
@@ -339,8 +339,8 @@ export const ScreenshareConfigure = (props: {children: React.ReactNode}) => {
|
|
|
339
339
|
<ScreenshareContext.Provider
|
|
340
340
|
value={{
|
|
341
341
|
isScreenshareActive,
|
|
342
|
-
|
|
343
|
-
|
|
342
|
+
startScreenshare,
|
|
343
|
+
stopScreenshare,
|
|
344
344
|
//@ts-ignore
|
|
345
345
|
ScreenshareStoppedCallback,
|
|
346
346
|
}}>
|
|
@@ -268,13 +268,13 @@ export const ScreenshareConfigure = (props: {children: React.ReactNode}) => {
|
|
|
268
268
|
);
|
|
269
269
|
}, []);
|
|
270
270
|
|
|
271
|
-
const
|
|
271
|
+
const stopScreenshare = () => {
|
|
272
272
|
if (!isScreenshareActive) {
|
|
273
273
|
return;
|
|
274
274
|
}
|
|
275
275
|
userScreenshare(false);
|
|
276
276
|
};
|
|
277
|
-
const
|
|
277
|
+
const startScreenshare = () => {
|
|
278
278
|
if (isScreenshareActive) {
|
|
279
279
|
return;
|
|
280
280
|
}
|
|
@@ -338,8 +338,8 @@ export const ScreenshareConfigure = (props: {children: React.ReactNode}) => {
|
|
|
338
338
|
<ScreenshareContext.Provider
|
|
339
339
|
value={{
|
|
340
340
|
isScreenshareActive,
|
|
341
|
-
|
|
342
|
-
|
|
341
|
+
startScreenshare,
|
|
342
|
+
stopScreenshare,
|
|
343
343
|
//@ts-ignore
|
|
344
344
|
ScreenshareStoppedCallback,
|
|
345
345
|
}}>
|
|
@@ -14,14 +14,14 @@ import {createHook} from 'customization-implementation';
|
|
|
14
14
|
|
|
15
15
|
export interface ScreenshareContextInterface {
|
|
16
16
|
isScreenshareActive: boolean;
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
startScreenshare: () => void;
|
|
18
|
+
stopScreenshare: () => void;
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
export const ScreenshareContext = createContext<ScreenshareContextInterface>({
|
|
22
22
|
isScreenshareActive: false,
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
startScreenshare: () => {},
|
|
24
|
+
stopScreenshare: () => {},
|
|
25
25
|
//@ts-ignore
|
|
26
26
|
ScreenshareStoppedCallback: () => {},
|
|
27
27
|
});
|