@geekapps/silo-elements-nextjs 0.0.1 → 0.0.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.
- package/dist/FileUploader.d.ts +7 -3
- package/dist/FileUploader.js +279 -38
- package/dist/FileUploader.js.map +1 -1
- package/dist/ImageUploader.d.ts +7 -3
- package/dist/ImageUploader.js +329 -66
- package/dist/ImageUploader.js.map +1 -1
- package/dist/MediaUploader.d.ts +7 -3
- package/dist/MediaUploader.js +654 -43
- package/dist/MediaUploader.js.map +1 -1
- package/dist/VideoPlayer.d.ts +20 -18
- package/dist/VideoPlayer.js +980 -675
- package/dist/VideoPlayer.js.map +1 -1
- package/dist/VideoUploader.d.ts +7 -3
- package/dist/VideoUploader.js +295 -43
- package/dist/VideoUploader.js.map +1 -1
- package/dist/components/DropZone.d.ts +8 -5
- package/dist/components/DropZone.js +134 -49
- package/dist/components/DropZone.js.map +1 -1
- package/dist/components/ProgressBar.d.ts +6 -4
- package/dist/components/ProgressBar.js +35 -15
- package/dist/components/ProgressBar.js.map +1 -1
- package/dist/index.d.ts +12 -12
- package/dist/index.js +1696 -10
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +12 -10
- package/dist/types.js +2 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/format.d.ts +4 -3
- package/dist/utils/format.js +19 -26
- package/dist/utils/format.js.map +1 -1
- package/dist/utils/theme.d.ts +8 -5
- package/dist/utils/theme.js +34 -30
- package/dist/utils/theme.js.map +1 -1
- package/package.json +4 -3
- package/dist/FileUploader.d.ts.map +0 -1
- package/dist/ImageUploader.d.ts.map +0 -1
- package/dist/MediaUploader.d.ts.map +0 -1
- package/dist/VideoPlayer.d.ts.map +0 -1
- package/dist/VideoUploader.d.ts.map +0 -1
- package/dist/components/DropZone.d.ts.map +0 -1
- package/dist/components/ProgressBar.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/utils/format.d.ts.map +0 -1
- package/dist/utils/theme.d.ts.map +0 -1
package/dist/VideoPlayer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VideoPlayer.js","sourceRoot":"","sources":["../src/VideoPlayer.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../src/VideoPlayer.tsx"],"names":[],"mappings":";;;;AAuFA,IAAM,YAAA,GAA8B;AAAA,EAClC,EAAA,EAAI,MAAA;AAAA,EACJ,KAAA,EAAO,MAAA;AAAA,EACP,IAAA,EAAM;AACR,CAAA;AAEO,SAAS,QAAQ,MAAA,EAAsB;AAC5C,EAAA,OAAO,IAAA;AACT;AAEO,SAAS,OAAO,MAAA,EAAqB;AAC1C,EAAA,OAAO,IAAA;AACT;AAEO,SAAS,UAAU,MAAA,EAAwB;AAChD,EAAA,OAAO,IAAA;AACT;AAEO,SAAS,SAAS,MAAA,EAAuB;AAC9C,EAAA,OAAO,IAAA;AACT;AAEO,SAAS,WAAW,MAAA,EAAyB;AAClD,EAAA,OAAO,IAAA;AACT;AAEO,SAAS,gBAAgB,MAAA,EAA8B;AAC5D,EAAA,OAAO,IAAA;AACT;AAEO,SAAS,KAAA,CAAM;AAAA,EACpB,KAAA;AAAA,EACA,WAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,gBAAA,GAAmB,IAAA;AAAA,EACnB,aAAA,GAAgB;AAClB,CAAA,EAAe;AACb,EAAA,MAAM,MAAA,GAAS,QAAQ,MAAM,kBAAA,CAAmB,QAAQ,CAAA,EAAG,CAAC,QAAQ,CAAC,CAAA;AAErE,EAAA,MAAM,kBAAA,GAAqB,QAAQ,MAAM;AACvC,IAAA,MAAM,QAAQ,MAAA,CAAO,OAAA,CAAQ,UAAU,CAAC,MAAA,KAAW,OAAO,OAAO,CAAA;AACjE,IAAA,OAAO,KAAA,IAAS,IAAI,KAAA,GAAQ,CAAA;AAAA,EAC9B,CAAA,EAAG,CAAC,MAAA,CAAO,OAAO,CAAC,CAAA;AAEnB,EAAA,MAAM,mBAAA,GAAsB,QAAQ,MAAM;AACxC,IAAA,MAAM,QAAQ,MAAA,CAAO,SAAA,CAAU,KAAK,CAAC,QAAA,KAAa,SAAS,OAAO,CAAA;AAClE,IAAA,OAAO,OAAO,OAAA,IAAW,KAAA;AAAA,EAC3B,CAAA,EAAG,CAAC,MAAA,CAAO,SAAS,CAAC,CAAA;AAErB,EAAA,MAAM,YAAA,GAAe,OAA8B,IAAI,CAAA;AACvD,EAAA,MAAM,SAAA,GAAY,OAA8B,IAAI,CAAA;AACpD,EAAA,MAAM,SAAA,GAAY,OAA8B,IAAI,CAAA;AACpD,EAAA,MAAM,QAAA,GAAW,OAAgC,IAAI,CAAA;AACrD,EAAA,MAAM,WAAA,GAAc,OAA8B,IAAI,CAAA;AAEtD,EAAA,MAAM,MAAA,GAAS,OAAY,IAAI,CAAA;AAC/B,EAAA,MAAM,OAAA,GAAU,OAAY,IAAI,CAAA;AAChC,EAAA,MAAM,YAAA,GAAe,OAAsB,IAAI,CAAA;AAE/C,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,SAAS,kBAAkB,CAAA;AACjE,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,IAAI,QAAA,CAA0B,CAAC,YAAY,CAAC,CAAA;AAC1E,EAAA,MAAM,CAAC,eAAA,EAAiB,kBAAkB,CAAA,GAAI,SAAS,MAAM,CAAA;AAC7D,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,QAAA,CAA0C,EAAE,CAAA;AAClF,EAAA,MAAM,CAAC,aAAA,EAAe,gBAAgB,CAAA,GAAI,SAAiB,CAAC,CAAA;AAC5D,EAAA,MAAM,CAAC,QAAA,EAAU,WAAW,CAAA,GAAI,SAAkD,IAAI,CAAA;AAEtF,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,SAAS,mBAAmB,CAAA;AACpE,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAI,QAAA;AAAA,IAC1C;AAAC,GACH;AAEA,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAIpB,IAAI,CAAA;AAEd,EAAA,MAAM,CAAC,QAAA,EAAU,WAAW,CAAA,GAAI,SAAS,CAAC,CAAA;AAC1C,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,SAAS,CAAC,CAAA;AAChD,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,SAAS,CAAC,CAAA;AAElD,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,SAAS,KAAK,CAAA;AAChD,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,SAAS,IAAI,CAAA;AAC/C,EAAA,MAAM,CAAC,eAAA,EAAiB,kBAAkB,CAAA,GAAI,SAAS,IAAI,CAAA;AAC3D,EAAA,MAAM,CAAC,MAAA,EAAQ,SAAS,CAAA,GAAI,SAAS,aAAa,CAAA;AAClD,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAS,KAAK,CAAA;AAC5C,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,SAAS,KAAK,CAAA;AACtD,EAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAI,SAAwB,IAAI,CAAA;AAEtD,EAAA,MAAM,YAAA,GAAe,OAAO,OAAA,CAAQ,WAAW,KAAK,MAAA,CAAO,OAAA,CAAQ,CAAC,CAAA,IAAK,IAAA;AAEzE,EAAA,MAAM,eAAA,GAAkB,QAAA,GAAY,WAAA,GAAc,QAAA,GAAY,GAAA,GAAM,CAAA;AACpE,EAAA,MAAM,eAAA,GAAkB,QAAA,GAAY,YAAA,GAAe,QAAA,GAAY,GAAA,GAAM,CAAA;AAErE,EAAA,MAAM,mBAAA,GAAsB,YAAY,MAAM;AAC5C,IAAA,IAAI,OAAO,OAAA,EAAS;AAClB,MAAA,MAAA,CAAO,QAAQ,OAAA,EAAQ;AACvB,MAAA,MAAA,CAAO,OAAA,GAAU,IAAA;AAAA,IACnB;AAEA,IAAA,IAAI,QAAQ,OAAA,EAAS;AACnB,MAAA,OAAA,CAAQ,QAAQ,KAAA,EAAM;AACtB,MAAA,OAAA,CAAQ,OAAA,GAAU,IAAA;AAAA,IACpB;AAAA,EACF,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,iBAAA,GAAoB,WAAA,CAAY,CAAC,IAAA,KAAiB;AACtD,IAAA,MAAM,QAAQ,QAAA,CAAS,OAAA;AACvB,IAAA,IAAI,CAAC,KAAA,EAAO;AAEZ,IAAA,KAAA,CAAM,KAAK,KAAA,CAAM,UAAU,CAAA,CAAE,OAAA,CAAQ,CAAC,KAAA,KAAU;AAC9C,MAAA,KAAA,CAAM,OACJ,IAAA,KAAS,KAAA,IAAS,KAAA,CAAM,QAAA,KAAa,OAAO,SAAA,GAAY,UAAA;AAAA,IAC5D,CAAC,CAAA;AAAA,EACH,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,uBAAA,GAA0B,YAAY,MAAM;AAChD,IAAA,kBAAA,CAAmB,IAAI,CAAA;AAEvB,IAAA,IAAI,aAAa,OAAA,EAAS;AACxB,MAAA,MAAA,CAAO,YAAA,CAAa,aAAa,OAAO,CAAA;AAAA,IAC1C;AAEA,IAAA,MAAM,QAAQ,QAAA,CAAS,OAAA;AAEvB,IAAA,IAAI,gBAAA,IAAoB,KAAA,IAAS,CAAC,KAAA,CAAM,MAAA,EAAQ;AAC9C,MAAA,YAAA,CAAa,OAAA,GAAU,MAAA,CAAO,UAAA,CAAW,MAAM;AAC7C,QAAA,kBAAA,CAAmB,KAAK,CAAA;AAAA,MAC1B,GAAG,IAAI,CAAA;AAAA,IACT;AAAA,EACF,CAAA,EAAG,CAAC,gBAAgB,CAAC,CAAA;AAErB,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,CAAC,aAAa,OAAA,EAAS;AAE3B,IAAA,IAAA,CAAK,MAAA;AAAA,MACH,YAAA,CAAa,OAAA;AAAA,MACb;AAAA,QACE,OAAA,EAAS,CAAA;AAAA,QACT,CAAA,EAAG,EAAA;AAAA,QACH,KAAA,EAAO,KAAA;AAAA,QACP,MAAA,EAAQ;AAAA,OACV;AAAA,MACA;AAAA,QACE,OAAA,EAAS,CAAA;AAAA,QACT,CAAA,EAAG,CAAA;AAAA,QACH,KAAA,EAAO,CAAA;AAAA,QACP,MAAA,EAAQ,WAAA;AAAA,QACR,QAAA,EAAU,IAAA;AAAA,QACV,IAAA,EAAM;AAAA;AACR,KACF;AAAA,EACF,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,CAAC,UAAU,OAAA,EAAS;AAExB,IAAA,IAAA,CAAK,EAAA,CAAG,UAAU,OAAA,EAAS;AAAA,MACzB,OAAA,EAAS,kBAAkB,CAAA,GAAI,CAAA;AAAA,MAC/B,CAAA,EAAG,kBAAkB,CAAA,GAAI,EAAA;AAAA,MACzB,QAAA,EAAU,IAAA;AAAA,MACV,IAAA,EAAM;AAAA,KACP,CAAA;AAAA,EACH,CAAA,EAAG,CAAC,eAAe,CAAC,CAAA;AAEpB,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,WAAA,IAAe,MAAA,CAAO,OAAA,CAAQ,MAAA,EAAQ;AACxC,MAAA,cAAA,CAAe,kBAAkB,CAAA;AAAA,IACnC;AAAA,EACF,GAAG,CAAC,WAAA,EAAa,OAAO,OAAA,CAAQ,MAAA,EAAQ,kBAAkB,CAAC,CAAA;AAE3D,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IACE,YAAA,KAAiB,KAAA,IACjB,CAAC,MAAA,CAAO,SAAA,CAAU,IAAA,CAAK,CAAC,QAAA,KAAa,QAAA,CAAS,OAAA,KAAY,YAAY,CAAA,EACtE;AACA,MAAA,eAAA,CAAgB,mBAAmB,CAAA;AAAA,IACrC;AAAA,EACF,GAAG,CAAC,YAAA,EAAc,MAAA,CAAO,SAAA,EAAW,mBAAmB,CAAC,CAAA;AAExD,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,MAAM,QAAQ,QAAA,CAAS,OAAA;AACvB,IAAA,IAAI,CAAC,KAAA,EAAO;AAEZ,IAAA,MAAM,WAAW,MAAM;AACrB,MAAA,cAAA,CAAe,KAAA,CAAM,eAAe,CAAC,CAAA;AAErC,MAAA,IAAI,KAAA,CAAM,QAAA,CAAS,MAAA,GAAS,CAAA,EAAG;AAC7B,QAAA,eAAA,CAAgB,MAAM,QAAA,CAAS,GAAA,CAAI,MAAM,QAAA,CAAS,MAAA,GAAS,CAAC,CAAC,CAAA;AAAA,MAC/D;AAAA,IACF,CAAA;AAEA,IAAA,MAAM,eAAe,MAAM;AACzB,MAAA,WAAA,CAAY,OAAO,QAAA,CAAS,KAAA,CAAM,QAAQ,CAAA,GAAI,KAAA,CAAM,WAAW,CAAC,CAAA;AAChE,MAAA,iBAAA,CAAkB,YAAY,CAAA;AAAA,IAChC,CAAA;AAEA,IAAA,MAAM,SAAS,MAAM;AACnB,MAAA,YAAA,CAAa,IAAI,CAAA;AACjB,MAAA,uBAAA,EAAwB;AAAA,IAC1B,CAAA;AAEA,IAAA,MAAM,UAAU,MAAM;AACpB,MAAA,YAAA,CAAa,KAAK,CAAA;AAClB,MAAA,kBAAA,CAAmB,IAAI,CAAA;AAAA,IACzB,CAAA;AAEA,IAAA,MAAM,SAAA,GAAY,MAAM,YAAA,CAAa,IAAI,CAAA;AACzC,IAAA,MAAM,SAAA,GAAY,MAAM,YAAA,CAAa,KAAK,CAAA;AAC1C,IAAA,MAAM,OAAA,GAAU,MAAM,kBAAA,CAAmB,IAAI,CAAA;AAE7C,IAAA,KAAA,CAAM,gBAAA,CAAiB,cAAc,QAAQ,CAAA;AAC7C,IAAA,KAAA,CAAM,gBAAA,CAAiB,YAAY,QAAQ,CAAA;AAC3C,IAAA,KAAA,CAAM,gBAAA,CAAiB,kBAAkB,YAAY,CAAA;AACrD,IAAA,KAAA,CAAM,gBAAA,CAAiB,kBAAkB,YAAY,CAAA;AACrD,IAAA,KAAA,CAAM,gBAAA,CAAiB,QAAQ,MAAM,CAAA;AACrC,IAAA,KAAA,CAAM,gBAAA,CAAiB,SAAS,OAAO,CAAA;AACvC,IAAA,KAAA,CAAM,gBAAA,CAAiB,WAAW,SAAS,CAAA;AAC3C,IAAA,KAAA,CAAM,gBAAA,CAAiB,WAAW,SAAS,CAAA;AAC3C,IAAA,KAAA,CAAM,gBAAA,CAAiB,SAAS,OAAO,CAAA;AAEvC,IAAA,OAAO,MAAM;AACX,MAAA,KAAA,CAAM,mBAAA,CAAoB,cAAc,QAAQ,CAAA;AAChD,MAAA,KAAA,CAAM,mBAAA,CAAoB,YAAY,QAAQ,CAAA;AAC9C,MAAA,KAAA,CAAM,mBAAA,CAAoB,kBAAkB,YAAY,CAAA;AACxD,MAAA,KAAA,CAAM,mBAAA,CAAoB,kBAAkB,YAAY,CAAA;AACxD,MAAA,KAAA,CAAM,mBAAA,CAAoB,QAAQ,MAAM,CAAA;AACxC,MAAA,KAAA,CAAM,mBAAA,CAAoB,SAAS,OAAO,CAAA;AAC1C,MAAA,KAAA,CAAM,mBAAA,CAAoB,WAAW,SAAS,CAAA;AAC9C,MAAA,KAAA,CAAM,mBAAA,CAAoB,WAAW,SAAS,CAAA;AAC9C,MAAA,KAAA,CAAM,mBAAA,CAAoB,SAAS,OAAO,CAAA;AAAA,IAC5C,CAAA;AAAA,EACF,CAAA,EAAG,CAAC,iBAAA,EAAmB,YAAA,EAAc,uBAAuB,CAAC,CAAA;AAE7D,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,MAAM,QAAQ,QAAA,CAAS,OAAA;AACvB,IAAA,IAAI,CAAC,KAAA,EAAO;AAEZ,IAAA,KAAA,CAAM,MAAA,GAAS,MAAA;AACf,IAAA,KAAA,CAAM,KAAA,GAAQ,WAAW,MAAA,KAAW,CAAA;AAAA,EACtC,CAAA,EAAG,CAAC,MAAA,EAAQ,OAAO,CAAC,CAAA;AAEpB,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,iBAAA,CAAkB,YAAY,CAAA;AAAA,EAChC,CAAA,EAAG,CAAC,YAAA,EAAc,iBAAiB,CAAC,CAAA;AAEpC,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,MAAM,qBAAqB,MAAM;AAC/B,MAAA,eAAA,CAAgB,OAAA,CAAQ,QAAA,CAAS,iBAAiB,CAAC,CAAA;AAAA,IACrD,CAAA;AAEA,IAAA,QAAA,CAAS,gBAAA,CAAiB,oBAAoB,kBAAkB,CAAA;AAEhE,IAAA,OAAO,MAAM;AACX,MAAA,QAAA,CAAS,mBAAA,CAAoB,oBAAoB,kBAAkB,CAAA;AAAA,IACrE,CAAA;AAAA,EACF,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,SAAA,GAAY,KAAA;AAEhB,IAAA,eAAe,cAAA,GAAiB;AAC9B,MAAA,IAAI,CAAC,OAAO,UAAA,EAAY;AACtB,QAAA,iBAAA,CAAkB,EAAE,CAAA;AACpB,QAAA;AAAA,MACF;AAEA,MAAA,IAAI,MAAA,CAAO,UAAA,CAAW,MAAA,CAAO,MAAA,GAAS,CAAA,EAAG;AACvC,QAAA,iBAAA,CAAkB,MAAA,CAAO,WAAW,MAAM,CAAA;AAC1C,QAAA;AAAA,MACF;AAEA,MAAA,IAAI,CAAC,MAAA,CAAO,UAAA,CAAW,GAAA,EAAK;AAC1B,QAAA,iBAAA,CAAkB,EAAE,CAAA;AACpB,QAAA;AAAA,MACF;AAEA,MAAA,IAAI;AACF,QAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,MAAA,CAAO,WAAW,GAAG,CAAA;AAElD,QAAA,IAAI,CAAC,SAAS,EAAA,EAAI;AAChB,UAAA,MAAM,IAAI,MAAM,sBAAsB,CAAA;AAAA,QACxC;AAEA,QAAA,MAAM,IAAA,GAAO,MAAM,QAAA,CAAS,IAAA,EAAK;AACjC,QAAA,MAAM,IAAA,GAAO,kBAAA;AAAA,UACX,IAAA;AAAA,UACA,IAAI,IAAI,MAAA,CAAO,UAAA,CAAW,KAAK,MAAA,CAAO,QAAA,CAAS,IAAI,CAAA,CAAE;AAAA,SACvD;AAEA,QAAA,IAAI,CAAC,SAAA,EAAW;AACd,UAAA,iBAAA,CAAkB,IAAI,CAAA;AAAA,QACxB;AAAA,MACF,CAAA,CAAA,MAAQ;AACN,QAAA,IAAI,CAAC,SAAA,IAAa,MAAA,CAAO,UAAA,CAAW,aAAA,EAAe;AACjD,UAAA,iBAAA,CAAkB;AAAA,YAChB;AAAA,cACE,KAAA,EAAO,CAAA;AAAA,cACP,KAAK,MAAA,CAAO,gBAAA;AAAA,cACZ,KAAA,EAAO,OAAO,UAAA,CAAW,aAAA;AAAA,cACzB,CAAA,EAAG,MAAA,CAAO,UAAA,CAAW,KAAA,IAAS,GAAA;AAAA,cAC9B,CAAA,EAAG,MAAA,CAAO,UAAA,CAAW,MAAA,IAAU;AAAA;AACjC,WACD,CAAA;AAAA,QACH;AAAA,MACF;AAAA,IACF;AAEA,IAAA,cAAA,EAAe;AAEf,IAAA,OAAO,MAAM;AACX,MAAA,SAAA,GAAY,IAAA;AAAA,IACd,CAAA;AAAA,EACF,CAAA,EAAG,CAAC,MAAA,CAAO,UAAU,CAAC,CAAA;AAEtB,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,MAAM,QAAQ,QAAA,CAAS,OAAA;AACvB,IAAA,IAAI,SAAA,GAAY,KAAA;AAEhB,IAAA,IAAI,CAAC,KAAA,IAAS,CAAC,YAAA,EAAc;AAC3B,MAAA;AAAA,IACF;AAEA,IAAA,mBAAA,EAAoB;AAEpB,IAAA,QAAA,CAAS,IAAI,CAAA;AACb,IAAA,YAAA,CAAa,IAAI,CAAA;AACjB,IAAA,cAAA,CAAe,CAAC,CAAA;AAChB,IAAA,eAAA,CAAgB,CAAC,CAAA;AACjB,IAAA,WAAA,CAAY,CAAC,CAAA;AACb,IAAA,kBAAA,CAAmB,MAAM,CAAA;AACzB,IAAA,YAAA,CAAa,CAAC,YAAY,CAAC,CAAA;AAC3B,IAAA,cAAA,CAAe,EAAE,CAAA;AACjB,IAAA,gBAAA,CAAiB,CAAC,CAAA;AAClB,IAAA,WAAA,CAAY,IAAI,CAAA;AAEhB,IAAA,KAAA,CAAM,KAAA,EAAM;AACZ,IAAA,KAAA,CAAM,gBAAgB,KAAK,CAAA;AAC3B,IAAA,KAAA,CAAM,IAAA,EAAK;AAEX,IAAA,MAAM,UAAA,GAAa,gBAAgB,YAAY,CAAA;AAE/C,IAAA,IAAI,eAAe,MAAA,EAAQ;AACzB,MAAA,KAAA,CAAM,YAAY;AAChB,QAAA,IAAI;AACF,UAAA,MAAM,UAAA,GAAa,MAAM,OAAO,QAAQ,CAAA;AACxC,UAAA,IAAI,SAAA,EAAW;AAEf,UAAA,MAAM,MAAA,GAAS,UAAA;AACf,UAAA,MAAM,IAAA,GAAO,MAAA,CAAO,WAAA,EAAY,CAAE,MAAA,EAAO;AACzC,UAAA,OAAA,CAAQ,OAAA,GAAU,IAAA;AAElB,UAAA,IAAA,CAAK,cAAA,CAAe;AAAA,YAClB,SAAA,EAAW;AAAA,cACT,GAAA,EAAK;AAAA,gBACH,iBAAA,EAAmB;AAAA,kBACjB,KAAA,EAAO;AAAA;AACT;AACF;AACF,WACD,CAAA;AAED,UAAA,IAAA,CAAK,EAAA,CAAG,MAAA,CAAO,WAAA,CAAY,MAAA,CAAO,oBAAoB,MAAM;AAC1D,YAAA,MAAM,QAAA,GAAW,IAAA,CAAK,qBAAA,CAAsB,OAAO,KAAK,EAAC;AAEzD,YAAA,YAAA,CAAa;AAAA,cACX,YAAA;AAAA,cACA,GAAG,QAAA,CAAS,GAAA,CAAI,CAAC,MAAW,KAAA,MAAmB;AAAA,gBAC7C,EAAA,EAAI,QAAQ,KAAK,CAAA,CAAA;AAAA,gBACjB,KAAA,EAAO,IAAA,CAAK,MAAA,GACR,CAAA,EAAG,KAAK,MAAM,CAAA,CAAA,CAAA,GACd,CAAA,EAAG,IAAA,CAAK,KAAA,CAAA,CAAO,IAAA,CAAK,OAAA,IAAW,CAAA,IAAK,GAAI,CAAC,CAAA,KAAA,CAAA;AAAA,gBAC7C,IAAA,EAAM,MAAA;AAAA,gBACN;AAAA,eACF,CAAE;AAAA,aACH,CAAA;AAED,YAAA,YAAA,CAAa,KAAK,CAAA;AAAA,UACpB,CAAC,CAAA;AAED,UAAA,IAAA,CAAK,EAAA,CAAG,MAAA,CAAO,WAAA,CAAY,MAAA,CAAO,OAAO,MAAM;AAC7C,YAAA,QAAA,CAAS,uDAAiD,CAAA;AAC1D,YAAA,YAAA,CAAa,KAAK,CAAA;AAAA,UACpB,CAAC,CAAA;AAED,UAAA,IAAA,CAAK,UAAA,CAAW,KAAA,EAAO,YAAA,CAAa,GAAA,EAAK,KAAK,CAAA;AAAA,QAChD,CAAA,CAAA,MAAQ;AACN,UAAA,IAAI,CAAC,SAAA,EAAW;AACd,YAAA,QAAA,CAAS,qDAA+C,CAAA;AACxD,YAAA,YAAA,CAAa,KAAK,CAAA;AAAA,UACpB;AAAA,QACF;AAAA,MACF,CAAA,GAAG;AAEH,MAAA,OAAO,MAAM;AACX,QAAA,SAAA,GAAY,IAAA;AACZ,QAAA,mBAAA,EAAoB;AAAA,MACtB,CAAA;AAAA,IACF;AAEA,IAAA,IAAI,eAAe,KAAA,EAAO;AACxB,MAAA,KAAA,CAAM,YAAY;AAChB,QAAA,IAAI;AACF,UAAA,MAAM,SAAA,GAAY,MAAM,OAAO,QAAQ,CAAA;AACvC,UAAA,IAAI,SAAA,EAAW;AAEf,UAAA,MAAM,MAAM,SAAA,CAAU,OAAA;AAEtB,UAAA,IAAI,GAAA,CAAI,aAAY,EAAG;AACrB,YAAA,MAAM,GAAA,GAAM,IAAI,GAAA,CAAI;AAAA,cAClB,YAAA,EAAc,IAAA;AAAA,cACd,eAAA,EAAiB,EAAA;AAAA,cACjB,kBAAA,EAAoB,EAAA;AAAA,cACpB,aAAA,EAAe,KAAK,GAAA,GAAO;AAAA,aAC5B,CAAA;AAED,YAAA,MAAA,CAAO,OAAA,GAAU,GAAA;AAEjB,YAAA,GAAA,CAAI,UAAA,CAAW,aAAa,GAAG,CAAA;AAC/B,YAAA,GAAA,CAAI,YAAY,KAAK,CAAA;AAErB,YAAA,GAAA,CAAI,GAAG,GAAA,CAAI,MAAA,CAAO,eAAA,EAAiB,CAAC,GAAQ,IAAA,KAAc;AACxD,cAAA,MAAM,MAAA,GAAS,IAAA,CAAK,MAAA,IAAU,GAAA,CAAI,UAAU,EAAC;AAC7C,cAAA,YAAA,CAAa;AAAA,gBACX,YAAA;AAAA,gBACA,GAAG,MAAA,CAAO,GAAA,CAAI,CAAC,OAAY,KAAA,MAAmB;AAAA,kBAC5C,EAAA,EAAI,OAAO,KAAK,CAAA,CAAA;AAAA,kBAChB,KAAA,EAAO,KAAA,CAAM,MAAA,GACT,CAAA,EAAG,MAAM,MAAM,CAAA,CAAA,CAAA,GACf,CAAA,EAAG,IAAA,CAAK,KAAA,CAAA,CAAO,KAAA,CAAM,OAAA,IAAW,CAAA,IAAK,GAAI,CAAC,CAAA,KAAA,CAAA;AAAA,kBAC9C,IAAA,EAAM,KAAA;AAAA,kBACN;AAAA,iBACF,CAAE;AAAA,eACH,CAAA;AAED,cAAA,MAAM,MAAA,GAAgB,GAAA,CAAI,WAAA,IAAe,EAAC;AAC1C,cAAA,IAAI,MAAA,CAAO,SAAS,CAAA,EAAG;AACrB,gBAAA,cAAA,CAAe,MAAA,CAAO,GAAA,CAAI,CAAC,CAAA,EAAQ,CAAA,MAAe;AAAA,kBAChD,EAAA,EAAI,CAAA;AAAA,kBACJ,OAAO,CAAA,CAAE,IAAA,IAAQ,EAAE,IAAA,IAAQ,CAAA,MAAA,EAAS,IAAI,CAAC,CAAA;AAAA,kBACzC,CAAC,CAAA;AACH,gBAAA,gBAAA,CAAiB,GAAA,CAAI,cAAc,CAAC,CAAA;AAAA,cACtC;AAEA,cAAA,YAAA,CAAa,KAAK,CAAA;AAAA,YACpB,CAAC,CAAA;AAED,YAAA,GAAA,CAAI,GAAG,GAAA,CAAI,MAAA,CAAO,oBAAA,EAAsB,CAAC,GAAQ,IAAA,KAAc;AAC7D,cAAA,MAAM,MAAA,GAAgB,IAAA,CAAK,WAAA,IAAe,EAAC;AAC3C,cAAA,IAAI,MAAA,CAAO,SAAS,CAAA,EAAG;AACrB,gBAAA,cAAA,CAAe,MAAA,CAAO,GAAA,CAAI,CAAC,CAAA,EAAQ,CAAA,MAAe;AAAA,kBAChD,EAAA,EAAI,CAAA;AAAA,kBACJ,OAAO,CAAA,CAAE,IAAA,IAAQ,EAAE,IAAA,IAAQ,CAAA,MAAA,EAAS,IAAI,CAAC,CAAA;AAAA,kBACzC,CAAC,CAAA;AAAA,cACL;AAAA,YACF,CAAC,CAAA;AAED,YAAA,GAAA,CAAI,GAAG,GAAA,CAAI,MAAA,CAAO,KAAA,EAAO,CAAC,GAAQ,IAAA,KAAc;AAC9C,cAAA,IAAI,CAAC,KAAK,KAAA,EAAO;AAEjB,cAAA,IAAI,IAAA,CAAK,IAAA,KAAS,GAAA,CAAI,UAAA,CAAW,WAAA,EAAa;AAC5C,gBAAA,GAAA,CAAI,iBAAA,EAAkB;AACtB,gBAAA;AAAA,cACF;AAEA,cAAA,QAAA,CAAS,iDAA2C,CAAA;AACpD,cAAA,YAAA,CAAa,KAAK,CAAA;AAAA,YACpB,CAAC,CAAA;AAED,YAAA;AAAA,UACF;AAEA,UAAA,IAAI,KAAA,CAAM,WAAA,CAAY,+BAA+B,CAAA,EAAG;AACtD,YAAA,KAAA,CAAM,MAAM,YAAA,CAAa,GAAA;AACzB,YAAA,KAAA,CAAM,IAAA,EAAK;AACX,YAAA,YAAA,CAAa,KAAK,CAAA;AAClB,YAAA;AAAA,UACF;AAEA,UAAA,QAAA,CAAS,oCAAiC,CAAA;AAC1C,UAAA,YAAA,CAAa,KAAK,CAAA;AAAA,QACpB,CAAA,CAAA,MAAQ;AACN,UAAA,IAAI,CAAC,SAAA,EAAW;AACd,YAAA,QAAA,CAAS,+CAAyC,CAAA;AAClD,YAAA,YAAA,CAAa,KAAK,CAAA;AAAA,UACpB;AAAA,QACF;AAAA,MACF,CAAA,GAAG;AAEH,MAAA,OAAO,MAAM;AACX,QAAA,SAAA,GAAY,IAAA;AACZ,QAAA,mBAAA,EAAoB;AAAA,MACtB,CAAA;AAAA,IACF;AAEA,IAAA,KAAA,CAAM,MAAM,YAAA,CAAa,GAAA;AACzB,IAAA,KAAA,CAAM,IAAA,EAAK;AACX,IAAA,YAAA,CAAa,KAAK,CAAA;AAElB,IAAA,OAAO,MAAM;AACX,MAAA,SAAA,GAAY,IAAA;AACZ,MAAA,KAAA,CAAM,gBAAgB,KAAK,CAAA;AAC3B,MAAA,KAAA,CAAM,IAAA,EAAK;AAAA,IACb,CAAA;AAAA,EACF,CAAA,EAAG,CAAC,YAAA,EAAc,mBAAmB,CAAC,CAAA;AAEtC,EAAA,MAAM,UAAA,GAAa,YAAY,YAAY;AACzC,IAAA,MAAM,QAAQ,QAAA,CAAS,OAAA;AACvB,IAAA,IAAI,CAAC,KAAA,EAAO;AAEZ,IAAA,IAAI;AACF,MAAA,IAAI,MAAM,MAAA,EAAQ;AAChB,QAAA,MAAM,MAAM,IAAA,EAAK;AAAA,MACnB,CAAA,MAAO;AACL,QAAA,KAAA,CAAM,KAAA,EAAM;AAAA,MACd;AAAA,IACF,CAAA,CAAA,MAAQ;AACN,MAAA,QAAA,CAAS,wDAA+C,CAAA;AAAA,IAC1D;AAAA,EACF,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,YAAA,GAAe,WAAA,CAAY,CAAC,OAAA,KAAoB;AACpD,IAAA,MAAM,QAAQ,QAAA,CAAS,OAAA;AACvB,IAAA,IAAI,CAAC,KAAA,EAAO;AAEZ,IAAA,KAAA,CAAM,cAAc,IAAA,CAAK,GAAA;AAAA,MACvB,CAAA;AAAA,MACA,KAAK,GAAA,CAAI,KAAA,CAAM,cAAc,OAAA,EAAS,KAAA,CAAM,YAAY,CAAC;AAAA,KAC3D;AAAA,EACF,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,gBAAA,GAAmB,YAAY,YAAY;AAC/C,IAAA,MAAM,SAAS,SAAA,CAAU,OAAA;AACzB,IAAA,IAAI,CAAC,MAAA,EAAQ;AAEb,IAAA,IAAI;AACF,MAAA,IAAI,CAAC,SAAS,iBAAA,EAAmB;AAC/B,QAAA,MAAM,OAAO,iBAAA,EAAkB;AAAA,MACjC,CAAA,MAAO;AACL,QAAA,MAAM,SAAS,cAAA,EAAe;AAAA,MAChC;AAAA,IACF,CAAA,CAAA,MAAQ;AACN,MAAA,QAAA,CAAS,mDAA6C,CAAA;AAAA,IACxD;AAAA,EACF,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,WAAA,GAAc,WAAA,CAAY,CAAC,OAAA,KAAoB;AACnD,IAAA,gBAAA,CAAiB,OAAO,CAAA;AACxB,IAAA,WAAA,CAAY,IAAI,CAAA;AAChB,IAAA,IAAI,OAAO,OAAA,EAAS;AAClB,MAAA,MAAA,CAAO,QAAQ,UAAA,GAAa,OAAA;AAAA,IAC9B;AAAA,EACF,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,aAAA,GAAgB,WAAA;AAAA,IACpB,CAAC,SAAA,KAAsB;AACrB,MAAA,MAAM,SAAS,SAAA,CAAU,IAAA,CAAK,CAAC,OAAA,KAAY,OAAA,CAAQ,OAAO,SAAS,CAAA;AACnE,MAAA,IAAI,CAAC,MAAA,EAAQ;AAEb,MAAA,kBAAA,CAAmB,SAAS,CAAA;AAC5B,MAAA,WAAA,CAAY,IAAI,CAAA;AAEhB,MAAA,IAAI,MAAA,CAAO,SAAS,MAAA,EAAQ;AAC1B,QAAA,IAAI,OAAO,OAAA,EAAS;AAClB,UAAA,MAAA,CAAO,QAAQ,YAAA,GAAe,EAAA;AAAA,QAChC;AAEA,QAAA,IAAI,QAAQ,OAAA,EAAS;AACnB,UAAA,OAAA,CAAQ,QAAQ,cAAA,CAAe;AAAA,YAC7B,SAAA,EAAW;AAAA,cACT,GAAA,EAAK;AAAA,gBACH,iBAAA,EAAmB;AAAA,kBACjB,KAAA,EAAO;AAAA;AACT;AACF;AACF,WACD,CAAA;AAAA,QACH;AAEA,QAAA;AAAA,MACF;AAEA,MAAA,IAAI,OAAO,IAAA,KAAS,KAAA,IAAS,OAAO,OAAA,IAAW,MAAA,CAAO,SAAS,IAAA,EAAM;AACnE,QAAA,MAAA,CAAO,OAAA,CAAQ,eAAe,MAAA,CAAO,KAAA;AACrC,QAAA;AAAA,MACF;AAEA,MAAA,IAAI,OAAO,IAAA,KAAS,MAAA,IAAU,QAAQ,OAAA,IAAW,MAAA,CAAO,SAAS,IAAA,EAAM;AACrE,QAAA,OAAA,CAAQ,QAAQ,cAAA,CAAe;AAAA,UAC7B,SAAA,EAAW;AAAA,YACT,GAAA,EAAK;AAAA,cACH,iBAAA,EAAmB;AAAA,gBACjB,KAAA,EAAO;AAAA;AACT;AACF;AACF,SACD,CAAA;AAED,QAAA,OAAA,CAAQ,OAAA,CAAQ,aAAA,CAAc,OAAA,EAAS,MAAA,CAAO,KAAK,CAAA;AAAA,MACrD;AAAA,IACF,CAAA;AAAA,IACA,CAAC,SAAS;AAAA,GACZ;AAEA,EAAA,MAAM,yBAAA,GAA4B,WAAA;AAAA,IAChC,CAAC,KAAA,KAAwC;AACvC,MAAA,MAAM,WAAW,WAAA,CAAY,OAAA;AAE7B,MAAA,IAAI,CAAC,QAAA,IAAY,CAAC,QAAA,IAAY,cAAA,CAAe,WAAW,CAAA,EAAG;AACzD,QAAA,UAAA,CAAW,IAAI,CAAA;AACf,QAAA;AAAA,MACF;AAEA,MAAA,MAAM,IAAA,GAAO,SAAS,qBAAA,EAAsB;AAC5C,MAAA,MAAM,CAAA,GAAI,IAAA,CAAK,GAAA,CAAI,CAAA,EAAG,IAAA,CAAK,GAAA,CAAI,KAAA,CAAM,OAAA,GAAU,IAAA,CAAK,IAAA,EAAM,IAAA,CAAK,KAAK,CAAC,CAAA;AACrE,MAAA,MAAM,IAAA,GAAQ,CAAA,GAAI,IAAA,CAAK,KAAA,GAAS,QAAA;AAChC,MAAA,MAAM,GAAA,GAAM,iBAAA,CAAkB,cAAA,EAAgB,IAAI,CAAA;AAElD,MAAA,IAAI,CAAC,GAAA,EAAK;AACR,QAAA,UAAA,CAAW,IAAI,CAAA;AACf,QAAA;AAAA,MACF;AAEA,MAAA,UAAA,CAAW;AAAA,QACT,GAAA;AAAA,QACA,IAAA;AAAA,QACA,IAAA,EAAM,IAAA,CAAK,GAAA,CAAI,EAAA,EAAI,IAAA,CAAK,IAAI,CAAA,EAAG,IAAA,CAAK,KAAA,GAAQ,EAAE,CAAC;AAAA,OAChD,CAAA;AAAA,IACH,CAAA;AAAA,IACA,CAAC,UAAU,cAAc;AAAA,GAC3B;AAEA,EAAA,MAAM,0BAAA,GAA6B,YAAY,MAAM;AACnD,IAAA,UAAA,CAAW,IAAI,CAAA;AAAA,EACjB,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,yBAAA,GAA4B,WAAA;AAAA,IAChC,CAAC,KAAA,KAAwC;AACvC,MAAA,MAAM,QAAQ,QAAA,CAAS,OAAA;AACvB,MAAA,MAAM,WAAW,WAAA,CAAY,OAAA;AAE7B,MAAA,IAAI,CAAC,KAAA,IAAS,CAAC,QAAA,IAAY,CAAC,QAAA,EAAU;AAEtC,MAAA,MAAM,IAAA,GAAO,SAAS,qBAAA,EAAsB;AAC5C,MAAA,MAAM,CAAA,GAAI,IAAA,CAAK,GAAA,CAAI,CAAA,EAAG,IAAA,CAAK,GAAA,CAAI,KAAA,CAAM,OAAA,GAAU,IAAA,CAAK,IAAA,EAAM,IAAA,CAAK,KAAK,CAAC,CAAA;AACrE,MAAA,MAAM,QAAA,GAAY,CAAA,GAAI,IAAA,CAAK,KAAA,GAAS,QAAA;AAEpC,MAAA,KAAA,CAAM,WAAA,GAAc,QAAA;AACpB,MAAA,cAAA,CAAe,QAAQ,CAAA;AAAA,IACzB,CAAA;AAAA,IACA,CAAC,QAAQ;AAAA,GACX;AAEA,EAAA,MAAM,aAAA,GAAgB,WAAA;AAAA,IACpB,CAAC,KAAA,KAAyC;AACxC,MAAA,MAAM,SAAS,KAAA,CAAM,MAAA;AACrB,MAAA,MAAM,OAAA,GAAU,MAAA,CAAO,OAAA,CAAQ,WAAA,EAAY;AAE3C,MAAA,IAAI,CAAC,OAAA,EAAS,QAAA,EAAU,QAAQ,CAAA,CAAE,QAAA,CAAS,OAAO,CAAA,EAAG;AACnD,QAAA;AAAA,MACF;AAEA,MAAA,IAAI,KAAA,CAAM,QAAQ,GAAA,EAAK;AACrB,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,UAAA,EAAW;AAAA,MACb;AAEA,MAAA,IAAI,KAAA,CAAM,QAAQ,YAAA,EAAc;AAC9B,QAAA,YAAA,CAAa,EAAE,CAAA;AAAA,MACjB;AAEA,MAAA,IAAI,KAAA,CAAM,QAAQ,WAAA,EAAa;AAC7B,QAAA,YAAA,CAAa,GAAG,CAAA;AAAA,MAClB;AAEA,MAAA,IAAI,KAAA,CAAM,GAAA,CAAI,WAAA,EAAY,KAAM,GAAA,EAAK;AACnC,QAAA,gBAAA,EAAiB;AAAA,MACnB;AAEA,MAAA,IAAI,KAAA,CAAM,GAAA,CAAI,WAAA,EAAY,KAAM,GAAA,EAAK;AACnC,QAAA,UAAA,CAAW,CAAC,KAAA,KAAU,CAAC,KAAK,CAAA;AAAA,MAC9B;AAAA,IACF,CAAA;AAAA,IACA,CAAC,YAAA,EAAc,gBAAA,EAAkB,UAAU;AAAA,GAC7C;AAEA,EAAA,IAAI,CAAC,YAAA,EAAc;AACjB,IAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,qEAAA,EAAsE,QAAA,EAAA;AAAA,MAAA,6CAAA;AAAA,MACvC,GAAA;AAAA,sBAC5C,GAAA,CAAC,UAAM,QAAA,EAAA,YAAA,EAAa,CAAA;AAAA,MAAO;AAAA,KAAA,EAC7B,CAAA;AAAA,EAEJ;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,GAAA,EAAK,YAAA;AAAA,MACL,SAAA,EAAW,CAAA,yBAAA,EAA4B,SAAA,IAAa,EAAE,CAAA,CAAA;AAAA,MAEtD,QAAA,kBAAA,IAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,GAAA,EAAK,SAAA;AAAA,UACL,QAAA,EAAU,CAAA;AAAA,UACV,SAAA,EAAW,aAAA;AAAA,UACX,WAAA,EAAa,uBAAA;AAAA,UACb,cAAc,MAAM;AAClB,YAAA,IAAI,aAAa,gBAAA,EAAkB;AACjC,cAAA,kBAAA,CAAmB,KAAK,CAAA;AAAA,YAC1B;AAAA,UACF,CAAA;AAAA,UACA,SAAA,EAAU,gJAAA;AAAA,UAEV,QAAA,EAAA;AAAA,4BAAA,GAAA;AAAA,cAAC,OAAA;AAAA,cAAA;AAAA,gBACC,GAAA,EAAK,QAAA;AAAA,gBACL,SAAA,EAAU,8BAAA;AAAA,gBACV,MAAA;AAAA,gBACA,WAAA,EAAW,IAAA;AAAA,gBACX,OAAA,EAAQ,UAAA;AAAA,gBACR,WAAA,EAAY,WAAA;AAAA,gBAEX,QAAA,EAAA,MAAA,CAAO,SAAA,CAAU,GAAA,CAAI,CAAC,QAAA,qBACrB,GAAA;AAAA,kBAAC,OAAA;AAAA,kBAAA;AAAA,oBAEC,IAAA,EAAK,WAAA;AAAA,oBACL,KAAK,QAAA,CAAS,GAAA;AAAA,oBACd,SAAS,QAAA,CAAS,OAAA;AAAA,oBAClB,OAAO,QAAA,CAAS,KAAA;AAAA,oBAChB,SAAS,QAAA,CAAS;AAAA,mBAAA;AAAA,kBALb,CAAA,EAAG,YAAA,CAAa,GAAG,CAAA,CAAA,EAAI,SAAS,OAAO,CAAA;AAAA,iBAO/C;AAAA;AAAA,aACH;AAAA,4BAEA,GAAA;AAAA,cAAC,KAAA;AAAA,cAAA;AAAA,gBACC,SAAA,EAAW,CAAA,6EAAA,EACT,SAAA,GAAY,WAAA,GAAc,aAC5B,CAAA,CAAA;AAAA,gBAEA,QAAA,kBAAA,GAAA,CAAC,UAAK,SAAA,EAAU,2GAAA,EACd,8BAAC,QAAA,EAAA,EAAS,SAAA,EAAU,eAAc,CAAA,EACpC;AAAA;AAAA,aACF;AAAA,YAEC,SAAA,wBACE,KAAA,EAAA,EAAI,SAAA,EAAU,iFACb,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,0EAAA,EAA2E,CAAA,EAC5F,CAAA;AAAA,YAGD,KAAA,oBACC,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,kKACZ,QAAA,EAAA,KAAA,EACH,CAAA;AAAA,4BAGF,IAAA;AAAA,cAAC,KAAA;AAAA,cAAA;AAAA,gBACC,GAAA,EAAK,SAAA;AAAA,gBACL,OAAA,EAAS,UAAA;AAAA,gBACT,SAAA,EAAW,CAAA,4GAAA,EACT,eAAA,GAAkB,EAAA,GAAK,qBACzB,CAAA,CAAA;AAAA,gBAEA,QAAA,EAAA;AAAA,kCAAA,IAAA,CAAC,QAAA,EAAA,EAAO,SAAS,CAAC,CAAA,KAAM,EAAE,eAAA,EAAgB,EAAG,WAAU,6EAAA,EACrD,QAAA,EAAA;AAAA,oCAAA,IAAA,CAAC,KAAA,EAAA,EACE,QAAA,EAAA;AAAA,sBAAA,KAAA,oBACC,GAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAU,4CAAA,EACX,QAAA,EAAA,KAAA,EACH,CAAA;AAAA,sBAGD,WAAA,oBACC,GAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAU,0CACV,QAAA,EAAA,WAAA,EACH;AAAA,qBAAA,EAEJ,CAAA;AAAA,oBAEC,MAAA,CAAO,OAAA,CAAQ,MAAA,GAAS,CAAA,oBACvB,GAAA;AAAA,sBAAC,QAAA;AAAA,sBAAA;AAAA,wBACC,KAAA,EAAO,OAAO,WAAW,CAAA;AAAA,wBACzB,QAAA,EAAU,CAAC,CAAA,KAAM,cAAA,CAAe,OAAO,CAAA,CAAE,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,wBACtD,YAAA,EAAW,cAAA;AAAA,wBACX,SAAA,EAAU,sJAAA;AAAA,wBAET,QAAA,EAAA,MAAA,CAAO,OAAA,CAAQ,GAAA,CAAI,CAAC,MAAA,EAAQ,KAAA,qBAC3B,GAAA,CAAC,QAAA,EAAA,EAAsC,KAAA,EAAO,MAAA,CAAO,KAAK,CAAA,EAAG,SAAA,EAAU,YAAA,EACpE,QAAA,EAAA,MAAA,CAAO,KAAA,IAAS,MAAA,CAAO,IAAA,IAAQ,CAAA,OAAA,EAAU,KAAA,GAAQ,CAAC,CAAA,CAAA,EAAA,EADxC,CAAA,EAAG,MAAA,CAAO,GAAG,CAAA,CAAA,EAAI,KAAK,CAAA,CAEnC,CACD;AAAA;AAAA;AACH,mBAAA,EAEJ,CAAA;AAAA,kCAEA,IAAA,CAAC,YAAO,OAAA,EAAS,CAAC,MAAM,CAAA,CAAE,eAAA,EAAgB,EAAG,SAAA,EAAU,sCAAA,EACrD,QAAA,EAAA;AAAA,oCAAA,IAAA;AAAA,sBAAC,KAAA;AAAA,sBAAA;AAAA,wBACC,GAAA,EAAK,WAAA;AAAA,wBACL,aAAA,EAAe,yBAAA;AAAA,wBACf,cAAA,EAAgB,0BAAA;AAAA,wBAChB,aAAA,EAAe,yBAAA;AAAA,wBACf,SAAA,EAAU,kCAAA;AAAA,wBAET,QAAA,EAAA;AAAA,0BAAA,OAAA,oBACC,IAAA;AAAA,4BAAC,KAAA;AAAA,4BAAA;AAAA,8BACC,SAAA,EAAU,sIAAA;AAAA,8BACV,KAAA,EAAO,EAAE,IAAA,EAAM,OAAA,CAAQ,IAAA,EAAK;AAAA,8BAE5B,QAAA,EAAA;AAAA,gDAAA,GAAA;AAAA,kCAAC,KAAA;AAAA,kCAAA;AAAA,oCACC,SAAA,EAAU,2CAAA;AAAA,oCACV,KAAA,EAAO;AAAA,sCACL,KAAA,EAAO,OAAA,CAAQ,GAAA,CAAI,CAAA,IAAK,GAAA;AAAA,sCACxB,MAAA,EAAQ,OAAA,CAAQ,GAAA,CAAI,CAAA,IAAK,EAAA;AAAA,sCACzB,eAAA,EAAiB,CAAA,IAAA,EAAO,OAAA,CAAQ,GAAA,CAAI,KAAK,CAAA,CAAA,CAAA;AAAA,sCACzC,oBACE,OAAA,CAAQ,GAAA,CAAI,CAAA,IAAK,IAAA,IAAQ,QAAQ,GAAA,CAAI,CAAA,IAAK,IAAA,GACtC,CAAA,CAAA,EAAI,QAAQ,GAAA,CAAI,CAAC,OAAO,OAAA,CAAQ,GAAA,CAAI,CAAC,CAAA,EAAA,CAAA,GACrC,QAAA;AAAA,sCACN,cAAA,EAAgB,OAAA,CAAQ,GAAA,CAAI,CAAA,IAAK,OAAO,MAAA,GAAS,OAAA;AAAA,sCACjD,gBAAA,EAAkB;AAAA;AACpB;AAAA,iCACF;AAAA,oDAEC,KAAA,EAAA,EAAI,SAAA,EAAU,4DACZ,QAAA,EAAA,UAAA,CAAW,OAAA,CAAQ,IAAI,CAAA,EAC1B;AAAA;AAAA;AAAA,2BACF;AAAA,0CAGF,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,mGAAA,EACb,QAAA,EAAA;AAAA,4CAAA,GAAA;AAAA,8BAAC,KAAA;AAAA,8BAAA;AAAA,gCACC,SAAA,EAAU,uCAAA;AAAA,gCACV,KAAA,EAAO,EAAE,KAAA,EAAO,CAAA,EAAG,eAAe,CAAA,CAAA,CAAA;AAAI;AAAA,6BACxC;AAAA,4CAEA,GAAA;AAAA,8BAAC,KAAA;AAAA,8BAAA;AAAA,gCACC,SAAA,EAAU,uCAAA;AAAA,gCACV,KAAA,EAAO,EAAE,KAAA,EAAO,CAAA,EAAG,eAAe,CAAA,CAAA,CAAA;AAAI;AAAA;AACxC,2BAAA,EACF;AAAA;AAAA;AAAA,qBACF;AAAA,oCAEA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yCAAA,EACb,QAAA,EAAA;AAAA,sCAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,yBAAA,EACb,QAAA,EAAA;AAAA,wCAAA,GAAA;AAAA,0BAAC,QAAA;AAAA,0BAAA;AAAA,4BACC,IAAA,EAAK,QAAA;AAAA,4BACL,OAAA,EAAS,UAAA;AAAA,4BACT,SAAA,EAAU,0FAAA;AAAA,4BACV,YAAA,EAAY,YAAY,OAAA,GAAU,MAAA;AAAA,4BAEjC,QAAA,EAAA,SAAA,uBACE,SAAA,EAAA,EAAU,SAAA,EAAU,UAAS,CAAA,mBAE9B,GAAA,CAAC,QAAA,EAAA,EAAS,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,yBAEjC;AAAA,wCAEA,GAAA;AAAA,0BAAC,QAAA;AAAA,0BAAA;AAAA,4BACC,IAAA,EAAK,QAAA;AAAA,4BACL,OAAA,EAAS,MAAM,YAAA,CAAa,EAAE,CAAA;AAAA,4BAC9B,SAAA,EAAU,oGAAA;AAAA,4BACV,YAAA,EAAW,oBAAA;AAAA,4BAEX,QAAA,kBAAA,GAAA,CAAC,WAAA,EAAA,EAAY,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,yBAClC;AAAA,wCAEA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,uEAAA,EACb,QAAA,EAAA;AAAA,0CAAA,GAAA,CAAC,MAAA,EAAA,EAAM,QAAA,EAAA,UAAA,CAAW,WAAW,CAAA,EAAE,CAAA;AAAA,0CAC/B,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,eAAA,EAAgB,QAAA,EAAA,GAAA,EAAC,CAAA;AAAA,0CACjC,GAAA,CAAC,MAAA,EAAA,EAAM,QAAA,EAAA,UAAA,CAAW,QAAQ,CAAA,EAAE;AAAA,yBAAA,EAC9B;AAAA,uBAAA,EACF,CAAA;AAAA,sCAEA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yBAAA,EACb,QAAA,EAAA;AAAA,wCAAA,GAAA;AAAA,0BAAC,QAAA;AAAA,0BAAA;AAAA,4BACC,IAAA,EAAK,QAAA;AAAA,4BACL,SAAS,MAAM,UAAA,CAAW,CAAC,KAAA,KAAU,CAAC,KAAK,CAAA;AAAA,4BAC3C,SAAA,EAAU,0FAAA;AAAA,4BACV,YAAA,EAAY,UAAU,QAAA,GAAW,MAAA;AAAA,4BAEhC,QAAA,EAAA,OAAA,IAAW,MAAA,KAAW,CAAA,mBACrB,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS,CAAA,mBAE9B,GAAA,CAAC,UAAA,EAAA,EAAW,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,yBAEnC;AAAA,wCAEA,GAAA;AAAA,0BAAC,OAAA;AAAA,0BAAA;AAAA,4BACC,IAAA,EAAK,OAAA;AAAA,4BACL,GAAA,EAAI,GAAA;AAAA,4BACJ,GAAA,EAAI,GAAA;AAAA,4BACJ,IAAA,EAAK,MAAA;AAAA,4BACL,KAAA,EAAO,UAAU,CAAA,GAAI,MAAA;AAAA,4BACrB,QAAA,EAAU,CAAC,KAAA,KAAU;AACnB,8BAAA,MAAM,UAAA,GAAa,MAAA,CAAO,KAAA,CAAM,MAAA,CAAO,KAAK,CAAA;AAC5C,8BAAA,SAAA,CAAU,UAAU,CAAA;AACpB,8BAAA,UAAA,CAAW,eAAe,CAAC,CAAA;AAAA,4BAC7B,CAAA;AAAA,4BACA,SAAA,EAAU,uCAAA;AAAA,4BACV,YAAA,EAAW;AAAA;AAAA,yBACb;AAAA,wCAEA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,2CAAA,EAA4C,CAAA;AAAA,wBAE1D,YAAY,MAAA,GAAS,CAAA,oBACpB,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,UAAA,EACb,QAAA,EAAA;AAAA,0CAAA,GAAA;AAAA,4BAAC,QAAA;AAAA,4BAAA;AAAA,8BACC,IAAA,EAAK,QAAA;AAAA,8BACL,SAAS,MAAM,WAAA,CAAY,QAAA,KAAa,OAAA,GAAU,OAAO,OAAO,CAAA;AAAA,8BAChE,SAAA,EAAW,CAAA,sEAAA,EAAyE,QAAA,KAAa,OAAA,GAAU,eAAe,eAAe,CAAA,CAAA;AAAA,8BACzI,YAAA,EAAW,aAAA;AAAA,8BAEX,QAAA,kBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,2BAChC;AAAA,0BACC,QAAA,KAAa,OAAA,oBACZ,GAAA,CAAC,WAAA,EAAA,EAAY,OAAA,EAAS,MAAM,WAAA,CAAY,IAAI,CAAA,EACzC,QAAA,EAAA,WAAA,CAAY,GAAA,CAAI,CAAC,KAAA,qBAChB,GAAA;AAAA,4BAAC,WAAA;AAAA,4BAAA;AAAA,8BAEC,MAAA,EAAQ,kBAAkB,KAAA,CAAM,EAAA;AAAA,8BAChC,OAAA,EAAS,MAAM,WAAA,CAAY,KAAA,CAAM,EAAE,CAAA;AAAA,8BAElC,QAAA,EAAA,KAAA,CAAM;AAAA,6BAAA;AAAA,4BAJF,KAAA,CAAM;AAAA,2BAMd,CAAA,EACH;AAAA,yBAAA,EAEJ,CAAA;AAAA,wBAGD,OAAO,SAAA,CAAU,MAAA,GAAS,qBACzB,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,UAAA,EACb,QAAA,EAAA;AAAA,0CAAA,GAAA;AAAA,4BAAC,QAAA;AAAA,4BAAA;AAAA,8BACC,IAAA,EAAK,QAAA;AAAA,8BACL,SAAS,MAAM,WAAA,CAAY,QAAA,KAAa,UAAA,GAAa,OAAO,UAAU,CAAA;AAAA,8BACtE,WAAW,CAAA,sEAAA,EAAyE,YAAA,KAAiB,SAAS,QAAA,KAAa,UAAA,GAAa,eAAe,eAAe,CAAA,CAAA;AAAA,8BACtK,YAAA,EAAW,UAAA;AAAA,8BAEX,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA,2BACnC;AAAA,0BACC,QAAA,KAAa,8BACZ,IAAA,CAAC,WAAA,EAAA,EAAY,SAAS,MAAM,WAAA,CAAY,IAAI,CAAA,EAC1C,QAAA,EAAA;AAAA,4CAAA,GAAA;AAAA,8BAAC,WAAA;AAAA,8BAAA;AAAA,gCACC,QAAQ,YAAA,KAAiB,KAAA;AAAA,gCACzB,SAAS,MAAM;AAAE,kCAAA,eAAA,CAAgB,KAAK,CAAA;AAAG,kCAAA,WAAA,CAAY,IAAI,CAAA;AAAA,gCAAG,CAAA;AAAA,gCAC7D,QAAA,EAAA;AAAA;AAAA,6BAED;AAAA,4BACC,MAAA,CAAO,SAAA,CAAU,GAAA,CAAI,CAAC,QAAA,qBACrB,GAAA;AAAA,8BAAC,WAAA;AAAA,8BAAA;AAAA,gCAEC,MAAA,EAAQ,iBAAiB,QAAA,CAAS,OAAA;AAAA,gCAClC,SAAS,MAAM;AAAE,kCAAA,eAAA,CAAgB,SAAS,OAAO,CAAA;AAAG,kCAAA,WAAA,CAAY,IAAI,CAAA;AAAA,gCAAG,CAAA;AAAA,gCAEtE,QAAA,EAAA,QAAA,CAAS;AAAA,+BAAA;AAAA,8BAJL,QAAA,CAAS;AAAA,6BAMjB;AAAA,2BAAA,EACH;AAAA,yBAAA,EAEJ,CAAA;AAAA,wCAGF,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,UAAA,EACb,QAAA,EAAA;AAAA,0CAAA,IAAA;AAAA,4BAAC,QAAA;AAAA,4BAAA;AAAA,8BACC,IAAA,EAAK,QAAA;AAAA,8BACL,SAAS,MAAM,WAAA,CAAY,QAAA,KAAa,SAAA,GAAY,OAAO,SAAS,CAAA;AAAA,8BACpE,SAAA,EAAW,CAAA,8FAAA,EAAiG,QAAA,KAAa,SAAA,GAAY,eAAe,eAAe,CAAA,CAAA;AAAA,8BACnK,YAAA,EAAW,SAAA;AAAA,8BAEX,QAAA,EAAA;AAAA,gDAAA,GAAA,CAAC,WAAA,EAAA,EAAY,WAAU,QAAA,EAAS,CAAA;AAAA,gDAChC,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,kBAAA,EACb,QAAA,EAAA,SAAA,CAAU,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,EAAA,KAAO,eAAe,CAAA,EAAG,SAAS,MAAA,EAC7D;AAAA;AAAA;AAAA,2BACF;AAAA,0BACC,aAAa,SAAA,oBACZ,GAAA,CAAC,WAAA,EAAA,EAAY,OAAA,EAAS,MAAM,WAAA,CAAY,IAAI,CAAA,EACzC,QAAA,EAAA,CAAC,GAAG,SAAS,CAAA,CAAE,SAAQ,CAAE,GAAA,CAAI,CAAC,OAAA,qBAC7B,IAAA;AAAA,4BAAC,WAAA;AAAA,4BAAA;AAAA,8BAEC,MAAA,EAAQ,oBAAoB,OAAA,CAAQ,EAAA;AAAA,8BACpC,OAAA,EAAS,MAAM,aAAA,CAAc,OAAA,CAAQ,EAAE,CAAA;AAAA,8BAEtC,QAAA,EAAA;AAAA,gCAAA,OAAA,CAAQ,KAAA;AAAA,gCACR,QAAQ,EAAA,KAAO,MAAA,wBACb,MAAA,EAAA,EAAK,SAAA,EAAU,kCAAiC,QAAA,EAAA,KAAA,EAAG;AAAA;AAAA,6BAAA;AAAA,4BANjD,OAAA,CAAQ;AAAA,2BAShB,CAAA,EACH;AAAA,yBAAA,EAEJ,CAAA;AAAA,wCAEA,GAAA;AAAA,0BAAC,QAAA;AAAA,0BAAA;AAAA,4BACC,IAAA,EAAK,QAAA;AAAA,4BACL,OAAA,EAAS,gBAAA;AAAA,4BACT,SAAA,EAAU,6FAAA;AAAA,4BACV,YAAA,EAAY,eAAe,iBAAA,GAAoB,YAAA;AAAA,4BAE/C,QAAA,kBAAA,GAAA,CAAC,cAAA,EAAA,EAAe,SAAA,EAAU,QAAA,EAAS;AAAA;AAAA;AACrC,uBAAA,EACF;AAAA,qBAAA,EACF;AAAA,mBAAA,EACF;AAAA;AAAA;AAAA;AACF;AAAA;AAAA;AACF;AAAA,GACF;AAEJ;AAEO,IAAM,WAAA,GAAc;AAE3B,SAAS,WAAA,CAAY,EAAE,QAAA,EAAU,OAAA,EAAQ,EAAiD;AACxF,EAAA,uBACE,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,oBAAA,EAAqB,OAAA,EAAS,OAAA,EAAS,CAAA;AAAA,oBACtD,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,qJAAA,EACZ,QAAA,EACH;AAAA,GAAA,EACF,CAAA;AAEJ;AAEA,SAAS,WAAA,CAAY;AAAA,EACnB,QAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA,EAIG;AACD,EAAA,uBACE,IAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,IAAA,EAAK,QAAA;AAAA,MACL,OAAA;AAAA,MACA,SAAA,EAAW,CAAA,oGAAA,EAAuG,MAAA,GAAS,YAAA,GAAe,eAAe,CAAA,CAAA;AAAA,MAEzJ,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,UAAK,SAAA,EAAW,CAAA,sBAAA,EAAyB,MAAA,GAAS,UAAA,GAAa,gBAAgB,CAAA,CAAA,EAAI,CAAA;AAAA,QACnF;AAAA;AAAA;AAAA,GACH;AAEJ;AAEA,SAAS,mBAAmB,QAAA,EAA0C;AACpE,EAAA,MAAM,MAAA,GAA8B;AAAA,IAClC,SAAS,EAAC;AAAA,IACV,WAAW;AAAC,GACd;AAEA,EAAA,KAAA,CAAM,QAAA,CAAS,OAAA,CAAQ,QAAA,EAAU,CAAC,KAAA,KAAU;AAC1C,IAAA,IAAI,CAAC,KAAA,CAAM,cAAA,CAAe,KAAK,CAAA,EAAG;AAElC,IAAA,IAAI,KAAA,CAAM,SAAS,OAAA,EAAS;AAC1B,MAAA,MAAM,OAAA,GAAU,KAAA;AAEhB,MAAA,KAAA,CAAM,SAAS,OAAA,CAAQ,OAAA,CAAQ,KAAA,CAAM,QAAA,EAAU,CAAC,WAAA,KAAgB;AAC9D,QAAA,IAAI,CAAC,KAAA,CAAM,cAAA,CAAe,WAAW,CAAA,EAAG;AACxC,QAAA,IAAI,WAAA,CAAY,SAAS,MAAA,EAAQ;AAEjC,QAAA,MAAM,aAAA,GAAgB,WAAA;AACtB,QAAA,MAAA,CAAO,OAAA,CAAQ,IAAA,CAAK,aAAA,CAAc,KAAK,CAAA;AAAA,MACzC,CAAC,CAAA;AAAA,IACH;AAEA,IAAA,IAAI,KAAA,CAAM,SAAS,SAAA,EAAW;AAC5B,MAAA,MAAM,OAAA,GAAU,KAAA;AAEhB,MAAA,KAAA,CAAM,SAAS,OAAA,CAAQ,OAAA,CAAQ,KAAA,CAAM,QAAA,EAAU,CAAC,aAAA,KAAkB;AAChE,QAAA,IAAI,CAAC,KAAA,CAAM,cAAA,CAAe,aAAa,CAAA,EAAG;AAC1C,QAAA,IAAI,aAAA,CAAc,SAAS,QAAA,EAAU;AAErC,QAAA,MAAM,eAAA,GAAkB,aAAA;AACxB,QAAA,MAAA,CAAO,SAAA,CAAU,IAAA,CAAK,eAAA,CAAgB,KAAK,CAAA;AAAA,MAC7C,CAAC,CAAA;AAAA,IACH;AAEA,IAAA,IAAI,KAAA,CAAM,SAAS,UAAA,EAAY;AAC7B,MAAA,MAAM,OAAA,GAAU,KAAA;AAChB,MAAA,MAAM,SAAiC,EAAC;AAExC,MAAA,KAAA,CAAM,SAAS,OAAA,CAAQ,OAAA,CAAQ,KAAA,CAAM,QAAA,EAAU,CAAC,UAAA,KAAe;AAC7D,QAAA,IAAI,CAAC,KAAA,CAAM,cAAA,CAAe,UAAU,CAAA,EAAG;AACvC,QAAA,IAAI,UAAA,CAAW,SAAS,eAAA,EAAiB;AAEzC,QAAA,MAAM,YAAA,GAAe,UAAA;AACrB,QAAA,MAAA,CAAO,IAAA,CAAK,aAAa,KAAK,CAAA;AAAA,MAChC,CAAC,CAAA;AAED,MAAA,MAAA,CAAO,UAAA,GAAa;AAAA,QAClB,GAAI,QAAQ,KAAA,CAAM,GAAA,KAAQ,UAAa,EAAE,GAAA,EAAK,OAAA,CAAQ,KAAA,CAAM,GAAA,EAAI;AAAA,QAChE,GAAI,QAAQ,KAAA,CAAM,aAAA,KAAkB,UAAa,EAAE,aAAA,EAAe,OAAA,CAAQ,KAAA,CAAM,aAAA,EAAc;AAAA,QAC9F,GAAI,QAAQ,KAAA,CAAM,KAAA,KAAU,UAAa,EAAE,KAAA,EAAO,OAAA,CAAQ,KAAA,CAAM,KAAA,EAAM;AAAA,QACtE,GAAI,QAAQ,KAAA,CAAM,MAAA,KAAW,UAAa,EAAE,MAAA,EAAQ,OAAA,CAAQ,KAAA,CAAM,MAAA,EAAO;AAAA,QACzE;AAAA,OACF;AAAA,IACF;AAAA,EACF,CAAC,CAAA;AAED,EAAA,OAAO,MAAA;AACT;AAEA,SAAS,gBAAgB,MAAA,EAAsC;AAC7D,EAAA,IAAI,MAAA,CAAO,IAAA,EAAM,OAAO,MAAA,CAAO,IAAA;AAE/B,EAAA,MAAM,GAAA,GAAM,MAAA,CAAO,GAAA,CAAI,WAAA,EAAY;AAEnC,EAAA,IAAI,GAAA,CAAI,SAAS,MAAM,CAAA,IAAK,IAAI,QAAA,CAAS,OAAO,GAAG,OAAO,MAAA;AAC1D,EAAA,IAAI,GAAA,CAAI,SAAS,OAAO,CAAA,IAAK,IAAI,QAAA,CAAS,MAAM,GAAG,OAAO,KAAA;AAE1D,EAAA,OAAO,MAAA;AACT;AAEA,SAAS,iBAAA,CAAkB,MAA8B,IAAA,EAAc;AACrE,EAAA,OAAO,IAAA,CAAK,IAAA,CAAK,CAAC,GAAA,KAAQ,IAAA,IAAQ,IAAI,KAAA,IAAS,IAAA,IAAQ,GAAA,CAAI,GAAG,CAAA,IAAK,IAAA;AACrE;AAEA,SAAS,kBAAA,CACP,MACA,OAAA,EACwB;AACxB,EAAA,MAAM,KAAA,GAAQ,IAAA,CACX,KAAA,CAAM,OAAO,CAAA,CACb,GAAA,CAAI,CAAC,IAAA,KAAS,IAAA,CAAK,IAAA,EAAM,CAAA,CACzB,OAAO,OAAO,CAAA;AAEjB,EAAA,MAAM,OAA+B,EAAC;AAEtC,EAAA,KAAA,IAAS,KAAA,GAAQ,CAAA,EAAG,KAAA,GAAQ,KAAA,CAAM,QAAQ,KAAA,EAAA,EAAS;AACjD,IAAA,MAAM,IAAA,GAAO,MAAM,KAAK,CAAA;AACxB,IAAA,IAAI,CAAC,IAAA,IAAQ,CAAC,IAAA,CAAK,QAAA,CAAS,KAAK,CAAA,EAAG;AAEpC,IAAA,MAAM,KAAA,GAAQ,IAAA,CAAK,KAAA,CAAM,WAAW,CAAA;AACpC,IAAA,MAAM,QAAA,GAAW,MAAM,CAAC,CAAA;AACxB,IAAA,MAAM,MAAA,GAAS,MAAM,CAAC,CAAA;AACtB,IAAA,MAAM,SAAA,GAAY,KAAA,CAAM,KAAA,GAAQ,CAAC,CAAA;AAEjC,IAAA,IAAI,CAAC,QAAA,IAAY,CAAC,MAAA,IAAU,CAAC,SAAA,EAAW;AAExC,IAAA,MAAM,KAAA,GAAQ,wBAAA,CAAyB,SAAA,EAAW,OAAO,CAAA;AAEzD,IAAA,IAAA,CAAK,IAAA,CAAK;AAAA,MACR,KAAA,EAAO,kBAAkB,QAAQ,CAAA;AAAA,MACjC,GAAA,EAAK,kBAAkB,MAAM,CAAA;AAAA,MAC7B,GAAG;AAAA,KACJ,CAAA;AAAA,EACH;AAEA,EAAA,OAAO,IAAA;AACT;AAEA,SAAS,wBAAA,CAAyB,MAAc,OAAA,EAAiB;AAC/D,EAAA,MAAM,UAAA,GAAa,IAAA,CAAK,OAAA,CAAQ,QAAQ,CAAA;AACxC,EAAA,MAAM,WAAW,UAAA,IAAc,CAAA,GAAI,KAAK,KAAA,CAAM,CAAA,EAAG,UAAU,CAAA,GAAI,IAAA;AAC/D,EAAA,MAAM,UAAU,UAAA,IAAc,CAAA,GAAI,KAAK,KAAA,CAAM,UAAA,GAAa,CAAC,CAAA,GAAI,IAAA;AAC/D,EAAA,MAAM,KAAA,GAAQ,IAAI,GAAA,CAAI,QAAA,EAAU,OAAO,CAAA,CAAE,IAAA;AAEzC,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,OAAO,EAAE,KAAA,EAAM;AAAA,EACjB;AAEA,EAAA,MAAM,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,EAAG,CAAC,CAAA,GAAI,OAAA,CAAQ,KAAA,CAAM,GAAG,CAAA,CAAE,GAAA,CAAI,MAAM,CAAA;AAElD,EAAA,OAAO;AAAA,IACL,KAAA;AAAA,IACA,GAAI,MAAM,MAAA,IAAa,CAAC,MAAM,CAAC,CAAA,IAAK,EAAE,CAAA,EAAE;AAAA,IACxC,GAAI,MAAM,MAAA,IAAa,CAAC,MAAM,CAAC,CAAA,IAAK,EAAE,CAAA,EAAE;AAAA,IACxC,GAAI,MAAM,MAAA,IAAa,CAAC,MAAM,CAAC,CAAA,IAAK,EAAE,CAAA,EAAE;AAAA,IACxC,GAAI,MAAM,MAAA,IAAa,CAAC,MAAM,CAAC,CAAA,IAAK,EAAE,CAAA;AAAE,GAC1C;AACF;AAEA,SAAS,kBAAkB,KAAA,EAAe;AACxC,EAAA,MAAM,UAAA,GAAa,KAAA,CAAM,OAAA,CAAQ,GAAA,EAAK,GAAG,CAAA;AACzC,EAAA,MAAM,QAAQ,UAAA,CAAW,KAAA,CAAM,GAAG,CAAA,CAAE,IAAI,MAAM,CAAA;AAE9C,EAAA,IAAI,KAAA,CAAM,WAAW,CAAA,EAAG;AACtB,IAAA,OAAA,CAAQ,KAAA,CAAM,CAAC,CAAA,IAAK,CAAA,IAAK,IAAA,GAAA,CAAQ,KAAA,CAAM,CAAC,CAAA,IAAK,CAAA,IAAK,EAAA,IAAM,KAAA,CAAM,CAAC,CAAA,IAAK,CAAA,CAAA;AAAA,EACtE;AAEA,EAAA,IAAI,KAAA,CAAM,WAAW,CAAA,EAAG;AACtB,IAAA,OAAA,CAAQ,MAAM,CAAC,CAAA,IAAK,KAAK,EAAA,IAAM,KAAA,CAAM,CAAC,CAAA,IAAK,CAAA,CAAA;AAAA,EAC7C;AAEA,EAAA,OAAO,MAAA,CAAO,UAAU,CAAA,IAAK,CAAA;AAC/B;AAEA,SAAS,WAAW,OAAA,EAAiB;AACnC,EAAA,IAAI,CAAC,MAAA,CAAO,QAAA,CAAS,OAAO,GAAG,OAAO,OAAA;AAEtC,EAAA,MAAM,cAAc,IAAA,CAAK,GAAA,CAAI,GAAG,IAAA,CAAK,KAAA,CAAM,OAAO,CAAC,CAAA;AACnD,EAAA,MAAM,KAAA,GAAQ,IAAA,CAAK,KAAA,CAAM,WAAA,GAAc,IAAI,CAAA;AAC3C,EAAA,MAAM,OAAA,GAAU,IAAA,CAAK,KAAA,CAAO,WAAA,GAAc,OAAQ,EAAE,CAAA;AACpD,EAAA,MAAM,OAAO,WAAA,GAAc,EAAA;AAE3B,EAAA,IAAI,QAAQ,CAAA,EAAG;AACb,IAAA,OAAO,CAAA,EAAG,KAAK,CAAA,CAAA,EAAI,MAAA,CAAO,OAAO,CAAA,CAAE,QAAA,CAAS,CAAA,EAAG,GAAG,CAAC,CAAA,CAAA,EAAI,MAAA,CAAO,IAAI,CAAA,CAAE,QAAA;AAAA,MAClE,CAAA;AAAA,MACA;AAAA,KACD,CAAA,CAAA;AAAA,EACH;AAEA,EAAA,OAAO,CAAA,EAAG,MAAA,CAAO,OAAO,CAAA,CAAE,SAAS,CAAA,EAAG,GAAG,CAAC,CAAA,CAAA,EAAI,OAAO,IAAI,CAAA,CAAE,QAAA,CAAS,CAAA,EAAG,GAAG,CAAC,CAAA,CAAA;AAC7E;AAEA,SAAS,QAAA,CAAS,EAAE,SAAA,EAAU,EAA2B;AACvD,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,OAAA,EAAQ,WAAA,EAAY,IAAA,EAAK,cAAA,EAAe,SAAA,EAC3C,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,gGAAA,EAAiG,CAAA,EAC3G,CAAA;AAEJ;AAEA,SAAS,SAAA,CAAU,EAAE,SAAA,EAAU,EAA2B;AACxD,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,OAAA,EAAQ,WAAA,EAAY,IAAA,EAAK,cAAA,EAAe,SAAA,EAC3C,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,+MAAA,EAAgN,CAAA,EAC1N,CAAA;AAEJ;AAEA,SAAS,WAAA,CAAY,EAAE,SAAA,EAAU,EAA2B;AAC1D,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,OAAA,EAAQ,WAAA,EAAY,IAAA,EAAK,cAAA,EAAe,SAAA,EAC3C,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,yKAAA,EAA0K,CAAA,EACpL,CAAA;AAEJ;AAEA,SAAS,UAAA,CAAW,EAAE,SAAA,EAAU,EAA2B;AACzD,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,OAAA,EAAQ,WAAA,EAAY,IAAA,EAAK,cAAA,EAAe,SAAA,EAC3C,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,wRAAA,EAAyR,CAAA,EACnS,CAAA;AAEJ;AAEA,SAAS,SAAA,CAAU,EAAE,SAAA,EAAU,EAA2B;AACxD,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,OAAA,EAAQ,WAAA,EAAY,IAAA,EAAK,cAAA,EAAe,SAAA,EAC3C,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,qOAAA,EAAsO,CAAA,EAChP,CAAA;AAEJ;AAEA,SAAS,cAAA,CAAe,EAAE,SAAA,EAAU,EAA2B;AAC7D,EAAA,2BACG,KAAA,EAAA,EAAI,OAAA,EAAQ,WAAA,EAAY,IAAA,EAAK,QAAO,SAAA,EACnC,QAAA,kBAAA,GAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,CAAA,EAAE,oKAAA;AAAA,MACF,MAAA,EAAO,cAAA;AAAA,MACP,WAAA,EAAY,GAAA;AAAA,MACZ,aAAA,EAAc;AAAA;AAAA,GAChB,EACF,CAAA;AAEJ;AAEA,SAAS,YAAA,CAAa,EAAE,SAAA,EAAU,EAA2B;AAC3D,EAAA,4BACG,KAAA,EAAA,EAAI,OAAA,EAAQ,WAAA,EAAY,IAAA,EAAK,QAAO,SAAA,EACnC,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,GAAA,EAAI,CAAA,EAAE,KAAI,KAAA,EAAM,IAAA,EAAK,MAAA,EAAO,IAAA,EAAK,EAAA,EAAG,GAAA,EAAI,MAAA,EAAO,cAAA,EAAe,aAAY,MAAA,EAAO,CAAA;AAAA,oBACzF,GAAA,CAAC,UAAK,CAAA,EAAE,wBAAA,EAAyB,QAAO,cAAA,EAAe,WAAA,EAAY,MAAA,EAAO,aAAA,EAAc,OAAA,EAAQ;AAAA,GAAA,EAClG,CAAA;AAEJ;AAEA,SAAS,SAAA,CAAU,EAAE,SAAA,EAAU,EAA2B;AACxD,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,OAAA,EAAQ,WAAA,EAAY,IAAA,EAAK,cAAA,EAAe,SAAA,EAC3C,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,uTAAA,EAAwT,CAAA,EAClU,CAAA;AAEJ;AAEA,SAAS,WAAA,CAAY,EAAE,SAAA,EAAU,EAA2B;AAC1D,EAAA,4BACG,KAAA,EAAA,EAAI,OAAA,EAAQ,WAAA,EAAY,IAAA,EAAK,QAAO,SAAA,EACnC,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,GAAA,EAAI,CAAA,EAAE,KAAI,KAAA,EAAM,IAAA,EAAK,MAAA,EAAO,IAAA,EAAK,EAAA,EAAG,GAAA,EAAI,MAAA,EAAO,cAAA,EAAe,aAAY,MAAA,EAAO,CAAA;AAAA,oBACzF,GAAA,CAAC,UAAK,CAAA,EAAE,QAAA,EAAS,QAAO,cAAA,EAAe,WAAA,EAAY,MAAA,EAAO,aAAA,EAAc,OAAA,EAAQ,CAAA;AAAA,oBAChF,GAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,oDAAA,EAAqD,MAAA,EAAO,cAAA,EAAe,WAAA,EAAY,KAAA,EAAM,aAAA,EAAc,OAAA,EAAQ,cAAA,EAAe,OAAA,EAAQ;AAAA,GAAA,EACpJ,CAAA;AAEJ","file":"VideoPlayer.js","sourcesContent":["\"use client\";\n\nimport React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport type {\n KeyboardEvent,\n PointerEvent,\n ReactElement,\n ReactNode,\n} from \"react\";\nimport gsap from \"gsap\";\n\nexport type VideoSourceType = \"dash\" | \"hls\" | \"file\";\n\nexport type SourceProps = {\n id?: string;\n src: string;\n label?: string;\n type?: VideoSourceType;\n default?: boolean;\n};\n\nexport type SourcesProps = {\n children: ReactNode;\n};\n\nexport type SubtitleProps = {\n src: string;\n srclang: string;\n label: string;\n default?: boolean;\n};\n\nexport type SubtitlesProps = {\n children: ReactNode;\n};\n\nexport type StoryboardFrameProps = {\n start: number;\n end: number;\n image: string;\n x?: number;\n y?: number;\n w?: number;\n h?: number;\n};\n\nexport type StoryboardProps = {\n src?: string;\n fallbackImage?: string;\n width?: number;\n height?: number;\n children?: ReactNode;\n};\n\ntype ParsedStoryboard = Omit<StoryboardProps, \"children\"> & {\n frames: StoryboardFrameProps[];\n};\n\ntype ParsedVideoChildren = {\n sources: SourceProps[];\n subtitles: SubtitleProps[];\n storyboard?: ParsedStoryboard;\n};\n\ntype QualityOption = {\n id: string;\n label: string;\n type: \"auto\" | \"hls\" | \"dash\";\n index?: number;\n};\n\ntype VideoProps = {\n title?: string;\n description?: string;\n poster?: string;\n children: ReactNode;\n className?: string;\n autoHideControls?: boolean;\n defaultVolume?: number;\n};\n\nconst AUTO_QUALITY: QualityOption = {\n id: \"auto\",\n label: \"Auto\",\n type: \"auto\",\n};\n\nexport function Sources(_props: SourcesProps) {\n return null;\n}\n\nexport function Source(_props: SourceProps) {\n return null;\n}\n\nexport function Subtitles(_props: SubtitlesProps) {\n return null;\n}\n\nexport function Subtitle(_props: SubtitleProps) {\n return null;\n}\n\nexport function Storyboard(_props: StoryboardProps) {\n return null;\n}\n\nexport function StoryboardFrame(_props: StoryboardFrameProps) {\n return null;\n}\n\nexport function Video({\n title,\n description,\n poster,\n children,\n className,\n autoHideControls = true,\n defaultVolume = 0.72,\n}: VideoProps) {\n const parsed = useMemo(() => parseVideoChildren(children), [children]);\n\n const initialSourceIndex = useMemo(() => {\n const index = parsed.sources.findIndex((source) => source.default);\n return index >= 0 ? index : 0;\n }, [parsed.sources]);\n\n const initialSubtitleMode = useMemo(() => {\n const track = parsed.subtitles.find((subtitle) => subtitle.default);\n return track?.srclang ?? \"off\";\n }, [parsed.subtitles]);\n\n const containerRef = useRef<HTMLDivElement | null>(null);\n const chromeRef = useRef<HTMLDivElement | null>(null);\n const playerRef = useRef<HTMLDivElement | null>(null);\n const videoRef = useRef<HTMLVideoElement | null>(null);\n const progressRef = useRef<HTMLDivElement | null>(null);\n\n const hlsRef = useRef<any>(null);\n const dashRef = useRef<any>(null);\n const hideTimerRef = useRef<number | null>(null);\n\n const [sourceIndex, setSourceIndex] = useState(initialSourceIndex);\n const [qualities, setQualities] = useState<QualityOption[]>([AUTO_QUALITY]);\n const [selectedQuality, setSelectedQuality] = useState(\"auto\");\n const [audioTracks, setAudioTracks] = useState<{ id: number; label: string }[]>([]);\n const [selectedAudio, setSelectedAudio] = useState<number>(0);\n const [openMenu, setOpenMenu] = useState<\"quality\" | \"audio\" | \"captions\" | null>(null);\n\n const [subtitleMode, setSubtitleMode] = useState(initialSubtitleMode);\n const [storyboardCues, setStoryboardCues] = useState<StoryboardFrameProps[]>(\n [],\n );\n\n const [preview, setPreview] = useState<{\n cue: StoryboardFrameProps;\n left: number;\n time: number;\n } | null>(null);\n\n const [duration, setDuration] = useState(0);\n const [currentTime, setCurrentTime] = useState(0);\n const [bufferedTime, setBufferedTime] = useState(0);\n\n const [isPlaying, setIsPlaying] = useState(false);\n const [isLoading, setIsLoading] = useState(true);\n const [controlsVisible, setControlsVisible] = useState(true);\n const [volume, setVolume] = useState(defaultVolume);\n const [isMuted, setIsMuted] = useState(false);\n const [isFullscreen, setIsFullscreen] = useState(false);\n const [error, setError] = useState<string | null>(null);\n\n const activeSource = parsed.sources[sourceIndex] ?? parsed.sources[0] ?? null;\n\n const progressPercent = duration ? (currentTime / duration) * 100 : 0;\n const bufferedPercent = duration ? (bufferedTime / duration) * 100 : 0;\n\n const destroyMediaEngines = useCallback(() => {\n if (hlsRef.current) {\n hlsRef.current.destroy();\n hlsRef.current = null;\n }\n\n if (dashRef.current) {\n dashRef.current.reset();\n dashRef.current = null;\n }\n }, []);\n\n const applySubtitleMode = useCallback((mode: string) => {\n const video = videoRef.current;\n if (!video) return;\n\n Array.from(video.textTracks).forEach((track) => {\n track.mode =\n mode !== \"off\" && track.language === mode ? \"showing\" : \"disabled\";\n });\n }, []);\n\n const showControlsTemporarily = useCallback(() => {\n setControlsVisible(true);\n\n if (hideTimerRef.current) {\n window.clearTimeout(hideTimerRef.current);\n }\n\n const video = videoRef.current;\n\n if (autoHideControls && video && !video.paused) {\n hideTimerRef.current = window.setTimeout(() => {\n setControlsVisible(false);\n }, 2400);\n }\n }, [autoHideControls]);\n\n useEffect(() => {\n if (!containerRef.current) return;\n\n gsap.fromTo(\n containerRef.current,\n {\n opacity: 0,\n y: 36,\n scale: 0.985,\n filter: \"blur(10px)\",\n },\n {\n opacity: 1,\n y: 0,\n scale: 1,\n filter: \"blur(0px)\",\n duration: 0.85,\n ease: \"power3.out\",\n },\n );\n }, []);\n\n useEffect(() => {\n if (!chromeRef.current) return;\n\n gsap.to(chromeRef.current, {\n opacity: controlsVisible ? 1 : 0,\n y: controlsVisible ? 0 : 10,\n duration: 0.22,\n ease: \"power2.out\",\n });\n }, [controlsVisible]);\n\n useEffect(() => {\n if (sourceIndex >= parsed.sources.length) {\n setSourceIndex(initialSourceIndex);\n }\n }, [sourceIndex, parsed.sources.length, initialSourceIndex]);\n\n useEffect(() => {\n if (\n subtitleMode !== \"off\" &&\n !parsed.subtitles.some((subtitle) => subtitle.srclang === subtitleMode)\n ) {\n setSubtitleMode(initialSubtitleMode);\n }\n }, [subtitleMode, parsed.subtitles, initialSubtitleMode]);\n\n useEffect(() => {\n const video = videoRef.current;\n if (!video) return;\n\n const syncTime = () => {\n setCurrentTime(video.currentTime || 0);\n\n if (video.buffered.length > 0) {\n setBufferedTime(video.buffered.end(video.buffered.length - 1));\n }\n };\n\n const syncDuration = () => {\n setDuration(Number.isFinite(video.duration) ? video.duration : 0);\n applySubtitleMode(subtitleMode);\n };\n\n const onPlay = () => {\n setIsPlaying(true);\n showControlsTemporarily();\n };\n\n const onPause = () => {\n setIsPlaying(false);\n setControlsVisible(true);\n };\n\n const onWaiting = () => setIsLoading(true);\n const onCanPlay = () => setIsLoading(false);\n const onEnded = () => setControlsVisible(true);\n\n video.addEventListener(\"timeupdate\", syncTime);\n video.addEventListener(\"progress\", syncTime);\n video.addEventListener(\"loadedmetadata\", syncDuration);\n video.addEventListener(\"durationchange\", syncDuration);\n video.addEventListener(\"play\", onPlay);\n video.addEventListener(\"pause\", onPause);\n video.addEventListener(\"waiting\", onWaiting);\n video.addEventListener(\"canplay\", onCanPlay);\n video.addEventListener(\"ended\", onEnded);\n\n return () => {\n video.removeEventListener(\"timeupdate\", syncTime);\n video.removeEventListener(\"progress\", syncTime);\n video.removeEventListener(\"loadedmetadata\", syncDuration);\n video.removeEventListener(\"durationchange\", syncDuration);\n video.removeEventListener(\"play\", onPlay);\n video.removeEventListener(\"pause\", onPause);\n video.removeEventListener(\"waiting\", onWaiting);\n video.removeEventListener(\"canplay\", onCanPlay);\n video.removeEventListener(\"ended\", onEnded);\n };\n }, [applySubtitleMode, subtitleMode, showControlsTemporarily]);\n\n useEffect(() => {\n const video = videoRef.current;\n if (!video) return;\n\n video.volume = volume;\n video.muted = isMuted || volume === 0;\n }, [volume, isMuted]);\n\n useEffect(() => {\n applySubtitleMode(subtitleMode);\n }, [subtitleMode, applySubtitleMode]);\n\n useEffect(() => {\n const onFullscreenChange = () => {\n setIsFullscreen(Boolean(document.fullscreenElement));\n };\n\n document.addEventListener(\"fullscreenchange\", onFullscreenChange);\n\n return () => {\n document.removeEventListener(\"fullscreenchange\", onFullscreenChange);\n };\n }, []);\n\n useEffect(() => {\n let cancelled = false;\n\n async function loadStoryboard() {\n if (!parsed.storyboard) {\n setStoryboardCues([]);\n return;\n }\n\n if (parsed.storyboard.frames.length > 0) {\n setStoryboardCues(parsed.storyboard.frames);\n return;\n }\n\n if (!parsed.storyboard.src) {\n setStoryboardCues([]);\n return;\n }\n\n try {\n const response = await fetch(parsed.storyboard.src);\n\n if (!response.ok) {\n throw new Error(\"Storyboard not found\");\n }\n\n const text = await response.text();\n const cues = parseStoryboardVtt(\n text,\n new URL(parsed.storyboard.src, window.location.href).href,\n );\n\n if (!cancelled) {\n setStoryboardCues(cues);\n }\n } catch {\n if (!cancelled && parsed.storyboard.fallbackImage) {\n setStoryboardCues([\n {\n start: 0,\n end: Number.MAX_SAFE_INTEGER,\n image: parsed.storyboard.fallbackImage,\n w: parsed.storyboard.width ?? 160,\n h: parsed.storyboard.height ?? 90,\n },\n ]);\n }\n }\n }\n\n loadStoryboard();\n\n return () => {\n cancelled = true;\n };\n }, [parsed.storyboard]);\n\n useEffect(() => {\n const video = videoRef.current;\n let cancelled = false;\n\n if (!video || !activeSource) {\n return;\n }\n\n destroyMediaEngines();\n\n setError(null);\n setIsLoading(true);\n setCurrentTime(0);\n setBufferedTime(0);\n setDuration(0);\n setSelectedQuality(\"auto\");\n setQualities([AUTO_QUALITY]);\n setAudioTracks([]);\n setSelectedAudio(0);\n setOpenMenu(null);\n\n video.pause();\n video.removeAttribute(\"src\");\n video.load();\n\n const sourceType = inferSourceType(activeSource);\n\n if (sourceType === \"dash\") {\n void (async () => {\n try {\n const dashModule = await import(\"dashjs\");\n if (cancelled) return;\n\n const dashjs = dashModule as any;\n const dash = dashjs.MediaPlayer().create();\n dashRef.current = dash;\n\n dash.updateSettings({\n streaming: {\n abr: {\n autoSwitchBitrate: {\n video: true,\n },\n },\n },\n });\n\n dash.on(dashjs.MediaPlayer.events.STREAM_INITIALIZED, () => {\n const bitrates = dash.getBitrateInfoListFor(\"video\") ?? [];\n\n setQualities([\n AUTO_QUALITY,\n ...bitrates.map((item: any, index: number) => ({\n id: `dash-${index}`,\n label: item.height\n ? `${item.height}p`\n : `${Math.round((item.bitrate ?? 0) / 1000)} kbps`,\n type: \"dash\" as const,\n index,\n })),\n ]);\n\n setIsLoading(false);\n });\n\n dash.on(dashjs.MediaPlayer.events.ERROR, () => {\n setError(\"Não foi possível reproduzir o stream MPEG-DASH.\");\n setIsLoading(false);\n });\n\n dash.initialize(video, activeSource.src, false);\n } catch {\n if (!cancelled) {\n setError(\"Não foi possível carregar o player MPEG-DASH.\");\n setIsLoading(false);\n }\n }\n })();\n\n return () => {\n cancelled = true;\n destroyMediaEngines();\n };\n }\n\n if (sourceType === \"hls\") {\n void (async () => {\n try {\n const HlsModule = await import(\"hls.js\");\n if (cancelled) return;\n\n const Hls = HlsModule.default;\n\n if (Hls.isSupported()) {\n const hls = new Hls({\n enableWorker: true,\n maxBufferLength: 30,\n maxMaxBufferLength: 60,\n maxBufferSize: 60 * 1000 * 1000,\n });\n\n hlsRef.current = hls;\n\n hls.loadSource(activeSource.src);\n hls.attachMedia(video);\n\n hls.on(Hls.Events.MANIFEST_PARSED, (_: any, data: any) => {\n const levels = data.levels ?? hls.levels ?? [];\n setQualities([\n AUTO_QUALITY,\n ...levels.map((level: any, index: number) => ({\n id: `hls-${index}`,\n label: level.height\n ? `${level.height}p`\n : `${Math.round((level.bitrate ?? 0) / 1000)} kbps`,\n type: \"hls\" as const,\n index,\n })),\n ]);\n\n const tracks: any[] = hls.audioTracks ?? [];\n if (tracks.length > 1) {\n setAudioTracks(tracks.map((t: any, i: number) => ({\n id: i,\n label: t.name ?? t.lang ?? `Track ${i + 1}`,\n })));\n setSelectedAudio(hls.audioTrack ?? 0);\n }\n\n setIsLoading(false);\n });\n\n hls.on(Hls.Events.AUDIO_TRACKS_UPDATED, (_: any, data: any) => {\n const tracks: any[] = data.audioTracks ?? [];\n if (tracks.length > 1) {\n setAudioTracks(tracks.map((t: any, i: number) => ({\n id: i,\n label: t.name ?? t.lang ?? `Track ${i + 1}`,\n })));\n }\n });\n\n hls.on(Hls.Events.ERROR, (_: any, data: any) => {\n if (!data.fatal) return;\n\n if (data.type === Hls.ErrorTypes.MEDIA_ERROR) {\n hls.recoverMediaError();\n return;\n }\n\n setError(\"Não foi possível reproduzir o stream HLS.\");\n setIsLoading(false);\n });\n\n return;\n }\n\n if (video.canPlayType(\"application/vnd.apple.mpegurl\")) {\n video.src = activeSource.src;\n video.load();\n setIsLoading(false);\n return;\n }\n\n setError(\"Este navegador não suporta HLS.\");\n setIsLoading(false);\n } catch {\n if (!cancelled) {\n setError(\"Não foi possível carregar o player HLS.\");\n setIsLoading(false);\n }\n }\n })();\n\n return () => {\n cancelled = true;\n destroyMediaEngines();\n };\n }\n\n video.src = activeSource.src;\n video.load();\n setIsLoading(false);\n\n return () => {\n cancelled = true;\n video.removeAttribute(\"src\");\n video.load();\n };\n }, [activeSource, destroyMediaEngines]);\n\n const togglePlay = useCallback(async () => {\n const video = videoRef.current;\n if (!video) return;\n\n try {\n if (video.paused) {\n await video.play();\n } else {\n video.pause();\n }\n } catch {\n setError(\"O navegador bloqueou a reprodução automática.\");\n }\n }, []);\n\n const seekRelative = useCallback((seconds: number) => {\n const video = videoRef.current;\n if (!video) return;\n\n video.currentTime = Math.max(\n 0,\n Math.min(video.currentTime + seconds, video.duration || 0),\n );\n }, []);\n\n const toggleFullscreen = useCallback(async () => {\n const player = playerRef.current;\n if (!player) return;\n\n try {\n if (!document.fullscreenElement) {\n await player.requestFullscreen();\n } else {\n await document.exitFullscreen();\n }\n } catch {\n setError(\"Não foi possível alterar o modo fullscreen.\");\n }\n }, []);\n\n const changeAudio = useCallback((trackId: number) => {\n setSelectedAudio(trackId);\n setOpenMenu(null);\n if (hlsRef.current) {\n hlsRef.current.audioTrack = trackId;\n }\n }, []);\n\n const changeQuality = useCallback(\n (qualityId: string) => {\n const option = qualities.find((quality) => quality.id === qualityId);\n if (!option) return;\n\n setSelectedQuality(qualityId);\n setOpenMenu(null);\n\n if (option.type === \"auto\") {\n if (hlsRef.current) {\n hlsRef.current.currentLevel = -1;\n }\n\n if (dashRef.current) {\n dashRef.current.updateSettings({\n streaming: {\n abr: {\n autoSwitchBitrate: {\n video: true,\n },\n },\n },\n });\n }\n\n return;\n }\n\n if (option.type === \"hls\" && hlsRef.current && option.index != null) {\n hlsRef.current.currentLevel = option.index;\n return;\n }\n\n if (option.type === \"dash\" && dashRef.current && option.index != null) {\n dashRef.current.updateSettings({\n streaming: {\n abr: {\n autoSwitchBitrate: {\n video: false,\n },\n },\n },\n });\n\n dashRef.current.setQualityFor(\"video\", option.index);\n }\n },\n [qualities],\n );\n\n const handleProgressPointerMove = useCallback(\n (event: PointerEvent<HTMLDivElement>) => {\n const progress = progressRef.current;\n\n if (!progress || !duration || storyboardCues.length === 0) {\n setPreview(null);\n return;\n }\n\n const rect = progress.getBoundingClientRect();\n const x = Math.max(0, Math.min(event.clientX - rect.left, rect.width));\n const time = (x / rect.width) * duration;\n const cue = findStoryboardCue(storyboardCues, time);\n\n if (!cue) {\n setPreview(null);\n return;\n }\n\n setPreview({\n cue,\n time,\n left: Math.max(80, Math.min(x, rect.width - 80)),\n });\n },\n [duration, storyboardCues],\n );\n\n const handleProgressPointerLeave = useCallback(() => {\n setPreview(null);\n }, []);\n\n const handleProgressPointerDown = useCallback(\n (event: PointerEvent<HTMLDivElement>) => {\n const video = videoRef.current;\n const progress = progressRef.current;\n\n if (!video || !progress || !duration) return;\n\n const rect = progress.getBoundingClientRect();\n const x = Math.max(0, Math.min(event.clientX - rect.left, rect.width));\n const nextTime = (x / rect.width) * duration;\n\n video.currentTime = nextTime;\n setCurrentTime(nextTime);\n },\n [duration],\n );\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n const target = event.target as HTMLElement;\n const tagName = target.tagName.toLowerCase();\n\n if ([\"input\", \"select\", \"button\"].includes(tagName)) {\n return;\n }\n\n if (event.key === \" \") {\n event.preventDefault();\n togglePlay();\n }\n\n if (event.key === \"ArrowRight\") {\n seekRelative(10);\n }\n\n if (event.key === \"ArrowLeft\") {\n seekRelative(-10);\n }\n\n if (event.key.toLowerCase() === \"f\") {\n toggleFullscreen();\n }\n\n if (event.key.toLowerCase() === \"m\") {\n setIsMuted((value) => !value);\n }\n },\n [seekRelative, toggleFullscreen, togglePlay],\n );\n\n if (!activeSource) {\n return (\n <div className=\"rounded-xl border border-red-200 bg-red-50 p-4 text-sm text-red-700\">\n O componente Video precisa de pelo menos um{\" \"}\n <code>{\"<Source />\"}</code>.\n </div>\n );\n }\n\n return (\n <div\n ref={containerRef}\n className={`mx-auto w-full max-w-6xl ${className ?? \"\"}`}\n >\n <div\n ref={playerRef}\n tabIndex={0}\n onKeyDown={handleKeyDown}\n onMouseMove={showControlsTemporarily}\n onMouseLeave={() => {\n if (isPlaying && autoHideControls) {\n setControlsVisible(false);\n }\n }}\n className=\"relative aspect-video w-full overflow-hidden rounded-[14px] bg-black shadow-[0_30px_90px_rgba(15,15,15,0.22)] outline-none ring-1 ring-black/5\"\n >\n <video\n ref={videoRef}\n className=\"h-full w-full object-contain\"\n poster={poster}\n playsInline\n preload=\"metadata\"\n crossOrigin=\"anonymous\"\n >\n {parsed.subtitles.map((subtitle) => (\n <track\n key={`${activeSource.src}-${subtitle.srclang}`}\n kind=\"subtitles\"\n src={subtitle.src}\n srcLang={subtitle.srclang}\n label={subtitle.label}\n default={subtitle.default}\n />\n ))}\n </video>\n\n <div\n className={`pointer-events-none absolute inset-0 z-10 grid place-items-center transition ${\n isPlaying ? \"opacity-0\" : \"opacity-100\"\n }`}\n >\n <span className=\"grid size-20 place-items-center rounded-full bg-white/15 text-white backdrop-blur-xl ring-1 ring-white/20\">\n <PlayIcon className=\"ml-1 size-9\" />\n </span>\n </div>\n\n {isLoading && (\n <div className=\"pointer-events-none absolute inset-0 z-20 grid place-items-center bg-black/10\">\n <div className=\"size-9 animate-spin rounded-full border-2 border-white/25 border-t-white\" />\n </div>\n )}\n\n {error && (\n <div className=\"absolute inset-x-8 top-1/2 z-40 -translate-y-1/2 rounded-2xl border border-white/10 bg-black/75 p-5 text-center text-sm text-white shadow-2xl backdrop-blur-xl\">\n {error}\n </div>\n )}\n\n <div\n ref={chromeRef}\n onClick={togglePlay}\n className={`absolute inset-0 z-30 flex flex-col justify-between bg-gradient-to-b from-black/55 via-black/10 to-black/75 ${\n controlsVisible ? \"\" : \"pointer-events-none\"\n }`}\n >\n <header onClick={(e) => e.stopPropagation()} className=\"flex items-start justify-between gap-4 px-7 pt-7 text-white md:px-9 md:pt-8\">\n <div>\n {title && (\n <h1 className=\"text-lg font-bold tracking-wide md:text-xl\">\n {title}\n </h1>\n )}\n\n {description && (\n <p className=\"mt-1 text-sm font-medium text-white/85\">\n {description}\n </p>\n )}\n </div>\n\n {parsed.sources.length > 1 && (\n <select\n value={String(sourceIndex)}\n onChange={(e) => setSourceIndex(Number(e.target.value))}\n aria-label=\"Video source\"\n className=\"h-8 rounded-full border border-white/15 bg-white/10 px-3 text-xs font-semibold text-white outline-none backdrop-blur-md transition hover:bg-white/15\"\n >\n {parsed.sources.map((source, index) => (\n <option key={`${source.src}-${index}`} value={String(index)} className=\"text-black\">\n {source.label ?? source.type ?? `Source ${index + 1}`}\n </option>\n ))}\n </select>\n )}\n </header>\n\n <footer onClick={(e) => e.stopPropagation()} className=\"px-7 pb-7 text-white md:px-9 md:pb-8\">\n <div\n ref={progressRef}\n onPointerMove={handleProgressPointerMove}\n onPointerLeave={handleProgressPointerLeave}\n onPointerDown={handleProgressPointerDown}\n className=\"relative mb-6 h-5 cursor-pointer\"\n >\n {preview && (\n <div\n className=\"pointer-events-none absolute bottom-8 z-20 -translate-x-1/2 rounded-lg bg-black/80 p-1 shadow-2xl ring-1 ring-white/15 backdrop-blur\"\n style={{ left: preview.left }}\n >\n <div\n className=\"overflow-hidden rounded-md bg-neutral-900\"\n style={{\n width: preview.cue.w ?? 160,\n height: preview.cue.h ?? 90,\n backgroundImage: `url(${preview.cue.image})`,\n backgroundPosition:\n preview.cue.x != null && preview.cue.y != null\n ? `-${preview.cue.x}px -${preview.cue.y}px`\n : \"center\",\n backgroundSize: preview.cue.x != null ? \"auto\" : \"cover\",\n backgroundRepeat: \"no-repeat\",\n }}\n />\n\n <div className=\"pt-1 text-center text-[11px] font-semibold text-white/80\">\n {formatTime(preview.time)}\n </div>\n </div>\n )}\n\n <div className=\"absolute left-0 right-0 top-1/2 h-[5px] -translate-y-1/2 overflow-hidden rounded-full bg-white/22\">\n <div\n className=\"absolute inset-y-0 left-0 bg-white/30\"\n style={{ width: `${bufferedPercent}%` }}\n />\n\n <div\n className=\"absolute inset-y-0 left-0 bg-white/85\"\n style={{ width: `${progressPercent}%` }}\n />\n </div>\n </div>\n\n <div className=\"flex items-center justify-between gap-5\">\n <div className=\"flex items-center gap-5\">\n <button\n type=\"button\"\n onClick={togglePlay}\n className=\"grid size-8 place-items-center text-white transition hover:scale-105 hover:text-white/80\"\n aria-label={isPlaying ? \"Pause\" : \"Play\"}\n >\n {isPlaying ? (\n <PauseIcon className=\"size-7\" />\n ) : (\n <PlayIcon className=\"size-7\" />\n )}\n </button>\n\n <button\n type=\"button\"\n onClick={() => seekRelative(10)}\n className=\"hidden size-8 place-items-center text-white transition hover:scale-105 hover:text-white/80 sm:grid\"\n aria-label=\"Forward 10 seconds\"\n >\n <ForwardIcon className=\"size-7\" />\n </button>\n\n <div className=\"hidden items-center gap-2 text-sm font-semibold text-white/75 sm:flex\">\n <span>{formatTime(currentTime)}</span>\n <span className=\"text-white/35\">/</span>\n <span>{formatTime(duration)}</span>\n </div>\n </div>\n\n <div className=\"flex items-center gap-1\">\n <button\n type=\"button\"\n onClick={() => setIsMuted((value) => !value)}\n className=\"grid size-8 place-items-center text-white transition hover:scale-105 hover:text-white/80\"\n aria-label={isMuted ? \"Unmute\" : \"Mute\"}\n >\n {isMuted || volume === 0 ? (\n <MutedIcon className=\"size-6\" />\n ) : (\n <VolumeIcon className=\"size-6\" />\n )}\n </button>\n\n <input\n type=\"range\"\n min=\"0\"\n max=\"1\"\n step=\"0.01\"\n value={isMuted ? 0 : volume}\n onChange={(event) => {\n const nextVolume = Number(event.target.value);\n setVolume(nextVolume);\n setIsMuted(nextVolume === 0);\n }}\n className=\"hidden h-1 w-20 accent-white md:block\"\n aria-label=\"Audio level\"\n />\n\n <div className=\"mx-1 hidden h-4 w-px bg-white/20 md:block\" />\n\n {audioTracks.length > 1 && (\n <div className=\"relative\">\n <button\n type=\"button\"\n onClick={() => setOpenMenu(openMenu === \"audio\" ? null : \"audio\")}\n className={`grid size-8 place-items-center rounded transition hover:text-white/80 ${openMenu === \"audio\" ? \"text-white\" : \"text-white/60\"}`}\n aria-label=\"Audio track\"\n >\n <AudioIcon className=\"size-5\" />\n </button>\n {openMenu === \"audio\" && (\n <PopoverMenu onClose={() => setOpenMenu(null)}>\n {audioTracks.map((track) => (\n <PopoverItem\n key={track.id}\n active={selectedAudio === track.id}\n onClick={() => changeAudio(track.id)}\n >\n {track.label}\n </PopoverItem>\n ))}\n </PopoverMenu>\n )}\n </div>\n )}\n\n {parsed.subtitles.length > 0 && (\n <div className=\"relative\">\n <button\n type=\"button\"\n onClick={() => setOpenMenu(openMenu === \"captions\" ? null : \"captions\")}\n className={`grid size-8 place-items-center rounded transition hover:text-white/80 ${subtitleMode !== \"off\" || openMenu === \"captions\" ? \"text-white\" : \"text-white/60\"}`}\n aria-label=\"Captions\"\n >\n <CaptionsIcon className=\"size-5\" />\n </button>\n {openMenu === \"captions\" && (\n <PopoverMenu onClose={() => setOpenMenu(null)}>\n <PopoverItem\n active={subtitleMode === \"off\"}\n onClick={() => { setSubtitleMode(\"off\"); setOpenMenu(null); }}\n >\n Off\n </PopoverItem>\n {parsed.subtitles.map((subtitle) => (\n <PopoverItem\n key={subtitle.srclang}\n active={subtitleMode === subtitle.srclang}\n onClick={() => { setSubtitleMode(subtitle.srclang); setOpenMenu(null); }}\n >\n {subtitle.label}\n </PopoverItem>\n ))}\n </PopoverMenu>\n )}\n </div>\n )}\n\n <div className=\"relative\">\n <button\n type=\"button\"\n onClick={() => setOpenMenu(openMenu === \"quality\" ? null : \"quality\")}\n className={`flex h-8 items-center gap-1 rounded px-2 text-xs font-semibold transition hover:text-white/80 ${openMenu === \"quality\" ? \"text-white\" : \"text-white/60\"}`}\n aria-label=\"Quality\"\n >\n <QualityIcon className=\"size-4\" />\n <span className=\"hidden sm:inline\">\n {qualities.find((q) => q.id === selectedQuality)?.label ?? \"Auto\"}\n </span>\n </button>\n {openMenu === \"quality\" && (\n <PopoverMenu onClose={() => setOpenMenu(null)}>\n {[...qualities].reverse().map((quality) => (\n <PopoverItem\n key={quality.id}\n active={selectedQuality === quality.id}\n onClick={() => changeQuality(quality.id)}\n >\n {quality.label}\n {quality.id === \"auto\" && (\n <span className=\"ml-1 text-[10px] text-white/40\">ABR</span>\n )}\n </PopoverItem>\n ))}\n </PopoverMenu>\n )}\n </div>\n\n <button\n type=\"button\"\n onClick={toggleFullscreen}\n className=\"grid size-8 place-items-center text-white/60 transition hover:scale-105 hover:text-white/80\"\n aria-label={isFullscreen ? \"Exit fullscreen\" : \"Fullscreen\"}\n >\n <FullscreenIcon className=\"size-7\" />\n </button>\n </div>\n </div>\n </footer>\n </div>\n </div>\n </div>\n );\n}\n\nexport const VideoPlayer = Video;\n\nfunction PopoverMenu({ children, onClose }: { children: ReactNode; onClose: () => void }) {\n return (\n <>\n <div className=\"fixed inset-0 z-40\" onClick={onClose} />\n <div className=\"absolute bottom-full right-0 z-50 mb-2 min-w-[120px] overflow-hidden rounded-xl border border-white/10 bg-black/85 py-1 shadow-2xl backdrop-blur-xl\">\n {children}\n </div>\n </>\n );\n}\n\nfunction PopoverItem({\n children,\n active,\n onClick,\n}: {\n children: ReactNode;\n active: boolean;\n onClick: () => void;\n}) {\n return (\n <button\n type=\"button\"\n onClick={onClick}\n className={`flex w-full items-center gap-2 px-4 py-2 text-left text-sm font-medium transition hover:bg-white/10 ${active ? \"text-white\" : \"text-white/55\"}`}\n >\n <span className={`size-1.5 rounded-full ${active ? \"bg-white\" : \"bg-transparent\"}`} />\n {children}\n </button>\n );\n}\n\nfunction parseVideoChildren(children: ReactNode): ParsedVideoChildren {\n const parsed: ParsedVideoChildren = {\n sources: [],\n subtitles: [],\n };\n\n React.Children.forEach(children, (child) => {\n if (!React.isValidElement(child)) return;\n\n if (child.type === Sources) {\n const element = child as ReactElement<SourcesProps>;\n\n React.Children.forEach(element.props.children, (sourceChild) => {\n if (!React.isValidElement(sourceChild)) return;\n if (sourceChild.type !== Source) return;\n\n const sourceElement = sourceChild as ReactElement<SourceProps>;\n parsed.sources.push(sourceElement.props);\n });\n }\n\n if (child.type === Subtitles) {\n const element = child as ReactElement<SubtitlesProps>;\n\n React.Children.forEach(element.props.children, (subtitleChild) => {\n if (!React.isValidElement(subtitleChild)) return;\n if (subtitleChild.type !== Subtitle) return;\n\n const subtitleElement = subtitleChild as ReactElement<SubtitleProps>;\n parsed.subtitles.push(subtitleElement.props);\n });\n }\n\n if (child.type === Storyboard) {\n const element = child as ReactElement<StoryboardProps>;\n const frames: StoryboardFrameProps[] = [];\n\n React.Children.forEach(element.props.children, (frameChild) => {\n if (!React.isValidElement(frameChild)) return;\n if (frameChild.type !== StoryboardFrame) return;\n\n const frameElement = frameChild as ReactElement<StoryboardFrameProps>;\n frames.push(frameElement.props);\n });\n\n parsed.storyboard = {\n ...(element.props.src !== undefined && { src: element.props.src }),\n ...(element.props.fallbackImage !== undefined && { fallbackImage: element.props.fallbackImage }),\n ...(element.props.width !== undefined && { width: element.props.width }),\n ...(element.props.height !== undefined && { height: element.props.height }),\n frames,\n };\n }\n });\n\n return parsed;\n}\n\nfunction inferSourceType(source: SourceProps): VideoSourceType {\n if (source.type) return source.type;\n\n const src = source.src.toLowerCase();\n\n if (src.includes(\".mpd\") || src.includes(\"/dash\")) return \"dash\";\n if (src.includes(\".m3u8\") || src.includes(\"/hls\")) return \"hls\";\n\n return \"file\";\n}\n\nfunction findStoryboardCue(cues: StoryboardFrameProps[], time: number) {\n return cues.find((cue) => time >= cue.start && time <= cue.end) ?? null;\n}\n\nfunction parseStoryboardVtt(\n text: string,\n baseUrl: string,\n): StoryboardFrameProps[] {\n const lines = text\n .split(/\\r?\\n/)\n .map((line) => line.trim())\n .filter(Boolean);\n\n const cues: StoryboardFrameProps[] = [];\n\n for (let index = 0; index < lines.length; index++) {\n const line = lines[index];\n if (!line || !line.includes(\"-->\")) continue;\n\n const parts = line.split(/\\s+-->\\s+/);\n const startRaw = parts[0];\n const endRaw = parts[1];\n const imageLine = lines[index + 1];\n\n if (!startRaw || !endRaw || !imageLine) continue;\n\n const image = parseStoryboardImageLine(imageLine, baseUrl);\n\n cues.push({\n start: parseVttTimestamp(startRaw),\n end: parseVttTimestamp(endRaw),\n ...image,\n });\n }\n\n return cues;\n}\n\nfunction parseStoryboardImageLine(line: string, baseUrl: string) {\n const splitIndex = line.indexOf(\"#xywh=\");\n const imageRaw = splitIndex >= 0 ? line.slice(0, splitIndex) : line;\n const xywhRaw = splitIndex >= 0 ? line.slice(splitIndex + 6) : null;\n const image = new URL(imageRaw, baseUrl).href;\n\n if (!xywhRaw) {\n return { image };\n }\n\n const [x, y, w, h] = xywhRaw.split(\",\").map(Number);\n\n return {\n image,\n ...(x !== undefined && !isNaN(x) && { x }),\n ...(y !== undefined && !isNaN(y) && { y }),\n ...(w !== undefined && !isNaN(w) && { w }),\n ...(h !== undefined && !isNaN(h) && { h }),\n };\n}\n\nfunction parseVttTimestamp(value: string) {\n const normalized = value.replace(\",\", \".\");\n const parts = normalized.split(\":\").map(Number);\n\n if (parts.length === 3) {\n return (parts[0] ?? 0) * 3600 + (parts[1] ?? 0) * 60 + (parts[2] ?? 0);\n }\n\n if (parts.length === 2) {\n return (parts[0] ?? 0) * 60 + (parts[1] ?? 0);\n }\n\n return Number(normalized) || 0;\n}\n\nfunction formatTime(seconds: number) {\n if (!Number.isFinite(seconds)) return \"00:00\";\n\n const safeSeconds = Math.max(0, Math.floor(seconds));\n const hours = Math.floor(safeSeconds / 3600);\n const minutes = Math.floor((safeSeconds % 3600) / 60);\n const secs = safeSeconds % 60;\n\n if (hours > 0) {\n return `${hours}:${String(minutes).padStart(2, \"0\")}:${String(secs).padStart(\n 2,\n \"0\",\n )}`;\n }\n\n return `${String(minutes).padStart(2, \"0\")}:${String(secs).padStart(2, \"0\")}`;\n}\n\nfunction PlayIcon({ className }: { className?: string }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\" className={className}>\n <path d=\"M8 5.14v13.72c0 .76.84 1.22 1.48.8l10.2-6.86a.96.96 0 0 0 0-1.6L9.48 4.34A.96.96 0 0 0 8 5.14Z\" />\n </svg>\n );\n}\n\nfunction PauseIcon({ className }: { className?: string }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\" className={className}>\n <path d=\"M7 5.5A1.5 1.5 0 0 1 8.5 4h1A1.5 1.5 0 0 1 11 5.5v13A1.5 1.5 0 0 1 9.5 20h-1A1.5 1.5 0 0 1 7 18.5v-13Zm6 0A1.5 1.5 0 0 1 14.5 4h1A1.5 1.5 0 0 1 17 5.5v13a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5v-13Z\" />\n </svg>\n );\n}\n\nfunction ForwardIcon({ className }: { className?: string }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\" className={className}>\n <path d=\"M5 5.14v13.72c0 .76.84 1.22 1.48.8l8.7-5.86a.96.96 0 0 0 0-1.6L6.48 4.34A.96.96 0 0 0 5 5.14Zm12.5-.64A1.5 1.5 0 0 0 16 6v12a1.5 1.5 0 0 0 3 0V6a1.5 1.5 0 0 0-1.5-1.5Z\" />\n </svg>\n );\n}\n\nfunction VolumeIcon({ className }: { className?: string }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\" className={className}>\n <path d=\"M4 9.5A2.5 2.5 0 0 1 6.5 7H9l5-4v18l-5-4H6.5A2.5 2.5 0 0 1 4 14.5v-5Zm12.5-2.15a1 1 0 0 1 1.4.2 7.5 7.5 0 0 1 0 8.9 1 1 0 1 1-1.6-1.2 5.5 5.5 0 0 0 0-6.5 1 1 0 0 1 .2-1.4Zm3-2.25a1 1 0 0 1 1.4.2 11.25 11.25 0 0 1 0 13.4 1 1 0 1 1-1.6-1.2 9.25 9.25 0 0 0 0-11.2 1 1 0 0 1 .2-1.2Z\" />\n </svg>\n );\n}\n\nfunction MutedIcon({ className }: { className?: string }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\" className={className}>\n <path d=\"M4 9.5A2.5 2.5 0 0 1 6.5 7H9l5-4v18l-5-4H6.5A2.5 2.5 0 0 1 4 14.5v-5Zm13.7.1a1 1 0 0 1 1.4 0l1.4 1.4 1.4-1.4a1 1 0 1 1 1.4 1.4L21.9 12l1.4 1.4a1 1 0 0 1-1.4 1.4l-1.4-1.4-1.4 1.4a1 1 0 1 1-1.4-1.4L19.1 12l-1.4-1.4a1 1 0 0 1 0-1Z\" />\n </svg>\n );\n}\n\nfunction FullscreenIcon({ className }: { className?: string }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" className={className}>\n <path\n d=\"M8.5 4H5.75A1.75 1.75 0 0 0 4 5.75V8.5M15.5 4h2.75A1.75 1.75 0 0 1 20 5.75V8.5M20 15.5v2.75A1.75 1.75 0 0 1 18.25 20H15.5M8.5 20H5.75A1.75 1.75 0 0 1 4 18.25V15.5\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n />\n </svg>\n );\n}\n\nfunction CaptionsIcon({ className }: { className?: string }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" className={className}>\n <rect x=\"2\" y=\"5\" width=\"20\" height=\"14\" rx=\"2\" stroke=\"currentColor\" strokeWidth=\"1.75\" />\n <path d=\"M6 12h4M6 15h8M14 12h4\" stroke=\"currentColor\" strokeWidth=\"1.75\" strokeLinecap=\"round\" />\n </svg>\n );\n}\n\nfunction AudioIcon({ className }: { className?: string }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\" className={className}>\n <path d=\"M12 3a1 1 0 0 0-1.707-.707l-4 4H4a2 2 0 0 0-2 2v3.414a2 2 0 0 0 2 2h2.293l4 4A1 1 0 0 0 12 17V3ZM17.5 8.5a1 1 0 0 1 1.414 0 6 6 0 0 1 0 8.486 1 1 0 1 1-1.414-1.414 4 4 0 0 0 0-5.657 1 1 0 0 1 0-1.415ZM15.086 10.914a1 1 0 0 1 1.414 0 3 3 0 0 1 0 4.243 1 1 0 0 1-1.414-1.414 1 1 0 0 0 0-1.415 1 1 0 0 1 0-1.414Z\" />\n </svg>\n );\n}\n\nfunction QualityIcon({ className }: { className?: string }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" className={className}>\n <rect x=\"2\" y=\"7\" width=\"20\" height=\"13\" rx=\"2\" stroke=\"currentColor\" strokeWidth=\"1.75\" />\n <path d=\"M8 4h8\" stroke=\"currentColor\" strokeWidth=\"1.75\" strokeLinecap=\"round\" />\n <path d=\"M9 13.5v-3l1.5 1.5L12 10v3.5M14 10.5h2.5M14 12.5h2\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n );\n}\n"]}
|
package/dist/VideoUploader.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { VideoUploaderProps } from './types.js';
|
|
3
|
+
import '@geekapps/silo-nextjs';
|
|
4
|
+
|
|
5
|
+
declare function VideoUploader({ bucket, expiresIn, private: isPrivate, onUpload, onError, className, style, disabled, maxSize, accept, showPreview, theme, renderIcon, renderProgress, renderSuccess, renderError, children, }: VideoUploaderProps): react_jsx_runtime.JSX.Element;
|
|
6
|
+
|
|
7
|
+
export { VideoUploader };
|