@topvisor/ui 1.0.20-selector2-4 → 1.0.21-pinia-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/.chunks/{datepicker-BbASdlXo.es.js → datepicker-BC31NE5M.es.js} +2 -2
  2. package/.chunks/{datepicker-BbASdlXo.es.js.map → datepicker-BC31NE5M.es.js.map} +1 -1
  3. package/.chunks/{datepicker-CSpzAz1a.amd.js → datepicker-CVoT5EME.amd.js} +2 -2
  4. package/.chunks/{datepicker-CSpzAz1a.amd.js.map → datepicker-CVoT5EME.amd.js.map} +1 -1
  5. package/.chunks/{forms-BciWy0wX.es.js → forms-CipZtprq.es.js} +195 -188
  6. package/.chunks/{forms-BciWy0wX.es.js.map → forms-CipZtprq.es.js.map} +1 -1
  7. package/.chunks/{forms-Dh0QU6P9.amd.js → forms-CxYSHZLL.amd.js} +3 -3
  8. package/.chunks/{forms-Dh0QU6P9.amd.js.map → forms-CxYSHZLL.amd.js.map} +1 -1
  9. package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-Del8bjSk.amd.js → listItem.vue_vue_type_script_setup_true_lang-CT6O_7Qy.amd.js} +2 -2
  10. package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-Del8bjSk.amd.js.map → listItem.vue_vue_type_script_setup_true_lang-CT6O_7Qy.amd.js.map} +1 -1
  11. package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-CZqS-tRD.es.js → listItem.vue_vue_type_script_setup_true_lang-uNNJJ4S0.es.js} +2 -2
  12. package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-CZqS-tRD.es.js.map → listItem.vue_vue_type_script_setup_true_lang-uNNJJ4S0.es.js.map} +1 -1
  13. package/.chunks/{menu.vue_vue_type_style_index_0_lang-B8-UPDGJ.amd.js → menu.vue_vue_type_style_index_0_lang-DAI_WcXI.amd.js} +2 -2
  14. package/.chunks/{menu.vue_vue_type_style_index_0_lang-B8-UPDGJ.amd.js.map → menu.vue_vue_type_style_index_0_lang-DAI_WcXI.amd.js.map} +1 -1
  15. package/.chunks/{menu.vue_vue_type_style_index_0_lang-yNOWbXpd.es.js → menu.vue_vue_type_style_index_0_lang-fU3LbpR7.es.js} +2 -2
  16. package/.chunks/{menu.vue_vue_type_style_index_0_lang-yNOWbXpd.es.js.map → menu.vue_vue_type_style_index_0_lang-fU3LbpR7.es.js.map} +1 -1
  17. package/.chunks/{notice-DQSQs6yC.es.js → notice-cCZZtLLu.es.js} +2 -2
  18. package/.chunks/{notice-DQSQs6yC.es.js.map → notice-cCZZtLLu.es.js.map} +1 -1
  19. package/.chunks/{notice-DEcP2RCJ.amd.js → notice-uzdQ-t3s.amd.js} +2 -2
  20. package/.chunks/{notice-DEcP2RCJ.amd.js.map → notice-uzdQ-t3s.amd.js.map} +1 -1
  21. package/.chunks/{popup-D-6PIelY.es.js → popup-BvhY5oAD.es.js} +2 -2
  22. package/.chunks/{popup-D-6PIelY.es.js.map → popup-BvhY5oAD.es.js.map} +1 -1
  23. package/.chunks/{popup-BdJJx21M.amd.js → popup-Bwknq6xI.amd.js} +2 -2
  24. package/.chunks/{popup-BdJJx21M.amd.js.map → popup-Bwknq6xI.amd.js.map} +1 -1
  25. package/.chunks/{utils-CPty_L5T.amd.js → utils-BfdO2xlC.amd.js} +2 -2
  26. package/.chunks/{utils-CPty_L5T.amd.js.map → utils-BfdO2xlC.amd.js.map} +1 -1
  27. package/.chunks/{utils-BvHwHAyQ.es.js → utils-C2OmmJkw.es.js} +3 -3
  28. package/.chunks/{utils-BvHwHAyQ.es.js.map → utils-C2OmmJkw.es.js.map} +1 -1
  29. package/.chunks/{utils-DAfofcEq.amd.js → utils-C3dsXIj9.amd.js} +2 -2
  30. package/.chunks/{utils-DAfofcEq.amd.js.map → utils-C3dsXIj9.amd.js.map} +1 -1
  31. package/.chunks/{utils-9b7woobj.es.js → utils-C5sf4bZh.es.js} +2 -2
  32. package/.chunks/{utils-9b7woobj.es.js.map → utils-C5sf4bZh.es.js.map} +1 -1
  33. package/assets/core.css +1 -1
  34. package/assets/forms.css +1 -1
  35. package/charts/charts.amd.js +1 -1
  36. package/charts/charts.js +1 -1
  37. package/components/forms/input/input.d.ts +8 -0
  38. package/components/forms/input/input.vue.d.ts +2 -1
  39. package/components/forms/select/select.d.ts +7 -0
  40. package/components/forms/select/select.vue.d.ts +2 -1
  41. package/components/forms/textarea/textarea.d.ts +7 -0
  42. package/components/forms/textarea/textarea.vue.d.ts +2 -1
  43. package/core/app.amd.js +1 -1
  44. package/core/app.js +5 -5
  45. package/dialog/dialog.amd.js +1 -1
  46. package/dialog/dialog.js +2 -2
  47. package/forms/forms.amd.js +1 -1
  48. package/forms/forms.js +1 -1
  49. package/formsExt/formsExt.amd.js +1 -1
  50. package/formsExt/formsExt.amd.js.map +1 -1
  51. package/formsExt/formsExt.js +3 -2
  52. package/formsExt/formsExt.js.map +1 -1
  53. package/layout/layout.amd.js +1 -1
  54. package/layout/layout.js +1 -1
  55. package/package.json +31 -31
  56. package/popup/popup.amd.js +1 -1
  57. package/popup/popup.amd.js.map +1 -1
  58. package/popup/popup.js +3 -2
  59. package/popup/popup.js.map +1 -1
  60. package/popup/worker.amd.js +1 -1
  61. package/popup/worker.js +2 -2
  62. package/project/project.amd.js +1 -1
  63. package/project/project.js +3 -3
  64. package/tabsView/tabsView.amd.js +1 -1
  65. package/tabsView/tabsView.js +1 -1
  66. package/utils/clipboard.amd.js +1 -1
  67. package/utils/clipboard.js +1 -1
  68. package/utils/date.amd.js +1 -1
  69. package/utils/date.js +1 -1
  70. package/utils/device.amd.js +1 -1
  71. package/utils/device.js +1 -1
  72. package/utils/lodash.amd.js +1 -1
  73. package/utils/lodash.js +1 -1
  74. package/utils/price.amd.js +1 -1
  75. package/utils/price.js +1 -1
  76. package/utils/string.amd.js +1 -1
  77. package/utils/string.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"popup.amd.js","sources":["../../src/components/popup/confirm/confirm.vue","../../src/components/popup/prompt/prompt.vue","../../src/components/popup/popup.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { ref } from 'vue';\r\nimport type { PopupEvent } from '@/components/popup/popup/popup';\r\nimport type { Emits, Props } from './confirm';\r\nimport TopButton from '@/components/forms/button/button.vue';\r\nimport TopPopup from '@/components/popup/popup/popup.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst isSubmit = ref(false);\r\n\r\nconst onSubmit = () => {\r\n\tisSubmit.value = true;\r\n\r\n\temit('submit');\r\n};\r\n\r\nconst onClose = (popupEvent: PopupEvent) => {\r\n\tif (isSubmit.value) {\r\n\t\tisSubmit.value = false;\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\temit('close', popupEvent);\r\n};\r\n\r\nconst $propsPopup = { ...props, submitText: undefined, cancelText: undefined, isWarning: undefined };\r\ndelete $propsPopup.submitText;\r\ndelete $propsPopup.cancelText;\r\ndelete $propsPopup.isWarning;\r\n</script>\r\n\r\n<template>\r\n\t<TopPopup\r\n\t\tclass=\"top-popupConfirm\"\r\n\t\t:=$propsPopup\r\n\t\t@open=\"$emit('open', $event)\"\r\n\t\t@close=\"onClose($event)\"\r\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\r\n\t\t\t<slot name=\"opener\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #header v-if=\"$slots.header\">\r\n\t\t\t<!-- @slot Шапка -->\r\n\t\t\t<slot name=\"header\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #content v-if=\"$slots.default\">\r\n\t\t\t<!-- @slot Контент в свободной форме -->\r\n\t\t\t<slot></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #footer>\r\n\t\t\t<!-- @slot Футер -->\r\n\t\t\t<slot name=\"footer\"></slot>\r\n\r\n\t\t\t<TopButton color=\"theme\">\r\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\r\n\t\t\t</TopButton>\r\n\r\n\t\t\t<TopButton\r\n\t\t\t\t@click=\"onSubmit\"\r\n\t\t\t\t:color=\"isWarning ? 'red' : 'blue'\"\r\n\t\t\t>\r\n\t\t\t\t{{ submitText || $i18n.Common.Continue }}\r\n\t\t\t</TopButton>\r\n\t\t</template>\r\n\t</TopPopup>\r\n</template>\r\n","<script setup lang=\"ts\">\r\nimport { ref, watch } from 'vue';\r\nimport type { PopupEvent } from '@/components/popup/popup/popup';\r\nimport type { Emits, Props } from './prompt';\r\nimport TopButton from '@/components/forms/button/button.vue';\r\nimport TopPopup from '@/components/popup/popup/popup.vue';\r\nimport TopPopupWidgetInput from '@/components/popup/popup/widgetInput.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst reset = () => localValue.value = props.defaultValue ?? '';\r\n\r\nconst isSubmit = ref(false);\r\n\r\nconst localValue = ref();\r\nwatch(() => props.defaultValue, () => reset(), { immediate: true });\r\n\r\nconst onSubmit = () => {\r\n\tisSubmit.value = true;\r\n};\r\n\r\nconst onClose = (popupEvent: PopupEvent) => {\r\n\tif (isSubmit.value) {\r\n\t\tisSubmit.value = false;\r\n\r\n\t\temit('submit', localValue.value);\r\n\r\n\t\treset();\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\treset();\r\n\r\n\temit('close', popupEvent);\r\n};\r\n\r\nconst $propsPopup = { ...props, submitText: undefined, cancelText: undefined, defaultValue: undefined };\r\ndelete $propsPopup.submitText;\r\ndelete $propsPopup.cancelText;\r\ndelete $propsPopup.defaultValue;\r\n</script>\r\n\r\n<template>\r\n\t<TopPopup\r\n\t\tclass=\"top-popupPrompt\"\r\n\t\t:=$propsPopup\r\n\t\t@open=\"$emit('open', $event)\"\r\n\t\t@close=\"onClose($event)\"\r\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\r\n\t\t\t<slot name=\"opener\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #header v-if=\"$slots.header\">\r\n\t\t\t<!-- @slot Шапка -->\r\n\t\t\t<slot name=\"header\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #content v-if=\"$slots.default\">\r\n\t\t\t<!-- @slot Контент в свободной форме -->\r\n\t\t\t<slot></slot>\r\n\r\n\t\t\t<TopPopupWidgetInput v-model.trim=\"localValue\"/>\r\n\t\t</template>\r\n\r\n\t\t<template #footer>\r\n\t\t\t<!-- @slot Футер -->\r\n\t\t\t<slot name=\"footer\"></slot>\r\n\r\n\t\t\t<TopButton color=\"theme\">\r\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\r\n\t\t\t</TopButton>\r\n\r\n\t\t\t<TopButton @click=\"onSubmit\">\r\n\t\t\t\t{{ submitText || $i18n.Common.OK }}\r\n\t\t\t</TopButton>\r\n\t\t</template>\r\n\t</TopPopup>\r\n</template>\r\n","import type { ComponentCustomProps } from 'vue';\r\n\r\nimport Popup from './popup/popup.vue';\r\nimport PopupOpener from './popup/opener.vue';\r\nimport PopupListItem from './popup/listItem.vue';\r\nimport PopupWidgetInput from './popup/widgetInput.vue';\r\nimport PopupAlert from './alert/alert.vue';\r\nimport PopupConfirm from './confirm/confirm.vue';\r\nimport PopupPrompt from './prompt/prompt.vue';\r\n\r\nexport const TopPopup = Popup as typeof Popup & ComponentCustomProps;\r\nexport const TopPopupOpener = PopupOpener as typeof PopupOpener & ComponentCustomProps;\r\nexport const TopPopupListItem = PopupListItem as typeof PopupListItem & ComponentCustomProps;\r\nexport const TopPopupWidgetInput = PopupWidgetInput as typeof PopupWidgetInput & ComponentCustomProps;\r\nexport const TopPopupAlert = PopupAlert as typeof PopupAlert & ComponentCustomProps;\r\nexport const TopPopupConfirm = PopupConfirm as typeof PopupConfirm & ComponentCustomProps;\r\nexport const TopPopupPrompt = PopupPrompt as typeof PopupPrompt & ComponentCustomProps;\r\n"],"names":["isSubmit","vue","onClose","popupEvent","emit","$propsPopup","props","reset","localValue","TopPopup","listItem_vue_vue_type_script_setup_true_lang","TopPopupOpener","TopPopupListItem","TopPopupWidgetInput","_sfc_main$3","TopPopupAlert","_sfc_main$2","TopPopupConfirm","_sfc_main$1","TopPopupPrompt","_sfc_main"],"mappings":"6oEAWAA,EAAAC,EAAA,IAAA,EAAA,SAGCD,EAAA,MAAA,gBAKDE,EAAAC,GAAA,CACC,GAAAH,EAAA,MAAA,CACCA,EAAA,MAAA,SAEA,CAGDI,EAAA,QAAAD,CAAA,GAGDE,EAAA,CAAA,GAAAC,EAAA,WAAA,OAAA,WAAA,OAAA,UAAA,MAAA,wwCCjBAC,EAAA,IAAAC,EAAA,MAAAF,EAAA,cAAA,GAEAN,EAAAC,EAAA,IAAA,EAAA,EAEAO,EAAAP,EAAA,IAAA,EACAA,EAAA,MAAA,IAAAK,EAAA,aAAA,IAAAC,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,eAGCP,EAAA,MAAA,IAGDE,EAAAC,GAAA,CACC,GAAAH,EAAA,MAAA,CACCA,EAAA,MAAA,GAEAI,EAAA,SAAAI,EAAA,KAAA,EAEAD,EAAA,QAEA,CAGDA,EAAA,EAEAH,EAAA,QAAAD,CAAA,GAGDE,EAAA,CAAA,GAAAC,EAAA,WAAA,OAAA,WAAA,OAAA,aAAA,MAAA,ujCC7BOG,EAAAC,EAAA,UACAC,EAAAD,EAAA,YACAE,EAAAF,EAAA,YACAG,EAAAC,EACAC,EAAAC,EACAC,EAAAC,EACAC,EAAAC"}
