added audio change listeners

This commit is contained in:
Bilal
2024-08-21 01:56:53 +05:30
parent 8e4042fd88
commit 28eafd3006
9 changed files with 209 additions and 128 deletions

View File

@@ -3022,8 +3022,8 @@
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/jwplayer/JWPlayerKit-package.git";
requirement = {
kind = exactVersion;
version = 4.19.1;
kind = upToNextMajorVersion;
minimumVersion = 4.19.1;
};
};
528F26EC2C6B7BD1003E4D99 /* XCRemoteSwiftPackageReference "OneSignal-XCFramework" */ = {

View File

@@ -388,7 +388,7 @@
</scenes>
<designables>
<designable name="0cZ-tT-3PH">
<size key="intrinsicContentSize" width="184.33333333333334" height="21"/>
<size key="intrinsicContentSize" width="134.33333333333334" height="21"/>
</designable>
</designables>
<resources>

View File

@@ -71,7 +71,7 @@ class SplashVC: UIViewController {
self.wokaLogo.transform = CGAffineTransform(scaleX: 1.8, y: 1.8)
}, completion: nil)
let newConstant = wokaOriginY.constant - 50
// let newConstant = wokaOriginY.constant - 50
Timer.scheduledTimer(withTimeInterval: 6, repeats: false) { [weak self] _ in
guard let self else{return}

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<device id="retina6_1" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22685"/>
@@ -23,43 +23,43 @@
<objects>
<viewController storyboardIdentifier="ThemeOneVC" id="VXi-XB-hOy" customClass="ThemeOneVC" customModule="WOKA" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="UEh-jl-IQp">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="jdZ-WQ-xcr">
<rect key="frame" x="0.0" y="0.0" width="375" height="417"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="560"/>
<color key="backgroundColor" red="0.34901960780000002" green="0.81568627449999997" blue="0.99607843139999996" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</view>
<imageView hidden="YES" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Star" translatesAutoresizingMaskIntoConstraints="NO" id="s5k-HV-Zkc">
<rect key="frame" x="101" y="30.5" width="40" height="40"/>
<rect key="frame" x="101" y="65" width="40" height="40"/>
<constraints>
<constraint firstAttribute="width" constant="40" id="T5w-0w-VHk"/>
<constraint firstAttribute="height" constant="40" id="ijF-vI-jb7"/>
</constraints>
</imageView>
<imageView hidden="YES" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Star" translatesAutoresizingMaskIntoConstraints="NO" id="XTn-ID-1Yb">
<rect key="frame" x="20" y="175.5" width="30" height="30"/>
<rect key="frame" x="20" y="216.5" width="30" height="30"/>
<constraints>
<constraint firstAttribute="height" constant="30" id="Kjd-Nt-Asn"/>
<constraint firstAttribute="width" secondItem="XTn-ID-1Yb" secondAttribute="height" multiplier="1:1" id="WO6-Ed-Yfd"/>
</constraints>
</imageView>
<imageView hidden="YES" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Star" translatesAutoresizingMaskIntoConstraints="NO" id="U1W-OZ-7vR">
<rect key="frame" x="175" y="292" width="25" height="25"/>
<rect key="frame" x="194.5" y="397" width="25" height="25"/>
<constraints>
<constraint firstAttribute="width" secondItem="U1W-OZ-7vR" secondAttribute="height" multiplier="1:1" id="PvJ-97-UfQ"/>
<constraint firstAttribute="height" constant="25" id="vTp-0T-OjL"/>
</constraints>
</imageView>
<imageView hidden="YES" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Star" translatesAutoresizingMaskIntoConstraints="NO" id="t3E-Cj-I2d">
<rect key="frame" x="250" y="329.5" width="20" height="20"/>
<rect key="frame" x="289" y="436" width="20" height="20"/>
<constraints>
<constraint firstAttribute="height" constant="20" id="8f0-Kf-opP"/>
<constraint firstAttribute="width" secondItem="t3E-Cj-I2d" secondAttribute="height" multiplier="1:1" id="bWZ-b9-ckU"/>
</constraints>
</imageView>
<imageView hidden="YES" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Moon" translatesAutoresizingMaskIntoConstraints="NO" id="Jbf-Kl-35X">
<rect key="frame" x="275" y="125.5" width="70" height="100"/>
<rect key="frame" x="314" y="166.5" width="70" height="100"/>
<color key="tintColor" red="0.59309977107359713" green="0.60037522820196854" blue="0.93852707153973092" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstAttribute="height" constant="100" id="2nN-YX-rc0"/>
@@ -67,7 +67,7 @@
</constraints>
</imageView>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="rkf-MW-5IL">
<rect key="frame" x="10" y="12.5" width="76" height="76"/>
<rect key="frame" x="10" y="47" width="76" height="76"/>
<constraints>
<constraint firstAttribute="width" secondItem="rkf-MW-5IL" secondAttribute="height" multiplier="1:1" id="O3J-OU-t73"/>
</constraints>
@@ -78,13 +78,13 @@
</connections>
</button>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" alignment="center" spacing="5" translatesAutoresizingMaskIntoConstraints="NO" id="sf9-me-n7i" userLabel="Avatar Stack">
<rect key="frame" x="100" y="25" width="175" height="90.499999999999986"/>
<rect key="frame" x="119.5" y="53" width="175" height="103.5"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Boy" translatesAutoresizingMaskIntoConstraints="NO" id="o2x-QJ-V9A">
<rect key="frame" x="63" y="0.0" width="49.5" height="37"/>
<rect key="frame" x="63" y="0.0" width="49.5" height="50"/>
</imageView>
<stackView opaque="NO" contentMode="scaleToFill" spacing="5" translatesAutoresizingMaskIntoConstraints="NO" id="JE2-1V-ByS">
<rect key="frame" x="37.5" y="42" width="100" height="24"/>
<rect key="frame" x="37.5" y="55" width="100" height="24"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Hello" textAlignment="center" lineBreakMode="wordWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="YmK-3m-WeD" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="0.0" y="0.0" width="50.5" height="24"/>
@@ -103,7 +103,7 @@
</subviews>
</stackView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Welcome to WOKALAND" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dnl-w0-q5K" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="0.0" y="71" width="175" height="19.5"/>
<rect key="frame" x="0.0" y="84" width="175" height="19.5"/>
<fontDescription key="fontDescription" name="Exo2-Regular" family="Exo 2" pointSize="16"/>
<color key="textColor" red="0.035294117649999998" green="0.0" blue="0.36470588240000001" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
@@ -111,24 +111,24 @@
</subviews>
</stackView>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="xgH-t8-LiX" userLabel="GrassCloudView">
<rect key="frame" x="0.0" y="307" width="375" height="360"/>
<rect key="frame" x="0.0" y="412" width="414" height="484"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Cloud1" translatesAutoresizingMaskIntoConstraints="NO" id="hnb-h6-Rgs" userLabel="LightCloud">
<rect key="frame" x="-192.5" y="-50" width="760" height="180"/>
<rect key="frame" x="-173" y="-50" width="760" height="180"/>
<constraints>
<constraint firstAttribute="width" constant="760" id="R0a-7m-o4f"/>
<constraint firstAttribute="height" constant="180" id="laa-aE-ve4"/>
</constraints>
</imageView>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Cloud2" translatesAutoresizingMaskIntoConstraints="NO" id="lMA-vm-xCk" userLabel="DenseCloud">
<rect key="frame" x="-192.5" y="13" width="760" height="154"/>
<rect key="frame" x="-173" y="13" width="760" height="154"/>
<constraints>
<constraint firstAttribute="height" constant="154" id="0Dz-kQ-2bb"/>
<constraint firstAttribute="width" constant="760" id="teJ-X3-Yjs"/>
</constraints>
</imageView>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="HomeGrassDay" translatesAutoresizingMaskIntoConstraints="NO" id="bNd-CB-wx1">
<rect key="frame" x="0.0" y="0.0" width="375" height="360"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="484"/>
</imageView>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
@@ -144,23 +144,23 @@
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="kzE-UE-7KK">
<rect key="frame" x="111" y="145.5" width="153" height="141.5"/>
<rect key="frame" x="104" y="186.5" width="206" height="190"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="LiveTVBaloon" translatesAutoresizingMaskIntoConstraints="NO" id="bJW-hf-OzK">
<rect key="frame" x="28.5" y="0.0" width="100" height="75"/>
<rect key="frame" x="37.5" y="0.0" width="135" height="75"/>
<constraints>
<constraint firstAttribute="height" constant="75" id="kT7-18-wB5"/>
</constraints>
</imageView>
<view userInteractionEnabled="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="edI-4n-4AY">
<rect key="frame" x="14" y="44" width="125" height="89.5"/>
<rect key="frame" x="14.5" y="62" width="177" height="120"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</view>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="LiveTVBorder" translatesAutoresizingMaskIntoConstraints="NO" id="FTD-lO-6ko">
<rect key="frame" x="0.0" y="20" width="153" height="121.5"/>
<rect key="frame" x="0.0" y="20" width="206" height="170"/>
</imageView>
<activityIndicatorView opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" hidesWhenStopped="YES" animating="YES" style="large" translatesAutoresizingMaskIntoConstraints="NO" id="hei-Wl-o3h">
<rect key="frame" x="58" y="70.5" width="37" height="37"/>
<rect key="frame" x="84.5" y="103.5" width="37" height="37"/>
<color key="color" red="0.035294117649999998" green="0.0" blue="0.36470588240000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</activityIndicatorView>
</subviews>
@@ -184,7 +184,7 @@
</constraints>
</view>
<stackView opaque="NO" contentMode="scaleToFill" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="Qfe-q3-rbY">
<rect key="frame" x="330" y="25" width="40" height="40"/>
<rect key="frame" x="369" y="53" width="40" height="40"/>
<subviews>
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="b3F-hf-9c8">
<rect key="frame" x="0.0" y="0.0" width="40" height="40"/>
@@ -217,19 +217,19 @@
</subviews>
</stackView>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ppi-HI-rj1" userLabel="IconView">
<rect key="frame" x="0.0" y="309.5" width="375" height="357.5"/>
<rect key="frame" x="0.0" y="416" width="414" height="480"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="qS4-gX-qTX">
<rect key="frame" x="290.5" y="-20" width="74.5" height="74.5"/>
<rect key="frame" x="304" y="-20" width="100" height="100"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillProportionally" spacing="1" translatesAutoresizingMaskIntoConstraints="NO" id="Ehe-Th-asW" userLabel="Shop">
<rect key="frame" x="0.0" y="0.0" width="74.5" height="74.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Shop" translatesAutoresizingMaskIntoConstraints="NO" id="z9r-YX-CUk">
<rect key="frame" x="0.0" y="0.0" width="74.5" height="58.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="84"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="SHOP" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="a1C-yY-cjD" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="0.0" y="59.5" width="74.5" height="15"/>
<rect key="frame" x="0.0" y="85" width="100" height="15"/>
<constraints>
<constraint firstAttribute="height" constant="15" id="QSf-0H-Fwk"/>
</constraints>
@@ -250,16 +250,16 @@
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="feU-AA-gLO">
<rect key="frame" x="150.5" y="35" width="74" height="74.5"/>
<rect key="frame" x="157" y="35" width="100" height="100"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillProportionally" spacing="1" translatesAutoresizingMaskIntoConstraints="NO" id="lRy-nX-Xia" userLabel="LiveTV">
<rect key="frame" x="0.0" y="0.0" width="74" height="74.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="LiveTV" translatesAutoresizingMaskIntoConstraints="NO" id="LoO-Qh-9ci">
<rect key="frame" x="0.0" y="0.0" width="74" height="58.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="84"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="LIVE TV" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="arX-6A-JO0" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="0.0" y="59.5" width="74" height="15"/>
<rect key="frame" x="0.0" y="85" width="100" height="15"/>
<constraints>
<constraint firstAttribute="height" constant="15" id="Ff3-ym-Dew"/>
</constraints>
@@ -280,16 +280,16 @@
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="GGC-rX-Pyw">
<rect key="frame" x="10" y="65" width="74.5" height="74.5"/>
<rect key="frame" x="10" y="65" width="100" height="100"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillProportionally" spacing="1" translatesAutoresizingMaskIntoConstraints="NO" id="Sp0-yh-bdj" userLabel="WebSeries">
<rect key="frame" x="0.0" y="0.0" width="74.5" height="74.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="WebSeries" translatesAutoresizingMaskIntoConstraints="NO" id="LGm-UX-yVh">
<rect key="frame" x="0.0" y="0.0" width="74.5" height="58.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="84"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="WEB SERIES" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="zmu-oJ-DFc" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="0.0" y="59.5" width="74.5" height="15"/>
<rect key="frame" x="0.0" y="85" width="100" height="15"/>
<constraints>
<constraint firstAttribute="height" constant="15" id="tmo-ie-b2U"/>
</constraints>
@@ -310,16 +310,16 @@
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="yuF-d6-Tag">
<rect key="frame" x="295.5" y="74.5" width="74.5" height="74.5"/>
<rect key="frame" x="309" y="100" width="100" height="100"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillProportionally" spacing="1" translatesAutoresizingMaskIntoConstraints="NO" id="r88-JP-phS" userLabel="Games">
<rect key="frame" x="0.0" y="0.0" width="74.5" height="74.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Games" translatesAutoresizingMaskIntoConstraints="NO" id="rhc-kY-sTl">
<rect key="frame" x="0.0" y="0.0" width="74.5" height="58.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="84"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="GAMES" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="blr-Es-vfw" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="0.0" y="59.5" width="74.5" height="15"/>
<rect key="frame" x="0.0" y="85" width="100" height="15"/>
<constraints>
<constraint firstAttribute="height" constant="15" id="cfa-zV-qLo"/>
</constraints>
@@ -340,16 +340,16 @@
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ugr-Tf-Y1l">
<rect key="frame" x="174.5" y="171.5" width="74" height="74.5"/>
<rect key="frame" x="200" y="197" width="100" height="100"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillProportionally" spacing="1" translatesAutoresizingMaskIntoConstraints="NO" id="JHO-R6-WGZ" userLabel="Audio Books">
<rect key="frame" x="0.0" y="0.0" width="74" height="74.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="AudioBooks" translatesAutoresizingMaskIntoConstraints="NO" id="za2-oW-KjU">
<rect key="frame" x="0.0" y="0.0" width="74" height="58.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="84"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="AUDIO BOOKS" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="11" translatesAutoresizingMaskIntoConstraints="NO" id="Y9F-E4-lgm" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="0.0" y="59.5" width="74" height="15"/>
<rect key="frame" x="0.0" y="85" width="100" height="15"/>
<constraints>
<constraint firstAttribute="height" constant="15" id="978-3e-GXx"/>
</constraints>
@@ -370,16 +370,16 @@
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="gk8-xm-Hh5">
<rect key="frame" x="35" y="169.5" width="74.5" height="74.5"/>
<rect key="frame" x="35" y="195" width="100" height="100"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillProportionally" spacing="1" translatesAutoresizingMaskIntoConstraints="NO" id="9fz-vc-Ufb" userLabel="Karaoke">
<rect key="frame" x="0.0" y="0.0" width="74.5" height="74.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Karaoke" translatesAutoresizingMaskIntoConstraints="NO" id="DWF-Lu-F24">
<rect key="frame" x="0.0" y="0.0" width="74.5" height="58.5"/>
<rect key="frame" x="0.0" y="0.0" width="100" height="84"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="KARAOKE" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Yyo-6X-Jk4" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="0.0" y="59.5" width="74.5" height="15"/>
<rect key="frame" x="0.0" y="85" width="100" height="15"/>
<constraints>
<constraint firstAttribute="height" constant="15" id="Z4M-G5-Rob"/>
</constraints>
@@ -416,7 +416,7 @@
</constraints>
</view>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="-2" translatesAutoresizingMaskIntoConstraints="NO" id="LYo-Uy-0nM" userLabel="More">
<rect key="frame" x="154" y="607" width="67.5" height="45"/>
<rect key="frame" x="173.5" y="802" width="67.5" height="45"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="BottomArrow" translatesAutoresizingMaskIntoConstraints="NO" id="rdd-P1-Vk7">
<rect key="frame" x="0.0" y="0.0" width="67.5" height="32.5"/>
@@ -485,6 +485,7 @@
<tabBarItem key="tabBarItem" title="HOME" image="HomeIcon" selectedImage="HomeIcon" id="4Hm-tg-Heb"/>
<connections>
<outlet property="HelloLabel" destination="YmK-3m-WeD" id="H6O-kI-Xc3"/>
<outlet property="allIconView" destination="ppi-HI-rj1" id="dyR-6s-6Xm"/>
<outlet property="audioBooksView" destination="ugr-Tf-Y1l" id="O1d-Jo-Roc"/>
<outlet property="avatarImage" destination="o2x-QJ-V9A" id="rgu-lT-WaZ"/>
<outlet property="bottomArrow" destination="rdd-P1-Vk7" id="K5z-Hv-wdR"/>
@@ -520,21 +521,21 @@
<objects>
<viewController storyboardIdentifier="MoreVC" id="Faj-VN-SMZ" customClass="MoreVC" customModule="WOKA" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="5jA-W9-hbI">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="redraw" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="MoreBG" translatesAutoresizingMaskIntoConstraints="NO" id="4W1-eK-C1H">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</imageView>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" translatesAutoresizingMaskIntoConstraints="NO" id="g46-bK-0uI">
<rect key="frame" x="0.0" y="30" width="375" height="632"/>
<rect key="frame" x="0.0" y="58" width="414" height="799"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="4TT-Wr-ovV">
<rect key="frame" x="0.0" y="0.0" width="375" height="45"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="45"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="2" translatesAutoresizingMaskIntoConstraints="NO" id="tu4-1a-dfV" userLabel="More">
<rect key="frame" x="165" y="0.0" width="45" height="45"/>
<rect key="frame" x="184.5" y="0.0" width="45" height="45"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="UpArrowMore" translatesAutoresizingMaskIntoConstraints="NO" id="BkY-MX-g4T">
<rect key="frame" x="0.0" y="0.0" width="45" height="25"/>
@@ -560,19 +561,19 @@
</constraints>
</view>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="U0W-18-4oe">
<rect key="frame" x="0.0" y="45" width="375" height="200"/>
<rect key="frame" x="0.0" y="45" width="414" height="224"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" text="Coming Soon on WOKA" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="D2p-c5-usH" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="10" y="10" width="355" height="0.0"/>
<rect key="frame" x="10" y="10" width="394" height="24"/>
<fontDescription key="fontDescription" name="Exo2-Bold" family="Exo 2" pointSize="20"/>
<color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<nil key="highlightedColor"/>
</label>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="UKc-92-GPa">
<rect key="frame" x="10" y="20" width="355" height="180"/>
<rect key="frame" x="10" y="44" width="394" height="180"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="MasilaComingSoon" translatesAutoresizingMaskIntoConstraints="NO" id="Kj9-jH-Y88">
<rect key="frame" x="7" y="7" width="341" height="140"/>
<rect key="frame" x="7" y="7" width="380" height="140"/>
<constraints>
<constraint firstAttribute="height" constant="140" id="4Ed-zt-52J"/>
</constraints>
@@ -583,7 +584,7 @@
</userDefinedRuntimeAttributes>
</imageView>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="11Q-tE-Z7c" customClass="LocalisedElementsButton" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="117.5" y="57" width="120" height="40"/>
<rect key="frame" x="137" y="57" width="120" height="40"/>
<color key="backgroundColor" red="0.035294117649999998" green="0.0" blue="0.36470588240000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="120" id="TY4-vs-ytg"/>
@@ -603,7 +604,7 @@
</connections>
</button>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="MASILA" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="biB-gs-Rgq">
<rect key="frame" x="7" y="152" width="341" height="22"/>
<rect key="frame" x="7" y="152" width="380" height="22"/>
<fontDescription key="fontDescription" name="Exo2-Bold" family="Exo 2" pointSize="18"/>
<color key="textColor" name="TextDarkBlue"/>
<nil key="highlightedColor"/>
@@ -631,16 +632,16 @@
<edgeInsets key="layoutMargins" top="10" left="10" bottom="0.0" right="10"/>
</stackView>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="5" translatesAutoresizingMaskIntoConstraints="NO" id="Qcq-yj-AzB">
<rect key="frame" x="0.0" y="245" width="375" height="185"/>
<rect key="frame" x="0.0" y="269" width="414" height="209"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" text="BLOGS" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="lW0-W4-2hl" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="10" y="10" width="355" height="0.0"/>
<rect key="frame" x="10" y="10" width="394" height="24"/>
<fontDescription key="fontDescription" name="Exo2-Bold" family="Exo 2" pointSize="20"/>
<color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<nil key="highlightedColor"/>
</label>
<collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="xup-gW-Kjh">
<rect key="frame" x="10" y="15" width="355" height="170"/>
<rect key="frame" x="10" y="39" width="394" height="170"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="height" constant="170" id="fTZ-PQ-nXX"/>
@@ -657,16 +658,16 @@
<edgeInsets key="layoutMargins" top="10" left="10" bottom="0.0" right="10"/>
</stackView>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="pJu-fq-XmG">
<rect key="frame" x="0.0" y="430" width="375" height="202"/>
<rect key="frame" x="0.0" y="478" width="414" height="321"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" text="WOKA Songs" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="FSJ-QT-rAW" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="10" y="10" width="355" height="0.0"/>
<rect key="frame" x="10" y="10" width="394" height="24"/>
<fontDescription key="fontDescription" name="Exo2-Bold" family="Exo 2" pointSize="20"/>
<color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<nil key="highlightedColor"/>
</label>
<tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" dataMode="prototypes" style="plain" separatorStyle="none" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="31Z-fz-1ec">
<rect key="frame" x="10" y="20" width="355" height="182"/>
<rect key="frame" x="10" y="44" width="394" height="277"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</tableView>
</subviews>
@@ -703,15 +704,15 @@
<objects>
<viewController storyboardIdentifier="UserNotificationVC" id="GSM-1I-akm" customClass="UserNotificationVC" customModule="WOKA" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="U8N-8z-auR">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="none" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="4Jz-rO-ToO">
<rect key="frame" x="0.0" y="35" width="375" height="632"/>
<rect key="frame" x="0.0" y="63" width="414" height="799"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</tableView>
<stackView hidden="YES" opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="5iZ-Hr-WYt">
<rect key="frame" x="104.5" y="220.5" width="166" height="246"/>
<rect key="frame" x="124" y="332" width="166" height="246"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="SupportGirlImage" translatesAutoresizingMaskIntoConstraints="NO" id="mxb-po-4od">
<rect key="frame" x="0.0" y="0.0" width="166" height="166"/>
@@ -768,14 +769,14 @@
<objects>
<viewController storyboardIdentifier="ThemeTwoVC" id="3jm-7v-5GP" customClass="ThemeTwoVC" customModule="WOKA" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="Y2R-2G-NBv">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Ksi-1c-xBG">
<rect key="frame" x="0.0" y="95" width="375" height="220"/>
<rect key="frame" x="0.0" y="123" width="414" height="220"/>
<subviews>
<activityIndicatorView hidden="YES" opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" hidesWhenStopped="YES" style="large" translatesAutoresizingMaskIntoConstraints="NO" id="3yT-Xz-Xmu">
<rect key="frame" x="169" y="91.5" width="37" height="37"/>
<rect key="frame" x="188.5" y="91.5" width="37" height="37"/>
<color key="color" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</activityIndicatorView>
</subviews>
@@ -787,7 +788,7 @@
</constraints>
</view>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="LiveHindi" translatesAutoresizingMaskIntoConstraints="NO" id="03W-c9-Rk6">
<rect key="frame" x="0.0" y="95" width="54" height="25"/>
<rect key="frame" x="0.0" y="123" width="54" height="25"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="width" secondItem="03W-c9-Rk6" secondAttribute="height" multiplier="13:6" id="1ok-RR-hUo"/>
@@ -795,7 +796,7 @@
</constraints>
</imageView>
<stackView opaque="NO" contentMode="scaleToFill" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="dUF-uY-OBL">
<rect key="frame" x="330" y="30" width="40" height="40"/>
<rect key="frame" x="369" y="58" width="40" height="40"/>
<subviews>
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="tl8-VA-AjQ">
<rect key="frame" x="0.0" y="0.0" width="40" height="40"/>
@@ -829,7 +830,7 @@
</subviews>
</stackView>
<stackView opaque="NO" contentMode="scaleToFill" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="wHk-XC-Cqq" userLabel="Avatar Stack">
<rect key="frame" x="10" y="25" width="300" height="50"/>
<rect key="frame" x="10" y="53" width="339" height="50"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Boy" translatesAutoresizingMaskIntoConstraints="NO" id="4xI-oX-ffb">
<rect key="frame" x="0.0" y="0.0" width="50" height="50"/>
@@ -839,7 +840,7 @@
</constraints>
</imageView>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" alignment="top" spacing="5" translatesAutoresizingMaskIntoConstraints="NO" id="LZa-k2-Fa1">
<rect key="frame" x="60" y="0.0" width="240" height="50"/>
<rect key="frame" x="60" y="0.0" width="279" height="50"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" spacing="3" translatesAutoresizingMaskIntoConstraints="NO" id="Eb9-At-Mtt">
<rect key="frame" x="0.0" y="0.0" width="53.5" height="25.5"/>
@@ -871,22 +872,22 @@
</subviews>
</stackView>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="redraw" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="BottomFrame" translatesAutoresizingMaskIntoConstraints="NO" id="1fD-0F-KMn">
<rect key="frame" x="0.0" y="420" width="375" height="317"/>
<rect key="frame" x="0.0" y="448" width="414" height="518"/>
</imageView>
<scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="wIw-DO-ba0">
<rect key="frame" x="0.0" y="320" width="375" height="347"/>
<rect key="frame" x="0.0" y="348" width="414" height="514"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="1iA-oh-toI">
<rect key="frame" x="0.0" y="0.0" width="375" height="448"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="448"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" text="Explore WOKA" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="cla-Q5-K2m" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="10" y="10" width="355" height="24"/>
<rect key="frame" x="10" y="10" width="394" height="24"/>
<fontDescription key="fontDescription" name="Exo2-Bold" family="Exo 2" pointSize="20"/>
<color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<nil key="highlightedColor"/>
</label>
<collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="4rq-xX-XRh">
<rect key="frame" x="10" y="44" width="355" height="140"/>
<rect key="frame" x="10" y="44" width="394" height="140"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="height" constant="140" id="82w-Zb-27Q"/>
@@ -900,19 +901,19 @@
<cells/>
</collectionView>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="02e-rk-u9Q">
<rect key="frame" x="10" y="194" width="355" height="224"/>
<rect key="frame" x="10" y="194" width="394" height="224"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" text="Coming Soon on WOKA" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vdt-pC-uNJ" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="10" y="10" width="335" height="24"/>
<rect key="frame" x="10" y="10" width="374" height="24"/>
<fontDescription key="fontDescription" name="Exo2-Bold" family="Exo 2" pointSize="20"/>
<color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<nil key="highlightedColor"/>
</label>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="dj6-9c-mxm">
<rect key="frame" x="10" y="44" width="335" height="180"/>
<rect key="frame" x="10" y="44" width="374" height="180"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="MasilaComingSoon" translatesAutoresizingMaskIntoConstraints="NO" id="l2T-ED-avg">
<rect key="frame" x="7" y="7" width="321" height="140"/>
<rect key="frame" x="7" y="7" width="360" height="140"/>
<constraints>
<constraint firstAttribute="height" constant="140" id="GbQ-KX-tc5"/>
</constraints>
@@ -923,7 +924,7 @@
</userDefinedRuntimeAttributes>
</imageView>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Vca-pu-v34" customClass="LocalisedElementsButton" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="107.5" y="57" width="120" height="40"/>
<rect key="frame" x="127" y="57" width="120" height="40"/>
<color key="backgroundColor" red="0.035294117649999998" green="0.0" blue="0.36470588240000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstAttribute="height" constant="40" id="K1Z-vZ-Ips"/>
@@ -944,7 +945,7 @@
</connections>
</button>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="MASILA" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="xhN-tm-LoZ">
<rect key="frame" x="7" y="152" width="321" height="22"/>
<rect key="frame" x="7" y="152" width="360" height="22"/>
<fontDescription key="fontDescription" name="Exo2-Bold" family="Exo 2" pointSize="18"/>
<color key="textColor" name="TextDarkBlue"/>
<nil key="highlightedColor"/>
@@ -974,7 +975,7 @@
<edgeInsets key="layoutMargins" top="10" left="10" bottom="0.0" right="10"/>
</stackView>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="K3K-3D-e9X">
<rect key="frame" x="10" y="428" width="355" height="20"/>
<rect key="frame" x="10" y="428" width="394" height="20"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="height" constant="20" id="Etm-uk-Fs9"/>
@@ -1036,11 +1037,11 @@
<objects>
<viewController storyboardIdentifier="PlayerVC" id="gNO-Lg-5q3" customClass="PlayerVC" customModule="WOKA" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="Rgf-VB-8Sg">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="dli-ld-4dd">
<rect key="frame" x="20" y="40" width="30" height="30"/>
<rect key="frame" x="20" y="68" width="30" height="30"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="height" constant="30" id="HPJ-GV-z0x"/>
@@ -1079,22 +1080,22 @@
<objects>
<viewController storyboardIdentifier="BlogsVC" id="JL8-U7-koy" customClass="BlogsVC" customModule="WOKA" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="SOW-xX-Eu0">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Uty-mq-usL">
<rect key="frame" x="0.0" y="20" width="375" height="647"/>
<rect key="frame" x="0.0" y="48" width="414" height="848"/>
<color key="backgroundColor" red="0.035294117647058823" green="0.0" blue="0.36470588235294116" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</view>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="redraw" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="BottomImageBlog" translatesAutoresizingMaskIntoConstraints="NO" id="WrA-I6-O47">
<rect key="frame" x="0.0" y="267" width="375" height="400"/>
<rect key="frame" x="0.0" y="496" width="414" height="400"/>
<color key="tintColor" red="0.1058823529" green="0.050980392159999999" blue="0.60392156860000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstAttribute="height" constant="400" id="hDP-ND-hZT"/>
</constraints>
</imageView>
<collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="CPI-Sd-MIf">
<rect key="frame" x="0.0" y="30" width="375" height="637"/>
<rect key="frame" x="0.0" y="58" width="414" height="838"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<collectionViewFlowLayout key="collectionViewLayout" minimumLineSpacing="10" minimumInteritemSpacing="10" id="X8i-uF-7dA">
<size key="itemSize" width="128" height="128"/>
@@ -1105,7 +1106,7 @@
<cells/>
</collectionView>
<stackView hidden="YES" opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="Nqj-wh-mOZ">
<rect key="frame" x="84.5" y="200.5" width="206" height="246"/>
<rect key="frame" x="104" y="312" width="206" height="246"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="SupportGirlImage" translatesAutoresizingMaskIntoConstraints="NO" id="aKI-uI-tys">
<rect key="frame" x="0.0" y="0.0" width="206" height="166"/>
@@ -1169,21 +1170,21 @@
<objects>
<viewController storyboardIdentifier="BlogDetailsVC" id="m3z-AW-Y67" customClass="BlogDetailsVC" customModule="WOKA" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="2ie-fT-lBU">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view alpha="0.60000002384185791" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="bQW-EN-5cE">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<color key="backgroundColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</view>
<stackView opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="Piw-bm-f3k">
<rect key="frame" x="20" y="60" width="335" height="567"/>
<rect key="frame" x="20" y="88" width="374" height="734"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="d1Y-Ir-lq2">
<rect key="frame" x="0.0" y="8" width="335" height="35"/>
<rect key="frame" x="0.0" y="8" width="374" height="35"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="5mY-JI-eL1">
<rect key="frame" x="295" y="0.0" width="35" height="35"/>
<rect key="frame" x="334" y="0.0" width="35" height="35"/>
<constraints>
<constraint firstAttribute="width" secondItem="5mY-JI-eL1" secondAttribute="height" multiplier="1:1" id="Rcf-Zx-41P"/>
</constraints>
@@ -1204,13 +1205,13 @@
</constraints>
</view>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" translatesAutoresizingMaskIntoConstraints="NO" id="0zg-E5-h57">
<rect key="frame" x="0.0" y="53" width="335" height="141"/>
<rect key="frame" x="0.0" y="53" width="374" height="189.5"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="7PR-nA-m6o" customClass="ShadowView" customModule="WOKA" customModuleProvider="target">
<rect key="frame" x="15" y="0.0" width="305" height="141"/>
<rect key="frame" x="15" y="0.0" width="344" height="189.5"/>
<subviews>
<imageView opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="2FK-rk-obG">
<rect key="frame" x="0.0" y="0.0" width="305" height="141"/>
<rect key="frame" x="0.0" y="0.0" width="344" height="189.5"/>
<color key="backgroundColor" systemColor="systemBrownColor"/>
</imageView>
</subviews>
@@ -1234,13 +1235,13 @@
<edgeInsets key="layoutMargins" top="0.0" left="15" bottom="0.0" right="15"/>
</stackView>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="dPM-yr-RKo">
<rect key="frame" x="0.0" y="204" width="335" height="363"/>
<rect key="frame" x="0.0" y="252.5" width="374" height="481.5"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" translatesAutoresizingMaskIntoConstraints="NO" id="LyT-t9-LuK">
<rect key="frame" x="15" y="5" width="305" height="101.5"/>
<rect key="frame" x="15" y="5" width="344" height="220"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" text="" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="r5a-5v-xNf">
<rect key="frame" x="0.0" y="0.0" width="305" height="101.5"/>
<rect key="frame" x="0.0" y="0.0" width="344" height="220"/>
<fontDescription key="fontDescription" name="Exo2-Bold" family="Exo 2" pointSize="18"/>
<color key="textColor" name="TextDarkBlue"/>
<nil key="highlightedColor"/>
@@ -1248,7 +1249,7 @@
</subviews>
</stackView>
<textView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" editable="NO" usesAttributedText="YES" selectable="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2tU-Z6-Wgy">
<rect key="frame" x="15" y="116.5" width="305" height="236.5"/>
<rect key="frame" x="15" y="235" width="344" height="236.5"/>
<color key="backgroundColor" systemColor="systemBackgroundColor"/>
<attributedString key="attributedText"/>
<textInputTraits key="textInputTraits" autocapitalizationType="sentences"/>

View File

@@ -9,7 +9,7 @@ import UIKit
import JWPlayerKit
import AVKit
class PlayerVC: JWPlayerViewController, JWPlayerViewControllerDelegate{
class PlayerVC: JWPlayerViewController, JWPlayerViewControllerUIDelegate{
@IBOutlet weak var backButton: UIButton!
var previousScale: CGFloat = 1.0
@@ -20,6 +20,7 @@ class PlayerVC: JWPlayerViewController, JWPlayerViewControllerDelegate{
var dismissTapped: (() -> Void)?
var videoIndex : Int?
var errorCount = 0
var isFullScreenBtn = false
@@ -57,18 +58,18 @@ class PlayerVC: JWPlayerViewController, JWPlayerViewControllerDelegate{
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
// DispatchQueue.main.async { [weak self] in
// guard let self else{return}
appDelegate.deviceOrientation = .landscapeRight
let value = UIInterfaceOrientation.landscapeRight.rawValue
UIDevice.current.setValue(value, forKey: "orientation")
player.configurePlayer(with: config)
self.delegate = self
//Disable Picture in Picture
playerView.allowsPictureInPicturePlayback = false
playerView.captionStyle = .none
// }
// DispatchQueue.main.async { [weak self] in
// guard let self else{return}
appDelegate.deviceOrientation = .landscapeRight
let value = UIInterfaceOrientation.landscapeRight.rawValue
UIDevice.current.setValue(value, forKey: "orientation")
player.configurePlayer(with: config)
self.uiDelegate = self
//Disable Picture in Picture
playerView.allowsPictureInPicturePlayback = false
playerView.captionStyle = .none
// }
}
override func viewWillDisappear(_ animated: Bool) {
@@ -214,10 +215,16 @@ class PlayerVC: JWPlayerViewController, JWPlayerViewControllerDelegate{
print("PlayList Over", vm.currentPlayingIndex)
}
override func jwplayer(_ player: any JWPlayer, didLoadPlaylist playlist: [JWPlayerItem]) {
super.jwplayer(player, didLoadPlaylist: playlist)
print("Playlist loaded")
}
// this will give index
override func jwplayer(_ player: any JWPlayer, didLoadPlaylistItem item: JWPlayerItem, at index: UInt) {
super.jwplayer(player, didLoadPlaylistItem: item, at: index)
print("didLoadPlaylistItem ", index)
if vm.currentPlayingIndex != -1 && vm.currentPlayingIndex != index{
// so update the loaded index and increase the current playing index
vm.updateUserView()
@@ -272,14 +279,23 @@ class PlayerVC: JWPlayerViewController, JWPlayerViewControllerDelegate{
override func jwplayer(_ player: JWPlayer, failedWithError code: UInt, message: String) {
super.jwplayer(player, failedWithError: code, message: message)
print("Error: \(code) - \(message)")
// try reconnect 3 times else show retry
if errorCount < 4{
errorCount += 1
self.player.configurePlayer(with: config)
self.player.play()
return
}
DispatchQueue.main.async {
Utilities.alertWithBtnCancelCompletion(title: "Error", msgBody: message, okBtnStr: "Connect", vc: self) { [weak self] isDone in
guard let self else{
self?.vm.handleBackAction()
return
}
errorCount = 0
if isDone{
self.player.configurePlayer(with: config)
self.player.play()

View File

@@ -34,6 +34,7 @@ class ThemeOneVC: UIViewController {
@IBOutlet weak var gamesView: UIView!
@IBOutlet weak var karaokeView: UIView!
@IBOutlet weak var shopView: UIView!
@IBOutlet weak var allIconView: UIView!
@IBOutlet weak var liveTVActivityIndicator: UIActivityIndicatorView!
@@ -62,6 +63,8 @@ class ThemeOneVC: UIViewController {
avPlayer.removeObserver(self, forKeyPath: "timeControlStatus")
avPlayer.pause()
}
NotificationCenter.default.removeObserver(self, name: AVAudioSession.routeChangeNotification, object: nil)
}
override var preferredStatusBarStyle: UIStatusBarStyle {
@@ -76,6 +79,7 @@ class ThemeOneVC: UIViewController {
if MyListDataTemp.shareInstance.favListingData?.showData == nil {
MyListDataTemp.shareInstance.favListingData = FavouriteListingDM.ResultData(totalRecords: nil, showData: FavouriteListingDM.ResultData.ShowData(hindi: [],english: []),videoData: [],gameData: [],singKaraokeData: [],audioData: [])
}
// connectedToNetwork()
// PersistentStorage.shared.deleteData()
@@ -174,6 +178,7 @@ extension ThemeOneVC{
// Observe the player's time control status
vm.avPlayer.addObserver(self, forKeyPath: "timeControlStatus", options: [.new, .old], context: nil)
// Observe buffering status
// vm.playerItem.addObserver(self, forKeyPath: "isPlaybackBufferEmpty", options: [.new, .old], context: nil)
// vm.playerItem.addObserver(self, forKeyPath: "isPlaybackLikelyToKeepUp", options: [.new, .old], context: nil)

View File

@@ -37,6 +37,8 @@ class ThemeTwoVC: UIViewController {
avPlayer.removeObserver(self, forKeyPath: "timeControlStatus")
avPlayer.pause()
}
NotificationCenter.default.removeObserver(self, name: AVAudioSession.routeChangeNotification, object: nil)
}
override var preferredStatusBarStyle: UIStatusBarStyle {

View File

@@ -38,6 +38,16 @@ class ThemeOneVM{
vc.nameLabel.setContentCompressionResistancePriority(.fittingSizeLevel, for: .horizontal)
handleBackground()
// Set initial small scale in viewDidLoad
self.vc.allIconView.transform = CGAffineTransform(scaleX: 0.5, y: 0.5) // Set initial scale to 50% of original size
// Perform the animation after the view has been laid out
DispatchQueue.main.async {
UIView.animate(withDuration: 0.7, delay: 0, options: [], animations: {
self.vc.allIconView.transform = CGAffineTransform.identity // Reset the transform to original size
}, completion: nil)
}
}
private func handleNotificationCenter(){
@@ -45,6 +55,30 @@ class ThemeOneVM{
NotificationCenter.default.addObserver(self, selector: #selector(appWillEnterForeground), name: UIApplication.willEnterForegroundNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(self.themeOnePush(notification:)), name: NSNotification.Name(rawValue: K.NotificationCenterReloads.themeOnePush), object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(self.reloadTheme), name: NSNotification.Name(rawValue: K.NotificationCenterReloads.reloadTheme), object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(handleRouteChange(_:)), name: AVAudioSession.routeChangeNotification, object: nil)
}
@objc func handleRouteChange(_ notification: Notification) {
guard let userInfo = notification.userInfo,
let reasonValue = userInfo[AVAudioSessionRouteChangeReasonKey] as? UInt,
let reason = AVAudioSession.RouteChangeReason(rawValue: reasonValue) else {
return
}
switch reason {
case .oldDeviceUnavailable:
// Headphones unplugged, avoid pausing if desired
avPlayer?.play() // Resume playing if paused
case .newDeviceAvailable:
// Headphones plugged in, you may want to take specific actions if needed
avPlayer?.play() // Resume playing if paused
default:
break
}
}
// MARK: - start stop activity Indicator
@@ -425,7 +459,7 @@ class ThemeOneVM{
vc.modalTransitionStyle = .crossDissolve
// Present the PlayerVC
self.vc.present(vc, animated: false) { [weak self] in
self.vc.present(vc, animated: true) { [weak self] in
guard let self else{return}
stopLiveStream()
}

View File

@@ -51,10 +51,12 @@ class ThemeTwoVM{
NotificationCenter.default.addObserver(self, selector: #selector(appDidEnterBackground), name: UIApplication.didEnterBackgroundNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(appWillEnterForeground), name: UIApplication.willEnterForegroundNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(self.viewPush(notification:)), name: NSNotification.Name(rawValue: K.NotificationCenterReloads.themeTwoPush), object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(handleRouteChange(_:)), name: AVAudioSession.routeChangeNotification, object: nil)
}
// MARK: - This will handle all clicks for modules
// This comes from Explore WOKA CLicks
@objc func viewPush(notification: Notification){
if let userInfo = notification.userInfo, let action = userInfo["action"] as? TopViewPush {
@@ -118,6 +120,27 @@ class ThemeTwoVM{
self.avPlayer.play()
}
@objc func handleRouteChange(_ notification: Notification) {
guard let userInfo = notification.userInfo,
let reasonValue = userInfo[AVAudioSessionRouteChangeReasonKey] as? UInt,
let reason = AVAudioSession.RouteChangeReason(rawValue: reasonValue) else {
return
}
switch reason {
case .oldDeviceUnavailable:
// Headphones unplugged, avoid pausing if desired
avPlayer?.play() // Resume playing if paused
case .newDeviceAvailable:
// Headphones plugged in, you may want to take specific actions if needed
avPlayer?.play() // Resume playing if paused
default:
break
}
}
// MARK: - Live TV
func playLiveTV(){
@@ -178,7 +201,7 @@ class ThemeTwoVM{
vc.modalTransitionStyle = .crossDissolve
// Present the PlayerVC
self.vc.present(vc, animated: false) { [weak self] in
self.vc.present(vc, animated: true) { [weak self] in
guard let self else{return}
stopLiveStream()
}