mirror of
https://github.com/SukkaW/Surge.git
synced 2025-12-21 05:40:29 +08:00
48 lines
2.8 KiB
JavaScript
48 lines
2.8 KiB
JavaScript
'use strict';Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});const buildStreamService=require('../_virtual/build-stream-service.cjs'),index=require('./trace/index.cjs'),stream=require('../Source/stream.cjs'),description=require('./constants/description.cjs'),ruleset=require('./lib/rules/ruleset.cjs');var hasRequiredBuildStreamService;
|
|
|
|
function requireBuildStreamService () {
|
|
if (hasRequiredBuildStreamService) return buildStreamService.__module.exports;
|
|
hasRequiredBuildStreamService = 1;
|
|
(function (module, exports) {
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
Object.defineProperty(exports, "buildStreamService", {
|
|
enumerable: true,
|
|
get: function() {
|
|
return buildStreamService;
|
|
}
|
|
});
|
|
const _trace = /*@__PURE__*/ index.__require();
|
|
const _stream = /*@__PURE__*/ stream.__require();
|
|
const _description = /*@__PURE__*/ description.__require();
|
|
const _ruleset = /*@__PURE__*/ ruleset.__require();
|
|
function createRulesetForStreamService(span, fileId, title, streamServices) {
|
|
return [
|
|
// Domains
|
|
new _ruleset.RulesetOutput(span, fileId, 'non_ip').withTitle(`Sukka's Ruleset - Stream Services: ${title}`).withDescription([
|
|
..._description.SHARED_DESCRIPTION,
|
|
'',
|
|
...streamServices.map((i)=>`- ${i.name}`)
|
|
]).addFromRuleset(streamServices.flatMap((i)=>i.rules)).write(),
|
|
// IP
|
|
new _ruleset.RulesetOutput(span, fileId, 'ip').withTitle(`Sukka's Ruleset - Stream Services IPs: ${title}`).withDescription([
|
|
..._description.SHARED_DESCRIPTION,
|
|
'',
|
|
...streamServices.map((i)=>`- ${i.name}`)
|
|
]).bulkAddCIDR4NoResolve(streamServices.flatMap((i)=>i.ip?.v4 ?? [])).bulkAddCIDR6NoResolve(streamServices.flatMap((i)=>i.ip?.v6 ?? [])).write()
|
|
];
|
|
}
|
|
const buildStreamService = (0, _trace.task)(require.main === module, __filename)(async (span)=>Promise.all([
|
|
createRulesetForStreamService(span, 'stream', 'All', _stream.ALL),
|
|
createRulesetForStreamService(span, 'stream_us', 'North America', _stream.NORTH_AMERICA),
|
|
createRulesetForStreamService(span, 'stream_eu', 'Europe', _stream.EU),
|
|
createRulesetForStreamService(span, 'stream_hk', 'Hong Kong', _stream.HK),
|
|
createRulesetForStreamService(span, 'stream_tw', 'Taiwan', _stream.TW),
|
|
createRulesetForStreamService(span, 'stream_jp', 'Japan', _stream.JP),
|
|
// createRulesetForStreamService('stream_au', 'Oceania', AU),
|
|
createRulesetForStreamService(span, 'stream_kr', 'Korean', _stream.KR)
|
|
].flat()));
|
|
} (buildStreamService.__module, buildStreamService.__module.exports));
|
|
return buildStreamService.__module.exports;
|
|
}exports.__require=requireBuildStreamService; |