1
+ {"version":3,"file":"popup.amd.js","sources":["../../src/components/popup/confirm/confirm.vue","../../src/components/popup/prompt/prompt.vue","../../src/components/popup/popup.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { ref } from 'vue';\r\nimport type { PopupEvent } from '@/components/popup/popup/popup';\r\nimport type { Emits, Props } from './confirm';\r\nimport TopButton from '@/components/forms/button/button.vue';\r\nimport TopPopup from '@/components/popup/popup/popup.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst isSubmit = ref(false);\r\n\r\nconst onSubmit = () => {\r\n\tisSubmit.value = true;\r\n\r\n\temit('submit');\r\n};\r\n\r\nconst onClose = (popupEvent: PopupEvent) => {\r\n\tif (isSubmit.value) {\r\n\t\tisSubmit.value = false;\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\temit('close', popupEvent);\r\n};\r\n\r\nconst $propsPopup = { ...props, submitText: undefined, cancelText: undefined, isWarning: undefined };\r\ndelete $propsPopup.submitText;\r\ndelete $propsPopup.cancelText;\r\ndelete $propsPopup.isWarning;\r\n</script>\r\n\r\n<template>\r\n\t<TopPopup\r\n\t\tclass=\"top-popupConfirm\"\r\n\t\t:=$propsPopup\r\n\t\t@open=\"$emit('open', $event)\"\r\n\t\t@close=\"onClose($event)\"\r\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\r\n\t\t\t<slot name=\"opener\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #header v-if=\"$slots.header\">\r\n\t\t\t<!-- @slot Шапка -->\r\n\t\t\t<slot name=\"header\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #content v-if=\"$slots.default\">\r\n\t\t\t<!-- @slot Контент в свободной форме -->\r\n\t\t\t<slot></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #footer>\r\n\t\t\t<!-- @slot Футер -->\r\n\t\t\t<slot name=\"footer\"></slot>\r\n\r\n\t\t\t<TopButton color=\"theme\">\r\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\r\n\t\t\t</TopButton>\r\n\r\n\t\t\t<TopButton\r\n\t\t\t\t@click=\"onSubmit\"\r\n\t\t\t\t:color=\"isWarning ? 'red' : 'blue'\"\r\n\t\t\t>\r\n\t\t\t\t{{ submitText || $i18n.Common.Continue }}\r\n\t\t\t</TopButton>\r\n\t\t</template>\r\n\t</TopPopup>\r\n</template>\r\n","<script setup lang=\"ts\">\r\nimport { ref, watch } from 'vue';\r\nimport type { PopupEvent } from '@/components/popup/popup/popup';\r\nimport type { Emits, Props } from './prompt';\r\nimport TopButton from '@/components/forms/button/button.vue';\r\nimport TopPopup from '@/components/popup/popup/popup.vue';\r\nimport TopPopupWidgetInput from '@/components/popup/popup/widgetInput.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst reset = () => localValue.value = props.defaultValue ?? '';\r\n\r\nconst isSubmit = ref(false);\r\n\r\nconst localValue = ref();\r\nwatch(() => props.defaultValue, () => reset(), { immediate: true });\r\n\r\nconst onSubmit = () => {\r\n\tisSubmit.value = true;\r\n};\r\n\r\nconst onClose = (popupEvent: PopupEvent) => {\r\n\tif (isSubmit.value) {\r\n\t\tisSubmit.value = false;\r\n\r\n\t\temit('submit', localValue.value);\r\n\r\n\t\treset();\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\treset();\r\n\r\n\temit('close', popupEvent);\r\n};\r\n\r\nconst $propsPopup = { ...props, submitText: undefined, cancelText: undefined, defaultValue: undefined };\r\ndelete $propsPopup.submitText;\r\ndelete $propsPopup.cancelText;\r\ndelete $propsPopup.defaultValue;\r\n</script>\r\n\r\n<template>\r\n\t<TopPopup\r\n\t\tclass=\"top-popupPrompt\"\r\n\t\t:=$propsPopup\r\n\t\t@open=\"$emit('open', $event)\"\r\n\t\t@close=\"onClose($event)\"\r\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\r\n\t\t\t<slot name=\"opener\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #header v-if=\"$slots.header\">\r\n\t\t\t<!-- @slot Шапка -->\r\n\t\t\t<slot name=\"header\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #content v-if=\"$slots.default\">\r\n\t\t\t<!-- @slot Контент в свободной форме -->\r\n\t\t\t<slot></slot>\r\n\r\n\t\t\t<TopPopupWidgetInput v-model.trim=\"localValue\"/>\r\n\t\t</template>\r\n\r\n\t\t<template #footer>\r\n\t\t\t<!-- @slot Футер -->\r\n\t\t\t<slot name=\"footer\"></slot>\r\n\r\n\t\t\t<TopButton color=\"theme\">\r\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\r\n\t\t\t</TopButton>\r\n\r\n\t\t\t<TopButton @click=\"onSubmit\">\r\n\t\t\t\t{{ submitText || $i18n.Common.OK }}\r\n\t\t\t</TopButton>\r\n\t\t</template>\r\n\t</TopPopup>\r\n</template>\r\n","import type { ComponentCustomProps } from 'vue';\r\n\r\nimport Popup from './popup/popup.vue';\r\nimport PopupOpener from './popup/opener.vue';\r\nimport PopupListItem from './popup/listItem.vue';\r\nimport PopupWidgetInput from './popup/widgetInput.vue';\r\nimport PopupAlert from './alert/alert.vue';\r\nimport PopupConfirm from './confirm/confirm.vue';\r\nimport PopupPrompt from './prompt/prompt.vue';\r\n\r\nexport const TopPopup = Popup as typeof Popup & ComponentCustomProps;\r\nexport const TopPopupOpener = PopupOpener as typeof PopupOpener & ComponentCustomProps;\r\nexport const TopPopupListItem = PopupListItem as typeof PopupListItem & ComponentCustomProps;\r\nexport const TopPopupWidgetInput = PopupWidgetInput as typeof PopupWidgetInput & ComponentCustomProps;\r\nexport const TopPopupAlert = PopupAlert as typeof PopupAlert & ComponentCustomProps;\r\nexport const TopPopupConfirm = PopupConfirm as typeof PopupConfirm & ComponentCustomProps;\r\nexport const TopPopupPrompt = PopupPrompt as typeof PopupPrompt & ComponentCustomProps;\r\n"],"names":["isSubmit","vue","onClose","popupEvent","emit","$propsPopup","props","reset","localValue","TopPopup","listItem_vue_vue_type_script_setup_true_lang","TopPopupOpener","TopPopupListItem","TopPopupWidgetInput","_sfc_main$3","TopPopupAlert","_sfc_main$2","TopPopupConfirm","_sfc_main$1","TopPopupPrompt","_sfc_main"],"mappings":"wpEAWAA,EAAAC,EAAA,IAAA,EAAA,SAGCD,EAAA,MAAA,gBAKDE,EAAAC,GAAA,CACC,GAAAH,EAAA,MAAA,CACCA,EAAA,MAAA,SAEA,CAGDI,EAAA,QAAAD,CAAA,GAGDE,EAAA,CAAA,GAAAC,EAAA,WAAA,OAAA,WAAA,OAAA,UAAA,MAAA,wwCCjBAC,EAAA,IAAAC,EAAA,MAAAF,EAAA,cAAA,GAEAN,EAAAC,EAAA,IAAA,EAAA,EAEAO,EAAAP,EAAA,IAAA,EACAA,EAAA,MAAA,IAAAK,EAAA,aAAA,IAAAC,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,eAGCP,EAAA,MAAA,IAGDE,EAAAC,GAAA,CACC,GAAAH,EAAA,MAAA,CACCA,EAAA,MAAA,GAEAI,EAAA,SAAAI,EAAA,KAAA,EAEAD,EAAA,QAEA,CAGDA,EAAA,EAEAH,EAAA,QAAAD,CAAA,GAGDE,EAAA,CAAA,GAAAC,EAAA,WAAA,OAAA,WAAA,OAAA,aAAA,MAAA,ujCC7BOG,EAAAC,EAAA,UACAC,EAAAD,EAAA,YACAE,EAAAF,EAAA,YACAG,EAAAC,EACAC,EAAAC,EACAC,EAAAC,EACAC,EAAAC"}
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-CZqS-tRD.es.js";
2
+ import { _ as y, a as O, b as D } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-uNNJJ4S0.es.js";
3
3
  import { defineComponent as b, mergeModels as I, useModel as M, createBlock as B, openBlock 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-BciWy0wX.es.js";
4
+ import { c as H, _ as v } from "../.chunks/forms-CipZtprq.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({
@@ -13,6 +13,7 @@ const P = /* @__PURE__ */ b({
13
13
  readonly: { type: Boolean },
14
14
  modificator: {},
15
15
  size: {},
16
+ styling: {},
16
17
  isError: { type: Boolean },
17
18
  isLoading: { type: Boolean },
18
19
  icon: {},
@@ -1 +1 @@
1
- {"version":3,"file":"popup.js","sources":["../../src/components/popup/popup/widgetInput.vue","../../src/components/popup/alert/alert.vue","../../src/components/popup/confirm/confirm.vue","../../src/components/popup/prompt/prompt.vue","../../src/components/popup/popup.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport type { ModelRef } from 'vue';\r\nimport type { Props } from '@/components/forms/input/input';\r\nimport TopInput from '@/components/forms/input/input.vue';\r\n\r\nwithDefaults(defineProps<Props>(), {\r\n\taddCleaner: true,\r\n});\r\n\r\nconst model: ModelRef<string> = defineModel({\r\n\tdefault: '',\r\n});\r\n</script>\r\n\r\n<template>\r\n\t<TopInput\r\n\t\t:=\"$props\"\r\n\t\tmodificator=\"popupWidgetInput\"\r\n\t\tv-model=\"model\"\r\n\t/>\r\n</template>\r\n\r\n<style>\r\n.top-input-popupWidgetInput {\r\n\t--top-loadbar-color: var(--color-line-2);\r\n\r\n\twidth: 100%;\r\n}\r\n\r\n.top-input_input-popupWidgetInput {\r\n\tborder: none;\r\n\tbackground: var(--color-layer-1);\r\n}\r\n\r\n.top-input_input-popupWidgetInput:hover {\r\n\tbackground: var(--color-layer-2);\r\n}\r\n\r\n.top-input_input-popupWidgetInput:focus {\r\n\tbackground: var(--color-layer-1);\r\n\toutline: unset;\r\n}\r\n</style>\r\n","<script setup lang=\"ts\">\r\nimport type { Emits, Props } from './alert';\r\nimport TopButton from '@/components/forms/button/button.vue';\r\nimport TopPopup from '@/components/popup/popup/popup.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\ndefineEmits<Emits>();\r\n\r\nconst $propsPopup = { ...props, submitText: undefined };\r\ndelete $propsPopup.submitText;\r\n</script>\r\n\r\n<template>\r\n\t<TopPopup\r\n\t\tclass=\"top-popupAlert\"\r\n\t\t:=$propsPopup\r\n\t\t@open=\"$emit('open', $event)\"\r\n\t\t@close=\"$emit('close', $event)\"\r\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<!-- @slot Элемент для открытия Popup -->\r\n\t\t\t<slot name=\"opener\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #header v-if=\"$slots.header\">\r\n\t\t\t<!-- @slot Шапка -->\r\n\t\t\t<slot name=\"header\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #content v-if=\"$slots.default\">\r\n\t\t\t<!-- @slot Контент в свободной форме -->\r\n\t\t\t<slot></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #footer>\r\n\t\t\t<!-- @slot Футер -->\r\n\t\t\t<slot name=\"footer\"></slot>\r\n\r\n\t\t\t<TopButton>\r\n\t\t\t\t{{ submitText || $i18n.Common.Close }}\r\n\t\t\t</TopButton>\r\n\t\t</template>\r\n\t</TopPopup>\r\n</template>\r\n","<script setup lang=\"ts\">\r\nimport { ref } from 'vue';\r\nimport type { PopupEvent } from '@/components/popup/popup/popup';\r\nimport type { Emits, Props } from './confirm';\r\nimport TopButton from '@/components/forms/button/button.vue';\r\nimport TopPopup from '@/components/popup/popup/popup.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst isSubmit = ref(false);\r\n\r\nconst onSubmit = () => {\r\n\tisSubmit.value = true;\r\n\r\n\temit('submit');\r\n};\r\n\r\nconst onClose = (popupEvent: PopupEvent) => {\r\n\tif (isSubmit.value) {\r\n\t\tisSubmit.value = false;\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\temit('close', popupEvent);\r\n};\r\n\r\nconst $propsPopup = { ...props, submitText: undefined, cancelText: undefined, isWarning: undefined };\r\ndelete $propsPopup.submitText;\r\ndelete $propsPopup.cancelText;\r\ndelete $propsPopup.isWarning;\r\n</script>\r\n\r\n<template>\r\n\t<TopPopup\r\n\t\tclass=\"top-popupConfirm\"\r\n\t\t:=$propsPopup\r\n\t\t@open=\"$emit('open', $event)\"\r\n\t\t@close=\"onClose($event)\"\r\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\r\n\t\t\t<slot name=\"opener\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #header v-if=\"$slots.header\">\r\n\t\t\t<!-- @slot Шапка -->\r\n\t\t\t<slot name=\"header\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #content v-if=\"$slots.default\">\r\n\t\t\t<!-- @slot Контент в свободной форме -->\r\n\t\t\t<slot></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #footer>\r\n\t\t\t<!-- @slot Футер -->\r\n\t\t\t<slot name=\"footer\"></slot>\r\n\r\n\t\t\t<TopButton color=\"theme\">\r\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\r\n\t\t\t</TopButton>\r\n\r\n\t\t\t<TopButton\r\n\t\t\t\t@click=\"onSubmit\"\r\n\t\t\t\t:color=\"isWarning ? 'red' : 'blue'\"\r\n\t\t\t>\r\n\t\t\t\t{{ submitText || $i18n.Common.Continue }}\r\n\t\t\t</TopButton>\r\n\t\t</template>\r\n\t</TopPopup>\r\n</template>\r\n","<script setup lang=\"ts\">\r\nimport { ref, watch } from 'vue';\r\nimport type { PopupEvent } from '@/components/popup/popup/popup';\r\nimport type { Emits, Props } from './prompt';\r\nimport TopButton from '@/components/forms/button/button.vue';\r\nimport TopPopup from '@/components/popup/popup/popup.vue';\r\nimport TopPopupWidgetInput from '@/components/popup/popup/widgetInput.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst reset = () => localValue.value = props.defaultValue ?? '';\r\n\r\nconst isSubmit = ref(false);\r\n\r\nconst localValue = ref();\r\nwatch(() => props.defaultValue, () => reset(), { immediate: true });\r\n\r\nconst onSubmit = () => {\r\n\tisSubmit.value = true;\r\n};\r\n\r\nconst onClose = (popupEvent: PopupEvent) => {\r\n\tif (isSubmit.value) {\r\n\t\tisSubmit.value = false;\r\n\r\n\t\temit('submit', localValue.value);\r\n\r\n\t\treset();\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\treset();\r\n\r\n\temit('close', popupEvent);\r\n};\r\n\r\nconst $propsPopup = { ...props, submitText: undefined, cancelText: undefined, defaultValue: undefined };\r\ndelete $propsPopup.submitText;\r\ndelete $propsPopup.cancelText;\r\ndelete $propsPopup.defaultValue;\r\n</script>\r\n\r\n<template>\r\n\t<TopPopup\r\n\t\tclass=\"top-popupPrompt\"\r\n\t\t:=$propsPopup\r\n\t\t@open=\"$emit('open', $event)\"\r\n\t\t@close=\"onClose($event)\"\r\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\r\n\t\t\t<slot name=\"opener\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #header v-if=\"$slots.header\">\r\n\t\t\t<!-- @slot Шапка -->\r\n\t\t\t<slot name=\"header\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #content v-if=\"$slots.default\">\r\n\t\t\t<!-- @slot Контент в свободной форме -->\r\n\t\t\t<slot></slot>\r\n\r\n\t\t\t<TopPopupWidgetInput v-model.trim=\"localValue\"/>\r\n\t\t</template>\r\n\r\n\t\t<template #footer>\r\n\t\t\t<!-- @slot Футер -->\r\n\t\t\t<slot name=\"footer\"></slot>\r\n\r\n\t\t\t<TopButton color=\"theme\">\r\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\r\n\t\t\t</TopButton>\r\n\r\n\t\t\t<TopButton @click=\"onSubmit\">\r\n\t\t\t\t{{ submitText || $i18n.Common.OK }}\r\n\t\t\t</TopButton>\r\n\t\t</template>\r\n\t</TopPopup>\r\n</template>\r\n","import type { ComponentCustomProps } from 'vue';\r\n\r\nimport Popup from './popup/popup.vue';\r\nimport PopupOpener from './popup/opener.vue';\r\nimport PopupListItem from './popup/listItem.vue';\r\nimport PopupWidgetInput from './popup/widgetInput.vue';\r\nimport PopupAlert from './alert/alert.vue';\r\nimport PopupConfirm from './confirm/confirm.vue';\r\nimport PopupPrompt from './prompt/prompt.vue';\r\n\r\nexport const TopPopup = Popup as typeof Popup & ComponentCustomProps;\r\nexport const TopPopupOpener = PopupOpener as typeof PopupOpener & ComponentCustomProps;\r\nexport const TopPopupListItem = PopupListItem as typeof PopupListItem & ComponentCustomProps;\r\nexport const TopPopupWidgetInput = PopupWidgetInput as typeof PopupWidgetInput & ComponentCustomProps;\r\nexport const TopPopupAlert = PopupAlert as typeof PopupAlert & ComponentCustomProps;\r\nexport const TopPopupConfirm = PopupConfirm as typeof PopupConfirm & ComponentCustomProps;\r\nexport const TopPopupPrompt = PopupPrompt as typeof PopupPrompt & ComponentCustomProps;\r\n"],"names":["model","useModel","__props","$propsPopup","props","emit","__emit","isSubmit","ref","onSubmit","onClose","popupEvent","reset","localValue","watch","TopPopup","_sfc_main$5","TopPopupOpener","_sfc_main$8","TopPopupListItem","_sfc_main$7","TopPopupWidgetInput","_sfc_main$3","TopPopupAlert","_sfc_main$2","TopPopupConfirm","_sfc_main$1","TopPopupPrompt","_sfc_main"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,UAAAA,IAAAC,EAAAC,GAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;ACAA,UAAAC,IAAA,EAAA,GAJAD,GAIA,YAAA,OAAA;AACA,kBAAAC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACHA,UAAAC,IAAAF,GAEAG,IAAAC,GAEAC,IAAAC,EAAA,EAAA,GAEAC,IAAA,MAAA;AACC,MAAAF,EAAA,QAAA,IAEAF,EAAA,QAAA;AAAA,IAAa,GAGdK,IAAA,CAAAC,MAAA;AACC,UAAAJ,EAAA,OAAA;AACC,QAAAA,EAAA,QAAA;AAEA;AAAA,MAAA;AAGD,MAAAF,EAAA,SAAAM,CAAA;AAAA,IAAwB,GAGzBR,IAAA,EAAA,GAAAC,GAAA,YAAA,QAAA,YAAA,QAAA,WAAA,OAAA;AACA,kBAAAD,EAAA,YACA,OAAAA,EAAA,YACA,OAAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxBA,UAAAC,IAAAF,GAEAG,IAAAC,GAEAM,IAAA,MAAAC,EAAA,QAAAT,EAAA,gBAAA,IAEAG,IAAAC,EAAA,EAAA,GAEAK,IAAAL,EAAA;AACA,IAAAM,EAAA,MAAAV,EAAA,cAAA,MAAAQ,EAAA,GAAA,EAAA,WAAA,GAAA,CAAA;AAEA,UAAAH,IAAA,MAAA;AACC,MAAAF,EAAA,QAAA;AAAA,IAAiB,GAGlBG,IAAA,CAAAC,MAAA;AACC,UAAAJ,EAAA,OAAA;AACC,QAAAA,EAAA,QAAA,IAEAF,EAAA,UAAAQ,EAAA,KAAA,GAEAD,EAAA;AAEA;AAAA,MAAA;AAGD,MAAAA,EAAA,GAEAP,EAAA,SAAAM,CAAA;AAAA,IAAwB,GAGzBR,IAAA,EAAA,GAAAC,GAAA,YAAA,QAAA,YAAA,QAAA,cAAA,OAAA;AACA,kBAAAD,EAAA,YACA,OAAAA,EAAA,YACA,OAAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IChCOY,IAAAC,GACAC,IAAAC,GACAC,IAAAC,GACAC,IAAAC,GACAC,IAAAC,GACAC,IAAAC,GACAC,IAAAC;"}
1
+ {"version":3,"file":"popup.js","sources":["../../src/components/popup/popup/widgetInput.vue","../../src/components/popup/alert/alert.vue","../../src/components/popup/confirm/confirm.vue","../../src/components/popup/prompt/prompt.vue","../../src/components/popup/popup.ts"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport type { ModelRef } from 'vue';\r\nimport type { Props } from '@/components/forms/input/input';\r\nimport TopInput from '@/components/forms/input/input.vue';\r\n\r\nwithDefaults(defineProps<Props>(), {\r\n\taddCleaner: true,\r\n});\r\n\r\nconst model: ModelRef<string> = defineModel({\r\n\tdefault: '',\r\n});\r\n</script>\r\n\r\n<template>\r\n\t<TopInput\r\n\t\t:=\"$props\"\r\n\t\tmodificator=\"popupWidgetInput\"\r\n\t\tv-model=\"model\"\r\n\t/>\r\n</template>\r\n\r\n<style>\r\n.top-input-popupWidgetInput {\r\n\t--top-loadbar-color: var(--color-line-2);\r\n\r\n\twidth: 100%;\r\n}\r\n\r\n.top-input_input-popupWidgetInput {\r\n\tborder: none;\r\n\tbackground: var(--color-layer-1);\r\n}\r\n\r\n.top-input_input-popupWidgetInput:hover {\r\n\tbackground: var(--color-layer-2);\r\n}\r\n\r\n.top-input_input-popupWidgetInput:focus {\r\n\tbackground: var(--color-layer-1);\r\n\toutline: unset;\r\n}\r\n</style>\r\n","<script setup lang=\"ts\">\r\nimport type { Emits, Props } from './alert';\r\nimport TopButton from '@/components/forms/button/button.vue';\r\nimport TopPopup from '@/components/popup/popup/popup.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\ndefineEmits<Emits>();\r\n\r\nconst $propsPopup = { ...props, submitText: undefined };\r\ndelete $propsPopup.submitText;\r\n</script>\r\n\r\n<template>\r\n\t<TopPopup\r\n\t\tclass=\"top-popupAlert\"\r\n\t\t:=$propsPopup\r\n\t\t@open=\"$emit('open', $event)\"\r\n\t\t@close=\"$emit('close', $event)\"\r\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<!-- @slot Элемент для открытия Popup -->\r\n\t\t\t<slot name=\"opener\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #header v-if=\"$slots.header\">\r\n\t\t\t<!-- @slot Шапка -->\r\n\t\t\t<slot name=\"header\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #content v-if=\"$slots.default\">\r\n\t\t\t<!-- @slot Контент в свободной форме -->\r\n\t\t\t<slot></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #footer>\r\n\t\t\t<!-- @slot Футер -->\r\n\t\t\t<slot name=\"footer\"></slot>\r\n\r\n\t\t\t<TopButton>\r\n\t\t\t\t{{ submitText || $i18n.Common.Close }}\r\n\t\t\t</TopButton>\r\n\t\t</template>\r\n\t</TopPopup>\r\n</template>\r\n","<script setup lang=\"ts\">\r\nimport { ref } from 'vue';\r\nimport type { PopupEvent } from '@/components/popup/popup/popup';\r\nimport type { Emits, Props } from './confirm';\r\nimport TopButton from '@/components/forms/button/button.vue';\r\nimport TopPopup from '@/components/popup/popup/popup.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst isSubmit = ref(false);\r\n\r\nconst onSubmit = () => {\r\n\tisSubmit.value = true;\r\n\r\n\temit('submit');\r\n};\r\n\r\nconst onClose = (popupEvent: PopupEvent) => {\r\n\tif (isSubmit.value) {\r\n\t\tisSubmit.value = false;\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\temit('close', popupEvent);\r\n};\r\n\r\nconst $propsPopup = { ...props, submitText: undefined, cancelText: undefined, isWarning: undefined };\r\ndelete $propsPopup.submitText;\r\ndelete $propsPopup.cancelText;\r\ndelete $propsPopup.isWarning;\r\n</script>\r\n\r\n<template>\r\n\t<TopPopup\r\n\t\tclass=\"top-popupConfirm\"\r\n\t\t:=$propsPopup\r\n\t\t@open=\"$emit('open', $event)\"\r\n\t\t@close=\"onClose($event)\"\r\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\r\n\t\t\t<slot name=\"opener\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #header v-if=\"$slots.header\">\r\n\t\t\t<!-- @slot Шапка -->\r\n\t\t\t<slot name=\"header\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #content v-if=\"$slots.default\">\r\n\t\t\t<!-- @slot Контент в свободной форме -->\r\n\t\t\t<slot></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #footer>\r\n\t\t\t<!-- @slot Футер -->\r\n\t\t\t<slot name=\"footer\"></slot>\r\n\r\n\t\t\t<TopButton color=\"theme\">\r\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\r\n\t\t\t</TopButton>\r\n\r\n\t\t\t<TopButton\r\n\t\t\t\t@click=\"onSubmit\"\r\n\t\t\t\t:color=\"isWarning ? 'red' : 'blue'\"\r\n\t\t\t>\r\n\t\t\t\t{{ submitText || $i18n.Common.Continue }}\r\n\t\t\t</TopButton>\r\n\t\t</template>\r\n\t</TopPopup>\r\n</template>\r\n","<script setup lang=\"ts\">\r\nimport { ref, watch } from 'vue';\r\nimport type { PopupEvent } from '@/components/popup/popup/popup';\r\nimport type { Emits, Props } from './prompt';\r\nimport TopButton from '@/components/forms/button/button.vue';\r\nimport TopPopup from '@/components/popup/popup/popup.vue';\r\nimport TopPopupWidgetInput from '@/components/popup/popup/widgetInput.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst reset = () => localValue.value = props.defaultValue ?? '';\r\n\r\nconst isSubmit = ref(false);\r\n\r\nconst localValue = ref();\r\nwatch(() => props.defaultValue, () => reset(), { immediate: true });\r\n\r\nconst onSubmit = () => {\r\n\tisSubmit.value = true;\r\n};\r\n\r\nconst onClose = (popupEvent: PopupEvent) => {\r\n\tif (isSubmit.value) {\r\n\t\tisSubmit.value = false;\r\n\r\n\t\temit('submit', localValue.value);\r\n\r\n\t\treset();\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\treset();\r\n\r\n\temit('close', popupEvent);\r\n};\r\n\r\nconst $propsPopup = { ...props, submitText: undefined, cancelText: undefined, defaultValue: undefined };\r\ndelete $propsPopup.submitText;\r\ndelete $propsPopup.cancelText;\r\ndelete $propsPopup.defaultValue;\r\n</script>\r\n\r\n<template>\r\n\t<TopPopup\r\n\t\tclass=\"top-popupPrompt\"\r\n\t\t:=$propsPopup\r\n\t\t@open=\"$emit('open', $event)\"\r\n\t\t@close=\"onClose($event)\"\r\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\r\n\t\t\t<slot name=\"opener\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #header v-if=\"$slots.header\">\r\n\t\t\t<!-- @slot Шапка -->\r\n\t\t\t<slot name=\"header\"></slot>\r\n\t\t</template>\r\n\r\n\t\t<template #content v-if=\"$slots.default\">\r\n\t\t\t<!-- @slot Контент в свободной форме -->\r\n\t\t\t<slot></slot>\r\n\r\n\t\t\t<TopPopupWidgetInput v-model.trim=\"localValue\"/>\r\n\t\t</template>\r\n\r\n\t\t<template #footer>\r\n\t\t\t<!-- @slot Футер -->\r\n\t\t\t<slot name=\"footer\"></slot>\r\n\r\n\t\t\t<TopButton color=\"theme\">\r\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\r\n\t\t\t</TopButton>\r\n\r\n\t\t\t<TopButton @click=\"onSubmit\">\r\n\t\t\t\t{{ submitText || $i18n.Common.OK }}\r\n\t\t\t</TopButton>\r\n\t\t</template>\r\n\t</TopPopup>\r\n</template>\r\n","import type { ComponentCustomProps } from 'vue';\r\n\r\nimport Popup from './popup/popup.vue';\r\nimport PopupOpener from './popup/opener.vue';\r\nimport PopupListItem from './popup/listItem.vue';\r\nimport PopupWidgetInput from './popup/widgetInput.vue';\r\nimport PopupAlert from './alert/alert.vue';\r\nimport PopupConfirm from './confirm/confirm.vue';\r\nimport PopupPrompt from './prompt/prompt.vue';\r\n\r\nexport const TopPopup = Popup as typeof Popup & ComponentCustomProps;\r\nexport const TopPopupOpener = PopupOpener as typeof PopupOpener & ComponentCustomProps;\r\nexport const TopPopupListItem = PopupListItem as typeof PopupListItem & ComponentCustomProps;\r\nexport const TopPopupWidgetInput = PopupWidgetInput as typeof PopupWidgetInput & ComponentCustomProps;\r\nexport const TopPopupAlert = PopupAlert as typeof PopupAlert & ComponentCustomProps;\r\nexport const TopPopupConfirm = PopupConfirm as typeof PopupConfirm & ComponentCustomProps;\r\nexport const TopPopupPrompt = PopupPrompt as typeof PopupPrompt & ComponentCustomProps;\r\n"],"names":["model","useModel","__props","$propsPopup","props","emit","__emit","isSubmit","ref","onSubmit","onClose","popupEvent","reset","localValue","watch","TopPopup","_sfc_main$5","TopPopupOpener","_sfc_main$8","TopPopupListItem","_sfc_main$7","TopPopupWidgetInput","_sfc_main$3","TopPopupAlert","_sfc_main$2","TopPopupConfirm","_sfc_main$1","TopPopupPrompt","_sfc_main"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,UAAAA,IAAAC,EAAAC,GAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;ACAA,UAAAC,IAAA,EAAA,GAJAD,GAIA,YAAA,OAAA;AACA,kBAAAC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACHA,UAAAC,IAAAF,GAEAG,IAAAC,GAEAC,IAAAC,EAAA,EAAA,GAEAC,IAAA,MAAA;AACC,MAAAF,EAAA,QAAA,IAEAF,EAAA,QAAA;AAAA,IAAa,GAGdK,IAAA,CAAAC,MAAA;AACC,UAAAJ,EAAA,OAAA;AACC,QAAAA,EAAA,QAAA;AAEA;AAAA,MAAA;AAGD,MAAAF,EAAA,SAAAM,CAAA;AAAA,IAAwB,GAGzBR,IAAA,EAAA,GAAAC,GAAA,YAAA,QAAA,YAAA,QAAA,WAAA,OAAA;AACA,kBAAAD,EAAA,YACA,OAAAA,EAAA,YACA,OAAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxBA,UAAAC,IAAAF,GAEAG,IAAAC,GAEAM,IAAA,MAAAC,EAAA,QAAAT,EAAA,gBAAA,IAEAG,IAAAC,EAAA,EAAA,GAEAK,IAAAL,EAAA;AACA,IAAAM,EAAA,MAAAV,EAAA,cAAA,MAAAQ,EAAA,GAAA,EAAA,WAAA,GAAA,CAAA;AAEA,UAAAH,IAAA,MAAA;AACC,MAAAF,EAAA,QAAA;AAAA,IAAiB,GAGlBG,IAAA,CAAAC,MAAA;AACC,UAAAJ,EAAA,OAAA;AACC,QAAAA,EAAA,QAAA,IAEAF,EAAA,UAAAQ,EAAA,KAAA,GAEAD,EAAA;AAEA;AAAA,MAAA;AAGD,MAAAA,EAAA,GAEAP,EAAA,SAAAM,CAAA;AAAA,IAAwB,GAGzBR,IAAA,EAAA,GAAAC,GAAA,YAAA,QAAA,YAAA,QAAA,cAAA,OAAA;AACA,kBAAAD,EAAA,YACA,OAAAA,EAAA,YACA,OAAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IChCOY,IAAAC,GACAC,IAAAC,GACAC,IAAAC,GACAC,IAAAC,GACAC,IAAAC,GACAC,IAAAC,GACAC,IAAAC;"}
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-Dh0QU6P9.amd","../utils/dom.amd"],function(require,exports,forms,utils_dom){"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{TopLibPopup}=await new Promise((t,o)=>require(["../.chunks/popup-BdJJx21M.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 TopLibPopup(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()}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"})});
1
+ define(["require","exports","../.chunks/forms-CxYSHZLL.amd","../utils/dom.amd"],function(require,exports,forms,utils_dom){"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{TopLibPopup}=await new Promise((t,o)=>require(["../.chunks/popup-Bwknq6xI.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 TopLibPopup(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()}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-BciWy0wX.es.js";
1
+ import { C as Core } from "../.chunks/forms-CipZtprq.es.js";
2
2
  import DOM from "../utils/dom.js";
3
3
  class Worker {
4
4
  /**
@@ -44,7 +44,7 @@ class Worker {
44
44
  */
45
45
  static async open(elOpener, options) {
46
46
  elOpener instanceof HTMLElement && (elOpener.dataset.topPopupOpened = "opened");
47
- const { TopLibPopup } = await import("../.chunks/popup-D-6PIelY.es.js");
47
+ const { TopLibPopup } = await import("../.chunks/popup-BvhY5oAD.es.js");
48
48
  if (Core.$) {
49
49
  const $elOpener = Core.$(elOpener);
50
50
  if ($elOpener.data("aftershow")) {
@@ -1,2 +1,2 @@
1
- define(["require","exports","vue","../.chunks/forms-Dh0QU6P9.amd","../.chunks/listItem.vue_vue_type_script_setup_true_lang-Del8bjSk.amd","../.chunks/menu.vue_vue_type_style_index_0_lang-B8-UPDGJ.amd","../utils/searchers.amd","../utils/dom.amd","../popup/worker.amd","../require/css.amd!../assets/project.css"],function(Me,w,e,I,E,Z,q,_,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 o=t,d=e.useModel(t,"modelValue"),n=e.computed(()=>{if(o.showSelectAllItem)return{icon:"",title:I.useI18n().Common.Select_all,value:"all",content:""}});return(l,a)=>(e.openBlock(),e.createElementBlock("div",te,[e.unref(I.Core).state.isMobile?(e.openBlock(),e.createBlock(E._sfc_main,{key:0},{opener:e.withCtx(()=>[e.createVNode(I._sfc_main,{class:"top-selectorCompetitors_opener",color:"theme",icon:"",icon2:""},{default:e.withCtx(()=>{var r;return[e.createTextVNode(e.toDisplayString((r=l.items.find(u=>{var f;return u.value===((f=d.value)==null?void 0:f[0])}))==null?void 0:r.content),1)]}),_:1})]),contentList:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.items,(r,u)=>{var f;return e.openBlock(),e.createBlock(E._sfc_main$1,{class:e.normalizeClass({"top-active":(f=d.value)==null?void 0:f.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:l.items,isMultiple:!0,styling:"bar",canBeEmptyMultiple:!1,selectAllItem:n.value},null,8,["modelValue","items","selectAllItem"]))]))}}),k=-2,le={0:"Yandex",1:"Google",4:"YouTube",5:"Bing",7:"Seznam",8:"AppStore",9:"GoogleStore",20:"Yandex.com",21:"Yandex.com.tr"},L={key:k,name:"--",index:k},j={key:k,name:"--",regions:[L],regionByIndex:new Map([[k,L]])},A={key:k,name:"Autoselect",index:k},P={key:k,name:"Autoselect",regions:[A],regionByIndex:new Map([[k,A]])},J={countryCode:"00",depth:1,device:0,key:-1,index:-1,lang:"ru",name:"Without region"},ae=()=>(A.name=I.useI18n().Common.Autoselect,A),re=()=>(ae(),P.name=I.useI18n().Common.Autoselect,console.log(P),P),ie=()=>(J.name=I.useI18n().Keywords.Without_region,J),U=(t=!1,o=!1,d=[])=>{let n;return t?n=de(d):n=G(d),o&&n.set(k,re()),n.size||n.set(k,j),n},G=(t,o=!0,d=[],n=!1)=>{const l=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(u=>{if(o&&!u.enabled)return;const f={...u};r.regionByIndex&&r.regionByIndex.set(f.index,f)}),!r.regionByIndex.size&&!d.length&&r.regionByIndex.set(L.index,L),typeof r.key=="number"&&l.set(r.key,r)}),d.forEach(a=>{if(l.has(a))return;const r={key:a,name:le[a],regions:[],regionByIndex:new Map};l.set(r.key,r)}),l},de=t=>{const o=G(t,!1,[0,1],!0);if(o.has(2)){const d=o.get(2);d&&(d.regionByIndex=new Map)}return o.forEach(d=>{if(!d.regionByIndex)return;const n={...ie()};d.regionByIndex.set(n.index,n)}),o},Y=(t,o,d=[])=>{const n=U(t,!1,d);let l;return n.forEach(a=>{if(!(o.searcher_key!==void 0&&o.searcher_key!=a.key)&&a.regions&&(a.regions.forEach(r=>{if(!l&&!(o.key!==void 0&&o.key!=r.key)&&!(o.index!==void 0&&o.index!=r.index)&&!(!t&&(o.lang!==void 0&&o.lang!=r.lang||o.device!==void 0&&o.device!=r.device)))return r.searcher_key=a.key,l=r,!1}),l))return!1}),l},se=(t,o)=>{const d=I.useI18n(),n=e.ref(o.value.keys().next().value??k),l=e.computed(()=>{const a=new Map;if(o.value.forEach(r=>{let u={value:r.key,title:r.name};t.addSearcherIcon&&(u.icon=q.getSearcherGIcon(r.key)),a.set(r.key,u)}),t.addCompare&&!a.has(k)){const r={value:"",title:"--------------------",disabled:!0};a.set(r.value,r);const u={value:-1,title:d.Common.Compare};a.set(u.value,u)}return a});return{searcherKey:n,optionBySearcherKey:l}},ue=(t,o)=>{var a,r,u;const d=I.useI18n(),n=e.ref(k);t.modelValue.length===1&&(n.value=t.modelValue[0]),n.value===k&&(t.forFrequency?n.value=((r=(a=o.value)==null?void 0:a.regionByIndex.values().next().value)==null?void 0:r.key)??k:n.value=((u=o.value)==null?void 0:u.regionByIndex.keys().next().value)??k);const l=e.computed(()=>{var v;const f=new Map;return(v=o.value.regionByIndex)==null||v.forEach(p=>{let i=p.name;if(t.forFrequency){const C={value:p.key,title:i};f.has(p.key)||f.set(p.key,C);return}p.device&&(i+=" ("+d.Common["Device_"+p.device]+")");const g=q.getLangLabel(o.value.key||0,p.lang??"");g&&(i+=" / "+g);const y={value:p.index,title:i,icon:p.device?q.getDeviceGIcon(p.device):void 0};f.set(p.index,y)}),f});return e.watch(l,(f,v)=>{var y;if(t.onlySearcher||n.value!==void 0&&f.get(n.value))return;let p=f.keys().next().value;if(n.value===k||p===k){n.value=p;return}let i=((y=v==null?void 0:v.get(n.value))==null?void 0:y.title)||"",g=-1;for(const[C,x]of f.entries()){const S=x.title;if(typeof S!="string"||typeof C=="string")break;if(S===i){p=C;break}const T=new RegExp(` \\((${d.Common.Device_1}|${d.Common.Device_2})\\)`);let B=i,c=3;S.indexOf(B)===-1&&(B=i.replace(/^[^a-zа-я]/i,"").replace(T,""),c--),S.indexOf(B)===-1&&(B=i.replace(/ \/.*/,""),c--),S.indexOf(B)===-1&&(B=i.replace(/ \/.*/,""),B=B.replace(/^[^a-zа-я]/i,"").replace(T,""),c--),S.indexOf(B)!==-1&&(c<=g||(g=c,p=C))}n.value=p}),{regionIndex:n,optionByRegionIndex:l}},ce=(t,o,d)=>{const n=e.ref([]),l=()=>{if(t.onlySearcher&&o.value){n.value=Array.from(o.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(u=>d.value.has(u))),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&&l(),{regionsIndexes:n}},me=t=>{const o=e.computed(()=>U(t.forFrequency,t.autoRegion,t.searchers)),d=e.computed(()=>o.value.get(l.searcherKey.value)||j),n=e.computed(()=>{const i=new Set;return o.value.forEach(g=>{var y;(y=g.regions)==null||y.forEach(C=>{C.index!==-1&&C.index!==k&&i.add(C.index)})}),i}),l=se(t,o),a=ue(t,d),r=ce(t,o,n);e.watch(o,()=>{var g,y,C,x;if(t.onlySearcher?r.regionsIndexes.value=Array.from(o.value.keys()):r.regionsIndexes.value=r.regionsIndexes.value.filter(S=>n.value.has(S)),l.searcherKey.value===-1)return;let i=o.value.keys().next().value;o.value.forEach(S=>{var T,B,c;if(t.onlySearcher&&S.key===l.searcherKey.value){i=l.searcherKey.value;return}if(a.regionIndex.value&&((T=S.regionByIndex)!=null&&T.has(a.regionIndex.value))&&(i=S.key),!t.onlySearcher){let s;i!==void 0&&(s=(B=o.value.get(i))==null?void 0:B.regionByIndex);const m=(c=o.value.get(S.key))==null?void 0:c.regionByIndex;s!=null&&s.has(k)&&!(m!=null&&m.has(k))&&(i=S.key)}}),i!==void 0&&(l.searcherKey.value=i),a.regionIndex.value!==void 0&&!((y=(g=d.value)==null?void 0:g.regionByIndex)!=null&&y.has(a.regionIndex.value))&&(a.regionIndex.value=(x=(C=d.value)==null?void 0:C.regions)==null?void 0:x.keys().next().value)},{immediate:!0});const u=()=>{if(!(l.searcherKey.value===-1||l.searcherKey.value===k))return l.searcherKey.value},f=()=>{if(t.onlySearcher||a.regionIndex.value===k)return;let i=a.regionIndex.value;if(t.forFrequency){const g=a.regionIndex.value,y=Y(t.forFrequency,{searcher_key:u(),key:g},t.searchers);i=y==null?void 0:y.index}return i},v=()=>{const i=u();if(i!==void 0)return o.value.get(i)};return{selectSearcher:l,selectRegion:a,compare:r,searcherByKey:o,allRegionsIndexes:n,getSearcher:v,getRegion:()=>{var g,y;const i=f();if(i!==void 0)return(y=(g=v())==null?void 0:g.regionByIndex)==null?void 0:y.get(i)}}},ge=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:o,emit:d}){const n=t,l=e.useModel(t,"modelValue"),a=e.useModel(t,"modelValueSingle"),r=d,{selectSearcher:u,selectRegion:f,compare:v,searcherByKey:p,allRegionsIndexes:i,getSearcher:g,getRegion:y}=me(n),C=()=>{var x;if(window.fieldTemplates&&((x=window.fieldTemplates)!=null&&x.openSelectorRegions)){window.fieldTemplates.openSelectorRegions(p.value,v.regionsIndexes.value,S=>v.regionsIndexes.value=S);return}r("compareRegions",p.value)};return e.watch([f.regionIndex,u.searcherKey,v.regionsIndexes],()=>{if(u.searcherKey.value===-1&&v.regionsIndexes.value.length){if(JSON.stringify(l.value)===JSON.stringify(v.regionsIndexes.value))return;l.value=[...v.regionsIndexes.value]}else l.value=[n.onlySearcher?u.searcherKey.value:f.regionIndex.value];!n.onlySearcher&&!i.value.size&&(u.searcherKey.value=k)}),a.value&&e.watch(a,()=>{l.value=[a.value]},{immediate:!0}),e.watch(l,()=>{var x,S,T,B,c;if(l.value[0]&&(a.value=l.value[0]),n.onlySearcher){if(!l.value.length||l.value.length===1&&!p.value.has(l.value[0])){let s=p.value.keys().next().value;s!==void 0&&(l.value=[s]);return}if(l.value.length>1&&JSON.stringify(l.value)!==JSON.stringify(v.regionsIndexes.value)){l.value=[...v.regionsIndexes.value];return}}else{let s=[...new Set(l.value)],m=(S=(x=p.value.values().next().value)==null?void 0:x.regionByIndex)==null?void 0:S.keys().next().value;if(n.forFrequency&&(m=(c=(B=(T=p.value.values().next().value)==null?void 0:T.regionByIndex)==null?void 0:B.values().next().value)==null?void 0:c.key),!s.length)m!==void 0&&s.push(m);else if(s.length===1){let h=i.value;n.forFrequency&&(h=new Set,p.value.forEach(V=>{V.regionByIndex.forEach(M=>{M.index!==-1&&M.index!==k&&h.add(M.key)})})),!h.has(s[0])&&s[0]!==-2&&(s=[],m!==void 0&&s.push(m))}else s=s.filter(h=>i.value.has(h)),!s.length&&m!==void 0&&s.push(m);if(JSON.stringify(l.value)!==JSON.stringify(s)){l.value=s;return}}if(!(l.value.length===1&&l.value[0]===(n.onlySearcher?u.searcherKey.value:f.regionIndex.value)))if(n.onlySearcher){if(l.value.length===1){u.searcherKey.value=l.value[0];return}u.searcherKey.value=-1;return}else if(l.value.length===1&&u.searcherKey.value!==-1){f.regionIndex.value=l.value[0];let s;for(const m of p.value.values()){for(const h of m.regionByIndex.values())if((n.forFrequency?h.key:h.index)===f.regionIndex.value){s=m.key;break}if(s!==void 0)break}s!==void 0&&(u.searcherKey.value=s)}else u.searcherKey.value=-1,v.regionsIndexes.value=[...l.value]},{immediate:!0}),o({getSearcher:g,getRegion:y}),(x,S)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-selectorRegion":!0,"top-selectorRegion-onlySearcher":x.onlySearcher})},[e.createVNode(I._sfc_main$4,{options:e.unref(u).optionBySearcherKey.value,modelValue:e.unref(u).searcherKey.value,"onUpdate:modelValue":S[0]||(S[0]=T=>e.unref(u).searcherKey.value=T),name:"searcher_key",addChanger:x.addChanger},null,8,["options","modelValue","addChanger"]),!x.onlySearcher&&e.unref(u).searcherKey.value!==-1?(e.openBlock(),e.createBlock(I._sfc_main$4,{key:0,class:"top-select-region",options:e.unref(f).optionByRegionIndex.value,modelValue:e.unref(f).regionIndex.value,"onUpdate:modelValue":S[1]||(S[1]=T=>e.unref(f).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(u).searcherKey.value===-1?(e.openBlock(),e.createBlock(I._sfc_main,{key:1,name:"compare",onClick:C,"data-count-compare-regions-indexes":e.unref(v).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,o)=>{t=K(t);const d=o.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(o,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tagSelector_tagIcon":!0,"top-tagSelector-active":!!o.state,"top-tagSelector-excluded":o.state==="excluded"}),"data-tag_id":o.id,"data-tag_color_id":o.colorId,title:o.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:o}){const d=t,n=o,l=e.useModel(t,"name"),a=e.ref(null),r=e.computed(()=>navigator.userAgent.indexOf("Firefox")!=-1?{contenteditable:u.value,onpaste:g=>g.preventDefault()}:{}),u=e.ref(!1),f=async()=>{var g;u.value=!0,await e.nextTick(),(g=a.value)==null||g.focus()},v=()=>{var y;const g=(y=a.value)==null?void 0:y.innerText;if(!g)return p();a.value&&(a.value.innerText=g),u.value=!1,n("update:name",g)},p=async()=>{a.value&&(a.value.innerText=d.name),u.value=!1},i=g=>{if(u.value||d.disabled)return;let y="selected";d.canExclude&&(g.ctrlKey||g.metaKey)&&(y="excluded"),d.state==y&&(y=""),y===""&&n("unselect"),y==="selected"&&n("select"),y==="excluded"&&n("exclude")};return(g,y)=>(e.openBlock(),e.createBlock(E._sfc_main$1,{class:e.normalizeClass({"top-tagSelector_tagListItem":!0,"top-tagSelector_tagListItem-inEdit":u.value,"top-tagSelector_tagListItem-disabled":g.disabled,"top-tagSelector_tagListItem-canExclude":g.canExclude,"top-tagSelector-active":!!g.state,"top-tagSelector-excluded":g.state==="excluded"}),onClick:e.withModifiers(i,["stop"])},{default:e.withCtx(()=>[e.createVNode(R,{id:g.id,name:l.value,colorId:g.colorId,state:g.state},null,8,["id","name","colorId","state"]),e.createElementVNode("span",e.mergeProps({ref_key:"elName",ref:a,class:"top-tagSelector_tagListItemName",contenteditable:u.value?"plaintext-only":!1},r.value,{onKeydown:[e.withKeys(e.withModifiers(v,["stop"]),["enter"]),e.withKeys(e.withModifiers(p,["stop"]),["esc"])]}),e.toDisplayString(l.value),17,pe),g.editable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[u.value?(e.openBlock(),e.createElementBlock("span",{key:1,"data-top-icon":"",class:"top-tagSelector_edit",onClick:e.withModifiers(v,["stop"])})):(e.openBlock(),e.createElementBlock("span",{key:0,"data-top-icon":"",class:"top-tagSelector_edit",onClick:f}))],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 o=t,d=e.useModel(t,"modelValue"),n=o.useTopButton?I._sfc_main:"div",l=o.useTopButton?"html":"default",a={model:d,mode:o.mode,targetId:o.targetId,filters:o.filters,payload:o.payload};return(r,u)=>{const f=e.resolveDirective("top-data");return e.openBlock(),e.createBlock(E._sfc_main$2,{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":o.mode==="filter","top-tagSelector-setter_single":o.mode==="setter"&&!r.filters,"top-tagSelector-setter_several":o.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(l)]: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,v=>{var p,i;return e.openBlock(),e.createBlock(R,{id:e.unref(K)(v),colorId:((p=e.unref(O)(v,r.tags))==null?void 0:p.color_id)??"",name:((i=e.unref(O)(v,r.tags))==null?void 0:i.name)??"",state:e.unref(K)(v)===v?"selected":"excluded"},null,8,["id","colorId","name","state"])}),256))]),_:2},1040,["class"])),[[f,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:o}){const d=I.useI18n(),n=t,l=e.useModel(t,"modelValue"),a=e.useModel(t,"tags"),r=o,u=I.debounce((c,s)=>{r(c,s)},n.emitDelay);n.singleMode&&!l.value.length&&(l.value=[a.value[0].id]);const f=n.id??"top-popup-id-"+Math.random(),v=e.ref("add"),p=()=>{var m;const c=" "+((m=d.Common.Tags)==null?void 0:m.toLowerCase()),s=new Map;return s.set("add",{value:"add",title:d.Common.Add+c}),s.set("replace",{value:"replace",title:d.Common.Replace+c}),s.set("delete",{value:"delete",title:d.Common.Delete+c}),s};let i=e.shallowRef({model:l,mode:"filter",targetId:void 0,filters:void 0,payload:void 0});e.watch(l,()=>{u("selector",l.value)});const g=e.computed(()=>{if(i.value.mode==="setter"&&n.maxTagsForSetter&&!i.value.filters)return i.value.model.value.length>=n.maxTagsForSetter}),y=c=>{if(c!=="all"){if(i.value.model.value.includes(c))return"selected";if(i.value.model.value.includes(W(c)))return"excluded"}return c==="all"&&!i.value.model.value.length?"selected":""},C=(c,s)=>{const m=W(c);let h=i.value.model.value.filter(V=>V!==c&&V!==m);s==="select"&&h.push(c),s==="exclude"&&h.push(m),i.value.mode==="setter"&&i.value.targetId!==void 0&&n.requiredForSetter&&(h.length||h.push("1"),h.length===2&&i.value.model.value.length===1&&i.value.model.value[0]==="1"&&(h=h.filter(V=>V!=="1"))),n.singleMode&&!i.value.filters&&(h.length||(h=i.value.model.value),h.length>1&&(h=[h[h.length-1]])),h.sort((V,M)=>{if(!n.tags)return 0;const F=n.tags.findIndex(b=>b.id===V),N=n.tags.findIndex(b=>b.id===M);return F-N}),i.value.model.value=h,i.value.mode==="setter"&&i.value.targetId!==void 0&&u("setter",{tagsIds:h,targetId:i.value.targetId,payload:i.value.payload})},x=e.computed(()=>{let c="top-tagSelector_popup";return i.value.mode==="filter"&&(c+=" top-tagSelector_popup-filter"),i.value.mode==="setter"&&(c+=" top-tagSelector_popup-setter"),c}),S=()=>{const c=prompt("","New tag");if(!c||c==="New tag")return;const s=a.value.length+1;a.value.push({id:String(s),name:c,color_id:String((s-1)%10+1)}),r("tagsChanged",a.value)},T=c=>{var s;if(i.value=_.storage(c.elPopupOpener,"topTagSelectorTarget"),!i.value)throw new Error("Open popup TopTagSelector required v-data:topTagSelectorTarget");if(i.value.filters&&(v.value="add",i.value.model.value=[]),!((s=I.Core.$)!=null&&s.ui.sortable)){console.info("Для работы сортировки требуется глобальная загрузка jQuery UI Sortable");return}!I.Core.state.isMobile&&!I.Core.state.isMobileUA&&a.value&&$(c.elPopup).sortable({items:'li:has([data-tag_id]:not([data-tag_id="all"]))',cancel:'[contenteditable="plaintext-only"], [contenteditable="true"]',distance:10,stop:function(m,h){if(!a.value)return;const V=$(h.item).parent().find("[data-tag_id]"),M=[];V.each((F,N)=>{if(!a.value)return;const b=$(N).attr("data-tag_id");M.push(b)}),a.value.sort((F,N)=>{const b=M.findIndex(z=>z===F.id),Ve=M.findIndex(z=>z===N.id);return b-Ve}),u("tagsChanged",a.value)}})},B=c=>{var s;(s=I.Core.$)!=null&&s.ui.sortable&&$(c.elPopup).data("ui-sortable")&&$(c.elPopup).sortable("destroy")};return(c,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Q,{class:"top-select_arrow",modelValue:l.value,"onUpdate:modelValue":s[0]||(s[0]=m=>l.value=m),id:e.unref(f),tags:a.value,mode:"filter",useTopButton:""},null,8,["modelValue","id","tags"]),e.createVNode(E._sfc_main,{id:e.unref(f),class:e.normalizeClass(x.value),onOpen:s[4]||(s[4]=m=>T(m)),onClose:s[5]||(s[5]=m=>B(m)),"transition-duration":50},e.createSlots({contentList:e.withCtx(()=>[e.unref(i).mode==="filter"&&!c.singleMode?(e.openBlock(),e.createBlock(H,{key:0,id:"all",colorId:"",name:c.$i18n.Common.All_tags??"",state:e.unref(i).model.value.length?"":"selected",onSelect:s[3]||(s[3]=m=>e.unref(i).model.value=[])},null,8,["name","state"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,m=>(e.openBlock(),e.createBlock(H,{key:m.id,id:m.id,colorId:m.color_id,name:m.name,state:y(m.id),canExclude:e.unref(i).mode==="filter"&&!c.singleMode,editable:c.tagsEditable,disabled:g.value&&y(m.id)==="",onUnselect:h=>C(m.id,"unselect"),onSelect:h=>C(m.id,"select"),onExclude:h=>C(m.id,"exclude"),"onUpdate:name":h=>{m.name=h,e.unref(u)("tagsChanged",a.value)}},null,8,["id","colorId","name","state","canExclude","editable","disabled","onUnselect","onSelect","onExclude","onUpdate:name"]))),128)),c.tagsEditable&&a.value.length<c.tagsMax&&a.value.length<20?(e.openBlock(),e.createBlock(E._sfc_main$1,{key:1,"data-top-icon":"",onClick:e.withModifiers(S,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.$i18n.Common.Add),1)]),_:1})):e.createCommentVNode("",!0)]),_:2},[e.unref(i).mode==="setter"&&e.unref(i).filters?{name:"header",fn:e.withCtx(()=>[e.createVNode(I._sfc_main$4,{modelValue:v.value,"onUpdate:modelValue":s[1]||(s[1]=m=>v.value=m),options:p()},null,8,["modelValue","options"])]),key:"0"}:void 0,e.unref(i).mode==="setter"&&e.unref(i).filters?{name:"footer",fn:e.withCtx(()=>[e.createVNode(I._sfc_main,{color:"theme"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.$i18n.Common.Cancel),1)]),_:1}),e.createVNode(I._sfc_main,{onClick:s[2]||(s[2]=m=>e.unref(u)("setter",{tagsIds:e.unref(i).model.value,filters:e.unref(i).filters,filtersAction:v.value,payload:e.unref(i).payload}))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(v.value==="add"?c.$i18n.Common.Add:"")+" "+e.toDisplayString(v.value==="replace"?c.$i18n.Common.Replace:"")+" "+e.toDisplayString(v.value==="delete"?c.$i18n.Common.Remove:""),1)]),_:1})]),key:"1"}:void 0]),1032,["id","class"])],64))}}),Se=(t,o)=>e.computed(()=>e.toValue(t).filter(l=>l.on>=0||l.id===o).map(l=>({value:l.id,title:l.url+` [${l.id}]`,icon:l.id===e.toValue(o)?"":"",content:l.name}))),ke=(t,o,d)=>{o||(o={id:t.id}),o.id=t.id;const n=ee.TopPopupWorker.genElPopupOpener("div",o);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=l=>{l.preventDefault(),l.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",l=>{t.modelValue=l;const a=_.storage(n,"topTagSelectorTarget");a&&(a.model.value=l),D(n,t,d)}),D(n,t,d),n},Ie=(t,o)=>{var d;(d=_.storage(t,"topTagSelectorRender"))==null||d(o)},D=(t,o,d)=>{var l;const n=e.unref(o.modelValue);if(t.classList.toggle("top-tagSelector-selectedOne",!n.length||n.length===1),t.classList.toggle("top-tagSelector-toTwoLine",n.length>5),o.mode==="setter"&&o.filters){t.innerHTML=`<div>${d}</div>`;return}if(t.innerHTML="",!n.length&&o.mode==="filter"){const a=X({id:"all",colorId:"",name:((l=I.useI18n().Common)==null?void 0:l.All_tags)??"",state:""});t.append(a)}n.forEach(a=>{var u,f;const r=X({id:K(a),colorId:((u=O(a,o.tags))==null?void 0:u.color_id)??"",name:((f=O(a,o.tags))==null?void 0:f.name)??"",state:K(a)===a?"selected":"excluded"});t.append(r)})},X=t=>{const o=document.createElement("div");return o.classList.add("top-tagSelector_tagIcon"),o.classList.toggle("top-tagSelector-active",!!t.state),o.classList.toggle("top-tagSelector-excluded",t.state==="excluded"),o.dataset.tag_id=t.id,o.dataset.tag_color_id=t.colorId,o.title=t.name,o},xe=oe,Ce=ge,Be=he,Te=Q,we=R;w.TopSelectorCompetitors=xe,w.TopSelectorRegion=Ce,w.TopTagSelector=Be,w.TopTagSelectorPopupOpener=Te,w.TopTagSelectorTagIcon=we,w.findRegion=Y,w.genElTopTagSelectorPopupOpener=ke,w.genSearcherByKey=U,w.renderElTopTagSelectorPopupOpener=Ie,w.useItemsFromCompetitors=Se,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})});
1
+ define(["require","exports","vue","../.chunks/forms-CxYSHZLL.amd","../.chunks/listItem.vue_vue_type_script_setup_true_lang-CT6O_7Qy.amd","../.chunks/menu.vue_vue_type_style_index_0_lang-DAI_WcXI.amd","../utils/searchers.amd","../utils/dom.amd","../popup/worker.amd","../require/css.amd!../assets/project.css"],function(Me,w,e,I,E,Z,q,_,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 o=t,d=e.useModel(t,"modelValue"),n=e.computed(()=>{if(o.showSelectAllItem)return{icon:"",title:I.useI18n().Common.Select_all,value:"all",content:""}});return(l,a)=>(e.openBlock(),e.createElementBlock("div",te,[e.unref(I.Core).state.isMobile?(e.openBlock(),e.createBlock(E._sfc_main,{key:0},{opener:e.withCtx(()=>[e.createVNode(I._sfc_main,{class:"top-selectorCompetitors_opener",color:"theme",icon:"",icon2:""},{default:e.withCtx(()=>{var r;return[e.createTextVNode(e.toDisplayString((r=l.items.find(u=>{var f;return u.value===((f=d.value)==null?void 0:f[0])}))==null?void 0:r.content),1)]}),_:1})]),contentList:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.items,(r,u)=>{var f;return e.openBlock(),e.createBlock(E._sfc_main$1,{class:e.normalizeClass({"top-active":(f=d.value)==null?void 0:f.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:l.items,isMultiple:!0,styling:"bar",canBeEmptyMultiple:!1,selectAllItem:n.value},null,8,["modelValue","items","selectAllItem"]))]))}}),k=-2,le={0:"Yandex",1:"Google",4:"YouTube",5:"Bing",7:"Seznam",8:"AppStore",9:"GoogleStore",20:"Yandex.com",21:"Yandex.com.tr"},L={key:k,name:"--",index:k},j={key:k,name:"--",regions:[L],regionByIndex:new Map([[k,L]])},A={key:k,name:"Autoselect",index:k},P={key:k,name:"Autoselect",regions:[A],regionByIndex:new Map([[k,A]])},J={countryCode:"00",depth:1,device:0,key:-1,index:-1,lang:"ru",name:"Without region"},ae=()=>(A.name=I.useI18n().Common.Autoselect,A),re=()=>(ae(),P.name=I.useI18n().Common.Autoselect,console.log(P),P),ie=()=>(J.name=I.useI18n().Keywords.Without_region,J),U=(t=!1,o=!1,d=[])=>{let n;return t?n=de(d):n=G(d),o&&n.set(k,re()),n.size||n.set(k,j),n},G=(t,o=!0,d=[],n=!1)=>{const l=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(u=>{if(o&&!u.enabled)return;const f={...u};r.regionByIndex&&r.regionByIndex.set(f.index,f)}),!r.regionByIndex.size&&!d.length&&r.regionByIndex.set(L.index,L),typeof r.key=="number"&&l.set(r.key,r)}),d.forEach(a=>{if(l.has(a))return;const r={key:a,name:le[a],regions:[],regionByIndex:new Map};l.set(r.key,r)}),l},de=t=>{const o=G(t,!1,[0,1],!0);if(o.has(2)){const d=o.get(2);d&&(d.regionByIndex=new Map)}return o.forEach(d=>{if(!d.regionByIndex)return;const n={...ie()};d.regionByIndex.set(n.index,n)}),o},Y=(t,o,d=[])=>{const n=U(t,!1,d);let l;return n.forEach(a=>{if(!(o.searcher_key!==void 0&&o.searcher_key!=a.key)&&a.regions&&(a.regions.forEach(r=>{if(!l&&!(o.key!==void 0&&o.key!=r.key)&&!(o.index!==void 0&&o.index!=r.index)&&!(!t&&(o.lang!==void 0&&o.lang!=r.lang||o.device!==void 0&&o.device!=r.device)))return r.searcher_key=a.key,l=r,!1}),l))return!1}),l},se=(t,o)=>{const d=I.useI18n(),n=e.ref(o.value.keys().next().value??k),l=e.computed(()=>{const a=new Map;if(o.value.forEach(r=>{let u={value:r.key,title:r.name};t.addSearcherIcon&&(u.icon=q.getSearcherGIcon(r.key)),a.set(r.key,u)}),t.addCompare&&!a.has(k)){const r={value:"",title:"--------------------",disabled:!0};a.set(r.value,r);const u={value:-1,title:d.Common.Compare};a.set(u.value,u)}return a});return{searcherKey:n,optionBySearcherKey:l}},ue=(t,o)=>{var a,r,u;const d=I.useI18n(),n=e.ref(k);t.modelValue.length===1&&(n.value=t.modelValue[0]),n.value===k&&(t.forFrequency?n.value=((r=(a=o.value)==null?void 0:a.regionByIndex.values().next().value)==null?void 0:r.key)??k:n.value=((u=o.value)==null?void 0:u.regionByIndex.keys().next().value)??k);const l=e.computed(()=>{var v;const f=new Map;return(v=o.value.regionByIndex)==null||v.forEach(p=>{let i=p.name;if(t.forFrequency){const C={value:p.key,title:i};f.has(p.key)||f.set(p.key,C);return}p.device&&(i+=" ("+d.Common["Device_"+p.device]+")");const g=q.getLangLabel(o.value.key||0,p.lang??"");g&&(i+=" / "+g);const y={value:p.index,title:i,icon:p.device?q.getDeviceGIcon(p.device):void 0};f.set(p.index,y)}),f});return e.watch(l,(f,v)=>{var y;if(t.onlySearcher||n.value!==void 0&&f.get(n.value))return;let p=f.keys().next().value;if(n.value===k||p===k){n.value=p;return}let i=((y=v==null?void 0:v.get(n.value))==null?void 0:y.title)||"",g=-1;for(const[C,x]of f.entries()){const S=x.title;if(typeof S!="string"||typeof C=="string")break;if(S===i){p=C;break}const T=new RegExp(` \\((${d.Common.Device_1}|${d.Common.Device_2})\\)`);let B=i,c=3;S.indexOf(B)===-1&&(B=i.replace(/^[^a-zа-я]/i,"").replace(T,""),c--),S.indexOf(B)===-1&&(B=i.replace(/ \/.*/,""),c--),S.indexOf(B)===-1&&(B=i.replace(/ \/.*/,""),B=B.replace(/^[^a-zа-я]/i,"").replace(T,""),c--),S.indexOf(B)!==-1&&(c<=g||(g=c,p=C))}n.value=p}),{regionIndex:n,optionByRegionIndex:l}},ce=(t,o,d)=>{const n=e.ref([]),l=()=>{if(t.onlySearcher&&o.value){n.value=Array.from(o.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(u=>d.value.has(u))),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&&l(),{regionsIndexes:n}},me=t=>{const o=e.computed(()=>U(t.forFrequency,t.autoRegion,t.searchers)),d=e.computed(()=>o.value.get(l.searcherKey.value)||j),n=e.computed(()=>{const i=new Set;return o.value.forEach(g=>{var y;(y=g.regions)==null||y.forEach(C=>{C.index!==-1&&C.index!==k&&i.add(C.index)})}),i}),l=se(t,o),a=ue(t,d),r=ce(t,o,n);e.watch(o,()=>{var g,y,C,x;if(t.onlySearcher?r.regionsIndexes.value=Array.from(o.value.keys()):r.regionsIndexes.value=r.regionsIndexes.value.filter(S=>n.value.has(S)),l.searcherKey.value===-1)return;let i=o.value.keys().next().value;o.value.forEach(S=>{var T,B,c;if(t.onlySearcher&&S.key===l.searcherKey.value){i=l.searcherKey.value;return}if(a.regionIndex.value&&((T=S.regionByIndex)!=null&&T.has(a.regionIndex.value))&&(i=S.key),!t.onlySearcher){let s;i!==void 0&&(s=(B=o.value.get(i))==null?void 0:B.regionByIndex);const m=(c=o.value.get(S.key))==null?void 0:c.regionByIndex;s!=null&&s.has(k)&&!(m!=null&&m.has(k))&&(i=S.key)}}),i!==void 0&&(l.searcherKey.value=i),a.regionIndex.value!==void 0&&!((y=(g=d.value)==null?void 0:g.regionByIndex)!=null&&y.has(a.regionIndex.value))&&(a.regionIndex.value=(x=(C=d.value)==null?void 0:C.regions)==null?void 0:x.keys().next().value)},{immediate:!0});const u=()=>{if(!(l.searcherKey.value===-1||l.searcherKey.value===k))return l.searcherKey.value},f=()=>{if(t.onlySearcher||a.regionIndex.value===k)return;let i=a.regionIndex.value;if(t.forFrequency){const g=a.regionIndex.value,y=Y(t.forFrequency,{searcher_key:u(),key:g},t.searchers);i=y==null?void 0:y.index}return i},v=()=>{const i=u();if(i!==void 0)return o.value.get(i)};return{selectSearcher:l,selectRegion:a,compare:r,searcherByKey:o,allRegionsIndexes:n,getSearcher:v,getRegion:()=>{var g,y;const i=f();if(i!==void 0)return(y=(g=v())==null?void 0:g.regionByIndex)==null?void 0:y.get(i)}}},ge=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:o,emit:d}){const n=t,l=e.useModel(t,"modelValue"),a=e.useModel(t,"modelValueSingle"),r=d,{selectSearcher:u,selectRegion:f,compare:v,searcherByKey:p,allRegionsIndexes:i,getSearcher:g,getRegion:y}=me(n),C=()=>{var x;if(window.fieldTemplates&&((x=window.fieldTemplates)!=null&&x.openSelectorRegions)){window.fieldTemplates.openSelectorRegions(p.value,v.regionsIndexes.value,S=>v.regionsIndexes.value=S);return}r("compareRegions",p.value)};return e.watch([f.regionIndex,u.searcherKey,v.regionsIndexes],()=>{if(u.searcherKey.value===-1&&v.regionsIndexes.value.length){if(JSON.stringify(l.value)===JSON.stringify(v.regionsIndexes.value))return;l.value=[...v.regionsIndexes.value]}else l.value=[n.onlySearcher?u.searcherKey.value:f.regionIndex.value];!n.onlySearcher&&!i.value.size&&(u.searcherKey.value=k)}),a.value&&e.watch(a,()=>{l.value=[a.value]},{immediate:!0}),e.watch(l,()=>{var x,S,T,B,c;if(l.value[0]&&(a.value=l.value[0]),n.onlySearcher){if(!l.value.length||l.value.length===1&&!p.value.has(l.value[0])){let s=p.value.keys().next().value;s!==void 0&&(l.value=[s]);return}if(l.value.length>1&&JSON.stringify(l.value)!==JSON.stringify(v.regionsIndexes.value)){l.value=[...v.regionsIndexes.value];return}}else{let s=[...new Set(l.value)],m=(S=(x=p.value.values().next().value)==null?void 0:x.regionByIndex)==null?void 0:S.keys().next().value;if(n.forFrequency&&(m=(c=(B=(T=p.value.values().next().value)==null?void 0:T.regionByIndex)==null?void 0:B.values().next().value)==null?void 0:c.key),!s.length)m!==void 0&&s.push(m);else if(s.length===1){let h=i.value;n.forFrequency&&(h=new Set,p.value.forEach(V=>{V.regionByIndex.forEach(M=>{M.index!==-1&&M.index!==k&&h.add(M.key)})})),!h.has(s[0])&&s[0]!==-2&&(s=[],m!==void 0&&s.push(m))}else s=s.filter(h=>i.value.has(h)),!s.length&&m!==void 0&&s.push(m);if(JSON.stringify(l.value)!==JSON.stringify(s)){l.value=s;return}}if(!(l.value.length===1&&l.value[0]===(n.onlySearcher?u.searcherKey.value:f.regionIndex.value)))if(n.onlySearcher){if(l.value.length===1){u.searcherKey.value=l.value[0];return}u.searcherKey.value=-1;return}else if(l.value.length===1&&u.searcherKey.value!==-1){f.regionIndex.value=l.value[0];let s;for(const m of p.value.values()){for(const h of m.regionByIndex.values())if((n.forFrequency?h.key:h.index)===f.regionIndex.value){s=m.key;break}if(s!==void 0)break}s!==void 0&&(u.searcherKey.value=s)}else u.searcherKey.value=-1,v.regionsIndexes.value=[...l.value]},{immediate:!0}),o({getSearcher:g,getRegion:y}),(x,S)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-selectorRegion":!0,"top-selectorRegion-onlySearcher":x.onlySearcher})},[e.createVNode(I._sfc_main$4,{options:e.unref(u).optionBySearcherKey.value,modelValue:e.unref(u).searcherKey.value,"onUpdate:modelValue":S[0]||(S[0]=T=>e.unref(u).searcherKey.value=T),name:"searcher_key",addChanger:x.addChanger},null,8,["options","modelValue","addChanger"]),!x.onlySearcher&&e.unref(u).searcherKey.value!==-1?(e.openBlock(),e.createBlock(I._sfc_main$4,{key:0,class:"top-select-region",options:e.unref(f).optionByRegionIndex.value,modelValue:e.unref(f).regionIndex.value,"onUpdate:modelValue":S[1]||(S[1]=T=>e.unref(f).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(u).searcherKey.value===-1?(e.openBlock(),e.createBlock(I._sfc_main,{key:1,name:"compare",onClick:C,"data-count-compare-regions-indexes":e.unref(v).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,o)=>{t=K(t);const d=o.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(o,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tagSelector_tagIcon":!0,"top-tagSelector-active":!!o.state,"top-tagSelector-excluded":o.state==="excluded"}),"data-tag_id":o.id,"data-tag_color_id":o.colorId,title:o.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:o}){const d=t,n=o,l=e.useModel(t,"name"),a=e.ref(null),r=e.computed(()=>navigator.userAgent.indexOf("Firefox")!=-1?{contenteditable:u.value,onpaste:g=>g.preventDefault()}:{}),u=e.ref(!1),f=async()=>{var g;u.value=!0,await e.nextTick(),(g=a.value)==null||g.focus()},v=()=>{var y;const g=(y=a.value)==null?void 0:y.innerText;if(!g)return p();a.value&&(a.value.innerText=g),u.value=!1,n("update:name",g)},p=async()=>{a.value&&(a.value.innerText=d.name),u.value=!1},i=g=>{if(u.value||d.disabled)return;let y="selected";d.canExclude&&(g.ctrlKey||g.metaKey)&&(y="excluded"),d.state==y&&(y=""),y===""&&n("unselect"),y==="selected"&&n("select"),y==="excluded"&&n("exclude")};return(g,y)=>(e.openBlock(),e.createBlock(E._sfc_main$1,{class:e.normalizeClass({"top-tagSelector_tagListItem":!0,"top-tagSelector_tagListItem-inEdit":u.value,"top-tagSelector_tagListItem-disabled":g.disabled,"top-tagSelector_tagListItem-canExclude":g.canExclude,"top-tagSelector-active":!!g.state,"top-tagSelector-excluded":g.state==="excluded"}),onClick:e.withModifiers(i,["stop"])},{default:e.withCtx(()=>[e.createVNode(R,{id:g.id,name:l.value,colorId:g.colorId,state:g.state},null,8,["id","name","colorId","state"]),e.createElementVNode("span",e.mergeProps({ref_key:"elName",ref:a,class:"top-tagSelector_tagListItemName",contenteditable:u.value?"plaintext-only":!1},r.value,{onKeydown:[e.withKeys(e.withModifiers(v,["stop"]),["enter"]),e.withKeys(e.withModifiers(p,["stop"]),["esc"])]}),e.toDisplayString(l.value),17,pe),g.editable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[u.value?(e.openBlock(),e.createElementBlock("span",{key:1,"data-top-icon":"",class:"top-tagSelector_edit",onClick:e.withModifiers(v,["stop"])})):(e.openBlock(),e.createElementBlock("span",{key:0,"data-top-icon":"",class:"top-tagSelector_edit",onClick:f}))],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 o=t,d=e.useModel(t,"modelValue"),n=o.useTopButton?I._sfc_main:"div",l=o.useTopButton?"html":"default",a={model:d,mode:o.mode,targetId:o.targetId,filters:o.filters,payload:o.payload};return(r,u)=>{const f=e.resolveDirective("top-data");return e.openBlock(),e.createBlock(E._sfc_main$2,{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":o.mode==="filter","top-tagSelector-setter_single":o.mode==="setter"&&!r.filters,"top-tagSelector-setter_several":o.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(l)]: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,v=>{var p,i;return e.openBlock(),e.createBlock(R,{id:e.unref(K)(v),colorId:((p=e.unref(O)(v,r.tags))==null?void 0:p.color_id)??"",name:((i=e.unref(O)(v,r.tags))==null?void 0:i.name)??"",state:e.unref(K)(v)===v?"selected":"excluded"},null,8,["id","colorId","name","state"])}),256))]),_:2},1040,["class"])),[[f,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:o}){const d=I.useI18n(),n=t,l=e.useModel(t,"modelValue"),a=e.useModel(t,"tags"),r=o,u=I.debounce((c,s)=>{r(c,s)},n.emitDelay);n.singleMode&&!l.value.length&&(l.value=[a.value[0].id]);const f=n.id??"top-popup-id-"+Math.random(),v=e.ref("add"),p=()=>{var m;const c=" "+((m=d.Common.Tags)==null?void 0:m.toLowerCase()),s=new Map;return s.set("add",{value:"add",title:d.Common.Add+c}),s.set("replace",{value:"replace",title:d.Common.Replace+c}),s.set("delete",{value:"delete",title:d.Common.Delete+c}),s};let i=e.shallowRef({model:l,mode:"filter",targetId:void 0,filters:void 0,payload:void 0});e.watch(l,()=>{u("selector",l.value)});const g=e.computed(()=>{if(i.value.mode==="setter"&&n.maxTagsForSetter&&!i.value.filters)return i.value.model.value.length>=n.maxTagsForSetter}),y=c=>{if(c!=="all"){if(i.value.model.value.includes(c))return"selected";if(i.value.model.value.includes(W(c)))return"excluded"}return c==="all"&&!i.value.model.value.length?"selected":""},C=(c,s)=>{const m=W(c);let h=i.value.model.value.filter(V=>V!==c&&V!==m);s==="select"&&h.push(c),s==="exclude"&&h.push(m),i.value.mode==="setter"&&i.value.targetId!==void 0&&n.requiredForSetter&&(h.length||h.push("1"),h.length===2&&i.value.model.value.length===1&&i.value.model.value[0]==="1"&&(h=h.filter(V=>V!=="1"))),n.singleMode&&!i.value.filters&&(h.length||(h=i.value.model.value),h.length>1&&(h=[h[h.length-1]])),h.sort((V,M)=>{if(!n.tags)return 0;const F=n.tags.findIndex(b=>b.id===V),N=n.tags.findIndex(b=>b.id===M);return F-N}),i.value.model.value=h,i.value.mode==="setter"&&i.value.targetId!==void 0&&u("setter",{tagsIds:h,targetId:i.value.targetId,payload:i.value.payload})},x=e.computed(()=>{let c="top-tagSelector_popup";return i.value.mode==="filter"&&(c+=" top-tagSelector_popup-filter"),i.value.mode==="setter"&&(c+=" top-tagSelector_popup-setter"),c}),S=()=>{const c=prompt("","New tag");if(!c||c==="New tag")return;const s=a.value.length+1;a.value.push({id:String(s),name:c,color_id:String((s-1)%10+1)}),r("tagsChanged",a.value)},T=c=>{var s;if(i.value=_.storage(c.elPopupOpener,"topTagSelectorTarget"),!i.value)throw new Error("Open popup TopTagSelector required v-data:topTagSelectorTarget");if(i.value.filters&&(v.value="add",i.value.model.value=[]),!((s=I.Core.$)!=null&&s.ui.sortable)){console.info("Для работы сортировки требуется глобальная загрузка jQuery UI Sortable");return}!I.Core.state.isMobile&&!I.Core.state.isMobileUA&&a.value&&$(c.elPopup).sortable({items:'li:has([data-tag_id]:not([data-tag_id="all"]))',cancel:'[contenteditable="plaintext-only"], [contenteditable="true"]',distance:10,stop:function(m,h){if(!a.value)return;const V=$(h.item).parent().find("[data-tag_id]"),M=[];V.each((F,N)=>{if(!a.value)return;const b=$(N).attr("data-tag_id");M.push(b)}),a.value.sort((F,N)=>{const b=M.findIndex(z=>z===F.id),Ve=M.findIndex(z=>z===N.id);return b-Ve}),u("tagsChanged",a.value)}})},B=c=>{var s;(s=I.Core.$)!=null&&s.ui.sortable&&$(c.elPopup).data("ui-sortable")&&$(c.elPopup).sortable("destroy")};return(c,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Q,{class:"top-select_arrow",modelValue:l.value,"onUpdate:modelValue":s[0]||(s[0]=m=>l.value=m),id:e.unref(f),tags:a.value,mode:"filter",useTopButton:""},null,8,["modelValue","id","tags"]),e.createVNode(E._sfc_main,{id:e.unref(f),class:e.normalizeClass(x.value),onOpen:s[4]||(s[4]=m=>T(m)),onClose:s[5]||(s[5]=m=>B(m)),"transition-duration":50},e.createSlots({contentList:e.withCtx(()=>[e.unref(i).mode==="filter"&&!c.singleMode?(e.openBlock(),e.createBlock(H,{key:0,id:"all",colorId:"",name:c.$i18n.Common.All_tags??"",state:e.unref(i).model.value.length?"":"selected",onSelect:s[3]||(s[3]=m=>e.unref(i).model.value=[])},null,8,["name","state"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,m=>(e.openBlock(),e.createBlock(H,{key:m.id,id:m.id,colorId:m.color_id,name:m.name,state:y(m.id),canExclude:e.unref(i).mode==="filter"&&!c.singleMode,editable:c.tagsEditable,disabled:g.value&&y(m.id)==="",onUnselect:h=>C(m.id,"unselect"),onSelect:h=>C(m.id,"select"),onExclude:h=>C(m.id,"exclude"),"onUpdate:name":h=>{m.name=h,e.unref(u)("tagsChanged",a.value)}},null,8,["id","colorId","name","state","canExclude","editable","disabled","onUnselect","onSelect","onExclude","onUpdate:name"]))),128)),c.tagsEditable&&a.value.length<c.tagsMax&&a.value.length<20?(e.openBlock(),e.createBlock(E._sfc_main$1,{key:1,"data-top-icon":"",onClick:e.withModifiers(S,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.$i18n.Common.Add),1)]),_:1})):e.createCommentVNode("",!0)]),_:2},[e.unref(i).mode==="setter"&&e.unref(i).filters?{name:"header",fn:e.withCtx(()=>[e.createVNode(I._sfc_main$4,{modelValue:v.value,"onUpdate:modelValue":s[1]||(s[1]=m=>v.value=m),options:p()},null,8,["modelValue","options"])]),key:"0"}:void 0,e.unref(i).mode==="setter"&&e.unref(i).filters?{name:"footer",fn:e.withCtx(()=>[e.createVNode(I._sfc_main,{color:"theme"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.$i18n.Common.Cancel),1)]),_:1}),e.createVNode(I._sfc_main,{onClick:s[2]||(s[2]=m=>e.unref(u)("setter",{tagsIds:e.unref(i).model.value,filters:e.unref(i).filters,filtersAction:v.value,payload:e.unref(i).payload}))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(v.value==="add"?c.$i18n.Common.Add:"")+" "+e.toDisplayString(v.value==="replace"?c.$i18n.Common.Replace:"")+" "+e.toDisplayString(v.value==="delete"?c.$i18n.Common.Remove:""),1)]),_:1})]),key:"1"}:void 0]),1032,["id","class"])],64))}}),Se=(t,o)=>e.computed(()=>e.toValue(t).filter(l=>l.on>=0||l.id===o).map(l=>({value:l.id,title:l.url+` [${l.id}]`,icon:l.id===e.toValue(o)?"":"",content:l.name}))),ke=(t,o,d)=>{o||(o={id:t.id}),o.id=t.id;const n=ee.TopPopupWorker.genElPopupOpener("div",o);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=l=>{l.preventDefault(),l.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",l=>{t.modelValue=l;const a=_.storage(n,"topTagSelectorTarget");a&&(a.model.value=l),D(n,t,d)}),D(n,t,d),n},Ie=(t,o)=>{var d;(d=_.storage(t,"topTagSelectorRender"))==null||d(o)},D=(t,o,d)=>{var l;const n=e.unref(o.modelValue);if(t.classList.toggle("top-tagSelector-selectedOne",!n.length||n.length===1),t.classList.toggle("top-tagSelector-toTwoLine",n.length>5),o.mode==="setter"&&o.filters){t.innerHTML=`<div>${d}</div>`;return}if(t.innerHTML="",!n.length&&o.mode==="filter"){const a=X({id:"all",colorId:"",name:((l=I.useI18n().Common)==null?void 0:l.All_tags)??"",state:""});t.append(a)}n.forEach(a=>{var u,f;const r=X({id:K(a),colorId:((u=O(a,o.tags))==null?void 0:u.color_id)??"",name:((f=O(a,o.tags))==null?void 0:f.name)??"",state:K(a)===a?"selected":"excluded"});t.append(r)})},X=t=>{const o=document.createElement("div");return o.classList.add("top-tagSelector_tagIcon"),o.classList.toggle("top-tagSelector-active",!!t.state),o.classList.toggle("top-tagSelector-excluded",t.state==="excluded"),o.dataset.tag_id=t.id,o.dataset.tag_color_id=t.colorId,o.title=t.name,o},xe=oe,Ce=ge,Be=he,Te=Q,we=R;w.TopSelectorCompetitors=xe,w.TopSelectorRegion=Ce,w.TopTagSelector=Be,w.TopTagSelectorPopupOpener=Te,w.TopTagSelectorTagIcon=we,w.findRegion=Y,w.genElTopTagSelectorPopupOpener=ke,w.genSearcherByKey=U,w.renderElTopTagSelectorPopupOpener=Ie,w.useItemsFromCompetitors=Se,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=project.amd.js.map
@@ -1,8 +1,8 @@
1
1
  import { Core as Te } from "../core/app.js";
2
2
  import { defineComponent as P, mergeModels as O, useModel as D, computed as M, createElementBlock as w, openBlock as x, createBlock as B, unref as h, withCtx as b, Fragment as W, renderList as ie, normalizeClass as Q, createElementVNode as ye, toDisplayString as K, createVNode as A, createTextVNode as z, ref as F, watch as L, createCommentVNode as q, withModifiers as j, mergeProps as pe, withKeys as de, nextTick as be, resolveDirective as Be, withDirectives as Ve, resolveDynamicComponent as we, renderSlot as Me, shallowRef as $e, createSlots as Ee, reactive as Ke, toValue as ue, isRef as ce } from "vue";
3
- import { a as R, C as J, _ as Y, x as re, s as Le } from "../.chunks/forms-BciWy0wX.es.js";
4
- import { _ as he, a as se, b as Ae } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-CZqS-tRD.es.js";
5
- import { _ as Oe } from "../.chunks/menu.vue_vue_type_style_index_0_lang-yNOWbXpd.es.js";
3
+ import { a as R, C as J, _ as Y, x as re, s as Le } from "../.chunks/forms-CipZtprq.es.js";
4
+ import { _ as he, a as se, b as Ae } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-uNNJJ4S0.es.js";
5
+ import { _ as Oe } from "../.chunks/menu.vue_vue_type_style_index_0_lang-fU3LbpR7.es.js";
6
6
  import { getSearcherGIcon as Re, getLangLabel as Ne, getDeviceGIcon as De } from "../utils/searchers.js";
7
7
  import { storage as G } from "../utils/dom.js";
8
8
  import { TopPopupWorker as Fe } from "../popup/worker.js";
@@ -1,2 +1,2 @@
1
- define(["require","exports","vue","../.chunks/forms-Dh0QU6P9.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"})});
1
+ define(["require","exports","vue","../.chunks/forms-CxYSHZLL.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
@@ -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, createBlock as m, openBlock as l, 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 $, v as te, e as oe } from "../.chunks/forms-BciWy0wX.es.js";
3
+ import { C as $, v as te, e as oe } from "../.chunks/forms-CipZtprq.es.js";
4
4
  import { getHash as K, genHash as ae, setHash as se, delHash as ne } from "../utils/route.js";
5
5
  import { u as ie, d as re } from "../.chunks/store-CX_6ZXhO.es.js";
6
6
  import { TopPopupListItem as A, TopPopup as le } from "../popup/popup.js";
@@ -1,4 +1,4 @@
1
- define(["require","exports","../.chunks/forms-Dh0QU6P9.amd"],function(l,t,e){"use strict";if(typeof r>"u")var r=window.Vue;async function a(o,n=!1){let i=!1;return navigator.clipboard&&(await navigator.clipboard.writeText(o),i=!0,n&&e.Core.notice(e.useI18n().Common.Copied_to_clipboard+"","info")),i}async function u(o){let n=!1;e.isSafari()||(n=await a(o));const i='<a href="'+o+'" target="_blank">'+o+"</a>",c=e.useI18n().Common.Copied_to_clipboard+`:
1
+ define(["require","exports","../.chunks/forms-CxYSHZLL.amd"],function(l,t,e){"use strict";if(typeof r>"u")var r=window.Vue;async function a(o,n=!1){let i=!1;return navigator.clipboard&&(await navigator.clipboard.writeText(o),i=!0,n&&e.Core.notice(e.useI18n().Common.Copied_to_clipboard+"","info")),i}async function u(o){let n=!1;e.isSafari()||(n=await a(o));const i='<a href="'+o+'" target="_blank">'+o+"</a>",c=e.useI18n().Common.Copied_to_clipboard+`:
2
2
  `+i;if(n)e.Core.notice(c,"info");else{if(!navigator.clipboard){e.Core.notice(e.useI18n().Common.Cannot_copied_to_clipboard+`:
3
3
  `+e.useI18n().Common.Copy_guest_link_manually+`
4
4
  `+i,"error");return}const d={onclick:()=>a(o).then(()=>e.Core.notice(c,"info")),default:e.useI18n().Common.Copy+"",class:"copy"};await e.Core.notice(e.useI18n().Common.Guest_link_created+`
@@ -1,4 +1,4 @@
1
- import { C as t, a, i as s } from "../.chunks/forms-BciWy0wX.es.js";
1
+ import { C as t, a, i as s } from "../.chunks/forms-CipZtprq.es.js";
2
2
  async function r(o, e = !1) {
3
3
  let i = !1;
4
4
  return navigator.clipboard && (await navigator.clipboard.writeText(o), i = !0, e && t.notice(a().Common.Copied_to_clipboard + "", "info")), i;
package/utils/date.amd.js CHANGED
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-Dh0QU6P9.amd"],function(n,e,t){"use strict";if(typeof a>"u")var a=window.Vue;e.dateFormat=t.dateFormat,e.dateToString=t.dateToString,e.dateUnformat=t.dateUnformat,e.genDate=t.genDate,e.genDateMoscow=t.genDateMoscow,e.getDayOfWeek=t.getDayOfWeek,e.stringToDate=t.stringToDate,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
1
+ define(["require","exports","../.chunks/forms-CxYSHZLL.amd"],function(n,e,t){"use strict";if(typeof a>"u")var a=window.Vue;e.dateFormat=t.dateFormat,e.dateToString=t.dateToString,e.dateUnformat=t.dateUnformat,e.genDate=t.genDate,e.genDateMoscow=t.genDateMoscow,e.getDayOfWeek=t.getDayOfWeek,e.stringToDate=t.stringToDate,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=date.amd.js.map
package/utils/date.js CHANGED
@@ -1,4 +1,4 @@
1
- import { d as t, P as s, U as o, R as r, S as g, O as n, Q as d } from "../.chunks/forms-BciWy0wX.es.js";
1
+ import { d as t, P as s, U as o, R as r, S as g, O as n, Q as d } from "../.chunks/forms-CipZtprq.es.js";
2
2
  export {
3
3
  t as dateFormat,
4
4
  s as dateToString,
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-Dh0QU6P9.amd"],function(a,e,i){"use strict";if(typeof l>"u")var l=window.Vue;e.get$scroll=i.get$scroll,e.getCommandKeyLabel=i.getCommandKeyLabel,e.getElsScroll=i.getElsScroll,e.getOS=i.getOS,e.getOSAsync=i.getOSAsync,e.getScrollTop=i.getScrollTop,e.isApp=i.isApp,e.isMacOS=i.isMacOS,e.isMobile=i.isMobile,e.isRetina=i.isRetina,e.isSafari=i.isSafari,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
1
+ define(["require","exports","../.chunks/forms-CxYSHZLL.amd"],function(a,e,i){"use strict";if(typeof l>"u")var l=window.Vue;e.get$scroll=i.get$scroll,e.getCommandKeyLabel=i.getCommandKeyLabel,e.getElsScroll=i.getElsScroll,e.getOS=i.getOS,e.getOSAsync=i.getOSAsync,e.getScrollTop=i.getScrollTop,e.isApp=i.isApp,e.isMacOS=i.isMacOS,e.isMobile=i.isMobile,e.isRetina=i.isRetina,e.isSafari=i.isSafari,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=device.amd.js.map
package/utils/device.js CHANGED
@@ -1,4 +1,4 @@
1
- import { G as e, D as i, H as l, I as o, J as t, F as g, A as r, B as S, z as c, y as p, i as m } from "../.chunks/forms-BciWy0wX.es.js";
1
+ import { G as e, D as i, H as l, I as o, J as t, F as g, A as r, B as S, z as c, y as p, i as m } from "../.chunks/forms-CipZtprq.es.js";
2
2
  export {
3
3
  e as get$scroll,
4
4
  i as getCommandKeyLabel,
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-Dh0QU6P9.amd"],function(u,e,n){"use strict";if(typeof i>"u")var i=window.Vue;e.cloneDeep=n.cloneDeep,e.debounce=n.debounce,e.memoize=n.memoize,e.merge=n.merge,e.throttle=n.throttle,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
1
+ define(["require","exports","../.chunks/forms-CxYSHZLL.amd"],function(u,e,n){"use strict";if(typeof i>"u")var i=window.Vue;e.cloneDeep=n.cloneDeep,e.debounce=n.debounce,e.memoize=n.memoize,e.merge=n.merge,e.throttle=n.throttle,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=lodash.amd.js.map
package/utils/lodash.js CHANGED
@@ -1,4 +1,4 @@
1
- import { K as s, s as a, L as m, N as r, M as t } from "../.chunks/forms-BciWy0wX.es.js";
1
+ import { K as s, s as a, L as m, N as r, M as t } from "../.chunks/forms-CipZtprq.es.js";
2
2
  export {
3
3
  s as cloneDeep,
4
4
  a as debounce,
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-Dh0QU6P9.amd"],function(a,t,i){"use strict";if(typeof n>"u")var n=window.Vue;const u=(c,e,o=i.Core.state.currency)=>{e=e??i.useI18nLang().value;let r=c.toLocaleString(e,{style:"currency",currency:o,maximumFractionDigits:2});return r=r.replace(",","."),r};t.genPrice=u,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})});
1
+ define(["require","exports","../.chunks/forms-CxYSHZLL.amd"],function(a,t,i){"use strict";if(typeof n>"u")var n=window.Vue;const u=(c,e,o=i.Core.state.currency)=>{e=e??i.useI18nLang().value;let r=c.toLocaleString(e,{style:"currency",currency:o,maximumFractionDigits:2});return r=r.replace(",","."),r};t.genPrice=u,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=price.amd.js.map
package/utils/price.js CHANGED
@@ -1,4 +1,4 @@
1
- import { C as o, u as s } from "../.chunks/forms-BciWy0wX.es.js";
1
+ import { C as o, u as s } from "../.chunks/forms-CipZtprq.es.js";
2
2
  const a = (t, e, c = o.state.currency) => {
3
3
  e = e ?? s().value;
4
4
  let r = t.toLocaleString(e, { style: "currency", currency: c, maximumFractionDigits: 2 });
@@ -1,2 +1,2 @@
1
- define(["require","exports","./check.amd","../.chunks/forms-Dh0QU6P9.amd"],function(S,o,i,u){"use strict";if(typeof p>"u")var p=window.Vue;const h=e=>{e+="";let l=0;if(!e.length)return l;for(let a=0;a<e.length;a++){const n=e.charCodeAt(a);l=(l<<5)-l+n,l=l&l}return l<0&&(l*=-1),l},s=e=>/^\w+:\/\/([\w-]+\.)+[\w-]+(:\d+)?(\/|$)/.test(e),f=e=>{let l=e+"";l=l.replace("-","–");let a=l.split("."),n=a[0],c=a.length>1?"."+a[1]:"";if(n.replace(/[+–]/,"").length<=4)return l;const r=/(\d+)(\d{3})/;for(;r.test(n);)n=n.replace(r,"$1 $2");return n+c},d=e=>e===void 0?"":e.replace(/\r\n|\r|\n/g,"<br>"),g=(e,l=2,a=1e3,n="")=>{const c=Math.pow(10,l);let r=String(e);return Math.abs(e)>Math.pow(a,3)?r=Math.round(e/Math.pow(a,3)*c)/c+" <small>G"+n+"</small>":Math.abs(e)>Math.pow(a,2)?r=Math.round(e/Math.pow(a,2)*c)/c+" <small>M"+n+"</small>":Math.abs(e)>a&&(r=Math.round(e/a*c)/c+" <small>K"+n+"</small>"),r=r.replace(/^(-?\d+)(\d{3})/,"$1 $2"),r},m=(e,l,a=1)=>{if(e==null)return"";if(e+="",l==null||e.length<=l)return e;if(a===0)e=e.substr(e.length-l,l),e="..."+e;else if(a===1){const n=e.substr(0,l/2),c=e.substr(e.length-l/2,Math.ceil(l/2));e=n+"..."+c}else a===2&&(e=e.substr(0,l),e=e+"...");return e},w=(e,l,a,n)=>{if(u.useI18nLang().value==="en")return e===1?a:l;const c=e%100,r=e%10;return c>=5&&c<=20||r===0?l:r===1?a:r>=2&&r<=4?n:r>=5&&r<=9?l:n},b=e=>{if(u.useI18nLang().value!="ru"||e=="")return e;const l=e.split(" ");return $.map(l,function(a,n){a=a+"а",a=a.replace("оа","о"),a=a.replace("аяа","ой"),a=a.replace("шийа","шого"),a=a.replace("ыйа","ого"),a=a.replace("йа","я"),a=a.replace("ьа","я"),a=a.replace("яа","и"),a=a.replace("оваа","овой"),a=a.replace("аа","ы"),a=a.replace("кия","кого"),a=a.replace("каи","кой"),l[n]=a}),e=l.join(" "),e},C=e=>{const l={а:"a",б:"b",в:"v",г:"g",д:"d",е:"e",ё:"e",ж:"j",з:"z",и:"i",й:"i",к:"k",л:"l",м:"m",н:"n",о:"o",п:"p",р:"r",с:"s",т:"t",у:"u",ф:"f",х:"h",ц:"c",ч:"ch",ш:"sh",щ:"shch",ъ:"",ы:"y",ь:"",э:"e",ю:"u",я:"ya"},a=e.split(" ");return $.map(a,function(n,c){const r=[];for(let t=0;t<n.length;++t)r.push(l[n[t]]||l[n[t].toLowerCase()]==null&&n[t]||l[n[t].toLowerCase()].replace(/^(.)/,function(A){return A.toUpperCase()}));a[c]=r.join("")}),e=a.join(" "),e},M=e=>(typeof e=="string"&&(e=e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")),e),k=(e,l)=>{let a=null;switch(l.operator){case"CONTAINS":case"REGEXP":try{let n=l.values[0];l.operator!="REGEXP"&&(n=n.replace(/([()\[\]])/g,"\\$1")),a=new RegExp("("+n+")","gi")}catch{return e}break}return e=e.replace(a,'<b class="found">$1</b>'),e},y=e=>{var l;return(l=e.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:l.map(a=>a.toLowerCase()).join("_")},v=e=>`/controller/file/?src=${"/cloud/common/flags/"+e.toUpperCase()+".svg"}`,L=e=>{const l=i.getDomainRegexp(),a="(([\\/?\\w&=%+#;:-]*(\\.\\w+)?))*",n=new RegExp(`(^|[\\s>(),])([a-z0-9а-яё_.]+@${l}${a})`,"gui");e=e.replace(n,'$1<a href="mailto:$2" target="_blank" rel="noopener">↑[$2]↓</a>');const c=new RegExp(`(^|[\\s>(),])(https?://)?(${l}${a})`,"gui");return e=e.replace(c,'$1<a href="√$2$3" target="_blank" rel="nofollow noopener">$2$3</a>'),e=e.replaceAll("√http","http"),e=e.replaceAll("√","http://"),e=e.replaceAll(/(↑\[|]↓)/g,""),e},R=e=>e.charAt(0).toUpperCase()+e.slice(1),E=(e=20)=>{const l="AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz1234567890";let a="";for(let n=0;n<e;n++)a+=l[Math.floor(Math.random()*l.length)];return a};o.addCommasWhite=f,o.addLinkTags=L,o.camelToSnakeCase=y,o.ellipsis=m,o.genFlagLinkByCountryCode=v,o.genIntHash=h,o.getRandomHash=E,o.highlightHtml=k,o.htmlspecialchars=M,o.isUrl=s,o.nl2br=d,o.numberEnding=w,o.numberWithWord=g,o.rusToLatin=C,o.toCapitalize=R,o.toRoditPadej=b,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
1
+ define(["require","exports","./check.amd","../.chunks/forms-CxYSHZLL.amd"],function(S,o,i,u){"use strict";if(typeof p>"u")var p=window.Vue;const h=e=>{e+="";let l=0;if(!e.length)return l;for(let a=0;a<e.length;a++){const n=e.charCodeAt(a);l=(l<<5)-l+n,l=l&l}return l<0&&(l*=-1),l},s=e=>/^\w+:\/\/([\w-]+\.)+[\w-]+(:\d+)?(\/|$)/.test(e),f=e=>{let l=e+"";l=l.replace("-","–");let a=l.split("."),n=a[0],c=a.length>1?"."+a[1]:"";if(n.replace(/[+–]/,"").length<=4)return l;const r=/(\d+)(\d{3})/;for(;r.test(n);)n=n.replace(r,"$1 $2");return n+c},d=e=>e===void 0?"":e.replace(/\r\n|\r|\n/g,"<br>"),g=(e,l=2,a=1e3,n="")=>{const c=Math.pow(10,l);let r=String(e);return Math.abs(e)>Math.pow(a,3)?r=Math.round(e/Math.pow(a,3)*c)/c+" <small>G"+n+"</small>":Math.abs(e)>Math.pow(a,2)?r=Math.round(e/Math.pow(a,2)*c)/c+" <small>M"+n+"</small>":Math.abs(e)>a&&(r=Math.round(e/a*c)/c+" <small>K"+n+"</small>"),r=r.replace(/^(-?\d+)(\d{3})/,"$1 $2"),r},m=(e,l,a=1)=>{if(e==null)return"";if(e+="",l==null||e.length<=l)return e;if(a===0)e=e.substr(e.length-l,l),e="..."+e;else if(a===1){const n=e.substr(0,l/2),c=e.substr(e.length-l/2,Math.ceil(l/2));e=n+"..."+c}else a===2&&(e=e.substr(0,l),e=e+"...");return e},w=(e,l,a,n)=>{if(u.useI18nLang().value==="en")return e===1?a:l;const c=e%100,r=e%10;return c>=5&&c<=20||r===0?l:r===1?a:r>=2&&r<=4?n:r>=5&&r<=9?l:n},b=e=>{if(u.useI18nLang().value!="ru"||e=="")return e;const l=e.split(" ");return $.map(l,function(a,n){a=a+"а",a=a.replace("оа","о"),a=a.replace("аяа","ой"),a=a.replace("шийа","шого"),a=a.replace("ыйа","ого"),a=a.replace("йа","я"),a=a.replace("ьа","я"),a=a.replace("яа","и"),a=a.replace("оваа","овой"),a=a.replace("аа","ы"),a=a.replace("кия","кого"),a=a.replace("каи","кой"),l[n]=a}),e=l.join(" "),e},C=e=>{const l={а:"a",б:"b",в:"v",г:"g",д:"d",е:"e",ё:"e",ж:"j",з:"z",и:"i",й:"i",к:"k",л:"l",м:"m",н:"n",о:"o",п:"p",р:"r",с:"s",т:"t",у:"u",ф:"f",х:"h",ц:"c",ч:"ch",ш:"sh",щ:"shch",ъ:"",ы:"y",ь:"",э:"e",ю:"u",я:"ya"},a=e.split(" ");return $.map(a,function(n,c){const r=[];for(let t=0;t<n.length;++t)r.push(l[n[t]]||l[n[t].toLowerCase()]==null&&n[t]||l[n[t].toLowerCase()].replace(/^(.)/,function(A){return A.toUpperCase()}));a[c]=r.join("")}),e=a.join(" "),e},M=e=>(typeof e=="string"&&(e=e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")),e),k=(e,l)=>{let a=null;switch(l.operator){case"CONTAINS":case"REGEXP":try{let n=l.values[0];l.operator!="REGEXP"&&(n=n.replace(/([()\[\]])/g,"\\$1")),a=new RegExp("("+n+")","gi")}catch{return e}break}return e=e.replace(a,'<b class="found">$1</b>'),e},y=e=>{var l;return(l=e.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:l.map(a=>a.toLowerCase()).join("_")},v=e=>`/controller/file/?src=${"/cloud/common/flags/"+e.toUpperCase()+".svg"}`,L=e=>{const l=i.getDomainRegexp(),a="(([\\/?\\w&=%+#;:-]*(\\.\\w+)?))*",n=new RegExp(`(^|[\\s>(),])([a-z0-9а-яё_.]+@${l}${a})`,"gui");e=e.replace(n,'$1<a href="mailto:$2" target="_blank" rel="noopener">↑[$2]↓</a>');const c=new RegExp(`(^|[\\s>(),])(https?://)?(${l}${a})`,"gui");return e=e.replace(c,'$1<a href="√$2$3" target="_blank" rel="nofollow noopener">$2$3</a>'),e=e.replaceAll("√http","http"),e=e.replaceAll("√","http://"),e=e.replaceAll(/(↑\[|]↓)/g,""),e},R=e=>e.charAt(0).toUpperCase()+e.slice(1),E=(e=20)=>{const l="AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz1234567890";let a="";for(let n=0;n<e;n++)a+=l[Math.floor(Math.random()*l.length)];return a};o.addCommasWhite=f,o.addLinkTags=L,o.camelToSnakeCase=y,o.ellipsis=m,o.genFlagLinkByCountryCode=v,o.genIntHash=h,o.getRandomHash=E,o.highlightHtml=k,o.htmlspecialchars=M,o.isUrl=s,o.nl2br=d,o.numberEnding=w,o.numberWithWord=g,o.rusToLatin=C,o.toCapitalize=R,o.toRoditPadej=b,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=string.amd.js.map
package/utils/string.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { getDomainRegexp as u } from "./check.js";
2
- import { u as n } from "../.chunks/forms-BciWy0wX.es.js";
2
+ import { u as n } from "../.chunks/forms-CipZtprq.es.js";
3
3
  const i = (e) => {
4
4
  e += "";
5
5
  let l = 0;