@topvisor/ui 1.3.5-4 → 1.3.5-popupFromInput.0

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 (117) hide show
  1. package/.chunks/{core-BS_ygt0h.amd.js → core-DcLw0dEO.amd.js} +2 -2
  2. package/.chunks/{core-BS_ygt0h.amd.js.map → core-DcLw0dEO.amd.js.map} +1 -1
  3. package/.chunks/{core-DF7fuQev.es.js → core-DpTLGhiK.es.js} +4 -4
  4. package/.chunks/{core-DF7fuQev.es.js.map → core-DpTLGhiK.es.js.map} +1 -1
  5. package/.chunks/{datepicker-BYLW8X5k.amd.js → datepicker-Bq_z2paN.amd.js} +2 -2
  6. package/.chunks/{datepicker-BYLW8X5k.amd.js.map → datepicker-Bq_z2paN.amd.js.map} +1 -1
  7. package/.chunks/{datepicker-BVIBaChw.es.js → datepicker-CGGp0VnN.es.js} +2 -2
  8. package/.chunks/{datepicker-BVIBaChw.es.js.map → datepicker-CGGp0VnN.es.js.map} +1 -1
  9. package/.chunks/{dialog_selectorRegions-D5DOxBQO.es.js → dialog_selectorRegions-BtAADQHf.es.js} +4 -4
  10. package/.chunks/{dialog_selectorRegions-D5DOxBQO.es.js.map → dialog_selectorRegions-BtAADQHf.es.js.map} +1 -1
  11. package/.chunks/{dialog_selectorRegions-CaR2-Qo2.amd.js → dialog_selectorRegions-DCrHvHDs.amd.js} +2 -2
  12. package/.chunks/{dialog_selectorRegions-CaR2-Qo2.amd.js.map → dialog_selectorRegions-DCrHvHDs.amd.js.map} +1 -1
  13. package/.chunks/{dialogs.vue_vue_type_script_setup_true_lang-B5rYBKgA.amd.js → dialogs.vue_vue_type_script_setup_true_lang-Bf0wXalT.amd.js} +2 -2
  14. package/.chunks/{dialogs.vue_vue_type_script_setup_true_lang-B5rYBKgA.amd.js.map → dialogs.vue_vue_type_script_setup_true_lang-Bf0wXalT.amd.js.map} +1 -1
  15. package/.chunks/{dialogs.vue_vue_type_script_setup_true_lang-CPByl0SB.es.js → dialogs.vue_vue_type_script_setup_true_lang-DCVIoEeY.es.js} +2 -2
  16. package/.chunks/{dialogs.vue_vue_type_script_setup_true_lang-CPByl0SB.es.js.map → dialogs.vue_vue_type_script_setup_true_lang-DCVIoEeY.es.js.map} +1 -1
  17. package/.chunks/{forms-BrdvrjiZ.es.js → forms-BhbgRJ5I.es.js} +5 -5
  18. package/.chunks/{forms-BrdvrjiZ.es.js.map → forms-BhbgRJ5I.es.js.map} +1 -1
  19. package/.chunks/{forms-CzUjrBXG.amd.js → forms-CNcrvkYD.amd.js} +3 -3
  20. package/.chunks/{forms-CzUjrBXG.amd.js.map → forms-CNcrvkYD.amd.js.map} +1 -1
  21. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-QvP1d9jN.amd.js +2 -0
  22. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-QvP1d9jN.amd.js.map +1 -0
  23. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-xvzbyqai.es.js +196 -0
  24. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-xvzbyqai.es.js.map +1 -0
  25. package/.chunks/{menu.vue_vue_type_style_index_0_lang-jnHbXDIR.amd.js → menu.vue_vue_type_style_index_0_lang-C3Rr6ZyL.amd.js} +2 -2
  26. package/.chunks/{menu.vue_vue_type_style_index_0_lang-jnHbXDIR.amd.js.map → menu.vue_vue_type_style_index_0_lang-C3Rr6ZyL.amd.js.map} +1 -1
  27. package/.chunks/{menu.vue_vue_type_style_index_0_lang-BNr8VcFM.es.js → menu.vue_vue_type_style_index_0_lang-dOeZ7an1.es.js} +2 -2
  28. package/.chunks/{menu.vue_vue_type_style_index_0_lang-BNr8VcFM.es.js.map → menu.vue_vue_type_style_index_0_lang-dOeZ7an1.es.js.map} +1 -1
  29. package/.chunks/{notice-CzWMWg_D.amd.js → notice-BpLsm6Zh.amd.js} +2 -2
  30. package/.chunks/{notice-CzWMWg_D.amd.js.map → notice-BpLsm6Zh.amd.js.map} +1 -1
  31. package/.chunks/{notice-BPgkjMG1.es.js → notice-CpPhDTUb.es.js} +2 -2
  32. package/.chunks/{notice-BPgkjMG1.es.js.map → notice-CpPhDTUb.es.js.map} +1 -1
  33. package/.chunks/opener.vue_vue_type_script_setup_true_lang-DRzrTv7Q.es.js +36 -0
  34. package/.chunks/opener.vue_vue_type_script_setup_true_lang-DRzrTv7Q.es.js.map +1 -0
  35. package/.chunks/opener.vue_vue_type_script_setup_true_lang-gNZhYkDf.amd.js +2 -0
  36. package/.chunks/opener.vue_vue_type_script_setup_true_lang-gNZhYkDf.amd.js.map +1 -0
  37. package/.chunks/{page.vue_vue_type_script_setup_true_lang-XMwkQHNU.es.js → page.vue_vue_type_script_setup_true_lang-9abPBMpd.es.js} +4 -4
  38. package/.chunks/{page.vue_vue_type_script_setup_true_lang-XMwkQHNU.es.js.map → page.vue_vue_type_script_setup_true_lang-9abPBMpd.es.js.map} +1 -1
  39. package/.chunks/{page.vue_vue_type_script_setup_true_lang-C-BJRiFc.amd.js → page.vue_vue_type_script_setup_true_lang-B-1LEQAz.amd.js} +2 -2
  40. package/.chunks/{page.vue_vue_type_script_setup_true_lang-C-BJRiFc.amd.js.map → page.vue_vue_type_script_setup_true_lang-B-1LEQAz.amd.js.map} +1 -1
  41. package/.chunks/{popup-do4HUI7u.es.js → popup-BJj9BJP5.es.js} +116 -90
  42. package/.chunks/popup-BJj9BJP5.es.js.map +1 -0
  43. package/.chunks/popup-CfXISjhC.amd.js +2 -0
  44. package/.chunks/popup-CfXISjhC.amd.js.map +1 -0
  45. package/.chunks/{utils-BgVG2kmp.amd.js → utils-5uxIj2CI.amd.js} +2 -2
  46. package/.chunks/{utils-BgVG2kmp.amd.js.map → utils-5uxIj2CI.amd.js.map} +1 -1
  47. package/.chunks/{utils-BqT8hS8L.amd.js → utils-Bg_su8b-.amd.js} +2 -2
  48. package/.chunks/{utils-BqT8hS8L.amd.js.map → utils-Bg_su8b-.amd.js.map} +1 -1
  49. package/.chunks/{utils-B6aJagiK.es.js → utils-D58EUoHa.es.js} +3 -3
  50. package/.chunks/{utils-B6aJagiK.es.js.map → utils-D58EUoHa.es.js.map} +1 -1
  51. package/.chunks/{utils-DyhMNhnz.es.js → utils-UBgfsQ8v.es.js} +2 -2
  52. package/.chunks/{utils-DyhMNhnz.es.js.map → utils-UBgfsQ8v.es.js.map} +1 -1
  53. package/.chunks/{widgetInput.vue_vue_type_script_setup_true_lang-Bo064qPK.es.js → widgetInput.vue_vue_type_script_setup_true_lang-CSD2uMSW.es.js} +2 -2
  54. package/.chunks/{widgetInput.vue_vue_type_script_setup_true_lang-Bo064qPK.es.js.map → widgetInput.vue_vue_type_script_setup_true_lang-CSD2uMSW.es.js.map} +1 -1
  55. package/.chunks/{widgetInput.vue_vue_type_script_setup_true_lang-CVsiIZz5.amd.js → widgetInput.vue_vue_type_script_setup_true_lang-D6SVtg2Q.amd.js} +2 -2
  56. package/.chunks/{widgetInput.vue_vue_type_script_setup_true_lang-CVsiIZz5.amd.js.map → widgetInput.vue_vue_type_script_setup_true_lang-D6SVtg2Q.amd.js.map} +1 -1
  57. package/assets/listItem.css +1 -1
  58. package/charts/charts.amd.js +1 -1
  59. package/charts/charts.js +1 -1
  60. package/core/app.amd.js +1 -1
  61. package/core/app.js +5 -5
  62. package/dialog/dialog.amd.js +1 -1
  63. package/dialog/dialog.js +2 -2
  64. package/forms/forms.amd.js +1 -1
  65. package/forms/forms.js +1 -1
  66. package/formsExt/formsExt.amd.js +1 -1
  67. package/formsExt/formsExt.amd.js.map +1 -1
  68. package/formsExt/formsExt.js +280 -293
  69. package/formsExt/formsExt.js.map +1 -1
  70. package/layout/layout.amd.js +1 -1
  71. package/layout/layout.js +1 -1
  72. package/package.json +1 -1
  73. package/popup/popup.amd.js +1 -1
  74. package/popup/popup.amd.js.map +1 -1
  75. package/popup/popup.js +39 -34
  76. package/popup/popup.js.map +1 -1
  77. package/popup/worker.amd.js +1 -1
  78. package/popup/worker.amd.js.map +1 -1
  79. package/popup/worker.js +24 -20
  80. package/popup/worker.js.map +1 -1
  81. package/project/project.amd.js +1 -1
  82. package/project/project.amd.js.map +1 -1
  83. package/project/project.js +26 -25
  84. package/project/project.js.map +1 -1
  85. package/src/components/forms/input/input.vue.d.ts +1 -1
  86. package/src/components/forms/input/types.d.ts +1 -1
  87. package/src/components/forms/inputDate/inputDate.vue.d.ts +1 -1
  88. package/src/components/popup/lib/popup.d.ts +14 -2
  89. package/src/components/popup/lib/worker.d.ts +1 -1
  90. package/src/components/popup/popup/opener/opener.vue.d.ts +17 -0
  91. package/src/components/popup/popup/opener/types.d.ts +51 -0
  92. package/src/components/popup/popup/opener.vue.d.ts +0 -1
  93. package/src/components/popup/popup/types.d.ts +1 -45
  94. package/src/components/project/tagSelector/utils/el.d.ts +1 -1
  95. package/tabsView/tabsView.amd.js +1 -1
  96. package/tabsView/tabsView.js +2 -2
  97. package/utils/clipboard.amd.js +1 -1
  98. package/utils/clipboard.js +1 -1
  99. package/utils/date.amd.js +1 -1
  100. package/utils/date.js +1 -1
  101. package/utils/device.amd.js +1 -1
  102. package/utils/device.js +1 -1
  103. package/utils/lodash.amd.js +1 -1
  104. package/utils/lodash.js +1 -1
  105. package/utils/price.amd.js +1 -1
  106. package/utils/price.js +1 -1
  107. package/utils/searchers.amd.js +1 -1
  108. package/utils/searchers.js +3 -3
  109. package/utils/string.amd.js +1 -1
  110. package/utils/string.js +1 -1
  111. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-DZ6ExJKC.es.js +0 -192
  112. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-DZ6ExJKC.es.js.map +0 -1
  113. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-_sniT1lq.amd.js +0 -2
  114. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-_sniT1lq.amd.js.map +0 -1
  115. package/.chunks/popup-UOJ-t8-v.amd.js +0 -2
  116. package/.chunks/popup-UOJ-t8-v.amd.js.map +0 -1
  117. package/.chunks/popup-do4HUI7u.es.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"notice-BPgkjMG1.es.js","sources":["../../src/components/core/notice/utils.ts","../../src/components/core/notice/item/item.vue","../../src/components/core/notice/notice.vue"],"sourcesContent":["import { reactive } from 'vue';\nimport type { Props as ItemProps, Props, Style } from '@/components/core/notice/item/types';\nimport Core from '@/core/core/core';\nimport { genIntHash } from '@/core/utils/string';\n\nexport const transitionDuration = 300;\n\nexport type Item = Props & { onClose?: Function };\n\nexport const itemById = reactive(new Map<string, Item>());\n\nconst genItemId = (text: ItemProps['text'], style: ItemProps['style'], options?: Options) => {\n\treturn 'top-notice_' + genIntHash(text + style + JSON.stringify(options));\n};\n\nexport type Options = {\n\ttitle?: ItemProps['title'],\n\tmetaText?: ItemProps['metaText'],\n\tbuttonProps?: ItemProps['buttonProps'],\n\tbuttonsProps?: ItemProps['buttonsProps'],\n\tisSafeHTML?: ItemProps['isSafeHTML'],\n\tselectToClose?: ItemProps['selectToClose'],\n\tonClose?: Function\n}\n\n/**\n * Показать сообщением в стиле push уведомления\n *\n * title будет получен из первой строки text\n *\n * Если в options указан title, он будет взят оттуда\n */\nexport const show = (text: string, style: Style = 'info', options?: Options) => {\n\tlet title = '';\n\n\ttext = String(text);\n\n\tconst id = genItemId(text, style, options);\n\n\tif (options?.title) {\n\t\ttitle = options.title;\n\t} else {\n\t\tconst chunks = text.split('\\n');\n\n\t\tif (chunks.length) {\n\t\t\ttitle = String(chunks.shift());\n\t\t\ttext = chunks.join('\\n');\n\t\t}\n\t}\n\n\tconst itemExists = itemById.get(id);\n\tif (itemExists) {\n\t\thightlight(itemExists);\n\n\t\treturn;\n\t}\n\n\tconst item: Item = {\n\t\tid,\n\t\ttitle,\n\t\ttext,\n\t\tstyle,\n\t\tbuttonProps: options?.buttonProps,\n\t\tbuttonsProps: options?.buttonsProps,\n\t\tmetaText: options?.metaText,\n\t\tisSafeHTML: options?.isSafeHTML,\n\t\tselectToClose: options?.selectToClose,\n\t\tonClose: options?.onClose,\n\t};\n\n\titemById.set(item.id, item);\n\n\tif (itemById.size > 5) {\n\t\tconst [_firstId, firstItem] = [...itemById].at(0) || [];\n\t\tif (firstItem) close(firstItem);\n\t}\n\n\t/**\n\t * Автозакрытие ошибок форм\n\t *\n\t * Добавляет\n\t */\n\tif (Core.state.isMobile) {\n\t\t$('input').one('click', () => close(item));\n\t}\n};\n\nconst hightlight = (item: Item) => {\n\titem.hightlight = true;\n\n\tsetTimeout(() => item.hightlight = false, transitionDuration);\n};\n\nconst close = (item: Item) => {\n\titem.forceClosed = true;\n\n\tsetTimeout(() => {\n\t\titem.onClose?.();\n\n\t\titemById.delete(item.id);\n\t}, transitionDuration);\n};\n\n/**\n * Убрать подозрительный html код\n */\nexport const prepareText = (text: string) => {\n\tconst textNoSafety = 'hacking was detected';\n\n\ttext = text.replace(/<script/g, textNoSafety);\n\ttext = text.replace(/<img/g, textNoSafety);\n\ttext = text.replace(/<iframe/g, textNoSafety);\n\ttext = text.replace(/javascript:/g, textNoSafety);\n\ttext = text.replace(/<[^>]+ (@|on)\\w+=[^>]+>?/g, textNoSafety);\n\n\treturn text;\n};\n","<script setup lang=\"ts\">\nimport { computed, ref, withDefaults } from 'vue';\n\nimport Core from '@/core/core/core';\nimport { nl2br } from '@/core/utils/string';\n\nimport type { Emits, Props } from './types';\nimport { prepareText, transitionDuration } from '@/components/core/notice/utils';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tselectToClose: true,\n});\n\nconst emit = defineEmits<Emits>();\n\n// анимация появления\nconst showed = ref(false);\nsetTimeout(() => showed.value = true, 10);\n\n// анимация закрытия\nconst closed = ref(false);\nconst closedDirection = ref<'top' | 'right' | 'bottom' | 'left'>('right');\n\nconst title = computed(() => {\n\tlet res = props.title.replace(/ {2}/g, '&nbsp;');\n\n\tif (!props.isSafeHTML) res = prepareText(res);\n\n\treturn res;\n});\n\nconst text = computed(() => {\n\tlet res = nl2br(props.text);\n\n\tres = res.replace(/ {2}/g, '&nbsp;');\n\n\tif (!props.isSafeHTML) res = prepareText(res);\n\n\treturn res;\n});\n\nconst close = (direction?: typeof closedDirection.value) => {\n\tclosed.value = true;\n\n\tif (direction) {\n\t\tclosedDirection.value = direction;\n\t}\n\n\tsetTimeout(() => emit('close'), transitionDuration);\n};\n\nconst onClick = (e: MouseEvent) => {\n\tif (!props.selectToClose) return;\n\n\tconst { tagName } = e.target as HTMLElement;\n\n\tif (tagName === 'A') close();\n\tif (tagName === 'BUTTON') close();\n};\n\nconst vSwipe = {\n\tmounted: (el: HTMLElement) => {\n\t\tif (!Core.state.isMobile) return;\n\n\t\tif (!Core.$ || !Core.$.ui['draggable']) return;\n\n\t\tlet direction: typeof closedDirection.value = 'right';\n\n\t\tlet axis = 'x';\n\t\t// if (getOS() === 'iOS') axis = 'y';\n\n\t\tCore.$(el).draggable({\n\t\t\trevert: false,\n\t\t\taxis,\n\t\t\tdrag: (_e, ui) => {\n\t\t\t\tif (axis == 'x') {\n\t\t\t\t\tdirection = ui.position.left > 0 ? 'right' : 'left';\n\t\t\t\t} else {\n\t\t\t\t\tdirection = ui.position.top > 0 ? 'bottom' : 'top';\n\t\t\t\t}\n\t\t\t},\n\t\t\tstop: (_e, _ui) => {\n\t\t\t\tclose(direction);\n\t\t\t},\n\t\t});\n\t},\n};\n\n// const vSwipe = {\n// \tmounted: (el: HTMLElement) => {\n// \t\tconst { distanceX, direction } = usePointerSwipe(el, {\n// \t\t\tdisableTextSelect: true,\n// \t\t\tonSwipe(e: PointerEvent) {\n// \t\t\t\tleft.value = -distanceX.value + 'px';\n// \t\t\t},\n// \t\t\tonSwipeEnd: (_e, direction) => {\n// \t\t\t\tclose(direction);\n// \t\t\t},\n// \t\t});\n// \t},\n// };\n</script>\n\n<template>\n\t<div\n\t\tclass=\"top-notice_item\"\n\t\t:class=\"{\n\t\t\t['top-notice_item-' + style]: true,\n\t\t\t'top-notice_item-hightlight': hightlight,\n\t\t\t'top-notice_item-showed': showed,\n\t\t\t'top-notice_item-closed': closed || forceClosed,\n\t\t\t['top-notice_item-closed_' + closedDirection]: closed,\n\t\t}\"\n\t\t@click=\"onClick\"\n\t\tv-swipe\n\t>\n\t\t<div class=\"top-notice_itemTextWrapper\">\n\t\t\t<div v-if=\"title\" class=\"top-notice_itemTitle\" v-html=\"title\"></div>\n\t\t\t<div v-if=\"text\" class=\"top-notice_itemText\" v-html=\"text\"></div>\n\t\t</div>\n\n\t\t<TopButton\n\t\t\tv-if=\"buttonProps\"\n\t\t\tclass=\"top-notice_itemButton\"\n\t\t\tsize=\"s\"\n\t\t\t:=\"buttonProps\"\n\t\t\t:title=\"buttonProps.title\"\n\t\t\tv-html=\"buttonProps.default\"\n\t\t\t@click=\"close()\"\n\t\t/>\n\n\t\t<div\n\t\t\tv-if=\"buttonsProps?.length\"\n\t\t\tclass=\"top-notice_itemButtons\"\n\t\t>\n\t\t\t<TopButton\n\t\t\t\tv-for=\"buttonProps in buttonsProps\"\n\t\t\t\tclass=\"top-notice_itemButton\"\n\t\t\t\tsize=\"s\"\n\t\t\t\t:=\"buttonProps\"\n\t\t\t\t:title=\"buttonProps.title\"\n\t\t\t\tv-html=\"buttonProps.default\"\n\t\t\t\t@click=\"close()\"\n\t\t\t/>\n\t\t</div>\n\n\t\t<div v-if=\"metaText\" class=\"top-notice_itemMetaText\" v-html=\"metaText\"></div>\n\n\t\t<div\n\t\t\tclass=\"top-notice_itemClose\"\n\t\t\tdata-top-icon=\"\"\n\t\t\t:title=\"$i18n.Common.Close\"\n\t\t\t@click=\"() => close()\"\n\t\t></div>\n\t</div>\n</template>\n\n<style>\n@import \"style.css\";\n</style>\n","<!-- performance all in one file component, для Core.notice() -->\n<script lang=\"ts\">\nexport { show } from './utils';\n</script>\n\n<script setup lang=\"ts\">\nimport type { Item } from './utils';\nimport { itemById } from './utils';\n\nimport type { Props } from './types';\nimport TopNoticeItem from './item/item.vue';\n\ndefineProps<Props>();\n\nconst onCloseItem = (item: Item) => {\n\titem.onClose?.();\n\n\titemById.delete(item.id);\n};\n</script>\n\n<template>\n\t<teleport to=\"body\">\n\t\t<div class=\"top-notice\">\n\t\t\t<TopNoticeItem\n\t\t\t\tv-for=\"[_index, item] in itemById\"\n\t\t\t\t:key=\"item.id\"\n\t\t\t\t:id=\"item.id\"\n\t\t\t\t:title=\"item.title\"\n\t\t\t\t:text=\"item.text\"\n\t\t\t\t:style=\"item.style\"\n\t\t\t\t:buttonProps=\"item.buttonProps\"\n\t\t\t\t:buttonsProps=\"item.buttonsProps\"\n\t\t\t\t:metaText=\"item.metaText\"\n\t\t\t\t:isSafeHTML=\"item.isSafeHTML\"\n\t\t\t\t:forceClosed=\"item.forceClosed\"\n\t\t\t\t:hightlight=\"item.hightlight\"\n\t\t\t\t@close=\"onCloseItem(item)\"\n\t\t\t/>\n\t\t</div>\n\t</teleport>\n</template>\n\n<style>\n:root {\n\t--top-notice-top: var(--top-padding-4);\n\t--top-notice-right: var(--top-padding-4);\n}\n\n.top-notice {\n\twidth: 400px;\n\tfont-size: 14px;\n\tposition: fixed; top: var(--top-notice-top); right: var(--top-notice-right);\n\tz-index: 1000010;\n\tdisplay: flex; flex-direction: column-reverse; gap: var(--top-gap-2);\n}\n\n.top-notice ul {\n\tpadding: 0 0 0 var(--top-padding-5);\n}\n\n@media only screen and (max-width: 600px) {\n\t:root {\n\t\t--top-notice-top: var(--top-padding-4);\n\t\t--top-notice-right: var(--top-padding-4);\n\t}\n\n\t.top-notice { width: auto; left: var(--top-notice-right); }\n}\n</style>\n"],"names":["transitionDuration","itemById","reactive","genItemId","text","style","options","genIntHash","show","title","id","chunks","itemExists","hightlight","item","_firstId","firstItem","Core","close","_a","prepareText","textNoSafety","props","__props","emit","__emit","showed","ref","closed","closedDirection","computed","res","nl2br","direction","onClick","e","tagName","vSwipe","el","_e","ui","_ui","_createElementBlock","forceClosed","_createElementVNode","_hoisted_1","buttonProps","_openBlock","_createBlock","_component_TopButton","_mergeProps","buttonsProps","_hoisted_4","_Fragment","_renderList","metaText","$i18n","onCloseItem","_Teleport","_unref","_index","TopNoticeItem","_normalizeStyle","$event"],"mappings":"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"}
1
+ {"version":3,"file":"notice-CpPhDTUb.es.js","sources":["../../src/components/core/notice/utils.ts","../../src/components/core/notice/item/item.vue","../../src/components/core/notice/notice.vue"],"sourcesContent":["import { reactive } from 'vue';\nimport type { Props as ItemProps, Props, Style } from '@/components/core/notice/item/types';\nimport Core from '@/core/core/core';\nimport { genIntHash } from '@/core/utils/string';\n\nexport const transitionDuration = 300;\n\nexport type Item = Props & { onClose?: Function };\n\nexport const itemById = reactive(new Map<string, Item>());\n\nconst genItemId = (text: ItemProps['text'], style: ItemProps['style'], options?: Options) => {\n\treturn 'top-notice_' + genIntHash(text + style + JSON.stringify(options));\n};\n\nexport type Options = {\n\ttitle?: ItemProps['title'],\n\tmetaText?: ItemProps['metaText'],\n\tbuttonProps?: ItemProps['buttonProps'],\n\tbuttonsProps?: ItemProps['buttonsProps'],\n\tisSafeHTML?: ItemProps['isSafeHTML'],\n\tselectToClose?: ItemProps['selectToClose'],\n\tonClose?: Function\n}\n\n/**\n * Показать сообщением в стиле push уведомления\n *\n * title будет получен из первой строки text\n *\n * Если в options указан title, он будет взят оттуда\n */\nexport const show = (text: string, style: Style = 'info', options?: Options) => {\n\tlet title = '';\n\n\ttext = String(text);\n\n\tconst id = genItemId(text, style, options);\n\n\tif (options?.title) {\n\t\ttitle = options.title;\n\t} else {\n\t\tconst chunks = text.split('\\n');\n\n\t\tif (chunks.length) {\n\t\t\ttitle = String(chunks.shift());\n\t\t\ttext = chunks.join('\\n');\n\t\t}\n\t}\n\n\tconst itemExists = itemById.get(id);\n\tif (itemExists) {\n\t\thightlight(itemExists);\n\n\t\treturn;\n\t}\n\n\tconst item: Item = {\n\t\tid,\n\t\ttitle,\n\t\ttext,\n\t\tstyle,\n\t\tbuttonProps: options?.buttonProps,\n\t\tbuttonsProps: options?.buttonsProps,\n\t\tmetaText: options?.metaText,\n\t\tisSafeHTML: options?.isSafeHTML,\n\t\tselectToClose: options?.selectToClose,\n\t\tonClose: options?.onClose,\n\t};\n\n\titemById.set(item.id, item);\n\n\tif (itemById.size > 5) {\n\t\tconst [_firstId, firstItem] = [...itemById].at(0) || [];\n\t\tif (firstItem) close(firstItem);\n\t}\n\n\t/**\n\t * Автозакрытие ошибок форм\n\t *\n\t * Добавляет\n\t */\n\tif (Core.state.isMobile) {\n\t\t$('input').one('click', () => close(item));\n\t}\n};\n\nconst hightlight = (item: Item) => {\n\titem.hightlight = true;\n\n\tsetTimeout(() => item.hightlight = false, transitionDuration);\n};\n\nconst close = (item: Item) => {\n\titem.forceClosed = true;\n\n\tsetTimeout(() => {\n\t\titem.onClose?.();\n\n\t\titemById.delete(item.id);\n\t}, transitionDuration);\n};\n\n/**\n * Убрать подозрительный html код\n */\nexport const prepareText = (text: string) => {\n\tconst textNoSafety = 'hacking was detected';\n\n\ttext = text.replace(/<script/g, textNoSafety);\n\ttext = text.replace(/<img/g, textNoSafety);\n\ttext = text.replace(/<iframe/g, textNoSafety);\n\ttext = text.replace(/javascript:/g, textNoSafety);\n\ttext = text.replace(/<[^>]+ (@|on)\\w+=[^>]+>?/g, textNoSafety);\n\n\treturn text;\n};\n","<script setup lang=\"ts\">\nimport { computed, ref, withDefaults } from 'vue';\n\nimport Core from '@/core/core/core';\nimport { nl2br } from '@/core/utils/string';\n\nimport type { Emits, Props } from './types';\nimport { prepareText, transitionDuration } from '@/components/core/notice/utils';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tselectToClose: true,\n});\n\nconst emit = defineEmits<Emits>();\n\n// анимация появления\nconst showed = ref(false);\nsetTimeout(() => showed.value = true, 10);\n\n// анимация закрытия\nconst closed = ref(false);\nconst closedDirection = ref<'top' | 'right' | 'bottom' | 'left'>('right');\n\nconst title = computed(() => {\n\tlet res = props.title.replace(/ {2}/g, '&nbsp;');\n\n\tif (!props.isSafeHTML) res = prepareText(res);\n\n\treturn res;\n});\n\nconst text = computed(() => {\n\tlet res = nl2br(props.text);\n\n\tres = res.replace(/ {2}/g, '&nbsp;');\n\n\tif (!props.isSafeHTML) res = prepareText(res);\n\n\treturn res;\n});\n\nconst close = (direction?: typeof closedDirection.value) => {\n\tclosed.value = true;\n\n\tif (direction) {\n\t\tclosedDirection.value = direction;\n\t}\n\n\tsetTimeout(() => emit('close'), transitionDuration);\n};\n\nconst onClick = (e: MouseEvent) => {\n\tif (!props.selectToClose) return;\n\n\tconst { tagName } = e.target as HTMLElement;\n\n\tif (tagName === 'A') close();\n\tif (tagName === 'BUTTON') close();\n};\n\nconst vSwipe = {\n\tmounted: (el: HTMLElement) => {\n\t\tif (!Core.state.isMobile) return;\n\n\t\tif (!Core.$ || !Core.$.ui['draggable']) return;\n\n\t\tlet direction: typeof closedDirection.value = 'right';\n\n\t\tlet axis = 'x';\n\t\t// if (getOS() === 'iOS') axis = 'y';\n\n\t\tCore.$(el).draggable({\n\t\t\trevert: false,\n\t\t\taxis,\n\t\t\tdrag: (_e, ui) => {\n\t\t\t\tif (axis == 'x') {\n\t\t\t\t\tdirection = ui.position.left > 0 ? 'right' : 'left';\n\t\t\t\t} else {\n\t\t\t\t\tdirection = ui.position.top > 0 ? 'bottom' : 'top';\n\t\t\t\t}\n\t\t\t},\n\t\t\tstop: (_e, _ui) => {\n\t\t\t\tclose(direction);\n\t\t\t},\n\t\t});\n\t},\n};\n\n// const vSwipe = {\n// \tmounted: (el: HTMLElement) => {\n// \t\tconst { distanceX, direction } = usePointerSwipe(el, {\n// \t\t\tdisableTextSelect: true,\n// \t\t\tonSwipe(e: PointerEvent) {\n// \t\t\t\tleft.value = -distanceX.value + 'px';\n// \t\t\t},\n// \t\t\tonSwipeEnd: (_e, direction) => {\n// \t\t\t\tclose(direction);\n// \t\t\t},\n// \t\t});\n// \t},\n// };\n</script>\n\n<template>\n\t<div\n\t\tclass=\"top-notice_item\"\n\t\t:class=\"{\n\t\t\t['top-notice_item-' + style]: true,\n\t\t\t'top-notice_item-hightlight': hightlight,\n\t\t\t'top-notice_item-showed': showed,\n\t\t\t'top-notice_item-closed': closed || forceClosed,\n\t\t\t['top-notice_item-closed_' + closedDirection]: closed,\n\t\t}\"\n\t\t@click=\"onClick\"\n\t\tv-swipe\n\t>\n\t\t<div class=\"top-notice_itemTextWrapper\">\n\t\t\t<div v-if=\"title\" class=\"top-notice_itemTitle\" v-html=\"title\"></div>\n\t\t\t<div v-if=\"text\" class=\"top-notice_itemText\" v-html=\"text\"></div>\n\t\t</div>\n\n\t\t<TopButton\n\t\t\tv-if=\"buttonProps\"\n\t\t\tclass=\"top-notice_itemButton\"\n\t\t\tsize=\"s\"\n\t\t\t:=\"buttonProps\"\n\t\t\t:title=\"buttonProps.title\"\n\t\t\tv-html=\"buttonProps.default\"\n\t\t\t@click=\"close()\"\n\t\t/>\n\n\t\t<div\n\t\t\tv-if=\"buttonsProps?.length\"\n\t\t\tclass=\"top-notice_itemButtons\"\n\t\t>\n\t\t\t<TopButton\n\t\t\t\tv-for=\"buttonProps in buttonsProps\"\n\t\t\t\tclass=\"top-notice_itemButton\"\n\t\t\t\tsize=\"s\"\n\t\t\t\t:=\"buttonProps\"\n\t\t\t\t:title=\"buttonProps.title\"\n\t\t\t\tv-html=\"buttonProps.default\"\n\t\t\t\t@click=\"close()\"\n\t\t\t/>\n\t\t</div>\n\n\t\t<div v-if=\"metaText\" class=\"top-notice_itemMetaText\" v-html=\"metaText\"></div>\n\n\t\t<div\n\t\t\tclass=\"top-notice_itemClose\"\n\t\t\tdata-top-icon=\"\"\n\t\t\t:title=\"$i18n.Common.Close\"\n\t\t\t@click=\"() => close()\"\n\t\t></div>\n\t</div>\n</template>\n\n<style>\n@import \"style.css\";\n</style>\n","<!-- performance all in one file component, для Core.notice() -->\n<script lang=\"ts\">\nexport { show } from './utils';\n</script>\n\n<script setup lang=\"ts\">\nimport type { Item } from './utils';\nimport { itemById } from './utils';\n\nimport type { Props } from './types';\nimport TopNoticeItem from './item/item.vue';\n\ndefineProps<Props>();\n\nconst onCloseItem = (item: Item) => {\n\titem.onClose?.();\n\n\titemById.delete(item.id);\n};\n</script>\n\n<template>\n\t<teleport to=\"body\">\n\t\t<div class=\"top-notice\">\n\t\t\t<TopNoticeItem\n\t\t\t\tv-for=\"[_index, item] in itemById\"\n\t\t\t\t:key=\"item.id\"\n\t\t\t\t:id=\"item.id\"\n\t\t\t\t:title=\"item.title\"\n\t\t\t\t:text=\"item.text\"\n\t\t\t\t:style=\"item.style\"\n\t\t\t\t:buttonProps=\"item.buttonProps\"\n\t\t\t\t:buttonsProps=\"item.buttonsProps\"\n\t\t\t\t:metaText=\"item.metaText\"\n\t\t\t\t:isSafeHTML=\"item.isSafeHTML\"\n\t\t\t\t:forceClosed=\"item.forceClosed\"\n\t\t\t\t:hightlight=\"item.hightlight\"\n\t\t\t\t@close=\"onCloseItem(item)\"\n\t\t\t/>\n\t\t</div>\n\t</teleport>\n</template>\n\n<style>\n:root {\n\t--top-notice-top: var(--top-padding-4);\n\t--top-notice-right: var(--top-padding-4);\n}\n\n.top-notice {\n\twidth: 400px;\n\tfont-size: 14px;\n\tposition: fixed; top: var(--top-notice-top); right: var(--top-notice-right);\n\tz-index: 1000010;\n\tdisplay: flex; flex-direction: column-reverse; gap: var(--top-gap-2);\n}\n\n.top-notice ul {\n\tpadding: 0 0 0 var(--top-padding-5);\n}\n\n@media only screen and (max-width: 600px) {\n\t:root {\n\t\t--top-notice-top: var(--top-padding-4);\n\t\t--top-notice-right: var(--top-padding-4);\n\t}\n\n\t.top-notice { width: auto; left: var(--top-notice-right); }\n}\n</style>\n"],"names":["transitionDuration","itemById","reactive","genItemId","text","style","options","genIntHash","show","title","id","chunks","itemExists","hightlight","item","_firstId","firstItem","Core","close","_a","prepareText","textNoSafety","props","__props","emit","__emit","showed","ref","closed","closedDirection","computed","res","nl2br","direction","onClick","e","tagName","vSwipe","el","_e","ui","_ui","_createElementBlock","forceClosed","_createElementVNode","_hoisted_1","buttonProps","_openBlock","_createBlock","_component_TopButton","_mergeProps","buttonsProps","_hoisted_4","_Fragment","_renderList","metaText","$i18n","onCloseItem","_Teleport","_unref","_index","TopNoticeItem","_normalizeStyle","$event"],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import { defineComponent as s, onUpdated as d, createElementBlock as u, openBlock as c, Fragment as i, createElementVNode as l, renderSlot as f } from "vue";
2
+ const y = /* @__PURE__ */ s({
3
+ __name: "opener",
4
+ props: {
5
+ id: {},
6
+ pos: { default: "3" },
7
+ notch: { type: Boolean, default: !0 },
8
+ openByFocus: { type: Boolean },
9
+ openByHover: { type: Boolean },
10
+ posBy: { default: "fixed" },
11
+ data: {}
12
+ },
13
+ setup(a) {
14
+ const t = a, p = t.id || Math.random() + "";
15
+ let e;
16
+ function r(o) {
17
+ setTimeout(() => {
18
+ e = o.nextElementSibling, e && n(e);
19
+ });
20
+ }
21
+ d(() => {
22
+ e && n(e);
23
+ });
24
+ function n(o) {
25
+ o.dataset.topPopup = "#" + p, o.dataset.topPopupId = p, o.dataset.topPopupPos = t.pos, o.dataset.topPopupPosBy = t.posBy, o.dataset.topPopupNotch = t.notch ? "true" : "", o.dataset.topPopupOpenByHover = t.openByHover ? "true" : "", o.__TopPopupOpenerProps = t;
26
+ }
27
+ return (o, m) => (c(), u(i, null, [
28
+ l("template", { ref: r }),
29
+ f(o.$slots, "default")
30
+ ], 64));
31
+ }
32
+ });
33
+ export {
34
+ y as _
35
+ };
36
+ //# sourceMappingURL=opener.vue_vue_type_script_setup_true_lang-DRzrTv7Q.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opener.vue_vue_type_script_setup_true_lang-DRzrTv7Q.es.js","sources":["../../src/components/popup/popup/opener.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUpdated } from 'vue';\nimport type { OpenerProps } from './types';\n\nconst props = withDefaults(defineProps<OpenerProps<T>>(), {\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst id = props.id || Math.random() + '';\n\nlet elOpener: Element;\n\n/**\n * Необычная функция для проброски props внутрь элемента слота\n *\n * @param el - вспомогательный элемент для доступа к элементам слота\n */\nfunction render(el: any) {\n\tsetTimeout(() => {\n\t\telOpener = el.nextElementSibling;\n\n\t\tif (elOpener) {\n\t\t\trenderOpener(elOpener);\n\t\t}\n\t});\n}\n\nonUpdated(() => {\n\tif (elOpener) {\n\t\trenderOpener(elOpener);\n\t}\n});\n\nfunction renderOpener(elOpener: any) {\n\t/**\n\t * topPopup - необходимый атрибут для всез Popup\n\t *\n\t * Для Vue вместо него используется атрибут topPopupId\n\t */\n\telOpener.dataset.topPopup = '#' + id;\n\n\telOpener.dataset.topPopupId = id;\n\telOpener.dataset.topPopupPos = props.pos;\n\telOpener.dataset.topPopupPosBy = props.posBy;\n\telOpener.dataset.topPopupNotch = props.notch ? 'true' : '';\n\telOpener.dataset.topPopupOpenByHover = props.openByHover ? 'true' : '';\n\telOpener.__TopPopupOpenerProps = props;\n}\n</script>\n\n<template>\n\t<template :ref=\"render\"></template>\n\n\t<!-- @slot элемент для открытия Popup -->\n\t<slot></slot>\n</template>\n\n<!-- Использует общий deprecated класс .btn -->\n<style>\nh3[data-top-popup],\ndiv[data-top-popup],\ni[data-top-popup]:not(.btn),\nb[data-top-popup]:not(.btn) {\n\tcursor: pointer;\n\tuser-select: none;\n\tfont-style: normal;\n\ttext-decoration: none;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n[data-top-popup][data-top-popup-disabled] {\n\tpointer-events: none;\n\tcursor: auto !important;\n}\n\ni[contenteditable] {\n\tcursor: text !important;\n}\n</style>\n"],"names":["props","__props","id","elOpener","render","el","renderOpener","onUpdated","_createElementVNode","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;;;AAIA,UAAMA,IAAQC,GAMRC,IAAKF,EAAM,MAAM,KAAK,WAAW;AAEvC,QAAIG;AAOJ,aAASC,EAAOC,GAAS;AACxB,iBAAW,MAAM;AAChB,QAAAF,IAAWE,EAAG,oBAEVF,KACHG,EAAaH,CAAQ;AAAA,MAEvB,CAAC;AAAA,IACF;AAEA,IAAAI,EAAU,MAAM;AACf,MAAIJ,KACHG,EAAaH,CAAQ;AAAA,IAEvB,CAAC;AAED,aAASG,EAAaH,GAAe;AAMpCA,MAAAA,EAAS,QAAQ,WAAW,MAAMD,GAElCC,EAAS,QAAQ,aAAaD,GAC9BC,EAAS,QAAQ,cAAcH,EAAM,KACrCG,EAAS,QAAQ,gBAAgBH,EAAM,OACvCG,EAAS,QAAQ,gBAAgBH,EAAM,QAAQ,SAAS,IACxDG,EAAS,QAAQ,sBAAsBH,EAAM,cAAc,SAAS,IACpEG,EAAS,wBAAwBH;AAAA,IAClC;;MAICQ,EAAmC,YAAA,EAAxB,KAAKJ,GAAM;AAAA,MAGtBK,EAAaC,EAAA,QAAA,SAAA;AAAA,IAAA;;;"}
@@ -0,0 +1,2 @@
1
+ define(["require","exports","vue"],(function(i,u,t){"use strict";if(typeof t>"u")var t=window.Vue;const r=t.defineComponent({__name:"opener",props:{id:{},pos:{default:"3"},notch:{type:Boolean,default:!0},openByFocus:{type:Boolean},openByHover:{type:Boolean},posBy:{default:"fixed"},data:{}},setup(d){const o=d,n=o.id||Math.random()+"";let p;function s(e){setTimeout(()=>{p=e.nextElementSibling,p&&a(p)})}t.onUpdated(()=>{p&&a(p)});function a(e){e.dataset.topPopup="#"+n,e.dataset.topPopupId=n,e.dataset.topPopupPos=o.pos,e.dataset.topPopupPosBy=o.posBy,e.dataset.topPopupNotch=o.notch?"true":"",e.dataset.topPopupOpenByHover=o.openByHover?"true":"",e.__TopPopupOpenerProps=o}return(e,c)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("template",{ref:s}),t.renderSlot(e.$slots,"default")],64))}});u._sfc_main=r}));
2
+ //# sourceMappingURL=opener.vue_vue_type_script_setup_true_lang-gNZhYkDf.amd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opener.vue_vue_type_script_setup_true_lang-gNZhYkDf.amd.js","sources":["../../src/components/popup/popup/opener.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUpdated } from 'vue';\nimport type { OpenerProps } from './types';\n\nconst props = withDefaults(defineProps<OpenerProps<T>>(), {\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst id = props.id || Math.random() + '';\n\nlet elOpener: Element;\n\n/**\n * Необычная функция для проброски props внутрь элемента слота\n *\n * @param el - вспомогательный элемент для доступа к элементам слота\n */\nfunction render(el: any) {\n\tsetTimeout(() => {\n\t\telOpener = el.nextElementSibling;\n\n\t\tif (elOpener) {\n\t\t\trenderOpener(elOpener);\n\t\t}\n\t});\n}\n\nonUpdated(() => {\n\tif (elOpener) {\n\t\trenderOpener(elOpener);\n\t}\n});\n\nfunction renderOpener(elOpener: any) {\n\t/**\n\t * topPopup - необходимый атрибут для всез Popup\n\t *\n\t * Для Vue вместо него используется атрибут topPopupId\n\t */\n\telOpener.dataset.topPopup = '#' + id;\n\n\telOpener.dataset.topPopupId = id;\n\telOpener.dataset.topPopupPos = props.pos;\n\telOpener.dataset.topPopupPosBy = props.posBy;\n\telOpener.dataset.topPopupNotch = props.notch ? 'true' : '';\n\telOpener.dataset.topPopupOpenByHover = props.openByHover ? 'true' : '';\n\telOpener.__TopPopupOpenerProps = props;\n}\n</script>\n\n<template>\n\t<template :ref=\"render\"></template>\n\n\t<!-- @slot элемент для открытия Popup -->\n\t<slot></slot>\n</template>\n\n<!-- Использует общий deprecated класс .btn -->\n<style>\nh3[data-top-popup],\ndiv[data-top-popup],\ni[data-top-popup]:not(.btn),\nb[data-top-popup]:not(.btn) {\n\tcursor: pointer;\n\tuser-select: none;\n\tfont-style: normal;\n\ttext-decoration: none;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n[data-top-popup][data-top-popup-disabled] {\n\tpointer-events: none;\n\tcursor: auto !important;\n}\n\ni[contenteditable] {\n\tcursor: text !important;\n}\n</style>\n"],"names":["id","props","elOpener","render","el","renderOpener","elOpener2","vue","_ctx"],"mappings":"sTAUAA,EAAAC,EAAA,IAAA,KAAA,OAAA,EAAA,GAEA,IAAAC,EAOA,SAAAC,EAAAC,EAAA,iBAEEF,EAAAE,EAAA,0BAIA,CAAA,0BAOD,CAAA,EAGD,SAAAC,EAAAC,EAAA,0BAQCA,EAAA,QAAA,WAAAN,8DAGAM,EAAA,QAAA,cAAAL,EAAA,MAAA,OAAA,GACAK,EAAA,QAAA,oBAAAL,EAAA,YAAA,OAAA,GACAK,EAAA,sBAAAL,6GAKsBM,EAAA,WAAAC,EAAA,OAAA,SAAA"}
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as v, provide as f, onMounted as w, getCurrentInstance as b, watch as $, createElementBlock as l, openBlock as s, unref as t, normalizeStyle as u, normalizeClass as n, createElementVNode as i, renderSlot as r, computed as k, resolveDirective as D, createCommentVNode as c, createBlock as h, Teleport as g, withDirectives as T } from "vue";
2
- import { g as _ } from "./dialogs.vue_vue_type_script_setup_true_lang-CPByl0SB.es.js";
3
- import { C } from "./forms-BrdvrjiZ.es.js";
4
- import { b as A } from "./utils-DyhMNhnz.es.js";
2
+ import { g as _ } from "./dialogs.vue_vue_type_script_setup_true_lang-DCVIoEeY.es.js";
3
+ import { C } from "./forms-BhbgRJ5I.es.js";
4
+ import { b as A } from "./utils-UBgfsQ8v.es.js";
5
5
  const B = ["id", "data-view-page-active", "data-modal", "data-position"], q = /* @__PURE__ */ v({
6
6
  __name: "dialog",
7
7
  props: {
@@ -140,4 +140,4 @@ export {
140
140
  q as _,
141
141
  G as a
142
142
  };
143
- //# sourceMappingURL=page.vue_vue_type_script_setup_true_lang-XMwkQHNU.es.js.map
143
+ //# sourceMappingURL=page.vue_vue_type_script_setup_true_lang-9abPBMpd.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page.vue_vue_type_script_setup_true_lang-XMwkQHNU.es.js","sources":["../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/dialog/page/page.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t'--top-dialog-width': width,\n\t\t\t'--top-dialog-height': height,\n\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport Core from '@/core/core/core';\nimport { useTopDialogSelf } from '@/components/dialog/dialog/composables/utils';\nimport type { Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\torder: 0,\n});\n\ndefineSlots<Slots>();\n\nconst dialog = useTopDialogSelf();\n\nconst classes = computed(() => {\n\treturn {\n\t\tactive: dialog.pageActive?.value === props.name,\n\t\t'i-load-data': props.isLoading || dialog.isLoadingPage.value,\n\t};\n});\n</script>\n\n<template>\n\t<div\n\t\tstyle=\"display: none\"\n\t\tv-if=\"dialog.isReady.value\"\n\t>\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-header'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\t:class=\"classes\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-header\">\n\t\t\t\t\t<div class=\"top-title\">\n\t\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class=\"buttons\">\n\t\t\t\t\t\t<slot name=\"headerButtons\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-if=\"Core.state.isMobile && prevName\"\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Back\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"dialog.open(prevName)\"\n\t\t\t\t\t></div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-else\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Close\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\tdata-action=\"top-dialog-close\"\n\t\t\t\t\t></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-body'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\tclass=\"has_scroll_container\"\n\t\t\t\t:class=\"classes\"\n\t\t\t\t:style=\"{'--top-dialog-footer-height': $slots.footer ? undefined : '0px'}\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-body\" v-top-scroll-shadow>\n\t\t\t\t\t<slot name=\"body\"></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div\n\t\t\t\t\tclass=\"modal-footer\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t'modal-footer-fullWith': footerFullWith\n\t\t\t\t\t}\"\n\t\t\t\t\tv-if=\"$slots.footer\"\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"footer\"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n</template>\n"],"names":["dialog","getDialogWorker","__props","provide","onMounted","topDialogBaseComponent","getCurrentInstance","topDialogComponent","_a","watch","_createElementBlock","_unref","_normalizeClass","classes","_normalizeStyle","width","height","modal","position","_createElementVNode","_renderSlot","_ctx","props","useTopDialogSelf","computed","_openBlock","_hoisted_1","_createBlock","_Teleport","name","order","_hoisted_3","_hoisted_4","_hoisted_5","Core","prevName","$i18n","_cache","$event","$slots","_withDirectives","_hoisted_9","footerFullWith"],"mappings":"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"}
1
+ {"version":3,"file":"page.vue_vue_type_script_setup_true_lang-9abPBMpd.es.js","sources":["../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/dialog/page/page.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t'--top-dialog-width': width,\n\t\t\t'--top-dialog-height': height,\n\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport Core from '@/core/core/core';\nimport { useTopDialogSelf } from '@/components/dialog/dialog/composables/utils';\nimport type { Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\torder: 0,\n});\n\ndefineSlots<Slots>();\n\nconst dialog = useTopDialogSelf();\n\nconst classes = computed(() => {\n\treturn {\n\t\tactive: dialog.pageActive?.value === props.name,\n\t\t'i-load-data': props.isLoading || dialog.isLoadingPage.value,\n\t};\n});\n</script>\n\n<template>\n\t<div\n\t\tstyle=\"display: none\"\n\t\tv-if=\"dialog.isReady.value\"\n\t>\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-header'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\t:class=\"classes\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-header\">\n\t\t\t\t\t<div class=\"top-title\">\n\t\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class=\"buttons\">\n\t\t\t\t\t\t<slot name=\"headerButtons\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-if=\"Core.state.isMobile && prevName\"\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Back\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"dialog.open(prevName)\"\n\t\t\t\t\t></div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-else\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Close\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\tdata-action=\"top-dialog-close\"\n\t\t\t\t\t></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-body'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\tclass=\"has_scroll_container\"\n\t\t\t\t:class=\"classes\"\n\t\t\t\t:style=\"{'--top-dialog-footer-height': $slots.footer ? undefined : '0px'}\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-body\" v-top-scroll-shadow>\n\t\t\t\t\t<slot name=\"body\"></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div\n\t\t\t\t\tclass=\"modal-footer\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t'modal-footer-fullWith': footerFullWith\n\t\t\t\t\t}\"\n\t\t\t\t\tv-if=\"$slots.footer\"\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"footer\"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n</template>\n"],"names":["dialog","getDialogWorker","__props","provide","onMounted","topDialogBaseComponent","getCurrentInstance","topDialogComponent","_a","watch","_createElementBlock","_unref","_normalizeClass","classes","_normalizeStyle","width","height","modal","position","_createElementVNode","_renderSlot","_ctx","props","useTopDialogSelf","computed","_openBlock","_hoisted_1","_createBlock","_Teleport","name","order","_hoisted_3","_hoisted_4","_hoisted_5","Core","prevName","$i18n","_cache","$event","$slots","_withDirectives","_hoisted_9","footerFullWith"],"mappings":";;;;;;;;;;;;;;;;;;AAiBA,UAAMA,IAASC,EAXDC,EAWuB,EAAE;AACvC,QAAI,CAACF;AACJ,YAAM,IAAI,MAAM,kFAAkF;AAMnG,WAAAG,EAAQ,gBAAgBH,CAAM,GAK9BI,EAAU,MAAM;;AACf,YAAMC,IAAyBC,EAAA,GACzBC,IAAqBF,EAAuB;AAElD,YAAIG,IAAAD,KAAA,gBAAAA,EAAoB,WAApB,gBAAAC,EAA4B,KAAK,UAAS;AAC7C,cAAM,IAAI,MAAM,4DAA4D;AAG7E,UAAI,MAAM,QAAQD,EAAmB,QAAQ,QAAQ,KAAKA,EAAmB,QAAQ,SAAS,WAAW;AACxG,cAAM,IAAI,MAAM,yCAAyC;AAG1D,MAAAP,EAAO,UAAUO,GAAoBF,CAAsB;AAAA,IAC5D,CAAC,GAEDI,EAAMT,EAAO,UAAU,MAAM;AAC5B,MAAAA,EAAO,QAAQ,QAAQ;AAAA,IACxB,GAAG;AAAA,MACF,OAAO;AAAA,MACP,MAAM;AAAA,IAAA,CACN,mBAIAU,EAkBM,OAAA;AAAA,MAjBJ,IAAIC,EAAAX,CAAA,EAAO;AAAA,MACZ,OAAKY,EAAA,CAAC,cACEC,EAAAA,OAAO,CAAA;AAAA,MACd,OAAKC,EAAA;AAAA,8BAA6BC,EAAAA;AAAAA,+BAAiCC,EAAAA;AAAAA,MAAAA;MAIpE,UAAS;AAAA,MACR,yBAAuBL,EAAAX,CAAA,EAAO,WAAW;AAAA,MACzC,cAAYiB,EAAAA;AAAAA,MACZ,iBAAeC,EAAAA;AAAAA,IAAAA;sBAEhBC,EAAkD,OAAA,EAA7C,OAAM,iCAAA,GAAgC,MAAA,EAAA;AAAA,MAE3CA,EAAuF,OAAA;AAAA,QAAlF,OAAM;AAAA,QAAgC,yBAAsBH,EAAAA,SAAM,MAAA;AAAA,MAAA;MAEvEI,EAA4BC,EAAA,QAAA,SAAA;AAAA,IAAA;;;;;;;;;;;;;;;ACjE9B,UAAMC,IAAQpB,GAMRF,IAASuB,EAAA,GAETV,IAAUW,EAAS,MAAM;;AAC9B,aAAO;AAAA,QACN,UAAQhB,IAAAR,EAAO,eAAP,gBAAAQ,EAAmB,WAAUc,EAAM;AAAA,QAC3C,eAAeA,EAAM,aAAatB,EAAO,cAAc;AAAA,MAAA;AAAA,IAEzD,CAAC;;;aAMOW,EAAAX,CAAA,EAAO,QAAQ,SAFtByB,KAAAf,EA6DM,OA7DNgB,GA6DM;AAAA,cAzDLC,EAgCWC,GAAA;AAAA,UAhCA,IAAE,MAAQjB,EAAAX,CAAA,EAAO,SAAM;AAAA,UAA4B,UAAQ,CAAGW,EAAAX,CAAA,EAAO,aAAa6B,EAAAA,IAAI;AAAA,QAAA;UAChGV,EA8BM,OAAA;AAAA,YA7BJ,cAAYW,EAAAA;AAAAA,YACZ,kBAAgBD,EAAAA;AAAAA,YAChB,SAAOhB,EAAA,KAAO;AAAA,UAAA;YAEfM,EAwBM,OAxBNY,GAwBM;AAAA,cAvBLZ,EAEM,OAFNa,GAEM;AAAA,gBADLZ,EAA2BC,EAAA,QAAA,QAAA;AAAA,cAAA;cAG5BF,EAEM,OAFNc,GAEM;AAAA,gBADLb,EAAkCC,EAAA,QAAA,eAAA;AAAA,cAAA;cAI5BV,EAAAuB,CAAA,EAAK,MAAM,YAAYC,EAAAA,iBAD9BzB,EAMO,OAAA;AAAA;gBAJN,OAAM;AAAA,gBACL,OAAO0B,EAAAA,MAAM,OAAO;AAAA,gBACrB,iBAAc;AAAA,gBACb,SAAKC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAE3B,EAAAX,CAAA,EAAO,KAAKmC,EAAAA,QAAQ;AAAA,cAAA,wBAG7BzB,EAMO,OAAA;AAAA;gBAJN,OAAM;AAAA,gBACL,OAAO0B,EAAAA,MAAM,OAAO;AAAA,gBACrB,iBAAc;AAAA,gBACd,eAAY;AAAA,cAAA;;;;cAMhBT,EAsBWC,GAAA;AAAA,UAtBA,IAAE,MAAQjB,EAAAX,CAAA,EAAO,SAAM;AAAA,UAA0B,UAAQ,CAAGW,EAAAX,CAAA,EAAO,aAAa6B,EAAAA,IAAI;AAAA,QAAA;UAC9FV,EAoBM,OAAA;AAAA,YAnBJ,cAAYW,EAAAA;AAAAA,YACZ,kBAAgBD,EAAAA;AAAAA,YACjB,OAAKjB,EAAA,CAAC,wBACEC,EAAA,KAAO,CAAA;AAAA,YACd,OAAKC,EAAA,EAAA,8BAAiCyB,EAAAA,OAAO,SAAS,SAAS,MAAA,CAAA;AAAA,UAAA;YAEhEC,GAAAf,EAAA,GAAAf,EAEM,OAFN+B,GAEM;AAAA,cADLrB,EAAyBC,EAAA,QAAA,MAAA;AAAA,YAAA;;;YAQnBkB,EAAAA,OAAO,eALd7B,EAQM,OAAA;AAAA;cAPL,UAAM,gBAAc;AAAA,yCACqBgC,EAAAA;AAAAA,cAAAA;;cAKzCtB,EAA2BC,EAAA,QAAA,QAAA;AAAA,YAAA;;;;;;;"}
@@ -1,2 +1,2 @@
1
- define(["require","exports","vue","./dialogs.vue_vue_type_script_setup_true_lang-B5rYBKgA.amd","./forms-CzUjrBXG.amd","./utils-BgVG2kmp.amd"],(function(b,i,e,r,d,p){"use strict";if(typeof e>"u")var e=window.Vue;const c=["id","data-view-page-active","data-modal","data-position"],u=e.defineComponent({__name:"dialog",props:{id:{},pageActive:{},width:{default:"600px"},height:{default:"auto"},modal:{type:Boolean,default:!0},position:{},historyType:{default:"push"},classes:{}},emits:["open","close"],setup(s){const n=s,t=r.getDialogWorker(n.id);if(!t)throw new Error("TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()");return e.provide("dialogWorker",t),e.onMounted(()=>{var l;const a=e.getCurrentInstance(),o=a.parent;if(((l=o==null?void 0:o.parent)==null?void 0:l.type.name)!=="DialogWrapper")throw new Error("TopDialog cannot be used in a template, use useTopDialog()");if(Array.isArray(o.subTree.children)&&o.subTree.children.length!==1)throw new Error("TopDialog can has only one root element");t.onMounted(o,a)}),e.watch(t.isOpened,()=>{t.isReady.value=!0},{flush:"post",once:!0}),(a,o)=>(e.openBlock(),e.createElementBlock("div",{id:e.unref(t).idAttr,class:e.normalizeClass(["top-dialog",a.classes]),style:e.normalizeStyle({"--top-dialog-width":a.width,"--top-dialog-height":a.height}),tabindex:"-1","data-view-page-active":e.unref(t).pageActive.value,"data-modal":a.modal,"data-position":a.position},[o[0]||(o[0]=e.createElementVNode("div",{class:"modal-layer modal-layer-header"},null,-1)),e.createElementVNode("div",{class:"modal-layer modal-layer-body",style:e.normalizeStyle({"min-height":a.height+"px"})},null,4),e.renderSlot(a.$slots,"default")],14,c))}}),m={key:0,style:{display:"none"}},h=["data-order","data-view-page"],v={class:"modal-header"},g={class:"top-title"},f={class:"buttons"},y=["title"],k=["title"],w=["data-order","data-view-page"],B={class:"modal-body"},_=e.defineComponent({__name:"page",props:{isLoading:{type:Boolean},name:{},order:{default:0},prevName:{},footerFullWith:{type:Boolean}},setup(s){const n=s,t=p.useTopDialogSelf(),a=e.computed(()=>{var o;return{active:((o=t.pageActive)==null?void 0:o.value)===n.name,"i-load-data":n.isLoading||t.isLoadingPage.value}});return(o,l)=>{const E=e.resolveDirective("top-scroll-shadow");return e.unref(t).isReady.value?(e.openBlock(),e.createElementBlock("div",m,[(e.openBlock(),e.createBlock(e.Teleport,{to:"#"+e.unref(t).idAttr+" .modal-layer-header",disabled:!e.unref(t).needShowPage(o.name)},[e.createElementVNode("div",{"data-order":o.order,"data-view-page":o.name,class:e.normalizeClass(a.value)},[e.createElementVNode("div",v,[e.createElementVNode("div",g,[e.renderSlot(o.$slots,"header")]),e.createElementVNode("div",f,[e.renderSlot(o.$slots,"headerButtons")]),e.unref(d.Core).state.isMobile&&o.prevName?(e.openBlock(),e.createElementBlock("div",{key:0,class:"close",title:o.$i18n.Common.Back,"data-top-icon":"",onClick:l[0]||(l[0]=C=>e.unref(t).open(o.prevName))},null,8,y)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"close",title:o.$i18n.Common.Close,"data-top-icon":"","data-action":"top-dialog-close"},null,8,k))])],10,h)],8,["to","disabled"])),(e.openBlock(),e.createBlock(e.Teleport,{to:"#"+e.unref(t).idAttr+" .modal-layer-body",disabled:!e.unref(t).needShowPage(o.name)},[e.createElementVNode("div",{"data-order":o.order,"data-view-page":o.name,class:e.normalizeClass(["has_scroll_container",a.value]),style:e.normalizeStyle({"--top-dialog-footer-height":o.$slots.footer?void 0:"0px"})},[e.withDirectives((e.openBlock(),e.createElementBlock("div",B,[e.renderSlot(o.$slots,"body")])),[[E]]),o.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["modal-footer",{"modal-footer-fullWith":o.footerFullWith}])},[e.renderSlot(o.$slots,"footer")],2)):e.createCommentVNode("",!0)],14,w)],8,["to","disabled"]))])):e.createCommentVNode("",!0)}}});i._sfc_main=u,i._sfc_main$1=_}));
2
- //# sourceMappingURL=page.vue_vue_type_script_setup_true_lang-C-BJRiFc.amd.js.map
1
+ define(["require","exports","vue","./dialogs.vue_vue_type_script_setup_true_lang-Bf0wXalT.amd","./forms-CNcrvkYD.amd","./utils-5uxIj2CI.amd"],(function(b,i,e,r,d,p){"use strict";if(typeof e>"u")var e=window.Vue;const c=["id","data-view-page-active","data-modal","data-position"],u=e.defineComponent({__name:"dialog",props:{id:{},pageActive:{},width:{default:"600px"},height:{default:"auto"},modal:{type:Boolean,default:!0},position:{},historyType:{default:"push"},classes:{}},emits:["open","close"],setup(s){const n=s,t=r.getDialogWorker(n.id);if(!t)throw new Error("TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()");return e.provide("dialogWorker",t),e.onMounted(()=>{var l;const a=e.getCurrentInstance(),o=a.parent;if(((l=o==null?void 0:o.parent)==null?void 0:l.type.name)!=="DialogWrapper")throw new Error("TopDialog cannot be used in a template, use useTopDialog()");if(Array.isArray(o.subTree.children)&&o.subTree.children.length!==1)throw new Error("TopDialog can has only one root element");t.onMounted(o,a)}),e.watch(t.isOpened,()=>{t.isReady.value=!0},{flush:"post",once:!0}),(a,o)=>(e.openBlock(),e.createElementBlock("div",{id:e.unref(t).idAttr,class:e.normalizeClass(["top-dialog",a.classes]),style:e.normalizeStyle({"--top-dialog-width":a.width,"--top-dialog-height":a.height}),tabindex:"-1","data-view-page-active":e.unref(t).pageActive.value,"data-modal":a.modal,"data-position":a.position},[o[0]||(o[0]=e.createElementVNode("div",{class:"modal-layer modal-layer-header"},null,-1)),e.createElementVNode("div",{class:"modal-layer modal-layer-body",style:e.normalizeStyle({"min-height":a.height+"px"})},null,4),e.renderSlot(a.$slots,"default")],14,c))}}),m={key:0,style:{display:"none"}},h=["data-order","data-view-page"],v={class:"modal-header"},g={class:"top-title"},f={class:"buttons"},y=["title"],k=["title"],w=["data-order","data-view-page"],B={class:"modal-body"},_=e.defineComponent({__name:"page",props:{isLoading:{type:Boolean},name:{},order:{default:0},prevName:{},footerFullWith:{type:Boolean}},setup(s){const n=s,t=p.useTopDialogSelf(),a=e.computed(()=>{var o;return{active:((o=t.pageActive)==null?void 0:o.value)===n.name,"i-load-data":n.isLoading||t.isLoadingPage.value}});return(o,l)=>{const E=e.resolveDirective("top-scroll-shadow");return e.unref(t).isReady.value?(e.openBlock(),e.createElementBlock("div",m,[(e.openBlock(),e.createBlock(e.Teleport,{to:"#"+e.unref(t).idAttr+" .modal-layer-header",disabled:!e.unref(t).needShowPage(o.name)},[e.createElementVNode("div",{"data-order":o.order,"data-view-page":o.name,class:e.normalizeClass(a.value)},[e.createElementVNode("div",v,[e.createElementVNode("div",g,[e.renderSlot(o.$slots,"header")]),e.createElementVNode("div",f,[e.renderSlot(o.$slots,"headerButtons")]),e.unref(d.Core).state.isMobile&&o.prevName?(e.openBlock(),e.createElementBlock("div",{key:0,class:"close",title:o.$i18n.Common.Back,"data-top-icon":"",onClick:l[0]||(l[0]=C=>e.unref(t).open(o.prevName))},null,8,y)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"close",title:o.$i18n.Common.Close,"data-top-icon":"","data-action":"top-dialog-close"},null,8,k))])],10,h)],8,["to","disabled"])),(e.openBlock(),e.createBlock(e.Teleport,{to:"#"+e.unref(t).idAttr+" .modal-layer-body",disabled:!e.unref(t).needShowPage(o.name)},[e.createElementVNode("div",{"data-order":o.order,"data-view-page":o.name,class:e.normalizeClass(["has_scroll_container",a.value]),style:e.normalizeStyle({"--top-dialog-footer-height":o.$slots.footer?void 0:"0px"})},[e.withDirectives((e.openBlock(),e.createElementBlock("div",B,[e.renderSlot(o.$slots,"body")])),[[E]]),o.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["modal-footer",{"modal-footer-fullWith":o.footerFullWith}])},[e.renderSlot(o.$slots,"footer")],2)):e.createCommentVNode("",!0)],14,w)],8,["to","disabled"]))])):e.createCommentVNode("",!0)}}});i._sfc_main=u,i._sfc_main$1=_}));
2
+ //# sourceMappingURL=page.vue_vue_type_script_setup_true_lang-B-1LEQAz.amd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page.vue_vue_type_script_setup_true_lang-C-BJRiFc.amd.js","sources":["../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/dialog/page/page.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t'--top-dialog-width': width,\n\t\t\t'--top-dialog-height': height,\n\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport Core from '@/core/core/core';\nimport { useTopDialogSelf } from '@/components/dialog/dialog/composables/utils';\nimport type { Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\torder: 0,\n});\n\ndefineSlots<Slots>();\n\nconst dialog = useTopDialogSelf();\n\nconst classes = computed(() => {\n\treturn {\n\t\tactive: dialog.pageActive?.value === props.name,\n\t\t'i-load-data': props.isLoading || dialog.isLoadingPage.value,\n\t};\n});\n</script>\n\n<template>\n\t<div\n\t\tstyle=\"display: none\"\n\t\tv-if=\"dialog.isReady.value\"\n\t>\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-header'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\t:class=\"classes\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-header\">\n\t\t\t\t\t<div class=\"top-title\">\n\t\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class=\"buttons\">\n\t\t\t\t\t\t<slot name=\"headerButtons\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-if=\"Core.state.isMobile && prevName\"\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Back\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"dialog.open(prevName)\"\n\t\t\t\t\t></div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-else\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Close\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\tdata-action=\"top-dialog-close\"\n\t\t\t\t\t></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-body'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\tclass=\"has_scroll_container\"\n\t\t\t\t:class=\"classes\"\n\t\t\t\t:style=\"{'--top-dialog-footer-height': $slots.footer ? undefined : '0px'}\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-body\" v-top-scroll-shadow>\n\t\t\t\t\t<slot name=\"body\"></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div\n\t\t\t\t\tclass=\"modal-footer\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t'modal-footer-fullWith': footerFullWith\n\t\t\t\t\t}\"\n\t\t\t\t\tv-if=\"$slots.footer\"\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"footer\"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n</template>\n"],"names":["vue","dialog","topDialogBaseComponent","topDialogComponent","_ctx","height","position","_hoisted_1$1","utils","classes","order","name","_hoisted_4","_hoisted_6","_hoisted_7","footerFullWith"],"mappings":"siBAmBC,MAAA,IAAA,MAAA,kFAAA,EAMD,OAAAA,EAAA,QAAA,eAAAC,CAAA,yBAMC,MAAAC,EAAAF,EAAA,mBAAA,EACAG,EAAAD,EAAA,mFAGC,MAAA,IAAA,MAAA,4DAAA,sEAIA,MAAA,IAAA,MAAA,yCAAA,EAGDD,EAAA,UAAAE,EAAAD,CAAA,CAA2D,CAAA,EAG5DF,EAAA,MAAAC,EAAA,SAAA,IAAA,CACCA,EAAA,QAAA,MAAA,EAAuB,EAAA,cAEhB,KAAA,EACD,CAAA,oDAuBA,GAAAD,EAAA,MAAAC,CAAA,EAAA,gFAdC,qBAAAG,EAAA,oCAA8DC,CAAAA,oEAK1B,aAAAD,EAAA,gCAE1BE,EAAAA,4JAIL,MAAAN,EAAA,eAAA,CAAA,aAAAI,EAAA,OAAA,IAAA,CAAA,CAA4D,EAAA,KAAA,CAAA,kCAE3C,EAAA,GAAAG,CAAA,wXC3D9BN,EAAAO,EAAA,iBAAA,EAEAC,EAAAT,EAAA,SAAA,IAAA,OACC,MAAA,0GAGA,CAAA,8IAkEMA,EAAA,UAAA,EAAAA,EAAA,YAAAA,EAAA,SAAA,iDAzD6B,SAAA,CAAAA,EAAA,MAAAC,CAAA,EAAA,aAAAG,EAAA,IAAA,CAA+D,EAAA,6BA+B1F,aAAAA,EAAA,MA7BQM,iBAAAA,EAAAA,KACIC,MAAAA,EAAAA,eAAAA,EAAAA,KAAAA,CACF,EAAA,+BA0BTX,EAAA,mBAAA,MAAAY,EAAA,CArBCZ,EAAA,WAAAI,EAAA,OAAA,QAAA,CADsB,CAAA,gCAKtBJ,EAAA,WAAAI,EAAA,OAAA,eAAA,CAD6B,CAAA,6MAQN,EAAA,KAAA,EAAAS,CAAA,IAAAb,EAAA,UAAA,EAAAA,EAAA,mBAAA,MAAA,oEAOd,cAAA,kBACF,EAAA,KAAA,EAAAc,CAAA,0HAMkB,SAAA,CAAAd,EAAA,MAAAC,CAAA,EAAA,aAAAG,EAAA,IAAA,CAA6D,EAAA,6BAqBxF,aAAAA,EAAA,MAnBQM,iBAAAA,EAAAA,8DAGE,MAAAV,EAAA,eAAA,CAAA,6BAAAI,EAAA,OAAA,OAAA,OAAA,KAAA,CAAA,CACiD,EAAA,+DAI1DJ,EAAA,WAAAI,EAAA,OAAA,MAAA,CADoB,CAAA,GAAA,wJAKgBW,CAAAA,CAAAA"}
1
+ {"version":3,"file":"page.vue_vue_type_script_setup_true_lang-B-1LEQAz.amd.js","sources":["../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/dialog/page/page.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t'--top-dialog-width': width,\n\t\t\t'--top-dialog-height': height,\n\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport Core from '@/core/core/core';\nimport { useTopDialogSelf } from '@/components/dialog/dialog/composables/utils';\nimport type { Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\torder: 0,\n});\n\ndefineSlots<Slots>();\n\nconst dialog = useTopDialogSelf();\n\nconst classes = computed(() => {\n\treturn {\n\t\tactive: dialog.pageActive?.value === props.name,\n\t\t'i-load-data': props.isLoading || dialog.isLoadingPage.value,\n\t};\n});\n</script>\n\n<template>\n\t<div\n\t\tstyle=\"display: none\"\n\t\tv-if=\"dialog.isReady.value\"\n\t>\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-header'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\t:class=\"classes\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-header\">\n\t\t\t\t\t<div class=\"top-title\">\n\t\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class=\"buttons\">\n\t\t\t\t\t\t<slot name=\"headerButtons\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-if=\"Core.state.isMobile && prevName\"\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Back\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"dialog.open(prevName)\"\n\t\t\t\t\t></div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-else\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Close\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\tdata-action=\"top-dialog-close\"\n\t\t\t\t\t></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-body'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\tclass=\"has_scroll_container\"\n\t\t\t\t:class=\"classes\"\n\t\t\t\t:style=\"{'--top-dialog-footer-height': $slots.footer ? undefined : '0px'}\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-body\" v-top-scroll-shadow>\n\t\t\t\t\t<slot name=\"body\"></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div\n\t\t\t\t\tclass=\"modal-footer\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t'modal-footer-fullWith': footerFullWith\n\t\t\t\t\t}\"\n\t\t\t\t\tv-if=\"$slots.footer\"\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"footer\"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n</template>\n"],"names":["vue","dialog","topDialogBaseComponent","topDialogComponent","_ctx","height","position","_hoisted_1$1","utils","classes","order","name","_hoisted_4","_hoisted_6","_hoisted_7","footerFullWith"],"mappings":"siBAmBC,MAAA,IAAA,MAAA,kFAAA,EAMD,OAAAA,EAAA,QAAA,eAAAC,CAAA,yBAMC,MAAAC,EAAAF,EAAA,mBAAA,EACAG,EAAAD,EAAA,mFAGC,MAAA,IAAA,MAAA,4DAAA,sEAIA,MAAA,IAAA,MAAA,yCAAA,EAGDD,EAAA,UAAAE,EAAAD,CAAA,CAA2D,CAAA,EAG5DF,EAAA,MAAAC,EAAA,SAAA,IAAA,CACCA,EAAA,QAAA,MAAA,EAAuB,EAAA,cAEhB,KAAA,EACD,CAAA,oDAuBA,GAAAD,EAAA,MAAAC,CAAA,EAAA,gFAdC,qBAAAG,EAAA,oCAA8DC,CAAAA,oEAK1B,aAAAD,EAAA,gCAE1BE,EAAAA,4JAIL,MAAAN,EAAA,eAAA,CAAA,aAAAI,EAAA,OAAA,IAAA,CAAA,CAA4D,EAAA,KAAA,CAAA,kCAE3C,EAAA,GAAAG,CAAA,wXC3D9BN,EAAAO,EAAA,iBAAA,EAEAC,EAAAT,EAAA,SAAA,IAAA,OACC,MAAA,0GAGA,CAAA,8IAkEMA,EAAA,UAAA,EAAAA,EAAA,YAAAA,EAAA,SAAA,iDAzD6B,SAAA,CAAAA,EAAA,MAAAC,CAAA,EAAA,aAAAG,EAAA,IAAA,CAA+D,EAAA,6BA+B1F,aAAAA,EAAA,MA7BQM,iBAAAA,EAAAA,KACIC,MAAAA,EAAAA,eAAAA,EAAAA,KAAAA,CACF,EAAA,+BA0BTX,EAAA,mBAAA,MAAAY,EAAA,CArBCZ,EAAA,WAAAI,EAAA,OAAA,QAAA,CADsB,CAAA,gCAKtBJ,EAAA,WAAAI,EAAA,OAAA,eAAA,CAD6B,CAAA,6MAQN,EAAA,KAAA,EAAAS,CAAA,IAAAb,EAAA,UAAA,EAAAA,EAAA,mBAAA,MAAA,oEAOd,cAAA,kBACF,EAAA,KAAA,EAAAc,CAAA,0HAMkB,SAAA,CAAAd,EAAA,MAAAC,CAAA,EAAA,aAAAG,EAAA,IAAA,CAA6D,EAAA,6BAqBxF,aAAAA,EAAA,MAnBQM,iBAAAA,EAAAA,8DAGE,MAAAV,EAAA,eAAA,CAAA,6BAAAI,EAAA,OAAA,OAAA,OAAA,KAAA,CAAA,CACiD,EAAA,+DAI1DJ,EAAA,WAAAI,EAAA,OAAA,MAAA,CADoB,CAAA,GAAA,wJAKgBW,CAAAA,CAAAA"}