xgplayer 2.32.2 → 2.32.3

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.
Files changed (188) hide show
  1. package/browser/controls/danmu.js +3 -1
  2. package/browser/controls/errorRetry.js +1 -1
  3. package/browser/controls/nativeTextTrack.js +1 -1
  4. package/browser/core_player.js +1 -1
  5. package/browser/core_player.js.map +1 -1
  6. package/browser/index.js +7 -5
  7. package/browser/index.js.map +1 -1
  8. package/browser/simple_player.js +1 -1
  9. package/browser/simple_player.js.map +1 -1
  10. package/dist/controls/danmu.js +3 -1
  11. package/dist/controls/errorRetry.js +1 -1
  12. package/dist/controls/nativeTextTrack.js +1 -1
  13. package/dist/core_player.js +6 -7
  14. package/dist/core_player.js.map +1 -1
  15. package/dist/index.js +2881 -1887
  16. package/dist/index.js.map +1 -1
  17. package/dist/index.min.css +1 -0
  18. package/dist/index.min.js +2 -0
  19. package/dist/index.min.js.map +1 -0
  20. package/dist/simple_player.js +6 -7
  21. package/dist/simple_player.js.map +1 -1
  22. package/es/controls/danmu.js +3 -1
  23. package/es/controls/errorRetry.js +1 -1
  24. package/es/controls/nativeTextTrack.js +1 -1
  25. package/es/core_player.js +1 -1
  26. package/es/core_player.js.map +1 -1
  27. package/es/index.js +7 -5
  28. package/es/index.js.map +1 -1
  29. package/es/simple_player.js +1 -1
  30. package/es/simple_player.js.map +1 -1
  31. package/package.json +11 -2
  32. package/types/index.d.ts +0 -11
  33. package/postcss.config.js +0 -7
  34. package/src/bind/airplay.js +0 -10
  35. package/src/bind/cssFullscreen.js +0 -10
  36. package/src/bind/danmu.js +0 -10
  37. package/src/bind/definition.js +0 -10
  38. package/src/bind/download.js +0 -10
  39. package/src/bind/enter.js +0 -8
  40. package/src/bind/error.js +0 -8
  41. package/src/bind/errorRetry.js +0 -8
  42. package/src/bind/flex.js +0 -8
  43. package/src/bind/fullscreen.js +0 -10
  44. package/src/bind/i18n.js +0 -8
  45. package/src/bind/keyboard.js +0 -8
  46. package/src/bind/loading.js +0 -8
  47. package/src/bind/localPreview.js +0 -10
  48. package/src/bind/memoryPlay.js +0 -10
  49. package/src/bind/miniplayer.js +0 -10
  50. package/src/bind/mobile.js +0 -8
  51. package/src/bind/nativeTextTrack.js +0 -8
  52. package/src/bind/pc.js +0 -8
  53. package/src/bind/pip.js +0 -10
  54. package/src/bind/play.js +0 -10
  55. package/src/bind/playNext.js +0 -10
  56. package/src/bind/playbackRate.js +0 -8
  57. package/src/bind/poster.js +0 -8
  58. package/src/bind/progress.js +0 -8
  59. package/src/bind/reload.js +0 -10
  60. package/src/bind/replay.js +0 -10
  61. package/src/bind/rotate.js +0 -10
  62. package/src/bind/screenShot.js +0 -10
  63. package/src/bind/stallCheck.js +0 -8
  64. package/src/bind/start.js +0 -10
  65. package/src/bind/textTrack.js +0 -8
  66. package/src/bind/time.js +0 -8
  67. package/src/bind/volume.js +0 -10
  68. package/src/controls/airplay.js +0 -20
  69. package/src/controls/cssFullscreen.js +0 -49
  70. package/src/controls/danmu.js +0 -75
  71. package/src/controls/definition.js +0 -13
  72. package/src/controls/download.js +0 -28
  73. package/src/controls/errorRetry.js +0 -132
  74. package/src/controls/fullscreen.js +0 -145
  75. package/src/controls/keyboard.js +0 -214
  76. package/src/controls/localPreview.js +0 -32
  77. package/src/controls/memoryPlay.js +0 -14
  78. package/src/controls/miniplayer.js +0 -128
  79. package/src/controls/mobile.js +0 -100
  80. package/src/controls/pc.js +0 -123
  81. package/src/controls/pip.js +0 -52
  82. package/src/controls/play.js +0 -34
  83. package/src/controls/playNext.js +0 -29
  84. package/src/controls/reload.js +0 -24
  85. package/src/controls/replay.js +0 -30
  86. package/src/controls/rotate.js +0 -99
  87. package/src/controls/screenShot.js +0 -65
  88. package/src/controls/stallCheck.js +0 -38
  89. package/src/controls/start.js +0 -60
  90. package/src/controls/textTrack.js +0 -182
  91. package/src/controls/volume.js +0 -178
  92. package/src/controls.js +0 -36
  93. package/src/core_player.js +0 -13
  94. package/src/error.js +0 -74
  95. package/src/index.js +0 -57
  96. package/src/player.js +0 -553
  97. package/src/proxy.js +0 -495
  98. package/src/simple_player.js +0 -42
  99. package/src/skin/assets/airplay.svg +0 -1
  100. package/src/skin/assets/download.svg +0 -14
  101. package/src/skin/assets/exitCssFull.svg +0 -3
  102. package/src/skin/assets/exitFull.svg +0 -3
  103. package/src/skin/assets/loading.svg +0 -3
  104. package/src/skin/assets/panel.svg +0 -4
  105. package/src/skin/assets/pause.svg +0 -3
  106. package/src/skin/assets/play.svg +0 -3
  107. package/src/skin/assets/playNext.svg +0 -3
  108. package/src/skin/assets/reload.svg +0 -3
  109. package/src/skin/assets/replay.svg +0 -3
  110. package/src/skin/assets/requestCssFull.svg +0 -3
  111. package/src/skin/assets/requestFull.svg +0 -3
  112. package/src/skin/assets/rotate.svg +0 -11
  113. package/src/skin/assets/startPause.svg +0 -3
  114. package/src/skin/assets/startPlay.svg +0 -3
  115. package/src/skin/assets/volumeLarge.svg +0 -4
  116. package/src/skin/assets/volumeMuted.svg +0 -4
  117. package/src/skin/assets/volumeSmall.svg +0 -4
  118. package/src/skin/controls/airplay.js +0 -44
  119. package/src/skin/controls/cssFullscreen.js +0 -36
  120. package/src/skin/controls/danmu.js +0 -214
  121. package/src/skin/controls/definition.js +0 -251
  122. package/src/skin/controls/download.js +0 -29
  123. package/src/skin/controls/enter.js +0 -21
  124. package/src/skin/controls/error.js +0 -57
  125. package/src/skin/controls/flex.js +0 -13
  126. package/src/skin/controls/fullscreen.js +0 -43
  127. package/src/skin/controls/i18n.js +0 -168
  128. package/src/skin/controls/loading.js +0 -17
  129. package/src/skin/controls/localPreview.js +0 -18
  130. package/src/skin/controls/memoryPlay.js +0 -39
  131. package/src/skin/controls/miniplayer.js +0 -26
  132. package/src/skin/controls/nativeTextTrack.js +0 -153
  133. package/src/skin/controls/pip.js +0 -26
  134. package/src/skin/controls/play.js +0 -43
  135. package/src/skin/controls/playNext.js +0 -41
  136. package/src/skin/controls/playbackRate.js +0 -141
  137. package/src/skin/controls/poster.js +0 -18
  138. package/src/skin/controls/progress.js +0 -407
  139. package/src/skin/controls/reload.js +0 -29
  140. package/src/skin/controls/replay.js +0 -56
  141. package/src/skin/controls/rotate.js +0 -29
  142. package/src/skin/controls/screenShot.js +0 -27
  143. package/src/skin/controls/start.js +0 -62
  144. package/src/skin/controls/textTrack.js +0 -113
  145. package/src/skin/controls/time.js +0 -40
  146. package/src/skin/controls/volume.js +0 -63
  147. package/src/skin/index.js +0 -63
  148. package/src/skin/style/common/animation.scss +0 -16
  149. package/src/skin/style/common/svg-url.scss +0 -70
  150. package/src/skin/style/controls/airplay.scss +0 -35
  151. package/src/skin/style/controls/controls.scss +0 -40
  152. package/src/skin/style/controls/cssfullscreen.scss +0 -103
  153. package/src/skin/style/controls/danmu.scss +0 -333
  154. package/src/skin/style/controls/definition.scss +0 -76
  155. package/src/skin/style/controls/download.scss +0 -45
  156. package/src/skin/style/controls/enter.scss +0 -55
  157. package/src/skin/style/controls/error.scss +0 -34
  158. package/src/skin/style/controls/fullscreen.scss +0 -60
  159. package/src/skin/style/controls/icon.scss +0 -12
  160. package/src/skin/style/controls/live.scss +0 -9
  161. package/src/skin/style/controls/loading.scss +0 -44
  162. package/src/skin/style/controls/memoryPlay.scss +0 -28
  163. package/src/skin/style/controls/miniplayer.scss +0 -104
  164. package/src/skin/style/controls/pip.scss +0 -42
  165. package/src/skin/style/controls/placeholder.scss +0 -7
  166. package/src/skin/style/controls/play.scss +0 -79
  167. package/src/skin/style/controls/playNext.scss +0 -44
  168. package/src/skin/style/controls/playbackRate.scss +0 -82
  169. package/src/skin/style/controls/poster.scss +0 -19
  170. package/src/skin/style/controls/progress.scss +0 -182
  171. package/src/skin/style/controls/reload.scss +0 -43
  172. package/src/skin/style/controls/replay.scss +0 -46
  173. package/src/skin/style/controls/rotate.scss +0 -41
  174. package/src/skin/style/controls/screenShot.scss +0 -42
  175. package/src/skin/style/controls/start.scss +0 -78
  176. package/src/skin/style/controls/textTrack.scss +0 -87
  177. package/src/skin/style/controls/time.scss +0 -24
  178. package/src/skin/style/controls/tips.scss +0 -24
  179. package/src/skin/style/controls/videoProxy.scss +0 -6
  180. package/src/skin/style/controls/volume.scss +0 -143
  181. package/src/skin/style/index.scss +0 -88
  182. package/src/utils/sniffer.js +0 -47
  183. package/src/utils/url.js +0 -10
  184. package/src/utils/util.js +0 -358
  185. package/src/utils/xgplayerTimeRange.js +0 -17
  186. package/src/version.js +0 -7
  187. package/version.json +0 -3
  188. package/webpack.config.js +0 -168
