@maveio/components 0.0.151 → 0.0.153

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 (41) hide show
  1. package/dist/{chunk-BRZI5I43.cjs → chunk-2P6HF22Q.cjs} +3 -3
  2. package/dist/chunk-36CSGHYJ.js +1807 -0
  3. package/dist/{chunk-S6WN4NLN.js → chunk-6QHPCMNQ.js} +1 -1
  4. package/dist/{chunk-LX6MMRGQ.js → chunk-D3LG3UTO.js} +1 -1
  5. package/dist/{chunk-XSVNMS3S.cjs → chunk-EB4QCWWS.cjs} +1 -1
  6. package/dist/{chunk-ZXCHPIGV.js → chunk-HKHV3KLY.js} +3 -3
  7. package/dist/chunk-MB72HBHH.cjs +1 -0
  8. package/dist/chunk-NV7C4TBM.js +1 -0
  9. package/dist/{chunk-VGWLQHAV.cjs → chunk-SAOOZPZZ.cjs} +2 -2
  10. package/dist/{chunk-SM4RPLYQ.cjs → chunk-WEZKG6QZ.cjs} +2 -2
  11. package/dist/chunk-YAVQQEFQ.cjs +1807 -0
  12. package/dist/{chunk-FDSTNWZP.js → chunk-YVMWE3I7.js} +1 -1
  13. package/dist/components/list.cjs +1 -1
  14. package/dist/components/list.js +1 -1
  15. package/dist/components/player.cjs +1 -1
  16. package/dist/components/player.js +1 -1
  17. package/dist/components/pop.cjs +1 -1
  18. package/dist/components/pop.js +1 -1
  19. package/dist/components/upload.cjs +1 -1
  20. package/dist/components/upload.js +1 -1
  21. package/dist/embed/socket.cjs +1 -1
  22. package/dist/embed/socket.js +1 -1
  23. package/dist/index.cjs +1 -1
  24. package/dist/index.js +1 -1
  25. package/dist/react.cjs +1 -1
  26. package/dist/react.js +1 -1
  27. package/dist/themes/default.cjs +20 -48
  28. package/dist/themes/default.js +20 -48
  29. package/dist/themes/dolphin.cjs +30 -34
  30. package/dist/themes/dolphin.js +30 -34
  31. package/dist/themes/loader.cjs +1 -1
  32. package/dist/themes/loader.d.cts +4 -1
  33. package/dist/themes/loader.d.ts +4 -1
  34. package/dist/themes/loader.js +1 -1
  35. package/dist/themes/synthwave.cjs +23 -41
  36. package/dist/themes/synthwave.js +23 -41
  37. package/package.json +8 -8
  38. package/dist/chunk-AEGY4JNC.js +0 -1209
  39. package/dist/chunk-APKCPW3V.cjs +0 -1209
  40. package/dist/chunk-KTP5LV2E.cjs +0 -1
  41. package/dist/chunk-MAOTHFPC.js +0 -1
@@ -67,11 +67,12 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
67
67
  </svg>
68
68
  </div>
69
69
  </media-play-button>
70
+ <media-loading-indicator loading-delay="0"></media-loading-indicator>
70
71
  <media-time-range></media-time-range>
71
72
  <media-time-display showduration></media-time-display>
72
73
  <div style="flex-grow: 1;"></div>
73
74
  <media-playback-rate-button></media-playback-rate-button>
74
- <media-captions-button>
75
+ <media-captions-menu-button>
75
76
  <div slot="off">
76
77
  <svg
77
78
  xmlns="http://www.w3.org/2000/svg"
@@ -100,8 +101,8 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
100
101
  />
101
102
  </svg>
102
103
  </div>
103
- </media-captions-button>
104
- <media-captions-selectmenu></media-captions-selectmenu>
104
+ </media-captions-menu-button>
105
+ <media-captions-menu hidden anchor="auto"></media-captions-menu>
105
106
  <media-mute-button>
106
107
  <div slot="high">
107
108
  <svg
@@ -231,7 +232,6 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
231
232
 
232
233
  media-controller {
233
234
  --media-tooltip-display: none;
234
- overflow: hidden;
235
235
  display: flex;
236
236
  width: 100%;
237
237
  height: 100%;
@@ -288,13 +288,13 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
288
288
  }
289
289
 
290
290
  media-mute-button {
291
- display: var(--media-volume-display, inline-flex);
291
+ display: var(--media-mute-button-display, inline-flex);
292
292
  }
293
293
 
294
294
  media-play-button,
295
295
  media-fullscreen-button,
296
296
  media-mute-button,
297
- media-captions-button {
297
+ media-captions-menu-button {
298
298
  transform: translate3d(0, 0, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1);
299
299
  transition-property: all;
300
300
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
@@ -304,7 +304,7 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
304
304
  media-play-button:hover,
305
305
  media-fullscreen-button:hover,
306
306
  media-mute-button:hover,
307
- media-captions-button:hover {
307
+ media-captions-menu-button:hover {
308
308
  --media-primary-color: rgba(255, 255, 255, 1);
309
309
  transform: scale(1.3);
310
310
  }
@@ -316,48 +316,44 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
316
316
  padding-top: 7px;
317
317
  }
318
318
 
319
- media-captions-button {
320
- display: none;
321
- pointer-events: none;
322
- }
323
-
324
- media-captions-button[mediacaptionlist] {
325
- display: flex;
326
- }
327
-
328
- media-captions-button[mediasubtitleslist] {
329
- display: flex;
330
- }
331
-
332
- media-captions-button div {
319
+ media-captions-menu-button div {
333
320
  width: 26px;
334
321
  padding-top: 6px;
335
322
  }
336
323
 
337
324
  media-play-button svg,
338
- media-captions-button svg,
325
+ media-captions-menu-button svg,
339
326
  media-fullscreen-button svg,
340
327
  media-mute-button svg {
341
328
  width: 23px;
342
329
  height: 23px;
343
330
  }
344
331
 
345
- media-captions-selectmenu {
346
- z-index: 10;
347
- margin-left: -35px;
332
+ media-loading-indicator {
333
+ position: absolute;
334
+ pointer-events: none;
335
+ transform: scale(0.9);
336
+ top: -3px;
337
+ left: 0px;
348
338
  }
349
339
 
350
- media-captions-selectmenu::part(listbox) {
351
- margin-left: -34px;
352
- transform: scale(0.9);
340
+ media-controller[medialoading]:not([mediapaused]) media-play-button {
341
+ opacity: 0;
353
342
  }
354
343
 
355
- media-captions-selectmenu::part(option) {
356
- border-radius: 12px;
344
+ media-captions-menu {
345
+ position: absolute;
346
+ bottom: calc(100% + 8px);
347
+ min-width: 120px;
348
+ transform-origin: bottom right;
357
349
  }
358
350
 
359
- media-captions-selectmenu::part(button) {
360
- opacity: 0;
351
+ media-captions-menu::part(menu-item) {
352
+ border-radius: 8px;
353
+ }
354
+
355
+ media-captions-menu::part(menu-item):hover {
356
+ background: rgba(0, 0, 0, 0.15);
361
357
  }
362
358
 
363
359
  media-controller[mediapaused] div[slot='centered-chrome'] media-play-button {
@@ -456,8 +452,8 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
456
452
  display: var(--playbackrate-display, flex);
457
453
  }
458
454
 
459
- media-captions-selectmenu,
460
- media-captions-button[mediasubtitleslist] {
455
+ media-captions-menu,
456
+ media-captions-menu-button[mediasubtitleslist] {
461
457
  display: var(--captions-display, flex);
462
458
  }
463
459
  `,customElements.define(`theme-${t}`,e);}export{r as build};
@@ -1 +1 @@
1
- 'use strict';var chunkKTP5LV2E_cjs=require('../chunk-KTP5LV2E.cjs');require('../chunk-COWZ7GYF.cjs'),require('../chunk-5NSCV6C2.cjs'),require('../chunk-IPA5Q26W.cjs');Object.defineProperty(exports,"ThemeLoader",{enumerable:true,get:function(){return chunkKTP5LV2E_cjs.a}});
1
+ 'use strict';var chunkMB72HBHH_cjs=require('../chunk-MB72HBHH.cjs');require('../chunk-COWZ7GYF.cjs'),require('../chunk-5NSCV6C2.cjs'),require('../chunk-IPA5Q26W.cjs');Object.defineProperty(exports,"ThemeLoader",{enumerable:true,get:function(){return chunkMB72HBHH_cjs.a}});
@@ -1,8 +1,11 @@
1
1
  declare class ThemeLoader {
2
2
  private static instance;
3
3
  private themes;
4
+ currentTheme: string;
4
5
  private constructor();
5
- static get(name: string, path?: string, injectCSS?: boolean): Promise<ThemeLoader>;
6
+ static get(name: string, path?: string): Promise<ThemeLoader>;
7
+ static external(path: string): Promise<ThemeLoader>;
8
+ static getTheme(): string;
6
9
  }
7
10
 
8
11
  export { ThemeLoader };
@@ -1,8 +1,11 @@
1
1
  declare class ThemeLoader {
2
2
  private static instance;
3
3
  private themes;
4
+ currentTheme: string;
4
5
  private constructor();
5
- static get(name: string, path?: string, injectCSS?: boolean): Promise<ThemeLoader>;
6
+ static get(name: string, path?: string): Promise<ThemeLoader>;
7
+ static external(path: string): Promise<ThemeLoader>;
8
+ static getTheme(): string;
6
9
  }
7
10
 
8
11
  export { ThemeLoader };
@@ -1 +1 @@
1
- export{a as ThemeLoader}from'../chunk-MAOTHFPC.js';import'../chunk-TIOUPJWD.js';import'../chunk-A4GZBQEB.js';import'../chunk-NDDFZTBA.js';
1
+ export{a as ThemeLoader}from'../chunk-NV7C4TBM.js';import'../chunk-TIOUPJWD.js';import'../chunk-A4GZBQEB.js';import'../chunk-NDDFZTBA.js';
@@ -135,7 +135,7 @@
135
135
  <div style="flex-grow: 1;"></div>
136
136
  <media-time-display showduration></media-time-display>
137
137
  <media-playback-rate-button></media-playback-rate-button>
138
- <media-captions-button>
138
+ <media-captions-menu-button>
139
139
  <div slot="off">
140
140
  <svg
141
141
  xmlns="http://www.w3.org/2000/svg"
@@ -164,8 +164,8 @@
164
164
  />
165
165
  </svg>
166
166
  </div>
167
- </media-captions-button>
168
- <media-captions-selectmenu></media-captions-selectmenu>
167
+ </media-captions-menu-button>
168
+ <media-captions-menu hidden anchor="auto"></media-captions-menu>
169
169
  <media-fullscreen-button>
170
170
  <div slot="enter">
171
171
  <svg
@@ -232,7 +232,6 @@
232
232
 
233
233
  media-controller {
234
234
  --media-tooltip-display: none;
235
- overflow: hidden;
236
235
  display: flex;
237
236
  width: 100%;
238
237
  height: 100%;
@@ -264,6 +263,10 @@
264
263
  padding-top: 3px;
265
264
  }
266
265
 
266
+ media-controller[medialoading]:not([mediapaused]) media-play-button {
267
+ opacity: 0;
268
+ }
269
+
267
270
  media-control-bar {
268
271
  width: 100%;
269
272
  height: 48px;
@@ -302,27 +305,23 @@
302
305
  }
303
306
 
304
307
  media-mute-button {
305
- display: var(--media-volume-display, inline-flex);
308
+ display: var(--media-mute-button-display, inline-flex);
306
309
  }
307
310
 
308
311
  media-play-button,
309
312
  media-fullscreen-button,
310
313
  media-mute-button,
311
- media-captions-button {
314
+ media-captions-menu-button {
312
315
  transform: translate3d(0, 0, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1);
313
316
  transition-property: all;
314
317
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
315
318
  transition-duration: 100ms;
316
319
  }
317
320
 
318
- media-controller[medialoading] media-play-button {
319
- opacity: 0;
320
- }
321
-
322
321
  media-play-button:hover,
323
322
  media-fullscreen-button:hover,
324
323
  media-mute-button:hover,
325
- media-captions-button:hover {
324
+ media-captions-menu-button:hover {
326
325
  --media-primary-color: rgba(255, 255, 255, 1);
327
326
  transform: scale(1.3);
328
327
  }
@@ -334,49 +333,32 @@
334
333
  padding-top: 7px;
335
334
  }
336
335
 
337
- media-captions-button {
338
- display: none;
339
- margin-right: -7px;
340
- pointer-events: none;
341
- }
342
-
343
- media-captions-button[mediacaptionlist] {
344
- display: flex;
345
- }
346
-
347
- media-captions-button[mediasubtitleslist] {
348
- display: flex;
349
- }
350
-
351
- media-captions-button div {
336
+ media-captions-menu-button div {
352
337
  width: 26px;
353
338
  padding-top: 6px;
354
339
  }
355
340
 
356
341
  media-play-button svg,
357
- media-captions-button svg,
342
+ media-captions-menu-button svg,
358
343
  media-fullscreen-button svg,
359
344
  media-mute-button svg {
360
345
  width: 23px;
361
346
  height: 23px;
362
347
  }
363
348
 
364
- media-captions-selectmenu {
365
- z-index: 10;
366
- margin-left: -35px;
367
- }
368
-
369
- media-captions-selectmenu::part(listbox) {
370
- transform: scale(0.9);
371
- margin-left: -8px;
349
+ media-captions-menu {
350
+ position: absolute;
351
+ bottom: calc(100% + 8px);
352
+ min-width: 120px;
353
+ transform-origin: bottom right;
372
354
  }
373
355
 
374
- media-captions-selectmenu::part(option) {
375
- border-radius: 12px;
356
+ media-captions-menu::part(menu-item) {
357
+ border-radius: 8px;
376
358
  }
377
359
 
378
- media-captions-selectmenu::part(button) {
379
- opacity: 0;
360
+ media-captions-menu::part(menu-item):hover {
361
+ background: rgba(0, 0, 0, 0.15);
380
362
  }
381
363
 
382
364
  media-controller[mediapaused] div[slot='centered-chrome'] media-play-button {
@@ -476,8 +458,8 @@
476
458
  display: var(--playbackrate-display, flex);
477
459
  }
478
460
 
479
- media-captions-selectmenu,
480
- media-captions-button[mediasubtitleslist] {
461
+ media-captions-menu,
462
+ media-captions-menu-button[mediasubtitleslist] {
481
463
  display: var(--captions-display, flex);
482
464
  }
483
465
 
@@ -135,7 +135,7 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
135
135
  <div style="flex-grow: 1;"></div>
136
136
  <media-time-display showduration></media-time-display>
137
137
  <media-playback-rate-button></media-playback-rate-button>
138
- <media-captions-button>
138
+ <media-captions-menu-button>
139
139
  <div slot="off">
140
140
  <svg
141
141
  xmlns="http://www.w3.org/2000/svg"
@@ -164,8 +164,8 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
164
164
  />
165
165
  </svg>
166
166
  </div>
167
- </media-captions-button>
168
- <media-captions-selectmenu></media-captions-selectmenu>
167
+ </media-captions-menu-button>
168
+ <media-captions-menu hidden anchor="auto"></media-captions-menu>
169
169
  <media-fullscreen-button>
170
170
  <div slot="enter">
171
171
  <svg
@@ -232,7 +232,6 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
232
232
 
233
233
  media-controller {
234
234
  --media-tooltip-display: none;
235
- overflow: hidden;
236
235
  display: flex;
237
236
  width: 100%;
238
237
  height: 100%;
@@ -264,6 +263,10 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
264
263
  padding-top: 3px;
265
264
  }
266
265
 
266
+ media-controller[medialoading]:not([mediapaused]) media-play-button {
267
+ opacity: 0;
268
+ }
269
+
267
270
  media-control-bar {
268
271
  width: 100%;
269
272
  height: 48px;
@@ -302,27 +305,23 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
302
305
  }
303
306
 
304
307
  media-mute-button {
305
- display: var(--media-volume-display, inline-flex);
308
+ display: var(--media-mute-button-display, inline-flex);
306
309
  }
307
310
 
308
311
  media-play-button,
309
312
  media-fullscreen-button,
310
313
  media-mute-button,
311
- media-captions-button {
314
+ media-captions-menu-button {
312
315
  transform: translate3d(0, 0, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1);
313
316
  transition-property: all;
314
317
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
315
318
  transition-duration: 100ms;
316
319
  }
317
320
 
318
- media-controller[medialoading] media-play-button {
319
- opacity: 0;
320
- }
321
-
322
321
  media-play-button:hover,
323
322
  media-fullscreen-button:hover,
324
323
  media-mute-button:hover,
325
- media-captions-button:hover {
324
+ media-captions-menu-button:hover {
326
325
  --media-primary-color: rgba(255, 255, 255, 1);
327
326
  transform: scale(1.3);
328
327
  }
@@ -334,49 +333,32 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
334
333
  padding-top: 7px;
335
334
  }
336
335
 
337
- media-captions-button {
338
- display: none;
339
- margin-right: -7px;
340
- pointer-events: none;
341
- }
342
-
343
- media-captions-button[mediacaptionlist] {
344
- display: flex;
345
- }
346
-
347
- media-captions-button[mediasubtitleslist] {
348
- display: flex;
349
- }
350
-
351
- media-captions-button div {
336
+ media-captions-menu-button div {
352
337
  width: 26px;
353
338
  padding-top: 6px;
354
339
  }
355
340
 
356
341
  media-play-button svg,
357
- media-captions-button svg,
342
+ media-captions-menu-button svg,
358
343
  media-fullscreen-button svg,
359
344
  media-mute-button svg {
360
345
  width: 23px;
361
346
  height: 23px;
362
347
  }
363
348
 
364
- media-captions-selectmenu {
365
- z-index: 10;
366
- margin-left: -35px;
367
- }
368
-
369
- media-captions-selectmenu::part(listbox) {
370
- transform: scale(0.9);
371
- margin-left: -8px;
349
+ media-captions-menu {
350
+ position: absolute;
351
+ bottom: calc(100% + 8px);
352
+ min-width: 120px;
353
+ transform-origin: bottom right;
372
354
  }
373
355
 
374
- media-captions-selectmenu::part(option) {
375
- border-radius: 12px;
356
+ media-captions-menu::part(menu-item) {
357
+ border-radius: 8px;
376
358
  }
377
359
 
378
- media-captions-selectmenu::part(button) {
379
- opacity: 0;
360
+ media-captions-menu::part(menu-item):hover {
361
+ background: rgba(0, 0, 0, 0.15);
380
362
  }
381
363
 
382
364
  media-controller[mediapaused] div[slot='centered-chrome'] media-play-button {
@@ -476,8 +458,8 @@ import'../chunk-NDDFZTBA.js';function r(t,i,a,o){class e extends i{render(){retu
476
458
  display: var(--playbackrate-display, flex);
477
459
  }
478
460
 
479
- media-captions-selectmenu,
480
- media-captions-button[mediasubtitleslist] {
461
+ media-captions-menu,
462
+ media-captions-menu-button[mediasubtitleslist] {
481
463
  display: var(--captions-display, flex);
482
464
  }
483
465
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maveio/components",
3
- "version": "0.0.151",
3
+ "version": "0.0.153",
4
4
  "description": "privacy friendly (🇪🇺), iframe-less, video UI elements for videos hosted on mave.io",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.js",
@@ -28,7 +28,7 @@
28
28
  "scripts": {
29
29
  "ts-types": "tsc",
30
30
  "build": "tsup",
31
- "build:watch": "tsup --watch --sourcemap",
31
+ "build:watch": "NODE_ENV=development tsup --watch --sourcemap",
32
32
  "build:prod": "NODE_ENV=production npm run build --no-sourcemap",
33
33
  "localize": "lit-localize extract && ./node_modules/.bin/lit-localize build",
34
34
  "prepublishOnly": "npm run build:prod",
@@ -37,7 +37,7 @@
37
37
  "lint:fix": "eslint ./src --ext .ts,.tsx --quiet --fix --ixgnore-path ./.gitignore",
38
38
  "lint:format": "prettier --loglevel warn --write \"./**/*.{ts,tsx,css,md,json}\" ",
39
39
  "lint": "yarn lint:format && yarn lint:fix",
40
- "serve": "vite --open examples/index.html",
40
+ "serve": "live-server --port=5173 --host=localhost --open=examples/index.html --watch=dist,examples --wait=200",
41
41
  "start": "concurrently \"npm run build:watch\" \"npm run serve\""
42
42
  },
43
43
  "publishConfig": {
@@ -65,11 +65,11 @@
65
65
  "eslint-plugin-prettier": "^4.0.0",
66
66
  "eslint-plugin-simple-import-sort": "^7.0.0",
67
67
  "jest": "^29.4.3",
68
+ "live-server": "^1.2.2",
68
69
  "prettier": "^2.8.4",
69
70
  "ts-jest": "^29.0.5",
70
71
  "tsup": "^8.4.0",
71
- "typescript": "^5.2",
72
- "vite": "^6.3.3"
72
+ "typescript": "^5.2"
73
73
  },
74
74
  "author": "mave.io",
75
75
  "license": "AGPL-3.0-or-later",
@@ -99,10 +99,10 @@
99
99
  "@lit/task": "^1.0.0",
100
100
  "@lottiefiles/lottie-player": "^2.0.2",
101
101
  "@maveio/metrics": "^0.1.5",
102
- "hls.js": "^1.5.15",
102
+ "hls.js": "^1.6.7",
103
103
  "lit": "^3.1.2",
104
- "media-chrome": "^2.2.4",
105
- "phoenix": "^1.7.11",
104
+ "media-chrome": "^4.12.0",
105
+ "phoenix": "^1.7.21",
106
106
  "react": "^18.2.0",
107
107
  "tus-js-client": "^4.2.3"
108
108
  },