@topvisor/ui 1.5.6-topSchedule.1 → 1.5.6-topSelectorReactive.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/.chunks/api-DZQlrC2R.amd.js +2 -0
  2. package/.chunks/api-DZQlrC2R.amd.js.map +1 -0
  3. package/.chunks/{api-D5wIZnrK.esm.js → api-DZQlrC2R.esm.js} +21 -18
  4. package/.chunks/api-DZQlrC2R.esm.js.map +1 -0
  5. package/.chunks/{app-0qVCkgOO.amd.js → app-DinkodXi.amd.js} +2 -2
  6. package/.chunks/{app-0qVCkgOO.amd.js.map → app-DinkodXi.amd.js.map} +1 -1
  7. package/.chunks/{app-0qVCkgOO.esm.js → app-DinkodXi.esm.js} +11 -11
  8. package/.chunks/app-DinkodXi.esm.js.map +1 -0
  9. package/.chunks/{datepicker-CYAhR3K9.amd.js → datepicker-bozIEbDA.amd.js} +2 -2
  10. package/.chunks/{datepicker-CYAhR3K9.amd.js.map → datepicker-bozIEbDA.amd.js.map} +1 -1
  11. package/.chunks/{datepicker-CYAhR3K9.esm.js → datepicker-bozIEbDA.esm.js} +2 -2
  12. package/.chunks/{datepicker-CYAhR3K9.esm.js.map → datepicker-bozIEbDA.esm.js.map} +1 -1
  13. package/.chunks/{dialog-CdgC31H2.amd.js → dialog-BCDVMWG1.amd.js} +2 -2
  14. package/.chunks/{dialog-CdgC31H2.amd.js.map → dialog-BCDVMWG1.amd.js.map} +1 -1
  15. package/.chunks/{dialog-CdgC31H2.esm.js → dialog-BCDVMWG1.esm.js} +3 -3
  16. package/.chunks/{dialog-CdgC31H2.esm.js.map → dialog-BCDVMWG1.esm.js.map} +1 -1
  17. package/.chunks/{dialog_regionSelectorRegions-BFpuUEJM.amd.js → dialog_regionSelectorRegions-0M1fMu1a.amd.js} +2 -2
  18. package/.chunks/dialog_regionSelectorRegions-0M1fMu1a.amd.js.map +1 -0
  19. package/.chunks/{dialog_regionSelectorRegions-BFpuUEJM.esm.js → dialog_regionSelectorRegions-0M1fMu1a.esm.js} +6 -6
  20. package/.chunks/dialog_regionSelectorRegions-0M1fMu1a.esm.js.map +1 -0
  21. package/.chunks/forms-CY5MOh7a.amd.js +2 -0
  22. package/.chunks/forms-CY5MOh7a.amd.js.map +1 -0
  23. package/.chunks/{forms-BiKUURH4.esm.js → forms-CY5MOh7a.esm.js} +16 -14
  24. package/.chunks/forms-CY5MOh7a.esm.js.map +1 -0
  25. package/.chunks/formsExt-C9r4Gz9y.amd.js +2 -0
  26. package/.chunks/formsExt-C9r4Gz9y.amd.js.map +1 -0
  27. package/.chunks/{formsExt-Bk_fn1Pg.esm.js → formsExt-C9r4Gz9y.esm.js} +163 -159
  28. package/.chunks/formsExt-C9r4Gz9y.esm.js.map +1 -0
  29. package/.chunks/{mocker-C3O-c0Np.amd.js → mocker-Bl1SzAJY.amd.js} +2 -2
  30. package/.chunks/mocker-Bl1SzAJY.amd.js.map +1 -0
  31. package/.chunks/{mocker-C3O-c0Np.esm.js → mocker-Bl1SzAJY.esm.js} +6 -2
  32. package/.chunks/mocker-Bl1SzAJY.esm.js.map +1 -0
  33. package/.chunks/notice-bro62vCA.amd.js +4 -0
  34. package/.chunks/notice-bro62vCA.amd.js.map +1 -0
  35. package/.chunks/{notice-LFdPfo-5.esm.js → notice-bro62vCA.esm.js} +3 -3
  36. package/.chunks/notice-bro62vCA.esm.js.map +1 -0
  37. package/.chunks/popup-3cwJ8Hev.amd.js +2 -0
  38. package/.chunks/popup-3cwJ8Hev.amd.js.map +1 -0
  39. package/.chunks/{popup-KKfSSrM6.esm.js → popup-3cwJ8Hev.esm.js} +5 -3
  40. package/.chunks/popup-3cwJ8Hev.esm.js.map +1 -0
  41. package/.chunks/popup-CzhBQhVH.amd.js +2 -0
  42. package/.chunks/popup-CzhBQhVH.amd.js.map +1 -0
  43. package/.chunks/{popup-DB5g_8kB.esm.js → popup-CzhBQhVH.esm.js} +5 -5
  44. package/.chunks/popup-CzhBQhVH.esm.js.map +1 -0
  45. package/.chunks/punycode.es6-CMafsPEb.amd.js +2 -0
  46. package/.chunks/punycode.es6-CMafsPEb.amd.js.map +1 -0
  47. package/.chunks/punycode.es6-CMafsPEb.esm.js +105 -0
  48. package/.chunks/{punycode.es6-BZRFIj88.esm.js.map → punycode.es6-CMafsPEb.esm.js.map} +1 -1
  49. package/.chunks/store-DjQAOnrn.esm.js.map +1 -1
  50. package/.chunks/{utils-3uWRvFcX.amd.js → utils-Be-ScFyj.amd.js} +2 -2
  51. package/.chunks/{utils-3uWRvFcX.amd.js.map → utils-Be-ScFyj.amd.js.map} +1 -1
  52. package/.chunks/{utils-3uWRvFcX.esm.js → utils-Be-ScFyj.esm.js} +3 -3
  53. package/.chunks/{utils-3uWRvFcX.esm.js.map → utils-Be-ScFyj.esm.js.map} +1 -1
  54. package/.chunks/{utils-BiOp5DHs.amd.js → utils-ds_g-L_r.amd.js} +2 -2
  55. package/.chunks/utils-ds_g-L_r.amd.js.map +1 -0
  56. package/.chunks/{utils-BiOp5DHs.esm.js → utils-ds_g-L_r.esm.js} +5 -5
  57. package/.chunks/{utils-BiOp5DHs.esm.js.map → utils-ds_g-L_r.esm.js.map} +1 -1
  58. package/.chunks/{worker-BufdAd-a.amd.js → worker-Bv_yPPMv.amd.js} +2 -2
  59. package/.chunks/{worker-BufdAd-a.amd.js.map → worker-Bv_yPPMv.amd.js.map} +1 -1
  60. package/.chunks/{worker-BufdAd-a.esm.js → worker-Bv_yPPMv.esm.js} +3 -3
  61. package/.chunks/{worker-BufdAd-a.esm.js.map → worker-Bv_yPPMv.esm.js.map} +1 -1
  62. package/api/additional.js.map +1 -1
  63. package/api/index.amd.js +1 -1
  64. package/api/index.amd.js.map +1 -1
  65. package/api/index.js +1 -1
  66. package/assets/formsExt.css +1 -1
  67. package/assets/project.css +1 -1
  68. package/autoload-css-manifest.amd.json +4 -4
  69. package/autoload-css-manifest.json +4 -4
  70. package/charts/charts.amd.js +1 -1
  71. package/charts/charts.amd.js.map +1 -1
  72. package/charts/charts.js +1 -1
  73. package/charts/charts.js.map +1 -1
  74. package/core/app.amd.js +1 -1
  75. package/core/app.amd.js.map +1 -1
  76. package/core/app.js +3 -3
  77. package/dialog/dialog.amd.js +1 -1
  78. package/dialog/dialog.amd.js.map +1 -1
  79. package/dialog/dialog.js +2 -2
  80. package/forms/forms.amd.js +1 -1
  81. package/forms/forms.amd.js.map +1 -1
  82. package/forms/forms.js +1 -1
  83. package/formsExt/formsExt.amd.js +1 -1
  84. package/formsExt/formsExt.amd.js.map +1 -1
  85. package/formsExt/formsExt.js +1 -1
  86. package/layout/layout.amd.js +1 -1
  87. package/layout/layout.amd.js.map +1 -1
  88. package/layout/layout.js +1 -1
  89. package/package.json +2 -2
  90. package/popup/popup.amd.js +1 -1
  91. package/popup/popup.amd.js.map +1 -1
  92. package/popup/popup.js +1 -1
  93. package/popup/worker.amd.js +1 -1
  94. package/popup/worker.amd.js.map +1 -1
  95. package/popup/worker.js +1 -1
  96. package/project/project.amd.js +1 -1
  97. package/project/project.amd.js.map +1 -1
  98. package/project/project.js +461 -460
  99. package/project/project.js.map +1 -1
  100. package/schedule/schedule.amd.js +1 -1
  101. package/schedule/schedule.amd.js.map +1 -1
  102. package/schedule/schedule.js +8 -6
  103. package/schedule/schedule.js.map +1 -1
  104. package/src/api/api/mocker/index.d.ts +1 -6
  105. package/src/api/api/types/api.d.ts +1 -1
  106. package/src/components/formsExt/selector2/composables/useAPI.d.ts +406 -0
  107. package/src/components/formsExt/selector2/composables/useMenu.d.ts +412 -0
  108. package/src/components/formsExt/selector2/types.d.ts +17 -11
  109. package/src/components/popup/popup/types.d.ts +6 -1
  110. package/src/components/project/project.d.ts +1 -1
  111. package/src/components/project/projectSelector/cache.d.ts +14 -12
  112. package/src/components/project/projectSelector/submenu/types.d.ts +7 -14
  113. package/src/components/project/projectSelector/types.d.ts +22 -9
  114. package/src/components/project/projectSelector/utils.d.ts +8 -4
  115. package/src/core/core/core.d.ts +2 -3
  116. package/src/core/core/options.d.ts +26 -19
  117. package/src/core/core/state.d.ts +3 -4
  118. package/src/core/plugins/core.d.ts +1 -1
  119. package/tabsView/tabsView.amd.js +1 -1
  120. package/tabsView/tabsView.amd.js.map +1 -1
  121. package/tabsView/tabsView.js +2 -2
  122. package/tabsView/tabsView.js.map +1 -1
  123. package/utils/check.js.map +1 -1
  124. package/utils/clipboard.amd.js +1 -1
  125. package/utils/clipboard.amd.js.map +1 -1
  126. package/utils/clipboard.js +1 -1
  127. package/utils/clipboard.js.map +1 -1
  128. package/utils/date.amd.js +1 -1
  129. package/utils/date.amd.js.map +1 -1
  130. package/utils/date.js +1 -1
  131. package/utils/device.amd.js +1 -1
  132. package/utils/device.amd.js.map +1 -1
  133. package/utils/device.js +1 -1
  134. package/utils/dom.amd.js.map +1 -1
  135. package/utils/dom.js.map +1 -1
  136. package/utils/image.amd.js +1 -1
  137. package/utils/image.amd.js.map +1 -1
  138. package/utils/image.js +1 -1
  139. package/utils/lodash.amd.js +1 -1
  140. package/utils/lodash.amd.js.map +1 -1
  141. package/utils/lodash.js +1 -1
  142. package/utils/price.amd.js +1 -1
  143. package/utils/price.amd.js.map +1 -1
  144. package/utils/price.js +1 -1
  145. package/utils/price.js.map +1 -1
  146. package/utils/route.js.map +1 -1
  147. package/utils/scroll.js.map +1 -1
  148. package/utils/searchers.amd.js +1 -1
  149. package/utils/searchers.amd.js.map +1 -1
  150. package/utils/searchers.js +1 -1
  151. package/utils/searchers.js.map +1 -1
  152. package/utils/string.amd.js +1 -1
  153. package/utils/string.amd.js.map +1 -1
  154. package/utils/string.js +2 -2
  155. package/utils/string.js.map +1 -1
  156. package/utils/url.amd.js +1 -1
  157. package/utils/url.amd.js.map +1 -1
  158. package/utils/url.js +1 -1
  159. package/utils/url.js.map +1 -1
  160. package/.chunks/api-D5wIZnrK.amd.js +0 -2
  161. package/.chunks/api-D5wIZnrK.amd.js.map +0 -1
  162. package/.chunks/api-D5wIZnrK.esm.js.map +0 -1
  163. package/.chunks/app-0qVCkgOO.esm.js.map +0 -1
  164. package/.chunks/dialog_regionSelectorRegions-BFpuUEJM.amd.js.map +0 -1
  165. package/.chunks/dialog_regionSelectorRegions-BFpuUEJM.esm.js.map +0 -1
  166. package/.chunks/forms-BiKUURH4.amd.js +0 -2
  167. package/.chunks/forms-BiKUURH4.amd.js.map +0 -1
  168. package/.chunks/forms-BiKUURH4.esm.js.map +0 -1
  169. package/.chunks/formsExt-Bk_fn1Pg.amd.js +0 -2
  170. package/.chunks/formsExt-Bk_fn1Pg.amd.js.map +0 -1
  171. package/.chunks/formsExt-Bk_fn1Pg.esm.js.map +0 -1
  172. package/.chunks/mocker-C3O-c0Np.amd.js.map +0 -1
  173. package/.chunks/mocker-C3O-c0Np.esm.js.map +0 -1
  174. package/.chunks/notice-LFdPfo-5.amd.js +0 -4
  175. package/.chunks/notice-LFdPfo-5.amd.js.map +0 -1
  176. package/.chunks/notice-LFdPfo-5.esm.js.map +0 -1
  177. package/.chunks/popup-DB5g_8kB.amd.js +0 -2
  178. package/.chunks/popup-DB5g_8kB.amd.js.map +0 -1
  179. package/.chunks/popup-DB5g_8kB.esm.js.map +0 -1
  180. package/.chunks/popup-KKfSSrM6.amd.js +0 -2
  181. package/.chunks/popup-KKfSSrM6.amd.js.map +0 -1
  182. package/.chunks/popup-KKfSSrM6.esm.js.map +0 -1
  183. package/.chunks/punycode.es6-BZRFIj88.amd.js +0 -2
  184. package/.chunks/punycode.es6-BZRFIj88.amd.js.map +0 -1
  185. package/.chunks/punycode.es6-BZRFIj88.esm.js +0 -105
  186. package/.chunks/utils-BiOp5DHs.amd.js.map +0 -1
@@ -5,25 +5,24 @@
5
5
  _autoloadCSSCore.insertCSSLinkToPage(fileNames, true);
6
6
  /* end import css */
