webs-sdk 0.19.62 → 0.19.65

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 (106) hide show
  1. package/AGENTS.md +44 -0
  2. package/CLAUDE.md +80 -0
  3. package/README.md +63 -1
  4. package/dist/components/SpinningWheel/index.d.ts +1 -1
  5. package/dist/components/SpinningWheel/index.d.ts.map +1 -1
  6. package/dist/components/SpinningWheel/index.js +2 -1
  7. package/dist/components/SpinningWheel/index.js.map +1 -1
  8. package/dist/components/ui/ConfiguredMediaPlayer.d.ts +49 -0
  9. package/dist/components/ui/ConfiguredMediaPlayer.d.ts.map +1 -0
  10. package/dist/components/ui/ConfiguredMediaPlayer.js +111 -0
  11. package/dist/components/ui/ConfiguredMediaPlayer.js.map +1 -0
  12. package/dist/components/ui/badge.d.ts +1 -0
  13. package/dist/components/ui/badge.d.ts.map +1 -1
  14. package/dist/components/ui/badge.js +1 -1
  15. package/dist/components/ui/badge.js.map +1 -1
  16. package/dist/components/ui/compose-refs.d.ts +6 -0
  17. package/dist/components/ui/compose-refs.d.ts.map +1 -0
  18. package/dist/components/ui/compose-refs.js +57 -0
  19. package/dist/components/ui/compose-refs.js.map +1 -0
  20. package/dist/components/ui/dropdown-menu.d.ts +3 -1
  21. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  22. package/dist/components/ui/dropdown-menu.js +2 -2
  23. package/dist/components/ui/dropdown-menu.js.map +1 -1
  24. package/dist/components/ui/index.d.ts +2 -0
  25. package/dist/components/ui/index.d.ts.map +1 -1
  26. package/dist/components/ui/index.js +2 -0
  27. package/dist/components/ui/index.js.map +1 -1
  28. package/dist/components/ui/media-player.d.ts +127 -0
  29. package/dist/components/ui/media-player.d.ts.map +1 -0
  30. package/dist/components/ui/media-player.js +1633 -0
  31. package/dist/components/ui/media-player.js.map +1 -0
  32. package/dist/components/ui/tooltip.d.ts +3 -1
  33. package/dist/components/ui/tooltip.d.ts.map +1 -1
  34. package/dist/components/ui/tooltip.js +2 -2
  35. package/dist/components/ui/tooltip.js.map +1 -1
  36. package/dist/components/ui/use-lazy-ref.d.ts +4 -0
  37. package/dist/components/ui/use-lazy-ref.d.ts.map +1 -0
  38. package/dist/components/ui/use-lazy-ref.js +45 -0
  39. package/dist/components/ui/use-lazy-ref.js.map +1 -0
  40. package/dist/config.d.ts +3 -0
  41. package/dist/config.d.ts.map +1 -1
  42. package/dist/config.js +3 -0
  43. package/dist/config.js.map +1 -1
  44. package/dist/index.d.ts +3 -1
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +6 -3
  47. package/dist/index.js.map +1 -1
  48. package/dist/libraries/auth.d.ts.map +1 -1
  49. package/dist/libraries/auth.js +2 -2
  50. package/dist/libraries/auth.js.map +1 -1
  51. package/dist/libraries/clarity.d.ts +23 -0
  52. package/dist/libraries/clarity.d.ts.map +1 -0
  53. package/dist/libraries/clarity.js +110 -0
  54. package/dist/libraries/clarity.js.map +1 -0
  55. package/dist/libraries/index.d.ts +1 -0
  56. package/dist/libraries/index.d.ts.map +1 -1
  57. package/dist/libraries/index.js +3 -1
  58. package/dist/libraries/index.js.map +1 -1
  59. package/dist/libraries/networking.d.ts +4 -0
  60. package/dist/libraries/networking.d.ts.map +1 -1
  61. package/dist/libraries/networking.js +42 -6
  62. package/dist/libraries/networking.js.map +1 -1
  63. package/dist/libraries/session.d.ts.map +1 -1
  64. package/dist/libraries/session.js +2 -0
  65. package/dist/libraries/session.js.map +1 -1
  66. package/dist/network.d.ts +12 -0
  67. package/dist/network.d.ts.map +1 -0
  68. package/dist/network.js +15 -0
  69. package/dist/network.js.map +1 -0
  70. package/dist/server.d.ts +54 -0
  71. package/dist/server.d.ts.map +1 -0
  72. package/dist/server.js +74 -0
  73. package/dist/server.js.map +1 -0
  74. package/dist/types/media-chrome-store-types.d.ts +107 -0
  75. package/dist/types/media-chrome-store-types.d.ts.map +1 -0
  76. package/dist/types/media-chrome-store-types.js +3 -0
  77. package/dist/types/media-chrome-store-types.js.map +1 -0
  78. package/dist/utils/QRCode.d.ts +1 -0
  79. package/dist/utils/QRCode.d.ts.map +1 -0
  80. package/dist/utils/QRCode.js +2 -0
  81. package/dist/utils/QRCode.js.map +1 -0
  82. package/dist/utils/imageValidation.d.ts +6 -0
  83. package/dist/utils/imageValidation.d.ts.map +1 -0
  84. package/dist/utils/imageValidation.js +64 -0
  85. package/dist/utils/imageValidation.js.map +1 -0
  86. package/docs/CONFIGURED_MEDIA_PLAYER.md +40 -0
  87. package/docs/CORP_AUTH_USAGE.md +687 -0
  88. package/docs/EXAMPLES_WALLPAPERSNAME_IMPLEMENTATION.md +1445 -0
  89. package/docs/EXAMPLE_ENDPOINTS_COMUNICATION.md +55 -0
  90. package/docs/EXTERNAL_SDK_GUIDE.md +1340 -0
  91. package/docs/FOR_YOU_360_FACESWAP_FIX.md +400 -0
  92. package/docs/FOR_YOU_IMPLEMENTATION_GUIDE.md +1413 -0
  93. package/docs/FOR_YOU_QUIZ_ARCHITECTURE.md +753 -0
  94. package/docs/FOR_YOU_SDK_WALLPAPERSNAME_BUG.md +106 -0
  95. package/docs/FOR_YOU_WALLPAPERSNAME_ENHANCEMENT_PLAN.md +210 -0
  96. package/docs/LEGAL_USAGE.md +190 -0
  97. package/docs/STREAK_IMPLEMENTATION_GUIDE.md +430 -0
  98. package/package.json +29 -6
  99. package/scripts/install-agent-skill.cjs +34 -0
  100. package/skills/webs-sdk-package/SKILL.md +11 -0
  101. package/skills/webs-sdk-package/references/components.md +30 -0
  102. package/skills/webs-sdk-package/references/integration.md +32 -0
  103. package/dist/libraries/globals.d.ts +0 -17
  104. package/dist/libraries/globals.d.ts.map +0 -1
  105. package/dist/libraries/globals.js +0 -38
  106. package/dist/libraries/globals.js.map +0 -1
