prismcast 1.2.0 → 1.3.0
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/README.md +26 -1
- package/dist/app.js +29 -2
- package/dist/app.js.map +1 -1
- package/dist/browser/cdp.js +1 -1
- package/dist/browser/cdp.js.map +1 -1
- package/dist/browser/channelSelection.d.ts +14 -4
- package/dist/browser/channelSelection.js +48 -704
- package/dist/browser/channelSelection.js.map +1 -1
- package/dist/browser/index.d.ts +18 -4
- package/dist/browser/index.js +205 -39
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/tuning/fox.d.ts +19 -0
- package/dist/browser/tuning/fox.js +61 -0
- package/dist/browser/tuning/fox.js.map +1 -0
- package/dist/browser/tuning/hbo.d.ts +22 -0
- package/dist/browser/tuning/hbo.js +182 -0
- package/dist/browser/tuning/hbo.js.map +1 -0
- package/dist/browser/tuning/hulu.d.ts +30 -0
- package/dist/browser/tuning/hulu.js +514 -0
- package/dist/browser/tuning/hulu.js.map +1 -0
- package/dist/browser/tuning/sling.d.ts +22 -0
- package/dist/browser/tuning/sling.js +287 -0
- package/dist/browser/tuning/sling.js.map +1 -0
- package/dist/browser/tuning/thumbnailRow.d.ts +18 -0
- package/dist/browser/tuning/thumbnailRow.js +107 -0
- package/dist/browser/tuning/thumbnailRow.js.map +1 -0
- package/dist/browser/tuning/tileClick.d.ts +18 -0
- package/dist/browser/tuning/tileClick.js +102 -0
- package/dist/browser/tuning/tileClick.js.map +1 -0
- package/dist/browser/tuning/youtubeTv.d.ts +17 -0
- package/dist/browser/tuning/youtubeTv.js +99 -0
- package/dist/browser/tuning/youtubeTv.js.map +1 -0
- package/dist/browser/video.d.ts +2 -2
- package/dist/browser/video.js +18 -8
- package/dist/browser/video.js.map +1 -1
- package/dist/channels/index.js +131 -12
- package/dist/channels/index.js.map +1 -1
- package/dist/config/profiles.d.ts +5 -5
- package/dist/config/profiles.js +35 -11
- package/dist/config/profiles.js.map +1 -1
- package/dist/config/providers.d.ts +48 -4
- package/dist/config/providers.js +182 -22
- package/dist/config/providers.js.map +1 -1
- package/dist/config/sites.d.ts +10 -0
- package/dist/config/sites.js +96 -17
- package/dist/config/sites.js.map +1 -1
- package/dist/config/userChannels.js +21 -3
- package/dist/config/userChannels.js.map +1 -1
- package/dist/config/userConfig.d.ts +2 -1
- package/dist/config/userConfig.js +12 -4
- package/dist/config/userConfig.js.map +1 -1
- package/dist/index.js +10 -4
- package/dist/index.js.map +1 -1
- package/dist/routes/auth.js +6 -0
- package/dist/routes/auth.js.map +1 -1
- package/dist/routes/config.d.ts +5 -0
- package/dist/routes/config.js +273 -35
- package/dist/routes/config.js.map +1 -1
- package/dist/routes/debug.d.ts +6 -0
- package/dist/routes/debug.js +274 -0
- package/dist/routes/debug.js.map +1 -0
- package/dist/routes/index.d.ts +1 -0
- package/dist/routes/index.js +3 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/logs.js +17 -5
- package/dist/routes/logs.js.map +1 -1
- package/dist/routes/root.js +507 -128
- package/dist/routes/root.js.map +1 -1
- package/dist/routes/theme.js +7 -0
- package/dist/routes/theme.js.map +1 -1
- package/dist/service/commands.js +8 -8
- package/dist/service/commands.js.map +1 -1
- package/dist/service/generators.js +22 -16
- package/dist/service/generators.js.map +1 -1
- package/dist/streaming/fmp4Segmenter.d.ts +7 -0
- package/dist/streaming/fmp4Segmenter.js +124 -15
- package/dist/streaming/fmp4Segmenter.js.map +1 -1
- package/dist/streaming/hls.d.ts +74 -6
- package/dist/streaming/hls.js +212 -130
- package/dist/streaming/hls.js.map +1 -1
- package/dist/streaming/hlsSegments.js +11 -4
- package/dist/streaming/hlsSegments.js.map +1 -1
- package/dist/streaming/lifecycle.js +1 -1
- package/dist/streaming/lifecycle.js.map +1 -1
- package/dist/streaming/monitor.d.ts +1 -1
- package/dist/streaming/monitor.js +202 -53
- package/dist/streaming/monitor.js.map +1 -1
- package/dist/streaming/mp4Parser.d.ts +29 -1
- package/dist/streaming/mp4Parser.js +243 -18
- package/dist/streaming/mp4Parser.js.map +1 -1
- package/dist/streaming/mpegts.d.ts +5 -2
- package/dist/streaming/mpegts.js +122 -29
- package/dist/streaming/mpegts.js.map +1 -1
- package/dist/streaming/registry.d.ts +1 -1
- package/dist/streaming/registry.js.map +1 -1
- package/dist/streaming/setup.d.ts +13 -1
- package/dist/streaming/setup.js +136 -36
- package/dist/streaming/setup.js.map +1 -1
- package/dist/streaming/showInfo.js +9 -9
- package/dist/streaming/showInfo.js.map +1 -1
- package/dist/streaming/statusEmitter.js +5 -6
- package/dist/streaming/statusEmitter.js.map +1 -1
- package/dist/types/index.d.ts +16 -3
- package/dist/types/index.js +5 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/debugFilter.d.ts +38 -0
- package/dist/utils/debugFilter.js +157 -0
- package/dist/utils/debugFilter.js.map +1 -0
- package/dist/utils/evaluate.js.map +1 -1
- package/dist/utils/ffmpeg.d.ts +5 -0
- package/dist/utils/ffmpeg.js +13 -2
- package/dist/utils/ffmpeg.js.map +1 -1
- package/dist/utils/fileLogger.d.ts +2 -1
- package/dist/utils/fileLogger.js +4 -2
- package/dist/utils/fileLogger.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/logEmitter.d.ts +1 -0
- package/dist/utils/logEmitter.js.map +1 -1
- package/dist/utils/logger.d.ts +9 -8
- package/dist/utils/logger.js +52 -28
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/retry.d.ts +1 -1
- package/dist/utils/retry.js +3 -3
- package/dist/utils/retry.js.map +1 -1
- package/dist/utils/version.js +4 -9
- package/dist/utils/version.js.map +1 -1
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;AAEpC;;;;;;;;;;GAUG;AAEH,+JAA+J;AAC/J,oBAAoB;AACpB,IAAI,cAAc,GAAsB,IAAI,CAAC;AAE7C,kJAAkJ;AAClJ,uDAAuD;AACvD,IAAI,oBAAoB,GAAqB,IAAI,CAAC;AAElD,2JAA2J;AAC3J,yDAAyD;AACzD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;AAEtD,8JAA8J;AAC9J,iFAAiF;AACjF,IAAI,wBAAwB,GAA6C,IAAI,CAAC;AAE9E,kKAAkK;AAClK,kIAAkI;AAClI,IAAI,0BAA0B,GAAG,KAAK,CAAC;AAEvC;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAEhC,OAAO,0BAA0B,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAEhD,0BAA0B,GAAG,KAAK,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AAEH,8FAA8F;AAC9F,IAAI,oBAAoB,GAAG,CAAC,CAAC;AAE7B,6IAA6I;AAC7I,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAgB,CAAC;AAE7C,kKAAkK;AAClK,qCAAqC;AACrC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;AAEzC,gKAAgK;AAChK,iKAAiK;AACjK,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAExD;;;;;;;;GAQG;AAEH,0CAA0C;AAC1C,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,yFAAyF;AACzF,IAAI,SAAS,GAAmB,IAAI,CAAC;AAErC,6DAA6D;AAC7D,IAAI,QAAQ,GAAqB,IAAI,CAAC;AAEtC,wFAAwF;AACxF,IAAI,cAAc,GAAqB,IAAI,CAAC;AAE5C,8DAA8D;AAC9D,IAAI,kBAAkB,GAA4C,IAAI,CAAC;AAEvE,uCAAuC;AACvC,MAAM,gBAAgB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAiBxC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAE3C,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,IAAI,CAAC;QAEH,IAAG,cAAc,IAAI,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;YAElD,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;YAE3C,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3B,CAAC;IACH,CAAC;IAAC,OAAM,MAAM,EAAE,CAAC;QAEf,oCAAoC;IACtC,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAiB;QAE3B,OAAO,EAAE;YAEP,SAAS,EAAE,CAAC,CAAC,cAAc,IAAI,cAAc,CAAC,WAAW,EAAE;YAC3D,SAAS;SACV;QACD,MAAM,EAAE;YAEN,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,GAAG,EAAE,QAAQ,CAAC,GAAG;SAClB;QACD,OAAO,EAAE;YAEP,MAAM,EAAE,cAAc,EAAE;YACxB,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,oBAAoB;SAC7C;QACD,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;KACzB,CAAC;IAEF,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAU;IAE5C,sCAAsC;IACtC,MAAM,MAAM,GAAG,CAAE,OAAO,EAAE,MAAM,CAAC,EAAE,oBAAoB,CAAC,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEpE,yCAAyC;IACzC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAE3B,2BAA2B;IAC3B,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAU;IAE9C,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAElC,IAAG,MAAM,EAAE,CAAC;QAEV,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAE9B,oFAAoF;QACpF,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAErC,wHAAwH;IAC1H,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,IAAU;IAElC,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU;IAExB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB;IAEvC,IAAI,CAAC;QAEH,MAAM,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAErD,GAAG,CAAC,IAAI,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,KAAK,CAAC,yCAAyC,EAAE,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAElF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AAEH;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe;IAE7B,yFAAyF;IACzF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAEtE,IAAI,CAAC;QAEH,uJAAuJ;QACvJ,2EAA2E;QAC3E,QAAQ,CAAC,CAAE,aAAa,EAAE,UAAU,EAAE,IAAI,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAEvD,GAAG,CAAC,IAAI,CAAC,2CAA2C,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;IAAC,OAAM,MAAM,EAAE,CAAC;QAEf,wJAAwJ;QACxJ,sCAAsC;IACxC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB;IAE/B,8HAA8H;IAC9H,IAAG,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAEjC,OAAO,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;IACvC,CAAC;IAED,oEAAoE;IACpE,MAAM,KAAK,GAAG;QAEZ,yGAAyG;QACzG,8DAA8D;QAE9D,gGAAgG;QAChG,wBAAwB;QACxB,+BAA+B;QAE/B,mGAAmG;QACnG,4DAA4D;QAC5D,kEAAkE;KACnE,CAAC;IAEF,uDAAuD;IACvD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IAExC,IAAG,KAAK,EAAE,CAAC;QAET,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;AACxF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB;IAEhC,OAAO;QAEL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAkCG;QACH,IAAI,EAAE;YAEJ,kCAAkC;YAClC,4CAA4C;YAC5C,oCAAoC;YACpC,iCAAiC;YACjC,uCAAuC;YACvC,0CAA0C;YAC1C,+CAA+C;YAC/C,yBAAyB;YACzB,6BAA6B;YAC7B,mBAAmB;YACnB,gBAAgB;YAChB,CAAE,gBAAgB,EAAE,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC;SACtH;QAED,sJAAsJ;QACtJ,iEAAiE;QACjE,eAAe,EAAE,IAAI;QAErB,mFAAmF;QACnF,cAAc,EAAE,iBAAiB,EAAE;QAEnC,yJAAyJ;QACzJ,4EAA4E;QAC5E,QAAQ,EAAE,KAAK;QAEf;;;;;;;;;;;;;;;;;WAiBG;QACH,iBAAiB,EAAE;YAEjB,sDAAsD;YACtD,4BAA4B;YAC5B,wBAAwB;YACxB,sBAAsB;YACtB,qBAAqB;YACrB,uCAAuC;YACvC,cAAc;SACf;QAED,uJAAuJ;QACvJ,iEAAiE;QACjE,IAAI,EAAE,IAAI;QAEV,qJAAqJ;QACrJ,4EAA4E;QAC5E,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC;KAChE,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,oBAAoB,CAAC,IAAmB;IAErD,2JAA2J;IAC3J,0JAA0J;IAC1J,oDAAoD;IACpD,IAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAEf,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAExE,+FAA+F;QAC/F,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;aAC1B,MAAM,CAAC,CAAC,GAAW,EAAW,EAAE;YAE/B,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC;QACjG,CAAC,CAAC;aACD,MAAM,CAAC;YAEN,CAAE,8BAA8B,EAAE,aAAa,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1D,CAAE,mBAAmB,EAAE,aAAa,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC;SAChD,CAAC,CAAC;IACP,CAAC;IAED,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,uBAAuB,CAAC,OAAgB;IAErD,IAAI,QAAQ,GAAmB,IAAI,CAAC;IACpC,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,IAAI,CAAC;QAEH,gFAAgF;QAChF,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QAC5C,IAAI,UAAU,GAAmB,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC;QAElF,IAAG,CAAC,UAAU,EAAE,CAAC;YAEf,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;YACnC,aAAa,GAAG,IAAI,CAAC;YACrB,UAAU,GAAG,QAAQ,CAAC;QACxB,CAAC;QAED,gEAAgE;QAChE,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,GAA2F,EAAE;YAElJ,OAAO;gBAEL,kEAAkE;gBAClE,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAE7B,2DAA2D;gBAC3D,YAAY,EAAE,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW;gBACrD,WAAW,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU;aACnD,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC;QAChE,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,YAAY,CAAC;QAEnE,oEAAoE;QACpE,gBAAgB,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QAClE,uBAAuB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAE7C,GAAG,CAAC,KAAK,CAAC,4FAA4F,EACpG,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,WAAW,EAC7C,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,YAAY,EAC/C,QAAQ,EAAE,SAAS,CAAC,CAAC;QAEvB,yEAAyE;QACzE,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAEhD,IAAG,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;YAErD,GAAG,CAAC,IAAI,CAAC,gFAAgF,EACvF,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,WAAW,CAAC,MAAM,EAC/D,YAAY,CAAC,gBAAgB,CAAC,EAAE,EAAE,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,IAAI,CAAC,yEAAyE,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1G,CAAC;YAAS,CAAC;QAET,6CAA6C;QAC7C,IAAG,aAAa,IAAI,QAAQ,EAAE,CAAC;YAE7B,IAAI,CAAC;gBAEH,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;YACzB,CAAC;YAAC,OAAM,WAAW,EAAE,CAAC;gBAEpB,uBAAuB;YACzB,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,uBAAuB;IAE9B,qHAAqH;IACrH,cAAc,GAAG,IAAI,CAAC;IACtB,oBAAoB,GAAG,IAAI,CAAC;IAE5B,uIAAuI;IACvI,eAAe,EAAE,CAAC;IAElB,4JAA4J;IAC5J,kCAAkC;IAClC,IAAG,eAAe,EAAE,CAAC;QAEnB,IAAG,kBAAkB,EAAE,CAAC;YAEtB,YAAY,CAAC,kBAAkB,CAAC,CAAC;YACjC,kBAAkB,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,eAAe,GAAG,KAAK,CAAC;QACxB,SAAS,GAAG,IAAI,CAAC;QACjB,QAAQ,GAAG,IAAI,CAAC;QAChB,cAAc,GAAG,IAAI,CAAC;QAEtB,IAAG,CAAC,0BAA0B,EAAE,CAAC;YAE/B,GAAG,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,2IAA2I;IAC3I,IAAG,CAAC,0BAA0B,EAAE,CAAC;QAE/B,GAAG,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;IACzF,CAAC;IAED,iKAAiK;IACjK,2IAA2I;IAC3I,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAEhC,KAAI,MAAM,UAAU,IAAI,OAAO,EAAE,CAAC;QAEhC,eAAe,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IACjF,CAAC;IAED,oIAAoI;IACpI,IAAG,CAAC,0BAA0B,EAAE,CAAC;QAE/B,KAAK,uBAAuB,EAAE,CAAC;IACjC,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IAErC,wJAAwJ;IACxJ,eAAe;IACf,IAAG,cAAc,IAAI,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;QAElD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,yHAAyH;IACzH,IAAI,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;QAErC,uJAAuJ;QACvJ,+CAA+C;QAC/C,cAAc,GAAG,MAAM,MAAM,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC;QAEzE,oIAAoI;QACpI,cAAc,CAAC,EAAE,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC;QAE3D,0JAA0J;QAC1J,8JAA8J;QAC9J,iHAAiH;QACjH,IAAI,CAAC;YAEH,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,cAAc,CAAC,CAAC;YAE7D,MAAM,aAAa,CAAC,eAAe,CAAC,uCAAuC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QACxH,CAAC;QAAC,MAAM,CAAC;YAEP,oIAAoI;YACpI,2GAA2G;YAC3G,GAAG,CAAC,IAAI,CAAC,uFAAuF,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAChI,CAAC;QAED,sJAAsJ;QACtJ,4BAA4B;QAC5B,MAAM,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAE9C,sJAAsJ;QACtJ,oGAAoG;QACpG,MAAM,qBAAqB,EAAE,CAAC;QAE9B,yJAAyJ;QACzJ,iCAAiC;QACjC,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;QAErD,oBAAoB,GAAG,aAAa,CAAC;QAErC,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;QAE7C,iDAAiD;QACjD,MAAM,uBAAuB,EAAE,CAAC;IAClC,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,KAAK,CAAC,+BAA+B,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAE/D,2GAA2G;QAC3G,cAAc,GAAG,IAAI,CAAC;QACtB,oBAAoB,GAAG,IAAI,CAAC;QAE5B,MAAM,KAAK,CAAC;IACd,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAE9B,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB;IAEhC,OAAO,CAAC,CAAC,cAAc,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;AAC1D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB;IAEzC,yDAAyD;IACzD,IAAG,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;QAEpD,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,GAAmB,IAAI,CAAC;IACpC,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,IAAI,CAAC;QAEH,qJAAqJ;QACrJ,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;QACnD,IAAI,UAAU,GAAmB,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC;QAElF,sHAAsH;QACtH,IAAG,CAAC,UAAU,EAAE,CAAC;YAEf,QAAQ,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;YAC1C,aAAa,GAAG,IAAI,CAAC;YAErB,2DAA2D;YAC3D,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAC9B,UAAU,GAAG,QAAQ,CAAC;QACxB,CAAC;QAED,uJAAuJ;QACvJ,uCAAuC;QACvC,MAAM,uBAAuB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAEhD,iDAAiD;QACjD,IAAG,aAAa,IAAI,QAAQ,EAAE,CAAC;YAE7B,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAEhC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;IACH,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,uEAAuE;QACvE,IAAG,aAAa,IAAI,QAAQ,EAAE,CAAC;YAE7B,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAEhC,IAAI,CAAC;gBAEH,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;YACzB,CAAC;YAAC,OAAM,WAAW,EAAE,CAAC;gBAEpB,6CAA6C;YAC/C,CAAC;QACH,CAAC;QAED,oFAAoF;QACpF,GAAG,CAAC,IAAI,CAAC,mDAAmD,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACpF,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IAEnC,yDAAyD;IACzD,IAAG,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;QAEpD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC;QAEH,OAAO,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC;IAAC,OAAM,MAAM,EAAE,CAAC;QAEf,iGAAiG;QACjG,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY;IAEhC,+JAA+J;IAC/J,2BAA2B;IAC3B,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAE1B,MAAM,UAAU,GAAG,cAAc,CAAC;IAElC,4FAA4F;IAC5F,cAAc,GAAG,IAAI,CAAC;IACtB,oBAAoB,GAAG,IAAI,CAAC;IAE5B,IAAG,CAAC,UAAU,EAAE,CAAC;QAEf,OAAO;IACT,CAAC;IAED,2HAA2H;IAC3H,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAE7B,IAAG,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;QAE5B,IAAI,CAAC;YAEH,MAAM,OAAO,CAAC,IAAI,CAAC;gBACjB,UAAU,CAAC,KAAK,EAAE;gBAClB,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;aACjG,CAAC,CAAC;YAEH,gBAAgB,GAAG,IAAI,CAAC;QAC1B,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YAEd,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAEnC,IAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAEjC,GAAG,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBAEN,GAAG,CAAC,KAAK,CAAC,0BAA0B,EAAE,OAAO,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QAEN,gBAAgB,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,uEAAuE;IACvE,IAAG,CAAC,gBAAgB,EAAE,CAAC;QAErB,IAAI,CAAC;YAEH,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;YAE5C,IAAG,cAAc,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;gBAE5C,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC/B,GAAG,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YAEd,GAAG,CAAC,KAAK,CAAC,iCAAiC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,kGAAkG;IAClG,eAAe,EAAE,CAAC;AACpB,CAAC;AAED;;;;;;;;;GASG;AAEH;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAW;IAE9C,yCAAyC;IACzC,IAAG,eAAe,EAAE,CAAC;QAEnB,OAAO,EAAE,KAAK,EAAE,+BAA+B,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACpE,CAAC;IAED,+BAA+B;IAC/B,IAAG,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;QAEpD,OAAO,EAAE,KAAK,EAAE,2BAA2B,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAChE,CAAC;IAED,IAAI,CAAC;QAEH,uHAAuH;QACvH,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;QAE3C,uHAAuH;QACvH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAEzB,wDAAwD;YACxD,IAAG,eAAe,IAAI,SAAS,EAAE,CAAC;gBAEhC,GAAG,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;gBAErD,+EAA+E;gBAC/E,KAAK,YAAY,EAAE,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,6BAA6B;QAC7B,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAE7D,2EAA2E;QAC3E,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAElC,mBAAmB;QACnB,eAAe,GAAG,IAAI,CAAC;QACvB,QAAQ,GAAG,GAAG,CAAC;QACf,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE5B,gCAAgC;QAChC,kBAAkB,GAAG,UAAU,CAAC,GAAG,EAAE;YAEnC,GAAG,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;YAEtE,KAAK,YAAY,EAAE,CAAC;QACtB,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAErB,GAAG,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;QAE5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,uBAAuB;QACvB,IAAG,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;YAEtC,IAAI,CAAC;gBAEH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;YAC1B,CAAC;YAAC,OAAM,WAAW,EAAE,CAAC;gBAEpB,uBAAuB;YACzB,CAAC;QACH,CAAC;QAED,SAAS,GAAG,IAAI,CAAC;QAEjB,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACvD,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY;IAEhC,4CAA4C;IAC5C,IAAG,kBAAkB,EAAE,CAAC;QAEtB,YAAY,CAAC,kBAAkB,CAAC,CAAC;QACjC,kBAAkB,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,2CAA2C;IAC3C,IAAG,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;QAEtC,IAAI,CAAC;YAEH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAM,MAAM,EAAE,CAAC;YAEf,+DAA+D;QACjE,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,MAAM,SAAS,GAAG,eAAe,CAAC;IAElC,eAAe,GAAG,KAAK,CAAC;IACxB,SAAS,GAAG,IAAI,CAAC;IACjB,QAAQ,GAAG,IAAI,CAAC;IAChB,cAAc,GAAG,IAAI,CAAC;IAEtB,kCAAkC;IAClC,IAAG,SAAS,IAAI,cAAc,IAAI,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;QAE/D,MAAM,qBAAqB,EAAE,CAAC;IAChC,CAAC;IAED,IAAG,SAAS,EAAE,CAAC;QAEb,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAE/B,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc;IAE5B,OAAO;QAEL,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,cAAc;QACzB,GAAG,EAAE,QAAQ;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IAErC,yDAAyD;IACzD,IAAG,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;QAEpD,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QAEH,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;QAE3C,2GAA2G;QAC3G,IAAG,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAErB,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;QAExC,KAAI,MAAM,UAAU,IAAI,aAAa,EAAE,EAAE,CAAC;YAExC,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAEjD,IAAG,MAAM,EAAE,CAAC;gBAEV,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC;QAEzD,mFAAmF;QACnF,wDAAwD;QACxD,gDAAgD;QAChD,uDAAuD;QACvD,MAAM,cAAc,GAA0C,EAAE,CAAC;QAEjE,iHAAiH;QACjH,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;QAE5C,KAAI,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAExB,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAEtC,qFAAqF;YACrF,IAAG,CAAC,MAAM,EAAE,CAAC;gBAEX,SAAS;YACX,CAAC;YAED,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAE9B,6CAA6C;YAC7C,IAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAE7B,0GAA0G;gBAC1G,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAErC,SAAS;YACX,CAAC;YAED,2EAA2E;YAC3E,IAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAEtC,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAEvC,kDAAkD;gBAClD,SAAS;YACX,CAAC;YAED,yCAAyC;YACzC,MAAM,cAAc,GAAG,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;YAEhE,IAAG,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG,WAAW,EAAE,CAAC;gBAExC,kEAAkE;gBAClE,SAAS;YACX,CAAC;YAED,2FAA2F;YAC3F,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACxC,CAAC;QAED,wJAAwJ;QACxJ,KAAI,MAAM,SAAS,IAAI,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC;YAEpD,IAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAErC,qBAAqB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QAED,oFAAoF;QACpF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QAEtE,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QAEzD,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,KAAI,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,YAAY,EAAE,CAAC;YAE3C,IAAI,CAAC;gBAEH,+EAA+E;gBAC/E,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE9B,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAErC,4CAA4C;gBAC5C,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBAEnB,WAAW,EAAE,CAAC;YAChB,CAAC;YAAC,OAAM,MAAM,EAAE,CAAC;gBAEf,kHAAkH;YACpH,CAAC;QACH,CAAC;QAED,sFAAsF;QACtF,IAAG,WAAW,GAAG,CAAC,EAAE,CAAC;YAEnB,GAAG,CAAC,IAAI,CAAC,8BAA8B,EAAE,WAAW,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,+EAA+E;QAC/E,GAAG,CAAC,IAAI,CAAC,gCAAgC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB;IAEnC,wBAAwB,GAAG,WAAW,CAAC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;AACtG,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAElC,IAAG,wBAAwB,EAAE,CAAC;QAE5B,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAExC,wBAAwB,GAAG,IAAI,CAAC;IAClC,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IAEpC,qDAAqD;IACrD,IAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QAEhB,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QAEH,uIAAuI;QACvI,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAE9D,sDAAsD;QACtD,IAAI,CAAC;YAEH,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YAEd,GAAG,CAAC,KAAK,CAAC,2CAA2C,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YAE3E,MAAM,KAAK,CAAC;QACd,CAAC;QAED,kHAAkH;QAClH,MAAM,KAAK,GAAG,CAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,CAAE,CAAC;QAEjF,KAAI,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAExB,IAAI,CAAC;gBAEH,iJAAiJ;gBACjJ,8EAA8E;gBAC9E,4CAA4C;gBAC5C,MAAM,UAAU,CAAC,QAAQ,CACvB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,WAAW,EAAE,IAAI,CAAC,EAChG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CACrB,CAAC;YACJ,CAAC;YAAC,OAAM,KAAK,EAAE,CAAC;gBAEd,GAAG,CAAC,KAAK,CAAC,uCAAuC,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;gBAE7E,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IACrD,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,KAAK,CAAC,mCAAmC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAEnE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,wJAAwJ;AACxJ,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ChannelSelectionProfile, ChannelSelectorResult } from "../../types/index.js";
|
|
2
|
+
import type { Page } from "puppeteer-core";
|
|
3
|
+
/**
|
|
4
|
+
* Fox.com grid strategy: finds a channel in the non-virtualized guide grid at fox.com/live/channels by matching the station code (button title attribute) on
|
|
5
|
+
* GuideChannelLogo buttons. All ~15 channels are present in the DOM simultaneously once the grid renders dynamically (~4.5s after page load). Clicking the
|
|
6
|
+
* logo button is an SPA state transition — the Bitmovin player at the top of the page switches channels without navigation, destroying and recreating its
|
|
7
|
+
* video element with a new blob src.
|
|
8
|
+
*
|
|
9
|
+
* The selection process:
|
|
10
|
+
* 1. Poll via waitForFunction until the target station code's GuideChannelContainer appears (handles progressive grid rendering).
|
|
11
|
+
* 2. Scan all channel rows, reading the button title attribute from each GuideChannelLogo element.
|
|
12
|
+
* 3. Case-insensitive match against the channelSelector station code (e.g., FOXD2C, FNC, FS1).
|
|
13
|
+
* 4. On match, call logoButton.click() directly via DOM — coordinate-based clicking is not possible because the GuideProgramHero (sticky, z-40) overlays the
|
|
14
|
+
* guide grid and intercepts all mouse events at the element's coordinates.
|
|
15
|
+
* @param page - The Puppeteer page object.
|
|
16
|
+
* @param profile - The resolved site profile with a non-null channelSelector (station code, e.g., "FOXD2C", "FNC", "FS1").
|
|
17
|
+
* @returns Result object with success status and optional failure reason.
|
|
18
|
+
*/
|
|
19
|
+
export declare function foxGridStrategy(page: Page, profile: ChannelSelectionProfile): Promise<ChannelSelectorResult>;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { CONFIG } from "../../config/index.js";
|
|
2
|
+
import { evaluateWithAbort } from "../../utils/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Fox.com grid strategy: finds a channel in the non-virtualized guide grid at fox.com/live/channels by matching the station code (button title attribute) on
|
|
5
|
+
* GuideChannelLogo buttons. All ~15 channels are present in the DOM simultaneously once the grid renders dynamically (~4.5s after page load). Clicking the
|
|
6
|
+
* logo button is an SPA state transition — the Bitmovin player at the top of the page switches channels without navigation, destroying and recreating its
|
|
7
|
+
* video element with a new blob src.
|
|
8
|
+
*
|
|
9
|
+
* The selection process:
|
|
10
|
+
* 1. Poll via waitForFunction until the target station code's GuideChannelContainer appears (handles progressive grid rendering).
|
|
11
|
+
* 2. Scan all channel rows, reading the button title attribute from each GuideChannelLogo element.
|
|
12
|
+
* 3. Case-insensitive match against the channelSelector station code (e.g., FOXD2C, FNC, FS1).
|
|
13
|
+
* 4. On match, call logoButton.click() directly via DOM — coordinate-based clicking is not possible because the GuideProgramHero (sticky, z-40) overlays the
|
|
14
|
+
* guide grid and intercepts all mouse events at the element's coordinates.
|
|
15
|
+
* @param page - The Puppeteer page object.
|
|
16
|
+
* @param profile - The resolved site profile with a non-null channelSelector (station code, e.g., "FOXD2C", "FNC", "FS1").
|
|
17
|
+
* @returns Result object with success status and optional failure reason.
|
|
18
|
+
*/
|
|
19
|
+
export async function foxGridStrategy(page, profile) {
|
|
20
|
+
const stationCode = profile.channelSelector;
|
|
21
|
+
// Wait for the target station code to appear in the guide grid. The grid loads dynamically after the initial page load and renders progressively — the first
|
|
22
|
+
// GuideChannelContainer may appear before all ~15 rows are in the DOM. We poll for the specific station code rather than waiting for any container, ensuring the
|
|
23
|
+
// target channel's row is actually present before attempting the click.
|
|
24
|
+
try {
|
|
25
|
+
await page.waitForFunction((code) => {
|
|
26
|
+
const containers = document.querySelectorAll("[data-testid=\"GuideChannelContainer\"]");
|
|
27
|
+
return Array.from(containers).some((c) => {
|
|
28
|
+
const btn = c.querySelector("[data-testid=\"GuideChannelLogo\"] button");
|
|
29
|
+
return (btn?.getAttribute("title") ?? "").toLowerCase() === code.toLowerCase();
|
|
30
|
+
});
|
|
31
|
+
}, { timeout: CONFIG.streaming.videoTimeout }, stationCode);
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return { reason: "Station code " + stationCode + " not found in Fox.com guide grid.", success: false };
|
|
35
|
+
}
|
|
36
|
+
// Click the channel logo button to tune the player. We use DOM element.click() rather than coordinate-based page.mouse.click() because the GuideProgramHero
|
|
37
|
+
// section (sticky top-[64px], z-40) overlays the guide grid and intercepts all coordinate-based mouse events. DOM .click() dispatches the event directly to the
|
|
38
|
+
// element, bypassing the sticky hero's hit-testing. The logo button click is the SPA state change that tunes the Bitmovin player — it destroys and recreates
|
|
39
|
+
// its video element with a new blob src for the selected channel.
|
|
40
|
+
const clicked = await evaluateWithAbort(page, (code) => {
|
|
41
|
+
const codeLower = code.toLowerCase();
|
|
42
|
+
const containers = document.querySelectorAll("[data-testid=\"GuideChannelContainer\"]");
|
|
43
|
+
for (const container of Array.from(containers)) {
|
|
44
|
+
const logoButton = container.querySelector("[data-testid=\"GuideChannelLogo\"] button");
|
|
45
|
+
if (!logoButton) {
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
if ((logoButton.getAttribute("title") ?? "").toLowerCase() !== codeLower) {
|
|
49
|
+
continue;
|
|
50
|
+
}
|
|
51
|
+
logoButton.click();
|
|
52
|
+
return true;
|
|
53
|
+
}
|
|
54
|
+
return false;
|
|
55
|
+
}, [stationCode]);
|
|
56
|
+
if (!clicked) {
|
|
57
|
+
return { reason: "Station code " + stationCode + " not found in Fox.com guide grid.", success: false };
|
|
58
|
+
}
|
|
59
|
+
return { success: true };
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=fox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fox.js","sourceRoot":"","sources":["../../../src/browser/tuning/fox.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAU,EAAE,OAAgC;IAEhF,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAE5C,6JAA6J;IAC7J,iKAAiK;IACjK,wEAAwE;IACxE,IAAI,CAAC;QAEH,MAAM,IAAI,CAAC,eAAe,CACxB,CAAC,IAAY,EAAW,EAAE;YAExB,MAAM,UAAU,GAAG,QAAQ,CAAC,gBAAgB,CAAC,yCAAyC,CAAC,CAAC;YAExF,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBAEvC,MAAM,GAAG,GAAG,CAAC,CAAC,aAAa,CAAC,2CAA2C,CAAC,CAAC;gBAEzE,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;YACjF,CAAC,CAAC,CAAC;QACL,CAAC,EACD,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,EAC1C,WAAW,CACZ,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QAEP,OAAO,EAAE,MAAM,EAAE,eAAe,GAAG,WAAW,GAAG,mCAAmC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACzG,CAAC;IAED,4JAA4J;IAC5J,gKAAgK;IAChK,6JAA6J;IAC7J,kEAAkE;IAClE,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAAC,IAAY,EAAW,EAAE;QAEtE,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,QAAQ,CAAC,gBAAgB,CAAC,yCAAyC,CAAC,CAAC;QAExF,KAAI,MAAM,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAE9C,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CAAC,2CAA2C,CAA0B,CAAC;YAEjH,IAAG,CAAC,UAAU,EAAE,CAAC;gBAEf,SAAS;YACX,CAAC;YAED,IAAG,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,SAAS,EAAE,CAAC;gBAExE,SAAS;YACX,CAAC;YAED,UAAU,CAAC,KAAK,EAAE,CAAC;YAEnB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,IAAG,CAAC,OAAO,EAAE,CAAC;QAEZ,OAAO,EAAE,MAAM,EAAE,eAAe,GAAG,WAAW,GAAG,mCAAmC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACzG,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ChannelSelectionProfile, ChannelSelectorResult } from "../../types/index.js";
|
|
2
|
+
import type { Page } from "puppeteer-core";
|
|
3
|
+
/**
|
|
4
|
+
* Clears the HBO tab URL cache. Called by clearChannelSelectionCaches() in the coordinator when the browser restarts.
|
|
5
|
+
*/
|
|
6
|
+
export declare function clearHboCache(): void;
|
|
7
|
+
/**
|
|
8
|
+
* HBO grid strategy: discovers the HBO channels tab URL from the homepage menu bar, navigates to the tab page, scrapes the live channel rail for the target channel's
|
|
9
|
+
* watch URL, and navigates to it. Caches the tab URL across tunes and falls back to rediscovery if the cached URL is stale (rail not found at the cached location).
|
|
10
|
+
*
|
|
11
|
+
* The strategy handles three navigations per tune:
|
|
12
|
+
* 1. Homepage (already loaded by navigateToPage) → scrape menu bar for tab URL (or use cache)
|
|
13
|
+
* 2. Tab page → scrape channel rail for watch URL
|
|
14
|
+
* 3. Watch page → video playback begins
|
|
15
|
+
*
|
|
16
|
+
* When the cached tab URL is stale (rail section not found), the strategy clears the cache, navigates back to the homepage, rediscovers the tab URL, and retries.
|
|
17
|
+
* This fallback triggers at most once per tune attempt.
|
|
18
|
+
* @param page - The Puppeteer page object, expected to be on the HBO Max homepage.
|
|
19
|
+
* @param profile - The resolved site profile with a non-null channelSelector (channel name, e.g., "HBO", "HBO Hits").
|
|
20
|
+
* @returns Result object with success status and optional failure reason.
|
|
21
|
+
*/
|
|
22
|
+
export declare function hboGridStrategy(page: Page, profile: ChannelSelectionProfile): Promise<ChannelSelectorResult>;
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { LOG, evaluateWithAbort, formatError } from "../../utils/index.js";
|
|
2
|
+
import { CONFIG } from "../../config/index.js";
|
|
3
|
+
// Base URL for HBO Max watch page navigation and tab URL construction.
|
|
4
|
+
const HBO_MAX_BASE_URL = "https://play.hbomax.com";
|
|
5
|
+
// Module-level cache for the HBO tab page URL discovered from the homepage menu bar. Cleared on browser disconnect (via clearHboCache) and inline when the
|
|
6
|
+
// cached URL turns out to be stale (the channel rail is not found at the cached URL).
|
|
7
|
+
let hboTabUrl = null;
|
|
8
|
+
/**
|
|
9
|
+
* Clears the HBO tab URL cache. Called by clearChannelSelectionCaches() in the coordinator when the browser restarts.
|
|
10
|
+
*/
|
|
11
|
+
export function clearHboCache() {
|
|
12
|
+
hboTabUrl = null;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Scrapes the HBO tab URL from the homepage menu bar. The HBO brand page is linked via an `a[aria-label="H B O"]` element in the top navigation. The href attribute
|
|
16
|
+
* contains a relative path like `/channel/c0d1f27a-...` which we combine with the base URL to form the full page URL.
|
|
17
|
+
* @param page - The Puppeteer page object, expected to be on the HBO Max homepage.
|
|
18
|
+
* @returns The full HBO tab page URL, or null if the tab link was not found.
|
|
19
|
+
*/
|
|
20
|
+
async function scrapeHboTabUrl(page) {
|
|
21
|
+
// Wait for the HBO tab link to appear in the menu bar. The homepage is a single-page application that renders the navigation dynamically after the initial HTML
|
|
22
|
+
// shell loads. Without this wait, the evaluate call below would run against an incomplete DOM and fail to find the tab link.
|
|
23
|
+
const HBO_TAB_SELECTOR = "a[aria-label=\"H B O\"]";
|
|
24
|
+
try {
|
|
25
|
+
await page.waitForSelector(HBO_TAB_SELECTOR, { timeout: 5000 });
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
const href = await evaluateWithAbort(page, (selector) => {
|
|
31
|
+
const tab = document.querySelector(selector);
|
|
32
|
+
if (!tab) {
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
return tab.getAttribute("href");
|
|
36
|
+
}, [HBO_TAB_SELECTOR]);
|
|
37
|
+
if (!href) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
return HBO_MAX_BASE_URL + href;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Scrapes the HBO Channels tile rail on the HBO tab page for a watch URL matching the given channel name. The rail section contains tiles for each live channel,
|
|
44
|
+
* each with a backup text `<p aria-hidden="true">` element containing the channel name and an `<a>` with href pointing to the watch page.
|
|
45
|
+
* @param page - The Puppeteer page object, expected to be on the HBO tab page.
|
|
46
|
+
* @param channelName - The channel name to match (e.g., "HBO", "HBO Hits"). Case-insensitive.
|
|
47
|
+
* @returns Object with `railFound` indicating whether the rail section was present, and `watchPath` containing the relative watch URL if the channel was found.
|
|
48
|
+
*/
|
|
49
|
+
async function scrapeHboChannelRail(page, channelName) {
|
|
50
|
+
const HBO_RAIL_SELECTOR = "section[data-testid=\"hbo-page-rail-distribution-channels-us_rail\"]";
|
|
51
|
+
// Wait for the distribution channels rail section to appear. If it doesn't appear, the tab URL may be stale or the page structure changed.
|
|
52
|
+
try {
|
|
53
|
+
await page.waitForSelector(HBO_RAIL_SELECTOR, { timeout: CONFIG.streaming.videoTimeout });
|
|
54
|
+
}
|
|
55
|
+
catch {
|
|
56
|
+
return { railFound: false, watchPath: null };
|
|
57
|
+
}
|
|
58
|
+
// The rail uses lazy loading via IntersectionObserver — tile content only populates when the rail is visible in the viewport. The rail section element appears
|
|
59
|
+
// immediately with skeleton PhantomTile placeholders, but the actual channel tiles (with names and watch URLs) are fetched asynchronously after the rail scrolls
|
|
60
|
+
// into view. We scroll the rail into view and then wait for anchor elements to appear, indicating the tiles have loaded.
|
|
61
|
+
await page.evaluate((selector) => {
|
|
62
|
+
document.querySelector(selector)?.scrollIntoView({ behavior: "instant", block: "center" });
|
|
63
|
+
}, HBO_RAIL_SELECTOR);
|
|
64
|
+
try {
|
|
65
|
+
await page.waitForSelector(HBO_RAIL_SELECTOR + " a", { timeout: 5000 });
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
return { railFound: false, watchPath: null };
|
|
69
|
+
}
|
|
70
|
+
// Scrape the rail for the target channel's watch URL. Each tile in the rail contains an anchor with the watch URL and a backup text paragraph with the channel name.
|
|
71
|
+
const watchPath = await evaluateWithAbort(page, (selector, target) => {
|
|
72
|
+
const rail = document.querySelector(selector);
|
|
73
|
+
if (!rail) {
|
|
74
|
+
return null;
|
|
75
|
+
}
|
|
76
|
+
const targetLower = target.toLowerCase();
|
|
77
|
+
const anchors = rail.querySelectorAll("a");
|
|
78
|
+
for (const anchor of Array.from(anchors)) {
|
|
79
|
+
// The channel name appears in a <p aria-hidden="true"> element within the tile. This is the backup text that displays the channel name when the tile
|
|
80
|
+
// image fails to load.
|
|
81
|
+
const nameEl = anchor.querySelector("p[aria-hidden=\"true\"]");
|
|
82
|
+
if (!nameEl) {
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
const name = nameEl.textContent.trim().toLowerCase();
|
|
86
|
+
if (name !== targetLower) {
|
|
87
|
+
continue;
|
|
88
|
+
}
|
|
89
|
+
const href = anchor.getAttribute("href");
|
|
90
|
+
// Validate that the href points to a live channel watch page. Watch URLs follow the pattern /channel/watch/{channelUUID}/{programUUID}.
|
|
91
|
+
if (href?.includes("/channel/watch/")) {
|
|
92
|
+
return href;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return null;
|
|
96
|
+
}, [HBO_RAIL_SELECTOR, channelName]);
|
|
97
|
+
return { railFound: true, watchPath };
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* HBO grid strategy: discovers the HBO channels tab URL from the homepage menu bar, navigates to the tab page, scrapes the live channel rail for the target channel's
|
|
101
|
+
* watch URL, and navigates to it. Caches the tab URL across tunes and falls back to rediscovery if the cached URL is stale (rail not found at the cached location).
|
|
102
|
+
*
|
|
103
|
+
* The strategy handles three navigations per tune:
|
|
104
|
+
* 1. Homepage (already loaded by navigateToPage) → scrape menu bar for tab URL (or use cache)
|
|
105
|
+
* 2. Tab page → scrape channel rail for watch URL
|
|
106
|
+
* 3. Watch page → video playback begins
|
|
107
|
+
*
|
|
108
|
+
* When the cached tab URL is stale (rail section not found), the strategy clears the cache, navigates back to the homepage, rediscovers the tab URL, and retries.
|
|
109
|
+
* This fallback triggers at most once per tune attempt.
|
|
110
|
+
* @param page - The Puppeteer page object, expected to be on the HBO Max homepage.
|
|
111
|
+
* @param profile - The resolved site profile with a non-null channelSelector (channel name, e.g., "HBO", "HBO Hits").
|
|
112
|
+
* @returns Result object with success status and optional failure reason.
|
|
113
|
+
*/
|
|
114
|
+
export async function hboGridStrategy(page, profile) {
|
|
115
|
+
const channelName = profile.channelSelector;
|
|
116
|
+
let usedCache = false;
|
|
117
|
+
// Phase 1: Navigate to the HBO tab page. Use cached URL if available, otherwise discover it from the homepage menu bar.
|
|
118
|
+
if (hboTabUrl) {
|
|
119
|
+
usedCache = true;
|
|
120
|
+
LOG.debug("tuning:hbo", "Using cached HBO tab URL: %s.", hboTabUrl);
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
const discovered = await scrapeHboTabUrl(page);
|
|
124
|
+
if (!discovered) {
|
|
125
|
+
return { reason: "HBO tab not found in homepage menu bar. HBO Max subscription may not be active.", success: false };
|
|
126
|
+
}
|
|
127
|
+
hboTabUrl = discovered;
|
|
128
|
+
LOG.debug("tuning:hbo", "Discovered HBO tab URL: %s.", hboTabUrl);
|
|
129
|
+
}
|
|
130
|
+
try {
|
|
131
|
+
await page.goto(hboTabUrl, { timeout: CONFIG.streaming.navigationTimeout, waitUntil: "load" });
|
|
132
|
+
}
|
|
133
|
+
catch (error) {
|
|
134
|
+
return { reason: "Failed to navigate to HBO tab page: " + formatError(error) + ".", success: false };
|
|
135
|
+
}
|
|
136
|
+
// Phase 2: Scrape the channel rail for the target channel's watch URL.
|
|
137
|
+
let railResult = await scrapeHboChannelRail(page, channelName);
|
|
138
|
+
// Fallback: if the rail was not found and we used a cached URL, the cache may be stale. Clear it, navigate back to the homepage, rediscover the tab URL, and retry.
|
|
139
|
+
if (!railResult.railFound && usedCache) {
|
|
140
|
+
LOG.debug("tuning:hbo", "HBO channel rail not found at cached URL. Rediscovering tab URL from homepage.");
|
|
141
|
+
hboTabUrl = null;
|
|
142
|
+
try {
|
|
143
|
+
await page.goto(HBO_MAX_BASE_URL, { timeout: CONFIG.streaming.navigationTimeout, waitUntil: "load" });
|
|
144
|
+
}
|
|
145
|
+
catch (error) {
|
|
146
|
+
return { reason: "Failed to navigate back to HBO Max homepage: " + formatError(error) + ".", success: false };
|
|
147
|
+
}
|
|
148
|
+
const rediscovered = await scrapeHboTabUrl(page);
|
|
149
|
+
if (!rediscovered) {
|
|
150
|
+
return { reason: "HBO tab not found in homepage menu bar after cache invalidation.", success: false };
|
|
151
|
+
}
|
|
152
|
+
hboTabUrl = rediscovered;
|
|
153
|
+
LOG.debug("tuning:hbo", "Rediscovered HBO tab URL: %s.", hboTabUrl);
|
|
154
|
+
try {
|
|
155
|
+
await page.goto(hboTabUrl, { timeout: CONFIG.streaming.navigationTimeout, waitUntil: "load" });
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
return { reason: "Failed to navigate to rediscovered HBO tab page: " + formatError(error) + ".", success: false };
|
|
159
|
+
}
|
|
160
|
+
railResult = await scrapeHboChannelRail(page, channelName);
|
|
161
|
+
if (!railResult.railFound) {
|
|
162
|
+
return { reason: "HBO channel rail not found at rediscovered URL. Site structure may have changed.", success: false };
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
if (!railResult.railFound) {
|
|
166
|
+
return { reason: "HBO channel rail not found on tab page.", success: false };
|
|
167
|
+
}
|
|
168
|
+
if (!railResult.watchPath) {
|
|
169
|
+
return { reason: "Channel " + channelName + " not found in HBO channel rail.", success: false };
|
|
170
|
+
}
|
|
171
|
+
// Phase 3: Navigate to the watch URL to start playback.
|
|
172
|
+
const watchUrl = HBO_MAX_BASE_URL + railResult.watchPath;
|
|
173
|
+
LOG.debug("tuning:hbo", "Navigating to HBO Max watch URL for %s.", channelName);
|
|
174
|
+
try {
|
|
175
|
+
await page.goto(watchUrl, { timeout: CONFIG.streaming.navigationTimeout, waitUntil: "load" });
|
|
176
|
+
}
|
|
177
|
+
catch (error) {
|
|
178
|
+
return { reason: "Failed to navigate to HBO Max watch page: " + formatError(error) + ".", success: false };
|
|
179
|
+
}
|
|
180
|
+
return { success: true };
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=hbo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hbo.js","sourceRoot":"","sources":["../../../src/browser/tuning/hbo.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/C,uEAAuE;AACvE,MAAM,gBAAgB,GAAG,yBAAyB,CAAC;AAEnD,2JAA2J;AAC3J,sFAAsF;AACtF,IAAI,SAAS,GAAqB,IAAI,CAAC;AAEvC;;GAEG;AACH,MAAM,UAAU,aAAa;IAE3B,SAAS,GAAG,IAAI,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,eAAe,CAAC,IAAU;IAEvC,gKAAgK;IAChK,6HAA6H;IAC7H,MAAM,gBAAgB,GAAG,yBAAyB,CAAC;IAEnD,IAAI,CAAC;QAEH,MAAM,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QAEP,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAAC,QAAgB,EAAoB,EAAE;QAEhF,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAgC,CAAC;QAE5E,IAAG,CAAC,GAAG,EAAE,CAAC;YAER,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB,IAAG,CAAC,IAAI,EAAE,CAAC;QAET,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,gBAAgB,GAAG,IAAI,CAAC;AACjC,CAAC;AAUD;;;;;;GAMG;AACH,KAAK,UAAU,oBAAoB,CAAC,IAAU,EAAE,WAAmB;IAEjE,MAAM,iBAAiB,GAAG,sEAAsE,CAAC;IAEjG,2IAA2I;IAC3I,IAAI,CAAC;QAEH,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC;IAC5F,CAAC;IAAC,MAAM,CAAC;QAEP,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED,+JAA+J;IAC/J,iKAAiK;IACjK,yHAAyH;IACzH,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAgB,EAAQ,EAAE;QAE7C,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC7F,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAEtB,IAAI,CAAC;QAEH,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,GAAG,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QAEP,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED,qKAAqK;IACrK,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAAC,QAAgB,EAAE,MAAc,EAAoB,EAAE;QAErG,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAE9C,IAAG,CAAC,IAAI,EAAE,CAAC;YAET,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAE3C,KAAI,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAExC,qJAAqJ;YACrJ,uBAAuB;YACvB,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;YAE/D,IAAG,CAAC,MAAM,EAAE,CAAC;gBAEX,SAAS;YACX,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAErD,IAAG,IAAI,KAAK,WAAW,EAAE,CAAC;gBAExB,SAAS;YACX,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAEzC,wIAAwI;YACxI,IAAG,IAAI,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAErC,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,CAAE,iBAAiB,EAAE,WAAW,CAAE,CAAC,CAAC;IAEvC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AACxC,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAU,EAAE,OAAgC;IAEhF,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAC5C,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,wHAAwH;IACxH,IAAG,SAAS,EAAE,CAAC;QAEb,SAAS,GAAG,IAAI,CAAC;QAEjB,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,+BAA+B,EAAE,SAAS,CAAC,CAAC;IACtE,CAAC;SAAM,CAAC;QAEN,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;QAE/C,IAAG,CAAC,UAAU,EAAE,CAAC;YAEf,OAAO,EAAE,MAAM,EAAE,iFAAiF,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACvH,CAAC;QAED,SAAS,GAAG,UAAU,CAAC;QAEvB,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,6BAA6B,EAAE,SAAS,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,CAAC;QAEH,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IACjG,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,OAAO,EAAE,MAAM,EAAE,sCAAsC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACvG,CAAC;IAED,uEAAuE;IACvE,IAAI,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAE/D,oKAAoK;IACpK,IAAG,CAAC,UAAU,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC;QAEtC,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,gFAAgF,CAAC,CAAC;QAE1G,SAAS,GAAG,IAAI,CAAC;QAEjB,IAAI,CAAC;YAEH,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QACxG,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YAEd,OAAO,EAAE,MAAM,EAAE,+CAA+C,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAChH,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;QAEjD,IAAG,CAAC,YAAY,EAAE,CAAC;YAEjB,OAAO,EAAE,MAAM,EAAE,kEAAkE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACxG,CAAC;QAED,SAAS,GAAG,YAAY,CAAC;QAEzB,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,+BAA+B,EAAE,SAAS,CAAC,CAAC;QAEpE,IAAI,CAAC;YAEH,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QACjG,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YAEd,OAAO,EAAE,MAAM,EAAE,mDAAmD,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACpH,CAAC;QAED,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAE3D,IAAG,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YAEzB,OAAO,EAAE,MAAM,EAAE,kFAAkF,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACxH,CAAC;IACH,CAAC;IAED,IAAG,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QAEzB,OAAO,EAAE,MAAM,EAAE,yCAAyC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC/E,CAAC;IAED,IAAG,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QAEzB,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,iCAAiC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAClG,CAAC;IAED,wDAAwD;IACxD,MAAM,QAAQ,GAAG,gBAAgB,GAAG,UAAU,CAAC,SAAS,CAAC;IAEzD,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,yCAAyC,EAAE,WAAW,CAAC,CAAC;IAEhF,IAAI,CAAC;QAEH,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IAChG,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,OAAO,EAAE,MAAM,EAAE,4CAA4C,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC7G,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { ChannelSelectionProfile, ChannelSelectorResult } from "../../types/index.js";
|
|
2
|
+
import type { Page } from "puppeteer-core";
|
|
3
|
+
/**
|
|
4
|
+
* Clears the Hulu guide row cache. Called by clearChannelSelectionCaches() in the coordinator when the browser restarts.
|
|
5
|
+
*/
|
|
6
|
+
export declare function clearHuluCache(): void;
|
|
7
|
+
/**
|
|
8
|
+
* Guide grid strategy: finds a channel in a virtualized, alphabetically sorted channel grid by scrolling the page to the target row using binary search, then
|
|
9
|
+
* clicking the on-now program cell to open the playback overlay. This strategy works for sites like Hulu Live TV where the channel guide is rendered as a
|
|
10
|
+
* virtualized list — only ~13 of ~124 rows exist in the DOM at any time, positioned absolutely within a tall spacer div. The virtualizer renders rows based on
|
|
11
|
+
* the page scroll position (`document.documentElement.scrollTop`), so we scroll to bring the target channel into the DOM, then interact with it directly.
|
|
12
|
+
*
|
|
13
|
+
* Three mechanisms handle different channel types:
|
|
14
|
+
* 1. Binary search with passive row number caching — primary mechanism for most channels (~800ms first time, ~200ms on cache hit)
|
|
15
|
+
* 2. Position-based inference — handles local affiliates when searching by network name (e.g., "ABC" finds WLS at the right sort position)
|
|
16
|
+
* 3. Linear scan fallback — safety net for raw call sign searches or any channel the binary search cannot find (~2.4 seconds)
|
|
17
|
+
*
|
|
18
|
+
* The selection process:
|
|
19
|
+
* 1. If listSelector is provided, click the tab/button to reveal the channel list (e.g., a "Channels" tab)
|
|
20
|
+
* 2. Wait for the channel grid rows to render in the DOM
|
|
21
|
+
* 3. Check the row number cache for a direct-scroll shortcut
|
|
22
|
+
* 4. Binary search: scroll to the midpoint row, read rendered channels (caching row numbers), check for exact match or infer local affiliate
|
|
23
|
+
* 5. If binary search fails, linear scan from top to bottom as a universal fallback
|
|
24
|
+
* 6. Click the on-now program cell (`.LiveGuideProgram--first`) in the target channel's row to open the playback overlay
|
|
25
|
+
* 7. If playSelector is provided, wait for and click the play button to start live playback
|
|
26
|
+
* @param page - The Puppeteer page object.
|
|
27
|
+
* @param profile - The resolved site profile with a non-null channelSelector (channel name) and channelSelection config.
|
|
28
|
+
* @returns Result object with success status and optional failure reason.
|
|
29
|
+
*/
|
|
30
|
+
export declare function guideGridStrategy(page: Page, profile: ChannelSelectionProfile): Promise<ChannelSelectorResult>;
|