7
7
 
8
- import "../.chunks/api-D5wIZnrK.esm.js";
9
- import { E as e, O as t, P as n, h as r, n as i } from "../.chunks/forms-BiKUURH4.esm.js";
8
+ import "../.chunks/api-DZQlrC2R.esm.js";
9
+ import { E as e, O as t, P as n, h as r, n as i } from "../.chunks/forms-CY5MOh7a.esm.js";
10
10
  import { n as a, t as o } from "../.chunks/field-DEusYVqS.esm.js";
11
11
  import { storage as s } from "../utils/dom.js";
12
- import { t as c } from "../.chunks/worker-BufdAd-a.esm.js";
13
- import "../.chunks/app-0qVCkgOO.esm.js";
14
- import { t as l } from "../.chunks/utils-3uWRvFcX.esm.js";
12
+ import { t as c } from "../.chunks/worker-Bv_yPPMv.esm.js";
13
+ import "../.chunks/app-DinkodXi.esm.js";
14
+ import { t as l } from "../.chunks/utils-Be-ScFyj.esm.js";
15
15
  import { validUrl as u } from "../utils/check.js";
16
16
  import { ellipsis as d } from "../utils/string.js";
17
17
  import { getDeviceGIcon as f, getLangLabel as p, getSearcherGIcon as m } from "../utils/searchers.js";
18
18
  import { invertKeyboardLayout as h } from "../utils/keyboard.js";
19
- import { c as g, n as _, o as v, r as ee, s as y } from "../.chunks/popup-KKfSSrM6.esm.js";
20
- import { d as b, s as x, u as te } from "../.chunks/formsExt-Bk_fn1Pg.esm.js";
21
- import "../popup/worker.js";
22
- import { Fragment as S, computed as C, createBlock as w, createCommentVNode as T, createElementBlock as E, createElementVNode as D, createSlots as ne, createTextVNode as O, createVNode as k, defineComponent as A, isRef as re, mergeModels as j, mergeProps as ie, nextTick as ae, normalizeClass as M, onMounted as oe, openBlock as N, reactive as se, ref as P, renderList as F, renderSlot as ce, resolveComponent as le, resolveDirective as ue, resolveDynamicComponent as de, shallowRef as fe, toDisplayString as I, toValue as pe, unref as L, useModel as R, watch as z, withCtx as B, withDirectives as me, withKeys as he, withModifiers as V } from "vue";
19
+ import { c as g, n as _, o as v, r as ee, s as y } from "../.chunks/popup-3cwJ8Hev.esm.js";
20
+ import { d as b, f as x, s as S, u as te } from "../.chunks/formsExt-C9r4Gz9y.esm.js";
21
+ import { Fragment as C, computed as w, createBlock as T, createCommentVNode as E, createElementBlock as D, createElementVNode as O, createSlots as ne, createTextVNode as k, createVNode as A, defineComponent as j, isRef as re, mergeModels as M, mergeProps as ie, nextTick as ae, normalizeClass as N, onMounted as oe, openBlock as P, reactive as se, ref as F, renderList as I, renderSlot as ce, resolveComponent as le, resolveDirective as ue, resolveDynamicComponent as de, shallowRef as fe, toDisplayString as L, toValue as pe, unref as R, useId as me, useModel as z, watch as B, withCtx as V, withDirectives as he, withKeys as ge, withModifiers as H } from "vue";
23
22
  //#region src/components/project/competitorSelector/competitorSelector.vue?vue&type=script&setup=true&lang.ts
24
- var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, ve = /* @__PURE__ */ A({
23
+ var _e = { class: "top-competitorSelector" }, ve = { class: "top-ellipsis1" }, ye = /* @__PURE__ */ j({
25
24
  __name: "competitorSelector",
26
- props: /*@__PURE__*/ j({
25
+ props: /*@__PURE__*/ M({
27
26
  modelValue: {},
28
27
  items: {},
29
28
  showSelectAllItem: {
@@ -37,7 +36,7 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
37
36
  }),
38
37
  emits: ["update:modelValue"],
39
38
  setup(n) {
40
- let i = n, a = R(n, "modelValue"), o = C(() => {
39
+ let i = n, a = z(n, "modelValue"), o = w(() => {
41
40
  if (i.showSelectAllItem) return {
42
41
  icon: i.selectAllItemIcon,
43
42
  title: e().Common.Select_all,
@@ -45,23 +44,23 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
45
44
  content: ""
46
45
  };
47
46
  });
48
- return (e, i) => (N(), E("div", ge, [L(t).state.isMobile ? (N(), w(y, { key: 0 }, {
49
- opener: B(() => [k(r, {
47
+ return (e, i) => (P(), D("div", _e, [R(t).state.isMobile ? (P(), T(y, { key: 0 }, {
48
+ opener: V(() => [A(r, {
50
49
  class: "top-competitorSelector_opener",
51
50
  color: "theme",
52
51
  icon: "",
53
52
  icon2: ""
54
53
  }, {
55
- default: B(() => [O(I(n.items.find((e) => e.value === a.value?.[0])?.content), 1)]),
54
+ default: V(() => [k(L(n.items.find((e) => e.value === a.value?.[0])?.content), 1)]),
56
55
  _: 1
57
56
  })]),
58
- contentList: B(() => [(N(!0), E(S, null, F(n.items, (e) => (N(), w(v, {
59
- class: M({ "top-active": a.value?.includes(e.value) }),
57
+ contentList: V(() => [(P(!0), D(C, null, I(n.items, (e) => (P(), T(v, {
58
+ class: N({ "top-active": a.value?.includes(e.value) }),
60
59
  "data-top-icon": e.icon,
61
60
  title: e.title,
62
61
  onClick: () => a.value = [e.value]
63
62
  }, {
64
- default: B(() => [D("span", _e, I(e.content), 1)]),
63
+ default: V(() => [O("span", ve, L(e.content), 1)]),
65
64
  _: 2
66
65
  }, 1032, [
67
66
  "class",
@@ -70,7 +69,7 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
70
69
  "onClick"
71
70
  ]))), 256))]),
72
71
  _: 1
73
- })) : (N(), w(b, {
72
+ })) : (P(), T(x, {
74
73
  key: 1,
75
74
  modelValue: a.value,
76
75
  "onUpdate:modelValue": i[0] ||= (e) => a.value = e,
@@ -85,12 +84,12 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
85
84
  "selectAllItem"
86
85
  ]))]));
87
86
  }
88
- }), ye = (e, t) => C(() => pe(e).filter((e) => e.on >= 0 || e.id === t).map((e) => ({
87
+ }), be = (e, t) => w(() => pe(e).filter((e) => e.on >= 0 || e.id === t).map((e) => ({
89
88
  value: e.id,
90
89
  title: e.url + ` [${e.id}]`,
91
90
  icon: e.id === pe(t) ? "" : "",
92
91
  content: e.name
93
- }))), be = {
92
+ }))), xe = {
94
93
  0: "Yandex",
95
94
  1: "Google",
96
95
  4: "YouTube",
@@ -100,25 +99,25 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
100
99
  9: "GoogleStore",
101
100
  20: "Yandex.com",
102
101
  21: "Yandex.com.tr"
103
- }, xe = {
102
+ }, Se = {
104
103
  key: -2,
105
104
  name: "--",
106
105
  index: -2
107
- }, Se = {
106
+ }, Ce = {
108
107
  key: -2,
109
108
  name: "--",
110
- regions: [xe],
111
- regionByIndex: new Map([[-2, xe]])
112
- }, H = {
109
+ regions: [Se],
110
+ regionByIndex: /* @__PURE__ */ new Map([[-2, Se]])
111
+ }, U = {
113
112
  key: -2,
114
113
  name: "Autoselect",
115
114
  index: -2
116
- }, Ce = {
115
+ }, we = {
117
116
  key: -2,
118
117
  name: "Autoselect",
119
- regions: [H],
120
- regionByIndex: new Map([[-2, H]])
121
- }, we = {
118
+ regions: [U],
119
+ regionByIndex: /* @__PURE__ */ new Map([[-2, U]])
120
+ }, Te = {
122
121
  countryCode: "00",
123
122
  depth: 1,
124
123
  device: 0,
@@ -126,10 +125,10 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
126
125
  index: -1,
127
126
  lang: "ru",
128
127
  name: "Without region"
129
- }, Te = () => (H.name = e().Common.Autoselect, H), Ee = () => (Te(), Ce.name = e().Common.Autoselect, console.log(Ce), Ce), De = () => (we.name = e().Keywords.Without_region, we), Oe = (e = "", t = !1, n = []) => {
128
+ }, Ee = () => (U.name = e().Common.Autoselect, U), De = () => (Ee(), we.name = e().Common.Autoselect, console.log(we), we), Oe = () => (Te.name = e().Keywords.Without_region, Te), ke = (e = "", t = !1, n = []) => {
130
129
  let r;
131
- return r = e ? Ae(n, e) : ke(n), t && r.set(-2, Ee()), r.size || r.set(-2, Se), r;
132
- }, ke = (e, t = !0, n = [], r = "") => {
130
+ return r = e ? je(n, e) : Ae(n), t && r.set(-2, De()), r.size || r.set(-2, Ce), r;
131
+ }, Ae = (e, t = !0, n = [], r = "") => {
133
132
  let i = /* @__PURE__ */ new Map();
134
133
  return e.forEach((e) => {
135
134
  if (!e.enabled || r && typeof e.key == "number" && e.key > 1) return;
@@ -143,35 +142,35 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
143
142
  if (i.has(e)) return;
144
143
  let t = {
145
144
  key: e,
146
- name: be[e],
145
+ name: xe[e],
147
146
  regions: [],
148
147
  regionByIndex: /* @__PURE__ */ new Map()
149
148
  };
150
149
  i.set(t.key, t);
151
150
  }), i;
152
- }, Ae = (e, n) => {
153
- let r = ke(e, !1, t.state.forceSearchersKeysForKeywordsStats, n);
151
+ }, je = (e, n) => {
152
+ let r = Ae(e, !1, t.state.forceSearchersKeysForKeywordsStats, n);
154
153
  if (r.has(2)) {
155
154
  let e = r.get(2);
156
155
  e && (e.regionByIndex = /* @__PURE__ */ new Map());
157
156
  }
158
157
  return (n === "volume" || n === "cost_forecast") && t.state.showGlobalRegionForKeywordsStats && r.forEach((e) => {
159
158
  if (!e.regionByIndex) return;
160
- let t = { ...De() };
159
+ let t = { ...Oe() };
161
160
  e.regionByIndex.set(t.index, t);
162
161
  }), r;
163
- }, je = (e, t, n = []) => {
164
- let r = Oe(e, !1, n), i;
162
+ }, Me = (e, t, n = []) => {
163
+ let r = ke(e, !1, n), i;
165
164
  return r.forEach((n) => {
166
165
  if (!(t.searcher_key !== void 0 && t.searcher_key != n.key) && n.regions && (n.regions.forEach((r) => {
167
166
  if (!i && !(t.key !== void 0 && t.key != r.key) && !(t.index !== void 0 && t.index != r.index) && !(!e && (t.lang !== void 0 && t.lang != r.lang || t.device !== void 0 && t.device != r.device))) return r.searcher_key = n.key, i = r, !1;
168
167
  }), i)) return !1;
169
168
  }), i;
170
- }, Me = l(() => import("../.chunks/dialog_regionSelectorRegions-BFpuUEJM.esm.js")), Ne = (t, n) => {
169
+ }, Ne = l(() => import("../.chunks/dialog_regionSelectorRegions-0M1fMu1a.esm.js")), Pe = (t, n) => {
171
170
  let r = e();
172
171
  return {
173
- searcherKey: P(n.value.keys().next().value ?? -2),
174
- optionBySearcherKey: C(() => {
172
+ searcherKey: F(n.value.keys().next().value ?? -2),
173
+ optionBySearcherKey: w(() => {
175
174
  let e = /* @__PURE__ */ new Map();
176
175
  if (n.value.forEach((n) => {
177
176
  let r = {
@@ -195,10 +194,10 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
195
194
  return e;
196
195
  })
197
196
  };
198
- }, Pe = (t, n) => {
199
- let r = e(), i = P(-2);
197
+ }, Fe = (t, n) => {
198
+ let r = e(), i = F(-2);
200
199
  t.modelValue.length === 1 && (i.value = t.modelValue[0]), i.value === -2 && (t.forMode ? i.value = n.value?.regionByIndex.values().next().value?.key ?? -2 : i.value = n.value?.regionByIndex.keys().next().value ?? -2);
201
- let a = C(() => {
200
+ let a = w(() => {
202
201
  let e = /* @__PURE__ */ new Map();
203
202
  return n.value.regionByIndex?.forEach((i) => {
204
203
  let a = i.name;
@@ -221,7 +220,7 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
221
220
  e.set(i.index, s);
222
221
  }), e;
223
222
  });
224
- return z(a, (e, n) => {
223
+ return B(a, (e, n) => {
225
224
  if (t.onlySearcher || i.value !== void 0 && e.get(i.value)) return;
226
225
  let a = e.keys().next().value;
227
226
  if (i.value === -2 || a === -2) {
@@ -244,8 +243,8 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
244
243
  regionIndex: i,
245
244
  optionByRegionIndex: a
246
245
  };
247
- }, Fe = (e, t, n) => {
248
- let r = P([]), i = () => {
246
+ }, Ie = (e, t, n) => {
247
+ let r = F([]), i = () => {
249
248
  if (e.onlySearcher && t.value) {
250
249
  r.value = Array.from(t.value.keys());
251
250
  return;
@@ -259,19 +258,19 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
259
258
  }, a = () => {
260
259
  r.value.length ? localStorage.setItem("ui:project:regionSelector:" + e.projectId + ":regionsIndexes", JSON.stringify(r.value)) : localStorage.removeItem("ui:project:regionSelector:" + e.projectId + ":regionsIndexes");
261
260
  };
262
- return z(r, () => {
261
+ return B(r, () => {
263
262
  a();
264
263
  }), e.addCompare && i(), { regionsIndexes: r };
265
- }, Ie = (e) => {
266
- let t = C(() => Oe(e.forMode, e.autoRegion, e.searchers)), n = C(() => t.value.get(i.searcherKey.value) || Se), r = C(() => {
264
+ }, Le = (e) => {
265
+ let t = w(() => ke(e.forMode, e.autoRegion, e.searchers)), n = w(() => t.value.get(i.searcherKey.value) || Ce), r = w(() => {
267
266
  let e = /* @__PURE__ */ new Set();
268
267
  return t.value.forEach((t) => {
269
268
  t.regionByIndex.forEach((t) => {
270
269
  t.index !== -1 && t.index !== -2 && e.add(t.index);
271
270
  });
272
271
  }), e;
273
- }), i = Ne(e, t), a = Pe(e, n), o = Fe(e, t, r);
274
- z(t, () => {
272
+ }), i = Pe(e, t), a = Fe(e, n), o = Ie(e, t, r);
273
+ B(t, () => {
275
274
  if (e.onlySearcher ? o.regionsIndexes.value = Array.from(t.value.keys()) : o.regionsIndexes.value = o.regionsIndexes.value.filter((e) => r.value.has(e)), i.searcherKey.value === -1) return;
276
275
  let s = t.value.keys().next().value;
277
276
  t.value.forEach((n) => {
@@ -294,7 +293,7 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
294
293
  let t = a.regionIndex.value;
295
294
  if (e.forMode) {
296
295
  let n = a.regionIndex.value;
297
- t = je(e.forMode, {
296
+ t = Me(e.forMode, {
298
297
  searcher_key: s(),
299
298
  key: n
300
299
  }, e.searchers)?.index;
@@ -316,9 +315,9 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
316
315
  if (e !== void 0) return l()?.regionByIndex?.get(e);
317
316
  }
318
317
  };
319
- }, Le = /* @__PURE__ */ A({
318
+ }, Re = /* @__PURE__ */ j({
320
319
  __name: "regionSelector",
321
- props: /*@__PURE__*/ j({
320
+ props: /*@__PURE__*/ M({
322
321
  projectId: {},
323
322
  searchers: { default: () => [] },
324
323
  modelValue: {},
@@ -347,19 +346,19 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
347
346
  }),
348
347
  emits: ["update:modelValue", "update:modelValueSingle"],
349
348
  setup(e, { expose: t }) {
350
- let n = e, a = R(e, "modelValue"), o = R(e, "modelValueSingle"), { selectSearcher: s, selectRegion: c, compare: l, searcherByKey: u, allRegionsIndexes: d, getSearcher: f, getRegion: p } = Ie(n), m = () => {
349
+ let n = e, a = z(e, "modelValue"), o = z(e, "modelValueSingle"), { selectSearcher: s, selectRegion: c, compare: l, searcherByKey: u, allRegionsIndexes: d, getSearcher: f, getRegion: p } = Le(n), m = () => {
351
350
  let e = [];
352
351
  u.value.forEach((t) => {
353
352
  t.enabled && t.regions.forEach((t) => {
354
353
  t.enabled && e.push(t);
355
354
  });
356
- }), Me.open("regions", {
355
+ }), Ne.open("regions", {
357
356
  regions: e,
358
357
  regionsIndexes: l.regionsIndexes.value,
359
358
  "@update:regionsIndexes": (e) => l.regionsIndexes.value = e
360
359
  });
361
360
  };
362
- return z([
361
+ return B([
363
362
  c.regionIndex,
364
363
  s.searcherKey,
365
364
  l.regionsIndexes
@@ -369,9 +368,9 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
369
368
  a.value = [...l.regionsIndexes.value];
370
369
  } else n.onlySearcher ? (a.value = [s.searcherKey.value], s.searcherKey.value === -2 && !n.autoRegion && (a.value.length = 0)) : (a.value = [c.regionIndex.value], c.regionIndex.value === -2 && !n.autoRegion && (a.value.length = 0));
371
370
  !n.onlySearcher && !d.value.size && (s.searcherKey.value = -2);
372
- }), o.value && z(o, () => {
371
+ }), o.value && B(o, () => {
373
372
  o.value && (a.value = [o.value]);
374
- }, { immediate: !0 }), z(a, () => {
373
+ }, { immediate: !0 }), B(a, () => {
375
374
  if (a.value[0] && (o.value = a.value[0]), n.onlySearcher) {
376
375
  if (!a.value.length || a.value.length === 1 && !u.value.has(a.value[0]) || a.value.length === 1 && a.value[0] === -2 && !n.autoRegion) {
377
376
  let e = u.value.keys().next().value;
@@ -423,14 +422,14 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
423
422
  }, { immediate: !0 }), t({
424
423
  getSearcher: f,
425
424
  getRegion: p
426
- }), (t, n) => (N(), E("div", { class: M({
425
+ }), (t, n) => (P(), D("div", { class: N({
427
426
  "top-regionSelector": !0,
428
427
  "top-regionSelector-onlySearcher": e.onlySearcher
429
428
  }) }, [
430
- k(i, {
431
- options: L(s).optionBySearcherKey.value,
432
- modelValue: L(s).searcherKey.value,
433
- "onUpdate:modelValue": n[0] ||= (e) => L(s).searcherKey.value = e,
429
+ A(i, {
430
+ options: R(s).optionBySearcherKey.value,
431
+ modelValue: R(s).searcherKey.value,
432
+ "onUpdate:modelValue": n[0] ||= (e) => R(s).searcherKey.value = e,
434
433
  name: "searcher_key",
435
434
  addChanger: e.addChanger
436
435
  }, null, 8, [
@@ -438,12 +437,12 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
438
437
  "modelValue",
439
438
  "addChanger"
440
439
  ]),
441
- !e.onlySearcher && L(s).searcherKey.value !== L(-1) ? (N(), w(i, {
440
+ !e.onlySearcher && R(s).searcherKey.value !== R(-1) ? (P(), T(i, {
442
441
  key: 0,
443
442
  class: "top-select-region",
444
- options: L(c).optionByRegionIndex.value,
445
- modelValue: L(c).regionIndex.value,
446
- "onUpdate:modelValue": n[1] ||= (e) => L(c).regionIndex.value = e,
443
+ options: R(c).optionByRegionIndex.value,
444
+ modelValue: R(c).regionIndex.value,
445
+ "onUpdate:modelValue": n[1] ||= (e) => R(c).regionIndex.value = e,
447
446
  name: e.forMode ? "region_key" : "region_index",
448
447
  addChanger: e.addChanger,
449
448
  "data-top-icon": e.addRegionIcon ? "" : void 0
@@ -453,31 +452,31 @@ var ge = { class: "top-competitorSelector" }, _e = { class: "top-ellipsis1" }, v
453
452
  "name",
454
453
  "addChanger",
455
454
  "data-top-icon"
456
- ])) : T("", !0),
457
- e.addCompare && !e.onlySearcher && L(s).searcherKey.value === L(-1) ? (N(), w(r, {
455
+ ])) : E("", !0),
456
+ e.addCompare && !e.onlySearcher && R(s).searcherKey.value === R(-1) ? (P(), T(r, {
458
457
  key: 1,
459
458
  name: "compare",
460
459
  onClick: m,
461
- "data-count-compare-regions-indexes": L(l).regionsIndexes.value.length
460
+ "data-count-compare-regions-indexes": R(l).regionsIndexes.value.length
462
461
  }, {
463
- default: B(() => [O(I(t.$i18n.Common.Selected_regions), 1)]),
462
+ default: V(() => [k(L(t.$i18n.Common.Selected_regions), 1)]),
464
463
  _: 1
465
- }, 8, ["data-count-compare-regions-indexes"])) : T("", !0)
464
+ }, 8, ["data-count-compare-regions-indexes"])) : E("", !0)
466
465
  ], 2));
467
466
  }
468
- }), U = {
467
+ }), W = {
469
468
  id: 0,
470
469
  name: "/",
471
470
  path: "/"
472
471
  };
473
- function Re(t) {
472
+ function ze(t) {
474
473
  return t ? e()?.Common.All_folders : "/ (" + e()?.Keywords.Root_folder + ")";
475
474
  }
476
- var ze = (e, t, n = /* @__PURE__ */ new Map(), r = { id: "root" }, i = 0) => (r.childsIds = [], r.id && (r.countAllGroupsActive = r.count_groups_active), e[r.id] && e[r.id].forEach((a) => {
477
- a = { ...a }, r.childsIds.push(a.id), a.id === 0 && (a.name = Re(t));
475
+ var Be = (e, t, n = /* @__PURE__ */ new Map(), r = { id: "root" }, i = 0) => (r.childsIds = [], r.id && (r.countAllGroupsActive = r.count_groups_active), e[r.id] && e[r.id].forEach((a) => {
476
+ a = { ...a }, r.childsIds.push(a.id), a.id === 0 && (a.name = ze(t));
478
477
  let o = i > 1 ? "-".repeat(i - 1) + " " : "";
479
- o && !a.name.startsWith(o) && (a.name = o + a.name), n.set(a.id, a), ze(e, t, n, a, i + 1), r.childsIds = r.childsIds.concat(a.childsIds), r.id && a.count_groups_active && (r.countAllGroupsActive += a.count_groups_active);
480
- }), n), Be = (e, t) => e.gen(`/get/${t}/folders/`, [
478
+ o && !a.name.startsWith(o) && (a.name = o + a.name), n.set(a.id, a), Be(e, t, n, a, i + 1), r.childsIds = r.childsIds.concat(a.childsIds), r.id && a.count_groups_active && (r.countAllGroupsActive += a.count_groups_active);
479
+ }), n), Ve = (e, t) => e.gen(`/get/${t}/folders/`, [
481
480
  "id",
482
481
  "parent_id",
483
482
  "name",
@@ -488,9 +487,9 @@ var ze = (e, t, n = /* @__PURE__ */ new Map(), r = { id: "root" }, i = 0) => (r.
488
487
  });
489
488
  //#endregion
490
489
  //#region src/core/utils/composables/useWatch.ts
491
- function Ve(e, t, n) {
490
+ function He(e, t, n) {
492
491
  let r = Object.keys(e);
493
- return z(r.map((t) => e[t]), (e, n, i) => {
492
+ return B(r.map((t) => e[t]), (e, n, i) => {
494
493
  let a = {};
495
494
  e.forEach((e, t) => {
496
495
  if (!Object.is(e, n[t])) {
@@ -505,9 +504,9 @@ function Ve(e, t, n) {
505
504
  }
506
505
  //#endregion
507
506
  //#region src/components/project/groupSelector/folders/folders.vue?vue&type=script&setup=true&lang.ts
508
- var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
507
+ var Ue = ["innerHTML"], We = /* @__PURE__ */ j({
509
508
  __name: "folders",
510
- props: /*@__PURE__*/ j({
509
+ props: /*@__PURE__*/ M({
511
510
  folderId: {},
512
511
  folder: {},
513
512
  folders: {},
@@ -523,20 +522,20 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
523
522
  }, {
524
523
  folderId: { required: !0 },
525
524
  folderIdModifiers: {},
526
- folder: { default: U },
525
+ folder: { default: W },
527
526
  folderModifiers: {}
528
527
  }),
529
528
  emits: ["update:folderId", "update:folder"],
530
529
  setup(e) {
531
- let t = e, n = R(e, "folderId"), r = R(e, "folder"), i = t.client && !t.folders ? Be(t.client, t.service) : void 0, a = P(null);
532
- z(() => t.projectId, () => {
530
+ let t = e, n = z(e, "folderId"), r = z(e, "folder"), i = t.client && !t.folders ? Ve(t.client, t.service) : void 0, a = F(null);
531
+ B(() => t.projectId, () => {
533
532
  i?.changeParams({ project_id: t.projectId }), i?.setOptions({ checkFingerprint: "TopGroupSelectorFolders:" + t.projectId }), a.value?.resetCache();
534
533
  }, { immediate: !0 });
535
- let o = C(() => ze(t.folders ?? { root: [U] }, t.canSelectAll)), s = (e) => (t.canSelectAll && e[0]?.id === 0 && (e[0] = {
534
+ let o = w(() => Be(t.folders ?? { root: [W] }, t.canSelectAll)), s = (e) => (t.canSelectAll && e[0]?.id === 0 && (e[0] = {
536
535
  ...e[0],
537
- name: Re(!0)
536
+ name: ze(!0)
538
537
  }), e);
539
- return Ve({
538
+ return He({
540
539
  modelFolder: r,
541
540
  modelFolderId: n
542
541
  }, async (e) => {
@@ -546,21 +545,21 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
546
545
  return;
547
546
  }
548
547
  let i = o.value.get(t.folderId);
549
- i ||= U, r.value = i, n.value = i.id;
550
- }, { immediate: !0 }), (t, n) => (N(), w(x, {
548
+ i ||= W, r.value = i, n.value = i.id;
549
+ }, { immediate: !0 }), (t, n) => (P(), T(S, {
551
550
  class: "top-groupSelector_folder",
552
551
  modelValue: r.value,
553
552
  "onUpdate:modelValue": n[0] ||= (e) => r.value = e,
554
553
  items: e.folders ? [...o.value.values()] : void 0,
555
554
  "search-type": "inline",
556
555
  icon: e.addIcon ? "" : void 0,
557
- api: e.folders ? void 0 : L(i),
558
- apiSetSearchParams: (...e) => L(te)(...e, "name"),
556
+ api: e.folders ? void 0 : R(i),
557
+ apiSetSearchParams: (...e) => R(te)(...e, "name"),
559
558
  prepareItemsBeforeRender: s,
560
559
  addChanger: e.addChanger,
561
560
  useCache: ""
562
561
  }, {
563
- item: B(({ item: e }) => [D("div", { innerHTML: e.name.replaceAll(/</g, "< ") }, null, 8, He)]),
562
+ item: V(({ item: e }) => [O("div", { innerHTML: e.name.replaceAll(/</g, "< ") }, null, 8, Ue)]),
564
563
  _: 1
565
564
  }, 8, [
566
565
  "modelValue",
@@ -571,17 +570,17 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
571
570
  "addChanger"
572
571
  ]));
573
572
  }
574
- }), W = {
573
+ }), G = {
575
574
  id: -1,
576
575
  name: "--",
577
- folder_id: U.id,
578
- folder_path: U.path
579
- }, G = {
576
+ folder_id: W.id,
577
+ folder_path: W.path
578
+ }, K = {
580
579
  id: 0,
581
580
  name: "All groups",
582
- folder_id: U.id,
583
- folder_path: U.path
584
- }, K = () => (G.name = e()?.Common.All_groups, G), We = () => (G.name = e()?.Keywords.Choose_group, G), Ge = (e, t, n) => (e = [...e], t !== void 0 && (e = e.filter((e) => e.on == Number(t))), n && n.id && n.childsIds && (e = e.filter((e) => e.folder_id === n.id || n.childsIds.includes(e.folder_id))), e), Ke = (e, t) => e.gen(`/get/${t}/groups/`, [
581
+ folder_id: W.id,
582
+ folder_path: W.path
583
+ }, q = () => (K.name = e()?.Common.All_groups, K), Ge = () => (K.name = e()?.Keywords.Choose_group, K), Ke = (e, t, n) => (e = [...e], t !== void 0 && (e = e.filter((e) => e.on == Number(t))), n && n.id && n.childsIds && (e = e.filter((e) => e.folder_id === n.id || n.childsIds.includes(e.folder_id))), e), qe = (e, t) => e.gen(`/get/${t}/groups/`, [
585
584
  "id",
586
585
  "name",
587
586
  "folder_id",
@@ -589,12 +588,12 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
589
588
  ]).changeParams({
590
589
  folder_id_depth: !0,
591
590
  limit: 100
592
- }), qe = (e, t) => e.gen(`/add/${t}/groups/`), Je = (e, t) => e.gen(`/del/${t}/groups/`), Ye = (e, t) => e.gen(`/edit/${t}/groups/rename/`), Xe = { class: "top-groupSelector_groupItem top-ellipsis1" }, Ze = {
591
+ }), Je = (e, t) => e.gen(`/add/${t}/groups/`), Ye = (e, t) => e.gen(`/del/${t}/groups/`), Xe = (e, t) => e.gen(`/edit/${t}/groups/rename/`), Ze = { class: "top-groupSelector_groupItem top-ellipsis1" }, Qe = {
593
592
  key: 0,
594
593
  class: "top-comment"
595
- }, Qe = ["innerHTML"], $e = ["innerHTML"], et = ["innerHTML"], tt = /* @__PURE__ */ A({
594
+ }, $e = ["innerHTML"], et = ["innerHTML"], tt = ["innerHTML"], nt = /* @__PURE__ */ j({
596
595
  __name: "groups",
597
- props: /*@__PURE__*/ j({
596
+ props: /*@__PURE__*/ M({
598
597
  groupId: {},
599
598
  group: {},
600
599
  projectId: {},
@@ -618,20 +617,22 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
618
617
  default: !0
619
618
  },
620
619
  client: {},
621
- service: {}
620
+ service: { default: "keywords_2" }
622
621
  }, {
623
622
  groupId: { required: !0 },
624
623
  groupIdModifiers: {},
625
624
  group: { required: !0 },
626
625
  groupModifiers: {}
627
626
  }),
628
- emits: /*@__PURE__*/ j([
627
+ emits: /*@__PURE__*/ M([
629
628
  "addGroup",
630
629
  "editGroup",
631
630
  "delGroup"
632
631
  ], ["update:groupId", "update:group"]),
633
632
  setup(e, { expose: t, emit: n }) {
634
- let r = e, i = n, a = R(e, "groupId"), s = R(e, "group"), c = r.client && !r.groups ? Ke(r.client, r.service) : void 0, l = r.client ? qe(r.client, r.service) : void 0, u = r.client ? Je(r.client, r.service) : void 0, d = r.client ? Ye(r.client, r.service) : void 0, f = P(null), p = P(void 0), m = o("folder_id", "EQUALS", [r.folder?.id ?? 0]);
633
+ let r = e, i = n, a = z(e, "groupId"), s = z(e, "group"), c = r.client && !r.groups ? qe(r.client, r.service) : void 0, l = r.client ? Je(r.client, r.service) : void 0, u = r.client ? Ye(r.client, r.service) : void 0, d = r.client ? Xe(r.client, r.service) : void 0, f = F(null), p = w(() => {
634
+ if (r.groups !== void 0) return Ke(r.groups, r.on, r.folder);
635
+ }), m = o("folder_id", "EQUALS", [r.folder?.id ?? 0]);
635
636
  c?.changeParams({
636
637
  project_id: r.projectId,
637
638
  folder_id_depth: !0,
@@ -642,16 +643,16 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
642
643
  }, g = (e = !1) => {
643
644
  f.value?.resetCache(e);
644
645
  };
645
- Ve({
646
+ He({
646
647
  projectId: () => r.projectId,
647
648
  folderId: () => r.folder?.id,
648
649
  canSelectAll: () => r.canSelectAll
649
650
  }, (e) => {
650
- if (e.projectId && (c?.changeParams({ project_id: r.projectId }), c?.setOptions({ checkFingerprint: "TopGroupSelectorGroups:" + r.projectId })), e.folderId && (m.values = [r.folder?.id ?? 0], r.groups && (p.value = Ge(r.groups, r.on, r.folder))), g(), (e.folderId?.old !== void 0 || e.canSelectAll?.old !== void 0) && a.value !== null) {
651
+ if (e.projectId && (c?.changeParams({ project_id: r.projectId }), c?.setOptions({ checkFingerprint: "TopGroupSelectorGroups:" + r.projectId })), e.folderId && (m.values = [r.folder?.id ?? 0]), g(), (e.folderId?.old !== void 0 || e.canSelectAll?.old !== void 0) && a.value !== null) {
651
652
  let e;
652
- r.autoselect === "first" && (e = p.value?.[0], r.canSelectAll && (e = se(K()))), (r.autoselect === "placeholder" || !e) && (e = We()), h(e);
653
+ r.autoselect === "first" && (e = p.value?.[0], r.canSelectAll && (e = se(q()))), (r.autoselect === "placeholder" || !e) && (e = Ge()), h(e);
653
654
  }
654
- }, { immediate: !0 }), Ve({
655
+ }, { immediate: !0 }), He({
655
656
  modelGroup: s,
656
657
  modelGroupId: a
657
658
  }, async (e) => {
@@ -663,14 +664,14 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
663
664
  if (!(r.canAdd && a.value === null)) {
664
665
  if (r.groups) {
665
666
  let e = p.value?.find((e) => e.id === a.value);
666
- if (!e && r.canSelectAll && (e = K()), e) h(e);
667
+ if (!e && r.canSelectAll && (e = q()), e) h(e);
667
668
  else {
668
669
  let e = p.value?.[0];
669
- e && !a.value ? h(e) : h(W);
670
+ e && !a.value ? h(e) : h(G);
670
671
  }
671
672
  }
672
673
  if (r.client && !r.groups && (a.value || a.value === 0 && !r.canSelectAll)) {
673
- let e = Ke(r.client, r.service).changeParams({
674
+ let e = qe(r.client, r.service).changeParams({
674
675
  project_id: r.projectId,
675
676
  id: a.value,
676
677
  filters: [m]
@@ -678,7 +679,7 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
678
679
  e?.setOptions({ checkFingerprint: "TopGroupSelectorFindGroup:" + r.projectId });
679
680
  let t = await e.call();
680
681
  if (!t.errors?.length && !t.result) return;
681
- !t.errors && t.result[0] ? h(t.result[0]) : h(W);
682
+ !t.errors && t.result[0] ? h(t.result[0]) : h(G);
682
683
  }
683
684
  }
684
685
  }
@@ -688,7 +689,7 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
688
689
  let t = s.value, n = await l.changeParams({
689
690
  project_id: r.projectId,
690
691
  names: [e.name],
691
- to_id: r.folder?.id ?? U.id,
692
+ to_id: r.folder?.id ?? W.id,
692
693
  to_type: "in_folder_last"
693
694
  }).call();
694
695
  if (n.result) {
@@ -701,7 +702,7 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
701
702
  project_id: r.projectId,
702
703
  id: e.id,
703
704
  name: t
704
- }).call()).errors || (i("editGroup", {
705
+ }).call()).errors || (s.value.id === e.id && (s.value.name = t), i("editGroup", {
705
706
  id: e.id,
706
707
  name: t
707
708
  }), f.value?.updateCacheItemById(e.id, { name: t })));
@@ -709,9 +710,9 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
709
710
  u && ((await u.changeParams({
710
711
  project_id: r.projectId,
711
712
  id: e.id
712
- }).call()).errors || (s.value.id === e.id && h(r.canSelectAll ? K() : W), i("delGroup", e.id), f.value?.deleteCacheItemById(e.id)));
713
+ }).call()).errors || (s.value.id === e.id && h(r.canSelectAll ? q() : G), i("delGroup", e.id), f.value?.deleteCacheItemById(e.id)));
713
714
  };
714
- return t({ resetCacheGroups: g }), (t, n) => (N(), w(x, {
715
+ return t({ resetCacheGroups: g }), (t, n) => (P(), T(S, {
715
716
  ref_key: "refSelector",
716
717
  ref: f,
717
718
  class: "top-groupSelector_group",
@@ -720,51 +721,51 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
720
721
  items: p.value ?? e.groups,
721
722
  searchType: "inline",
722
723
  icon: e.addIcon ? "" : void 0,
723
- api: e.groups ? void 0 : L(c),
724
- apiSetSearchParams: (...e) => L(te)(...e, "name"),
724
+ api: e.groups ? void 0 : R(c),
725
+ apiSetSearchParams: (...e) => R(te)(...e, "name"),
725
726
  appendSearchToResult: !!e.canAdd,
726
- useAllItem: e.canSelectAll ? L(K)().name : !1,
727
+ useAllItem: e.canSelectAll ? R(q)().name : !1,
727
728
  addChanger: e.addChanger,
728
729
  useCache: "",
729
730
  onAppendItem: v
730
731
  }, ne({
731
- item: B(({ item: n }) => [D("div", Xe, [
732
- n.id === L(null) ? (N(), E("div", Ze, I(t.$i18n.Common.Add) + ": ", 1)) : T("", !0),
733
- D("span", {
732
+ item: V(({ item: n }) => [O("div", Ze, [
733
+ n.id === R(null) ? (P(), D("div", Qe, L(t.$i18n.Common.Add) + ": ", 1)) : E("", !0),
734
+ O("span", {
734
735
  class: "top-groupSelector_groupItemName top-ellipsis1",
735
736
  innerHTML: n.name
736
- }, null, 8, Qe),
737
- n.folder_path && e.showPath ? (N(), E("span", {
737
+ }, null, 8, $e),
738
+ n.folder_path && e.showPath ? (P(), D("span", {
738
739
  key: 1,
739
740
  class: "top-groupSelector_groupItemFolderPath top-ellipsis1",
740
741
  innerHTML: n.folder_path
741
- }, null, 8, $e)) : T("", !0)
742
+ }, null, 8, et)) : E("", !0)
742
743
  ])]),
743
744
  _: 2
744
745
  }, [e.canEditAndDel && e.client ? {
745
746
  name: "actions",
746
- fn: B(({ item: r }) => [r.id ? (N(), E(S, { key: 0 }, [k(_, {
747
+ fn: V(({ item: r }) => [r.id ? (P(), D(C, { key: 0 }, [A(_, {
747
748
  submitText: t.$i18n.Common.Save,
748
749
  defaultValue: r.name,
749
750
  inputProps: { addCleaner: !1 },
750
751
  onSubmit: (e) => y(r, e)
751
752
  }, {
752
- opener: B(() => [...n[1] ||= [D("div", { "data-top-icon": "" }, null, -1)]]),
753
- default: B(() => [...n[2] ||= []]),
753
+ opener: V(() => [...n[1] ||= [O("div", { "data-top-icon": "" }, null, -1)]]),
754
+ default: V(() => [...n[2] ||= []]),
754
755
  _: 1
755
756
  }, 8, [
756
757
  "submitText",
757
758
  "defaultValue",
758
759
  "onSubmit"
759
- ]), k(ee, {
760
+ ]), A(ee, {
760
761
  isWarning: "",
761
762
  submitText: t.$i18n.Common.Delete,
762
763
  onSubmit: (e) => b(r)
763
764
  }, {
764
- opener: B(() => [...n[3] ||= [D("div", { "data-top-icon": "" }, null, -1)]]),
765
- default: B(() => [D("span", { innerHTML: e.service === "keywords_2" ? t.$i18n.Keywords.Delete_group_warning : t.$i18n["Ai.Tracker"].Delete_group_warning }, null, 8, et)]),
765
+ opener: V(() => [...n[3] ||= [O("div", { "data-top-icon": "" }, null, -1)]]),
766
+ default: V(() => [O("span", { innerHTML: e.service === "keywords_2" ? t.$i18n.Keywords.Delete_group_warning : t.$i18n["Ai.Tracker"].Delete_group_warning }, null, 8, tt)]),
766
767
  _: 1
767
- }, 8, ["submitText", "onSubmit"])], 64)) : T("", !0)]),
768
+ }, 8, ["submitText", "onSubmit"])], 64)) : E("", !0)]),
768
769
  key: "0"
769
770
  } : void 0]), 1032, [
770
771
  "modelValue",
@@ -777,9 +778,9 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
777
778
  "addChanger"
778
779
  ]));
779
780
  }
780
- }), nt = { class: "top-groupSelector" }, rt = /* @__PURE__ */ A({
781
+ }), rt = { class: "top-groupSelector" }, it = /* @__PURE__ */ j({
781
782
  __name: "groupSelector",
782
- props: /*@__PURE__*/ j({
783
+ props: /*@__PURE__*/ M({
783
784
  folderId: {},
784
785
  folder: {},
785
786
  groupId: {},
@@ -824,20 +825,20 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
824
825
  folderModifiers: {},
825
826
  groupId: { required: !0 },
826
827
  groupIdModifiers: {},
827
- group: { default: W },
828
+ group: { default: G },
828
829
  groupModifiers: {}
829
830
  }),
830
- emits: /*@__PURE__*/ j(["update:groups"], [
831
+ emits: /*@__PURE__*/ M(["update:groups"], [
831
832
  "update:folderId",
832
833
  "update:folder",
833
834
  "update:groupId",
834
835
  "update:group"
835
836
  ]),
836
837
  setup(e, { expose: t, emit: n }) {
837
- let r = e, i = P(null), a = R(e, "folderId"), o = R(e, "folder"), s = R(e, "groupId"), c = R(e, "group"), l = n;
838
- o.value = ze(r.folders ?? { root: [U] }, r.canSelectAllGroups).get(a.value);
838
+ let r = e, i = F(null), a = z(e, "folderId"), o = z(e, "folder"), s = z(e, "groupId"), c = z(e, "group"), l = n;
839
+ o.value = Be(r.folders ?? { root: [W] }, r.canSelectAllGroups).get(a.value);
839
840
  let u = r.groups?.find((e) => e.id === s.value);
840
- s.value || (u = r.groups?.[0]), r.canSelectAllGroups && !u && (u = K()), (r.autoselect === "placeholder" || !u) && (u = We()), u ??= W, c.value = u;
841
+ s.value || (u = r.groups?.[0]), r.canSelectAllGroups && !u && (u = q()), (r.autoselect === "placeholder" || !u) && (u = Ge()), u ??= G, c.value = u;
841
842
  let d = (e) => {
842
843
  let t;
843
844
  r.groups && e && (t = [...r.groups, e]), l("update:groups", t);
@@ -846,17 +847,24 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
846
847
  l("update:groups");
847
848
  return;
848
849
  }
849
- l("update:groups", r.groups.map((t) => t.id === e.id ? e : t));
850
+ let t = r.groups.find((t) => t.id === e.id);
851
+ if (!t) return;
852
+ let n = {
853
+ ...t,
854
+ ...e
855
+ }, i = r.groups.map((e) => e.id === n.id ? n : e);
856
+ l("update:groups", i);
850
857
  }, p = (e) => {
851
858
  if (!r.groups) {
852
859
  l("update:groups");
853
860
  return;
854
861
  }
855
- l("update:groups", r.groups.filter((t) => t.id !== e.id));
862
+ let t = r.groups.filter((t) => t.id !== e);
863
+ l("update:groups", t);
856
864
  };
857
865
  return t({ resetCacheGroups: (e = !1) => {
858
866
  i.value?.resetCacheGroups(e);
859
- } }), (t, n) => (N(), E("div", nt, [e.showFolders ? (N(), w(Ue, {
867
+ } }), (t, n) => (P(), D("div", rt, [e.showFolders ? (P(), T(We, {
860
868
  key: 0,
861
869
  folderId: a.value,
862
870
  "onUpdate:folderId": n[0] ||= (e) => a.value = e,
@@ -879,7 +887,7 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
879
887
  "addIcon",
880
888
  "client",
881
889
  "service"
882
- ])) : T("", !0), e.showGroups ? (N(), w(tt, {
890
+ ])) : E("", !0), e.showGroups ? (P(), T(nt, {
883
891
  key: 1,
884
892
  ref_key: "componentGroupsRef",
885
893
  ref: i,
@@ -919,58 +927,65 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
919
927
  "addIcon",
920
928
  "client",
921
929
  "service"
922
- ])) : T("", !0)]));
930
+ ])) : E("", !0)]));
923
931
  }
924
- }), it = (e) => ({
932
+ }), at = (e) => ({
925
933
  id: null,
926
934
  name: e,
927
- listItemProps: { type: "title" }
928
- }), at = {
935
+ listItemProps: {
936
+ type: "title",
937
+ class: "top-projectSelector_item"
938
+ }
939
+ }), ot = {
929
940
  scheduledUpdate: !1,
930
941
  manualUpdate: !1,
931
942
  guestProjects: !1
932
- }, ot = (t, n) => {
943
+ }, st = (t, n) => {
933
944
  let r = [], i = {
934
- scheduledUpdate: it(e().Projects.Scheduled_update),
935
- manualUpdate: it(e().Projects.Manual_update),
936
- guestProjects: it(e().Projects.Guest_projects)
945
+ scheduledUpdate: at(e().Projects.Scheduled_update),
946
+ manualUpdate: at(e().Projects.Manual_update),
947
+ guestProjects: at(e().Projects.Guest_projects)
937
948
  }, a = n ? {
938
949
  scheduledUpdate: !1,
939
950
  manualUpdate: !1,
940
951
  guestProjects: !1
941
- } : at;
952
+ } : ot;
942
953
  for (let e of t) !a.scheduledUpdate && e.right?.startsWith("1") && e.on > 0 && (r.push(i.scheduledUpdate), a.scheduledUpdate = !0), !a.manualUpdate && e.right?.startsWith("1") && e.on === 0 && (r.push(i.manualUpdate), a.manualUpdate = !0), !a.guestProjects && e.right?.startsWith("0") && e.on >= 0 && (r.push(i.guestProjects), a.guestProjects = !0), r.push(e);
943
954
  return r;
944
- }, st = (e) => e.map((e) => ({
955
+ }, ct = (e) => ({
945
956
  ...e,
946
- listItemProps: { attrs: { title: e.name } }
947
- })), ct = (e, t, n) => !e || e.length === 0 ? [] : (t && Object.keys(at).forEach((e) => at[e] = !1), ot(st(e), n)), lt = (e) => {
957
+ externalLink: mt(e.url ?? ""),
958
+ listItemProps: {
959
+ class: "top-projectSelector_item",
960
+ attrs: { title: e.name }
961
+ }
962
+ }), lt = (e, t, n) => !e || e.length === 0 ? [] : (t && Object.keys(ot).forEach((e) => ot[e] = !1), st(e.map(ct), n)), ut = (e) => {
948
963
  e = e.replace(/#.*/, "");
949
964
  let t = location.hash;
950
- return t = t.replace(/historyView=[^&]*/, ""), t = t.replace(/modelsKeys=[^&]*/, ""), t = t.replace(/competitorsIds=[^&]*/, ""), t = t.replace(/searchersKeys=[^&]*/, ""), t = t.replace(/regionIndex=[^&]*/, ""), t = t.replace(/regionsIndexes=[^&]*/, ""), t = t.replace(/folderId=[^&]*/, ""), t = t.replace(/groupId=[^&]*/, ""), t = t.replace(/tags=[^&]*/, ""), window.mo?.getHash && !window.mo.getHash("dataSort").toString().includes("0000-00-00") && (t = t.replace(/dataSort=[^&]*/, "")), t = t.replace(/%22historyView%22:[^,]*,/, ""), t = t.replace(/%22modelsKeys%22:\[[^\]]*\],/, ""), t = t.replace(/%22competitorsIds%22:\[[^\]]*],/, ""), t = t.replace(/%22searchersKeys%22:\[[^\]]*],/, ""), t = t.replace(/%22regionIndex%22:[^,]*,/, ""), t = t.replace(/%22regionsIndexes%22:\[[^\]]*],/, ""), t = t.replace(/%22folderId%22:[^,]*,/, ""), t = t.replace(/%22groupId%22:[^,]*,/, ""), t = t.replace(/%22tagsIds%22:\[[^\]]*],/, ""), /%22dataSort%22:\{[^}]*0000-00-00[^}]*}/.test(t) || (t = t.replace(/,?%22dataSort%22:\{[^}]*}(,?)/, "$1")), e + t;
951
- }, ut = (e, t) => {
952
- t && t.target instanceof HTMLElement && c.close(t.target.closest(".top-popup-wrapper"));
953
- let n = lt(e);
954
- location.href = n;
965
+ return t = t.replace(/%22historyView%22:[^,]*,/, ""), t = t.replace(/%22modelsKeys%22:\[[^\]]*],/, ""), t = t.replace(/%22competitorsIds%22:\[[^\]]*],/, ""), t = t.replace(/%22searchersKeys%22:\[[^\]]*],/, ""), t = t.replace(/%22regionIndex%22:[^,]*,/, ""), t = t.replace(/%22regionsIndexes%22:\[[^\]]*],/, ""), t = t.replace(/%22folderId%22:[^,]*,/, ""), t = t.replace(/%22groupId%22:[^,]*,/, ""), t = t.replace(/%22tagsIds%22:\[[^\]]*],/, ""), /%22dataSort%22:\{[^}]*0000-00-00[^}]*}/.test(t) || (t = t.replace(/,?%22dataSort%22:\{[^}]*}(,?)/, "$1")), e + t;
955
966
  }, dt = (e) => {
956
- let t = ft(), n = location.pathname.split("/"), r = "project/dynamics/", i = "";
957
- return n[1] == "project" && (r = n[1] + "/" + n[2] + "/"), n[2] == "settings" && (i = location.hash), [
967
+ location.href = ft(e);
968
+ }, ft = (e) => {
969
+ let t = pt(), n = location.pathname.split("/"), r = "project/dynamics/", i = "";
970
+ n[1] == "project" && (r = n[1] + "/" + n[2] + "/"), n[2] == "settings" && (i = location.hash), [
958
971
  "watcher",
959
972
  "indexing",
960
973
  "sitemap",
961
974
  "audit",
962
975
  "direct",
963
976
  "adwords"
964
- ].includes(n[4]) && (i = n[4] + "/"), "https://" + t + "/" + r + e + "/" + i;
965
- }, ft = () => window.page?.subdomain ? window.location.host.replace(window.page?.subdomain + ".", "") : window.location.host, pt = (e) => {
966
- let t = e.startsWith("http") ? e : "http://" + e;
977
+ ].includes(n[4]) && (i = n[4] + "/");
978
+ let a = "https://" + t + "/" + r + e + "/" + i;
979
+ return a = ut(a), a;
980
+ }, pt = () => window.page?.subdomain ? window.location.host.replace(window.page?.subdomain + ".", "") : window.location.host, mt = (e) => {
981
+ let t = e.startsWith("http") ? e : "https://" + e;
967
982
  return t = t.replace(/"/g, "%22"), t;
968
- }, mt = (e, t) => {
983
+ }, ht = (e, t) => {
969
984
  let n = e.params.filters ?? [];
970
985
  n = n.filter((e) => e.name !== "GEN_SEARCH_STRING()");
971
986
  let r = h(t), i = t.replace(/([[^$.|?*+()])/g, "\\$1"), a = r.replace(/([[^$.|?*+()])/g, "\\$1");
972
987
  t && n.push(o("GEN_SEARCH_STRING()", "REGEXP", [`(${i}|${a})`])), e.changeParams({ filters: n });
973
- }, ht = (e) => {
988
+ }, gt = (e) => {
974
989
  let n = e.gen("/get/projects_2/projects/", [
975
990
  "id",
976
991
  "user_id",
@@ -982,234 +997,217 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
982
997
  return n.changeParams({
983
998
  filters: [o("on", "GREATER_THAN_EQUALS", [0])],
984
999
  orders: [
985
- a("user_id", "DESC", [t.state.user.id]),
1000
+ a("user_id", "DESC", [t.state.userId]),
986
1001
  a("on", "DESC"),
987
1002
  a("favorite", "DESC"),
988
1003
  a("id", "DESC")
989
1004
  ]
990
- }), n.options.onApiLoaded = (e, t, n) => {
991
- let r = t.data.filters.length === 1 && t.data.offset === 0 || t.data.limit === 1e3, i = t.data.limit === 100 && t.data.filters.length > 1 ? !0 : void 0;
992
- e.result = ct(e.result, r, i), n?.(e, t);
1005
+ }), n.options.loadingShowSpinner = !1, n.options.onApiLoaded = (e, t, n) => {
1006
+ let r = t.data.filters.length === 1 && t.data.offset === 0 || t.data.limit === 1e3, i = t.data.limit === 100 && t.data.filters.length > 1 || void 0;
1007
+ e.result = lt(e.result, r, i), n?.(e, t);
993
1008
  }, n;
994
- }, gt = (e) => e.gen("/add/projects_2/projects/"), _t = { class: "top-projectSelectorSubmenu_item" }, vt = [
995
- "href",
996
- "title",
997
- "data-top-icon",
998
- "data-right"
999
- ], yt = { class: "top-projectSelectorSubmenu_item" }, bt = ["href"], xt = /* @__PURE__ */ A({
1009
+ }, _t = (e) => e.gen("/add/projects_2/projects/"), vt = { class: "top-ellipsis1" }, yt = /* @__PURE__ */ j({
1000
1010
  __name: "submenu",
1001
- props: {
1002
- id: {},
1003
- right: {},
1004
- url: {}
1005
- },
1006
- setup(t) {
1007
- let n = t, r = e(), i = ft(), a = [
1008
- {
1009
- href: `https://${i}/project/keywords/${n.id}/`,
1010
- title: r.Common.Menu_phrases,
1011
- icon: "",
1012
- right: "2"
1013
- },
1014
- {
1015
- href: `https://${i}/project/dynamics/${n.id}/`,
1016
- title: r.Common.Menu_dynamics,
1017
- icon: "",
1018
- right: "1"
1019
- },
1020
- {
1021
- href: `https://${i}/project/snapshots/${n.id}/`,
1022
- title: r.Common.Menu_snapshots,
1023
- icon: "",
1024
- right: "1"
1025
- },
1026
- {
1027
- href: `https://${i}/project/competitors/${n.id}/`,
1028
- title: r.Common.Menu_competitors,
1029
- icon: "",
1030
- right: "1"
1031
- },
1032
- {
1033
- href: `https://${i}/project/ai-tracker/${n.id}/`,
1034
- title: r.Common.Menu_aiTracker,
1035
- icon: "",
1036
- right: "13"
1037
- },
1038
- {
1039
- href: `https://${i}/project/analytics/${n.id}/`,
1040
- title: r.Common.Menu_analytics,
1041
- icon: "",
1042
- right: "5"
1043
- },
1044
- {
1045
- href: `https://${i}/project/broker/${n.id}/`,
1046
- title: r.Common.Menu_broker,
1047
- icon: "",
1048
- right: "6"
1049
- },
1050
- {
1051
- href: `https://${i}/project/audit/${n.id}/sitemap/`,
1052
- title: r.Audit.Sitemap_gen,
1053
- icon: "",
1054
- right: "8"
1055
- },
1056
- {
1057
- href: `https://${i}/project/audit/${n.id}/audit/`,
1058
- title: r.Common.Menu_audit,
1059
- icon: "",
1060
- right: "8"
1061
- },
1062
- {
1063
- href: `https://${i}/project/audit/${n.id}/indexing/`,
1064
- title: r.Audit.Indexing,
1065
- icon: "",
1066
- right: "8"
1067
- },
1068
- {
1069
- href: `https://${i}/project/audit/${n.id}/watcher/`,
1070
- title: r.Audit.Watcher,
1071
- icon: "",
1072
- right: "9"
1073
- },
1074
- {
1075
- href: `https://${i}/project/settings/${n.id}/`,
1076
- title: r.Common.Menu_settings,
1077
- icon: "",
1078
- right: "2"
1079
- }
1080
- ], o = C(() => n.right.includes("0") ? a.filter((e) => n.right[e.right] === "1") : a);
1081
- return (e, n) => {
1082
- let r = le("TopButton");
1083
- return N(), w(L(y), {
1084
- class: "top-projectSelectorSubmenu",
1085
- notch: !1,
1086
- pos: "2"
1087
- }, {
1088
- opener: B(() => [k(r, {
1089
- class: "top-projectSelectorSubmenu_opener",
1090
- "data-top-icon": "",
1091
- color: "theme"
1092
- })]),
1093
- contentList: B(() => [(N(!0), E(S, null, F(o.value, (e) => (N(), E("li", _t, [D("a", {
1094
- href: e.href,
1095
- title: e.title,
1096
- "data-top-icon": e.icon,
1097
- "data-right": e.right
1098
- }, null, 8, vt)]))), 256)), D("li", yt, [D("a", {
1099
- href: t.url,
1100
- "data-top-icon": "",
1101
- target: "_blank"
1102
- }, null, 8, bt)])]),
1103
- _: 1
1104
- });
1011
+ props: { id: {} },
1012
+ setup(n) {
1013
+ let r = n, i = e(), a = pt(), o = (e) => {
1014
+ let n = [
1015
+ {
1016
+ href: `https://${a}/project/keywords/${e.id}/`,
1017
+ title: i.Common.Menu_phrases,
1018
+ icon: "",
1019
+ right: "2"
1020
+ },
1021
+ {
1022
+ href: `https://${a}/project/dynamics/${e.id}/`,
1023
+ title: i.Common.Menu_dynamics,
1024
+ icon: "",
1025
+ right: "1"
1026
+ },
1027
+ {
1028
+ href: `https://${a}/project/snapshots/${e.id}/`,
1029
+ title: i.Common.Menu_snapshots,
1030
+ icon: "",
1031
+ right: "1"
1032
+ },
1033
+ {
1034
+ href: `https://${a}/project/competitors/${e.id}/`,
1035
+ title: i.Common.Menu_competitors,
1036
+ icon: "",
1037
+ right: "1"
1038
+ },
1039
+ {
1040
+ href: `https://${a}/project/ai-tracker/${e.id}/`,
1041
+ title: i.Common.Menu_aiTracker,
1042
+ icon: "",
1043
+ right: "13"
1044
+ },
1045
+ {
1046
+ href: `https://${a}/project/analytics/${e.id}/`,
1047
+ title: i.Common.Menu_analytics,
1048
+ icon: "",
1049
+ right: "5"
1050
+ },
1051
+ {
1052
+ href: `https://${a}/project/broker/${e.id}/`,
1053
+ title: i.Common.Menu_broker,
1054
+ icon: "",
1055
+ right: "6"
1056
+ },
1057
+ {
1058
+ href: `https://${a}/project/audit/${e.id}/sitemap/`,
1059
+ title: i.Audit.Sitemap_gen,
1060
+ icon: "",
1061
+ right: "8"
1062
+ },
1063
+ {
1064
+ href: `https://${a}/project/audit/${e.id}/audit/`,
1065
+ title: i.Common.Menu_audit,
1066
+ icon: "",
1067
+ right: "8"
1068
+ },
1069
+ {
1070
+ href: `https://${a}/project/audit/${e.id}/indexing/`,
1071
+ title: i.Audit.Indexing,
1072
+ icon: "",
1073
+ right: "8"
1074
+ },
1075
+ {
1076
+ href: `https://${a}/project/audit/${e.id}/watcher/`,
1077
+ title: i.Audit.Watcher,
1078
+ icon: "",
1079
+ right: "9"
1080
+ },
1081
+ {
1082
+ href: `https://${a}/project/settings/${e.id}/`,
1083
+ title: i.Common.Menu_settings,
1084
+ icon: "",
1085
+ right: "2"
1086
+ }
1087
+ ].filter((e) => !Object.entries(t.state.closedByMod).some(([t, n]) => n && e.href.includes(`/${t}/`)));
1088
+ return e.right.includes("0") ? n.filter((t) => e.right[t.right] === "1") : n;
1105
1089
  };
1090
+ return (e, t) => (P(), T(R(y), {
1091
+ id: r.id,
1092
+ class: "top-projectSelectorSubmenu",
1093
+ notch: !1,
1094
+ pos: "2"
1095
+ }, {
1096
+ contentList: V(({ data: t }) => [t ? (P(), D(C, { key: 0 }, [(P(!0), D(C, null, I(o(t.projectItem), (t) => (P(), T(R(v), {
1097
+ href: t.href,
1098
+ title: t.title,
1099
+ "data-top-icon": t.icon,
1100
+ "data-right": t.right
1101
+ }, {
1102
+ default: V(() => [k(L(e.$core.state.isMobile ? t.title : ""), 1)]),
1103
+ _: 2
1104
+ }, 1032, [
1105
+ "href",
1106
+ "title",
1107
+ "data-top-icon",
1108
+ "data-right"
1109
+ ]))), 256)), A(R(v), {
1110
+ href: t.projectItem.externalLink,
1111
+ title: t.projectItem.externalLink,
1112
+ class: "top-ellipsis",
1113
+ "data-top-icon": "",
1114
+ target: "_blank"
1115
+ }, {
1116
+ default: V(() => [O("span", vt, L(e.$core.state.isMobile ? t.projectItem.externalLink : ""), 1)]),
1117
+ _: 2
1118
+ }, 1032, ["href", "title"])], 64)) : E("", !0)]),
1119
+ _: 1
1120
+ }, 8, ["id"]));
1106
1121
  }
1107
- }), St = 1440 * 60 * 1e3, q = fe(), Ct = P(0), J = P(null), wt = (e) => {
1108
- localStorage.setItem("ui_project_selector_total:" + t.state.user.id, JSON.stringify({
1122
+ }), bt = 1440 * 60 * 1e3, J = F(null), Y = fe(), xt = (e) => {
1123
+ localStorage.setItem("ui_project_selector_total:" + t.state.userId, JSON.stringify({
1109
1124
  projectsTotal: e,
1110
- expiresAt: Date.now() + St
1125
+ expiresAt: Date.now() + bt
1111
1126
  }));
1112
- }, Tt = () => {
1113
- let e = localStorage.getItem("ui_project_selector_total:" + t.state.user.id);
1127
+ }, St = () => {
1128
+ let e = localStorage.getItem("ui_project_selector_total:" + t.state.userId);
1114
1129
  if (!e) return;
1115
1130
  let { projectsTotal: n, expiresAt: r } = JSON.parse(e);
1116
1131
  if (Date.now() > r) {
1117
- localStorage.removeItem("ui_project_selector_total:" + t.state.user.id);
1132
+ localStorage.removeItem("ui_project_selector_total:" + t.state.userId);
1118
1133
  return;
1119
1134
  }
1120
1135
  return n;
1121
- }, Et = (e = !0) => {
1122
- q.value = void 0, J.value = null, localStorage.removeItem("ui_project_selector_total:" + t.state.user.id), e && Ct.value++;
1123
- }, Dt = { class: "top-projectSelector_item" }, Ot = { class: "top-projectSelector_itemText" }, kt = { class: "top-comment" }, At = {
1136
+ }, Ct = () => {
1137
+ J.value = null, Y.value = void 0, localStorage.removeItem("ui_project_selector_total:" + t.state.userId), b("/get/projects_2/projects/");
1138
+ }, wt = { class: "top-projectSelector_itemText" }, Tt = { class: "top-comment" }, Et = {
1124
1139
  key: 0,
1125
1140
  class: "top-comment"
1126
- }, jt = ["href", "onClick"], Mt = 1e3, Nt = /* @__PURE__ */ A({
1141
+ }, Dt = ["href"], Ot = 1e3, kt = /* @__PURE__ */ j({
1127
1142
  __name: "projectSelector",
1128
- props: /*@__PURE__*/ j({
1143
+ props: /*@__PURE__*/ M({
1129
1144
  modelValue: {},
1130
1145
  client: {},
1131
- addLinksToProjects: {
1132
- type: Boolean,
1133
- default: !0
1134
- },
1146
+ menuMode: { type: Boolean },
1135
1147
  excludeProjectId: {},
1148
+ openerShortcut: {},
1136
1149
  modificator: {},
1137
1150
  placeholder: {},
1138
- buttonProps: {},
1139
- openerShortcut: {}
1151
+ buttonProps: {}
1140
1152
  }, {
1141
- modelValue: { default: {
1153
+ modelValue: { default: () => ({
1142
1154
  id: null,
1143
1155
  name: ""
1144
- } },
1156
+ }) },
1145
1157
  modelModifiers: {}
1146
1158
  }),
1147
1159
  emits: ["update:modelValue"],
1148
1160
  setup(n) {
1149
- let r = e(), i = n, a = R(n, "modelValue"), o = ht(i.client), s = ht(i.client);
1150
- s.changeParams({ limit: Mt });
1151
- let c = gt(i.client), l = P(Tt()), f = P(null), p = C(() => i.placeholder ?? r.Projects.Select_project), m = C(() => !q.value || !i.excludeProjectId ? q.value : q.value.filter((e) => e.id !== i.excludeProjectId)), h = C(() => {
1152
- if (!(!l.value && l.value !== 0)) return l.value < Mt ? "static" : "api";
1153
- });
1154
- z(Ct, () => {
1155
- ee();
1156
- }), z(a, () => {
1157
- !a.value.id || !i.addLinksToProjects || ut(dt(a.value.id));
1158
- });
1159
- let g = async () => {
1160
- J.value ||= s.call();
1161
+ let r = e(), i = n, a = z(n, "modelValue"), o = gt(i.client), s = _t(i.client), c = F(St()), l = F(null), f = me(), p = w(() => i.placeholder ?? r.Projects.Select_project), m = w(() => !Y.value || !i.excludeProjectId ? Y.value : Y.value.filter((e) => e.id !== i.excludeProjectId)), h = w(() => {
1162
+ if (!(!c.value && c.value !== 0)) return c.value < Ot ? "static" : "api";
1163
+ }), _ = async () => {
1164
+ J.value ||= o.call();
1161
1165
  let e = await J.value;
1162
- if (e.errors) {
1163
- J.value = null;
1164
- return;
1165
- }
1166
1166
  return J.value = null, e;
1167
- }, _ = async () => {
1168
- if (l.value) return;
1169
- let e = await g();
1170
- e && (l.value = e.total, h.value === "static" && !q.value && (q.value = e.result), l.value && wt(l.value));
1171
1167
  }, v = async (e) => {
1172
- let n = await c.changeParams({
1168
+ let n = await s.changeParams({
1173
1169
  url: e.name,
1174
1170
  name: e.name
1175
1171
  }).call();
1176
1172
  if (!n.errors) {
1177
- if (q.value && h.value === "static") {
1178
- let r = {
1179
- id: Number(n.result),
1180
- user_id: t.state.user.id,
1173
+ if (Y.value && h.value === "static") {
1174
+ let r = ct({
1175
+ id: n.result,
1176
+ user_id: t.state.userId,
1181
1177
  name: e.name,
1182
1178
  url: e.name,
1183
1179
  on: 0,
1184
- right: "11111111111111111111",
1185
- listItemProps: { attrs: { title: e.name } }
1186
- }, i = q.value.findIndex((e) => e.on === 0);
1187
- q.value = [
1188
- ...q.value.slice(0, i),
1180
+ right: "11111111111111111111"
1181
+ }), i = Y.value.findIndex((e) => e.on === 0);
1182
+ Y.value = [
1183
+ ...Y.value.slice(0, i),
1189
1184
  r,
1190
- ...q.value.slice(i)
1191
- ], l.value && (l.value += 1, wt(l.value));
1185
+ ...Y.value.slice(i)
1186
+ ], c.value && (c.value += 1, xt(c.value));
1192
1187
  }
1193
- h.value === "api" && Et();
1188
+ h.value === "api" && l.value?.resetCache(!0);
1194
1189
  }
1195
- }, ee = () => {
1196
- h.value === "api" && f.value?.resetCache(!0);
1190
+ }, ee = async () => {
1191
+ if (Y.value || h.value === "api") return;
1192
+ let e = await _();
1193
+ e.errors || (Y.value = e.result);
1197
1194
  }, y = async () => {
1198
- if (q.value || h.value === "api") return;
1199
- let e = await g();
1200
- e && (q.value = e.result);
1195
+ if (c.value) return;
1196
+ let e = await _();
1197
+ e.errors || (c.value = e.total ?? void 0, h.value === "static" && !Y.value && (Y.value = e.result), c.value && xt(c.value));
1201
1198
  };
1202
1199
  return oe(async () => {
1203
- await _();
1200
+ await y();
1204
1201
  }), (e, t) => {
1205
1202
  let r = le("TopButton");
1206
- return N(), w(x, {
1203
+ return P(), D(C, null, [A(S, {
1207
1204
  ref_key: "refSelector",
1208
- ref: f,
1205
+ ref: l,
1209
1206
  class: "top-projectSelector",
1210
1207
  modelValue: a.value,
1211
- "onUpdate:modelValue": t[1] ||= (e) => a.value = e,
1208
+ "onUpdate:modelValue": t[1] ||= (e) => n.menuMode ? R(dt)(e.id) : a.value = e,
1212
1209
  items: m.value,
1210
+ itemsIsLoading: h.value === "static" && R(Y) === void 0,
1213
1211
  title: e.$i18n.Projects.Search_projects,
1214
1212
  modificator: n.modificator,
1215
1213
  searchFields: [
@@ -1219,48 +1217,51 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1219
1217
  ],
1220
1218
  placeholder: p.value,
1221
1219
  hasCloserBtn: "",
1222
- api: h.value === "api" ? L(o) : void 0,
1223
- apiSetSearchParams: h.value === "api" ? (...e) => L(mt)(...e) : void 0,
1220
+ api: h.value === "api" ? R(o) : void 0,
1221
+ apiSetSearchParams: h.value === "api" ? (...e) => R(ht)(...e) : void 0,
1224
1222
  useCache: "",
1225
1223
  appendSearchToResult: "",
1226
1224
  appendSearchAllowDuplicate: "",
1227
- appendSearchToResultCond: L(u),
1225
+ appendSearchToResultCond: R(u),
1228
1226
  appendWithoutSelect: "",
1229
1227
  buttonProps: n.buttonProps,
1230
1228
  openerShortcut: n.openerShortcut,
1231
1229
  onAppendItem: v,
1232
- onOpen: y
1230
+ onOpen: ee
1233
1231
  }, {
1234
- item: B(({ item: i }) => [D("div", Dt, [D("div", Ot, [i.id ? (N(), E(S, { key: 0 }, [O(I(L(d)(i.name, 20)) + " ", 1), D("span", kt, " id " + I(i.id), 1)], 64)) : (N(), E(S, { key: 1 }, [i.listItemProps?.type ? T("", !0) : (N(), E("div", At, I(e.$i18n.Projects.Add_project) + ": ", 1)), O(" " + I(i.name), 1)], 64))]), i.id ? (N(), E(S, { key: 0 }, [
1235
- n.addLinksToProjects ? (N(), E("a", {
1232
+ item: V(({ item: i }) => [O("div", wt, [i.id ? (P(), D(C, { key: 0 }, [k(L(R(d)(i.name, 20)) + " ", 1), O("span", Tt, " id " + L(i.id), 1)], 64)) : (P(), D(C, { key: 1 }, [i.listItemProps?.type ? E("", !0) : (P(), D("div", Et, L(e.$i18n.Projects.Add_project) + ": ", 1)), k(" " + L(i.name), 1)], 64))]), i.id ? (P(), D(C, { key: 0 }, [
1233
+ n.menuMode ? (P(), D("a", {
1236
1234
  key: 0,
1237
1235
  class: "top-projectSelector_itemLink",
1238
- href: L(dt)(i.id),
1239
- onClick: V((e) => L(ut)(L(dt)(i.id), e), ["prevent", "stop"])
1240
- }, null, 8, jt)) : T("", !0),
1241
- e.$core.state.isMobile ? T("", !0) : (N(), w(r, {
1236
+ href: R(ft)(i.id)
1237
+ }, null, 8, Dt)) : E("", !0),
1238
+ e.$core.state.isMobile ? E("", !0) : (P(), T(r, {
1242
1239
  key: 1,
1243
- class: "top-projectSelector_itemExtLink",
1244
- href: L(pt)(i.url),
1240
+ href: i.externalLink,
1245
1241
  "data-top-icon": "",
1246
1242
  color: "theme",
1247
1243
  target: "_blank",
1248
- onClick: t[0] ||= V(() => {}, ["stop"])
1244
+ onClick: t[0] ||= H(() => {}, ["stop"])
1249
1245
  }, null, 8, ["href"])),
1250
- k(xt, {
1251
- id: i.id,
1252
- right: i.right ?? void 0,
1253
- url: L(pt)(i.url)
1254
- }, null, 8, [
1255
- "id",
1256
- "right",
1257
- "url"
1258
- ])
1259
- ], 64)) : T("", !0)])]),
1246
+ A(g, {
1247
+ id: R(f),
1248
+ pos: "2",
1249
+ notch: !1,
1250
+ data: { projectItem: i }
1251
+ }, {
1252
+ default: V(() => [A(r, {
1253
+ class: "top-popup_listMore",
1254
+ "data-top-icon": "",
1255
+ color: "theme"
1256
+ })]),
1257
+ _: 1
1258
+ }, 8, ["id", "data"])
1259
+ ], 64)) : E("", !0)]),
1260
1260
  _: 1
1261
1261
  }, 8, [
1262
1262
  "modelValue",
1263
1263
  "items",
1264
+ "itemsIsLoading",
1264
1265
  "title",
1265
1266
  "modificator",
1266
1267
  "placeholder",
@@ -1269,43 +1270,43 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1269
1270
  "appendSearchToResultCond",
1270
1271
  "buttonProps",
1271
1272
  "openerShortcut"
1272
- ]);
1273
+ ]), A(yt, { id: R(f) }, null, 8, ["id"])], 64);
1273
1274
  };
1274
1275
  }
1275
- }), Pt = (e) => "-" + e, Y = (e) => e[0] === "-" ? e.substring(1) : e, X = (e, t) => {
1276
- e = Y(e);
1276
+ }), At = (e) => "-" + e, X = (e) => e[0] === "-" ? e.substring(1) : e, Z = (e, t) => {
1277
+ e = X(e);
1277
1278
  let n = t.find((t) => t.id === e);
1278
1279
  if (n) return n;
1279
- }, Ft = (e, t, n) => {
1280
+ }, jt = (e, t, n) => {
1280
1281
  t ||= { id: e.id }, t.id = e.id, t.pos ??= "3", t.notch ??= !0, t.posBy ??= "fixed";
1281
1282
  let r = c.genElPopupOpener("div", t);
1282
1283
  return r.classList.add("top-tagSelector"), e.useTopButton && r.classList.add("top-tagSelector-useTopButton", "top-button", "top-color_theme", "top-as-selector"), e.useTopButton || r.classList.add("top-tagSelector-custom"), e.mode === "filter" && r.classList.add("top-tagSelector-filter"), e.mode === "setter" && !e.filters && r.classList.add("top-tagSelector-setter_single"), e.mode === "setter" && e.filters && r.classList.add("top-tagSelector-setter_several"), r.onclick = (t) => {
1283
1284
  t.preventDefault(), t.stopPropagation(), r.onclick = null;
1284
- let i = P(e.modelValue);
1285
- s(r, "topTagSelectorTarget", {
1285
+ let i = F(e.modelValue), a = {
1286
1286
  model: i,
1287
1287
  mode: e.mode,
1288
1288
  targetId: e.targetId,
1289
1289
  filters: e.filters,
1290
1290
  payload: e.payload
1291
- }), delete r.dataset.topPopupDisabled, re(e.modelValue) || z(i, () => {
1292
- e.modelValue = i.value, Z(r, e, n);
1291
+ };
1292
+ s(r, "topTagSelectorTarget", a), delete r.dataset.topPopupDisabled, re(e.modelValue) || B(i, () => {
1293
+ e.modelValue = i.value, Q(r, e, n);
1293
1294
  }), r.click();
1294
- }, re(e.modelValue) ? z(e.modelValue, () => Z(r, e, n)) : s(r, "topTagSelectorRender", (t) => {
1295
+ }, re(e.modelValue) ? B(e.modelValue, () => Q(r, e, n)) : s(r, "topTagSelectorRender", (t) => {
1295
1296
  e.modelValue = t;
1296
1297
  let i = s(r, "topTagSelectorTarget");
1297
- i && (i.model.value = t), Z(r, e, n);
1298
- }), Z(r, e, n), r;
1299
- }, It = (e, t) => {
1298
+ i && (i.model.value = t), Q(r, e, n);
1299
+ }), Q(r, e, n), r;
1300
+ }, Mt = (e, t) => {
1300
1301
  s(e, "topTagSelectorRender")?.(t);
1301
- }, Z = (t, n, r) => {
1302
- let i = L(n.modelValue);
1302
+ }, Q = (t, n, r) => {
1303
+ let i = R(n.modelValue);
1303
1304
  if (t.classList.toggle("top-tagSelector-selectedOne", !i.length || i.length === 1), t.classList.toggle("top-tagSelector-toTwoLine", i.length > 5), n.mode === "setter" && n.filters) {
1304
1305
  t.innerHTML = `<div>${r}</div>`;
1305
1306
  return;
1306
1307
  }
1307
1308
  if (t.innerHTML = "", !i.length && n.mode === "filter") {
1308
- let n = Lt({
1309
+ let n = Nt({
1309
1310
  id: "all",
1310
1311
  colorId: "",
1311
1312
  name: e().Common?.All_tags ?? "",
@@ -1314,18 +1315,18 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1314
1315
  t.append(n);
1315
1316
  }
1316
1317
  i.forEach((e) => {
1317
- let r = Lt({
1318
- id: Y(e),
1319
- colorId: X(e, n.tags)?.color_id ?? "",
1320
- name: X(e, n.tags)?.name ?? "",
1321
- state: Y(e) === e ? "selected" : "excluded"
1318
+ let r = Nt({
1319
+ id: X(e),
1320
+ colorId: Z(e, n.tags)?.color_id ?? "",
1321
+ name: Z(e, n.tags)?.name ?? "",
1322
+ state: X(e) === e ? "selected" : "excluded"
1322
1323
  });
1323
1324
  t.append(r);
1324
1325
  });
1325
- }, Lt = (e) => {
1326
+ }, Nt = (e) => {
1326
1327
  let t = document.createElement("div");
1327
1328
  return t.classList.add("top-tagSelector_tagIcon"), t.classList.toggle("top-tagSelector-active", !!e.state), t.classList.toggle("top-tagSelector-excluded", e.state === "excluded"), t.dataset.tag_id = e.id, t.dataset.tag_color_id = e.colorId, t.title = e.name, t;
1328
- }, Rt = [
1329
+ }, Pt = [
1329
1330
  {
1330
1331
  id: "1",
1331
1332
  name: "Without Tag",
@@ -1376,11 +1377,11 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1376
1377
  name: "Turquoise",
1377
1378
  color_id: "10"
1378
1379
  }
1379
- ], zt = [
1380
+ ], Ft = [
1380
1381
  "data-tag_id",
1381
1382
  "data-tag_color_id",
1382
1383
  "title"
1383
- ], Q = /* @__PURE__ */ A({
1384
+ ], It = /* @__PURE__ */ j({
1384
1385
  __name: "tagIcon",
1385
1386
  props: {
1386
1387
  id: {},
@@ -1389,8 +1390,8 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1389
1390
  state: {}
1390
1391
  },
1391
1392
  setup(e) {
1392
- return (t, n) => (N(), E("div", {
1393
- class: M({
1393
+ return (t, n) => (P(), D("div", {
1394
+ class: N({
1394
1395
  "top-tagSelector_tagIcon": !0,
1395
1396
  "top-tagSelector-active": !!e.state,
1396
1397
  "top-tagSelector-excluded": e.state === "excluded"
@@ -1398,11 +1399,11 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1398
1399
  "data-tag_id": e.id,
1399
1400
  "data-tag_color_id": e.colorId,
1400
1401
  title: e.name
1401
- }, null, 10, zt));
1402
+ }, null, 10, Ft));
1402
1403
  }
1403
- }), Bt = ["contenteditable", "onKeydown"], Vt = /* @__PURE__ */ A({
1404
+ }), Lt = ["contenteditable", "onKeydown"], Rt = /* @__PURE__ */ j({
1404
1405
  __name: "tagPopupListItem",
1405
- props: /*@__PURE__*/ j({
1406
+ props: /*@__PURE__*/ M({
1406
1407
  editable: { type: Boolean },
1407
1408
  disabled: { type: Boolean },
1408
1409
  canExclude: { type: Boolean },
@@ -1414,17 +1415,17 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1414
1415
  name: { required: !0 },
1415
1416
  nameModifiers: {}
1416
1417
  }),
1417
- emits: /*@__PURE__*/ j([
1418
+ emits: /*@__PURE__*/ M([
1418
1419
  "update:name",
1419
1420
  "unselect",
1420
1421
  "exclude",
1421
1422
  "select"
1422
1423
  ], ["update:name"]),
1423
1424
  setup(e, { emit: t }) {
1424
- let n = e, r = t, i = R(e, "name"), a = P(null), o = C(() => navigator.userAgent.indexOf("Firefox") == -1 ? {} : {
1425
+ let n = e, r = t, i = z(e, "name"), a = F(null), o = w(() => navigator.userAgent.indexOf("Firefox") == -1 ? {} : {
1425
1426
  contenteditable: s.value,
1426
1427
  onpaste: (e) => e.preventDefault()
1427
- }), s = P(!1), c = async () => {
1428
+ }), s = F(!1), c = async () => {
1428
1429
  s.value = !0, await ae(), a.value?.focus();
1429
1430
  }, l = () => {
1430
1431
  let e = a.value?.innerText;
@@ -1437,8 +1438,8 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1437
1438
  let t = "selected";
1438
1439
  n.canExclude && (e.ctrlKey || e.metaKey) && (t = "excluded"), n.state == t && (t = ""), t === "" && r("unselect"), t === "selected" && r("select"), t === "excluded" && r("exclude");
1439
1440
  };
1440
- return (t, n) => (N(), w(v, {
1441
- class: M({
1441
+ return (t, n) => (P(), T(v, {
1442
+ class: N({
1442
1443
  "top-tagSelector_tagListItem": !0,
1443
1444
  "top-tagSelector_tagListItem-inEdit": s.value,
1444
1445
  "top-tagSelector_tagListItem-disabled": e.disabled,
@@ -1446,10 +1447,10 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1446
1447
  "top-tagSelector-active": !!e.state,
1447
1448
  "top-tagSelector-excluded": e.state === "excluded"
1448
1449
  }),
1449
- onClick: V(d, ["stop"])
1450
+ onClick: H(d, ["stop"])
1450
1451
  }, {
1451
- default: B(() => [
1452
- k(Q, {
1452
+ default: V(() => [
1453
+ A(It, {
1453
1454
  id: e.id,
1454
1455
  name: i.value,
1455
1456
  colorId: e.colorId,
@@ -1460,31 +1461,31 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1460
1461
  "colorId",
1461
1462
  "state"
1462
1463
  ]),
1463
- D("span", ie({
1464
+ O("span", ie({
1464
1465
  ref_key: "elName",
1465
1466
  ref: a,
1466
1467
  class: "top-tagSelector_tagListItemName",
1467
1468
  contenteditable: s.value ? "plaintext-only" : !1
1468
- }, o.value, { onKeydown: [he(V(l, ["stop"]), ["enter"]), he(V(u, ["stop"]), ["esc"])] }), I(i.value), 17, Bt),
1469
- e.editable ? (N(), E(S, { key: 0 }, [s.value ? (N(), E("span", {
1469
+ }, o.value, { onKeydown: [ge(H(l, ["stop"]), ["enter"]), ge(H(u, ["stop"]), ["esc"])] }), L(i.value), 17, Lt),
1470
+ e.editable ? (P(), D(C, { key: 0 }, [s.value ? (P(), D("span", {
1470
1471
  key: 1,
1471
1472
  "data-top-icon": "",
1472
1473
  class: "top-tagSelector_edit",
1473
- onClick: V(l, ["stop"])
1474
- })) : (N(), E("span", {
1474
+ onClick: H(l, ["stop"])
1475
+ })) : (P(), D("span", {
1475
1476
  key: 0,
1476
1477
  "data-top-icon": "",
1477
1478
  class: "top-tagSelector_edit",
1478
1479
  onClick: c
1479
- }))], 64)) : T("", !0)
1480
+ }))], 64)) : E("", !0)
1480
1481
  ]),
1481
1482
  _: 1
1482
1483
  }, 8, ["class"]));
1483
1484
  }
1484
- }), Ht = { key: 1 }, Ut = /* @__PURE__ */ A({
1485
+ }), zt = { key: 1 }, Bt = /* @__PURE__ */ j({
1485
1486
  inheritAttrs: !1,
1486
1487
  __name: "popupOpener",
1487
- props: /*@__PURE__*/ j({
1488
+ props: /*@__PURE__*/ M({
1488
1489
  modelValue: {},
1489
1490
  id: {},
1490
1491
  tags: {},
@@ -1500,7 +1501,7 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1500
1501
  }),
1501
1502
  emits: ["update:modelValue"],
1502
1503
  setup(e) {
1503
- let t = e, n = R(e, "modelValue"), i = t.useTopButton ? r : "div", a = t.useTopButton ? "html" : "default", o = {
1504
+ let t = e, n = z(e, "modelValue"), i = t.useTopButton ? r : "div", a = t.useTopButton ? "html" : "default", o = {
1504
1505
  model: n,
1505
1506
  mode: t.mode,
1506
1507
  targetId: t.targetId,
@@ -1509,8 +1510,8 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1509
1510
  };
1510
1511
  return (r, s) => {
1511
1512
  let c = ue("top-data");
1512
- return N(), w(g, { id: e.id }, {
1513
- default: B(() => [me((N(), w(de(L(i)), ie({
1513
+ return P(), T(g, { id: e.id }, {
1514
+ default: V(() => [he((P(), T(de(R(i)), ie({
1514
1515
  class: {
1515
1516
  "top-tagSelector": !0,
1516
1517
  "top-tagSelector-useTopButton": t.useTopButton,
@@ -1525,17 +1526,17 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1525
1526
  color: "theme",
1526
1527
  styling: e.styling
1527
1528
  }, r.$attrs), {
1528
- [L(a)]: B(() => [!n.value.length && e.mode === "filter" ? (N(), w(Q, {
1529
+ [R(a)]: V(() => [!n.value.length && e.mode === "filter" ? (P(), T(It, {
1529
1530
  key: 0,
1530
1531
  id: "all",
1531
1532
  colorId: "",
1532
1533
  name: r.$i18n.Common.All_tags ?? "",
1533
1534
  state: ""
1534
- }, null, 8, ["name"])) : T("", !0), e.mode === "setter" && e.filters ? (N(), E("div", Ht, [ce(r.$slots, "default")])) : (N(!0), E(S, { key: 2 }, F(n.value, (t) => (N(), w(Q, {
1535
- id: L(Y)(t),
1536
- colorId: L(X)(t, e.tags)?.color_id ?? "",
1537
- name: L(X)(t, e.tags)?.name ?? "",
1538
- state: L(Y)(t) === t ? "selected" : "excluded"
1535
+ }, null, 8, ["name"])) : E("", !0), e.mode === "setter" && e.filters ? (P(), D("div", zt, [ce(r.$slots, "default")])) : (P(!0), D(C, { key: 2 }, I(n.value, (t) => (P(), T(It, {
1536
+ id: R(X)(t),
1537
+ colorId: R(Z)(t, e.tags)?.color_id ?? "",
1538
+ name: R(Z)(t, e.tags)?.name ?? "",
1539
+ state: R(X)(t) === t ? "selected" : "excluded"
1539
1540
  }, null, 8, [
1540
1541
  "id",
1541
1542
  "colorId",
@@ -1552,9 +1553,9 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1552
1553
  }, 8, ["id"]);
1553
1554
  };
1554
1555
  }
1555
- }), Wt = /* @__PURE__ */ A({
1556
+ }), Vt = /* @__PURE__ */ j({
1556
1557
  __name: "tagSelector",
1557
- props: /*@__PURE__*/ j({
1558
+ props: /*@__PURE__*/ M({
1558
1559
  modelValue: {},
1559
1560
  tags: {},
1560
1561
  tagsEditable: { type: Boolean },
@@ -1575,20 +1576,20 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1575
1576
  }, {
1576
1577
  modelValue: { required: !0 },
1577
1578
  modelModifiers: {},
1578
- tags: { default: se(Rt) },
1579
+ tags: { default: se(Pt) },
1579
1580
  tagsModifiers: {}
1580
1581
  }),
1581
- emits: /*@__PURE__*/ j([
1582
+ emits: /*@__PURE__*/ M([
1582
1583
  "selector",
1583
1584
  "setter",
1584
1585
  "tagsChanged"
1585
1586
  ], ["update:modelValue", "update:tags"]),
1586
1587
  setup(a, { emit: o }) {
1587
- let c = e(), l = a, u = R(a, "modelValue"), d = R(a, "tags"), f = o, p = n((e, t) => {
1588
+ let c = e(), l = a, u = z(a, "modelValue"), d = z(a, "tags"), f = o, p = n((e, t) => {
1588
1589
  f(e, t);
1589
1590
  }, l.emitDelay);
1590
1591
  l.singleMode && !u.value.length && (u.value = [d.value[0].id]);
1591
- let m = l.id ?? "top-popup-id-" + Math.random(), h = P("add"), g = () => {
1592
+ let m = l.id ?? "top-popup-id-" + Math.random(), h = F("add"), g = () => {
1592
1593
  let e = " " + c.Common.Tags?.toLowerCase(), t = /* @__PURE__ */ new Map();
1593
1594
  return t.set("add", {
1594
1595
  value: "add",
@@ -1607,28 +1608,28 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1607
1608
  filters: void 0,
1608
1609
  payload: void 0
1609
1610
  });
1610
- z(u, () => {
1611
+ B(u, () => {
1611
1612
  p("selector", u.value);
1612
1613
  });
1613
- let ee = C(() => {
1614
+ let ee = w(() => {
1614
1615
  if (_.value.mode === "setter" && l.maxTagsForSetter && !_.value.filters) return _.value.model.value.length >= l.maxTagsForSetter;
1615
1616
  }), b = (e) => {
1616
1617
  if (e !== "all") {
1617
1618
  if (_.value.model.value.includes(e)) return "selected";
1618
- if (_.value.model.value.includes(Pt(e))) return "excluded";
1619
+ if (_.value.model.value.includes(At(e))) return "excluded";
1619
1620
  }
1620
1621
  return e === "all" && !_.value.model.value.length ? "selected" : "";
1621
1622
  }, x = (e, t) => {
1622
- let n = Pt(e), r = _.value.model.value.filter((t) => t !== e && t !== n);
1623
+ let n = At(e), r = _.value.model.value.filter((t) => t !== e && t !== n);
1623
1624
  t === "select" && r.push(e), t === "exclude" && r.push(n), _.value.mode === "setter" && _.value.targetId !== void 0 && l.requiredForSetter && (r.length || r.push("1"), r.length === 2 && _.value.model.value.length === 1 && _.value.model.value[0] === "1" && (r = r.filter((e) => e !== "1"))), l.singleMode && !_.value.filters && (r.length || (r = _.value.model.value), r.length > 1 && (r = [r[r.length - 1]])), r.sort((e, t) => l.tags ? l.tags.findIndex((t) => t.id === e) - l.tags.findIndex((e) => e.id === t) : 0), _.value.model.value = r, _.value.mode === "setter" && _.value.targetId !== void 0 && p("setter", {
1624
1625
  tagsIds: r,
1625
1626
  targetId: _.value.targetId,
1626
1627
  payload: _.value.payload
1627
1628
  });
1628
- }, te = C(() => {
1629
+ }, S = w(() => {
1629
1630
  let e = "top-tagSelector_popup";
1630
1631
  return _.value.mode === "filter" && (e += " top-tagSelector_popup-filter"), _.value.mode === "setter" && (e += " top-tagSelector_popup-setter"), e;
1631
- }), D = () => {
1632
+ }), te = () => {
1632
1633
  let e = prompt("", "New tag");
1633
1634
  if (!e || e === "New tag") return;
1634
1635
  let t = d.value.length + 1;
@@ -1637,7 +1638,7 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1637
1638
  name: e,
1638
1639
  color_id: String((t - 1) % 10 + 1)
1639
1640
  }), f("tagsChanged", d.value);
1640
- }, A = (e) => {
1641
+ }, O = (e) => {
1641
1642
  if (_.value = s(e.elPopupOpener, "topTagSelectorTarget"), !_.value) throw Error("Open popup TopTagSelector required v-data:topTagSelectorTarget");
1642
1643
  if (_.value.filters && (h.value = "add", _.value.model.value = []), !t.$?.ui.sortable) {
1643
1644
  console.info("Для работы сортировки требуется глобальная загрузка jQuery UI Sortable");
@@ -1657,13 +1658,13 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1657
1658
  }), d.value.sort((e, t) => r.findIndex((t) => t === e.id) - r.findIndex((e) => e === t.id)), p("tagsChanged", d.value);
1658
1659
  }
1659
1660
  });
1660
- }, re = (e) => {
1661
+ }, j = (e) => {
1661
1662
  t.$?.ui.sortable && $(e.elPopup).data("ui-sortable") && $(e.elPopup).sortable("destroy");
1662
1663
  };
1663
- return (e, t) => (N(), E(S, null, [k(Ut, {
1664
+ return (e, t) => (P(), D(C, null, [A(Bt, {
1664
1665
  modelValue: u.value,
1665
1666
  "onUpdate:modelValue": t[0] ||= (e) => u.value = e,
1666
- id: L(m),
1667
+ id: R(m),
1667
1668
  tags: d.value,
1668
1669
  styling: a.styling,
1669
1670
  mode: "filter",
@@ -1674,23 +1675,23 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1674
1675
  "tags",
1675
1676
  "styling",
1676
1677
  "useTopButton"
1677
- ]), k(y, {
1678
- id: L(m),
1679
- class: M(te.value),
1680
- onOpen: t[4] ||= (e) => A(e),
1681
- onClose: t[5] ||= (e) => re(e),
1678
+ ]), A(y, {
1679
+ id: R(m),
1680
+ class: N(S.value),
1681
+ onOpen: t[4] ||= (e) => O(e),
1682
+ onClose: t[5] ||= (e) => j(e),
1682
1683
  "transition-duration": 50
1683
1684
  }, ne({
1684
- contentList: B(() => [
1685
- _.value.mode === "filter" && !a.singleMode ? (N(), w(Vt, {
1685
+ contentList: V(() => [
1686
+ _.value.mode === "filter" && !a.singleMode ? (P(), T(Rt, {
1686
1687
  key: 0,
1687
1688
  id: "all",
1688
1689
  colorId: "",
1689
1690
  name: e.$i18n.Common.All_tags ?? "",
1690
1691
  state: _.value.model.value.length ? "" : "selected",
1691
1692
  onSelect: t[3] ||= (e) => _.value.model.value = []
1692
- }, null, 8, ["name", "state"])) : T("", !0),
1693
- (N(!0), E(S, null, F(d.value, (e) => (N(), w(Vt, {
1693
+ }, null, 8, ["name", "state"])) : E("", !0),
1694
+ (P(!0), D(C, null, I(d.value, (e) => (P(), T(Rt, {
1694
1695
  key: e.id,
1695
1696
  id: e.id,
1696
1697
  colorId: e.color_id,
@@ -1703,7 +1704,7 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1703
1704
  onSelect: (t) => x(e.id, "select"),
1704
1705
  onExclude: (t) => x(e.id, "exclude"),
1705
1706
  "onUpdate:name": (t) => {
1706
- e.name = t, L(p)("tagsChanged", d.value);
1707
+ e.name = t, R(p)("tagsChanged", d.value);
1707
1708
  }
1708
1709
  }, null, 8, [
1709
1710
  "id",
@@ -1718,19 +1719,19 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1718
1719
  "onExclude",
1719
1720
  "onUpdate:name"
1720
1721
  ]))), 128)),
1721
- a.tagsEditable && d.value.length < a.tagsMax && d.value.length < 20 ? (N(), w(v, {
1722
+ a.tagsEditable && d.value.length < a.tagsMax && d.value.length < 20 ? (P(), T(v, {
1722
1723
  key: 1,
1723
1724
  "data-top-icon": "",
1724
- onClick: V(D, ["stop"])
1725
+ onClick: H(te, ["stop"])
1725
1726
  }, {
1726
- default: B(() => [O(I(e.$i18n.Common.Add), 1)]),
1727
+ default: V(() => [k(L(e.$i18n.Common.Add), 1)]),
1727
1728
  _: 1
1728
- })) : T("", !0)
1729
+ })) : E("", !0)
1729
1730
  ]),
1730
1731
  _: 2
1731
1732
  }, [_.value.mode === "setter" && _.value.filters ? {
1732
1733
  name: "header",
1733
- fn: B(() => [k(i, {
1734
+ fn: V(() => [A(i, {
1734
1735
  modelValue: h.value,
1735
1736
  "onUpdate:modelValue": t[1] ||= (e) => h.value = e,
1736
1737
  options: g()
@@ -1738,16 +1739,16 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1738
1739
  key: "0"
1739
1740
  } : void 0, _.value.mode === "setter" && _.value.filters ? {
1740
1741
  name: "footer",
1741
- fn: B(() => [k(r, { color: "theme" }, {
1742
- default: B(() => [O(I(e.$i18n.Common.Cancel), 1)]),
1742
+ fn: V(() => [A(r, { color: "theme" }, {
1743
+ default: V(() => [k(L(e.$i18n.Common.Cancel), 1)]),
1743
1744
  _: 1
1744
- }), k(r, { onClick: t[2] ||= (e) => L(p)("setter", {
1745
+ }), A(r, { onClick: t[2] ||= (e) => R(p)("setter", {
1745
1746
  tagsIds: _.value.model.value,
1746
1747
  filters: _.value.filters,
1747
1748
  filtersAction: h.value,
1748
1749
  payload: _.value.payload
1749
1750
  }) }, {
1750
- default: B(() => [O(I(h.value === "add" ? e.$i18n.Common.Add : "") + " " + I(h.value === "replace" ? e.$i18n.Common.Replace : "") + " " + I(h.value === "delete" ? e.$i18n.Common.Delete : ""), 1)]),
1751
+ default: V(() => [k(L(h.value === "add" ? e.$i18n.Common.Add : "") + " " + L(h.value === "replace" ? e.$i18n.Common.Replace : "") + " " + L(h.value === "delete" ? e.$i18n.Common.Delete : ""), 1)]),
1751
1752
  _: 1
1752
1753
  })]),
1753
1754
  key: "1"
@@ -1755,6 +1756,6 @@ var He = ["innerHTML"], Ue = /* @__PURE__ */ A({
1755
1756
  }
1756
1757
  });
1757
1758
  //#endregion
1758
- export { ve as TopCompetitorSelector, rt as TopGroupSelector, Nt as TopProjectSelector, Le as TopRegionSelector, Wt as TopTagSelector, Ut as TopTagSelectorPopupOpener, Q as TopTagSelectorTagIcon, Et as clearCache, Me as dialogRegionSelector, je as findRegion, Ft as genElTopTagSelectorPopupOpener, Oe as genSearcherByKey, It as renderElTopTagSelectorPopupOpener, ye as useItemsFromCompetitors };
1759
+ export { ye as TopCompetitorSelector, it as TopGroupSelector, kt as TopProjectSelector, Re as TopRegionSelector, Vt as TopTagSelector, Bt as TopTagSelectorPopupOpener, It as TopTagSelectorTagIcon, Ne as dialogRegionSelector, Me as findRegion, jt as genElTopTagSelectorPopupOpener, ke as genSearcherByKey, Mt as renderElTopTagSelectorPopupOpener, Ct as topProjectSelectorClearCache, be as useItemsFromCompetitors };
1759
1760
 
1760
1761
  //# sourceMappingURL=project.js.map