package/AGENTS.md ADDED
@@ -0,0 +1,44 @@
1
+ # Agent guide: webs-sdk
2
+
3
+ `webs-sdk` is a shared package for Nexum portals. Prefer an existing SDK export over copying a component or implementing shared behavior in a portal. This guide ships with the npm package. For automatic skill discovery in a consuming portal, run `npm exec -- webs-sdk-skill` after `npm install webs-sdk`; restart the agent. Pi can instead load the packaged skill with `pi install npm:webs-sdk --local` (requires a separate `npm install webs-sdk` for the portal). Without the skill, agents must explicitly read `node_modules/webs-sdk/AGENTS.md` because nested `node_modules` instructions are not automatically loaded. See `skills/webs-sdk-package/references/components.md` for the component map. Inspect `node_modules/webs-sdk/dist/index.d.ts` and `node_modules/webs-sdk/dist/components/ui/index.d.ts` for the **installed version's** exact exports and Props types; guides are not exhaustive. In the SDK source repository, read `CLAUDE.md` before editing code.
4
+
5
+ ## Choose the correct import
6
+
7
+ | Need | Import | Details |
8
+ | --- | --- | --- |
9
+ | Session, authentication, API, tracking, CDN, feature components | `webs-sdk` | Root public API in `src/index.ts`. Server/client suitability varies by export; do not put the whole `WebsSDK` singleton in a client component without checking its dependencies. |
10
+ | Radix primitives and media players | `webs-sdk/ui` | UI public API in `src/components/ui/index.ts`. Use this subpath, not private `dist/` paths. |
11
+ | Video with source, captions, controls configured via props | `ConfiguredMediaPlayer` from `webs-sdk/ui` | See `docs/CONFIGURED_MEDIA_PLAYER.md`. This is the preferred ready-to-use Radix player. |
12
+ | Custom video/audio control layout | `MediaPlayer` and `MediaPlayer*` from `webs-sdk/ui` | Compose children under `MediaPlayer`; no default media/controls are created for you. |
13
+ | Existing portals using the old video player | `VideoPlayer` from `webs-sdk/ui` | Legacy API (`videoUrl`, `posterImage`, `languages`). Do not silently replace with the new player: props and rendering differ. |
14
+
15
+ ## Portal integration: prop-configured video
16
+
17
+ ```tsx
18
+ 'use client';
19
+
20
+ import { ConfiguredMediaPlayer } from 'webs-sdk/ui';
21
+
22
+ export function ContentVideo({ url, poster }: { url: string; poster?: string }) {
23
+ return (
24
+ <ConfiguredMediaPlayer
25
+ src={url}
26
+ poster={poster}
27
+ label="Content video"
28
+ controls={{ seekButtons: true, captions: true, pictureInPicture: true }}
29
+ tracks={[{ src: '/subtitles/en.vtt', srcLang: 'en', label: 'English', kind: 'subtitles' }]}
30
+ />
31
+ );
32
+ }
33
+ ```
34
+
35
+ `src` is required, not `videoUrl`. `controls` overrides individual defaults; `settings` defaults to enabled, so use `{ settings: false, speed: true }` to show the standalone speed picker. HLS `.m3u8` loads natively where supported, otherwise loads `hls.js` on demand. Consumers need React/ReactDOM and the declared `lucide-react` peer dependency. Configure the portal's Tailwind v4 scan to include SDK UI files (`@source` path in `docs/CONFIGURED_MEDIA_PLAYER.md`); otherwise player controls may render without styling. Media playback requires a client component; merely importing an SDK component does not replace the portal's auth/session logic.
36
+
37
+ ## Before adding a reusable feature
38
+
39
+ 1. In a consuming portal, check the installed `webs-sdk` version and its `dist/index.d.ts` / `dist/components/ui/index.d.ts`, then inspect the exported Props declarations. Do not import from private `dist/` paths in application code.
40
+ 2. Prefer an existing SDK export in a portal. If no reusable feature exists, add it to the SDK source repository rather than copying implementations into multiple portals.
41
+ 3. When editing the SDK repository, check `src/index.ts` and `src/components/ui/index.ts`, use relative imports, export public Props/Config types, and add focused tests. Root exports require both `src/index.ts` and root `index.js`; `webs-sdk/ui` exports require `src/components/ui/index.ts` only.
42
+ 4. In the SDK repository, run `npm test`, `npm run test:types`, `npm run test:package`, and `npm run test:coverage` before release. Package checks verify `webs-sdk` and `webs-sdk/ui` entry points. Do not edit `dist/` by hand or bump the version manually.
43
+
44
+ Other guides: `CLAUDE.md` (development and publishing), `README.md` (public SDK overview), `docs/CONFIGURED_MEDIA_PLAYER.md` (media API), `docs/FOR_YOU_IMPLEMENTATION_GUIDE.md` and `docs/STREAK_IMPLEMENTATION_GUIDE.md` (feature integration).
package/CLAUDE.md ADDED
@@ -0,0 +1,80 @@
1
+ # CLAUDE.md
2
+
3
+ ## What this repo is
4
+
5
+ `webs-sdk` — internal npm package for Nexum web portals. Provides shared libraries (auth, sessions, networking, tracking, i18n, storage) and reusable React components (AvatarAI, Wallpapers, SpinningWheel, ARFilters, etc.). Published artifact is `dist/` (CommonJS, ES2017), plus `AGENTS.md`, `CLAUDE.md`, and `docs/` for agents working in consuming portals. The Next.js setup (`npm run dev`) is dev-only for visually testing components. For a portal integration decision tree and ready-to-copy media player example, start with `AGENTS.md`.
6
+
7
+ ## Commands
8
+
9
+ ```bash
10
+ npm run build # Compile src/ → dist/ via tsc (tsconfig.build.json)
11
+ npm run build:watch # Same, with --watch
12
+ npm run dev # Next.js dev server (component testing only)
13
+ npm run lint # ESLint (Next.js 16 flat config; existing source lint debt remains)
14
+ npm test # Vitest unit and browser-component tests (single run)
15
+ npm run test:watch # Vitest watch mode
16
+ npm run test:coverage # V8 coverage across all src/ files, including untouched files
17
+ npm run test:types # Typecheck SDK and test files without migration scratch files
18
+ npm run test:package # Build and verify published SDK/UI entry points and root exports
19
+ ```
20
+
21
+ Run `npm test`, `npm run test:types`, `npm run test:package`, and `npm run test:coverage` locally when changing SDK code. These tests do not call live backends. Test tooling needs Node.js 20.19+ (or 22.12+). Tests live in `tests/`; the build excludes them. Browser tests use `// @vitest-environment jsdom`. Coverage includes untested `src/` files at 0%; passing tests do not imply full SDK coverage. Full `npm run lint` currently reports pre-existing source errors; do not suppress them.
22
+
23
+ ## Architecture essentials
24
+
25
+ ```
26
+ src/
27
+ ├── index.ts # Source barrel — all public exports
28
+ ├── config.ts # Static defaults, mutated at runtime by executeInit()
29
+ ├── libraries/ # Core services (classes, instantiated as singletons)
30
+ │ ├── networking.ts # HTTP, events, /config init
31
+ │ ├── session.ts # Session orchestration (init flow entry point)
32
+ │ ├── auth.ts # JWT auth
33
+ │ ├── andromeda.ts # AI backend client
34
+ │ ├── calypso.ts # AI backend client (alt)
35
+ │ ├── mixpanel.ts # Mixpanel tracking
36
+ │ ├── storage.ts # localStorage wrapper
37
+ │ └── ...
38
+ ├── components/ # React components (self-contained, export types)
39
+ │ ├── AvatarAI.tsx # Single-file components with inline CSS
40
+ │ ├── SpinningWheel/ # Multi-file components in folders
41
+ │ └── ui/ # Shared UI primitives (radix-based)
42
+ └── utils/ # Pure utility functions
43
+ ```
44
+
45
+ **Public entry points (see `package.json`):**
46
+ - `webs-sdk` — `src/index.ts` is the TypeScript source barrel; root `/index.js` is the manually maintained CJS re-export. When adding a **root** export, update BOTH.
47
+ - `webs-sdk/ui` — `src/components/ui/index.ts` is its own barrel. When adding a **UI-only** export, update this barrel; no root export or root `/index.js` change is needed. Do not import from private `dist/` paths.
48
+
49
+ **Media player choice:** `ConfiguredMediaPlayer` accepts `src`, `poster`, `tracks`, `sources`, `controls`, and playback callbacks as props; use it for a ready-to-use Radix video/audio player. `MediaPlayer` plus `MediaPlayer*` parts is for custom control layouts. Existing `VideoPlayer` has a different API (`videoUrl`, `posterImage`, `languages`) and remains for backward compatibility. All three are in `webs-sdk/ui`. See `docs/CONFIGURED_MEDIA_PLAYER.md` for usage and Tailwind v4 `@source` integration; see `tests/mediaPlayer.test.tsx` for tests.
50
+
51
+ **Singleton SDK object** (`src/index.ts`): `WebsSDK` instantiates all libraries as singletons. A lazy `.pre` namespace provides preproduction instances (different backend URL).
52
+
53
+ **Init flow** (`Session.init()`):
54
+ 1. `storeSessionStructure()` — browser/device info
55
+ 2. `checkUserID()` — fetch or create user ID
56
+ 3. `networking.executeInit()` — fetches `/config`, mutates `config.ts` with endpoints, events, paywall data, image compression settings
57
+ 4. `checkFirstOpen()` — sends `first_open` event
58
+
59
+ ## Conventions
60
+
61
+ - **Language**: Code in English, comments often in Spanish
62
+ - **Components**: Most feature components are self-contained with inline CSS strings and export Props/Config/Theme/Texts types. UI primitives and Radix media players in `src/components/ui/` use Tailwind classes; consuming portals must scan the installed SDK UI files. See `docs/CONFIGURED_MEDIA_PLAYER.md`.
63
+ - **Libraries**: Class-based, each file exports a class and a default instance
64
+ - **Environment handling**: Constructor param `'production' | 'preproduction'` switches `backendBaseUrl`
65
+ - **Path aliases**: `@/*` → `./src/*` works in Next.js dev but NOT in the library build (`tsconfig.build.json` uses `moduleResolution: "node"`). Use relative imports in `src/`.
66
+ - **Tests** — add unit tests in `tests/` for new behavior, then run `npm test` and `npm run build`
67
+ - **Do not bump `package.json` version** manually
68
+
69
+ ## Publishing / CI
70
+
71
+ - `prepublishOnly` still runs only `npm run build`; local tests are not a publication gate
72
+ - Version bumping and publishing are handled by CI when commit messages contain a ticket reference `[ROAD-XXXXXX]`
73
+ - `builder.config.json` is for the visual Builder.io integration (dev only)
74
+
75
+ ## Gotchas
76
+
77
+ - `config.ts` exports a mutable object — `Networking.executeInit()` overwrites endpoint URLs, events, and feature flags at runtime
78
+ - The build uses `jsx: "react-jsx"` (see `tsconfig.build.json`)
79
+ - `tsconfig.build.json` extends `tsconfig.json` but overrides key settings (CommonJS, no emit in base, emit in build)
80
+ - `skipLibCheck: true` in build config — type errors in `node_modules` won't surface
package/README.md CHANGED
@@ -2,7 +2,16 @@
2
2
 
