@fonixtree/magic-design 0.0.7 → 0.0.10

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 (262) hide show
  1. package/_virtual/__node-resolve_empty.js +6 -0
  2. package/_virtual/_cloneBuffer.js +3 -0
  3. package/_virtual/_commonjsHelpers.js +24 -0
  4. package/_virtual/_node-resolve_empty.js +3 -0
  5. package/_virtual/_nodeUtil.js +3 -0
  6. package/_virtual/_rollupPluginBabelHelpers.js +18 -0
  7. package/_virtual/index.js +3 -0
  8. package/_virtual/index2.js +3 -0
  9. package/_virtual/index3.js +3 -0
  10. package/_virtual/index4.js +3 -0
  11. package/_virtual/index5.js +5 -0
  12. package/_virtual/interopRequireDefault.js +3 -0
  13. package/_virtual/isBuffer.js +3 -0
  14. package/_virtual/react-is.development.js +3 -0
  15. package/_virtual/react-is.production.min.js +3 -0
  16. package/_virtual/rng-browser.js +3 -0
  17. package/_virtual/toArray.js +3 -0
  18. package/package.json +22 -3
  19. package/src/components/assets/images/layout-icon/carouselLayout1.png.js +3 -0
  20. package/src/components/assets/images/layout-icon/carouselLayout2.png.js +3 -0
  21. package/src/components/assets/images/layout-icon/dividerLayout.svg.js +3 -0
  22. package/src/components/assets/images/layout-icon/imageGalleryLayout1.png.js +3 -0
  23. package/src/components/assets/images/layout-icon/imageGalleryLayout2.png.js +3 -0
  24. package/src/components/assets/images/layout-icon/imageGalleryLayout3.png.js +3 -0
  25. package/src/components/assets/images/layout-icon/layout-imagetext-m1-1.png.js +3 -0
  26. package/src/components/assets/images/layout-icon/layout-imagetext-m1-2.png.js +3 -0
  27. package/src/components/assets/images/layout-icon/layout-imagetext-m1-3.png.js +3 -0
  28. package/src/components/assets/images/layout-icon/layout-imagetext-m2.png.js +3 -0
  29. package/src/components/assets/images/layout-icon/layout-imagetext-m3.png.js +3 -0
  30. package/src/components/assets/images/layout-icon/layout-imagetext-p1.png.js +3 -0
  31. package/src/components/assets/images/layout-icon/layout-imagetext-p2.png.js +3 -0
  32. package/src/components/assets/images/layout-icon/layout-imagetext-p4.png.js +3 -0
  33. package/src/components/assets/images/layout-icon/layout-search.png.js +3 -0
  34. package/src/components/assets/images/layout-icon/newsletter.svg.js +3 -0
  35. package/src/components/assets/less/cylon-antd.less.js +3 -0
  36. package/src/components/assets/less/index.less.js +4 -0
  37. package/src/components/common/AlignSelector/index.js +65 -0
  38. package/src/components/common/AlignSelector/index.less.js +4 -0
  39. package/src/components/common/Button/index.js +75 -0
  40. package/src/components/common/Button/index.less.js +4 -0
  41. package/src/components/common/ButtonIconLayout/index.js +66 -0
  42. package/src/components/common/ButtonIconLayout/index.less.js +4 -0
  43. package/src/components/common/Collapse/index.js +323 -0
  44. package/src/components/common/Collapse/index.less.js +4 -0
  45. package/src/components/common/ColorPicker/index.js +94 -0
  46. package/src/components/common/ColorPicker/index.less.js +4 -0
  47. package/src/components/common/ColorPickerInput/index.js +76 -0
  48. package/src/components/common/ColorPickerInput/index.less.js +4 -0
  49. package/src/components/common/CountDown/index.js +110 -0
  50. package/src/components/common/CountDown/index.less.js +4 -0
  51. package/src/components/common/Field/index.js +43 -0
  52. package/src/components/common/Field/index.less.js +4 -0
  53. package/src/components/common/FontStyles/index.js +124 -0
  54. package/src/components/common/FontStyles/index.less.js +4 -0
  55. package/src/components/common/GroupList/defaultImg.png.js +3 -0
  56. package/src/components/common/GroupList/index.js +170 -0
  57. package/src/components/common/GroupList/index.less.js +4 -0
  58. package/src/components/common/IconPicker/index.js +93 -0
  59. package/src/components/common/IconPicker/index.less.js +4 -0
  60. package/src/components/common/Iconfont/index.js +74 -0
  61. package/src/components/common/Iconfont/index.less.js +4 -0
  62. package/src/components/common/ImageModal/CommonModal/const.js +16 -0
  63. package/src/components/common/ImageModal/CommonModal/index.js +33 -0
  64. package/src/components/common/ImageModal/CommonSelPicCard/index.js +66 -0
  65. package/src/components/common/ImageModal/CommonSelPicCard/index.less.js +4 -0
  66. package/src/components/common/ImageModal/const.js +18 -0
  67. package/src/components/common/ImageModal/index.js +547 -0
  68. package/src/components/common/ImageModal/index.less.js +4 -0
  69. package/src/components/common/ImagePicker/index.js +124 -0
  70. package/src/components/common/ImagePicker/index.less.js +4 -0
  71. package/src/components/common/InputNumber/index.js +54 -0
  72. package/src/components/common/InputNumber/index.less.js +4 -0
  73. package/src/components/common/LayoutSelector/imgs/center.png.js +3 -0
  74. package/src/components/common/LayoutSelector/imgs/left.png.js +3 -0
  75. package/src/components/common/LayoutSelector/imgs/right.png.js +3 -0
  76. package/src/components/common/LayoutSelector/index.js +70 -0
  77. package/src/components/common/LayoutSelector/index.less.js +4 -0
  78. package/src/components/common/LinkModal/CatgTable/index.js +78 -0
  79. package/src/components/common/LinkModal/CouponTable/index.js +111 -0
  80. package/src/components/common/LinkModal/CustomTable/index.js +72 -0
  81. package/src/components/common/LinkModal/FilteredProductModal/index.js +463 -0
  82. package/src/components/common/LinkModal/FilteredProductModal/index.less.js +4 -0
  83. package/src/components/common/LinkModal/FunctionTable/index.js +66 -0
  84. package/src/components/common/LinkModal/ProductDetailPage/index.js +241 -0
  85. package/src/components/common/LinkModal/ProductDetailPage/index.less.js +4 -0
  86. package/src/components/common/LinkModal/index.js +112 -0
  87. package/src/components/common/LinkModal/index.less.js +4 -0
  88. package/src/components/common/NewImg/index.js +91 -0
  89. package/src/components/common/ProductModal/index.js +556 -0
  90. package/src/components/common/ProductModal/index.less.js +4 -0
  91. package/src/components/common/ProductSource/index.js +91 -0
  92. package/src/components/common/ProductSource/index.less.js +4 -0
  93. package/src/components/common/RcCollapse/Collapse.js +176 -0
  94. package/src/components/common/RcCollapse/Panel.js +146 -0
  95. package/src/components/common/RcCollapse/PanelContent.js +41 -0
  96. package/src/components/common/RcCollapse/index.js +6 -0
  97. package/src/components/common/RcCollapse/index.less.js +4 -0
  98. package/src/components/common/RcCollapse/motionUtil.js +37 -0
  99. package/src/components/common/Slider/index.js +95 -0
  100. package/src/components/common/Slider/index.less.js +4 -0
  101. package/src/components/common/SwitchCollapse/index.js +162 -0
  102. package/src/components/common/SwitchCollapse/index.less.js +4 -0
  103. package/src/components/common/UrlPicker/index.js +81 -0
  104. package/src/components/common/UrlPicker/index.less.js +4 -0
  105. package/src/components/composite-comp/bol/components/Banner/defaultJSON.js +258 -0
  106. package/src/components/composite-comp/bol/components/Banner/imgs/banner.png.js +3 -0
  107. package/src/components/composite-comp/bol/components/Banner/index.js +34 -0
  108. package/src/components/composite-comp/bol/components/Banner/mobile/index.js +176 -0
  109. package/src/components/composite-comp/bol/components/Banner/mobile/index.less.js +4 -0
  110. package/src/components/composite-comp/bol/components/Banner/pc/index.js +254 -0
  111. package/src/components/composite-comp/bol/components/Banner/pc/index.less.js +4 -0
  112. package/src/components/composite-comp/bol/components/Button/defaultJSON.js +93 -0
  113. package/src/components/composite-comp/bol/components/Button/index.js +48 -0
  114. package/src/components/composite-comp/bol/components/Button/index.less.js +4 -0
  115. package/src/components/composite-comp/bol/components/Carousel/defaultJSON.js +286 -0
  116. package/src/components/composite-comp/bol/components/Carousel/imgs/defaultImg.png.js +3 -0
  117. package/src/components/composite-comp/bol/components/Carousel/index.js +37 -0
  118. package/src/components/composite-comp/bol/components/Carousel/mobile/index.js +217 -0
  119. package/src/components/composite-comp/bol/components/Carousel/mobile/index.less.js +4 -0
  120. package/src/components/composite-comp/bol/components/Carousel/pc/index.js +208 -0
  121. package/src/components/composite-comp/bol/components/Carousel/pc/index.less.js +4 -0
  122. package/src/components/composite-comp/bol/components/Divider/defaultJSON.js +40 -0
  123. package/src/components/composite-comp/bol/components/Divider/index.js +48 -0
  124. package/src/components/composite-comp/bol/components/ImageGallery/defaultJSON.js +64 -0
  125. package/src/components/composite-comp/bol/components/ImageGallery/index.js +30 -0
  126. package/src/components/composite-comp/bol/components/ImageGallery/mobile/index.js +47 -0
  127. package/src/components/composite-comp/bol/components/ImageGallery/mobile/index.less.js +4 -0
  128. package/src/components/composite-comp/bol/components/ImageText/defaultJSON.js +535 -0
  129. package/src/components/composite-comp/bol/components/ImageText/index.js +33 -0
  130. package/src/components/composite-comp/bol/components/ImageText/mobile/index.js +143 -0
  131. package/src/components/composite-comp/bol/components/ImageText/mobile/index.less.js +4 -0
  132. package/src/components/composite-comp/bol/components/ImageText/pc/index.js +112 -0
  133. package/src/components/composite-comp/bol/components/ImageText/pc/index.less.js +4 -0
  134. package/src/components/composite-comp/bol/components/Newsletter/defaultJSON.js +114 -0
  135. package/src/components/composite-comp/bol/components/Newsletter/index.js +65 -0
  136. package/src/components/composite-comp/bol/components/Newsletter/index.less.js +4 -0
  137. package/src/components/composite-comp/bol/components/Tag/defaultJSON.js +91 -0
  138. package/src/components/composite-comp/bol/components/Tag/index.js +52 -0
  139. package/src/components/composite-comp/bol/components/Tag/index.less.js +4 -0
  140. package/src/components/composite-comp/bol/components/Text/defaultJSON.js +125 -0
  141. package/src/components/composite-comp/bol/components/Text/index.js +68 -0
  142. package/src/components/composite-comp/bol/components/Text/index.less.js +4 -0
  143. package/src/components/composite-comp/bol/config-panels/BannerConfig/BannerConfigGroup/index.js +73 -0
  144. package/src/components/composite-comp/bol/config-panels/BannerConfig/BannerConfigGroup/index.less.js +4 -0
  145. package/src/components/composite-comp/bol/config-panels/BannerConfig/BannerConfigSetting/index.js +200 -0
  146. package/src/components/composite-comp/bol/config-panels/BannerConfig/BannerConfigSetting/index.less.js +4 -0
  147. package/src/components/composite-comp/bol/config-panels/BannerConfig/index.js +35 -0
  148. package/src/components/composite-comp/bol/config-panels/ButtonCompConfig/ButtonConfigContent/index.js +79 -0
  149. package/src/components/composite-comp/bol/config-panels/ButtonCompConfig/imgs/layout1.png.js +3 -0
  150. package/src/components/composite-comp/bol/config-panels/ButtonCompConfig/imgs/layout2.png.js +3 -0
  151. package/src/components/composite-comp/bol/config-panels/ButtonCompConfig/index.js +53 -0
  152. package/src/components/composite-comp/bol/config-panels/CarouselConfig/CarouselConfigImageGroup/index.js +91 -0
  153. package/src/components/composite-comp/bol/config-panels/CarouselConfig/CarouselConfigSetting/index.js +175 -0
  154. package/src/components/composite-comp/bol/config-panels/CarouselConfig/CarouselConfigSetting/index.less.js +4 -0
  155. package/src/components/composite-comp/bol/config-panels/CarouselConfig/imgs/defaultImg.png.js +3 -0
  156. package/src/components/composite-comp/bol/config-panels/CarouselConfig/index.js +54 -0
  157. package/src/components/composite-comp/bol/config-panels/DividerConfig/DividerContentSetting/index.js +153 -0
  158. package/src/components/composite-comp/bol/config-panels/DividerConfig/DividerSpacingSetting/index.js +66 -0
  159. package/src/components/composite-comp/bol/config-panels/DividerConfig/index.js +44 -0
  160. package/src/components/composite-comp/bol/config-panels/ImageGalleryConfig/ImageGalleryConfigImageGroup/index.js +91 -0
  161. package/src/components/composite-comp/bol/config-panels/ImageGalleryConfig/imgs/defaultImg.png.js +3 -0
  162. package/src/components/composite-comp/bol/config-panels/ImageGalleryConfig/index.js +44 -0
  163. package/src/components/composite-comp/bol/config-panels/ImageTextConfig/ImageTextConfigGroup/index.js +74 -0
  164. package/src/components/composite-comp/bol/config-panels/ImageTextConfig/index.js +170 -0
  165. package/src/components/composite-comp/bol/config-panels/NewsletterConfig/InputField/index.js +143 -0
  166. package/src/components/composite-comp/bol/config-panels/NewsletterConfig/NewsletterContentSetting/index.js +89 -0
  167. package/src/components/composite-comp/bol/config-panels/NewsletterConfig/index.js +44 -0
  168. package/src/components/composite-comp/bol/config-panels/TagCompConfig/TagConfigContent/index.js +88 -0
  169. package/src/components/composite-comp/bol/config-panels/TagCompConfig/imgs/layout1.png.js +3 -0
  170. package/src/components/composite-comp/bol/config-panels/TagCompConfig/index.js +48 -0
  171. package/src/components/composite-comp/bol/config-panels/TextCompConfig/TextConfigContent/index.js +79 -0
  172. package/src/components/composite-comp/bol/config-panels/TextCompConfig/TextConfigGroup/index.js +85 -0
  173. package/src/components/composite-comp/bol/config-panels/TextCompConfig/TextConfigGroup/index.less.js +4 -0
  174. package/src/components/composite-comp/bol/config-panels/TextCompConfig/imgs/layout1.png.js +3 -0
  175. package/src/components/composite-comp/bol/config-panels/TextCompConfig/index.js +55 -0
  176. package/src/components/composite-comp/bol/second-config-panels/BannerSecondConfig/index.js +109 -0
  177. package/src/components/composite-comp/bol/second-config-panels/CarouselSecondConfig/index.js +107 -0
  178. package/src/components/composite-comp/bol/second-config-panels/ImageTextSecondConfig/index.js +116 -0
  179. package/src/components/composite-comp/bol/second-config-panels/TextSecondConfig/TextContentConfigContent/index.js +79 -0
  180. package/src/components/composite-comp/bol/second-config-panels/TextSecondConfig/index.js +70 -0
  181. package/src/components/composite-comp/common/components/ImageLabel/index.js +47 -0
  182. package/src/components/composite-comp/common/components/ImageLabel/index.less.js +4 -0
  183. package/src/components/composite-comp/common/components/ProductItem/index.js +121 -0
  184. package/src/components/composite-comp/common/components/ProductItem/index.less.js +4 -0
  185. package/src/components/composite-comp/common/config-panels/BackgroundConfig/index.js +89 -0
  186. package/src/components/composite-comp/common/config-panels/CustomizeConfig/index.js +182 -0
  187. package/src/components/composite-comp/common/config-panels/CustomizeConfig/index.less.js +4 -0
  188. package/src/components/composite-comp/common/config-panels/SpacingConfig/index.js +133 -0
  189. package/src/components/composite-comp/common/config-panels/SpacingConfig/index.less.js +4 -0
  190. package/src/components/composite-comp/dito/components/FlashDeal/defaultJSON.js +176 -0
  191. package/src/components/composite-comp/dito/components/FlashDeal/index.js +31 -0
  192. package/src/components/composite-comp/dito/components/FlashDeal/mobile/imgs/defImg1.png.js +3 -0
  193. package/src/components/composite-comp/dito/components/FlashDeal/mobile/imgs/defImg2.png.js +3 -0
  194. package/src/components/composite-comp/dito/components/FlashDeal/mobile/imgs/defImg3.png.js +3 -0
  195. package/src/components/composite-comp/dito/components/FlashDeal/mobile/index.js +233 -0
  196. package/src/components/composite-comp/dito/components/FlashDeal/mobile/index.less.js +4 -0
  197. package/src/components/composite-comp/dito/components/Recommend/defaultJSON.js +210 -0
  198. package/src/components/composite-comp/dito/components/Recommend/index.js +31 -0
  199. package/src/components/composite-comp/dito/components/Recommend/mobile/index.js +317 -0
  200. package/src/components/composite-comp/dito/components/Recommend/mobile/index.less.js +4 -0
  201. package/src/components/composite-comp/dito/components/SearchBar/defaultJSON.js +44 -0
  202. package/src/components/composite-comp/dito/components/SearchBar/imgs/dito-logo.svg.js +3 -0
  203. package/src/components/composite-comp/dito/components/SearchBar/index.js +31 -0
  204. package/src/components/composite-comp/dito/components/SearchBar/mobile/index.js +89 -0
  205. package/src/components/composite-comp/dito/components/SearchBar/mobile/index.less.js +4 -0
  206. package/src/components/composite-comp/dito/config-panels/FlashDealConfig/FlashDealConfigContent/index.js +121 -0
  207. package/src/components/composite-comp/dito/config-panels/FlashDealConfig/FlashDealConfigTitle/index.js +102 -0
  208. package/src/components/composite-comp/dito/config-panels/FlashDealConfig/imgs/layout1.png.js +3 -0
  209. package/src/components/composite-comp/dito/config-panels/FlashDealConfig/index.js +49 -0
  210. package/src/components/composite-comp/dito/config-panels/RecommendConfig/RecommendConfigContent/index.js +97 -0
  211. package/src/components/composite-comp/dito/config-panels/RecommendConfig/RecommendConfigGroup/index.js +89 -0
  212. package/src/components/composite-comp/dito/config-panels/RecommendConfig/RecommendConfigGroup/index.less.js +4 -0
  213. package/src/components/composite-comp/dito/config-panels/RecommendConfig/imgs/defaultImg.png.js +3 -0
  214. package/src/components/composite-comp/dito/config-panels/RecommendConfig/imgs/layout1.png.js +3 -0
  215. package/src/components/composite-comp/dito/config-panels/RecommendConfig/index.js +49 -0
  216. package/src/components/composite-comp/dito/config-panels/SearchBarConfig/index.js +115 -0
  217. package/src/components/composite-comp/dito/second-config-panels/RecommendSecondConfig/index.js +156 -0
  218. package/src/components/constants/component-types.js +48 -0
  219. package/src/components/constants/index.js +74 -0
  220. package/src/components/constants/layout.js +90 -0
  221. package/src/components/core/Designer/CompListPanel/CompCard/index.js +33 -0
  222. package/src/components/core/Designer/CompListPanel/CompCard/index.less.js +4 -0
  223. package/src/components/core/Designer/CompListPanel/index.js +109 -0
  224. package/src/components/core/Designer/CompListPanel/index.less.js +4 -0
  225. package/src/components/core/Designer/ConfigPanel/index.js +246 -0
  226. package/src/components/core/Designer/ConfigPanel/index.less.js +4 -0
  227. package/src/components/core/Designer/History/index.js +82 -0
  228. package/src/components/core/Designer/PageCompList/index.js +248 -0
  229. package/src/components/core/Designer/PageCompList/index.less.js +4 -0
  230. package/src/components/core/Designer/QuickMenuBar/index.js +130 -0
  231. package/src/components/core/Designer/QuickMenuBar/index.less.js +4 -0
  232. package/src/components/core/Designer/ViewArea/index.js +86 -0
  233. package/src/components/core/Designer/ViewArea/index.less.js +4 -0
  234. package/src/components/core/Designer/index.js +364 -0
  235. package/src/components/core/Designer/index.less.js +4 -0
  236. package/src/components/core/Renderer/index.js +55 -0
  237. package/src/components/decorator/compositeDecorator.js +94 -0
  238. package/src/components/decorator/metaDecorator.js +150 -0
  239. package/src/components/index.js +4 -0
  240. package/src/components/meta-comp/components/Button/index.js +113 -0
  241. package/src/components/meta-comp/components/Button/index.less.js +4 -0
  242. package/src/components/meta-comp/components/Image/index.js +121 -0
  243. package/src/components/meta-comp/components/Image/index.less.js +4 -0
  244. package/src/components/meta-comp/components/Text/index.js +385 -0
  245. package/src/components/meta-comp/components/Text/index.less.js +4 -0
  246. package/src/components/meta-comp/config-panels/BaseConfig.js +47 -0
  247. package/src/components/meta-comp/config-panels/ButtonConfig/index.js +308 -0
  248. package/src/components/meta-comp/config-panels/ButtonConfig/index.less.js +4 -0
  249. package/src/components/meta-comp/config-panels/ImageConfig/index.js +179 -0
  250. package/src/components/meta-comp/config-panels/ImageConfig/index.less.js +4 -0
  251. package/src/components/meta-comp/config-panels/TextConfig/index.js +310 -0
  252. package/src/components/meta-comp/config-panels/TextConfig/index.less.js +4 -0
  253. package/src/components/mobx/Store.js +88 -0
  254. package/src/components/mobx/index.js +12 -0
  255. package/src/components/utils/androidUtil.js +22 -0
  256. package/src/components/utils/businessUtil.js +214 -0
  257. package/src/components/utils/commonUtil.js +223 -0
  258. package/src/components/utils/coreUtil.js +108 -0
  259. package/src/components/utils/currencyUtil.js +110 -0
  260. package/src/components/utils/dataTreeUtils.js +93 -0
  261. package/src/components/utils/dateUtil.js +30 -0
  262. package/src/components/utils/storeUtil.js +113 -0
