@topvisor/ui 1.0.41 → 1.0.42-TopSelector.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.chunks/{core-D2o3elGA.amd.js → core-CNHOrWnw.amd.js} +2 -2
- package/.chunks/{core-D2o3elGA.amd.js.map → core-CNHOrWnw.amd.js.map} +1 -1
- package/.chunks/{core-CwjGTMhd.es.js → core-CZLRhkk2.es.js} +4 -4
- package/.chunks/{core-CwjGTMhd.es.js.map → core-CZLRhkk2.es.js.map} +1 -1
- package/.chunks/{datepicker-N83oX3hx.es.js → datepicker-BZ-GKoJc.es.js} +2 -2
- package/.chunks/{datepicker-N83oX3hx.es.js.map → datepicker-BZ-GKoJc.es.js.map} +1 -1
- package/.chunks/{datepicker-Byyye2pn.amd.js → datepicker-DnMEQ2c7.amd.js} +2 -2
- package/.chunks/{datepicker-Byyye2pn.amd.js.map → datepicker-DnMEQ2c7.amd.js.map} +1 -1
- package/.chunks/{dialog_selectorRegions-pDIYvl7b.amd.js → dialog_selectorRegions-B7ylHRje.amd.js} +2 -2
- package/.chunks/{dialog_selectorRegions-pDIYvl7b.amd.js.map → dialog_selectorRegions-B7ylHRje.amd.js.map} +1 -1
- package/.chunks/{dialog_selectorRegions-lYV2SJBx.es.js → dialog_selectorRegions-CR77RefG.es.js} +4 -4
- package/.chunks/{dialog_selectorRegions-lYV2SJBx.es.js.map → dialog_selectorRegions-CR77RefG.es.js.map} +1 -1
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-C0n3o7PD.amd.js +2 -0
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-C0n3o7PD.amd.js.map +1 -0
- package/.chunks/{dialogs.vue_vue_type_script_setup_true_lang-X3S_WcSV.es.js → dialogs.vue_vue_type_script_setup_true_lang-sExyADFk.es.js} +113 -97
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-sExyADFk.es.js.map +1 -0
- package/.chunks/{forms-C-fyoosd.es.js → forms-1PEYT7sp.es.js} +482 -470
- package/.chunks/{forms-C-fyoosd.es.js.map → forms-1PEYT7sp.es.js.map} +1 -1
- package/.chunks/forms-BduN5hFf.amd.js +3 -0
- package/.chunks/{forms-DO87ZZk9.amd.js.map → forms-BduN5hFf.amd.js.map} +1 -1
- package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-DDQSxC8E.amd.js → listItem.vue_vue_type_script_setup_true_lang-C660hIcG.amd.js} +2 -2
- package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-DDQSxC8E.amd.js.map → listItem.vue_vue_type_script_setup_true_lang-C660hIcG.amd.js.map} +1 -1
- package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-BJTTvdc7.es.js → listItem.vue_vue_type_script_setup_true_lang-DPwnYUm-.es.js} +2 -2
- package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-BJTTvdc7.es.js.map → listItem.vue_vue_type_script_setup_true_lang-DPwnYUm-.es.js.map} +1 -1
- package/.chunks/{menu.vue_vue_type_style_index_0_lang-Bi9Z81pC.es.js → menu.vue_vue_type_style_index_0_lang-BYP0xpzD.es.js} +2 -2
- package/.chunks/{menu.vue_vue_type_style_index_0_lang-Bi9Z81pC.es.js.map → menu.vue_vue_type_style_index_0_lang-BYP0xpzD.es.js.map} +1 -1
- package/.chunks/{menu.vue_vue_type_style_index_0_lang-7eYwnVLw.amd.js → menu.vue_vue_type_style_index_0_lang-C9cIXmj2.amd.js} +2 -2
- package/.chunks/{menu.vue_vue_type_style_index_0_lang-7eYwnVLw.amd.js.map → menu.vue_vue_type_style_index_0_lang-C9cIXmj2.amd.js.map} +1 -1
- package/.chunks/{notice-DCONQ8rR.es.js → notice-C505E22P.es.js} +2 -2
- package/.chunks/{notice-DCONQ8rR.es.js.map → notice-C505E22P.es.js.map} +1 -1
- package/.chunks/{notice-B8nfJMJN.amd.js → notice-CEYLelBs.amd.js} +2 -2
- package/.chunks/{notice-B8nfJMJN.amd.js.map → notice-CEYLelBs.amd.js.map} +1 -1
- package/.chunks/{page.vue_vue_type_script_setup_true_lang-Cg3dLy7K.amd.js → page.vue_vue_type_script_setup_true_lang-DpmKeCWn.amd.js} +2 -2
- package/.chunks/page.vue_vue_type_script_setup_true_lang-DpmKeCWn.amd.js.map +1 -0
- package/.chunks/{page.vue_vue_type_script_setup_true_lang-Dze2ZUr3.es.js → page.vue_vue_type_script_setup_true_lang-_-EoskSt.es.js} +4 -4
- package/.chunks/page.vue_vue_type_script_setup_true_lang-_-EoskSt.es.js.map +1 -0
- package/.chunks/{popup-PpCQY5Zi.es.js → popup-Bh3WbTKH.es.js} +106 -73
- package/.chunks/popup-Bh3WbTKH.es.js.map +1 -0
- package/.chunks/popup-C5-ffkMJ.amd.js +2 -0
- package/.chunks/popup-C5-ffkMJ.amd.js.map +1 -0
- package/.chunks/{utils-DAIrXU57.amd.js → utils-BgjhCn4H.amd.js} +2 -2
- package/.chunks/{utils-DAIrXU57.amd.js.map → utils-BgjhCn4H.amd.js.map} +1 -1
- package/.chunks/{utils-BcKnFj1j.es.js → utils-CMJHpNDX.es.js} +246 -169
- package/.chunks/utils-CMJHpNDX.es.js.map +1 -0
- package/.chunks/{utils-DsICGMuv.es.js → utils-DEyMm4Iq.es.js} +2 -2
- package/.chunks/{utils-DsICGMuv.es.js.map → utils-DEyMm4Iq.es.js.map} +1 -1
- package/.chunks/utils-DWmOkm95.amd.js +2 -0
- package/.chunks/utils-DWmOkm95.amd.js.map +1 -0
- package/assets/core.css +1 -1
- package/assets/forms.css +1 -1
- package/assets/formsExt.css +1 -1
- package/assets/notice.css +1 -1
- package/assets/project.css +1 -1
- package/charts/charts.amd.js +1 -1
- package/charts/charts.js +1 -1
- package/components/dialog/dialog/dialogs/dialogs.vue.d.ts +3 -0
- package/components/dialog/lib/types.d.ts +23 -0
- package/components/dialog/lib/utils.d.ts +8 -8
- package/components/dialog/lib/utils.globalEvents.d.ts +2 -2
- package/components/dialog/lib/worker.d.ts +12 -11
- package/components/forms/button/button.vue.d.ts +2 -5
- package/components/forms/button/types.d.ts +10 -0
- package/components/formsExt/formsExt.d.ts +2 -0
- package/components/formsExt/policy/policy.vue.d.ts +4 -0
- package/components/formsExt/policy/types.d.ts +10 -0
- package/components/formsExt/selector2/composables/useAPI.d.ts +1 -1
- package/components/formsExt/selector2/composables/useMenu.d.ts +5 -1
- package/components/formsExt/selector2/selector2.vue.d.ts +3 -4
- package/components/formsExt/selector2/stories/dummyAPIRequest.d.ts +1 -2
- package/components/formsExt/selector2/types.d.ts +48 -22
- package/components/popup/lib/popup.d.ts +1 -0
- package/components/popup/lib/worker.d.ts +4 -2
- package/core/app.amd.js +1 -1
- package/core/app.js +5 -5
- package/core/core/core.d.ts +1 -1
- package/core/core/options.d.ts +7 -6
- package/core/core/state.d.ts +1 -1
- package/core/plugins/core.d.ts +1 -1
- package/core/utils/date.d.ts +30 -12
- package/core/utils/dom.d.ts +11 -1
- package/core/utils/string.d.ts +1 -1
- package/dialog/dialog.amd.js +1 -1
- package/dialog/dialog.js +2 -2
- package/forms/forms.amd.js +1 -1
- package/forms/forms.js +1 -1
- package/formsExt/formsExt.amd.js +1 -1
- package/formsExt/formsExt.amd.js.map +1 -1
- package/formsExt/formsExt.js +432 -309
- package/formsExt/formsExt.js.map +1 -1
- package/icomoon/demo.html +15 -1
- package/icomoon/fonts/Topvisor-2.eot +0 -0
- package/icomoon/fonts/Topvisor-2.svg +1 -0
- package/icomoon/fonts/Topvisor-2.ttf +0 -0
- package/icomoon/fonts/Topvisor-2.woff +0 -0
- package/icomoon/selection.json +1 -1
- package/icomoon/style.css +8 -5
- package/layout/layout.amd.js +1 -1
- package/layout/layout.js +1 -1
- 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.amd.js.map +1 -1
- package/popup/worker.js +30 -21
- package/popup/worker.js.map +1 -1
- package/project/project.amd.js +1 -1
- package/project/project.amd.js.map +1 -1
- package/project/project.js +6 -6
- package/project/project.js.map +1 -1
- package/tabsView/tabsView.amd.js +1 -1
- package/tabsView/tabsView.js +1 -1
- package/utils/clipboard.amd.js +1 -1
- package/utils/clipboard.js +1 -1
- package/utils/date.amd.js +1 -1
- package/utils/date.js +4 -3
- package/utils/device.amd.js +1 -1
- package/utils/device.js +1 -1
- package/utils/dom.amd.js +1 -1
- package/utils/dom.amd.js.map +1 -1
- package/utils/dom.js +27 -22
- package/utils/dom.js.map +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/searchers.amd.js +1 -1
- package/utils/searchers.js +3 -3
- package/utils/string.amd.js +1 -1
- package/utils/string.amd.js.map +1 -1
- package/utils/string.js +34 -30
- package/utils/string.js.map +1 -1
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-B14m3p7q.amd.js +0 -2
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-B14m3p7q.amd.js.map +0 -1
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-X3S_WcSV.es.js.map +0 -1
- package/.chunks/forms-DO87ZZk9.amd.js +0 -3
- package/.chunks/page.vue_vue_type_script_setup_true_lang-Cg3dLy7K.amd.js.map +0 -1
- package/.chunks/page.vue_vue_type_script_setup_true_lang-Dze2ZUr3.es.js.map +0 -1
- package/.chunks/popup-PpCQY5Zi.es.js.map +0 -1
- package/.chunks/popup-XXfdNLmr.amd.js +0 -2
- package/.chunks/popup-XXfdNLmr.amd.js.map +0 -1
- package/.chunks/utils-BcKnFj1j.es.js.map +0 -1
- package/.chunks/utils-pvFg1FqE.amd.js +0 -2
- package/.chunks/utils-pvFg1FqE.amd.js.map +0 -1
- package/icomoon/Topvisor icons.json +0 -6612
package/assets/project.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.top-selectorCompetitors_opener.top-button{width:100%}.top-select-searcher_key[data-value="0"]:after,.top-select-searcher_key[data-value="20"]:after,.top-select-searcher_key[data-value="21"]:after{color:red}.top-select-searcher_key[data-value="1"]:after{color:var(--color-bg-primary-2)}.top-select-searcher_key[data-value="2"]:after{color:#005ff9}.top-select-searcher_key[data-value="3"]:after{color:#01509b}.top-select-searcher_key[data-value="4"]:after{color:red}.top-select-searcher_key[data-value="5"]:after{color:#008373}.top-select-searcher_key[data-value="6"]:after{color:#4800b5}.top-select-searcher_key[data-value="7"]:after{color:#c00}.top-select-searcher_key[data-value="8"]:after{color:#1badf8}.top-select-searcher_key[data-value="9"]:after{color:#00ceff}.top-selectorRegion{width:340px;display:inline-flex;vertical-align:middle}.top-selectorRegion>.top-select{flex-grow:1}.top-selectorRegion>.top-select:focus-within{z-index:4}.top-selectorRegion>.top-select>.top-select_select:hover,.top-selectorRegion>.top-select>.top-select_select.top-error{z-index:1}.top-selectorRegion>.top-select-searcher_key{width:140px;max-width:160px;margin-right:-1px}.top-selectorRegion>.top-select-region>select{border-top-left-radius:0;border-bottom-left-radius:0}.top-selectorRegion>.top-select-region{--top-icon-size: 20px;--top-icon-color: var(--color-text-primary);--top-icon2-size: 20px;--top-icon2-color: var(--color-text-primary)}.top-selectorRegion>.top-select-region[data-top-icon][data-top-icon2]{--top-icon2-size: 16px}.top-selectorRegion>.top-select-region[data-top-icon][data-top-icon2]:after{text-indent:-4px}.top-selectorRegion>[name=compare]{border-top-left-radius:0;border-bottom-left-radius:0;flex-grow:1}.top-selectorRegion>[name=compare]:after{content:"(" attr(data-count-compare-regions-indexes) ")";margin:0 0 0 6px}.top-selectorRegion:not(.top-selectorRegion-onlySearcher)>.top-select-searcher_key>select{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.top-selectorRegion:not(.top-selectorRegion-onlySearcher)>.top-select-searcher_key[data-value="-1"]>select{border-right:none}.top-selectorRegion-onlySearcher{width:140px}[data-tag_id]{display:inline-flex;gap:var(--top-gap-2);align-items:center}[data-tag_id=""]{border-color:#bdc3c7!important;color:#55555f!important}[data-tag_color_id="1"]{border-color:var(--color-tag-1)!important;color:#55555f!important}[data-tag_color_id="2"]{border-color:var(--color-tag-2)!important;color:var(--color-tag-2)!important}[data-tag_color_id="3"]{border-color:var(--color-tag-3)!important;color:var(--color-tag-3)!important}[data-tag_color_id="4"]{border-color:var(--color-tag-4)!important;color:var(--color-tag-4)!important}[data-tag_color_id="5"]{border-color:var(--color-tag-5)!important;color:var(--color-tag-5)!important}[data-tag_color_id="6"]{border-color:var(--color-tag-6)!important;color:var(--color-tag-6)!important}[data-tag_color_id="7"]{border-color:var(--color-tag-7)!important;color:var(--color-tag-7)!important}[data-tag_color_id="8"]{border-color:var(--color-tag-8)!important;color:var(--color-tag-8)!important}[data-tag_color_id="9"]{border-color:var(--color-tag-9)!important;color:var(--color-tag-9)!important}[data-tag_color_id="10"]{border-color:var(--color-tag-10)!important;color:var(--color-tag-10)!important}[data-tag_id=""].top-tagSelector-active{background:#bdc3c7!important}[data-tag_color_id="1"].top-tagSelector-active{background:var(--color-tag-1)!important}[data-tag_color_id="2"].top-tagSelector-active{background:var(--color-tag-2)!important}[data-tag_color_id="3"].top-tagSelector-active{background:var(--color-tag-3)!important}[data-tag_color_id="4"].top-tagSelector-active{background:var(--color-tag-4)!important}[data-tag_color_id="5"].top-tagSelector-active{background:var(--color-tag-5)!important}[data-tag_color_id="6"].top-tagSelector-active{background:var(--color-tag-6)!important}[data-tag_color_id="7"].top-tagSelector-active{background:var(--color-tag-7)!important}[data-tag_color_id="8"].top-tagSelector-active{background:var(--color-tag-8)!important}[data-tag_color_id="9"].top-tagSelector-active{background:var(--color-tag-9)!important}[data-tag_color_id="10"].top-tagSelector-active{background:var(--color-tag-10)!important}[data-tag_id=all]{border-color:transparent!important;background:none!important;color:var(--color-text-2)}[data-tag_id=all]:before{content:"";color:var(--color-tag-all)!important;font-size:26px;min-width:calc(100% + 4px);height:calc(100% + 4px);margin-top:-18px;margin-left:-8px}.top-tagSelector-filter [data-tag_id],.top-tagSelector_popup [data-tag_id]{--top-tag-selector-size: 10px;box-sizing:content-box;border-radius:100%;border:2px solid var(--color-layout-front-1);background:var(--color-layout-front-1);width:var(--top-tag-selector-size);height:var(--top-tag-selector-size);font-size:calc(var(--top-tag-selector-size) + 4px)}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id],[data-tag_id].top-tagSelector-excluded{position:relative}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id]:before,[data-tag_id].top-tagSelector-excluded:before{content:"";width:calc(var(--top-tag-selector-size) * 2);height:1px;background:inherit;transform:rotate(-45deg);filter:brightness(80%);display:block;position:absolute;top:calc(var(--top-tag-selector-size) / 2);left:calc(0px - var(--top-tag-selector-size) / 2)}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id]:not([data-tag_id=all]):not(.top-tagSelector-active):before{background:#aaa}[data-tag_id].top-tagSelector-excluded:after,[data-tag_id].top-tagSelector-excluded~.top-tagSelector_tagListItemName{text-decoration:line-through}.top-popup_listItem.top-tagSelector-active{background:var(--top-popup-background-color-active)!important}.top-popup_listItem:hover [data-tag_id=all]:before{border-color:var(--top-popup-background-color-hover)}.top-popup_listItem.top-tagSelector-active [data-tag_id=all]:before,.top-popup_listItem.top-active [data-tag_id=all]:before{border-color:var(--top-popup-background-color-active)}.top-tagSelector_tagListItem.top-popup_listItem{padding-top:var(--top-padding-2)!important;padding-bottom:var(--top-padding-2)!important;gap:10px}.top-tagSelector_tagListItemName{border-radius:var(--top-radius-1);width:120px;padding:4px 2px;margin:-4px -2px;text-overflow:ellipsis;overflow:hidden;flex-grow:1}.top-tagSelector_edit{--top-icon-size: 18px;--top-icon-color: var(--color-text-3);width:20px;flex-grow:0}.top-tagSelector_edit:before{line-height:0}.top-tagSelector_edit{opacity:0}.top-tagSelector_edit:hover{--top-icon-color: var(--color-text-primary)}.top-tagSelector_tagListItem:hover .top-tagSelector_edit,.top-tagSelector_tagListItem-inEdit .top-tagSelector_edit{cursor:pointer;opacity:1}.top-tagSelector_tagListItem-inEdit{background:var(--color-layout-front-3)!important;outline:1px dashed var(--color-line-2);outline-offset:-1px}.top-tagSelector_tagListItem-inEdit .top-tagSelector_tagListItemName{cursor:text;background:var(--color-layout-front-1)}.top-tagSelector_tagListItem-disabled{cursor:not-allowed!important;opacity:.85}.top-tagSelector_tagListItem-disabled:hover{background:inherit}.top-tagSelector_tagListItem-disabled [data-tag_id]{opacity:.6}.top-tagSelector{cursor:pointer;min-width:0;white-space:nowrap;justify-content:left}.top-tagSelector.top-button{width:112px;vertical-align:middle}.top-tagSelector.top-button.top-
|
|
1
|
+
.top-selectorCompetitors_opener.top-button{width:100%}.top-select-searcher_key[data-value="0"]:after,.top-select-searcher_key[data-value="20"]:after,.top-select-searcher_key[data-value="21"]:after{color:red}.top-select-searcher_key[data-value="1"]:after{color:var(--color-bg-primary-2)}.top-select-searcher_key[data-value="2"]:after{color:#005ff9}.top-select-searcher_key[data-value="3"]:after{color:#01509b}.top-select-searcher_key[data-value="4"]:after{color:red}.top-select-searcher_key[data-value="5"]:after{color:#008373}.top-select-searcher_key[data-value="6"]:after{color:#4800b5}.top-select-searcher_key[data-value="7"]:after{color:#c00}.top-select-searcher_key[data-value="8"]:after{color:#1badf8}.top-select-searcher_key[data-value="9"]:after{color:#00ceff}.top-selectorRegion{width:340px;display:inline-flex;vertical-align:middle}.top-selectorRegion>.top-select{flex-grow:1}.top-selectorRegion>.top-select:focus-within{z-index:4}.top-selectorRegion>.top-select>.top-select_select:hover,.top-selectorRegion>.top-select>.top-select_select.top-error{z-index:1}.top-selectorRegion>.top-select-searcher_key{width:140px;max-width:160px;margin-right:-1px}.top-selectorRegion>.top-select-region>select{border-top-left-radius:0;border-bottom-left-radius:0}.top-selectorRegion>.top-select-region{--top-icon-size: 20px;--top-icon-color: var(--color-text-primary);--top-icon2-size: 20px;--top-icon2-color: var(--color-text-primary)}.top-selectorRegion>.top-select-region[data-top-icon][data-top-icon2]{--top-icon2-size: 16px}.top-selectorRegion>.top-select-region[data-top-icon][data-top-icon2]:after{text-indent:-4px}.top-selectorRegion>[name=compare]{border-top-left-radius:0;border-bottom-left-radius:0;flex-grow:1}.top-selectorRegion>[name=compare]:after{content:"(" attr(data-count-compare-regions-indexes) ")";margin:0 0 0 6px}.top-selectorRegion:not(.top-selectorRegion-onlySearcher)>.top-select-searcher_key>select{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.top-selectorRegion:not(.top-selectorRegion-onlySearcher)>.top-select-searcher_key[data-value="-1"]>select{border-right:none}.top-selectorRegion-onlySearcher{width:140px}[data-tag_id]{display:inline-flex;gap:var(--top-gap-2);align-items:center}[data-tag_id=""]{border-color:#bdc3c7!important;color:#55555f!important}[data-tag_color_id="1"]{border-color:var(--color-tag-1)!important;color:#55555f!important}[data-tag_color_id="2"]{border-color:var(--color-tag-2)!important;color:var(--color-tag-2)!important}[data-tag_color_id="3"]{border-color:var(--color-tag-3)!important;color:var(--color-tag-3)!important}[data-tag_color_id="4"]{border-color:var(--color-tag-4)!important;color:var(--color-tag-4)!important}[data-tag_color_id="5"]{border-color:var(--color-tag-5)!important;color:var(--color-tag-5)!important}[data-tag_color_id="6"]{border-color:var(--color-tag-6)!important;color:var(--color-tag-6)!important}[data-tag_color_id="7"]{border-color:var(--color-tag-7)!important;color:var(--color-tag-7)!important}[data-tag_color_id="8"]{border-color:var(--color-tag-8)!important;color:var(--color-tag-8)!important}[data-tag_color_id="9"]{border-color:var(--color-tag-9)!important;color:var(--color-tag-9)!important}[data-tag_color_id="10"]{border-color:var(--color-tag-10)!important;color:var(--color-tag-10)!important}[data-tag_id=""].top-tagSelector-active{background:#bdc3c7!important}[data-tag_color_id="1"].top-tagSelector-active{background:var(--color-tag-1)!important}[data-tag_color_id="2"].top-tagSelector-active{background:var(--color-tag-2)!important}[data-tag_color_id="3"].top-tagSelector-active{background:var(--color-tag-3)!important}[data-tag_color_id="4"].top-tagSelector-active{background:var(--color-tag-4)!important}[data-tag_color_id="5"].top-tagSelector-active{background:var(--color-tag-5)!important}[data-tag_color_id="6"].top-tagSelector-active{background:var(--color-tag-6)!important}[data-tag_color_id="7"].top-tagSelector-active{background:var(--color-tag-7)!important}[data-tag_color_id="8"].top-tagSelector-active{background:var(--color-tag-8)!important}[data-tag_color_id="9"].top-tagSelector-active{background:var(--color-tag-9)!important}[data-tag_color_id="10"].top-tagSelector-active{background:var(--color-tag-10)!important}[data-tag_id=all]{border-color:transparent!important;background:none!important;color:var(--color-text-2)}[data-tag_id=all]:before{content:"";color:var(--color-tag-all)!important;font-size:26px;min-width:calc(100% + 4px);height:calc(100% + 4px);margin-top:-18px;margin-left:-8px}.top-tagSelector-filter [data-tag_id],.top-tagSelector_popup [data-tag_id]{--top-tag-selector-size: 10px;box-sizing:content-box;border-radius:100%;border:2px solid var(--color-layout-front-1);background:var(--color-layout-front-1);width:var(--top-tag-selector-size);height:var(--top-tag-selector-size);font-size:calc(var(--top-tag-selector-size) + 4px)}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id],[data-tag_id].top-tagSelector-excluded{position:relative}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id]:before,[data-tag_id].top-tagSelector-excluded:before{content:"";width:calc(var(--top-tag-selector-size) * 2);height:1px;background:inherit;transform:rotate(-45deg);filter:brightness(80%);display:block;position:absolute;top:calc(var(--top-tag-selector-size) / 2);left:calc(0px - var(--top-tag-selector-size) / 2)}.top-body-press_ctrl .top-tagSelector_tagListItem-canExclude:hover [data-tag_id]:not([data-tag_id=all]):not(.top-tagSelector-active):before{background:#aaa}[data-tag_id].top-tagSelector-excluded:after,[data-tag_id].top-tagSelector-excluded~.top-tagSelector_tagListItemName{text-decoration:line-through}.top-popup_listItem.top-tagSelector-active{background:var(--top-popup-background-color-active)!important}.top-popup_listItem:hover [data-tag_id=all]:before{border-color:var(--top-popup-background-color-hover)}.top-popup_listItem.top-tagSelector-active [data-tag_id=all]:before,.top-popup_listItem.top-active [data-tag_id=all]:before{border-color:var(--top-popup-background-color-active)}.top-tagSelector_tagListItem.top-popup_listItem{padding-top:var(--top-padding-2)!important;padding-bottom:var(--top-padding-2)!important;gap:10px}.top-tagSelector_tagListItemName{border-radius:var(--top-radius-1);width:120px;padding:4px 2px;margin:-4px -2px;text-overflow:ellipsis;overflow:hidden;flex-grow:1}.top-tagSelector_edit{--top-icon-size: 18px;--top-icon-color: var(--color-text-3);width:20px;flex-grow:0}.top-tagSelector_edit:before{line-height:0}.top-tagSelector_edit{opacity:0}.top-tagSelector_edit:hover{--top-icon-color: var(--color-text-primary)}.top-tagSelector_tagListItem:hover .top-tagSelector_edit,.top-tagSelector_tagListItem-inEdit .top-tagSelector_edit{cursor:pointer;opacity:1}.top-tagSelector_tagListItem-inEdit{background:var(--color-layout-front-3)!important;outline:1px dashed var(--color-line-2);outline-offset:-1px}.top-tagSelector_tagListItem-inEdit .top-tagSelector_tagListItemName{cursor:text;background:var(--color-layout-front-1)}.top-tagSelector_tagListItem-disabled{cursor:not-allowed!important;opacity:.85}.top-tagSelector_tagListItem-disabled:hover{background:inherit}.top-tagSelector_tagListItem-disabled [data-tag_id]{opacity:.6}.top-tagSelector{cursor:pointer;min-width:0;white-space:nowrap;justify-content:left}.top-tagSelector.top-button{width:112px;vertical-align:middle}.top-tagSelector.top-button.top-as-selector{width:132px}.top-tagSelector-filter{gap:var(--top-gap-1)}.top-tagSelector-filter [data-tag_id=all]:before{margin-right:6px}.top-tagSelector-filter.top-tagSelector-selectedOne [data-tag_id]:after{content:attr(title);margin-left:20px;min-width:74px;text-align:left;line-height:1.2;text-overflow:ellipsis;overflow:hidden}.top-tagSelector-filter.top-tagSelector-selectedOne [data-tag_id=all]:after{margin-left:0}.top-button.top-tagSelector-filter.top-tagSelector-toTwoLine{flex-wrap:wrap;align-content:center}.top-button.top-tagSelector-filter.top-tagSelector-toTwoLine [data-tag_id]{--top-tag-selector-size: 8px}.top-button.top-tagSelector-filter.top-tagSelector-toTwoLine [data-tag_id]:nth-child(5){margin-right:5px}.top-tagSelector-setter_single{position:relative;display:flex!important;flex-direction:column;flex-wrap:wrap;align-items:stretch!important}.top-tagSelector-setter_single [data-tag_id]{width:auto;min-height:20%;min-width:50%;flex:1 1 auto}.top-tagSelector_popup .top-popup{-webkit-user-select:none;user-select:none;min-width:220px!important;text-align:left}.top-tagSelector_popup .top-popup_header .top-select{flex-grow:1}
|
package/charts/charts.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","vue","../.chunks/forms-
|
|
1
|
+
define(["require","exports","vue","../.chunks/forms-BduN5hFf.amd","../utils/number.amd","../require/css.amd!../assets/charts.css"],function(L,C,e,M,g){"use strict";if(typeof e>"u")var e=window.Vue;const k=90,y=10,V=["data-top-icon"],B={class:"top-miniChart_chart"},b=["onMouseenter"],E={class:"top-miniChart_data"},_={class:"top-miniChart_dataValue"},w=["innerHTML"],D=e.defineComponent({__name:"miniChart",props:e.mergeModels({title:{},gIcon:{},color:{default:"blue"},dates:{},values:{},activeDates:{},keysForDyn:{},dynamic:{},isInvert:{type:Boolean},numberCols:{default:k},additionalHTML:{},modelValue:{},valueSuffix:{},hideChartInMobile:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(m){const o=m,s=e.useModel(m,"modelValue"),i=t=>{let l=u.value;o.isInvert&&(t-=1,l-=1);let a=l>0?Math.round(t/l*(100-y)):0;return o.isInvert?100-a:a+y},p=t=>o.activeDates.includes(t),u=e.computed(()=>Math.max(...o.values)),c=e.computed(()=>o.dates.slice().reverse()),v=e.computed(()=>o.dates.length?o.numberCols-o.dates.length:0),h=()=>{s.value=null},r=(t,l,a)=>{t.target instanceof HTMLElement&&(s.value={elCol:t.target,date:M.dateFormat(l),value:a===null?"--":a+(o.valueSuffix??"")})},n=e.computed(()=>{let t=o.dynamic;if(typeof t>"u"){const a=o.values[o.keysForDyn.start];t=o.values[o.keysForDyn.end]-a}return(t<0?-1:1)*g.percentOfNumber(Math.abs(t))}),d=e.computed(()=>{let t="stay";return o.isInvert?(n.value>0&&(t="down"),n.value<0&&(t="up")):(n.value>0&&(t="up"),n.value<0&&(t="down")),t});return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-miniChart":!0,"top-miniChart_hideChartInMobile":t.hideChartInMobile,[`top-color_${t.color}`]:!0})},[e.createElementVNode("div",{class:"top-miniChart_title top-ellipsis","data-top-icon":t.gIcon},e.toDisplayString(t.title),9,V),e.createElementVNode("div",B,[e.createElementVNode("div",{class:"top-miniChart_chartGrid",onMouseleave:l[1]||(l[1]=a=>h())},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(a,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-miniChart_chartGridCol":!0,"top-active":p(a)}),onMouseenter:z=>r(z,a,t.values[t.values.length-f-1])},[e.createElementVNode("div",{style:e.normalizeStyle("height:"+i(t.values[t.values.length-f-1])+"%")},null,4)],42,b))),256)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.value,()=>(e.openBlock(),e.createElementBlock("div",{class:"top-miniChart_chartGridCol top-miniChart_chartGridCol-none",onMouseenter:l[0]||(l[0]=a=>h())},l[2]||(l[2]=[e.createElementVNode("div",null,null,-1)]),32))),256))],32)]),e.createElementVNode("div",E,[e.createElementVNode("span",{class:e.normalizeClass({"top-miniChart_dataDynamic":!0,[`top-miniChart_dataDynamic-direction_${d.value}`]:!0})},e.toDisplayString(Math.abs(n.value)||""),3),e.createElementVNode("span",_,e.toDisplayString(e.unref(g.percentOfNumber)(t.values[t.values.length-1])||0),1)]),t.additionalHTML?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:t.additionalHTML},null,8,w)):e.createCommentVNode("",!0)],2))}}),N={key:0,class:"top-miniCharts_pages"},S=["onClick"],T=e.defineComponent({__name:"miniCharts",props:e.mergeModels({modelValue:{},countCharts:{},hideChartInMobile:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(m){const o=m,s=e.useModel(m,"modelValue"),i=e.ref(null);let p;const u=e.ref(1),c=e.ref(1),v=()=>{u.value=Math.round(i.value.scrollHeight/i.value.clientHeight)};e.watch(u,()=>{u.value<c.value&&(c.value=1)}),e.watch(()=>o.countCharts,()=>v(),{flush:"post"});const h=e.computed(()=>{if(!s.value)return{};const r=s.value.elCol.getBoundingClientRect(),n={top:r.bottom+window.scrollY+"px"};return document.documentElement.clientWidth/2>r.right?n.left=r.right+window.scrollX+10+"px":(n.left=r.left+window.scrollX-10+"px",n.transform="translate(-100%, 0)"),n});return e.onMounted(()=>{p=new ResizeObserver(()=>v()),p.observe(i.value),e.watch(c,()=>{const d=(i.value.children[0].clientHeight+parseInt(window.getComputedStyle(i.value).getPropertyValue("row-gap")))*(c.value-1);i.value.scrollTo({top:d,behavior:"smooth"})})}),e.onUnmounted(()=>{p.disconnect()}),(r,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["top-miniCharts",{"top-miniCharts":!0,scrollable:u.value>1,"top-miniCharts_hideChartInMobile":r.hideChartInMobile}]),ref_key:"elRef",ref:i},[e.renderSlot(r.$slots,"default"),u.value>1?(e.openBlock(),e.createElementBlock("div",N,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,d=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass({"top-active":d===c.value}),onClick:t=>c.value=d},null,10,S))),256))])):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-miniCharts_tooltip",style:e.normalizeStyle(h.value)},[e.createElementVNode("span",null,e.toDisplayString(s.value.date),1),e.createElementVNode("span",null,e.toDisplayString(s.value.value),1)],4)):e.createCommentVNode("",!0)]))],2))}}),H=D,I=T;C.TopMiniChart=H,C.TopMiniCharts=I,Object.defineProperty(C,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 P } from "../core/app.js";
|
|
2
2
|
import { defineComponent as T, mergeModels as S, useModel as $, computed as h, createElementBlock as i, openBlock as a, normalizeClass as f, createElementVNode as r, createCommentVNode as k, toDisplayString as g, Fragment as w, renderList as H, normalizeStyle as L, unref as F, ref as b, watch as V, onMounted as N, onUnmounted as R, renderSlot as z, createBlock as G, Teleport as O } from "vue";
|
|
3
|
-
import { c as X } from "../.chunks/forms-
|
|
3
|
+
import { c as X } from "../.chunks/forms-1PEYT7sp.es.js";
|
|
4
4
|
import { percentOfNumber as I } from "../utils/number.js";
|
|
5
5
|
const E = ["../assets/charts.css"].map((v) => import.meta.resolve(v));
|
|
6
6
|
P.insertCSSLinkToPage(E, !0);
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { TopDialogHandle } from '../composables/dialogHandle';
|
|
2
2
|
import { TopDialogComponent } from '../composables/types';
|
|
3
3
|
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
4
|
+
/**
|
|
5
|
+
* Получить компонент диалогового окна по id
|
|
6
|
+
*/
|
|
4
7
|
export declare const getDialogWorker: (id: string) => TopDialogHandle<TopDialogComponent> | undefined;
|
|
5
8
|
/**
|
|
6
9
|
* Добавить компонент диалогового окна для использования
|
|
@@ -19,3 +19,26 @@ export type TopDialogOptions = {
|
|
|
19
19
|
export type TopDialogLoad = (dialogId: string) => Promise<void>;
|
|
20
20
|
export type DecoratorOnCreate = (elDialog: HTMLElement) => Promise<void>;
|
|
21
21
|
export type MoveDirection = 'next' | 'prev' | 'none';
|
|
22
|
+
export type ElTopDialogOpener<El extends HTMLElement = HTMLElement> = El & {
|
|
23
|
+
dataset: {
|
|
24
|
+
toView: string;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
export type ElTopDialogWrapper = HTMLElement & {
|
|
28
|
+
querySelector: (selectors: '.ui-dialog-content') => ElTopDialog;
|
|
29
|
+
};
|
|
30
|
+
export type ElTopDialog = HTMLElement & {
|
|
31
|
+
getAttribute: (qualifiedName: 'id') => string;
|
|
32
|
+
closest: (el: '.ui-dialog') => ElTopDialogWrapper;
|
|
33
|
+
dataset: {
|
|
34
|
+
viewPageActive: string;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
export type ElTopDialogBody = HTMLElement;
|
|
38
|
+
export type ElTopDialogPage = HTMLElement & {
|
|
39
|
+
dataset: {
|
|
40
|
+
'view-page': string;
|
|
41
|
+
order?: string;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
export type ElTopDialogModalLayer = HTMLElement;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { MoveDirection } from './types';
|
|
2
|
-
import { $el } from '../../types';
|
|
1
|
+
import { ElTopDialog, ElTopDialogPage, MoveDirection } from './types';
|
|
3
2
|
export declare const TopDialogUtils: {
|
|
3
|
+
getElDialogById: (id: string) => ElTopDialog | null;
|
|
4
4
|
updatePageVue: (dialogId: string, pageName?: string, pageNameNext?: string) => Promise<void>;
|
|
5
5
|
recalcPositions: () => void;
|
|
6
6
|
toViewDirty: (toViewPageName: string, moveDirection?: MoveDirection) => Promise<void>;
|
|
7
|
-
toView: (
|
|
8
|
-
toViewPage: (
|
|
9
|
-
toPrevPage: (
|
|
10
|
-
setLoading: (
|
|
11
|
-
isLoading: (
|
|
12
|
-
inAnimation: (
|
|
7
|
+
toView: (viewNameOrElDialog: ElTopDialog | JQuery<ElTopDialog> | string, pageName?: string, args?: string[], moveDirection?: MoveDirection, callback?: Function) => Promise<void>;
|
|
8
|
+
toViewPage: (elDialog: ElTopDialog | JQuery<ElTopDialog>, pageName?: string, args?: string[], moveDirection?: MoveDirection) => Promise<void>;
|
|
9
|
+
toPrevPage: (elDialog: ElTopDialog) => void;
|
|
10
|
+
setLoading: (elPages: ElTopDialogPage[] | JQuery<ElTopDialogPage>, isLoading: boolean, duration?: number) => void;
|
|
11
|
+
isLoading: (elPage: ElTopDialogPage | JQuery<ElTopDialogPage>) => boolean;
|
|
12
|
+
inAnimation: (elDialog: ElTopDialog | JQuery<ElTopDialog>) => boolean;
|
|
13
13
|
close: (dialogId: string) => void;
|
|
14
14
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Инициализация глобальных событий для диалоговых окон
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Производится один раз при подключении диалогового окна
|
|
5
5
|
*
|
|
6
|
-
* События не
|
|
6
|
+
* События не размонтируются
|
|
7
7
|
*/
|
|
8
8
|
export declare const initDialogGlobalEvents: () => void;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { MoveDirection, TopDialogOptions } from './types';
|
|
1
|
+
import { ElTopDialog, ElTopDialogPage, MoveDirection, TopDialogOptions } from './types';
|
|
2
2
|
import { $el } from '../../types';
|
|
3
3
|
export declare abstract class TopDialogWorker {
|
|
4
4
|
static state: {
|
|
5
5
|
load: TopDialogOptions["load"] | undefined;
|
|
6
6
|
decoratorOnCreate: TopDialogOptions["decoratorOnCreate"] | undefined;
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
8
|
+
* Порядковый номер перехода в диалоговых окнах
|
|
9
9
|
*
|
|
10
10
|
* Для расчета анимации Вперед / Назад
|
|
11
11
|
*/
|
|
@@ -20,25 +20,26 @@ export declare abstract class TopDialogWorker {
|
|
|
20
20
|
static init(options?: TopDialogOptions): void;
|
|
21
21
|
private static opendDialogsFromChangeUrl;
|
|
22
22
|
static getDialogsUtils(): Promise<{
|
|
23
|
+
getElDialogById: (id: string) => ElTopDialog | null;
|
|
23
24
|
updatePageVue: (dialogId: string, pageName?: string, pageNameNext?: string) => Promise<void>;
|
|
24
25
|
recalcPositions: () => void;
|
|
25
26
|
toViewDirty: (toViewPageName: string, moveDirection?: MoveDirection) => Promise<void>;
|
|
26
|
-
toView: (
|
|
27
|
-
toViewPage: (
|
|
28
|
-
toPrevPage: (
|
|
29
|
-
setLoading: (
|
|
30
|
-
isLoading: (
|
|
31
|
-
inAnimation: (
|
|
27
|
+
toView: (viewNameOrElDialog: ElTopDialog | JQuery<ElTopDialog> | string, pageName?: string, args?: string[], moveDirection?: MoveDirection, callback?: Function) => Promise<void>;
|
|
28
|
+
toViewPage: (elDialog: ElTopDialog | JQuery<ElTopDialog>, pageName?: string, args?: string[], moveDirection?: MoveDirection) => Promise<void>;
|
|
29
|
+
toPrevPage: (elDialog: ElTopDialog) => void;
|
|
30
|
+
setLoading: (elPages: ElTopDialogPage[] | JQuery<ElTopDialogPage>, isLoading: boolean, duration?: number) => void;
|
|
31
|
+
isLoading: (elPage: ElTopDialogPage | JQuery<ElTopDialogPage>) => boolean;
|
|
32
|
+
inAnimation: (elDialog: ElTopDialog | JQuery<ElTopDialog>) => boolean;
|
|
32
33
|
close: (dialogId: string) => void;
|
|
33
34
|
}>;
|
|
34
|
-
static getDialog(el: HTMLElement):
|
|
35
|
-
static getPage(el: HTMLElement): HTMLElement | null;
|
|
35
|
+
static getDialog(el: HTMLElement): ElTopDialog | null;
|
|
36
36
|
/**
|
|
37
37
|
* todo: Переписать на сайте на this.getDialog()
|
|
38
38
|
*
|
|
39
39
|
* @deprecated Для обратной совместимости
|
|
40
40
|
*/
|
|
41
41
|
static get$dialog($el: $el): JQuery<HTMLElement>;
|
|
42
|
+
static getPage(el: HTMLElement): ElTopDialogPage | null;
|
|
42
43
|
/**
|
|
43
44
|
* todo: Переписать на сайте на this.getPage()
|
|
44
45
|
*
|
|
@@ -51,7 +52,7 @@ export declare abstract class TopDialogWorker {
|
|
|
51
52
|
* @deprecated Для обратной совместимости
|
|
52
53
|
*/
|
|
53
54
|
static get$pairPage($el: $el): JQuery<HTMLElement>;
|
|
54
|
-
static getPairPage(el: HTMLElement):
|
|
55
|
+
static getPairPage(el: HTMLElement): HTMLElement[] | undefined;
|
|
55
56
|
/**
|
|
56
57
|
* Закрыть диалоговое окно
|
|
57
58
|
*/
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import { Props, Size, Color, Styling } from './types';
|
|
1
|
+
import { Props, Slots, Size, Color, Styling } from './types';
|
|
2
2
|
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
3
3
|
declare function __VLS_template(): {
|
|
4
4
|
attrs: Partial<{}>;
|
|
5
|
-
slots:
|
|
6
|
-
default?(_: {}): any;
|
|
7
|
-
html?(_: {}): any;
|
|
8
|
-
};
|
|
5
|
+
slots: Readonly<Slots> & Slots;
|
|
9
6
|
refs: {};
|
|
10
7
|
rootEl: any;
|
|
11
8
|
};
|
|
@@ -29,6 +29,16 @@ export interface Props {
|
|
|
29
29
|
isActive?: boolean;
|
|
30
30
|
isProgress?: boolean;
|
|
31
31
|
}
|
|
32
|
+
export interface Slots {
|
|
33
|
+
/**
|
|
34
|
+
* Текст в кнопке
|
|
35
|
+
*/
|
|
36
|
+
default?(props: {}): any;
|
|
37
|
+
/**
|
|
38
|
+
* HTML в кнопке
|
|
39
|
+
*/
|
|
40
|
+
html?(props: {}): any;
|
|
41
|
+
}
|
|
32
42
|
/**
|
|
33
43
|
* Определение событий
|
|
34
44
|
*/
|
|
@@ -6,6 +6,7 @@ import { default as CheckboxGroup } from './checkboxGroup/checkboxGroup.vue';
|
|
|
6
6
|
import { default as Selector2 } from './selector2/selector2.vue';
|
|
7
7
|
import { default as Menu } from './menu/menu.vue';
|
|
8
8
|
import { default as Info } from './info/info.vue';
|
|
9
|
+
import { default as Policy } from './policy/policy.vue';
|
|
9
10
|
export declare const TopEditArea: typeof EditArea & ComponentCustomProps;
|
|
10
11
|
export declare const TopEditInput: typeof EditInput & ComponentCustomProps;
|
|
11
12
|
export declare const TopRadioGroup: typeof RadioGroup & ComponentCustomProps;
|
|
@@ -13,3 +14,4 @@ export declare const TopCheckboxGroup: typeof CheckboxGroup & ComponentCustomPro
|
|
|
13
14
|
export declare const TopSelector2: typeof Selector2 & ComponentCustomProps;
|
|
14
15
|
export declare const TopMenu: typeof Menu & ComponentCustomProps;
|
|
15
16
|
export declare const TopInfo: typeof Info & ComponentCustomProps;
|
|
17
|
+
export declare const TopPolicy: typeof Policy & ComponentCustomProps;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Props } from './types';
|
|
2
|
+
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
3
|
+
declare const _default: DefineComponent<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
|
|
4
|
+
export default _default;
|
|
@@ -26,5 +26,5 @@ export declare const useAPI: (apiRequest: Props["apiRequest"], minLength: number
|
|
|
26
26
|
}[]>;
|
|
27
27
|
isLoading: Ref<boolean, boolean>;
|
|
28
28
|
loadAppend: () => Promise<void>;
|
|
29
|
-
setSearchTextAndLoad: (
|
|
29
|
+
setSearchTextAndLoad: (newSearchText: string, useDebounce?: boolean) => void;
|
|
30
30
|
};
|
|
@@ -4,9 +4,13 @@ import { API } from './useAPI';
|
|
|
4
4
|
/**
|
|
5
5
|
* Функционал поиска
|
|
6
6
|
*/
|
|
7
|
-
export declare const useMenu: (model: Ref<Props["modelValue"]>, items: Ref<Props["items"]>, multiselect: Props["multiselect"], appendAllValue: Ref<Props["appendAllValue"]>, appendSearchToResult: Ref<Props["appendSearchToResult"]>, api: API) => {
|
|
7
|
+
export declare const useMenu: (model: Ref<Props["modelValue"]>, items: Ref<Props["items"]>, multiselect: Props["multiselect"], appendAllValue: Ref<Props["appendAllValue"]>, appendSearchToResult: Ref<Props["appendSearchToResult"]>, searchType: Ref<Props["searchType"]>, minLength: number, api: API) => {
|
|
8
8
|
searchText: Ref<string, string>;
|
|
9
9
|
resetSearch: () => void;
|
|
10
|
+
genIsShort: () => boolean;
|
|
10
11
|
items: ComputedRef<Item[]>;
|
|
11
12
|
itemsForShow: ComputedRef<Item[]>;
|
|
13
|
+
selectItem: (item: Item) => void;
|
|
14
|
+
selectNextItem: () => void;
|
|
15
|
+
deleteItemById: (id: Item["id"]) => Promise<void>;
|
|
12
16
|
};
|
|
@@ -97,7 +97,7 @@ declare function __VLS_template(): {
|
|
|
97
97
|
footer?(_: {}): any;
|
|
98
98
|
};
|
|
99
99
|
}) | null;
|
|
100
|
-
|
|
100
|
+
subcomponentSelector: unknown;
|
|
101
101
|
};
|
|
102
102
|
rootEl: any;
|
|
103
103
|
};
|
|
@@ -109,9 +109,8 @@ declare const __VLS_component: DefineComponent<__VLS_PublicProps, {}, {}, {}, {}
|
|
|
109
109
|
}>, {
|
|
110
110
|
size: Size;
|
|
111
111
|
items: Item[];
|
|
112
|
+
searchType: "none" | "inline" | "popup";
|
|
112
113
|
minLength: number;
|
|
113
|
-
showSelectedInInput: boolean;
|
|
114
|
-
showSearch: boolean;
|
|
115
114
|
}, {}, {}, {}, string, ComponentProvideOptions, false, {
|
|
116
115
|
popupRef: ({
|
|
117
116
|
$: ComponentInternalInstance;
|
|
@@ -199,7 +198,7 @@ declare const __VLS_component: DefineComponent<__VLS_PublicProps, {}, {}, {}, {}
|
|
|
199
198
|
footer?(_: {}): any;
|
|
200
199
|
};
|
|
201
200
|
}) | null;
|
|
202
|
-
|
|
201
|
+
subcomponentSelector: unknown;
|
|
203
202
|
}, any>;
|
|
204
203
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
205
204
|
export default _default;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare const dummyAPIRequest: {
|
|
1
|
+
export declare const dummyAPIRequest: {
|
|
2
2
|
params: {
|
|
3
3
|
offset: undefined;
|
|
4
4
|
limit: undefined;
|
|
@@ -7,4 +7,3 @@ declare const dummyAPIRequest: {
|
|
|
7
7
|
cache: Map<any, any>;
|
|
8
8
|
call(): Promise<unknown>;
|
|
9
9
|
};
|
|
10
|
-
export default dummyAPIRequest;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Size } from '../../forms/helpers';
|
|
2
|
+
import { Props as ButtonProps } from '../../forms/button/types';
|
|
2
3
|
export interface Props {
|
|
3
4
|
/**
|
|
4
5
|
* Выбранный элемент
|
|
@@ -9,22 +10,35 @@ export interface Props {
|
|
|
9
10
|
/**
|
|
10
11
|
* Список вариантов для выбора
|
|
11
12
|
*
|
|
12
|
-
*
|
|
13
|
+
* При работе с apiRequest, всегда выводится перед результатами apiRequest
|
|
13
14
|
*/
|
|
14
15
|
items?: Item[];
|
|
16
|
+
title?: string;
|
|
17
|
+
disabled?: boolean;
|
|
18
|
+
size?: Size;
|
|
19
|
+
isError?: boolean;
|
|
15
20
|
/**
|
|
16
|
-
*
|
|
21
|
+
* Тип поиска по элементам
|
|
22
|
+
*
|
|
23
|
+
* - none: без поиска
|
|
24
|
+
* - inline: сам Selector является полем ввода, только для `multiselect = false`
|
|
25
|
+
* - popup: поиск будет в popup
|
|
26
|
+
*
|
|
27
|
+
* Для мобильной версии `inline` всегда заменяется на `popup`
|
|
17
28
|
*
|
|
18
29
|
* Константа, после установки менять нельзя
|
|
19
30
|
*/
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
31
|
+
searchType?: 'none' | 'inline' | 'popup';
|
|
32
|
+
/**
|
|
33
|
+
* Текст для placeholder поля поиска
|
|
34
|
+
*/
|
|
35
|
+
placeholder?: string;
|
|
24
36
|
/**
|
|
25
37
|
* Если указан, будет выполнена загрузка результатов через API
|
|
26
38
|
*
|
|
27
39
|
* Константа, после установки заменять нельзя
|
|
40
|
+
*
|
|
41
|
+
* @subcategory apiRequest
|
|
28
42
|
*/
|
|
29
43
|
apiRequest?: {
|
|
30
44
|
params: {
|
|
@@ -42,27 +56,35 @@ export interface Props {
|
|
|
42
56
|
/**
|
|
43
57
|
* Минимальная длина для выполнения поиска
|
|
44
58
|
*
|
|
45
|
-
* Для apiRequest
|
|
46
|
-
*
|
|
47
59
|
* Константа, после установки менять нельзя
|
|
60
|
+
*
|
|
61
|
+
* @subcategory apiRequest
|
|
48
62
|
*/
|
|
49
63
|
minLength?: number;
|
|
50
64
|
/**
|
|
51
|
-
* Использовать
|
|
52
|
-
*
|
|
53
|
-
* Для apiRequest
|
|
65
|
+
* Использовать кэширование
|
|
54
66
|
*
|
|
55
67
|
* Константа, после установки менять нельзя
|
|
68
|
+
*
|
|
69
|
+
* @subcategory apiRequest
|
|
56
70
|
*/
|
|
57
71
|
useCache?: boolean;
|
|
58
72
|
/**
|
|
59
73
|
* Добавить в результаты item = {id:null, name:search}, где search - введенная строка в поле поиска
|
|
60
74
|
*/
|
|
61
75
|
appendSearchToResult?: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Режим выбора нескольких вариантов
|
|
78
|
+
*
|
|
79
|
+
* Константа, после установки менять нельзя
|
|
80
|
+
*
|
|
81
|
+
* @subcategory Multiselect
|
|
82
|
+
*/
|
|
83
|
+
multiselect?: boolean;
|
|
62
84
|
/**
|
|
63
85
|
* Добавить вариант: "Все"
|
|
64
86
|
*
|
|
65
|
-
*
|
|
87
|
+
* @subcategory Single select
|
|
66
88
|
*/
|
|
67
89
|
appendAllValue?: boolean;
|
|
68
90
|
/**
|
|
@@ -70,23 +92,27 @@ export interface Props {
|
|
|
70
92
|
*
|
|
71
93
|
* Работает с props.items без учета apiRequest
|
|
72
94
|
*
|
|
73
|
-
*
|
|
95
|
+
* Нельзя использовать с кнопкой
|
|
96
|
+
*
|
|
97
|
+
* @subcategory Single select
|
|
74
98
|
*/
|
|
75
99
|
addChanger?: boolean;
|
|
76
100
|
/**
|
|
77
|
-
*
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
/**
|
|
81
|
-
* Выводить в placeholder поля поиска выбранное значение modelValue.name
|
|
101
|
+
* Настройки кнопки
|
|
102
|
+
*
|
|
103
|
+
* Если не указан будет использоваться стандартный стиль селектора
|
|
82
104
|
*
|
|
83
|
-
*
|
|
105
|
+
* @subcategory Single select
|
|
84
106
|
*/
|
|
85
|
-
|
|
107
|
+
buttonProps?: ButtonProps;
|
|
86
108
|
/**
|
|
87
|
-
* Выводить
|
|
109
|
+
* Выводить в placeholder поля поиска выбранное значение `modelValue.name`
|
|
110
|
+
*
|
|
111
|
+
* Всегда включено для `searchType` = `inline`
|
|
112
|
+
*
|
|
113
|
+
* @subcategory Single select
|
|
88
114
|
*/
|
|
89
|
-
|
|
115
|
+
selectedAsPlaceholder?: boolean;
|
|
90
116
|
}
|
|
91
117
|
export interface Slots {
|
|
92
118
|
/**
|
|
@@ -32,6 +32,7 @@ export declare class TopLibPopup extends Component {
|
|
|
32
32
|
elPopupBody: HTMLElement | undefined | null;
|
|
33
33
|
elPopupFooter: HTMLElement | undefined | null;
|
|
34
34
|
elFront: HTMLElement | undefined | null;
|
|
35
|
+
openerIsInput: boolean;
|
|
35
36
|
popupParent: TopLibPopup | undefined;
|
|
36
37
|
$: JQuery<HTMLElement> | undefined;
|
|
37
38
|
elStartPosition: HTMLElement | undefined | null;
|
|
@@ -29,6 +29,8 @@ declare class Worker {
|
|
|
29
29
|
* Вернуть объект компонента popup, привязанный к элементу
|
|
30
30
|
*/
|
|
31
31
|
static getPopup(elPopup: HTMLElement): TopLibPopup;
|
|
32
|
+
static getElPopupOpener(el: Element): HTMLElement | null;
|
|
33
|
+
static getPopupFromOpener(el: HTMLElement): TopLibPopup | null;
|
|
32
34
|
/**
|
|
33
35
|
* Вернуть все элементы с Popup
|
|
34
36
|
*/
|
|
@@ -48,7 +50,7 @@ declare class Worker {
|
|
|
48
50
|
* @param options - опции Popup
|
|
49
51
|
*/
|
|
50
52
|
private static open;
|
|
51
|
-
static close(elPopup: HTMLElement): void;
|
|
53
|
+
static close(elPopup: HTMLElement, restoreFocus?: boolean): void;
|
|
52
54
|
static recalcPosition(elPopup: HTMLElement): void;
|
|
53
55
|
/**
|
|
54
56
|
* Скролл к активному элементу списка
|
|
@@ -68,7 +70,7 @@ declare class Worker {
|
|
|
68
70
|
*/
|
|
69
71
|
static unregVueComponent(id: string): void;
|
|
70
72
|
/**
|
|
71
|
-
*
|
|
73
|
+
* Сгенерировать элемент для открытия popup
|
|
72
74
|
*/
|
|
73
75
|
static genElPopupOpener(tagName: string, props: OpenerProps, ...elsChildrens: HTMLElement[] | string[]): HTMLElement;
|
|
74
76
|
}
|
package/core/app.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","../.chunks/forms-
|
|
1
|
+
define(["require","exports","../.chunks/forms-BduN5hFf.amd","../.chunks/core-CNHOrWnw.amd","vue","../utils/clipboard.amd","../utils/string.amd","../utils/route.amd","../.chunks/utils-BgjhCn4H.amd","../.chunks/dialogs.vue_vue_type_script_setup_true_lang-C0n3o7PD.amd"],function(y,n,c,l,d,m,S,p,g,k){"use strict";if(typeof d>"u")var d=window.Vue;class E{#s;#t;#e;#i;#c;#a=[];#o=[];#n=[];#r=[];constructor(s){var t;this.#t=s.store,this.#s=this.#t.$id,this.#e=s.options.Page,this.#i=s.options.user,this.#c=s.options.Api,this.#a=s.options.tpaNamesUrlHash||[],this.#o=s.options.tpaNamesStorage||[],this.#n=s.options.tpaNamesStorageLocal||[],this.#r=s.options.tpaNamesGuestLink||[],s.store.genGuestLink=(i,a)=>this.genGuestLink(i,a),(t=this.#i.guest_data)!=null&&t.data||(this.#u(),this.#u(!0),this.#l()),this.#S(),this.#k();const e=c.debounce(()=>{this.#m(),this.#p(),this.#p(!0)});s.store.$subscribe(e)}async genGuestLink(s,e){const t=this.#g();e=Object.assign(e,Object.fromEntries(t));const i=await this.#c.gen(s,"fetchColumn").call({},e);i!=null&&i.errors||await m.guestLinkToClipboard(i.result)}#g(){const s=new Map;return this.#r.forEach(e=>{const t=S.camelToSnakeCase(e);s.set(t,this.#t[e])}),s}#h(s){s.forEach((e,t)=>{const i=this.#t[t];if(e!=null&&i!==void 0&&e!=null&&e.constructor&&e.constructor===i.constructor){if(t.indexOf("date")===0&&!Array.isArray(e)){if(typeof e=="string"&&!/\d\d\d\d-\d\d-\d\d/.test(e))return}this.#t[t]=e}})}#f(s){const e=new Map;return s.forEach((t,i)=>{t!==null&&(t=JSON.stringify(t),e.set(i,t))}),e}#d(s){const e=new Map;return s.forEach((t,i)=>{if(!(t==null||t==="false")){try{if(typeof t=="string"&&!/^\d\d\d\d-\d\d-\d\d$/.test(t)&&(t=JSON.parse(t)),t==null||t==="false")return}catch{}e.set(i,t)}}),e}#l(){let s;try{s=JSON.parse(p.getHash(this.#s))}catch{}if(!s)return;const e=new Map;this.#a.forEach(t=>{const i=s[t];i&&e.set(t,i)}),this.#h(e)}#m(){const s=new Map;this.#a.forEach(i=>{const a=this.#t[i];s.set(i,a)});const e=Object.fromEntries(s),t=JSON.stringify(e);p.setHash(this.#s,t)}#u(s=!1){const e=new Map;let t=this.#o,i="state:"+this.#s;s&&(t=this.#n,i="state:"+this.#s+":"+location.pathname),t.forEach(o=>{const r=localStorage.getItem(i+":"+o);e.set(o,r)});const a=this.#d(e);this.#h(a)}#p(s=!1){const e=new Map;let t=this.#o,i="state:"+this.#s;s&&(t=this.#n,i="state:"+this.#s+":"+location.pathname),t.forEach(o=>{const r=this.#t[o];e.set(o,r)});const a=this.#f(e);t.forEach(o=>{const r=a.get(o);localStorage.setItem(i+":"+o,r)})}#S(){var a,o,r;const s=(o=(a=this.#i)==null?void 0:a.guest_data)==null?void 0:o.data;if(!s)return;this.#i.id===-1&&(this.#i.positionsReverseDates=s.positionsReverseDates);const e=new Map;this.#r.forEach(h=>{const u=s[h];e.set(h,u)});const t=this.#d(e);this.#h(t);const i=$(".mod_guest_title");if(((r=this.#t.competitorsIds)==null?void 0:r.length)===1&&this.#e.page.data.competitors){let h=this.#e.page.data.competitors.filter(u=>u.id===s.competitorsIds[0]);h.length&&($("a",i).attr("href","http://"+h[0].url),$("a",i).text(h[0].name))}}#k(){this.#t.regionsIndexes&&d.watch(this.#t.regionsIndexes,s=>{if(!s.length)return;s.forEach((i,a)=>s[a]=i);const e=TplProjectSelectorRegion.genSearchersMap(),t=[];e.forEach(i=>{i.regions.forEach(a=>{a.index!==-1&&t.push(a.index)})}),this.#t.regionsIndexes=s.filter(i=>t.includes(i))},{immediate:!0}),this.#t.competitorsIds&&d.watch(this.#t.competitorsIds,s=>{if(!s.length)return;s.forEach((t,i)=>s[i]=t);const e=[this.#e.page.data.project.id];this.#e.page.data.project.competitors.forEach(t=>{t.on>=0&&e.push(t.id)}),this.#t.competitorsIds=s.filter(t=>e.includes(t))},{immediate:!0})}}const w=f=>{var e,t,i,a;const s=f;!((e=s.options.tpaNamesUrlHash)!=null&&e.length)&&!((t=s.options.tpaNamesStorage)!=null&&t.length)&&!((i=s.options.tpaNamesStorageLocal)!=null&&i.length)&&!((a=s.options.tpaNamesGuestLink)!=null&&a.length)||new E(s)};n.Core=c.Core,n.i18nPlugin=c.i18n,n.useI18n=c.useI18n,n.useI18nLang=c.useI18nLang,n.corePlugin=l.core,n.useAsyncTopDialog=g.useAsyncTopDialog,n.useTopDialog=g.useTopDialog,n.TopDialogWorker=k.TopDialogWorker,n.piniaTPAPlugin=w,Object.defineProperty(n,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=app.amd.js.map
|
package/core/app.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { d } from "../.chunks/forms-
|
|
2
|
-
import { C as P, i as T, u as b, a as y } from "../.chunks/forms-
|
|
3
|
-
import { c as G } from "../.chunks/core-
|
|
1
|
+
import { d } from "../.chunks/forms-1PEYT7sp.es.js";
|
|
2
|
+
import { C as P, i as T, u as b, a as y } from "../.chunks/forms-1PEYT7sp.es.js";
|
|
3
|
+
import { c as G } from "../.chunks/core-CZLRhkk2.es.js";
|
|
4
4
|
import { watch as p } from "vue";
|
|
5
5
|
import { guestLinkToClipboard as f } from "../utils/clipboard.js";
|
|
6
6
|
import { camelToSnakeCase as g } from "../utils/string.js";
|
|
7
7
|
import { getHash as m, setHash as l } from "../utils/route.js";
|
|
8
|
-
import { u as A, a as D } from "../.chunks/utils-
|
|
9
|
-
import { T as j } from "../.chunks/dialogs.vue_vue_type_script_setup_true_lang-
|
|
8
|
+
import { u as A, a as D } from "../.chunks/utils-DEyMm4Iq.es.js";
|
|
9
|
+
import { T as j } from "../.chunks/dialogs.vue_vue_type_script_setup_true_lang-sExyADFk.es.js";
|
|
10
10
|
class u {
|
|
11
11
|
#s;
|
|
12
12
|
#t;
|
package/core/core/core.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export default class Core {
|
|
|
11
11
|
documentClassModificators: Map<string | number, string> & Omit<Map<string | number, string>, keyof Map<any, any>>;
|
|
12
12
|
dateFormat: string;
|
|
13
13
|
currency: "USD" | "RUB" | "EUR";
|
|
14
|
-
|
|
14
|
+
timezoneOffset: number;
|
|
15
15
|
isMobile: boolean;
|
|
16
16
|
isMobileUA: boolean;
|
|
17
17
|
isRetina: boolean;
|
package/core/core/options.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Конфигурация UI
|
|
3
3
|
*
|
|
4
|
-
* Начальные значений
|
|
4
|
+
* Начальные значений устанавливаются при подключении Core во Vue приложение через app.use(PluginCore, options)
|
|
5
5
|
*/
|
|
6
6
|
declare const _default: {
|
|
7
7
|
/**
|
|
@@ -17,7 +17,7 @@ declare const _default: {
|
|
|
17
17
|
/**
|
|
18
18
|
* CSS-классы модификаторы для документа страницы
|
|
19
19
|
*
|
|
20
|
-
* Могут
|
|
20
|
+
* Могут использоваться компонентами для включения необходимых режимов отображения страницы
|
|
21
21
|
*
|
|
22
22
|
* Разные компоненты могут добавлять один и тот же класс, чтобы не было конфликтов каждый компонент управляет только своим классом:
|
|
23
23
|
* - Ключ - уникальное имя компонента, например в setup: `const uid = Math.random();`
|
|
@@ -31,16 +31,17 @@ declare const _default: {
|
|
|
31
31
|
*/
|
|
32
32
|
widthForMobile: number;
|
|
33
33
|
/**
|
|
34
|
-
* Формат даты, который будет
|
|
34
|
+
* Формат даты, который будет использоваться по умолчанию для вывода даты, как правило, зависит от текущего пользователя
|
|
35
35
|
*/
|
|
36
36
|
dateFormat: string;
|
|
37
37
|
/**
|
|
38
|
-
* Валюта, которая будет
|
|
38
|
+
* Валюта, которая будет использоваться по умолчанию, как правило, зависит от текущего пользователя
|
|
39
39
|
*/
|
|
40
40
|
currency: "RUB" | "USD" | "EUR";
|
|
41
41
|
/**
|
|
42
|
-
*
|
|
42
|
+
* Смещение timezone относительно UTC в минутах
|
|
43
|
+
* Для Москвы: -180
|
|
43
44
|
*/
|
|
44
|
-
|
|
45
|
+
timezoneOffset: number;
|
|
45
46
|
};
|
|
46
47
|
export default _default;
|
package/core/core/state.d.ts
CHANGED
package/core/plugins/core.d.ts
CHANGED
|
@@ -42,7 +42,7 @@ declare module '@vue/runtime-core' {
|
|
|
42
42
|
TopDialogs: typeof TopDialogs;
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
-
type CoreOptions = PartialBy<typeof coreDefaultOptions, '
|
|
45
|
+
type CoreOptions = PartialBy<typeof coreDefaultOptions, 'timezoneOffset' | 'documentClassModificators'>;
|
|
46
46
|
type Options = CoreOptions & {
|
|
47
47
|
topPopupOptions?: TopPopupOptions;
|
|
48
48
|
topDialogOptions?: TopDialogOptions;
|