This commit is contained in:
himanshu8443
2025-06-15 21:29:40 +05:30
commit 3f3e12f5df
299 changed files with 18729 additions and 0 deletions

17
dist/netflixMirror/index.js vendored Normal file
View File

@@ -0,0 +1,17 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.netflixMirror = void 0;
const nfCatalog_1 = require("./nfCatalog");
const nfGetInfo_1 = require("./nfGetInfo");
const nfGetPost_1 = require("./nfGetPost");
const nfGetEpisodes_1 = require("./nfGetEpisodes");
const nfGetSteam_1 = require("./nfGetSteam");
exports.netflixMirror = {
catalog: nfCatalog_1.nfCatalog,
genres: nfCatalog_1.nfGenresList,
GetMetaData: nfGetInfo_1.nfGetInfo,
GetHomePosts: nfGetPost_1.nfGetPost,
GetStream: nfGetSteam_1.nfGetStream,
GetEpisodeLinks: nfGetEpisodes_1.nfGetEpisodes,
GetSearchPosts: nfGetPost_1.nfGetPostsSearch,
};

18
dist/netflixMirror/nfCatalog.js vendored Normal file
View File

@@ -0,0 +1,18 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.nfGenresList = exports.nfCatalog = void 0;
exports.nfCatalog = [
{
title: 'Home',
filter: '/mobile/home?app=1',
},
{
title: 'Series',
filter: '/mobile/series',
},
{
title: 'Movies',
filter: '/mobile/movies',
},
];
exports.nfGenresList = [];

39
dist/netflixMirror/nfGetEpisodes.js vendored Normal file
View File

@@ -0,0 +1,39 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.nfGetEpisodes = void 0;
const nfGetEpisodes = async function ({ url: link, providerContext, }) {
const { getBaseUrl, axios } = providerContext;
let providerValue = 'netflixMirror';
try {
const baseUrl = await getBaseUrl('nfMirror');
const url = `${baseUrl}${providerValue === 'netflixMirror'
? '/episodes.php?s='
: '/pv/episodes.php?s='}` +
link +
'&t=' +
Math.round(new Date().getTime() / 1000);
console.log('nfEpisodesUrl', url);
const res = await axios.get(url, {
headers: {
'Content-Type': 'application/json',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36',
'Accept-Language': 'en-US,en;q=0.9',
},
});
const data = res.data;
console.log('nfEpisodes', data);
const episodeList = [];
data?.episodes?.map((episode) => {
episodeList.push({
title: 'Episode ' + episode?.ep.replace('E', ''),
link: episode?.id,
});
});
return episodeList;
}
catch (err) {
console.error('nfGetEpisodes error', err);
return [];
}
};
exports.nfGetEpisodes = nfGetEpisodes;

57
dist/netflixMirror/nfGetInfo.js vendored Normal file
View File

@@ -0,0 +1,57 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.nfGetInfo = void 0;
const nfGetInfo = async function ({ link, }) {
let providerValue = 'netflixMirror';
try {
const isPrime = providerValue === 'primeMirror' ? 'isPrime=true' : 'isPrime=false';
const url = `https://netmirror.8man.me/api/net-proxy?${isPrime}&url=${encodeURIComponent(link)}`;
console.log('nfifo', url);
const res = await fetch(url, {
credentials: 'omit',
});
const data = await res.json();
const id = link.split('id=')[1]?.split('&')[0];
const meta = {
title: data.title,
synopsis: data.desc,
image: `https://img.nfmirrorcdn.top/poster/h/${id}.jpg`,
cast: data?.short_cast?.split(','),
tags: [data?.year, data?.hdsd, ...data?.thismovieis?.split(',')],
imdbId: '',
type: 'series',
};
console.log('nfinfo', meta);
const linkList = [];
if (data?.season?.length > 0) {
data.season.map((season) => {
linkList.push({
title: 'Season ' + season?.s,
episodesLink: season?.id,
});
});
}
else {
linkList.push({
title: meta.title,
directLinks: [{ link: id, title: 'Movie', type: 'movie' }],
});
}
return {
...meta,
linkList: linkList,
};
}
catch (err) {
console.error(err);
return {
title: '',
synopsis: '',
image: '',
imdbId: '',
type: '',
linkList: [],
};
}
};
exports.nfGetInfo = nfGetInfo;