3
3
  SDK interno npm para portales Nexum. Encapsula toda la lógica común: autenticación, sesiones, comunicación con la API, tracking, internacionalización y componentes React reutilizables.
4
4
 
5
- **Versión actual:** 0.18.9
5
+ **Versión actual:** consulta `package.json` (CI gestiona la versión publicada).
6
+
7
+ **Agentes:** el paquete incluye `AGENTS.md`, guías en `docs/` y una skill instalable. En un portal:
8
+
9
+ ```bash
10
+ npm install webs-sdk
11
+ npm exec -- webs-sdk-skill # copia .agents/skills/webs-sdk-package al proyecto
12
+ ```
13
+
14
+ Reinicia el agente para descubrirla; vuelve a copiar tras actualizar (`npm exec -- webs-sdk-skill --force`). Pi también permite `pi install npm:webs-sdk --local` para cargar la skill sin copiarla (además de `npm install webs-sdk` para el portal). No actives ambas variantes de la skill a la vez. Instalar solo la dependencia no activa skills de forma automática en todos los agentes. Si no instalas la skill, pide al agente leer `node_modules/webs-sdk/AGENTS.md` y los `.d.ts` instalados para los exports reales de esa versión. Véase [`skills/webs-sdk-package/references/components.md`](skills/webs-sdk-package/references/components.md) para el catálogo de componentes y [`docs/CONFIGURED_MEDIA_PLAYER.md`](docs/CONFIGURED_MEDIA_PLAYER.md) para el reproductor.
6
15
 
