mirror of
https://github.com/vega-org/vega-providers.git
synced 2026-04-17 23:51:44 +00:00
1 line
3.2 KiB
JavaScript
1 line
3.2 KiB
JavaScript
"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(e,t)=>__defProp(e,"name",{value:t,configurable:!0}),__export=(e,t)=>{for(var r in t)__defProp(e,r,{get:t[r],enumerable:!0})},__copyProps=(e,t,r,s)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let n of __getOwnPropNames(t))__hasOwnProp.call(e,n)||n===r||__defProp(e,n,{get:()=>t[n],enumerable:!(s=__getOwnPropDesc(t,n))||s.enumerable});return e},__toCommonJS=e=>__copyProps(__defProp({},"__esModule",{value:!0}),e),__async=(e,t,r)=>new Promise((s,n)=>{var o=e=>{try{l(r.next(e))}catch(e){n(e)}},a=e=>{try{l(r.throw(e))}catch(e){n(e)}},l=e=>e.done?s(e.value):Promise.resolve(e.value).then(o,a);l((r=r.apply(e,t)).next())}),posts_exports={};__export(posts_exports,{getPosts:()=>getPosts,getSearchPosts:()=>getSearchPosts});var getPosts=__name(function(e){return __async(this,arguments,function*({filter:e,page:t,signal:r,providerContext:s}){const{axios:n,cheerio:o}=s,a="https://a.111477.xyz";if(t>1)return[];const l=`${a}${e}`;return(yield posts({baseUrl:a,url:l,signal:r,axios:n,cheerio:o})).slice(0,50)})},"getPosts"),getSearchPosts=__name(function(e){return __async(this,arguments,function*({searchQuery:e,page:t,signal:r,providerContext:s}){const{axios:n,cheerio:o}=s,a="https://a.111477.xyz";return t>1?[]:[...yield posts({baseUrl:a,url:`${a}/movies/`,signal:r,axios:n,cheerio:o}),...yield posts({baseUrl:a,url:`${a}/tvs/`,signal:r,axios:n,cheerio:o})].filter(t=>{const r=t.title.toLowerCase(),s=e.toLowerCase();if(r.includes(s))return!0;const n=s.split(/\s+/).filter(e=>e.length>0),o=r.split(/[\s\-\.\(\)\[\]]+/).filter(e=>e.length>0);if(n.every(e=>o.some(t=>t.includes(e))))return!0;if(1===n.length){const e=n[0];if(e.length>=3){if(o.some(t=>t.startsWith(e)))return!0;if(o.some(t=>!(Math.abs(t.length-e.length)>2)&&levenshteinDistance(t,e)<=Math.max(1,Math.floor(.2*e.length))))return!0}}return!1})})},"getSearchPosts");function posts(e){return __async(this,arguments,function*({baseUrl:e,url:t,signal:r,axios:s,cheerio:n}){try{const e=(yield s.get(t,{signal:r})).data,o=n.load(e),a=[];return o("table tbody tr").each((e,r)=>{const s=o(r).find("td:first-child a"),n=s.text().trim(),l=s.attr("href");if(n&&l&&"../"!==n&&"Parent Directory"!==n&&n.endsWith("/")){const e=n.replace(/\/$/,""),r=t+l,s=e.length>30?e.slice(0,30).replace(/\./g," "):e.replace(/\./g," "),o=`https://placehold.jp/23/000000/ffffff/200x400.png?text=${encodeURIComponent(s)}&css=%7B%22background%22%3A%22%20-webkit-gradient(linear%2C%20left%20bottom%2C%20left%20top%2C%20from(%233f3b3b)%2C%20to(%23000000))%22%2C%22text-transform%22%3A%22%20capitalize%22%7D`;a.push({title:e,link:r,image:o})}}),a}catch(e){return[]}})}function levenshteinDistance(e,t){const r=Array(t.length+1).fill(null).map(()=>Array(e.length+1).fill(null));for(let t=0;t<=e.length;t++)r[0][t]=t;for(let e=0;e<=t.length;e++)r[e][0]=e;for(let s=1;s<=t.length;s++)for(let n=1;n<=e.length;n++){const o=e[n-1]===t[s-1]?0:1;r[s][n]=Math.min(r[s][n-1]+1,r[s-1][n]+1,r[s-1][n-1]+o)}return r[t.length][e.length]}__name(posts,"posts"),__name(levenshteinDistance,"levenshteinDistance"),exports.getPosts=getPosts,exports.getSearchPosts=getSearchPosts; |