@@ -1,42 +0,0 @@
1
- .xgplayer-skin-default {
2
- .xgplayer-screenshot {
3
- order: 11;
4
- position: relative;
5
- outline: none;
6
- display: block;
7
- cursor: pointer;
8
- // margin-left: 10px;
9
- // margin-top: 9px;
10
- // margin-bottom: 11px;
11
- height: 20px;
12
- top: 10px;
13
- .name {
14
- text-align: center;
15
- font-family: PingFangSC-Regular;
16
- font-size: 13px;
17
- line-height: 20px;
18
- height: 20px;
19
- color: rgba(255, 255, 255, 0.80);
20
- span{
21
- width: fit-content;
22
- padding: 0 10px;
23
- height: 20px;
24
- line-height: 20px;
25
- background: rgba(0, 0, 0, 0.38);
26
- border-radius: 10px;
27
- display:inline-block;
28
- vertical-align:middle;
29
- }
30
- }
31
- }
32
- }
33
- .xgplayer-lang-is-en, .xgplayer-lang-is-jp{
34
- .xgplayer-screenshot {
35
- .name {
36
- span{
37
- width: 75px;
38
- height: 20px;
39
- }
40
- }
41
- }
42
- }
@@ -1,78 +0,0 @@
1
- .xgplayer-skin-default {
2
- .xgplayer-start {
3
- border-radius: 50%;
4
- display: inline-block;
5
- width: 70px;
6
- height: 70px;
7
- background: rgba(0, 0, 0, 0.38);
8
- overflow: hidden;
9
- text-align: center;
10
- line-height: 70px;
11
- vertical-align: middle;
12
- position: absolute;
13
- left: 50%;
14
- top: 50%;
15
- z-index: 115;
16
- margin: -35px auto auto -35px;
17
- cursor: pointer;
18
- div{
19
- position: absolute;
20
- svg{
21
- fill: rgba(255, 255, 255, 0.7);
22
- }
23
- }
24
- .xgplayer-icon-play{
25
- display: block;
26
- }
27
- .xgplayer-icon-pause{
28
- display: none;
29
- }
30
- &:hover{
31
- opacity: 0.85;
32
- }
33
- }
34
- }
35
-
36
- .xgplayer-skin-default.xgplayer-start-hide {
37
- .xgplayer-start {
38
- display: none;
39
- }
40
- }
41
- .xgplayer-skin-default.xgplayer-pause.xgplayer-start-hide {
42
- .xgplayer-start {
43
- display: none;
44
- }
45
- }
46
- .xgplayer-skin-default.xgplayer-playing {
47
- .xgplayer-start {
48
- display: none;
49
- .xgplayer-icon-play{
50
- display: none;
51
- }
52
- .xgplayer-icon-pause{
53
- display: block;
54
- }
55
- }
56
- }
57
- .xgplayer-skin-default.xgplayer-pause {
58
- .xgplayer-start {
59
- display: inline-block;
60
- .xgplayer-icon-play{
61
- display: block;
62
- }
63
- .xgplayer-icon-pause{
64
- display: none;
65
- }
66
- }
67
- }
68
- .xgplayer-skin-default.xgplayer-is-replay {
69
- .xgplayer-start {
70
- display: none;
71
- .xgplayer-icon-play{
72
- display: block;
73
- }
74
- .xgplayer-icon-pause{
75
- display: none;
76
- }
77
- }
78
- }
@@ -1,87 +0,0 @@
1
- .xgplayer-skin-default {
2
- .xgplayer-texttrack {
3
- order: 7;
4
- width: 60px;
5
- height: 150px;
6
- z-index: 18;
7
- position: relative;
8
- outline: none;
9
- display: none;
10
- cursor: default;
11
- // margin-left: 10px;
12
- margin-top: -119px;
13
- // margin-bottom: 11px;
14
- ul {
15
- display: none;
16
- list-style: none;
17
- min-width: 78px;
18
- background: rgba(0, 0, 0, 0.54);
19
- border-radius: 1px;
20
- position: absolute;
21
- bottom: 30px;
22
- text-align: center;
23
- white-space: nowrap;
24
- left: 50%;
25
- transform: translateX(-50%);
26
- width: fit-content;
27
- z-index: 26;
28
- cursor: pointer;
29
- li {
30
- opacity: 0.7;
31
- font-family: PingFangSC-Regular;
32
- font-size: 11px;
33
- color: rgba(255, 255, 255, 0.80);
34
- width: fit-content;
35
- margin: auto;
36
- padding: 6px 13px;
37
- &.selected {
38
- color: #fff;
39
- opacity: 1;
40
- }
41
- &:hover {
42
- color: #fff;
43
- opacity: 1;
44
- }
45
- }
46
- }
47
- .name {
48
- text-align: center;
49
- font-family: PingFangSC-Regular;
50
- font-size: 13px;
51
- line-height: 20px;
52
- height: 20px;
53
- cursor: pointer;
54
- color: rgba(255, 255, 255, 0.80);
55
- position: absolute;
56
- bottom: 0;
57
- width: 60px;
58
- height: 20px;
59
- line-height: 20px;
60
- background: rgba(0, 0, 0, 0.38);
61
- border-radius: 10px;
62
- display:inline-block;
63
- vertical-align:middle;
64
- }
65
- &.xgplayer-texttrack-hide {
66
- display: none;
67
- }
68
- }
69
- }
70
-
71
- xg-text-track {
72
- transition: bottom .3s ease;
73
- }
74
-
75
- .xgplayer-skin-default.xgplayer-texttrack-active {
76
- .xgplayer-texttrack {
77
- ul {
78
- display: block;
79
- }
80
- }
81
- }
82
-
83
- .xgplayer-skin-default.xgplayer-is-texttrack {
84
- .xgplayer-texttrack {
85
- display: block;
86
- }
87
- }
@@ -1,24 +0,0 @@
1
- .xgplayer-skin-default {
2
- .xgplayer-time {
3
- order: 2;
4
- font-family: ArialMT;
5
- font-size: 13px;
6
- color: #fff;
7
- line-height: 40px;
8
- height: 40px;
9
- text-align: center;
10
- display: inline-block;
11
- margin: auto 8px;
12
- span {
13
- color: rgba(255, 255, 255, 0.50);
14
- }
15
- .xgplayer-time-current {
16
- color: #fff;
17
- }
18
- .xgplayer-time-current::after {
19
- content: "/";
20
- display: inline-block;
21
- padding: 0 3px;
22
- }
23
- }
24
- }
@@ -1,24 +0,0 @@
1
- .xgplayer-skin-default {
2
- .xgplayer-tips{
3
- background: rgba(0, 0, 0, 0.54);
4
- border-radius: 1px;
5
- display: none;
6
- position: absolute;
7
- font-family: PingFangSC-Regular;
8
- font-size: 11px;
9
- color: #fff;
10
- padding: 2px 4px;
11
- text-align: center;
12
- top: -30px;
13
- left: 50%;
14
- margin-left: -16px;
15
- width: auto;
16
- white-space: nowrap;
17
- }
18
- }
19
-
20
- .xgplayer-skin-default.xgplayer-mobile {
21
- .xgplayer-tips{
22
- display: none !important;
23
- }
24
- }
@@ -1,6 +0,0 @@
1
- .xgplayer-skin-default {
2
- .xgplayer-screen-container {
3
- display: block;
4
- width: 100%;
5
- }
6
- }
@@ -1,143 +0,0 @@
1
- .xgplayer-skin-default {
2
- .xgplayer-volume {
3
- outline: none;
4
- order: 4;
5
- width: 40px;
6
- height: 40px;
7
- display: block;
8
- position: relative;
9
- z-index: 18;
10
- .xgplayer-icon {
11
- margin-top: 8px;
12
- cursor: pointer;
13
- position: absolute;
14
- bottom: -9px;
15
- div {
16
- position: absolute;
17
- }
18
- .xgplayer-icon-large {
19
- display: block;
20
- }
21
- .xgplayer-icon-small {
22
- display: none;
23
- }
24
- .xgplayer-icon-muted {
25
- display: none;
26
- }
27
- }
28
- }
29
-
30
- .xgplayer-slider{
31
- display: none;
32
- position: absolute;
33
- width: 28px;
34
- height: 92px;
35
- background: rgba(0, 0, 0, 0.54);
36
- border-radius: 1px;
37
- bottom: 42px;
38
- outline: none;
39
- &:after{
40
- content:" ";
41
- display:block;
42
- height: 15px;
43
- width:28px;
44
- position: absolute;
45
- bottom: -15px;
46
- left: 0;
47
- z-index: 20;
48
- }
49
- }
50
-
51
- .xgplayer-bar,.xgplayer-drag{
52
- display: block;
53
- position: absolute;
54
- bottom: 6px;
55
- left: 12px;
56
- background: rgba(255, 255, 255, 0.30);
57
- border-radius: 100px;
58
- width: 4px;
59
- height: 76px;
60
- outline: none;
61
- cursor: pointer;
62
- }
63
- .xgplayer-drag{
64
- bottom: 0;
65
- left: 0;
66
- background: #FA1F41;
67
- max-height: 76px;
68
- &:after{
69
- content: " ";
70
- display: inline-block;
71
- width: 8px;
72
- height: 8px;
73
- background: #fff;
74
- box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.26);
75
- position: absolute;
76
- border-radius: 50%;
77
- left: -2px;
78
- top: -6px;
79
- }
80
- }
81
- }
82
-
83
- .xgplayer-skin-default.xgplayer-volume-active {
84
- .xgplayer-slider{
85
- display: block;
86
- }
87
- }
88
-
89
- .xgplayer-skin-default.xgplayer-volume-large {
90
- .xgplayer-volume {
91
- .xgplayer-icon {
92
- .xgplayer-icon-large {
93
- display: block;
94
- }
95
- .xgplayer-icon-small {
96
- display: none;
97
- }
98
- .xgplayer-icon-muted {
99
- display: none;
100
- }
101
- }
102
- }
103
- }
104
-
105
- .xgplayer-skin-default.xgplayer-volume-small {
106
- .xgplayer-volume {
107
- .xgplayer-icon {
108
- .xgplayer-icon-large {
109
- display: none;
110
- }
111
- .xgplayer-icon-small {
112
- display: block;
113
- }
114
- .xgplayer-icon-muted {
115
- display: none;
116
- }
117
- }
118
- }
119
- }
120
-
121
- .xgplayer-skin-default.xgplayer-volume-muted {
122
- .xgplayer-volume {
123
- .xgplayer-icon {
124
- .xgplayer-icon-large {
125
- display: none;
126
- }
127
- .xgplayer-icon-small {
128
- display: none;
129
- }
130
- .xgplayer-icon-muted {
131
- display: block;
132
- }
133
- }
134
- }
135
- }
136
-
137
- .xgplayer-skin-default.xgplayer-mobile {
138
- .xgplayer-volume {
139
- .xgplayer-slider {
140
- display: none;
141
- }
142
- }
143
- }
@@ -1,88 +0,0 @@
1
- // order:
2
- // xgplayer-play 0
3
- // xgplayer-playNext 1
4
- // xgplayer-reload 1
5
- // xgplayer-time 2
6
- // xgplayer-placeholder 3
7
- // xgplayer-volume 4
8
- // xgplayer-definition 5
9
- // xgplayer-bullet-btn 6
10
- // xgplayer-textTrack 7
11
- // xgplayer-playback 8
12
- // xgplayer-download 9
13
- // xgplayer-rotate 10
14
- // xgplayer-screenShot 11
15
- // xgplayer-airplay 11
16
- // xgplayer-cssFullscreen 12
17
- // xgplayer-fullscreen 13
18
-
19
- // z-index:
20
- // xgplayer-poster 100
21
- // xgplayer-progress-point 100
22
- // xgplayer-replay 105
23
- // xgplayer-pip-active 110
24
- // xgplayer-start 115
25
- // xgplayer-enter 120
26
- // xgplayer-error 125
27
- // xgplayer-pip-lay 130
28
- // xgplayer-pip-drag 135
29
- // xgplayer-is-fullscreen 9999
30
- // xgplayer-is-cssfullscreen 99999
31
-
32
- .xgplayer-skin-default{
33
- background: #000;
34
- width: 100%;
35
- height: 100%;
36
- position: relative;
37
- user-select: none;
38
- -ms-user-select: none;
39
- *{
40
- margin: 0;
41
- padding: 0;
42
- border: 0;
43
- font-size: 100%;
44
- font: inherit;
45
- vertical-align: baseline;
46
- }
47
- .xgplayer-none{
48
- display: none
49
- }
50
- &.xgplayer-rotate-fullscreen {
51
- position: absolute;
52
- top: 0;
53
- left: 100%;
54
- bottom: 0;
55
- right: 0;
56
- height: 100vw!important;
57
- width: 100vh!important;
58
- transform-origin: top left;
59
- transform: rotate(90deg);
60
- }
61
- &.xgplayer-is-fullscreen{
62
- width: 100%!important;
63
- height: 100%!important;
64
- // Undo any aspect ratio padding for fluid layouts
65
- padding-top: 0 !important;
66
- z-index: 9999;
67
- }
68
- &.xgplayer-is-fullscreen.xgplayer-inactive{
69
- cursor: none;
70
- }
71
- video{
72
- width:100%;
73
- height: 100%;
74
- outline: none;
75
- }
76
- }
77
-
78
- .xgplayer-skin-default .xgplayer-none{
79
- display: none;
80
- }
81
-
82
- @import "common/svg-url";
83
- @import "common/animation";
84
- @import "controls/controls";
85
- @import "controls/live";
86
- @import "controls/icon";
87
- @import "controls/tips";
88
- @import "controls/videoProxy";
@@ -1,47 +0,0 @@
1
- let sniffer = {}
2
-
3
- Object.defineProperty(sniffer, 'device', {
4
- get: function () {
5
- let r = sniffer.os
6
- return r.isPc ? 'pc' : 'mobile'
7
- // return r.isPc ? 'pc' : r.isTablet ? 'tablet' : 'mobile'
8
- }
9
- })
10
-
11
- Object.defineProperty(sniffer, 'browser', {
12
- get: function () {
13
- let ua = navigator.userAgent.toLowerCase()
14
- let reg = {
15
- ie: /rv:([\d.]+)\) like gecko/,
16
- firfox: /firefox\/([\d.]+)/,
17
- chrome: /chrome\/([\d.]+)/,
18
- opera: /opera.([\d.]+)/,
19
- safari: /version\/([\d.]+).*safari/
20
- }
21
- return [].concat(Object.keys(reg).filter(key => reg[key].test(ua)))[0] || ''
22
- }
23
- })
24
-
25
- Object.defineProperty(sniffer, 'os', {
26
- get: function () {
27
- let ua = navigator.userAgent
28
- let isWindowsPhone = /(?:Windows Phone)/.test(ua)
29
- let isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone
30
- let isAndroid = /(?:Android)/.test(ua)
31
- let isFireFox = /(?:Firefox)/.test(ua)
32
- let isTablet = /(?:iPad|PlayBook)/.test(ua) || (isAndroid && !/(?:Mobile)/.test(ua)) || (isFireFox && /(?:Tablet)/.test(ua))
33
- let isPhone = /(?:iPhone)/.test(ua) && !isTablet
34
- let isPc = !isPhone && !isAndroid && !isSymbian && !isTablet
35
- return {
36
- isTablet,
37
- isPhone,
38
- isAndroid,
39
- isPc,
40
- isSymbian,
41
- isWindowsPhone,
42
- isFireFox
43
- }
44
- }
45
- })
46
-
47
- export default sniffer
package/src/utils/url.js DELETED
@@ -1,10 +0,0 @@
1
-
2
- export const getAbsoluteURL = function (url) {
3
- // Check if absolute URL
4
- if (!url.match(/^https?:\/\//)) {
5
- const div = document.createElement('div')
6
- div.innerHTML = `<a href="${url}">x</a>`
7
- url = div.firstChild.href
8
- }
9
- return url
10
- }