@@ -0,0 +1,385 @@
1
+ import { __extends, __assign, __decorate, __spreadArray } from '../../../../../node_modules/tslib/tslib.es6.js';
2
+ import React__default from 'react';
3
+ import classNames from '../../../../../node_modules/classnames/index.js';
4
+ import { debounce, isEmpty } from 'lodash';
5
+ import './index.less.js';
6
+ import { convertIconClass } from '../../../common/Iconfont/index.js';
7
+ import { store } from '../../../mobx/index.js';
8
+ import metaDecorator from '../../../decorator/metaDecorator.js';
9
+ import { computeStyle } from '../../../utils/businessUtil.js';
10
+ import { isDesignMode } from '../../../utils/coreUtil.js';
11
+ import { styleStringify } from '../../../utils/commonUtil.js';
12
+
13
+ var contentStyle = function (content) {
14
+ return {
15
+ fontSize: window.magicDesign.device == 'pc' ? content.pcFontSize : content.fontSize,
16
+ fontFamily: content.fontFamily,
17
+ fontWeight: content.fontWeight,
18
+ fontStyle: content.fontStyle,
19
+ color: content.color,
20
+ backgroundColor: content.backgroundColor,
21
+ textAlign: content.textAlign,
22
+ width: window.magicDesign.device == 'mobile' ? '100%' : content.width || 'fit-content'
23
+ };
24
+ };
25
+ /** 从父级数组中 分离出 片段数组 */
26
+
27
+ var calcSplitRange = function (parentRange, splitRange) {
28
+ if (parentRange[0] == splitRange[0]) {
29
+ if (parentRange[1] == splitRange[1]) {
30
+ return parentRange;
31
+ } else {
32
+ return [[parentRange[0], splitRange[1]], [splitRange[1], parentRange[1]]];
33
+ }
34
+ }
35
+
36
+ if (parentRange[1] == splitRange[1]) {
37
+ return [[parentRange[0], splitRange[0]], [splitRange[0], parentRange[1]]];
38
+ }
39
+
40
+ return [[parentRange[0], splitRange[0]], [splitRange[0], splitRange[1]], [splitRange[1], parentRange[1]]];
41
+ };
42
+ /** 驱动配置面板渲染 */
43
+
44
+
45
+ var triggerTextConfigRender = function () {
46
+ window.document.dispatchEvent(new Event('text-render', {
47
+ bubbles: false
48
+ }));
49
+ };
50
+ /** 初始化监听事件 */
51
+
52
+
53
+ var initSelectionEvent = function () {
54
+ if (!window.document.onselectionchange) {
55
+ window.document.onselectionchange = debounce(function (e) {
56
+ var _a;
57
+
58
+ var _b, _c, _d, _e;
59
+ /** 找到选中的text区域 并且注册过事件 */
60
+
61
+
62
+ var findSelectionTarget = window._selectionTarget.find(function (_a) {
63
+ var target = _a.target;
64
+ return target == e.target.activeElement;
65
+ });
66
+ /** 所有选中状态清楚 */
67
+
68
+
69
+ var clearSelection = function () {
70
+ store.setState({
71
+ textSelection: null
72
+ });
73
+ triggerTextConfigRender();
74
+ };
75
+
76
+ if (findSelectionTarget) {
77
+ var range = window.getSelection().getRangeAt(0);
78
+ var startOffset = range.startOffset,
79
+ endOffset = range.endOffset,
80
+ startContainer_1 = range.startContainer,
81
+ endContainer = range.endContainer;
82
+ /** 起始点=终点 取消 */
83
+
84
+ if (startOffset == endOffset) {
85
+ clearSelection();
86
+ return;
87
+ }
88
+ /** 如果全部选中 取消 */
89
+
90
+
91
+ if (startOffset == 0 && endOffset == findSelectionTarget.data.text.length) {
92
+ clearSelection();
93
+ return;
94
+ }
95
+ /** 判断起始点和结束点是否相同 */
96
+
97
+
98
+ if (startContainer_1 == endContainer) {
99
+ /** 如果还没有选中区域 */
100
+ if (findSelectionTarget.data.specialContent.length == 0) {
101
+ var nowRange_1 = [startOffset, endOffset].sort(function (a, b) {
102
+ return a - b;
103
+ });
104
+ var rangeList = calcSplitRange([0, findSelectionTarget.data.text.length], nowRange_1);
105
+ findSelectionTarget.data.specialContent = rangeList.map(function (range) {
106
+ return {
107
+ range: range,
108
+ content: {}
109
+ };
110
+ });
111
+ var findSelectionRange = (_b = findSelectionTarget.data.specialContent) === null || _b === void 0 ? void 0 : _b.find(function (c) {
112
+ return JSON.stringify(c.range) == JSON.stringify(nowRange_1);
113
+ });
114
+ store.setState({
115
+ textSelection: findSelectionRange.content
116
+ });
117
+ } else {
118
+ /** 如果已有选中区域 */
119
+ var nowRange_2 = [startOffset, endOffset].sort(function (a, b) {
120
+ return a - b;
121
+ });
122
+ var selectionRangeJSON_1 = Object.keys(findSelectionTarget.selectionRefMap).find(function (rangeTarget) {
123
+ return findSelectionTarget.selectionRefMap[rangeTarget] == startContainer_1.parentNode;
124
+ });
125
+ var findSelectionRangeTarget_1 = (_c = findSelectionTarget.data.specialContent) === null || _c === void 0 ? void 0 : _c.find(function (c) {
126
+ return JSON.stringify(c.range) == selectionRangeJSON_1;
127
+ });
128
+ /** 选中没配置过的区域 可以进行拆分 */
129
+
130
+ if (isEmpty(findSelectionRangeTarget_1.content)) {
131
+ /** 计算偏移值 */
132
+ nowRange_2[0] += findSelectionRangeTarget_1.range[0];
133
+ nowRange_2[1] += findSelectionRangeTarget_1.range[0];
134
+ /** 补充新的选中区域 */
135
+
136
+ if (JSON.stringify(findSelectionRangeTarget_1.range) != JSON.stringify(nowRange_2)) {
137
+ var rangeList = calcSplitRange(findSelectionRangeTarget_1.range, nowRange_2);
138
+ var nowContentIndex = (_d = findSelectionTarget.data.specialContent) === null || _d === void 0 ? void 0 : _d.findIndex(function (c) {
139
+ return c == findSelectionRangeTarget_1;
140
+ });
141
+
142
+ (_a = findSelectionTarget.data.specialContent).splice.apply(_a, __spreadArray([nowContentIndex, 1], rangeList.map(function (range) {
143
+ return {
144
+ range: range,
145
+ content: {}
146
+ };
147
+ }), false));
148
+ }
149
+
150
+ var findSelectionRange = (_e = findSelectionTarget.data.specialContent) === null || _e === void 0 ? void 0 : _e.find(function (c) {
151
+ return JSON.stringify(c.range) == JSON.stringify(nowRange_2);
152
+ });
153
+ store.setState({
154
+ textSelection: findSelectionRange.content
155
+ });
156
+ } else {
157
+ /** 选中已经配置过的区域 不能拆分 */
158
+ store.setState({
159
+ textSelection: findSelectionRangeTarget_1.content
160
+ });
161
+ }
162
+ }
163
+ } else {
164
+ store.setState({
165
+ textSelection: null
166
+ });
167
+ }
168
+
169
+ findSelectionTarget.refresh();
170
+ }
171
+
172
+ triggerTextConfigRender();
173
+ }, 500);
174
+ }
175
+ };
176
+ /** 添加选择区域监听目标 */
177
+
178
+
179
+ var appendSelectionTarget = function (data) {
180
+ if (!window._selectionTarget) {
181
+ window._selectionTarget = [__assign({}, data)];
182
+ } else {
183
+ window._selectionTarget.push(__assign({}, data));
184
+ }
185
+ };
186
+ /** 删除监听目标 */
187
+
188
+
189
+ var deleteSelectionTarget = function (deleteTarget) {
190
+ window._selectionTarget = window._selectionTarget.filter(function (_a) {
191
+ var target = _a.target;
192
+ return target != deleteTarget;
193
+ });
194
+ };
195
+
196
+ var Text =
197
+ /** @class */
198
+ function (_super) {
199
+ __extends(Text, _super);
200
+
201
+ function Text() {
202
+ var _this = _super !== null && _super.apply(this, arguments) || this;
203
+
204
+ _this.state = {};
205
+ /** 分割区域dom映射 */
206
+
207
+ _this.selectionRefMap = {};
208
+ _this.textRef = /*#__PURE__*/React__default.createRef();
209
+ /** 备份历史数据 比对不一致时渲染 */
210
+
211
+ _this.preData = '';
212
+ _this.preTextSelection = null;
213
+ /** 创建关闭图标按钮 */
214
+
215
+ _this.createHoverClose = function (node, onCloseClick) {
216
+ if (onCloseClick === void 0) {
217
+ onCloseClick = function () {};
218
+ }
219
+
220
+ node.className = 'select-container';
221
+ var closeNode = document.createElement('span');
222
+ closeNode.className = 'close-wrap';
223
+ closeNode.contentEditable = 'false';
224
+ var iconNode = document.createElement('span');
225
+ iconNode.contentEditable = 'false';
226
+ iconNode.className = convertIconClass('icon-close-circle');
227
+ iconNode.onclick = onCloseClick;
228
+ closeNode.appendChild(iconNode);
229
+ node.appendChild(closeNode);
230
+ };
231
+
232
+ _this.renderText = function (data) {
233
+ if (!_this.textRef.current) return;
234
+
235
+ _this.textRef.current.blur();
236
+ /** 保留历史数据 */
237
+
238
+
239
+ _this.preData = JSON.stringify(data);
240
+ _this.preTextSelection = store.textSelection;
241
+ _this.preDevice = window.magicDesign.device;
242
+ /** 渲染html */
243
+
244
+ if (data.specialContent.length == 0) {
245
+ _this.textRef.current.innerHTML = data.text;
246
+ } else {
247
+ _this.textRef.current.innerHTML = '';
248
+ data.specialContent.forEach(function (c, index) {
249
+ var _a;
250
+
251
+ var node = document.createElement('span');
252
+ node.style = styleStringify(contentStyle(c.content));
253
+ node.innerText = (_a = data.text).slice.apply(_a, c.range);
254
+ _this.selectionRefMap[JSON.stringify(c.range)] = node;
255
+
256
+ _this.textRef.current.appendChild(node);
257
+ /** 找到当前选中的区域 */
258
+
259
+
260
+ if (store.textSelection == c.content) {
261
+ /** 添加删除按钮 */
262
+ _this.createHoverClose(node, function () {
263
+ /** 第一步去除选中区域 */
264
+ store.setState({
265
+ textSelection: null
266
+ });
267
+ /** 清空区间配置 */
268
+
269
+ data.specialContent[index].content = {};
270
+ /** 合并区间无配置区间 */
271
+
272
+ for (var i = 0; i < data.specialContent.length - 1;) {
273
+ /** 如果本级和下级都是空值 那么合并 */
274
+ if (isEmpty(data.specialContent[i].content) && isEmpty(data.specialContent[i + 1].content)) {
275
+ data.specialContent[i].range = [data.specialContent[i].range[0], data.specialContent[i + 1].range[1]];
276
+ data.specialContent.splice(i + 1, 1);
277
+ } else {
278
+ i += 1;
279
+ }
280
+ }
281
+
282
+ triggerTextConfigRender();
283
+ });
284
+ }
285
+ });
286
+ }
287
+ /** 清除无用的node */
288
+
289
+
290
+ Object.keys(_this.selectionRefMap).forEach(function (key) {
291
+ if (!data.specialContent.find(function (c) {
292
+ return JSON.stringify(c.range) == key;
293
+ })) {
294
+ Reflect.deleteProperty(_this.selectionRefMap, key);
295
+ }
296
+ });
297
+ };
298
+
299
+ return _this;
300
+ }
301
+
302
+ Text.prototype.componentDidMount = function () {
303
+ var _this = this;
304
+
305
+ this.renderText(this.props.data);
306
+ initSelectionEvent();
307
+ appendSelectionTarget({
308
+ target: this.textRef.current,
309
+ data: this.props.data,
310
+ selectionRefMap: this.selectionRefMap,
311
+ refresh: function () {
312
+ _this.renderText(_this.props.data);
313
+ }
314
+ });
315
+ };
316
+
317
+ Text.prototype.shouldComponentUpdate = function (nextProps) {
318
+ var should1 = JSON.stringify(nextProps.data) != this.preData;
319
+ var should2 = store.textSelection != this.preTextSelection;
320
+ var should3 = window.magicDesign.device != this.preDevice;
321
+ var result = should1 || should2 || should3;
322
+
323
+ if (result) {
324
+ this.renderText(nextProps.data);
325
+ }
326
+
327
+ return result;
328
+ };
329
+
330
+ Text.prototype.componentWillUnmount = function () {
331
+ deleteSelectionTarget(this.textRef.current);
332
+ };
333
+
334
+ Text.prototype.render = function () {
335
+ var _this = this;
336
+
337
+ var _a = this.props,
338
+ data = _a.data,
339
+ className = _a.className,
340
+ readonly = _a.readonly,
341
+ onTextInput = _a.onTextInput;
342
+
343
+ var style = __assign(__assign({}, contentStyle(data.content)), {
344
+ textDecorationLine: data.underline.open ? 'underline' : 'none',
345
+ textDecorationColor: data.underline.textDecorationColor,
346
+ textDecorationStyle: data.underline.textDecorationStyle
347
+ });
348
+
349
+ var wrapStyle = computeStyle(data, window.magicDesign.device);
350
+ return /*#__PURE__*/React__default.createElement("div", {
351
+ ref: this.textRef,
352
+ className: classNames('m-meta-text', className),
353
+ contentEditable: isDesignMode() && !readonly,
354
+ onInput: function (e) {
355
+ var text = e.target.textContent;
356
+ data.text = text;
357
+ /** 毁灭吧 累了 */
358
+
359
+ data.specialContent = [];
360
+ /** 主动更新历史数据避免render */
361
+
362
+ _this.preData = JSON.stringify(__assign(__assign({}, JSON.parse(_this.preData)), {
363
+ text: text
364
+ }));
365
+ /** 通知变更 */
366
+
367
+ onTextInput(text);
368
+ },
369
+ onKeyDown: function (e) {
370
+ e.stopPropagation();
371
+ },
372
+ style: __assign(__assign({}, style), wrapStyle),
373
+ suppressContentEditableWarning: true
374
+ });
375
+ };
376
+
377
+ Text.defaultProps = {
378
+ readonly: false,
379
+ onTextInput: function () {}
380
+ };
381
+ Text = __decorate([metaDecorator], Text);
382
+ return Text;
383
+ }(React__default.Component);
384
+
385
+ export { contentStyle, Text as default };
@@ -0,0 +1,4 @@
1
+ import styleInject from '../../../../../node_modules/style-inject/dist/style-inject.es.js';
2
+
3
+ var css_248z = ".index_m-meta-text__4g6d0 {\n display: block;\n}\n.index_m-meta-text__4g6d0 .index_select-container__tUvJE {\n position: relative;\n}\n.index_m-meta-text__4g6d0 .index_select-container__tUvJE .index_close-wrap__IItPw {\n user-select: none;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n border: 1px dashed #cccccc;\n}\n.index_m-meta-text__4g6d0 .index_select-container__tUvJE .index_close-wrap__IItPw .index_magic-box-iconfont__8UEh8 {\n position: absolute;\n top: 0;\n right: 0;\n font-size: 21px;\n transform: translate(50%, -50%);\n color: #ffffff;\n text-shadow: 1px 1px 4px #000;\n}\n.index_m-meta-text__4g6d0 .index_select-container__tUvJE .index_close-wrap__IItPw .index_magic-box-iconfont__8UEh8:hover {\n color: #f46868;\n cursor: pointer;\n}\n";
4
+ styleInject(css_248z);
@@ -0,0 +1,47 @@
1
+ import { __extends } from '../../../../node_modules/tslib/tslib.es6.js';
2
+ import React__default, { Component } from 'react';
3
+ import { renderPreview } from '../../utils/coreUtil.js';
4
+
5
+ var BaseConfig =
6
+ /** @class */
7
+ function (_super) {
8
+ __extends(BaseConfig, _super);
9
+
10
+ function BaseConfig() {
11
+ var _this = _super !== null && _super.apply(this, arguments) || this;
12
+ /**
13
+ *重新渲染展示区域
14
+ */
15
+
16
+
17
+ _this.reRenderViewArea = function () {
18
+ renderPreview();
19
+ };
20
+ /**
21
+ * 重新渲染一级配置面板
22
+ */
23
+
24
+
25
+ _this.reRenderConfig = function () {};
26
+ /**
27
+ * 重新渲染当前面板
28
+ */
29
+
30
+
31
+ _this.selfRender = function () {
32
+ _this.setState({});
33
+
34
+ _this.reRenderViewArea();
35
+ };
36
+
37
+ return _this;
38
+ }
39
+
40
+ BaseConfig.prototype.render = function () {
41
+ return /*#__PURE__*/React__default.createElement("div", null, "BaseMetaComponent");
42
+ };
43
+
44
+ return BaseConfig;
45
+ }(Component);
46
+
47
+ export { BaseConfig as default };