94
dist/netflixMirror/nfGetPost.js vendored Normal file
View File

@@ -0,0 +1,94 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.nfGetPostsSearch = exports.nfGetPost = void 0;
const nfGetPost = async function ({ filter, page, providerValue, signal, providerContext, }) {
try {
const { getBaseUrl, cheerio } = providerContext;
const baseUrl = await getBaseUrl('nfMirror');
const catalog = [];
if (page > 1) {
return [];
}
// console.log(filter);
const isPrime = providerValue === 'primeMirror' ? 'isPrime=true' : 'isPrime=false';
const url = `https://netmirror.8man.me/api/net-proxy?${isPrime}&url=${baseUrl + filter}`;
const res = await fetch(url, {
signal: signal,
method: 'GET',
credentials: 'omit',
});
const data = await res.text();
// console.log('nfPost', data);
const $ = cheerio.load(data);
$('a.post-data').map((i, element) => {
const title = '';
const id = $(element).attr('data-post');
// console.log('id', id);
const image = $(element).find('img').attr('data-src') || '';
if (id) {
catalog.push({
title: title,
link: baseUrl +
`${providerValue === 'netflixMirror'
? '/post.php?id='
: '/pv/post.php?id='}` +
id +
'&t=' +
Math.round(new Date().getTime() / 1000),
image: image,
});
}
});
// console.log(catalog);
return catalog;
}
catch (err) {
console.error('nf error ', err);
return [];
}
};
exports.nfGetPost = nfGetPost;
const nfGetPostsSearch = async function ({ searchQuery, page, providerValue, signal, providerContext, }) {
const { getBaseUrl } = providerContext;
try {
if (page > 1) {
return [];
}
const catalog = [];
const baseUrl = await getBaseUrl('nfMirror');
const isPrime = providerValue === 'primeMirror' ? 'isPrime=true' : 'isPrime=false';
const url = `https://netmirror.8man.me/api/net-proxy?${isPrime}&url=${baseUrl}${providerValue === 'netflixMirror' ? '' : '/pv'}/search.php?s=${encodeURI(searchQuery)}`;
const res = await fetch(url, {
signal: signal,
method: 'GET',
credentials: 'omit',
});
const data = await res.json();
data?.searchResult?.forEach((result) => {
const title = result?.t || '';
const id = result?.id;
const image = providerValue === 'netflixMirror'
? `https://imgcdn.media/poster/v/${id}.jpg`
: '';
if (id) {
catalog.push({
title: title,
link: baseUrl +
`${providerValue === 'netflixMirror'
? '/mobile/post.php?id='
: '/mobile/pv/post.php?id='}` +
id +
'&t=' +
Math.round(new Date().getTime() / 1000),
image: image,
});
}
});
return catalog;
}
catch (err) {
console.error('Search error:', err);
return [];
}
};
exports.nfGetPostsSearch = nfGetPostsSearch;

39
dist/netflixMirror/nfGetSteam.js vendored Normal file
View File

@@ -0,0 +1,39 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.nfGetStream = void 0;
const nfGetStream = async ({ link: id, providerContext, }) => {
const { getBaseUrl } = providerContext;
try {
let providerValue = 'netflixMirror';
const baseUrl = await getBaseUrl('nfMirror');
const url = `https://netmirror.8man.me/api/net-proxy?url=${baseUrl}${providerValue === 'netflixMirror'
? '/mobile/playlist.php?id='
: '/pv/playlist.php?id='}${id}&t=${Math.round(new Date().getTime() / 1000)}`;
console.log('nfGetStream, url:', url);
const res = await fetch(url, {
credentials: 'omit',
});
const resJson = await res.json();
const data = resJson?.[0];
const streamLinks = [];
data?.sources.forEach((source) => {
streamLinks.push({
server: source.label,
link: (baseUrl + source.file)?.replace(':su', ':ni'),
type: 'm3u8',
headers: {
Referer: baseUrl,
origin: baseUrl,
Cookie: 'hd=on',
},
});
});
console.log(streamLinks);
return streamLinks;
}
catch (err) {
console.error(err);
return [];
}
};
exports.nfGetStream = nfGetStream;