@hailin-zheng/editor-core 1.0.9 → 1.0.13

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 (236) hide show
  1. package/lib/doc-ruler.d.ts +51 -0
  2. package/{src/med_editor/doc-ruler.ts → lib/doc-ruler.js} +73 -100
  3. package/lib/doc-ruler.js.map +1 -0
  4. package/lib/framework/common-util.d.ts +63 -0
  5. package/lib/framework/common-util.js +178 -0
  6. package/lib/framework/common-util.js.map +1 -0
  7. package/lib/framework/document-change.d.ts +265 -0
  8. package/{src/med_editor/framework/document-change.ts → lib/framework/document-change.js} +257 -306
  9. package/lib/framework/document-change.js.map +1 -0
  10. package/lib/framework/document-combine.d.ts +24 -0
  11. package/{src/med_editor/framework/document-combine.ts → lib/framework/document-combine.js} +11 -15
  12. package/lib/framework/document-combine.js.map +1 -0
  13. package/lib/framework/document-comment.d.ts +46 -0
  14. package/{src/med_editor/framework/document-comment.ts → lib/framework/document-comment.js} +37 -52
  15. package/lib/framework/document-comment.js.map +1 -0
  16. package/lib/framework/document-context.d.ts +149 -0
  17. package/{src/med_editor/framework/document-context.ts → lib/framework/document-context.js} +101 -181
  18. package/lib/framework/document-context.js.map +1 -0
  19. package/lib/framework/document-eval-func.d.ts +18 -0
  20. package/{src/med_editor/framework/document-eval-func.ts → lib/framework/document-eval-func.js} +11 -16
  21. package/lib/framework/document-eval-func.js.map +1 -0
  22. package/lib/framework/document-event.d.ts +213 -0
  23. package/{src/med_editor/framework/document-event.ts → lib/framework/document-event.js} +216 -244
  24. package/lib/framework/document-event.js.map +1 -0
  25. package/lib/framework/document-history.d.ts +26 -0
  26. package/{src/med_editor/framework/document-history.ts → lib/framework/document-history.js} +14 -25
  27. package/lib/framework/document-history.js.map +1 -0
  28. package/lib/framework/document-images-loader.d.ts +16 -0
  29. package/{src/med_editor/framework/document-images-loader.ts → lib/framework/document-images-loader.js} +17 -25
  30. package/lib/framework/document-images-loader.js.map +1 -0
  31. package/lib/framework/document-input-cursor.d.ts +78 -0
  32. package/{src/med_editor/framework/document-input-cursor.ts → lib/framework/document-input-cursor.js} +71 -76
  33. package/lib/framework/document-input-cursor.js.map +1 -0
  34. package/lib/framework/document-paint.d.ts +34 -0
  35. package/{src/med_editor/framework/document-paint.ts → lib/framework/document-paint.js} +28 -35
  36. package/lib/framework/document-paint.js.map +1 -0
  37. package/lib/framework/document-print-offscreen.d.ts +38 -0
  38. package/{src/med_editor/framework/document-print-offscreen.ts → lib/framework/document-print-offscreen.js} +19 -25
  39. package/lib/framework/document-print-offscreen.js.map +1 -0
  40. package/lib/framework/document-print.d.ts +60 -0
  41. package/{src/med_editor/framework/document-print.ts → lib/framework/document-print.js} +41 -57
  42. package/lib/framework/document-print.js.map +1 -0
  43. package/lib/framework/document-segmenter.d.ts +2 -0
  44. package/lib/framework/document-segmenter.js +106 -0
  45. package/lib/framework/document-segmenter.js.map +1 -0
  46. package/lib/framework/document-selection.d.ts +89 -0
  47. package/{src/med_editor/framework/document-selection.ts → lib/framework/document-selection.js} +84 -115
  48. package/lib/framework/document-selection.js.map +1 -0
  49. package/lib/framework/document-template.d.ts +4 -0
  50. package/{src/med_editor/framework/document-template.ts → lib/framework/document-template.js} +3 -3
  51. package/lib/framework/document-template.js.map +1 -0
  52. package/lib/framework/document-textline-mode.d.ts +7 -0
  53. package/lib/framework/document-textline-mode.js +30 -0
  54. package/lib/framework/document-textline-mode.js.map +1 -0
  55. package/lib/framework/element-define.d.ts +319 -0
  56. package/{src/med_editor/framework/element-define.ts → lib/framework/element-define.js} +206 -301
  57. package/lib/framework/element-define.js.map +1 -0
  58. package/lib/framework/element-event-define.d.ts +98 -0
  59. package/lib/framework/element-event-define.js +108 -0
  60. package/lib/framework/element-event-define.js.map +1 -0
  61. package/lib/framework/element-measure.d.ts +97 -0
  62. package/{src/med_editor/framework/element-measure.ts → lib/framework/element-measure.js} +121 -143
  63. package/lib/framework/element-measure.js.map +1 -0
  64. package/lib/framework/element-paint.d.ts +42 -0
  65. package/{src/med_editor/framework/element-paint.ts → lib/framework/element-paint.js} +37 -43
  66. package/lib/framework/element-paint.js.map +1 -0
  67. package/lib/framework/element-props.d.ts +301 -0
  68. package/{src/med_editor/framework/element-props.ts → lib/framework/element-props.js} +202 -331
  69. package/lib/framework/element-props.js.map +1 -0
  70. package/lib/framework/element-reader.d.ts +19 -0
  71. package/{src/med_editor/framework/element-reader.ts → lib/framework/element-reader.js} +30 -38
  72. package/lib/framework/element-reader.js.map +1 -0
  73. package/lib/framework/element-render-cut.d.ts +55 -0
  74. package/{src/med_editor/framework/element-render-cut.ts → lib/framework/element-render-cut.js} +106 -113
  75. package/lib/framework/element-render-cut.js.map +1 -0
  76. package/lib/framework/element-serialize.d.ts +30 -0
  77. package/{src/med_editor/framework/element-serialize.ts → lib/framework/element-serialize.js} +24 -37
  78. package/lib/framework/element-serialize.js.map +1 -0
  79. package/lib/framework/element-util.d.ts +369 -0
  80. package/{src/med_editor/framework/element-util.ts → lib/framework/element-util.js} +216 -317
  81. package/lib/framework/element-util.js.map +1 -0
  82. package/lib/framework/impl/checkbox/checkbox-impl.d.ts +24 -0
  83. package/{src/med_editor/framework/impl/checkbox/checkbox-impl.ts → lib/framework/impl/checkbox/checkbox-impl.js} +18 -25
  84. package/lib/framework/impl/checkbox/checkbox-impl.js.map +1 -0
  85. package/lib/framework/impl/comments/comment-content-impl.d.ts +40 -0
  86. package/{src/med_editor/framework/impl/comments/comment-content-impl.ts → lib/framework/impl/comments/comment-content-impl.js} +31 -45
  87. package/lib/framework/impl/comments/comment-content-impl.js.map +1 -0
  88. package/lib/framework/impl/comments/comment-element-impl.d.ts +21 -0
  89. package/{src/med_editor/framework/impl/comments/comment-element-impl.ts → lib/framework/impl/comments/comment-element-impl.js} +18 -21
  90. package/lib/framework/impl/comments/comment-element-impl.js.map +1 -0
  91. package/lib/framework/impl/comments/comments-container-impl.d.ts +22 -0
  92. package/{src/med_editor/framework/impl/comments/comments-container-impl.ts → lib/framework/impl/comments/comments-container-impl.js} +15 -21
  93. package/lib/framework/impl/comments/comments-container-impl.js.map +1 -0
  94. package/lib/framework/impl/comments/comments-util.d.ts +12 -0
  95. package/{src/med_editor/framework/impl/comments/comments-util.ts → lib/framework/impl/comments/comments-util.js} +17 -34
  96. package/lib/framework/impl/comments/comments-util.js.map +1 -0
  97. package/lib/framework/impl/comments/validate-msg-impl.d.ts +21 -0
  98. package/{src/med_editor/framework/impl/comments/validate-msg-impl.ts → lib/framework/impl/comments/validate-msg-impl.js} +15 -26
  99. package/lib/framework/impl/comments/validate-msg-impl.js.map +1 -0
  100. package/lib/framework/impl/data-element/data-decorate-impl.d.ts +30 -0
  101. package/{src/med_editor/framework/impl/data-element/data-decorate-impl.ts → lib/framework/impl/data-element/data-decorate-impl.js} +21 -25
  102. package/lib/framework/impl/data-element/data-decorate-impl.js.map +1 -0
  103. package/lib/framework/impl/data-element/data-element-barcode.d.ts +31 -0
  104. package/{src/med_editor/framework/impl/data-element/data-element-barcode.ts → lib/framework/impl/data-element/data-element-barcode.js} +27 -39
  105. package/lib/framework/impl/data-element/data-element-barcode.js.map +1 -0
  106. package/lib/framework/impl/data-element/data-element-base-impl.d.ts +68 -0
  107. package/{src/med_editor/framework/impl/data-element/data-element-base-impl.ts → lib/framework/impl/data-element/data-element-base-impl.js} +44 -73
  108. package/lib/framework/impl/data-element/data-element-base-impl.js.map +1 -0
  109. package/lib/framework/impl/data-element/data-element-check-impl.d.ts +35 -0
  110. package/{src/med_editor/framework/impl/data-element/data-element-check-impl.ts → lib/framework/impl/data-element/data-element-check-impl.js} +33 -46
  111. package/lib/framework/impl/data-element/data-element-check-impl.js.map +1 -0
  112. package/lib/framework/impl/data-element/data-element-date-impl.d.ts +23 -0
  113. package/{src/med_editor/framework/impl/data-element/data-element-date-impl.ts → lib/framework/impl/data-element/data-element-date-impl.js} +22 -39
  114. package/lib/framework/impl/data-element/data-element-date-impl.js.map +1 -0
  115. package/lib/framework/impl/data-element/data-element-group-impl.d.ts +23 -0
  116. package/{src/med_editor/framework/impl/data-element/data-element-group-impl.ts → lib/framework/impl/data-element/data-element-group-impl.js} +29 -49
  117. package/lib/framework/impl/data-element/data-element-group-impl.js.map +1 -0
  118. package/lib/framework/impl/data-element/data-element-image-impl.d.ts +30 -0
  119. package/{src/med_editor/framework/impl/data-element/data-element-image-impl.ts → lib/framework/impl/data-element/data-element-image-impl.js} +26 -36
  120. package/lib/framework/impl/data-element/data-element-image-impl.js.map +1 -0
  121. package/lib/framework/impl/data-element/data-element-list-impl.d.ts +22 -0
  122. package/{src/med_editor/framework/impl/data-element/data-element-list-impl.ts → lib/framework/impl/data-element/data-element-list-impl.js} +30 -41
  123. package/lib/framework/impl/data-element/data-element-list-impl.js.map +1 -0
  124. package/lib/framework/impl/data-element/data-element-text-impl.d.ts +23 -0
  125. package/{src/med_editor/framework/impl/data-element/data-element-text-impl.ts → lib/framework/impl/data-element/data-element-text-impl.js} +20 -34
  126. package/lib/framework/impl/data-element/data-element-text-impl.js.map +1 -0
  127. package/lib/framework/impl/decorate/fill-null-space-imple.d.ts +21 -0
  128. package/{src/med_editor/framework/impl/decorate/fill-null-space-imple.ts → lib/framework/impl/decorate/fill-null-space-imple.js} +10 -15
  129. package/lib/framework/impl/decorate/fill-null-space-imple.js.map +1 -0
  130. package/lib/framework/impl/document/doc-body-impl.d.ts +27 -0
  131. package/{src/med_editor/framework/impl/document/doc-body-impl.ts → lib/framework/impl/document/doc-body-impl.js} +15 -31
  132. package/lib/framework/impl/document/doc-body-impl.js.map +1 -0
  133. package/lib/framework/impl/document/doc-body-part-impl.d.ts +30 -0
  134. package/{src/med_editor/framework/impl/document/doc-body-part-impl.ts → lib/framework/impl/document/doc-body-part-impl.js} +16 -26
  135. package/lib/framework/impl/document/doc-body-part-impl.js.map +1 -0
  136. package/lib/framework/impl/document/doc-container-impl.d.ts +16 -0
  137. package/lib/framework/impl/document/doc-container-impl.js +21 -0
  138. package/lib/framework/impl/document/doc-container-impl.js.map +1 -0
  139. package/lib/framework/impl/document/doc-footer-impl.d.ts +26 -0
  140. package/{src/med_editor/framework/impl/document/doc-footer-impl.ts → lib/framework/impl/document/doc-footer-impl.js} +18 -29
  141. package/lib/framework/impl/document/doc-footer-impl.js.map +1 -0
  142. package/lib/framework/impl/document/doc-header-impl.d.ts +26 -0
  143. package/{src/med_editor/framework/impl/document/doc-header-impl.ts → lib/framework/impl/document/doc-header-impl.js} +16 -33
  144. package/lib/framework/impl/document/doc-header-impl.js.map +1 -0
  145. package/lib/framework/impl/document/doc-impl.d.ts +61 -0
  146. package/{src/med_editor/framework/impl/document/doc-impl.ts → lib/framework/impl/document/doc-impl.js} +42 -59
  147. package/lib/framework/impl/document/doc-impl.js.map +1 -0
  148. package/lib/framework/impl/media-formula/menstrual-history.d.ts +35 -0
  149. package/{src/med_editor/framework/impl/media-formula/menstrual-history.ts → lib/framework/impl/media-formula/menstrual-history.js} +35 -57
  150. package/lib/framework/impl/media-formula/menstrual-history.js.map +1 -0
  151. package/lib/framework/impl/paragraph/p-impl.d.ts +45 -0
  152. package/{src/med_editor/framework/impl/paragraph/p-impl.ts → lib/framework/impl/paragraph/p-impl.js} +28 -62
  153. package/lib/framework/impl/paragraph/p-impl.js.map +1 -0
  154. package/lib/framework/impl/picture/image-impl.d.ts +31 -0
  155. package/{src/med_editor/framework/impl/picture/image-impl.ts → lib/framework/impl/picture/image-impl.js} +23 -35
  156. package/lib/framework/impl/picture/image-impl.js.map +1 -0
  157. package/lib/framework/impl/radio/radio-impl.d.ts +22 -0
  158. package/{src/med_editor/framework/impl/radio/radio-impl.ts → lib/framework/impl/radio/radio-impl.js} +19 -26
  159. package/lib/framework/impl/radio/radio-impl.js.map +1 -0
  160. package/lib/framework/impl/symbol/br-symbol-impl.d.ts +22 -0
  161. package/{src/med_editor/framework/impl/symbol/br-symbol-impl.ts → lib/framework/impl/symbol/br-symbol-impl.js} +14 -20
  162. package/lib/framework/impl/symbol/br-symbol-impl.js.map +1 -0
  163. package/lib/framework/impl/symbol/p-symbol-impl.d.ts +19 -0
  164. package/{src/med_editor/framework/impl/symbol/p-symbol-impl.ts → lib/framework/impl/symbol/p-symbol-impl.js} +11 -14
  165. package/lib/framework/impl/symbol/p-symbol-impl.js.map +1 -0
  166. package/lib/framework/impl/table/table-cell-impl.d.ts +37 -0
  167. package/{src/med_editor/framework/impl/table/table-cell-impl.ts → lib/framework/impl/table/table-cell-impl.js} +28 -39
  168. package/lib/framework/impl/table/table-cell-impl.js.map +1 -0
  169. package/lib/framework/impl/table/table-impl.d.ts +55 -0
  170. package/{src/med_editor/framework/impl/table/table-impl.ts → lib/framework/impl/table/table-impl.js} +82 -120
  171. package/lib/framework/impl/table/table-impl.js.map +1 -0
  172. package/lib/framework/impl/table/table-row-impl.d.ts +26 -0
  173. package/{src/med_editor/framework/impl/table/table-row-impl.ts → lib/framework/impl/table/table-row-impl.js} +16 -24
  174. package/lib/framework/impl/table/table-row-impl.js.map +1 -0
  175. package/lib/framework/impl/table/table-split-cell-patch.d.ts +20 -0
  176. package/{src/med_editor/framework/impl/table/table-split-cell-patch.ts → lib/framework/impl/table/table-split-cell-patch.js} +22 -31
  177. package/lib/framework/impl/table/table-split-cell-patch.js.map +1 -0
  178. package/lib/framework/impl/table/table-split-cell.d.ts +90 -0
  179. package/{src/med_editor/framework/impl/table/table-split-cell.ts → lib/framework/impl/table/table-split-cell.js} +94 -105
  180. package/lib/framework/impl/table/table-split-cell.js.map +1 -0
  181. package/lib/framework/impl/table/table-util.d.ts +150 -0
  182. package/{src/med_editor/framework/impl/table/table-util.ts → lib/framework/impl/table/table-util.js} +157 -195
  183. package/lib/framework/impl/table/table-util.js.map +1 -0
  184. package/lib/framework/impl/text/text-impl.d.ts +32 -0
  185. package/{src/med_editor/framework/impl/text/text-impl.ts → lib/framework/impl/text/text-impl.js} +32 -46
  186. package/lib/framework/impl/text/text-impl.js.map +1 -0
  187. package/lib/framework/impl/text/track-run-impl.d.ts +27 -0
  188. package/{src/med_editor/framework/impl/text/track-run-impl.ts → lib/framework/impl/text/track-run-impl.js} +28 -51
  189. package/lib/framework/impl/text/track-run-impl.js.map +1 -0
  190. package/lib/framework/notify.d.ts +13 -0
  191. package/{src/med_editor/framework/notify.ts → lib/framework/notify.js} +36 -50
  192. package/lib/framework/notify.js.map +1 -0
  193. package/lib/framework/range-util.d.ts +40 -0
  194. package/{src/med_editor/framework/range-util.ts → lib/framework/range-util.js} +71 -80
  195. package/lib/framework/range-util.js.map +1 -0
  196. package/lib/framework/render-context.d.ts +91 -0
  197. package/{src/med_editor/framework/render-context.ts → lib/framework/render-context.js} +64 -111
  198. package/lib/framework/render-context.js.map +1 -0
  199. package/lib/framework/render-define.d.ts +109 -0
  200. package/{src/med_editor/framework/render-define.ts → lib/framework/render-define.js} +61 -90
  201. package/lib/framework/render-define.js.map +1 -0
  202. package/lib/framework/selection-overlays.d.ts +30 -0
  203. package/{src/med_editor/framework/selection-overlays.ts → lib/framework/selection-overlays.js} +16 -25
  204. package/lib/framework/selection-overlays.js.map +1 -0
  205. package/lib/texteditor.d.ts +318 -0
  206. package/{src/med_editor/texteditor.ts → lib/texteditor.js} +189 -286
  207. package/lib/texteditor.js.map +1 -0
  208. package/lib/util/subject.d.ts +34 -0
  209. package/lib/util/subject.js +88 -0
  210. package/lib/util/subject.js.map +1 -0
  211. package/lib/util/table-bind.d.ts +5 -0
  212. package/{src/med_editor/util/table-bind.ts → lib/util/table-bind.js} +2 -2
  213. package/lib/util/table-bind.js.map +1 -0
  214. package/package.json +2 -2
  215. package/src/med_editor/framework/common-util.ts +0 -200
  216. package/src/med_editor/framework/document-segmenter.ts +0 -211
  217. package/src/med_editor/framework/document-textline-mode.ts +0 -34
  218. package/src/med_editor/framework/element-event-define.ts +0 -141
  219. package/src/med_editor/framework/impl/document/doc-container-impl.ts +0 -24
  220. package/src/med_editor/util/subject.ts +0 -118
  221. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225.json +0 -3573
  222. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225.json +0 -3573
  223. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225bug.json +0 -315
  224. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225/346/211/271/346/263/250.json +0 -122
  225. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225/346/226/207/346/241/243/351/252/214/350/257/201.json +0 -3599
  226. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225/351/225/277/346/226/207/346/234/254.json +0 -24586
  227. package/src/med_editor//345/220/210/345/271/266/347/227/205/347/250/213/345/275/225.json +0 -2874
  228. package/src/med_editor//346/211/213/346/234/257/350/256/260/345/275/225.json +0 -341
  229. package/src/med_editor//346/231/256/351/200/232doc/347/261/273/346/226/207/346/241/243.json +0 -2201
  230. package/src/med_editor//346/243/200/351/252/214/347/224/263/350/257/267/345/215/225.json +0 -1069
  231. package/src/med_editor//347/227/205/347/250/213/345/275/225//345/206/205/351/225/234/344/270/213/346/262/273/347/226/227/350/256/260/345/275/225.json +0 -125
  232. package/src/med_editor//347/227/205/347/250/213/345/275/225//345/220/210/345/271/266/347/227/205/347/250/213/345/275/225/346/250/241/346/235/277.json +0 -86
  233. package/src/med_editor//347/227/205/347/250/213/345/275/225//346/227/245/345/270/270/347/227/205/347/250/213/350/256/260/345/275/225.json +0 -115
  234. package/src/med_editor//347/227/205/347/250/213/345/275/225//346/237/245/346/210/277/350/256/260/345/275/2251.json +0 -108
  235. package/src/med_editor//347/227/205/347/250/213/345/275/225//351/246/226/346/254/241/344/270/212/347/272/247/345/214/273/345/270/210/346/237/245/346/210/277/350/256/260/345/275/225.json +0 -272
  236. package/src/med_editor//351/225/277/346/234/237/345/214/273/345/230/261/345/215/225.json +0 -1070
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-util.js","sourceRoot":"lib/","sources":["framework/element-util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAEH,aAAa,EAEb,WAAW,EAEX,IAAI,EAGP,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAoB,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAC,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACjH,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAyB,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAgB,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAmB,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,eAAe,EAAoB,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAIH,kBAAkB,EAGlB,gBAAgB,EAEnB,MAAM,iBAAiB,CAAC;AAKzB,MAAM,OAAO,WAAW;IAGpB,MAAM,CAAC,cAAc,CAAC,MAAyB,EAAE,GAA6B,EAAE,WAA8C,EAAE,QAAgB,CAAC;QAC7I,2CAA2C;QAC3C,qGAAqG;QACrG,aAAa;QACb,IAAI;QACJ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC;QACtC,IAAI,GAAG,GAAG,MAAM,CAAC,gBAAgB,IAAI,CAAC,CAAC;QACvC,IAAI,KAAK,GAAG,CAAC,EAAE;YACX,GAAG,IAAI,KAAK,CAAC;SAChB;QACD,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QACjD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QACnD,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,GAAG,IAAI,CAAC;QACvC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC;QACzC,MAAM,CAAC,KAAK,GAAG,UAAU,GAAG,GAAG,CAAC;QAChC,MAAM,CAAC,MAAM,GAAG,WAAW,GAAG,GAAG,CAAC;QAClC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,wKAAwK;IAExK,6CAA6C;IAC7C,8CAA8C;IAC9C,uBAAuB;IACvB,wBAAwB;IACxB,QAAQ;IACR,4BAA4B;IAC5B,wDAAwD;IACxD,0DAA0D;IAC1D,uCAAuC;IACvC,yCAAyC;IACzC,2BAA2B;IAC3B,IAAI;IAEJ,MAAM,CAAC,YAAY,CAAC,GAAW,EAAE,QAAgB,CAAC;QAC9C,IAAI,GAAG,GAAG,MAAM,CAAC,gBAAgB,IAAI,CAAC,CAAC;QACvC,IAAI,KAAK,GAAG,CAAC,EAAE;YACX,GAAG,IAAI,KAAK,CAAC;SAChB;QACD,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAA;IACtC,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,IAAsB,EAAE,KAA4B,EAAE,OAAoB;QAC3F,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAC9C;QACD,MAAM,SAAS,GAAG,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;QAC1C,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,YAAY,CAAC;QACtD,SAAS,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC;QAC/D,SAAS,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC;QAC/D,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAChC,IAAI,KAAK,CAAC,UAAU,EAAE;YAClB,SAAS,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;SAC3C;QACD,IAAI,KAAK,CAAC,SAAS,EAAE;YACjB,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;SACzC;QACD,IAAI,KAAK,CAAC,SAAS,EAAE;YACjB,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;SACzC;QACD,IAAI,KAAK,CAAC,WAAW,EAAE;YACnB,SAAS,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;SAC7C;QACD,IAAI,KAAK,CAAC,QAAQ,EAAE;YAChB,SAAS,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;SACvC;QACD,IAAI,KAAK,CAAC,UAAU,EAAE;YAClB,SAAS,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;SAC3C;QACD,IAAI,KAAK,CAAC,WAAW,EAAE;YACnB,SAAS,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;SAC7C;QACD,IAAI,KAAK,CAAC,SAAS,EAAE;YACjB,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;SACzC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,IAAsB,EAAE,KAAuB;QACnE,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,kBAAkB,CAAC,MAAoB,EAAE,YAAoB;QAChE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;QAC3B,OAAO,YAAY,GAAG,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,6BAA6B,CAAC,MAAoB,EAAE,SAAe;QACtE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QACnC,sBAAsB;QACtB,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IACtG,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,wBAAwB,CAAC,MAA6D,EAAE,eAAqB;QAChH,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC;QAC3D,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,QAAQ,IAAI,CAAC,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC;QAChD,IAAI,eAAe,CAAC,SAAS,EAAE;YAC3B,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,eAAe,CAAC,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC;SAC9E;IACL,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,IAAU;QACvB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QACrB,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QACrB,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC/B,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACrC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACnC,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,MAA6D,EAAE,MAAM,GAAG,IAAI;QACzF,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,EAAE;YACzB,OAAO,CAAC,CAAC,CAAC;SACb;QACD,IAAI,MAAM,YAAY,oBAAoB,EAAE;YACxC,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;SACzC;QACD,IAAI,MAAM,YAAY,iBAAiB,EAAE;YACrC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;SACpC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,MAAM,EAAE;gBACR,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;aAC7B;YACD,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YAC/D,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;YACxC,SAAS,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;SAC/E;QACD,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACrC,OAAO,SAAS,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,SAA+B,EAAE,cAAc,GAAG,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,SAAS,CAAC,OAA0B,CAAC;QACpD,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,IAAI,aAAa,GAAG,YAAY,CAAC;QACjC,SAAS;QACT,aAAa,GAAG,aAAa,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QACxD,sBAAsB;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzC,MAAM,EAAE,MAAM,EAAE,GAAsB,UAAU,CAAC,OAAQ,CAAC,KAAK,CAAC;YAChE,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,aAAa,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,KAAK,cAAc,CAAC,EAAE;gBAC1F,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;aAC1C;SACJ;QACD,qBAAqB;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAA0B,CAAC;YAClE,MAAM,WAAW,GAAqB,UAAU,CAAC,OAAO,CAAC;YACzD,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC;YACrC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,KAAK,cAAc,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,aAAa,EAAE;gBAC1F,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;aAC1C;YACD,aAAa;YACb,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;SACtC;QACD,MAAM;QACN,SAAS,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;QAC5C,OAAO,aAAa,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,8BAA8B,CAAC,SAA+B;QACjE,MAAM,MAAM,GAAG,SAAS,CAAC,OAA0B,CAAC;QACpD,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,SAAS;QACT,sBAAsB;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAA0B,CAAC;YAClE,MAAM,iBAAiB,GAAG,IAAI,CAAC,+BAA+B,CAAC,UAAU,CAAC,CAAC;YAC3E,MAAM,EAAE,MAAM,EAAE,GAAsB,UAAU,CAAC,OAAQ,CAAC,KAAK,CAAC;YAChE,IAAI,iBAAiB,GAAG,aAAa,IAAI,MAAM,KAAK,SAAS,EAAE;gBAC3D,aAAa,GAAG,iBAAiB,CAAC;aACrC;SACJ;QACD,OAAO,aAAa,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,+BAA+B,CAAC,UAAiC;QACpE,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACxC,aAAa,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;SACvD;QACD,OAAO,aAAa,CAAC;IACzB,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,iBAAiB,CAAC,MAA6B;QAC1D,MAAM,SAAS,GAAG,MAAM,CAAC,OAA2B,CAAC;QACrD,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC;QACnC,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,KAAK,EAAE;YAC7B,OAAO;SACV;QACD,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;SAC/C;QACD,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,WAAW,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/I,IAAI,WAAW,IAAI,CAAC,EAAE;YAClB,OAAO;SACV;QACD,IAAI,CAAC,GAAG,WAAW,CAAC;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAC9B,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;SACvC;IACL,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,mBAAmB,CAAC,QAA2B;QAClD,mDAAmD;QACnD,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACtC,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAyB,CAAC;YACzD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACjC,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAA0B,CAAC;gBAC5D,MAAM,GAAG,GAAG,UAAU,CAAC,OAA2B,CAAC;gBACnD,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC;gBAC7B,IAAI,MAAM,KAAK,SAAS,EAAE;oBACtB,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;oBAChC,MAAM,YAAY,GAAG,IAAI,CAAC,2BAA2B,CAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;oBAC7E,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;wBACtB,4DAA4D;wBAC5D,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE;4BAC1C,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;4BAC/B,UAAU,GAAG,IAAI,CAAC;yBACrB;wBACD,SAAS;qBACZ;oBACD,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;oBAC1F,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC;oBACrF,mBAAmB;oBACnB,IAAI,cAAc,GAAG,CAAC,EAAE;wBACpB,MAAM,OAAO,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBACtD,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,cAAc,CAAC;wBACtC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;wBAClC,UAAU,GAAG,IAAI,CAAC;qBACrB;yBAAM;wBACH,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC;qBACjE;iBACJ;aACJ;SACJ;QACD,IAAI,UAAU,EAAE;YACZ,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACnC,OAAO;SACV;IACL,CAAC;IAED;;;;;;OAMG;IACK,MAAM,CAAC,2BAA2B,CAAC,MAAyB,EAAE,QAAgB,EAAE,QAAgB;QACpG,MAAM,IAAI,GAAgC,EAAE,CAAC;QAC7C,KAAK,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/C,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAyB,CAAC;YAC7D,MAAM,MAAM,GAAG,SAAS,CAAC,OAA0B,CAAC;YACpD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAqB,CAAC;YAC1D,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC;YAC7B,IAAI,MAAM,KAAK,UAAU,EAAE;gBACvB,MAAM;aACT;YACD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACxB;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,6BAA6B,CAAC,EAAgB,EAAE,QAAgB,EAAE,QAAgB;QACrF,MAAM,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAoB,CAAC;QACrD,KAAK,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAqB,CAAC;YACjD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE;gBACjC,OAAO,CAAC,CAAC;aACZ;SACJ;QACD,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,2BAA2B,CAAC,EAAgB,EAAE,QAAgB,EAAE,QAAgB;QACnF,KAAK,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAoB,CAAC;YAC9C,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAqB,CAAC;YACxD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE;gBACjC,OAAO,CAAC,CAAC;aACZ;SACJ;QACD,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACrC,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,sBAAsB,CAAC,EAAgB,EAAE,QAAgB,EAAE,QAAgB;QAC9E,MAAM,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAoB,CAAC;QACrD,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAqB,CAAC;QACxD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE;YAClC,MAAM,gBAAgB,GAAG,IAAI,CAAC,6BAA6B,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;SACtE;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE;YAClC,MAAM,eAAe,GAAG,IAAI,CAAC,2BAA2B,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACjF,OAAO,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;SACrE;QACD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;IACjC,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,mBAAmB,CAAC,GAAyB;QACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;SACtC;IACL,CAAC;IAGD;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,OAAgB;QACnC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,MAAM,EAAE;YACR,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YACjC,IAAI,OAAO,GAAG,CAAC,CAAC;YAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;gBAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACjC,OAAO,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;aACpC;YACD,OAAO,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;SACjD;aAAM;YACH,OAAO,CAAC,CAAC;SACZ;IACL,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAgB,EAAE,OAA6C;QACpF,OAAO,CAAC,SAAS,EAAE,CAAC;QACpB,IAAI,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,KAAK,EAAE;YACrC,OAAO,OAAO,CAAC;SAClB;QACD,IAAI,OAAO,YAAY,WAAW,EAAE;YAChC,OAAO,IAAI,CAAC;SACf;aAAM,IAAI,OAAO,YAAY,aAAa,EAAE;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACrC,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;gBACjE,IAAI,GAAG,EAAE;oBACL,OAAO,GAAG,CAAC;iBACd;aACJ;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,qBAAqB,CAAC,OAAgB;QACzC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,IAAI,CAAC;SACf;QACD,IAAI,MAAM,EAAE;YACR,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,KAAK,GAAG,CAAC,EAAE;gBACX,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;aACrC;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,qBAAqB,CAAC,OAAgB;QACzC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,IAAI,CAAC;SACf;QACD,IAAI,MAAM,EAAE;YACR,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3B,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;aACpC;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,0BAA0B,CAAC,OAAgB,EAAE,IAAsB,EAAE,MAAc;QACtF,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,cAAc,YAAY,eAAe,EAAE;YAC3C,IAAI,cAAc,CAAC,IAAI,KAAK,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE;gBACxE,OAAO,cAAc,CAAC;aACzB;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,0BAA0B,CAAC,OAAgB,EAAE,IAAsB,EAAE,MAAc;QACtF,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,cAAc,YAAY,eAAe,EAAE;YAC3C,IAAI,cAAc,CAAC,IAAI,KAAK,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE;gBACxE,OAAO,cAAc,CAAC;aACzB;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,SAAoB;QACvC,MAAM,IAAI,GAAG,IAAI,gBAAgB,EAAE,CAAA;QACnC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAsB,EAAE,WAAwB;QACnE,MAAM,SAAS,GAAG,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;QAC1C,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC,eAAe,CAAC;QACjD,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC,eAAe,CAAC;QACjD,SAAS,CAAC,KAAK,GAAG,WAAW,CAAC,YAAY,CAAC;QAC3C,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,4BAA4B,CAAC,MAAoB,EAAE,MAAgB;QACtE,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE;YACnC,OAAO,EAAE,CAAC;SACb;QACD,MAAM,gBAAgB,GAAS;YAC3B,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK;YACxB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM;YAC1B,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,CAAC;SACf,CAAC;QACF,MAAM,KAAK,GAAoD,EAAE,CAAC;QAClE,IAAI,MAAM,YAAY,kBAAkB,EAAE;YACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACjC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aAC7G;SACJ;aAAM,IAAI,MAAM,YAAY,gBAAgB,EAAE;YAC3C,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;SAC1D;aAAM;YACH,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;SAC1B;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,wBAAwB,CAAC,MAAoB,EAAE,MAAgB;QAClE,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE;YACnC,OAAO,EAAE,CAAC;SACb;QACD,MAAM,gBAAgB,GAAS,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChF,MAAM,KAAK,GAAgD,EAAE,CAAC;QAC9D,IAAI,MAAM,YAAY,kBAAkB,EAAE;YACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACjC,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE;oBACjC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,2BAA2B,CAAC,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAA;iBAEjG;aACJ;SACJ;aAAM,IAAI,MAAM,YAAY,gBAAgB,EAAE;YAC3C,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;SAC1D;aAAM;YACH,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;SAC1B;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAAC,MAAoB,EAAE,MAAgB;QACrE,MAAM,gBAAgB,GAAS;YAC3B,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK;YACxB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM;YAC1B,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,CAAC;SACf,CAAC;QACF,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAGD;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAoB;QAC3C,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE;YAC/C,OAAO,KAAK,CAAC;SAChB;QACD,IAAI,MAAM,YAAY,oBAAoB,EAAE;YACxC,MAAM,MAAM,GAAG,MAAM,CAAC,OAA0B,CAAC;YACjD,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE;gBACxB,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACpD;SACJ;QACD,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,aAAa,CAAC,aAA6C;QAC9D,IAAI,CAAC,aAAa,EAAE;YAChB,OAAO,KAAK,CAAC;SAChB;QACD,MAAM,OAAO,GAAG,WAAW,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;QAC7D,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,KAAK,CAAC,YAAY,EAAE;gBACpB,OAAO,KAAK,CAAC;aAChB;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAU,EAAE,CAAW;QAC5C,MAAM,KAAK,GAAgC,EAAE,CAAC;QAC9C,KAAK,CAAC,IAAI,CAAC;YACP,CAAC,EAAE;gBACC,CAAC,EAAE,IAAI,CAAC,CAAC;gBACT,CAAC,EAAE,IAAI,CAAC,CAAC;aACZ;YACD,CAAC,EAAE;gBACC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK;gBACtB,CAAC,EAAE,IAAI,CAAC,CAAC;aACZ;SACJ,EAAE;YACC,CAAC,EAAE;gBACC,CAAC,EAAE,IAAI,CAAC,CAAC;gBACT,CAAC,EAAE,IAAI,CAAC,CAAC;aACZ;YACD,CAAC,EAAE;gBACC,CAAC,EAAE,IAAI,CAAC,CAAC;gBACT,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM;aAC1B;SACJ,EAAE;YACC,CAAC,EAAE;gBACC,CAAC,EAAE,IAAI,CAAC,CAAC;gBACT,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM;aAC1B;YACD,CAAC,EAAE;gBACC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK;gBACtB,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM;aAC1B;SACJ,EAAE;YACC,CAAC,EAAE;gBACC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK;gBACtB,CAAC,EAAE,IAAI,CAAC,CAAC;aACZ;YACD,CAAC,EAAE;gBACC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK;gBACtB,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM;aAC1B;SACJ,CAAC,CAAA;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACxE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,CAAO,EAAE,CAAO,EAAE,CAAO;QAExC,MAAM,EAAE,GAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QAE/C,MAAM,EAAE,GAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAEhD,MAAM,EAAE,GAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QAE/C,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAE1C,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,IAAI,KAAK,GAAG,CAAC,EAAE;YACX,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;SACrC;aAAM,IAAI,KAAK,GAAG,CAAC,EAAE;YAClB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;SACrC;aAAM;YACH,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;YAChB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;YAChB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;YAChB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;YAChB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;YACzC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;SAC9C;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAoB;QACxC,IAAI,MAAM,EAAE;YACR,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;SAC5D;aAAM;YACH,OAAO,EAAE,CAAC;SACb;IACL,CAAC;IAED,MAAM,CAAC,oBAAoB,CAAC,MAAoB;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,CAAC,eAAe,CAA+B,KAAmB,EAAE,UAAoC;QAC1G,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,IAAI,CAAC;SACf;QACD,IAAI,KAAK,YAAY,UAAU,EAAE;YAC7B,OAAO,KAAK,CAAC;SAChB;aAAM;YACH,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;SACzD;IACL,CAAC;IAED,MAAM,CAAC,0BAA0B,CAAC,KAAmB,EAAE,SAA0C;QAC7F,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,IAAI,CAAC;SACf;QACD,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;YAClB,OAAO,KAAK,CAAC;SAChB;aAAM;YACH,OAAO,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;SACnE;IACL,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAmC;QACxD,IAAI,OAAO,EAAE;YACT,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;SAC/D;aAAM;YACH,OAAO,EAAE,CAAC;SACb;IACL,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CAAC,OAAgB,EAAE,YAAiD,IAAI;QAC7F,IAAI,OAAO,YAAY,WAAW,IAAI,CAAC,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE;YACtE,OAAO,OAAO,CAAC;SAClB;aAAM,IAAI,OAAO,YAAY,aAAa,EAAE;YACzC,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;gBACnE,IAAI,GAAG,EAAE;oBACL,OAAO,GAAG,CAAC;iBACd;aACJ;YACD,OAAO,IAAI,CAAC;SACf;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD;;;;OAIG;IACH,MAAM,CAAC,mBAAmB,CAAC,OAAgB;QACvC,IAAI,OAAO,YAAY,WAAW,EAAE;YAChC,OAAO,OAAO,CAAC;SAClB;aAAM,IAAI,OAAO,YAAY,aAAa,EAAE;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACrC,MAAM,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1D,IAAI,GAAG,EAAE;oBACL,OAAO,GAAG,CAAC;iBACd;aACJ;YACD,OAAO,IAAI,CAAC;SACf;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,iBAAiB,CAAC,QAAiB,EAAE,QAAiB;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAC9D,OAAO,IAAI,KAAK,IAAI,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,UAAsB;QACzC,QAAQ,UAAU,EAAE;YAChB,KAAK,MAAM;gBACP,OAAO,MAAM,CAAC;YAClB,KAAK,KAAK;gBACN,OAAO,YAAY,CAAC;YACxB,KAAK,MAAM;gBACP,OAAO,YAAY,CAAC;YACxB,KAAK,OAAO;gBACR,OAAO,YAAY,CAAC;YACxB,KAAK,QAAQ;gBACT,OAAO,YAAY,CAAA;YACvB,KAAK,aAAa,CAAC;YACnB,KAAK,cAAc;gBACf,OAAO,UAAU,CAAC;YACtB,KAAK,YAAY,CAAC;YAClB,KAAK,eAAe;gBAChB,OAAO,UAAU,CAAC;YACtB,KAAK,UAAU,CAAC;YAChB,KAAK,cAAc;gBACf,OAAO,WAAW,CAAC;YACvB,KAAK,WAAW,CAAC;YACjB,KAAK,aAAa;gBACd,OAAO,WAAW,CAAC;YACvB;gBACI,OAAO,MAAM,CAAC;SACrB;IACL,CAAC;IAED,MAAM,CAAC,eAAe,CAAuB,KAAe,EAAE,UAAoC;QAC9F,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,IAAI,CAAC;SACf;QACD,IAAI,KAAK,YAAY,UAAU,EAAE;YAC7B,OAAO,KAAK,CAAC;SAChB;aAAM;YACH,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;SACzD;IACL,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,KAAqB,EAAE,SAAqC;QACzE,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,IAAI,CAAC;SACf;QACD,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;YAClB,OAAO,KAAK,CAAC;SAChB;aAAM;YACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;SAClD;IACL,CAAC;IAGD;;;OAGG;IACH,MAAM,CAAC,mBAAmB,CAAC,OAAyB;QAChD,oBAAoB;QACpB,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,YAAY,cAAc,CAAC,EAAE;YACnE,OAAO,CAAC,QAAQ,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC;SAC1C;QACD,MAAM,KAAK,GAA0B,EAAE,CAAC;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,KAAK,YAAY,cAAc,EAAE;gBACjC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACrB;SACJ;QACD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACjB,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAA8B;QACnD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,IAAI,OAAO,YAAY,gBAAgB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC,EAAE;gBACrH,OAAO;aACV;YACD,IAAI,OAAO,CAAC,WAAW,EAAE;gBACrB,OAAO;aACV;YACD,OAAO,CAAC,QAAQ,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC;SAC5C;IACL,CAAC;IAGD;;;;;;;OAOG;IACH,MAAM,CAAC,yBAAyB,CAAC,MAAoB,EAAE,SAA0B,IAAI;QACjF,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAClC,MAAM,OAAO,GAAa,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC;QACvF,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAChB,OAAO,OAAO,CAAC;SAClB;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,CAAC,0BAA0B,CAAC,MAAoB,EAAE,WAA4B,IAAI;QACpF,MAAM,GAAG,GAAG,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC7D,OAAO,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IACvG,CAAC;IAMD;;;;OAIG;IACH,MAAM,CAAC,qBAAqB,CAAC,KAA4B;QACrD,IAAI,KAAK,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,YAAY,gBAAgB,EAAE;YACjF,OAAO,KAAK,CAAC;SAChB;aAAM;YACH,OAAO,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;SAChE;IACL,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,oBAAoB,CAAC,KAA4B;QACpD,IAAI,KAAK,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,YAAY,gBAAgB,EAAE;YACjF,OAAO,KAAK,CAAC;SAChB;aAAM;YACH,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;SAC/F;IACL,CAAC;IAGD;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,KAA4B,EAAE,QAAiB,EAAE,YAAyC,OAAO;QAC/G,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,KAAK,CAAC;QACnF,IAAI,cAAc,EAAE;YAChB,2BAA2B;YAC3B,IAAI,SAAS,KAAK,MAAM,IAAI,MAAM,CAAC,UAAU,EAAE;gBAC3C,OAAO,IAAI,CAAC;aACf;YACD,MAAM,KAAK,GAAG,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACnE,IAAI,QAAQ,EAAE;gBACV,MAAM,CAAC,MAAM,EAAE,CAAC;aACnB;YACD,OAAO,KAAK,CAAC;SAChB;aAAM;YACH,IAAI,MAAM,YAAY,WAAW,EAAE;gBAC/B,IAAI,MAAM,YAAY,gBAAgB,IAAI,WAAW,KAAK,SAAS,EAAE;oBACjE,IAAI,QAAQ,EAAE;wBACV,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;wBACnE,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;4BAC1B,MAAM,CAAC,MAAM,EAAE,CAAC;yBACnB;wBACD,OAAO,UAAU,CAAC;qBACrB;yBAAM;wBACH,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;wBACpE,OAAO,UAAU,CAAC;qBACrB;iBACJ;gBACD,OAAO,IAAI,CAAC;aACf;iBAAM,IAAI,MAAM,YAAY,aAAa,EAAE;gBACxC,MAAM,KAAK,GAAmB,EAAE,CAAC;gBACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;oBAC5E,IAAI,SAAS,EAAE;wBACX,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;qBACzB;iBACJ;gBACD,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;oBACf,OAAO,IAAI,CAAC;iBACf;qBAAM;oBACH,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAkB,CAAC;oBACxD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;wBACjB,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;oBAC7B,CAAC,CAAC,CAAC;oBACH,OAAO,UAAU,CAAC;iBACrB;aACJ;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,mBAAmB,CAAC,SAAwB;QAC/C,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;SACrC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,8BAA8B,CAAC,WAA2B,EAAE,SAAkB,KAAK,EAAE,YAAqB,KAAK;QAClH,MAAM,MAAM,GAAG,WAAW,EAAE,MAAM,CAAC;QACnC,wCAAwC;QACxC,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,CAAC,aAAa,IAAI,CAAC,CAAC,WAAW,YAAY,eAAe,CAAC,CAAC,EAAE;YACtG,OAAO,IAAI,CAAC;SACf;QACD,mBAAmB;QACnB,IAAI,MAAM,YAAY,sBAAsB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE;YACpE,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;SACzE;QACD,IAAI,SAAS,IAAI,MAAM,CAAC,YAAY,EAAE;YAClC,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;SACzE;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,EAAE;YACR,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,GAAG,EAAE;gBAC/B,OAAO,IAAI,CAAC;aACf;YACD,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;SACzE;aAAM;YACH,IAAI,WAAW,GAAmB,IAAI,CAAC;YACvC,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjC,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACjC,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;oBAC1C,MAAM;iBACT;aACJ;YACD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,YAAY,EAAE;gBAC1C,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;aACzE;YACD,MAAM,eAAe,GAAG,WAAW,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YACpE,QAAQ;YACR,IAAI,SAAS,IAAI,eAAe,IAAI,eAAe,CAAC,YAAY,EAAE;gBAC9D,OAAO,IAAI,CAAC,8BAA8B,CAAC,eAAe,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;aAClF;YACD,IAAI,eAAe,EAAE;gBACjB,OAAO,eAAe,CAAC;aAC1B;iBAAM;gBACH,OAAO,IAAI,CAAC,8BAA8B,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;aACrF;SACJ;IACL,CAAC;IAGD;;;OAGG;IACH,MAAM,CAAC,kBAAkB,CAAC,GAAkB,EAAE,WAAmC;QAC7E,MAAM,OAAO,GAAG,GAAG,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,sBAAsB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,sBAAsB,CAAkC,CAAC;QAChK,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,KAAK,GAAG,CAAC,EAAE;YACX,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE;oBACvD,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;iBACrB;aACJ;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM;IACN,mBAAmB;IACnB,KAAK;IACL,iGAAiG;IACjG,0CAA0C;IAC1C,WAAW;IACX,kEAAkE;IAClE,wCAAwC;IACxC,kBAAkB;IAClB,IAAI;IAEJ,MAAM;IACN,uBAAuB;IACvB,KAAK;IACL,iGAAiG;IACjG,0CAA0C;IAC1C,qCAAqC;IACrC,uBAAuB;IACvB,QAAQ;IACR,uDAAuD;IACvD,oBAAoB;IACpB,qCAAqC;IACrC,2BAA2B;IAC3B,YAAY;IACZ,oEAAoE;IACpE,eAAe;IACf,0DAA0D;IAC1D,+EAA+E;IAC/E,iCAAiC;IACjC,sCAAsC;IACtC,mBAAmB;IACnB,qFAAqF;IACrF,YAAY;IACZ,QAAQ;IACR,IAAI;IAEJ,MAAM;IACN,0BAA0B;IAC1B,KAAK;IACL,uGAAuG;IACvG,0CAA0C;IAC1C,WAAW;IACX,wEAAwE;IACxE,wCAAwC;IACxC,kBAAkB;IAClB,IAAI;IAGJ;;OAEG;IACH,MAAM,CAAC,8BAA8B,CAAC,WAA2B,EAAE,SAAkB,KAAK,EAAE,YAAqB,KAAK;QAClH,MAAM,MAAM,GAAG,WAAW,EAAE,MAAM,CAAC;QACnC,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE;YACvD,OAAO,IAAI,CAAC;SACf;QACD,mBAAmB;QACnB,IAAI,MAAM,YAAY,sBAAsB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE;YACpE,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;SACzE;QACD,IAAI,SAAS,IAAI,MAAM,CAAC,YAAY,EAAE;YAClC,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;SACzE;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,KAAK,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,GAAG,EAAE;gBAC/B,OAAO,IAAI,CAAC;aACf;YACD,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;SACzE;aAAM;YACH,IAAI,WAAW,GAAmB,IAAI,CAAC;YACvC,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC5C,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACjC,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;oBAC1C,MAAM;iBACT;aACJ;YACD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,YAAY,EAAE;gBAC1C,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;aACzE;YACD,MAAM,eAAe,GAAG,WAAW,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YACrE,QAAQ;YACR,IAAI,SAAS,IAAI,eAAe,IAAI,eAAe,CAAC,YAAY,EAAE;gBAC9D,OAAO,IAAI,CAAC,8BAA8B,CAAC,eAAe,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;aAClF;YACD,IAAI,eAAe,EAAE;gBACjB,OAAO,eAAe,CAAC;aAC1B;iBAAM;gBACH,OAAO,IAAI,CAAC,8BAA8B,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;aACrF;SACJ;IACL,CAAC;IAGD,MAAM;IACN,uBAAuB;IACvB,KAAK;IACL,iGAAiG;IACjG,0CAA0C;IAC1C,qCAAqC;IACrC,uBAAuB;IACvB,QAAQ;IACR,uDAAuD;IACvD,yCAAyC;IACzC,qCAAqC;IACrC,2BAA2B;IAC3B,YAAY;IACZ,oEAAoE;IACpE,eAAe;IACf,0DAA0D;IAC1D,gFAAgF;IAChF,iCAAiC;IACjC,sCAAsC;IACtC,mBAAmB;IACnB,oFAAoF;IACpF,YAAY;IACZ,QAAQ;IACR,IAAI;IAEJ,MAAM;IACN,0BAA0B;IAC1B,KAAK;IACL,uGAAuG;IACvG,0CAA0C;IAC1C,WAAW;IACX,wEAAwE;IACxE,wCAAwC;IACxC,kBAAkB;IAClB,IAAI;IAEJ,MAAM;IACN,0BAA0B;IAC1B,KAAK;IACL,iGAAiG;IACjG,0CAA0C;IAC1C,WAAW;IACX,kEAAkE;IAClE,wCAAwC;IACxC,kBAAkB;IAClB,IAAI;IAEJ;;;;OAIG;IACH,MAAM,CAAC,mBAAmB,CAAC,GAAyB;QAChD,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;gBACzC,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;aAC3C;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAGD;;;OAGG;IACH,MAAM,CAAC,iBAAiB,CAAC,GAAuB;QAC5C,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YAClB,MAAM,WAAW,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,WAAW,YAAY,qBAAqB,EAAE;gBAC9C,IAAuB,CAAC,WAAW,CAAC,OAAO,CAAE,CAAC,MAAM,KAAK,CAAC,EAAE;oBACxD,OAAO,IAAI,CAAC;iBACf;aACJ;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,0BAA0B,CAAC,MAA+B;QAC7D,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAChB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;gBAC9B,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;aAChC;YACD,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;SACxB;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;SAC9C;QACD,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,WAAyB,EAAE,cAAwB;QACrE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;QAClC,MAAM,IAAI,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,IAAI,MAAM,YAAY,6BAA6B,EAAE;YACjD,OAAO,IAAI,CAAC;SACf;aAAM;YACH,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SAC5C;IACL,CAAC;IAGD,MAAM,CAAC,kBAAkB,CAAC,YAA0B,EAAE,WAAyB,EAAE,cAAwB;QACrG,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;QAClC,MAAM,IAAI,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,IAAI,MAAM,KAAK,YAAY,EAAE;YACzB,OAAO,IAAI,CAAC;SACf;aAAM;YACH,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;SAC9D;IACL,CAAC;IAGD;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,MAAoB;QAC7C,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,SAAS,CAAC;SACpB;QACD,IAAI,MAAM,CAAC,OAAO,EAAE;YAChB,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;SAChD;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,OAAgB;QACpC,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAC1D,OAAO,YAAY,EAAE,IAAI,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,sBAAsB,CAAC,OAAuB;QACjD,IAAI,CAAC,OAAO,EAAE;YACV,OAAO,IAAI,CAAC;SACf;QACD,IAAI,OAAO,YAAY,mBAAmB,EAAE;YACxC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;SAC5C;QACD,IAAI,OAAO,YAAY,qBAAqB,EAAE;YAC1C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;SAC9C;QACD,IAAI,OAAO,YAAY,qBAAqB,EAAE;YAC1C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;SAC9C;QACD,IAAI,OAAO,YAAY,qBAAqB,EAAE;YAC1C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;SAC7C;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,UAAiC,EAAE,CAAS;QACnE,MAAM,GAAG,GAAG,UAAU,CAAC,OAA2B,CAAC;QACnD,MAAM,SAAS,GAAG,WAAW,CAAC,eAAe,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;QAChF,IAAI,CAAC,SAAS,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;SACvC;QACD,MAAM,eAAe,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,EAAE,oBAAoB,CAAC,KAAK,SAAS,CAAC,CAAC;QAC/H,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAA0B,CAAC;YAC3D,IAAI,MAAM,KAAK,UAAU,EAAE;gBACvB,KAAK,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;aACvC;iBAAM;gBACH,IAAI,IAAI,GAAG,CAAC,CAAC;gBACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACjD,IAAI,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,EAAE;wBAC/C,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE;4BAC9D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gCAClB,CAAC,IAAI,GAAG,CAAC;6BACZ;yBACJ;6BAAM;4BACH,CAAC,IAAI,CAAC,CAAC;yBACV;wBACD,OAAO,CAAC,GAAG,KAAK,CAAC;qBACpB;oBACD,IAAI,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;iBAC7C;gBACD,OAAO,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;aAC7C;SACJ;QACD,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,MAAwB,EAAE,CAAS;QACzD,IAAI,MAAM,YAAY,qBAAqB,EAAE;YACzC,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;SAC9C;aAAM;YACH,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;gBAClD,OAAO,CAAC,CAAC;aACZ;YACD,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC/C;IACL,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,UAAiC,EAAE,WAAmB,EAAE,SAAiB;QAC9F,MAAM,OAAO,GAAG,UAAU,CAAC,OAA2B,CAAC;QACvD,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClD,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAA0B,CAAC;YACrE,IAAI,WAAW,KAAK,UAAU,EAAE;gBAC5B,KAAK,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;aAC5C;iBAAM;gBACH,IAAI,KAAK,GAAG,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,WAAW,EAAE;oBACvD,SAAS;iBACZ;gBACD,IAAI,KAAK,GAAG,SAAS,EAAE;oBACnB,SAAS;iBACZ;gBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACtD,IAAI,SAAS,KAAK,KAAK,GAAG,CAAC,EAAE;wBACzB,MAAM;qBACT;oBACD,IAAI,KAAK,GAAG,CAAC,KAAK,WAAW,EAAE;wBAC3B,MAAM,GAAG,IAAI,CAAC;qBACjB;oBACD,IAAI,IAAI,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;iBAClD;aACJ;SACJ;QACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,GAAgB;QACvC,IAAI,GAAG,YAAY,gBAAgB,EAAE;YACjC,OAAO,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC;SAClC;QACD,OAAO,CAAC,CAAC;IACb,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CAAC,GAAgB,EAAE,MAAc;QACtD,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAyB,GAAuB;QAClE,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAM,CAAC,CAAC;SACpC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,IAA2B;QAC/C,MAAM,KAAK,GAAyC,EAAE,CAAC;QACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAA0B,CAAC;YACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAClC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAkC,CAAC,CAAA;aAChE;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,IAAY;QAC9B,IAAI,OAAO,GAAG,kBAAkB,CAAC;QACjC,IAAI,KAAK,GAAG,GAAG,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAC/D;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAGD,MAAM,CAAC,aAAa,CAAC,IAAY;QAC7B,OAAO,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9E,CAAC;IAGD,MAAM,CAAC,eAAe,CAAC,MAA0B,EAAE,SAA2C;QAC1F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,IAAI,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC/B,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;aAC7B;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,MAAM,CAAC,cAAc,CAAC,GAAY;QAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,sBAAsB,CAA2B,CAAC;IACzG,CAAC;CACJ"}
@@ -0,0 +1,24 @@
1
+ import { ElementFactory, LeafElement, readElementProps, SerializeProps, ViewOptions } from "../../element-define";
2
+ import { CheckBoxProps } from "../../element-props";
3
+ import { RenderContenxtType } from "../../render-context";
4
+ import { LeafRenderObject, RenderObject } from "../../render-define";
5
+ import { ElementEvent } from "../../element-event-define";
6
+ export declare class CheckBoxElement extends LeafElement<CheckBoxProps> {
7
+ constructor();
8
+ createRenderObject(): CheckBoxRenderObject;
9
+ changeState(e: ElementEvent): void;
10
+ serialize(viewOptions: ViewOptions): SerializeProps;
11
+ clone(): CheckBoxElement;
12
+ getType(): string;
13
+ }
14
+ export declare class CheckBoxFactory extends ElementFactory<CheckBoxProps> {
15
+ match(type: string): boolean;
16
+ createElement(data: readElementProps<CheckBoxProps>, renderCtx: RenderContenxtType): CheckBoxElement;
17
+ }
18
+ export declare class CheckBoxRenderObject extends LeafRenderObject<CheckBoxElement> {
19
+ render(ctx: RenderContenxtType, position: {
20
+ x: number;
21
+ y: number;
22
+ }): void;
23
+ clone(cloneData?: boolean): RenderObject;
24
+ }
@@ -1,53 +1,47 @@
1
- import { ElementFactory, LeafElement, readElementProps, SerializeProps, ViewOptions } from "../../element-define";
1
+ import { ElementFactory, LeafElement } from "../../element-define";
2
2
  import { CheckBoxProps } from "../../element-props";