7
16
  ## Instalación
8
17
 
@@ -26,6 +35,20 @@ WebsSDK.Storage.set('key', 'value');
26
35
  const value = WebsSDK.Storage.get('key');
27
36
  ```
28
37
 
38
+ ## Reproductor configurable (Radix)
39
+
40
+ ```tsx
41
+ import { ConfiguredMediaPlayer } from 'webs-sdk/ui';
42
+
43
+ <ConfiguredMediaPlayer
44
+ src="https://example.com/video.mp4"
45
+ poster="/poster.jpg"
46
+ controls={{ seekButtons: true, captions: true, pictureInPicture: true }}
47
+ />
48
+ ```
49
+
50
+ El `VideoPlayer` anterior sigue disponible; `MediaPlayer` y sus subcomponentes permiten layouts personalizados. Consulta [`docs/CONFIGURED_MEDIA_PLAYER.md`](docs/CONFIGURED_MEDIA_PLAYER.md) para props, HLS, pistas, idiomas y estilos Tailwind.
51
+
29
52
  ## Librerías disponibles
30
53
 
31
54
  ### Networking
@@ -87,6 +110,45 @@ await WebsSDK.MixPanel.identifyUser('user_123');
87
110
  await WebsSDK.MixPanel.setUserProperties({ plan: 'premium' });
88
111
  ```
89
112
 
113
+ ### Clarity — Microsoft Clarity
114
+
115
+ Heatmaps y session recordings. El `projectId` de cada portal viaja en su `/config`
116
+ (`product_config.tracking_id`). Cómo se entrega a Clarity depende del entorno:
117
+
118
+ - **App móvil**: arranca solo. `Session.init()` → `Networking.executeInit()` lee
119
+ `product_config.tracking_id` e inicializa Clarity, identificando con `getUserID()`.
120
+ - **Portal web**: `executeInit()` no corre (el config llega por el proxy /
121
+ `WebsiteProvider` del portal). El portal debe inicializar Clarity con un
122
+ `ClarityInitializer` (espejo del `MixpanelInitializer`) que tome el `tracking_id`
123
+ del `WebsiteProvider` y llame a `initialize()`.
124
+
125
+ ```typescript
126
+ // Init con opciones
127
+ await WebsSDK.Clarity.initialize(projectId, {
128
+ devMode: false, // true → omite la carga (desarrollo)
129
+ requireConsent: true, // true → espera TRACKING_PERMISSION==='granted' (con banner)
130
+ // false → arranca sin esperar consentimiento (sin banner)
131
+ });
132
+
133
+ // Consentimiento de cookies (desde el banner)
134
+ await WebsSDK.Clarity.updateConsent(true); // false para rechazar
135
+
136
+ // Identify: automático en Session.init() con getUserID(); manual opcional
137
+ WebsSDK.Clarity.identify(userId);
138
+ WebsSDK.Clarity.setTag('plan', 'premium');
139
+ WebsSDK.Clarity.trackEvent('checkout_started');
140
+ ```
141
+
142
+ - **Consentimiento:** con `requireConsent: true` respeta `TRACKING_PERMISSION`
143
+ (igual que GA4): si no está `'granted'`, no carga; queda pendiente y arranca al
144
+ llamar `updateConsent(true)`. Con `requireConsent: false` (tenants sin banner)
145
+ arranca directo.
146
+ - **Identify diferido:** no importa el orden de init vs `Session.init()` ni cuándo
147
+ llegue el consentimiento — el `identify(getUserID())` se aplica en cuanto Clarity
148
+ está listo.
149
+ - **Dev mode:** con `devMode: true` no carga (no ensucia Clarity con sesiones de
150
+ desarrollo). El auto-init móvil usa `DEBUG_MODE` para esto.
151
+
90
152
  ### AuthManager
91
153
 
