MCPcopy
hub / github.com/iptv-org/iptv / getBroadcastSubdivisions

Method getBroadcastSubdivisions

scripts/models/stream.ts:161–198  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

159 }
160
161 getBroadcastSubdivisions(): Collection<sdk.Models.Subdivision> {
162 const subdivisions = new Collection<sdk.Models.Subdivision>()
163
164 const feed = this.getFeed()
165 if (!feed) return subdivisions
166
167 feed
168 .getBroadcastArea()
169 .getLocations()
170 .forEach((location: sdk.Models.BroadcastAreaLocation) => {
171 switch (location.type) {
172 case 'subdivision': {
173 const subdivision = data.subdivisionsKeyByCode.get(location.code)
174 if (!subdivision) break
175 subdivisions.add(subdivision)
176 if (!subdivision.parent) break
177 const parentSubdivision = data.subdivisionsKeyByCode.get(subdivision.parent)
178 if (!parentSubdivision) break
179 subdivisions.add(parentSubdivision)
180 break
181 }
182 case 'city': {
183 const city = data.citiesKeyByCode.get(location.code)
184 if (!city || !city.subdivision) break
185 const subdivision = data.subdivisionsKeyByCode.get(city.subdivision)
186 if (!subdivision) break
187 subdivisions.add(subdivision)
188 if (!subdivision.parent) break
189 const parentSubdivision = data.subdivisionsKeyByCode.get(subdivision.parent)
190 if (!parentSubdivision) break
191 subdivisions.add(parentSubdivision)
192 break
193 }
194 }
195 })
196
197 return subdivisions.uniqBy((subdivision: sdk.Models.Subdivision) => subdivision.code)
198 }
199
200 getBroadcastCities(): Collection<sdk.Models.City> {
201 const cities = new Collection<sdk.Models.City>()

Callers 1

generateMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected