wangzhibo
2023-10-31 86070cd00485c47a2c5c3ffa4a9bae6648dd05c6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
import { createHotContext as __vite__createHotContext } from "/@vite/client";import.meta.hot = __vite__createHotContext("/src/components/ProxiesSettingsModal.tsx");import { template as _$template } from "/node_modules/.vite/deps/solid-js_web.js?v=5eac7255";
import { memo as _$memo } from "/node_modules/.vite/deps/solid-js_web.js?v=5eac7255";
import { insert as _$insert } from "/node_modules/.vite/deps/solid-js_web.js?v=5eac7255";
import { effect as _$effect } from "/node_modules/.vite/deps/solid-js_web.js?v=5eac7255";
import { createComponent as _$createComponent } from "/node_modules/.vite/deps/solid-js_web.js?v=5eac7255";
import { $$component as _$$component } from "/@solid-refresh";
import { $$refresh as _$$refresh } from "/@solid-refresh";
import { $$registry as _$$registry } from "/@solid-refresh";
const _REGISTRY = _$$registry();
const _tmpl$ = /*#__PURE__*/_$template(`<div class="flex flex-col gap-4"><div><div class="flex w-full justify-center"><input class=toggle type=checkbox></div></div><div class="flex flex-col"><input class="input input-bordered w-full"></div><div><input type=number class="input input-bordered w-full"></div><div><select class="select select-bordered w-full"></select></div><div><div class="flex w-full justify-center"><input class=toggle type=checkbox></div></div><div><select class="select select-bordered w-full">`),
  _tmpl$2 = /*#__PURE__*/_$template(`<option class="flex items-center gap-2">`),
  _tmpl$3 = /*#__PURE__*/_$template(`<option>`);
import { IconGlobe } from "/node_modules/.vite/deps/@tabler_icons-solidjs.js?v=2a3f5507";
import { For } from "/node_modules/.vite/deps/solid-js.js?v=5eac7255";
import { ConfigTitle, Modal } from "/src/components/index.ts";
import { PROXIES_ORDERING_TYPE, PROXIES_PREVIEW_TYPE } from "/src/constants/index.ts";
import { useI18n } from "/src/i18n/index.tsx";
import { autoCloseConns, hideUnAvailableProxies, latencyTestTimeoutDuration, proxiesOrderingType, proxiesPreviewType, setAutoCloseConns, setHideUnAvailableProxies, setLatencyTestTimeoutDuration, setProxiesOrderingType, setProxiesPreviewType, setUrlForLatencyTest, urlForLatencyTest } from "/src/signals/index.ts";
export const ProxiesSettingsModal = _$$component(_REGISTRY, "ProxiesSettingsModal", props => {
  const [t] = useI18n();
  return _$createComponent(Modal, {
    ref: el => props.ref?.(el),
    get icon() {
      return _$createComponent(IconGlobe, {
        size: 24
      });
    },
    get title() {
      return t('proxiesSettings');
    },
    get children() {
      const _el$ = _tmpl$(),
        _el$2 = _el$.firstChild,
        _el$3 = _el$2.firstChild,
        _el$4 = _el$3.firstChild,
        _el$5 = _el$2.nextSibling,
        _el$6 = _el$5.firstChild,
        _el$7 = _el$5.nextSibling,
        _el$8 = _el$7.firstChild,
        _el$9 = _el$7.nextSibling,
        _el$10 = _el$9.firstChild,
        _el$11 = _el$9.nextSibling,
        _el$12 = _el$11.firstChild,
        _el$13 = _el$12.firstChild,
        _el$14 = _el$11.nextSibling,
        _el$15 = _el$14.firstChild;
      _$insert(_el$2, _$createComponent(ConfigTitle, {
        withDivider: true,
        get children() {
          return t('autoCloseConns');
        }
      }), _el$3);
      _el$4.addEventListener("change", e => setAutoCloseConns(e.target.checked));
      _$insert(_el$5, _$createComponent(ConfigTitle, {
        withDivider: true,
        get children() {
          return t('urlForLatencyTest');
        }
      }), _el$6);
      _el$6.addEventListener("change", e => setUrlForLatencyTest(e.target.value));
      _$insert(_el$7, _$createComponent(ConfigTitle, {
        withDivider: true,
        get children() {
          return [_$memo(() => t('latencyTestTimeoutDuration')), " (", _$memo(() => t('ms')), ")"];
        }
      }), _el$8);
      _el$8.addEventListener("change", e => setLatencyTestTimeoutDuration(Number(e.target.value)));
      _$insert(_el$9, _$createComponent(ConfigTitle, {
        withDivider: true,
        get children() {
          return t('proxiesSorting');
        }
      }), _el$10);
      _el$10.addEventListener("change", e => setProxiesOrderingType(e.target.value));
      _$insert(_el$10, _$createComponent(For, {
        get each() {
          return Object.values(PROXIES_ORDERING_TYPE);
        },
        children: value => (() => {
          const _el$16 = _tmpl$2();
          _el$16.value = value;
          _$insert(_el$16, () => t(value));
          return _el$16;
        })()
      }));
      _$insert(_el$11, _$createComponent(ConfigTitle, {
        withDivider: true,
        get children() {
          return t('hideUnAvailableProxies');
        }
      }), _el$12);
      _el$13.addEventListener("change", e => setHideUnAvailableProxies(e.target.checked));
      _$insert(_el$14, _$createComponent(ConfigTitle, {
        withDivider: true,
        get children() {
          return t('proxiesPreviewType');
        }
      }), _el$15);
      _el$15.addEventListener("change", e => setProxiesPreviewType(e.target.value));
      _$insert(_el$15, _$createComponent(For, {
        get each() {
          return Object.values(PROXIES_PREVIEW_TYPE);
        },
        children: value => (() => {
          const _el$17 = _tmpl$3();
          _el$17.value = value;
          _$insert(_el$17, () => t(value));
          return _el$17;
        })()
      }));
      _$effect(() => _el$4.checked = autoCloseConns());
      _$effect(() => _el$6.value = urlForLatencyTest());
      _$effect(() => _el$8.value = latencyTestTimeoutDuration());
      _$effect(() => _el$10.value = proxiesOrderingType());
      _$effect(() => _el$13.checked = hideUnAvailableProxies());
      _$effect(() => _el$15.value = proxiesPreviewType());
      return _el$;
    }
  });
}, {
  location: "src\\components\\ProxiesSettingsModal.tsx:23:5"
});
if (import.meta.hot) {
  _$$refresh("vite", import.meta.hot, _REGISTRY);
  import.meta.hot.accept();
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJJY29uR2xvYmUiLCJGb3IiLCJDb25maWdUaXRsZSIsIk1vZGFsIiwiUFJPWElFU19PUkRFUklOR19UWVBFIiwiUFJPWElFU19QUkVWSUVXX1RZUEUiLCJ1c2VJMThuIiwiYXV0b0Nsb3NlQ29ubnMiLCJoaWRlVW5BdmFpbGFibGVQcm94aWVzIiwibGF0ZW5jeVRlc3RUaW1lb3V0RHVyYXRpb24iLCJwcm94aWVzT3JkZXJpbmdUeXBlIiwicHJveGllc1ByZXZpZXdUeXBlIiwic2V0QXV0b0Nsb3NlQ29ubnMiLCJzZXRIaWRlVW5BdmFpbGFibGVQcm94aWVzIiwic2V0TGF0ZW5jeVRlc3RUaW1lb3V0RHVyYXRpb24iLCJzZXRQcm94aWVzT3JkZXJpbmdUeXBlIiwic2V0UHJveGllc1ByZXZpZXdUeXBlIiwic2V0VXJsRm9yTGF0ZW5jeVRlc3QiLCJ1cmxGb3JMYXRlbmN5VGVzdCIsIlByb3hpZXNTZXR0aW5nc01vZGFsIiwiXyQkY29tcG9uZW50IiwiX1JFR0lTVFJZIiwicHJvcHMiLCJ0IiwiXyRjcmVhdGVDb21wb25lbnQiLCJyZWYiLCJlbCIsImljb24iLCJzaXplIiwidGl0bGUiLCJjaGlsZHJlbiIsIl9lbCQiLCJfdG1wbCQiLCJfZWwkMiIsImZpcnN0Q2hpbGQiLCJfZWwkMyIsIl9lbCQ0IiwiX2VsJDUiLCJuZXh0U2libGluZyIsIl9lbCQ2IiwiX2VsJDciLCJfZWwkOCIsIl9lbCQ5IiwiX2VsJDEwIiwiX2VsJDExIiwiX2VsJDEyIiwiX2VsJDEzIiwiX2VsJDE0IiwiX2VsJDE1IiwiXyRpbnNlcnQiLCJ3aXRoRGl2aWRlciIsImFkZEV2ZW50TGlzdGVuZXIiLCJlIiwidGFyZ2V0IiwiY2hlY2tlZCIsInZhbHVlIiwiXyRtZW1vIiwiTnVtYmVyIiwiZWFjaCIsIk9iamVjdCIsInZhbHVlcyIsIl9lbCQxNiIsIl90bXBsJDIiLCJfZWwkMTciLCJfdG1wbCQzIiwiXyRlZmZlY3QiLCJsb2NhdGlvbiIsImltcG9ydCIsIm1ldGEiLCJob3QiLCJfJCRyZWZyZXNoIiwiYWNjZXB0Il0sInNvdXJjZXMiOlsiUHJveGllc1NldHRpbmdzTW9kYWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEljb25HbG9iZSB9IGZyb20gJ0B0YWJsZXIvaWNvbnMtc29saWRqcydcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBGb3IgfSBmcm9tICdzb2xpZC1qcydcclxuaW1wb3J0IHsgQ29uZmlnVGl0bGUsIE1vZGFsIH0gZnJvbSAnfi9jb21wb25lbnRzJ1xyXG5pbXBvcnQgeyBQUk9YSUVTX09SREVSSU5HX1RZUEUsIFBST1hJRVNfUFJFVklFV19UWVBFIH0gZnJvbSAnfi9jb25zdGFudHMnXHJcbmltcG9ydCB7IHVzZUkxOG4gfSBmcm9tICd+L2kxOG4nXHJcbmltcG9ydCB7XHJcbiAgYXV0b0Nsb3NlQ29ubnMsXHJcbiAgaGlkZVVuQXZhaWxhYmxlUHJveGllcyxcclxuICBsYXRlbmN5VGVzdFRpbWVvdXREdXJhdGlvbixcclxuICBwcm94aWVzT3JkZXJpbmdUeXBlLFxyXG4gIHByb3hpZXNQcmV2aWV3VHlwZSxcclxuICBzZXRBdXRvQ2xvc2VDb25ucyxcclxuICBzZXRIaWRlVW5BdmFpbGFibGVQcm94aWVzLFxyXG4gIHNldExhdGVuY3lUZXN0VGltZW91dER1cmF0aW9uLFxyXG4gIHNldFByb3hpZXNPcmRlcmluZ1R5cGUsXHJcbiAgc2V0UHJveGllc1ByZXZpZXdUeXBlLFxyXG4gIHNldFVybEZvckxhdGVuY3lUZXN0LFxyXG4gIHVybEZvckxhdGVuY3lUZXN0LFxyXG59IGZyb20gJ34vc2lnbmFscydcclxuXHJcbmV4cG9ydCBjb25zdCBQcm94aWVzU2V0dGluZ3NNb2RhbDogQ29tcG9uZW50PHtcclxuICByZWY/OiAoZWw6IEhUTUxEaWFsb2dFbGVtZW50KSA9PiB2b2lkXHJcbn0+ID0gKHByb3BzKSA9PiB7XHJcbiAgY29uc3QgW3RdID0gdXNlSTE4bigpXHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8TW9kYWxcclxuICAgICAgcmVmPXsoZWwpID0+IHByb3BzLnJlZj8uKGVsKX1cclxuICAgICAgaWNvbj17PEljb25HbG9iZSBzaXplPXsyNH0gLz59XHJcbiAgICAgIHRpdGxlPXt0KCdwcm94aWVzU2V0dGluZ3MnKX1cclxuICAgID5cclxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTRcIj5cclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgPENvbmZpZ1RpdGxlIHdpdGhEaXZpZGVyPnt0KCdhdXRvQ2xvc2VDb25ucycpfTwvQ29uZmlnVGl0bGU+XHJcblxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggdy1mdWxsIGp1c3RpZnktY2VudGVyXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwidG9nZ2xlXCJcclxuICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgIGNoZWNrZWQ9e2F1dG9DbG9zZUNvbm5zKCl9XHJcbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhlKSA9PiBzZXRBdXRvQ2xvc2VDb25ucyhlLnRhcmdldC5jaGVja2VkKX1cclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxyXG4gICAgICAgICAgPENvbmZpZ1RpdGxlIHdpdGhEaXZpZGVyPnt0KCd1cmxGb3JMYXRlbmN5VGVzdCcpfTwvQ29uZmlnVGl0bGU+XHJcblxyXG4gICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgIGNsYXNzPVwiaW5wdXQgaW5wdXQtYm9yZGVyZWQgdy1mdWxsXCJcclxuICAgICAgICAgICAgdmFsdWU9e3VybEZvckxhdGVuY3lUZXN0KCl9XHJcbiAgICAgICAgICAgIG9uQ2hhbmdlPXsoZSkgPT4gc2V0VXJsRm9yTGF0ZW5jeVRlc3QoZS50YXJnZXQudmFsdWUpfVxyXG4gICAgICAgICAgLz5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxDb25maWdUaXRsZSB3aXRoRGl2aWRlcj5cclxuICAgICAgICAgICAge3QoJ2xhdGVuY3lUZXN0VGltZW91dER1cmF0aW9uJyl9ICh7dCgnbXMnKX0pXHJcbiAgICAgICAgICA8L0NvbmZpZ1RpdGxlPlxyXG5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJpbnB1dCBpbnB1dC1ib3JkZXJlZCB3LWZ1bGxcIlxyXG4gICAgICAgICAgICB2YWx1ZT17bGF0ZW5jeVRlc3RUaW1lb3V0RHVyYXRpb24oKX1cclxuICAgICAgICAgICAgb25DaGFuZ2U9eyhlKSA9PlxyXG4gICAgICAgICAgICAgIHNldExhdGVuY3lUZXN0VGltZW91dER1cmF0aW9uKE51bWJlcihlLnRhcmdldC52YWx1ZSkpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8Q29uZmlnVGl0bGUgd2l0aERpdmlkZXI+e3QoJ3Byb3hpZXNTb3J0aW5nJyl9PC9Db25maWdUaXRsZT5cclxuXHJcbiAgICAgICAgICA8c2VsZWN0XHJcbiAgICAgICAgICAgIGNsYXNzPVwic2VsZWN0IHNlbGVjdC1ib3JkZXJlZCB3LWZ1bGxcIlxyXG4gICAgICAgICAgICB2YWx1ZT17cHJveGllc09yZGVyaW5nVHlwZSgpfVxyXG4gICAgICAgICAgICBvbkNoYW5nZT17KGUpID0+XHJcbiAgICAgICAgICAgICAgc2V0UHJveGllc09yZGVyaW5nVHlwZShlLnRhcmdldC52YWx1ZSBhcyBQUk9YSUVTX09SREVSSU5HX1RZUEUpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPEZvciBlYWNoPXtPYmplY3QudmFsdWVzKFBST1hJRVNfT1JERVJJTkdfVFlQRSl9PlxyXG4gICAgICAgICAgICAgIHsodmFsdWUpID0+IChcclxuICAgICAgICAgICAgICAgIDxvcHRpb24gY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMlwiIHZhbHVlPXt2YWx1ZX0+XHJcbiAgICAgICAgICAgICAgICAgIHt0KHZhbHVlKX1cclxuICAgICAgICAgICAgICAgIDwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgIDwvRm9yPlxyXG4gICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8Q29uZmlnVGl0bGUgd2l0aERpdmlkZXI+e3QoJ2hpZGVVbkF2YWlsYWJsZVByb3hpZXMnKX08L0NvbmZpZ1RpdGxlPlxyXG5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IHctZnVsbCBqdXN0aWZ5LWNlbnRlclwiPlxyXG4gICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICBjbGFzcz1cInRvZ2dsZVwiXHJcbiAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICBjaGVja2VkPXtoaWRlVW5BdmFpbGFibGVQcm94aWVzKCl9XHJcbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhlKSA9PiBzZXRIaWRlVW5BdmFpbGFibGVQcm94aWVzKGUudGFyZ2V0LmNoZWNrZWQpfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8Q29uZmlnVGl0bGUgd2l0aERpdmlkZXI+e3QoJ3Byb3hpZXNQcmV2aWV3VHlwZScpfTwvQ29uZmlnVGl0bGU+XHJcblxyXG4gICAgICAgICAgPHNlbGVjdFxyXG4gICAgICAgICAgICBjbGFzcz1cInNlbGVjdCBzZWxlY3QtYm9yZGVyZWQgdy1mdWxsXCJcclxuICAgICAgICAgICAgdmFsdWU9e3Byb3hpZXNQcmV2aWV3VHlwZSgpfVxyXG4gICAgICAgICAgICBvbkNoYW5nZT17KGUpID0+XHJcbiAgICAgICAgICAgICAgc2V0UHJveGllc1ByZXZpZXdUeXBlKGUudGFyZ2V0LnZhbHVlIGFzIFBST1hJRVNfUFJFVklFV19UWVBFKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxGb3IgZWFjaD17T2JqZWN0LnZhbHVlcyhQUk9YSUVTX1BSRVZJRVdfVFlQRSl9PlxyXG4gICAgICAgICAgICAgIHsodmFsdWUpID0+IDxvcHRpb24gdmFsdWU9e3ZhbHVlfT57dCh2YWx1ZSl9PC9vcHRpb24+fVxyXG4gICAgICAgICAgICA8L0Zvcj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvTW9kYWw+XHJcbiAgKVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsU0FBU0EsU0FBUyxRQUFRLHVCQUF1QjtBQUNqRCxTQUFvQkMsR0FBRyxRQUFRLFVBQVU7QUFDekMsU0FBU0MsV0FBVyxFQUFFQyxLQUFLLFFBQVEsY0FBYztBQUNqRCxTQUFTQyxxQkFBcUIsRUFBRUMsb0JBQW9CLFFBQVEsYUFBYTtBQUN6RSxTQUFTQyxPQUFPLFFBQVEsUUFBUTtBQUNoQyxTQUNFQyxjQUFjLEVBQ2RDLHNCQUFzQixFQUN0QkMsMEJBQTBCLEVBQzFCQyxtQkFBbUIsRUFDbkJDLGtCQUFrQixFQUNsQkMsaUJBQWlCLEVBQ2pCQyx5QkFBeUIsRUFDekJDLDZCQUE2QixFQUM3QkMsc0JBQXNCLEVBQ3RCQyxxQkFBcUIsRUFDckJDLG9CQUFvQixFQUNwQkMsaUJBQWlCLFFBQ1osV0FBVztBQUVsQixPQUFPLE1BQU1DLG9CQUVYLEdBQUFDLFlBQUEsQ0FBQUMsU0FBQSwwQkFBSUMsS0FBSyxJQUFLO0VBQ2QsTUFBTSxDQUFDQyxDQUFDLENBQUMsR0FBR2pCLE9BQU8sQ0FBQyxDQUFDO0VBRXJCLE9BQUFrQixp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