92
154
  ```typescript
@@ -1,6 +1,6 @@
1
1
  export { SpinningWheel, SpinningWheel as default } from './SpinningWheel';
2
2
  export type { SpinningWheelProps, WheelSegment, SpinToWinConfig, WheelTheme, ThemeName } from './types';
3
- export { wheelThemes, vodacomConfig, totalGymConfig, womanTodayConfig, afristreamConfig } from './config';
3
+ export { wheelThemes, vodacomConfig, totalGymConfig, womanTodayConfig, afristreamConfig, efcConfig } from './config';
4
4
  export { SpinningWheelAPI, createSpinningWheelAPI } from './api';
5
5
  export type { SpinAPIConfig } from './api';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/SpinningWheel/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG1E,YAAY,EACV,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,UAAU,EACV,SAAS,EACV,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,OAAO,CAAC;AACf,YAAY,EACV,aAAa,EACd,MAAM,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/SpinningWheel/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG1E,YAAY,EACV,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,UAAU,EACV,SAAS,EACV,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,SAAS,EACV,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,OAAO,CAAC;AACf,YAAY,EACV,aAAa,EACd,MAAM,OAAO,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createSpinningWheelAPI = exports.SpinningWheelAPI = exports.afristreamConfig = exports.womanTodayConfig = exports.totalGymConfig = exports.vodacomConfig = exports.wheelThemes = exports.default = exports.SpinningWheel = void 0;
3
+ exports.createSpinningWheelAPI = exports.SpinningWheelAPI = exports.efcConfig = exports.afristreamConfig = exports.womanTodayConfig = exports.totalGymConfig = exports.vodacomConfig = exports.wheelThemes = exports.default = exports.SpinningWheel = void 0;
4
4
  var SpinningWheel_1 = require("./SpinningWheel");
5
5
  Object.defineProperty(exports, "SpinningWheel", { enumerable: true, get: function () { return SpinningWheel_1.SpinningWheel; } });
6
6
  Object.defineProperty(exports, "default", { enumerable: true, get: function () { return SpinningWheel_1.SpinningWheel; } });
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "vodacomConfig", { enumerable: true, get: functio
10
10
  Object.defineProperty(exports, "totalGymConfig", { enumerable: true, get: function () { return config_1.totalGymConfig; } });
11
11
  Object.defineProperty(exports, "womanTodayConfig", { enumerable: true, get: function () { return config_1.womanTodayConfig; } });
12
12
  Object.defineProperty(exports, "afristreamConfig", { enumerable: true, get: function () { return config_1.afristreamConfig; } });
13
+ Object.defineProperty(exports, "efcConfig", { enumerable: true, get: function () { return config_1.efcConfig; } });
13
14
  var api_1 = require("./api");
14
15
  Object.defineProperty(exports, "SpinningWheelAPI", { enumerable: true, get: function () { return api_1.SpinningWheelAPI; } });
15
16
  Object.defineProperty(exports, "createSpinningWheelAPI", { enumerable: true, get: function () { return api_1.createSpinningWheelAPI; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/SpinningWheel/index.ts"],"names":[],"mappings":";;;AAKA,iDAA0E;AAAjE,8GAAA,aAAa,OAAA;AAAE,wGAAA,aAAa,OAAW;AAYhD,mCAMkB;AALhB,qGAAA,WAAW,OAAA;AACX,uGAAA,aAAa,OAAA;AACb,wGAAA,cAAc,OAAA;AACd,0GAAA,gBAAgB,OAAA;AAChB,0GAAA,gBAAgB,OAAA;AAIlB,6BAGe;AAFb,uGAAA,gBAAgB,OAAA;AAChB,6GAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/SpinningWheel/index.ts"],"names":[],"mappings":";;;AAKA,iDAA0E;AAAjE,8GAAA,aAAa,OAAA;AAAE,wGAAA,aAAa,OAAW;AAYhD,mCAOkB;AANhB,qGAAA,WAAW,OAAA;AACX,uGAAA,aAAa,OAAA;AACb,wGAAA,cAAc,OAAA;AACd,0GAAA,gBAAgB,OAAA;AAChB,0GAAA,gBAAgB,OAAA;AAChB,mGAAA,SAAS,OAAA;AAIX,6BAGe;AAFb,uGAAA,gBAAgB,OAAA;AAChB,6GAAA,sBAAsB,OAAA"}
@@ -0,0 +1,49 @@
1
+ import * as React from "react";
2
+ import { type MediaPlayerProps } from "./media-player";
3
+ export interface MediaPlayerSource {
4
+ lang: string;
5
+ src: string;
6
+ }
7
+ export interface MediaPlayerTrack {
8
+ src: string;
9
+ srcLang: string;
10
+ label: string;
11
+ kind?: "subtitles" | "captions" | "descriptions" | "chapters" | "metadata";
12
+ default?: boolean;
13
+ }
14
+ export interface ConfiguredMediaPlayerControls {
15
+ play?: boolean;
16
+ seek?: boolean;
17
+ seekButtons?: boolean;
18
+ volume?: boolean;
19
+ time?: boolean;
20
+ speed?: boolean;
21
+ settings?: boolean;
22
+ captions?: boolean;
23
+ loop?: boolean;
24
+ pictureInPicture?: boolean;
25
+ fullscreen?: boolean;
26
+ download?: boolean;
27
+ loading?: boolean;
28
+ error?: boolean;
29
+ }
30
+ export interface ConfiguredMediaPlayerProps extends Omit<MediaPlayerProps, "children"> {
31
+ src: string;
32
+ mediaType?: "video" | "audio";
33
+ poster?: string;
34
+ autoPlay?: boolean;
35
+ preload?: "none" | "metadata" | "auto";
36
+ muted?: boolean;
37
+ loop?: boolean;
38
+ playsInline?: boolean;
39
+ tracks?: MediaPlayerTrack[];
40
+ sources?: MediaPlayerSource[];
41
+ defaultLanguage?: string;
42
+ onLanguageChange?: (language: string) => void;
43
+ controls?: ConfiguredMediaPlayerControls;
44
+ seekSeconds?: number;
45
+ playbackSpeeds?: number[];
46
+ mediaProps?: Omit<React.ComponentProps<"video">, "src" | "poster" | "children" | "autoPlay" | "preload" | "muted" | "loop" | "playsInline" | "ref">;
47
+ }
48
+ export declare function ConfiguredMediaPlayer({ src, mediaType, poster, autoPlay, preload, muted, loop, playsInline, tracks, sources, defaultLanguage, onLanguageChange, controls: controlsProp, seekSeconds, playbackSpeeds, mediaProps, label, autoHide, ...rootProps }: ConfiguredMediaPlayerProps): import("react/jsx-runtime").JSX.Element;
49
+ //# sourceMappingURL=ConfiguredMediaPlayer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfiguredMediaPlayer.d.ts","sourceRoot":"","sources":["../../../src/components/ui/ConfiguredMediaPlayer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAqBL,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,cAAc,GAAG,UAAU,GAAG,UAAU,CAAC;IAC3E,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,0BAA2B,SAAQ,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC;IAEpF,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IACvC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAE5B,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAE9C,QAAQ,CAAC,EAAE,6BAA6B,CAAC;IAEzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B,UAAU,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,aAAa,GAAG,KAAK,CAAC,CAAC;CACrJ;AAmDD,wBAAgB,qBAAqB,CAAC,EACpC,GAAG,EACH,SAAmB,EACnB,MAAM,EACN,QAAgB,EAChB,OAAoB,EACpB,KAAa,EACb,IAAY,EACZ,WAAkB,EAClB,MAAM,EACN,OAAO,EACP,eAAe,EACf,gBAAgB,EAChB,QAAQ,EAAE,YAAY,EACtB,WAAgB,EAChB,cAAc,EACd,UAAU,EACV,KAAsB,EACtB,QAAe,EACf,GAAG,SAAS,EACb,EAAE,0BAA0B,2CAgD5B"}
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ "use client";
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ var __rest = (this && this.__rest) || function (s, e) {
37
+ var t = {};
38
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
39
+ t[p] = s[p];
40
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
41
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
42
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
43
+ t[p[i]] = s[p[i]];
44
+ }
45
+ return t;
46
+ };
47
+ Object.defineProperty(exports, "__esModule", { value: true });
48
+ exports.ConfiguredMediaPlayer = ConfiguredMediaPlayer;
49
+ const jsx_runtime_1 = require("react/jsx-runtime");
50
+ const React = __importStar(require("react"));
51
+ const media_player_1 = require("./media-player");
52
+ const DEFAULT_CONTROLS = {
53
+ play: true,
54
+ seek: true,
55
+ seekButtons: false,
56
+ volume: true,
57
+ time: true,
58
+ speed: false,
59
+ settings: true,
60
+ captions: false,
61
+ loop: false,
62
+ pictureInPicture: false,
63
+ fullscreen: true,
64
+ download: false,
65
+ loading: true,
66
+ error: true,
67
+ };
68
+ function useMediaSource(src, mediaType) {
69
+ const ref = React.useRef(null);
70
+ const isHls = mediaType === "video" && /\.m3u8(?:[?#]|$)/i.test(src);
71
+ React.useEffect(() => {
72
+ const element = ref.current;
73
+ if (!element || !isHls)
74
+ return;
75
+ if (element.canPlayType("application/vnd.apple.mpegurl")) {
76
+ element.src = src;
77
+ return;
78
+ }
79
+ let cancelled = false;
80
+ let instance;
81
+ Promise.resolve().then(() => __importStar(require("hls.js"))).then(({ default: HlsModule }) => {
82
+ if (cancelled || !HlsModule.isSupported())
83
+ return;
84
+ instance = new HlsModule();
85
+ instance.loadSource(src);
86
+ instance.attachMedia(element);
87
+ }).catch((error) => {
88
+ if (!cancelled)
89
+ console.warn("Unable to load HLS playback", error);
90
+ });
91
+ return () => {
92
+ cancelled = true;
93
+ instance === null || instance === void 0 ? void 0 : instance.destroy();
94
+ };
95
+ }, [src, isHls]);
96
+ return { ref, directSrc: isHls ? undefined : src };
97
+ }
98
+ function ConfiguredMediaPlayer(_a) {
99
+ var _b, _c, _d, _e;
100
+ var { src, mediaType = "video", poster, autoPlay = false, preload = "metadata", muted = false, loop = false, playsInline = true, tracks, sources, defaultLanguage, onLanguageChange, controls: controlsProp, seekSeconds = 10, playbackSpeeds, mediaProps, label = "Media player", autoHide = true } = _a, rootProps = __rest(_a, ["src", "mediaType", "poster", "autoPlay", "preload", "muted", "loop", "playsInline", "tracks", "sources", "defaultLanguage", "onLanguageChange", "controls", "seekSeconds", "playbackSpeeds", "mediaProps", "label", "autoHide"]);
101
+ const [language, setLanguage] = React.useState((_c = defaultLanguage !== null && defaultLanguage !== void 0 ? defaultLanguage : (_b = sources === null || sources === void 0 ? void 0 : sources[0]) === null || _b === void 0 ? void 0 : _b.lang) !== null && _c !== void 0 ? _c : "");
102
+ const activeSrc = (_e = (_d = sources === null || sources === void 0 ? void 0 : sources.find((source) => source.lang === language)) === null || _d === void 0 ? void 0 : _d.src) !== null && _e !== void 0 ? _e : src;
103
+ const controls = Object.assign(Object.assign({}, DEFAULT_CONTROLS), controlsProp);
104
+ const { ref, directSrc } = useMediaSource(activeSrc, mediaType);
105
+ const mediaAttributes = Object.assign(Object.assign({}, mediaProps), { src: directSrc, autoPlay, preload, muted, loop, playsInline });
106
+ return ((0, jsx_runtime_1.jsxs)(media_player_1.MediaPlayer, Object.assign({}, rootProps, { label: label, autoHide: autoHide, children: [mediaType === "video" ? ((0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerVideo, Object.assign({}, mediaAttributes, { ref: ref, poster: poster, children: tracks === null || tracks === void 0 ? void 0 : tracks.map((track) => (0, jsx_runtime_1.jsx)("track", Object.assign({}, track), `${track.src}:${track.srcLang}`)) }), `${mediaType}:${activeSrc}`)) : ((0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerAudio, Object.assign({}, mediaAttributes, { ref: ref }), `${mediaType}:${activeSrc}`)), controls.loading && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerLoading, {}), controls.error && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerError, {}), (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerControlsOverlay, {}), (0, jsx_runtime_1.jsxs)(media_player_1.MediaPlayerControls, { children: [controls.play && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerPlay, { "aria-label": "Play or pause" }), controls.seekButtons && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerSeekBackward, { seconds: seekSeconds }), controls.seek && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerSeek, { className: "min-w-0 flex-1" }), controls.seekButtons && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerSeekForward, { seconds: seekSeconds }), controls.time && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerTime, {}), controls.volume && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerVolume, {}), sources && sources.length > 1 && ((0, jsx_runtime_1.jsx)("select", { "aria-label": "Media language", value: language, onChange: (event) => {
107
+ setLanguage(event.target.value);
108
+ onLanguageChange === null || onLanguageChange === void 0 ? void 0 : onLanguageChange(event.target.value);
109
+ }, className: "rounded bg-zinc-900 px-2 py-1 text-sm text-white", children: sources.map((source) => (0, jsx_runtime_1.jsx)("option", { value: source.lang, children: source.lang }, source.lang)) })), controls.settings ? (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerSettings, { speeds: playbackSpeeds }) : controls.speed ? (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerPlaybackSpeed, { speeds: playbackSpeeds }) : null, mediaType === "video" && controls.captions && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerCaptions, {}), controls.loop && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerLoop, {}), mediaType === "video" && controls.pictureInPicture && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerPiP, {}), mediaType === "video" && controls.fullscreen && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerFullscreen, {}), controls.download && (0, jsx_runtime_1.jsx)(media_player_1.MediaPlayerDownload, {})] })] })));
110
+ }
111
+ //# sourceMappingURL=ConfiguredMediaPlayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfiguredMediaPlayer.js","sourceRoot":"","sources":["../../../src/components/ui/ConfiguredMediaPlayer.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import * as React from "react";
2
2
  declare function Badge(props: React.ComponentProps<"span"> & {
3
3
  asChild?: boolean;
4
+ variant?: "default" | "outline" | "secondary" | "destructive";
4
5
  }): import("react/jsx-runtime").JSX.Element;
5
6
  export { Badge };
6
7
  //# sourceMappingURL=badge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../src/components/ui/badge.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,iBAAS,KAAK,CACZ,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG;IACpC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,2CAMF;AAED,OAAO,EAAE,KAAK,EAAE,CAAA"}
1
+ {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../src/components/ui/badge.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,iBAAS,KAAK,CACZ,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,CAAC;CAC/D,2CAMF;AAED,OAAO,EAAE,KAAK,EAAE,CAAA"}
@@ -16,7 +16,7 @@ exports.Badge = Badge;
16
16
  const jsx_runtime_1 = require("react/jsx-runtime");
17
17
  const react_slot_1 = require("@radix-ui/react-slot");
18
18
  function Badge(props) {
19
- const { asChild } = props, rest = __rest(props, ["asChild"]);
19
+ const { asChild, variant: _variant } = props, rest = __rest(props, ["asChild", "variant"]);
20
20
  const Comp = asChild ? react_slot_1.Slot : "span";
21
21
  return (0, jsx_runtime_1.jsx)(Comp, Object.assign({}, rest));
22
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"badge.js","sourceRoot":"","sources":["../../../src/components/ui/badge.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;;;;;;;;;;AAgBH,sBAAK;;AAbd,qDAA2C;AAE3C,SAAS,KAAK,CACZ,KAEC;IAED,MAAM,EAAE,OAAO,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAA5B,WAAoB,CAAQ,CAAA;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,iBAAI,CAAC,CAAC,CAAC,MAAM,CAAA;IAEpC,OAAO,uBAAC,IAAI,oBAAK,IAAI,EAAI,CAAA;AAC3B,CAAC"}
1
+ {"version":3,"file":"badge.js","sourceRoot":"","sources":["../../../src/components/ui/badge.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;;;;;;;;;;AAiBH,sBAAK;;AAdd,qDAA2C;AAE3C,SAAS,KAAK,CACZ,KAGC;IAED,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAA/C,sBAAuC,CAAQ,CAAA;IACrD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,iBAAI,CAAC,CAAC,CAAC,MAAM,CAAA;IAEpC,OAAO,uBAAC,IAAI,oBAAK,IAAI,EAAI,CAAA;AAC3B,CAAC"}
@@ -0,0 +1,6 @@
1
+ import * as React from "react";
2
+ type PossibleRef<T> = React.Ref<T> | React.RefCallback<T> | null | undefined;
3
+ declare function composeRefs<T>(...refs: PossibleRef<T>[]): React.RefCallback<T>;
4
+ declare function useComposedRefs<T>(...refs: PossibleRef<T>[]): React.RefCallback<T>;
5
+ export { composeRefs, useComposedRefs };
6
+ //# sourceMappingURL=compose-refs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose-refs.d.ts","sourceRoot":"","sources":["../../../src/components/ui/compose-refs.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,KAAK,WAAW,CAAC,CAAC,IACd,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GACZ,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,GACpB,IAAI,GACJ,SAAS,CAAC;AAoBd,iBAAS,WAAW,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAMvE;AAMD,iBAAS,eAAe,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAG3E;AAED,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.composeRefs = composeRefs;
37
+ exports.useComposedRefs = useComposedRefs;
38
+ const React = __importStar(require("react"));
39
+ function setRef(ref, value) {
40
+ if (typeof ref === "function") {
41
+ ref(value);
42
+ }
43
+ else if (ref !== null && ref !== undefined) {
44
+ ref.current = value;
45
+ }
46
+ }
47
+ function composeRefs(...refs) {
48
+ return (node) => {
49
+ for (const ref of refs) {
50
+ setRef(ref, node);
51
+ }
52
+ };
53
+ }
54
+ function useComposedRefs(...refs) {
55
+ return React.useCallback(composeRefs(...refs), refs);
56
+ }
57
+ //# sourceMappingURL=compose-refs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose-refs.js","sourceRoot":"","sources":["../../../src/components/ui/compose-refs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDS,kCAAW;AAAE,0CAAe;AA3CrC,6CAA+B;AAY/B,SAAS,MAAM,CAAI,GAAmB,EAAE,KAAQ;IAC9C,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;QAC9B,GAAG,CAAC,KAAK,CAAC,CAAC;IACb,CAAC;SAAM,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QAC5C,GAAiC,CAAC,OAAO,GAAG,KAAK,CAAC;IACrD,CAAC;AACH,CAAC;AAQD,SAAS,WAAW,CAAI,GAAG,IAAsB;IAC/C,OAAO,CAAC,IAAI,EAAE,EAAE;QACd,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,IAAS,CAAC,CAAC;QACzB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAMD,SAAS,eAAe,CAAI,GAAG,IAAsB;IAEnD,OAAO,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;AACvD,CAAC"}
@@ -3,7 +3,9 @@ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
3
  declare function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
4
  declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
5
5
  declare function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
6
- declare function DropdownMenuContent({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
6
+ declare function DropdownMenuContent({ container, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content> & {
7
+ container?: Element | DocumentFragment | null;
8
+ }): import("react/jsx-runtime").JSX.Element;
7
9
  declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
8
10
  declare function DropdownMenuItem({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item>): import("react/jsx-runtime").JSX.Element;
9
11
  declare function DropdownMenuCheckboxItem({ checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dropdown-menu.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,qBAAqB,MAAM,+BAA+B,CAAA;AAEtE,iBAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,IAAI,CAAC,2CAEzD;AAED,iBAAS,kBAAkB,CAAC,EAC1B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,MAAM,CAAC,2CAE3D;AAED,iBAAS,mBAAmB,CAAC,EAC3B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,OAAO,CAAC,2CAO5D;AAED,iBAAS,mBAAmB,CAAC,EAC3B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,OAAO,CAAC,2CAS5D;AAED,iBAAS,iBAAiB,CAAC,EACzB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,KAAK,CAAC,2CAO1D;AAED,iBAAS,gBAAgB,CAAC,EACxB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,IAAI,CAAC,2CAOzD;AAED,iBAAS,wBAAwB,CAAC,EAChC,OAAO,EACP,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,YAAY,CAAC,2CAYjE;AAED,iBAAS,sBAAsB,CAAC,EAC9B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,UAAU,CAAC,2CAO/D;AAED,iBAAS,qBAAqB,CAAC,EAC7B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,SAAS,CAAC,2CAW9D;AAED,iBAAS,iBAAiB,CAAC,EACzB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,KAAK,CAAC,2CAO1D;AAED,iBAAS,qBAAqB,CAAC,EAC7B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,SAAS,CAAC,2CAO9D;AAED,iBAAS,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,2CAOhE;AAED,iBAAS,eAAe,CAAC,EACvB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,GAAG,CAAC,2CAOxD;AAED,iBAAS,sBAAsB,CAAC,EAC9B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,UAAU,CAAC,2CAU/D;AAED,iBAAS,sBAAsB,CAAC,EAC9B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,UAAU,CAAC,2CAO/D;AAED,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,GACvB,CAAA"}
1
+ {"version":3,"file":"dropdown-menu.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dropdown-menu.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,qBAAqB,MAAM,+BAA+B,CAAA;AAEtE,iBAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,IAAI,CAAC,2CAEzD;AAED,iBAAS,kBAAkB,CAAC,EAC1B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,MAAM,CAAC,2CAE3D;AAED,iBAAS,mBAAmB,CAAC,EAC3B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,OAAO,CAAC,2CAO5D;AAED,iBAAS,mBAAmB,CAAC,EAC3B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,OAAO,CAAC,GAAG;IAC9D,SAAS,CAAC,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAAC;CAC/C,2CASA;AAED,iBAAS,iBAAiB,CAAC,EACzB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,KAAK,CAAC,2CAO1D;AAED,iBAAS,gBAAgB,CAAC,EACxB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,IAAI,CAAC,2CAOzD;AAED,iBAAS,wBAAwB,CAAC,EAChC,OAAO,EACP,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,YAAY,CAAC,2CAYjE;AAED,iBAAS,sBAAsB,CAAC,EAC9B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,UAAU,CAAC,2CAO/D;AAED,iBAAS,qBAAqB,CAAC,EAC7B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,SAAS,CAAC,2CAW9D;AAED,iBAAS,iBAAiB,CAAC,EACzB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,KAAK,CAAC,2CAO1D;AAED,iBAAS,qBAAqB,CAAC,EAC7B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,SAAS,CAAC,2CAO9D;AAED,iBAAS,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,2CAOhE;AAED,iBAAS,eAAe,CAAC,EACvB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,GAAG,CAAC,2CAOxD;AAED,iBAAS,sBAAsB,CAAC,EAC9B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,UAAU,CAAC,2CAU/D;AAED,iBAAS,sBAAsB,CAAC,EAC9B,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,UAAU,CAAC,2CAO/D;AAED,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,GACvB,CAAA"}
@@ -76,8 +76,8 @@ function DropdownMenuTrigger(_a) {
76
76
  return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Trigger, Object.assign({ "data-slot": "dropdown-menu-trigger" }, props)));
77
77
  }
78
78
  function DropdownMenuContent(_a) {
79
- var props = __rest(_a, []);
80
- return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Portal, { children: (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Content, Object.assign({ "data-slot": "dropdown-menu-content" }, props)) }));
79
+ var { container } = _a, props = __rest(_a, ["container"]);
80
+ return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Portal, { container: container !== null && container !== void 0 ? container : undefined, children: (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Content, Object.assign({ "data-slot": "dropdown-menu-content" }, props)) }));
81
81
  }
82
82
  function DropdownMenuGroup(_a) {
83
83
  var props = __rest(_a, []);
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu.js","sourceRoot":"","sources":["../../../src/components/ui/dropdown-menu.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dropdown-menu.js","sourceRoot":"","sources":["../../../src/components/ui/dropdown-menu.tsx"],"names":[],"mappings":"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"}
@@ -29,4 +29,6 @@ export * from './textarea';
29
29
  export * from './tooltip';
30
30
  export * from './toast';
31
31
  export * from './VideoPlayer';
32
+ export * from './media-player';
33
+ export * from './ConfiguredMediaPlayer';
32
34
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC"}
@@ -45,4 +45,6 @@ __exportStar(require("./textarea"), exports);
45
45
  __exportStar(require("./tooltip"), exports);
46
46
  __exportStar(require("./toast"), exports);
47
47
  __exportStar(require("./VideoPlayer"), exports);
48
+ __exportStar(require("./media-player"), exports);
49
+ __exportStar(require("./ConfiguredMediaPlayer"), exports);
48
50
  //# sourceMappingURL=index.js.map