3
3
  import { ElementUtil } from "../../element-util";
4
- import { RenderContenxtType } from "../../render-context";
5
- import { LeafRenderObject, RenderObject } from "../../render-define";
6
- import { ElementEvent } from "../../element-event-define";
7
-
8
- export class CheckBoxElement extends LeafElement<CheckBoxProps> {
4
+ import { LeafRenderObject } from "../../render-define";
5
+ export class CheckBoxElement extends LeafElement {
9
6
  //props: CheckBoxProps;
10
7
  constructor() {
11
8
  super('ckb');
12
9
  this.props = new CheckBoxProps();
13
10
  //this.addPropValueChangedSub(this.props);
14
- this.cursorType = 'default'
15
- this.addEvent('ElementClick', (evt) => { this.changeState(evt) });
11
+ this.cursorType = 'default';
12
+ this.addEvent('ElementClick', (evt) => { this.changeState(evt); });
16
13
  }
17
- createRenderObject(): CheckBoxRenderObject {
14
+ createRenderObject() {
18
15
  const render = new CheckBoxRenderObject(this);
19
16
  render.rect.width = this.props.size + 4;
20
17
  render.rect.height = this.props.size;
21
18
  return render;
22
19
  }
23
-
24
- changeState(e: ElementEvent): void {
20
+ changeState(e) {
25
21
  this.props.isChecked = !this.props.isChecked;
26
22
  }
27
-
28
- serialize(viewOptions: ViewOptions): SerializeProps {
23
+ serialize(viewOptions) {
29
24
  return {
30
25
  type: 'ckb',
31
26
  props: {
32
27
  ...this.props.getSerializeProps(viewOptions)
33
28
  }
34
- }
29
+ };
35
30
  }
36
- clone(): CheckBoxElement {
31
+ clone() {
37
32
  const clone = new CheckBoxElement();
38
33
  this.props.clone(clone.props);
39
34
  return clone;
40
35
  }
41
- getType(): string {
36
+ getType() {
42
37
  return 'ckb';
43
38
  }
44
39
  }
45
-
46
- export class CheckBoxFactory extends ElementFactory<CheckBoxProps> {
47
- match(type: string): boolean {
40
+ export class CheckBoxFactory extends ElementFactory {
41
+ match(type) {
48
42
  return type === 'ckb';
49
43
  }
50
- createElement(data: readElementProps<CheckBoxProps>, renderCtx: RenderContenxtType): CheckBoxElement {
44
+ createElement(data, renderCtx) {
51
45
  const props = data.props;
52
46
  const ckbElement = new CheckBoxElement();
53
47
  const ckbProps = ckbElement.props;
@@ -57,15 +51,14 @@ export class CheckBoxFactory extends ElementFactory<CheckBoxProps> {
57
51
  return ckbElement;
58
52
  }
59
53
  }
60
-
61
- export class CheckBoxRenderObject extends LeafRenderObject<CheckBoxElement> {
62
- render(ctx: RenderContenxtType, position: { x: number; y: number; }): void {
54
+ export class CheckBoxRenderObject extends LeafRenderObject {
55
+ render(ctx, position) {
63
56
  ctx.contentContext.drawCheckBox(position.x + 2, position.y, this.element.props.size, this.element.props.size, this.element.props.isChecked);
64
57
  }
65
- clone(cloneData = true): RenderObject {
58
+ clone(cloneData = true) {
66
59
  const clone = new CheckBoxRenderObject(this.element);
67
60
  clone.rect = ElementUtil.cloneRect(this.rect);
68
61
  return clone;
69
62
  }
70
-
71
63
  }
64
+ //# sourceMappingURL=checkbox-impl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-impl.js","sourceRoot":"lib/","sources":["framework/impl/checkbox/checkbox-impl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import { BlockContainerElement, ElementFactory, Position, readElementProps, SelectionContentRange, SerializeProps, ViewOptions } from "../../element-define";
2
+ import { CommContentProps } from "../../element-props";
3
+ import { Element } from "../../element-define";
4
+ import { RenderContenxtType } from "../../render-context";
5
+ import { BlockContainerRenderObject, RenderObject } from "../../render-define";
6
+ import { CommentElement } from "./comment-element-impl";
7
+ export declare abstract class CommContentBaseElement<P extends object = {
8
+ id: string;
9
+ }> extends BlockContainerElement<P> {
10
+ startMark: CommentElement;
11
+ endMark: CommentElement;
12
+ focus: boolean;
13
+ protected constructor(type: string);
14
+ }
15
+ export declare abstract class CommContentBaseRenderObject<E extends CommContentBaseElement> extends BlockContainerRenderObject<E> {
16
+ commMarkRender: {
17
+ render: RenderObject;
18
+ pos: Position;
19
+ };
20
+ }
21
+ export declare class CommContentElement extends CommContentBaseElement<CommContentProps> {
22
+ constructor();
23
+ createRenderObject(options: ViewOptions, renderCtx: RenderContenxtType): RenderObject;
24
+ serialize(viewOptions: ViewOptions): SerializeProps;
25
+ clone(data: boolean): Element;
26
+ }
27
+ export declare class CommContentRenderObject extends CommContentBaseRenderObject<CommContentElement> {
28
+ beginRender(ctx: RenderContenxtType, position: Position): void;
29
+ renderTitle(ctx: RenderContenxtType, position: Position): void;
30
+ endRender(ctx: RenderContenxtType, position: Position): void;
31
+ clone(): RenderObject;
32
+ }
33
+ export interface CommentRangeStatus {
34
+ range: SelectionContentRange;
35
+ commContent: CommContentBaseElement;
36
+ }
37
+ export declare class CommentContentFactory extends ElementFactory<CommContentProps> {
38
+ match(type: string): boolean;
39
+ createElement(data: readElementProps<CommContentProps>, renderCtx: RenderContenxtType): Element;
40
+ }
@@ -1,94 +1,84 @@
1
- import { BlockContainerElement, ElementFactory, Position, readElementProps, Rect, SelectionContentRange, SerializeProps, ViewOptions } from "../../element-define";
1
+ import { BlockContainerElement, ElementFactory } from "../../element-define";
2
2
  import { CommContentProps, TextProps } from "../../element-props";
3
- import { Element } from "../../element-define"
4
3
  import { ElementUtil } from "../../element-util";
5
- import { RenderContenxtType } from "../../render-context";
6
- import { BlockContainerRenderObject, RenderObject } from "../../render-define";
4
+ import { BlockContainerRenderObject } from "../../render-define";
7
5
  import { DocumentRenderObject } from "../document/doc-impl";
8
- import { CommentElement } from "./comment-element-impl";
9
6
  import moment from "moment";
10
-
11
- export abstract class CommContentBaseElement<P extends object = { id: string }> extends BlockContainerElement<P>{
12
- startMark!: CommentElement;
13
- endMark!: CommentElement;
14
- focus: boolean = false;
15
- protected constructor(type: string) {
7
+ export class CommContentBaseElement extends BlockContainerElement {
8
+ startMark;
9
+ endMark;
10
+ focus = false;
11
+ constructor(type) {
16
12
  super(type);
17
13
  this.addEvent('GotCursor', () => {
18
14
  this.focus = true;
19
- this.refreshView()
15
+ this.refreshView();
20
16
  });
21
17
  this.addEvent('LostCursor', () => {
22
18
  this.focus = false;
23
- this.refreshView()
24
- })
19
+ this.refreshView();
20
+ });
25
21
  }
26
22
  }
27
-
28
- export abstract class CommContentBaseRenderObject<E extends CommContentBaseElement> extends BlockContainerRenderObject<E> {
29
- commMarkRender!: { render: RenderObject, pos: Position };
23
+ export class CommContentBaseRenderObject extends BlockContainerRenderObject {
24
+ commMarkRender;
30
25
  }
31
-
32
- export class CommContentElement extends CommContentBaseElement<CommContentProps> {
26
+ export class CommContentElement extends CommContentBaseElement {
33
27
  constructor() {
34
28
  super("comm-content");
35
29
  this.props = new CommContentProps();
36
30
  }
37
- createRenderObject(options: ViewOptions, renderCtx: RenderContenxtType): RenderObject {
31
+ createRenderObject(options, renderCtx) {
38
32
  const render = new CommContentRenderObject(this);
39
33
  render.padding.left = 14;
40
34
  render.padding.top = 24;
41
35
  return render;
42
36
  }
43
- serialize(viewOptions: ViewOptions): SerializeProps {
37
+ serialize(viewOptions) {
44
38
  return {
45
39
  type: this.type,
46
40
  props: { ...this.props.getSerializeProps(viewOptions) }
47
- }
41
+ };
48
42
  }
49
- clone(data: boolean): Element {
43
+ clone(data) {
50
44
  throw new Error('不支持');
51
45
  }
52
46
  }
53
-
54
- export class CommContentRenderObject extends CommContentBaseRenderObject<CommContentElement> {
55
- beginRender(ctx: RenderContenxtType, position: Position): void {
47
+ export class CommContentRenderObject extends CommContentBaseRenderObject {
48
+ beginRender(ctx, position) {
56
49
  let borderColor = this.element.focus ? '#fa8c16' : '#ffd591';
57
50
  ctx.contentContext.strokeRect(position.x, position.y, this.rect.width, this.rect.height, borderColor);
58
- ctx.contentContext.fillRect(position.x, position.y, 8, this.rect.height, '#871400')
59
- const docRender = ElementUtil.getParentRender(this.commMarkRender.render, DocumentRenderObject) as DocumentRenderObject;
51
+ ctx.contentContext.fillRect(position.x, position.y, 8, this.rect.height, '#871400');
52
+ const docRender = ElementUtil.getParentRender(this.commMarkRender.render, DocumentRenderObject);
60
53
  //获取审阅标记的绘制坐标
61
54
  let commMarkPos = ElementUtil.getRenderAbsolutePaintPos(this.commMarkRender.render, { x: 0, y: -ctx.viewOptions.translateY });
62
55
  const commMarkLinePos = ElementUtil.getParaLinePos(this.commMarkRender.render, commMarkPos);
63
56
  commMarkPos.y = commMarkLinePos.y + 2;
64
-
65
57
  const docRenderPos = ElementUtil.getRenderAbsolutePaintPos(docRender, { x: 0, y: -ctx.viewOptions.translateY });
66
58
  const marginLeft = commMarkPos.x - docRenderPos.x - docRender.padding.left;
67
59
  const marginRight = ctx.viewOptions.docPageSettings.width - marginLeft - docRender.padding.right * 2;
68
60
  ctx.overlaysContext.drawDashLine([commMarkPos, { x: commMarkPos.x + marginRight, y: commMarkPos.y }], [1, 1], 'red');
69
61
  ctx.overlaysContext.drawDashLine([{ x: commMarkPos.x + marginRight, y: commMarkPos.y }, position], [1, 1], 'red');
70
-
71
62
  this.renderTitle(ctx, position);
72
63
  }
73
-
74
- renderTitle(ctx: RenderContenxtType, position: Position): void {
64
+ renderTitle(ctx, position) {
75
65
  const topPadding = 24;
76
66
  const { props } = this.element;
77
67
  const textProps = new TextProps();
78
68
  textProps.fontSize = 12;
79
69
  textProps.fontName = '楷体';
80
70
  textProps.color = "rgb(0,0,0)";
81
- const createDate = moment(props.createDate).format('YYYY-MM-DD HH:mm')
71
+ const createDate = moment(props.createDate).format('YYYY-MM-DD HH:mm');
82
72
  const commTitle = `${props.createName}:${createDate}`;
83
73
  const { width, height } = ctx.contentContext.measureText(commTitle, textProps);
84
- const rect: Rect = { x: position.x + this.padding.left, y: position.y, width, height, maxHeight: 0, maxWidth: 0 }
74
+ const rect = { x: position.x + this.padding.left, y: position.y, width, height, maxHeight: 0, maxWidth: 0 };
85
75
  rect.y += (topPadding - rect.height) / 2;
86
76
  ctx.contentContext.drawText(commTitle, textProps, rect.x, rect.y, rect.width, rect.height);
87
77
  }
88
- endRender(ctx: RenderContenxtType, position: Position): void {
78
+ endRender(ctx, position) {
89
79
  //throw new Error("Method not implemented.");
90
80
  }
91
- clone(): RenderObject {
81
+ clone() {
92
82
  const clone = new CommContentRenderObject(this.element);
93
83
  clone.rect = ElementUtil.cloneRect(this.rect);
94
84
  clone.padding = this.padding.clone();
@@ -98,17 +88,12 @@ export class CommContentRenderObject extends CommContentBaseRenderObject<CommCon
98
88
  return clone;
99
89
  }
100
90
  }
101
-
102
- export interface CommentRangeStatus {
103
- range: SelectionContentRange, commContent: CommContentBaseElement
104
- }
105
-
106
- export class CommentContentFactory extends ElementFactory<CommContentProps> {
107
- match(type: string): boolean {
91
+ export class CommentContentFactory extends ElementFactory {
92
+ match(type) {
108
93
  return type === "comm-content";
109
94
  }
110
- createElement(data: readElementProps<CommContentProps>, renderCtx: RenderContenxtType): Element {
111
- const props = data.props as CommContentProps;
95
+ createElement(data, renderCtx) {
96
+ const props = data.props;
112
97
  const commentEle = new CommContentElement();
113
98
  commentEle.props.id = props.id;
114
99
  commentEle.props.createDate = props.createDate;
@@ -117,3 +102,4 @@ export class CommentContentFactory extends ElementFactory<CommContentProps> {
117
102
  return commentEle;
118
103
  }
119
104
  }
105
+ //# sourceMappingURL=comment-content-impl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"comment-content-impl.js","sourceRoot":"lib/","sources":["framework/impl/comments/comment-content-impl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { Element, ElementFactory, LeafElement, readElementProps, SerializeProps, ViewOptions } from "../../element-define";
2
+ import { CommProps } from "../../element-props";
3
+ import { RenderContenxtType } from "../../render-context";
4
+ import { LeafRenderObject, RenderObject } from "../../render-define";
5
+ export declare class CommentElement extends LeafElement<CommProps> {
6
+ constructor();
7
+ createRenderObject(options: ViewOptions, renderCtx: RenderContenxtType): RenderObject;
8
+ serialize(viewOptions: ViewOptions): SerializeProps | null;
9
+ clone(): Element;
10
+ }
11
+ export declare class CommentRenderObject extends LeafRenderObject<CommentElement> {
12
+ render(ctx: RenderContenxtType, position: {
13
+ x: number;
14
+ y: number;
15
+ }): void;
16
+ clone(): RenderObject;
17
+ }
18
+ export declare class CommentFactory extends ElementFactory<CommProps> {
19
+ match(type: string): boolean;
20
+ createElement(data: readElementProps<CommProps>, renderCtx: RenderContenxtType): Element;
21
+ }
@@ -1,65 +1,62 @@
1
- import { Element, ElementFactory, LeafElement, readElementProps, SerializeProps, ViewOptions } from "../../element-define";
1
+ import { ElementFactory, LeafElement } from "../../element-define";
2
2
  import { CommProps } from "../../element-props";
3
3
  import { ElementUtil } from "../../element-util";
4
- import { RenderContenxtType } from "../../render-context";
5
- import { LeafRenderObject, RenderObject } from "../../render-define";
6
-
7
- export class CommentElement extends LeafElement<CommProps> {
4
+ import { LeafRenderObject } from "../../render-define";
5
+ export class CommentElement extends LeafElement {
8
6
  constructor() {
9
7
  super('comm');
10
8
  this.isDecorate = true;
11
9
  this.disableClick = true;
12
10
  this.props = new CommProps();
13
11
  }
14
- createRenderObject(options: ViewOptions, renderCtx: RenderContenxtType): RenderObject {
12
+ createRenderObject(options, renderCtx) {
15
13
  const render = new CommentRenderObject(this);
16
14
  render.rect.width = 0;
17
15
  render.rect.height = 14;
18
16
  return render;
19
17
  }
20
- serialize(viewOptions: ViewOptions): SerializeProps|null {
21
- if(this.isDecorate){
22
- return null;
18
+ serialize(viewOptions) {
19
+ if (this.isDecorate) {
20
+ return null;
23
21
  }
24
22
  return {
25
23
  type: this.type,
26
24
  props: {
27
25
  ...this.props.getSerializeProps(viewOptions)
28
26
  }
29
- }
27
+ };
30
28
  }
31
- clone(): Element {
29
+ clone() {
32
30
  const clone = new CommentElement();
33
31
  this.props.clone(clone.props);
34
32
  return clone;
35
33
  }
36
34
  }
37
-
38
- export class CommentRenderObject extends LeafRenderObject<CommentElement> {
39
- render(ctx: RenderContenxtType, position: { x: number; y: number; }): void {
35
+ export class CommentRenderObject extends LeafRenderObject {
36
+ render(ctx, position) {
40
37
  if (!ctx.viewOptions.showReviewWindow) {
41
38
  return;
42
39
  }
43
40
  const paraLinePos = ElementUtil.getParaLinePos(this, { x: position.x, y: position.y });
44
41
  const color = '#ff4d4f';
45
- ctx.contentContext.fillRect(position.x - 1, paraLinePos.y, 2, paraLinePos.height, color)
42
+ ctx.contentContext.fillRect(position.x - 1, paraLinePos.y, 2, paraLinePos.height, color);
46
43
  }
47
- clone(): RenderObject {
44
+ clone() {
48
45
  const clone = new CommentRenderObject(this.element);
49
46
  clone.rect = ElementUtil.cloneRect(this.rect);
50
47
  return clone;
51
48
  }
52
49
  }
53
-
54
- export class CommentFactory extends ElementFactory<CommProps> {
55
- match(type: string): boolean {
50
+ export class CommentFactory extends ElementFactory {
51
+ match(type) {
56
52
  return type === "comm";
57
53
  }
58
- createElement(data: readElementProps<CommProps>, renderCtx: RenderContenxtType): Element {
54
+ createElement(data, renderCtx) {
59
55
  const ele = new CommentElement();
60
- const props = data.props as CommProps;
56
+ const props = data.props;
61
57
  ele.props.id = props.id;
62
58
  ele.props.markType = props.markType;
63
59
  return ele;
64
60
  }
65
61
  }
62
+ //# sourceMappingURL=comment-element-impl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"comment-element-impl.js","sourceRoot":"lib/","sources":["framework/impl/comments/comment-element-impl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,cAAc,EAAE,WAAW,EAAiD,MAAM,sBAAsB,CAAC;AAC3H,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAgB,MAAM,qBAAqB,CAAC;AAErE,MAAM,OAAO,cAAe,SAAQ,WAAsB;IACtD;QACI,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,IAAI,SAAS,EAAE,CAAC;IACjC,CAAC;IACD,kBAAkB,CAAC,OAAoB,EAAE,SAA6B;QAClE,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACxB,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,SAAS,CAAC,WAAwB;QAC9B,IAAG,IAAI,CAAC,UAAU,EAAC;YACf,OAAQ,IAAI,CAAC;SAChB;QACD,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE;gBACH,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC;aAC/C;SACJ,CAAA;IACL,CAAC;IACD,KAAK;QACD,MAAM,KAAK,GAAG,IAAI,cAAc,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AAED,MAAM,OAAO,mBAAoB,SAAQ,gBAAgC;IACrE,MAAM,CAAC,GAAuB,EAAE,QAAmC;QAC/D,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,gBAAgB,EAAE;YACnC,OAAO;SACV;QACD,MAAM,WAAW,GAAG,WAAW,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;QACvF,MAAM,KAAK,GAAG,SAAS,CAAC;QACxB,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC5F,CAAC;IACD,KAAK;QACD,MAAM,KAAK,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AAED,MAAM,OAAO,cAAe,SAAQ,cAAyB;IACzD,KAAK,CAAC,IAAY;QACd,OAAO,IAAI,KAAK,MAAM,CAAC;IAC3B,CAAC;IACD,aAAa,CAAC,IAAiC,EAAE,SAA6B;QAC1E,MAAM,GAAG,GAAG,IAAI,cAAc,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAkB,CAAC;QACtC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QACxB,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACpC,OAAO,GAAG,CAAC;IACf,CAAC;CACJ"}
@@ -0,0 +1,22 @@
1
+ import { BlockContainerElement, Element, ElementFactory, Position, SelectionContentRange, SerializeProps, ViewOptions } from "../../element-define";
2
+ import { RenderContenxtType } from "../../render-context";
3
+ import { BlockContainerRenderObject, RenderObject } from "../../render-define";
4
+ import { CommentRangeStatus } from "./comment-content-impl";
5
+ export declare class CommsContainerElement extends BlockContainerElement {
6
+ constructor();
7
+ createRenderObject(options: ViewOptions, renderCtx: RenderContenxtType): RenderObject;
8
+ serialize(viewOptions: ViewOptions): SerializeProps;
9
+ clone(data: boolean): Element;
10
+ }
11
+ export declare class CommsContainerRenderObject extends BlockContainerRenderObject {
12
+ isMeasureComm: boolean;
13
+ selectedSet: Map<Element, SelectionContentRange>;
14
+ commentRangeStatus: Array<CommentRangeStatus>;
15
+ beginRender(ctx: RenderContenxtType, position: Position): void;
16
+ endRender(ctx: RenderContenxtType, position: Position): void;
17
+ clone(): RenderObject;
18
+ }
19
+ export declare class CommentsFactory extends ElementFactory<null> {
20
+ match(type: string): boolean;
21
+ createElement(data: any, renderCtx: RenderContenxtType): Element;
22
+ }
@@ -1,27 +1,24 @@
1
- import { BlockContainerElement, Element, ElementFactory, Position, SelectionContentRange, SerializeProps, ViewOptions } from "../../element-define";
1
+ import { BlockContainerElement, ElementFactory } from "../../element-define";
2
2
  import { ElementUtil } from "../../element-util";
3
- import { RenderContenxtType } from "../../render-context";
4
- import { BlockContainerRenderObject, RenderObject } from "../../render-define";
5
- import { CommentRangeStatus } from "./comment-content-impl";
6
-
3
+ import { BlockContainerRenderObject } from "../../render-define";
7
4
  export class CommsContainerElement extends BlockContainerElement {
8
5
  constructor() {
9
6
  super('comm-list');
10
7
  this.noFillEmpty = true;
11
8
  }
12
- createRenderObject(options: ViewOptions, renderCtx: RenderContenxtType): RenderObject {
9
+ createRenderObject(options, renderCtx) {
13
10
  const render = new CommsContainerRenderObject(this);
14
11
  render.rect.maxWidth = options.reviewWindowWidth;
15
12
  render.rect.width = render.rect.maxWidth;
16
13
  return render;
17
14
  }
18
- serialize(viewOptions: ViewOptions): SerializeProps {
15
+ serialize(viewOptions) {
19
16
  return {
20
17
  type: this.type,
21
18
  props: {}
22
19
  };
23
20
  }
24
- clone(data: boolean): Element {
21
+ clone(data) {
25
22
  const clone = new CommsContainerElement();
26
23
  if (data) {
27
24
  for (let i = 0; i < this.length; i++) {
@@ -31,22 +28,20 @@ export class CommsContainerElement extends BlockContainerElement {
31
28
  return clone;
32
29
  }
33
30
  }
34
-
35
31
  export class CommsContainerRenderObject extends BlockContainerRenderObject {
36
32
  //批注内容是否已经重组,只要重新绘制的时候组合一次即可
37
- isMeasureComm!: boolean;
38
- selectedSet!: Map<Element, SelectionContentRange>;
39
- commentRangeStatus: Array<CommentRangeStatus> = [];
40
- beginRender(ctx: RenderContenxtType, position: Position): void {
33
+ isMeasureComm;
34
+ selectedSet;
35
+ commentRangeStatus = [];
36
+ beginRender(ctx, position) {
41
37
  if (this.rect.height === 0) {
42
38
  return;
43
39
  }
44
40
  ctx.contentContext.strokeRect(position.x, position.y, this.rect.width, this.rect.height, 'black', 0.5);
45
41
  }
46
- endRender(ctx: RenderContenxtType, position: Position): void {
47
-
42
+ endRender(ctx, position) {
48
43
  }
49
- clone(): RenderObject {
44
+ clone() {
50
45
  const clone = new CommsContainerRenderObject(this.element);
51
46
  clone.rect = ElementUtil.cloneRect(this.rect);
52
47
  for (let i = 0; i < this.length; i++) {
@@ -55,14 +50,13 @@ export class CommsContainerRenderObject extends BlockContainerRenderObject {
55
50
  return clone;
56
51
  }
57
52
  }
58
-
59
-
60
- export class CommentsFactory extends ElementFactory<null> {
61
- match(type: string): boolean {
53
+ export class CommentsFactory extends ElementFactory {
54
+ match(type) {
62
55
  return type === "comm-list";
63
56
  }
64
- createElement(data: any, renderCtx: RenderContenxtType): Element {
57
+ createElement(data, renderCtx) {
65
58
  const commentsEle = new CommsContainerElement();
66
59
  return commentsEle;
67
60
  }
68
61
  }
62
+ //# sourceMappingURL=comments-container-impl.js.map