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

Function loadData

scripts/api.ts:27–70  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

25let searchIndex
26
27async function loadData() {
28 const dataManager = new sdk.DataManager({ dataDir: DATA_DIR })
29 await dataManager.loadFromDisk()
30 dataManager.processData()
31
32 const {
33 channels,
34 feeds,
35 categories,
36 languages,
37 countries,
38 subdivisions,
39 cities,
40 regions,
41 blocklist,
42 guides
43 } = dataManager.getProcessedData()
44
45 const searchableData = channels.map((channel: sdk.Models.Channel) => channel.getSearchable())
46 searchIndex = sdk.SearchEngine.createIndex<sdk.Types.ChannelSearchableData>(searchableData.all())
47
48 data.categoriesKeyById = categories.keyBy((category: sdk.Models.Category) => category.id)
49 data.countriesKeyByCode = countries.keyBy((country: sdk.Models.Country) => country.code)
50 data.subdivisionsKeyByCode = subdivisions.keyBy(
51 (subdivision: sdk.Models.Subdivision) => subdivision.code
52 )
53 data.citiesKeyByCode = cities.keyBy((city: sdk.Models.City) => city.code)
54 data.regionsKeyByCode = regions.keyBy((region: sdk.Models.Region) => region.code)
55 data.languagesKeyByCode = languages.keyBy((language: sdk.Models.Language) => language.code)
56 data.channelsKeyById = channels.keyBy((channel: sdk.Models.Channel) => channel.id)
57 data.feedsKeyByStreamId = feeds.keyBy((feed: sdk.Models.Feed) => feed.getStreamId())
58 data.feedsGroupedByChannel = feeds.groupBy((feed: sdk.Models.Feed) => feed.channel)
59 data.blocklistRecordsGroupedByChannel = blocklist.groupBy(
60 (blocklistRecord: sdk.Models.BlocklistRecord) => blocklistRecord.channel
61 )
62 data.guidesGroupedByStreamId = guides
63 .filter((guide: sdk.Models.Guide) => !!guide.sources.length)
64 .groupBy((guide: sdk.Models.Guide) => guide.getStreamId())
65 data.categories = categories
66 data.countries = countries
67 data.subdivisions = subdivisions
68 data.cities = cities
69 data.regions = regions
70}
71
72async function downloadData() {
73 function formatBytes(bytes: number) {

Callers 9

mainFunction · 0.90
mainFunction · 0.90
mainFunction · 0.90
mainFunction · 0.90
mainFunction · 0.90
mainFunction · 0.90
mainFunction · 0.90
mainFunction · 0.90
mainFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected