@topvisor/ui 1.0.11 → 1.0.12-jquery
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.
- package/.chunks/{datepicker-BeZdrUZe.es.js → datepicker-DWXjh2hB.es.js} +2 -2
- package/.chunks/{datepicker-BeZdrUZe.es.js.map → datepicker-DWXjh2hB.es.js.map} +1 -1
- package/.chunks/{datepicker-DZ_gcKjX.amd.js → datepicker-NJ8JOvZG.amd.js} +2 -2
- package/.chunks/{datepicker-DZ_gcKjX.amd.js.map → datepicker-NJ8JOvZG.amd.js.map} +1 -1
- package/.chunks/{forms-KYzDzvAm.es.js → forms-CIeG_5LP.es.js} +608 -604
- package/.chunks/{forms-KYzDzvAm.es.js.map → forms-CIeG_5LP.es.js.map} +1 -1
- package/.chunks/forms-DHMogHmw.amd.js +3 -0
- package/.chunks/{forms-BNcuNKOv.amd.js.map → forms-DHMogHmw.amd.js.map} +1 -1
- package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-BL4G8x1Y.amd.js → listItem.vue_vue_type_script_setup_true_lang-DQXATE8-.amd.js} +2 -2
- package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-BL4G8x1Y.amd.js.map → listItem.vue_vue_type_script_setup_true_lang-DQXATE8-.amd.js.map} +1 -1
- package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-_oyfo9h4.es.js → listItem.vue_vue_type_script_setup_true_lang-Gofkt4lj.es.js} +2 -2
- package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-_oyfo9h4.es.js.map → listItem.vue_vue_type_script_setup_true_lang-Gofkt4lj.es.js.map} +1 -1
- package/.chunks/{menu.vue_vue_type_style_index_0_lang-BavNCmtc.amd.js → menu.vue_vue_type_style_index_0_lang-CeoVr4RC.amd.js} +2 -2
- package/.chunks/{menu.vue_vue_type_style_index_0_lang-BavNCmtc.amd.js.map → menu.vue_vue_type_style_index_0_lang-CeoVr4RC.amd.js.map} +1 -1
- package/.chunks/{menu.vue_vue_type_style_index_0_lang-7gkMp0WD.es.js → menu.vue_vue_type_style_index_0_lang-uGV-A-kW.es.js} +2 -2
- package/.chunks/{menu.vue_vue_type_style_index_0_lang-7gkMp0WD.es.js.map → menu.vue_vue_type_style_index_0_lang-uGV-A-kW.es.js.map} +1 -1
- package/.chunks/{notice-DeGJ1n94.es.js → notice-BA5zBdx2.es.js} +2 -2
- package/.chunks/{notice-DeGJ1n94.es.js.map → notice-BA5zBdx2.es.js.map} +1 -1
- package/.chunks/{notice-D5dd0b2j.amd.js → notice-BPG1753z.amd.js} +2 -2
- package/.chunks/{notice-D5dd0b2j.amd.js.map → notice-BPG1753z.amd.js.map} +1 -1
- package/.chunks/{popup-BExFCG28.amd.js → popup-B-A8QzhE.amd.js} +2 -2
- package/.chunks/{popup-BExFCG28.amd.js.map → popup-B-A8QzhE.amd.js.map} +1 -1
- package/.chunks/{popup-DJhBYFFN.es.js → popup-BnUijzts.es.js} +2 -2
- package/.chunks/{popup-DJhBYFFN.es.js.map → popup-BnUijzts.es.js.map} +1 -1
- package/assets/core.css +1 -1
- package/assets/themes/dark.css +1 -1
- package/assets/themes/light.css +1 -1
- package/charts/charts.amd.js +1 -1
- package/charts/charts.js +1 -1
- package/components/core/dialog/types.d.ts +2 -0
- package/core/app.amd.js +1 -1
- package/core/app.js +3 -3
- package/core/core/core.d.ts +1 -1
- package/core/utils/date.d.ts +1 -2
- package/core/utils/route.d.ts +2 -2
- package/core/utils/scroll.d.ts +14 -1
- package/forms/forms.amd.js +1 -1
- package/forms/forms.js +1 -1
- package/formsExt/formsExt.amd.js +1 -1
- package/formsExt/formsExt.js +2 -2
- package/package.json +1 -1
- package/popup/popup.amd.js +1 -1
- package/popup/popup.js +2 -2
- package/popup/worker.amd.js +1 -1
- package/popup/worker.js +2 -2
- package/project/project.amd.js +1 -1
- package/project/project.js +3 -3
- package/tabsView/tabsView.amd.js +1 -1
- package/tabsView/tabsView.js +1 -1
- package/utils/check.amd.js +1 -1
- package/utils/check.amd.js.map +1 -1
- package/utils/check.js +1 -1
- package/utils/check.js.map +1 -1
- package/utils/date.amd.js +1 -1
- package/utils/date.js +1 -1
- package/utils/device.amd.js +1 -1
- package/utils/device.js +1 -1
- package/utils/lodash.amd.js +1 -1
- package/utils/lodash.js +1 -1
- package/utils/price.amd.js +1 -1
- package/utils/price.js +1 -1
- package/utils/route.amd.js.map +1 -1
- package/utils/route.js.map +1 -1
- package/utils/scroll.amd.js +1 -1
- package/utils/scroll.amd.js.map +1 -1
- package/utils/scroll.js +19 -7
- package/utils/scroll.js.map +1 -1
- package/utils/string.amd.js +1 -1
- package/utils/string.js +1 -1
- package/.chunks/forms-BNcuNKOv.amd.js +0 -3
package/charts/charts.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","vue","../.chunks/forms-
|
|
1
|
+
define(["require","exports","vue","../.chunks/forms-DHMogHmw.amd","../utils/number.amd","../require/css.amd!../assets/charts.css"],function(H,l,e,s,c){"use strict";if(typeof e>"u")var e=window.Vue;const h=90,d=10,C=["data-top-icon"],v={class:"top-miniChart_chart"},_=["onMouseenter"],y={class:"top-miniChart_data"},f={class:"top-miniChart_dataValue"},g=["innerHTML"],M=e.defineComponent({__name:"miniChart",props:e.mergeModels({title:{},gIcon:{},color:{default:"blue"},dates:{},values:{},activeDates:{},keysForDyn:{},isInvert:{type:Boolean},numberCols:{default:h},additionalHTML:{},modelValue:{},valueSuffix:{}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(u){const o=u,m=e.useModel(u,"modelValue"),k=t=>{let n=B.value;o.isInvert&&(t-=1,n-=1);let a=n>0?Math.round(t/n*(100-d)):0;return o.isInvert?100-a:a+d},E=t=>o.activeDates.includes(t),B=e.computed(()=>Math.max(...o.values)),b=e.computed(()=>o.dates.slice().reverse()),N=e.computed(()=>o.dates.length?o.numberCols-o.dates.length:0),p=()=>{m.value=null},G=(t,n,a)=>{m.value={elCol:t.target,date:s.dateFormat(n),value:a===null?"--":a+(o.valueSuffix??"")}},i=e.computed(()=>{const t=o.values[o.keysForDyn.start],a=o.values[o.keysForDyn.end]-t;return(a<0?-1:1)*c.percentOfNumber(Math.abs(a))}),S=e.computed(()=>{let t="stay";return o.isInvert?(i.value>0&&(t="down"),i.value<0&&(t="up")):(i.value>0&&(t="up"),i.value<0&&(t="down")),t});return(t,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-miniChart":!0,[`top-color_${t.color}`]:!0})},[e.createElementVNode("div",{class:"top-miniChart_title","data-top-icon":t.gIcon},e.toDisplayString(t.title),9,C),e.createElementVNode("div",v,[e.createElementVNode("div",{class:"top-miniChart_chartGrid",onMouseleave:n[1]||(n[1]=a=>p())},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,(a,r)=>(e.openBlock(),e.createElementBlock("div",{key:r,class:e.normalizeClass({"top-miniChart_chartGridCol":!0,"top-active":E(a)}),onMouseenter:T=>G(T,a,t.values[t.values.length-r-1])},[e.createElementVNode("div",{style:e.normalizeStyle("height:"+k(t.values[t.values.length-r-1])+"%")},null,4)],42,_))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,()=>(e.openBlock(),e.createElementBlock("div",{class:"top-miniChart_chartGridCol top-miniChart_chartGridCol-none",onMouseenter:n[0]||(n[0]=a=>p())},n[2]||(n[2]=[e.createElementVNode("div",null,null,-1)]),32))),256))],32)]),e.createElementVNode("div",y,[e.createElementVNode("span",{class:e.normalizeClass({"top-miniChart_dataDynamic":!0,[`top-miniChart_dataDynamic-direction_${S.value}`]:!0})},e.toDisplayString(Math.abs(i.value)||""),3),e.createElementVNode("span",f,e.toDisplayString(e.unref(c.percentOfNumber)(t.values[t.values.length-1])||0),1)]),t.additionalHTML?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:t.additionalHTML},null,8,g)):e.createCommentVNode("",!0)],2))}}),D={$style:{"top-miniChart":"top-miniChart","top-miniChart_title":"top-miniChart_title","top-color_orange":"top-color_orange","top-color_pink":"top-color_pink","top-color_blue":"top-color_blue","top-miniChart_data":"top-miniChart_data","top-miniChart_dataDynamic":"top-miniChart_dataDynamic","top-miniChart_dataDynamic-direction_up":"top-miniChart_dataDynamic-direction_up","top-miniChart_dataDynamic-direction_stay":"top-miniChart_dataDynamic-direction_stay","top-miniChart_dataDynamic-direction_down":"top-miniChart_dataDynamic-direction_down","top-miniChart_chartGrid":"top-miniChart_chartGrid","top-miniChart_chartGridCol":"top-miniChart_chartGridCol","top-active":"top-active","top-miniChart_chartGridCol-none":"top-miniChart_chartGridCol-none","top-miniChart_chart":"top-miniChart_chart"}},V=s._export_sfc(M,[["__cssModules",D]]);l.TopMiniChart=V,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=charts.amd.js.map
|
package/charts/charts.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Core as S } from "../core/app.js";
|
|
2
2
|
import { defineComponent as L, mergeModels as T, useModel as I, computed as l, openBlock as n, createElementBlock as r, normalizeClass as m, createElementVNode as i, toDisplayString as c, Fragment as C, renderList as v, normalizeStyle as F, unref as N, createCommentVNode as $ } from "vue";
|
|
3
|
-
import { d as w, b as B } from "../.chunks/forms-
|
|
3
|
+
import { d as w, b as B } from "../.chunks/forms-CIeG_5LP.es.js";
|
|
4
4
|
import { percentOfNumber as _ } from "../utils/number.js";
|
|
5
5
|
const H = ["../assets/charts.css"].map((d) => import.meta.resolve(d));
|
|
6
6
|
S.insertCSSLinkToPage(H, !0);
|
package/core/app.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","../.chunks/forms-
|
|
1
|
+
define(["require","exports","../.chunks/forms-DHMogHmw.amd","vue","../popup/worker.amd","../utils/clipboard.amd","../utils/string.amd","../utils/route.amd"],function(w,p,a,h,d,P,k,E){"use strict";if(typeof h>"u")var h=window.Vue;class I{static isInited=!1;static init(){this.isInited||(this.isInited=!0,document.addEventListener("mouseover",t=>{var e;!(t.target instanceof HTMLElement)||!((e=t.target.dataset)!=null&&e.topPopupOpenByHover)||t.target.click()}),document.addEventListener("scroll",()=>{a.Core.state.isMobile||a.Core.state.isMobileUA||d.TopPopupWorker.getAll().forEach(t=>d.TopPopupWorker.close(t))}),a.Events.addOnReize(t=>{a.Core.state.isMobile&&t.topEvent.widthDiff&&d.TopPopupWorker.getAll().forEach(e=>d.TopPopupWorker.close(e))}),document.addEventListener("click",this.onclick))}static async onclick(t){var o,n,s,r,c;if(!(t.target instanceof HTMLElement))return;let e;switch(!0){case!!((o=t.target.dataset)!=null&&o.topPopup):e=t.target;break;case!!((n=t.target.parentElement)!=null&&n.dataset.topPopup):e=t.target.parentElement;break;case!!((r=(s=t.target.parentElement)==null?void 0:s.parentElement)!=null&&r.dataset.topPopup):e=(c=t.target.parentElement)==null?void 0:c.parentElement;break}e&&(e.dataset.topPopupDisabled||e.dataset.topPopupOpened||(t.preventDefault(),await d.TopPopupWorker.openByOpener(e)))}}let m;const L={mounted:async(i,t)=>{m||(m=(await new Promise((s,r)=>w(["../utils/dom.amd"],s,r))).storage);const e=t.arg,o=t.value;m(i,e,o)}},C={mounted:function(i,t){t.value.disabled||i.focus()}};let u;const O={mounted(i,t,e){const o=t.value||"top-sticky";u=new IntersectionObserver(n=>{let s=n[0].intersectionRatio<1;s&&t.modifiers.bottom&&n[0].intersectionRect.y===0&&(s=!1),i.classList.toggle(o,s)},{threshold:[1]}),u.observe(i)},unmounted(i,t,e){u==null||u.disconnect()}};let v=!1,g;const f=new Map,y=(i,t)=>{const{distance:e,percent:o}=i.directiveSwipUpOptions,n=i.getBoundingClientRect().top,s=t*o/100/e,r=(t-n)/s;r<=e?i.style.transform=`translateY(${e-r}px)`:i.style.transform="translateY(0px)"},N=i=>{let t=window.innerHeight;window.addEventListener("scroll",()=>{f.forEach(e=>y(e,t))},{passive:!0}),g=new IntersectionObserver(e=>{t=window.innerHeight,e.forEach(o=>{const n=o.target;if(o.intersectionRatio<.1?f.delete(n):f.set(n,n),o.intersectionRatio===0){const{distance:s}=n.directiveSwipUpOptions;n.style.transform=`translateY(${s}px)`}})},{threshold:.1})},M={mounted(i,t,e){var o,n;a.Core.state.isMobileUA||(i.directiveSwipUpOptions={distance:((o=t.value)==null?void 0:o.distance)??100,percent:((n=t.value)==null?void 0:n.percent)??30},v||(N(),v=!0),g.observe(i))},unmounted(i,t,e){f.delete(i),g==null||g.unobserve(i)}},T=i=>{var t,e;if(!((e=(t=a.Core.$)==null?void 0:t.ui)!=null&&e.tooltip)){console.info("Для работы v-top-tooltip требуется глобальная загрузка jQuery UI Tooltip");return}return a.Core.$(i)},S=(i,t)=>{var o;const e=i.value??{};return e.content??=(o=t.props)==null?void 0:o.title,e.content=String(e.content).replace(/\r\n|\r|\n/g,"<br>"),e.position??={my:"bottom-18px",at:"top center"},e},H={mounted(i,t,e){var o;(o=T(i))==null||o.tooltip(S(t,e))},updated(i,t,e,o){var r;const n=S(t,e),s=(r=T(i))==null?void 0:r.tooltip("instance");s&&(s.options={...s.options,...n})},unmounted(i,t,e){var o;(o=T(i))==null||o.tooltip("destroy")}},U=h.defineAsyncComponent(()=>new Promise((i,t)=>w(["../.chunks/notice-BPG1753z.amd"],i,t))),F={install:(i,t)=>{i.config.globalProperties.$core=a.Core;for(const e in t)a.Core.state[e]=t[e];t.widthForMobile&&(a.Core.widthForMobile=t.widthForMobile),t.themeName&&(a.Core.themeName=t.themeName),a.Core._setState(),t.topPopupOptions&&(d.TopPopupWorker.options=t.topPopupOptions),I.init(),i.directive("top-data",L),i.directive("top-focus",C),i.directive("top-sticky",O),i.directive("top-swim-up",M),i.directive("top-tooltip",H),i.component("TopAvatar",a.TopAvatar),i.component("TopButton",a.TopButton),i.component("TopCheckbox",a.TopCheckbox),i.component("TopControlLabel",a.TopControlLabel),i.component("TopHint",a.TopHint),i.component("TopInput",a.TopInput),i.component("TopInputDate",a.TopInputDate),i.component("TopInputRange",a.TopInputRange),i.component("TopLoadbar",a.TopLoadbar),i.component("TopRadio",a.TopRadio),i.component("TopSelect",a.TopSelect),i.component("TopSwitcher",a.TopSwitcher),i.component("TopTextarea",a.TopTextarea),i.component("TopNotice",U)}};class R{#e;#t;#o;#n;#p;#i=[];#s=[];#d=[];#a=[];constructor(t){var o;this.#t=t.store,this.#e=this.#t.$id,this.#o=t.options.Page,this.#n=t.options.user,this.#p=t.options.Api,this.#i=t.options.tpaNamesUrlHash||[],this.#s=t.options.tpaNamesStorage||[],this.#d=t.options.tpaNamesStorageLocal||[],this.#a=t.options.tpaNamesGuestLink||[],t.store.genGuestLink=(n,s)=>this.genGuestLink(n,s),(o=this.#n.guest_data)!=null&&o.data||(this.#l(),this.#l(!0),this.#g()),this.#T(),this.#b();const e=a.debounce(()=>{this.#f(),this.#m()});t.store.$subscribe(e)}async genGuestLink(t,e){var r;const o=this.#h();e=Object.assign(e,Object.fromEntries(o));const n=await this.#p.gen(t,"fetchColumn").call({},e);if(n!=null&&n.errors)return;await P.setClipboard(n.result);const s=(r=a.useI18n().Common)==null?void 0:r.Guest_link_copied_to_clipboard;a.Core.notice(s+': <a href="'+n.result+'" target="_blank">'+n.result+"</a>","info")}#h(){const t=new Map;return this.#a.forEach(e=>{const o=k.camelToSnakeCase(e);t.set(o,this.#t[e])}),t}#r(t){if(Object.isFrozen(this))throw"Please, use setOptions only inner commit function";t.forEach((e,o)=>{const n=this.#t[o];if(e!=null&&e!=null&&e.constructor&&e.constructor===n.constructor){if(o.indexOf("date")===0&&!Array.isArray(e)){if(typeof e=="string"&&!/\d\d\d\d-\d\d-\d\d/.test(e))return}this.#t[o]=e}})}#u(t){const e=new Map;return t.forEach((o,n)=>{o!==null&&(o=JSON.stringify(o),e.set(n,o))}),e}#c(t){const e=new Map;return t.forEach((o,n)=>{if(!(o==null||o==="false")){try{if(typeof o=="string"&&!/^\d\d\d\d-\d\d-\d\d$/.test(o)&&(o=JSON.parse(o)),o==null||o==="false")return}catch{}e.set(n,o)}}),e}#g(){let t;try{t=JSON.parse(E.getHash(this.#e))}catch{}if(!t)return;const e=new Map;this.#i.forEach(n=>{const s=t[n];s&&e.set(n,s)});const o=this.#c(e);this.#r(o)}#f(){const t=new Map;this.#i.forEach(n=>{const s=this.#t[n];t.set(n,s)});const e=Object.fromEntries(t),o=JSON.stringify(e);E.setHash(this.#e,o)}#l(t=!1){const e=new Map;let o="state:"+this.#e;t&&(o="state:"+this.#e+":"+location.pathname),this.#s.forEach(s=>{const r=localStorage.getItem(o+":"+s);e.set(s,r)});const n=this.#c(e);this.#r(n)}#m(t=!1){const e=new Map;let o=this.#s,n="state:"+this.#e;t&&(o=this.#d,n="state:"+this.#e+":"+location.pathname),o.forEach(r=>{const c=this.#t[r];e.set(r,c)});const s=this.#u(e);o.forEach(r=>{const c=s.get(r);localStorage.setItem(n+":"+r,c)})}#T(){var s,r,c;const t=(r=(s=this.#n)==null?void 0:s.guest_data)==null?void 0:r.data;if(!t)return;this.#n.id===-1&&(this.#n.positionsReverseDates=t.positionsReverseDates);const e=new Map;this.#a.forEach(l=>{const b=t[l];e.set(l,b)});const o=this.#c(e);this.#r(o);const n=$(".mod_guest_title");if(((c=this.#t.competitorsIds)==null?void 0:c.length)===1&&this.#o.page.data.competitors){let l=this.#o.page.data.competitors.filter(b=>b.id===t.competitorsIds[0]);l.length&&($("a",n).attr("href","http://"+l[0].url),$("a",n).text(l[0].name))}}#b(){this.#t.regionsIndexes&&h.watch(this.#t,t=>{if(!t.length)return;t.forEach((n,s)=>t[s]=n);const e=TplProjectSelectorRegion.genSearchersMap(),o=[];e.forEach(n=>{n.regions.forEach(s=>{s.index!==-1&&o.push(s.index)})}),this.#t.regionsIndexes=t.filter(n=>o.includes(n))},{immediate:!0}),this.#t.competitorsIds&&h.watch(this.#t,t=>{if(!t.length)return;t.forEach((o,n)=>o[n]=o);const e=[this.#o.page.data.project.id];this.#o.page.data.project.competitors.forEach(o=>{o.on>=0&&e.push(o.id)}),this.#t.competitorsIds=t.filter(o=>e.includes(o))})}}const _=i=>{var e,o,n,s;const t=i;!((e=t.options.tpaNamesUrlHash)!=null&&e.length)&&!((o=t.options.tpaNamesStorage)!=null&&o.length)&&!((n=t.options.tpaNamesStorageLocal)!=null&&n.length)&&!((s=t.options.tpaNamesGuestLink)!=null&&s.length)||new R(t)};p.Core=a.Core,p.i18nPlugin=a.i18n,p.useI18n=a.useI18n,p.useI18nLang=a.useI18nLang,p.useI18nSetLang=a.useI18nSetLang,p.corePlugin=F,p.piniaTPAPlugin=_,Object.defineProperty(p,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=app.amd.js.map
|
package/core/app.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { C as r, E as b, T as v, f as S, g as k, h as L, j as O, k as I, l as y, m as P, n as N, o as _, p as M, q as H, r as U, s as F, e as R } from "../.chunks/forms-
|
|
2
|
-
import { v as ct, u as pt, t as dt } from "../.chunks/forms-
|
|
1
|
+
import { C as r, E as b, T as v, f as S, g as k, h as L, j as O, k as I, l as y, m as P, n as N, o as _, p as M, q as H, r as U, s as F, e as R } from "../.chunks/forms-CIeG_5LP.es.js";
|
|
2
|
+
import { v as ct, u as pt, t as dt } from "../.chunks/forms-CIeG_5LP.es.js";
|
|
3
3
|
import { defineAsyncComponent as A, watch as T } from "vue";
|
|
4
4
|
import { TopPopupWorker as d } from "../popup/worker.js";
|
|
5
5
|
import { setClipboard as C } from "../utils/clipboard.js";
|
|
@@ -135,7 +135,7 @@ const f = /* @__PURE__ */ new Map(), Y = (n, t) => {
|
|
|
135
135
|
var o;
|
|
136
136
|
(o = g(n)) == null || o.tooltip("destroy");
|
|
137
137
|
}
|
|
138
|
-
}, Q = A(() => import("../.chunks/notice-
|
|
138
|
+
}, Q = A(() => import("../.chunks/notice-BA5zBdx2.es.js")), nt = {
|
|
139
139
|
install: (n, t) => {
|
|
140
140
|
n.config.globalProperties.$core = r;
|
|
141
141
|
for (const e in t)
|
package/core/core/core.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export default class Core {
|
|
|
23
23
|
static widthForMobile: number;
|
|
24
24
|
static themeName: string;
|
|
25
25
|
static matchMediaIsMobile?: MediaQueryList;
|
|
26
|
-
static
|
|
26
|
+
static $?: JQueryStatic | undefined;
|
|
27
27
|
static Events: {
|
|
28
28
|
addOnReize: (listener: (this: HTMLElement, e: UIEvent & {
|
|
29
29
|
topEvent: {
|
package/core/utils/date.d.ts
CHANGED
|
@@ -28,9 +28,8 @@ export declare function stringToDate(date: string): Date;
|
|
|
28
28
|
* - 2: дата и часы с минутами
|
|
29
29
|
* - 3: дата и часы с минутами и секундами
|
|
30
30
|
* - auto: часы и минуты будут выводиться только, если они не равны нулю
|
|
31
|
-
* @param timezoneOffset - смещение часового пояса в минутах, https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Date/getTimezoneOffset
|
|
32
31
|
*/
|
|
33
|
-
export declare function genDate(timestamp: number | undefined, useFormat?: boolean, time?: 0 | 1 | 2 | 3 | 'auto'
|
|
32
|
+
export declare function genDate(timestamp: number | undefined, useFormat?: boolean, time?: 0 | 1 | 2 | 3 | 'auto'): string;
|
|
34
33
|
/**
|
|
35
34
|
* Генерация даты-строки (время московское) из миллисекунд (UTC), в формате Y-m-d H:i:s
|
|
36
35
|
* @param ms - дата в мс, если не передана, берется дата на момент вызова функции
|
package/core/utils/route.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export declare const getHash: (name: string, locationHash?: string) => string;
|
|
|
9
9
|
/**
|
|
10
10
|
* Установить значение в хэш параметр страницы
|
|
11
11
|
*/
|
|
12
|
-
export declare const setHash: (name: string, value: string | null, replaceState?: boolean) => void;
|
|
12
|
+
export declare const setHash: (name: string, value: string | number | null, replaceState?: boolean) => void;
|
|
13
13
|
/**
|
|
14
14
|
* Удалить значение из хэш параметра страницы
|
|
15
15
|
*/
|
|
@@ -17,7 +17,7 @@ export declare const delHash: (name: string, value: string, replaceState?: boole
|
|
|
17
17
|
/**
|
|
18
18
|
* Сгенерировать новое значение для хэш параметра страницы с указанным параметром
|
|
19
19
|
*/
|
|
20
|
-
export declare const genHash: (name: string, value: string | null, locationHash?: string) => string;
|
|
20
|
+
export declare const genHash: (name: string, value: string | number | null, locationHash?: string) => string;
|
|
21
21
|
/**
|
|
22
22
|
* Установить значения в хэш параметр страницы
|
|
23
23
|
*/
|
package/core/utils/scroll.d.ts
CHANGED
|
@@ -3,9 +3,22 @@
|
|
|
3
3
|
* @packageDocumentation
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Добавить классы модификаторов тени в зависимости от скролла элемента
|
|
7
|
+
*
|
|
8
|
+
* @todo Сделать приватной
|
|
7
9
|
*/
|
|
8
10
|
export declare const genHasScroll: (el: HTMLElement) => void;
|
|
11
|
+
/**
|
|
12
|
+
* Добавить отображение тени при появления скролла у элемента
|
|
13
|
+
*
|
|
14
|
+
* Будут добавоены события для усатновки модификаторов тени в зависимости от скролла элемента
|
|
15
|
+
*
|
|
16
|
+
* Модификаторы:
|
|
17
|
+
* - top-scrollShadow
|
|
18
|
+
* - top-scrollShadow-started
|
|
19
|
+
* - top-scrollShadow-finished
|
|
20
|
+
*/
|
|
21
|
+
export declare const connectScrollShadow: (els: HTMLElement | HTMLElement[]) => void;
|
|
9
22
|
/**
|
|
10
23
|
* Посчитать глубину скролла (процент на сколько проскроллена страница)
|
|
11
24
|
*
|
package/forms/forms.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","../.chunks/forms-
|
|
1
|
+
define(["require","exports","../.chunks/forms-DHMogHmw.amd"],function(n,T,a){"use strict";if(typeof e>"u")var e=window.Vue;T.TopAvatar=a.TopAvatar,T.TopButton=a.TopButton,T.TopCheckbox=a.TopCheckbox,T.TopControlLabel=a.TopControlLabel,T.TopHint=a.TopHint,T.TopInput=a.TopInput,T.TopInputDate=a.TopInputDate,T.TopInputRange=a.TopInputRange,T.TopLoadbar=a.TopLoadbar,T.TopRadio=a.TopRadio,T.TopSelect=a.TopSelect,T.TopSwitcher=a.TopSwitcher,T.TopTextarea=a.TopTextarea,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=forms.amd.js.map
|
package/forms/forms.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { T as p, f as T, g as s, h as t, j as e, k as n, l as r, m as l, n as u, o as b, p as c, q as h, r as i } from "../.chunks/forms-
|
|
1
|
+
import { T as p, f as T, g as s, h as t, j as e, k as n, l as r, m as l, n as u, o as b, p as c, q as h, r as i } from "../.chunks/forms-CIeG_5LP.es.js";
|
|
2
2
|
export {
|
|
3
3
|
p as TopAvatar,
|
|
4
4
|
T as TopButton,
|
package/formsExt/formsExt.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","vue","../.chunks/forms-BNcuNKOv.amd","../utils/keyboard.amd","../popup/popup.amd","../.chunks/menu.vue_vue_type_style_index_0_lang-BavNCmtc.amd","../require/css.amd!../assets/formsExt.css"],function(Y,w,e,V,S,C,I){"use strict";if(typeof e>"u")var e=window.Vue;const N={class:"top-editArea_footer"},M=e.defineComponent({__name:"editArea",props:{defaultValue:{default:""},title:{},cancelText:{default:"Cancel"},submitText:{default:"Send"},closeText:{default:"Close"},isFocused:{type:Boolean},forceShowCloseBtn:{type:Boolean},attachToKeyboard:{type:Boolean},modelValue:{},name:{},placeholder:{},rows:{},minHeight:{},expandable:{type:Boolean,default:!0},disabled:{type:Boolean},readonly:{type:Boolean},isError:{type:Boolean},hint:{}},emits:["submit","close","clickOnTitle"],setup(i,{emit:c}){const t=i,n=c,m=e.ref(t.defaultValue),f=e.ref(t.isFocused),s=e.computed(()=>m.value!==t.defaultValue),p=e.computed(()=>t.attachToKeyboard?"":t.forceShowCloseBtn&&!s.value?t.closeText:t.cancelText),u=d=>{n("submit",d),m.value=t.defaultValue},v=()=>{if(t.forceShowCloseBtn&&!s.value){n("close");return}m.value=t.defaultValue},h=()=>{t.attachToKeyboard&&n("clickOnTitle")};return(d,l)=>{const B=e.resolveDirective("top-focus");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-editArea":!0,"top-editArea-attachedToKeyboard":d.attachToKeyboard})},[d.title?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-editArea_title",onClick:l[0]||(l[0]=y=>h())},e.toDisplayString(d.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass({"top-editArea_form":!0,"top-error":d.isError,"top-focus":f.value})},[e.withDirectives(e.createVNode(V._sfc_main$3,{modelValue:m.value,"onUpdate:modelValue":l[1]||(l[1]=y=>m.value=y),name:d.name,placeholder:d.placeholder,rows:d.rows,minHeight:d.minHeight,expandable:d.expandable,disabled:d.disabled,readonly:d.readonly,isError:d.isError,hint:d.hint,class:"top-editArea_element",onFocus:l[2]||(l[2]=()=>f.value=!0),onBlur:l[3]||(l[3]=()=>f.value=!1),onKeyup:[e.withKeys(v,["esc"]),l[4]||(l[4]=e.withKeys(e.withModifiers(y=>u(m.value),["ctrl"]),["enter"]))]},null,8,["modelValue","name","placeholder","rows","minHeight","expandable","disabled","readonly","isError","hint"]),[[B,{disabled:!f.value}]]),e.createElementVNode("div",N,[s.value||d.forceShowCloseBtn?(e.openBlock(),e.createBlock(V._sfc_main,{key:0,class:"top-editArea_button",color:"theme",styling:"soft",icon:d.attachToKeyboard?"":"",onClick:v},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.value),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createBlock(V._sfc_main,{key:1,class:"top-editArea_button",icon:d.attachToKeyboard?"":"",onClick:l[5]||(l[5]=y=>u(m.value))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.attachToKeyboard?"":d.submitText),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0)])],2)],2)}}}),$={class:"top-editInput"},L=e.defineComponent({__name:"editInput",props:{modelValue:{},input:{},button:{}},emits:["update:modelValue"],setup(i,{emit:c}){const t=i,n=e.ref(t.modelValue);e.watch(e.toRef(t.modelValue),()=>{n.value=t.modelValue});const m=c,f=()=>{m("update:modelValue",n.value)};return(s,p)=>(e.openBlock(),e.createElementBlock("div",$,[e.createVNode(V._sfc_main$2,e.mergeProps(s.input,{onKeydownCapture:p[0]||(p[0]=e.withKeys(e.withModifiers(u=>n.value=s.modelValue,["stop"]),["esc"])),onKeydown:e.withKeys(e.withModifiers(f,["stop"]),["enter"]),modelValue:n.value,"onUpdate:modelValue":p[1]||(p[1]=u=>n.value=u)}),null,16,["onKeydown","modelValue"]),n.value!==s.modelValue?(e.openBlock(),e.createBlock(V._sfc_main,e.mergeProps({key:0,icon:"",styling:"soft"},s.button,{onClick:f}),null,16)):e.createCommentVNode("",!0)]))}}),K=["data-top-icon","onClick"],P={key:0,class:"top-radioGroup_circle"},O=["value","disabled"],_=e.defineComponent({__name:"radioGroup",props:e.mergeModels({modelValue:{},radiosProps:{},showIndicator:{type:Boolean},size:{default:"s"},isError:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:e.mergeModels(["update:modelValue"],["update:modelValue"]),setup(i,{emit:c}){const t=e.useModel(i,"modelValue"),n=i,m=e.ref(null);e.watch(t,()=>{var s,p,u,v,h;(s=n.radiosProps)!=null&&s.some(d=>d.value===t.value)||(t.value=((u=(p=n.radiosProps)==null?void 0:p[0])==null?void 0:u.value)??""),(h=(v=m.value)==null?void 0:v.querySelector(".radioGroup_item-selected"))==null||h.scrollIntoView()},{immediate:!0});const f="radioGroup-"+Math.random();return(s,p)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"elRef",ref:m,class:e.normalizeClass({"top-radioGroup":!0,"top-scrollBarXHidding":!0,["top-size_"+s.size]:!!s.size,"top-error":s.isError})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.radiosProps,u=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass({"top-radioGroup_item-selected":u.value===t.value,"top-radioGroup_item":!0,"top-forms-focusable":!0,"top-disabled":u.disabled}),"data-top-icon":u.icon,onClick:v=>t.value=u.value},[e.createTextVNode(e.toDisplayString(u.title)+" ",1),s.showIndicator?(e.openBlock(),e.createElementBlock("span",P)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p[0]||(p[0]=v=>t.value=v),name:f,type:"radio",class:e.normalizeClass({"top-unvisible":!0}),value:u.value,disabled:u.disabled},null,8,O),[[e.vModelRadio,t.value]])],10,K))),256))],2))}}),z=(i,c,t)=>{const n=e.ref([]),m=e.ref(!1);let f="",s;i&&!i.params.limit&&(i.params.limit=100);const p=async()=>{if(!i)return;let l,B;if(t&&(i.cache??=new Map,B=JSON.stringify(i.params),l=i.cache.get(B),l))return l;if(m.value=!0,l=await i.call(),m.value=!1,l.errors)return;if(!Array.isArray(l.result)){console.warn("В result ожидался массив");return}const y=l.result.findIndex(b=>b.id===void 0||b.name===void 0);if(y!==-1){console.warn(`В result[${y}] нет id или name`);return}return t&&i.cache.set(B,l),l},u=async()=>{if(!i)return;i.params.offset=0,i.params.search=f;const l=await p();l&&(s=l.nextOffset,n.value=l.result)},v=async()=>{if(!i||!s||m.value)return;i.params.offset=s,i.params.search=f;const l=await p();l&&(s=l.nextOffset,n.value=n.value.concat(l.result))},h=V.debounce(()=>u(),200);return{items:n,isLoading:m,loadAppend:v,setSearchTextAndLoad:(l,B=!0)=>{i&&(l.length<c||l===f&&n.value.length||(f=l,B?h():u()))}}},D={class:"top-selector2_itemMulti top-ellipsis"},F=e.defineComponent({__name:"itemMulti",props:{id:{},name:{}},emits:["delete"],setup(i){return(c,t)=>(e.openBlock(),e.createElementBlock("div",D,[e.createTextVNode(e.toDisplayString(c.name)+" ",1),e.createElementVNode("span",{class:"top-selector2_itemMultiDelete","data-top-icon":"",onClick:t[0]||(t[0]=n=>c.$emit("delete",c.id)),onMousedown:t[1]||(t[1]=e.withModifiers(()=>{},["stop"]))},null,32)]))}}),G={key:0,class:"top-selector2_activeItems"},H={key:1,class:"top-selector2_activeName top-ellipsis"},U=e.defineComponent({__name:"selector2",props:e.mergeModels({modelValue:{},items:{default:()=>[]},multiselect:{type:Boolean},disabled:{type:Boolean},size:{default:"s"},isError:{type:Boolean},apiRequest:{},minLength:{default:0},useCache:{type:Boolean},appendSearchToResult:{type:Boolean},appendAllValue:{type:Boolean},addChanger:{type:Boolean},placeholder:{},showSelectedInInput:{type:Boolean,default:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(i){const c=i,t=e.useModel(i,"modelValue"),n=e.ref(""),m={id:0,name:"Все"},f=e.ref(null),s=()=>{var o;return(o=f.value)==null?void 0:o.popup};window.__STORYBOOK_PREVIEW__&&!c.modelValue&&e.watch(()=>c.multiselect,()=>{t.value=c.multiselect?[]:{id:null,name:""}},{immediate:!0});const p=z(c.apiRequest,c.minLength,c.useCache),u=e.computed(()=>{const o=[];return!c.multiselect&&c.appendAllValue&&o.push(m),c.items.forEach(r=>o.push({...r})),o}),v=(o,r=!0)=>r&&o.id===null?Array.isArray(t.value)?t.value.some(a=>a.id===o.id&&a.name===o.name):o.name===t.value.name:Array.isArray(t.value)?t.value.some(a=>a.id===o.id):o.id===t.value.id,h=e.computed(()=>{const o=n.value.toLowerCase(),r=S.invertKeyboardLayout(o);let a=[];return u.value.forEach(k=>{const g=k.name.toLowerCase();(k.id===Number(o)||g.includes(o)||g.includes(r))&&(g===o||g===r?a.unshift(k):a.push(k))}),a.push(...p.items.value),c.appendSearchToResult&&n.value&&(!a.length||a[0].name.toLowerCase()!==o)&&a.push({id:null,name:n.value}),c.multiselect&&(a=a.filter(k=>!v(k))),a}),d=async o=>{var r,a;if(c.multiselect){if(!Array.isArray(t.value)||v(o))return;const k=[...t.value];k.push({...o}),t.value=k,V.Core.state.isMobile?(r=s())==null||r.close():setTimeout(()=>{var g,T,A,E;(g=s())==null||g.recalcPosition(),(E=(A=(T=s())==null?void 0:T.elPopupWidget)==null?void 0:A.querySelector("input"))==null||E.focus(),n.value&&(h.value.length||(n.value="",p.items.value=[]))})}else n.value&&(n.value="",p.items.value=[]),JSON.stringify(o)!==JSON.stringify(t.value)&&(t.value={...o}),(a=s())==null||a.close()},l=()=>{if(!Array.isArray(t.value)){const r=(u.value.findIndex(a=>a.id===t.value.id)+1)%u.value.length;t.value={...u.value[r]}}},B=async o=>{Array.isArray(t.value)&&(t.value=t.value.filter(r=>r.id!==o),setTimeout(()=>{var r;(r=s())==null||r.recalcPosition()}))},y=e.ref(!1);c.apiRequest&&(e.watch(y,()=>{y.value&&p.setSearchTextAndLoad(n.value,!1)}),e.watch(n,()=>p.setSearchTextAndLoad(n.value)));const b=o=>{const r=o.target;r.scrollTop/(r.scrollHeight-r.offsetHeight)>.8&&p.loadAppend()};return(o,r)=>(e.openBlock(),e.createBlock(e.unref(C.TopPopup),{ref_key:"popupRef",ref:f,onOpen:r[1]||(r[1]=a=>y.value=!0),onClose:r[2]||(r[2]=a=>y.value=!1),onScrollContentList:r[3]||(r[3]=a=>o.apiRequest?b(a):void 0),notch:!1,transitionDuration:0},{opener:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass({"top-selector2":!0,"top-selector2-multiselect":o.multiselect,["top-size_"+o.size]:!0,"top-disabled":o.disabled,"top-forms-focusable":!o.disabled,"top-error":o.isError})},[o.multiselect?(e.openBlock(),e.createElementBlock("div",G,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,a=>(e.openBlock(),e.createBlock(F,{id:a.id,name:a.name,onDelete:B},null,8,["id","name"]))),256))])):e.createCommentVNode("",!0),o.multiselect?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",H,e.toDisplayString(Array.isArray(t.value)?"":t.value.name),1)),o.addChanger&&!o.multiselect&&u.value.length>1&&!o.disabled?(e.openBlock(),e.createElementBlock("span",{key:2,class:"top-changer top-changer-selector",onClick:e.withModifiers(l,["stop"])})):e.createCommentVNode("",!0)],2)]),widget:e.withCtx(()=>[e.createVNode(e.unref(C.TopPopupWidgetInput),{title:"Поиск",icon:"",modelValue:n.value,"onUpdate:modelValue":r[0]||(r[0]=a=>n.value=a),isLoading:e.unref(p).isLoading.value,placeholder:!Array.isArray(t.value)&&!o.multiselect&&o.showSelectedInInput?t.value.name:o.placeholder},null,8,["modelValue","isLoading","placeholder"])]),contentList:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,a=>(e.openBlock(),e.createBlock(e.unref(C.TopPopupListItem),{class:e.normalizeClass({"top-active":!Array.isArray(t.value)&&!o.multiselect&&t.value.name===a.name}),key:a.id??void 0,onClick:e.withModifiers(k=>d(a),["stop"])},{default:e.withCtx(()=>[o.$slots.item?e.renderSlot(o.$slots,"item",{key:0,item:a}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(a.name),1)],64))]),_:2},1032,["class","onClick"]))),128)),h.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(C.TopPopupListItem),{key:0,type:"regular"},{default:e.withCtx(()=>r[4]||(r[4]=[e.createTextVNode(" Нет результатов ")])),_:1}))]),_:3},512))}}),W=M,J=L,R=_,j=U,X=I._sfc_main;w.TopEditArea=W,w.TopEditInput=J,w.TopMenu=X,w.TopRadioGroup=R,w.TopSelector2=j,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
define(["require","exports","vue","../.chunks/forms-DHMogHmw.amd","../utils/keyboard.amd","../popup/popup.amd","../.chunks/menu.vue_vue_type_style_index_0_lang-CeoVr4RC.amd","../require/css.amd!../assets/formsExt.css"],function(Y,w,e,V,S,C,I){"use strict";if(typeof e>"u")var e=window.Vue;const N={class:"top-editArea_footer"},M=e.defineComponent({__name:"editArea",props:{defaultValue:{default:""},title:{},cancelText:{default:"Cancel"},submitText:{default:"Send"},closeText:{default:"Close"},isFocused:{type:Boolean},forceShowCloseBtn:{type:Boolean},attachToKeyboard:{type:Boolean},modelValue:{},name:{},placeholder:{},rows:{},minHeight:{},expandable:{type:Boolean,default:!0},disabled:{type:Boolean},readonly:{type:Boolean},isError:{type:Boolean},hint:{}},emits:["submit","close","clickOnTitle"],setup(i,{emit:c}){const t=i,n=c,m=e.ref(t.defaultValue),f=e.ref(t.isFocused),s=e.computed(()=>m.value!==t.defaultValue),p=e.computed(()=>t.attachToKeyboard?"":t.forceShowCloseBtn&&!s.value?t.closeText:t.cancelText),u=d=>{n("submit",d),m.value=t.defaultValue},v=()=>{if(t.forceShowCloseBtn&&!s.value){n("close");return}m.value=t.defaultValue},h=()=>{t.attachToKeyboard&&n("clickOnTitle")};return(d,l)=>{const B=e.resolveDirective("top-focus");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-editArea":!0,"top-editArea-attachedToKeyboard":d.attachToKeyboard})},[d.title?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-editArea_title",onClick:l[0]||(l[0]=y=>h())},e.toDisplayString(d.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass({"top-editArea_form":!0,"top-error":d.isError,"top-focus":f.value})},[e.withDirectives(e.createVNode(V._sfc_main$3,{modelValue:m.value,"onUpdate:modelValue":l[1]||(l[1]=y=>m.value=y),name:d.name,placeholder:d.placeholder,rows:d.rows,minHeight:d.minHeight,expandable:d.expandable,disabled:d.disabled,readonly:d.readonly,isError:d.isError,hint:d.hint,class:"top-editArea_element",onFocus:l[2]||(l[2]=()=>f.value=!0),onBlur:l[3]||(l[3]=()=>f.value=!1),onKeyup:[e.withKeys(v,["esc"]),l[4]||(l[4]=e.withKeys(e.withModifiers(y=>u(m.value),["ctrl"]),["enter"]))]},null,8,["modelValue","name","placeholder","rows","minHeight","expandable","disabled","readonly","isError","hint"]),[[B,{disabled:!f.value}]]),e.createElementVNode("div",N,[s.value||d.forceShowCloseBtn?(e.openBlock(),e.createBlock(V._sfc_main,{key:0,class:"top-editArea_button",color:"theme",styling:"soft",icon:d.attachToKeyboard?"":"",onClick:v},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.value),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createBlock(V._sfc_main,{key:1,class:"top-editArea_button",icon:d.attachToKeyboard?"":"",onClick:l[5]||(l[5]=y=>u(m.value))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.attachToKeyboard?"":d.submitText),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0)])],2)],2)}}}),$={class:"top-editInput"},L=e.defineComponent({__name:"editInput",props:{modelValue:{},input:{},button:{}},emits:["update:modelValue"],setup(i,{emit:c}){const t=i,n=e.ref(t.modelValue);e.watch(e.toRef(t.modelValue),()=>{n.value=t.modelValue});const m=c,f=()=>{m("update:modelValue",n.value)};return(s,p)=>(e.openBlock(),e.createElementBlock("div",$,[e.createVNode(V._sfc_main$2,e.mergeProps(s.input,{onKeydownCapture:p[0]||(p[0]=e.withKeys(e.withModifiers(u=>n.value=s.modelValue,["stop"]),["esc"])),onKeydown:e.withKeys(e.withModifiers(f,["stop"]),["enter"]),modelValue:n.value,"onUpdate:modelValue":p[1]||(p[1]=u=>n.value=u)}),null,16,["onKeydown","modelValue"]),n.value!==s.modelValue?(e.openBlock(),e.createBlock(V._sfc_main,e.mergeProps({key:0,icon:"",styling:"soft"},s.button,{onClick:f}),null,16)):e.createCommentVNode("",!0)]))}}),K=["data-top-icon","onClick"],P={key:0,class:"top-radioGroup_circle"},O=["value","disabled"],_=e.defineComponent({__name:"radioGroup",props:e.mergeModels({modelValue:{},radiosProps:{},showIndicator:{type:Boolean},size:{default:"s"},isError:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:e.mergeModels(["update:modelValue"],["update:modelValue"]),setup(i,{emit:c}){const t=e.useModel(i,"modelValue"),n=i,m=e.ref(null);e.watch(t,()=>{var s,p,u,v,h;(s=n.radiosProps)!=null&&s.some(d=>d.value===t.value)||(t.value=((u=(p=n.radiosProps)==null?void 0:p[0])==null?void 0:u.value)??""),(h=(v=m.value)==null?void 0:v.querySelector(".radioGroup_item-selected"))==null||h.scrollIntoView()},{immediate:!0});const f="radioGroup-"+Math.random();return(s,p)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"elRef",ref:m,class:e.normalizeClass({"top-radioGroup":!0,"top-scrollBarXHidding":!0,["top-size_"+s.size]:!!s.size,"top-error":s.isError})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.radiosProps,u=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass({"top-radioGroup_item-selected":u.value===t.value,"top-radioGroup_item":!0,"top-forms-focusable":!0,"top-disabled":u.disabled}),"data-top-icon":u.icon,onClick:v=>t.value=u.value},[e.createTextVNode(e.toDisplayString(u.title)+" ",1),s.showIndicator?(e.openBlock(),e.createElementBlock("span",P)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p[0]||(p[0]=v=>t.value=v),name:f,type:"radio",class:e.normalizeClass({"top-unvisible":!0}),value:u.value,disabled:u.disabled},null,8,O),[[e.vModelRadio,t.value]])],10,K))),256))],2))}}),z=(i,c,t)=>{const n=e.ref([]),m=e.ref(!1);let f="",s;i&&!i.params.limit&&(i.params.limit=100);const p=async()=>{if(!i)return;let l,B;if(t&&(i.cache??=new Map,B=JSON.stringify(i.params),l=i.cache.get(B),l))return l;if(m.value=!0,l=await i.call(),m.value=!1,l.errors)return;if(!Array.isArray(l.result)){console.warn("В result ожидался массив");return}const y=l.result.findIndex(b=>b.id===void 0||b.name===void 0);if(y!==-1){console.warn(`В result[${y}] нет id или name`);return}return t&&i.cache.set(B,l),l},u=async()=>{if(!i)return;i.params.offset=0,i.params.search=f;const l=await p();l&&(s=l.nextOffset,n.value=l.result)},v=async()=>{if(!i||!s||m.value)return;i.params.offset=s,i.params.search=f;const l=await p();l&&(s=l.nextOffset,n.value=n.value.concat(l.result))},h=V.debounce(()=>u(),200);return{items:n,isLoading:m,loadAppend:v,setSearchTextAndLoad:(l,B=!0)=>{i&&(l.length<c||l===f&&n.value.length||(f=l,B?h():u()))}}},D={class:"top-selector2_itemMulti top-ellipsis"},F=e.defineComponent({__name:"itemMulti",props:{id:{},name:{}},emits:["delete"],setup(i){return(c,t)=>(e.openBlock(),e.createElementBlock("div",D,[e.createTextVNode(e.toDisplayString(c.name)+" ",1),e.createElementVNode("span",{class:"top-selector2_itemMultiDelete","data-top-icon":"",onClick:t[0]||(t[0]=n=>c.$emit("delete",c.id)),onMousedown:t[1]||(t[1]=e.withModifiers(()=>{},["stop"]))},null,32)]))}}),G={key:0,class:"top-selector2_activeItems"},H={key:1,class:"top-selector2_activeName top-ellipsis"},U=e.defineComponent({__name:"selector2",props:e.mergeModels({modelValue:{},items:{default:()=>[]},multiselect:{type:Boolean},disabled:{type:Boolean},size:{default:"s"},isError:{type:Boolean},apiRequest:{},minLength:{default:0},useCache:{type:Boolean},appendSearchToResult:{type:Boolean},appendAllValue:{type:Boolean},addChanger:{type:Boolean},placeholder:{},showSelectedInInput:{type:Boolean,default:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(i){const c=i,t=e.useModel(i,"modelValue"),n=e.ref(""),m={id:0,name:"Все"},f=e.ref(null),s=()=>{var o;return(o=f.value)==null?void 0:o.popup};window.__STORYBOOK_PREVIEW__&&!c.modelValue&&e.watch(()=>c.multiselect,()=>{t.value=c.multiselect?[]:{id:null,name:""}},{immediate:!0});const p=z(c.apiRequest,c.minLength,c.useCache),u=e.computed(()=>{const o=[];return!c.multiselect&&c.appendAllValue&&o.push(m),c.items.forEach(r=>o.push({...r})),o}),v=(o,r=!0)=>r&&o.id===null?Array.isArray(t.value)?t.value.some(a=>a.id===o.id&&a.name===o.name):o.name===t.value.name:Array.isArray(t.value)?t.value.some(a=>a.id===o.id):o.id===t.value.id,h=e.computed(()=>{const o=n.value.toLowerCase(),r=S.invertKeyboardLayout(o);let a=[];return u.value.forEach(k=>{const g=k.name.toLowerCase();(k.id===Number(o)||g.includes(o)||g.includes(r))&&(g===o||g===r?a.unshift(k):a.push(k))}),a.push(...p.items.value),c.appendSearchToResult&&n.value&&(!a.length||a[0].name.toLowerCase()!==o)&&a.push({id:null,name:n.value}),c.multiselect&&(a=a.filter(k=>!v(k))),a}),d=async o=>{var r,a;if(c.multiselect){if(!Array.isArray(t.value)||v(o))return;const k=[...t.value];k.push({...o}),t.value=k,V.Core.state.isMobile?(r=s())==null||r.close():setTimeout(()=>{var g,T,A,E;(g=s())==null||g.recalcPosition(),(E=(A=(T=s())==null?void 0:T.elPopupWidget)==null?void 0:A.querySelector("input"))==null||E.focus(),n.value&&(h.value.length||(n.value="",p.items.value=[]))})}else n.value&&(n.value="",p.items.value=[]),JSON.stringify(o)!==JSON.stringify(t.value)&&(t.value={...o}),(a=s())==null||a.close()},l=()=>{if(!Array.isArray(t.value)){const r=(u.value.findIndex(a=>a.id===t.value.id)+1)%u.value.length;t.value={...u.value[r]}}},B=async o=>{Array.isArray(t.value)&&(t.value=t.value.filter(r=>r.id!==o),setTimeout(()=>{var r;(r=s())==null||r.recalcPosition()}))},y=e.ref(!1);c.apiRequest&&(e.watch(y,()=>{y.value&&p.setSearchTextAndLoad(n.value,!1)}),e.watch(n,()=>p.setSearchTextAndLoad(n.value)));const b=o=>{const r=o.target;r.scrollTop/(r.scrollHeight-r.offsetHeight)>.8&&p.loadAppend()};return(o,r)=>(e.openBlock(),e.createBlock(e.unref(C.TopPopup),{ref_key:"popupRef",ref:f,onOpen:r[1]||(r[1]=a=>y.value=!0),onClose:r[2]||(r[2]=a=>y.value=!1),onScrollContentList:r[3]||(r[3]=a=>o.apiRequest?b(a):void 0),notch:!1,transitionDuration:0},{opener:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass({"top-selector2":!0,"top-selector2-multiselect":o.multiselect,["top-size_"+o.size]:!0,"top-disabled":o.disabled,"top-forms-focusable":!o.disabled,"top-error":o.isError})},[o.multiselect?(e.openBlock(),e.createElementBlock("div",G,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,a=>(e.openBlock(),e.createBlock(F,{id:a.id,name:a.name,onDelete:B},null,8,["id","name"]))),256))])):e.createCommentVNode("",!0),o.multiselect?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",H,e.toDisplayString(Array.isArray(t.value)?"":t.value.name),1)),o.addChanger&&!o.multiselect&&u.value.length>1&&!o.disabled?(e.openBlock(),e.createElementBlock("span",{key:2,class:"top-changer top-changer-selector",onClick:e.withModifiers(l,["stop"])})):e.createCommentVNode("",!0)],2)]),widget:e.withCtx(()=>[e.createVNode(e.unref(C.TopPopupWidgetInput),{title:"Поиск",icon:"",modelValue:n.value,"onUpdate:modelValue":r[0]||(r[0]=a=>n.value=a),isLoading:e.unref(p).isLoading.value,placeholder:!Array.isArray(t.value)&&!o.multiselect&&o.showSelectedInInput?t.value.name:o.placeholder},null,8,["modelValue","isLoading","placeholder"])]),contentList:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,a=>(e.openBlock(),e.createBlock(e.unref(C.TopPopupListItem),{class:e.normalizeClass({"top-active":!Array.isArray(t.value)&&!o.multiselect&&t.value.name===a.name}),key:a.id??void 0,onClick:e.withModifiers(k=>d(a),["stop"])},{default:e.withCtx(()=>[o.$slots.item?e.renderSlot(o.$slots,"item",{key:0,item:a}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(a.name),1)],64))]),_:2},1032,["class","onClick"]))),128)),h.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(C.TopPopupListItem),{key:0,type:"regular"},{default:e.withCtx(()=>r[4]||(r[4]=[e.createTextVNode(" Нет результатов ")])),_:1}))]),_:3},512))}}),W=M,J=L,R=_,j=U,X=I._sfc_main;w.TopEditArea=W,w.TopEditInput=J,w.TopMenu=X,w.TopRadioGroup=R,w.TopSelector2=j,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=formsExt.amd.js.map
|
package/formsExt/formsExt.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Core as j } from "../core/app.js";
|
|
2
2
|
import { defineComponent as P, ref as T, computed as N, resolveDirective as Z, openBlock as c, createElementBlock as v, normalizeClass as S, toDisplayString as B, createCommentVNode as A, createElementVNode as K, withDirectives as X, createVNode as H, withKeys as _, withModifiers as I, createBlock as k, withCtx as C, createTextVNode as $, watch as E, toRef as q, mergeProps as J, mergeModels as z, useModel as Y, Fragment as O, renderList as G, vModelRadio as x, unref as L, renderSlot as ee } from "vue";
|
|
3
|
-
import { w as te, _ as D, c as oe, s as le, C as ae } from "../.chunks/forms-
|
|
3
|
+
import { w as te, _ as D, c as oe, s as le, C as ae } from "../.chunks/forms-CIeG_5LP.es.js";
|
|
4
4
|
import { invertKeyboardLayout as se } from "../utils/keyboard.js";
|
|
5
5
|
import { TopPopup as re, TopPopupWidgetInput as ne, TopPopupListItem as R } from "../popup/popup.js";
|
|
6
|
-
import { _ as ie } from "../.chunks/menu.vue_vue_type_style_index_0_lang-
|
|
6
|
+
import { _ as ie } from "../.chunks/menu.vue_vue_type_style_index_0_lang-uGV-A-kW.es.js";
|
|
7
7
|
const Q = ["../assets/formsExt.css"].map((r) => import.meta.resolve(r));
|
|
8
8
|
j.insertCSSLinkToPage(Q, !0);
|
|
9
9
|
const ue = { class: "top-editArea_footer" }, de = /* @__PURE__ */ P({
|
package/package.json
CHANGED
package/popup/popup.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","../.chunks/listItem.vue_vue_type_script_setup_true_lang-
|
|
1
|
+
define(["require","exports","../.chunks/listItem.vue_vue_type_script_setup_true_lang-DQXATE8-.amd","vue","../.chunks/forms-DHMogHmw.amd","../require/css.amd!../assets/popup.css"],function(h,p,f,e,c){"use strict";if(typeof e>"u")var e=window.Vue;const $=e.defineComponent({__name:"widgetInput",props:e.mergeModels({modelValue:{},name:{},disabled:{type:Boolean},readonly:{type:Boolean},modificator:{},size:{},isError:{type:Boolean},isLoading:{type:Boolean},icon:{},icon2:{},addCleaner:{type:Boolean,default:!0},title:{},captionType:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(u){const d=e.useModel(u,"modelValue");return(r,o)=>(e.openBlock(),e.createBlock(c._sfc_main$2,e.mergeProps(r.$props,{modificator:"popupWidgetInput",modelValue:d.value,"onUpdate:modelValue":o[0]||(o[0]=l=>d.value=l)}),null,16,["modelValue"]))}}),S=e.defineComponent({__name:"alert",props:{submitText:{},id:{},class:{},transitionDuration:{},footerSupportLink:{},pos:{},notch:{type:Boolean},openByHover:{type:Boolean},posBy:{}},emits:["open","close","scrollContentList"],setup(u){const r={...u,submitText:void 0};return delete r.submitText,(o,l)=>(e.openBlock(),e.createBlock(f._sfc_main,e.mergeProps({class:"top-popupAlert"},r,{onOpen:l[0]||(l[0]=s=>o.$emit("open",s)),onClose:l[1]||(l[1]=s=>o.$emit("close",s)),onScrollContentList:l[2]||(l[2]=(...s)=>o.$emit("scrollContentList",...s))}),e.createSlots({opener:e.withCtx(()=>[e.renderSlot(o.$slots,"opener")]),footer:e.withCtx(()=>[e.renderSlot(o.$slots,"footer"),e.createVNode(c._sfc_main,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.submitText||o.$i18n.Common.Close),1)]),_:1})]),_:2},[o.$slots.header?{name:"header",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"header")]),key:"0"}:void 0,o.$slots.default?{name:"content",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),key:"1"}:void 0]),1040))}}),y=e.defineComponent({__name:"confirm",props:{cancelText:{},submitText:{},isWarning:{type:Boolean},id:{},class:{},transitionDuration:{},footerSupportLink:{},pos:{},notch:{type:Boolean},openByHover:{type:Boolean},posBy:{}},emits:["open","close","scrollContentList","submit"],setup(u,{emit:d}){const r=u,o=d,l=e.ref(!1),s=()=>{l.value=!0,o("submit")},C=n=>{if(l.value){l.value=!1;return}o("close",n)},T={...r,submitText:void 0,cancelText:void 0,isWarning:void 0};return delete T.submitText,delete T.cancelText,delete T.isWarning,(n,i)=>(e.openBlock(),e.createBlock(f._sfc_main,e.mergeProps({class:"top-popupConfirm"},T,{onOpen:i[0]||(i[0]=t=>n.$emit("open",t)),onClose:i[1]||(i[1]=t=>C(t)),onScrollContentList:i[2]||(i[2]=(...t)=>n.$emit("scrollContentList",...t))}),e.createSlots({opener:e.withCtx(()=>[e.renderSlot(n.$slots,"opener")]),footer:e.withCtx(()=>[e.renderSlot(n.$slots,"footer"),e.createVNode(c._sfc_main,{color:"theme"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.cancelText||n.$i18n.Common.Cancel),1)]),_:1}),e.createVNode(c._sfc_main,{onClick:s,color:n.isWarning?"red":"blue"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.submitText||n.$i18n.Common.Continue),1)]),_:1},8,["color"])]),_:2},[n.$slots.header?{name:"header",fn:e.withCtx(()=>[e.renderSlot(n.$slots,"header")]),key:"0"}:void 0,n.$slots.default?{name:"content",fn:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),key:"1"}:void 0]),1040))}}),V=e.defineComponent({__name:"prompt",props:{submitText:{},cancelText:{},defaultValue:{},id:{},class:{},transitionDuration:{},footerSupportLink:{},pos:{},notch:{type:Boolean},openByHover:{type:Boolean},posBy:{}},emits:["open","close","scrollContentList","submit"],setup(u,{emit:d}){const r=u,o=d,l=()=>C.value=r.defaultValue??"",s=e.ref(!1),C=e.ref();e.watch(()=>r.defaultValue,()=>l(),{immediate:!0});const T=()=>{s.value=!0},n=t=>{if(s.value){s.value=!1,o("submit",C.value),l();return}l(),o("close",t)},i={...r,submitText:void 0,cancelText:void 0,defaultValue:void 0};return delete i.submitText,delete i.cancelText,delete i.defaultValue,(t,a)=>(e.openBlock(),e.createBlock(f._sfc_main,e.mergeProps({class:"top-popupPrompt"},i,{onOpen:a[1]||(a[1]=m=>t.$emit("open",m)),onClose:a[2]||(a[2]=m=>n(m)),onScrollContentList:a[3]||(a[3]=(...m)=>t.$emit("scrollContentList",...m))}),e.createSlots({opener:e.withCtx(()=>[e.renderSlot(t.$slots,"opener")]),footer:e.withCtx(()=>[e.renderSlot(t.$slots,"footer"),e.createVNode(c._sfc_main,{color:"theme"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.cancelText||t.$i18n.Common.Cancel),1)]),_:1}),e.createVNode(c._sfc_main,{onClick:T},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.submitText||t.$i18n.Common.OK),1)]),_:1})]),_:2},[t.$slots.header?{name:"header",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"header")]),key:"0"}:void 0,t.$slots.default?{name:"content",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"default"),e.createVNode($,{modelValue:C.value,"onUpdate:modelValue":a[0]||(a[0]=m=>C.value=m),modelModifiers:{trim:!0}},null,8,["modelValue"])]),key:"1"}:void 0]),1040))}}),B=f._sfc_main,v=f._sfc_main$1,P=f._sfc_main$2,b=$,k=S,w=y,g=V;p.TopPopup=B,p.TopPopupAlert=k,p.TopPopupConfirm=w,p.TopPopupListItem=P,p.TopPopupOpener=v,p.TopPopupPrompt=g,p.TopPopupWidgetInput=b,Object.defineProperty(p,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=popup.amd.js.map
|
package/popup/popup.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Core as g } from "../core/app.js";
|
|
2
|
-
import { _ as y, a as O, b as D } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-
|
|
2
|
+
import { _ as y, a as O, b as D } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-Gofkt4lj.es.js";
|
|
3
3
|
import { defineComponent as b, mergeModels as I, useModel as M, openBlock as B, createBlock as V, mergeProps as S, createSlots as k, withCtx as n, renderSlot as l, createVNode as c, createTextVNode as C, toDisplayString as T, ref as L, watch as w } from "vue";
|
|
4
|
-
import { c as H, _ as v } from "../.chunks/forms-
|
|
4
|
+
import { c as H, _ as v } from "../.chunks/forms-CIeG_5LP.es.js";
|
|
5
5
|
const W = ["../assets/popup.css"].map((a) => import.meta.resolve(a));
|
|
6
6
|
g.insertCSSLinkToPage(W, !0);
|
|
7
7
|
const P = /* @__PURE__ */ b({
|
package/popup/worker.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","../.chunks/forms-
|
|
1
|
+
define(["require","exports","../.chunks/forms-DHMogHmw.amd","../utils/dom.amd","../utils/scroll.amd"],function(require,exports,forms,utils_dom,utils_scroll){"use strict";if(typeof vue>"u")var vue=window.Vue;class Worker{static noClose=!1;static vueConnectors=new Map;static options={};static getPopup(t){return utils_dom.default.storage(t,"TopPopup")}static getAll(){return utils_dom.default.querySelectorAllArray(document,".top-popup-wrapper")}static getAllVisible(){return utils_dom.default.querySelectorAllVisible(document,".top-popup-wrapper")}static async openByOpener(t){if(!(t instanceof HTMLElement))return;const o={};return o.popup=t.dataset.topPopup,o.id=t.dataset.topPopupId,t.dataset.topPopupP&&(o.p=parseInt(t.dataset.topPopupP)),t.dataset.topPopupPos&&(o.p=parseInt(t.dataset.topPopupPos)),t.dataset.topPopupNotch&&(o.notch=t.dataset.topPopupNotch==="true"||t.dataset.topPopupNotch==="1"),t.dataset.topPopupClass&&(o.class=t.dataset.topPopupClass),t.dataset.topPopupPosBy&&(o.posBy=t.dataset.topPopupPosBy),t.dataset.topPopupFront&&(o.frontSelector=t.dataset.topPopupFront),t.dataset.topPopupInvertX&&(o.invertX=t.dataset.topPopupInvertX==="true"||t.dataset.topPopupInvertX==="1"),t.dataset.topPopupOpenByHover&&(o.openByHover=t.dataset.topPopupOpenByHover==="true"||t.dataset.topPopupOpenByHover==="1"),t.dataset.topPopupUseOriginal&&(o.useOriginal=t.dataset.topPopupUseOriginal==="true"||t.dataset.topPopupUseOriginal==="1"),await Worker.open(t,o)}static async open(elOpener,options){elOpener instanceof HTMLElement&&(elOpener.dataset.topPopupOpened="opened");const{default:Popup}=await new Promise((t,o)=>require(["../.chunks/popup-B-A8QzhE.amd"],t,o));if(forms.Core.$){const $elOpener=forms.Core.$(elOpener);if($elOpener.data("aftershow")){let afterShow=$elOpener.data("aftershow");typeof afterShow=="string"&&(afterShow=eval(afterShow.replace(/\W/g,""))),$elOpener.one("aftershow.top-menu-popup",afterShow)}if($elOpener.data("afterclose")){let afterclose=$elOpener.data("afterclose");typeof afterclose=="string"&&(afterclose=eval(afterclose.replace(/\W/g,""))),$elOpener.one("afterclose.top-menu-popup",afterclose)}}return options.isFullScreen=forms.Core.state.isMobile,new Popup(elOpener,options)}static close(t){const o=Worker.getPopup(t);o&&o.close()}static recalcPosition(t){const o=Worker.getPopup(t);o&&o.elPopupBody instanceof HTMLElement&&(o.recalcPosition(),utils_scroll.genHasScroll(o.elPopupBody))}static scrollToActive(t){if(!utils_dom.default.querySelectorVisible(t,"ul.top-popup_content > li > .top-active"))return;const s=t.querySelector("ul.top-popup_content"),a=utils_dom.default.querySelectorAllVisible(t,"ul.top-popup_content > li");t.classList.add("top-popup-wrapper-no_animate"),setTimeout(()=>t.classList.remove("top-popup-wrapper-no_animate"),100);let p=100;for(const e of a){if(e.querySelector(":scope > .top-active"))break;e instanceof HTMLElement&&(p+=e.offsetHeight)}if(s instanceof HTMLElement){const e=s.offsetHeight;p>e?s.scrollTop=p-e:s.scrollTop=0}}static decoratorBeforeOpen(t){this.options.decoratorBeforeOpen&&this.options.decoratorBeforeOpen(t)}static decoratorAfterOpen(t){this.options.decoratorAfterOpen&&this.options.decoratorAfterOpen(t)}static decoratorIsIgnoreOuterClick(t){return this.options.decoratorIsIgnoreOuterClick?this.options.decoratorIsIgnoreOuterClick(t):!1}static regVueComponent(t,o){if(Worker.vueConnectors.get(t))throw"Vue component Popup use duplicated id: "+t;Worker.vueConnectors.set(t,o)}static unregVueComponent(t){Worker.vueConnectors.delete(t)}static genElPopupOpener(t,o,...s){const a=utils_dom.default.genEl(t,{},...s);a.dataset.topPopup="#"+o.id;for(let p in o){const e="topPopup"+p.charAt(0).toUpperCase()+p.slice(1);a.dataset[e]=o[p]}return a}}exports.TopPopupWorker=Worker,Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=worker.amd.js.map
|
package/popup/worker.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as Core } from "../.chunks/forms-
|
|
1
|
+
import { C as Core } from "../.chunks/forms-CIeG_5LP.es.js";
|
|
2
2
|
import DOM from "../utils/dom.js";
|
|
3
3
|
import { genHasScroll } from "../utils/scroll.js";
|
|
4
4
|
class Worker {
|
|
@@ -45,7 +45,7 @@ class Worker {
|
|
|
45
45
|
*/
|
|
46
46
|
static async open(elOpener, options) {
|
|
47
47
|
elOpener instanceof HTMLElement && (elOpener.dataset.topPopupOpened = "opened");
|
|
48
|
-
const { default: Popup } = await import("../.chunks/popup-
|
|
48
|
+
const { default: Popup } = await import("../.chunks/popup-BnUijzts.es.js");
|
|
49
49
|
if (Core.$) {
|
|
50
50
|
const $elOpener = Core.$(elOpener);
|
|
51
51
|
if ($elOpener.data("aftershow")) {
|
package/project/project.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","vue","../.chunks/forms-BNcuNKOv.amd","../.chunks/listItem.vue_vue_type_script_setup_true_lang-BL4G8x1Y.amd","../.chunks/menu.vue_vue_type_style_index_0_lang-BavNCmtc.amd","../utils/searchers.amd","../utils/dom.amd","../popup/worker.amd","../require/css.amd!../assets/project.css"],function(Ve,V,e,k,E,Z,F,_,ee){"use strict";if(typeof e>"u")var e=window.Vue;const te={class:"top-selectorCompetitors"},ne={class:"top-ellipsis1"},oe=e.defineComponent({__name:"selectorCompetitors",props:e.mergeModels({modelValue:{},items:{},showSelectAllItem:{type:Boolean,default:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const l=t,d=e.useModel(t,"modelValue"),n=e.computed(()=>{if(l.showSelectAllItem)return{icon:"",title:k.useI18n().Common.Select_all,value:"all",content:""}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",te,[e.unref(k.Core).state.isMobile?(e.openBlock(),e.createBlock(E._sfc_main,{key:0},{opener:e.withCtx(()=>[e.createVNode(k._sfc_main,{class:"top-selectorCompetitors_opener",color:"theme",icon:"",icon2:""},{default:e.withCtx(()=>{var r;return[e.createTextVNode(e.toDisplayString((r=i.items.find(c=>{var m;return c.value===((m=d.value)==null?void 0:m[0])}))==null?void 0:r.content),1)]}),_:1})]),contentList:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.items,(r,c)=>{var m;return e.openBlock(),e.createBlock(E._sfc_main$2,{class:e.normalizeClass({"top-active":(m=d.value)==null?void 0:m.includes(r.value)}),"data-top-icon":r.icon,title:r.title,onClick:()=>d.value=[r.value]},{default:e.withCtx(()=>[e.createElementVNode("span",ne,e.toDisplayString(r.content),1)]),_:2},1032,["class","data-top-icon","title","onClick"])}),256))]),_:1})):(e.openBlock(),e.createBlock(Z._sfc_main,{key:1,modelValue:d.value,"onUpdate:modelValue":a[0]||(a[0]=r=>d.value=r),items:i.items,isMultiple:!0,styling:"bar",canBeEmptyMultiple:!1,selectAllItem:n.value},null,8,["modelValue","items","selectAllItem"]))]))}}),S=-2,le={0:"Yandex",1:"Google",2:"go.Mail",4:"YouTube",5:"Bing",6:"Yahoo",7:"Seznam",8:"AppStore",9:"GoogleStore",20:"Yandex.com",21:"Yandex.com.tr"},L={key:S,name:"--",index:S},j={key:S,name:"--",regions:[L],regionByIndex:new Map([[S,L]])},A={key:S,name:"Autoselect",index:S},P={key:S,name:"Autoselect",regions:[A],regionByIndex:new Map([[S,A]])},J={countryCode:"00",depth:1,device:0,key:-1,index:-1,lang:"ru",name:"Without region"},ae=()=>(A.name=k.useI18n().Common.Autoselect,A),re=()=>(ae(),P.name=k.useI18n().Common.Autoselect,console.log(P),P),ie=()=>(J.name=k.useI18n().Keywords.Without_region,J),U=(t=!1,l=!1,d=[])=>{let n;return t?n=de(d):n=G(d),l&&n.set(S,re()),n.size||n.set(S,j),n},G=(t,l=!0,d=[],n=!1)=>{const i=new Map;return t.forEach(a=>{if(!a.enabled||n&&typeof a.key=="number"&&a.key>1)return;const r={...a};r.regionByIndex=new Map,a.regions&&a.regions.forEach(c=>{if(l&&!c.enabled)return;const m={...c};r.regionByIndex&&r.regionByIndex.set(m.index,m)}),!r.regionByIndex.size&&!d.length&&r.regionByIndex.set(L.index,L),typeof r.key=="number"&&i.set(r.key,r)}),d.forEach(a=>{if(i.has(a))return;const r={key:a,name:le[a],regions:[],regionByIndex:new Map};i.set(r.key,r)}),i},de=t=>{const l=G(t,!1,[0,1],!0);if(l.has(2)){const d=l.get(2);d&&(d.regionByIndex=new Map)}return l.forEach(d=>{if(!d.regionByIndex)return;const n={...ie()};d.regionByIndex.set(n.index,n)}),l},Y=(t,l,d=[])=>{const n=U(t,!1,d);let i;return n.forEach(a=>{if(!(l.searcher_key!==void 0&&l.searcher_key!=a.key)&&a.regions&&(a.regions.forEach(r=>{if(!i&&!(l.key!==void 0&&l.key!=r.key)&&!(l.index!==void 0&&l.index!=r.index)&&!(!t&&(l.lang!==void 0&&l.lang!=r.lang||l.device!==void 0&&l.device!=r.device)))return r.searcher_key=a.key,i=r,!1}),i))return!1}),i},se=(t,l)=>{const d=k.useI18n(),n=e.ref(l.value.keys().next().value??S),i=e.computed(()=>{const a=new Map;if(l.value.forEach(r=>{let c={value:r.key,title:r.name};t.addSearcherIcon&&(c.icon=F.getSearcherGIcon(r.key)),a.set(r.key,c)}),t.addCompare&&!a.has(S)){const r={value:"",title:"--------------------",disabled:!0};a.set(r.value,r);const c={value:-1,title:d.Common.Compare};a.set(c.value,c)}return a});return{searcherKey:n,optionBySearcherKey:i}},ue=(t,l)=>{var a,r,c;const d=k.useI18n(),n=e.ref(S);t.modelValue.length===1&&(n.value=t.modelValue[0]),n.value===S&&(t.forFrequency?n.value=((r=(a=l.value)==null?void 0:a.regionByIndex.values().next().value)==null?void 0:r.key)??S:n.value=((c=l.value)==null?void 0:c.regionByIndex.keys().next().value)??S);const i=e.computed(()=>{var f;const m=new Map;return(f=l.value.regionByIndex)==null||f.forEach(v=>{let o=v.name;if(t.forFrequency){const B={value:v.key,title:o};m.has(v.key)||m.set(v.key,B);return}v.device&&(o+=" ("+d.Common["Device_"+v.device]+")");const y=F.getLangLabel(l.value.key||0,v.lang??"");y&&(o+=" / "+y);const I={value:v.index,title:o,icon:v.device?F.getDeviceGIcon(v.device):void 0};m.set(v.index,I)}),m});return e.watch(i,(m,f)=>{var I;if(t.onlySearcher||n.value!==void 0&&m.get(n.value))return;let v=m.keys().next().value;if(n.value===S||v===S){n.value=v;return}let o=((I=f==null?void 0:f.get(n.value))==null?void 0:I.title)||"",y=-1;for(const[B,x]of m.entries()){const h=x.title;if(typeof h!="string"||typeof B=="string")break;if(h===o){v=B;break}const T=new RegExp(` \\((${d.Common.Device_1}|${d.Common.Device_2})\\)`);let C=o,u=3;h.indexOf(C)===-1&&(C=o.replace(/^[^a-zа-я]/i,"").replace(T,""),u--),h.indexOf(C)===-1&&(C=o.replace(/ \/.*/,""),u--),h.indexOf(C)===-1&&(C=o.replace(/ \/.*/,""),C=C.replace(/^[^a-zа-я]/i,"").replace(T,""),u--),h.indexOf(C)!==-1&&(u<=y||(y=u,v=B))}n.value=v}),{regionIndex:n,optionByRegionIndex:i}},ce=(t,l,d)=>{const n=e.ref([]),i=()=>{if(t.onlySearcher&&l.value){n.value=Array.from(l.value.keys());return}let r=[];if(t.modelValue.length>1)r=[...t.modelValue];else try{r=JSON.parse(localStorage.getItem("ui:project:regionSelector"+t.projectId+":regionsIndexes"))??[]}catch{}r.length&&(r=r.filter(c=>d.value.has(c))),r.length||(r=Array.from(d.value)),n.value=[...r]},a=()=>{n.value.length?localStorage.setItem("ui:project:regionSelector:"+t.projectId+":regionsIndexes",JSON.stringify(n.value)):localStorage.removeItem("ui:project:regionSelector:"+t.projectId+":regionsIndexes")};return e.watch(n,()=>{a()}),t.addCompare&&i(),{regionsIndexes:n}},ge=t=>{const l=e.computed(()=>U(t.forFrequency,t.autoRegion,t.searchers)),d=e.computed(()=>l.value.get(i.searcherKey.value)||j),n=e.computed(()=>{const o=new Set;return l.value.forEach(y=>{var I;(I=y.regions)==null||I.forEach(B=>{B.index!==-1&&B.index!==S&&o.add(B.index)})}),o}),i=se(t,l),a=ue(t,d),r=ce(t,l,n);e.watch(l,()=>{var y,I,B,x;if(t.onlySearcher?r.regionsIndexes.value=Array.from(l.value.keys()):r.regionsIndexes.value=r.regionsIndexes.value.filter(h=>n.value.has(h)),i.searcherKey.value===-1)return;let o=l.value.keys().next().value;l.value.forEach(h=>{var T,C,u;if(t.onlySearcher&&h.key===i.searcherKey.value){o=i.searcherKey.value;return}if(a.regionIndex.value&&((T=h.regionByIndex)!=null&&T.has(a.regionIndex.value))&&(o=h.key),!t.onlySearcher){let s;o!==void 0&&(s=(C=l.value.get(o))==null?void 0:C.regionByIndex);const g=(u=l.value.get(h.key))==null?void 0:u.regionByIndex;s!=null&&s.has(S)&&!(g!=null&&g.has(S))&&(o=h.key)}}),o!==void 0&&(i.searcherKey.value=o),a.regionIndex.value!==void 0&&!((I=(y=d.value)==null?void 0:y.regionByIndex)!=null&&I.has(a.regionIndex.value))&&(a.regionIndex.value=(x=(B=d.value)==null?void 0:B.regions)==null?void 0:x.keys().next().value)},{immediate:!0});const c=()=>{if(!(i.searcherKey.value===-1||i.searcherKey.value===S))return i.searcherKey.value},m=()=>{if(t.onlySearcher||a.regionIndex.value===S)return;let o=a.regionIndex.value;if(t.forFrequency){const y=a.regionIndex.value,I=Y(t.forFrequency,{searcher_key:c(),key:y},t.searchers);o=I==null?void 0:I.index}return o},f=()=>{const o=c();if(o!==void 0)return l.value.get(o)};return{selectSearcher:i,selectRegion:a,compare:r,searcherByKey:l,allRegionsIndexes:n,getSearcher:f,getRegion:()=>{var y,I;const o=m();if(o!==void 0)return(I=(y=f())==null?void 0:y.regionByIndex)==null?void 0:I.get(o)}}},me=e.defineComponent({__name:"selectorRegion",props:e.mergeModels({projectId:{},searchers:{default:()=>[]},modelValue:{},modelValueSingle:{},addCompare:{type:Boolean},forFrequency:{type:Boolean},autoRegion:{type:Boolean},onlySearcher:{type:Boolean},addChanger:{type:Boolean,default:!0},addSearcherIcon:{type:Boolean,default:!0},addRegionIcon:{type:Boolean,default:!0}},{modelValue:{required:!0},modelModifiers:{},modelValueSingle:{},modelValueSingleModifiers:{}}),emits:e.mergeModels(["compareRegions"],["update:modelValue","update:modelValueSingle"]),setup(t,{expose:l,emit:d}){const n=t,i=e.useModel(t,"modelValue"),a=e.useModel(t,"modelValueSingle"),r=d,{selectSearcher:c,selectRegion:m,compare:f,searcherByKey:v,allRegionsIndexes:o,getSearcher:y,getRegion:I}=ge(n),B=()=>{var x;if(window.fieldTemplates&&((x=window.fieldTemplates)!=null&&x.openSelectorRegions)){window.fieldTemplates.openSelectorRegions(v.value,f.regionsIndexes.value,h=>f.regionsIndexes.value=h);return}r("compareRegions",v.value)};return e.watch([m.regionIndex,c.searcherKey,f.regionsIndexes],()=>{if(c.searcherKey.value===-1&&f.regionsIndexes.value.length){if(JSON.stringify(i.value)===JSON.stringify(f.regionsIndexes.value))return;i.value=[...f.regionsIndexes.value]}else i.value=[n.onlySearcher?c.searcherKey.value:m.regionIndex.value];!n.onlySearcher&&!o.value.size&&(c.searcherKey.value=S)}),a.value&&e.watch(a,()=>{i.value=[a.value]},{immediate:!0}),e.watch(i,()=>{var x,h,T,C,u;if(i.value[0]&&(a.value=i.value[0]),n.onlySearcher){if(!i.value.length||i.value.length===1&&!v.value.has(i.value[0])){let s=v.value.keys().next().value;s!==void 0&&(i.value=[s]);return}if(i.value.length>1&&JSON.stringify(i.value)!==JSON.stringify(f.regionsIndexes.value)){i.value=[...f.regionsIndexes.value];return}}else{let s=[...new Set(i.value)],g=(h=(x=v.value.values().next().value)==null?void 0:x.regionByIndex)==null?void 0:h.keys().next().value;if(n.forFrequency&&(g=(u=(C=(T=v.value.values().next().value)==null?void 0:T.regionByIndex)==null?void 0:C.values().next().value)==null?void 0:u.key),!s.length)g!==void 0&&s.push(g);else if(s.length===1){let p=o.value;n.forFrequency&&(p=new Set,v.value.forEach(w=>{w.regionByIndex.forEach(M=>{M.index!==-1&&M.index!==S&&p.add(M.key)})})),!p.has(s[0])&&s[0]!==-2&&(s=[],g!==void 0&&s.push(g))}else s=s.filter(p=>o.value.has(p)),!s.length&&g!==void 0&&s.push(g);if(JSON.stringify(i.value)!==JSON.stringify(s)){i.value=s;return}}if(!(i.value.length===1&&i.value[0]===(n.onlySearcher?c.searcherKey.value:m.regionIndex.value)))if(n.onlySearcher){if(i.value.length===1){c.searcherKey.value=i.value[0];return}c.searcherKey.value=-1;return}else if(i.value.length===1&&c.searcherKey.value!==-1){m.regionIndex.value=i.value[0];let s;for(const g of v.value.values()){for(const p of g.regionByIndex.values())if((n.forFrequency?p.key:p.index)===m.regionIndex.value){s=g.key;break}if(s!==void 0)break}s!==void 0&&(c.searcherKey.value=s)}else c.searcherKey.value=-1,f.regionsIndexes.value=[...i.value]},{immediate:!0}),l({getSearcher:y,getRegion:I}),(x,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-selectorRegion":!0,"top-selectorRegion-onlySearcher":x.onlySearcher})},[e.createVNode(k._sfc_main$4,{options:e.unref(c).optionBySearcherKey.value,modelValue:e.unref(c).searcherKey.value,"onUpdate:modelValue":h[0]||(h[0]=T=>e.unref(c).searcherKey.value=T),name:"searcher_key",addChanger:x.addChanger},null,8,["options","modelValue","addChanger"]),!x.onlySearcher&&e.unref(c).searcherKey.value!==-1?(e.openBlock(),e.createBlock(k._sfc_main$4,{key:0,class:"top-select-region",options:e.unref(m).optionByRegionIndex.value,modelValue:e.unref(m).regionIndex.value,"onUpdate:modelValue":h[1]||(h[1]=T=>e.unref(m).regionIndex.value=T),name:x.forFrequency?"region_key":"region_index",addChanger:x.addChanger,"data-top-icon":x.addRegionIcon?"":void 0},null,8,["options","modelValue","name","addChanger","data-top-icon"])):e.createCommentVNode("",!0),x.addCompare&&!x.onlySearcher&&e.unref(c).searcherKey.value===-1?(e.openBlock(),e.createBlock(k._sfc_main,{key:1,name:"compare",onClick:B,"data-count-compare-regions-indexes":e.unref(f).regionsIndexes.value.length},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.$i18n.Common.Selected_regions),1)]),_:1},8,["data-count-compare-regions-indexes"])):e.createCommentVNode("",!0)],2))}}),fe=[{id:"1",name:"Without Tag",color_id:"1"},{id:"2",name:"Red",color_id:"2"},{id:"3",name:"Orange",color_id:"3"},{id:"4",name:"Yellow",color_id:"4"},{id:"5",name:"Blue",color_id:"5"},{id:"6",name:"Purple",color_id:"6"},{id:"7",name:"Green",color_id:"7"},{id:"8",name:"Magenta",color_id:"8"},{id:"9",name:"Dark blue",color_id:"9"},{id:"10",name:"Turquoise",color_id:"10"}],W=t=>"-"+t,K=t=>t[0]==="-"?t.substring(1):t,O=(t,l)=>{t=K(t);const d=l.find(n=>n.id===t);if(d)return d},ve=["data-tag_id","data-tag_color_id","title"],R=e.defineComponent({__name:"tagIcon",props:{id:{},colorId:{},name:{},state:{}},setup(t){return(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tagSelector_tagIcon":!0,"top-tagSelector-active":!!l.state,"top-tagSelector-excluded":l.state==="excluded"}),"data-tag_id":l.id,"data-tag_color_id":l.colorId,title:l.name},null,10,ve))}}),pe=["contenteditable","onKeydown"],H=e.defineComponent({__name:"tagPopupListItem",props:e.mergeModels({editable:{type:Boolean},disabled:{type:Boolean},canExclude:{type:Boolean},id:{},colorId:{},name:{},state:{}},{name:{required:!0},nameModifiers:{}}),emits:e.mergeModels(["update:name","unselect","exclude","select"],["update:name"]),setup(t,{emit:l}){const d=t,n=l,i=e.useModel(t,"name"),a=e.ref(null),r=e.ref(!1),c=async()=>{var o;r.value=!0,await e.nextTick(),(o=a.value)==null||o.focus()},m=()=>{var y;const o=(y=a.value)==null?void 0:y.innerText;if(!o)return f();a.value&&(a.value.innerText=o),r.value=!1,n("update:name",o)},f=async()=>{a.value&&(a.value.innerText=d.name),r.value=!1},v=o=>{if(r.value||d.disabled)return;let y="selected";d.canExclude&&(o.ctrlKey||o.metaKey)&&(y="excluded"),d.state==y&&(y=""),y===""&&n("unselect"),y==="selected"&&n("select"),y==="excluded"&&n("exclude")};return(o,y)=>(e.openBlock(),e.createBlock(E._sfc_main$2,{class:e.normalizeClass({"top-tagSelector_tagListItem":!0,"top-tagSelector_tagListItem-inEdit":r.value,"top-tagSelector_tagListItem-disabled":o.disabled,"top-tagSelector_tagListItem-canExclude":o.canExclude,"top-tagSelector-active":!!o.state,"top-tagSelector-excluded":o.state==="excluded"}),onClick:e.withModifiers(v,["stop"])},{default:e.withCtx(()=>[e.createVNode(R,{id:o.id,name:i.value,colorId:o.colorId,state:o.state},null,8,["id","name","colorId","state"]),e.createElementVNode("span",{ref_key:"elName",ref:a,class:"top-tagSelector_tagListItemName",contenteditable:r.value?"plaintext-only":!1,onKeydown:[e.withKeys(e.withModifiers(m,["stop"]),["enter"]),e.withKeys(e.withModifiers(f,["stop"]),["esc"])]},e.toDisplayString(i.value),41,pe),o.editable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[r.value?(e.openBlock(),e.createElementBlock("span",{key:1,"data-top-icon":"",class:"top-tagSelector_edit",onClick:e.withModifiers(m,["stop"])})):(e.openBlock(),e.createElementBlock("span",{key:0,"data-top-icon":"",class:"top-tagSelector_edit",onClick:c}))],64)):e.createCommentVNode("",!0)]),_:1},8,["class"]))}}),ye={key:1},Q=e.defineComponent({inheritAttrs:!1,__name:"popupOpener",props:e.mergeModels({modelValue:{},id:{},tags:{},mode:{},targetId:{},filters:{},useTopButton:{type:Boolean},payload:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const l=t,d=e.useModel(t,"modelValue"),n=l.useTopButton?k._sfc_main:"div",i=l.useTopButton?"html":"default",a={model:d,mode:l.mode,targetId:l.targetId,filters:l.filters,payload:l.payload};return(r,c)=>{const m=e.resolveDirective("top-data");return e.openBlock(),e.createBlock(E._sfc_main$1,{id:r.id},{default:e.withCtx(()=>[e.withDirectives((e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),e.mergeProps({class:{"top-tagSelector":!0,"top-tagSelector-filter":l.mode==="filter","top-tagSelector-setter_single":l.mode==="setter"&&!r.filters,"top-tagSelector-setter_several":l.mode==="setter"&&r.filters,"top-tagSelector-selectedOne":!d.value.length||d.value.length===1,"top-tagSelector-toTwoLine":d.value.length>5},color:"theme",styling:""},r.$attrs),{[e.unref(i)]:e.withCtx(()=>[!d.value.length&&r.mode==="filter"?(e.openBlock(),e.createBlock(R,{key:0,id:"all",colorId:"",name:r.$i18n.Common.All_tags??"",state:""},null,8,["name"])):e.createCommentVNode("",!0),r.mode==="setter"&&r.filters?(e.openBlock(),e.createElementBlock("div",ye,[e.renderSlot(r.$slots,"default")])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(d.value,f=>{var v,o;return e.openBlock(),e.createBlock(R,{id:e.unref(K)(f),colorId:((v=e.unref(O)(f,r.tags))==null?void 0:v.color_id)??"",name:((o=e.unref(O)(f,r.tags))==null?void 0:o.name)??"",state:e.unref(K)(f)===f?"selected":"excluded"},null,8,["id","colorId","name","state"])}),256))]),_:2},1040,["class"])),[[m,a,"topTagSelectorTarget"]])]),_:3},8,["id"])}}}),he=e.defineComponent({__name:"tagSelector",props:e.mergeModels({modelValue:{},tags:{},tagsEditable:{type:Boolean},tagsMax:{default:10},id:{},singleMode:{type:Boolean},requiredForSetter:{type:Boolean,default:!0},maxTagsForSetter:{},emitDelay:{default:500}},{modelValue:{required:!0},modelModifiers:{},tags:{default:e.reactive(fe)},tagsModifiers:{}}),emits:e.mergeModels(["selector","setter","tagsChanged"],["update:modelValue","update:tags"]),setup(t,{emit:l}){const d=k.useI18n(),n=t,i=e.useModel(t,"modelValue"),a=e.useModel(t,"tags"),r=l,c=k.debounce((u,s)=>{r(u,s)},n.emitDelay);n.singleMode&&!i.value.length&&(i.value=[a.value[0].id]);const m=n.id??"top-popup-id-"+Math.random(),f=e.ref("add"),v=()=>{var g;const u=" "+((g=d.Common.Tags)==null?void 0:g.toLowerCase()),s=new Map;return s.set("add",{value:"add",title:d.Common.Add+u}),s.set("replace",{value:"replace",title:d.Common.Replace+u}),s.set("delete",{value:"delete",title:d.Common.Delete+u}),s};let o=e.shallowRef({model:i,mode:"filter",targetId:void 0,filters:void 0,payload:void 0});e.watch(i,()=>{c("selector",i.value)});const y=e.computed(()=>{if(o.value.mode==="setter"&&n.maxTagsForSetter&&!o.value.filters)return o.value.model.value.length>=n.maxTagsForSetter}),I=u=>{if(u!=="all"){if(o.value.model.value.includes(u))return"selected";if(o.value.model.value.includes(W(u)))return"excluded"}return u==="all"&&!o.value.model.value.length?"selected":""},B=(u,s)=>{const g=W(u);let p=o.value.model.value.filter(w=>w!==u&&w!==g);s==="select"&&p.push(u),s==="exclude"&&p.push(g),o.value.mode==="setter"&&o.value.targetId!==void 0&&n.requiredForSetter&&(p.length||p.push("1"),p.length===2&&o.value.model.value.length===1&&o.value.model.value[0]==="1"&&(p=p.filter(w=>w!=="1"))),n.singleMode&&!o.value.filters&&(p.length||(p=o.value.model.value),p.length>1&&(p=[p[p.length-1]])),p.sort((w,M)=>{if(!n.tags)return 0;const q=n.tags.findIndex(b=>b.id===w),N=n.tags.findIndex(b=>b.id===M);return q-N}),o.value.model.value=p,o.value.mode==="setter"&&o.value.targetId!==void 0&&c("setter",{tagsIds:p,targetId:o.value.targetId,payload:o.value.payload})},x=e.computed(()=>{let u="top-tagSelector_popup";return o.value.mode==="filter"&&(u+=" top-tagSelector_popup-filter"),o.value.mode==="setter"&&(u+=" top-tagSelector_popup-setter"),u}),h=()=>{const u=prompt("","New tag");if(!u||u==="New tag")return;const s=a.value.length+1;a.value.push({id:String(s),name:u,color_id:String((s-1)%10+1)}),r("tagsChanged",a.value)},T=u=>{var s;if(o.value=_.storage(u.elPopupOpener,"topTagSelectorTarget"),!o.value)throw new Error("Open popup TopTagSelector required v-data:topTagSelectorTarget");if(o.value.filters&&(f.value="add",o.value.model.value=[]),!((s=k.Core.$)!=null&&s.ui.sortable)){console.info("Для работы сортировки требуется глобальная загрузка jQuery UI Sortable");return}!k.Core.state.isMobile&&!k.Core.state.isMobileUA&&a.value&&$(u.elPopup).sortable({items:'li:has([data-tag_id]:not([data-tag_id="all"]))',cancel:'[contenteditable="plaintext-only"]',distance:10,stop:function(g,p){if(!a.value)return;const w=$(p.item).parent().find("[data-tag_id]"),M=[];w.each((q,N)=>{if(!a.value)return;const b=$(N).attr("data-tag_id");M.push(b)}),a.value.sort((q,N)=>{const b=M.findIndex(z=>z===q.id),we=M.findIndex(z=>z===N.id);return b-we}),c("tagsChanged",a.value)}})},C=u=>{var s;(s=k.Core.$)!=null&&s.ui.sortable&&$(u.elPopup).data("ui-sortable")&&$(u.elPopup).sortable("destroy")};return(u,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Q,{class:"top-select_arrow",modelValue:i.value,"onUpdate:modelValue":s[0]||(s[0]=g=>i.value=g),id:e.unref(m),tags:a.value,mode:"filter",useTopButton:""},null,8,["modelValue","id","tags"]),e.createVNode(E._sfc_main,{id:e.unref(m),class:e.normalizeClass(x.value),onOpen:s[4]||(s[4]=g=>T(g)),onClose:s[5]||(s[5]=g=>C(g)),"transition-duration":50},e.createSlots({contentList:e.withCtx(()=>[e.unref(o).mode==="filter"&&!u.singleMode?(e.openBlock(),e.createBlock(H,{key:0,id:"all",colorId:"",name:u.$i18n.Common.All_tags??"",state:e.unref(o).model.value.length?"":"selected",onSelect:s[3]||(s[3]=g=>e.unref(o).model.value=[])},null,8,["name","state"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,g=>(e.openBlock(),e.createBlock(H,{key:g.id,id:g.id,colorId:g.color_id,name:g.name,state:I(g.id),canExclude:e.unref(o).mode==="filter"&&!u.singleMode,editable:u.tagsEditable,disabled:y.value&&I(g.id)==="",onUnselect:p=>B(g.id,"unselect"),onSelect:p=>B(g.id,"select"),onExclude:p=>B(g.id,"exclude"),"onUpdate:name":p=>{g.name=p,e.unref(c)("tagsChanged",a.value)}},null,8,["id","colorId","name","state","canExclude","editable","disabled","onUnselect","onSelect","onExclude","onUpdate:name"]))),128)),u.tagsEditable&&a.value.length<u.tagsMax&&a.value.length<20?(e.openBlock(),e.createBlock(E._sfc_main$2,{key:1,"data-top-icon":"",onClick:e.withModifiers(h,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.$i18n.Common.Add),1)]),_:1})):e.createCommentVNode("",!0)]),_:2},[e.unref(o).mode==="setter"&&e.unref(o).filters?{name:"header",fn:e.withCtx(()=>[e.createVNode(k._sfc_main$4,{modelValue:f.value,"onUpdate:modelValue":s[1]||(s[1]=g=>f.value=g),options:v()},null,8,["modelValue","options"])]),key:"0"}:void 0,e.unref(o).mode==="setter"&&e.unref(o).filters?{name:"footer",fn:e.withCtx(()=>[e.createVNode(k._sfc_main,{color:"theme"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.$i18n.Common.Cancel),1)]),_:1}),e.createVNode(k._sfc_main,{onClick:s[2]||(s[2]=g=>e.unref(c)("setter",{tagsIds:e.unref(o).model.value,filters:e.unref(o).filters,filtersAction:f.value,payload:e.unref(o).payload}))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.value==="add"?u.$i18n.Common.Add:"")+" "+e.toDisplayString(f.value==="replace"?u.$i18n.Common.Replace:"")+" "+e.toDisplayString(f.value==="delete"?u.$i18n.Common.Remove:""),1)]),_:1})]),key:"1"}:void 0]),1032,["id","class"])],64))}}),Se=(t,l,d)=>{l||(l={id:t.id}),l.id=t.id;const n=ee.TopPopupWorker.genElPopupOpener("div",l);return n.classList.add("top-tagSelector"),t.useTopButton&&n.classList.add("top-button","top-color_theme"),t.mode==="filter"&&n.classList.add("top-tagSelector-filter"),t.mode==="setter"&&!t.filters&&n.classList.add("top-tagSelector-setter_single"),t.mode==="setter"&&t.filters&&n.classList.add("top-tagSelector-setter_several"),n.onclick=i=>{i.preventDefault(),i.stopPropagation(),n.onclick=null;const a=e.ref(t.modelValue),r={model:a,mode:t.mode,targetId:t.targetId,filters:t.filters,payload:t.payload};_.storage(n,"topTagSelectorTarget",r),delete n.dataset.topPopupDisabled,e.isRef(t.modelValue)||e.watch(a,()=>{t.modelValue=a.value,D(n,t,d)}),n.click()},e.isRef(t.modelValue)?e.watch(t.modelValue,()=>D(n,t,d)):_.storage(n,"topTagSelectorRender",i=>{t.modelValue=i;const a=_.storage(n,"topTagSelectorTarget");a&&(a.model.value=i),D(n,t,d)}),D(n,t,d),n},ke=(t,l)=>{var d;(d=_.storage(t,"topTagSelectorRender"))==null||d(l)},D=(t,l,d)=>{var i;const n=e.unref(l.modelValue);if(t.classList.toggle("top-tagSelector-selectedOne",!n.length||n.length===1),t.classList.toggle("top-tagSelector-toTwoLine",n.length>5),l.mode==="setter"&&l.filters){t.innerHTML=`<div>${d}</div>`;return}if(t.innerHTML="",!n.length&&l.mode==="filter"){const a=X({id:"all",colorId:"",name:((i=k.useI18n().Common)==null?void 0:i.All_tags)??"",state:""});t.append(a)}n.forEach(a=>{var c,m;const r=X({id:K(a),colorId:((c=O(a,l.tags))==null?void 0:c.color_id)??"",name:((m=O(a,l.tags))==null?void 0:m.name)??"",state:K(a)===a?"selected":"excluded"});t.append(r)})},X=t=>{const l=document.createElement("div");return l.classList.add("top-tagSelector_tagIcon"),l.classList.toggle("top-tagSelector-active",!!t.state),l.classList.toggle("top-tagSelector-excluded",t.state==="excluded"),l.dataset.tag_id=t.id,l.dataset.tag_color_id=t.colorId,l.title=t.name,l},Ie=oe,xe=me,Be=he,Ce=Q,Te=R;V.TopSelectorCompetitors=Ie,V.TopSelectorRegion=xe,V.TopTagSelector=Be,V.TopTagSelectorPopupOpener=Ce,V.TopTagSelectorTagIcon=Te,V.findRegion=Y,V.genElTopTagSelectorPopupOpener=Se,V.genSearcherByKey=U,V.renderElTopTagSelectorPopupOpener=ke,Object.defineProperty(V,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
define(["require","exports","vue","../.chunks/forms-DHMogHmw.amd","../.chunks/listItem.vue_vue_type_script_setup_true_lang-DQXATE8-.amd","../.chunks/menu.vue_vue_type_style_index_0_lang-CeoVr4RC.amd","../utils/searchers.amd","../utils/dom.amd","../popup/worker.amd","../require/css.amd!../assets/project.css"],function(Ve,V,e,k,E,Z,F,_,ee){"use strict";if(typeof e>"u")var e=window.Vue;const te={class:"top-selectorCompetitors"},ne={class:"top-ellipsis1"},oe=e.defineComponent({__name:"selectorCompetitors",props:e.mergeModels({modelValue:{},items:{},showSelectAllItem:{type:Boolean,default:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const l=t,d=e.useModel(t,"modelValue"),n=e.computed(()=>{if(l.showSelectAllItem)return{icon:"",title:k.useI18n().Common.Select_all,value:"all",content:""}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",te,[e.unref(k.Core).state.isMobile?(e.openBlock(),e.createBlock(E._sfc_main,{key:0},{opener:e.withCtx(()=>[e.createVNode(k._sfc_main,{class:"top-selectorCompetitors_opener",color:"theme",icon:"",icon2:""},{default:e.withCtx(()=>{var r;return[e.createTextVNode(e.toDisplayString((r=i.items.find(c=>{var m;return c.value===((m=d.value)==null?void 0:m[0])}))==null?void 0:r.content),1)]}),_:1})]),contentList:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.items,(r,c)=>{var m;return e.openBlock(),e.createBlock(E._sfc_main$2,{class:e.normalizeClass({"top-active":(m=d.value)==null?void 0:m.includes(r.value)}),"data-top-icon":r.icon,title:r.title,onClick:()=>d.value=[r.value]},{default:e.withCtx(()=>[e.createElementVNode("span",ne,e.toDisplayString(r.content),1)]),_:2},1032,["class","data-top-icon","title","onClick"])}),256))]),_:1})):(e.openBlock(),e.createBlock(Z._sfc_main,{key:1,modelValue:d.value,"onUpdate:modelValue":a[0]||(a[0]=r=>d.value=r),items:i.items,isMultiple:!0,styling:"bar",canBeEmptyMultiple:!1,selectAllItem:n.value},null,8,["modelValue","items","selectAllItem"]))]))}}),S=-2,le={0:"Yandex",1:"Google",2:"go.Mail",4:"YouTube",5:"Bing",6:"Yahoo",7:"Seznam",8:"AppStore",9:"GoogleStore",20:"Yandex.com",21:"Yandex.com.tr"},L={key:S,name:"--",index:S},j={key:S,name:"--",regions:[L],regionByIndex:new Map([[S,L]])},A={key:S,name:"Autoselect",index:S},P={key:S,name:"Autoselect",regions:[A],regionByIndex:new Map([[S,A]])},J={countryCode:"00",depth:1,device:0,key:-1,index:-1,lang:"ru",name:"Without region"},ae=()=>(A.name=k.useI18n().Common.Autoselect,A),re=()=>(ae(),P.name=k.useI18n().Common.Autoselect,console.log(P),P),ie=()=>(J.name=k.useI18n().Keywords.Without_region,J),U=(t=!1,l=!1,d=[])=>{let n;return t?n=de(d):n=G(d),l&&n.set(S,re()),n.size||n.set(S,j),n},G=(t,l=!0,d=[],n=!1)=>{const i=new Map;return t.forEach(a=>{if(!a.enabled||n&&typeof a.key=="number"&&a.key>1)return;const r={...a};r.regionByIndex=new Map,a.regions&&a.regions.forEach(c=>{if(l&&!c.enabled)return;const m={...c};r.regionByIndex&&r.regionByIndex.set(m.index,m)}),!r.regionByIndex.size&&!d.length&&r.regionByIndex.set(L.index,L),typeof r.key=="number"&&i.set(r.key,r)}),d.forEach(a=>{if(i.has(a))return;const r={key:a,name:le[a],regions:[],regionByIndex:new Map};i.set(r.key,r)}),i},de=t=>{const l=G(t,!1,[0,1],!0);if(l.has(2)){const d=l.get(2);d&&(d.regionByIndex=new Map)}return l.forEach(d=>{if(!d.regionByIndex)return;const n={...ie()};d.regionByIndex.set(n.index,n)}),l},Y=(t,l,d=[])=>{const n=U(t,!1,d);let i;return n.forEach(a=>{if(!(l.searcher_key!==void 0&&l.searcher_key!=a.key)&&a.regions&&(a.regions.forEach(r=>{if(!i&&!(l.key!==void 0&&l.key!=r.key)&&!(l.index!==void 0&&l.index!=r.index)&&!(!t&&(l.lang!==void 0&&l.lang!=r.lang||l.device!==void 0&&l.device!=r.device)))return r.searcher_key=a.key,i=r,!1}),i))return!1}),i},se=(t,l)=>{const d=k.useI18n(),n=e.ref(l.value.keys().next().value??S),i=e.computed(()=>{const a=new Map;if(l.value.forEach(r=>{let c={value:r.key,title:r.name};t.addSearcherIcon&&(c.icon=F.getSearcherGIcon(r.key)),a.set(r.key,c)}),t.addCompare&&!a.has(S)){const r={value:"",title:"--------------------",disabled:!0};a.set(r.value,r);const c={value:-1,title:d.Common.Compare};a.set(c.value,c)}return a});return{searcherKey:n,optionBySearcherKey:i}},ue=(t,l)=>{var a,r,c;const d=k.useI18n(),n=e.ref(S);t.modelValue.length===1&&(n.value=t.modelValue[0]),n.value===S&&(t.forFrequency?n.value=((r=(a=l.value)==null?void 0:a.regionByIndex.values().next().value)==null?void 0:r.key)??S:n.value=((c=l.value)==null?void 0:c.regionByIndex.keys().next().value)??S);const i=e.computed(()=>{var f;const m=new Map;return(f=l.value.regionByIndex)==null||f.forEach(v=>{let o=v.name;if(t.forFrequency){const B={value:v.key,title:o};m.has(v.key)||m.set(v.key,B);return}v.device&&(o+=" ("+d.Common["Device_"+v.device]+")");const y=F.getLangLabel(l.value.key||0,v.lang??"");y&&(o+=" / "+y);const I={value:v.index,title:o,icon:v.device?F.getDeviceGIcon(v.device):void 0};m.set(v.index,I)}),m});return e.watch(i,(m,f)=>{var I;if(t.onlySearcher||n.value!==void 0&&m.get(n.value))return;let v=m.keys().next().value;if(n.value===S||v===S){n.value=v;return}let o=((I=f==null?void 0:f.get(n.value))==null?void 0:I.title)||"",y=-1;for(const[B,x]of m.entries()){const h=x.title;if(typeof h!="string"||typeof B=="string")break;if(h===o){v=B;break}const T=new RegExp(` \\((${d.Common.Device_1}|${d.Common.Device_2})\\)`);let C=o,u=3;h.indexOf(C)===-1&&(C=o.replace(/^[^a-zа-я]/i,"").replace(T,""),u--),h.indexOf(C)===-1&&(C=o.replace(/ \/.*/,""),u--),h.indexOf(C)===-1&&(C=o.replace(/ \/.*/,""),C=C.replace(/^[^a-zа-я]/i,"").replace(T,""),u--),h.indexOf(C)!==-1&&(u<=y||(y=u,v=B))}n.value=v}),{regionIndex:n,optionByRegionIndex:i}},ce=(t,l,d)=>{const n=e.ref([]),i=()=>{if(t.onlySearcher&&l.value){n.value=Array.from(l.value.keys());return}let r=[];if(t.modelValue.length>1)r=[...t.modelValue];else try{r=JSON.parse(localStorage.getItem("ui:project:regionSelector"+t.projectId+":regionsIndexes"))??[]}catch{}r.length&&(r=r.filter(c=>d.value.has(c))),r.length||(r=Array.from(d.value)),n.value=[...r]},a=()=>{n.value.length?localStorage.setItem("ui:project:regionSelector:"+t.projectId+":regionsIndexes",JSON.stringify(n.value)):localStorage.removeItem("ui:project:regionSelector:"+t.projectId+":regionsIndexes")};return e.watch(n,()=>{a()}),t.addCompare&&i(),{regionsIndexes:n}},ge=t=>{const l=e.computed(()=>U(t.forFrequency,t.autoRegion,t.searchers)),d=e.computed(()=>l.value.get(i.searcherKey.value)||j),n=e.computed(()=>{const o=new Set;return l.value.forEach(y=>{var I;(I=y.regions)==null||I.forEach(B=>{B.index!==-1&&B.index!==S&&o.add(B.index)})}),o}),i=se(t,l),a=ue(t,d),r=ce(t,l,n);e.watch(l,()=>{var y,I,B,x;if(t.onlySearcher?r.regionsIndexes.value=Array.from(l.value.keys()):r.regionsIndexes.value=r.regionsIndexes.value.filter(h=>n.value.has(h)),i.searcherKey.value===-1)return;let o=l.value.keys().next().value;l.value.forEach(h=>{var T,C,u;if(t.onlySearcher&&h.key===i.searcherKey.value){o=i.searcherKey.value;return}if(a.regionIndex.value&&((T=h.regionByIndex)!=null&&T.has(a.regionIndex.value))&&(o=h.key),!t.onlySearcher){let s;o!==void 0&&(s=(C=l.value.get(o))==null?void 0:C.regionByIndex);const g=(u=l.value.get(h.key))==null?void 0:u.regionByIndex;s!=null&&s.has(S)&&!(g!=null&&g.has(S))&&(o=h.key)}}),o!==void 0&&(i.searcherKey.value=o),a.regionIndex.value!==void 0&&!((I=(y=d.value)==null?void 0:y.regionByIndex)!=null&&I.has(a.regionIndex.value))&&(a.regionIndex.value=(x=(B=d.value)==null?void 0:B.regions)==null?void 0:x.keys().next().value)},{immediate:!0});const c=()=>{if(!(i.searcherKey.value===-1||i.searcherKey.value===S))return i.searcherKey.value},m=()=>{if(t.onlySearcher||a.regionIndex.value===S)return;let o=a.regionIndex.value;if(t.forFrequency){const y=a.regionIndex.value,I=Y(t.forFrequency,{searcher_key:c(),key:y},t.searchers);o=I==null?void 0:I.index}return o},f=()=>{const o=c();if(o!==void 0)return l.value.get(o)};return{selectSearcher:i,selectRegion:a,compare:r,searcherByKey:l,allRegionsIndexes:n,getSearcher:f,getRegion:()=>{var y,I;const o=m();if(o!==void 0)return(I=(y=f())==null?void 0:y.regionByIndex)==null?void 0:I.get(o)}}},me=e.defineComponent({__name:"selectorRegion",props:e.mergeModels({projectId:{},searchers:{default:()=>[]},modelValue:{},modelValueSingle:{},addCompare:{type:Boolean},forFrequency:{type:Boolean},autoRegion:{type:Boolean},onlySearcher:{type:Boolean},addChanger:{type:Boolean,default:!0},addSearcherIcon:{type:Boolean,default:!0},addRegionIcon:{type:Boolean,default:!0}},{modelValue:{required:!0},modelModifiers:{},modelValueSingle:{},modelValueSingleModifiers:{}}),emits:e.mergeModels(["compareRegions"],["update:modelValue","update:modelValueSingle"]),setup(t,{expose:l,emit:d}){const n=t,i=e.useModel(t,"modelValue"),a=e.useModel(t,"modelValueSingle"),r=d,{selectSearcher:c,selectRegion:m,compare:f,searcherByKey:v,allRegionsIndexes:o,getSearcher:y,getRegion:I}=ge(n),B=()=>{var x;if(window.fieldTemplates&&((x=window.fieldTemplates)!=null&&x.openSelectorRegions)){window.fieldTemplates.openSelectorRegions(v.value,f.regionsIndexes.value,h=>f.regionsIndexes.value=h);return}r("compareRegions",v.value)};return e.watch([m.regionIndex,c.searcherKey,f.regionsIndexes],()=>{if(c.searcherKey.value===-1&&f.regionsIndexes.value.length){if(JSON.stringify(i.value)===JSON.stringify(f.regionsIndexes.value))return;i.value=[...f.regionsIndexes.value]}else i.value=[n.onlySearcher?c.searcherKey.value:m.regionIndex.value];!n.onlySearcher&&!o.value.size&&(c.searcherKey.value=S)}),a.value&&e.watch(a,()=>{i.value=[a.value]},{immediate:!0}),e.watch(i,()=>{var x,h,T,C,u;if(i.value[0]&&(a.value=i.value[0]),n.onlySearcher){if(!i.value.length||i.value.length===1&&!v.value.has(i.value[0])){let s=v.value.keys().next().value;s!==void 0&&(i.value=[s]);return}if(i.value.length>1&&JSON.stringify(i.value)!==JSON.stringify(f.regionsIndexes.value)){i.value=[...f.regionsIndexes.value];return}}else{let s=[...new Set(i.value)],g=(h=(x=v.value.values().next().value)==null?void 0:x.regionByIndex)==null?void 0:h.keys().next().value;if(n.forFrequency&&(g=(u=(C=(T=v.value.values().next().value)==null?void 0:T.regionByIndex)==null?void 0:C.values().next().value)==null?void 0:u.key),!s.length)g!==void 0&&s.push(g);else if(s.length===1){let p=o.value;n.forFrequency&&(p=new Set,v.value.forEach(w=>{w.regionByIndex.forEach(M=>{M.index!==-1&&M.index!==S&&p.add(M.key)})})),!p.has(s[0])&&s[0]!==-2&&(s=[],g!==void 0&&s.push(g))}else s=s.filter(p=>o.value.has(p)),!s.length&&g!==void 0&&s.push(g);if(JSON.stringify(i.value)!==JSON.stringify(s)){i.value=s;return}}if(!(i.value.length===1&&i.value[0]===(n.onlySearcher?c.searcherKey.value:m.regionIndex.value)))if(n.onlySearcher){if(i.value.length===1){c.searcherKey.value=i.value[0];return}c.searcherKey.value=-1;return}else if(i.value.length===1&&c.searcherKey.value!==-1){m.regionIndex.value=i.value[0];let s;for(const g of v.value.values()){for(const p of g.regionByIndex.values())if((n.forFrequency?p.key:p.index)===m.regionIndex.value){s=g.key;break}if(s!==void 0)break}s!==void 0&&(c.searcherKey.value=s)}else c.searcherKey.value=-1,f.regionsIndexes.value=[...i.value]},{immediate:!0}),l({getSearcher:y,getRegion:I}),(x,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-selectorRegion":!0,"top-selectorRegion-onlySearcher":x.onlySearcher})},[e.createVNode(k._sfc_main$4,{options:e.unref(c).optionBySearcherKey.value,modelValue:e.unref(c).searcherKey.value,"onUpdate:modelValue":h[0]||(h[0]=T=>e.unref(c).searcherKey.value=T),name:"searcher_key",addChanger:x.addChanger},null,8,["options","modelValue","addChanger"]),!x.onlySearcher&&e.unref(c).searcherKey.value!==-1?(e.openBlock(),e.createBlock(k._sfc_main$4,{key:0,class:"top-select-region",options:e.unref(m).optionByRegionIndex.value,modelValue:e.unref(m).regionIndex.value,"onUpdate:modelValue":h[1]||(h[1]=T=>e.unref(m).regionIndex.value=T),name:x.forFrequency?"region_key":"region_index",addChanger:x.addChanger,"data-top-icon":x.addRegionIcon?"":void 0},null,8,["options","modelValue","name","addChanger","data-top-icon"])):e.createCommentVNode("",!0),x.addCompare&&!x.onlySearcher&&e.unref(c).searcherKey.value===-1?(e.openBlock(),e.createBlock(k._sfc_main,{key:1,name:"compare",onClick:B,"data-count-compare-regions-indexes":e.unref(f).regionsIndexes.value.length},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.$i18n.Common.Selected_regions),1)]),_:1},8,["data-count-compare-regions-indexes"])):e.createCommentVNode("",!0)],2))}}),fe=[{id:"1",name:"Without Tag",color_id:"1"},{id:"2",name:"Red",color_id:"2"},{id:"3",name:"Orange",color_id:"3"},{id:"4",name:"Yellow",color_id:"4"},{id:"5",name:"Blue",color_id:"5"},{id:"6",name:"Purple",color_id:"6"},{id:"7",name:"Green",color_id:"7"},{id:"8",name:"Magenta",color_id:"8"},{id:"9",name:"Dark blue",color_id:"9"},{id:"10",name:"Turquoise",color_id:"10"}],W=t=>"-"+t,K=t=>t[0]==="-"?t.substring(1):t,O=(t,l)=>{t=K(t);const d=l.find(n=>n.id===t);if(d)return d},ve=["data-tag_id","data-tag_color_id","title"],R=e.defineComponent({__name:"tagIcon",props:{id:{},colorId:{},name:{},state:{}},setup(t){return(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tagSelector_tagIcon":!0,"top-tagSelector-active":!!l.state,"top-tagSelector-excluded":l.state==="excluded"}),"data-tag_id":l.id,"data-tag_color_id":l.colorId,title:l.name},null,10,ve))}}),pe=["contenteditable","onKeydown"],H=e.defineComponent({__name:"tagPopupListItem",props:e.mergeModels({editable:{type:Boolean},disabled:{type:Boolean},canExclude:{type:Boolean},id:{},colorId:{},name:{},state:{}},{name:{required:!0},nameModifiers:{}}),emits:e.mergeModels(["update:name","unselect","exclude","select"],["update:name"]),setup(t,{emit:l}){const d=t,n=l,i=e.useModel(t,"name"),a=e.ref(null),r=e.ref(!1),c=async()=>{var o;r.value=!0,await e.nextTick(),(o=a.value)==null||o.focus()},m=()=>{var y;const o=(y=a.value)==null?void 0:y.innerText;if(!o)return f();a.value&&(a.value.innerText=o),r.value=!1,n("update:name",o)},f=async()=>{a.value&&(a.value.innerText=d.name),r.value=!1},v=o=>{if(r.value||d.disabled)return;let y="selected";d.canExclude&&(o.ctrlKey||o.metaKey)&&(y="excluded"),d.state==y&&(y=""),y===""&&n("unselect"),y==="selected"&&n("select"),y==="excluded"&&n("exclude")};return(o,y)=>(e.openBlock(),e.createBlock(E._sfc_main$2,{class:e.normalizeClass({"top-tagSelector_tagListItem":!0,"top-tagSelector_tagListItem-inEdit":r.value,"top-tagSelector_tagListItem-disabled":o.disabled,"top-tagSelector_tagListItem-canExclude":o.canExclude,"top-tagSelector-active":!!o.state,"top-tagSelector-excluded":o.state==="excluded"}),onClick:e.withModifiers(v,["stop"])},{default:e.withCtx(()=>[e.createVNode(R,{id:o.id,name:i.value,colorId:o.colorId,state:o.state},null,8,["id","name","colorId","state"]),e.createElementVNode("span",{ref_key:"elName",ref:a,class:"top-tagSelector_tagListItemName",contenteditable:r.value?"plaintext-only":!1,onKeydown:[e.withKeys(e.withModifiers(m,["stop"]),["enter"]),e.withKeys(e.withModifiers(f,["stop"]),["esc"])]},e.toDisplayString(i.value),41,pe),o.editable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[r.value?(e.openBlock(),e.createElementBlock("span",{key:1,"data-top-icon":"",class:"top-tagSelector_edit",onClick:e.withModifiers(m,["stop"])})):(e.openBlock(),e.createElementBlock("span",{key:0,"data-top-icon":"",class:"top-tagSelector_edit",onClick:c}))],64)):e.createCommentVNode("",!0)]),_:1},8,["class"]))}}),ye={key:1},Q=e.defineComponent({inheritAttrs:!1,__name:"popupOpener",props:e.mergeModels({modelValue:{},id:{},tags:{},mode:{},targetId:{},filters:{},useTopButton:{type:Boolean},payload:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const l=t,d=e.useModel(t,"modelValue"),n=l.useTopButton?k._sfc_main:"div",i=l.useTopButton?"html":"default",a={model:d,mode:l.mode,targetId:l.targetId,filters:l.filters,payload:l.payload};return(r,c)=>{const m=e.resolveDirective("top-data");return e.openBlock(),e.createBlock(E._sfc_main$1,{id:r.id},{default:e.withCtx(()=>[e.withDirectives((e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),e.mergeProps({class:{"top-tagSelector":!0,"top-tagSelector-filter":l.mode==="filter","top-tagSelector-setter_single":l.mode==="setter"&&!r.filters,"top-tagSelector-setter_several":l.mode==="setter"&&r.filters,"top-tagSelector-selectedOne":!d.value.length||d.value.length===1,"top-tagSelector-toTwoLine":d.value.length>5},color:"theme",styling:""},r.$attrs),{[e.unref(i)]:e.withCtx(()=>[!d.value.length&&r.mode==="filter"?(e.openBlock(),e.createBlock(R,{key:0,id:"all",colorId:"",name:r.$i18n.Common.All_tags??"",state:""},null,8,["name"])):e.createCommentVNode("",!0),r.mode==="setter"&&r.filters?(e.openBlock(),e.createElementBlock("div",ye,[e.renderSlot(r.$slots,"default")])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(d.value,f=>{var v,o;return e.openBlock(),e.createBlock(R,{id:e.unref(K)(f),colorId:((v=e.unref(O)(f,r.tags))==null?void 0:v.color_id)??"",name:((o=e.unref(O)(f,r.tags))==null?void 0:o.name)??"",state:e.unref(K)(f)===f?"selected":"excluded"},null,8,["id","colorId","name","state"])}),256))]),_:2},1040,["class"])),[[m,a,"topTagSelectorTarget"]])]),_:3},8,["id"])}}}),he=e.defineComponent({__name:"tagSelector",props:e.mergeModels({modelValue:{},tags:{},tagsEditable:{type:Boolean},tagsMax:{default:10},id:{},singleMode:{type:Boolean},requiredForSetter:{type:Boolean,default:!0},maxTagsForSetter:{},emitDelay:{default:500}},{modelValue:{required:!0},modelModifiers:{},tags:{default:e.reactive(fe)},tagsModifiers:{}}),emits:e.mergeModels(["selector","setter","tagsChanged"],["update:modelValue","update:tags"]),setup(t,{emit:l}){const d=k.useI18n(),n=t,i=e.useModel(t,"modelValue"),a=e.useModel(t,"tags"),r=l,c=k.debounce((u,s)=>{r(u,s)},n.emitDelay);n.singleMode&&!i.value.length&&(i.value=[a.value[0].id]);const m=n.id??"top-popup-id-"+Math.random(),f=e.ref("add"),v=()=>{var g;const u=" "+((g=d.Common.Tags)==null?void 0:g.toLowerCase()),s=new Map;return s.set("add",{value:"add",title:d.Common.Add+u}),s.set("replace",{value:"replace",title:d.Common.Replace+u}),s.set("delete",{value:"delete",title:d.Common.Delete+u}),s};let o=e.shallowRef({model:i,mode:"filter",targetId:void 0,filters:void 0,payload:void 0});e.watch(i,()=>{c("selector",i.value)});const y=e.computed(()=>{if(o.value.mode==="setter"&&n.maxTagsForSetter&&!o.value.filters)return o.value.model.value.length>=n.maxTagsForSetter}),I=u=>{if(u!=="all"){if(o.value.model.value.includes(u))return"selected";if(o.value.model.value.includes(W(u)))return"excluded"}return u==="all"&&!o.value.model.value.length?"selected":""},B=(u,s)=>{const g=W(u);let p=o.value.model.value.filter(w=>w!==u&&w!==g);s==="select"&&p.push(u),s==="exclude"&&p.push(g),o.value.mode==="setter"&&o.value.targetId!==void 0&&n.requiredForSetter&&(p.length||p.push("1"),p.length===2&&o.value.model.value.length===1&&o.value.model.value[0]==="1"&&(p=p.filter(w=>w!=="1"))),n.singleMode&&!o.value.filters&&(p.length||(p=o.value.model.value),p.length>1&&(p=[p[p.length-1]])),p.sort((w,M)=>{if(!n.tags)return 0;const q=n.tags.findIndex(b=>b.id===w),N=n.tags.findIndex(b=>b.id===M);return q-N}),o.value.model.value=p,o.value.mode==="setter"&&o.value.targetId!==void 0&&c("setter",{tagsIds:p,targetId:o.value.targetId,payload:o.value.payload})},x=e.computed(()=>{let u="top-tagSelector_popup";return o.value.mode==="filter"&&(u+=" top-tagSelector_popup-filter"),o.value.mode==="setter"&&(u+=" top-tagSelector_popup-setter"),u}),h=()=>{const u=prompt("","New tag");if(!u||u==="New tag")return;const s=a.value.length+1;a.value.push({id:String(s),name:u,color_id:String((s-1)%10+1)}),r("tagsChanged",a.value)},T=u=>{var s;if(o.value=_.storage(u.elPopupOpener,"topTagSelectorTarget"),!o.value)throw new Error("Open popup TopTagSelector required v-data:topTagSelectorTarget");if(o.value.filters&&(f.value="add",o.value.model.value=[]),!((s=k.Core.$)!=null&&s.ui.sortable)){console.info("Для работы сортировки требуется глобальная загрузка jQuery UI Sortable");return}!k.Core.state.isMobile&&!k.Core.state.isMobileUA&&a.value&&$(u.elPopup).sortable({items:'li:has([data-tag_id]:not([data-tag_id="all"]))',cancel:'[contenteditable="plaintext-only"]',distance:10,stop:function(g,p){if(!a.value)return;const w=$(p.item).parent().find("[data-tag_id]"),M=[];w.each((q,N)=>{if(!a.value)return;const b=$(N).attr("data-tag_id");M.push(b)}),a.value.sort((q,N)=>{const b=M.findIndex(z=>z===q.id),we=M.findIndex(z=>z===N.id);return b-we}),c("tagsChanged",a.value)}})},C=u=>{var s;(s=k.Core.$)!=null&&s.ui.sortable&&$(u.elPopup).data("ui-sortable")&&$(u.elPopup).sortable("destroy")};return(u,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Q,{class:"top-select_arrow",modelValue:i.value,"onUpdate:modelValue":s[0]||(s[0]=g=>i.value=g),id:e.unref(m),tags:a.value,mode:"filter",useTopButton:""},null,8,["modelValue","id","tags"]),e.createVNode(E._sfc_main,{id:e.unref(m),class:e.normalizeClass(x.value),onOpen:s[4]||(s[4]=g=>T(g)),onClose:s[5]||(s[5]=g=>C(g)),"transition-duration":50},e.createSlots({contentList:e.withCtx(()=>[e.unref(o).mode==="filter"&&!u.singleMode?(e.openBlock(),e.createBlock(H,{key:0,id:"all",colorId:"",name:u.$i18n.Common.All_tags??"",state:e.unref(o).model.value.length?"":"selected",onSelect:s[3]||(s[3]=g=>e.unref(o).model.value=[])},null,8,["name","state"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,g=>(e.openBlock(),e.createBlock(H,{key:g.id,id:g.id,colorId:g.color_id,name:g.name,state:I(g.id),canExclude:e.unref(o).mode==="filter"&&!u.singleMode,editable:u.tagsEditable,disabled:y.value&&I(g.id)==="",onUnselect:p=>B(g.id,"unselect"),onSelect:p=>B(g.id,"select"),onExclude:p=>B(g.id,"exclude"),"onUpdate:name":p=>{g.name=p,e.unref(c)("tagsChanged",a.value)}},null,8,["id","colorId","name","state","canExclude","editable","disabled","onUnselect","onSelect","onExclude","onUpdate:name"]))),128)),u.tagsEditable&&a.value.length<u.tagsMax&&a.value.length<20?(e.openBlock(),e.createBlock(E._sfc_main$2,{key:1,"data-top-icon":"",onClick:e.withModifiers(h,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.$i18n.Common.Add),1)]),_:1})):e.createCommentVNode("",!0)]),_:2},[e.unref(o).mode==="setter"&&e.unref(o).filters?{name:"header",fn:e.withCtx(()=>[e.createVNode(k._sfc_main$4,{modelValue:f.value,"onUpdate:modelValue":s[1]||(s[1]=g=>f.value=g),options:v()},null,8,["modelValue","options"])]),key:"0"}:void 0,e.unref(o).mode==="setter"&&e.unref(o).filters?{name:"footer",fn:e.withCtx(()=>[e.createVNode(k._sfc_main,{color:"theme"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.$i18n.Common.Cancel),1)]),_:1}),e.createVNode(k._sfc_main,{onClick:s[2]||(s[2]=g=>e.unref(c)("setter",{tagsIds:e.unref(o).model.value,filters:e.unref(o).filters,filtersAction:f.value,payload:e.unref(o).payload}))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.value==="add"?u.$i18n.Common.Add:"")+" "+e.toDisplayString(f.value==="replace"?u.$i18n.Common.Replace:"")+" "+e.toDisplayString(f.value==="delete"?u.$i18n.Common.Remove:""),1)]),_:1})]),key:"1"}:void 0]),1032,["id","class"])],64))}}),Se=(t,l,d)=>{l||(l={id:t.id}),l.id=t.id;const n=ee.TopPopupWorker.genElPopupOpener("div",l);return n.classList.add("top-tagSelector"),t.useTopButton&&n.classList.add("top-button","top-color_theme"),t.mode==="filter"&&n.classList.add("top-tagSelector-filter"),t.mode==="setter"&&!t.filters&&n.classList.add("top-tagSelector-setter_single"),t.mode==="setter"&&t.filters&&n.classList.add("top-tagSelector-setter_several"),n.onclick=i=>{i.preventDefault(),i.stopPropagation(),n.onclick=null;const a=e.ref(t.modelValue),r={model:a,mode:t.mode,targetId:t.targetId,filters:t.filters,payload:t.payload};_.storage(n,"topTagSelectorTarget",r),delete n.dataset.topPopupDisabled,e.isRef(t.modelValue)||e.watch(a,()=>{t.modelValue=a.value,D(n,t,d)}),n.click()},e.isRef(t.modelValue)?e.watch(t.modelValue,()=>D(n,t,d)):_.storage(n,"topTagSelectorRender",i=>{t.modelValue=i;const a=_.storage(n,"topTagSelectorTarget");a&&(a.model.value=i),D(n,t,d)}),D(n,t,d),n},ke=(t,l)=>{var d;(d=_.storage(t,"topTagSelectorRender"))==null||d(l)},D=(t,l,d)=>{var i;const n=e.unref(l.modelValue);if(t.classList.toggle("top-tagSelector-selectedOne",!n.length||n.length===1),t.classList.toggle("top-tagSelector-toTwoLine",n.length>5),l.mode==="setter"&&l.filters){t.innerHTML=`<div>${d}</div>`;return}if(t.innerHTML="",!n.length&&l.mode==="filter"){const a=X({id:"all",colorId:"",name:((i=k.useI18n().Common)==null?void 0:i.All_tags)??"",state:""});t.append(a)}n.forEach(a=>{var c,m;const r=X({id:K(a),colorId:((c=O(a,l.tags))==null?void 0:c.color_id)??"",name:((m=O(a,l.tags))==null?void 0:m.name)??"",state:K(a)===a?"selected":"excluded"});t.append(r)})},X=t=>{const l=document.createElement("div");return l.classList.add("top-tagSelector_tagIcon"),l.classList.toggle("top-tagSelector-active",!!t.state),l.classList.toggle("top-tagSelector-excluded",t.state==="excluded"),l.dataset.tag_id=t.id,l.dataset.tag_color_id=t.colorId,l.title=t.name,l},Ie=oe,xe=me,Be=he,Ce=Q,Te=R;V.TopSelectorCompetitors=Ie,V.TopSelectorRegion=xe,V.TopTagSelector=Be,V.TopTagSelectorPopupOpener=Ce,V.TopTagSelectorTagIcon=Te,V.findRegion=Y,V.genElTopTagSelectorPopupOpener=Se,V.genSearcherByKey=U,V.renderElTopTagSelectorPopupOpener=ke,Object.defineProperty(V,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=project.amd.js.map
|
package/project/project.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Core as ke } from "../core/app.js";
|
|
2
2
|
import { defineComponent as P, mergeModels as O, useModel as q, computed as A, openBlock as I, createElementBlock as w, unref as y, createBlock as b, withCtx as B, createVNode as L, createTextVNode as z, toDisplayString as E, Fragment as Y, renderList as ie, normalizeClass as Q, createElementVNode as ve, ref as D, watch as K, createCommentVNode as F, withModifiers as j, withKeys as de, nextTick as Te, resolveDirective as _e, withDirectives as Be, resolveDynamicComponent as be, mergeProps as Ve, renderSlot as we, reactive as Me, shallowRef as Ee, createSlots as Ke, isRef as ue } from "vue";
|
|
3
|
-
import { e as R, C as J, _ as W, y as re, s as $e } from "../.chunks/forms-
|
|
4
|
-
import { _ as ye, b as se, a as Le } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-
|
|
5
|
-
import { _ as Ae } from "../.chunks/menu.vue_vue_type_style_index_0_lang-
|
|
3
|
+
import { e as R, C as J, _ as W, y as re, s as $e } from "../.chunks/forms-CIeG_5LP.es.js";
|
|
4
|
+
import { _ as ye, b as se, a as Le } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-Gofkt4lj.es.js";
|
|
5
|
+
import { _ as Ae } from "../.chunks/menu.vue_vue_type_style_index_0_lang-uGV-A-kW.es.js";
|
|
6
6
|
import { getSearcherGIcon as Oe, getLangLabel as Re, getDeviceGIcon as Ne } from "../utils/searchers.js";
|
|
7
7
|
import { storage as G } from "../utils/dom.js";
|
|
8
8
|
import { TopPopupWorker as qe } from "../popup/worker.js";
|
package/tabsView/tabsView.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","vue","../.chunks/forms-
|
|
1
|
+
define(["require","exports","vue","../.chunks/forms-DHMogHmw.amd","../utils/route.amd","../.chunks/store-esTid5oI.amd","../popup/popup.amd","../utils/system.amd","../require/css.amd!../assets/tabsView.css"],function(X,h,e,m,f,_,S,L){"use strict";if(typeof e>"u")var e=window.Vue;const g=(o,n)=>`top:${String(o)}:${n}`,y={loadLocalStorge:(o,n)=>{if(!n.$id)return;const t=g(o,n.$id);try{const a=JSON.parse(localStorage.getItem(t));typeof a==typeof n[o]&&(n[o]=a)}catch{console.warn(new Error(`В localStorage[${t}] не корректный json`))}},addSaverLocalStorge:(o,n)=>{if(!n.$id)return;const t=g(o,n.$id);e.watch(()=>n[o],()=>{localStorage.setItem(t,JSON.stringify(n[o]))},{immediate:!0})}},k=new Set;addEventListener("popstate",o=>{k.forEach(n=>n(o))});const V=Symbol(),C=(o,n)=>{const t=_.defineStore(V,()=>{const a=e.computed(()=>o.showMenuInPopup??m.Core.state.isMobile),i=e.computed(()=>o.pageMod),u=e.ref(!1),r=e.ref(void 0),l=e.ref(!0);return{showMenuInPopup:a,pageMod:i,isShort:u,activeItemName:n,component:r,scrollable:l}},o.idState);if(o.isShortable){const a="isShort";y.loadLocalStorge(a,t),y.addSaverLocalStorge(a,t)}if(t.$id){const a=i=>{n.value=f.getHash(t.$id)};k.add(a)}return t},w=()=>_.useStore(V),P={key:1,class:"top-ellipsis"},v=e.defineComponent({__name:"menuItem",props:{name:{},href:{},icon:{},disabled:{type:Boolean},component:{default:void 0},scrollable:{type:Boolean,default:!0}},setup(o){const n=o,t=w(),a=e.computed(()=>n.name&&t.$id?f.genHash(t.$id,n.name):n.href),i=e.computed(()=>t.showMenuInPopup?S.TopPopupListItem:a?"a":"button"),u=r=>{!n.href&&a.value&&r.preventDefault(),n.name&&(t.activeItemName=n.name)};return(r,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.value),{target:"_self",class:e.normalizeClass({"top-tabsView_menuItem":!e.unref(t).showMenuInPopup,"top-active":r.name&&e.unref(t).activeItemName===r.name,"top-disabled":r.disabled,"top-spa-disabled":!0}),href:a.value,"data-top-icon":r.icon||void 0,disabled:r.disabled||void 0,onClick:u},{default:e.withCtx(()=>[e.unref(t).showMenuInPopup?e.renderSlot(r.$slots,"default",{key:0}):r.$slots.default&&!e.unref(t).isShort?(e.openBlock(),e.createElementBlock("span",P,[e.renderSlot(r.$slots,"default")])):e.createCommentVNode("",!0)]),_:3},8,["class","href","data-top-icon","disabled"]))}}),B=o=>(o==null?void 0:o.name)==="AsyncComponentWrapper"&&!(o!=null&&o.__asyncResolved),E=async(o,n)=>{(o==null?void 0:o.name)==="AsyncComponentWrapper"&&(o!=null&&o.__asyncResolved||(o.__asyncLoader(),await L.sleepWhile(()=>n()&&B(o),200)))},z={class:"top-tabsView_menuOpener"},R=["data-top-icon"],O={class:"top-ellipsis"},D={class:"top-tabsView_menuList"},H={key:0,class:"top-tabsView_menuFooter"},K=e.defineComponent({__name:"menu",props:e.mergeModels({isShortable:{type:Boolean},isLoading:{type:Boolean}},{isLoading:{},isLoadingModifiers:{}}),emits:["update:isLoading"],setup(o){const n=e.useModel(o,"isLoading"),t=w(),a=e.useSlots(),i=new Map,u=()=>{if(!a.default)return;const c=a.default().find(s=>s.key==="_menu");c&&r(c.children)},r=c=>{c.forEach(s=>{var M,$,N,T;if(s.type.__name&&s.type.__name!==v.__name)return;if(!s.type.__name&&typeof s.children=="object"){r(s.children);return}if(!((M=s.props)!=null&&M.name)||($=s.props)!=null&&$.disabled)return;const I={title:((T=(N=s.children).default)==null?void 0:T.call(N)[0].children).trim(),icon:s.props.icon,component:s.props.component?e.markRaw(s.props.component):v.props.component.default,scrollable:s.props.scrollable??v.props.scrollable.default};i.set(s.props.name,I)})},l=e.ref(null);let d=0;e.watch(()=>t.activeItemName,async()=>{const c=++d;if(i.size===0&&u(),i.size===0){t.activeItemName="";return}if(l.value=i.get(t.activeItemName)??null,!l.value&&t.$id){const s=f.getHash(t.$id);if(l.value=i.get(s)??null,l.value){t.activeItemName=s;return}}if(!l.value){t.activeItemName=i.keys().next().value;return}if(l.value.component===t.component){n.value=!1;return}t.$id&&f.setHash(t.$id,t.activeItemName,!1),n.value=!0,await E(l.value.component,()=>c===d),c===d&&(t.scrollable=l.value.scrollable,t.component=l.value.component,l.value&&!t.component&&console.warn(`Компонент вкладки ${t.activeItemName} не найден. Добавьте props.component для пункта меню ${t.activeItemName}.`))},{immediate:!0});const p=e.ref();let b;return e.onMounted(()=>{b=new ResizeObserver(()=>{p.value.parentElement.style.setProperty("--top-tabsView-contents-offset-top",p.value.offsetHeight+"px")}),b.observe(p.value)}),e.onUnmounted(()=>{b.disconnect()}),(c,s)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"elRef",ref:p,class:e.normalizeClass({"top-tabsView_menu":!0,"top-tabsView_menu-inPopup_0":!e.unref(t).showMenuInPopup,"top-tabsView_menu-inPopup_1":e.unref(t).showMenuInPopup,"top-tabsView_menu-short":e.unref(t).isShort&&!e.unref(t).showMenuInPopup})},[e.unref(t).showMenuInPopup?(e.openBlock(),e.createBlock(e.unref(S.TopPopup),{key:0},{opener:e.withCtx(()=>[e.createElementVNode("div",z,[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-tabsView_menuOpenerActiveItem","data-top-icon":l.value.icon},[e.createElementVNode("span",O,e.toDisplayString(l.value.title),1)],8,R)):e.createCommentVNode("",!0),s[1]||(s[1]=e.createElementVNode("div",{class:"top-tabsView_menuOpenerIcon","data-top-icon":""},null,-1))])]),contentList:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",D,[e.renderSlot(c.$slots,"default")]),c.isShortable?(e.openBlock(),e.createElementBlock("div",H,[c.isShortable?(e.openBlock(),e.createBlock(v,{key:0,icon:e.unref(t).isShort?"":"",onClick:s[0]||(s[0]=I=>e.unref(t).isShort=!e.unref(t).isShort)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t).isShort?"":"Свернуть"),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],64))],2))}}),j=e.defineComponent({__name:"tabsView",props:e.mergeModels({modelValue:{},pageMod:{type:Boolean},showMenuInPopup:{type:Boolean,default:void 0},isShortable:{type:Boolean,default:!1},idState:{}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(o){const n=o,t=e.useModel(o,"modelValue"),a=C(n,t),i=Math.random();n.pageMod&&m.Core.state.documentClassModificators.set(i,"top-hasTabsViewPageMod"),e.onUnmounted(()=>{n.pageMod&&m.Core.state.documentClassModificators.delete(i),a.$id&&f.delHash(a.$id,a.activeItemName,!0)});const u=e.ref(),r=e.ref(!1);return e.watch([u,()=>a.component],()=>{r.value=B(a.component)},{immediate:!0}),(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tabsView":!0,"top-tabsView-pageMod":n.pageMod,"top-tabsView-inPopup":e.unref(a).showMenuInPopup})},[e.createVNode(K,{isShortable:l.isShortable,isLoading:r.value,"onUpdate:isLoading":d[0]||(d[0]=p=>r.value=p)},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"menu")]),_:3},8,["isShortable","isLoading"]),e.createElementVNode("div",{class:e.normalizeClass({"top-tabsView_contents":!0,"top-tabsView_contents-isLoading":r.value,"top-tabsView_contents-noScrollable":!e.unref(a).scrollable})},[r.value?(e.openBlock(),e.createBlock(m.TopLoadbar$1,{key:0})):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.KeepAlive,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(a).component),{ref_key:"componentRef",ref:u},null,512))],1024))],2)],2))}}),A={},q={class:"top-tabsView_menuDelimeter"};function F(o,n){return e.openBlock(),e.createElementBlock("div",q)}const U=m._export_sfc(A,[["render",F]]),W=e.defineComponent({__name:"menuTitle",props:{isSubtitle:{type:Boolean}},setup(o){const n=w();return(t,a)=>e.unref(n).showMenuInPopup?(e.openBlock(),e.createBlock(e.unref(S.TopPopupListItem),{key:0,type:"title"},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3})):e.unref(n).isShort?(e.openBlock(),e.createBlock(U,{key:1})):(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass({"top-tabsView_menuTitle":!0,"top-tabsView_menuTitle-subtitle":t.isSubtitle})},[e.renderSlot(t.$slots,"default")],2))}}),J=j,G=v,Q=W;h.TopTabsView=J,h.TopTabsViewMenuItem=G,h.TopTabsViewMenuTitle=Q,Object.defineProperty(h,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=tabsView.amd.js.map
|
package/tabsView/tabsView.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Core as U } from "../core/app.js";
|
|
2
2
|
import { watch as k, computed as I, ref as f, defineComponent as M, openBlock as l, createBlock as m, resolveDynamicComponent as O, normalizeClass as w, unref as i, withCtx as b, renderSlot as v, createElementBlock as d, createCommentVNode as y, mergeModels as z, useModel as D, useSlots as G, onMounted as Q, onUnmounted as H, createElementVNode as S, toDisplayString as R, Fragment as X, createTextVNode as Y, markRaw as Z, createVNode as x, KeepAlive as ee } from "vue";
|
|
3
|
-
import { C as $, x as te, b as oe } from "../.chunks/forms-
|
|
3
|
+
import { C as $, x as te, b as oe } from "../.chunks/forms-CIeG_5LP.es.js";
|
|
4
4
|
import { getHash as K, genHash as ae, setHash as se, delHash as ne } from "../utils/route.js";
|
|
5
5
|
import { d as ie, u as re } from "../.chunks/store-CX_6ZXhO.es.js";
|
|
6
6
|
import { TopPopupListItem as A, TopPopup as le } from "../popup/popup.js";
|