mirror of https://github.com/kenzok8/small.git
update 2025-03-09 00:12:46
This commit is contained in:
parent
7e544417c3
commit
a1517e9a43
|
@ -261,6 +261,102 @@ const vless_flow = [
|
|||
];
|
||||
|
||||
/* Prototype */
|
||||
const CBIGridSection = form.GridSection.extend({
|
||||
modaltitle(/* ... */) {
|
||||
return loadModalTitle.call(this, ...this.hm_modaltitle || [null,null], ...arguments)
|
||||
},
|
||||
|
||||
sectiontitle(/* ... */) {
|
||||
return loadDefaultLabel.call(this, ...arguments);
|
||||
},
|
||||
|
||||
renderSectionAdd(extra_class) {
|
||||
const prefmt = this.hm_prefmt;
|
||||
const LC = this.hm_lowcase_only;
|
||||
|
||||
let el = form.GridSection.prototype.renderSectionAdd.call(this, extra_class),
|
||||
nameEl = el.querySelector('.cbi-section-create-name');
|
||||
|
||||
ui.addValidator(nameEl, 'uciname', true, (v) => {
|
||||
let button = el.querySelector('.cbi-section-create > .cbi-button-add');
|
||||
const prefix = prefmt?.prefix ? prefmt.prefix : '';
|
||||
const suffix = prefmt?.suffix ? prefmt.suffix : '';
|
||||
|
||||
if (!v) {
|
||||
button.disabled = true;
|
||||
return true;
|
||||
} else if (LC && (v !== v.toLowerCase())) {
|
||||
button.disabled = true;
|
||||
return _('Expecting: %s').format(_('Lowercase only'));
|
||||
} else if (uci.get(this.config, v)) {
|
||||
button.disabled = true;
|
||||
return _('Expecting: %s').format(_('unique UCI identifier'));
|
||||
} else if (uci.get(this.config, prefix + v + suffix)) {
|
||||
button.disabled = true;
|
||||
return _('Expecting: %s').format(_('unique identifier'));
|
||||
} else {
|
||||
button.disabled = null;
|
||||
return true;
|
||||
}
|
||||
}, 'blur', 'keyup');
|
||||
|
||||
return el;
|
||||
},
|
||||
|
||||
handleAdd(ev, name) {
|
||||
const prefmt = this.hm_prefmt;
|
||||
const prefix = prefmt?.prefix ? prefmt.prefix : '';
|
||||
const suffix = prefmt?.suffix ? prefmt.suffix : '';
|
||||
|
||||
return form.GridSection.prototype.handleAdd.call(this, ev, prefix + name + suffix);
|
||||
}
|
||||
});
|
||||
|
||||
const CBIhandleImport = baseclass.extend(/** @lends hm.handleImport.prototype */ {
|
||||
__init__(map, section, title, description) {
|
||||
this.map = map;
|
||||
this.section = section;
|
||||
this.title = title ?? '';
|
||||
this.description = description ?? '';
|
||||
this.placeholder = '';
|
||||
|
||||
this.handleFn = this.handleFn.bind(this.section);
|
||||
},
|
||||
|
||||
handleFn(textarea, save) {
|
||||
if (save) {
|
||||
return uci.save()
|
||||
.then(L.bind(this.map.load, this.map))
|
||||
.then(L.bind(this.map.reset, this.map))
|
||||
.then(L.ui.hideModal)
|
||||
.catch(() => {});
|
||||
} else
|
||||
return ui.hideModal();
|
||||
},
|
||||
|
||||
render() {
|
||||
const textarea = new ui.Textarea('', {
|
||||
placeholder: this.placeholder
|
||||
});
|
||||
|
||||
ui.showModal(this.title, [
|
||||
E('p', this.description),
|
||||
textarea.render(),
|
||||
E('div', { class: 'right' }, [
|
||||
E('button', {
|
||||
class: 'btn',
|
||||
click: ui.hideModal
|
||||
}, [ _('Cancel') ]),
|
||||
' ',
|
||||
E('button', {
|
||||
class: 'btn cbi-button-action',
|
||||
click: ui.createHandlerFn(this, 'handleFn', textarea)
|
||||
}, [ _('Import') ])
|
||||
])
|
||||
]);
|
||||
}
|
||||
});
|
||||
|
||||
const CBIDynamicList = form.DynamicList.extend({
|
||||
__name__: 'CBI.DynamicList',
|
||||
|
||||
|
@ -294,9 +390,9 @@ const CBIGenValue = form.Value.extend({
|
|||
node.classList.add('control-group');
|
||||
|
||||
(node.querySelector('.control-group') || node).appendChild(E('button', {
|
||||
'class': 'cbi-button cbi-button-add',
|
||||
'title': _('Generate'),
|
||||
'click': ui.createHandlerFn(this, handleGenKey, this.hm_asymmetric || this.option)
|
||||
class: 'cbi-button cbi-button-add',
|
||||
title: _('Generate'),
|
||||
click: ui.createHandlerFn(this, handleGenKey, this.hm_asymmetric || this.option)
|
||||
}, [ _('Generate') ]));
|
||||
|
||||
return node;
|
||||
|
@ -344,12 +440,12 @@ const CBITextValue = form.TextValue.extend({
|
|||
const UIDynamicList = ui.DynamicList.extend({
|
||||
addItem(dl, value, text, flash) {
|
||||
if (this.options.allowduplicates) {
|
||||
const new_item = E('div', { 'class': flash ? 'item flash' : 'item', 'tabindex': 0, 'draggable': !less_24_10 }, [
|
||||
const new_item = E('div', { class: flash ? 'item flash' : 'item', tabindex: 0, draggable: !less_24_10 }, [
|
||||
E('span', {}, [ text ?? value ]),
|
||||
E('input', {
|
||||
'type': 'hidden',
|
||||
'name': this.options.name,
|
||||
'value': value })]);
|
||||
type: 'hidden',
|
||||
name: this.options.name,
|
||||
value: value })]);
|
||||
|
||||
const ai = dl.querySelector('.add-item');
|
||||
ai.parentNode.insertBefore(new_item, ai);
|
||||
|
@ -660,15 +756,15 @@ function renderStatus(ElId, isRunning, instance, noGlobal) {
|
|||
|
||||
return E([
|
||||
E('button', {
|
||||
'class': 'cbi-button cbi-button-apply' + (noGlobal ? ' hidden' : ''),
|
||||
'click': ui.createHandlerFn(this, handleReload, instance)
|
||||
class: 'cbi-button cbi-button-apply' + (noGlobal ? ' hidden' : ''),
|
||||
click: ui.createHandlerFn(this, handleReload, instance)
|
||||
}, [ _('Reload') ]),
|
||||
updateStatus(E('span', { id: ElId, style: 'border: unset; font-style: italic; font-weight: bold' }), isRunning ? true : false),
|
||||
E('a', {
|
||||
'class': 'cbi-button cbi-button-apply %s'.format(visible ? '' : 'hidden'),
|
||||
'href': visible ? getDashURL(isRunning) : '',
|
||||
'target': '_blank',
|
||||
'rel': 'noreferrer noopener'
|
||||
class: 'cbi-button cbi-button-apply %s'.format(visible ? '' : 'hidden'),
|
||||
href: visible ? getDashURL(isRunning) : '',
|
||||
target: '_blank',
|
||||
rel: 'noreferrer noopener'
|
||||
}, [ _('Open Dashboard') ])
|
||||
]);
|
||||
}
|
||||
|
@ -728,42 +824,6 @@ function renderResDownload(section_id) {
|
|||
return El;
|
||||
}
|
||||
|
||||
function renderSectionAdd(prefmt, LC, extra_class) {
|
||||
let el = form.GridSection.prototype.renderSectionAdd.apply(this, [ extra_class ]),
|
||||
nameEl = el.querySelector('.cbi-section-create-name');
|
||||
ui.addValidator(nameEl, 'uciname', true, (v) => {
|
||||
let button = el.querySelector('.cbi-section-create > .cbi-button-add');
|
||||
const prefix = prefmt?.prefix ? prefmt.prefix : '';
|
||||
const suffix = prefmt?.suffix ? prefmt.suffix : '';
|
||||
|
||||
if (!v) {
|
||||
button.disabled = true;
|
||||
return true;
|
||||
} else if (LC && (v !== v.toLowerCase())) {
|
||||
button.disabled = true;
|
||||
return _('Expecting: %s').format(_('Lowercase only'));
|
||||
} else if (uci.get(this.config, v)) {
|
||||
button.disabled = true;
|
||||
return _('Expecting: %s').format(_('unique UCI identifier'));
|
||||
} else if (uci.get(this.config, prefix + v + suffix)) {
|
||||
button.disabled = true;
|
||||
return _('Expecting: %s').format(_('unique identifier'));
|
||||
} else {
|
||||
button.disabled = null;
|
||||
return true;
|
||||
}
|
||||
}, 'blur', 'keyup');
|
||||
|
||||
return el;
|
||||
}
|
||||
|
||||
function handleAdd(prefmt, ev, name) {
|
||||
const prefix = prefmt?.prefix ? prefmt.prefix : '';
|
||||
const suffix = prefmt?.suffix ? prefmt.suffix : '';
|
||||
|
||||
return form.GridSection.prototype.handleAdd.apply(this, [ ev, prefix + name + suffix ]);
|
||||
}
|
||||
|
||||
function handleGenKey(option) {
|
||||
const section_id = this.section.section;
|
||||
const type = this.section.getOption('type').formvalue(section_id);
|
||||
|
@ -1195,6 +1255,8 @@ return baseclass.extend({
|
|||
vless_flow,
|
||||
|
||||
/* Prototype */
|
||||
GridSection: CBIGridSection,
|
||||
handleImport: CBIhandleImport,
|
||||
DynamicList: CBIDynamicList,
|
||||
GenValue: CBIGenValue,
|
||||
ListValue: CBIListValue,
|
||||
|
@ -1222,8 +1284,6 @@ return baseclass.extend({
|
|||
updateStatus,
|
||||
getDashURL,
|
||||
renderResDownload,
|
||||
renderSectionAdd,
|
||||
handleAdd,
|
||||
handleGenKey,
|
||||
handleReload,
|
||||
handleRemoveIdles,
|
||||
|
|
|
@ -608,17 +608,15 @@ return view.extend({
|
|||
o.default = o.disabled;
|
||||
|
||||
/* Proxy Group */
|
||||
o = s.taboption('group', form.SectionValue, '_group', form.GridSection, 'proxy_group', null);
|
||||
o = s.taboption('group', form.SectionValue, '_group', hm.GridSection, 'proxy_group', null);
|
||||
ss = o.subsection;
|
||||
var prefmt = { 'prefix': 'group_', 'suffix': '' };
|
||||
ss.addremove = true;
|
||||
ss.rowcolors = true;
|
||||
ss.sortable = true;
|
||||
ss.nodescriptions = true;
|
||||
ss.modaltitle = L.bind(hm.loadModalTitle, ss, _('Proxy Group'), _('Add a proxy group'));
|
||||
ss.sectiontitle = L.bind(hm.loadDefaultLabel, ss);
|
||||
ss.renderSectionAdd = L.bind(hm.renderSectionAdd, ss, prefmt, true);
|
||||
ss.handleAdd = L.bind(hm.handleAdd, ss, prefmt);
|
||||
ss.hm_modaltitle = [ _('Proxy Group'), _('Add a proxy group') ];
|
||||
ss.hm_prefmt = { 'prefix': 'group_', 'suffix': '' };
|
||||
ss.hm_lowcase_only = true;
|
||||
|
||||
ss.tab('field_general', _('General fields'));
|
||||
ss.tab('field_override', _('Override fields'));
|
||||
|
@ -816,17 +814,15 @@ return view.extend({
|
|||
s.tab('rules', _('Routing rule'));
|
||||
|
||||
/* Routing rules */
|
||||
o = s.taboption('rules', form.SectionValue, '_rules', form.GridSection, 'rules', null);
|
||||
o = s.taboption('rules', form.SectionValue, '_rules', hm.GridSection, 'rules', null);
|
||||
ss = o.subsection;
|
||||
var prefmt = { 'prefix': '', 'suffix': '_host' };
|
||||
ss.addremove = true;
|
||||
ss.rowcolors = true;
|
||||
ss.sortable = true;
|
||||
ss.nodescriptions = true;
|
||||
ss.modaltitle = L.bind(hm.loadModalTitle, ss, _('Routing rule'), _('Add a routing rule'));
|
||||
ss.sectiontitle = L.bind(hm.loadDefaultLabel, ss);
|
||||
ss.renderSectionAdd = L.bind(hm.renderSectionAdd, ss, prefmt, false);
|
||||
ss.handleAdd = L.bind(hm.handleAdd, ss, prefmt);
|
||||
ss.hm_modaltitle = [ _('Routing rule'), _('Add a routing rule') ];
|
||||
ss.hm_prefmt = { 'prefix': '', 'suffix': '_host' };
|
||||
ss.hm_lowcase_only = false;
|
||||
|
||||
so = ss.option(form.Value, 'label', _('Label'));
|
||||
so.load = L.bind(hm.loadDefaultLabel, so);
|
||||
|
@ -868,17 +864,15 @@ return view.extend({
|
|||
s.tab('subrules', _('Sub rule'));
|
||||
|
||||
/* Sub rules */
|
||||
o = s.taboption('subrules', form.SectionValue, '_subrules', form.GridSection, 'subrules', null);
|
||||
o = s.taboption('subrules', form.SectionValue, '_subrules', hm.GridSection, 'subrules', null);
|
||||
ss = o.subsection;
|
||||
var prefmt = { 'prefix': '', 'suffix': '_subhost' };
|
||||
ss.addremove = true;
|
||||
ss.rowcolors = true;
|
||||
ss.sortable = true;
|
||||
ss.nodescriptions = true;
|
||||
ss.modaltitle = L.bind(hm.loadModalTitle, ss, _('Sub rule'), _('Add a sub rule'));
|
||||
ss.sectiontitle = L.bind(hm.loadDefaultLabel, ss);
|
||||
ss.renderSectionAdd = L.bind(hm.renderSectionAdd, ss, prefmt, false);
|
||||
ss.handleAdd = L.bind(hm.handleAdd, ss, prefmt);
|
||||
ss.hm_modaltitle = [ _('Sub rule'), _('Add a sub rule') ];
|
||||
ss.hm_prefmt = { 'prefix': '', 'suffix': '_subhost' };
|
||||
ss.hm_lowcase_only = false;
|
||||
|
||||
so = ss.option(form.Value, 'label', _('Label'));
|
||||
so.load = L.bind(hm.loadDefaultLabel, so);
|
||||
|
@ -955,17 +949,15 @@ return view.extend({
|
|||
s.tab('dns_server', _('DNS server'));
|
||||
|
||||
/* DNS server */
|
||||
o = s.taboption('dns_server', form.SectionValue, '_dns_server', form.GridSection, 'dns_server', null);
|
||||
o = s.taboption('dns_server', form.SectionValue, '_dns_server', hm.GridSection, 'dns_server', null);
|
||||
ss = o.subsection;
|
||||
var prefmt = { 'prefix': 'dns_', 'suffix': '' };
|
||||
ss.addremove = true;
|
||||
ss.rowcolors = true;
|
||||
ss.sortable = true;
|
||||
ss.nodescriptions = true;
|
||||
ss.modaltitle = L.bind(hm.loadModalTitle, ss, _('DNS server'), _('Add a DNS server'));
|
||||
ss.sectiontitle = L.bind(hm.loadDefaultLabel, ss);
|
||||
ss.renderSectionAdd = L.bind(hm.renderSectionAdd, ss, prefmt, true);
|
||||
ss.handleAdd = L.bind(hm.handleAdd, ss, prefmt);
|
||||
ss.hm_modaltitle = [ _('DNS server'), _('Add a DNS server') ];
|
||||
ss.hm_prefmt = { 'prefix': 'dns_', 'suffix': '' };
|
||||
ss.hm_lowcase_only = true;
|
||||
|
||||
so = ss.option(form.Value, 'label', _('Label'));
|
||||
so.load = L.bind(hm.loadDefaultLabel, so);
|
||||
|
@ -1096,17 +1088,15 @@ return view.extend({
|
|||
s.tab('dns_policy', _('DNS policy'));
|
||||
|
||||
/* DNS policy */
|
||||
o = s.taboption('dns_policy', form.SectionValue, '_dns_policy', form.GridSection, 'dns_policy', null);
|
||||
o = s.taboption('dns_policy', form.SectionValue, '_dns_policy', hm.GridSection, 'dns_policy', null);
|
||||
ss = o.subsection;
|
||||
var prefmt = { 'prefix': '', 'suffix': '_domain' };
|
||||
ss.addremove = true;
|
||||
ss.rowcolors = true;
|
||||
ss.sortable = true;
|
||||
ss.nodescriptions = true;
|
||||
ss.modaltitle = L.bind(hm.loadModalTitle, ss, _('DNS policy'), _('Add a DNS policy'));
|
||||
ss.sectiontitle = L.bind(hm.loadDefaultLabel, ss);
|
||||
ss.renderSectionAdd = L.bind(hm.renderSectionAdd, ss, prefmt, false);
|
||||
ss.handleAdd = L.bind(hm.handleAdd, ss, prefmt);
|
||||
ss.hm_modaltitle = [ _('DNS policy'), _('Add a DNS policy') ];
|
||||
ss.hm_prefmt = { 'prefix': '', 'suffix': '_domain' };
|
||||
ss.hm_lowcase_only = false;
|
||||
|
||||
so = ss.option(form.Value, 'label', _('Label'));
|
||||
so.load = L.bind(hm.loadDefaultLabel, so);
|
||||
|
|
|
@ -25,17 +25,15 @@ return view.extend({
|
|||
s.tab('node', _('Proxy Node'));
|
||||
|
||||
/* Proxy Node */
|
||||
o = s.taboption('node', form.SectionValue, '_node', form.GridSection, 'node', null);
|
||||
o = s.taboption('node', form.SectionValue, '_node', hm.GridSection, 'node', null);
|
||||
ss = o.subsection;
|
||||
var prefmt = { 'prefix': 'node_', 'suffix': '' };
|
||||
ss.addremove = true;
|
||||
ss.rowcolors = true;
|
||||
ss.sortable = true;
|
||||
ss.nodescriptions = true;
|
||||
ss.modaltitle = L.bind(hm.loadModalTitle, ss, _('Node'), _('Add a Node'));
|
||||
ss.sectiontitle = L.bind(hm.loadDefaultLabel, ss);
|
||||
ss.renderSectionAdd = L.bind(hm.renderSectionAdd, ss, prefmt, true);
|
||||
ss.handleAdd = L.bind(hm.handleAdd, ss, prefmt);
|
||||
ss.hm_modaltitle = [ _('Node'), _('Add a Node') ];
|
||||
ss.hm_prefmt = { 'prefix': 'node_', 'suffix': '' };
|
||||
ss.hm_lowcase_only = true;
|
||||
|
||||
ss.tab('field_general', _('General fields'));
|
||||
ss.tab('field_tls', _('TLS fields'));
|
||||
|
@ -807,18 +805,18 @@ return view.extend({
|
|||
s.tab('provider', _('Provider'));
|
||||
|
||||
/* Provider */
|
||||
o = s.taboption('provider', form.SectionValue, '_provider', form.GridSection, 'provider', null);
|
||||
o = s.taboption('provider', form.SectionValue, '_provider', hm.GridSection, 'provider', null);
|
||||
ss = o.subsection;
|
||||
var prefmt = { 'prefix': 'sub_', 'suffix': '' };
|
||||
ss.addremove = true;
|
||||
ss.rowcolors = true;
|
||||
ss.sortable = true;
|
||||
ss.nodescriptions = true;
|
||||
ss.modaltitle = L.bind(hm.loadModalTitle, ss, _('Provider'), _('Add a provider'));
|
||||
ss.sectiontitle = L.bind(hm.loadDefaultLabel, ss);
|
||||
ss.hm_modaltitle = [ _('Provider'), _('Add a provider') ];
|
||||
ss.hm_prefmt = { 'prefix': 'sub_', 'suffix': '' };
|
||||
ss.hm_lowcase_only = false;
|
||||
/* Remove idle files start */
|
||||
ss.renderSectionAdd = function(/* ... */) {
|
||||
let el = hm.renderSectionAdd.apply(this, [prefmt, false].concat(Array.prototype.slice.call(arguments)));
|
||||
let el = hm.GridSection.prototype.renderSectionAdd.apply(this, arguments);
|
||||
|
||||
el.appendChild(E('button', {
|
||||
'class': 'cbi-button cbi-button-add',
|
||||
|
@ -828,7 +826,6 @@ return view.extend({
|
|||
|
||||
return el;
|
||||
}
|
||||
ss.handleAdd = L.bind(hm.handleAdd, ss, prefmt);
|
||||
/* Remove idle files end */
|
||||
|
||||
ss.tab('field_general', _('General fields'));
|
||||
|
@ -1075,17 +1072,15 @@ return view.extend({
|
|||
s.tab('dialer_proxy', _('Proxy chain'));
|
||||
|
||||
/* Proxy chain */
|
||||
o = s.taboption('dialer_proxy', form.SectionValue, '_dialer_proxy', form.GridSection, 'dialer_proxy', null);
|
||||
o = s.taboption('dialer_proxy', form.SectionValue, '_dialer_proxy', hm.GridSection, 'dialer_proxy', null);
|
||||
ss = o.subsection;
|
||||
var prefmt = { 'prefix': 'chain_', 'suffix': '' };
|
||||
ss.addremove = true;
|
||||
ss.rowcolors = true;
|
||||
ss.sortable = true;
|
||||
ss.nodescriptions = true;
|
||||
ss.modaltitle = L.bind(hm.loadModalTitle, ss, _('Proxy chain'), _('Add a proxy chain'));
|
||||
ss.sectiontitle = L.bind(hm.loadDefaultLabel, ss);
|
||||
ss.renderSectionAdd = L.bind(hm.renderSectionAdd, ss, prefmt, true);
|
||||
ss.handleAdd = L.bind(hm.handleAdd, ss, prefmt);
|
||||
ss.hm_modaltitle = [ _('Proxy chain'), _('Add a proxy chain') ];
|
||||
ss.hm_prefmt = { 'prefix': 'chain_', 'suffix': '' };
|
||||
ss.hm_lowcase_only = true;
|
||||
|
||||
so = ss.option(form.Value, 'label', _('Label'));
|
||||
so.load = L.bind(hm.loadDefaultLabel, so);
|
||||
|
|
|
@ -103,76 +103,58 @@ return view.extend({
|
|||
|
||||
/* Rule set START */
|
||||
/* Rule set settings */
|
||||
var prefmt = { 'prefix': 'rule_', 'suffix': '' };
|
||||
s = m.section(form.GridSection, 'ruleset');
|
||||
s = m.section(hm.GridSection, 'ruleset');
|
||||
s.addremove = true;
|
||||
s.rowcolors = true;
|
||||
s.sortable = true;
|
||||
s.nodescriptions = true;
|
||||
s.modaltitle = L.bind(hm.loadModalTitle, s, _('Rule set'), _('Add a rule set'));
|
||||
s.sectiontitle = L.bind(hm.loadDefaultLabel, s);
|
||||
s.hm_modaltitle = [ _('Rule set'), _('Add a rule set') ];
|
||||
s.hm_prefmt = { 'prefix': 'rule_', 'suffix': '' };
|
||||
s.hm_lowcase_only = false;
|
||||
/* Import rule-set links and Remove idle files start */
|
||||
s.handleLinkImport = function() {
|
||||
let textarea = new ui.Textarea('', {
|
||||
'placeholder': 'http(s)://github.com/ACL4SSR/ACL4SSR/raw/refs/heads/master/Clash/Providers/BanAD.yaml?fmt=yaml&behav=classical&rawq=good%3Djob#BanAD\n' +
|
||||
'file:///example.txt?fmt=text&behav=domain&fill=LmNuCg#CN%20TLD\n' +
|
||||
'inline://LSAnLmhrJwoK?behav=domain#HK%20TLD\n'
|
||||
});
|
||||
ui.showModal(_('Import rule-set links'), [
|
||||
E('p', _('Supports rule-set links of type: <code>%s</code> and format: <code>%s</code>.</br>')
|
||||
.format('file, http, inline', 'text, yaml, mrs') +
|
||||
_('Please refer to <a href="%s" target="_blank">%s</a> for link format standards.')
|
||||
.format(hm.rulesetdoc, _('Ruleset-URI-Scheme'))),
|
||||
textarea.render(),
|
||||
E('div', { class: 'right' }, [
|
||||
E('button', {
|
||||
class: 'btn',
|
||||
click: ui.hideModal
|
||||
}, [ _('Cancel') ]),
|
||||
' ',
|
||||
E('button', {
|
||||
class: 'btn cbi-button-action',
|
||||
click: ui.createHandlerFn(this, function() {
|
||||
let input_links = textarea.getValue().trim().split('\n');
|
||||
if (input_links && input_links[0]) {
|
||||
/* Remove duplicate lines */
|
||||
input_links = input_links.reduce((pre, cur) =>
|
||||
(!pre.includes(cur) && pre.push(cur), pre), []);
|
||||
const o = new hm.handleImport(this.map, this, _('Import rule-set links'),
|
||||
_('Supports rule-set links of type: <code>%s</code> and format: <code>%s</code>.</br>')
|
||||
.format('file, http, inline', 'text, yaml, mrs') +
|
||||
_('Please refer to <a href="%s" target="_blank">%s</a> for link format standards.')
|
||||
.format(hm.rulesetdoc, _('Ruleset-URI-Scheme')));
|
||||
o.placeholder = 'http(s)://github.com/ACL4SSR/ACL4SSR/raw/refs/heads/master/Clash/Providers/BanAD.yaml?fmt=yaml&behav=classical&rawq=good%3Djob#BanAD\n' +
|
||||
'file:///example.txt?fmt=text&behav=domain&fill=LmNuCg#CN%20TLD\n' +
|
||||
'inline://LSAnLmhrJwoK?behav=domain#HK%20TLD\n';
|
||||
o.handleFn = L.bind(function(textarea, save) {
|
||||
let input_links = textarea.getValue().trim().split('\n');
|
||||
let imported_count = 0;
|
||||
if (input_links && input_links[0]) {
|
||||
/* Remove duplicate lines */
|
||||
input_links = input_links.reduce((pre, cur) =>
|
||||
(!pre.includes(cur) && pre.push(cur), pre), []);
|
||||
|
||||
let imported_ruleset = 0;
|
||||
input_links.forEach((l) => {
|
||||
let config = parseRulesetLink(l);
|
||||
if (config) {
|
||||
let sid = uci.add(data[0], 'ruleset', config.id);
|
||||
config.id = null;
|
||||
Object.keys(config).forEach((k) => {
|
||||
uci.set(data[0], sid, k, config[k] || '');
|
||||
});
|
||||
imported_ruleset++;
|
||||
}
|
||||
});
|
||||
input_links.forEach((l) => {
|
||||
let config = parseRulesetLink(l);
|
||||
if (config) {
|
||||
let sid = uci.add(data[0], 'ruleset', config.id);
|
||||
config.id = null;
|
||||
Object.keys(config).forEach((k) => {
|
||||
uci.set(data[0], sid, k, config[k] || '');
|
||||
});
|
||||
imported_count++;
|
||||
}
|
||||
});
|
||||
|
||||
if (imported_ruleset === 0)
|
||||
ui.addNotification(null, E('p', _('No valid rule-set link found.')));
|
||||
else
|
||||
ui.addNotification(null, E('p', _('Successfully imported %s rule-set of total %s.').format(
|
||||
imported_ruleset, input_links.length)));
|
||||
if (imported_count === 0)
|
||||
ui.addNotification(null, E('p', _('No valid rule-set link found.')));
|
||||
else
|
||||
ui.addNotification(null, E('p', _('Successfully imported %s rule-set of total %s.').format(
|
||||
imported_count, input_links.length)));
|
||||
}
|
||||
|
||||
return uci.save()
|
||||
.then(L.bind(this.map.load, this.map))
|
||||
.then(L.bind(this.map.reset, this.map))
|
||||
.then(L.ui.hideModal)
|
||||
.catch(() => {});
|
||||
} else {
|
||||
return ui.hideModal();
|
||||
}
|
||||
})
|
||||
}, [ _('Import') ])
|
||||
])
|
||||
])
|
||||
return hm.handleImport.prototype.handleFn.call(this, textarea, imported_count);
|
||||
}, this);
|
||||
|
||||
return o.render();
|
||||
}
|
||||
s.renderSectionAdd = function(/* ... */) {
|
||||
let el = hm.renderSectionAdd.apply(this, [prefmt, false].concat(Array.prototype.slice.call(arguments)));
|
||||
let el = hm.GridSection.prototype.renderSectionAdd.apply(this, arguments);
|
||||
|
||||
el.appendChild(E('button', {
|
||||
'class': 'cbi-button cbi-button-add',
|
||||
|
@ -188,7 +170,6 @@ return view.extend({
|
|||
|
||||
return el;
|
||||
}
|
||||
s.handleAdd = L.bind(hm.handleAdd, s, prefmt);
|
||||
/* Import rule-set links and Remove idle files end */
|
||||
|
||||
o = s.option(form.Value, 'label', _('Label'));
|
||||
|
|
|
@ -54,16 +54,14 @@ return view.extend({
|
|||
o.default = o.disabled;
|
||||
|
||||
/* Server settings START */
|
||||
s = m.section(form.GridSection, 'server', null);
|
||||
var prefmt = { 'prefix': 'server_', 'suffix': '' };
|
||||
s = m.section(hm.GridSection, 'server', null);
|
||||
s.addremove = true;
|
||||
s.rowcolors = true;
|
||||
s.sortable = true;
|
||||
s.nodescriptions = true;
|
||||
s.modaltitle = L.bind(hm.loadModalTitle, s, _('Server'), _('Add a server'));
|
||||
s.sectiontitle = L.bind(hm.loadDefaultLabel, s);
|
||||
s.renderSectionAdd = L.bind(hm.renderSectionAdd, s, prefmt, false);
|
||||
s.handleAdd = L.bind(hm.handleAdd, s, prefmt);
|
||||
s.hm_modaltitle = [ _('Server'), _('Add a server') ];
|
||||
s.hm_prefmt = { 'prefix': 'server_', 'suffix': '' };
|
||||
s.hm_lowcase_only = false;
|
||||
|
||||
s.tab('field_general', _('General fields'));
|
||||
s.tab('field_tls', _('TLS fields'));
|
||||
|
|
|
@ -6,12 +6,13 @@
|
|||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=luci-app-passwall
|
||||
PKG_VERSION:=25.3.2
|
||||
PKG_VERSION:=25.3.9
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_CONFIG_DEPENDS:= \
|
||||
CONFIG_PACKAGE_$(PKG_NAME)_Iptables_Transparent_Proxy \
|
||||
CONFIG_PACKAGE_$(PKG_NAME)_Nftables_Transparent_Proxy \
|
||||
CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Geoview \
|
||||
CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Haproxy \
|
||||
CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Hysteria \
|
||||
CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy \
|
||||
|
@ -35,7 +36,7 @@ LUCI_PKGARCH:=all
|
|||
LUCI_DEPENDS:=+coreutils +coreutils-base64 +coreutils-nohup +curl \
|
||||
+chinadns-ng +dns2socks +dnsmasq-full +ip-full \
|
||||
+libuci-lua +lua +luci-compat +luci-lib-jsonc \
|
||||
+microsocks +resolveip +tcping +geoview
|
||||
+microsocks +resolveip +tcping
|
||||
|
||||
define Package/$(PKG_NAME)/config
|
||||
menu "Configuration"
|
||||
|
@ -63,6 +64,11 @@ config PACKAGE_$(PKG_NAME)_Nftables_Transparent_Proxy
|
|||
select PACKAGE_kmod-nft-nat
|
||||
default y if PACKAGE_firewall4
|
||||
|
||||
config PACKAGE_$(PKG_NAME)_INCLUDE_Geoview
|
||||
bool "Include Geoview"
|
||||
select PACKAGE_geoview
|
||||
default y if aarch64||arm||i386||x86_64
|
||||
|
||||
config PACKAGE_$(PKG_NAME)_INCLUDE_Haproxy
|
||||
bool "Include Haproxy"
|
||||
select PACKAGE_haproxy
|
||||
|
|
|
@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk
|
|||
|
||||
PKG_NAME:=mosdns
|
||||
PKG_VERSION:=5.3.3
|
||||
PKG_RELEASE:=3
|
||||
PKG_RELEASE:=4
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://codeload.github.com/IrineSistiana/mosdns/tar.gz/v$(PKG_VERSION)?
|
||||
|
|
|
@ -0,0 +1,341 @@
|
|||
From 771f9a0ecca80a12f167e56e68d2afd354857e64 Mon Sep 17 00:00:00 2001
|
||||
From: sbwml <admin@cooluc.com>
|
||||
Date: Sat, 8 Mar 2025 21:01:39 +0800
|
||||
Subject: [PATCH] mosdns: update dependencies
|
||||
|
||||
Signed-off-by: sbwml <admin@cooluc.com>
|
||||
---
|
||||
go.mod | 69 +++++++++++++------------
|
||||
go.sum | 158 ++++++++++++++++++++++++++-------------------------------
|
||||
2 files changed, 107 insertions(+), 120 deletions(-)
|
||||
|
||||
--- a/go.mod
|
||||
+++ b/go.mod
|
||||
@@ -1,30 +1,30 @@
|
||||
module github.com/IrineSistiana/mosdns/v5
|
||||
|
||||
-go 1.22
|
||||
+go 1.23.0
|
||||
|
||||
require (
|
||||
github.com/IrineSistiana/go-bytes-pool v0.0.0-20230918115058-c72bd9761c57
|
||||
- github.com/go-chi/chi/v5 v5.1.0
|
||||
- github.com/google/nftables v0.2.0
|
||||
+ github.com/go-chi/chi/v5 v5.2.1
|
||||
+ github.com/google/nftables v0.3.0
|
||||
github.com/kardianos/service v1.2.2
|
||||
- github.com/klauspost/compress v1.17.9
|
||||
- github.com/miekg/dns v1.1.62
|
||||
+ github.com/klauspost/compress v1.18.0
|
||||
+ github.com/miekg/dns v1.1.63
|
||||
github.com/mitchellh/mapstructure v1.5.0
|
||||
github.com/nadoo/ipset v0.5.0
|
||||
- github.com/prometheus/client_golang v1.19.1
|
||||
- github.com/quic-go/quic-go v0.46.0
|
||||
- github.com/spf13/cobra v1.8.1
|
||||
+ github.com/prometheus/client_golang v1.21.1
|
||||
+ github.com/quic-go/quic-go v0.50.0
|
||||
+ github.com/spf13/cobra v1.9.1
|
||||
github.com/spf13/viper v1.19.0
|
||||
- github.com/stretchr/testify v1.9.0
|
||||
- github.com/vishvananda/netlink v1.2.1-beta.2.0.20221107222636-d3c0a2caa559
|
||||
+ github.com/stretchr/testify v1.10.0
|
||||
+ github.com/vishvananda/netlink v1.3.0
|
||||
go.uber.org/zap v1.27.0
|
||||
go4.org/netipx v0.0.0-20231129151722-fdeea329fbba
|
||||
- golang.org/x/exp v0.0.0-20240808152545-0cdaa3abc0fa
|
||||
- golang.org/x/net v0.28.0
|
||||
- golang.org/x/sync v0.8.0
|
||||
- golang.org/x/sys v0.24.0
|
||||
- golang.org/x/time v0.6.0
|
||||
- google.golang.org/protobuf v1.34.2
|
||||
+ golang.org/x/exp v0.0.0-20250305212735-054e65f0b394
|
||||
+ golang.org/x/net v0.37.0
|
||||
+ golang.org/x/sync v0.12.0
|
||||
+ golang.org/x/sys v0.31.0
|
||||
+ golang.org/x/time v0.11.0
|
||||
+ google.golang.org/protobuf v1.36.5
|
||||
)
|
||||
|
||||
replace github.com/nadoo/ipset v0.5.0 => github.com/IrineSistiana/ipset v0.5.1-0.20220703061533-6e0fc3b04c0a
|
||||
@@ -33,38 +33,37 @@ require (
|
||||
github.com/beorn7/perks v1.0.1 // indirect
|
||||
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
||||
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
|
||||
- github.com/fsnotify/fsnotify v1.7.0 // indirect
|
||||
+ github.com/fsnotify/fsnotify v1.8.0 // indirect
|
||||
github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
|
||||
- github.com/google/go-cmp v0.6.0 // indirect
|
||||
- github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 // indirect
|
||||
+ github.com/google/go-cmp v0.7.0 // indirect
|
||||
+ github.com/google/pprof v0.0.0-20250302191652-9094ed2288e7 // indirect
|
||||
github.com/hashicorp/hcl v1.0.0 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
||||
- github.com/josharian/native v1.1.0 // indirect
|
||||
- github.com/magiconair/properties v1.8.7 // indirect
|
||||
- github.com/mdlayher/netlink v1.7.2 // indirect
|
||||
+ github.com/magiconair/properties v1.8.9 // indirect
|
||||
+ github.com/mdlayher/netlink v1.7.3-0.20250113171957-fbb4dce95f42 // indirect
|
||||
github.com/mdlayher/socket v0.5.1 // indirect
|
||||
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
||||
- github.com/onsi/ginkgo/v2 v2.20.0 // indirect
|
||||
- github.com/pelletier/go-toml/v2 v2.2.2 // indirect
|
||||
+ github.com/onsi/ginkgo/v2 v2.23.0 // indirect
|
||||
+ github.com/pelletier/go-toml/v2 v2.2.3 // indirect
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
|
||||
github.com/prometheus/client_model v0.6.1 // indirect
|
||||
- github.com/prometheus/common v0.55.0 // indirect
|
||||
+ github.com/prometheus/common v0.62.0 // indirect
|
||||
github.com/prometheus/procfs v0.15.1 // indirect
|
||||
- github.com/quic-go/qpack v0.4.0 // indirect
|
||||
- github.com/sagikazarmark/locafero v0.6.0 // indirect
|
||||
+ github.com/quic-go/qpack v0.5.1 // indirect
|
||||
+ github.com/sagikazarmark/locafero v0.7.0 // indirect
|
||||
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
|
||||
github.com/sourcegraph/conc v0.3.0 // indirect
|
||||
- github.com/spf13/afero v1.11.0 // indirect
|
||||
- github.com/spf13/cast v1.7.0 // indirect
|
||||
- github.com/spf13/pflag v1.0.5 // indirect
|
||||
+ github.com/spf13/afero v1.12.0 // indirect
|
||||
+ github.com/spf13/cast v1.7.1 // indirect
|
||||
+ github.com/spf13/pflag v1.0.6 // indirect
|
||||
github.com/subosito/gotenv v1.6.0 // indirect
|
||||
github.com/vishvananda/netns v0.0.4 // indirect
|
||||
- go.uber.org/mock v0.4.0 // indirect
|
||||
+ go.uber.org/mock v0.5.0 // indirect
|
||||
go.uber.org/multierr v1.11.0 // indirect
|
||||
- golang.org/x/crypto v0.26.0 // indirect
|
||||
- golang.org/x/mod v0.20.0 // indirect
|
||||
- golang.org/x/text v0.17.0 // indirect
|
||||
- golang.org/x/tools v0.24.0 // indirect
|
||||
+ golang.org/x/crypto v0.36.0 // indirect
|
||||
+ golang.org/x/mod v0.24.0 // indirect
|
||||
+ golang.org/x/text v0.23.0 // indirect
|
||||
+ golang.org/x/tools v0.31.0 // indirect
|
||||
gopkg.in/ini.v1 v1.67.0 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
--- a/go.sum
|
||||
+++ b/go.sum
|
||||
@@ -6,148 +6,136 @@ github.com/beorn7/perks v1.0.1 h1:VlbKKn
|
||||
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
|
||||
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
|
||||
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
|
||||
-github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
|
||||
-github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
+github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
|
||||
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8=
|
||||
github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0=
|
||||
-github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA=
|
||||
-github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM=
|
||||
-github.com/go-chi/chi/v5 v5.1.0 h1:acVI1TYaD+hhedDJ3r54HyA6sExp3HfXq7QWEEY/xMw=
|
||||
-github.com/go-chi/chi/v5 v5.1.0/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8=
|
||||
+github.com/fsnotify/fsnotify v1.8.0 h1:dAwr6QBTBZIkG8roQaJjGof0pp0EeF+tNV7YBP3F/8M=
|
||||
+github.com/fsnotify/fsnotify v1.8.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
|
||||
+github.com/go-chi/chi/v5 v5.2.1 h1:KOIHODQj58PmL80G2Eak4WdvUzjSJSm0vG72crDCqb8=
|
||||
+github.com/go-chi/chi/v5 v5.2.1/go.mod h1:L2yAIGWB3H+phAw1NxKwWM+7eUH/lU8pOMm5hHcoops=
|
||||
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
|
||||
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
-github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI=
|
||||
github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI=
|
||||
github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8=
|
||||
-github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
|
||||
-github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
|
||||
-github.com/google/nftables v0.2.0 h1:PbJwaBmbVLzpeldoeUKGkE2RjstrjPKMl6oLrfEJ6/8=
|
||||
-github.com/google/nftables v0.2.0/go.mod h1:Beg6V6zZ3oEn0JuiUQ4wqwuyqqzasOltcoXPtgLbFp4=
|
||||
-github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 h1:FKHo8hFI3A+7w0aUQuYXQ+6EN5stWmeY/AZqtM8xk9k=
|
||||
-github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo=
|
||||
+github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||
+github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||
+github.com/google/nftables v0.3.0 h1:bkyZ0cbpVeMHXOrtlFc8ISmfVqq5gPJukoYieyVmITg=
|
||||
+github.com/google/nftables v0.3.0/go.mod h1:BCp9FsrbF1Fn/Yu6CLUc9GGZFw/+hsxfluNXXmxBfRM=
|
||||
+github.com/google/pprof v0.0.0-20250302191652-9094ed2288e7 h1:+J3r2e8+RsmN3vKfo75g0YSY61ms37qzPglu4p0sGro=
|
||||
+github.com/google/pprof v0.0.0-20250302191652-9094ed2288e7/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144=
|
||||
github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4=
|
||||
github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ=
|
||||
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
|
||||
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
|
||||
-github.com/josharian/native v1.1.0 h1:uuaP0hAbW7Y4l0ZRQ6C9zfb7Mg1mbFKry/xzDAfmtLA=
|
||||
-github.com/josharian/native v1.1.0/go.mod h1:7X/raswPFr05uY3HiLlYeyQntB6OO7E/d2Cu7qoaN2w=
|
||||
github.com/kardianos/service v1.2.2 h1:ZvePhAHfvo0A7Mftk/tEzqEZ7Q4lgnR8sGz4xu1YX60=
|
||||
github.com/kardianos/service v1.2.2/go.mod h1:CIMRFEJVL+0DS1a3Nx06NaMn4Dz63Ng6O7dl0qH0zVM=
|
||||
-github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA=
|
||||
-github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw=
|
||||
+github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo=
|
||||
+github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||
-github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY=
|
||||
-github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0=
|
||||
-github.com/mdlayher/netlink v1.7.2 h1:/UtM3ofJap7Vl4QWCPDGXY8d3GIY2UGSDbK+QWmY8/g=
|
||||
-github.com/mdlayher/netlink v1.7.2/go.mod h1:xraEF7uJbxLhc5fpHL4cPe221LI2bdttWlU+ZGLfQSw=
|
||||
+github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
|
||||
+github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=
|
||||
+github.com/magiconair/properties v1.8.9 h1:nWcCbLq1N2v/cpNsy5WvQ37Fb+YElfq20WJ/a8RkpQM=
|
||||
+github.com/magiconair/properties v1.8.9/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0=
|
||||
+github.com/mdlayher/netlink v1.7.3-0.20250113171957-fbb4dce95f42 h1:A1Cq6Ysb0GM0tpKMbdCXCIfBclan4oHk1Jb+Hrejirg=
|
||||
+github.com/mdlayher/netlink v1.7.3-0.20250113171957-fbb4dce95f42/go.mod h1:BB4YCPDOzfy7FniQ/lxuYQ3dgmM2cZumHbK8RpTjN2o=
|
||||
github.com/mdlayher/socket v0.5.1 h1:VZaqt6RkGkt2OE9l3GcC6nZkqD3xKeQLyfleW/uBcos=
|
||||
github.com/mdlayher/socket v0.5.1/go.mod h1:TjPLHI1UgwEv5J1B5q0zTZq12A/6H7nKmtTanQE37IQ=
|
||||
-github.com/miekg/dns v1.1.62 h1:cN8OuEF1/x5Rq6Np+h1epln8OiyPWV+lROx9LxcGgIQ=
|
||||
-github.com/miekg/dns v1.1.62/go.mod h1:mvDlcItzm+br7MToIKqkglaGhlFMHJ9DTNNWONWXbNQ=
|
||||
+github.com/miekg/dns v1.1.63 h1:8M5aAw6OMZfFXTT7K5V0Eu5YiiL8l7nUAkyN6C9YwaY=
|
||||
+github.com/miekg/dns v1.1.63/go.mod h1:6NGHfjhpmr5lt3XPLuyfDJi5AXbNIPM9PY6H6sF1Nfs=
|
||||
github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY=
|
||||
github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
|
||||
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
|
||||
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
|
||||
-github.com/onsi/ginkgo/v2 v2.20.0 h1:PE84V2mHqoT1sglvHc8ZdQtPcwmvvt29WLEEO3xmdZw=
|
||||
-github.com/onsi/ginkgo/v2 v2.20.0/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI=
|
||||
-github.com/onsi/gomega v1.34.1 h1:EUMJIKUjM8sKjYbtxQI9A4z2o+rruxnzNvpknOXie6k=
|
||||
-github.com/onsi/gomega v1.34.1/go.mod h1:kU1QgUvBDLXBJq618Xvm2LUX6rSAfRaFRTcdOeDLwwY=
|
||||
-github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM=
|
||||
-github.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs=
|
||||
-github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
+github.com/onsi/ginkgo/v2 v2.23.0 h1:FA1xjp8ieYDzlgS5ABTpdUDB7wtngggONc8a7ku2NqQ=
|
||||
+github.com/onsi/ginkgo/v2 v2.23.0/go.mod h1:zXTP6xIp3U8aVuXN8ENK9IXRaTjFnpVB9mGmaSRvxnM=
|
||||
+github.com/onsi/gomega v1.36.2 h1:koNYke6TVk6ZmnyHrCXba/T/MoLBXFjeC1PtvYgw0A8=
|
||||
+github.com/onsi/gomega v1.36.2/go.mod h1:DdwyADRjrc825LhMEkD76cHR5+pUnjhUN8GlHlRPHzY=
|
||||
+github.com/pelletier/go-toml/v2 v2.2.3 h1:YmeHyLY8mFWbdkNWwpr+qIL2bEqT0o95WSdkNHvL12M=
|
||||
+github.com/pelletier/go-toml/v2 v2.2.3/go.mod h1:MfCQTFTvCcUyyvvwm1+G6H/jORL20Xlb6rzQu9GuUkc=
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
-github.com/prometheus/client_golang v1.19.1 h1:wZWJDwK+NameRJuPGDhlnFgx8e8HN3XHQeLaYJFJBOE=
|
||||
-github.com/prometheus/client_golang v1.19.1/go.mod h1:mP78NwGzrVks5S2H6ab8+ZZGJLZUq1hoULYBAYBw1Ho=
|
||||
+github.com/prometheus/client_golang v1.21.1 h1:DOvXXTqVzvkIewV/CDPFdejpMCGeMcbGCQ8YOmu+Ibk=
|
||||
+github.com/prometheus/client_golang v1.21.1/go.mod h1:U9NM32ykUErtVBxdvD3zfi+EuFkkaBvMb09mIfe0Zgg=
|
||||
github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E=
|
||||
github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY=
|
||||
-github.com/prometheus/common v0.55.0 h1:KEi6DK7lXW/m7Ig5i47x0vRzuBsHuvJdi5ee6Y3G1dc=
|
||||
-github.com/prometheus/common v0.55.0/go.mod h1:2SECS4xJG1kd8XF9IcM1gMX6510RAEL65zxzNImwdc8=
|
||||
+github.com/prometheus/common v0.62.0 h1:xasJaQlnWAeyHdUBeGjXmutelfJHWMRr+Fg4QszZ2Io=
|
||||
+github.com/prometheus/common v0.62.0/go.mod h1:vyBcEuLSvWos9B1+CyL7JZ2up+uFzXhkqml0W5zIY1I=
|
||||
github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc=
|
||||
github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk=
|
||||
-github.com/quic-go/qpack v0.4.0 h1:Cr9BXA1sQS2SmDUWjSofMPNKmvF6IiIfDRmgU0w1ZCo=
|
||||
-github.com/quic-go/qpack v0.4.0/go.mod h1:UZVnYIfi5GRk+zI9UMaCPsmZ2xKJP7XBUvVyT1Knj9A=
|
||||
-github.com/quic-go/quic-go v0.46.0 h1:uuwLClEEyk1DNvchH8uCByQVjo3yKL9opKulExNDs7Y=
|
||||
-github.com/quic-go/quic-go v0.46.0/go.mod h1:1dLehS7TIR64+vxGR70GDcatWTOtMX2PUtnKsjbTurI=
|
||||
+github.com/quic-go/qpack v0.5.1 h1:giqksBPnT/HDtZ6VhtFKgoLOWmlyo9Ei6u9PqzIMbhI=
|
||||
+github.com/quic-go/qpack v0.5.1/go.mod h1:+PC4XFrEskIVkcLzpEkbLqq1uCoxPhQuvK5rH1ZgaEg=
|
||||
+github.com/quic-go/quic-go v0.50.0 h1:3H/ld1pa3CYhkcc20TPIyG1bNsdhn9qZBGN3b9/UyUo=
|
||||
+github.com/quic-go/quic-go v0.50.0/go.mod h1:Vim6OmUvlYdwBhXP9ZVrtGmCMWa3wEqhq3NgYrI8b4E=
|
||||
github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ=
|
||||
github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog=
|
||||
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
-github.com/sagikazarmark/locafero v0.6.0 h1:ON7AQg37yzcRPU69mt7gwhFEBwxI6P9T4Qu3N51bwOk=
|
||||
-github.com/sagikazarmark/locafero v0.6.0/go.mod h1:77OmuIc6VTraTXKXIs/uvUxKGUXjE1GbemJYHqdNjX0=
|
||||
+github.com/sagikazarmark/locafero v0.7.0 h1:5MqpDsTGNDhY8sGp0Aowyf0qKsPrhewaLSsFaodPcyo=
|
||||
+github.com/sagikazarmark/locafero v0.7.0/go.mod h1:2za3Cg5rMaTMoG/2Ulr9AwtFaIppKXTRYnozin4aB5k=
|
||||
github.com/sagikazarmark/slog-shim v0.1.0 h1:diDBnUNK9N/354PgrxMywXnAwEr1QZcOr6gto+ugjYE=
|
||||
github.com/sagikazarmark/slog-shim v0.1.0/go.mod h1:SrcSrq8aKtyuqEI1uvTDTK1arOWRIczQRv+GVI1AkeQ=
|
||||
github.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9ySo=
|
||||
github.com/sourcegraph/conc v0.3.0/go.mod h1:Sdozi7LEKbFPqYX2/J+iBAM6HpqSLTASQIKqDmF7Mt0=
|
||||
-github.com/spf13/afero v1.11.0 h1:WJQKhtpdm3v2IzqG8VMqrr6Rf3UYpEF239Jy9wNepM8=
|
||||
-github.com/spf13/afero v1.11.0/go.mod h1:GH9Y3pIexgf1MTIWtNGyogA5MwRIDXGUr+hbWNoBjkY=
|
||||
-github.com/spf13/cast v1.7.0 h1:ntdiHjuueXFgm5nzDRdOS4yfT43P5Fnud6DH50rz/7w=
|
||||
-github.com/spf13/cast v1.7.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo=
|
||||
-github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM=
|
||||
-github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y=
|
||||
-github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
|
||||
-github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
+github.com/spf13/afero v1.12.0 h1:UcOPyRBYczmFn6yvphxkn9ZEOY65cpwGKb5mL36mrqs=
|
||||
+github.com/spf13/afero v1.12.0/go.mod h1:ZTlWwG4/ahT8W7T0WQ5uYmjI9duaLQGy3Q2OAl4sk/4=
|
||||
+github.com/spf13/cast v1.7.1 h1:cuNEagBQEHWN1FnbGEjCXL2szYEXqfJPbP2HNUaca9Y=
|
||||
+github.com/spf13/cast v1.7.1/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo=
|
||||
+github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo=
|
||||
+github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0=
|
||||
+github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o=
|
||||
+github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/spf13/viper v1.19.0 h1:RWq5SEjt8o25SROyN3z2OrDB9l7RPd3lwTWU8EcEdcI=
|
||||
github.com/spf13/viper v1.19.0/go.mod h1:GQUN9bilAbhU/jgc1bKs99f/suXKeUMct8Adx5+Ntkg=
|
||||
-github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
-github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
|
||||
-github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
|
||||
-github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
|
||||
-github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
-github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
|
||||
-github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
|
||||
-github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
|
||||
-github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
+github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
+github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8=
|
||||
github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU=
|
||||
-github.com/vishvananda/netlink v1.2.1-beta.2.0.20221107222636-d3c0a2caa559 h1:NwQroOyW+fpfiUroBzAMqFc6NRwBmvJevoVtEK6gsFE=
|
||||
-github.com/vishvananda/netlink v1.2.1-beta.2.0.20221107222636-d3c0a2caa559/go.mod h1:cAAsePK2e15YDAMJNyOpGYEWNe4sIghTY7gpz4cX/Ik=
|
||||
-github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0=
|
||||
+github.com/vishvananda/netlink v1.3.0 h1:X7l42GfcV4S6E4vHTsw48qbrV+9PVojNfIhZcwQdrZk=
|
||||
+github.com/vishvananda/netlink v1.3.0/go.mod h1:i6NetklAujEcC6fK0JPjT8qSwWyO0HLn4UKG+hGqeJs=
|
||||
github.com/vishvananda/netns v0.0.4 h1:Oeaw1EM2JMxD51g9uhtC0D7erkIjgmj8+JZc26m1YX8=
|
||||
github.com/vishvananda/netns v0.0.4/go.mod h1:SpkAiCQRtJ6TvvxPnOSyH3BMl6unz3xZlaprSwhNNJM=
|
||||
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
|
||||
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
|
||||
-go.uber.org/mock v0.4.0 h1:VcM4ZOtdbR4f6VXfiOpwpVJDL6lCReaZ6mw31wqh7KU=
|
||||
-go.uber.org/mock v0.4.0/go.mod h1:a6FSlNadKUHUa9IP5Vyt1zh4fC7uAwxMutEAscFbkZc=
|
||||
+go.uber.org/mock v0.5.0 h1:KAMbZvZPyBPWgD14IrIQ38QCyjwpvVVV6K/bHl1IwQU=
|
||||
+go.uber.org/mock v0.5.0/go.mod h1:ge71pBPLYDk7QIi1LupWxdAykm7KIEFchiOqd6z7qMM=
|
||||
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
|
||||
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
|
||||
go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8=
|
||||
go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E=
|
||||
go4.org/netipx v0.0.0-20231129151722-fdeea329fbba h1:0b9z3AuHCjxk0x/opv64kcgZLBseWJUpBw5I82+2U4M=
|
||||
go4.org/netipx v0.0.0-20231129151722-fdeea329fbba/go.mod h1:PLyyIXexvUFg3Owu6p/WfdlivPbZJsZdgWZlrGope/Y=
|
||||
-golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw=
|
||||
-golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54=
|
||||
-golang.org/x/exp v0.0.0-20240808152545-0cdaa3abc0fa h1:ELnwvuAXPNtPk1TJRuGkI9fDTwym6AYBu0qzT8AcHdI=
|
||||
-golang.org/x/exp v0.0.0-20240808152545-0cdaa3abc0fa/go.mod h1:akd2r19cwCdwSwWeIdzYQGa/EZZyqcOdwWiwj5L5eKQ=
|
||||
-golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0=
|
||||
-golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
||||
-golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
|
||||
-golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
|
||||
-golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
|
||||
-golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
||||
-golang.org/x/sys v0.0.0-20200217220822-9197077df867/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
+golang.org/x/crypto v0.36.0 h1:AnAEvhDddvBdpY+uR+MyHmuZzzNqXSe/GvuDeob5L34=
|
||||
+golang.org/x/crypto v0.36.0/go.mod h1:Y4J0ReaxCR1IMaabaSMugxJES1EpwhBHhv2bDHklZvc=
|
||||
+golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 h1:nDVHiLt8aIbd/VzvPWN6kSOPE7+F/fNFDSXLVYkE/Iw=
|
||||
+golang.org/x/exp v0.0.0-20250305212735-054e65f0b394/go.mod h1:sIifuuw/Yco/y6yb6+bDNfyeQ/MdPUy/hKEMYQV17cM=
|
||||
+golang.org/x/mod v0.24.0 h1:ZfthKaKaT4NrhGVZHO1/WDTwGES4De8KtWO0SIbNJMU=
|
||||
+golang.org/x/mod v0.24.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww=
|
||||
+golang.org/x/net v0.37.0 h1:1zLorHbz+LYj7MQlSf1+2tPIIgibq2eL5xkrGk6f+2c=
|
||||
+golang.org/x/net v0.37.0/go.mod h1:ivrbrMbzFq5J41QOQh0siUuly180yBYtLp+CKbEaFx8=
|
||||
+golang.org/x/sync v0.12.0 h1:MHc5BpPuC30uJk597Ri8TV3CNZcTLu6B6z4lJy+g6Jw=
|
||||
+golang.org/x/sync v0.12.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
|
||||
golang.org/x/sys v0.0.0-20201015000850-e3ed0017c211/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
-golang.org/x/sys v0.0.0-20220804214406-8e32c043e418/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
-golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg=
|
||||
-golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
||||
-golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc=
|
||||
-golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
|
||||
-golang.org/x/time v0.6.0 h1:eTDhh4ZXt5Qf0augr54TN6suAUudPcawVZeIAPU7D4U=
|
||||
-golang.org/x/time v0.6.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
|
||||
-golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24=
|
||||
-golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ=
|
||||
-google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=
|
||||
-google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw=
|
||||
+golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
+golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
+golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
|
||||
+golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
+golang.org/x/text v0.23.0 h1:D71I7dUrlY+VX0gQShAThNGHFxZ13dGLBHQLVl1mJlY=
|
||||
+golang.org/x/text v0.23.0/go.mod h1:/BLNzu4aZCJ1+kcD0DNRotWKage4q2rGVAg4o22unh4=
|
||||
+golang.org/x/time v0.11.0 h1:/bpjEDfN9tkoN/ryeYHnv5hcMlc8ncjMcM4XBk5NWV0=
|
||||
+golang.org/x/time v0.11.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg=
|
||||
+golang.org/x/tools v0.31.0 h1:0EedkvKDbh+qistFTd0Bcwe/YLh4vHwWEkiI0toFIBU=
|
||||
+golang.org/x/tools v0.31.0/go.mod h1:naFTU+Cev749tSJRXJlna0T3WxKvb1kWEx15xA4SdmQ=
|
||||
+google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM=
|
||||
+google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
||||
gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA=
|
||||
gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
|
||||
-gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
|
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
|
|||
PKG_NAME:=v2dat
|
||||
PKG_SOURCE_DATE:=2022-12-15
|
||||
PKG_SOURCE_VERSION:=47b8ee51fb528e11e1a83453b7e767a18d20d1f7
|
||||
PKG_RELEASE:=1
|
||||
PKG_RELEASE:=2
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_DATE).tar.gz
|
||||
PKG_SOURCE_URL:=https://codeload.github.com/urlesistiana/v2dat/tar.gz/$(PKG_SOURCE_VERSION)?
|
||||
|
|
|
@ -7,8 +7,6 @@ Subject: [PATCH] format logtime
|
|||
mlog/logger.go | 15 +++++++++++++--
|
||||
1 file changed, 13 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/mlog/logger.go b/mlog/logger.go
|
||||
index c8b08a9..b44c88d 100644
|
||||
--- a/mlog/logger.go
|
||||
+++ b/mlog/logger.go
|
||||
@@ -1,17 +1,28 @@
|
||||
|
@ -42,6 +40,3 @@ index c8b08a9..b44c88d 100644
|
|||
func L() *zap.Logger {
|
||||
return logger
|
||||
}
|
||||
--
|
||||
2.34.8
|
||||
|
||||
|
|
|
@ -0,0 +1,96 @@
|
|||
From d5d61b6027b2fe4c75887d33d8a5f98a3ec0795f Mon Sep 17 00:00:00 2001
|
||||
From: sbwml <admin@cooluc.com>
|
||||
Date: Sat, 8 Mar 2025 20:26:40 +0800
|
||||
Subject: [PATCH] v2dat: update dependencies
|
||||
|
||||
Signed-off-by: sbwml <admin@cooluc.com>
|
||||
---
|
||||
go.mod | 14 ++++++--------
|
||||
go.sum | 41 +++++++++++++----------------------------
|
||||
2 files changed, 19 insertions(+), 36 deletions(-)
|
||||
|
||||
--- a/go.mod
|
||||
+++ b/go.mod
|
||||
@@ -1,18 +1,16 @@
|
||||
module github.com/urlesistiana/v2dat
|
||||
|
||||
-go 1.19
|
||||
+go 1.21
|
||||
|
||||
require (
|
||||
- github.com/spf13/cobra v1.6.1
|
||||
- go.uber.org/zap v1.24.0
|
||||
- google.golang.org/protobuf v1.28.1
|
||||
+ github.com/spf13/cobra v1.9.1
|
||||
+ go.uber.org/zap v1.27.0
|
||||
+ google.golang.org/protobuf v1.36.5
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/google/go-cmp v0.5.9 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
||||
- github.com/spf13/pflag v1.0.5 // indirect
|
||||
- github.com/stretchr/testify v1.8.1 // indirect
|
||||
- go.uber.org/atomic v1.10.0 // indirect
|
||||
- go.uber.org/multierr v1.9.0 // indirect
|
||||
+ github.com/spf13/pflag v1.0.6 // indirect
|
||||
+ go.uber.org/multierr v1.11.0 // indirect
|
||||
)
|
||||
--- a/go.sum
|
||||
+++ b/go.sum
|
||||
@@ -1,42 +1,27 @@
|
||||
-github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8=
|
||||
-github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
|
||||
-github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
+github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
-github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
|
||||
-github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
|
||||
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
|
||||
-github.com/inconshreveable/mousetrap v1.0.1/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
|
||||
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
|
||||
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
|
||||
-github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
-github.com/spf13/cobra v1.6.1 h1:o94oiPyS4KD1mPy2fmcYYHHfCxLqYjJOhGsCHFZtEzA=
|
||||
-github.com/spf13/cobra v1.6.1/go.mod h1:IOw/AERYS7UzyrGinqmz6HLUo219MORXGxhbaJUqzrY=
|
||||
-github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
|
||||
-github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
-github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
-github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
|
||||
-github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
|
||||
-github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
-github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
|
||||
+github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo=
|
||||
+github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0=
|
||||
+github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o=
|
||||
+github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk=
|
||||
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
|
||||
-go.uber.org/atomic v1.10.0 h1:9qC72Qh0+3MqyJbAn8YU5xVq1frD8bn3JtD2oXtafVQ=
|
||||
-go.uber.org/atomic v1.10.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0=
|
||||
-go.uber.org/goleak v1.1.11 h1:wy28qYRKZgnJTxGxvye5/wgWr1EKjmUDGYox5mGlRlI=
|
||||
-go.uber.org/multierr v1.9.0 h1:7fIwc/ZtS0q++VgcfqFDxSBZVv/Xo49/SYnDFupUwlI=
|
||||
-go.uber.org/multierr v1.9.0/go.mod h1:X2jQV1h+kxSjClGpnseKVIxpmcjrj7MNnI0bnlfKTVQ=
|
||||
-go.uber.org/zap v1.24.0 h1:FiJd5l1UOLj0wCgbSE0rwwXHzEdAZS6hiiSnxJN/D60=
|
||||
-go.uber.org/zap v1.24.0/go.mod h1:2kMP+WWQ8aoFoedH3T2sq6iJ2yDWpHbP0f6MQbS9Gkg=
|
||||
-golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
-google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
|
||||
-google.golang.org/protobuf v1.28.1 h1:d0NfwRgPtno5B1Wa6L2DAG+KivqkdutMf1UhdNx175w=
|
||||
-google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
|
||||
+go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
|
||||
+go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
|
||||
+go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
|
||||
+go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
|
||||
+go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8=
|
||||
+go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E=
|
||||
+google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM=
|
||||
+google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
-gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
Loading…
Reference in New Issue