w-component-vue 2.2.79 → 2.2.80

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 (1008) hide show
  1. package/README.md +1 -1
  2. package/dist/w-component-vue.umd.js +2 -2
  3. package/dist/w-component-vue.umd.js.map +1 -1
  4. package/docs/binarySearch.mjs.html +1 -1
  5. package/docs/examples/app.html +1 -1
  6. package/docs/examples/app.umd.js +2 -2
  7. package/docs/examples/app.umd.js.map +1 -1
  8. package/docs/examples/w-aggrid-vue-dyn_defCellEditable.html +1 -1
  9. package/docs/examples/w-aggrid-vue-dyn_kpCellEditable_kpRowStyle.html +1 -1
  10. package/docs/examples/w-aggrid-vue-dyn_kpHeadTooltip_kpCellTooltip.html +1 -1
  11. package/docs/examples/w-aggrid-vue-dyn_large data (1,000,000 items).html +1 -1
  12. package/docs/examples/w-aggrid-vue-dyn_simple data.html +1 -1
  13. package/docs/examples/w-alert_backgroundColor.html +1 -1
  14. package/docs/examples/w-alert_borderColor.html +1 -1
  15. package/docs/examples/w-alert_borderRadius.html +1 -1
  16. package/docs/examples/w-alert_borderWidth.html +1 -1
  17. package/docs/examples/w-alert_default.html +1 -1
  18. package/docs/examples/w-alert_icon.html +1 -1
  19. package/docs/examples/w-alert_position.html +1 -1
  20. package/docs/examples/w-alert_recive closed event by promise.html +1 -1
  21. package/docs/examples/w-alert_shadowStyle.html +1 -1
  22. package/docs/examples/w-alert_textColor.html +1 -1
  23. package/docs/examples/w-alert_time (6s).html +1 -1
  24. package/docs/examples/w-alert_type error.html +1 -1
  25. package/docs/examples/w-alert_type infor.html +1 -1
  26. package/docs/examples/w-alert_type warning.html +1 -1
  27. package/docs/examples/w-badge_backgroundColor.html +1 -1
  28. package/docs/examples/w-badge_badgeAlign.html +1 -1
  29. package/docs/examples/w-badge_borderColor_textColor_backgroundColor.html +1 -1
  30. package/docs/examples/w-badge_borderRadius.html +1 -1
  31. package/docs/examples/w-badge_default.html +1 -1
  32. package/docs/examples/w-badge_textColor_backgroundColor.html +1 -1
  33. package/docs/examples/w-badge_textFontSize.html +1 -1
  34. package/docs/examples/w-button-chip_active_backgroundColorActive.html +1 -1
  35. package/docs/examples/w-button-chip_active_borderColorActive.html +1 -1
  36. package/docs/examples/w-button-chip_active_iconColorActive.html +1 -1
  37. package/docs/examples/w-button-chip_active_no shadow_no shadowActive.html +1 -1
  38. package/docs/examples/w-button-chip_active_shadowActiveStyle.html +1 -1
  39. package/docs/examples/w-button-chip_active_textColorActive.html +1 -1
  40. package/docs/examples/w-button-chip_backgroundColor_backgroundColorHover.html +1 -1
  41. package/docs/examples/w-button-chip_borderColor_borderColorHover.html +1 -1
  42. package/docs/examples/w-button-chip_borderRadius.html +1 -1
  43. package/docs/examples/w-button-chip_borderRadiusStyle.html +1 -1
  44. package/docs/examples/w-button-chip_borderRadiusStyle_borderWidth_borderColor_borderColorHover.html +1 -1
  45. package/docs/examples/w-button-chip_borderWidth.html +1 -1
  46. package/docs/examples/w-button-chip_close.html +1 -1
  47. package/docs/examples/w-button-chip_close_shiftRight.html +1 -1
  48. package/docs/examples/w-button-chip_default.html +1 -1
  49. package/docs/examples/w-button-chip_icon (fontawesome).html +1 -1
  50. package/docs/examples/w-button-chip_icon (material).html +1 -1
  51. package/docs/examples/w-button-chip_icon_iconColor_iconColorHover_close.html +1 -1
  52. package/docs/examples/w-button-chip_icon_no text.html +1 -1
  53. package/docs/examples/w-button-chip_loading.html +1 -1
  54. package/docs/examples/w-button-chip_loading_loadingColor.html +1 -1
  55. package/docs/examples/w-button-chip_loading_textColor_textColorHover.html +1 -1
  56. package/docs/examples/w-button-chip_modify loading by callback in click.html +1 -1
  57. package/docs/examples/w-button-chip_modify prog by callback in click.html +1 -1
  58. package/docs/examples/w-button-chip_no shadow.html +1 -1
  59. package/docs/examples/w-button-chip_not editable.html +1 -1
  60. package/docs/examples/w-button-chip_not editable_disabledColor.html +1 -1
  61. package/docs/examples/w-button-chip_paddingStyle (equal height to using icon).html +1 -1
  62. package/docs/examples/w-button-chip_paddingStyle (thin style).html +1 -1
  63. package/docs/examples/w-button-chip_paddingStyle_icon_iconSize_textFontSize.html +1 -1
  64. package/docs/examples/w-button-chip_prog.html +1 -1
  65. package/docs/examples/w-button-chip_prog_progColor_progBackgroundColor.html +1 -1
  66. package/docs/examples/w-button-chip_promiseUnlock.html +1 -1
  67. package/docs/examples/w-button-chip_rippleColor.html +1 -1
  68. package/docs/examples/w-button-chip_shadowStyle.html +1 -1
  69. package/docs/examples/w-button-chip_shiftLeft.html +1 -1
  70. package/docs/examples/w-button-chip_slot_close.html +1 -1
  71. package/docs/examples/w-button-chip_textColor.html +1 -1
  72. package/docs/examples/w-button-chip_textColor_textColorHover.html +1 -1
  73. package/docs/examples/w-button-chip_tooltip.html +1 -1
  74. package/docs/examples/w-button-chip_tooltip_tooltipBorderRadius.html +1 -1
  75. package/docs/examples/w-button-chip_tooltip_tooltipPaddingStyle.html +1 -1
  76. package/docs/examples/w-button-chip_tooltip_tooltipTextColor_tooltipBackgroundColor.html +1 -1
  77. package/docs/examples/w-button-chip_tooltip_tooltipTextFontSize.html +1 -1
  78. package/docs/examples/w-button-circle_backgroundColor_backgroundColorHover_backgroundColorFocus.html +1 -1
  79. package/docs/examples/w-button-circle_borderWidth_borderColor_borderColorHover_borderColorFocus.html +1 -1
  80. package/docs/examples/w-button-circle_icon (fontawesome).html +1 -1
  81. package/docs/examples/w-button-circle_icon (material).html +1 -1
  82. package/docs/examples/w-button-circle_iconColor_iconColorHover_iconColorFocus.html +1 -1
  83. package/docs/examples/w-button-circle_loading.html +1 -1
  84. package/docs/examples/w-button-circle_loading_loadingColor.html +1 -1
  85. package/docs/examples/w-button-circle_no shadow.html +1 -1
  86. package/docs/examples/w-button-circle_not editable.html +1 -1
  87. package/docs/examples/w-button-circle_not editable_disabledColor.html +1 -1
  88. package/docs/examples/w-button-circle_paddingStyle.html +1 -1
  89. package/docs/examples/w-button-circle_paddingStyle_iconSize.html +1 -1
  90. package/docs/examples/w-button-circle_promiseUnlock.html +1 -1
  91. package/docs/examples/w-button-circle_rippleColor.html +1 -1
  92. package/docs/examples/w-button-circle_shadowStyle.html +1 -1
  93. package/docs/examples/w-button-circle_tooltip.html +1 -1
  94. package/docs/examples/w-button-circle_tooltip_tooltipBorderRadius.html +1 -1
  95. package/docs/examples/w-button-circle_tooltip_tooltipPaddingStyle.html +1 -1
  96. package/docs/examples/w-button-circle_tooltip_tooltipTextColor_tooltipBackgroundColor.html +1 -1
  97. package/docs/examples/w-button-circle_tooltip_tooltipTextFontSize.html +1 -1
  98. package/docs/examples/w-checkbox_checkedIconColor_checkedIconColorHover_uncheckedIconColor_uncheckedIconColorHover.html +1 -1
  99. package/docs/examples/w-checkbox_checkedIcon_uncheckedIcon.html +1 -1
  100. package/docs/examples/w-checkbox_default.html +1 -1
  101. package/docs/examples/w-checkbox_iconSize_textFontSize.html +1 -1
  102. package/docs/examples/w-checkbox_not editable.html +1 -1
  103. package/docs/examples/w-checkbox_not editable_checkedIconColorDisabled_uncheckedIconColorDisabled.html +1 -1
  104. package/docs/examples/w-checkbox_text.html +1 -1
  105. package/docs/examples/w-checkbox_text_textColor_textColorHover.html +1 -1
  106. package/docs/examples/w-checkbox_use string (y or n).html +1 -1
  107. package/docs/examples/w-ckeditor-vue-dyn_default.html +1 -1
  108. package/docs/examples/w-ckeditor-vue-dyn_height.html +1 -1
  109. package/docs/examples/w-ckeditor-vue-dyn_not editable.html +1 -1
  110. package/docs/examples/w-ckeditor-vue-dyn_settings.html +1 -1
  111. package/docs/examples/w-confirm_contentColor_contentIconColor_contentBackgroundColor.html +1 -1
  112. package/docs/examples/w-confirm_contentIcon (fontawesome).html +1 -1
  113. package/docs/examples/w-confirm_contentIconColor.html +1 -1
  114. package/docs/examples/w-confirm_contentIconSize.html +1 -1
  115. package/docs/examples/w-confirm_hasNoBtn_yesBtnText.html +1 -1
  116. package/docs/examples/w-confirm_maxWidth.html +1 -1
  117. package/docs/examples/w-confirm_noBtnTextColor_noBtnTextColorHover_noBtnBackgroundColor_noBtnBackgroundColorHover.html +1 -1
  118. package/docs/examples/w-confirm_noBtnText_yesBtnText.html +1 -1
  119. package/docs/examples/w-confirm_scrollable (slot content).html +1 -1
  120. package/docs/examples/w-confirm_scrollable.html +1 -1
  121. package/docs/examples/w-confirm_slot content.html +1 -1
  122. package/docs/examples/w-confirm_slot footer.html +1 -1
  123. package/docs/examples/w-confirm_slot header.html +1 -1
  124. package/docs/examples/w-confirm_titleColor_headerBackgroundColor_footerBackgroundColor.html +1 -1
  125. package/docs/examples/w-confirm_title_content.html +1 -1
  126. package/docs/examples/w-dialog_closeWithInterceptor.html +1 -1
  127. package/docs/examples/w-dialog_contentTextColor_contentBackgroundColor.html +1 -1
  128. package/docs/examples/w-dialog_dialogZIndex.html +1 -1
  129. package/docs/examples/w-dialog_fullscreen.html +1 -1
  130. package/docs/examples/w-dialog_hasSaveBtn and hasCloseBtn, no save and close button.html +1 -1
  131. package/docs/examples/w-dialog_hasSaveBtn, no save button.html +1 -1
  132. package/docs/examples/w-dialog_headerBackgroundColor.html +1 -1
  133. package/docs/examples/w-dialog_headerBtns.html +1 -1
  134. package/docs/examples/w-dialog_headerShadow (no shadow).html +1 -1
  135. package/docs/examples/w-dialog_headerShadowStyle.html +1 -1
  136. package/docs/examples/w-dialog_icon (fontawesome).html +1 -1
  137. package/docs/examples/w-dialog_isModal (not persistent).html +1 -1
  138. package/docs/examples/w-dialog_maxWidth, for narrow width.html +1 -1
  139. package/docs/examples/w-dialog_multi dialogs.html +1 -1
  140. package/docs/examples/w-dialog_panelBorderRadius.html +1 -1
  141. package/docs/examples/w-dialog_panelShadow (no shadow).html +1 -1
  142. package/docs/examples/w-dialog_panelShadowStyle.html +1 -1
  143. package/docs/examples/w-dialog_saveBtnTooltip_closeBtnTooltip.html +1 -1
  144. package/docs/examples/w-dialog_scrollable.html +1 -1
  145. package/docs/examples/w-dialog_separate for slot content.html +1 -1
  146. package/docs/examples/w-dialog_slot content.html +1 -1
  147. package/docs/examples/w-dialog_slot header-left_header-right.html +1 -1
  148. package/docs/examples/w-dialog_table in slot content.html +1 -1
  149. package/docs/examples/w-dialog_title.html +1 -1
  150. package/docs/examples/w-dialog_titleColor_headerIconColor_headerBackgroundColor.html +1 -1
  151. package/docs/examples/w-drawer_afloat.html +1 -1
  152. package/docs/examples/w-drawer_afloat_afloatByFix.html +1 -1
  153. package/docs/examples/w-drawer_afloat_afloatByFix_dragDrawerWidth.html +1 -1
  154. package/docs/examples/w-drawer_afloat_afloatByFix_mode.html +1 -1
  155. package/docs/examples/w-drawer_afloat_afloatByFix_mode_dragDrawerWidth.html +1 -1
  156. package/docs/examples/w-drawer_afloat_dragDrawerWidth.html +1 -1
  157. package/docs/examples/w-drawer_afloat_mode.html +1 -1
  158. package/docs/examples/w-drawer_afloat_mode_dragDrawerWidth.html +1 -1
  159. package/docs/examples/w-drawer_afloat_overlayOpacity.html +1 -1
  160. package/docs/examples/w-drawer_default.html +1 -1
  161. package/docs/examples/w-drawer_dragDrawerWidth_drawerBarBorderColor_drawerBarBorderSize.html +1 -1
  162. package/docs/examples/w-drawer_dragDrawerWidth_drawerBarColor_drawerBarSize.html +1 -1
  163. package/docs/examples/w-drawer_dragDrawerWidth_drawerWidth(sync).html +1 -1
  164. package/docs/examples/w-drawer_dragDrawerWidth_drawerWidthMin_drawerWidthMax.html +1 -1
  165. package/docs/examples/w-drawer_drawerWidth.html +1 -1
  166. package/docs/examples/w-drawer_mode.html +1 -1
  167. package/docs/examples/w-drawer_mode_dragDrawerWidth.html +1 -1
  168. package/docs/examples/w-drawer_multiple_dragDrawerWidth_drawerWidthMin_drawerWidthMax.html +1 -1
  169. package/docs/examples/w-dropfiles_backgroundColor_backgroundColorDropIn_backgroundColorHover.html +1 -1
  170. package/docs/examples/w-dropfiles_borderColor_borderColorDropIn_borderColorHover_backgroundColorDropIn.html +1 -1
  171. package/docs/examples/w-dropfiles_borderRadius.html +1 -1
  172. package/docs/examples/w-dropfiles_borderWidth.html +1 -1
  173. package/docs/examples/w-dropfiles_default.html +1 -1
  174. package/docs/examples/w-dropfiles_timeTransition.html +1 -1
  175. package/docs/examples/w-dynamic-list_change rows.html +1 -1
  176. package/docs/examples/w-dynamic-list_change slot.html +1 -1
  177. package/docs/examples/w-dynamic-list_default.html +1 -1
  178. package/docs/examples/w-dynamic-list_filterKeywords_noResultsText.html +1 -1
  179. package/docs/examples/w-dynamic-list_large data (1,000,000 items).html +1 -1
  180. package/docs/examples/w-dynamic-list_processItems.html +1 -1
  181. package/docs/examples/w-dynamic-list_render.html +1 -1
  182. package/docs/examples/w-dynamic-list_slot item with image.html +1 -1
  183. package/docs/examples/w-dynamic-list_viewHeightMax.html +1 -1
  184. package/docs/examples/w-echarts-vue-dyn_area.html +1 -1
  185. package/docs/examples/w-echarts-vue-dyn_bar3D.html +1 -1
  186. package/docs/examples/w-echarts-vue-dyn_continuous.html +1 -1
  187. package/docs/examples/w-echarts-vue-dyn_heatmap.html +1 -1
  188. package/docs/examples/w-echarts-vue-dyn_line.html +1 -1
  189. package/docs/examples/w-echarts-vue-dyn_line3D.html +1 -1
  190. package/docs/examples/w-echarts-vue-dyn_parallel.html +1 -1
  191. package/docs/examples/w-echarts-vue-dyn_polar heatmap.html +1 -1
  192. package/docs/examples/w-echarts-vue-dyn_polar.html +1 -1
  193. package/docs/examples/w-echarts-vue-dyn_radar.html +1 -1
  194. package/docs/examples/w-echarts-vue-dyn_scatter.html +1 -1
  195. package/docs/examples/w-echarts-vue-dyn_stack.html +1 -1
  196. package/docs/examples/w-echarts-vue-dyn_surface.html +1 -1
  197. package/docs/examples/w-echarts-vue-dyn_tree.html +1 -1
  198. package/docs/examples/w-echarts-vue-dyn_treemap.html +1 -1
  199. package/docs/examples/w-explorer_bindRoot.html +1 -1
  200. package/docs/examples/w-explorer_btnDisplayTreeBackgroundColor_btnDisplayTreeBackgroundColorHover_btnDisplayTreeBackgroundColorFocus.html +1 -1
  201. package/docs/examples/w-explorer_btnDisplayTreeIconColor_btnDisplayTreeIconColorHover_btnDisplayTreeIconColorFocus.html +1 -1
  202. package/docs/examples/w-explorer_btnDisplayTreeIconShow_btnDisplayTreeIconHide_btnDisplayTreeIconSize.html +1 -1
  203. package/docs/examples/w-explorer_dark mode.html +1 -1
  204. package/docs/examples/w-explorer_default.html +1 -1
  205. package/docs/examples/w-explorer_defaultShowTreeFirst.html +1 -1
  206. package/docs/examples/w-explorer_defaultShowTreeFirst_noSelectedText.html +1 -1
  207. package/docs/examples/w-explorer_events.html +1 -1
  208. package/docs/examples/w-explorer_funSortTree.html +1 -1
  209. package/docs/examples/w-explorer_lineBetweenPathAndListWidth_lineBetweenPathAndListColor.html +1 -1
  210. package/docs/examples/w-explorer_listBackgroundColor.html +1 -1
  211. package/docs/examples/w-explorer_listFolderIcon_listFileIcon_listIconSize.html +1 -1
  212. package/docs/examples/w-explorer_listItemBackgroundColor_listItemBackgroundColorHover_listItemBackgroundColorActive.html +1 -1
  213. package/docs/examples/w-explorer_listItemIconColor_listItemIconColorHover_listItemIconColorActive.html +1 -1
  214. package/docs/examples/w-explorer_listItemRippleColor.html +1 -1
  215. package/docs/examples/w-explorer_listItemTextColor_listItemTextColorHover_listItemTextColorActive.html +1 -1
  216. package/docs/examples/w-explorer_listItemTextFontSize.html +1 -1
  217. package/docs/examples/w-explorer_listPaddingStyle.html +1 -1
  218. package/docs/examples/w-explorer_pathBackgroundColor.html +1 -1
  219. package/docs/examples/w-explorer_pathBtnBackgroundColor_pathBtnBackgroundColorHover.html +1 -1
  220. package/docs/examples/w-explorer_pathBtnTextColor_pathBtnTextColorHover.html +1 -1
  221. package/docs/examples/w-explorer_pathBtnTextFontSize.html +1 -1
  222. package/docs/examples/w-explorer_pathSepIcon_pathSepIconColor_pathSepIconSize.html +1 -1
  223. package/docs/examples/w-explorer_showTree.html +1 -1
  224. package/docs/examples/w-explorer_slot list-item-cover.html +1 -1
  225. package/docs/examples/w-explorer_slot list-item-sub.html +1 -1
  226. package/docs/examples/w-explorer_slot list-item-text-left.html +1 -1
  227. package/docs/examples/w-explorer_slot list-item-text-right.html +1 -1
  228. package/docs/examples/w-explorer_slot list-item_list-item-cover_list-head_list-foot.html +1 -1
  229. package/docs/examples/w-explorer_small text.html +1 -1
  230. package/docs/examples/w-explorer_toggleTreeFoldersAll.html +1 -1
  231. package/docs/examples/w-explorer_toggleTreeFoldersByFun.html +1 -1
  232. package/docs/examples/w-explorer_treeAfloat.html +1 -1
  233. package/docs/examples/w-explorer_treeBackgroundColor.html +1 -1
  234. package/docs/examples/w-explorer_treeDefItemHeight_listDefItemHeight.html +1 -1
  235. package/docs/examples/w-explorer_treeDefaultDisplayLevel.html +1 -1
  236. package/docs/examples/w-explorer_treeDrawerBarSize_treeDrawerBarColor.html +1 -1
  237. package/docs/examples/w-explorer_treeFolderIconColor_treeFolderIconColorHover_treeFolderIconColorActive.html +1 -1
  238. package/docs/examples/w-explorer_treeFolderIcon_treeFolderIconSize.html +1 -1
  239. package/docs/examples/w-explorer_treeIndent.html +1 -1
  240. package/docs/examples/w-explorer_treeItemBackgroundColor_treeItemBackgroundColorHover_treeItemBackgroundColorActive.html +1 -1
  241. package/docs/examples/w-explorer_treeItemRippleColor.html +1 -1
  242. package/docs/examples/w-explorer_treeItemTextColor_treeItemTextColorHover_treeItemTextColorActive.html +1 -1
  243. package/docs/examples/w-explorer_treeItemTextFontSize.html +1 -1
  244. package/docs/examples/w-explorer_treePaddingStyle.html +1 -1
  245. package/docs/examples/w-explorer_treeToggleIconColor_treeToggleIconBackgroundColor_treeToggleIconBackgroundColorHover.html +1 -1
  246. package/docs/examples/w-explorer_treeToggleIconSize.html +1 -1
  247. package/docs/examples/w-explorer_treeWidth.html +1 -1
  248. package/docs/examples/w-explorer_treeWidthMin_treeWidthMax.html +1 -1
  249. package/docs/examples/w-explorer_triggerClickTreeFolderByFun.html +1 -1
  250. package/docs/examples/w-explorer_triggerClickTreeFolderById.html +1 -1
  251. package/docs/examples/w-group-baggage_connLineColor.html +1 -1
  252. package/docs/examples/w-group-baggage_connLineWidth.html +1 -1
  253. package/docs/examples/w-group-baggage_connLineZoneWidth.html +1 -1
  254. package/docs/examples/w-group-baggage_contentBackgroundColor_contentBackgroundColorHover.html +1 -1
  255. package/docs/examples/w-group-baggage_contentBorderColor_contentBorderColorHover.html +1 -1
  256. package/docs/examples/w-group-baggage_contentBorderRadius.html +1 -1
  257. package/docs/examples/w-group-baggage_contentBorderWidth.html +1 -1
  258. package/docs/examples/w-group-baggage_contentPaddingStyle.html +1 -1
  259. package/docs/examples/w-group-baggage_contentTextColor_contentTextColorHover.html +1 -1
  260. package/docs/examples/w-group-baggage_contentTextFontSize.html +1 -1
  261. package/docs/examples/w-group-baggage_default.html +1 -1
  262. package/docs/examples/w-group-baggage_keyTag_keyText.html +1 -1
  263. package/docs/examples/w-group-baggage_slot tag.html +1 -1
  264. package/docs/examples/w-group-baggage_slot text-sub.html +1 -1
  265. package/docs/examples/w-group-baggage_slot text_contentPaddingStyle.html +1 -1
  266. package/docs/examples/w-group-baggage_tagBackgroundColor_tagBackgroundColorHover.html +1 -1
  267. package/docs/examples/w-group-baggage_tagBorderColor_tagBorderColorHover.html +1 -1
  268. package/docs/examples/w-group-baggage_tagBorderRadius.html +1 -1
  269. package/docs/examples/w-group-baggage_tagBorderWidth.html +1 -1
  270. package/docs/examples/w-group-baggage_tagClickable_contentClickable_events.html +1 -1
  271. package/docs/examples/w-group-baggage_tagDistBetweenTopAndBaseline.html +1 -1
  272. package/docs/examples/w-group-baggage_tagPaddingStyle_contentShiftTopFromBaseline.html +1 -1
  273. package/docs/examples/w-group-baggage_tagTextColor_tagTextColorHover.html +1 -1
  274. package/docs/examples/w-group-baggage_tagTextFontSize_contentShiftTopFromBaseline.html +1 -1
  275. package/docs/examples/w-group-check_backgroundColorActive.html +1 -1
  276. package/docs/examples/w-group-check_backgroundColor_backgroundColorHover.html +1 -1
  277. package/docs/examples/w-group-check_borderColor_borderColorHover_borderColorActive.html +1 -1
  278. package/docs/examples/w-group-check_borderRadius.html +1 -1
  279. package/docs/examples/w-group-check_borderRadius_borderRadiusStyle_paddingStyle.html +1 -1
  280. package/docs/examples/w-group-check_borderWidth_borderColor_borderColorHover_borderColorActive.html +1 -1
  281. package/docs/examples/w-group-check_click (console.log).html +1 -1
  282. package/docs/examples/w-group-check_default.html +1 -1
  283. package/docs/examples/w-group-check_group (only one).html +1 -1
  284. package/docs/examples/w-group-check_group_borderColor_borderColorHover_borderColorActive.html +1 -1
  285. package/docs/examples/w-group-check_group_groupBorderRadiusStyle_groupShift_borderRadius.html +1 -1
  286. package/docs/examples/w-group-check_icon (fontawesome).html +1 -1
  287. package/docs/examples/w-group-check_icon (material).html +1 -1
  288. package/docs/examples/w-group-check_iconColorActive.html +1 -1
  289. package/docs/examples/w-group-check_iconColor_iconColorHover.html +1 -1
  290. package/docs/examples/w-group-check_loading.html +1 -1
  291. package/docs/examples/w-group-check_loading_loadingColor.html +1 -1
  292. package/docs/examples/w-group-check_marginStyle.html +1 -1
  293. package/docs/examples/w-group-check_no shadowActive.html +1 -1
  294. package/docs/examples/w-group-check_not editable.html +1 -1
  295. package/docs/examples/w-group-check_paddingStyle_borderRadius_textColor_iconColor.html +1 -1
  296. package/docs/examples/w-group-check_paddingStyle_iconSize_textFontSize.html +1 -1
  297. package/docs/examples/w-group-check_shadow.html +1 -1
  298. package/docs/examples/w-group-check_shadowActiveStyle.html +1 -1
  299. package/docs/examples/w-group-check_shadow_shadowStyle.html +1 -1
  300. package/docs/examples/w-group-check_shiftLeft.html +1 -1
  301. package/docs/examples/w-group-check_shiftLeft_shiftRight.html +1 -1
  302. package/docs/examples/w-group-check_slot_shadow.html +1 -1
  303. package/docs/examples/w-group-check_textColor.html +1 -1
  304. package/docs/examples/w-group-check_textColorActive.html +1 -1
  305. package/docs/examples/w-group-check_textColor_textColorHover.html +1 -1
  306. package/docs/examples/w-group-check_tooltip.html +1 -1
  307. package/docs/examples/w-group-dragdrop_default.html +1 -1
  308. package/docs/examples/w-group-dragdrop_event (dragdrop).html +1 -1
  309. package/docs/examples/w-group-dragdrop_items(string array).html +1 -1
  310. package/docs/examples/w-group-dragdrop_keyBinder.html +1 -1
  311. package/docs/examples/w-group-dragdrop_not draggable.html +1 -1
  312. package/docs/examples/w-group-dragdrop_not itemStyleInline (block).html +1 -1
  313. package/docs/examples/w-group-radio_backgroundColorActive.html +1 -1
  314. package/docs/examples/w-group-radio_backgroundColor_backgroundColorHover.html +1 -1
  315. package/docs/examples/w-group-radio_borderColor_borderColorHover_borderColorActive.html +1 -1
  316. package/docs/examples/w-group-radio_borderRadius.html +1 -1
  317. package/docs/examples/w-group-radio_borderRadius_borderRadiusStyle_paddingStyle.html +1 -1
  318. package/docs/examples/w-group-radio_borderWidth_borderColor_borderColorHover_borderColorActive.html +1 -1
  319. package/docs/examples/w-group-radio_click (console.log).html +1 -1
  320. package/docs/examples/w-group-radio_default.html +1 -1
  321. package/docs/examples/w-group-radio_group (only one).html +1 -1
  322. package/docs/examples/w-group-radio_group_borderColor_borderColorHover_borderColorActive.html +1 -1
  323. package/docs/examples/w-group-radio_group_groupBorderRadiusStyle_groupShift_borderRadius.html +1 -1
  324. package/docs/examples/w-group-radio_icon (fontawesome).html +1 -1
  325. package/docs/examples/w-group-radio_icon (material).html +1 -1
  326. package/docs/examples/w-group-radio_iconColorActive.html +1 -1
  327. package/docs/examples/w-group-radio_iconColor_iconColorHover.html +1 -1
  328. package/docs/examples/w-group-radio_loading.html +1 -1
  329. package/docs/examples/w-group-radio_loading_loadingColor.html +1 -1
  330. package/docs/examples/w-group-radio_marginStyle.html +1 -1
  331. package/docs/examples/w-group-radio_no shadowActive.html +1 -1
  332. package/docs/examples/w-group-radio_not editable.html +1 -1
  333. package/docs/examples/w-group-radio_paddingStyle_borderRadius_textColor_iconColor.html +1 -1
  334. package/docs/examples/w-group-radio_paddingStyle_iconSize_textFontSize.html +1 -1
  335. package/docs/examples/w-group-radio_shadow.html +1 -1
  336. package/docs/examples/w-group-radio_shadowActiveStyle.html +1 -1
  337. package/docs/examples/w-group-radio_shadow_shadowStyle.html +1 -1
  338. package/docs/examples/w-group-radio_shiftLeft.html +1 -1
  339. package/docs/examples/w-group-radio_shiftLeft_shiftRight.html +1 -1
  340. package/docs/examples/w-group-radio_slot_shadow.html +1 -1
  341. package/docs/examples/w-group-radio_textColor.html +1 -1
  342. package/docs/examples/w-group-radio_textColorActive.html +1 -1
  343. package/docs/examples/w-group-radio_textColor_textColorHover.html +1 -1
  344. package/docs/examples/w-group-radio_tooltip.html +1 -1
  345. package/docs/examples/w-group-tags_backgroundColor_backgroundColorHover.html +1 -1
  346. package/docs/examples/w-group-tags_borderColor_borderColorHover.html +1 -1
  347. package/docs/examples/w-group-tags_borderRadius.html +1 -1
  348. package/docs/examples/w-group-tags_closeWithInterceptor.html +1 -1
  349. package/docs/examples/w-group-tags_default.html +1 -1
  350. package/docs/examples/w-group-tags_editableClose(no close button).html +1 -1
  351. package/docs/examples/w-group-tags_editableInput(no slot input).html +1 -1
  352. package/docs/examples/w-group-tags_enableCloseEventOnly.html +1 -1
  353. package/docs/examples/w-group-tags_icon (fontawesome).html +1 -1
  354. package/docs/examples/w-group-tags_icon (material).html +1 -1
  355. package/docs/examples/w-group-tags_iconColor_iconColorHover_textColor_textColorHover.html +1 -1
  356. package/docs/examples/w-group-tags_icon_iconColor_iconColorHover.html +1 -1
  357. package/docs/examples/w-group-tags_inputTextButtonTooltip.html +1 -1
  358. package/docs/examples/w-group-tags_inputTextColor_inputTextBorderColor_inputTextBorderColorHover_inputTextBorderColorFocus.html +1 -1
  359. package/docs/examples/w-group-tags_inputTextWidth.html +1 -1
  360. package/docs/examples/w-group-tags_marginStyle.html +1 -1
  361. package/docs/examples/w-group-tags_modify loading by callback in click.html +1 -1
  362. package/docs/examples/w-group-tags_modify loading_textColor_textColorHover.html +1 -1
  363. package/docs/examples/w-group-tags_modify prog by callback in click.html +1 -1
  364. package/docs/examples/w-group-tags_no shadow_borderColor_borderColorHover.html +1 -1
  365. package/docs/examples/w-group-tags_not draggable.html +1 -1
  366. package/docs/examples/w-group-tags_not editable.html +1 -1
  367. package/docs/examples/w-group-tags_not editable_nodata.html +1 -1
  368. package/docs/examples/w-group-tags_object items.html +1 -1
  369. package/docs/examples/w-group-tags_object items_addButtonTextColor_addButtonTextColorHover_addButtonIconColor.html +1 -1
  370. package/docs/examples/w-group-tags_object items_addButtonText_addButtonTooltip.html +1 -1
  371. package/docs/examples/w-group-tags_object items_keyIcon.html +1 -1
  372. package/docs/examples/w-group-tags_object items_keyText.html +1 -1
  373. package/docs/examples/w-group-tags_object items_keyTooltip.html +1 -1
  374. package/docs/examples/w-group-tags_object items_slot item.html +1 -1
  375. package/docs/examples/w-group-tags_object items_slot item_editableInput(no slot input)_useActive.html +1 -1
  376. package/docs/examples/w-group-tags_object items_slot item_useColorsFromItem_editableInput(no slot input).html +1 -1
  377. package/docs/examples/w-group-tags_paddingStyle_icon_iconSize_textFontSize.html +1 -1
  378. package/docs/examples/w-group-tags_progColor_progBackgroundColor.html +1 -1
  379. package/docs/examples/w-group-tags_shadowStyle.html +1 -1
  380. package/docs/examples/w-group-tags_shiftLeft.html +1 -1
  381. package/docs/examples/w-group-tags_slot input.html +1 -1
  382. package/docs/examples/w-group-tags_slot item.html +1 -1
  383. package/docs/examples/w-group-tags_slot item_useActive_valueActive_paddingStyle.html +1 -1
  384. package/docs/examples/w-group-tags_suggests.html +1 -1
  385. package/docs/examples/w-group-tags_suggests_inputTextColor_inputExpansionIconColor.html +1 -1
  386. package/docs/examples/w-group-tags_suggests_placeholder_noResultsText.html +1 -1
  387. package/docs/examples/w-group-tags_suggests_suggectItemFontSize_suggectItemTextColor_suggectItemTextColorHover.html +1 -1
  388. package/docs/examples/w-group-tags_textColor.html +1 -1
  389. package/docs/examples/w-group-tags_textColor_textColorHover.html +1 -1
  390. package/docs/examples/w-group-tags_useActive_valueActive.html +1 -1
  391. package/docs/examples/w-highcharts-bitmap-dyn_render (need w-hc2png-server).html +1 -1
  392. package/docs/examples/w-highcharts-vue-dyn_area.html +1 -1
  393. package/docs/examples/w-highcharts-vue-dyn_bar.html +1 -1
  394. package/docs/examples/w-highcharts-vue-dyn_heatmap.html +1 -1
  395. package/docs/examples/w-highcharts-vue-dyn_large heatmap.html +1 -1
  396. package/docs/examples/w-highcharts-vue-dyn_line.html +1 -1
  397. package/docs/examples/w-highcharts-vue-dyn_pie.html +1 -1
  398. package/docs/examples/w-highstock-vue-dyn_area.html +1 -1
  399. package/docs/examples/w-highstock-vue-dyn_line.html +1 -1
  400. package/docs/examples/w-icon-svg_path (mdi-access-point)_size.html +1 -1
  401. package/docs/examples/w-icon-svg_path (mdi-account-badge-horizontal)_timeTransition.html +1 -1
  402. package/docs/examples/w-icon-svg_path (mdi-fruit-cherries).html +1 -1
  403. package/docs/examples/w-icon-svg_path (mdi-graph-outline)_color_colorHover.html +1 -1
  404. package/docs/examples/w-icon-svg_path (use 3 paths)_sizeOriginal.html +1 -1
  405. package/docs/examples/w-icon-svg_path_sizeOriginal.html +1 -1
  406. package/docs/examples/w-image-cascading-dyn_arrangeWhenFinish.html +1 -1
  407. package/docs/examples/w-image-cascading-dyn_colNum.html +1 -1
  408. package/docs/examples/w-image-cascading-dyn_default(imageWidth=300).html +1 -1
  409. package/docs/examples/w-image-cascading-dyn_imageWidth.html +1 -1
  410. package/docs/examples/w-image-cascading-dyn_imageWidthSoft.html +1 -1
  411. package/docs/examples/w-image-viewer-dyn_multiple image with navbar.html +1 -1
  412. package/docs/examples/w-image-viewer-dyn_one image.html +1 -1
  413. package/docs/examples/w-input-checkbox_arrange_marginStyle.html +1 -1
  414. package/docs/examples/w-input-checkbox_arrange_paddingStyle.html +1 -1
  415. package/docs/examples/w-input-checkbox_click (console.log).html +1 -1
  416. package/docs/examples/w-input-checkbox_default.html +1 -1
  417. package/docs/examples/w-input-checkbox_marginStyle.html +1 -1
  418. package/docs/examples/w-input-checkbox_not editable.html +1 -1
  419. package/docs/examples/w-input-checkbox_object items_keyText.html +1 -1
  420. package/docs/examples/w-input-checkbox_paddingStyle.html +1 -1
  421. package/docs/examples/w-input-checkbox_slot_paddingStyle_verticalAlign_inputHeight.html +1 -1
  422. package/docs/examples/w-input-checkbox_textColor_textColorHover_textColorActive.html +1 -1
  423. package/docs/examples/w-input-radio_arrange_marginStyle.html +1 -1
  424. package/docs/examples/w-input-radio_arrange_paddingStyle.html +1 -1
  425. package/docs/examples/w-input-radio_click (console.log).html +1 -1
  426. package/docs/examples/w-input-radio_default.html +1 -1
  427. package/docs/examples/w-input-radio_marginStyle.html +1 -1
  428. package/docs/examples/w-input-radio_not editable.html +1 -1
  429. package/docs/examples/w-input-radio_object items_keyText.html +1 -1
  430. package/docs/examples/w-input-radio_paddingStyle.html +1 -1
  431. package/docs/examples/w-input-radio_slot_paddingStyle_verticalAlign_inputHeight.html +1 -1
  432. package/docs/examples/w-input-radio_textColor_textColorHover_textColorActive.html +1 -1
  433. package/docs/examples/w-json-view_default.html +1 -1
  434. package/docs/examples/w-json-view_events.html +1 -1
  435. package/docs/examples/w-json-view_filterKeywords_filterFunction.html +1 -1
  436. package/docs/examples/w-json-view_filterKeywords_noResultsText.html +1 -1
  437. package/docs/examples/w-json-view_iconColor_keyColor_keyNumbersColor_numColor.html +1 -1
  438. package/docs/examples/w-json-view_iconSize(24)_defItemHeight(32).html +1 -1
  439. package/docs/examples/w-json-view_large data (15,500 lines).html +1 -1
  440. package/docs/examples/w-json-view_no viewHeightMax.html +1 -1
  441. package/docs/examples/w-json-view_rippleColor.html +1 -1
  442. package/docs/examples/w-json-view_toggleItemsAll.html +1 -1
  443. package/docs/examples/w-json-view_toggleItemsByFun.html +1 -1
  444. package/docs/examples/w-json-view_viewHeightMax.html +1 -1
  445. package/docs/examples/w-leaflet-vue-dyn_contourSet for rain data.html +1 -1
  446. package/docs/examples/w-leaflet-vue-dyn_contourSets.html +1 -1
  447. package/docs/examples/w-leaflet-vue-dyn_pointSets.html +1 -1
  448. package/docs/examples/w-leaflet-vue-dyn_polygonSets.html +1 -1
  449. package/docs/examples/w-list-expand_activeMode(multi).html +1 -1
  450. package/docs/examples/w-list-expand_auto scroll.html +1 -1
  451. package/docs/examples/w-list-expand_default.html +1 -1
  452. package/docs/examples/w-list-expand_itemBackgroundColor_itemBackgroundColorHover_itemBackgroundColorActive.html +1 -1
  453. package/docs/examples/w-list-expand_keyText_keyIcon_keyDsp.html +1 -1
  454. package/docs/examples/w-list-expand_paddingStyle.html +1 -1
  455. package/docs/examples/w-list-expand_slot footer.html +1 -1
  456. package/docs/examples/w-list-expand_slot header.html +1 -1
  457. package/docs/examples/w-list-expand_slot item-content_itemTextColor_itemTextColorHover_itemTextColorActive.html +1 -1
  458. package/docs/examples/w-list-expand_slot item-header_item-content.html +1 -1
  459. package/docs/examples/w-list-horizontal_borderBottomSize.html +1 -1
  460. package/docs/examples/w-list-horizontal_default.html +1 -1
  461. package/docs/examples/w-list-horizontal_itemBackgroundColor_itemBackgroundColorHover_itemBackgroundColorActive.html +1 -1
  462. package/docs/examples/w-list-horizontal_itemBorderRadius.html +1 -1
  463. package/docs/examples/w-list-horizontal_itemBorderRadius_space.html +1 -1
  464. package/docs/examples/w-list-horizontal_itemRippleColor.html +1 -1
  465. package/docs/examples/w-list-horizontal_itemRippleColor_borderBottomColor_itemTextColorActive_itemIconColorActive.html +1 -1
  466. package/docs/examples/w-list-horizontal_itemTextFontSize_itemIconSize.html +1 -1
  467. package/docs/examples/w-list-horizontal_keyText_keyIcon.html +1 -1
  468. package/docs/examples/w-list-horizontal_no borderBottom.html +1 -1
  469. package/docs/examples/w-list-horizontal_paddingStyle.html +1 -1
  470. package/docs/examples/w-list-horizontal_paddingStyle_borderBottomColor_itemRippleColor_itemTextColor.html +1 -1
  471. package/docs/examples/w-list-horizontal_slot.html +1 -1
  472. package/docs/examples/w-list-horizontal_space.html +1 -1
  473. package/docs/examples/w-list-horizontal_string items.html +1 -1
  474. package/docs/examples/w-list-vertical_auto scroll.html +1 -1
  475. package/docs/examples/w-list-vertical_default.html +1 -1
  476. package/docs/examples/w-list-vertical_itemActive.html +1 -1
  477. package/docs/examples/w-list-vertical_itemActive_itemBackgroundColor_itemBackgroundColorHover_itemBackgroundColorActive.html +1 -1
  478. package/docs/examples/w-list-vertical_itemActive_itemTextColor_itemTextColorHover_itemTextColorActive.html +1 -1
  479. package/docs/examples/w-list-vertical_keyText_keyIcon.html +1 -1
  480. package/docs/examples/w-list-vertical_paddingStyle.html +1 -1
  481. package/docs/examples/w-list-vertical_slot footer.html +1 -1
  482. package/docs/examples/w-list-vertical_slot header.html +1 -1
  483. package/docs/examples/w-list-vertical_slot item.html +1 -1
  484. package/docs/examples/w-list-vertical_string items.html +1 -1
  485. package/docs/examples/w-list-vertical_useActive (no active).html +1 -1
  486. package/docs/examples/w-list-vertical_useActive (no active)_itemRippleColor.html +1 -1
  487. package/docs/examples/w-panel-avatar_avatarBackgroundColor.html +1 -1
  488. package/docs/examples/w-panel-avatar_avatarBorderRadius.html +1 -1
  489. package/docs/examples/w-panel-avatar_avatarBorderWidth_avatarBorderColor_avatarBackgroundColor.html +1 -1
  490. package/docs/examples/w-panel-avatar_avatarIcon (fontawesome).html +1 -1
  491. package/docs/examples/w-panel-avatar_avatarIcon (material).html +1 -1
  492. package/docs/examples/w-panel-avatar_avatarIcon_avatarIconSize_avatarIconColor_avatarBackgroundColor.html +1 -1
  493. package/docs/examples/w-panel-avatar_avatarOuterPadding_avatarInnerPadding.html +1 -1
  494. package/docs/examples/w-panel-avatar_contentBackgroundColor.html +1 -1
  495. package/docs/examples/w-panel-avatar_contentBorderRadius.html +1 -1
  496. package/docs/examples/w-panel-avatar_contentShadow.html +1 -1
  497. package/docs/examples/w-panel-avatar_default.html +1 -1
  498. package/docs/examples/w-panel-avatar_headerPadding_headerTextColor_headerTextSize_subHeaderTextColor.html +1 -1
  499. package/docs/examples/w-panel-avatar_headerVerticalAlign_spaceVBetweenHeaderAndContent.html +1 -1
  500. package/docs/examples/w-panel-avatar_no avatarShadow.html +1 -1
  501. package/docs/examples/w-panel-avatar_sepLineWidth_sepLineColor.html +1 -1
  502. package/docs/examples/w-panel-avatar_shiftVFromAvaterCenter.html +1 -1
  503. package/docs/examples/w-panel-avatar_slot avatar_avatarBackgroundColor.html +1 -1
  504. package/docs/examples/w-panel-avatar_spaceHBetweenAvatarAndHeader_spaceVBetweenHeaderAndContent.html +1 -1
  505. package/docs/examples/w-panel-bulge_contentBackgroundColor.html +1 -1
  506. package/docs/examples/w-panel-bulge_contentBorderRadius.html +1 -1
  507. package/docs/examples/w-panel-bulge_default.html +1 -1
  508. package/docs/examples/w-panel-bulge_headerBorderRadius.html +1 -1
  509. package/docs/examples/w-panel-bulge_headerTextColor_headerBackgroundColor.html +1 -1
  510. package/docs/examples/w-panel-bulge_no headerShadow_no contentShadow, with green outer.html +1 -1
  511. package/docs/examples/w-panel-bulge_paddingStyle.html +1 -1
  512. package/docs/examples/w-panel-bulge_slot for header_headerBorderRadius_headerBackgroundColor(linear-gradient).html +1 -1
  513. package/docs/examples/w-panel-bulge_with grey outer.html +1 -1
  514. package/docs/examples/w-panel-divide-horizontal_barBorderSize_barBorderColor.html +1 -1
  515. package/docs/examples/w-panel-divide-horizontal_barColor.html +1 -1
  516. package/docs/examples/w-panel-divide-horizontal_barSize.html +1 -1
  517. package/docs/examples/w-panel-divide-horizontal_default.html +1 -1
  518. package/docs/examples/w-panel-divide-horizontal_leftWidthMin_leftWidthMax.html +1 -1
  519. package/docs/examples/w-panel-divide-horizontal_ratio.html +1 -1
  520. package/docs/examples/w-panel-divide-horizontal_ratioMin_ratioMax.html +1 -1
  521. package/docs/examples/w-panel-divide-horizontal_rightWidthMin_rightWidthMax.html +1 -1
  522. package/docs/examples/w-panel-divide-vertical_barBorderSize_barBorderColor.html +1 -1
  523. package/docs/examples/w-panel-divide-vertical_barColor.html +1 -1
  524. package/docs/examples/w-panel-divide-vertical_barSize.html +1 -1
  525. package/docs/examples/w-panel-divide-vertical_bottomHeightMin_bottomHeightMax.html +1 -1
  526. package/docs/examples/w-panel-divide-vertical_default.html +1 -1
  527. package/docs/examples/w-panel-divide-vertical_ratio.html +1 -1
  528. package/docs/examples/w-panel-divide-vertical_ratioMin_ratioMax.html +1 -1
  529. package/docs/examples/w-panel-divide-vertical_topHeightMin_topHeightMax.html +1 -1
  530. package/docs/examples/w-panel-scale_for select.html +1 -1
  531. package/docs/examples/w-panel-scale_for v-btn.html +1 -1
  532. package/docs/examples/w-panel-scale_for w-panel-bulge.html +1 -1
  533. package/docs/examples/w-panel-scale_for w-panel-scrolly.html +1 -1
  534. package/docs/examples/w-panel-scale_for w-text-suggest.html +1 -1
  535. package/docs/examples/w-panel-scrolly_barOpacity_barOpacityHover.html +1 -1
  536. package/docs/examples/w-panel-scrolly_default.html +1 -1
  537. package/docs/examples/w-panel-scrolly_events.html +1 -1
  538. package/docs/examples/w-panel-scrolly_scrollTop.html +1 -1
  539. package/docs/examples/w-panel-stripe_borderRadius.html +1 -1
  540. package/docs/examples/w-panel-stripe_buttons in slot footer.html +1 -1
  541. package/docs/examples/w-panel-stripe_headerBackgroundColor_footerBackgroundColor.html +1 -1
  542. package/docs/examples/w-panel-stripe_no footer.html +1 -1
  543. package/docs/examples/w-panel-stripe_no header.html +1 -1
  544. package/docs/examples/w-panel-stripe_no shadow, with crimson outer.html +1 -1
  545. package/docs/examples/w-panel-stripe_only slot icon and slot title in header.html +1 -1
  546. package/docs/examples/w-panel-stripe_only slot title in header.html +1 -1
  547. package/docs/examples/w-panel-stripe_padding.html +1 -1
  548. package/docs/examples/w-panel-stripe_separate for slot content.html +1 -1
  549. package/docs/examples/w-panel-stripe_slot icon (fontawesome).html +1 -1
  550. package/docs/examples/w-panel-stripe_slot icon, slot title, slot description, slot content and slot footer.html +1 -1
  551. package/docs/examples/w-panel-stripe_table in slot content.html +1 -1
  552. package/docs/examples/w-panel-stripe_with grey outer.html +1 -1
  553. package/docs/examples/w-popup-edit-text_default.html +1 -1
  554. package/docs/examples/w-popup-edit-text_in table.html +1 -1
  555. package/docs/examples/w-popup-edit-text_minWidthForPopup.html +1 -1
  556. package/docs/examples/w-popup-edit-text_minWidthForValue.html +1 -1
  557. package/docs/examples/w-popup-edit-text_no title.html +1 -1
  558. package/docs/examples/w-popup-edit-text_title_contentIcon_contentIconColor_contentIconSize.html +1 -1
  559. package/docs/examples/w-popup-edit-text_title_footerBackgroundColor.html +1 -1
  560. package/docs/examples/w-popup-edit-text_title_inputTextColor_contentIconColor_contentBackgroundColor.html +1 -1
  561. package/docs/examples/w-popup-edit-text_title_saveBtnText_saveBtnTextColor_saveBtnTextColorHover.html +1 -1
  562. package/docs/examples/w-popup-edit-text_title_titleColor_titleFontSize_headerBackgroundColor.html +1 -1
  563. package/docs/examples/w-popup_auto flipping in dialog.html +1 -1
  564. package/docs/examples/w-popup_auto flipping in scroll panel.html +1 -1
  565. package/docs/examples/w-popup_autoFitMaxWidth.html +1 -1
  566. package/docs/examples/w-popup_autoFitMinWidth.html +1 -1
  567. package/docs/examples/w-popup_backgroundColor.html +1 -1
  568. package/docs/examples/w-popup_borderRadius.html +1 -1
  569. package/docs/examples/w-popup_click item by latency hiding.html +1 -1
  570. package/docs/examples/w-popup_default.html +1 -1
  571. package/docs/examples/w-popup_in popup.html +1 -1
  572. package/docs/examples/w-popup_in scroll panel.html +1 -1
  573. package/docs/examples/w-popup_isolated.html +1 -1
  574. package/docs/examples/w-popup_maxWidth.html +1 -1
  575. package/docs/examples/w-popup_minWidth.html +1 -1
  576. package/docs/examples/w-popup_no shadow_backgroundColor.html +1 -1
  577. package/docs/examples/w-popup_not editable.html +1 -1
  578. package/docs/examples/w-popup_paddingStyle.html +1 -1
  579. package/docs/examples/w-popup_placement.html +1 -1
  580. package/docs/examples/w-popup_placementDist.html +1 -1
  581. package/docs/examples/w-popup_shadowStyle.html +1 -1
  582. package/docs/examples/w-popup_slot for table_maxWidth.html +1 -1
  583. package/docs/examples/w-popup_textColor_backgroundColor.html +1 -1
  584. package/docs/examples/w-popup_textFontSize.html +1 -1
  585. package/docs/examples/w-popup_transitionTime.html +1 -1
  586. package/docs/examples/w-progress-bar_decimal.html +1 -1
  587. package/docs/examples/w-progress-bar_default.html +1 -1
  588. package/docs/examples/w-progress-bar_enableIconFinish (no iconFinish).html +1 -1
  589. package/docs/examples/w-progress-bar_enableIconWaiting (no iconWaiting).html +1 -1
  590. package/docs/examples/w-progress-bar_height.html +1 -1
  591. package/docs/examples/w-progress-bar_height_borderRadius.html +1 -1
  592. package/docs/examples/w-progress-bar_iconFinish (fontawesome).html +1 -1
  593. package/docs/examples/w-progress-bar_iconFinishColor.html +1 -1
  594. package/docs/examples/w-progress-bar_iconSize.html +1 -1
  595. package/docs/examples/w-progress-bar_iconWaiting (fontawesome).html +1 -1
  596. package/docs/examples/w-progress-bar_iconWaitingColor.html +1 -1
  597. package/docs/examples/w-progress-bar_progColor.html +1 -1
  598. package/docs/examples/w-progress-bar_progColor_progBackgroundColor.html +1 -1
  599. package/docs/examples/w-progress-bar_title.html +1 -1
  600. package/docs/examples/w-progress-bar_title_titleTextColor.html +1 -1
  601. package/docs/examples/w-progress-bar_title_titleTextFontSize.html +1 -1
  602. package/docs/examples/w-progress-bar_value=0 (waiting).html +1 -1
  603. package/docs/examples/w-progress-bar_value=100 (finish).html +1 -1
  604. package/docs/examples/w-progress-bar_valueTextColor.html +1 -1
  605. package/docs/examples/w-progress-bar_valueTextFontSize.html +1 -1
  606. package/docs/examples/w-progress-circle_color.html +1 -1
  607. package/docs/examples/w-progress-circle_color_trackColor.html +1 -1
  608. package/docs/examples/w-progress-circle_color_trackColor_textColor.html +1 -1
  609. package/docs/examples/w-progress-circle_default.html +1 -1
  610. package/docs/examples/w-progress-circle_small size.html +1 -1
  611. package/docs/examples/w-progress-circle_tooltip.html +1 -1
  612. package/docs/examples/w-progress-circle_tooltip_tooltipBorderRadius.html +1 -1
  613. package/docs/examples/w-progress-circle_tooltip_tooltipPaddingStyle.html +1 -1
  614. package/docs/examples/w-progress-circle_tooltip_tooltipTextColor_tooltipBackgroundColor.html +1 -1
  615. package/docs/examples/w-progress-circle_tooltip_tooltipTextFontSize.html +1 -1
  616. package/docs/examples/w-progress-circle_very small size.html +1 -1
  617. package/docs/examples/w-progress-circle_width.html +1 -1
  618. package/docs/examples/w-progress-circle_/344/270/255/346/226/207text.html +1 -1
  619. package/docs/examples/w-quill-vue-dyn_default.html +1 -1
  620. package/docs/examples/w-quill-vue-dyn_height.html +1 -1
  621. package/docs/examples/w-quill-vue-dyn_not editable.html +1 -1
  622. package/docs/examples/w-quill-vue-dyn_settings.html +1 -1
  623. package/docs/examples/w-switch_checkedSwitchCircleColor_checkedSwitchCircleColorHover_checkedSwitchBarColor_checkedSwitchBarColorHover.html +1 -1
  624. package/docs/examples/w-switch_default.html +1 -1
  625. package/docs/examples/w-switch_not editable.html +1 -1
  626. package/docs/examples/w-switch_not editable_checkedSwitchCircleColorDisabled_checkedSwitchBarColorDisabled_uncheckedSwitchCircleColorDisabled.html +1 -1
  627. package/docs/examples/w-switch_switchSize_textFontSize.html +1 -1
  628. package/docs/examples/w-switch_text.html +1 -1
  629. package/docs/examples/w-switch_text_textColor_textColorHover.html +1 -1
  630. package/docs/examples/w-switch_uncheckedSwitchCircleColor_uncheckedSwitchCircleColorHover_uncheckedSwitchBarColor_uncheckedSwitchBarColorHover.html +1 -1
  631. package/docs/examples/w-switch_use string (y or n).html +1 -1
  632. package/docs/examples/w-table-dyn_default.html +1 -1
  633. package/docs/examples/w-table-dyn_editable.html +1 -1
  634. package/docs/examples/w-table-dyn_editable_checkId.html +1 -1
  635. package/docs/examples/w-table-dyn_editable_checkId_opt.modifyDataWhenSave_save(call cmp. method).html +1 -1
  636. package/docs/examples/w-table-dyn_editable_checkId_successMsgFromAddRow_errorMsgFromAddRow.html +1 -1
  637. package/docs/examples/w-table-dyn_editable_checkId_tooltipAddRow_tooltipDeleteSelectedRows.html +1 -1
  638. package/docs/examples/w-table-dyn_editable_inforPaddingStyle_menuBackgroundColor.html +1 -1
  639. package/docs/examples/w-table-dyn_editable_opt.beforeAddRow.html +1 -1
  640. package/docs/examples/w-table-dyn_editable_opt.kpConvertKeysWhenUploadData.html +1 -1
  641. package/docs/examples/w-table-dyn_editable_opt.optForUploadData.html +1 -1
  642. package/docs/examples/w-table-dyn_editable_slot btns.html +1 -1
  643. package/docs/examples/w-table-dyn_editable_textLabelDataName_textPlaceholderDataName_textLabelDataDescription.html +1 -1
  644. package/docs/examples/w-table-dyn_fixIds (fix id).html +1 -1
  645. package/docs/examples/w-table-dyn_hideIds (hide mappingId).html +1 -1
  646. package/docs/examples/w-table-dyn_name_description.html +1 -1
  647. package/docs/examples/w-table-dyn_opt.kpHead.html +1 -1
  648. package/docs/examples/w-table-dyn_removeIdsWhenDownload (remove id, mappingId, order, isActive).html +1 -1
  649. package/docs/examples/w-table-dyn_slot btns.html +1 -1
  650. package/docs/examples/w-table-dyn_slot infor (name_description).html +1 -1
  651. package/docs/examples/w-table-dyn_sortColIds (sort by order).html +1 -1
  652. package/docs/examples/w-text-int_borderRadius.html +1 -1
  653. package/docs/examples/w-text-int_border_backgroundColor_backgroundColorHover_backgroundColorFocus.html +1 -1
  654. package/docs/examples/w-text-int_border_borderRadius.html +1 -1
  655. package/docs/examples/w-text-int_border_buttonColor_buttonColorHover_buttonColorFocus.html +1 -1
  656. package/docs/examples/w-text-int_border_default.html +1 -1
  657. package/docs/examples/w-text-int_border_not editable.html +1 -1
  658. package/docs/examples/w-text-int_border_width.html +1 -1
  659. package/docs/examples/w-text-int_buttonColor_buttonColorHover_buttonColorFocus.html +1 -1
  660. package/docs/examples/w-text-int_buttonIconSize.html +1 -1
  661. package/docs/examples/w-text-int_default.html +1 -1
  662. package/docs/examples/w-text-int_not editable.html +1 -1
  663. package/docs/examples/w-text-int_textColor.html +1 -1
  664. package/docs/examples/w-text-int_textFontSize.html +1 -1
  665. package/docs/examples/w-text-int_width.html +1 -1
  666. package/docs/examples/w-text-select_a lot of items.html +1 -1
  667. package/docs/examples/w-text-select_borderRadius.html +1 -1
  668. package/docs/examples/w-text-select_border_a lot of items.html +1 -1
  669. package/docs/examples/w-text-select_border_backgroundColor_backgroundColorHover_backgroundColorFocus.html +1 -1
  670. package/docs/examples/w-text-select_border_borderRadius.html +1 -1
  671. package/docs/examples/w-text-select_border_default.html +1 -1
  672. package/docs/examples/w-text-select_border_events.html +1 -1
  673. package/docs/examples/w-text-select_border_expansionIconSize.html +1 -1
  674. package/docs/examples/w-text-select_border_fullwidth.html +1 -1
  675. package/docs/examples/w-text-select_border_itemPaddingStyle.html +1 -1
  676. package/docs/examples/w-text-select_border_itemTextColor_itemTextColorHover_itemBackgroundColor.html +1 -1
  677. package/docs/examples/w-text-select_border_itemTextFontSize_defItemHeight.html +1 -1
  678. package/docs/examples/w-text-select_border_items(string array).html +1 -1
  679. package/docs/examples/w-text-select_border_keyText.html +1 -1
  680. package/docs/examples/w-text-select_border_leftIcon (fontawesome).html +1 -1
  681. package/docs/examples/w-text-select_border_leftIcon (material).html +1 -1
  682. package/docs/examples/w-text-select_border_leftIcon_leftIconColor_leftIconColorHover.html +1 -1
  683. package/docs/examples/w-text-select_border_leftIcon_leftIconSize.html +1 -1
  684. package/docs/examples/w-text-select_border_maxHeight.html +1 -1
  685. package/docs/examples/w-text-select_border_maxWidth_autoFitMinWidth_autoFitMaxWidth.html +1 -1
  686. package/docs/examples/w-text-select_border_minWidth_autoFitMinWidth_autoFitMaxWidth.html +1 -1
  687. package/docs/examples/w-text-select_border_not editable.html +1 -1
  688. package/docs/examples/w-text-select_border_paddingStyle (equal height to using icon).html +1 -1
  689. package/docs/examples/w-text-select_border_paddingStyle (thin style).html +1 -1
  690. package/docs/examples/w-text-select_border_rightIcon_rightIconColor_rightIconColorHover.html +1 -1
  691. package/docs/examples/w-text-select_border_rightIcon_rightIconSize.html +1 -1
  692. package/docs/examples/w-text-select_border_showExpansionIcon.html +1 -1
  693. package/docs/examples/w-text-select_border_slot item.html +1 -1
  694. package/docs/examples/w-text-select_border_slot select.html +1 -1
  695. package/docs/examples/w-text-select_border_textColor_expansionIconColor.html +1 -1
  696. package/docs/examples/w-text-select_border_textFontSize.html +1 -1
  697. package/docs/examples/w-text-select_border_with popup.html +1 -1
  698. package/docs/examples/w-text-select_default.html +1 -1
  699. package/docs/examples/w-text-select_events.html +1 -1
  700. package/docs/examples/w-text-select_expansionIconSize.html +1 -1
  701. package/docs/examples/w-text-select_fullwidth.html +1 -1
  702. package/docs/examples/w-text-select_itemPaddingStyle.html +1 -1
  703. package/docs/examples/w-text-select_itemTextColor_itemTextColorHover_itemBackgroundColor_itemBackgroundColorHover.html +1 -1
  704. package/docs/examples/w-text-select_itemTextFontSize_defItemHeight.html +1 -1
  705. package/docs/examples/w-text-select_items(string array).html +1 -1
  706. package/docs/examples/w-text-select_keyText.html +1 -1
  707. package/docs/examples/w-text-select_leftIcon (fontawesome).html +1 -1
  708. package/docs/examples/w-text-select_leftIcon (material).html +1 -1
  709. package/docs/examples/w-text-select_leftIcon_leftIconColor_leftIconColorHover_leftIconColorFocus.html +1 -1
  710. package/docs/examples/w-text-select_leftIcon_leftIconSize.html +1 -1
  711. package/docs/examples/w-text-select_maxHeight.html +1 -1
  712. package/docs/examples/w-text-select_maxWidth_autoFitMinWidth_autoFitMaxWidth.html +1 -1
  713. package/docs/examples/w-text-select_minWidth_autoFitMinWidth_autoFitMaxWidth.html +1 -1
  714. package/docs/examples/w-text-select_not editable.html +1 -1
  715. package/docs/examples/w-text-select_paddingStyle (equal height to using icon).html +1 -1
  716. package/docs/examples/w-text-select_paddingStyle (thin style).html +1 -1
  717. package/docs/examples/w-text-select_rightIcon_rightIconColor_rightIconColorHover_rightIconColorFocus.html +1 -1
  718. package/docs/examples/w-text-select_rightIcon_rightIconSize.html +1 -1
  719. package/docs/examples/w-text-select_showExpansionIcon.html +1 -1
  720. package/docs/examples/w-text-select_slot item.html +1 -1
  721. package/docs/examples/w-text-select_slot select.html +1 -1
  722. package/docs/examples/w-text-select_textColor_expansionIconColor.html +1 -1
  723. package/docs/examples/w-text-select_textFontSize.html +1 -1
  724. package/docs/examples/w-text-select_with popup.html +1 -1
  725. package/docs/examples/w-text-suggest_a lot of items.html +1 -1
  726. package/docs/examples/w-text-suggest_borderRadius.html +1 -1
  727. package/docs/examples/w-text-suggest_border_a lot of items.html +1 -1
  728. package/docs/examples/w-text-suggest_border_backgroundColor_backgroundColorHover_backgroundColorFocus.html +1 -1
  729. package/docs/examples/w-text-suggest_border_borderRadius.html +1 -1
  730. package/docs/examples/w-text-suggest_border_default.html +1 -1
  731. package/docs/examples/w-text-suggest_border_events.html +1 -1
  732. package/docs/examples/w-text-suggest_border_expansionIconSize.html +1 -1
  733. package/docs/examples/w-text-suggest_border_fullwidth.html +1 -1
  734. package/docs/examples/w-text-suggest_border_itemPaddingStyle.html +1 -1
  735. package/docs/examples/w-text-suggest_border_itemTextColor_itemTextColorHover_itemBackgroundColor.html +1 -1
  736. package/docs/examples/w-text-suggest_border_itemTextFontSize_defItemHeight.html +1 -1
  737. package/docs/examples/w-text-suggest_border_items(string array).html +1 -1
  738. package/docs/examples/w-text-suggest_border_keyText.html +1 -1
  739. package/docs/examples/w-text-suggest_border_leftIcon (fontawesome).html +1 -1
  740. package/docs/examples/w-text-suggest_border_leftIcon (material).html +1 -1
  741. package/docs/examples/w-text-suggest_border_leftIcon_leftIconColor_leftIconColorHover.html +1 -1
  742. package/docs/examples/w-text-suggest_border_leftIcon_leftIconSize.html +1 -1
  743. package/docs/examples/w-text-suggest_border_noResultsText.html +1 -1
  744. package/docs/examples/w-text-suggest_border_not editable.html +1 -1
  745. package/docs/examples/w-text-suggest_border_paddingStyle (equal height to using icon).html +1 -1
  746. package/docs/examples/w-text-suggest_border_paddingStyle (thin style).html +1 -1
  747. package/docs/examples/w-text-suggest_border_placeholder.html +1 -1
  748. package/docs/examples/w-text-suggest_border_rightIcon_rightIconColor_rightIconColorHover.html +1 -1
  749. package/docs/examples/w-text-suggest_border_rightIcon_rightIconSize.html +1 -1
  750. package/docs/examples/w-text-suggest_border_showExpansionIcon.html +1 -1
  751. package/docs/examples/w-text-suggest_border_showPanel(press enter to hide panel)_focused.html +1 -1
  752. package/docs/examples/w-text-suggest_border_slot item.html +1 -1
  753. package/docs/examples/w-text-suggest_border_textColor_expansionIconColor.html +1 -1
  754. package/docs/examples/w-text-suggest_border_textFontSize.html +1 -1
  755. package/docs/examples/w-text-suggest_border_with popup.html +1 -1
  756. package/docs/examples/w-text-suggest_default.html +1 -1
  757. package/docs/examples/w-text-suggest_events.html +1 -1
  758. package/docs/examples/w-text-suggest_expansionIconSize.html +1 -1
  759. package/docs/examples/w-text-suggest_fullwidth.html +1 -1
  760. package/docs/examples/w-text-suggest_itemPaddingStyle.html +1 -1
  761. package/docs/examples/w-text-suggest_itemTextColor_itemTextColorHover_itemBackgroundColor_itemBackgroundColorHover.html +1 -1
  762. package/docs/examples/w-text-suggest_itemTextFontSize_defItemHeight.html +1 -1
  763. package/docs/examples/w-text-suggest_items(string array).html +1 -1
  764. package/docs/examples/w-text-suggest_keyText.html +1 -1
  765. package/docs/examples/w-text-suggest_leftIcon (fontawesome).html +1 -1
  766. package/docs/examples/w-text-suggest_leftIcon (material).html +1 -1
  767. package/docs/examples/w-text-suggest_leftIcon_leftIconColor_leftIconColorHover_leftIconColorFocus.html +1 -1
  768. package/docs/examples/w-text-suggest_leftIcon_leftIconSize.html +1 -1
  769. package/docs/examples/w-text-suggest_maxHeight.html +1 -1
  770. package/docs/examples/w-text-suggest_maxWidth_autoFitMinWidth_autoFitMaxWidth.html +1 -1
  771. package/docs/examples/w-text-suggest_minWidth_autoFitMinWidth_autoFitMaxWidth.html +1 -1
  772. package/docs/examples/w-text-suggest_noResultsText.html +1 -1
  773. package/docs/examples/w-text-suggest_not editable.html +1 -1
  774. package/docs/examples/w-text-suggest_paddingStyle (equal height to using icon).html +1 -1
  775. package/docs/examples/w-text-suggest_paddingStyle (thin style).html +1 -1
  776. package/docs/examples/w-text-suggest_placeholder.html +1 -1
  777. package/docs/examples/w-text-suggest_rightIcon_rightIconColor_rightIconColorHover_rightIconColorFocus.html +1 -1
  778. package/docs/examples/w-text-suggest_rightIcon_rightIconSize.html +1 -1
  779. package/docs/examples/w-text-suggest_showExpansionIcon.html +1 -1
  780. package/docs/examples/w-text-suggest_showPanel(press enter to hide panel)_focused.html +1 -1
  781. package/docs/examples/w-text-suggest_slot item.html +1 -1
  782. package/docs/examples/w-text-suggest_textColor_expansionIconColor.html +1 -1
  783. package/docs/examples/w-text-suggest_textFontSize.html +1 -1
  784. package/docs/examples/w-text-suggest_with popup.html +1 -1
  785. package/docs/examples/w-text_border_backgroundColor_backgroundColorHover_backgroundColorFocus.html +1 -1
  786. package/docs/examples/w-text_border_borderRadius_paddingStyle.html +1 -1
  787. package/docs/examples/w-text_border_default.html +1 -1
  788. package/docs/examples/w-text_border_events.html +1 -1
  789. package/docs/examples/w-text_border_fullwidth.html +1 -1
  790. package/docs/examples/w-text_border_leftIcon (fontawesome).html +1 -1
  791. package/docs/examples/w-text_border_leftIcon (material).html +1 -1
  792. package/docs/examples/w-text_border_leftIcon_leftIconColor_leftIconColorHover.html +1 -1
  793. package/docs/examples/w-text_border_not editable.html +1 -1
  794. package/docs/examples/w-text_border_placeholder.html +1 -1
  795. package/docs/examples/w-text_border_rightIcon_rightIconColor_rightIconColorHover.html +1 -1
  796. package/docs/examples/w-text_border_textAlign.html +1 -1
  797. package/docs/examples/w-text_border_textColor.html +1 -1
  798. package/docs/examples/w-text_bottomLineBorderColor_bottomLineBorderColorHover_bottomLineBorderColorFocus.html +1 -1
  799. package/docs/examples/w-text_default.html +1 -1
  800. package/docs/examples/w-text_events.html +1 -1
  801. package/docs/examples/w-text_fullwidth.html +1 -1
  802. package/docs/examples/w-text_leftIcon (fontawesome).html +1 -1
  803. package/docs/examples/w-text_leftIcon (material).html +1 -1
  804. package/docs/examples/w-text_leftIcon_leftIconColor_leftIconColorHover_leftIconColorFocus.html +1 -1
  805. package/docs/examples/w-text_leftIcon_leftIconSize.html +1 -1
  806. package/docs/examples/w-text_leftIcon_leftIconTooltip.html +1 -1
  807. package/docs/examples/w-text_not editable.html +1 -1
  808. package/docs/examples/w-text_placeholder.html +1 -1
  809. package/docs/examples/w-text_rightIcon.html +1 -1
  810. package/docs/examples/w-text_rightIcon_rightIconColor_rightIconColorHover_rightIconColorFocus.html +1 -1
  811. package/docs/examples/w-text_rightIcon_rightIconSize.html +1 -1
  812. package/docs/examples/w-text_rightIcon_rightIconTooltip.html +1 -1
  813. package/docs/examples/w-text_textAlign.html +1 -1
  814. package/docs/examples/w-text_textColor.html +1 -1
  815. package/docs/examples/w-text_textFontSize.html +1 -1
  816. package/docs/examples/w-textarea_borderColorFocus.html +1 -1
  817. package/docs/examples/w-textarea_default.html +1 -1
  818. package/docs/examples/w-textarea_fullwidth.html +1 -1
  819. package/docs/examples/w-textarea_not editable.html +1 -1
  820. package/docs/examples/w-textarea_placeholder.html +1 -1
  821. package/docs/examples/w-timeday-range_between.html +1 -1
  822. package/docs/examples/w-timeday-range_borderRadius.html +1 -1
  823. package/docs/examples/w-timeday-range_border_between.html +1 -1
  824. package/docs/examples/w-timeday-range_border_borderRadius.html +1 -1
  825. package/docs/examples/w-timeday-range_border_default.html +1 -1
  826. package/docs/examples/w-timeday-range_border_icon (fontawesome).html +1 -1
  827. package/docs/examples/w-timeday-range_border_icon (material).html +1 -1
  828. package/docs/examples/w-timeday-range_border_iconColor_iconColorFoucs_borderColor.html +1 -1
  829. package/docs/examples/w-timeday-range_border_iconTooltip.html +1 -1
  830. package/docs/examples/w-timeday-range_border_not editable.html +1 -1
  831. package/docs/examples/w-timeday-range_border_paddingStyle (equal height to using icon).html +1 -1
  832. package/docs/examples/w-timeday-range_border_paddingStyle (thin style)_placementDist.html +1 -1
  833. package/docs/examples/w-timeday-range_border_paddingStyle (thin style)_textFontSize_placementDist.html +1 -1
  834. package/docs/examples/w-timeday-range_border_pickColor.html +1 -1
  835. package/docs/examples/w-timeday-range_border_textColor.html +1 -1
  836. package/docs/examples/w-timeday-range_default.html +1 -1
  837. package/docs/examples/w-timeday-range_icon (fontawesome).html +1 -1
  838. package/docs/examples/w-timeday-range_icon (material).html +1 -1
  839. package/docs/examples/w-timeday-range_iconColor_iconColorFoucs.html +1 -1
  840. package/docs/examples/w-timeday-range_iconTooltip.html +1 -1
  841. package/docs/examples/w-timeday-range_icon_iconSize_placementDist.html +1 -1
  842. package/docs/examples/w-timeday-range_not editable.html +1 -1
  843. package/docs/examples/w-timeday-range_paddingStyle (equal height to using icon).html +1 -1
  844. package/docs/examples/w-timeday-range_paddingStyle (thin style)_placementDist.html +1 -1
  845. package/docs/examples/w-timeday-range_paddingStyle (thin style)_textFontSize_placementDist.html +1 -1
  846. package/docs/examples/w-timeday-range_pickColor.html +1 -1
  847. package/docs/examples/w-timeday-range_textColor.html +1 -1
  848. package/docs/examples/w-timeday_borderRadius.html +1 -1
  849. package/docs/examples/w-timeday_border_borderRadius.html +1 -1
  850. package/docs/examples/w-timeday_border_default.html +1 -1
  851. package/docs/examples/w-timeday_border_icon (fontawesome).html +1 -1
  852. package/docs/examples/w-timeday_border_icon (material).html +1 -1
  853. package/docs/examples/w-timeday_border_iconColor_iconColorFoucs_borderColor.html +1 -1
  854. package/docs/examples/w-timeday_border_iconTooltip.html +1 -1
  855. package/docs/examples/w-timeday_border_not editable.html +1 -1
  856. package/docs/examples/w-timeday_border_paddingStyle (equal height to using icon).html +1 -1
  857. package/docs/examples/w-timeday_border_paddingStyle (thin style)_placementDist.html +1 -1
  858. package/docs/examples/w-timeday_border_paddingStyle (thin style)_textFontSize_placementDist.html +1 -1
  859. package/docs/examples/w-timeday_border_pickColor.html +1 -1
  860. package/docs/examples/w-timeday_border_textColor.html +1 -1
  861. package/docs/examples/w-timeday_default.html +1 -1
  862. package/docs/examples/w-timeday_icon (fontawesome).html +1 -1
  863. package/docs/examples/w-timeday_icon (material).html +1 -1
  864. package/docs/examples/w-timeday_iconColor_iconColorFoucs.html +1 -1
  865. package/docs/examples/w-timeday_iconTooltip.html +1 -1
  866. package/docs/examples/w-timeday_icon_iconSize_placementDist.html +1 -1
  867. package/docs/examples/w-timeday_not editable.html +1 -1
  868. package/docs/examples/w-timeday_paddingStyle (equal height to using icon).html +1 -1
  869. package/docs/examples/w-timeday_paddingStyle (thin style)_placementDist.html +1 -1
  870. package/docs/examples/w-timeday_paddingStyle (thin style)_textFontSize_placementDist.html +1 -1
  871. package/docs/examples/w-timeday_pickColor.html +1 -1
  872. package/docs/examples/w-timeday_textColor.html +1 -1
  873. package/docs/examples/w-timeminute-range_between.html +1 -1
  874. package/docs/examples/w-timeminute-range_borderRadius.html +1 -1
  875. package/docs/examples/w-timeminute-range_border_between.html +1 -1
  876. package/docs/examples/w-timeminute-range_border_borderRadius.html +1 -1
  877. package/docs/examples/w-timeminute-range_border_default.html +1 -1
  878. package/docs/examples/w-timeminute-range_border_hourMin_hourMax.html +1 -1
  879. package/docs/examples/w-timeminute-range_border_icon (fontawesome).html +1 -1
  880. package/docs/examples/w-timeminute-range_border_icon (material).html +1 -1
  881. package/docs/examples/w-timeminute-range_border_iconColor_iconColorFoucs_borderColor.html +1 -1
  882. package/docs/examples/w-timeminute-range_border_iconTooltip.html +1 -1
  883. package/docs/examples/w-timeminute-range_border_minuteInter.html +1 -1
  884. package/docs/examples/w-timeminute-range_border_minutesCustom.html +1 -1
  885. package/docs/examples/w-timeminute-range_border_not editable.html +1 -1
  886. package/docs/examples/w-timeminute-range_border_paddingStyle (equal height to using icon).html +1 -1
  887. package/docs/examples/w-timeminute-range_border_paddingStyle (thin style)_placementDist.html +1 -1
  888. package/docs/examples/w-timeminute-range_border_paddingStyle (thin style)_textFontSize_placementDist.html +1 -1
  889. package/docs/examples/w-timeminute-range_border_pickColor.html +1 -1
  890. package/docs/examples/w-timeminute-range_border_textColor_expansionIconColor.html +1 -1
  891. package/docs/examples/w-timeminute-range_default.html +1 -1
  892. package/docs/examples/w-timeminute-range_hourMin_hourMax.html +1 -1
  893. package/docs/examples/w-timeminute-range_icon (fontawesome).html +1 -1
  894. package/docs/examples/w-timeminute-range_icon (material).html +1 -1
  895. package/docs/examples/w-timeminute-range_iconColor_iconColorFoucs.html +1 -1
  896. package/docs/examples/w-timeminute-range_iconTooltip.html +1 -1
  897. package/docs/examples/w-timeminute-range_icon_iconSize_placementDist.html +1 -1
  898. package/docs/examples/w-timeminute-range_minuteInter.html +1 -1
  899. package/docs/examples/w-timeminute-range_minutesCustom.html +1 -1
  900. package/docs/examples/w-timeminute-range_not editable.html +1 -1
  901. package/docs/examples/w-timeminute-range_paddingStyle (equal height to using icon).html +1 -1
  902. package/docs/examples/w-timeminute-range_paddingStyle (thin style)_placementDist.html +1 -1
  903. package/docs/examples/w-timeminute-range_paddingStyle (thin style)_textFontSize_placementDist.html +1 -1
  904. package/docs/examples/w-timeminute-range_pickColor.html +1 -1
  905. package/docs/examples/w-timeminute-range_textColor_expansionIconColor.html +1 -1
  906. package/docs/examples/w-timeminute_borderRadius.html +1 -1
  907. package/docs/examples/w-timeminute_border_borderRadius.html +1 -1
  908. package/docs/examples/w-timeminute_border_default.html +1 -1
  909. package/docs/examples/w-timeminute_border_hourMin_hourMax.html +1 -1
  910. package/docs/examples/w-timeminute_border_icon (fontawesome).html +1 -1
  911. package/docs/examples/w-timeminute_border_icon (material).html +1 -1
  912. package/docs/examples/w-timeminute_border_iconColor_iconColorFoucs_borderColor.html +1 -1
  913. package/docs/examples/w-timeminute_border_iconTooltip.html +1 -1
  914. package/docs/examples/w-timeminute_border_minuteInter.html +1 -1
  915. package/docs/examples/w-timeminute_border_minutesCustom.html +1 -1
  916. package/docs/examples/w-timeminute_border_not editable.html +1 -1
  917. package/docs/examples/w-timeminute_border_paddingStyle (equal height to using icon).html +1 -1
  918. package/docs/examples/w-timeminute_border_paddingStyle (thin style)_placementDist.html +1 -1
  919. package/docs/examples/w-timeminute_border_paddingStyle (thin style)_textFontSize_placementDist.html +1 -1
  920. package/docs/examples/w-timeminute_border_pickColor.html +1 -1
  921. package/docs/examples/w-timeminute_border_textColor_expansionIconColor.html +1 -1
  922. package/docs/examples/w-timeminute_default.html +1 -1
  923. package/docs/examples/w-timeminute_hourMin_hourMax.html +1 -1
  924. package/docs/examples/w-timeminute_icon (fontawesome).html +1 -1
  925. package/docs/examples/w-timeminute_icon (material).html +1 -1
  926. package/docs/examples/w-timeminute_iconColor_iconColorFoucs.html +1 -1
  927. package/docs/examples/w-timeminute_iconTooltip.html +1 -1
  928. package/docs/examples/w-timeminute_icon_iconSize_placementDist.html +1 -1
  929. package/docs/examples/w-timeminute_minuteInter.html +1 -1
  930. package/docs/examples/w-timeminute_minutesCustom.html +1 -1
  931. package/docs/examples/w-timeminute_not editable.html +1 -1
  932. package/docs/examples/w-timeminute_paddingStyle (equal height to using icon).html +1 -1
  933. package/docs/examples/w-timeminute_paddingStyle (thin style)_placementDist.html +1 -1
  934. package/docs/examples/w-timeminute_paddingStyle (thin style)_textFontSize_placementDist.html +1 -1
  935. package/docs/examples/w-timeminute_pickColor.html +1 -1
  936. package/docs/examples/w-timeminute_textColor_expansionIconColor.html +1 -1
  937. package/docs/examples/w-tinymce-vue-dyn_default.html +1 -1
  938. package/docs/examples/w-tinymce-vue-dyn_height.html +1 -1
  939. package/docs/examples/w-tinymce-vue-dyn_not editable.html +1 -1
  940. package/docs/examples/w-tinymce-vue-dyn_settings.html +1 -1
  941. package/docs/examples/w-tooltip_auto flipping in dialog.html +1 -1
  942. package/docs/examples/w-tooltip_auto flipping in popup.html +1 -1
  943. package/docs/examples/w-tooltip_auto flipping in scroll panel.html +1 -1
  944. package/docs/examples/w-tooltip_autoFitMaxWidth.html +1 -1
  945. package/docs/examples/w-tooltip_autoFitMinWidth.html +1 -1
  946. package/docs/examples/w-tooltip_backgroundColor.html +1 -1
  947. package/docs/examples/w-tooltip_borderRadius.html +1 -1
  948. package/docs/examples/w-tooltip_default.html +1 -1
  949. package/docs/examples/w-tooltip_in scroll panel.html +1 -1
  950. package/docs/examples/w-tooltip_maxWidth.html +1 -1
  951. package/docs/examples/w-tooltip_minWidth.html +1 -1
  952. package/docs/examples/w-tooltip_no shadow_backgroundColor.html +1 -1
  953. package/docs/examples/w-tooltip_not editable.html +1 -1
  954. package/docs/examples/w-tooltip_paddingStyle.html +1 -1
  955. package/docs/examples/w-tooltip_placement.html +1 -1
  956. package/docs/examples/w-tooltip_placementDist.html +1 -1
  957. package/docs/examples/w-tooltip_scroll in large zone.html +1 -1
  958. package/docs/examples/w-tooltip_shadowStyle.html +1 -1
  959. package/docs/examples/w-tooltip_slot for table_maxWidth.html +1 -1
  960. package/docs/examples/w-tooltip_textColor_backgroundColor.html +1 -1
  961. package/docs/examples/w-tooltip_textFontSize.html +1 -1
  962. package/docs/examples/w-tooltip_transitionTime.html +1 -1
  963. package/docs/examples/w-tree_activable_itemActive.html +1 -1
  964. package/docs/examples/w-tree_activable_itemActive_funActive.html +1 -1
  965. package/docs/examples/w-tree_activable_itemActive_itemTextColor_itemTextColorHover.html +1 -1
  966. package/docs/examples/w-tree_default.html +1 -1
  967. package/docs/examples/w-tree_defaultDisplayLevel.html +1 -1
  968. package/docs/examples/w-tree_draggable.html +1 -1
  969. package/docs/examples/w-tree_draggable_dgInsertLineColor_dgInsertBackgroundColor_dgBelongBackgroundColor.html +1 -1
  970. package/docs/examples/w-tree_draggable_dgPreviewOpacity_dgPreviewBorderWidth_dgBelongBackgroundColor.html +1 -1
  971. package/docs/examples/w-tree_draggable_dgTextDisabled_dgTextDisabledColor_dgTextDisabledPaddingLeft.html +1 -1
  972. package/docs/examples/w-tree_events.html +1 -1
  973. package/docs/examples/w-tree_filterKeywords_filterFunction.html +1 -1
  974. package/docs/examples/w-tree_filterKeywords_noResultsText.html +1 -1
  975. package/docs/examples/w-tree_filterKeywords_noResultsText_selectable.html +1 -1
  976. package/docs/examples/w-tree_iconSize(20).html +1 -1
  977. package/docs/examples/w-tree_iconSize(20)_defItemHeight(24).html +1 -1
  978. package/docs/examples/w-tree_iconSize(30)_defItemHeight(36).html +1 -1
  979. package/docs/examples/w-tree_iconToggleColor_iconToggleBackgroundColor_iconToggleBackgroundColorHover.html +1 -1
  980. package/docs/examples/w-tree_indent.html +1 -1
  981. package/docs/examples/w-tree_itemTextColor_itemTextColorHover_itemBackgroundColor_itemBackgroundColorHover.html +1 -1
  982. package/docs/examples/w-tree_keyPrimary_keyText_keyChildren.html +1 -1
  983. package/docs/examples/w-tree_no viewHeightMax.html +1 -1
  984. package/docs/examples/w-tree_operatable.html +1 -1
  985. package/docs/examples/w-tree_operatable_operateBtnBackgroundColor_operateBtnBackgroundColorHover_operateBtnBackgroundColorFocus.html +1 -1
  986. package/docs/examples/w-tree_operatable_operateBtnTooltip_operateItemTextForInsertBefore_perateItemTextForInsertChild.html +1 -1
  987. package/docs/examples/w-tree_operatable_operateItemBackgroundColor_operateItemBackgroundColorHover_operateItemTextColor.html +1 -1
  988. package/docs/examples/w-tree_operatable_operateItemIconSize_operateItemPaddingStyle_operatePanelWidth.html +1 -1
  989. package/docs/examples/w-tree_paddingStyle.html +1 -1
  990. package/docs/examples/w-tree_rippleColor.html +1 -1
  991. package/docs/examples/w-tree_selectable.html +1 -1
  992. package/docs/examples/w-tree_selectable_draggable.html +1 -1
  993. package/docs/examples/w-tree_slot.html +1 -1
  994. package/docs/examples/w-tree_slot_iconUncheckedColor_iconUncheckedDisabledColor_iconCheckedColor.html +1 -1
  995. package/docs/examples/w-tree_slot_locked_selectable.html +1 -1
  996. package/docs/examples/w-tree_slot_operatable.html +1 -1
  997. package/docs/examples/w-tree_slot_selectable.html +1 -1
  998. package/docs/examples/w-tree_slot_selectable_draggable.html +1 -1
  999. package/docs/examples/w-tree_slot_selectable_iconSize(20)_defItemHeight(24).html +1 -1
  1000. package/docs/examples/w-tree_slot_selectable_large data (100,000 items).html +1 -1
  1001. package/docs/examples/w-tree_toggleItemsAll.html +1 -1
  1002. package/docs/examples/w-tree_toggleItemsByFun.html +1 -1
  1003. package/docs/examples/w-tree_viewHeightMax.html +1 -1
  1004. package/docs/global.html +1 -1
  1005. package/docs/index.html +1 -1
  1006. package/docs/vuetifyColor.mjs.html +1 -1
  1007. package/package.json +1 -1
  1008. package/src/components/WSwitch.vue +11 -5
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * w-component-vue v2.2.79
2
+ * w-component-vue v2.2.80
3
3
  * (c) 2018-2021 yuda-lyu(semisphere)
4
4
  * Released under the MIT License.
5
5
  */
@@ -13,5 +13,5 @@
13
13
  *
14
14
  * Date: 2023-03-05T07:01:17.741Z
15
15
  */
16
- !function(n,e){n.exports=function(){function n(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),t.push.apply(t,r)}return t}function e(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n(Object(r),!0).forEach((function(n){l(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))}))}return e}function t(n){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},t(n)}function r(n,e){if(!(n instanceof e))throw new TypeError("Cannot call a class as a function")}function o(n,e){for(var t=0;t<e.length;t++){var r=e[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(n,d(r.key),r)}}function i(n,e,t){return e&&o(n.prototype,e),t&&o(n,t),Object.defineProperty(n,"prototype",{writable:!1}),n}function l(n,e,t){return(e=d(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function a(n,e){if("object"!=typeof n||null===n)return n;var t=n[Symbol.toPrimitive];if(void 0!==t){var r=t.call(n,e||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(n)}function d(n){var e=a(n,"string");return"symbol"==typeof e?e:String(e)}var s={backdrop:!0,button:!0,navbar:!0,title:!0,toolbar:!0,className:"",container:"body",filter:null,fullscreen:!0,inheritedAttributes:["crossOrigin","decoding","isMap","loading","referrerPolicy","sizes","srcset","useMap"],initialCoverage:.9,initialViewIndex:0,inline:!1,interval:5e3,keyboard:!0,focus:!0,loading:!0,loop:!0,minWidth:200,minHeight:100,movable:!0,rotatable:!0,scalable:!0,zoomable:!0,zoomOnTouch:!0,zoomOnWheel:!0,slideOnTouch:!0,toggleOnDblclick:!0,tooltip:!0,transition:!0,zIndex:2015,zIndexInline:0,zoomRatio:.1,minZoomRatio:.01,maxZoomRatio:100,url:"src",ready:null,show:null,shown:null,hide:null,hidden:null,view:null,viewed:null,move:null,moved:null,rotate:null,rotated:null,scale:null,scaled:null,zoom:null,zoomed:null,play:null,stop:null},c='<div class="viewer-container" tabindex="-1" touch-action="none"><div class="viewer-canvas"></div><div class="viewer-footer"><div class="viewer-title"></div><div class="viewer-toolbar"></div><div class="viewer-navbar"><ul class="viewer-list" role="navigation"></ul></div></div><div class="viewer-tooltip" role="alert" aria-hidden="true"></div><div class="viewer-button" data-viewer-action="mix" role="button"></div><div class="viewer-player"></div></div>',u="undefined"!=typeof window&&void 0!==window.document,p=u?window:{},f=!(!u||!p.document.documentElement)&&"ontouchstart"in p.document.documentElement,h=!!u&&"PointerEvent"in p,m="viewer",g="move",v="switch",y="zoom",b="".concat(m,"-active"),C="".concat(m,"-close"),I="".concat(m,"-fade"),x="".concat(m,"-fixed"),S="".concat(m,"-fullscreen"),w="".concat(m,"-fullscreen-exit"),k="".concat(m,"-hide"),T="".concat(m,"-hide-md-down"),H="".concat(m,"-hide-sm-down"),W="".concat(m,"-hide-xs-down"),Z="".concat(m,"-in"),X="".concat(m,"-invisible"),B="".concat(m,"-loading"),A="".concat(m,"-move"),V="".concat(m,"-open"),P="".concat(m,"-show"),K="".concat(m,"-transition"),G="click",F="dblclick",Y="dragstart",R="focusin",L="keydown",j="load",N="error",z=f?"touchend touchcancel":"mouseup",J=f?"touchmove":"mousemove",O=f?"touchstart":"mousedown",D=h?"pointerdown":O,E=h?"pointermove":J,$=h?"pointerup pointercancel":z,Q="resize",M="transitionend",_="wheel",U="ready",q="show",nn="shown",en="hide",tn="hidden",rn="view",on="viewed",ln="move",an="moved",dn="rotate",sn="rotated",cn="scale",un="scaled",pn="zoom",fn="zoomed",hn="play",mn="stop",gn="".concat(m,"Action"),vn=/\s\s*/,yn=["zoom-in","zoom-out","one-to-one","reset","prev","play","next","rotate-left","rotate-right","flip-horizontal","flip-vertical"];function bn(n){return"string"==typeof n}var Cn=Number.isNaN||p.isNaN;function In(n){return"number"==typeof n&&!Cn(n)}function xn(n){return void 0===n}function Sn(n){return"object"===t(n)&&null!==n}var wn=Object.prototype.hasOwnProperty;function kn(n){if(!Sn(n))return!1;try{var e=n.constructor,t=e.prototype;return e&&t&&wn.call(t,"isPrototypeOf")}catch(n){return!1}}function Tn(n){return"function"==typeof n}function Hn(n,e){if(n&&Tn(e))if(Array.isArray(n)||In(n.length)){var t,r=n.length;for(t=0;t<r&&!1!==e.call(n,n[t],t,n);t+=1);}else Sn(n)&&Object.keys(n).forEach((function(t){e.call(n,n[t],t,n)}));return n}var Wn=Object.assign||function(n){for(var e=arguments.length,t=new Array(e>1?e-1:0),r=1;r<e;r++)t[r-1]=arguments[r];return Sn(n)&&t.length>0&&t.forEach((function(e){Sn(e)&&Object.keys(e).forEach((function(t){n[t]=e[t]}))})),n},Zn=/^(?:width|height|left|top|marginLeft|marginTop)$/;function Xn(n,e){var t=n.style;Hn(e,(function(n,e){Zn.test(e)&&In(n)&&(n+="px"),t[e]=n}))}function Bn(n){return bn(n)?n.replace(/&(?!amp;|quot;|#39;|lt;|gt;)/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;"):n}function An(n,e){return!(!n||!e)&&(n.classList?n.classList.contains(e):n.className.indexOf(e)>-1)}function Vn(n,e){if(n&&e)if(In(n.length))Hn(n,(function(n){Vn(n,e)}));else if(n.classList)n.classList.add(e);else{var t=n.className.trim();t?t.indexOf(e)<0&&(n.className="".concat(t," ").concat(e)):n.className=e}}function Pn(n,e){n&&e&&(In(n.length)?Hn(n,(function(n){Pn(n,e)})):n.classList?n.classList.remove(e):n.className.indexOf(e)>=0&&(n.className=n.className.replace(e,"")))}function Kn(n,e,t){e&&(In(n.length)?Hn(n,(function(n){Kn(n,e,t)})):t?Vn(n,e):Pn(n,e))}var Gn=/([a-z\d])([A-Z])/g;function Fn(n){return n.replace(Gn,"$1-$2").toLowerCase()}function Yn(n,e){return Sn(n[e])?n[e]:n.dataset?n.dataset[e]:n.getAttribute("data-".concat(Fn(e)))}function Rn(n,e,t){Sn(t)?n[e]=t:n.dataset?n.dataset[e]=t:n.setAttribute("data-".concat(Fn(e)),t)}var Ln=function(){var n=!1;if(u){var e=!1,t=function(){},r=Object.defineProperty({},"once",{get:function(){return n=!0,e},set:function(n){e=n}});p.addEventListener("test",t,r),p.removeEventListener("test",t,r)}return n}();function jn(n,e,t){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t;e.trim().split(vn).forEach((function(e){if(!Ln){var i=n.listeners;i&&i[e]&&i[e][t]&&(o=i[e][t],delete i[e][t],0===Object.keys(i[e]).length&&delete i[e],0===Object.keys(i).length&&delete n.listeners)}n.removeEventListener(e,o,r)}))}function Nn(n,e,t){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t;e.trim().split(vn).forEach((function(e){if(r.once&&!Ln){var i=n.listeners,l=void 0===i?{}:i;o=function(){delete l[e][t],n.removeEventListener(e,o,r);for(var i=arguments.length,a=new Array(i),d=0;d<i;d++)a[d]=arguments[d];t.apply(n,a)},l[e]||(l[e]={}),l[e][t]&&n.removeEventListener(e,l[e][t],r),l[e][t]=o,n.listeners=l}n.addEventListener(e,o,r)}))}function zn(n,t,r,o){var i;return Tn(Event)&&Tn(CustomEvent)?i=new CustomEvent(t,e({bubbles:!0,cancelable:!0,detail:r},o)):(i=document.createEvent("CustomEvent")).initCustomEvent(t,!0,!0,r),n.dispatchEvent(i)}function Jn(n){var e=n.getBoundingClientRect();return{left:e.left+(window.pageXOffset-document.documentElement.clientLeft),top:e.top+(window.pageYOffset-document.documentElement.clientTop)}}function On(n){var e=n.rotate,t=n.scaleX,r=n.scaleY,o=n.translateX,i=n.translateY,l=[];In(o)&&0!==o&&l.push("translateX(".concat(o,"px)")),In(i)&&0!==i&&l.push("translateY(".concat(i,"px)")),In(e)&&0!==e&&l.push("rotate(".concat(e,"deg)")),In(t)&&1!==t&&l.push("scaleX(".concat(t,")")),In(r)&&1!==r&&l.push("scaleY(".concat(r,")"));var a=l.length?l.join(" "):"none";return{WebkitTransform:a,msTransform:a,transform:a}}function Dn(n){return bn(n)?decodeURIComponent(n.replace(/^.*\//,"").replace(/[?&#].*$/,"")):""}var En=p.navigator&&/(Macintosh|iPhone|iPod|iPad).*AppleWebKit/i.test(p.navigator.userAgent);function $n(n,e,t){var r=document.createElement("img");if(n.naturalWidth&&!En)return t(n.naturalWidth,n.naturalHeight),r;var o=document.body||document.documentElement;return r.onload=function(){t(r.width,r.height),En||o.removeChild(r)},Hn(e.inheritedAttributes,(function(e){var t=n.getAttribute(e);null!==t&&r.setAttribute(e,t)})),r.src=n.src,En||(r.style.cssText="left:0;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;opacity:0;position:absolute;top:0;z-index:-1;",o.appendChild(r)),r}function Qn(n){switch(n){case 2:return W;case 3:return H;case 4:return T;default:return""}}function Mn(n){var t=e({},n),r=[];return Hn(n,(function(n,e){delete t[e],Hn(t,(function(e){var t=Math.abs(n.startX-e.startX),o=Math.abs(n.startY-e.startY),i=Math.abs(n.endX-e.endX),l=Math.abs(n.endY-e.endY),a=Math.sqrt(t*t+o*o),d=(Math.sqrt(i*i+l*l)-a)/a;r.push(d)}))})),r.sort((function(n,e){return Math.abs(n)<Math.abs(e)})),r[0]}function _n(n,t){var r=n.pageX,o=n.pageY,i={endX:r,endY:o};return t?i:e({timeStamp:Date.now(),startX:r,startY:o},i)}function Un(n){var e=0,t=0,r=0;return Hn(n,(function(n){var o=n.startX,i=n.startY;e+=o,t+=i,r+=1})),{pageX:e/=r,pageY:t/=r}}var qn,ne={render:function(){this.initContainer(),this.initViewer(),this.initList(),this.renderViewer()},initBody:function(){var n=this.element.ownerDocument,e=n.body||n.documentElement;this.body=e,this.scrollbarWidth=window.innerWidth-n.documentElement.clientWidth,this.initialBodyPaddingRight=e.style.paddingRight,this.initialBodyComputedPaddingRight=window.getComputedStyle(e).paddingRight},initContainer:function(){this.containerData={width:window.innerWidth,height:window.innerHeight}},initViewer:function(){var n,e=this.options,t=this.parent;e.inline&&(n={width:Math.max(t.offsetWidth,e.minWidth),height:Math.max(t.offsetHeight,e.minHeight)},this.parentData=n),!this.fulled&&n||(n=this.containerData),this.viewerData=Wn({},n)},renderViewer:function(){this.options.inline&&!this.fulled&&Xn(this.viewer,this.viewerData)},initList:function(){var n=this,e=this.element,t=this.options,r=this.list,o=[];r.innerHTML="",Hn(this.images,(function(e,i){var l=e.src,a=e.alt||Dn(l),d=n.getImageURL(e);if(l||d){var s=document.createElement("li"),c=document.createElement("img");Hn(t.inheritedAttributes,(function(n){var t=e.getAttribute(n);null!==t&&c.setAttribute(n,t)})),t.navbar&&(c.src=l||d),c.alt=a,c.setAttribute("data-original-url",d||l),s.setAttribute("data-index",i),s.setAttribute("data-viewer-action","view"),s.setAttribute("role","button"),t.keyboard&&s.setAttribute("tabindex",0),s.appendChild(c),r.appendChild(s),o.push(s)}})),this.items=o,Hn(o,(function(e){var r,o,i=e.firstElementChild;Rn(i,"filled",!0),t.loading&&Vn(e,B),Nn(i,j,r=function(r){jn(i,N,o),t.loading&&Pn(e,B),n.loadImage(r)},{once:!0}),Nn(i,N,o=function(){jn(i,j,r),t.loading&&Pn(e,B)},{once:!0})})),t.transition&&Nn(e,on,(function(){Vn(r,K)}),{once:!0})},renderList:function(){var n=this.index,e=this.items[n];if(e){var t=e.nextElementSibling,r=parseInt(window.getComputedStyle(t||e).marginLeft,10),o=e.offsetWidth,i=o+r;Xn(this.list,Wn({width:i*this.length-r},On({translateX:(this.viewerData.width-o)/2-i*n})))}},resetList:function(){var n=this.list;n.innerHTML="",Pn(n,K),Xn(n,On({translateX:0}))},initImage:function(n){var e,t=this,r=this.options,o=this.image,i=this.viewerData,l=this.footer.offsetHeight,a=i.width,d=Math.max(i.height-l,l),s=this.imageData||{};this.imageInitializing={abort:function(){e.onload=null}},e=$n(o,r,(function(e,o){var i=e/o,l=Math.max(0,Math.min(1,r.initialCoverage)),c=a,u=d;t.imageInitializing=!1,d*i>a?u=a/i:c=d*i,l=In(l)?l:.9,c=Math.min(c*l,e),u=Math.min(u*l,o);var p=(a-c)/2,f=(d-u)/2,h={left:p,top:f,x:p,y:f,width:c,height:u,oldRatio:1,ratio:c/e,aspectRatio:i,naturalWidth:e,naturalHeight:o},m=Wn({},h);r.rotatable&&(h.rotate=s.rotate||0,m.rotate=0),r.scalable&&(h.scaleX=s.scaleX||1,h.scaleY=s.scaleY||1,m.scaleX=1,m.scaleY=1),t.imageData=h,t.initialImageData=m,n&&n()}))},renderImage:function(n){var e=this,t=this.image,r=this.imageData;if(Xn(t,Wn({width:r.width,height:r.height,marginLeft:r.x,marginTop:r.y},On(r))),n)if((this.viewing||this.moving||this.rotating||this.scaling||this.zooming)&&this.options.transition&&An(t,K)){var o=function(){e.imageRendering=!1,n()};this.imageRendering={abort:function(){jn(t,M,o)}},Nn(t,M,o,{once:!0})}else n()},resetImage:function(){if(this.viewing||this.viewed){var n=this.image;this.viewing&&this.viewing.abort(),n.parentNode.removeChild(n),this.image=null}}},ee={bind:function(){var n=this.options,e=this.viewer,t=this.canvas,r=this.element.ownerDocument;Nn(e,G,this.onClick=this.click.bind(this)),Nn(e,Y,this.onDragStart=this.dragstart.bind(this)),Nn(t,D,this.onPointerDown=this.pointerdown.bind(this)),Nn(r,E,this.onPointerMove=this.pointermove.bind(this)),Nn(r,$,this.onPointerUp=this.pointerup.bind(this)),Nn(r,L,this.onKeyDown=this.keydown.bind(this)),Nn(window,Q,this.onResize=this.resize.bind(this)),n.zoomable&&n.zoomOnWheel&&Nn(e,_,this.onWheel=this.wheel.bind(this),{passive:!1,capture:!0}),n.toggleOnDblclick&&Nn(t,F,this.onDblclick=this.dblclick.bind(this))},unbind:function(){var n=this.options,e=this.viewer,t=this.canvas,r=this.element.ownerDocument;jn(e,G,this.onClick),jn(e,Y,this.onDragStart),jn(t,D,this.onPointerDown),jn(r,E,this.onPointerMove),jn(r,$,this.onPointerUp),jn(r,L,this.onKeyDown),jn(window,Q,this.onResize),n.zoomable&&n.zoomOnWheel&&jn(e,_,this.onWheel,{passive:!1,capture:!0}),n.toggleOnDblclick&&jn(t,F,this.onDblclick)}},te={click:function(n){var e=this.options,t=this.imageData,r=n.target,o=Yn(r,gn);switch(o||"img"!==r.localName||"li"!==r.parentElement.localName||(o=Yn(r=r.parentElement,gn)),f&&n.isTrusted&&r===this.canvas&&clearTimeout(this.clickCanvasTimeout),o){case"mix":this.played?this.stop():e.inline?this.fulled?this.exit():this.full():this.hide();break;case"hide":this.pointerMoved||this.hide();break;case"view":this.view(Yn(r,"index"));break;case"zoom-in":this.zoom(.1,!0);break;case"zoom-out":this.zoom(-.1,!0);break;case"one-to-one":this.toggle();break;case"reset":this.reset();break;case"prev":this.prev(e.loop);break;case"play":this.play(e.fullscreen);break;case"next":this.next(e.loop);break;case"rotate-left":this.rotate(-90);break;case"rotate-right":this.rotate(90);break;case"flip-horizontal":this.scaleX(-t.scaleX||-1);break;case"flip-vertical":this.scaleY(-t.scaleY||-1);break;default:this.played&&this.stop()}},dblclick:function(n){n.preventDefault(),this.viewed&&n.target===this.image&&(f&&n.isTrusted&&clearTimeout(this.doubleClickImageTimeout),this.toggle(n.isTrusted?n:n.detail&&n.detail.originalEvent))},load:function(){var n=this;this.timeout&&(clearTimeout(this.timeout),this.timeout=!1);var e=this.element,t=this.options,r=this.image,o=this.index,i=this.viewerData;Pn(r,X),t.loading&&Pn(this.canvas,B),r.style.cssText="height:0;"+"margin-left:".concat(i.width/2,"px;")+"margin-top:".concat(i.height/2,"px;")+"max-width:none!important;position:relative;width:0;",this.initImage((function(){Kn(r,A,t.movable),Kn(r,K,t.transition),n.renderImage((function(){n.viewed=!0,n.viewing=!1,Tn(t.viewed)&&Nn(e,on,t.viewed,{once:!0}),zn(e,on,{originalImage:n.images[o],index:o,image:r},{cancelable:!1})}))}))},loadImage:function(n){var e=n.target,t=e.parentNode,r=t.offsetWidth||30,o=t.offsetHeight||50,i=!!Yn(e,"filled");$n(e,this.options,(function(n,t){var l=n/t,a=r,d=o;o*l>r?i?a=o*l:d=r/l:i?d=r/l:a=o*l,Xn(e,Wn({width:a,height:d},On({translateX:(r-a)/2,translateY:(o-d)/2})))}))},keydown:function(n){var e=this.options;if(e.keyboard){var t=n.keyCode||n.which||n.charCode;if(13===t&&this.viewer.contains(n.target)&&this.click(n),this.fulled)switch(t){case 27:this.played?this.stop():e.inline?this.fulled&&this.exit():this.hide();break;case 32:this.played&&this.stop();break;case 37:this.played&&this.playing?this.playing.prev():this.prev(e.loop);break;case 38:n.preventDefault(),this.zoom(e.zoomRatio,!0);break;case 39:this.played&&this.playing?this.playing.next():this.next(e.loop);break;case 40:n.preventDefault(),this.zoom(-e.zoomRatio,!0);break;case 48:case 49:n.ctrlKey&&(n.preventDefault(),this.toggle())}}},dragstart:function(n){"img"===n.target.localName&&n.preventDefault()},pointerdown:function(n){var e=this.options,t=this.pointers,r=n.buttons,o=n.button;if(this.pointerMoved=!1,!(!this.viewed||this.showing||this.viewing||this.hiding||("mousedown"===n.type||"pointerdown"===n.type&&"mouse"===n.pointerType)&&(In(r)&&1!==r||In(o)&&0!==o||n.ctrlKey))){n.preventDefault(),n.changedTouches?Hn(n.changedTouches,(function(n){t[n.identifier]=_n(n)})):t[n.pointerId||0]=_n(n);var i=!!e.movable&&g;e.zoomOnTouch&&e.zoomable&&Object.keys(t).length>1?i=y:e.slideOnTouch&&("touch"===n.pointerType||"touchstart"===n.type)&&this.isSwitchable()&&(i=v),!e.transition||i!==g&&i!==y||Pn(this.image,K),this.action=i}},pointermove:function(n){var e=this.pointers,t=this.action;this.viewed&&t&&(n.preventDefault(),n.changedTouches?Hn(n.changedTouches,(function(n){Wn(e[n.identifier]||{},_n(n,!0))})):Wn(e[n.pointerId||0]||{},_n(n,!0)),this.change(n))},pointerup:function(n){var e,t=this,r=this.options,o=this.action,i=this.pointers;n.changedTouches?Hn(n.changedTouches,(function(n){e=i[n.identifier],delete i[n.identifier]})):(e=i[n.pointerId||0],delete i[n.pointerId||0]),o&&(n.preventDefault(),!r.transition||o!==g&&o!==y||Vn(this.image,K),this.action=!1,f&&o!==y&&e&&Date.now()-e.timeStamp<500&&(clearTimeout(this.clickCanvasTimeout),clearTimeout(this.doubleClickImageTimeout),r.toggleOnDblclick&&this.viewed&&n.target===this.image?this.imageClicked?(this.imageClicked=!1,this.doubleClickImageTimeout=setTimeout((function(){zn(t.image,F,{originalEvent:n})}),50)):(this.imageClicked=!0,this.doubleClickImageTimeout=setTimeout((function(){t.imageClicked=!1}),500)):(this.imageClicked=!1,r.backdrop&&"static"!==r.backdrop&&n.target===this.canvas&&(this.clickCanvasTimeout=setTimeout((function(){zn(t.canvas,G,{originalEvent:n})}),50)))))},resize:function(){var n=this;if(this.isShown&&!this.hiding&&(this.fulled&&(this.close(),this.initBody(),this.open()),this.initContainer(),this.initViewer(),this.renderViewer(),this.renderList(),this.viewed&&this.initImage((function(){n.renderImage()})),this.played)){if(this.options.fullscreen&&this.fulled&&!(document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement))return void this.stop();Hn(this.player.getElementsByTagName("img"),(function(e){Nn(e,j,n.loadImage.bind(n),{once:!0}),zn(e,j)}))}},wheel:function(n){var e=this;if(this.viewed&&(n.preventDefault(),!this.wheeling)){this.wheeling=!0,setTimeout((function(){e.wheeling=!1}),50);var t=Number(this.options.zoomRatio)||.1,r=1;n.deltaY?r=n.deltaY>0?1:-1:n.wheelDelta?r=-n.wheelDelta/120:n.detail&&(r=n.detail>0?1:-1),this.zoom(-r*t,!0,null,n)}}},re={show:function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.element,t=this.options;if(t.inline||this.showing||this.isShown||this.showing)return this;if(!this.ready)return this.build(),this.ready&&this.show(n),this;if(Tn(t.show)&&Nn(e,q,t.show,{once:!0}),!1===zn(e,q)||!this.ready)return this;this.hiding&&this.transitioning.abort(),this.showing=!0,this.open();var r=this.viewer;if(Pn(r,k),r.setAttribute("role","dialog"),r.setAttribute("aria-labelledby",this.title.id),r.setAttribute("aria-modal",!0),r.removeAttribute("aria-hidden"),t.transition&&!n){var o=this.shown.bind(this);this.transitioning={abort:function(){jn(r,M,o),Pn(r,Z)}},Vn(r,K),r.initialOffsetWidth=r.offsetWidth,Nn(r,M,o,{once:!0}),Vn(r,Z)}else Vn(r,Z),this.shown();return this},hide:function(){var n=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.element,r=this.options;if(r.inline||this.hiding||!this.isShown&&!this.showing)return this;if(Tn(r.hide)&&Nn(t,en,r.hide,{once:!0}),!1===zn(t,en))return this;this.showing&&this.transitioning.abort(),this.hiding=!0,this.played?this.stop():this.viewing&&this.viewing.abort();var o=this.viewer,i=this.image,l=function(){Pn(o,Z),n.hidden()};if(r.transition&&!e){var a=function e(t){t&&t.target===o&&(jn(o,M,e),n.hidden())},d=function(){An(o,K)?(Nn(o,M,a),Pn(o,Z)):l()};this.transitioning={abort:function(){n.viewed&&An(i,K)?jn(i,M,d):An(o,K)&&jn(o,M,a)}},this.viewed&&An(i,K)?(Nn(i,M,d,{once:!0}),this.zoomTo(0,!1,null,null,!0)):d()}else l();return this},view:function(){var n=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.initialViewIndex;if(e=Number(e)||0,this.hiding||this.played||e<0||e>=this.length||this.viewed&&e===this.index)return this;if(!this.isShown)return this.index=e,this.show();this.viewing&&this.viewing.abort();var t=this.element,r=this.options,o=this.title,i=this.canvas,l=this.items[e],a=l.querySelector("img"),d=Yn(a,"originalUrl"),s=a.getAttribute("alt"),c=document.createElement("img");if(Hn(r.inheritedAttributes,(function(n){var e=a.getAttribute(n);null!==e&&c.setAttribute(n,e)})),c.src=d,c.alt=s,Tn(r.view)&&Nn(t,rn,r.view,{once:!0}),!1===zn(t,rn,{originalImage:this.images[e],index:e,image:c})||!this.isShown||this.hiding||this.played)return this;var u=this.items[this.index];u&&(Pn(u,b),u.removeAttribute("aria-selected")),Vn(l,b),l.setAttribute("aria-selected",!0),r.focus&&l.focus(),this.image=c,this.viewed=!1,this.index=e,this.imageData={},Vn(c,X),r.loading&&Vn(i,B),i.innerHTML="",i.appendChild(c),this.renderList(),o.innerHTML="";var p,f,h=function(){var e=n.imageData,t=Array.isArray(r.title)?r.title[1]:r.title;o.innerHTML=Bn(Tn(t)?t.call(n,c,e):"".concat(s," (").concat(e.naturalWidth," × ").concat(e.naturalHeight,")"))};return Nn(t,on,h,{once:!0}),this.viewing={abort:function(){jn(t,on,h),c.complete?n.imageRendering?n.imageRendering.abort():n.imageInitializing&&n.imageInitializing.abort():(c.src="",jn(c,j,p),n.timeout&&clearTimeout(n.timeout))}},c.complete?this.load():(Nn(c,j,p=function(){jn(c,N,f),n.load()},{once:!0}),Nn(c,N,f=function(){jn(c,j,p),n.timeout&&(clearTimeout(n.timeout),n.timeout=!1),Pn(c,X),r.loading&&Pn(n.canvas,B)},{once:!0}),this.timeout&&clearTimeout(this.timeout),this.timeout=setTimeout((function(){Pn(c,X),n.timeout=!1}),1e3)),this},prev:function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.index-1;return e<0&&(e=n?this.length-1:0),this.view(e),this},next:function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.length-1,t=this.index+1;return t>e&&(t=n?0:e),this.view(t),this},move:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n,t=this.imageData;return this.moveTo(xn(n)?n:t.x+Number(n),xn(e)?e:t.y+Number(e)),this},moveTo:function(n){var e=this,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,o=this.element,i=this.options,l=this.imageData;if(n=Number(n),t=Number(t),this.viewed&&!this.played&&i.movable){var a=l.x,d=l.y,s=!1;if(In(n)?s=!0:n=a,In(t)?s=!0:t=d,s){if(Tn(i.move)&&Nn(o,ln,i.move,{once:!0}),!1===zn(o,ln,{x:n,y:t,oldX:a,oldY:d,originalEvent:r}))return this;l.x=n,l.y=t,l.left=n,l.top=t,this.moving=!0,this.renderImage((function(){e.moving=!1,Tn(i.moved)&&Nn(o,an,i.moved,{once:!0}),zn(o,an,{x:n,y:t,oldX:a,oldY:d,originalEvent:r},{cancelable:!1})}))}}return this},rotate:function(n){return this.rotateTo((this.imageData.rotate||0)+Number(n)),this},rotateTo:function(n){var e=this,t=this.element,r=this.options,o=this.imageData;if(In(n=Number(n))&&this.viewed&&!this.played&&r.rotatable){var i=o.rotate;if(Tn(r.rotate)&&Nn(t,dn,r.rotate,{once:!0}),!1===zn(t,dn,{degree:n,oldDegree:i}))return this;o.rotate=n,this.rotating=!0,this.renderImage((function(){e.rotating=!1,Tn(r.rotated)&&Nn(t,sn,r.rotated,{once:!0}),zn(t,sn,{degree:n,oldDegree:i},{cancelable:!1})}))}return this},scaleX:function(n){return this.scale(n,this.imageData.scaleY),this},scaleY:function(n){return this.scale(this.imageData.scaleX,n),this},scale:function(n){var e=this,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n,r=this.element,o=this.options,i=this.imageData;if(n=Number(n),t=Number(t),this.viewed&&!this.played&&o.scalable){var l=i.scaleX,a=i.scaleY,d=!1;if(In(n)?d=!0:n=l,In(t)?d=!0:t=a,d){if(Tn(o.scale)&&Nn(r,cn,o.scale,{once:!0}),!1===zn(r,cn,{scaleX:n,scaleY:t,oldScaleX:l,oldScaleY:a}))return this;i.scaleX=n,i.scaleY=t,this.scaling=!0,this.renderImage((function(){e.scaling=!1,Tn(o.scaled)&&Nn(r,un,o.scaled,{once:!0}),zn(r,un,{scaleX:n,scaleY:t,oldScaleX:l,oldScaleY:a},{cancelable:!1})}))}}return this},zoom:function(n){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=this.imageData;return n=(n=Number(n))<0?1/(1-n):1+n,this.zoomTo(o.width*n/o.naturalWidth,e,t,r),this},zoomTo:function(n){var e=this,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i=arguments.length>4&&void 0!==arguments[4]&&arguments[4],l=this.element,a=this.options,d=this.pointers,s=this.imageData,c=s.x,u=s.y,p=s.width,f=s.height,h=s.naturalWidth,m=s.naturalHeight;if(In(n=Math.max(0,n))&&this.viewed&&!this.played&&(i||a.zoomable)){if(!i){var g=Math.max(.01,a.minZoomRatio),v=Math.min(100,a.maxZoomRatio);n=Math.min(Math.max(n,g),v)}if(o)switch(o.type){case"wheel":a.zoomRatio>=.055&&n>.95&&n<1.05&&(n=1);break;case"pointermove":case"touchmove":case"mousemove":n>.99&&n<1.01&&(n=1)}var y=h*n,b=m*n,C=y-p,I=b-f,x=s.ratio;if(Tn(a.zoom)&&Nn(l,pn,a.zoom,{once:!0}),!1===zn(l,pn,{ratio:n,oldRatio:x,originalEvent:o}))return this;if(this.zooming=!0,o){var S=Jn(this.viewer),w=d&&Object.keys(d).length>0?Un(d):{pageX:o.pageX,pageY:o.pageY};s.x-=C*((w.pageX-S.left-c)/p),s.y-=I*((w.pageY-S.top-u)/f)}else kn(r)&&In(r.x)&&In(r.y)?(s.x-=C*((r.x-c)/p),s.y-=I*((r.y-u)/f)):(s.x-=C/2,s.y-=I/2);s.left=s.x,s.top=s.y,s.width=y,s.height=b,s.oldRatio=x,s.ratio=n,this.renderImage((function(){e.zooming=!1,Tn(a.zoomed)&&Nn(l,fn,a.zoomed,{once:!0}),zn(l,fn,{ratio:n,oldRatio:x,originalEvent:o},{cancelable:!1})})),t&&this.tooltip()}return this},play:function(){var n=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!this.isShown||this.played)return this;var t=this.element,r=this.options;if(Tn(r.play)&&Nn(t,hn,r.play,{once:!0}),!1===zn(t,hn))return this;var o=this.player,i=this.loadImage.bind(this),l=[],a=0,d=0;if(this.played=!0,this.onLoadWhenPlay=i,e&&this.requestFullscreen(e),Vn(o,P),Hn(this.items,(function(n,e){var t=n.querySelector("img"),s=document.createElement("img");s.src=Yn(t,"originalUrl"),s.alt=t.getAttribute("alt"),s.referrerPolicy=t.referrerPolicy,a+=1,Vn(s,I),Kn(s,K,r.transition),An(n,b)&&(Vn(s,Z),d=e),l.push(s),Nn(s,j,i,{once:!0}),o.appendChild(s)})),In(r.interval)&&r.interval>0){var s=function e(){clearTimeout(n.playing.timeout),Pn(l[d],Z),Vn(l[d=(d-=1)>=0?d:a-1],Z),n.playing.timeout=setTimeout(e,r.interval)},c=function e(){clearTimeout(n.playing.timeout),Pn(l[d],Z),Vn(l[d=(d+=1)<a?d:0],Z),n.playing.timeout=setTimeout(e,r.interval)};a>1&&(this.playing={prev:s,next:c,timeout:setTimeout(c,r.interval)})}return this},stop:function(){var n=this;if(!this.played)return this;var e=this.element,t=this.options;if(Tn(t.stop)&&Nn(e,mn,t.stop,{once:!0}),!1===zn(e,mn))return this;var r=this.player;return clearTimeout(this.playing.timeout),this.playing=!1,this.played=!1,Hn(r.getElementsByTagName("img"),(function(e){jn(e,j,n.onLoadWhenPlay)})),Pn(r,P),r.innerHTML="",this.exitFullscreen(),this},full:function(){var n=this,e=this.options,t=this.viewer,r=this.image,o=this.list;return!this.isShown||this.played||this.fulled||!e.inline||(this.fulled=!0,this.open(),Vn(this.button,w),e.transition&&(Pn(o,K),this.viewed&&Pn(r,K)),Vn(t,x),t.setAttribute("role","dialog"),t.setAttribute("aria-labelledby",this.title.id),t.setAttribute("aria-modal",!0),t.removeAttribute("style"),Xn(t,{zIndex:e.zIndex}),e.focus&&this.enforceFocus(),this.initContainer(),this.viewerData=Wn({},this.containerData),this.renderList(),this.viewed&&this.initImage((function(){n.renderImage((function(){e.transition&&setTimeout((function(){Vn(r,K),Vn(o,K)}),0)}))}))),this},exit:function(){var n=this,e=this.options,t=this.viewer,r=this.image,o=this.list;return this.isShown&&!this.played&&this.fulled&&e.inline?(this.fulled=!1,this.close(),Pn(this.button,w),e.transition&&(Pn(o,K),this.viewed&&Pn(r,K)),e.focus&&this.clearEnforceFocus(),t.removeAttribute("role"),t.removeAttribute("aria-labelledby"),t.removeAttribute("aria-modal"),Pn(t,x),Xn(t,{zIndex:e.zIndexInline}),this.viewerData=Wn({},this.parentData),this.renderViewer(),this.renderList(),this.viewed&&this.initImage((function(){n.renderImage((function(){e.transition&&setTimeout((function(){Vn(r,K),Vn(o,K)}),0)}))})),this):this},tooltip:function(){var n=this,e=this.options,t=this.tooltipBox,r=this.imageData;return this.viewed&&!this.played&&e.tooltip?(t.textContent="".concat(Math.round(100*r.ratio),"%"),this.tooltipping?clearTimeout(this.tooltipping):e.transition?(this.fading&&zn(t,M),Vn(t,P),Vn(t,I),Vn(t,K),t.removeAttribute("aria-hidden"),t.initialOffsetWidth=t.offsetWidth,Vn(t,Z)):(Vn(t,P),t.removeAttribute("aria-hidden")),this.tooltipping=setTimeout((function(){e.transition?(Nn(t,M,(function(){Pn(t,P),Pn(t,I),Pn(t,K),t.setAttribute("aria-hidden",!0),n.fading=!1}),{once:!0}),Pn(t,Z),n.fading=!0):(Pn(t,P),t.setAttribute("aria-hidden",!0)),n.tooltipping=!1}),1e3),this):this},toggle:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return 1===this.imageData.ratio?this.zoomTo(this.imageData.oldRatio,!0,null,n):this.zoomTo(1,!0,null,n),this},reset:function(){return this.viewed&&!this.played&&(this.imageData=Wn({},this.initialImageData),this.renderImage()),this},update:function(){var n=this,e=this.element,t=this.options,r=this.isImg;if(r&&!e.parentNode)return this.destroy();var o=[];if(Hn(r?[e]:e.querySelectorAll("img"),(function(e){Tn(t.filter)?t.filter.call(n,e)&&o.push(e):n.getImageURL(e)&&o.push(e)})),!o.length)return this;if(this.images=o,this.length=o.length,this.ready){var i=[];if(Hn(this.items,(function(n,e){var t=n.querySelector("img"),r=o[e];r&&t&&r.src===t.src&&r.alt===t.alt||i.push(e)})),Xn(this.list,{width:"auto"}),this.initList(),this.isShown)if(this.length){if(this.viewed){var l=i.indexOf(this.index);if(l>=0)this.viewed=!1,this.view(Math.max(Math.min(this.index-l,this.length-1),0));else{var a=this.items[this.index];Vn(a,b),a.setAttribute("aria-selected",!0)}}}else this.image=null,this.viewed=!1,this.index=0,this.imageData={},this.canvas.innerHTML="",this.title.innerHTML=""}else this.build();return this},destroy:function(){var n=this.element,e=this.options;return n[m]?(this.destroyed=!0,this.ready?(this.played&&this.stop(),e.inline?(this.fulled&&this.exit(),this.unbind()):this.isShown?(this.viewing&&(this.imageRendering?this.imageRendering.abort():this.imageInitializing&&this.imageInitializing.abort()),this.hiding&&this.transitioning.abort(),this.hidden()):this.showing&&(this.transitioning.abort(),this.hidden()),this.ready=!1,this.viewer.parentNode.removeChild(this.viewer)):e.inline&&(this.delaying?this.delaying.abort():this.initializing&&this.initializing.abort()),e.inline||jn(n,G,this.onStart),n[m]=void 0,this):this}},oe={getImageURL:function(n){var e=this.options.url;return e=bn(e)?n.getAttribute(e):Tn(e)?e.call(this,n):""},enforceFocus:function(){var n=this;this.clearEnforceFocus(),Nn(document,R,this.onFocusin=function(e){var t=n.viewer,r=e.target;if(r!==document&&r!==t&&!t.contains(r)){for(;r;){if(null!==r.getAttribute("tabindex")||"true"===r.getAttribute("aria-modal"))return;r=r.parentElement}t.focus()}})},clearEnforceFocus:function(){this.onFocusin&&(jn(document,R,this.onFocusin),this.onFocusin=null)},open:function(){var n=this.body;Vn(n,V),this.scrollbarWidth>0&&(n.style.paddingRight="".concat(this.scrollbarWidth+(parseFloat(this.initialBodyComputedPaddingRight)||0),"px"))},close:function(){var n=this.body;Pn(n,V),this.scrollbarWidth>0&&(n.style.paddingRight=this.initialBodyPaddingRight)},shown:function(){var n=this.element,e=this.options,t=this.viewer;this.fulled=!0,this.isShown=!0,this.render(),this.bind(),this.showing=!1,e.focus&&(t.focus(),this.enforceFocus()),Tn(e.shown)&&Nn(n,nn,e.shown,{once:!0}),!1!==zn(n,nn)&&this.ready&&this.isShown&&!this.hiding&&this.view(this.index)},hidden:function(){var n=this.element,e=this.options,t=this.viewer;e.fucus&&this.clearEnforceFocus(),this.fulled=!1,this.viewed=!1,this.isShown=!1,this.close(),this.unbind(),Vn(t,k),t.removeAttribute("role"),t.removeAttribute("aria-labelledby"),t.removeAttribute("aria-modal"),t.setAttribute("aria-hidden",!0),this.resetList(),this.resetImage(),this.hiding=!1,this.destroyed||(Tn(e.hidden)&&Nn(n,tn,e.hidden,{once:!0}),zn(n,tn,null,{cancelable:!1}))},requestFullscreen:function(n){var e=this.element.ownerDocument;if(this.fulled&&!(e.fullscreenElement||e.webkitFullscreenElement||e.mozFullScreenElement||e.msFullscreenElement)){var t=e.documentElement;t.requestFullscreen?kn(n)?t.requestFullscreen(n):t.requestFullscreen():t.webkitRequestFullscreen?t.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):t.mozRequestFullScreen?t.mozRequestFullScreen():t.msRequestFullscreen&&t.msRequestFullscreen()}},exitFullscreen:function(){var n=this.element.ownerDocument;this.fulled&&(n.fullscreenElement||n.webkitFullscreenElement||n.mozFullScreenElement||n.msFullscreenElement)&&(n.exitFullscreen?n.exitFullscreen():n.webkitExitFullscreen?n.webkitExitFullscreen():n.mozCancelFullScreen?n.mozCancelFullScreen():n.msExitFullscreen&&n.msExitFullscreen())},change:function(n){var e=this.options,t=this.pointers,r=t[Object.keys(t)[0]];if(r){var o=r.endX-r.startX,i=r.endY-r.startY;switch(this.action){case g:0===o&&0===i||(this.pointerMoved=!0,this.move(o,i,n));break;case y:this.zoom(Mn(t),!1,null,n);break;case v:this.action="switched";var l=Math.abs(o);l>1&&l>Math.abs(i)&&(this.pointers={},o>1?this.prev(e.loop):o<-1&&this.next(e.loop))}Hn(t,(function(n){n.startX=n.endX,n.startY=n.endY}))}},isSwitchable:function(){var n=this.imageData,e=this.viewerData;return this.length>1&&n.x>=0&&n.y>=0&&n.width<=e.width&&n.height<=e.height}},ie=p.Viewer,le=(qn=-1,function(){return qn+=1}),ae=function(){function n(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(r(this,n),!e||1!==e.nodeType)throw new Error("The first argument is required and must be an element.");this.element=e,this.options=Wn({},s,kn(t)&&t),this.action=!1,this.fading=!1,this.fulled=!1,this.hiding=!1,this.imageClicked=!1,this.imageData={},this.index=this.options.initialViewIndex,this.isImg=!1,this.isShown=!1,this.length=0,this.moving=!1,this.played=!1,this.playing=!1,this.pointers={},this.ready=!1,this.rotating=!1,this.scaling=!1,this.showing=!1,this.timeout=!1,this.tooltipping=!1,this.viewed=!1,this.viewing=!1,this.wheeling=!1,this.zooming=!1,this.pointerMoved=!1,this.id=le(),this.init()}return i(n,[{key:"init",value:function(){var n=this,e=this.element,t=this.options;if(!e[m]){e[m]=this,t.focus&&!t.keyboard&&(t.focus=!1);var r="img"===e.localName,o=[];if(Hn(r?[e]:e.querySelectorAll("img"),(function(e){Tn(t.filter)?t.filter.call(n,e)&&o.push(e):n.getImageURL(e)&&o.push(e)})),this.isImg=r,this.length=o.length,this.images=o,this.initBody(),xn(document.createElement(m).style.transition)&&(t.transition=!1),t.inline){var i=0,l=function(){var e;(i+=1)===n.length&&(n.initializing=!1,n.delaying={abort:function(){clearTimeout(e)}},e=setTimeout((function(){n.delaying=!1,n.build()}),0))};this.initializing={abort:function(){Hn(o,(function(n){n.complete||(jn(n,j,l),jn(n,N,l))}))}},Hn(o,(function(n){var e,t;n.complete?l():(Nn(n,j,e=function(){jn(n,N,t),l()},{once:!0}),Nn(n,N,t=function(){jn(n,j,e),l()},{once:!0}))}))}else Nn(e,G,this.onStart=function(e){var r=e.target;"img"!==r.localName||Tn(t.filter)&&!t.filter.call(n,r)||n.view(n.images.indexOf(r))})}}},{key:"build",value:function(){if(!this.ready){var n=this.element,e=this.options,t=n.parentNode,r=document.createElement("div");r.innerHTML=c;var o=r.querySelector(".".concat(m,"-container")),i=o.querySelector(".".concat(m,"-title")),l=o.querySelector(".".concat(m,"-toolbar")),a=o.querySelector(".".concat(m,"-navbar")),d=o.querySelector(".".concat(m,"-button")),s=o.querySelector(".".concat(m,"-canvas"));if(this.parent=t,this.viewer=o,this.title=i,this.toolbar=l,this.navbar=a,this.button=d,this.canvas=s,this.footer=o.querySelector(".".concat(m,"-footer")),this.tooltipBox=o.querySelector(".".concat(m,"-tooltip")),this.player=o.querySelector(".".concat(m,"-player")),this.list=o.querySelector(".".concat(m,"-list")),o.id="".concat(m).concat(this.id),i.id="".concat(m,"Title").concat(this.id),Vn(i,e.title?Qn(Array.isArray(e.title)?e.title[0]:e.title):k),Vn(a,e.navbar?Qn(e.navbar):k),Kn(d,k,!e.button),e.keyboard&&d.setAttribute("tabindex",0),e.backdrop&&(Vn(o,"".concat(m,"-backdrop")),e.inline||"static"===e.backdrop||Rn(s,gn,"hide")),bn(e.className)&&e.className&&e.className.split(vn).forEach((function(n){Vn(o,n)})),e.toolbar){var u=document.createElement("ul"),p=kn(e.toolbar),f=yn.slice(0,3),h=yn.slice(7,9),g=yn.slice(9);p||Vn(l,Qn(e.toolbar)),Hn(p?e.toolbar:yn,(function(n,t){var r=p&&kn(n),o=p?Fn(t):n,i=r&&!xn(n.show)?n.show:n;if(i&&(e.zoomable||-1===f.indexOf(o))&&(e.rotatable||-1===h.indexOf(o))&&(e.scalable||-1===g.indexOf(o))){var l=r&&!xn(n.size)?n.size:n,a=r&&!xn(n.click)?n.click:n,d=document.createElement("li");e.keyboard&&d.setAttribute("tabindex",0),d.setAttribute("role","button"),Vn(d,"".concat(m,"-").concat(o)),Tn(a)||Rn(d,gn,o),In(i)&&Vn(d,Qn(i)),-1!==["small","large"].indexOf(l)?Vn(d,"".concat(m,"-").concat(l)):"play"===o&&Vn(d,"".concat(m,"-large")),Tn(a)&&Nn(d,G,a),u.appendChild(d)}})),l.appendChild(u)}else Vn(l,k);if(!e.rotatable){var v=l.querySelectorAll('li[class*="rotate"]');Vn(v,X),Hn(v,(function(n){l.appendChild(n)}))}if(e.inline)Vn(d,S),Xn(o,{zIndex:e.zIndexInline}),"static"===window.getComputedStyle(t).position&&Xn(t,{position:"relative"}),t.insertBefore(o,n.nextSibling);else{Vn(d,C),Vn(o,x),Vn(o,I),Vn(o,k),Xn(o,{zIndex:e.zIndex});var y=e.container;bn(y)&&(y=n.ownerDocument.querySelector(y)),y||(y=this.body),y.appendChild(o)}e.inline&&(this.render(),this.bind(),this.isShown=!0),this.ready=!0,Tn(e.ready)&&Nn(n,U,e.ready,{once:!0}),!1!==zn(n,U)?this.ready&&e.inline&&this.view(this.index):this.ready=!1}}}],[{key:"noConflict",value:function(){return window.Viewer=ie,n}},{key:"setDefaults",value:function(n){Wn(s,kn(n)&&n)}}]),n}();return Wn(ae.prototype,ne,ee,te,re,oe),ae}()}({get exports(){return FC},set exports(n){FC=n}});var YC=FC,RC=sh,LC=Ln;var jC=function(n,e,t){(void 0!==t&&!LC(n[e],t)||void 0===t&&!(e in n))&&RC(n,e,t)},NC=Cn,zC=w;var JC=function(n,e){if(("constructor"!==e||"function"!=typeof n[e])&&"__proto__"!=e)return n[e]},OC=gh,DC=Hh;var EC=jC,$C=Bh,QC=om,MC=up,_C=gm,UC=V,qC=P,nI=function(n){return zC(n)&&NC(n)},eI=K,tI=vn,rI=hn,oI=Fs,iI=M,lI=JC,aI=function(n){return OC(n,DC(n))};var dI=mt,sI=jC,cI=l,uI=function(n,e,t,r,o,i,l){var a=lI(n,t),d=lI(e,t),s=l.get(d);if(s)EC(n,t,s);else{var c=i?i(a,d,t+"",n,e,l):void 0,u=void 0===c;if(u){var p=qC(d),f=!p&&eI(d),h=!p&&!f&&iI(d);c=d,p||f||h?qC(a)?c=a:nI(a)?c=MC(a):f?(u=!1,c=$C(d,!0)):h?(u=!1,c=QC(d,!0)):c=[]:oI(d)||UC(d)?(c=a,UC(a)?c=aI(a):rI(a)&&!tI(a)||(c=_C(d))):u=!1}u&&(l.set(d,c),o(c,d,r,i,l),l.delete(d)),EC(n,t,c)}},pI=hn,fI=Hh,hI=JC;var mI=function n(e,t,r,o,i){e!==t&&cI(t,(function(l,a){if(i||(i=new dI),pI(l))uI(e,t,a,r,n,o,i);else{var d=o?o(hI(e,a),l,a+"",e,t,i):void 0;void 0===d&&(d=l),sI(e,a,d)}}),fI)},gI=vs,vI=ka;var yI=mI,bI=function(n){return gI((function(e,t){var r=-1,o=t.length,i=o>1?t[o-1]:void 0,l=o>2?t[2]:void 0;for(i=n.length>3&&"function"==typeof i?(o--,i):void 0,l&&vI(t[0],t[1],l)&&(i=o<3?void 0:i,o=1),e=Object(e);++r<o;){var a=t[r];a&&n(e,a,r,i)}return e}))}((function(n,e,t){yI(n,e,t)}));async function CI(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=!0,o=null,i=ui();if(ks(t)||(t={}),!js(n))return i.reject("eleImg is not HTMLElement"),i;if(o=n,null!==e){if(!js(e))return i.reject("eleGroup is not HTMLElement"),i;r=!1,o=e}if(!r){let n=e.querySelectorAll("img"),t=ud(n);if(0===t)return i.reject("eleGroup does not contain any img"),i;1===t&&(r=!0)}let l={button:!1,navbar:!1,title:!1,toolbar:{zoomIn:4,zoomOut:4,oneToOne:4,reset:4,prev:0,play:0,next:0,rotateLeft:4,rotateRight:4,flipHorizontal:4,flipVertical:4},tooltip:!1,movable:!0,zoomable:!0,rotatable:!0,scalable:!0,transition:!0,fullscreen:!1,keyboard:!0};r||(l=function(){let n={button:!1,navbar:!1,title:!1,toolbar:{zoomIn:4,zoomOut:4,oneToOne:4,reset:4,prev:0,play:0,next:0,rotateLeft:4,rotateRight:4,flipHorizontal:4,flipVertical:4},tooltip:!1,movable:!0,zoomable:!0,rotatable:!0,scalable:!0,transition:!0,fullscreen:!1,keyboard:!0};return n.navbar=!0,n.toolbar.prev=4,n.toolbar.next=4,n}()),l=bI(l,rg(t));let a=!1;l.hide=function(){a||(a=!0,s.hide(!0))},l.hidden=function(){s.destroy(),i.resolve("close")};let d=function(){let n=Sd();return YC||n.Viewer}(),s=new d(o,l);return s.show(),i}async function II(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;return Fg(r)||(r=["https://cdn.jsdelivr.net/npm/viewerjs@1.11.3/dist/viewer.min.css","https://cdn.jsdelivr.net/npm/viewerjs@1.11.3/dist/viewer.min.js"]),await rl(r),CI(n,e,t)}function xI(){return new function(n,e){let t=null;_i(n)||(n=0),n=Ei(n),kc(e)||(e=!1);let r=function(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=0,t=[];oC(n)&&(n=0),n=Ei(n);let r=tc();return r.get=function(){return t.length>0?(e+=1,t.splice(0,1)[0]):null},r.cb=function(){e-=1,e<0&&(e=0),t.length>0&&r.emit("message",t)},r.push=function(o){t.push(o),(n<=0||e<n)&&r.emit("message",t)},r.clear=function(){e=0,t=[]},r}(n);return r.on("message",(async function(n){let e=r.get();if(!e)return;await qi(1);let t,o=wo(e,"id"),i=wo(e,"fun"),l=wo(e,"input");t=ci(i)?await jg(i)(...l):{state:"error",msg:"fun is not function"},r.emit(o,t),r.cb()})),function(n){let o=ui(),i=ws();t=i;for(var l=arguments.length,a=new Array(l>1?l-1:0),d=1;d<l;d++)a[d-1]=arguments[d];let s={id:i,fun:n,input:a};return r.push(s),r.once(i,(n=>{e?i===t?"success"===n.state?o.resolve(n.msg):o.reject(n.msg):o.reject({reason:"cancelled"}):"success"===n.state?o.resolve(n.msg):o.reject(n.msg)})),o}}(arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,arguments.length>1&&void 0!==arguments[1]&&arguments[1])}let SI=!1;var wI={directives:{domresize:ac()},components:{WIconLoading:xd},props:{pathItems:{type:Array,default:()=>["https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.css","https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.js"]},images:{type:Array,default:()=>[]},imageWidth:{type:Number,default:300},imageWidthSoft:{type:Number,default:null},colNum:{type:Number,default:null},space:{type:Number,default:15},imageStyle:{type:Object,default:()=>{}},arrangeWhenFinish:{type:Boolean,default:!1},numParallel:{type:Number,default:5},opt:{type:Object,default:()=>{}}},data:function(){return{dbc:Lg(),loading:!0,first:!1,widthPanel:0,heightPanel:0,imageCols:[],imageLocs:[],useImageStyle:{},uesImageWidth:0,imagesRes:[]}},mounted:function(){let n=this;rl(n.pathItems).then((e=>{n.loading=!1}))},computed:{changeImages:function(){let n=this.images;return this.refreshDebounce({images:n}),""},changeStyle:function(){let n=this,e=n.widthPanel,t=n.imageWidth,r=n.imageStyle,o=n.colNum,i=n.space;return n.refreshDebounce({widthPanel:e,imageWidth:t,imageStyle:r,colNum:o,space:i}),""}},methods:{resize:function(n){let e=this,t=wo(e,"$el.offsetWidth",0);SI||e.widthPanel!==t&&(e.widthPanel=t)},getImgSize:function(n,e){let t=ui(),r=`g${ws()}`,o=document.createElement("img");o.src=n,o.style.maxWidth=`${e}px`;let i=document.createElement("div");return i.id=`img-${r}`,i.style.position="absolute",i.style.width=0,i.style.height=0,i.style.opacity=0,i.style.overflow="hidden",i.appendChild(o),document.body.appendChild(i),o.onload=function(){t.resolve({src:n,id:r,w:o.clientWidth,h:o.clientHeight,err:null}),rp(i)},o.onerror=function(e){t.reject({src:n,w:0,h:0,err:e}),rp(i)},t},getImgsSize:function(n,e){let t=this,r=tc(),o=xI(t.numParallel);t.imagesRes=[];let i=-1;return Fn(t.images,((l,a)=>{o(t.getImgSize,l,n).then((n=>{i++;let o=i;t.arrangeWhenFinish&&(o=a);let l={...n,name:(d=n.src,d.split("\\").pop().split("/").pop()),ind:o,evKey:e};var d;t.imagesRes[o]=l,r.emit("get",l)})).catch((n=>{console.log(n)}))})),r},refreshDebounce:function(){let n=this;n.dbc((()=>{n.refresh()}))},refresh:function(){let n=this,e=null,t=null;if(Xd(n.imageWidthSoft)&&n.imageWidthSoft>0)t=(n.widthPanel+n.space)/(n.imageWidthSoft+n.space),t=Math.floor(t),t=Math.max(t,1),e=(n.widthPanel-n.space*(t-1))/t;else if($i(n.colNum))t=Ei(n.colNum),e=(n.widthPanel-(t-1)*n.space)/t,e=Math.floor(e);else if(Xd(n.imageWidth)&&n.imageWidth>0){e=n.imageWidth;let r=n.widthPanel+n.space;r=Math.max(r,0);let o=e+n.space;o=Math.max(o,1),t=Math.floor(r/o)}else console.log("invalid colNum or imageWidth or imageWidthSoft",n.colNum,n.imageWidth,n.imageWidthSoft),t=4,e=300;n.uesImageWidth=e;let r={...n.imageStyle,"max-width":`${e}px`,"user-select":"none",cursor:"pointer",outline:"none"};function o(){n.imageCols=ii(GC(t),(()=>[])),n.imageLocs=ii(GC(t),(()=>0))}function i(e){if(!di(n.imageCols))return;let t=function(){let e=n.imageLocs[0],t=0;return Fn(n.imageLocs,((n,r)=>{e>n&&(e=n,t=r)})),t}();try{n.imageCols[t].push(e),n.imageLocs[t]+=e.h+n.space+53}catch(n){}}function l(){o(),Fn(n.imagesRes,(n=>{i(n)}))}n.useImageStyle=r,n.first?l():function(){let t=ui();o();let r=ws(),a=ud(n.images),d=n.getImgsSize(e,r),s=0;d.on("get",(e=>{e.evKey===r&&(i(e),s++,s>=a&&(n.first=!0,n.arrangeWhenFinish&&l(),t.resolve()))}))}()},showImg:function(n,e){let t=this;SI=!0,II(n.currentTarget,null,t.opt,t.pathItems).finally((()=>{SI=!1})),t.$emit("click",e)}}};const kI=wI;var TI=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeImages:n.changeImages,changeStyle:n.changeStyle},on:{domresize:n.resize}},[t("div",{staticStyle:{"margin-top":"-1px",height:"1px"}}),n._v(" "),n.loading?t("WIconLoading"):t("div",n._l(n.imageCols,(function(e,r){return t("div",{key:"c-"+r,style:"display:table-cell; vertical-align:top; margin:0; padding-left:"+(r>0?n.space:0)+"px;"},n._l(e,(function(e,r){return t("div",{key:"kimg-"+r,class:n.first?"":"fadeIn",style:"margin:"+(r>0?n.space:0)+"px 0 0 0; width:"+n.uesImageWidth+"px; user-select:none; outline:none;",attrs:{tabindex:"0"}},[t("div",{style:"display:flex;"},[t("img",{style:n.useImageStyle,attrs:{src:e.src},on:{keyup:function(t){return!t.type.indexOf("key")&&n._k(t.keyCode,"enter",13,t.key,"Enter")?null:function(t){n.showImg(t,e)}.apply(null,arguments)},click:function(t){n.showImg(t,e)}}})]),n._v(" "),t("div",{staticStyle:{background:"rgba(0,0,0,0.65)",padding:"5px"}},[t("input",{staticClass:"inp",staticStyle:{"font-size":"0.8rem",color:"#fff"},attrs:{type:"text",_spellcheck:"false",readonly:""},domProps:{value:e.name}})]),n._v(" "),t("div",{staticStyle:{background:"rgba(200,200,200,0.5)",padding:"3px 5px"}},[t("input",{staticClass:"inp",staticStyle:{"font-size":"0.7rem",opacity:"0.75"},attrs:{type:"text",_spellcheck:"false",readonly:""},domProps:{value:e.src}})])])})),0)})),0)],1)};TI._withStripped=!0;const HI=md({render:TI,staticRenderFns:[]},(function(n){n&&n("data-v-2a29abe8_0",{source:"\n.inp[data-v-2a29abe8] {\r\n font: inherit;\r\n height: 1rem;\r\n line-height: 1rem;\r\n width: 100%;\r\n margin: 0;\r\n padding: 0;\r\n display: block;\r\n background: transparent;\r\n border-style: none;\n}\n.inp[data-v-2a29abe8]:focus {\r\n outline: none;\n}\n.fadeIn[data-v-2a29abe8] {\r\n animation: aniFadeIn-data-v-2a29abe8 0.3s;\n}\n@keyframes aniFadeIn-data-v-2a29abe8\r\n{\nfrom {opacity: 0;}\nto {opacity: 1}\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WImageCascadingDyn.vue"],names:[],mappings:";AAolBA;IACA,aAAA;IACA,YAAA;IACA,iBAAA;IACA,WAAA;IACA,SAAA;IACA,UAAA;IACA,cAAA;IACA,uBAAA;IACA,kBAAA;AACA;AACA;IACA,aAAA;AACA;AACA;IACA,yCAAA;AACA;AACA;;AAEA,MAAA,UAAA,CAAA;AACA,IAAA,UAAA;AACA",file:"WImageCascadingDyn.vue",sourcesContent:["<template>\r\n <div\r\n :changeImages=\"changeImages\"\r\n :changeStyle=\"changeStyle\"\r\n v-domresize\r\n @domresize=\"resize\"\r\n >\r\n\r\n \x3c!-- 初始化無圖片時先撐開寬度 --\x3e\r\n <div style=\"margin-top:-1px; height:1px;\"></div>\r\n\r\n <WIconLoading v-if=\"loading\"></WIconLoading>\r\n\r\n <div v-else>\r\n\r\n <div\r\n :style=\"`display:table-cell; vertical-align:top; margin:0; padding-left:${kimgs>0?space:0}px;`\"\r\n :key=\"`c-${kimgs}`\"\r\n v-for=\"(imgs,kimgs) in imageCols\"\r\n >\r\n\r\n <div\r\n :class=\"`${first?'':'fadeIn'}`\"\r\n :style=\"`margin:${kimg>0?space:0}px 0 0 0; width:${uesImageWidth}px; user-select:none; outline:none;`\"\r\n tabindex=\"0\"\r\n :key=\"`kimg-${kimg}`\"\r\n v-for=\"(img,kimg) in imgs\"\r\n >\r\n\r\n <div :style=\"`display:flex;`\">\r\n <img\r\n :style=\"useImageStyle\"\r\n :src=\"img.src\"\r\n @keyup.enter=\"(e)=>{showImg(e,img)}\"\r\n @click=\"(e)=>{showImg(e,img)}\"\r\n >\r\n </div>\r\n\r\n <div style=\"background:rgba(0,0,0,0.65); padding:5px;\">\r\n <input\r\n type=\"text\"\r\n class=\"inp\"\r\n style=\"font-size:0.8rem; color:#fff;\"\r\n _spellcheck=\"false\"\r\n readonly\r\n :value=\"img.name\"\r\n >\r\n </div>\r\n\r\n <div style=\"background:rgba(200,200,200,0.5); padding:3px 5px;\">\r\n <input\r\n type=\"text\"\r\n class=\"inp\"\r\n style=\"font-size:0.7rem; opacity:0.75;\"\r\n _spellcheck=\"false\"\r\n readonly\r\n :value=\"img.src\"\r\n >\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport each from 'lodash/each'\r\nimport map from 'lodash/map'\r\nimport get from 'lodash/get'\r\nimport times from 'lodash/times'\r\nimport size from 'lodash/size'\r\nimport isNumber from 'lodash/isNumber'\r\nimport importResources from 'wsemi/src/importResources.mjs'\r\nimport domShowImagesDyn from 'wsemi/src/domShowImagesDyn.mjs'\r\nimport ispint from 'wsemi/src/ispint.mjs'\r\nimport cint from 'wsemi/src/cint.mjs'\r\nimport isarr from 'wsemi/src/isarr.mjs'\r\nimport genPm from 'wsemi/src/genPm.mjs'\r\nimport genID from 'wsemi/src/genID.mjs'\r\nimport pmQueue from 'wsemi/src/pmQueue.mjs'\r\nimport domRemove from 'wsemi/src/domRemove.mjs'\r\nimport evem from 'wsemi/src/evem.mjs'\r\nimport debounce from 'wsemi/src/debounce.mjs'\r\nimport domResize from '../js/domResize.mjs'\r\nimport WIconLoading from './WIconLoading.vue'\r\n\r\n\r\n//showViewer, 得要跨組件共用, 因彈出viewer會影響全部組件\r\nlet showViewer = false\r\n\r\n\r\nfunction getFileName(str) {\r\n return str.split('\\\\').pop().split('/').pop()\r\n}\r\n\r\n\r\n/**\r\n * @vue-prop {Array} [pathItems=['詳見原始碼']] 輸入viewerjs組件js與css檔案位置字串陣列,預設詳見原始碼處props->pathItems->default\r\n * @vue-prop {Array} [images=[]] 輸入圖片網址陣列,預設[]\r\n * @vue-prop {Number} [imageWidth=300] 輸入圖片寬度數字,單位為px,預設300\r\n * @vue-prop {Number} [imageWidthSoft=null] 輸入自動計算最小需滿足的圖片寬度數字,單位為px,預設null\r\n * @vue-prop {Number} [colNum=null] 輸入組件寬度圖片欄位(水平向有幾張圖片)數量數字,預設null\r\n * @vue-prop {Number} [space=15] 輸入圖片間間距長度數字,單位為px,預設15\r\n * @vue-prop {Object} [imageStyle={}] 輸入圖片style物件,預設{}\r\n * @vue-prop {Object} [arrangeWhenFinish=false] 輸入是否於圖片載入完畢時依照原本圖片順序排序布林值,預設false\r\n * @vue-prop {Number} [numParallel=5] 輸入同時載入圖片數量數字,預設5\r\n * @vue-prop {Object} [opt={}] 輸入viewerjs設定物件,預設使用optOne或optMuti,若img僅一個則使用optOne,反之使用optMuti\r\n * @vue-prop {Boolean} [multiple=false] 輸入\r\n */\r\nexport default {\r\n directives: {\r\n domresize: domResize(),\r\n },\r\n components: {\r\n WIconLoading,\r\n },\r\n props: {\r\n pathItems: {\r\n type: Array,\r\n default: () => [ //預設值詳見 wsemi/src/domShowImagesDyn.mjs, 因此處有預載, 故所使用viewerjs的版本得相同\r\n 'https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.css',\r\n 'https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.js',\r\n ],\r\n },\r\n images: {\r\n type: Array,\r\n default: () => [],\r\n },\r\n imageWidth: {\r\n type: Number,\r\n default: 300,\r\n },\r\n imageWidthSoft: {\r\n type: Number,\r\n default: null,\r\n },\r\n colNum: {\r\n type: Number,\r\n default: null,\r\n },\r\n space: {\r\n type: Number,\r\n default: 15,\r\n },\r\n imageStyle: {\r\n type: Object,\r\n default: () => {},\r\n },\r\n arrangeWhenFinish: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n numParallel: {\r\n type: Number,\r\n default: 5,\r\n },\r\n opt: {\r\n type: Object,\r\n default: () => {},\r\n },\r\n },\r\n data: function() {\r\n return {\r\n dbc: debounce(),\r\n\r\n loading: true,\r\n first: false,\r\n\r\n widthPanel: 0,\r\n heightPanel: 0,\r\n imageCols: [],\r\n imageLocs: [],\r\n useImageStyle: {},\r\n uesImageWidth: 0,\r\n\r\n imagesRes: [],\r\n\r\n }\r\n },\r\n mounted: function() {\r\n //console.log('mounted')\r\n\r\n let vo = this\r\n\r\n //importResources\r\n importResources(vo.pathItems)\r\n .then((res) => {\r\n //console.log('res', res)\r\n\r\n //loading\r\n vo.loading = false\r\n\r\n })\r\n\r\n },\r\n computed: {\r\n\r\n changeImages: function() {\r\n // console.log('computed changeImages')\r\n\r\n let vo = this\r\n\r\n let images = vo.images\r\n\r\n //refreshDebounce\r\n vo.refreshDebounce({ images })\r\n\r\n return ''\r\n },\r\n\r\n changeStyle: function() {\r\n // console.log('computed changeStyle')\r\n\r\n let vo = this\r\n\r\n //for trigger\r\n let widthPanel = vo.widthPanel\r\n let imageWidth = vo.imageWidth\r\n let imageStyle = vo.imageStyle\r\n let colNum = vo.colNum\r\n let space = vo.space\r\n\r\n //refreshDebounce\r\n vo.refreshDebounce({ widthPanel, imageWidth, imageStyle, colNum, space })\r\n\r\n return ''\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n resize: function(msg) {\r\n // console.log('methods resize', msg)\r\n\r\n let vo = this\r\n\r\n //widthPanel\r\n let widthPanel = get(vo, '$el.offsetWidth', 0)\r\n\r\n //check, 因開啟viewer會改變視窗尺寸, 進而觸發resize, 會導致觸發changeStyle並重算圖片, 故得使用showViewer判斷是否為開啟viewer狀態, 避免重算圖片\r\n if (showViewer) {\r\n return\r\n }\r\n\r\n //check\r\n if (vo.widthPanel === widthPanel) {\r\n return\r\n }\r\n\r\n //save\r\n vo.widthPanel = widthPanel\r\n\r\n },\r\n\r\n getImgSize: function(src, uesImageWidth) {\r\n //console.log('methods getImgSize', src, uesImageWidth)\r\n\r\n // let vo = this\r\n\r\n //pm\r\n let pm = genPm()\r\n\r\n //id\r\n let id = `g${genID()}`\r\n\r\n //img\r\n let img = document.createElement('img')\r\n img.src = src\r\n img.style.maxWidth = `${uesImageWidth}px`\r\n\r\n //div\r\n let div = document.createElement('div')\r\n div.id = `img-${id}`\r\n div.style.position = 'absolute'\r\n div.style.width = 0\r\n div.style.height = 0\r\n div.style.opacity = 0\r\n div.style.overflow = 'hidden'\r\n div.appendChild(img)\r\n\r\n //body\r\n document.body.appendChild(div)\r\n\r\n //onload\r\n img.onload = function() {\r\n // setTimeout(() => {\r\n // pm.resolve({\r\n // src,\r\n // id,\r\n // w: img.clientWidth,\r\n // h: img.clientHeight,\r\n // err: null,\r\n // })\r\n // domRemove(div)\r\n // }, random(10, 2500))\r\n pm.resolve({\r\n src,\r\n id,\r\n w: img.clientWidth,\r\n h: img.clientHeight,\r\n err: null,\r\n })\r\n domRemove(div)\r\n }\r\n\r\n //onerror\r\n img.onerror = function(err) {\r\n pm.reject({\r\n src,\r\n w: 0,\r\n h: 0,\r\n err,\r\n })\r\n domRemove(div)\r\n }\r\n\r\n return pm\r\n },\r\n\r\n getImgsSize: function(uesImageWidth, evKey) {\r\n //console.log('methods getImgsSize', uesImageWidth, evKey)\r\n\r\n let vo = this\r\n\r\n //ev\r\n let ev = evem()\r\n\r\n //pmQueue\r\n let pmq = pmQueue(vo.numParallel) //1次取得numParallel個圖片\r\n\r\n //getImgSize\r\n vo.imagesRes = []\r\n let j = -1\r\n each(vo.images, (src, k) => {\r\n pmq(vo.getImgSize, src, uesImageWidth)\r\n .then((r) => {\r\n j++\r\n\r\n //ind\r\n let ind = j\r\n if (vo.arrangeWhenFinish) { //需依照原始順序排序\r\n ind = k\r\n }\r\n\r\n //o\r\n let o = {\r\n ...r,\r\n name: getFileName(r.src),\r\n ind,\r\n evKey,\r\n }\r\n\r\n //save imagesRes\r\n vo.imagesRes[ind] = o\r\n\r\n //emit\r\n ev.emit('get', o)\r\n\r\n })\r\n .catch((err) => {\r\n console.log(err)\r\n })\r\n })\r\n\r\n return ev\r\n },\r\n\r\n refreshDebounce: function() {\r\n //console.log('methods refreshDebounce')\r\n\r\n let vo = this\r\n\r\n //dbc\r\n vo.dbc(() => {\r\n\r\n //refresh\r\n vo.refresh()\r\n\r\n })\r\n\r\n },\r\n\r\n refresh: function() {\r\n // console.log('methods refresh')\r\n\r\n let vo = this\r\n\r\n //uesImageWidth, colNum\r\n let uesImageWidth = null\r\n let colNum = null\r\n if (isNumber(vo.imageWidthSoft) && vo.imageWidthSoft > 0) {\r\n // console.log('優先使用imageWidthSoft計算colNum與imageWidth')\r\n\r\n //colNum\r\n colNum = (vo.widthPanel + vo.space) / (vo.imageWidthSoft + vo.space)\r\n colNum = Math.floor(colNum)\r\n colNum = Math.max(colNum, 1)\r\n // console.log('colNum', colNum)\r\n\r\n //uesImageWidth\r\n uesImageWidth = (vo.widthPanel - vo.space * (colNum - 1)) / colNum\r\n // console.log('uesImageWidth', uesImageWidth)\r\n\r\n }\r\n else if (ispint(vo.colNum)) {\r\n // console.log('次先使用colNum計算imageWidth')\r\n\r\n //colNum\r\n colNum = cint(vo.colNum)\r\n\r\n //uesImageWidth\r\n uesImageWidth = (vo.widthPanel - (colNum - 1) * vo.space) / colNum\r\n uesImageWidth = Math.floor(uesImageWidth)\r\n\r\n }\r\n else if (isNumber(vo.imageWidth) && vo.imageWidth > 0) {\r\n // console.log('最後使用imageWidth計算colNum')\r\n\r\n //uesImageWidth\r\n uesImageWidth = vo.imageWidth\r\n\r\n //colNum\r\n let wa = vo.widthPanel + vo.space\r\n wa = Math.max(wa, 0)\r\n let wis = uesImageWidth + vo.space\r\n wis = Math.max(wis, 1)\r\n colNum = Math.floor(wa / wis)\r\n\r\n }\r\n else {\r\n console.log('invalid colNum or imageWidth or imageWidthSoft', vo.colNum, vo.imageWidth, vo.imageWidthSoft)\r\n colNum = 4\r\n uesImageWidth = 300\r\n }\r\n vo.uesImageWidth = uesImageWidth\r\n\r\n //useImageStyle\r\n let useImageStyle = {\r\n ...vo.imageStyle,\r\n 'max-width': `${uesImageWidth}px`,\r\n 'user-select': 'none',\r\n 'cursor': 'pointer',\r\n 'outline': 'none',\r\n }\r\n vo.useImageStyle = useImageStyle\r\n\r\n function getMinHeightCol() {\r\n let hmin = vo.imageLocs[0]\r\n let ihmin = 0\r\n each(vo.imageLocs, (v, i) => {\r\n if (hmin > v) {\r\n hmin = v\r\n ihmin = i\r\n }\r\n })\r\n return ihmin\r\n }\r\n\r\n function resetImageColsAndLocs() {\r\n vo.imageCols = map(times(colNum), () => {\r\n return []\r\n })\r\n vo.imageLocs = map(times(colNum), () => {\r\n return 0\r\n })\r\n }\r\n\r\n function pushImage(img) {\r\n\r\n //check, 開發階段可能hot reload組件導致出現上一輪事件\r\n if (!isarr(vo.imageCols)) {\r\n return\r\n }\r\n\r\n //getMinHeightCol\r\n let i = getMinHeightCol()\r\n\r\n try {\r\n\r\n //push\r\n vo.imageCols[i].push(img)\r\n\r\n //update\r\n vo.imageLocs[i] += img.h + vo.space + (29 + 24) //29是圖名區高度, 24是位址區高度\r\n\r\n }\r\n catch (err) { }\r\n\r\n }\r\n\r\n function build() {\r\n\r\n //pm\r\n let pm = genPm()\r\n\r\n //resetImageColsAndLocs\r\n resetImageColsAndLocs()\r\n\r\n //evKey\r\n let evKey = genID()\r\n\r\n //num\r\n let num = size(vo.images)\r\n\r\n //getImgsSize\r\n let ev = vo.getImgsSize(uesImageWidth, evKey)\r\n\r\n //pushImage\r\n let n = 0\r\n ev.on('get', (img) => {\r\n // console.log('get', img)\r\n\r\n //check\r\n if (img.evKey !== evKey) {\r\n return\r\n }\r\n\r\n //pushImage\r\n pushImage(img)\r\n\r\n //check\r\n n++\r\n if (n >= num) {\r\n\r\n //first\r\n vo.first = true\r\n\r\n //arrange\r\n if (vo.arrangeWhenFinish) {\r\n arrange()\r\n }\r\n\r\n //resolve\r\n pm.resolve()\r\n\r\n }\r\n\r\n })\r\n\r\n return pm\r\n }\r\n\r\n function arrange() {\r\n\r\n //resetImageColsAndLocs\r\n resetImageColsAndLocs()\r\n\r\n //pushImage\r\n each(vo.imagesRes, (img) => {\r\n pushImage(img)\r\n })\r\n\r\n }\r\n\r\n if (!vo.first) {\r\n // console.log('build')\r\n build()\r\n }\r\n else {\r\n // console.log('arrange')\r\n arrange()\r\n }\r\n\r\n },\r\n\r\n showImg: function(e, img) {\r\n // console.log('methods showImg', e, img)\r\n\r\n let vo = this\r\n\r\n //showViewer\r\n showViewer = true\r\n\r\n //domShowImagesDyn\r\n domShowImagesDyn(e.currentTarget, null, vo.opt, vo.pathItems)\r\n .finally(() => {\r\n\r\n //showViewer\r\n showViewer = false\r\n\r\n })\r\n\r\n //emit\r\n vo.$emit('click', img)\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.inp {\r\n font: inherit;\r\n height: 1rem;\r\n line-height: 1rem;\r\n width: 100%;\r\n margin: 0;\r\n padding: 0;\r\n display: block;\r\n background: transparent;\r\n border-style: none;\r\n}\r\n.inp:focus {\r\n outline: none;\r\n}\r\n.fadeIn {\r\n animation: aniFadeIn 0.3s;\r\n}\r\n@keyframes aniFadeIn\r\n{\r\n from {opacity: 0;}\r\n to {opacity: 1}\r\n}\r\n</style>\r\n"]},media:void 0})}),kI,"data-v-2a29abe8",false,undefined,!1,vd,void 0,void 0);const WI={components:{WIconLoading:xd},props:{pathItems:{type:Array,default:()=>["https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.css","https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.js"]},images:{type:Array,default:()=>[]},imageStyle:{type:Object,default:()=>{}},opt:{type:Object,default:()=>{}},multiple:{type:Boolean,default:!1}},data:function(){return{loading:!0}},mounted:function(){let n=this;rl(n.pathItems).then((e=>{n.loading=!1,n.$nextTick((()=>{let e=wo(n,"$refs.wiv",[]);Fn(e,((n,e)=>{Ns(n,{duration:200,delay:100*e})}))}))}))},computed:{useImageStyle:function(){return bI({margin:"5px"},this.imageStyle)}},methods:{showImg:function(n){let e=this,t=null;e.multiple&&(t=e.$refs.wig),II(n.currentTarget,t,e.opt,e.pathItems).catch((n=>{console.log(n)}))}}};var ZI=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",[n.loading?t("WIconLoading"):t("div",{ref:"wig"},n._l(n.images,(function(e,r){return t("div",{key:r,ref:"wiv",refInFor:!0,staticStyle:{display:"inline-block",opacity:"0","user-select":"none",cursor:"pointer",outline:"none"},attrs:{tabindex:"0"},on:{keyup:function(e){return!e.type.indexOf("key")&&n._k(e.keyCode,"enter",13,e.key,"Enter")?null:n.showImg.apply(null,arguments)},click:n.showImg}},[t("img",{style:n.useImageStyle,attrs:{src:e}})])})),0)],1)};ZI._withStripped=!0;const XI=md({render:ZI,staticRenderFns:[]},(function(n){n&&n("data-v-2729d6f1_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WImageViewerDyn.vue"},media:void 0})}),WI,"data-v-2729d6f1",false,undefined,!1,vd,void 0,void 0);var BI={components:{},props:{multiCheck:{type:Boolean,default:!0},items:{type:Array,default:()=>[]},value:{type:[Array,String,Object]},keyText:{type:String,default:"text"},arrange:{type:String,default:"vertical"},textColor:{type:String,default:"#666"},textColorHover:{type:String,default:"#444"},textColorActive:{type:String,default:"#222"},textFontSize:{type:String,default:"0.85rem"},textDisabledOpacity:{type:Number,default:.7},marginStyle:{type:Object,default:()=>({top:0,bottom:0,left:0,right:0})},paddingStyle:{type:Object,default:()=>({top:0,bottom:0,left:0,right:0})},verticalAlign:{type:String,default:"center"},inputHeight:{type:[Number,String],default:null},editable:{type:Boolean,default:!0}},data:function(){return{get:wo,itemsTrans:[],dataActive:null}},mounted:function(){},computed:{changeItems:function(){let n=this;let e=rg(n.items),t=ii(e,(e=>{let t=function(e){let t;return t=n.multiCheck?Jb(n.value,e):ah(e,n.value),t}(e);return t})),r=[],o=[];return Fn(e,((n,e)=>{let i={data:n},l=`id-${e}`;i.id=l;let a=t[e];i.active=a,i.hover=!1,r.push(i),a&&o.push(l)})),n.multiCheck||(o=o[0]),n.itemsTrans=r,n.dataActive=o,""},useMarginStyle:function(){return`margin:${tp(this.marginStyle,{parse:!this.group})};`},usePadding:function(){let n=this;return`padding:${tp(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}})};`},useVerticalAlign:function(){let n=this,e="";return"center"===n.verticalAlign?e="align-items:center;":"top"===n.verticalAlign?e="align-items:flex-start;":"bottom"===n.verticalAlign&&(e="align-items:flex-end;"),e},useInputHeight:function(){let n=this,e="";return Yi(n.inputHeight)?e=`height:${n.inputHeight}px;`:Fi(n.inputHeight)&&(n.inputHeight=Ts(n.inputHeight,";",""),e=`height:${n.inputHeight};`),e},effTextColor:function(){return fd(this.textColor)},effTextColorHover:function(){return fd(this.textColorHover)},effTextColorActive:function(){return fd(this.textColorActive)}},methods:{getText:function(n){return wo(n,`data.${this.keyText}`)||wo(n,"data")},getTextColor:function(n,e){let t,r=this;return t=n.active?r.effTextColorActive:n.hover?r.effTextColorHover:r.effTextColor,r.editable||(t=n.active?r.effTextColorActive:r.effTextColor),t},mouseenter:function(n,e){let t=this;Fn(t.itemsTrans,((n,r)=>{t.itemsTrans[r].hover=r===e}))},mouseleave:function(n,e){let t=this;Fn(t.itemsTrans,((n,e)=>{t.itemsTrans[e].hover=!1}))},toggleState:function(n){let e=this;if(!1!==e.editable)if(e.multiCheck){let t=rg(e.value);if(n.active){let e=[];Fn(t,(t=>{ah(t,n.data)||e.push(t)})),t=e}else t.push(n.data);e.$nextTick((()=>{e.$emit("input",t),e.$emit("click",n.data,""+(n.active?"hide":"show"))}))}else e.$nextTick((()=>{e.$emit("input",n.data),e.$emit("click",n.data)}))}}};const AI=BI;var VI=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeItems:n.changeItems}},n._l(n.itemsTrans,(function(e,r){return t("div",{key:r,style:("vertical"===n.arrange?"":"display:inline-block;")+" "+n.useMarginStyle+" "+n.usePadding},[t("div",{style:"transition:all 0.3s; display:flex; "+n.useVerticalAlign+"; color:"+n.getTextColor(e,r)+";",on:{mouseenter:function(t){return n.mouseenter(e,r)},mouseleave:function(t){return n.mouseleave(e,r)}}},["checkbox"==(n.multiCheck?"checkbox":"radio")?t("input",{directives:[{name:"model",rawName:"v-model",value:n.dataActive,expression:"dataActive"}],style:n.useInputHeight+" padding:0px; cursor:pointer; opacity:"+(n.editable?1:n.textDisabledOpacity)+";",attrs:{disabled:!n.editable,type:"checkbox"},domProps:{value:e.id,checked:Array.isArray(n.dataActive)?n._i(n.dataActive,e.id)>-1:n.dataActive},on:{change:function(t){var r=n.dataActive,o=t.target,i=!!o.checked;if(Array.isArray(r)){var l=e.id,a=n._i(r,l);o.checked?a<0&&(n.dataActive=r.concat([l])):a>-1&&(n.dataActive=r.slice(0,a).concat(r.slice(a+1)))}else n.dataActive=i}}}):"radio"==(n.multiCheck?"checkbox":"radio")?t("input",{directives:[{name:"model",rawName:"v-model",value:n.dataActive,expression:"dataActive"}],style:n.useInputHeight+" padding:0px; cursor:pointer; opacity:"+(n.editable?1:n.textDisabledOpacity)+";",attrs:{disabled:!n.editable,type:"radio"},domProps:{value:e.id,checked:n._q(n.dataActive,e.id)},on:{change:function(t){n.dataActive=e.id}}}):t("input",{directives:[{name:"model",rawName:"v-model",value:n.dataActive,expression:"dataActive"}],style:n.useInputHeight+" padding:0px; cursor:pointer; opacity:"+(n.editable?1:n.textDisabledOpacity)+";",attrs:{disabled:!n.editable,type:n.multiCheck?"checkbox":"radio"},domProps:{value:e.id,value:n.dataActive},on:{input:function(e){e.target.composing||(n.dataActive=e.target.value)}}}),n._v(" "),t("div",{style:"opacity:"+(n.editable?1:n.textDisabledOpacity)+";",on:{click:function(t){return n.toggleState(e)}}},[n._t("default",(function(){return[t("div",{style:"margin:0px 0px 0px 5px; cursor:pointer;"},[n._v("\n "+n._s(n.getText(e))+"\n ")])]}),{item:e,kitem:r,isHover:e.hover,isActive:e.active})],2)])])})),0)};VI._withStripped=!0;const PI=md({render:VI,staticRenderFns:[]},(function(n){n&&n("data-v-0baa0ae3_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WInputCheckbox.vue"},media:void 0})}),AI,undefined,false,undefined,!1,vd,void 0,void 0);const KI={components:{WInputCheckbox:PI},props:{multiCheck:{type:Boolean,default:!0},items:{type:Array,default:()=>[]},value:{type:[Array,String,Object]},keyText:{type:String,default:"text"},arrange:{type:String,default:"vertical"},textColor:{type:String,default:"#666"},textColorHover:{type:String,default:"#444"},textColorActive:{type:String,default:"#222"},textFontSize:{type:String,default:"0.85rem"},textDisabledOpacity:{type:Number,default:.7},marginStyle:{type:Object,default:()=>({top:0,bottom:0,left:0,right:0})},paddingStyle:{type:Object,default:()=>({top:0,bottom:0,left:0,right:0})},verticalAlign:{type:String,default:"center"},inputHeight:{type:[Number,String],default:null},editable:{type:Boolean,default:!0}},data:function(){return{}},mounted:function(){},computed:{},methods:{}};var GI=function(){var n=this,e=n.$createElement;return(n._self._c||e)("WInputCheckbox",n._g(n._b({scopedSlots:n._u([{key:"default",fn:function(e){return[n._t("default",null,{item:e.item,kitem:e.kitem,isHover:e.isHover,isActive:e.isActive})]}}],null,!0)},"WInputCheckbox",Object.assign({},n.$props,{multiCheck:!1}),!1),n.$listeners))};GI._withStripped=!0;const FI=md({render:GI,staticRenderFns:[]},(function(n){n&&n("data-v-51ff4a4f_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WInputRadio.vue"},media:void 0})}),KI,"data-v-51ff4a4f",false,undefined,!1,vd,void 0,void 0);function YI(n,e){(null==e||e>n.length)&&(e=n.length);for(var t=0,r=new Array(e);t<e;t++)r[t]=n[t];return r}function RI(n){return function(n){if(Array.isArray(n))return YI(n)}(n)||function(n){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(n))return Array.from(n)}(n)||function(n,e){if(n){if("string"==typeof n)return YI(n,e);var t=Object.prototype.toString.call(n).slice(8,-1);return"Object"===t&&n.constructor&&(t=n.constructor.name),"Map"===t||"Set"===t?Array.from(n):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?YI(n,e):void 0}}(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function LI(n,e,t,r,o,i,l){try{var a=n[i](l),d=a.value}catch(n){return void t(n)}a.done?e(d):Promise.resolve(d).then(r,o)}function jI(n){return(jI="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n})(n)}var NI="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function zI(n){var e={exports:{}};return n(e,e.exports),e.exports}var JI,OI=zI((function(n){var e=function(n){var e,t=Object.prototype,r=t.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",l=o.asyncIterator||"@@asyncIterator",a=o.toStringTag||"@@toStringTag";function d(n,e,t){return Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}),n[e]}try{d({},"")}catch(n){d=function(n,e,t){return n[e]=t}}function s(n,e,t,r){var o=e&&e.prototype instanceof g?e:g,i=Object.create(o.prototype),l=new W(r||[]);return i._invoke=function(n,e,t){var r=u;return function(o,i){if(r===f)throw new Error("Generator is already running");if(r===h){if("throw"===o)throw i;return X()}for(t.method=o,t.arg=i;;){var l=t.delegate;if(l){var a=k(l,t);if(a){if(a===m)continue;return a}}if("next"===t.method)t.sent=t._sent=t.arg;else if("throw"===t.method){if(r===u)throw r=h,t.arg;t.dispatchException(t.arg)}else"return"===t.method&&t.abrupt("return",t.arg);r=f;var d=c(n,e,t);if("normal"===d.type){if(r=t.done?h:p,d.arg===m)continue;return{value:d.arg,done:t.done}}"throw"===d.type&&(r=h,t.method="throw",t.arg=d.arg)}}}(n,t,l),i}function c(n,e,t){try{return{type:"normal",arg:n.call(e,t)}}catch(n){return{type:"throw",arg:n}}}n.wrap=s;var u="suspendedStart",p="suspendedYield",f="executing",h="completed",m={};function g(){}function v(){}function y(){}var b={};b[i]=function(){return this};var C=Object.getPrototypeOf,I=C&&C(C(Z([])));I&&I!==t&&r.call(I,i)&&(b=I);var x=y.prototype=g.prototype=Object.create(b);function S(n){["next","throw","return"].forEach((function(e){d(n,e,(function(n){return this._invoke(e,n)}))}))}function w(n,e){function t(o,i,l,a){var d=c(n[o],n,i);if("throw"!==d.type){var s=d.arg,u=s.value;return u&&"object"===jI(u)&&r.call(u,"__await")?e.resolve(u.__await).then((function(n){t("next",n,l,a)}),(function(n){t("throw",n,l,a)})):e.resolve(u).then((function(n){s.value=n,l(s)}),(function(n){return t("throw",n,l,a)}))}a(d.arg)}var o;this._invoke=function(n,r){function i(){return new e((function(e,o){t(n,r,e,o)}))}return o=o?o.then(i,i):i()}}function k(n,t){var r=n.iterator[t.method];if(r===e){if(t.delegate=null,"throw"===t.method){if(n.iterator.return&&(t.method="return",t.arg=e,k(n,t),"throw"===t.method))return m;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return m}var o=c(r,n.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,m;var i=o.arg;return i?i.done?(t[n.resultName]=i.value,t.next=n.nextLoc,"return"!==t.method&&(t.method="next",t.arg=e),t.delegate=null,m):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,m)}function T(n){var e={tryLoc:n[0]};1 in n&&(e.catchLoc=n[1]),2 in n&&(e.finallyLoc=n[2],e.afterLoc=n[3]),this.tryEntries.push(e)}function H(n){var e=n.completion||{};e.type="normal",delete e.arg,n.completion=e}function W(n){this.tryEntries=[{tryLoc:"root"}],n.forEach(T,this),this.reset(!0)}function Z(n){if(n){var t=n[i];if(t)return t.call(n);if("function"==typeof n.next)return n;if(!isNaN(n.length)){var o=-1,l=function t(){for(;++o<n.length;)if(r.call(n,o))return t.value=n[o],t.done=!1,t;return t.value=e,t.done=!0,t};return l.next=l}}return{next:X}}function X(){return{value:e,done:!0}}return v.prototype=x.constructor=y,y.constructor=v,v.displayName=d(y,a,"GeneratorFunction"),n.isGeneratorFunction=function(n){var e="function"==typeof n&&n.constructor;return!!e&&(e===v||"GeneratorFunction"===(e.displayName||e.name))},n.mark=function(n){return Object.setPrototypeOf?Object.setPrototypeOf(n,y):(n.__proto__=y,d(n,a,"GeneratorFunction")),n.prototype=Object.create(x),n},n.awrap=function(n){return{__await:n}},S(w.prototype),w.prototype[l]=function(){return this},n.AsyncIterator=w,n.async=function(e,t,r,o,i){void 0===i&&(i=Promise);var l=new w(s(e,t,r,o),i);return n.isGeneratorFunction(t)?l:l.next().then((function(n){return n.done?n.value:l.next()}))},S(x),d(x,a,"Generator"),x[i]=function(){return this},x.toString=function(){return"[object Generator]"},n.keys=function(n){var e=[];for(var t in n)e.push(t);return e.reverse(),function t(){for(;e.length;){var r=e.pop();if(r in n)return t.value=r,t.done=!1,t}return t.done=!0,t}},n.values=Z,W.prototype={constructor:W,reset:function(n){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(H),!n)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=e)},stop:function(){this.done=!0;var n=this.tryEntries[0].completion;if("throw"===n.type)throw n.arg;return this.rval},dispatchException:function(n){if(this.done)throw n;var t=this;function o(r,o){return a.type="throw",a.arg=n,t.next=r,o&&(t.method="next",t.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var l=this.tryEntries[i],a=l.completion;if("root"===l.tryLoc)return o("end");if(l.tryLoc<=this.prev){var d=r.call(l,"catchLoc"),s=r.call(l,"finallyLoc");if(d&&s){if(this.prev<l.catchLoc)return o(l.catchLoc,!0);if(this.prev<l.finallyLoc)return o(l.finallyLoc)}else if(d){if(this.prev<l.catchLoc)return o(l.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<l.finallyLoc)return o(l.finallyLoc)}}}},abrupt:function(n,e){for(var t=this.tryEntries.length-1;t>=0;--t){var o=this.tryEntries[t];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===n||"continue"===n)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var l=i?i.completion:{};return l.type=n,l.arg=e,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(l)},complete:function(n,e){if("throw"===n.type)throw n.arg;return"break"===n.type||"continue"===n.type?this.next=n.arg:"return"===n.type?(this.rval=this.arg=n.arg,this.method="return",this.next="end"):"normal"===n.type&&e&&(this.next=e),m},finish:function(n){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.finallyLoc===n)return this.complete(t.completion,t.afterLoc),H(t),m}},catch:function(n){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.tryLoc===n){var r=t.completion;if("throw"===r.type){var o=r.arg;H(t)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(n,t,r){return this.delegate={iterator:Z(n),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=e),m}},n}(n.exports);try{regeneratorRuntime=e}catch(n){Function("r","regeneratorRuntime = r")(e)}})),DI=zI((function(n,e){!function(e,t){n.exports=function(e){var t,r=(e=e||{}).Base64,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=function(n){for(var e={},t=0,r=n.length;t<r;t++)e[n.charAt(t)]=t;return e}(o),l=String.fromCharCode,a=function(n){if(n.length<2)return(e=n.charCodeAt(0))<128?n:e<2048?l(192|e>>>6)+l(128|63&e):l(224|e>>>12&15)+l(128|e>>>6&63)+l(128|63&e);var e=65536+1024*(n.charCodeAt(0)-55296)+(n.charCodeAt(1)-56320);return l(240|e>>>18&7)+l(128|e>>>12&63)+l(128|e>>>6&63)+l(128|63&e)},d=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,s=function(n){return n.replace(d,a)},c=function(n){var e=[0,2,1][n.length%3],t=n.charCodeAt(0)<<16|(n.length>1?n.charCodeAt(1):0)<<8|(n.length>2?n.charCodeAt(2):0);return[o.charAt(t>>>18),o.charAt(t>>>12&63),e>=2?"=":o.charAt(t>>>6&63),e>=1?"=":o.charAt(63&t)].join("")},u=e.btoa&&"function"==typeof e.btoa?function(n){return e.btoa(n)}:function(n){if(n.match(/[^\x00-\xFF]/))throw new RangeError("The string contains invalid characters.");return n.replace(/[\s\S]{1,3}/g,c)},p=function(n){return u(s(String(n)))},f=function(n){return n.replace(/[+\/]/g,(function(n){return"+"==n?"-":"_"})).replace(/=/g,"")},h=function(n,e){return e?f(p(n)):p(n)};e.Uint8Array&&(t=function(n,e){for(var t="",r=0,i=n.length;r<i;r+=3){var l=n[r],a=n[r+1],d=n[r+2],s=l<<16|a<<8|d;t+=o.charAt(s>>>18)+o.charAt(s>>>12&63)+(void 0!==a?o.charAt(s>>>6&63):"=")+(void 0!==d?o.charAt(63&s):"=")}return e?f(t):t});var m,g=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,v=function(n){switch(n.length){case 4:var e=((7&n.charCodeAt(0))<<18|(63&n.charCodeAt(1))<<12|(63&n.charCodeAt(2))<<6|63&n.charCodeAt(3))-65536;return l(55296+(e>>>10))+l(56320+(1023&e));case 3:return l((15&n.charCodeAt(0))<<12|(63&n.charCodeAt(1))<<6|63&n.charCodeAt(2));default:return l((31&n.charCodeAt(0))<<6|63&n.charCodeAt(1))}},y=function(n){return n.replace(g,v)},b=function(n){var e=n.length,t=e%4,r=(e>0?i[n.charAt(0)]<<18:0)|(e>1?i[n.charAt(1)]<<12:0)|(e>2?i[n.charAt(2)]<<6:0)|(e>3?i[n.charAt(3)]:0),o=[l(r>>>16),l(r>>>8&255),l(255&r)];return o.length-=[0,0,2,1][t],o.join("")},C=e.atob&&"function"==typeof e.atob?function(n){return e.atob(n)}:function(n){return n.replace(/\S{1,4}/g,b)},I=function(n){return C(String(n).replace(/[^A-Za-z0-9\+\/]/g,""))},x=function(n){return String(n).replace(/[-_]/g,(function(n){return"-"==n?"+":"/"})).replace(/[^A-Za-z0-9\+\/]/g,"")},S=function(n){return function(n){return y(C(n))}(x(n))};e.Uint8Array&&(m=function(n){return Uint8Array.from(I(x(n)),(function(n){return n.charCodeAt(0)}))});if(e.Base64={VERSION:"2.6.4",atob:I,btoa:u,fromBase64:S,toBase64:h,utob:s,encode:h,encodeURI:function(n){return h(n,!0)},btou:y,decode:S,noConflict:function(){var n=e.Base64;return e.Base64=r,n},fromUint8Array:t,toUint8Array:m},"function"==typeof Object.defineProperty){var w=function(n){return{value:n,enumerable:!1,writable:!0,configurable:!0}};e.Base64.extendString=function(){Object.defineProperty(String.prototype,"fromBase64",w((function(){return S(this)}))),Object.defineProperty(String.prototype,"toBase64",w((function(n){return h(this,n)}))),Object.defineProperty(String.prototype,"toBase64URI",w((function(){return h(this,!0)})))}}return e.Meteor&&(Base64=e.Base64),n.exports&&(n.exports.Base64=e.Base64),{Base64:e.Base64}}(e)}("undefined"!=typeof self?self:"undefined"!=typeof window?window:NI)})),EI=zI((function(n){var e=Object.prototype.hasOwnProperty,t="~";function r(){}function o(n,e,t){this.fn=n,this.context=e,this.once=t||!1}function i(n,e,r,i,l){if("function"!=typeof r)throw new TypeError("The listener must be a function");var a=new o(r,i||n,l),d=t?t+e:e;return n._events[d]?n._events[d].fn?n._events[d]=[n._events[d],a]:n._events[d].push(a):(n._events[d]=a,n._eventsCount++),n}function l(n,e){0==--n._eventsCount?n._events=new r:delete n._events[e]}function a(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(t=!1)),a.prototype.eventNames=function(){var n,r,o=[];if(0===this._eventsCount)return o;for(r in n=this._events)e.call(n,r)&&o.push(t?r.slice(1):r);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(n)):o},a.prototype.listeners=function(n){var e=t?t+n:n,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,i=r.length,l=new Array(i);o<i;o++)l[o]=r[o].fn;return l},a.prototype.listenerCount=function(n){var e=t?t+n:n,r=this._events[e];return r?r.fn?1:r.length:0},a.prototype.emit=function(n,e,r,o,i,l){var a=t?t+n:n;if(!this._events[a])return!1;var d,s,c=this._events[a],u=arguments.length;if(c.fn){switch(c.once&&this.removeListener(n,c.fn,void 0,!0),u){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,r),!0;case 4:return c.fn.call(c.context,e,r,o),!0;case 5:return c.fn.call(c.context,e,r,o,i),!0;case 6:return c.fn.call(c.context,e,r,o,i,l),!0}for(s=1,d=new Array(u-1);s<u;s++)d[s-1]=arguments[s];c.fn.apply(c.context,d)}else{var p,f=c.length;for(s=0;s<f;s++)switch(c[s].once&&this.removeListener(n,c[s].fn,void 0,!0),u){case 1:c[s].fn.call(c[s].context);break;case 2:c[s].fn.call(c[s].context,e);break;case 3:c[s].fn.call(c[s].context,e,r);break;case 4:c[s].fn.call(c[s].context,e,r,o);break;default:if(!d)for(p=1,d=new Array(u-1);p<u;p++)d[p-1]=arguments[p];c[s].fn.apply(c[s].context,d)}}return!0},a.prototype.on=function(n,e,t){return i(this,n,e,t,!1)},a.prototype.once=function(n,e,t){return i(this,n,e,t,!0)},a.prototype.removeListener=function(n,e,r,o){var i=t?t+n:n;if(!this._events[i])return this;if(!e)return l(this,i),this;var a=this._events[i];if(a.fn)a.fn!==e||o&&!a.once||r&&a.context!==r||l(this,i);else{for(var d=0,s=[],c=a.length;d<c;d++)(a[d].fn!==e||o&&!a[d].once||r&&a[d].context!==r)&&s.push(a[d]);s.length?this._events[i]=1===s.length?s[0]:s:l(this,i)}return this},a.prototype.removeAllListeners=function(n){var e;return n?(e=t?t+n:n,this._events[e]&&l(this,e)):(this._events=new r,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=t,a.EventEmitter=a,n.exports=a}));!function(){if("browser"!=("undefined"!=typeof window&&void 0!==window.document?"browser":"nodejs"))return null;function n(){return new EI}var e=("CgoKdmFyIHQ9QXJyYXkuaXNBcnJheSxyPSJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsVGhpcz9nbG9iYWxUaGlzOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzoidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6e307ZnVuY3Rpb24gZSh0KXt2YXIgcj17ZXhwb3J0czp7fX07cmV0dXJuIHQocixyLmV4cG9ydHMpLHIuZXhwb3J0c312YXIgbj0ib2JqZWN0Ij09dHlwZW9mIHImJnImJnIuT2JqZWN0PT09T2JqZWN0JiZyLG89Im9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmJiZzZWxmLk9iamVjdD09PU9iamVjdCYmc2VsZix1PW58fG98fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCksYT11LlN5bWJvbCxpPU9iamVjdC5wcm90b3R5cGUsYz1pLmhhc093blByb3BlcnR5LGY9aS50b1N0cmluZyxsPWE/YS50b1N0cmluZ1RhZzp2b2lkIDA7dmFyIHY9ZnVuY3Rpb24odCl7dmFyIHI9Yy5jYWxsKHQsbCksZT10W2xdO3RyeXt0W2xdPXZvaWQgMDt2YXIgbj0hMH1jYXRjaCh0KXt9dmFyIG89Zi5jYWxsKHQpO3JldHVybiBuJiYocj90W2xdPWU6ZGVsZXRlIHRbbF0pLG99LHM9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzt2YXIgYj1mdW5jdGlvbih0KXtyZXR1cm4gcy5jYWxsKHQpfSxwPWE/YS50b1N0cmluZ1RhZzp2b2lkIDA7dmFyIHk9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwPT09dD8iW29iamVjdCBVbmRlZmluZWRdIjoiW29iamVjdCBOdWxsXSI6cCYmcCBpbiBPYmplY3QodCk/dih0KTpiKHQpfTt2YXIgaD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmIm9iamVjdCI9PXR5cGVvZiB0fTt2YXIgZD1mdW5jdGlvbih0KXtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIHR8fGgodCkmJiJbb2JqZWN0IFN5bWJvbF0iPT15KHQpfSxqPS9cLnxcWyg/OlteW1xdXSp8KFsiJ10pKD86KD8hXDEpW15cXF18XFwuKSo/XDEpXF0vLGc9L15cdyokLzt2YXIgXz1mdW5jdGlvbihyLGUpe2lmKHQocikpcmV0dXJuITE7dmFyIG49dHlwZW9mIHI7cmV0dXJuISgibnVtYmVyIiE9biYmInN5bWJvbCIhPW4mJiJib29sZWFuIiE9biYmbnVsbCE9ciYmIWQocikpfHwoZy50ZXN0KHIpfHwhai50ZXN0KHIpfHxudWxsIT1lJiZyIGluIE9iamVjdChlKSl9O3ZhciBPPWZ1bmN0aW9uKHQpe3ZhciByPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PXJ8fCJmdW5jdGlvbiI9PXIpfTt2YXIgdyxtPWZ1bmN0aW9uKHQpe2lmKCFPKHQpKXJldHVybiExO3ZhciByPXkodCk7cmV0dXJuIltvYmplY3QgRnVuY3Rpb25dIj09cnx8IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09cnx8IltvYmplY3QgQXN5bmNGdW5jdGlvbl0iPT1yfHwiW29iamVjdCBQcm94eV0iPT1yfSxBPXVbIl9fY29yZS1qc19zaGFyZWRfXyJdLFM9KHc9L1teLl0rJC8uZXhlYyhBJiZBLmtleXMmJkEua2V5cy5JRV9QUk9UT3x8IiIpKT8iU3ltYm9sKHNyYylfMS4iK3c6IiI7dmFyIFA9ZnVuY3Rpb24odCl7cmV0dXJuISFTJiZTIGluIHR9LHg9RnVuY3Rpb24ucHJvdG90eXBlLnRvU3RyaW5nO3ZhciB6PWZ1bmN0aW9uKHQpe2lmKG51bGwhPXQpe3RyeXtyZXR1cm4geC5jYWxsKHQpfWNhdGNoKHQpe310cnl7cmV0dXJuIHQrIiJ9Y2F0Y2godCl7fX1yZXR1cm4iIn0sRT0vXlxbb2JqZWN0IC4rP0NvbnN0cnVjdG9yXF0kLyxJPUZ1bmN0aW9uLnByb3RvdHlwZSwkPU9iamVjdC5wcm90b3R5cGUsTj1JLnRvU3RyaW5nLFQ9JC5oYXNPd25Qcm9wZXJ0eSxNPVJlZ0V4cCgiXiIrTi5jYWxsKFQpLnJlcGxhY2UoL1tcXF4kLiorPygpW1xde318XS9nLCJcXCQmIikucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXCgpfCBmb3IgLis/KD89XFxcXSkvZywiJDEuKj8iKSsiJCIpO3ZhciBrPWZ1bmN0aW9uKHQpe3JldHVybiEoIU8odCl8fFAodCkpJiYobSh0KT9NOkUpLnRlc3Qoeih0KSl9O3ZhciBGPWZ1bmN0aW9uKHQscil7cmV0dXJuIG51bGw9PXQ/dm9pZCAwOnRbcl19O3ZhciBDPWZ1bmN0aW9uKHQscil7dmFyIGU9Rih0LHIpO3JldHVybiBrKGUpP2U6dm9pZCAwfSxEPUMoT2JqZWN0LCJjcmVhdGUiKTt2YXIgVT1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189RD9EKG51bGwpOnt9LHRoaXMuc2l6ZT0wfTt2YXIgQj1mdW5jdGlvbih0KXt2YXIgcj10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09cj8xOjAscn0sUj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBMPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX19kYXRhX187aWYoRCl7dmFyIGU9clt0XTtyZXR1cm4iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI9PT1lP3ZvaWQgMDplfXJldHVybiBSLmNhbGwocix0KT9yW3RdOnZvaWQgMH0sVj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBLPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX19kYXRhX187cmV0dXJuIEQ/dm9pZCAwIT09clt0XTpWLmNhbGwocix0KX07dmFyIFc9ZnVuY3Rpb24odCxyKXt2YXIgZT10aGlzLl9fZGF0YV9fO3JldHVybiB0aGlzLnNpemUrPXRoaXMuaGFzKHQpPzA6MSxlW3RdPUQmJnZvaWQgMD09PXI/Il9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iOnIsdGhpc307ZnVuY3Rpb24gcSh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrcjxlOyl7dmFyIG49dFtyXTt0aGlzLnNldChuWzBdLG5bMV0pfX1xLnByb3RvdHlwZS5jbGVhcj1VLHEucHJvdG90eXBlLmRlbGV0ZT1CLHEucHJvdG90eXBlLmdldD1MLHEucHJvdG90eXBlLmhhcz1LLHEucHJvdG90eXBlLnNldD1XO3ZhciBHPXE7dmFyIEg9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPVtdLHRoaXMuc2l6ZT0wfTt2YXIgSj1mdW5jdGlvbih0LHIpe3JldHVybiB0PT09cnx8dCE9dCYmciE9cn07dmFyIFE9ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9dC5sZW5ndGg7ZS0tOylpZihKKHRbZV1bMF0scikpcmV0dXJuIGU7cmV0dXJuLTF9LFg9QXJyYXkucHJvdG90eXBlLnNwbGljZTt2YXIgWT1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9fZGF0YV9fLGU9UShyLHQpO3JldHVybiEoZTwwKSYmKGU9PXIubGVuZ3RoLTE/ci5wb3AoKTpYLmNhbGwocixlLDEpLC0tdGhpcy5zaXplLCEwKX07dmFyIFo9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fX2RhdGFfXyxlPVEocix0KTtyZXR1cm4gZTwwP3ZvaWQgMDpyW2VdWzFdfTt2YXIgdHQ9ZnVuY3Rpb24odCl7cmV0dXJuIFEodGhpcy5fX2RhdGFfXyx0KT4tMX07dmFyIHJ0PWZ1bmN0aW9uKHQscil7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPVEoZSx0KTtyZXR1cm4gbjwwPygrK3RoaXMuc2l6ZSxlLnB1c2goW3Qscl0pKTplW25dWzFdPXIsdGhpc307ZnVuY3Rpb24gZXQodCl7dmFyIHI9LTEsZT1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK3I8ZTspe3ZhciBuPXRbcl07dGhpcy5zZXQoblswXSxuWzFdKX19ZXQucHJvdG90eXBlLmNsZWFyPUgsZXQucHJvdG90eXBlLmRlbGV0ZT1ZLGV0LnByb3RvdHlwZS5nZXQ9WixldC5wcm90b3R5cGUuaGFzPXR0LGV0LnByb3RvdHlwZS5zZXQ9cnQ7dmFyIG50PWV0LG90PUModSwiTWFwIik7dmFyIHV0PWZ1bmN0aW9uKCl7dGhpcy5zaXplPTAsdGhpcy5fX2RhdGFfXz17aGFzaDpuZXcgRyxtYXA6bmV3KG90fHxudCksc3RyaW5nOm5ldyBHfX07dmFyIGF0PWZ1bmN0aW9uKHQpe3ZhciByPXR5cGVvZiB0O3JldHVybiJzdHJpbmciPT1yfHwibnVtYmVyIj09cnx8InN5bWJvbCI9PXJ8fCJib29sZWFuIj09cj8iX19wcm90b19fIiE9PXQ6bnVsbD09PXR9O3ZhciBpdD1mdW5jdGlvbih0LHIpe3ZhciBlPXQuX19kYXRhX187cmV0dXJuIGF0KHIpP2VbInN0cmluZyI9PXR5cGVvZiByPyJzdHJpbmciOiJoYXNoIl06ZS5tYXB9O3ZhciBjdD1mdW5jdGlvbih0KXt2YXIgcj1pdCh0aGlzLHQpLmRlbGV0ZSh0KTtyZXR1cm4gdGhpcy5zaXplLT1yPzE6MCxyfTt2YXIgZnQ9ZnVuY3Rpb24odCl7cmV0dXJuIGl0KHRoaXMsdCkuZ2V0KHQpfTt2YXIgbHQ9ZnVuY3Rpb24odCl7cmV0dXJuIGl0KHRoaXMsdCkuaGFzKHQpfTt2YXIgdnQ9ZnVuY3Rpb24odCxyKXt2YXIgZT1pdCh0aGlzLHQpLG49ZS5zaXplO3JldHVybiBlLnNldCh0LHIpLHRoaXMuc2l6ZSs9ZS5zaXplPT1uPzA6MSx0aGlzfTtmdW5jdGlvbiBzdCh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrcjxlOyl7dmFyIG49dFtyXTt0aGlzLnNldChuWzBdLG5bMV0pfX1zdC5wcm90b3R5cGUuY2xlYXI9dXQsc3QucHJvdG90eXBlLmRlbGV0ZT1jdCxzdC5wcm90b3R5cGUuZ2V0PWZ0LHN0LnByb3RvdHlwZS5oYXM9bHQsc3QucHJvdG90eXBlLnNldD12dDt2YXIgYnQ9c3Q7ZnVuY3Rpb24gcHQodCxyKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdHx8bnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmdW5jdGlvbiIpO3ZhciBlPWZ1bmN0aW9uKCl7dmFyIG49YXJndW1lbnRzLG89cj9yLmFwcGx5KHRoaXMsbik6blswXSx1PWUuY2FjaGU7aWYodS5oYXMobykpcmV0dXJuIHUuZ2V0KG8pO3ZhciBhPXQuYXBwbHkodGhpcyxuKTtyZXR1cm4gZS5jYWNoZT11LnNldChvLGEpfHx1LGF9O3JldHVybiBlLmNhY2hlPW5ldyhwdC5DYWNoZXx8YnQpLGV9cHQuQ2FjaGU9YnQ7dmFyIHl0PXB0O3ZhciBodD0vW14uW1xdXSt8XFsoPzooLT9cZCsoPzpcLlxkKyk/KXwoWyInXSkoKD86KD8hXDIpW15cXF18XFwuKSo/KVwyKVxdfCg/PSg/OlwufFxbXF0pKD86XC58XFtcXXwkKSkvZyxkdD0vXFwoXFwpPy9nLGp0PWZ1bmN0aW9uKHQpe3ZhciByPXl0KHQsKGZ1bmN0aW9uKHQpe3JldHVybiA1MDA9PT1lLnNpemUmJmUuY2xlYXIoKSx0fSkpLGU9ci5jYWNoZTtyZXR1cm4gcn0oKGZ1bmN0aW9uKHQpe3ZhciByPVtdO3JldHVybiA0Nj09PXQuY2hhckNvZGVBdCgwKSYmci5wdXNoKCIiKSx0LnJlcGxhY2UoaHQsKGZ1bmN0aW9uKHQsZSxuLG8pe3IucHVzaChuP28ucmVwbGFjZShkdCwiJDEiKTplfHx0KX0pKSxyfSkpO3ZhciBndD1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aCxvPUFycmF5KG4pOysrZTxuOylvW2VdPXIodFtlXSxlLHQpO3JldHVybiBvfSxfdD1hP2EucHJvdG90eXBlOnZvaWQgMCxPdD1fdD9fdC50b1N0cmluZzp2b2lkIDA7dmFyIHd0PWZ1bmN0aW9uIHIoZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO2lmKHQoZSkpcmV0dXJuIGd0KGUscikrIiI7aWYoZChlKSlyZXR1cm4gT3Q/T3QuY2FsbChlKToiIjt2YXIgbj1lKyIiO3JldHVybiIwIj09biYmMS9lPT0tSW5maW5pdHk/Ii0wIjpufTt2YXIgbXQ9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/IiI6d3QodCl9O3ZhciBBdD1mdW5jdGlvbihyLGUpe3JldHVybiB0KHIpP3I6XyhyLGUpP1tyXTpqdChtdChyKSl9O3ZhciBTdD1mdW5jdGlvbih0KXtpZigic3RyaW5nIj09dHlwZW9mIHR8fGQodCkpcmV0dXJuIHQ7dmFyIHI9dCsiIjtyZXR1cm4iMCI9PXImJjEvdD09LUluZmluaXR5PyItMCI6cn07dmFyIFB0PWZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPTAsbj0ocj1BdChyLHQpKS5sZW5ndGg7bnVsbCE9dCYmZTxuOyl0PXRbU3QocltlKytdKV07cmV0dXJuIGUmJmU9PW4/dDp2b2lkIDB9O3ZhciB4dD1mdW5jdGlvbih0LHIsZSl7dmFyIG49bnVsbD09dD92b2lkIDA6UHQodCxyKTtyZXR1cm4gdm9pZCAwPT09bj9lOm59O2Z1bmN0aW9uIHp0KHQpe3JldHVybiJbb2JqZWN0IFN0cmluZ10iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uIEV0KHQpe3JldHVybiEoIXp0KHQpfHwiIj09PXQpfWZ1bmN0aW9uIEl0KHQpe3JldHVybiJbb2JqZWN0IE9iamVjdF0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uICR0KHQpe2lmKEl0KHQpKXtmb3IobGV0IHIgaW4gdClyZXR1cm4hMDtyZXR1cm4hMX1yZXR1cm4hMX1mdW5jdGlvbiBOdCh0KXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uIFR0KHQpe3JldHVybiEhZnVuY3Rpb24odCl7cmV0dXJuIltvYmplY3QgVW5kZWZpbmVkXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodCl9KHQpfHwoISFmdW5jdGlvbih0KXtyZXR1cm4iW29iamVjdCBOdWxsXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodCl9KHQpfHwoISFmdW5jdGlvbih0KXtpZihJdCh0KSl7Zm9yKGxldCByIGluIHQpcmV0dXJuITE7cmV0dXJuITB9cmV0dXJuITF9KHQpfHwoISFmdW5jdGlvbih0KXtyZXR1cm4hKCF6dCh0KXx8IiIhPT10KX0odCl8fCEhZnVuY3Rpb24odCl7cmV0dXJuISFOdCh0KSYmMD09PXQubGVuZ3RofSh0KSkpKX1mdW5jdGlvbiBNdCh0KXtyZXR1cm4hIU50KHQpJiYoMCE9PXQubGVuZ3RoJiYoMSE9PXQubGVuZ3RofHwhVHQodFswXSkpKX12YXIga3Q9ZnVuY3Rpb24odCl7cmV0dXJuITA9PT10fHwhMT09PXR8fGgodCkmJiJbb2JqZWN0IEJvb2xlYW5dIj09eSh0KX07ZnVuY3Rpb24gRnQodCl7cmV0dXJuIGt0KHQpfXZhciBDdD1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189bmV3IG50LHRoaXMuc2l6ZT0wfTt2YXIgRHQ9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fX2RhdGFfXyxlPXIuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemU9ci5zaXplLGV9O3ZhciBVdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5nZXQodCl9O3ZhciBCdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5oYXModCl9O3ZhciBSdD1mdW5jdGlvbih0LHIpe3ZhciBlPXRoaXMuX19kYXRhX187aWYoZSBpbnN0YW5jZW9mIG50KXt2YXIgbj1lLl9fZGF0YV9fO2lmKCFvdHx8bi5sZW5ndGg8MTk5KXJldHVybiBuLnB1c2goW3Qscl0pLHRoaXMuc2l6ZT0rK2Uuc2l6ZSx0aGlzO2U9dGhpcy5fX2RhdGFfXz1uZXcgYnQobil9cmV0dXJuIGUuc2V0KHQsciksdGhpcy5zaXplPWUuc2l6ZSx0aGlzfTtmdW5jdGlvbiBMdCh0KXt2YXIgcj10aGlzLl9fZGF0YV9fPW5ldyBudCh0KTt0aGlzLnNpemU9ci5zaXplfUx0LnByb3RvdHlwZS5jbGVhcj1DdCxMdC5wcm90b3R5cGUuZGVsZXRlPUR0LEx0LnByb3RvdHlwZS5nZXQ9VXQsTHQucHJvdG90eXBlLmhhcz1CdCxMdC5wcm90b3R5cGUuc2V0PVJ0O3ZhciBWdD1MdDt2YXIgS3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uc2V0KHQsIl9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iKSx0aGlzfTt2YXIgV3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uaGFzKHQpfTtmdW5jdGlvbiBxdCh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5fX2RhdGFfXz1uZXcgYnQ7KytyPGU7KXRoaXMuYWRkKHRbcl0pfXF0LnByb3RvdHlwZS5hZGQ9cXQucHJvdG90eXBlLnB1c2g9S3QscXQucHJvdG90eXBlLmhhcz1XdDt2YXIgR3Q9cXQ7dmFyIEh0PWZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoOysrZTxuOylpZihyKHRbZV0sZSx0KSlyZXR1cm4hMDtyZXR1cm4hMX07dmFyIEp0PWZ1bmN0aW9uKHQscil7cmV0dXJuIHQuaGFzKHIpfTt2YXIgUXQ9ZnVuY3Rpb24odCxyLGUsbixvLHUpe3ZhciBhPTEmZSxpPXQubGVuZ3RoLGM9ci5sZW5ndGg7aWYoaSE9YyYmIShhJiZjPmkpKXJldHVybiExO3ZhciBmPXUuZ2V0KHQpLGw9dS5nZXQocik7aWYoZiYmbClyZXR1cm4gZj09ciYmbD09dDt2YXIgdj0tMSxzPSEwLGI9MiZlP25ldyBHdDp2b2lkIDA7Zm9yKHUuc2V0KHQsciksdS5zZXQocix0KTsrK3Y8aTspe3ZhciBwPXRbdl0seT1yW3ZdO2lmKG4pdmFyIGg9YT9uKHkscCx2LHIsdCx1KTpuKHAseSx2LHQscix1KTtpZih2b2lkIDAhPT1oKXtpZihoKWNvbnRpbnVlO3M9ITE7YnJlYWt9aWYoYil7aWYoIUh0KHIsKGZ1bmN0aW9uKHQscil7aWYoIUp0KGIscikmJihwPT09dHx8byhwLHQsZSxuLHUpKSlyZXR1cm4gYi5wdXNoKHIpfSkpKXtzPSExO2JyZWFrfX1lbHNlIGlmKHAhPT15JiYhbyhwLHksZSxuLHUpKXtzPSExO2JyZWFrfX1yZXR1cm4gdS5kZWxldGUodCksdS5kZWxldGUociksc30sWHQ9dS5VaW50OEFycmF5O3ZhciBZdD1mdW5jdGlvbih0KXt2YXIgcj0tMSxlPUFycmF5KHQuc2l6ZSk7cmV0dXJuIHQuZm9yRWFjaCgoZnVuY3Rpb24odCxuKXtlWysrcl09W24sdF19KSksZX07dmFyIFp0PWZ1bmN0aW9uKHQpe3ZhciByPS0xLGU9QXJyYXkodC5zaXplKTtyZXR1cm4gdC5mb3JFYWNoKChmdW5jdGlvbih0KXtlWysrcl09dH0pKSxlfSx0cj1hP2EucHJvdG90eXBlOnZvaWQgMCxycj10cj90ci52YWx1ZU9mOnZvaWQgMDt2YXIgZXI9ZnVuY3Rpb24odCxyLGUsbixvLHUsYSl7c3dpdGNoKGUpe2Nhc2UiW29iamVjdCBEYXRhVmlld10iOmlmKHQuYnl0ZUxlbmd0aCE9ci5ieXRlTGVuZ3RofHx0LmJ5dGVPZmZzZXQhPXIuYnl0ZU9mZnNldClyZXR1cm4hMTt0PXQuYnVmZmVyLHI9ci5idWZmZXI7Y2FzZSJbb2JqZWN0IEFycmF5QnVmZmVyXSI6cmV0dXJuISh0LmJ5dGVMZW5ndGghPXIuYnl0ZUxlbmd0aHx8IXUobmV3IFh0KHQpLG5ldyBYdChyKSkpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpjYXNlIltvYmplY3QgTnVtYmVyXSI6cmV0dXJuIEooK3QsK3IpO2Nhc2UiW29iamVjdCBFcnJvcl0iOnJldHVybiB0Lm5hbWU9PXIubmFtZSYmdC5tZXNzYWdlPT1yLm1lc3NhZ2U7Y2FzZSJbb2JqZWN0IFJlZ0V4cF0iOmNhc2UiW29iamVjdCBTdHJpbmddIjpyZXR1cm4gdD09cisiIjtjYXNlIltvYmplY3QgTWFwXSI6dmFyIGk9WXQ7Y2FzZSJbb2JqZWN0IFNldF0iOnZhciBjPTEmbjtpZihpfHwoaT1adCksdC5zaXplIT1yLnNpemUmJiFjKXJldHVybiExO3ZhciBmPWEuZ2V0KHQpO2lmKGYpcmV0dXJuIGY9PXI7bnw9MixhLnNldCh0LHIpO3ZhciBsPVF0KGkodCksaShyKSxuLG8sdSxhKTtyZXR1cm4gYS5kZWxldGUodCksbDtjYXNlIltvYmplY3QgU3ltYm9sXSI6aWYocnIpcmV0dXJuIHJyLmNhbGwodCk9PXJyLmNhbGwocil9cmV0dXJuITF9O3ZhciBucj1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPXIubGVuZ3RoLG89dC5sZW5ndGg7KytlPG47KXRbbytlXT1yW2VdO3JldHVybiB0fTt2YXIgb3I9ZnVuY3Rpb24ocixlLG4pe3ZhciBvPWUocik7cmV0dXJuIHQocik/bzpucihvLG4ocikpfTt2YXIgdXI9ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGgsbz0wLHU9W107KytlPG47KXt2YXIgYT10W2VdO3IoYSxlLHQpJiYodVtvKytdPWEpfXJldHVybiB1fTt2YXIgYXI9ZnVuY3Rpb24oKXtyZXR1cm5bXX0saXI9T2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZSxjcj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzLGZyPWNyP2Z1bmN0aW9uKHQpe3JldHVybiBudWxsPT10P1tdOih0PU9iamVjdCh0KSx1cihjcih0KSwoZnVuY3Rpb24ocil7cmV0dXJuIGlyLmNhbGwodCxyKX0pKSl9OmFyO3ZhciBscj1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPUFycmF5KHQpOysrZTx0OyluW2VdPXIoZSk7cmV0dXJuIG59O3ZhciB2cj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgQXJndW1lbnRzXSI9PXkodCl9LHNyPU9iamVjdC5wcm90b3R5cGUsYnI9c3IuaGFzT3duUHJvcGVydHkscHI9c3IucHJvcGVydHlJc0VudW1lcmFibGUseXI9dnIoZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzfSgpKT92cjpmdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmYnIuY2FsbCh0LCJjYWxsZWUiKSYmIXByLmNhbGwodCwiY2FsbGVlIil9O3ZhciBocj1mdW5jdGlvbigpe3JldHVybiExfSxkcj1lKChmdW5jdGlvbih0LHIpe3ZhciBlPXImJiFyLm5vZGVUeXBlJiZyLG49ZSYmdCYmIXQubm9kZVR5cGUmJnQsbz1uJiZuLmV4cG9ydHM9PT1lP3UuQnVmZmVyOnZvaWQgMCxhPShvP28uaXNCdWZmZXI6dm9pZCAwKXx8aHI7dC5leHBvcnRzPWF9KSksanI9L14oPzowfFsxLTldXGQqKSQvO3ZhciBncj1mdW5jdGlvbih0LHIpe3ZhciBlPXR5cGVvZiB0O3JldHVybiEhKHI9bnVsbD09cj85MDA3MTk5MjU0NzQwOTkxOnIpJiYoIm51bWJlciI9PWV8fCJzeW1ib2wiIT1lJiZqci50ZXN0KHQpKSYmdD4tMSYmdCUxPT0wJiZ0PHJ9O3ZhciBfcj1mdW5jdGlvbih0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQmJnQ+LTEmJnQlMT09MCYmdDw9OTAwNzE5OTI1NDc0MDk5MX0sT3I9e307T3JbIltvYmplY3QgRmxvYXQzMkFycmF5XSJdPU9yWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1PclsiW29iamVjdCBJbnQ4QXJyYXldIl09T3JbIltvYmplY3QgSW50MTZBcnJheV0iXT1PclsiW29iamVjdCBJbnQzMkFycmF5XSJdPU9yWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09T3JbIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIl09T3JbIltvYmplY3QgVWludDE2QXJyYXldIl09T3JbIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsT3JbIltvYmplY3QgQXJndW1lbnRzXSJdPU9yWyJbb2JqZWN0IEFycmF5XSJdPU9yWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPU9yWyJbb2JqZWN0IEJvb2xlYW5dIl09T3JbIltvYmplY3QgRGF0YVZpZXddIl09T3JbIltvYmplY3QgRGF0ZV0iXT1PclsiW29iamVjdCBFcnJvcl0iXT1PclsiW29iamVjdCBGdW5jdGlvbl0iXT1PclsiW29iamVjdCBNYXBdIl09T3JbIltvYmplY3QgTnVtYmVyXSJdPU9yWyJbb2JqZWN0IE9iamVjdF0iXT1PclsiW29iamVjdCBSZWdFeHBdIl09T3JbIltvYmplY3QgU2V0XSJdPU9yWyJbb2JqZWN0IFN0cmluZ10iXT1PclsiW29iamVjdCBXZWFrTWFwXSJdPSExO3ZhciB3cj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmX3IodC5sZW5ndGgpJiYhIU9yW3kodCldfTt2YXIgbXI9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiB0KHIpfX0sQXI9ZSgoZnVuY3Rpb24odCxyKXt2YXIgZT1yJiYhci5ub2RlVHlwZSYmcixvPWUmJnQmJiF0Lm5vZGVUeXBlJiZ0LHU9byYmby5leHBvcnRzPT09ZSYmbi5wcm9jZXNzLGE9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9byYmby5yZXF1aXJlJiZvLnJlcXVpcmUoInV0aWwiKS50eXBlcztyZXR1cm4gdHx8dSYmdS5iaW5kaW5nJiZ1LmJpbmRpbmcoInV0aWwiKX1jYXRjaCh0KXt9fSgpO3QuZXhwb3J0cz1hfSkpLFNyPUFyJiZBci5pc1R5cGVkQXJyYXksUHI9U3I/bXIoU3IpOndyLHhyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIHpyPWZ1bmN0aW9uKHIsZSl7dmFyIG49dChyKSxvPSFuJiZ5cihyKSx1PSFuJiYhbyYmZHIociksYT0hbiYmIW8mJiF1JiZQcihyKSxpPW58fG98fHV8fGEsYz1pP2xyKHIubGVuZ3RoLFN0cmluZyk6W10sZj1jLmxlbmd0aDtmb3IodmFyIGwgaW4gcikhZSYmIXhyLmNhbGwocixsKXx8aSYmKCJsZW5ndGgiPT1sfHx1JiYoIm9mZnNldCI9PWx8fCJwYXJlbnQiPT1sKXx8YSYmKCJidWZmZXIiPT1sfHwiYnl0ZUxlbmd0aCI9PWx8fCJieXRlT2Zmc2V0Ij09bCl8fGdyKGwsZikpfHxjLnB1c2gobCk7cmV0dXJuIGN9LEVyPU9iamVjdC5wcm90b3R5cGU7dmFyIElyPWZ1bmN0aW9uKHQpe3ZhciByPXQmJnQuY29uc3RydWN0b3I7cmV0dXJuIHQ9PT0oImZ1bmN0aW9uIj09dHlwZW9mIHImJnIucHJvdG90eXBlfHxFcil9O3ZhciAkcj1mdW5jdGlvbih0LHIpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdChyKGUpKX19LE5yPSRyKE9iamVjdC5rZXlzLE9iamVjdCksVHI9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt2YXIgTXI9ZnVuY3Rpb24odCl7aWYoIUlyKHQpKXJldHVybiBOcih0KTt2YXIgcj1bXTtmb3IodmFyIGUgaW4gT2JqZWN0KHQpKVRyLmNhbGwodCxlKSYmImNvbnN0cnVjdG9yIiE9ZSYmci5wdXNoKGUpO3JldHVybiByfTt2YXIga3I9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJl9yKHQubGVuZ3RoKSYmIW0odCl9O3ZhciBGcj1mdW5jdGlvbih0KXtyZXR1cm4ga3IodCk/enIodCk6TXIodCl9O3ZhciBDcj1mdW5jdGlvbih0KXtyZXR1cm4gb3IodCxGcixmcil9LERyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIFVyPWZ1bmN0aW9uKHQscixlLG4sbyx1KXt2YXIgYT0xJmUsaT1Dcih0KSxjPWkubGVuZ3RoO2lmKGMhPUNyKHIpLmxlbmd0aCYmIWEpcmV0dXJuITE7Zm9yKHZhciBmPWM7Zi0tOyl7dmFyIGw9aVtmXTtpZighKGE/bCBpbiByOkRyLmNhbGwocixsKSkpcmV0dXJuITF9dmFyIHY9dS5nZXQodCkscz11LmdldChyKTtpZih2JiZzKXJldHVybiB2PT1yJiZzPT10O3ZhciBiPSEwO3Uuc2V0KHQsciksdS5zZXQocix0KTtmb3IodmFyIHA9YTsrK2Y8Yzspe3ZhciB5PXRbbD1pW2ZdXSxoPXJbbF07aWYobil2YXIgZD1hP24oaCx5LGwscix0LHUpOm4oeSxoLGwsdCxyLHUpO2lmKCEodm9pZCAwPT09ZD95PT09aHx8byh5LGgsZSxuLHUpOmQpKXtiPSExO2JyZWFrfXB8fChwPSJjb25zdHJ1Y3RvciI9PWwpfWlmKGImJiFwKXt2YXIgaj10LmNvbnN0cnVjdG9yLGc9ci5jb25zdHJ1Y3RvcjtqPT1nfHwhKCJjb25zdHJ1Y3RvciJpbiB0KXx8ISgiY29uc3RydWN0b3IiaW4gcil8fCJmdW5jdGlvbiI9PXR5cGVvZiBqJiZqIGluc3RhbmNlb2YgaiYmImZ1bmN0aW9uIj09dHlwZW9mIGcmJmcgaW5zdGFuY2VvZiBnfHwoYj0hMSl9cmV0dXJuIHUuZGVsZXRlKHQpLHUuZGVsZXRlKHIpLGJ9LEJyPUModSwiRGF0YVZpZXciKSxScj1DKHUsIlByb21pc2UiKSxMcj1DKHUsIlNldCIpLFZyPUModSwiV2Vha01hcCIpLEtyPXooQnIpLFdyPXoob3QpLHFyPXooUnIpLEdyPXooTHIpLEhyPXooVnIpLEpyPXk7KEJyJiYiW29iamVjdCBEYXRhVmlld10iIT1KcihuZXcgQnIobmV3IEFycmF5QnVmZmVyKDEpKSl8fG90JiYiW29iamVjdCBNYXBdIiE9SnIobmV3IG90KXx8UnImJiJbb2JqZWN0IFByb21pc2VdIiE9SnIoUnIucmVzb2x2ZSgpKXx8THImJiJbb2JqZWN0IFNldF0iIT1KcihuZXcgTHIpfHxWciYmIltvYmplY3QgV2Vha01hcF0iIT1KcihuZXcgVnIpKSYmKEpyPWZ1bmN0aW9uKHQpe3ZhciByPXkodCksZT0iW29iamVjdCBPYmplY3RdIj09cj90LmNvbnN0cnVjdG9yOnZvaWQgMCxuPWU/eihlKToiIjtpZihuKXN3aXRjaChuKXtjYXNlIEtyOnJldHVybiJbb2JqZWN0IERhdGFWaWV3XSI7Y2FzZSBXcjpyZXR1cm4iW29iamVjdCBNYXBdIjtjYXNlIHFyOnJldHVybiJbb2JqZWN0IFByb21pc2VdIjtjYXNlIEdyOnJldHVybiJbb2JqZWN0IFNldF0iO2Nhc2UgSHI6cmV0dXJuIltvYmplY3QgV2Vha01hcF0ifXJldHVybiByfSk7dmFyIFFyPUpyLFhyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIFlyPWZ1bmN0aW9uKHIsZSxuLG8sdSxhKXt2YXIgaT10KHIpLGM9dChlKSxmPWk/IltvYmplY3QgQXJyYXldIjpRcihyKSxsPWM/IltvYmplY3QgQXJyYXldIjpRcihlKSx2PSJbb2JqZWN0IE9iamVjdF0iPT0oZj0iW29iamVjdCBBcmd1bWVudHNdIj09Zj8iW29iamVjdCBPYmplY3RdIjpmKSxzPSJbb2JqZWN0IE9iamVjdF0iPT0obD0iW29iamVjdCBBcmd1bWVudHNdIj09bD8iW29iamVjdCBPYmplY3RdIjpsKSxiPWY9PWw7aWYoYiYmZHIocikpe2lmKCFkcihlKSlyZXR1cm4hMTtpPSEwLHY9ITF9aWYoYiYmIXYpcmV0dXJuIGF8fChhPW5ldyBWdCksaXx8UHIocik/UXQocixlLG4sbyx1LGEpOmVyKHIsZSxmLG4sbyx1LGEpO2lmKCEoMSZuKSl7dmFyIHA9diYmWHIuY2FsbChyLCJfX3dyYXBwZWRfXyIpLHk9cyYmWHIuY2FsbChlLCJfX3dyYXBwZWRfXyIpO2lmKHB8fHkpe3ZhciBoPXA/ci52YWx1ZSgpOnIsZD15P2UudmFsdWUoKTplO3JldHVybiBhfHwoYT1uZXcgVnQpLHUoaCxkLG4sbyxhKX19cmV0dXJuISFiJiYoYXx8KGE9bmV3IFZ0KSxVcihyLGUsbixvLHUsYSkpfTt2YXIgWnI9ZnVuY3Rpb24gdChyLGUsbixvLHUpe3JldHVybiByPT09ZXx8KG51bGw9PXJ8fG51bGw9PWV8fCFoKHIpJiYhaChlKT9yIT1yJiZlIT1lOllyKHIsZSxuLG8sdCx1KSl9O3ZhciB0ZT1mdW5jdGlvbih0LHIsZSxuKXt2YXIgbz1lLmxlbmd0aCx1PW8sYT0hbjtpZihudWxsPT10KXJldHVybiF1O2Zvcih0PU9iamVjdCh0KTtvLS07KXt2YXIgaT1lW29dO2lmKGEmJmlbMl0/aVsxXSE9PXRbaVswXV06IShpWzBdaW4gdCkpcmV0dXJuITF9Zm9yKDsrK288dTspe3ZhciBjPShpPWVbb10pWzBdLGY9dFtjXSxsPWlbMV07aWYoYSYmaVsyXSl7aWYodm9pZCAwPT09ZiYmIShjIGluIHQpKXJldHVybiExfWVsc2V7dmFyIHY9bmV3IFZ0O2lmKG4pdmFyIHM9bihmLGwsYyx0LHIsdik7aWYoISh2b2lkIDA9PT1zP1pyKGwsZiwzLG4sdik6cykpcmV0dXJuITF9fXJldHVybiEwfTt2YXIgcmU9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PXQmJiFPKHQpfTt2YXIgZWU9ZnVuY3Rpb24odCl7Zm9yKHZhciByPUZyKHQpLGU9ci5sZW5ndGg7ZS0tOyl7dmFyIG49cltlXSxvPXRbbl07cltlXT1bbixvLHJlKG8pXX1yZXR1cm4gcn07dmFyIG5lPWZ1bmN0aW9uKHQscil7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiYoZVt0XT09PXImJih2b2lkIDAhPT1yfHx0IGluIE9iamVjdChlKSkpfX07dmFyIG9lPWZ1bmN0aW9uKHQpe3ZhciByPWVlKHQpO3JldHVybiAxPT1yLmxlbmd0aCYmclswXVsyXT9uZShyWzBdWzBdLHJbMF1bMV0pOmZ1bmN0aW9uKGUpe3JldHVybiBlPT09dHx8dGUoZSx0LHIpfX07dmFyIHVlPWZ1bmN0aW9uKHQscil7cmV0dXJuIG51bGwhPXQmJnIgaW4gT2JqZWN0KHQpfTt2YXIgYWU9ZnVuY3Rpb24ocixlLG4pe2Zvcih2YXIgbz0tMSx1PShlPUF0KGUscikpLmxlbmd0aCxhPSExOysrbzx1Oyl7dmFyIGk9U3QoZVtvXSk7aWYoIShhPW51bGwhPXImJm4ocixpKSkpYnJlYWs7cj1yW2ldfXJldHVybiBhfHwrK28hPXU/YTohISh1PW51bGw9PXI/MDpyLmxlbmd0aCkmJl9yKHUpJiZncihpLHUpJiYodChyKXx8eXIocikpfTt2YXIgaWU9ZnVuY3Rpb24odCxyKXtyZXR1cm4gbnVsbCE9dCYmYWUodCxyLHVlKX07dmFyIGNlPWZ1bmN0aW9uKHQscil7cmV0dXJuIF8odCkmJnJlKHIpP25lKFN0KHQpLHIpOmZ1bmN0aW9uKGUpe3ZhciBuPXh0KGUsdCk7cmV0dXJuIHZvaWQgMD09PW4mJm49PT1yP2llKGUsdCk6WnIocixuLDMpfX07dmFyIGZlPWZ1bmN0aW9uKHQpe3JldHVybiB0fTt2YXIgbGU9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiBudWxsPT1yP3ZvaWQgMDpyW3RdfX07dmFyIHZlPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihyKXtyZXR1cm4gUHQocix0KX19O3ZhciBzZT1mdW5jdGlvbih0KXtyZXR1cm4gXyh0KT9sZShTdCh0KSk6dmUodCl9O3ZhciBiZT1mdW5jdGlvbihyKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygcj9yOm51bGw9PXI/ZmU6Im9iamVjdCI9PXR5cGVvZiByP3Qocik/Y2UoclswXSxyWzFdKTpvZShyKTpzZShyKX07dmFyIHBlPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihyLGUsbil7Zm9yKHZhciBvPS0xLHU9T2JqZWN0KHIpLGE9bihyKSxpPWEubGVuZ3RoO2ktLTspe3ZhciBjPWFbdD9pOisrb107aWYoITE9PT1lKHVbY10sYyx1KSlicmVha31yZXR1cm4gcn19KCk7dmFyIHllPWZ1bmN0aW9uKHQscil7cmV0dXJuIGZ1bmN0aW9uKGUsbil7aWYobnVsbD09ZSlyZXR1cm4gZTtpZigha3IoZSkpcmV0dXJuIHQoZSxuKTtmb3IodmFyIG89ZS5sZW5ndGgsdT1yP286LTEsYT1PYmplY3QoZSk7KHI/dS0tOisrdTxvKSYmITEhPT1uKGFbdV0sdSxhKTspO3JldHVybiBlfX0oKGZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJnBlKHQscixGcil9KSk7dmFyIGhlPWZ1bmN0aW9uKHQscil7dmFyIGU9LTEsbj1rcih0KT9BcnJheSh0Lmxlbmd0aCk6W107cmV0dXJuIHllKHQsKGZ1bmN0aW9uKHQsbyx1KXtuWysrZV09cih0LG8sdSl9KSksbn07dmFyIGRlPWZ1bmN0aW9uKHIsZSl7cmV0dXJuKHQocik/Z3Q6aGUpKHIsYmUoZSkpfSxqZT1BcnJheS5wcm90b3R5cGUuam9pbjt2YXIgZ2U9ZnVuY3Rpb24odCxyKXtyZXR1cm4gbnVsbD09dD8iIjpqZS5jYWxsKHQscil9O3ZhciBfZT1mdW5jdGlvbihyKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHJ8fCF0KHIpJiZoKHIpJiYiW29iamVjdCBTdHJpbmddIj09eShyKX0sT2U9bGUoImxlbmd0aCIpLHdlPVJlZ0V4cCgiW1xcdTIwMGRcXHVkODAwLVxcdWRmZmZcXHUwMzAwLVxcdTAzNmZcXHVmZTIwLVxcdWZlMmZcXHUyMGQwLVxcdTIwZmZcXHVmZTBlXFx1ZmUwZl0iKTt2YXIgbWU9ZnVuY3Rpb24odCl7cmV0dXJuIHdlLnRlc3QodCl9LEFlPSJbXFx1ZDgwMC1cXHVkZmZmXSIsU2U9IltcXHUwMzAwLVxcdTAzNmZcXHVmZTIwLVxcdWZlMmZcXHUyMGQwLVxcdTIwZmZdIixQZT0iXFx1ZDgzY1tcXHVkZmZiLVxcdWRmZmZdIix4ZT0iW15cXHVkODAwLVxcdWRmZmZdIix6ZT0iKD86XFx1ZDgzY1tcXHVkZGU2LVxcdWRkZmZdKXsyfSIsRWU9IltcXHVkODAwLVxcdWRiZmZdW1xcdWRjMDAtXFx1ZGZmZl0iLEllPSIoPzoiK1NlKyJ8IitQZSsiKSIrIj8iLCRlPSJbXFx1ZmUwZVxcdWZlMGZdPyIrSWUrKCIoPzpcXHUyMDBkKD86IitbeGUsemUsRWVdLmpvaW4oInwiKSsiKVtcXHVmZTBlXFx1ZmUwZl0/IitJZSsiKSoiKSxOZT0iKD86IitbeGUrU2UrIj8iLFNlLHplLEVlLEFlXS5qb2luKCJ8IikrIikiLFRlPVJlZ0V4cChQZSsiKD89IitQZSsiKXwiK05lKyRlLCJnIik7dmFyIE1lPWZ1bmN0aW9uKHQpe2Zvcih2YXIgcj1UZS5sYXN0SW5kZXg9MDtUZS50ZXN0KHQpOykrK3I7cmV0dXJuIHJ9O3ZhciBrZT1mdW5jdGlvbih0KXtyZXR1cm4gbWUodCk/TWUodCk6T2UodCl9O3ZhciBGZT1mdW5jdGlvbih0KXtpZihudWxsPT10KXJldHVybiAwO2lmKGtyKHQpKXJldHVybiBfZSh0KT9rZSh0KTp0Lmxlbmd0aDt2YXIgcj1Rcih0KTtyZXR1cm4iW29iamVjdCBNYXBdIj09cnx8IltvYmplY3QgU2V0XSI9PXI/dC5zaXplOk1yKHQpLmxlbmd0aH07dmFyIENlPWZ1bmN0aW9uKHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdHx8aCh0KSYmIltvYmplY3QgTnVtYmVyXSI9PXkodCl9O3ZhciBEZT1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK2U8biYmITEhPT1yKHRbZV0sZSx0KTspO3JldHVybiB0fSxVZT1mdW5jdGlvbigpe3RyeXt2YXIgdD1DKE9iamVjdCwiZGVmaW5lUHJvcGVydHkiKTtyZXR1cm4gdCh7fSwiIix7fSksdH1jYXRjaCh0KXt9fSgpO3ZhciBCZT1mdW5jdGlvbih0LHIsZSl7Il9fcHJvdG9fXyI9PXImJlVlP1VlKHQscix7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsdmFsdWU6ZSx3cml0YWJsZTohMH0pOnRbcl09ZX0sUmU9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt2YXIgTGU9ZnVuY3Rpb24odCxyLGUpe3ZhciBuPXRbcl07UmUuY2FsbCh0LHIpJiZKKG4sZSkmJih2b2lkIDAhPT1lfHxyIGluIHQpfHxCZSh0LHIsZSl9O3ZhciBWZT1mdW5jdGlvbih0LHIsZSxuKXt2YXIgbz0hZTtlfHwoZT17fSk7Zm9yKHZhciB1PS0xLGE9ci5sZW5ndGg7Kyt1PGE7KXt2YXIgaT1yW3VdLGM9bj9uKGVbaV0sdFtpXSxpLGUsdCk6dm9pZCAwO3ZvaWQgMD09PWMmJihjPXRbaV0pLG8/QmUoZSxpLGMpOkxlKGUsaSxjKX1yZXR1cm4gZX07dmFyIEtlPWZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJlZlKHIsRnIociksdCl9O3ZhciBXZT1mdW5jdGlvbih0KXt2YXIgcj1bXTtpZihudWxsIT10KWZvcih2YXIgZSBpbiBPYmplY3QodCkpci5wdXNoKGUpO3JldHVybiByfSxxZT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBHZT1mdW5jdGlvbih0KXtpZighTyh0KSlyZXR1cm4gV2UodCk7dmFyIHI9SXIodCksZT1bXTtmb3IodmFyIG4gaW4gdCkoImNvbnN0cnVjdG9yIiE9bnx8IXImJnFlLmNhbGwodCxuKSkmJmUucHVzaChuKTtyZXR1cm4gZX07dmFyIEhlPWZ1bmN0aW9uKHQpe3JldHVybiBrcih0KT96cih0LCEwKTpHZSh0KX07dmFyIEplPWZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJlZlKHIsSGUociksdCl9LFFlPWUoKGZ1bmN0aW9uKHQscil7dmFyIGU9ciYmIXIubm9kZVR5cGUmJnIsbj1lJiZ0JiYhdC5ub2RlVHlwZSYmdCxvPW4mJm4uZXhwb3J0cz09PWU/dS5CdWZmZXI6dm9pZCAwLGE9bz9vLmFsbG9jVW5zYWZlOnZvaWQgMDt0LmV4cG9ydHM9ZnVuY3Rpb24odCxyKXtpZihyKXJldHVybiB0LnNsaWNlKCk7dmFyIGU9dC5sZW5ndGgsbj1hP2EoZSk6bmV3IHQuY29uc3RydWN0b3IoZSk7cmV0dXJuIHQuY29weShuKSxufX0pKTt2YXIgWGU9ZnVuY3Rpb24odCxyKXt2YXIgZT0tMSxuPXQubGVuZ3RoO2ZvcihyfHwocj1BcnJheShuKSk7KytlPG47KXJbZV09dFtlXTtyZXR1cm4gcn07dmFyIFllPWZ1bmN0aW9uKHQscil7cmV0dXJuIFZlKHQsZnIodCkscil9LFplPSRyKE9iamVjdC5nZXRQcm90b3R5cGVPZixPYmplY3QpLHRuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM/ZnVuY3Rpb24odCl7Zm9yKHZhciByPVtdO3Q7KW5yKHIsZnIodCkpLHQ9WmUodCk7cmV0dXJuIHJ9OmFyO3ZhciBybj1mdW5jdGlvbih0LHIpe3JldHVybiBWZSh0LHRuKHQpLHIpfTt2YXIgZW49ZnVuY3Rpb24odCl7cmV0dXJuIG9yKHQsSGUsdG4pfSxubj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBvbj1mdW5jdGlvbih0KXt2YXIgcj10Lmxlbmd0aCxlPW5ldyB0LmNvbnN0cnVjdG9yKHIpO3JldHVybiByJiYic3RyaW5nIj09dHlwZW9mIHRbMF0mJm5uLmNhbGwodCwiaW5kZXgiKSYmKGUuaW5kZXg9dC5pbmRleCxlLmlucHV0PXQuaW5wdXQpLGV9O3ZhciB1bj1mdW5jdGlvbih0KXt2YXIgcj1uZXcgdC5jb25zdHJ1Y3Rvcih0LmJ5dGVMZW5ndGgpO3JldHVybiBuZXcgWHQocikuc2V0KG5ldyBYdCh0KSkscn07dmFyIGFuPWZ1bmN0aW9uKHQscil7dmFyIGU9cj91bih0LmJ1ZmZlcik6dC5idWZmZXI7cmV0dXJuIG5ldyB0LmNvbnN0cnVjdG9yKGUsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCl9LGNuPS9cdyokLzt2YXIgZm49ZnVuY3Rpb24odCl7dmFyIHI9bmV3IHQuY29uc3RydWN0b3IodC5zb3VyY2UsY24uZXhlYyh0KSk7cmV0dXJuIHIubGFzdEluZGV4PXQubGFzdEluZGV4LHJ9LGxuPWE/YS5wcm90b3R5cGU6dm9pZCAwLHZuPWxuP2xuLnZhbHVlT2Y6dm9pZCAwO3ZhciBzbj1mdW5jdGlvbih0KXtyZXR1cm4gdm4/T2JqZWN0KHZuLmNhbGwodCkpOnt9fTt2YXIgYm49ZnVuY3Rpb24odCxyKXt2YXIgZT1yP3VuKHQuYnVmZmVyKTp0LmJ1ZmZlcjtyZXR1cm4gbmV3IHQuY29uc3RydWN0b3IoZSx0LmJ5dGVPZmZzZXQsdC5sZW5ndGgpfTt2YXIgcG49ZnVuY3Rpb24odCxyLGUpe3ZhciBuPXQuY29uc3RydWN0b3I7c3dpdGNoKHIpe2Nhc2UiW29iamVjdCBBcnJheUJ1ZmZlcl0iOnJldHVybiB1bih0KTtjYXNlIltvYmplY3QgQm9vbGVhbl0iOmNhc2UiW29iamVjdCBEYXRlXSI6cmV0dXJuIG5ldyBuKCt0KTtjYXNlIltvYmplY3QgRGF0YVZpZXddIjpyZXR1cm4gYW4odCxlKTtjYXNlIltvYmplY3QgRmxvYXQzMkFycmF5XSI6Y2FzZSJbb2JqZWN0IEZsb2F0NjRBcnJheV0iOmNhc2UiW29iamVjdCBJbnQ4QXJyYXldIjpjYXNlIltvYmplY3QgSW50MTZBcnJheV0iOmNhc2UiW29iamVjdCBJbnQzMkFycmF5XSI6Y2FzZSJbb2JqZWN0IFVpbnQ4QXJyYXldIjpjYXNlIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIjpjYXNlIltvYmplY3QgVWludDE2QXJyYXldIjpjYXNlIltvYmplY3QgVWludDMyQXJyYXldIjpyZXR1cm4gYm4odCxlKTtjYXNlIltvYmplY3QgTWFwXSI6cmV0dXJuIG5ldyBuO2Nhc2UiW29iamVjdCBOdW1iZXJdIjpjYXNlIltvYmplY3QgU3RyaW5nXSI6cmV0dXJuIG5ldyBuKHQpO2Nhc2UiW29iamVjdCBSZWdFeHBdIjpyZXR1cm4gZm4odCk7Y2FzZSJbb2JqZWN0IFNldF0iOnJldHVybiBuZXcgbjtjYXNlIltvYmplY3QgU3ltYm9sXSI6cmV0dXJuIHNuKHQpfX0seW49T2JqZWN0LmNyZWF0ZSxobj1mdW5jdGlvbigpe2Z1bmN0aW9uIHQoKXt9cmV0dXJuIGZ1bmN0aW9uKHIpe2lmKCFPKHIpKXJldHVybnt9O2lmKHluKXJldHVybiB5bihyKTt0LnByb3RvdHlwZT1yO3ZhciBlPW5ldyB0O3JldHVybiB0LnByb3RvdHlwZT12b2lkIDAsZX19KCk7dmFyIGRuPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiIhPXR5cGVvZiB0LmNvbnN0cnVjdG9yfHxJcih0KT97fTpobihaZSh0KSl9O3ZhciBqbj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgTWFwXSI9PVFyKHQpfSxnbj1BciYmQXIuaXNNYXAsX249Z24/bXIoZ24pOmpuO3ZhciBPbj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgU2V0XSI9PVFyKHQpfSx3bj1BciYmQXIuaXNTZXQsbW49d24/bXIod24pOk9uLEFuPXt9O0FuWyJbb2JqZWN0IEFyZ3VtZW50c10iXT1BblsiW29iamVjdCBBcnJheV0iXT1BblsiW29iamVjdCBBcnJheUJ1ZmZlcl0iXT1BblsiW29iamVjdCBEYXRhVmlld10iXT1BblsiW29iamVjdCBCb29sZWFuXSJdPUFuWyJbb2JqZWN0IERhdGVdIl09QW5bIltvYmplY3QgRmxvYXQzMkFycmF5XSJdPUFuWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1BblsiW29iamVjdCBJbnQ4QXJyYXldIl09QW5bIltvYmplY3QgSW50MTZBcnJheV0iXT1BblsiW29iamVjdCBJbnQzMkFycmF5XSJdPUFuWyJbb2JqZWN0IE1hcF0iXT1BblsiW29iamVjdCBOdW1iZXJdIl09QW5bIltvYmplY3QgT2JqZWN0XSJdPUFuWyJbb2JqZWN0IFJlZ0V4cF0iXT1BblsiW29iamVjdCBTZXRdIl09QW5bIltvYmplY3QgU3RyaW5nXSJdPUFuWyJbb2JqZWN0IFN5bWJvbF0iXT1BblsiW29iamVjdCBVaW50OEFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQxNkFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQzMkFycmF5XSJdPSEwLEFuWyJbb2JqZWN0IEVycm9yXSJdPUFuWyJbb2JqZWN0IEZ1bmN0aW9uXSJdPUFuWyJbb2JqZWN0IFdlYWtNYXBdIl09ITE7dmFyIFNuPWZ1bmN0aW9uIHIoZSxuLG8sdSxhLGkpe3ZhciBjLGY9MSZuLGw9MiZuLHY9NCZuO2lmKG8mJihjPWE/byhlLHUsYSxpKTpvKGUpKSx2b2lkIDAhPT1jKXJldHVybiBjO2lmKCFPKGUpKXJldHVybiBlO3ZhciBzPXQoZSk7aWYocyl7aWYoYz1vbihlKSwhZilyZXR1cm4gWGUoZSxjKX1lbHNle3ZhciBiPVFyKGUpLHA9IltvYmplY3QgRnVuY3Rpb25dIj09Ynx8IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09YjtpZihkcihlKSlyZXR1cm4gUWUoZSxmKTtpZigiW29iamVjdCBPYmplY3RdIj09Ynx8IltvYmplY3QgQXJndW1lbnRzXSI9PWJ8fHAmJiFhKXtpZihjPWx8fHA/e306ZG4oZSksIWYpcmV0dXJuIGw/cm4oZSxKZShjLGUpKTpZZShlLEtlKGMsZSkpfWVsc2V7aWYoIUFuW2JdKXJldHVybiBhP2U6e307Yz1wbihlLGIsZil9fWl8fChpPW5ldyBWdCk7dmFyIHk9aS5nZXQoZSk7aWYoeSlyZXR1cm4geTtpLnNldChlLGMpLG1uKGUpP2UuZm9yRWFjaCgoZnVuY3Rpb24odCl7Yy5hZGQocih0LG4sbyx0LGUsaSkpfSkpOl9uKGUpJiZlLmZvckVhY2goKGZ1bmN0aW9uKHQsdSl7Yy5zZXQodSxyKHQsbixvLHUsZSxpKSl9KSk7dmFyIGg9cz92b2lkIDA6KHY/bD9lbjpDcjpsP0hlOkZyKShlKTtyZXR1cm4gRGUoaHx8ZSwoZnVuY3Rpb24odCx1KXtoJiYodD1lW3U9dF0pLExlKGMsdSxyKHQsbixvLHUsZSxpKSl9KSksY307dmFyIFBuPWZ1bmN0aW9uKHQpe3JldHVybiBTbih0LDUpfTtmdW5jdGlvbiB4bih0KXtsZXQgcj0hMTtyZXR1cm4gRXQodCk/cj0haXNOYU4oTnVtYmVyKHQpKTpmdW5jdGlvbih0KXtyZXR1cm4iW29iamVjdCBOdW1iZXJdIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX0odCkmJihyPSEwKSxyfWZ1bmN0aW9uIHpuKHQpe2lmKCFFdCh0KSYmIXhuKHQpJiYhZCh0KSlyZXR1cm4iIjtsZXQgcj0iIjt0cnl7cj1TdHJpbmcodCl9Y2F0Y2godCl7fXRyeXtyPXQudG9TdHJpbmcoKX1jYXRjaCh0KXt9cmV0dXJuIHJ9dmFyIEVuPU1hdGguY2VpbCxJbj1NYXRoLm1heDt2YXIgJG49ZnVuY3Rpb24odCxyLGUsbil7Zm9yKHZhciBvPS0xLHU9SW4oRW4oKHItdCkvKGV8fDEpKSwwKSxhPUFycmF5KHUpO3UtLTspYVtuP3U6KytvXT10LHQrPWU7cmV0dXJuIGF9O3ZhciBObj1mdW5jdGlvbih0LHIsZSl7aWYoIU8oZSkpcmV0dXJuITE7dmFyIG49dHlwZW9mIHI7cmV0dXJuISEoIm51bWJlciI9PW4/a3IoZSkmJmdyKHIsZS5sZW5ndGgpOiJzdHJpbmciPT1uJiZyIGluIGUpJiZKKGVbcl0sdCl9LFRuPS9ccy87dmFyIE1uPWZ1bmN0aW9uKHQpe2Zvcih2YXIgcj10Lmxlbmd0aDtyLS0mJlRuLnRlc3QodC5jaGFyQXQocikpOyk7cmV0dXJuIHJ9LGtuPS9eXHMrLzt2YXIgRm49ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC5zbGljZSgwLE1uKHQpKzEpLnJlcGxhY2Uoa24sIiIpOnR9LENuPS9eWy0rXTB4WzAtOWEtZl0rJC9pLERuPS9eMGJbMDFdKyQvaSxVbj0vXjBvWzAtN10rJC9pLEJuPXBhcnNlSW50O3ZhciBSbj1mdW5jdGlvbih0KXtpZigibnVtYmVyIj09dHlwZW9mIHQpcmV0dXJuIHQ7aWYoZCh0KSlyZXR1cm4gTmFOO2lmKE8odCkpe3ZhciByPSJmdW5jdGlvbiI9PXR5cGVvZiB0LnZhbHVlT2Y/dC52YWx1ZU9mKCk6dDt0PU8ocik/cisiIjpyfWlmKCJzdHJpbmciIT10eXBlb2YgdClyZXR1cm4gMD09PXQ/dDordDt0PUZuKHQpO3ZhciBlPURuLnRlc3QodCk7cmV0dXJuIGV8fFVuLnRlc3QodCk/Qm4odC5zbGljZSgyKSxlPzI6OCk6Q24udGVzdCh0KT9OYU46K3R9O3ZhciBMbj1mdW5jdGlvbih0KXtyZXR1cm4gdD9JbmZpbml0eT09PSh0PVJuKHQpKXx8LUluZmluaXR5PT09dD8xNzk3NjkzMTM0ODYyMzE1N2UyOTIqKHQ8MD8tMToxKTp0PT10P3Q6MDowPT09dD90OjB9O3ZhciBWbj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24ocixlLG4pe3JldHVybiBuJiYibnVtYmVyIiE9dHlwZW9mIG4mJk5uKHIsZSxuKSYmKGU9bj12b2lkIDApLHI9TG4ociksdm9pZCAwPT09ZT8oZT1yLHI9MCk6ZT1MbihlKSxuPXZvaWQgMD09PW4/cjxlPzE6LTE6TG4obiksJG4ocixlLG4sdCl9fSgpO2Z1bmN0aW9uIEtuKHQscj1udWxsLGU9e30pe20ocil8fChyPXQ9PnQpO2xldCBuPXh0KGUsImZvcmNlIiwhMSk7cmV0dXJuIEZ0KG4pfHwobj0hMSksZnVuY3Rpb24odCxyLGU9ITEpe2xldCBuPVtdO2lmKCFOdCh0KSYmIUl0KHQpKXJldHVybiByKHQsbnVsbCxbXSk7ZnVuY3Rpb24gbyh0KXtpZihOdCh0KSlyZXR1cm4gVm4oRmUodCkpO2lmKEl0KHQpKXtsZXQgcj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0KSxuPW51bGw7cmV0dXJuIGUmJihuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpLE50KHIpfHwocj1bXSksTnQobil8fChuPVtdKSxbLi4uciwuLi5uXX1yZXR1cm4gdH1yZXR1cm4gZnVuY3Rpb24gdChlLHUpe2lmKE50KGUpKXJldHVybiBvKGUpLm1hcCgobz0+e2xldCB1PWVbb10sYT1QbihuKTtyZXR1cm4gbi5wdXNoKG8pLHU9cih1LG8sYSksdT10KHUpLG4ucG9wKCksdX0pKTtpZihJdChlKSl7bGV0IHU9byhlKSxhPXt9O3JldHVybiB1Lm1hcCgobz0+e2xldCB1PWVbb10saT1QbihuKTtuLnB1c2gobyksdT1yKHUsbyxpKSx1PXQodSksbi5wb3AoKSxhW29dPXV9KSksYX1yZXR1cm4gZX0odCl9KHQscixuKX1mdW5jdGlvbiBXbih0LHIsZSl7cmV0dXJuIHIgaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxyLHt2YWx1ZTplLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtyXT1lLHR9dmFyIHFuPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3Q6ZmV9O3ZhciBHbj1mdW5jdGlvbihyLGUpe3JldHVybih0KHIpP0RlOnllKShyLHFuKGUpKX07dmFyIEhuPWZ1bmN0aW9uKHQscixlLG4pe2lmKCFPKHQpKXJldHVybiB0O2Zvcih2YXIgbz0tMSx1PShyPUF0KHIsdCkpLmxlbmd0aCxhPXUtMSxpPXQ7bnVsbCE9aSYmKytvPHU7KXt2YXIgYz1TdChyW29dKSxmPWU7aWYoIl9fcHJvdG9fXyI9PT1jfHwiY29uc3RydWN0b3IiPT09Y3x8InByb3RvdHlwZSI9PT1jKXJldHVybiB0O2lmKG8hPWEpe3ZhciBsPWlbY107dm9pZCAwPT09KGY9bj9uKGwsYyxpKTp2b2lkIDApJiYoZj1PKGwpP2w6Z3IocltvKzFdKT9bXTp7fSl9TGUoaSxjLGYpLGk9aVtjXX1yZXR1cm4gdH07dmFyIEpuPWZ1bmN0aW9uKHQscixlKXtyZXR1cm4gbnVsbD09dD90OkhuKHQscixlKX07dmFyIFFuPWZ1bmN0aW9uKHQpe3ZhciByPW51bGw9PXQ/MDp0Lmxlbmd0aDtyZXR1cm4gcj90W3ItMV06dm9pZCAwfTt2YXIgWG49ZnVuY3Rpb24odCxyLGUpe3ZhciBuPS0xLG89dC5sZW5ndGg7cjwwJiYocj0tcj5vPzA6bytyKSwoZT1lPm8/bzplKTwwJiYoZSs9byksbz1yPmU/MDplLXI+Pj4wLHI+Pj49MDtmb3IodmFyIHU9QXJyYXkobyk7KytuPG87KXVbbl09dFtuK3JdO3JldHVybiB1fTt2YXIgWW49ZnVuY3Rpb24odCxyKXtyZXR1cm4gci5sZW5ndGg8Mj90OlB0KHQsWG4ociwwLC0xKSl9O3ZhciBabj1mdW5jdGlvbih0LHIpe3JldHVybiByPUF0KHIsdCksbnVsbD09KHQ9WW4odCxyKSl8fGRlbGV0ZSB0W1N0KFFuKHIpKV19LHRvPUZ1bmN0aW9uLnByb3RvdHlwZSxybz1PYmplY3QucHJvdG90eXBlLGVvPXRvLnRvU3RyaW5nLG5vPXJvLmhhc093blByb3BlcnR5LG9vPWVvLmNhbGwoT2JqZWN0KTt2YXIgdW89ZnVuY3Rpb24odCl7aWYoIWgodCl8fCJbb2JqZWN0IE9iamVjdF0iIT15KHQpKXJldHVybiExO3ZhciByPVplKHQpO2lmKG51bGw9PT1yKXJldHVybiEwO3ZhciBlPW5vLmNhbGwociwiY29uc3RydWN0b3IiKSYmci5jb25zdHJ1Y3RvcjtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmZSBpbnN0YW5jZW9mIGUmJmVvLmNhbGwoZSk9PW9vfTt2YXIgYW89ZnVuY3Rpb24odCl7cmV0dXJuIHVvKHQpP3ZvaWQgMDp0fSxpbz1hP2EuaXNDb25jYXRTcHJlYWRhYmxlOnZvaWQgMDt2YXIgY289ZnVuY3Rpb24ocil7cmV0dXJuIHQocil8fHlyKHIpfHwhIShpbyYmciYmcltpb10pfTt2YXIgZm89ZnVuY3Rpb24gdChyLGUsbixvLHUpe3ZhciBhPS0xLGk9ci5sZW5ndGg7Zm9yKG58fChuPWNvKSx1fHwodT1bXSk7KythPGk7KXt2YXIgYz1yW2FdO2U+MCYmbihjKT9lPjE/dChjLGUtMSxuLG8sdSk6bnIodSxjKTpvfHwodVt1Lmxlbmd0aF09Yyl9cmV0dXJuIHV9O3ZhciBsbz1mdW5jdGlvbih0KXtyZXR1cm4obnVsbD09dD8wOnQubGVuZ3RoKT9mbyh0LDEpOltdfTt2YXIgdm89ZnVuY3Rpb24odCxyLGUpe3N3aXRjaChlLmxlbmd0aCl7Y2FzZSAwOnJldHVybiB0LmNhbGwocik7Y2FzZSAxOnJldHVybiB0LmNhbGwocixlWzBdKTtjYXNlIDI6cmV0dXJuIHQuY2FsbChyLGVbMF0sZVsxXSk7Y2FzZSAzOnJldHVybiB0LmNhbGwocixlWzBdLGVbMV0sZVsyXSl9cmV0dXJuIHQuYXBwbHkocixlKX0sc289TWF0aC5tYXg7dmFyIGJvPWZ1bmN0aW9uKHQscixlKXtyZXR1cm4gcj1zbyh2b2lkIDA9PT1yP3QubGVuZ3RoLTE6ciwwKSxmdW5jdGlvbigpe2Zvcih2YXIgbj1hcmd1bWVudHMsbz0tMSx1PXNvKG4ubGVuZ3RoLXIsMCksYT1BcnJheSh1KTsrK288dTspYVtvXT1uW3Irb107bz0tMTtmb3IodmFyIGk9QXJyYXkocisxKTsrK288cjspaVtvXT1uW29dO3JldHVybiBpW3JdPWUoYSksdm8odCx0aGlzLGkpfX07dmFyIHBvPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiB0fX0seW89VWU/ZnVuY3Rpb24odCxyKXtyZXR1cm4gVWUodCwidG9TdHJpbmciLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMSx2YWx1ZTpwbyhyKSx3cml0YWJsZTohMH0pfTpmZSxobz1EYXRlLm5vdzt2YXIgam89ZnVuY3Rpb24odCl7dmFyIHI9MCxlPTA7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49aG8oKSxvPTE2LShuLWUpO2lmKGU9bixvPjApe2lmKCsrcj49ODAwKXJldHVybiBhcmd1bWVudHNbMF19ZWxzZSByPTA7cmV0dXJuIHQuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyl9fSh5byk7dmFyIGdvPWZ1bmN0aW9uKHQpe3JldHVybiBqbyhibyh0LHZvaWQgMCxsbyksdCsiIil9KChmdW5jdGlvbih0LHIpe3ZhciBlPXt9O2lmKG51bGw9PXQpcmV0dXJuIGU7dmFyIG49ITE7cj1ndChyLChmdW5jdGlvbihyKXtyZXR1cm4gcj1BdChyLHQpLG58fChuPXIubGVuZ3RoPjEpLHJ9KSksVmUodCxlbih0KSxlKSxuJiYoZT1TbihlLDcsYW8pKTtmb3IodmFyIG89ci5sZW5ndGg7by0tOylabihlLHJbb10pO3JldHVybiBlfSkpO2Z1bmN0aW9uIF9vKHQscil7dmFyIGU9T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtyJiYobj1uLmZpbHRlcigoZnVuY3Rpb24ocil7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxyKS5lbnVtZXJhYmxlfSkpKSxlLnB1c2guYXBwbHkoZSxuKX1yZXR1cm4gZX1mdW5jdGlvbiBPbyh0KXtmb3IodmFyIHI9MTtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKXt2YXIgZT1udWxsIT1hcmd1bWVudHNbcl0/YXJndW1lbnRzW3JdOnt9O3IlMj9fbyhPYmplY3QoZSksITApLmZvckVhY2goKGZ1bmN0aW9uKHIpe1duKHQscixlW3JdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKGUpKTpfbyhPYmplY3QoZSkpLmZvckVhY2goKGZ1bmN0aW9uKHIpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LHIsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHIpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiB3byh0LHI9e30pe2xldCBlPSIkbGV2ZWwiLG49IiRwYXJlbnRzIjtpZighTXQodCkpcmV0dXJuW107bGV0IG89eHQociwiYmluZEtleSIsbnVsbCk7RXQobyl8fChvPSJpZCIpO2xldCB1PXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KHUpfHwodT0icGFyZW50SWQiKTtsZXQgYT14dChyLCJiaW5kQ2hpbGRyZW4iLG51bGwpO0V0KGEpfHwoYT0iY2hpbGRyZW4iKTtsZXQgaT14dChyLCJzYXZlRXh0UHJvcHMiLG51bGwpO3JldHVybiBGdChpKXx8KGk9ITEpLGZ1bmN0aW9uKHQpe2xldCByPVtdO2Z1bmN0aW9uIGModCl7cmV0dXJuIGk/dDpnbyh0LFtlLG5dKX1sZXQgZj17fTtyZXR1cm4gR24odCwoKGUsbik9PntpZigwPT09ZS4kbGV2ZWwpe2xldCB0PWMoZSk7ci5wdXNoKHQpLGZbZVtvXV09W25dfWVsc2V7bGV0IG49ZnVuY3Rpb24ocil7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspe2xldCBuPXRbZV07aWYoclt1XT09PW5bb10pcmV0dXJuIG59cmV0dXJuIG51bGx9KGUpO2lmKG51bGwhPT1uKXtsZXQgdD1mW25bb11dO3Q9Wy4uLnQsYV07bGV0IHU9eHQocix0LFtdKSxpPWMoZSk7dS5wdXNoKGkpLGZbZVtvXV09Wy4uLnQsdS5sZW5ndGgtMV0sSm4ocix0LHUpfWVsc2UgY29uc29sZS5sb2coYGNhbiBub3QgZmluZCBwYXJlbnQgZm9yICR7eHQoZSx1KX1gKX19KSkscn0odD1mdW5jdGlvbih0KXtsZXQgcj1bXTtmdW5jdGlvbiBhKGEpe2xldCBpPVtdO0duKHQsKCh0LGMpPT57bGV0IGY9eHQodCx1KSxsPXh0KGEsbyk7aWYoZiYmbCYmZj09PWwpe2xldCB1PXh0KGEsbixbXSk7dT1Qbih1KSx1LnB1c2goYVtvXSksci5wdXNoKE9vKHtbZV06YS4kbGV2ZWwrMSxbbl06dX0sdCkpfWVsc2UgaS5wdXNoKHQpfSkpLHQ9aX1pZih0PVBuKHQpLGZ1bmN0aW9uKCl7bGV0IG89W107R24odCwoKHQsYSk9PntUdCh0W3VdKT9yLnB1c2goT28oe1tlXTowLFtuXTpbXX0sdCkpOm8ucHVzaCh0KX0pKSx0PW99KCksMD09PXIubGVuZ3RoKXJldHVybiByO2xldCBpPS0xO2Zvcig7aSs9MSwhKGk+ci5sZW5ndGgtMSk7KXtpZihhKHJbaV0pLDA9PT10Lmxlbmd0aClicmVha31yZXR1cm4gcn0odCkpfWZ1bmN0aW9uIG1vKHQscj17fSl7aWYoISR0KHQpJiYhTXQodCkpcmV0dXJuW107bGV0IGU9eHQociwiYmluZEtleSIsbnVsbCk7RXQoZSl8fChlPSJpZCIpO2xldCBuPXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KG4pfHwobj0icGFyZW50SWQiKTtsZXQgbz14dChyLCJiaW5kVGV4dCIsbnVsbCk7RXQobyl8fChvPSJ0ZXh0Iik7bGV0IHU9eHQociwiYmluZENoaWxkcmVuIixudWxsKTtFdCh1KXx8KHU9ImNoaWxkcmVuIik7bGV0IGE9eHQociwiYmluZFR5cGUiLG51bGwpO0V0KGEpfHwoYT0idHlwZSIpO2xldCBpPXh0KHIsImJpbmROdW1PZkNoaWxyZW4iLG51bGwpO0V0KGkpfHwoaT0ibnVtT2ZDaGlscmVuIik7bGV0IGM9eHQociwiYmluZFJvb3QiLG51bGwpO0V0KGMpfHwoYz0icm9vdCIpO2xldCBmPXh0KHIsInNhdmVFeHRQcm9wcyIsbnVsbCk7cmV0dXJuIEZ0KGYpfHwoZj0hMSksRXQoYykmJih0PXtbY106dH0pLHdvKGZ1bmN0aW9uKHQscj17fSl7aWYoISR0KHQpJiYhTXQodCkpcmV0dXJuW107bGV0IGU9eHQociwiYmluZEtleSIsbnVsbCk7RXQoZSl8fChlPSJpZCIpO2xldCBuPXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KG4pfHwobj0icGFyZW50SWQiKTtsZXQgbz14dChyLCJiaW5kQmVsb25nIixudWxsKTtFdChvKXx8KG89ImtleSIpO2xldCB1PXh0KHIsImJpbmRUZXh0IixudWxsKTtFdCh1KXx8KHU9InRleHQiKTtsZXQgYT14dChyLCJiaW5kVHlwZSIsbnVsbCk7RXQoYSl8fChhPSJ0eXBlIik7bGV0IGk9eHQociwiYmluZE51bU9mQ2hpbHJlbiIsbnVsbCk7ZnVuY3Rpb24gYyh0LHIsZSl7dD1Qbih0KSx0PWRlKHQsKHQ9PmQodCk/em4odCk6dCkpLGQocikmJihyPXpuKHIpKSxkKGUpJiYoZT16bihlKSksKEV0KHIpfHx4bihyKSkmJnQucHVzaChyKTtsZXQgbj1nZSh0LCItIik7cmV0dXJuKEV0KGUpfHx4bihlKSkmJihuPWAke2V9LSR7bn1gKSxufUV0KGkpfHwoaT0ibnVtT2ZDaGlscmVuIik7bGV0IGY9W107cmV0dXJuIEtuKHQsKCh0LHIsbCk9PntsZXQgdj1jKGwscikscz1jKGwsbnVsbCksYj0ibm9kZSI7SXQodCk/Yj0ib2JqZWN0IjpOdCh0KSYmKGI9ImFycmF5Iik7bGV0IHA9e1tlXTp2LFtuXTpzLFthXTpifTtpZigoRXQocil8fENlKHIpKSYmKHBbb109ciksSXQodCl8fE50KHQpfHwocFt1XT10KSxJdCh0KXx8TnQodCkpe2xldCByPUZlKHQpO3BbaV09cn1yZXR1cm4gZi5wdXNoKHApLHR9KSx7Zm9yY2U6ITB9KSxmfSh0LHtiaW5kS2V5OmUsYmluZFBhcmVudDpuLGJpbmRUZXh0Om8sYmluZFR5cGU6YSxiaW5kTnVtT2ZDaGlscmVuOml9KSx7YmluZEtleTplLGJpbmRQYXJlbnQ6bixiaW5kQ2hpbGRyZW46dSxzYXZlRXh0UHJvcHM6Zn0pfWFzeW5jIGZ1bmN0aW9uIGNvbnZlcnRUb1RyZWVXayh0LHI9e30pe3JldHVybiBtbyh0LHIpfQoKbGV0IGluc3RhbmNlID0gbnVsbApmdW5jdGlvbiBpbml0KGlucHV0KXsKCiAgICAvL2luaXQKICAgIGxldCByCiAgICAKICAgICAgICByID0gewogICAgICAgICAgICBtYWluOiBjb252ZXJ0VG9UcmVlV2sKICAgICAgICB9CiAgICAgICAgCgogICAgLy9vbgogICAgCgogICAgLy9zYXZlCiAgICBpbnN0YW5jZSA9IHIKCn0KCmZ1bmN0aW9uIHNlbmRNZXNzYWdlKGRhdGEpIHsKICAgIAogICAgICAgIHNlbGYucG9zdE1lc3NhZ2UoZGF0YSkKICAgICAgICAKfQoKYXN5bmMgZnVuY3Rpb24gcnVuKGRhdGEpIHsKICAgIC8vIGNvbnNvbGUubG9nKCdpbm5lciB3b3JrZXIgcnVuJyxkYXRhKQoKICAgIC8vbW9kZQogICAgbGV0IG1vZGUgPSBkYXRhLm1vZGUKCiAgICAvL2NoZWNrCiAgICBpZihtb2RlICE9PSAnaW5pdCcgJiYgbW9kZSAhPT0gJ2NhbGwnKXsKICAgICAgICByZXR1cm4KICAgIH0KCiAgICAvL2luaXQKICAgIGlmKG1vZGUgPT09ICdpbml0Jyl7CiAgICAgICAgCiAgICAgICAgdHJ5ewoKICAgICAgICAgICAgLy90eXBlCiAgICAgICAgICAgIGxldCB0eXBlID0gZGF0YS50eXBlCgogICAgICAgICAgICAvL2lucHV0CiAgICAgICAgICAgIGxldCBpbnB1dCA9IGRhdGEuaW5wdXQKICAgIAogICAgICAgICAgICAvL2luc3RhbmNlCiAgICAgICAgICAgIGlmKHR5cGUgPT09ICdmdW5jdGlvbicpewogICAgICAgICAgICAgICAgaW5pdCguLi5pbnB1dCkKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmKHR5cGUgPT09ICdvYmplY3QnKXsKICAgICAgICAgICAgICAgIGluc3RhbmNlID0gY29udmVydFRvVHJlZVdrCiAgICAgICAgICAgIH0KCiAgICAgICAgfQogICAgICAgIGNhdGNoKGVycil7CiAgICAgICAgCiAgICAgICAgICAgIC8vc2VuZE1lc3NhZ2UKICAgICAgICAgICAgbGV0IHJlcyA9IHsKICAgICAgICAgICAgICAgIG1vZGU6ICdlbWl0JywKICAgICAgICAgICAgICAgIGV2TmFtZTogJ2Vycm9yJywKICAgICAgICAgICAgICAgIG1zZzogZXJyLAogICAgICAgICAgICB9CiAgICAgICAgICAgIHNlbmRNZXNzYWdlKHJlcykKCiAgICAgICAgfQogICAgICAgICAgICAKICAgIH0KCiAgICAvL2NoZWNrCiAgICBpZihtb2RlID09PSAnY2FsbCcpewogICAgICAgIGxldCBzdGF0ZSA9ICcnCiAgICAgICAgbGV0IG1zZyA9IG51bGwKCiAgICAgICAgdHJ5ewoKICAgICAgICAgICAgLy9mdW4KICAgICAgICAgICAgbGV0IGZ1biA9IGluc3RhbmNlW2RhdGEuZnVuXQoKICAgICAgICAgICAgLy9pbnB1dAogICAgICAgICAgICBsZXQgaW5wdXQgPSBkYXRhLmlucHV0CgogICAgICAgICAgICAvL2V4ZWMKICAgICAgICAgICAgYXdhaXQgZnVuKC4uLmlucHV0KQogICAgICAgICAgICAgICAgLnRoZW4oKHN1YykgPT4gewogICAgICAgICAgICAgICAgICAgIHN0YXRlPSdzdWNjZXNzJwogICAgICAgICAgICAgICAgICAgIG1zZz1zdWMKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4gewogICAgICAgICAgICAgICAgICAgIHN0YXRlPSdlcnJvcicKICAgICAgICAgICAgICAgICAgICBtc2c9ZXJyCiAgICAgICAgICAgICAgICB9KQoKICAgICAgICB9CiAgICAgICAgY2F0Y2goZXJyKXsKICAgICAgICAgICAgc3RhdGUgPSAnZXJyb3InCiAgICAgICAgICAgIG1zZyA9IGVycgogICAgICAgIH0KICAgICAgICAKICAgICAgICAvL3NlbmRNZXNzYWdlCiAgICAgICAgbGV0IHJlcyA9IHsKICAgICAgICAgICAgbW9kZTogJ3JldHVybicsCiAgICAgICAgICAgIGlkOiBkYXRhLmlkLAogICAgICAgICAgICBmdW46IGRhdGEuZnVuLAogICAgICAgICAgICBzdGF0ZSwKICAgICAgICAgICAgbXNnLAogICAgICAgIH0KICAgICAgICBzZW5kTWVzc2FnZShyZXMpCgogICAgfQoKfQoKZnVuY3Rpb24gcmVjdk1lc3NhZ2UoZGF0YSkgewogICAgLy8gY29uc29sZS5sb2coJ2lubmVyIHdvcmtlciByZWN2OicsIGRhdGEpCgogICAgLy9kYXRhUmVjdgogICAgbGV0IGRhdGFSZWN2ID0gZGF0YQoKICAgIC8vcnVuCiAgICBydW4oZGF0YVJlY3YpCgp9CgoKICAgICAgICBzZWxmLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgIHJlY3ZNZXNzYWdlKGUuZGF0YSkKICAgICAgICB9CiAgICAgICAgCgo=",DI.Base64.decode("CgoKdmFyIHQ9QXJyYXkuaXNBcnJheSxyPSJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsVGhpcz9nbG9iYWxUaGlzOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzoidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6e307ZnVuY3Rpb24gZSh0KXt2YXIgcj17ZXhwb3J0czp7fX07cmV0dXJuIHQocixyLmV4cG9ydHMpLHIuZXhwb3J0c312YXIgbj0ib2JqZWN0Ij09dHlwZW9mIHImJnImJnIuT2JqZWN0PT09T2JqZWN0JiZyLG89Im9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmJiZzZWxmLk9iamVjdD09PU9iamVjdCYmc2VsZix1PW58fG98fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCksYT11LlN5bWJvbCxpPU9iamVjdC5wcm90b3R5cGUsYz1pLmhhc093blByb3BlcnR5LGY9aS50b1N0cmluZyxsPWE/YS50b1N0cmluZ1RhZzp2b2lkIDA7dmFyIHY9ZnVuY3Rpb24odCl7dmFyIHI9Yy5jYWxsKHQsbCksZT10W2xdO3RyeXt0W2xdPXZvaWQgMDt2YXIgbj0hMH1jYXRjaCh0KXt9dmFyIG89Zi5jYWxsKHQpO3JldHVybiBuJiYocj90W2xdPWU6ZGVsZXRlIHRbbF0pLG99LHM9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzt2YXIgYj1mdW5jdGlvbih0KXtyZXR1cm4gcy5jYWxsKHQpfSxwPWE/YS50b1N0cmluZ1RhZzp2b2lkIDA7dmFyIHk9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwPT09dD8iW29iamVjdCBVbmRlZmluZWRdIjoiW29iamVjdCBOdWxsXSI6cCYmcCBpbiBPYmplY3QodCk/dih0KTpiKHQpfTt2YXIgaD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmIm9iamVjdCI9PXR5cGVvZiB0fTt2YXIgZD1mdW5jdGlvbih0KXtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIHR8fGgodCkmJiJbb2JqZWN0IFN5bWJvbF0iPT15KHQpfSxqPS9cLnxcWyg/OlteW1xdXSp8KFsiJ10pKD86KD8hXDEpW15cXF18XFwuKSo/XDEpXF0vLGc9L15cdyokLzt2YXIgXz1mdW5jdGlvbihyLGUpe2lmKHQocikpcmV0dXJuITE7dmFyIG49dHlwZW9mIHI7cmV0dXJuISgibnVtYmVyIiE9biYmInN5bWJvbCIhPW4mJiJib29sZWFuIiE9biYmbnVsbCE9ciYmIWQocikpfHwoZy50ZXN0KHIpfHwhai50ZXN0KHIpfHxudWxsIT1lJiZyIGluIE9iamVjdChlKSl9O3ZhciBPPWZ1bmN0aW9uKHQpe3ZhciByPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PXJ8fCJmdW5jdGlvbiI9PXIpfTt2YXIgdyxtPWZ1bmN0aW9uKHQpe2lmKCFPKHQpKXJldHVybiExO3ZhciByPXkodCk7cmV0dXJuIltvYmplY3QgRnVuY3Rpb25dIj09cnx8IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09cnx8IltvYmplY3QgQXN5bmNGdW5jdGlvbl0iPT1yfHwiW29iamVjdCBQcm94eV0iPT1yfSxBPXVbIl9fY29yZS1qc19zaGFyZWRfXyJdLFM9KHc9L1teLl0rJC8uZXhlYyhBJiZBLmtleXMmJkEua2V5cy5JRV9QUk9UT3x8IiIpKT8iU3ltYm9sKHNyYylfMS4iK3c6IiI7dmFyIFA9ZnVuY3Rpb24odCl7cmV0dXJuISFTJiZTIGluIHR9LHg9RnVuY3Rpb24ucHJvdG90eXBlLnRvU3RyaW5nO3ZhciB6PWZ1bmN0aW9uKHQpe2lmKG51bGwhPXQpe3RyeXtyZXR1cm4geC5jYWxsKHQpfWNhdGNoKHQpe310cnl7cmV0dXJuIHQrIiJ9Y2F0Y2godCl7fX1yZXR1cm4iIn0sRT0vXlxbb2JqZWN0IC4rP0NvbnN0cnVjdG9yXF0kLyxJPUZ1bmN0aW9uLnByb3RvdHlwZSwkPU9iamVjdC5wcm90b3R5cGUsTj1JLnRvU3RyaW5nLFQ9JC5oYXNPd25Qcm9wZXJ0eSxNPVJlZ0V4cCgiXiIrTi5jYWxsKFQpLnJlcGxhY2UoL1tcXF4kLiorPygpW1xde318XS9nLCJcXCQmIikucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXCgpfCBmb3IgLis/KD89XFxcXSkvZywiJDEuKj8iKSsiJCIpO3ZhciBrPWZ1bmN0aW9uKHQpe3JldHVybiEoIU8odCl8fFAodCkpJiYobSh0KT9NOkUpLnRlc3Qoeih0KSl9O3ZhciBGPWZ1bmN0aW9uKHQscil7cmV0dXJuIG51bGw9PXQ/dm9pZCAwOnRbcl19O3ZhciBDPWZ1bmN0aW9uKHQscil7dmFyIGU9Rih0LHIpO3JldHVybiBrKGUpP2U6dm9pZCAwfSxEPUMoT2JqZWN0LCJjcmVhdGUiKTt2YXIgVT1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189RD9EKG51bGwpOnt9LHRoaXMuc2l6ZT0wfTt2YXIgQj1mdW5jdGlvbih0KXt2YXIgcj10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09cj8xOjAscn0sUj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBMPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX19kYXRhX187aWYoRCl7dmFyIGU9clt0XTtyZXR1cm4iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI9PT1lP3ZvaWQgMDplfXJldHVybiBSLmNhbGwocix0KT9yW3RdOnZvaWQgMH0sVj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBLPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX19kYXRhX187cmV0dXJuIEQ/dm9pZCAwIT09clt0XTpWLmNhbGwocix0KX07dmFyIFc9ZnVuY3Rpb24odCxyKXt2YXIgZT10aGlzLl9fZGF0YV9fO3JldHVybiB0aGlzLnNpemUrPXRoaXMuaGFzKHQpPzA6MSxlW3RdPUQmJnZvaWQgMD09PXI/Il9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iOnIsdGhpc307ZnVuY3Rpb24gcSh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrcjxlOyl7dmFyIG49dFtyXTt0aGlzLnNldChuWzBdLG5bMV0pfX1xLnByb3RvdHlwZS5jbGVhcj1VLHEucHJvdG90eXBlLmRlbGV0ZT1CLHEucHJvdG90eXBlLmdldD1MLHEucHJvdG90eXBlLmhhcz1LLHEucHJvdG90eXBlLnNldD1XO3ZhciBHPXE7dmFyIEg9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPVtdLHRoaXMuc2l6ZT0wfTt2YXIgSj1mdW5jdGlvbih0LHIpe3JldHVybiB0PT09cnx8dCE9dCYmciE9cn07dmFyIFE9ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9dC5sZW5ndGg7ZS0tOylpZihKKHRbZV1bMF0scikpcmV0dXJuIGU7cmV0dXJuLTF9LFg9QXJyYXkucHJvdG90eXBlLnNwbGljZTt2YXIgWT1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9fZGF0YV9fLGU9UShyLHQpO3JldHVybiEoZTwwKSYmKGU9PXIubGVuZ3RoLTE/ci5wb3AoKTpYLmNhbGwocixlLDEpLC0tdGhpcy5zaXplLCEwKX07dmFyIFo9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fX2RhdGFfXyxlPVEocix0KTtyZXR1cm4gZTwwP3ZvaWQgMDpyW2VdWzFdfTt2YXIgdHQ9ZnVuY3Rpb24odCl7cmV0dXJuIFEodGhpcy5fX2RhdGFfXyx0KT4tMX07dmFyIHJ0PWZ1bmN0aW9uKHQscil7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPVEoZSx0KTtyZXR1cm4gbjwwPygrK3RoaXMuc2l6ZSxlLnB1c2goW3Qscl0pKTplW25dWzFdPXIsdGhpc307ZnVuY3Rpb24gZXQodCl7dmFyIHI9LTEsZT1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK3I8ZTspe3ZhciBuPXRbcl07dGhpcy5zZXQoblswXSxuWzFdKX19ZXQucHJvdG90eXBlLmNsZWFyPUgsZXQucHJvdG90eXBlLmRlbGV0ZT1ZLGV0LnByb3RvdHlwZS5nZXQ9WixldC5wcm90b3R5cGUuaGFzPXR0LGV0LnByb3RvdHlwZS5zZXQ9cnQ7dmFyIG50PWV0LG90PUModSwiTWFwIik7dmFyIHV0PWZ1bmN0aW9uKCl7dGhpcy5zaXplPTAsdGhpcy5fX2RhdGFfXz17aGFzaDpuZXcgRyxtYXA6bmV3KG90fHxudCksc3RyaW5nOm5ldyBHfX07dmFyIGF0PWZ1bmN0aW9uKHQpe3ZhciByPXR5cGVvZiB0O3JldHVybiJzdHJpbmciPT1yfHwibnVtYmVyIj09cnx8InN5bWJvbCI9PXJ8fCJib29sZWFuIj09cj8iX19wcm90b19fIiE9PXQ6bnVsbD09PXR9O3ZhciBpdD1mdW5jdGlvbih0LHIpe3ZhciBlPXQuX19kYXRhX187cmV0dXJuIGF0KHIpP2VbInN0cmluZyI9PXR5cGVvZiByPyJzdHJpbmciOiJoYXNoIl06ZS5tYXB9O3ZhciBjdD1mdW5jdGlvbih0KXt2YXIgcj1pdCh0aGlzLHQpLmRlbGV0ZSh0KTtyZXR1cm4gdGhpcy5zaXplLT1yPzE6MCxyfTt2YXIgZnQ9ZnVuY3Rpb24odCl7cmV0dXJuIGl0KHRoaXMsdCkuZ2V0KHQpfTt2YXIgbHQ9ZnVuY3Rpb24odCl7cmV0dXJuIGl0KHRoaXMsdCkuaGFzKHQpfTt2YXIgdnQ9ZnVuY3Rpb24odCxyKXt2YXIgZT1pdCh0aGlzLHQpLG49ZS5zaXplO3JldHVybiBlLnNldCh0LHIpLHRoaXMuc2l6ZSs9ZS5zaXplPT1uPzA6MSx0aGlzfTtmdW5jdGlvbiBzdCh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrcjxlOyl7dmFyIG49dFtyXTt0aGlzLnNldChuWzBdLG5bMV0pfX1zdC5wcm90b3R5cGUuY2xlYXI9dXQsc3QucHJvdG90eXBlLmRlbGV0ZT1jdCxzdC5wcm90b3R5cGUuZ2V0PWZ0LHN0LnByb3RvdHlwZS5oYXM9bHQsc3QucHJvdG90eXBlLnNldD12dDt2YXIgYnQ9c3Q7ZnVuY3Rpb24gcHQodCxyKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdHx8bnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmdW5jdGlvbiIpO3ZhciBlPWZ1bmN0aW9uKCl7dmFyIG49YXJndW1lbnRzLG89cj9yLmFwcGx5KHRoaXMsbik6blswXSx1PWUuY2FjaGU7aWYodS5oYXMobykpcmV0dXJuIHUuZ2V0KG8pO3ZhciBhPXQuYXBwbHkodGhpcyxuKTtyZXR1cm4gZS5jYWNoZT11LnNldChvLGEpfHx1LGF9O3JldHVybiBlLmNhY2hlPW5ldyhwdC5DYWNoZXx8YnQpLGV9cHQuQ2FjaGU9YnQ7dmFyIHl0PXB0O3ZhciBodD0vW14uW1xdXSt8XFsoPzooLT9cZCsoPzpcLlxkKyk/KXwoWyInXSkoKD86KD8hXDIpW15cXF18XFwuKSo/KVwyKVxdfCg/PSg/OlwufFxbXF0pKD86XC58XFtcXXwkKSkvZyxkdD0vXFwoXFwpPy9nLGp0PWZ1bmN0aW9uKHQpe3ZhciByPXl0KHQsKGZ1bmN0aW9uKHQpe3JldHVybiA1MDA9PT1lLnNpemUmJmUuY2xlYXIoKSx0fSkpLGU9ci5jYWNoZTtyZXR1cm4gcn0oKGZ1bmN0aW9uKHQpe3ZhciByPVtdO3JldHVybiA0Nj09PXQuY2hhckNvZGVBdCgwKSYmci5wdXNoKCIiKSx0LnJlcGxhY2UoaHQsKGZ1bmN0aW9uKHQsZSxuLG8pe3IucHVzaChuP28ucmVwbGFjZShkdCwiJDEiKTplfHx0KX0pKSxyfSkpO3ZhciBndD1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aCxvPUFycmF5KG4pOysrZTxuOylvW2VdPXIodFtlXSxlLHQpO3JldHVybiBvfSxfdD1hP2EucHJvdG90eXBlOnZvaWQgMCxPdD1fdD9fdC50b1N0cmluZzp2b2lkIDA7dmFyIHd0PWZ1bmN0aW9uIHIoZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO2lmKHQoZSkpcmV0dXJuIGd0KGUscikrIiI7aWYoZChlKSlyZXR1cm4gT3Q/T3QuY2FsbChlKToiIjt2YXIgbj1lKyIiO3JldHVybiIwIj09biYmMS9lPT0tSW5maW5pdHk/Ii0wIjpufTt2YXIgbXQ9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/IiI6d3QodCl9O3ZhciBBdD1mdW5jdGlvbihyLGUpe3JldHVybiB0KHIpP3I6XyhyLGUpP1tyXTpqdChtdChyKSl9O3ZhciBTdD1mdW5jdGlvbih0KXtpZigic3RyaW5nIj09dHlwZW9mIHR8fGQodCkpcmV0dXJuIHQ7dmFyIHI9dCsiIjtyZXR1cm4iMCI9PXImJjEvdD09LUluZmluaXR5PyItMCI6cn07dmFyIFB0PWZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPTAsbj0ocj1BdChyLHQpKS5sZW5ndGg7bnVsbCE9dCYmZTxuOyl0PXRbU3QocltlKytdKV07cmV0dXJuIGUmJmU9PW4/dDp2b2lkIDB9O3ZhciB4dD1mdW5jdGlvbih0LHIsZSl7dmFyIG49bnVsbD09dD92b2lkIDA6UHQodCxyKTtyZXR1cm4gdm9pZCAwPT09bj9lOm59O2Z1bmN0aW9uIHp0KHQpe3JldHVybiJbb2JqZWN0IFN0cmluZ10iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uIEV0KHQpe3JldHVybiEoIXp0KHQpfHwiIj09PXQpfWZ1bmN0aW9uIEl0KHQpe3JldHVybiJbb2JqZWN0IE9iamVjdF0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uICR0KHQpe2lmKEl0KHQpKXtmb3IobGV0IHIgaW4gdClyZXR1cm4hMDtyZXR1cm4hMX1yZXR1cm4hMX1mdW5jdGlvbiBOdCh0KXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uIFR0KHQpe3JldHVybiEhZnVuY3Rpb24odCl7cmV0dXJuIltvYmplY3QgVW5kZWZpbmVkXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodCl9KHQpfHwoISFmdW5jdGlvbih0KXtyZXR1cm4iW29iamVjdCBOdWxsXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodCl9KHQpfHwoISFmdW5jdGlvbih0KXtpZihJdCh0KSl7Zm9yKGxldCByIGluIHQpcmV0dXJuITE7cmV0dXJuITB9cmV0dXJuITF9KHQpfHwoISFmdW5jdGlvbih0KXtyZXR1cm4hKCF6dCh0KXx8IiIhPT10KX0odCl8fCEhZnVuY3Rpb24odCl7cmV0dXJuISFOdCh0KSYmMD09PXQubGVuZ3RofSh0KSkpKX1mdW5jdGlvbiBNdCh0KXtyZXR1cm4hIU50KHQpJiYoMCE9PXQubGVuZ3RoJiYoMSE9PXQubGVuZ3RofHwhVHQodFswXSkpKX12YXIga3Q9ZnVuY3Rpb24odCl7cmV0dXJuITA9PT10fHwhMT09PXR8fGgodCkmJiJbb2JqZWN0IEJvb2xlYW5dIj09eSh0KX07ZnVuY3Rpb24gRnQodCl7cmV0dXJuIGt0KHQpfXZhciBDdD1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189bmV3IG50LHRoaXMuc2l6ZT0wfTt2YXIgRHQ9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fX2RhdGFfXyxlPXIuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemU9ci5zaXplLGV9O3ZhciBVdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5nZXQodCl9O3ZhciBCdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5oYXModCl9O3ZhciBSdD1mdW5jdGlvbih0LHIpe3ZhciBlPXRoaXMuX19kYXRhX187aWYoZSBpbnN0YW5jZW9mIG50KXt2YXIgbj1lLl9fZGF0YV9fO2lmKCFvdHx8bi5sZW5ndGg8MTk5KXJldHVybiBuLnB1c2goW3Qscl0pLHRoaXMuc2l6ZT0rK2Uuc2l6ZSx0aGlzO2U9dGhpcy5fX2RhdGFfXz1uZXcgYnQobil9cmV0dXJuIGUuc2V0KHQsciksdGhpcy5zaXplPWUuc2l6ZSx0aGlzfTtmdW5jdGlvbiBMdCh0KXt2YXIgcj10aGlzLl9fZGF0YV9fPW5ldyBudCh0KTt0aGlzLnNpemU9ci5zaXplfUx0LnByb3RvdHlwZS5jbGVhcj1DdCxMdC5wcm90b3R5cGUuZGVsZXRlPUR0LEx0LnByb3RvdHlwZS5nZXQ9VXQsTHQucHJvdG90eXBlLmhhcz1CdCxMdC5wcm90b3R5cGUuc2V0PVJ0O3ZhciBWdD1MdDt2YXIgS3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uc2V0KHQsIl9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iKSx0aGlzfTt2YXIgV3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uaGFzKHQpfTtmdW5jdGlvbiBxdCh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5fX2RhdGFfXz1uZXcgYnQ7KytyPGU7KXRoaXMuYWRkKHRbcl0pfXF0LnByb3RvdHlwZS5hZGQ9cXQucHJvdG90eXBlLnB1c2g9S3QscXQucHJvdG90eXBlLmhhcz1XdDt2YXIgR3Q9cXQ7dmFyIEh0PWZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoOysrZTxuOylpZihyKHRbZV0sZSx0KSlyZXR1cm4hMDtyZXR1cm4hMX07dmFyIEp0PWZ1bmN0aW9uKHQscil7cmV0dXJuIHQuaGFzKHIpfTt2YXIgUXQ9ZnVuY3Rpb24odCxyLGUsbixvLHUpe3ZhciBhPTEmZSxpPXQubGVuZ3RoLGM9ci5sZW5ndGg7aWYoaSE9YyYmIShhJiZjPmkpKXJldHVybiExO3ZhciBmPXUuZ2V0KHQpLGw9dS5nZXQocik7aWYoZiYmbClyZXR1cm4gZj09ciYmbD09dDt2YXIgdj0tMSxzPSEwLGI9MiZlP25ldyBHdDp2b2lkIDA7Zm9yKHUuc2V0KHQsciksdS5zZXQocix0KTsrK3Y8aTspe3ZhciBwPXRbdl0seT1yW3ZdO2lmKG4pdmFyIGg9YT9uKHkscCx2LHIsdCx1KTpuKHAseSx2LHQscix1KTtpZih2b2lkIDAhPT1oKXtpZihoKWNvbnRpbnVlO3M9ITE7YnJlYWt9aWYoYil7aWYoIUh0KHIsKGZ1bmN0aW9uKHQscil7aWYoIUp0KGIscikmJihwPT09dHx8byhwLHQsZSxuLHUpKSlyZXR1cm4gYi5wdXNoKHIpfSkpKXtzPSExO2JyZWFrfX1lbHNlIGlmKHAhPT15JiYhbyhwLHksZSxuLHUpKXtzPSExO2JyZWFrfX1yZXR1cm4gdS5kZWxldGUodCksdS5kZWxldGUociksc30sWHQ9dS5VaW50OEFycmF5O3ZhciBZdD1mdW5jdGlvbih0KXt2YXIgcj0tMSxlPUFycmF5KHQuc2l6ZSk7cmV0dXJuIHQuZm9yRWFjaCgoZnVuY3Rpb24odCxuKXtlWysrcl09W24sdF19KSksZX07dmFyIFp0PWZ1bmN0aW9uKHQpe3ZhciByPS0xLGU9QXJyYXkodC5zaXplKTtyZXR1cm4gdC5mb3JFYWNoKChmdW5jdGlvbih0KXtlWysrcl09dH0pKSxlfSx0cj1hP2EucHJvdG90eXBlOnZvaWQgMCxycj10cj90ci52YWx1ZU9mOnZvaWQgMDt2YXIgZXI9ZnVuY3Rpb24odCxyLGUsbixvLHUsYSl7c3dpdGNoKGUpe2Nhc2UiW29iamVjdCBEYXRhVmlld10iOmlmKHQuYnl0ZUxlbmd0aCE9ci5ieXRlTGVuZ3RofHx0LmJ5dGVPZmZzZXQhPXIuYnl0ZU9mZnNldClyZXR1cm4hMTt0PXQuYnVmZmVyLHI9ci5idWZmZXI7Y2FzZSJbb2JqZWN0IEFycmF5QnVmZmVyXSI6cmV0dXJuISh0LmJ5dGVMZW5ndGghPXIuYnl0ZUxlbmd0aHx8IXUobmV3IFh0KHQpLG5ldyBYdChyKSkpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpjYXNlIltvYmplY3QgTnVtYmVyXSI6cmV0dXJuIEooK3QsK3IpO2Nhc2UiW29iamVjdCBFcnJvcl0iOnJldHVybiB0Lm5hbWU9PXIubmFtZSYmdC5tZXNzYWdlPT1yLm1lc3NhZ2U7Y2FzZSJbb2JqZWN0IFJlZ0V4cF0iOmNhc2UiW29iamVjdCBTdHJpbmddIjpyZXR1cm4gdD09cisiIjtjYXNlIltvYmplY3QgTWFwXSI6dmFyIGk9WXQ7Y2FzZSJbb2JqZWN0IFNldF0iOnZhciBjPTEmbjtpZihpfHwoaT1adCksdC5zaXplIT1yLnNpemUmJiFjKXJldHVybiExO3ZhciBmPWEuZ2V0KHQpO2lmKGYpcmV0dXJuIGY9PXI7bnw9MixhLnNldCh0LHIpO3ZhciBsPVF0KGkodCksaShyKSxuLG8sdSxhKTtyZXR1cm4gYS5kZWxldGUodCksbDtjYXNlIltvYmplY3QgU3ltYm9sXSI6aWYocnIpcmV0dXJuIHJyLmNhbGwodCk9PXJyLmNhbGwocil9cmV0dXJuITF9O3ZhciBucj1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPXIubGVuZ3RoLG89dC5sZW5ndGg7KytlPG47KXRbbytlXT1yW2VdO3JldHVybiB0fTt2YXIgb3I9ZnVuY3Rpb24ocixlLG4pe3ZhciBvPWUocik7cmV0dXJuIHQocik/bzpucihvLG4ocikpfTt2YXIgdXI9ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGgsbz0wLHU9W107KytlPG47KXt2YXIgYT10W2VdO3IoYSxlLHQpJiYodVtvKytdPWEpfXJldHVybiB1fTt2YXIgYXI9ZnVuY3Rpb24oKXtyZXR1cm5bXX0saXI9T2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZSxjcj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzLGZyPWNyP2Z1bmN0aW9uKHQpe3JldHVybiBudWxsPT10P1tdOih0PU9iamVjdCh0KSx1cihjcih0KSwoZnVuY3Rpb24ocil7cmV0dXJuIGlyLmNhbGwodCxyKX0pKSl9OmFyO3ZhciBscj1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPUFycmF5KHQpOysrZTx0OyluW2VdPXIoZSk7cmV0dXJuIG59O3ZhciB2cj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgQXJndW1lbnRzXSI9PXkodCl9LHNyPU9iamVjdC5wcm90b3R5cGUsYnI9c3IuaGFzT3duUHJvcGVydHkscHI9c3IucHJvcGVydHlJc0VudW1lcmFibGUseXI9dnIoZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzfSgpKT92cjpmdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmYnIuY2FsbCh0LCJjYWxsZWUiKSYmIXByLmNhbGwodCwiY2FsbGVlIil9O3ZhciBocj1mdW5jdGlvbigpe3JldHVybiExfSxkcj1lKChmdW5jdGlvbih0LHIpe3ZhciBlPXImJiFyLm5vZGVUeXBlJiZyLG49ZSYmdCYmIXQubm9kZVR5cGUmJnQsbz1uJiZuLmV4cG9ydHM9PT1lP3UuQnVmZmVyOnZvaWQgMCxhPShvP28uaXNCdWZmZXI6dm9pZCAwKXx8aHI7dC5leHBvcnRzPWF9KSksanI9L14oPzowfFsxLTldXGQqKSQvO3ZhciBncj1mdW5jdGlvbih0LHIpe3ZhciBlPXR5cGVvZiB0O3JldHVybiEhKHI9bnVsbD09cj85MDA3MTk5MjU0NzQwOTkxOnIpJiYoIm51bWJlciI9PWV8fCJzeW1ib2wiIT1lJiZqci50ZXN0KHQpKSYmdD4tMSYmdCUxPT0wJiZ0PHJ9O3ZhciBfcj1mdW5jdGlvbih0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQmJnQ+LTEmJnQlMT09MCYmdDw9OTAwNzE5OTI1NDc0MDk5MX0sT3I9e307T3JbIltvYmplY3QgRmxvYXQzMkFycmF5XSJdPU9yWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1PclsiW29iamVjdCBJbnQ4QXJyYXldIl09T3JbIltvYmplY3QgSW50MTZBcnJheV0iXT1PclsiW29iamVjdCBJbnQzMkFycmF5XSJdPU9yWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09T3JbIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIl09T3JbIltvYmplY3QgVWludDE2QXJyYXldIl09T3JbIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsT3JbIltvYmplY3QgQXJndW1lbnRzXSJdPU9yWyJbb2JqZWN0IEFycmF5XSJdPU9yWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPU9yWyJbb2JqZWN0IEJvb2xlYW5dIl09T3JbIltvYmplY3QgRGF0YVZpZXddIl09T3JbIltvYmplY3QgRGF0ZV0iXT1PclsiW29iamVjdCBFcnJvcl0iXT1PclsiW29iamVjdCBGdW5jdGlvbl0iXT1PclsiW29iamVjdCBNYXBdIl09T3JbIltvYmplY3QgTnVtYmVyXSJdPU9yWyJbb2JqZWN0IE9iamVjdF0iXT1PclsiW29iamVjdCBSZWdFeHBdIl09T3JbIltvYmplY3QgU2V0XSJdPU9yWyJbb2JqZWN0IFN0cmluZ10iXT1PclsiW29iamVjdCBXZWFrTWFwXSJdPSExO3ZhciB3cj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmX3IodC5sZW5ndGgpJiYhIU9yW3kodCldfTt2YXIgbXI9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiB0KHIpfX0sQXI9ZSgoZnVuY3Rpb24odCxyKXt2YXIgZT1yJiYhci5ub2RlVHlwZSYmcixvPWUmJnQmJiF0Lm5vZGVUeXBlJiZ0LHU9byYmby5leHBvcnRzPT09ZSYmbi5wcm9jZXNzLGE9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9byYmby5yZXF1aXJlJiZvLnJlcXVpcmUoInV0aWwiKS50eXBlcztyZXR1cm4gdHx8dSYmdS5iaW5kaW5nJiZ1LmJpbmRpbmcoInV0aWwiKX1jYXRjaCh0KXt9fSgpO3QuZXhwb3J0cz1hfSkpLFNyPUFyJiZBci5pc1R5cGVkQXJyYXksUHI9U3I/bXIoU3IpOndyLHhyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIHpyPWZ1bmN0aW9uKHIsZSl7dmFyIG49dChyKSxvPSFuJiZ5cihyKSx1PSFuJiYhbyYmZHIociksYT0hbiYmIW8mJiF1JiZQcihyKSxpPW58fG98fHV8fGEsYz1pP2xyKHIubGVuZ3RoLFN0cmluZyk6W10sZj1jLmxlbmd0aDtmb3IodmFyIGwgaW4gcikhZSYmIXhyLmNhbGwocixsKXx8aSYmKCJsZW5ndGgiPT1sfHx1JiYoIm9mZnNldCI9PWx8fCJwYXJlbnQiPT1sKXx8YSYmKCJidWZmZXIiPT1sfHwiYnl0ZUxlbmd0aCI9PWx8fCJieXRlT2Zmc2V0Ij09bCl8fGdyKGwsZikpfHxjLnB1c2gobCk7cmV0dXJuIGN9LEVyPU9iamVjdC5wcm90b3R5cGU7dmFyIElyPWZ1bmN0aW9uKHQpe3ZhciByPXQmJnQuY29uc3RydWN0b3I7cmV0dXJuIHQ9PT0oImZ1bmN0aW9uIj09dHlwZW9mIHImJnIucHJvdG90eXBlfHxFcil9O3ZhciAkcj1mdW5jdGlvbih0LHIpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdChyKGUpKX19LE5yPSRyKE9iamVjdC5rZXlzLE9iamVjdCksVHI9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt2YXIgTXI9ZnVuY3Rpb24odCl7aWYoIUlyKHQpKXJldHVybiBOcih0KTt2YXIgcj1bXTtmb3IodmFyIGUgaW4gT2JqZWN0KHQpKVRyLmNhbGwodCxlKSYmImNvbnN0cnVjdG9yIiE9ZSYmci5wdXNoKGUpO3JldHVybiByfTt2YXIga3I9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJl9yKHQubGVuZ3RoKSYmIW0odCl9O3ZhciBGcj1mdW5jdGlvbih0KXtyZXR1cm4ga3IodCk/enIodCk6TXIodCl9O3ZhciBDcj1mdW5jdGlvbih0KXtyZXR1cm4gb3IodCxGcixmcil9LERyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIFVyPWZ1bmN0aW9uKHQscixlLG4sbyx1KXt2YXIgYT0xJmUsaT1Dcih0KSxjPWkubGVuZ3RoO2lmKGMhPUNyKHIpLmxlbmd0aCYmIWEpcmV0dXJuITE7Zm9yKHZhciBmPWM7Zi0tOyl7dmFyIGw9aVtmXTtpZighKGE/bCBpbiByOkRyLmNhbGwocixsKSkpcmV0dXJuITF9dmFyIHY9dS5nZXQodCkscz11LmdldChyKTtpZih2JiZzKXJldHVybiB2PT1yJiZzPT10O3ZhciBiPSEwO3Uuc2V0KHQsciksdS5zZXQocix0KTtmb3IodmFyIHA9YTsrK2Y8Yzspe3ZhciB5PXRbbD1pW2ZdXSxoPXJbbF07aWYobil2YXIgZD1hP24oaCx5LGwscix0LHUpOm4oeSxoLGwsdCxyLHUpO2lmKCEodm9pZCAwPT09ZD95PT09aHx8byh5LGgsZSxuLHUpOmQpKXtiPSExO2JyZWFrfXB8fChwPSJjb25zdHJ1Y3RvciI9PWwpfWlmKGImJiFwKXt2YXIgaj10LmNvbnN0cnVjdG9yLGc9ci5jb25zdHJ1Y3RvcjtqPT1nfHwhKCJjb25zdHJ1Y3RvciJpbiB0KXx8ISgiY29uc3RydWN0b3IiaW4gcil8fCJmdW5jdGlvbiI9PXR5cGVvZiBqJiZqIGluc3RhbmNlb2YgaiYmImZ1bmN0aW9uIj09dHlwZW9mIGcmJmcgaW5zdGFuY2VvZiBnfHwoYj0hMSl9cmV0dXJuIHUuZGVsZXRlKHQpLHUuZGVsZXRlKHIpLGJ9LEJyPUModSwiRGF0YVZpZXciKSxScj1DKHUsIlByb21pc2UiKSxMcj1DKHUsIlNldCIpLFZyPUModSwiV2Vha01hcCIpLEtyPXooQnIpLFdyPXoob3QpLHFyPXooUnIpLEdyPXooTHIpLEhyPXooVnIpLEpyPXk7KEJyJiYiW29iamVjdCBEYXRhVmlld10iIT1KcihuZXcgQnIobmV3IEFycmF5QnVmZmVyKDEpKSl8fG90JiYiW29iamVjdCBNYXBdIiE9SnIobmV3IG90KXx8UnImJiJbb2JqZWN0IFByb21pc2VdIiE9SnIoUnIucmVzb2x2ZSgpKXx8THImJiJbb2JqZWN0IFNldF0iIT1KcihuZXcgTHIpfHxWciYmIltvYmplY3QgV2Vha01hcF0iIT1KcihuZXcgVnIpKSYmKEpyPWZ1bmN0aW9uKHQpe3ZhciByPXkodCksZT0iW29iamVjdCBPYmplY3RdIj09cj90LmNvbnN0cnVjdG9yOnZvaWQgMCxuPWU/eihlKToiIjtpZihuKXN3aXRjaChuKXtjYXNlIEtyOnJldHVybiJbb2JqZWN0IERhdGFWaWV3XSI7Y2FzZSBXcjpyZXR1cm4iW29iamVjdCBNYXBdIjtjYXNlIHFyOnJldHVybiJbb2JqZWN0IFByb21pc2VdIjtjYXNlIEdyOnJldHVybiJbb2JqZWN0IFNldF0iO2Nhc2UgSHI6cmV0dXJuIltvYmplY3QgV2Vha01hcF0ifXJldHVybiByfSk7dmFyIFFyPUpyLFhyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIFlyPWZ1bmN0aW9uKHIsZSxuLG8sdSxhKXt2YXIgaT10KHIpLGM9dChlKSxmPWk/IltvYmplY3QgQXJyYXldIjpRcihyKSxsPWM/IltvYmplY3QgQXJyYXldIjpRcihlKSx2PSJbb2JqZWN0IE9iamVjdF0iPT0oZj0iW29iamVjdCBBcmd1bWVudHNdIj09Zj8iW29iamVjdCBPYmplY3RdIjpmKSxzPSJbb2JqZWN0IE9iamVjdF0iPT0obD0iW29iamVjdCBBcmd1bWVudHNdIj09bD8iW29iamVjdCBPYmplY3RdIjpsKSxiPWY9PWw7aWYoYiYmZHIocikpe2lmKCFkcihlKSlyZXR1cm4hMTtpPSEwLHY9ITF9aWYoYiYmIXYpcmV0dXJuIGF8fChhPW5ldyBWdCksaXx8UHIocik/UXQocixlLG4sbyx1LGEpOmVyKHIsZSxmLG4sbyx1LGEpO2lmKCEoMSZuKSl7dmFyIHA9diYmWHIuY2FsbChyLCJfX3dyYXBwZWRfXyIpLHk9cyYmWHIuY2FsbChlLCJfX3dyYXBwZWRfXyIpO2lmKHB8fHkpe3ZhciBoPXA/ci52YWx1ZSgpOnIsZD15P2UudmFsdWUoKTplO3JldHVybiBhfHwoYT1uZXcgVnQpLHUoaCxkLG4sbyxhKX19cmV0dXJuISFiJiYoYXx8KGE9bmV3IFZ0KSxVcihyLGUsbixvLHUsYSkpfTt2YXIgWnI9ZnVuY3Rpb24gdChyLGUsbixvLHUpe3JldHVybiByPT09ZXx8KG51bGw9PXJ8fG51bGw9PWV8fCFoKHIpJiYhaChlKT9yIT1yJiZlIT1lOllyKHIsZSxuLG8sdCx1KSl9O3ZhciB0ZT1mdW5jdGlvbih0LHIsZSxuKXt2YXIgbz1lLmxlbmd0aCx1PW8sYT0hbjtpZihudWxsPT10KXJldHVybiF1O2Zvcih0PU9iamVjdCh0KTtvLS07KXt2YXIgaT1lW29dO2lmKGEmJmlbMl0/aVsxXSE9PXRbaVswXV06IShpWzBdaW4gdCkpcmV0dXJuITF9Zm9yKDsrK288dTspe3ZhciBjPShpPWVbb10pWzBdLGY9dFtjXSxsPWlbMV07aWYoYSYmaVsyXSl7aWYodm9pZCAwPT09ZiYmIShjIGluIHQpKXJldHVybiExfWVsc2V7dmFyIHY9bmV3IFZ0O2lmKG4pdmFyIHM9bihmLGwsYyx0LHIsdik7aWYoISh2b2lkIDA9PT1zP1pyKGwsZiwzLG4sdik6cykpcmV0dXJuITF9fXJldHVybiEwfTt2YXIgcmU9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PXQmJiFPKHQpfTt2YXIgZWU9ZnVuY3Rpb24odCl7Zm9yKHZhciByPUZyKHQpLGU9ci5sZW5ndGg7ZS0tOyl7dmFyIG49cltlXSxvPXRbbl07cltlXT1bbixvLHJlKG8pXX1yZXR1cm4gcn07dmFyIG5lPWZ1bmN0aW9uKHQscil7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiYoZVt0XT09PXImJih2b2lkIDAhPT1yfHx0IGluIE9iamVjdChlKSkpfX07dmFyIG9lPWZ1bmN0aW9uKHQpe3ZhciByPWVlKHQpO3JldHVybiAxPT1yLmxlbmd0aCYmclswXVsyXT9uZShyWzBdWzBdLHJbMF1bMV0pOmZ1bmN0aW9uKGUpe3JldHVybiBlPT09dHx8dGUoZSx0LHIpfX07dmFyIHVlPWZ1bmN0aW9uKHQscil7cmV0dXJuIG51bGwhPXQmJnIgaW4gT2JqZWN0KHQpfTt2YXIgYWU9ZnVuY3Rpb24ocixlLG4pe2Zvcih2YXIgbz0tMSx1PShlPUF0KGUscikpLmxlbmd0aCxhPSExOysrbzx1Oyl7dmFyIGk9U3QoZVtvXSk7aWYoIShhPW51bGwhPXImJm4ocixpKSkpYnJlYWs7cj1yW2ldfXJldHVybiBhfHwrK28hPXU/YTohISh1PW51bGw9PXI/MDpyLmxlbmd0aCkmJl9yKHUpJiZncihpLHUpJiYodChyKXx8eXIocikpfTt2YXIgaWU9ZnVuY3Rpb24odCxyKXtyZXR1cm4gbnVsbCE9dCYmYWUodCxyLHVlKX07dmFyIGNlPWZ1bmN0aW9uKHQscil7cmV0dXJuIF8odCkmJnJlKHIpP25lKFN0KHQpLHIpOmZ1bmN0aW9uKGUpe3ZhciBuPXh0KGUsdCk7cmV0dXJuIHZvaWQgMD09PW4mJm49PT1yP2llKGUsdCk6WnIocixuLDMpfX07dmFyIGZlPWZ1bmN0aW9uKHQpe3JldHVybiB0fTt2YXIgbGU9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiBudWxsPT1yP3ZvaWQgMDpyW3RdfX07dmFyIHZlPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihyKXtyZXR1cm4gUHQocix0KX19O3ZhciBzZT1mdW5jdGlvbih0KXtyZXR1cm4gXyh0KT9sZShTdCh0KSk6dmUodCl9O3ZhciBiZT1mdW5jdGlvbihyKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygcj9yOm51bGw9PXI/ZmU6Im9iamVjdCI9PXR5cGVvZiByP3Qocik/Y2UoclswXSxyWzFdKTpvZShyKTpzZShyKX07dmFyIHBlPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihyLGUsbil7Zm9yKHZhciBvPS0xLHU9T2JqZWN0KHIpLGE9bihyKSxpPWEubGVuZ3RoO2ktLTspe3ZhciBjPWFbdD9pOisrb107aWYoITE9PT1lKHVbY10sYyx1KSlicmVha31yZXR1cm4gcn19KCk7dmFyIHllPWZ1bmN0aW9uKHQscil7cmV0dXJuIGZ1bmN0aW9uKGUsbil7aWYobnVsbD09ZSlyZXR1cm4gZTtpZigha3IoZSkpcmV0dXJuIHQoZSxuKTtmb3IodmFyIG89ZS5sZW5ndGgsdT1yP286LTEsYT1PYmplY3QoZSk7KHI/dS0tOisrdTxvKSYmITEhPT1uKGFbdV0sdSxhKTspO3JldHVybiBlfX0oKGZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJnBlKHQscixGcil9KSk7dmFyIGhlPWZ1bmN0aW9uKHQscil7dmFyIGU9LTEsbj1rcih0KT9BcnJheSh0Lmxlbmd0aCk6W107cmV0dXJuIHllKHQsKGZ1bmN0aW9uKHQsbyx1KXtuWysrZV09cih0LG8sdSl9KSksbn07dmFyIGRlPWZ1bmN0aW9uKHIsZSl7cmV0dXJuKHQocik/Z3Q6aGUpKHIsYmUoZSkpfSxqZT1BcnJheS5wcm90b3R5cGUuam9pbjt2YXIgZ2U9ZnVuY3Rpb24odCxyKXtyZXR1cm4gbnVsbD09dD8iIjpqZS5jYWxsKHQscil9O3ZhciBfZT1mdW5jdGlvbihyKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHJ8fCF0KHIpJiZoKHIpJiYiW29iamVjdCBTdHJpbmddIj09eShyKX0sT2U9bGUoImxlbmd0aCIpLHdlPVJlZ0V4cCgiW1xcdTIwMGRcXHVkODAwLVxcdWRmZmZcXHUwMzAwLVxcdTAzNmZcXHVmZTIwLVxcdWZlMmZcXHUyMGQwLVxcdTIwZmZcXHVmZTBlXFx1ZmUwZl0iKTt2YXIgbWU9ZnVuY3Rpb24odCl7cmV0dXJuIHdlLnRlc3QodCl9LEFlPSJbXFx1ZDgwMC1cXHVkZmZmXSIsU2U9IltcXHUwMzAwLVxcdTAzNmZcXHVmZTIwLVxcdWZlMmZcXHUyMGQwLVxcdTIwZmZdIixQZT0iXFx1ZDgzY1tcXHVkZmZiLVxcdWRmZmZdIix4ZT0iW15cXHVkODAwLVxcdWRmZmZdIix6ZT0iKD86XFx1ZDgzY1tcXHVkZGU2LVxcdWRkZmZdKXsyfSIsRWU9IltcXHVkODAwLVxcdWRiZmZdW1xcdWRjMDAtXFx1ZGZmZl0iLEllPSIoPzoiK1NlKyJ8IitQZSsiKSIrIj8iLCRlPSJbXFx1ZmUwZVxcdWZlMGZdPyIrSWUrKCIoPzpcXHUyMDBkKD86IitbeGUsemUsRWVdLmpvaW4oInwiKSsiKVtcXHVmZTBlXFx1ZmUwZl0/IitJZSsiKSoiKSxOZT0iKD86IitbeGUrU2UrIj8iLFNlLHplLEVlLEFlXS5qb2luKCJ8IikrIikiLFRlPVJlZ0V4cChQZSsiKD89IitQZSsiKXwiK05lKyRlLCJnIik7dmFyIE1lPWZ1bmN0aW9uKHQpe2Zvcih2YXIgcj1UZS5sYXN0SW5kZXg9MDtUZS50ZXN0KHQpOykrK3I7cmV0dXJuIHJ9O3ZhciBrZT1mdW5jdGlvbih0KXtyZXR1cm4gbWUodCk/TWUodCk6T2UodCl9O3ZhciBGZT1mdW5jdGlvbih0KXtpZihudWxsPT10KXJldHVybiAwO2lmKGtyKHQpKXJldHVybiBfZSh0KT9rZSh0KTp0Lmxlbmd0aDt2YXIgcj1Rcih0KTtyZXR1cm4iW29iamVjdCBNYXBdIj09cnx8IltvYmplY3QgU2V0XSI9PXI/dC5zaXplOk1yKHQpLmxlbmd0aH07dmFyIENlPWZ1bmN0aW9uKHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdHx8aCh0KSYmIltvYmplY3QgTnVtYmVyXSI9PXkodCl9O3ZhciBEZT1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK2U8biYmITEhPT1yKHRbZV0sZSx0KTspO3JldHVybiB0fSxVZT1mdW5jdGlvbigpe3RyeXt2YXIgdD1DKE9iamVjdCwiZGVmaW5lUHJvcGVydHkiKTtyZXR1cm4gdCh7fSwiIix7fSksdH1jYXRjaCh0KXt9fSgpO3ZhciBCZT1mdW5jdGlvbih0LHIsZSl7Il9fcHJvdG9fXyI9PXImJlVlP1VlKHQscix7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsdmFsdWU6ZSx3cml0YWJsZTohMH0pOnRbcl09ZX0sUmU9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt2YXIgTGU9ZnVuY3Rpb24odCxyLGUpe3ZhciBuPXRbcl07UmUuY2FsbCh0LHIpJiZKKG4sZSkmJih2b2lkIDAhPT1lfHxyIGluIHQpfHxCZSh0LHIsZSl9O3ZhciBWZT1mdW5jdGlvbih0LHIsZSxuKXt2YXIgbz0hZTtlfHwoZT17fSk7Zm9yKHZhciB1PS0xLGE9ci5sZW5ndGg7Kyt1PGE7KXt2YXIgaT1yW3VdLGM9bj9uKGVbaV0sdFtpXSxpLGUsdCk6dm9pZCAwO3ZvaWQgMD09PWMmJihjPXRbaV0pLG8/QmUoZSxpLGMpOkxlKGUsaSxjKX1yZXR1cm4gZX07dmFyIEtlPWZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJlZlKHIsRnIociksdCl9O3ZhciBXZT1mdW5jdGlvbih0KXt2YXIgcj1bXTtpZihudWxsIT10KWZvcih2YXIgZSBpbiBPYmplY3QodCkpci5wdXNoKGUpO3JldHVybiByfSxxZT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBHZT1mdW5jdGlvbih0KXtpZighTyh0KSlyZXR1cm4gV2UodCk7dmFyIHI9SXIodCksZT1bXTtmb3IodmFyIG4gaW4gdCkoImNvbnN0cnVjdG9yIiE9bnx8IXImJnFlLmNhbGwodCxuKSkmJmUucHVzaChuKTtyZXR1cm4gZX07dmFyIEhlPWZ1bmN0aW9uKHQpe3JldHVybiBrcih0KT96cih0LCEwKTpHZSh0KX07dmFyIEplPWZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJlZlKHIsSGUociksdCl9LFFlPWUoKGZ1bmN0aW9uKHQscil7dmFyIGU9ciYmIXIubm9kZVR5cGUmJnIsbj1lJiZ0JiYhdC5ub2RlVHlwZSYmdCxvPW4mJm4uZXhwb3J0cz09PWU/dS5CdWZmZXI6dm9pZCAwLGE9bz9vLmFsbG9jVW5zYWZlOnZvaWQgMDt0LmV4cG9ydHM9ZnVuY3Rpb24odCxyKXtpZihyKXJldHVybiB0LnNsaWNlKCk7dmFyIGU9dC5sZW5ndGgsbj1hP2EoZSk6bmV3IHQuY29uc3RydWN0b3IoZSk7cmV0dXJuIHQuY29weShuKSxufX0pKTt2YXIgWGU9ZnVuY3Rpb24odCxyKXt2YXIgZT0tMSxuPXQubGVuZ3RoO2ZvcihyfHwocj1BcnJheShuKSk7KytlPG47KXJbZV09dFtlXTtyZXR1cm4gcn07dmFyIFllPWZ1bmN0aW9uKHQscil7cmV0dXJuIFZlKHQsZnIodCkscil9LFplPSRyKE9iamVjdC5nZXRQcm90b3R5cGVPZixPYmplY3QpLHRuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM/ZnVuY3Rpb24odCl7Zm9yKHZhciByPVtdO3Q7KW5yKHIsZnIodCkpLHQ9WmUodCk7cmV0dXJuIHJ9OmFyO3ZhciBybj1mdW5jdGlvbih0LHIpe3JldHVybiBWZSh0LHRuKHQpLHIpfTt2YXIgZW49ZnVuY3Rpb24odCl7cmV0dXJuIG9yKHQsSGUsdG4pfSxubj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBvbj1mdW5jdGlvbih0KXt2YXIgcj10Lmxlbmd0aCxlPW5ldyB0LmNvbnN0cnVjdG9yKHIpO3JldHVybiByJiYic3RyaW5nIj09dHlwZW9mIHRbMF0mJm5uLmNhbGwodCwiaW5kZXgiKSYmKGUuaW5kZXg9dC5pbmRleCxlLmlucHV0PXQuaW5wdXQpLGV9O3ZhciB1bj1mdW5jdGlvbih0KXt2YXIgcj1uZXcgdC5jb25zdHJ1Y3Rvcih0LmJ5dGVMZW5ndGgpO3JldHVybiBuZXcgWHQocikuc2V0KG5ldyBYdCh0KSkscn07dmFyIGFuPWZ1bmN0aW9uKHQscil7dmFyIGU9cj91bih0LmJ1ZmZlcik6dC5idWZmZXI7cmV0dXJuIG5ldyB0LmNvbnN0cnVjdG9yKGUsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCl9LGNuPS9cdyokLzt2YXIgZm49ZnVuY3Rpb24odCl7dmFyIHI9bmV3IHQuY29uc3RydWN0b3IodC5zb3VyY2UsY24uZXhlYyh0KSk7cmV0dXJuIHIubGFzdEluZGV4PXQubGFzdEluZGV4LHJ9LGxuPWE/YS5wcm90b3R5cGU6dm9pZCAwLHZuPWxuP2xuLnZhbHVlT2Y6dm9pZCAwO3ZhciBzbj1mdW5jdGlvbih0KXtyZXR1cm4gdm4/T2JqZWN0KHZuLmNhbGwodCkpOnt9fTt2YXIgYm49ZnVuY3Rpb24odCxyKXt2YXIgZT1yP3VuKHQuYnVmZmVyKTp0LmJ1ZmZlcjtyZXR1cm4gbmV3IHQuY29uc3RydWN0b3IoZSx0LmJ5dGVPZmZzZXQsdC5sZW5ndGgpfTt2YXIgcG49ZnVuY3Rpb24odCxyLGUpe3ZhciBuPXQuY29uc3RydWN0b3I7c3dpdGNoKHIpe2Nhc2UiW29iamVjdCBBcnJheUJ1ZmZlcl0iOnJldHVybiB1bih0KTtjYXNlIltvYmplY3QgQm9vbGVhbl0iOmNhc2UiW29iamVjdCBEYXRlXSI6cmV0dXJuIG5ldyBuKCt0KTtjYXNlIltvYmplY3QgRGF0YVZpZXddIjpyZXR1cm4gYW4odCxlKTtjYXNlIltvYmplY3QgRmxvYXQzMkFycmF5XSI6Y2FzZSJbb2JqZWN0IEZsb2F0NjRBcnJheV0iOmNhc2UiW29iamVjdCBJbnQ4QXJyYXldIjpjYXNlIltvYmplY3QgSW50MTZBcnJheV0iOmNhc2UiW29iamVjdCBJbnQzMkFycmF5XSI6Y2FzZSJbb2JqZWN0IFVpbnQ4QXJyYXldIjpjYXNlIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIjpjYXNlIltvYmplY3QgVWludDE2QXJyYXldIjpjYXNlIltvYmplY3QgVWludDMyQXJyYXldIjpyZXR1cm4gYm4odCxlKTtjYXNlIltvYmplY3QgTWFwXSI6cmV0dXJuIG5ldyBuO2Nhc2UiW29iamVjdCBOdW1iZXJdIjpjYXNlIltvYmplY3QgU3RyaW5nXSI6cmV0dXJuIG5ldyBuKHQpO2Nhc2UiW29iamVjdCBSZWdFeHBdIjpyZXR1cm4gZm4odCk7Y2FzZSJbb2JqZWN0IFNldF0iOnJldHVybiBuZXcgbjtjYXNlIltvYmplY3QgU3ltYm9sXSI6cmV0dXJuIHNuKHQpfX0seW49T2JqZWN0LmNyZWF0ZSxobj1mdW5jdGlvbigpe2Z1bmN0aW9uIHQoKXt9cmV0dXJuIGZ1bmN0aW9uKHIpe2lmKCFPKHIpKXJldHVybnt9O2lmKHluKXJldHVybiB5bihyKTt0LnByb3RvdHlwZT1yO3ZhciBlPW5ldyB0O3JldHVybiB0LnByb3RvdHlwZT12b2lkIDAsZX19KCk7dmFyIGRuPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiIhPXR5cGVvZiB0LmNvbnN0cnVjdG9yfHxJcih0KT97fTpobihaZSh0KSl9O3ZhciBqbj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgTWFwXSI9PVFyKHQpfSxnbj1BciYmQXIuaXNNYXAsX249Z24/bXIoZ24pOmpuO3ZhciBPbj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgU2V0XSI9PVFyKHQpfSx3bj1BciYmQXIuaXNTZXQsbW49d24/bXIod24pOk9uLEFuPXt9O0FuWyJbb2JqZWN0IEFyZ3VtZW50c10iXT1BblsiW29iamVjdCBBcnJheV0iXT1BblsiW29iamVjdCBBcnJheUJ1ZmZlcl0iXT1BblsiW29iamVjdCBEYXRhVmlld10iXT1BblsiW29iamVjdCBCb29sZWFuXSJdPUFuWyJbb2JqZWN0IERhdGVdIl09QW5bIltvYmplY3QgRmxvYXQzMkFycmF5XSJdPUFuWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1BblsiW29iamVjdCBJbnQ4QXJyYXldIl09QW5bIltvYmplY3QgSW50MTZBcnJheV0iXT1BblsiW29iamVjdCBJbnQzMkFycmF5XSJdPUFuWyJbb2JqZWN0IE1hcF0iXT1BblsiW29iamVjdCBOdW1iZXJdIl09QW5bIltvYmplY3QgT2JqZWN0XSJdPUFuWyJbb2JqZWN0IFJlZ0V4cF0iXT1BblsiW29iamVjdCBTZXRdIl09QW5bIltvYmplY3QgU3RyaW5nXSJdPUFuWyJbb2JqZWN0IFN5bWJvbF0iXT1BblsiW29iamVjdCBVaW50OEFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQxNkFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQzMkFycmF5XSJdPSEwLEFuWyJbb2JqZWN0IEVycm9yXSJdPUFuWyJbb2JqZWN0IEZ1bmN0aW9uXSJdPUFuWyJbb2JqZWN0IFdlYWtNYXBdIl09ITE7dmFyIFNuPWZ1bmN0aW9uIHIoZSxuLG8sdSxhLGkpe3ZhciBjLGY9MSZuLGw9MiZuLHY9NCZuO2lmKG8mJihjPWE/byhlLHUsYSxpKTpvKGUpKSx2b2lkIDAhPT1jKXJldHVybiBjO2lmKCFPKGUpKXJldHVybiBlO3ZhciBzPXQoZSk7aWYocyl7aWYoYz1vbihlKSwhZilyZXR1cm4gWGUoZSxjKX1lbHNle3ZhciBiPVFyKGUpLHA9IltvYmplY3QgRnVuY3Rpb25dIj09Ynx8IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09YjtpZihkcihlKSlyZXR1cm4gUWUoZSxmKTtpZigiW29iamVjdCBPYmplY3RdIj09Ynx8IltvYmplY3QgQXJndW1lbnRzXSI9PWJ8fHAmJiFhKXtpZihjPWx8fHA/e306ZG4oZSksIWYpcmV0dXJuIGw/cm4oZSxKZShjLGUpKTpZZShlLEtlKGMsZSkpfWVsc2V7aWYoIUFuW2JdKXJldHVybiBhP2U6e307Yz1wbihlLGIsZil9fWl8fChpPW5ldyBWdCk7dmFyIHk9aS5nZXQoZSk7aWYoeSlyZXR1cm4geTtpLnNldChlLGMpLG1uKGUpP2UuZm9yRWFjaCgoZnVuY3Rpb24odCl7Yy5hZGQocih0LG4sbyx0LGUsaSkpfSkpOl9uKGUpJiZlLmZvckVhY2goKGZ1bmN0aW9uKHQsdSl7Yy5zZXQodSxyKHQsbixvLHUsZSxpKSl9KSk7dmFyIGg9cz92b2lkIDA6KHY/bD9lbjpDcjpsP0hlOkZyKShlKTtyZXR1cm4gRGUoaHx8ZSwoZnVuY3Rpb24odCx1KXtoJiYodD1lW3U9dF0pLExlKGMsdSxyKHQsbixvLHUsZSxpKSl9KSksY307dmFyIFBuPWZ1bmN0aW9uKHQpe3JldHVybiBTbih0LDUpfTtmdW5jdGlvbiB4bih0KXtsZXQgcj0hMTtyZXR1cm4gRXQodCk/cj0haXNOYU4oTnVtYmVyKHQpKTpmdW5jdGlvbih0KXtyZXR1cm4iW29iamVjdCBOdW1iZXJdIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX0odCkmJihyPSEwKSxyfWZ1bmN0aW9uIHpuKHQpe2lmKCFFdCh0KSYmIXhuKHQpJiYhZCh0KSlyZXR1cm4iIjtsZXQgcj0iIjt0cnl7cj1TdHJpbmcodCl9Y2F0Y2godCl7fXRyeXtyPXQudG9TdHJpbmcoKX1jYXRjaCh0KXt9cmV0dXJuIHJ9dmFyIEVuPU1hdGguY2VpbCxJbj1NYXRoLm1heDt2YXIgJG49ZnVuY3Rpb24odCxyLGUsbil7Zm9yKHZhciBvPS0xLHU9SW4oRW4oKHItdCkvKGV8fDEpKSwwKSxhPUFycmF5KHUpO3UtLTspYVtuP3U6KytvXT10LHQrPWU7cmV0dXJuIGF9O3ZhciBObj1mdW5jdGlvbih0LHIsZSl7aWYoIU8oZSkpcmV0dXJuITE7dmFyIG49dHlwZW9mIHI7cmV0dXJuISEoIm51bWJlciI9PW4/a3IoZSkmJmdyKHIsZS5sZW5ndGgpOiJzdHJpbmciPT1uJiZyIGluIGUpJiZKKGVbcl0sdCl9LFRuPS9ccy87dmFyIE1uPWZ1bmN0aW9uKHQpe2Zvcih2YXIgcj10Lmxlbmd0aDtyLS0mJlRuLnRlc3QodC5jaGFyQXQocikpOyk7cmV0dXJuIHJ9LGtuPS9eXHMrLzt2YXIgRm49ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC5zbGljZSgwLE1uKHQpKzEpLnJlcGxhY2Uoa24sIiIpOnR9LENuPS9eWy0rXTB4WzAtOWEtZl0rJC9pLERuPS9eMGJbMDFdKyQvaSxVbj0vXjBvWzAtN10rJC9pLEJuPXBhcnNlSW50O3ZhciBSbj1mdW5jdGlvbih0KXtpZigibnVtYmVyIj09dHlwZW9mIHQpcmV0dXJuIHQ7aWYoZCh0KSlyZXR1cm4gTmFOO2lmKE8odCkpe3ZhciByPSJmdW5jdGlvbiI9PXR5cGVvZiB0LnZhbHVlT2Y/dC52YWx1ZU9mKCk6dDt0PU8ocik/cisiIjpyfWlmKCJzdHJpbmciIT10eXBlb2YgdClyZXR1cm4gMD09PXQ/dDordDt0PUZuKHQpO3ZhciBlPURuLnRlc3QodCk7cmV0dXJuIGV8fFVuLnRlc3QodCk/Qm4odC5zbGljZSgyKSxlPzI6OCk6Q24udGVzdCh0KT9OYU46K3R9O3ZhciBMbj1mdW5jdGlvbih0KXtyZXR1cm4gdD9JbmZpbml0eT09PSh0PVJuKHQpKXx8LUluZmluaXR5PT09dD8xNzk3NjkzMTM0ODYyMzE1N2UyOTIqKHQ8MD8tMToxKTp0PT10P3Q6MDowPT09dD90OjB9O3ZhciBWbj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24ocixlLG4pe3JldHVybiBuJiYibnVtYmVyIiE9dHlwZW9mIG4mJk5uKHIsZSxuKSYmKGU9bj12b2lkIDApLHI9TG4ociksdm9pZCAwPT09ZT8oZT1yLHI9MCk6ZT1MbihlKSxuPXZvaWQgMD09PW4/cjxlPzE6LTE6TG4obiksJG4ocixlLG4sdCl9fSgpO2Z1bmN0aW9uIEtuKHQscj1udWxsLGU9e30pe20ocil8fChyPXQ9PnQpO2xldCBuPXh0KGUsImZvcmNlIiwhMSk7cmV0dXJuIEZ0KG4pfHwobj0hMSksZnVuY3Rpb24odCxyLGU9ITEpe2xldCBuPVtdO2lmKCFOdCh0KSYmIUl0KHQpKXJldHVybiByKHQsbnVsbCxbXSk7ZnVuY3Rpb24gbyh0KXtpZihOdCh0KSlyZXR1cm4gVm4oRmUodCkpO2lmKEl0KHQpKXtsZXQgcj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0KSxuPW51bGw7cmV0dXJuIGUmJihuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpLE50KHIpfHwocj1bXSksTnQobil8fChuPVtdKSxbLi4uciwuLi5uXX1yZXR1cm4gdH1yZXR1cm4gZnVuY3Rpb24gdChlLHUpe2lmKE50KGUpKXJldHVybiBvKGUpLm1hcCgobz0+e2xldCB1PWVbb10sYT1QbihuKTtyZXR1cm4gbi5wdXNoKG8pLHU9cih1LG8sYSksdT10KHUpLG4ucG9wKCksdX0pKTtpZihJdChlKSl7bGV0IHU9byhlKSxhPXt9O3JldHVybiB1Lm1hcCgobz0+e2xldCB1PWVbb10saT1QbihuKTtuLnB1c2gobyksdT1yKHUsbyxpKSx1PXQodSksbi5wb3AoKSxhW29dPXV9KSksYX1yZXR1cm4gZX0odCl9KHQscixuKX1mdW5jdGlvbiBXbih0LHIsZSl7cmV0dXJuIHIgaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxyLHt2YWx1ZTplLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtyXT1lLHR9dmFyIHFuPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3Q6ZmV9O3ZhciBHbj1mdW5jdGlvbihyLGUpe3JldHVybih0KHIpP0RlOnllKShyLHFuKGUpKX07dmFyIEhuPWZ1bmN0aW9uKHQscixlLG4pe2lmKCFPKHQpKXJldHVybiB0O2Zvcih2YXIgbz0tMSx1PShyPUF0KHIsdCkpLmxlbmd0aCxhPXUtMSxpPXQ7bnVsbCE9aSYmKytvPHU7KXt2YXIgYz1TdChyW29dKSxmPWU7aWYoIl9fcHJvdG9fXyI9PT1jfHwiY29uc3RydWN0b3IiPT09Y3x8InByb3RvdHlwZSI9PT1jKXJldHVybiB0O2lmKG8hPWEpe3ZhciBsPWlbY107dm9pZCAwPT09KGY9bj9uKGwsYyxpKTp2b2lkIDApJiYoZj1PKGwpP2w6Z3IocltvKzFdKT9bXTp7fSl9TGUoaSxjLGYpLGk9aVtjXX1yZXR1cm4gdH07dmFyIEpuPWZ1bmN0aW9uKHQscixlKXtyZXR1cm4gbnVsbD09dD90OkhuKHQscixlKX07dmFyIFFuPWZ1bmN0aW9uKHQpe3ZhciByPW51bGw9PXQ/MDp0Lmxlbmd0aDtyZXR1cm4gcj90W3ItMV06dm9pZCAwfTt2YXIgWG49ZnVuY3Rpb24odCxyLGUpe3ZhciBuPS0xLG89dC5sZW5ndGg7cjwwJiYocj0tcj5vPzA6bytyKSwoZT1lPm8/bzplKTwwJiYoZSs9byksbz1yPmU/MDplLXI+Pj4wLHI+Pj49MDtmb3IodmFyIHU9QXJyYXkobyk7KytuPG87KXVbbl09dFtuK3JdO3JldHVybiB1fTt2YXIgWW49ZnVuY3Rpb24odCxyKXtyZXR1cm4gci5sZW5ndGg8Mj90OlB0KHQsWG4ociwwLC0xKSl9O3ZhciBabj1mdW5jdGlvbih0LHIpe3JldHVybiByPUF0KHIsdCksbnVsbD09KHQ9WW4odCxyKSl8fGRlbGV0ZSB0W1N0KFFuKHIpKV19LHRvPUZ1bmN0aW9uLnByb3RvdHlwZSxybz1PYmplY3QucHJvdG90eXBlLGVvPXRvLnRvU3RyaW5nLG5vPXJvLmhhc093blByb3BlcnR5LG9vPWVvLmNhbGwoT2JqZWN0KTt2YXIgdW89ZnVuY3Rpb24odCl7aWYoIWgodCl8fCJbb2JqZWN0IE9iamVjdF0iIT15KHQpKXJldHVybiExO3ZhciByPVplKHQpO2lmKG51bGw9PT1yKXJldHVybiEwO3ZhciBlPW5vLmNhbGwociwiY29uc3RydWN0b3IiKSYmci5jb25zdHJ1Y3RvcjtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmZSBpbnN0YW5jZW9mIGUmJmVvLmNhbGwoZSk9PW9vfTt2YXIgYW89ZnVuY3Rpb24odCl7cmV0dXJuIHVvKHQpP3ZvaWQgMDp0fSxpbz1hP2EuaXNDb25jYXRTcHJlYWRhYmxlOnZvaWQgMDt2YXIgY289ZnVuY3Rpb24ocil7cmV0dXJuIHQocil8fHlyKHIpfHwhIShpbyYmciYmcltpb10pfTt2YXIgZm89ZnVuY3Rpb24gdChyLGUsbixvLHUpe3ZhciBhPS0xLGk9ci5sZW5ndGg7Zm9yKG58fChuPWNvKSx1fHwodT1bXSk7KythPGk7KXt2YXIgYz1yW2FdO2U+MCYmbihjKT9lPjE/dChjLGUtMSxuLG8sdSk6bnIodSxjKTpvfHwodVt1Lmxlbmd0aF09Yyl9cmV0dXJuIHV9O3ZhciBsbz1mdW5jdGlvbih0KXtyZXR1cm4obnVsbD09dD8wOnQubGVuZ3RoKT9mbyh0LDEpOltdfTt2YXIgdm89ZnVuY3Rpb24odCxyLGUpe3N3aXRjaChlLmxlbmd0aCl7Y2FzZSAwOnJldHVybiB0LmNhbGwocik7Y2FzZSAxOnJldHVybiB0LmNhbGwocixlWzBdKTtjYXNlIDI6cmV0dXJuIHQuY2FsbChyLGVbMF0sZVsxXSk7Y2FzZSAzOnJldHVybiB0LmNhbGwocixlWzBdLGVbMV0sZVsyXSl9cmV0dXJuIHQuYXBwbHkocixlKX0sc289TWF0aC5tYXg7dmFyIGJvPWZ1bmN0aW9uKHQscixlKXtyZXR1cm4gcj1zbyh2b2lkIDA9PT1yP3QubGVuZ3RoLTE6ciwwKSxmdW5jdGlvbigpe2Zvcih2YXIgbj1hcmd1bWVudHMsbz0tMSx1PXNvKG4ubGVuZ3RoLXIsMCksYT1BcnJheSh1KTsrK288dTspYVtvXT1uW3Irb107bz0tMTtmb3IodmFyIGk9QXJyYXkocisxKTsrK288cjspaVtvXT1uW29dO3JldHVybiBpW3JdPWUoYSksdm8odCx0aGlzLGkpfX07dmFyIHBvPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiB0fX0seW89VWU/ZnVuY3Rpb24odCxyKXtyZXR1cm4gVWUodCwidG9TdHJpbmciLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMSx2YWx1ZTpwbyhyKSx3cml0YWJsZTohMH0pfTpmZSxobz1EYXRlLm5vdzt2YXIgam89ZnVuY3Rpb24odCl7dmFyIHI9MCxlPTA7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49aG8oKSxvPTE2LShuLWUpO2lmKGU9bixvPjApe2lmKCsrcj49ODAwKXJldHVybiBhcmd1bWVudHNbMF19ZWxzZSByPTA7cmV0dXJuIHQuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyl9fSh5byk7dmFyIGdvPWZ1bmN0aW9uKHQpe3JldHVybiBqbyhibyh0LHZvaWQgMCxsbyksdCsiIil9KChmdW5jdGlvbih0LHIpe3ZhciBlPXt9O2lmKG51bGw9PXQpcmV0dXJuIGU7dmFyIG49ITE7cj1ndChyLChmdW5jdGlvbihyKXtyZXR1cm4gcj1BdChyLHQpLG58fChuPXIubGVuZ3RoPjEpLHJ9KSksVmUodCxlbih0KSxlKSxuJiYoZT1TbihlLDcsYW8pKTtmb3IodmFyIG89ci5sZW5ndGg7by0tOylabihlLHJbb10pO3JldHVybiBlfSkpO2Z1bmN0aW9uIF9vKHQscil7dmFyIGU9T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtyJiYobj1uLmZpbHRlcigoZnVuY3Rpb24ocil7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxyKS5lbnVtZXJhYmxlfSkpKSxlLnB1c2guYXBwbHkoZSxuKX1yZXR1cm4gZX1mdW5jdGlvbiBPbyh0KXtmb3IodmFyIHI9MTtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKXt2YXIgZT1udWxsIT1hcmd1bWVudHNbcl0/YXJndW1lbnRzW3JdOnt9O3IlMj9fbyhPYmplY3QoZSksITApLmZvckVhY2goKGZ1bmN0aW9uKHIpe1duKHQscixlW3JdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKGUpKTpfbyhPYmplY3QoZSkpLmZvckVhY2goKGZ1bmN0aW9uKHIpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LHIsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHIpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiB3byh0LHI9e30pe2xldCBlPSIkbGV2ZWwiLG49IiRwYXJlbnRzIjtpZighTXQodCkpcmV0dXJuW107bGV0IG89eHQociwiYmluZEtleSIsbnVsbCk7RXQobyl8fChvPSJpZCIpO2xldCB1PXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KHUpfHwodT0icGFyZW50SWQiKTtsZXQgYT14dChyLCJiaW5kQ2hpbGRyZW4iLG51bGwpO0V0KGEpfHwoYT0iY2hpbGRyZW4iKTtsZXQgaT14dChyLCJzYXZlRXh0UHJvcHMiLG51bGwpO3JldHVybiBGdChpKXx8KGk9ITEpLGZ1bmN0aW9uKHQpe2xldCByPVtdO2Z1bmN0aW9uIGModCl7cmV0dXJuIGk/dDpnbyh0LFtlLG5dKX1sZXQgZj17fTtyZXR1cm4gR24odCwoKGUsbik9PntpZigwPT09ZS4kbGV2ZWwpe2xldCB0PWMoZSk7ci5wdXNoKHQpLGZbZVtvXV09W25dfWVsc2V7bGV0IG49ZnVuY3Rpb24ocil7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspe2xldCBuPXRbZV07aWYoclt1XT09PW5bb10pcmV0dXJuIG59cmV0dXJuIG51bGx9KGUpO2lmKG51bGwhPT1uKXtsZXQgdD1mW25bb11dO3Q9Wy4uLnQsYV07bGV0IHU9eHQocix0LFtdKSxpPWMoZSk7dS5wdXNoKGkpLGZbZVtvXV09Wy4uLnQsdS5sZW5ndGgtMV0sSm4ocix0LHUpfWVsc2UgY29uc29sZS5sb2coYGNhbiBub3QgZmluZCBwYXJlbnQgZm9yICR7eHQoZSx1KX1gKX19KSkscn0odD1mdW5jdGlvbih0KXtsZXQgcj1bXTtmdW5jdGlvbiBhKGEpe2xldCBpPVtdO0duKHQsKCh0LGMpPT57bGV0IGY9eHQodCx1KSxsPXh0KGEsbyk7aWYoZiYmbCYmZj09PWwpe2xldCB1PXh0KGEsbixbXSk7dT1Qbih1KSx1LnB1c2goYVtvXSksci5wdXNoKE9vKHtbZV06YS4kbGV2ZWwrMSxbbl06dX0sdCkpfWVsc2UgaS5wdXNoKHQpfSkpLHQ9aX1pZih0PVBuKHQpLGZ1bmN0aW9uKCl7bGV0IG89W107R24odCwoKHQsYSk9PntUdCh0W3VdKT9yLnB1c2goT28oe1tlXTowLFtuXTpbXX0sdCkpOm8ucHVzaCh0KX0pKSx0PW99KCksMD09PXIubGVuZ3RoKXJldHVybiByO2xldCBpPS0xO2Zvcig7aSs9MSwhKGk+ci5sZW5ndGgtMSk7KXtpZihhKHJbaV0pLDA9PT10Lmxlbmd0aClicmVha31yZXR1cm4gcn0odCkpfWZ1bmN0aW9uIG1vKHQscj17fSl7aWYoISR0KHQpJiYhTXQodCkpcmV0dXJuW107bGV0IGU9eHQociwiYmluZEtleSIsbnVsbCk7RXQoZSl8fChlPSJpZCIpO2xldCBuPXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KG4pfHwobj0icGFyZW50SWQiKTtsZXQgbz14dChyLCJiaW5kVGV4dCIsbnVsbCk7RXQobyl8fChvPSJ0ZXh0Iik7bGV0IHU9eHQociwiYmluZENoaWxkcmVuIixudWxsKTtFdCh1KXx8KHU9ImNoaWxkcmVuIik7bGV0IGE9eHQociwiYmluZFR5cGUiLG51bGwpO0V0KGEpfHwoYT0idHlwZSIpO2xldCBpPXh0KHIsImJpbmROdW1PZkNoaWxyZW4iLG51bGwpO0V0KGkpfHwoaT0ibnVtT2ZDaGlscmVuIik7bGV0IGM9eHQociwiYmluZFJvb3QiLG51bGwpO0V0KGMpfHwoYz0icm9vdCIpO2xldCBmPXh0KHIsInNhdmVFeHRQcm9wcyIsbnVsbCk7cmV0dXJuIEZ0KGYpfHwoZj0hMSksRXQoYykmJih0PXtbY106dH0pLHdvKGZ1bmN0aW9uKHQscj17fSl7aWYoISR0KHQpJiYhTXQodCkpcmV0dXJuW107bGV0IGU9eHQociwiYmluZEtleSIsbnVsbCk7RXQoZSl8fChlPSJpZCIpO2xldCBuPXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KG4pfHwobj0icGFyZW50SWQiKTtsZXQgbz14dChyLCJiaW5kQmVsb25nIixudWxsKTtFdChvKXx8KG89ImtleSIpO2xldCB1PXh0KHIsImJpbmRUZXh0IixudWxsKTtFdCh1KXx8KHU9InRleHQiKTtsZXQgYT14dChyLCJiaW5kVHlwZSIsbnVsbCk7RXQoYSl8fChhPSJ0eXBlIik7bGV0IGk9eHQociwiYmluZE51bU9mQ2hpbHJlbiIsbnVsbCk7ZnVuY3Rpb24gYyh0LHIsZSl7dD1Qbih0KSx0PWRlKHQsKHQ9PmQodCk/em4odCk6dCkpLGQocikmJihyPXpuKHIpKSxkKGUpJiYoZT16bihlKSksKEV0KHIpfHx4bihyKSkmJnQucHVzaChyKTtsZXQgbj1nZSh0LCItIik7cmV0dXJuKEV0KGUpfHx4bihlKSkmJihuPWAke2V9LSR7bn1gKSxufUV0KGkpfHwoaT0ibnVtT2ZDaGlscmVuIik7bGV0IGY9W107cmV0dXJuIEtuKHQsKCh0LHIsbCk9PntsZXQgdj1jKGwscikscz1jKGwsbnVsbCksYj0ibm9kZSI7SXQodCk/Yj0ib2JqZWN0IjpOdCh0KSYmKGI9ImFycmF5Iik7bGV0IHA9e1tlXTp2LFtuXTpzLFthXTpifTtpZigoRXQocil8fENlKHIpKSYmKHBbb109ciksSXQodCl8fE50KHQpfHwocFt1XT10KSxJdCh0KXx8TnQodCkpe2xldCByPUZlKHQpO3BbaV09cn1yZXR1cm4gZi5wdXNoKHApLHR9KSx7Zm9yY2U6ITB9KSxmfSh0LHtiaW5kS2V5OmUsYmluZFBhcmVudDpuLGJpbmRUZXh0Om8sYmluZFR5cGU6YSxiaW5kTnVtT2ZDaGlscmVuOml9KSx7YmluZEtleTplLGJpbmRQYXJlbnQ6bixiaW5kQ2hpbGRyZW46dSxzYXZlRXh0UHJvcHM6Zn0pfWFzeW5jIGZ1bmN0aW9uIGNvbnZlcnRUb1RyZWVXayh0LHI9e30pe3JldHVybiBtbyh0LHIpfQoKbGV0IGluc3RhbmNlID0gbnVsbApmdW5jdGlvbiBpbml0KGlucHV0KXsKCiAgICAvL2luaXQKICAgIGxldCByCiAgICAKICAgICAgICByID0gewogICAgICAgICAgICBtYWluOiBjb252ZXJ0VG9UcmVlV2sKICAgICAgICB9CiAgICAgICAgCgogICAgLy9vbgogICAgCgogICAgLy9zYXZlCiAgICBpbnN0YW5jZSA9IHIKCn0KCmZ1bmN0aW9uIHNlbmRNZXNzYWdlKGRhdGEpIHsKICAgIAogICAgICAgIHNlbGYucG9zdE1lc3NhZ2UoZGF0YSkKICAgICAgICAKfQoKYXN5bmMgZnVuY3Rpb24gcnVuKGRhdGEpIHsKICAgIC8vIGNvbnNvbGUubG9nKCdpbm5lciB3b3JrZXIgcnVuJyxkYXRhKQoKICAgIC8vbW9kZQogICAgbGV0IG1vZGUgPSBkYXRhLm1vZGUKCiAgICAvL2NoZWNrCiAgICBpZihtb2RlICE9PSAnaW5pdCcgJiYgbW9kZSAhPT0gJ2NhbGwnKXsKICAgICAgICByZXR1cm4KICAgIH0KCiAgICAvL2luaXQKICAgIGlmKG1vZGUgPT09ICdpbml0Jyl7CiAgICAgICAgCiAgICAgICAgdHJ5ewoKICAgICAgICAgICAgLy90eXBlCiAgICAgICAgICAgIGxldCB0eXBlID0gZGF0YS50eXBlCgogICAgICAgICAgICAvL2lucHV0CiAgICAgICAgICAgIGxldCBpbnB1dCA9IGRhdGEuaW5wdXQKICAgIAogICAgICAgICAgICAvL2luc3RhbmNlCiAgICAgICAgICAgIGlmKHR5cGUgPT09ICdmdW5jdGlvbicpewogICAgICAgICAgICAgICAgaW5pdCguLi5pbnB1dCkKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmKHR5cGUgPT09ICdvYmplY3QnKXsKICAgICAgICAgICAgICAgIGluc3RhbmNlID0gY29udmVydFRvVHJlZVdrCiAgICAgICAgICAgIH0KCiAgICAgICAgfQogICAgICAgIGNhdGNoKGVycil7CiAgICAgICAgCiAgICAgICAgICAgIC8vc2VuZE1lc3NhZ2UKICAgICAgICAgICAgbGV0IHJlcyA9IHsKICAgICAgICAgICAgICAgIG1vZGU6ICdlbWl0JywKICAgICAgICAgICAgICAgIGV2TmFtZTogJ2Vycm9yJywKICAgICAgICAgICAgICAgIG1zZzogZXJyLAogICAgICAgICAgICB9CiAgICAgICAgICAgIHNlbmRNZXNzYWdlKHJlcykKCiAgICAgICAgfQogICAgICAgICAgICAKICAgIH0KCiAgICAvL2NoZWNrCiAgICBpZihtb2RlID09PSAnY2FsbCcpewogICAgICAgIGxldCBzdGF0ZSA9ICcnCiAgICAgICAgbGV0IG1zZyA9IG51bGwKCiAgICAgICAgdHJ5ewoKICAgICAgICAgICAgLy9mdW4KICAgICAgICAgICAgbGV0IGZ1biA9IGluc3RhbmNlW2RhdGEuZnVuXQoKICAgICAgICAgICAgLy9pbnB1dAogICAgICAgICAgICBsZXQgaW5wdXQgPSBkYXRhLmlucHV0CgogICAgICAgICAgICAvL2V4ZWMKICAgICAgICAgICAgYXdhaXQgZnVuKC4uLmlucHV0KQogICAgICAgICAgICAgICAgLnRoZW4oKHN1YykgPT4gewogICAgICAgICAgICAgICAgICAgIHN0YXRlPSdzdWNjZXNzJwogICAgICAgICAgICAgICAgICAgIG1zZz1zdWMKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4gewogICAgICAgICAgICAgICAgICAgIHN0YXRlPSdlcnJvcicKICAgICAgICAgICAgICAgICAgICBtc2c9ZXJyCiAgICAgICAgICAgICAgICB9KQoKICAgICAgICB9CiAgICAgICAgY2F0Y2goZXJyKXsKICAgICAgICAgICAgc3RhdGUgPSAnZXJyb3InCiAgICAgICAgICAgIG1zZyA9IGVycgogICAgICAgIH0KICAgICAgICAKICAgICAgICAvL3NlbmRNZXNzYWdlCiAgICAgICAgbGV0IHJlcyA9IHsKICAgICAgICAgICAgbW9kZTogJ3JldHVybicsCiAgICAgICAgICAgIGlkOiBkYXRhLmlkLAogICAgICAgICAgICBmdW46IGRhdGEuZnVuLAogICAgICAgICAgICBzdGF0ZSwKICAgICAgICAgICAgbXNnLAogICAgICAgIH0KICAgICAgICBzZW5kTWVzc2FnZShyZXMpCgogICAgfQoKfQoKZnVuY3Rpb24gcmVjdk1lc3NhZ2UoZGF0YSkgewogICAgLy8gY29uc29sZS5sb2coJ2lubmVyIHdvcmtlciByZWN2OicsIGRhdGEpCgogICAgLy9kYXRhUmVjdgogICAgbGV0IGRhdGFSZWN2ID0gZGF0YQoKICAgIC8vcnVuCiAgICBydW4oZGF0YVJlY3YpCgp9CgoKICAgICAgICBzZWxmLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgIHJlY3ZNZXNzYWdlKGUuZGF0YSkKICAgICAgICB9CiAgICAgICAgCgo="));function t(){var t=n();var r=function(n){try{var e=new Blob([n]),t=window.URL||window.webkitURL;return new Worker(t.createObjectURL(e))}catch(n){i(n)}}(e);if(!r)return i("invalid worker"),null;function o(){var n=function(){var n,e,t=new Promise((function(){n=arguments[0],e=arguments[1]}));return t.resolve=n,t.reject=e,t}(),e=function(){for(var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,e=[],t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),r=t.length,o=0;o<n;o++)e[o]=t[0|Math.random()*r];return e.join("")}(),o={mode:"call",id:e,fun:"main",input:Array.prototype.slice.call(arguments)};return r.postMessage(o),t.once(e,(function(e){"success"===e.state?n.resolve(e.msg):n.reject(e.msg)})),n}function i(n){t.emit("error",n)}return r.onmessage=function(n){!function(n){var e=n,r=e.mode;"emit"!==r&&"return"!==r||("emit"===r&&t.emit(e.evName,e.msg),"return"===r&&t.emit(e.id,e))}(n.data)},r.onerror=i,function(){var n={mode:"init",type:"function",input:Array.prototype.slice.call(arguments)};r.postMessage(n)}(Array.prototype.slice.call(arguments)),t.main=o,t.main=o,t.terminate=function(){r?(r.terminate(),r=void 0):i("worker has been terminated")},t}JI=function(){var n,e=(n=OI.mark((function n(){var e,r,o,i=arguments;return OI.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e=Array.prototype.slice.call(i),r=t(),n.next=4,r.main.apply(r,RI(e)).finally((function(){r.terminate()}));case 4:return o=n.sent,n.abrupt("return",o);case 6:case"end":return n.stop()}}),n)})),function(){var e=this,t=arguments;return new Promise((function(r,o){var i=n.apply(e,t);function l(n){LI(i,r,o,l,a,"next",n)}function a(n){LI(i,r,o,l,a,"throw",n)}l(void 0)}))});return function(){return e.apply(this,arguments)}}()}();var $I=JI,QI={components:{WTree:Vb},props:{data:{type:[Array,Object],default:()=>{}},viewHeightMax:{type:Number,default:400},defaultDisplayLevel:{type:Number,default:null},indent:{type:Number,default:1},iconSize:{type:Number,default:24},iconToggleColor:{type:String,default:"grey"},iconToggleBackgroundColor:{type:String,default:"transparent"},iconToggleBackgroundColorHover:{type:String,default:"rgba(128,128,128,0.15)"},filterKeywords:{type:String,default:""},filterFunction:{type:Function,default:null},loadingText:{type:String,default:"Loading..."},noResultsText:{type:String,default:"No results"},searchingText:{type:String,default:"Searching..."},defItemHeight:{type:Number,default:24},itemsPreload:{type:Number,default:5},keyColor:{type:String,default:"grey darken-2"},keyNumbersColor:{type:String,default:"grey lighten-1"},numColor:{type:String,default:"indigo accent-2"},strColor:{type:String,default:"orange accent-2"},bolColor:{type:String,default:"light-green lighten-1"},funColor:{type:String,default:"purple accent-2"},defaultColor:{type:String,default:"grey darken-4"},rippleColor:{type:String,default:"rgba(200,200,200,0.4)"},show:{type:Boolean,default:!0}},data:function(){return{lockFromSetData:!1,useColors:{},root:"___root___",lineNumberWidth:0}},watch:{data:{immediate:!0,deep:!0,handler(n){this.setData(n)}}},computed:{changeColors:function(){return this.convertColors(),""},useItemHeightMin:function(){return`min-height:${Math.max(this.iconSize,this.defItemHeight)}px;`}},methods:{convertColors:function(){let n=this;if(ks(n.useColors))return;let e={numColor:fd(n.numColor),strColor:fd(n.strColor),bolColor:fd(n.bolColor),funColor:fd(n.funColor),defaultColor:fd(n.defaultColor),keyColor:fd(n.keyColor),keyNumbersColor:fd(n.keyNumbersColor)};n.useColors=e},parseData:async function(n){return await $I(n,{bindRoot:this.root})},setData:function(n){let e=this;(async function(){if(e.lockFromSetData=!0,!di(n)&&!Vi(n)){return"data is not an array or object"}e.convertColors(),n=rg(n);let t=await e.parseData(n);await Mi((()=>void 0!==e.$refs.wt),{timeInterval:20}),e.$refs.wt&&await e.$refs.wt.setData(t),e.getLineNumberWidth()})().catch((n=>{console.log(n)})).finally((()=>{e.lockFromSetData=!1}))},getLineNumberWidth:function(){let n=this;(async function(){if(await Mi((()=>void 0!==n.$refs.wt),{timeInterval:20}),!n.$refs.wt)return;let e=n.$refs.wt.getRows(),t=ud(e),r=8*(Math.ceil(Math.log10(t))+.5);n.lineNumberWidth=r})().catch((n=>{console.log(n)}))},genBlock:function(n){let e="";return"object"===n.type?e=`{${n.numOfChilren}}`:"array"===n.type&&(e=`[${n.numOfChilren}]`),e},getKey:function(n){let e="";return(Fi(n.key)||Xd(n.key))&&(e=n.key),e===this.root&&(e=""),e},getType:function(n){let e="";return"node"!==n.type&&(e=n.type),e},getText:function(n){let e="";return"node"===n.type&&(e=n.text),e},getTextTypeColor:function(n){let e=this,t=e.useColors.defaultColor;if("node"===n.type){let r="";Xd(n.text)?r="numColor":si(n.text)?r="strColor":Tc(n.text)?r="bolColor":ci(n.text)&&(r="funColor"),Hs(e.useColors,r)&&(t=e.useColors[r])}return t},toggleItemsByFun:function(n){return this.$refs.wt.toggleItemsByFun(n)},toggleItemsAll:function(n){return this.$refs.wt.toggleItemsAll(n)}}};const MI=QI;var _I=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",[t("WTree",{ref:"wt",attrs:{viewHeightMax:n.viewHeightMax,defaultDisplayLevel:n.defaultDisplayLevel,indent:n.indent,iconSize:n.iconSize,iconToggleColor:n.iconToggleColor,iconToggleBackgroundColor:n.iconToggleBackgroundColor,iconToggleBackgroundColorHover:n.iconToggleBackgroundColorHover,itemRippleColor:n.rippleColor,filterKeywords:n.filterKeywords,filterFunction:n.filterFunction,loadingText:n.loadingText,noResultsText:n.lockFromSetData?"":n.noResultsText,searchingText:n.searchingText,defItemHeight:n.defItemHeight,itemsPreload:n.itemsPreload,show:n.show},on:{"change-view-items":function(e){n.$emit("change-view-items",e)},"change-height-of-items":function(e){n.$emit("change-height-of-items",e)}},scopedSlots:n._u([{key:"head",fn:function(e){return[t("div",{style:n.useItemHeightMin+" min-width:"+n.lineNumberWidth+"px; display:flex; align-items:center; justify-content:end;"},[t("div",{style:"font-size:0.8rem; padding-top:1px; color:#f26; user-select:none;"},[n._v(n._s(e.index+1))])])]}},{key:"item",fn:function(e){return[t("div",{style:n.useItemHeightMin+" display:flex; align-items:center;"},[t("div",{staticStyle:{display:"flex"}},[""!==n.getKey(e.data)?t("div",{style:"padding-right:5px; color:"+n.useColors.keyColor+";"},[n._v("\n "+n._s(n.getKey(e.data))+":\n ")]):n._e(),n._v(" "),""!==n.getType(e.data)?t("div",{style:"padding-right:3px; color:"+n.useColors.keyColor+";"},[n._v("\n "+n._s(n.getType(e.data))+"\n ")]):n._e(),n._v(" "),t("div",{style:"color:"+n.getTextTypeColor(e.data)+";"},[n._v("\n "+n._s(n.getText(e.data))+"\n ")])]),n._v(" "),t("div",{style:"padding-left:5px; color:"+n.useColors.keyNumbersColor+";"},[n._v("\n "+n._s(n.genBlock(e.data))+"\n ")])])]}}])}),n._v(" "),n.lockFromSetData?t("div",{staticStyle:{padding:"12px","font-size":"0.8rem"}},[n._v("\n "+n._s(n.loadingText)+"\n ")]):n._e()],1)};_I._withStripped=!0;const UI=md({render:_I,staticRenderFns:[]},(function(n){n&&n("data-v-d1e490c4_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WJsonView.vue"},media:void 0})}),MI,"data-v-d1e490c4",false,undefined,!1,vd,void 0,void 0);const qI={components:{WIconLoading:xd},props:{pathItems:{type:Array,default:()=>["https://cdn.jsdelivr.net/npm/w-leaflet-vue@1.0.38/dist/w-leaflet-vue.umd.js"]},opt:{type:Object,default:()=>{}}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){let n=this;rl(n.pathItems).then((e=>{if("loaded"!==e){let n=window["w-leaflet-vue"];n.default&&(n=n.default),wd().component("w-leaflet-vue",n)}n.cmpName="w-leaflet-vue"}))},computed:{},methods:{}};var nx=function(){var n=this,e=n.$createElement;return(n._self._c||e)(n.cmpName,{ref:"$self",tag:"component",attrs:{opt:n.opt}})};nx._withStripped=!0;const ex=md({render:nx,staticRenderFns:[]},(function(n){n&&n("data-v-3a8a90b6_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WLeafletVueDyn.vue"},media:void 0})}),qI,"data-v-3a8a90b6",false,undefined,!1,vd,void 0,void 0);var tx={directives:{domripple:ip()},components:{WIcon:sp},props:{text:{type:String,default:""},textFontSize:{type:String,default:"1rem"},active:{type:Boolean,default:!1},paddingStyle:{type:Object,default:()=>({v:10,h:12})},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"rgba(200,200,200,0.2)"},backgroundColorActive:{type:String,default:"orange lighten-1"},textColor:{type:String,default:"#444"},textColorHover:{type:String,default:"#222"},textColorActive:{type:String,default:"white"},icon:{type:String,default:""},iconSize:{type:Number,default:22},iconColor:{type:String,default:"#444"},iconColorHover:{type:String,default:"#222"},iconColorActive:{type:String,default:"white"},expansionIcon:{type:String,default:Ic},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"#aaa"},expansionIconColorHover:{type:String,default:"#888"},expansionIconColorActive:{type:String,default:"rgba(255,255,255,0.8)"},rippleColor:{type:String,default:"rgba(255,255,255,0.4)"}},data:function(){return{obstructMutation:!1,mouseEnter:!1,heightContent:""}},computed:{changeActive:function(){return this.updateHeightContent(this.active),""},useTextFontSize:function(){let n=this.textFontSize;return n=Ts(n,";",""),`font-size:${n};`},hasIcon:function(){return""!==this.icon},usePadding:function(){let n=this;return`padding:${tp(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}})};`},effBackgroundColor:function(){return fd(this.backgroundColor)},effBackgroundColorHover:function(){return fd(this.backgroundColorHover)},effBackgroundActive:function(){return fd(this.backgroundColorActive)},useBackgroundColor:function(){let n=this;return n.active?n.effBackgroundActive:n.mouseEnter?n.effBackgroundColorHover:n.effBackgroundColor},effTextColor:function(){return fd(this.textColor)},effTextColorHover:function(){return fd(this.textColorHover)},effTextActive:function(){return fd(this.textColorActive)},useTextColor:function(){let n=this;return n.active?n.effTextActive:n.mouseEnter?n.effTextColorHover:n.effTextColor},effIconColor:function(){return fd(this.iconColor)},effIconColorHover:function(){return fd(this.iconColorHover)},effIconActive:function(){return fd(this.iconColorActive)},useIconColor:function(){let n=this;return n.active?n.effIconActive:n.mouseEnter?n.effIconColorHover:n.effIconColor},effExpansionIconColor:function(){return fd(this.expansionIconColor)},effExpansionIconColorHover:function(){return fd(this.expansionIconColorHover)},effExpansionIconColorActive:function(){return fd(this.expansionIconColorActive)},useExpansionIconColor:function(){let n=this;return n.active?n.effExpansionIconColorActive:n.mouseEnter?n.effExpansionIconColorHover:n.effExpansionIconColor},useRotateDeg:function(){return this.active?180:0}},methods:{updateHeightContent:function(){let n=this;(async function(){for(let e=1;e<=5;e++)setTimeout((()=>{n.obstructMutation=!n.obstructMutation}),100*e);if(n.active){if(n.active){n.$el||await Mi((()=>void 0!==n.$el),{timeInterval:10});let e=wo(n,"$refs.rct.clientHeight");Xd(e)&&(n.heightContent=`height:${e}px;`)}}else n.heightContent=""})().catch((n=>{console.log(n)}))},getIcon:function(n){return wo(n,"icon","")},getText:function(n){if(""===wo(n,"text",""))return n},clickItem:function(n,e){let t=this;return t.$emit("update:active",!t.active),t.$emit("click",{icon:n,text:e}),""}}};const rx=tx;var ox=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeActive:n.changeActive}},[t("div",{directives:[{name:"domripple",rawName:"v-domripple",value:{color:n.rippleColor},expression:"{color:rippleColor}"}],style:"transition:all 0.3s; "+n.usePadding+" background:"+n.useBackgroundColor+"; cursor:pointer;",on:{mouseenter:function(e){n.mouseEnter=!0},mouseleave:function(e){n.mouseEnter=!1},click:function(e){return n.clickItem(n.icon,n.text)}}},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("div",{staticStyle:{"margin-right":"4px"}},[t("div",{style:"transition:all 0.3s; transform:rotate("+(n.useRotateDeg+90)+"deg); cursor:pointer;"},[t("WIcon",{attrs:{icon:n.expansionIcon,color:n.useExpansionIconColor,size:n.expansionIconSize}})],1)]),n._v(" "),n._t("header",(function(){return[n.hasIcon?t("WIcon",{staticStyle:{"margin-right":"8px"},attrs:{icon:n.icon,color:n.useIconColor,size:n.iconSize}}):n._e(),n._v(" "),t("div",{style:"transition:all 0.3s; color:"+n.useTextColor+"; "+n.useTextFontSize},[n._v("\n "+n._s(n.text)+"\n ")])]}),{isHover:n.mouseEnter,isActive:n.active})],2)]),n._v(" "),t("div",{class:"ct "+(n.active?"ct-show":"ct-hide"),style:""+n.heightContent},[t("div",{ref:"rct"},[n._t("content",null,{isHover:n.mouseEnter,isActive:n.active})],2)]),n._v(" "),t("div",{staticStyle:{position:"relative",height:"0px",overflow:"hidden"}},[n.obstructMutation?t("div",{staticStyle:{position:"absolute",left:"0px",top:"0px",height:"0px"}}):n._e()])])};ox._withStripped=!0;const ix=md({render:ox,staticRenderFns:[]},(function(n){n&&n("data-v-79a44a96_0",{source:"\n.ct[data-v-79a44a96] {\r\n transition: height 0.5s, opacity 0.5s ease-out;\n}\n.ct-hide[data-v-79a44a96] {\r\n overflow: hidden;\r\n height: 0px;\r\n opacity: 0;\n}\n.ct-show[data-v-79a44a96] {\r\n opacity: 1;\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WListExpandItem.vue"],names:[],mappings:";AA+bA;IACA,8CAAA;AACA;AACA;IACA,gBAAA;IACA,WAAA;IACA,UAAA;AACA;AACA;IACA,UAAA;AACA",file:"WListExpandItem.vue",sourcesContent:["<template>\r\n <div\r\n :changeActive=\"changeActive\"\r\n >\r\n\r\n \x3c!-- header --\x3e\r\n <div\r\n :style=\"`transition:all 0.3s; ${usePadding} background:${useBackgroundColor}; cursor:pointer;`\"\r\n v-domripple=\"{color:rippleColor}\"\r\n @mouseenter=\"mouseEnter=true\"\r\n @mouseleave=\"mouseEnter=false\"\r\n @click=\"clickItem(icon,text)\"\r\n >\r\n <div style=\"display:flex; align-items:center;\">\r\n\r\n <div style=\"margin-right:4px;\">\r\n <div :style=\"`transition:all 0.3s; transform:rotate(${useRotateDeg+90}deg); cursor:pointer;`\">\r\n <WIcon\r\n :icon=\"expansionIcon\"\r\n :color=\"useExpansionIconColor\"\r\n :size=\"expansionIconSize\"\r\n ></WIcon>\r\n </div>\r\n </div>\r\n\r\n <slot\r\n name=\"header\"\r\n :isHover=\"mouseEnter\"\r\n :isActive=\"active\"\r\n >\r\n\r\n <WIcon\r\n style=\"margin-right:8px;\"\r\n :icon=\"icon\"\r\n :color=\"useIconColor\"\r\n :size=\"iconSize\"\r\n v-if=\"hasIcon\"\r\n ></WIcon>\r\n\r\n <div :style=\"`transition:all 0.3s; color:${useTextColor}; ${useTextFontSize}`\">\r\n {{text}}\r\n </div>\r\n\r\n </slot>\r\n\r\n </div>\r\n </div>\r\n\r\n \x3c!-- content --\x3e\r\n <div :class=\"`ct ${active?'ct-show':'ct-hide'}`\" :style=\"`${heightContent}`\">\r\n <div ref=\"rct\">\r\n\r\n <slot\r\n name=\"content\"\r\n :isHover=\"mouseEnter\"\r\n :isActive=\"active\"\r\n >\r\n </slot>\r\n\r\n </div>\r\n </div>\r\n\r\n <div style=\"position:relative; height:0px; overflow:hidden;\">\r\n <div style=\"position:absolute; left:0px; top:0px; height:0px;\" v-if=\"obstructMutation\">\r\n </div>\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mdiPlay } from '@mdi/js'\r\nimport get from 'lodash/get'\r\nimport isNumber from 'lodash/isNumber'\r\nimport replace from 'wsemi/src/replace.mjs'\r\nimport waitFun from 'wsemi/src/waitFun.mjs'\r\nimport domRipple from '../js/domRipple.mjs'\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\nimport parseSpace from '../js/parseSpace.mjs'\r\nimport WIcon from './WIcon.vue'\r\n\r\n\r\n/**\r\n * @vue-prop {String} [text=''] 輸入文字字串,預設''\r\n * @vue-prop {String} [textFontSize='1rem'] 輸入文字字型大小字串,預設'1rem'\r\n * @vue-prop {Boolean} [active=false] 輸入是否為主動模式布林值,預設false\r\n * @vue-prop {Object} [paddingStyle={v:10,h:12}] 輸入內寬距離設定物件,可用鍵值為v、h、left、right、top、bottom,v代表同時設定top與bottom,h代表設定left與right,若有重複設定時後面鍵值會覆蓋前面,各鍵值為寬度數字,單位為px,預設{v:10,h:12}\r\n * @vue-prop {String} [backgroundColor='white'] 輸入背景顏色字串,預設'white'\r\n * @vue-prop {String} [backgroundColorHover='rgba(200,200,200,0.2)'] 輸入滑鼠移入時背景顏色字串,預設'rgba(200,200,200,0.2)'\r\n * @vue-prop {String} [backgroundColorActive='orange lighten-1'] 輸入主動模式時背景顏色字串,預設'orange lighten-1'\r\n * @vue-prop {String} [textColor='#444'] 輸入文字顏色字串,預設'#444'\r\n * @vue-prop {String} [textColorHover='#222'] 輸入滑鼠移入時文字顏色字串,預設'#222'\r\n * @vue-prop {String} [textColorActive='white'] 輸入主動模式時文字顏色字串,預設'white'\r\n * @vue-prop {String} [icon=''] 輸入圖標字串,可為mdi,md,fa代號或mdi/js路徑,預設''\r\n * @vue-prop {Number} [iconSize=22] 輸入左側圖標之尺寸數字,單位px,預設22\r\n * @vue-prop {String} [iconColor='#444'] 輸入圖標顏色字串,預設'#444'\r\n * @vue-prop {String} [iconColorHover='#222'] 輸入滑鼠移入時圖標顏色字串,預設'#222'\r\n * @vue-prop {String} [iconColorActive='white'] 輸入主動模式時圖標顏色字串,預設'white'\r\n * @vue-prop {String} [expansionIcon=mdiPlay] 輸入顯隱圖標字串,可為mdi,md,fa代號或mdi/js路徑,預設使用mdi的圖標(mdiPlay)\r\n * @vue-prop {Number} [expansionIconSize=18] 輸入顯隱圖標尺寸數字,單位為px,預設18\r\n * @vue-prop {String} [expansionIconColor='#aaa'] 輸入顯隱圖標顏色字串,預設'#aaa'\r\n * @vue-prop {String} [expansionIconColorHover='#888'] 輸入滑鼠移入時顯隱圖標顏色字串,預設'#888'\r\n * @vue-prop {String} [expansionIconColorActive='rgba(255,255,255,0.8)'] 輸入主動模式時顯隱圖標顏色字串,預設'rgba(255,255,255,0.8)'\r\n * @vue-prop {String} [rippleColor='rgba(255,255,255,0.4)'] 輸入ripple效果顏色字串,預設'rgba(255,255,255,0.4)'\r\n */\r\nexport default {\r\n directives: {\r\n domripple: domRipple(),\r\n },\r\n components: {\r\n WIcon,\r\n },\r\n props: {\r\n text: {\r\n type: String,\r\n default: '',\r\n },\r\n textFontSize: {\r\n type: String,\r\n default: '1rem',\r\n },\r\n active: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n paddingStyle: {\r\n type: Object,\r\n default: () => {\r\n return {\r\n v: 10,\r\n h: 12,\r\n }\r\n },\r\n },\r\n backgroundColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n backgroundColorHover: {\r\n type: String,\r\n default: 'rgba(200,200,200,0.2)',\r\n },\r\n backgroundColorActive: {\r\n type: String,\r\n default: 'orange lighten-1',\r\n },\r\n textColor: {\r\n type: String,\r\n default: '#444',\r\n },\r\n textColorHover: {\r\n type: String,\r\n default: '#222',\r\n },\r\n textColorActive: {\r\n type: String,\r\n default: 'white',\r\n },\r\n icon: {\r\n type: String,\r\n default: '',\r\n },\r\n iconSize: {\r\n type: Number,\r\n default: 22,\r\n },\r\n iconColor: {\r\n type: String,\r\n default: '#444',\r\n },\r\n iconColorHover: {\r\n type: String,\r\n default: '#222',\r\n },\r\n iconColorActive: {\r\n type: String,\r\n default: 'white',\r\n },\r\n expansionIcon: {\r\n type: String,\r\n default: mdiPlay,\r\n },\r\n expansionIconSize: {\r\n type: Number,\r\n default: 18,\r\n },\r\n expansionIconColor: {\r\n type: String,\r\n default: '#aaa',\r\n },\r\n expansionIconColorHover: {\r\n type: String,\r\n default: '#888',\r\n },\r\n expansionIconColorActive: {\r\n type: String,\r\n default: 'rgba(255,255,255,0.8)',\r\n },\r\n rippleColor: {\r\n type: String,\r\n default: 'rgba(255,255,255,0.4)',\r\n },\r\n },\r\n data: function() {\r\n return {\r\n obstructMutation: false,\r\n mouseEnter: false,\r\n heightContent: '',\r\n }\r\n },\r\n computed: {\r\n\r\n changeActive: function() {\r\n let vo = this\r\n vo.updateHeightContent(vo.active)\r\n return ''\r\n },\r\n\r\n useTextFontSize: function() {\r\n let vo = this\r\n let s = vo.textFontSize\r\n s = replace(s, ';', '')\r\n return `font-size:${s};`\r\n },\r\n\r\n hasIcon: function() {\r\n let vo = this\r\n return vo.icon !== ''\r\n },\r\n\r\n usePadding: function() {\r\n //console.log('computed usePadding')\r\n\r\n let vo = this\r\n\r\n //parseSpace\r\n let cs = parseSpace(vo.paddingStyle, { ext: { left: vo.shiftLeft, right: vo.shiftRight } })\r\n\r\n //padding\r\n let padding = `padding:${cs};`\r\n\r\n return padding\r\n },\r\n\r\n effBackgroundColor: function() {\r\n let vo = this\r\n return color2hex(vo.backgroundColor)\r\n },\r\n\r\n effBackgroundColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.backgroundColorHover)\r\n },\r\n\r\n effBackgroundActive: function() {\r\n let vo = this\r\n return color2hex(vo.backgroundColorActive)\r\n },\r\n\r\n useBackgroundColor: function() {\r\n let vo = this\r\n if (vo.active) {\r\n return vo.effBackgroundActive\r\n }\r\n return vo.mouseEnter ? vo.effBackgroundColorHover : vo.effBackgroundColor\r\n },\r\n\r\n effTextColor: function() {\r\n let vo = this\r\n return color2hex(vo.textColor)\r\n },\r\n\r\n effTextColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.textColorHover)\r\n },\r\n\r\n effTextActive: function() {\r\n let vo = this\r\n return color2hex(vo.textColorActive)\r\n },\r\n\r\n useTextColor: function() {\r\n let vo = this\r\n if (vo.active) {\r\n return vo.effTextActive\r\n }\r\n return vo.mouseEnter ? vo.effTextColorHover : vo.effTextColor\r\n },\r\n\r\n effIconColor: function() {\r\n let vo = this\r\n return color2hex(vo.iconColor)\r\n },\r\n\r\n effIconColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.iconColorHover)\r\n },\r\n\r\n effIconActive: function() {\r\n let vo = this\r\n return color2hex(vo.iconColorActive)\r\n },\r\n\r\n useIconColor: function() {\r\n let vo = this\r\n if (vo.active) {\r\n return vo.effIconActive\r\n }\r\n return vo.mouseEnter ? vo.effIconColorHover : vo.effIconColor\r\n },\r\n\r\n effExpansionIconColor: function() {\r\n //console.log('computed effExpansionIconColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.expansionIconColor)\r\n },\r\n\r\n effExpansionIconColorHover: function() {\r\n //console.log('computed effExpansionIconColorHover')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.expansionIconColorHover)\r\n },\r\n\r\n effExpansionIconColorActive: function() {\r\n //console.log('computed effExpansionIconColorActive')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.expansionIconColorActive)\r\n },\r\n\r\n useExpansionIconColor: function() {\r\n let vo = this\r\n if (vo.active) {\r\n return vo.effExpansionIconColorActive\r\n }\r\n return vo.mouseEnter ? vo.effExpansionIconColorHover : vo.effExpansionIconColor\r\n },\r\n\r\n useRotateDeg: function() {\r\n //console.log('computed useRotateDeg')\r\n\r\n let vo = this\r\n\r\n return vo.active ? 180 : 0\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n updateHeightContent: function() {\r\n let vo = this\r\n\r\n async function core() {\r\n\r\n //於WPanelScrolly內容區使用顯隱動畫時, 因瀏覽器之內容區高度會先更新完畢, 而transition動畫結束時間較慢, 導致WPanelScrolly內容區無法算得實際高度而導致出現遮蔽情況\r\n //於指定時間(n*s=500ms需與class ct內設定transition時間長度一致)內反覆變更元素顯隱, 藉此刺激WPanelScrolly內mutation事件, 使能進行重算內容區高度\r\n let n = 5\r\n let s = 100\r\n for (let i = 1; i <= n; i++) {\r\n setTimeout(() => {\r\n vo.obstructMutation = !vo.obstructMutation\r\n // console.log('obstructMutation', vo.obstructMutation)\r\n }, i * s)\r\n }\r\n\r\n if (!vo.active) {\r\n //隱藏內容\r\n\r\n //clear\r\n vo.heightContent = ''\r\n\r\n }\r\n else if (vo.active) {\r\n //顯示內容\r\n\r\n if (!vo.$el) {\r\n\r\n //wait $el\r\n await waitFun(() => {\r\n // console.log('waitFun try', vo.text)\r\n return vo.$el !== undefined\r\n }, { timeInterval: 10 })\r\n // console.log('waitFun finish', vo.text)\r\n\r\n }\r\n\r\n //h\r\n let h = get(vo, '$refs.rct.clientHeight')\r\n // console.log(h, vo.text)\r\n\r\n //update\r\n if (isNumber(h)) {\r\n\r\n //heightContent\r\n vo.heightContent = `height:${h}px;`\r\n\r\n }\r\n\r\n }\r\n\r\n }\r\n\r\n //core\r\n core()\r\n .catch((err) => {\r\n console.log(err)\r\n })\r\n\r\n },\r\n\r\n getIcon: function(item) {\r\n return get(item, 'icon', '')\r\n },\r\n\r\n getText: function(item) {\r\n let t = get(item, 'text', '')\r\n if (t === '') {\r\n return item\r\n }\r\n },\r\n\r\n clickItem: function(icon, text) {\r\n // console.log('methods clickItem', icon, text)\r\n\r\n let vo = this\r\n\r\n //emit\r\n vo.$emit('update:active', !vo.active)\r\n\r\n //emit\r\n vo.$emit('click', { icon, text })\r\n\r\n return ''\r\n },\r\n\r\n }\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.ct {\r\n transition: height 0.5s, opacity 0.5s ease-out;\r\n}\r\n.ct-hide {\r\n overflow: hidden;\r\n height: 0px;\r\n opacity: 0;\r\n}\r\n.ct-show {\r\n opacity: 1;\r\n}\r\n</style>\r\n"]},media:void 0})}),rx,"data-v-79a44a96",false,undefined,!1,vd,void 0,void 0);var lx={directives:{domresize:ac()},components:{WPanelScrolly:mb,WListExpandItem:ix},props:{items:{type:Array,default:()=>[]},activeMode:{type:String,default:"one"},itemActive:{type:[String,Object,Array],default:null},itemTextFontSize:{type:String,default:"1rem"},keyText:{type:String,default:"text"},keyIcon:{type:String,default:"icon"},keyDsp:{type:String,default:"dsp"},paddingStyle:{type:Object,default:()=>({v:10,h:12})},itemBackgroundColor:{type:String,default:"white"},itemBackgroundColorHover:{type:String,default:"rgba(200,200,200,0.2)"},itemBackgroundColorActive:{type:String,default:"orange lighten-1"},itemTextColor:{type:String,default:"#444"},itemTextColorHover:{type:String,default:"#222"},itemTextColorActive:{type:String,default:"white"},itemIconSize:{type:Number,default:22},itemIconColor:{type:String,default:"#444"},itemIconColorHover:{type:String,default:"#222"},itemIconColorActive:{type:String,default:"white"},itemExpansionIcon:{type:String,default:Ic},itemExpansionIconSize:{type:Number,default:18},itemExpansionIconColor:{type:String,default:"grey"},itemRippleColor:{type:String,default:"rgba(255,255,255,0.4)"}},data:function(){return{panelHeight:0,listHeight:0,itemActiveTrans:null}},computed:{changeItemActive:function(){return this.itemActiveTrans=this.itemActive,""},isObjValue:function(){return 0!==ud(this.items)&&pb(this.items,(n=>Vi(n)))}},methods:{resize:function(n){let e=this;e.panelHeight=n.snew.offsetHeight;let t=0,r=wo(e,"$refs.refHeader");js(r)&&(t=r.offsetHeight);let o=0,i=wo(e,"$refs.refFooter");js(i)&&(o=i.offsetHeight);let l=e.panelHeight-t-o;l>0&&e.listHeight!==l&&(e.listHeight=l)},getIcon:function(n){let e=this;return e.isObjValue?wo(n,e.keyIcon,""):""},getText:function(n){let e=this;if(e.isObjValue){return wo(n,e.keyText,"")}return n},getDsp:function(n){let e=this;if(e.isObjValue){return wo(n,e.keyDsp,"")}return n},getActive:function(n){let e=this,t=!1;return"one"===e.activeMode?t=ah(n,e.itemActiveTrans):"multi"===e.activeMode&&Fn(e.itemActiveTrans,(e=>{if(t=ah(n,e),t)return!1})),t},updateItemActive:function(n,e,t){let r=this,o=rg(r.itemActiveTrans);!n&&e?"one"===r.activeMode?o=t:"multi"===r.activeMode&&o.push(rg(t)):n&&!e&&function(){if("one"===r.activeMode)o=null;else if("multi"===r.activeMode){let n=[];Fn(o,(e=>{ah(t,e)||n.push(e)})),o=n}}(),r.itemActiveTrans=o,r.$nextTick((()=>{r.$emit("update:itemActive",rg(o))}))},ckItem:function(n){let e=this;e.$nextTick((()=>{e.$emit("click",rg(n))}))}}};const ax=lx;var dx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeItemActive:n.changeItemActive},on:{domresize:n.resize}},[t("div",{style:"height:"+n.panelHeight+"px;"},[t("div",{ref:"refHeader"},[n._t("header")],2),n._v(" "),t("WPanelScrolly",{style:"height:"+n.listHeight+"px;"},n._l(n.items,(function(e,r){return t("div",{key:r},[t("WListExpandItem",{attrs:{icon:n.getIcon(e),text:n.getText(e),textFontSize:n.itemTextFontSize,active:n.getActive(e),paddingStyle:n.paddingStyle,backgroundColor:n.itemBackgroundColor,backgroundColorHover:n.itemBackgroundColorHover,backgroundColorActive:n.itemBackgroundColorActive,textColor:n.itemTextColor,textColorHover:n.itemTextColorHover,textColorActive:n.itemTextColorActive,iconSize:n.itemIconSize,iconColor:n.itemIconColor,iconColorHover:n.itemIconColorHover,iconColorActive:n.itemIconColorActive,expansionIcon:n.itemExpansionIcon,expansionIconSize:n.itemExpansionIconSize,expansionIconColor:n.itemExpansionIconColor,rippleColor:n.itemRippleColor},on:{"update:active":function(t){n.updateItemActive(n.getActive(e),t,e)},click:function(t){return n.ckItem(e)}},scopedSlots:n._u([{key:"header",fn:function(t){return[n._t("item-header",null,{item:Object.assign({},e,t)})]}},{key:"content",fn:function(r){return[n._t("item-content",(function(){return[t("div",{staticStyle:{padding:"10px","font-size":"0.9rem"}},[n._v("\n "+n._s(n.getDsp(e))+"\n ")])]}),{item:Object.assign({},e,r)})]}}],null,!0)})],1)})),0),n._v(" "),t("div",{ref:"refFooter"},[n._t("footer")],2)],1)])};dx._withStripped=!0;const sx=md({render:dx,staticRenderFns:[]},(function(n){n&&n("data-v-db681232_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WListExpand.vue"},media:void 0})}),ax,"data-v-db681232",false,undefined,!1,vd,void 0,void 0);var cx={directives:{domresize:ac()},components:{WListItem:yb},props:{items:{type:Array,default:()=>[]},useActive:{type:Boolean,default:!0},itemActive:{type:[String,Object],default:null},itemTextFontSize:{type:String,default:"1rem"},keyText:{type:String,default:"text"},keyIcon:{type:String,default:"icon"},space:{type:Number,default:0},paddingStyle:{type:Object,default:()=>({v:10,h:12})},itemBorderRadius:{type:Number,default:0},itemBackgroundColor:{type:String,default:"transparent"},itemBackgroundColorHover:{type:String,default:"rgba(200,200,200,0.2)"},itemBackgroundColorActive:{type:String,default:"white"},itemTextColor:{type:String,default:"#444"},itemTextColorHover:{type:String,default:"#222"},itemTextColorActive:{type:String,default:"orange darken-3"},itemIconSize:{type:Number,default:22},itemIconColor:{type:String,default:"#444"},itemIconColorHover:{type:String,default:"#222"},itemIconColorActive:{type:String,default:"orange darken-3"},itemRippleColor:{type:String,default:"rgba(245,124,0,0.4)"},itemClickable:{type:Boolean,default:!0},itemCursorPointer:{type:Boolean,default:!0},borderBottom:{type:Boolean,default:!0},borderBottomSize:{type:Number,default:2},borderBottomColor:{type:String,default:"rgba(245,124,0,0.8)"}},data:function(){return{borderBottomLeft:0,borderBottomWidth:0,itemActiveTrans:null}},watch:{itemActiveTrans:{handler(n,e){this.updateBorderBottom()},immediate:!0}},computed:{changeItemActive:function(){let n=this;return n.useActive&&(n.itemActiveTrans=n.itemActive),""},isObjValue:function(){return 0!==ud(this.items)&&pb(this.items,(n=>Vi(n)))},useBorderBottomColor:function(){return fd(this.borderBottomColor)}},methods:{resize:function(n){this.updateBorderBottom()},getIcon:function(n){let e=this;return e.isObjValue?wo(n,e.keyIcon,""):""},getText:function(n){let e=this;if(e.isObjValue){return wo(n,e.keyText,"")}return n},getActive:function(n){let e=this,t=!1;return e.useActive&&(t=ah(n,e.itemActiveTrans)),t},updateBorderBottom:function(){let n=this;if(null==n.itemActiveTrans)return;let e=0,t=[],r=wo(n,"$refs.wli",[]);Fn(r,((r,o)=>{let i=r,l=wo(i,"clientWidth",0),a=wo(i,"clientHeight",0),d=e,s=l,c=a;o>0&&n.space>0&&(d+=n.space,s-=n.space),t.push({left:d,bottom:0,width:s,heiht:c}),e+=l}));let o=-1;if(Fn(n.items,((e,t)=>{if(ah(e,n.itemActiveTrans))return o=t,!1})),-1===o)return;let i=t[o];n.borderBottomLeft=i.left,n.borderBottomWidth=i.width},ckItem:function(n){let e=this;e.itemActiveTrans=n,e.$emit("click",{...n}),e.$emit("update:itemActive",{...n})}}};const ux=cx;var px=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeItemActive:n.changeItemActive},on:{domresize:n.resize}},[t("div",{staticStyle:{position:"relative",display:"flex","align-items":"center","white-space":"nowrap"}},[n.borderBottom?t("div",{style:"transition:all 0.3s; position:absolute; z-index:1; bottom:0px; left:"+n.borderBottomLeft+"px; padding-left:"+n.borderBottomWidth+"px; border-bottom:"+n.borderBottomSize+"px solid "+n.useBorderBottomColor+";"}):n._e(),n._v(" "),n._l(n.items,(function(e,r){return t("div",{key:r},[t("div",{ref:"wli",refInFor:!0,style:n.space>0&&r>0?"padding-left:"+n.space+"px;":""},[t("WListItem",{attrs:{icon:n.getIcon(e),text:n.getText(e),textFontSize:n.itemTextFontSize,active:n.getActive(e),paddingStyle:n.paddingStyle,borderRadius:n.itemBorderRadius,backgroundColor:n.itemBackgroundColor,backgroundColorHover:n.itemBackgroundColorHover,backgroundColorActive:n.itemBackgroundColorActive,textColor:n.itemTextColor,textColorHover:n.itemTextColorHover,textColorActive:n.itemTextColorActive,iconSize:n.itemIconSize,iconColor:n.itemIconColor,iconColorHover:n.itemIconColorHover,iconColorActive:n.itemIconColorActive,rippleColor:n.itemRippleColor,clickable:n.itemClickable,cursorPointer:n.itemCursorPointer},on:{click:function(t){return n.ckItem(e)}},scopedSlots:n._u([{key:"default",fn:function(t){return[n._t("item",null,{item:Object.assign({},{ind:r},e,t)})]}}],null,!0)})],1)])}))],2)])};px._withStripped=!0;const fx=md({render:px,staticRenderFns:[]},(function(n){n&&n("data-v-b5356834_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WListHorizontal.vue"},media:void 0})}),ux,"data-v-b5356834",false,undefined,!1,vd,void 0,void 0);var hx={directives:{domresize:ac()},components:{WIcon:sp},props:{avatarOuterPadding:{type:Number,default:15},avatarInnerPadding:{type:Number,default:15},avatarIcon:{type:String,default:"M16 12L9 2L2 12H3.86L0 18H7V22H11V18H18L14.14 12H16M20.14 12H22L15 2L12.61 5.41L17.92 13H15.97L19.19 18H24L20.14 12M13 19H17V22H13V19Z"},avatarIconSize:{type:Number,default:60},avatarIconColor:{type:String,default:"white"},avatarBorderWidth:{type:Number,default:1},avatarBorderColor:{type:String,default:"transparent"},avatarBackgroundColor:{type:String,default:"rgba(239,108,0,0.5)"},avatarBorderRadius:{type:Number,default:10},avatarShadow:{type:Boolean,default:!0},shiftVFromAvaterCenter:{type:Number,default:20},spaceHBetweenAvatarAndHeader:{type:Number,default:20},spaceVBetweenHeaderAndContent:{type:Number,default:0},headerVerticalAlign:{type:String,default:"center"},headerPadding:{type:Number,default:15},headerText:{type:String,default:""},headerTextColor:{type:String,default:"#444"},headerTextSize:{type:String,default:"1.0rem"},subHeaderText:{type:String,default:""},subHeaderTextColor:{type:String,default:"#888"},subHeaderTextSize:{type:String,default:"0.7rem"},sepLineWidth:{type:Number,default:1},sepLineColor:{type:String,default:"#ddd"},contentBorderRadius:{type:Number,default:3},contentBackgroundColor:{type:String,default:"white"},contentShadow:{type:Boolean,default:!0}},data:function(){return{avatarWidth:0,avatarHeight:0}},computed:{useAvatarIconColor:function(){return fd(this.avatarIconColor)},useAvatarBorderColor:function(){return fd(this.avatarBorderColor)},useAvatarBackgroundColor:function(){return fd(this.avatarBackgroundColor)},useHeaderVerticalAlign:function(){let n="";return n="bottom"===this.headerVerticalAlign?"flex-end":"center"===this.headerVerticalAlign?"center":"flex-start",n},useHeaderTextColor:function(){return fd(this.headerTextColor)},useSubHeaderTextColor:function(){return fd(this.subHeaderTextColor)},useSepLineColor:function(){return fd(this.sepLineColor)},useContentBackgroundColor:function(){return fd(this.contentBackgroundColor)}},methods:{resizeAvatar:function(n){this.avatarWidth=n.snew.offsetWidth,this.avatarHeight=n.snew.offsetHeight}}};const mx=hx;var gx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block",position:"relative"}},[t("div",{staticStyle:{position:"absolute",top:"0px",left:"0px"}},[t("div",{style:"transition:all 0.3s; padding:0px "+n.avatarOuterPadding+"px "+n.avatarOuterPadding+"px "+n.avatarOuterPadding+"px;"},[t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],class:n.avatarShadow?"shadow-header":"",style:"transition:all 0.3s; _box-sizing:border-box; border:"+n.avatarBorderWidth+"px solid "+n.useAvatarBorderColor+"; border-radius:"+n.avatarBorderRadius+"px; background:"+n.useAvatarBackgroundColor+";",on:{domresize:n.resizeAvatar}},[t("div",{staticStyle:{height:"100%",width:"100%",display:"flex","align-items":"center","justify-content":"center"}},[t("div",{style:"transition:all 0.3s; padding:"+n.avatarInnerPadding+"px;"},[n._t("avatar",(function(){return[t("WIcon",{attrs:{icon:n.avatarIcon,size:n.avatarIconSize,color:n.useAvatarIconColor}})]}))],2)])])])]),n._v(" "),t("div",{style:"transition:all 0.3s; padding-top:"+(n.avatarHeight/2-n.shiftVFromAvaterCenter)+"px;"}),n._v(" "),t("div",{class:n.contentShadow?"shadow":"",style:"transition:all 0.3s; border-radius:"+n.contentBorderRadius+"px; background:"+n.useContentBackgroundColor+";",attrs:{avatarWidth:""}},[t("div",{staticStyle:{display:"flex"}},[t("div",{style:"transition:all 0.3s; min-width:"+(n.avatarOuterPadding+n.avatarWidth+n.spaceHBetweenAvatarAndHeader)+"px; min-height:"+(n.avatarOuterPadding+(n.avatarHeight/2+n.shiftVFromAvaterCenter)+n.spaceVBetweenHeaderAndContent)+"px;"}),n._v(" "),t("div",{style:"transition:all 0.3s; width:100%; padding:"+n.headerPadding+"px; display:flex; align-items:"+n.useHeaderVerticalAlign+"; justify-content:flex-end;"},[t("div",{staticStyle:{"text-align":"right"}},[t("div",{style:"transition:all 0.3s; color:"+n.useSubHeaderTextColor+"; font-size:"+n.subHeaderTextSize+"; line-height:"+n.subHeaderTextSize+";"},[n._v("\n "+n._s(n.subHeaderText)+"\n ")]),n._v(" "),t("div",{style:"transition:all 0.3s; color:"+n.useHeaderTextColor+"; font-size:"+n.headerTextSize+";"},[n._v("\n "+n._s(n.headerText)+"\n ")])])])]),n._v(" "),t("div",{style:"transition:all 0.3s; border-top:"+n.sepLineWidth+"px solid "+n.useSepLineColor+";"},[t("div",{staticStyle:{transition:"all 0.3s"}},[n._t("default")],2)])])])};gx._withStripped=!0;const vx=md({render:gx,staticRenderFns:[]},(function(n){n&&n("data-v-97a4b53a_0",{source:"\n.shadow[data-v-97a4b53a] {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\n}\n.shadow-header[data-v-97a4b53a] {\r\n box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.12), 0px 7px 10px 1px rgba(0, 0, 0, 0.06), 0px 2px 16px 1px rgba(0, 0, 0, 0.04);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WPanelAvatar.vue"],names:[],mappings:";AA4UA;IACA,mGAAA;AACA;AACA;IACA,4HAAA;AACA",file:"WPanelAvatar.vue",sourcesContent:["<template>\r\n <div\r\n style=\"display:inline-block; position:relative;\"\r\n >\r\n\r\n <div style=\"position:absolute; top:0px; left:0px;\">\r\n\r\n <div\r\n :style=\"`transition:all 0.3s; padding:0px ${avatarOuterPadding}px ${avatarOuterPadding}px ${avatarOuterPadding}px;`\"\r\n >\r\n <div\r\n :class=\"`${avatarShadow?'shadow-header':''}`\"\r\n :style=\"`transition:all 0.3s; _box-sizing:border-box; border:${avatarBorderWidth}px solid ${useAvatarBorderColor}; border-radius:${avatarBorderRadius}px; background:${useAvatarBackgroundColor};`\"\r\n v-domresize\r\n @domresize=\"resizeAvatar\"\r\n >\r\n\r\n <div style=\"height:100%; width:100%; display:flex; align-items:center; justify-content:center;\">\r\n <div :style=\"`transition:all 0.3s; padding:${avatarInnerPadding}px;`\">\r\n\r\n <slot name=\"avatar\">\r\n <WIcon\r\n :icon=\"avatarIcon\"\r\n :size=\"avatarIconSize\"\r\n :color=\"useAvatarIconColor\"\r\n ></WIcon>\r\n </slot>\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n <div :style=\"`transition:all 0.3s; padding-top:${avatarHeight/2-shiftVFromAvaterCenter}px;`\"></div>\r\n\r\n <div\r\n avatarWidth\r\n :class=\"`${contentShadow?'shadow':''}`\"\r\n :style=\"`transition:all 0.3s; border-radius:${contentBorderRadius}px; background:${useContentBackgroundColor};`\"\r\n >\r\n\r\n <div style=\"display:flex;\">\r\n\r\n <div :style=\"`transition:all 0.3s; min-width:${avatarOuterPadding+avatarWidth+spaceHBetweenAvatarAndHeader}px; min-height:${avatarOuterPadding+(avatarHeight/2+shiftVFromAvaterCenter)+spaceVBetweenHeaderAndContent}px;`\"></div>\r\n\r\n <div :style=\"`transition:all 0.3s; width:100%; padding:${headerPadding}px; display:flex; align-items:${useHeaderVerticalAlign}; justify-content:flex-end;`\">\r\n\r\n <div style=\"text-align:right;\">\r\n <div :style=\"`transition:all 0.3s; color:${useSubHeaderTextColor}; font-size:${subHeaderTextSize}; line-height:${subHeaderTextSize};`\">\r\n {{subHeaderText}}\r\n </div>\r\n\r\n <div :style=\"`transition:all 0.3s; color:${useHeaderTextColor}; font-size:${headerTextSize};`\">\r\n {{headerText}}\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n <div :style=\"`transition:all 0.3s; border-top:${sepLineWidth}px solid ${useSepLineColor};`\">\r\n\r\n <div style=\"transition:all 0.3s;\">\r\n <slot></slot>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mdiForest } from '@mdi/js'\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\nimport domResize from '../js/domResize.mjs'\r\nimport WIcon from './WIcon.vue'\r\n\r\n\r\n/**\r\n * @vue-prop {Number} [avatarOuterPadding=15] 輸入圖標區外側間距數字,單位為px,預設15\r\n * @vue-prop {Number} [avatarInnerPadding=15] 輸入圖標區內側間距數字,單位為px,預設15\r\n * @vue-prop {String} [avatarIcon=mdiForest] 輸入圖標字串,預設mdiForest\r\n * @vue-prop {Number} [avatarIconSize=60] 輸入圖標尺寸數字,單位為px,預設60\r\n * @vue-prop {String} [avatarIconColor='white'] 輸入圖標顏色字串,預設'white'\r\n * @vue-prop {Number} [avatarBorderWidth=1] 輸入圖標區框線寬度數字,單位為px,預設1\r\n * @vue-prop {String} [avatarBorderColor='transparnet'] 輸入圖標區框線顏色字串,預設'transparnet'\r\n * @vue-prop {String} [avatarBackgroundColor='rgba(239,108,0,0.5)'] 輸入圖標區背景顏色字串,預設'rgba(239,108,0,0.5)'\r\n * @vue-prop {Number} [avatarBorderRadius=10] 輸入圖標區框圓角程度數字,單位為px,預設10\r\n * @vue-prop {Boolean} [avatarShadow=true] 輸入是否使用圖標區陰影效果數字,預設true\r\n * @vue-prop {Number} [shiftVFromAvaterCenter=20] 輸入圖標區基於水平中線之朝下平移數字,單位為px,預設20\r\n * @vue-prop {Number} [spaceHBetweenAvatarAndHeader=20] 輸入圖標區與右側標題區間距數字,單位為px,預設20\r\n * @vue-prop {Number} [spaceVBetweenHeaderAndContent=0] 輸入標題區與下方內容區間距數字,單位為px,預設0\r\n * @vue-prop {String} [headerVerticalAlign='center'] 輸入標題區內文字垂直對齊字串,可選'top'、'center'、'bottom',預設'center'\r\n * @vue-prop {Number} [headerPadding=15] 輸入標題區間距數字,單位為px,預設15\r\n * @vue-prop {String} [headerText=''] 輸入標題區主要文字字串,預設''\r\n * @vue-prop {String} [headerTextColor='#444'] 輸入標題區主要文字顏色字串,預設'#444'\r\n * @vue-prop {String} [headerTextSize='1.0rem'] 輸入標題區主要文字字型大小數字,預設'1.0rem'\r\n * @vue-prop {String} [subHeaderText=''] 輸入標題區次要文字字串,預設''\r\n * @vue-prop {String} [subHeaderTextColor='#888'] 輸入標題區次要文字顏色字串,預設'#888'\r\n * @vue-prop {String} [subHeaderTextSize='0.7rem'] 輸入標題區次要文字字型大小數字,預設'0.7rem'\r\n * @vue-prop {Number} [sepLineWidth=1] 輸入標題區與內容區分隔線寬度數字,單位為px,預設1\r\n * @vue-prop {String} [sepLineColor='#ddd'] 輸入標題區與內容區分隔線顏色字串,預設'#ddd'\r\n * @vue-prop {Number} [contentBorderRadius=3] 輸入內容區框圓角程度數字,單位為px,預設3\r\n * @vue-prop {String} [contentBackgroundColor='white'] 輸入內容區背景顏色字串,預設'white'\r\n * @vue-prop {Boolean} [contentShadow=true] 輸入是否使用內容區陰影效果數字,預設true\r\n */\r\nexport default {\r\n directives: {\r\n domresize: domResize(),\r\n },\r\n components: {\r\n WIcon,\r\n },\r\n props: {\r\n avatarOuterPadding: {\r\n type: Number,\r\n default: 15,\r\n },\r\n avatarInnerPadding: {\r\n type: Number,\r\n default: 15,\r\n },\r\n avatarIcon: {\r\n type: String,\r\n default: mdiForest,\r\n },\r\n avatarIconSize: {\r\n type: Number,\r\n default: 60,\r\n },\r\n avatarIconColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n avatarBorderWidth: {\r\n type: Number,\r\n default: 1,\r\n },\r\n avatarBorderColor: {\r\n type: String,\r\n default: 'transparent',\r\n },\r\n avatarBackgroundColor: {\r\n type: String,\r\n default: 'rgba(239,108,0,0.5)',\r\n },\r\n avatarBorderRadius: {\r\n type: Number,\r\n default: 10,\r\n },\r\n avatarShadow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n shiftVFromAvaterCenter: {\r\n type: Number,\r\n default: 20,\r\n },\r\n spaceHBetweenAvatarAndHeader: {\r\n type: Number,\r\n default: 20,\r\n },\r\n spaceVBetweenHeaderAndContent: {\r\n type: Number,\r\n default: 0,\r\n },\r\n headerVerticalAlign: {\r\n type: String,\r\n default: 'center', //top, center, bottom\r\n },\r\n headerPadding: {\r\n type: Number,\r\n default: 15,\r\n },\r\n headerText: {\r\n type: String,\r\n default: '',\r\n },\r\n headerTextColor: {\r\n type: String,\r\n default: '#444',\r\n },\r\n headerTextSize: {\r\n type: String,\r\n default: '1.0rem',\r\n },\r\n subHeaderText: {\r\n type: String,\r\n default: '',\r\n },\r\n subHeaderTextColor: {\r\n type: String,\r\n default: '#888',\r\n },\r\n subHeaderTextSize: {\r\n type: String,\r\n default: '0.7rem',\r\n },\r\n sepLineWidth: {\r\n type: Number,\r\n default: 1,\r\n },\r\n sepLineColor: {\r\n type: String,\r\n default: '#ddd',\r\n },\r\n contentBorderRadius: {\r\n type: Number,\r\n default: 3,\r\n },\r\n contentBackgroundColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n contentShadow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n\r\n avatarWidth: 0,\r\n avatarHeight: 0,\r\n\r\n // headerHeight: 0,\r\n\r\n }\r\n },\r\n computed: {\r\n\r\n useAvatarIconColor: function() {\r\n //console.log('computed useAvatarIconColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.avatarIconColor)\r\n },\r\n\r\n useAvatarBorderColor: function() {\r\n //console.log('computed useAvatarBorderColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.avatarBorderColor)\r\n },\r\n\r\n useAvatarBackgroundColor: function() {\r\n //console.log('computed useAvatarBackgroundColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.avatarBackgroundColor)\r\n },\r\n\r\n useHeaderVerticalAlign: function() {\r\n //console.log('computed useHeaderVerticalAlign')\r\n\r\n let vo = this\r\n\r\n let c = ''\r\n if (vo.headerVerticalAlign === 'bottom') {\r\n c = 'flex-end'\r\n }\r\n else if (vo.headerVerticalAlign === 'center') {\r\n c = 'center'\r\n }\r\n else {\r\n //top, default\r\n c = 'flex-start'\r\n }\r\n\r\n return c\r\n },\r\n\r\n useHeaderTextColor: function() {\r\n //console.log('computed useHeaderTextColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.headerTextColor)\r\n },\r\n\r\n useSubHeaderTextColor: function() {\r\n //console.log('computed useSubHeaderTextColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.subHeaderTextColor)\r\n },\r\n\r\n useSepLineColor: function() {\r\n //console.log('computed useSepLineColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.sepLineColor)\r\n },\r\n\r\n useContentBackgroundColor: function() {\r\n //console.log('computed useContentBackgroundColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.contentBackgroundColor)\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n resizeAvatar: function(msg) {\r\n // console.log('methods resizeAvatar', msg)\r\n\r\n let vo = this\r\n\r\n //update\r\n vo.avatarWidth = msg.snew.offsetWidth\r\n vo.avatarHeight = msg.snew.offsetHeight\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.shadow {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\r\n}\r\n.shadow-header {\r\n box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.12), 0px 7px 10px 1px rgba(0, 0, 0, 0.06), 0px 2px 16px 1px rgba(0, 0, 0, 0.04);\r\n}\r\n</style>\r\n"]},media:void 0})}),mx,"data-v-97a4b53a",false,undefined,!1,vd,void 0,void 0);const yx={directives:{domresize:ac()},props:{headerBorderRadius:{type:Number,default:0},paddingStyle:{type:Object,default:()=>({v:0,h:20})},headerText:{type:String,default:""},headerTextColor:{type:String,default:"white"},headerBackgroundColor:{type:String,default:"rgba(77, 182, 172, 0.8)"},headerShadow:{type:Boolean,default:!0},contentBorderRadius:{type:Number,default:0},contentPadding:{type:[Number,String],default:0},contentBackgroundColor:{type:String,default:"white"},contentShadow:{type:Boolean,default:!0}},data:function(){return{headerHeight:0}},computed:{usePadding:function(){let n=this;return`padding:${tp(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}})};`},useHeaderTextColor:function(){return fd(this.headerTextColor)},useHeaderBackgroundColor:function(){return fd(this.headerBackgroundColor)},useContentBackgroundColor:function(){return fd(this.contentBackgroundColor)},useContentPadding:function(){let n=this;return Yi(n.contentPadding)?`${n.contentPadding}px`:n.contentPadding}},methods:{updateHeaderHeight:function(n){this.headerHeight=n.snew.offsetHeight,this.$emit("resize",n)}}};var bx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",[t("div",{style:"transition:all 0.3s; "+n.usePadding+" z-index:2;"},[t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],class:{"shadow-header":n.headerShadow},style:"transition:all 0.3s; display:inline-block; background:"+n.useHeaderBackgroundColor+"; border-radius:"+n.headerBorderRadius+"px;",on:{domresize:n.updateHeaderHeight}},[n._t("header",(function(){return[t("div",{style:"transition:all 0.3s; padding:5px 10px; color:"+n.useHeaderTextColor+";"},[n._v("\n "+n._s(n.headerText)+"\n ")])]}))],2)]),n._v(" "),t("div",{style:"transition:all 0.3s; margin-top:-"+n.headerHeight/2+"px; z-index:1;"},[t("div",{class:{shadow:n.contentShadow},style:"transition:all 0.3s; background:"+n.useContentBackgroundColor+"; border-radius:"+n.contentBorderRadius+"px;"},[t("div",{style:"transition:all 0.3s; padding:"+n.useContentPadding+";"},[t("div",{style:"transition:all 0.3s; height:"+n.headerHeight/2+"px;"}),n._v(" "),n._t("default")],2)])])])};bx._withStripped=!0;const Cx=md({render:bx,staticRenderFns:[]},(function(n){n&&n("data-v-9e45e15e_0",{source:"\n.shadow[data-v-9e45e15e] {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\n}\n.shadow-header[data-v-9e45e15e] {\r\n box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.12), 0px 7px 10px 1px rgba(0, 0, 0, 0.06), 0px 2px 16px 1px rgba(0, 0, 0, 0.04);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WPanelBulge.vue"],names:[],mappings:";AAiMA;IACA,mGAAA;AACA;AACA;IACA,4HAAA;AACA",file:"WPanelBulge.vue",sourcesContent:["<template>\r\n <div>\r\n\r\n <div\r\n :style=\"`transition:all 0.3s; ${usePadding} z-index:2;`\"\r\n >\r\n <div\r\n :class=\"{'shadow-header':headerShadow}\"\r\n :style=\"`transition:all 0.3s; display:inline-block; background:${useHeaderBackgroundColor}; border-radius:${headerBorderRadius}px;`\"\r\n v-domresize\r\n @domresize=\"updateHeaderHeight\"\r\n >\r\n\r\n <slot name=\"header\">\r\n <div :style=\"`transition:all 0.3s; padding:5px 10px; color:${useHeaderTextColor};`\">\r\n {{headerText}}\r\n </div>\r\n </slot>\r\n\r\n </div>\r\n </div>\r\n\r\n <div :style=\"`transition:all 0.3s; margin-top:-${headerHeight/2}px; z-index:1;`\">\r\n\r\n <div\r\n :class=\"{'shadow':contentShadow}\"\r\n :style=\"`transition:all 0.3s; background:${useContentBackgroundColor}; border-radius:${contentBorderRadius}px;`\"\r\n >\r\n\r\n <div :style=\"`transition:all 0.3s; padding:${useContentPadding};`\">\r\n\r\n <div :style=\"`transition:all 0.3s; height:${headerHeight/2}px;`\"></div>\r\n\r\n <slot></slot>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport isnum from 'wsemi/src/isnum.mjs'\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\nimport parseSpace from '../js/parseSpace.mjs'\r\nimport domResize from '../js/domResize.mjs'\r\n\r\n\r\n/**\r\n * @vue-prop {Number} [headerBorderRadius=0] 輸入標題區圓角寬度,單位為px,預設0\r\n * @vue-prop {Object} [paddingStyle={v:0,h:20}] 輸入內寬距離設定物件,可用鍵值為v、h、left、right、top、bottom,v代表同時設定top與bottom,h代表設定left與right,若有重複設定時後面鍵值會覆蓋前面,各鍵值為寬度數字,單位為px,預設{v:0,h:20}\r\n * @vue-prop {String} [headerText=''] 輸入標題文字字串,預設''\r\n * @vue-prop {String} [headerTextColor='white'] 輸入標題文字顏色字串,預設'white'\r\n * @vue-prop {String} [headerBackgroundColor='teal lighten-2'] 輸入標題背景顏色字串,預設'teal lighten-2'\r\n * @vue-prop {Boolean} [headerShadow=true] 輸入標題區是否使用陰影模式,預設true\r\n * @vue-prop {Number} [contentBorderRadius=0] 輸入內容區圓角寬度,單位為px,預設0\r\n * @vue-prop {Number|String} [contentPadding=20] 輸入內容區邊寬長度數字或字串,若輸入數字則單位為px,預設20,若輸入字串則需自己添加單位\r\n * @vue-prop {String} [contentBackgroundColor='white'] 輸入內容區塊背景顏色字串,預設'white'\r\n * @vue-prop {Boolean} [contentShadow=true] 輸入內容區是否使用陰影模式,預設true\r\n */\r\nexport default {\r\n directives: {\r\n domresize: domResize(),\r\n },\r\n props: {\r\n headerBorderRadius: {\r\n type: Number,\r\n default: 0,\r\n },\r\n paddingStyle: {\r\n type: Object,\r\n default: () => {\r\n return {\r\n v: 0,\r\n h: 20,\r\n }\r\n },\r\n },\r\n headerText: {\r\n type: String,\r\n default: '',\r\n },\r\n headerTextColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n headerBackgroundColor: {\r\n type: String,\r\n default: 'rgba(77, 182, 172, 0.8)', //teal lighten-2\r\n },\r\n headerShadow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n contentBorderRadius: {\r\n type: Number,\r\n default: 0,\r\n },\r\n contentPadding: {\r\n type: [Number, String],\r\n default: 0,\r\n },\r\n contentBackgroundColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n contentShadow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n headerHeight: 0,\r\n }\r\n },\r\n computed: {\r\n\r\n usePadding: function() {\r\n //console.log('computed usePadding')\r\n\r\n let vo = this\r\n\r\n //parseSpace\r\n let cs = parseSpace(vo.paddingStyle, { ext: { left: vo.shiftLeft, right: vo.shiftRight } })\r\n\r\n //padding\r\n let padding = `padding:${cs};`\r\n\r\n return padding\r\n },\r\n\r\n useHeaderTextColor: function() {\r\n //console.log('computed useHeaderTextColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.headerTextColor)\r\n },\r\n\r\n useHeaderBackgroundColor: function() {\r\n //console.log('computed useHeaderBackgroundColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.headerBackgroundColor)\r\n },\r\n\r\n useContentBackgroundColor: function() {\r\n //console.log('computed useContentBackgroundColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.contentBackgroundColor)\r\n },\r\n\r\n useContentPadding: function() {\r\n //console.log('computed useContentPadding')\r\n\r\n let vo = this\r\n\r\n if (isnum(vo.contentPadding)) {\r\n return `${vo.contentPadding}px`\r\n }\r\n else {\r\n return vo.contentPadding\r\n }\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n updateHeaderHeight: function(msg) {\r\n //console.log('methods updateHeaderHeight', msg)\r\n\r\n let vo = this\r\n\r\n //update\r\n vo.headerHeight = msg.snew.offsetHeight\r\n\r\n //emit\r\n vo.$emit('resize', msg)\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.shadow {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\r\n}\r\n.shadow-header {\r\n box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.12), 0px 7px 10px 1px rgba(0, 0, 0, 0.06), 0px 2px 16px 1px rgba(0, 0, 0, 0.04);\r\n}\r\n</style>\r\n"]},media:void 0})}),yx,"data-v-9e45e15e",false,undefined,!1,vd,void 0,void 0);const Ix={directives:{domresize:ac()},props:{ratio:{type:Number,default:.5},ratioMin:{type:Number,default:0},ratioMax:{type:Number,default:1},leftWidthMin:{type:Number,default:null},leftWidthMax:{type:Number,default:null},rightWidthMin:{type:Number,default:null},rightWidthMax:{type:Number,default:null},barColor:{type:String,default:"#ddd"},barSize:{type:Number,default:2},barBorderColor:{type:String,default:"transparent"},barBorderSize:{type:Number,default:3}},data:function(){return{r:null,panelWidth:0,panelHeight:0,das:null}},mounted:function(){let n=this,e=bg(n.$refs.divPanel,n.$refs.divBar,{useTouchDragForPanel:!1});e.on("dragBar",n.dragBar),n.das=e},beforeDestroy:function(){let n=this;n.das&&n.das.clear()},computed:{changeParam:function(){let n=this,e=n.ratio;return e=n.limitRatio(e),n.r=e,""},bw:function(){return this.barSize+2*this.barBorderSize},useBarColor:function(){return fd(this.barColor)},useBarBorderColor:function(){return fd(this.barBorderColor)}},methods:{resizePanel:function(n){let e=this;e.panelWidth=n.snew.offsetWidth,e.panelHeight=n.snew.offsetHeight,e.$emit("resize",n)},limitRatio:function(n){let e=this;if(n=Math.min(n,e.ratioMax),n=Math.max(n,e.ratioMin),e.panelWidth>0){let t=n*e.panelWidth;Xd(e.leftWidthMin)&&t<e.leftWidthMin&&(n=e.leftWidthMin/e.panelWidth),Xd(e.leftWidthMax)&&t>e.leftWidthMax&&(n=e.leftWidthMax/e.panelWidth);let r=(1-n)*e.panelWidth;Xd(e.rightWidthMin)&&r<e.rightWidthMin&&(n=-(e.rightWidthMin/e.panelWidth-1)),Xd(e.rightWidthMax)&&r>e.rightWidthMax&&(n=-(e.rightWidthMax/e.panelWidth-1))}return n},dragBar:function({clientX:n}){let e=this,t=e.$el.getBoundingClientRect(),r=n,o=e.$el.offsetWidth,i=0;o>0&&(i=(r-t.left)/o),i=e.limitRatio(i),e.r=i,e.$emit("update:ratio",i)}}};var xx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeParam:n.changeParam},on:{domresize:n.resizePanel}},[t("div",{ref:"divPanel",staticStyle:{position:"relative",display:"flex"}},[t("div",{ref:"left",style:"width:"+n.r*n.panelWidth+"px; height:"+n.panelHeight+"px;"},[n._t("left",null,{ratio:n.r,width:n.r*n.panelWidth,height:n.panelHeight})],2),n._v(" "),t("div",{ref:"divBar",style:"position:absolute; z-index:1; left:"+(n.r*n.panelWidth-n.bw/2)+"px; width:"+n.bw+"px; height:"+n.panelHeight+"px; border-left:"+n.barBorderSize+"px solid "+n.useBarBorderColor+"; border-right:"+n.barBorderSize+"px solid "+n.useBarBorderColor+"; cursor:col-resize; user-select:none;"},[t("div",{style:"width:"+n.barSize+"px; height:"+n.panelHeight+"px; background:"+n.useBarColor+";"})]),n._v(" "),t("div",{ref:"right",style:"width:"+(1-n.r)*n.panelWidth+"px; height:"+n.panelHeight+"px;"},[n._t("right",null,{ratio:1-n.r,width:(1-n.r)*n.panelWidth,height:n.panelHeight})],2)])])};xx._withStripped=!0;const Sx=md({render:xx,staticRenderFns:[]},(function(n){n&&n("data-v-c8e720c8_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WPanelDivideHorizontal.vue"},media:void 0})}),Ix,"data-v-c8e720c8",false,undefined,!1,vd,void 0,void 0);const wx={directives:{domresize:ac()},props:{ratio:{type:Number,default:.5},ratioMin:{type:Number,default:0},ratioMax:{type:Number,default:1},topHeightMin:{type:Number,default:null},topHeightMax:{type:Number,default:null},bottomHeightMin:{type:Number,default:null},bottomHeightMax:{type:Number,default:null},barColor:{type:String,default:"#ddd"},barBorderColor:{type:String,default:"transparent"},barSize:{type:Number,default:2},barBorderSize:{type:Number,default:3}},data:function(){return{r:null,panelWidth:0,panelHeight:0,das:null}},mounted:function(){let n=this,e=bg(n.$refs.divPanel,n.$refs.divBar,{useTouchDragForPanel:!1});e.on("dragBar",n.dragBar),n.das=e},beforeDestroy:function(){let n=this;n.das&&n.das.clear()},computed:{changeParam:function(){let n=this,e=n.ratio;return e=n.limitRatio(e),n.r=e,""},bw:function(){return this.barSize+2*this.barBorderSize},useBarColor:function(){return fd(this.barColor)},useBarBorderColor:function(){return fd(this.barBorderColor)}},methods:{resizePanel:function(n){let e=this;e.panelWidth=n.snew.offsetWidth,e.panelHeight=n.snew.offsetHeight,e.$emit("resize",n)},limitRatio:function(n){let e=this;if(n=Math.min(n,e.ratioMax),n=Math.max(n,e.ratioMin),e.panelHeight>0){let t=n*e.panelHeight;Xd(e.topHeightMin)&&t<e.topHeightMin&&(n=e.topHeightMin/e.panelHeight),Xd(e.topHeightMax)&&t>e.topHeightMax&&(n=e.topHeightMax/e.panelHeight);let r=(1-n)*e.panelHeight;Xd(e.bottomHeightMin)&&r<e.bottomHeightMin&&(n=-(e.bottomHeightMin/e.panelHeight-1)),Xd(e.bottomHeightMax)&&r>e.bottomHeightMax&&(n=-(e.bottomHeightMax/e.panelHeight-1))}return n},dragBar:function({clientY:n}){let e=this,t=e.$el.getBoundingClientRect(),r=n,o=e.$el.offsetHeight,i=0;o>0&&(i=(r-t.top)/o),i=e.limitRatio(i),e.r=i,e.$emit("update:ratio",i)}}};var kx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeParam:n.changeParam},on:{domresize:n.resizePanel}},[t("div",{ref:"divPanel",staticStyle:{position:"relative"}},[t("div",{ref:"top",style:"width:"+n.panelWidth+"px; height:"+n.r*n.panelHeight+"px;"},[n._t("top",null,{ratio:n.r,width:n.panelWidth,height:n.r*n.panelHeight})],2),n._v(" "),t("div",{ref:"divBar",style:"position:absolute; z-index:1; top:"+(n.r*n.panelHeight-n.bw/2)+"px; width:"+n.panelWidth+"px; height:"+n.barSize+"px; border-top:"+n.barBorderSize+"px solid "+n.useBarBorderColor+"; border-bottom:"+n.barBorderSize+"px solid "+n.useBarBorderColor+"; cursor:row-resize; user-select:none;"},[t("div",{style:"width:"+n.panelWidth+"px; height:"+n.barSize+"px; background:"+n.useBarColor+";"})]),n._v(" "),t("div",{ref:"bottom",style:"width:"+n.panelWidth+"px; height:"+(1-n.r)*n.panelHeight+"px;"},[n._t("bottom",null,{ratio:1-n.r,width:n.panelWidth,height:(1-n.r)*n.panelHeight})],2)])])};kx._withStripped=!0;const Tx=md({render:kx,staticRenderFns:[]},(function(n){n&&n("data-v-3de7dcbe_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WPanelDivideVertical.vue"},media:void 0})}),wx,"data-v-3de7dcbe",false,undefined,!1,vd,void 0,void 0);const Hx={directives:{domresize:ac(),dommutation:_g()},components:{},props:{scale:{type:Number,default:1}},data:function(){return{width:1,height:1}},mounted:function(){this.fitSize()},computed:{},methods:{domresize:function(n){this.fitSize()},dommutation:function(n){this.fitSize()},fitSize:function(){let n=this,e=wo(n,"$refs.tar");if(js(e)){let t=e.getBoundingClientRect();n.width===t.width&&n.height===t.height||(n.width=t.width,n.height=t.height)}}}};var Wx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"},{name:"dommutation",rawName:"v-dommutation"}],style:"display:inline-block; width:"+n.width+"px; height:"+n.height+"px; max-height:"+n.height+"px;",attrs:{domresize:"domresize"},on:{dommutation:n.dommutation}},[t("div",{style:"position:relative; width:"+n.width+"px; height:"+n.height+"px; max-height:"+n.height+"px;"},[t("div",{style:"position:absolute; left:0; top:0; width:"+n.width+"px; height:"+n.height+"px; max-height:"+n.height+"px;"},[t("div",{style:"transform-origin:top left; transform:scale("+n.scale+"); width:"+n.width+"px; height:"+n.height+"px; max-height:"+n.height+"px;"},[t("div",{ref:"tar",staticStyle:{display:"inline-block"}},[n._t("default")],2)])])])])};Wx._withStripped=!0;const Zx=md({render:Wx,staticRenderFns:[]},(function(n){n&&n("data-v-2d8c19a3_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WPanelScale.vue"},media:void 0})}),Hx,"data-v-2d8c19a3",false,undefined,!1,vd,void 0,void 0);const Xx={props:{hasHeader:{type:Boolean,default:!0},hasFooter:{type:Boolean,default:!0},padding:{type:Number,default:20},borderRadius:{type:Number,default:5},headerBackgroundColor:{type:String,default:"grey lighten-5"},contentBackgroundColor:{type:String,default:"white"},footerBackgroundColor:{type:String,default:"grey lighten-5"},shadow:{type:Boolean,default:!0}},data:function(){return{}},mounted:function(){},computed:{usePanelStyle:function(){let n={};return n["background-color"]=fd(this.contentBackgroundColor),n["border-radius"]=`${this.borderRadius}px`,n},useHeaderStyle:function(){let n=this,e={};return e.padding=`${n.padding}px`,e["border-bottom"]="1px solid #ddd",e["background-color"]=fd(n.headerBackgroundColor),e["border-radius"]=`${n.borderRadius}px ${n.borderRadius}px 0 0`,e.display="flex",e["justify-content"]="flex-start",e["align-items"]="center",e},useContentStyle:function(){let n=this,e={},t="0 0",r="0 0";return n.hasHeader||(t=`${n.borderRadius}px ${n.borderRadius}px`),n.hasFooter||(r=`${n.borderRadius}px ${n.borderRadius}px`),e["border-radius"]=`${t} ${r}`,e},useFooterStyle:function(){let n=this,e={};return e.padding=`${n.padding}px`,e["border-top"]="1px solid #ddd",e["background-color"]=fd(n.footerBackgroundColor),e["border-radius"]=`0 0 ${n.borderRadius}px ${n.borderRadius}px`,e}},methods:{}};var Bx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{class:{shadow:n.shadow},style:[n.usePanelStyle]},[n.hasHeader?t("div",{style:[n.useHeaderStyle]},[n._t("icon"),n._v(" "),t("div",[n._t("title"),n._v(" "),n._t("description")],2)],2):n._e(),n._v(" "),t("div",{style:[n.useContentStyle]},[n._t("content")],2),n._v(" "),n.hasFooter?t("div",{style:[n.useFooterStyle]},[n._t("footer")],2):n._e()])};Bx._withStripped=!0;const Ax=md({render:Bx,staticRenderFns:[]},(function(n){n&&n("data-v-9a073702_0",{source:"\n.shadow[data-v-9a073702] {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WPanelStripe.vue"],names:[],mappings:";AAoJA;IACA,mGAAA;AACA",file:"WPanelStripe.vue",sourcesContent:["<template>\r\n <div :class=\"{'shadow':shadow}\" :style=\"[usePanelStyle]\">\r\n\r\n <div :style=\"[useHeaderStyle]\" v-if=\"hasHeader\">\r\n <slot name=\"icon\"></slot>\r\n <div>\r\n <slot name=\"title\"></slot>\r\n <slot name=\"description\"></slot>\r\n </div>\r\n </div>\r\n\r\n <div :style=\"[useContentStyle]\">\r\n <slot name=\"content\"></slot>\r\n </div>\r\n\r\n <div :style=\"[useFooterStyle]\" v-if=\"hasFooter\">\r\n <slot name=\"footer\"></slot>\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\n\r\n\r\n/**\r\n * @vue-prop {Boolean} [hasHeader=true] 輸入是否有上部標題區,預設true\r\n * @vue-prop {Boolean} [hasFooter=true] 輸入是否有下部基底區,預設true\r\n * @vue-prop {Number} [padding=20] 輸入內間距,單位為px,預設20\r\n * @vue-prop {Number} [borderRadius=5] 輸入圓角寬度數字,單位為px,預設5\r\n * @vue-prop {String} [headerBackgroundColor='grey lighten-5'] 輸入上方區塊背景顏色字串,預設'grey lighten-5'\r\n * @vue-prop {String} [contentBackgroundColor='white'] 輸入內容區塊背景顏色字串,預設'white'\r\n * @vue-prop {String} [footerBackgroundColor='grey lighten-5'] 輸入下方區塊背景顏色字串,預設'grey lighten-5'\r\n * @vue-prop {Boolean} [shadow=true] 輸入是否為陰影模式,預設true\r\n */\r\nexport default {\r\n props: {\r\n hasHeader: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n hasFooter: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n padding: {\r\n type: Number,\r\n default: 20,\r\n },\r\n borderRadius: {\r\n type: Number,\r\n default: 5,\r\n },\r\n headerBackgroundColor: {\r\n type: String,\r\n default: 'grey lighten-5',\r\n },\r\n contentBackgroundColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n footerBackgroundColor: {\r\n type: String,\r\n default: 'grey lighten-5',\r\n },\r\n shadow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n }\r\n },\r\n mounted: function() {\r\n },\r\n computed: {\r\n\r\n usePanelStyle: function() {\r\n //console.log('computed usePanelStyle')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n s['background-color'] = color2hex(vo.contentBackgroundColor)\r\n s['border-radius'] = `${vo.borderRadius}px`\r\n\r\n return s\r\n },\r\n\r\n useHeaderStyle: function() {\r\n //console.log('computed useHeaderStyle')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n s['padding'] = `${vo.padding}px`\r\n s['border-bottom'] = '1px solid #ddd'\r\n s['background-color'] = color2hex(vo.headerBackgroundColor)\r\n s['border-radius'] = `${vo.borderRadius}px ${vo.borderRadius}px 0 0`\r\n s['display'] = 'flex'\r\n s['justify-content'] = 'flex-start'\r\n s['align-items'] = 'center'\r\n\r\n return s\r\n },\r\n\r\n useContentStyle: function() {\r\n //console.log('computed useContentStyle')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n let ch = '0 0'\r\n let cf = '0 0'\r\n if (!vo.hasHeader) {\r\n ch = `${vo.borderRadius}px ${vo.borderRadius}px`\r\n }\r\n if (!vo.hasFooter) {\r\n cf = `${vo.borderRadius}px ${vo.borderRadius}px`\r\n }\r\n s['border-radius'] = `${ch} ${cf}`\r\n\r\n return s\r\n },\r\n\r\n useFooterStyle: function() {\r\n //console.log('computed useFooterStyle')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n s['padding'] = `${vo.padding}px`\r\n s['border-top'] = '1px solid #ddd'\r\n s['background-color'] = color2hex(vo.footerBackgroundColor)\r\n s['border-radius'] = `0 0 ${vo.borderRadius}px ${vo.borderRadius}px`\r\n\r\n return s\r\n },\r\n\r\n },\r\n methods: {\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.shadow {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\r\n}\r\n</style>\r\n"]},media:void 0})}),Xx,"data-v-9a073702",false,undefined,!1,vd,void 0,void 0);const Vx={components:{},props:{borderColor:{type:String,default:"grey lighten-1"},borderColorHover:{type:String,default:"grey"},borderColorFocus:{type:String,default:"blue darken-2"},borderWidth:{type:Number,default:1},borderWidthHover:{type:Number,default:1},borderWidthFocus:{type:Number,default:2},focused:{type:Boolean,default:!1}},data:function(){return{focusedTrans:!1,hoverTrans:!1}},computed:{changeParam:function(){return this.focusedTrans=this.focused,""},useBorderWidth:function(){let n=this;return n.hoverTrans?n.borderWidthHover:n.borderWidth},useBorderColor:function(){let n=this;return n.hoverTrans?fd(n.borderColorHover):fd(n.borderColor)},useBorderColorFocus:function(){return fd(this.borderColorFocus)}},methods:{}};var Px=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("div",{staticStyle:{position:"relative"},on:{mouseenter:function(e){n.hoverTrans=!0},mouseleave:function(e){n.hoverTrans=!1}}},[n._t("default"),n._v(" "),t("div",{style:"position:absolute; left:0px; right:0px; bottom:0px; z-index:1; border-bottom:"+n.useBorderWidth+"px solid "+n.useBorderColor+";"}),n._v(" "),t("transition",{attrs:{name:"fade"}},[n.focused?t("div",{style:"position:absolute; left:0px; right:0px; bottom:0px; z-index:2; border-bottom:"+n.borderWidthFocus+"px solid "+n.useBorderColorFocus+";"}):n._e()])],2)])};Px._withStripped=!0;const Kx=md({render:Px,staticRenderFns:[]},(function(n){n&&n("data-v-25eae2b8_0",{source:"\n.fade-enter-active[data-v-25eae2b8], .fade-leave-active[data-v-25eae2b8] {\r\n transition: all 0.3s;\n}\n.fade-enter[data-v-25eae2b8], .fade-leave-to[data-v-25eae2b8] {\r\n transform: scaleX(0);\n}\n.fade-enter-to[data-v-25eae2b8], .fade-leave[data-v-25eae2b8] {\r\n transform: scaleX(100%);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WShellBottomLine.vue"],names:[],mappings:";AAiIA;IACA,oBAAA;AACA;AACA;IACA,oBAAA;AACA;AACA;IACA,uBAAA;AACA",file:"WShellBottomLine.vue",sourcesContent:["<template>\r\n <div :changeParam=\"changeParam\">\r\n\r\n <div\r\n style=\"position:relative;\"\r\n @mouseenter=\"hoverTrans=true\"\r\n @mouseleave=\"hoverTrans=false\"\r\n >\r\n\r\n <slot></slot>\r\n\r\n <div\r\n :style=\"`position:absolute; left:0px; right:0px; bottom:0px; z-index:1; border-bottom:${useBorderWidth}px solid ${useBorderColor};`\"\r\n ></div>\r\n\r\n <transition name=\"fade\">\r\n <div\r\n :style=\"`position:absolute; left:0px; right:0px; bottom:0px; z-index:2; border-bottom:${borderWidthFocus}px solid ${useBorderColorFocus};`\"\r\n v-if=\"focused\"\r\n ></div>\r\n </transition>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\n\r\n\r\n/**\r\n * @vue-prop {Number} [borderWidth=1] 輸入線寬度數字,單位為px,預設1\r\n * @vue-prop {String} [borderColor='grey lighten-1'] 輸入線顏色字串,預設'grey lighten-1'\r\n * @vue-prop {String} [borderColorHover='grey'] 輸入滑鼠移入時線顏色字串,預設'grey'\r\n * @vue-prop {String} [borderColorFocus='blue darken-2'] 輸入取得焦點時線顏色字串,預設'blue darken-2'\r\n * @vue-prop {Number} [borderWidthHover=1] 輸入滑鼠移入時線寬度數字,單位為px,預設1\r\n * @vue-prop {Number} [borderWidthFocus=2] 輸入取得焦點時線寬度數字,單位為px,預設2\r\n * @vue-prop {Boolean} [focused=false] 輸入是否為取得焦點狀態,預設false\r\n */\r\nexport default {\r\n components: {\r\n },\r\n props: {\r\n borderColor: {\r\n type: String,\r\n default: 'grey lighten-1',\r\n },\r\n borderColorHover: {\r\n type: String,\r\n default: 'grey',\r\n },\r\n borderColorFocus: {\r\n type: String,\r\n default: 'blue darken-2',\r\n },\r\n borderWidth: {\r\n type: Number,\r\n default: 1,\r\n },\r\n borderWidthHover: {\r\n type: Number,\r\n default: 1,\r\n },\r\n borderWidthFocus: {\r\n type: Number,\r\n default: 2,\r\n },\r\n focused: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n focusedTrans: false,\r\n hoverTrans: false,\r\n }\r\n },\r\n computed: {\r\n\r\n changeParam: function () {\r\n //console.log('computed changeParam')\r\n\r\n let vo = this\r\n\r\n //focusedTrans\r\n vo.focusedTrans = vo.focused\r\n\r\n return ''\r\n },\r\n\r\n useBorderWidth: function() {\r\n //console.log('computed useBorderWidth')\r\n\r\n let vo = this\r\n\r\n if (vo.hoverTrans) {\r\n return vo.borderWidthHover\r\n }\r\n return vo.borderWidth\r\n },\r\n\r\n useBorderColor: function() {\r\n //console.log('computed useBorderColor')\r\n\r\n let vo = this\r\n\r\n if (vo.hoverTrans) {\r\n return color2hex(vo.borderColorHover)\r\n }\r\n return color2hex(vo.borderColor)\r\n },\r\n\r\n useBorderColorFocus: function() {\r\n //console.log('computed useBorderColorFocus')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.borderColorFocus)\r\n },\r\n\r\n },\r\n methods: {\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.fade-enter-active, .fade-leave-active {\r\n transition: all 0.3s;\r\n}\r\n.fade-enter, .fade-leave-to {\r\n transform: scaleX(0);\r\n}\r\n.fade-enter-to, .fade-leave {\r\n transform: scaleX(100%);\r\n}\r\n</style>\r\n"]},media:void 0})}),Vx,"data-v-25eae2b8",false,undefined,!1,vd,void 0,void 0);const Gx={components:{WShellEllipse:rC,WShellBottomLine:Kx,WTextCore:dC},props:{paddingStyle:{type:Object,default:()=>({v:0,h:0})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!1},type:{type:String,default:"any"},value:{type:[String,Number]},textFontSize:{type:String,default:"1rem"},textColor:{type:String,default:"black"},textAlign:{type:String,default:"left"},leftIcon:{type:String,default:""},leftIconSize:{type:Number,default:24},leftIconColor:{type:String,default:"blue"},leftIconColorHover:{type:String,default:"blue darken-1"},leftIconColorFocus:{type:String,default:"blue darken-1"},leftIconTooltip:{type:String,default:""},rightIcon:{type:String,default:""},rightIconSize:{type:Number,default:24},rightIconColor:{type:String,default:"blue"},rightIconColorHover:{type:String,default:"blue darken-1"},rightIconColorFocus:{type:String,default:"blue darken-1"},rightIconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:0},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"transparent"},backgroundColorHover:{type:String,default:"transparent"},backgroundColorFocus:{type:String,default:"transparent"},borderColor:{type:String,default:"transparent"},borderColorHover:{type:String,default:"transparent"},borderColorFocus:{type:String,default:"transparent"},bottomLineBorderColor:{type:String,default:"grey lighten-1"},bottomLineBorderColorHover:{type:String,default:"grey"},bottomLineBorderColorFocus:{type:String,default:"blue darken-1"},bottomLineBorderWidth:{type:Number,default:1},bottomLineBorderWidthHover:{type:Number,default:1},bottomLineBorderWidthFocus:{type:Number,default:2},placeholder:{type:String,default:""},height:{type:Number,default:28},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var Fx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("WShellBottomLine",{attrs:{borderColor:n.bottomLineBorderColor,borderColorHover:n.bottomLineBorderColorHover,borderColorFocus:n.bottomLineBorderColorFocus,borderWidth:n.bottomLineBorderWidth,borderWidthHover:n.bottomLineBorderWidthHover,borderWidthFocus:n.bottomLineBorderWidthFocus,focused:n.focusedTrans}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.leftIcon,leftIconSize:n.leftIconSize,leftIconColor:n.leftIconColor,leftIconColorHover:n.leftIconColorHover,leftIconColorFocus:n.leftIconColorFocus,leftIconTooltip:n.leftIconTooltip,rightIcon:n.rightIcon,rightIconSize:n.rightIconSize,rightIconColor:n.rightIconColor,rightIconColorHover:n.rightIconColorHover,rightIconColorFocus:n.rightIconColorFocus,rightIconTooltip:n.rightIconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")},"click-right":function(e){return n.$emit("click-right")}}},[t("WTextCore",{attrs:{type:n.type,textFontSize:n.textFontSize,textColor:n.textColor,textAlign:n.textAlign,placeholder:n.placeholder,height:n.height,editable:n.editable,value:n.value,focused:n.focusedTrans},on:{"update:focused":n.changeFocused,select:function(e,t,r){n.$emit("select",e,t,r)},blur:function(e,t,r){n.$emit("blur",e,t,r)},enter:function(e,t,r){n.$emit("enter",e,t,r)},input:function(e,t,r){n.$emit("input",e,t,r)},change:function(e,t,r){n.$emit("change",e,t,r)}}})],1)],1)],1)};Fx._withStripped=!0;const Yx=md({render:Fx,staticRenderFns:[]},(function(n){n&&n("data-v-5d189428_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WText.vue"},media:void 0})}),Gx,"data-v-5d189428",false,undefined,!1,vd,void 0,void 0);const Rx={components:{WPopup:ib,WText:Yx,WButtonChip:$f,WIcon:sp},props:{value:{type:[String,Number],default:""},title:{type:String,default:"Editor"},titleColor:{type:String,default:"grey darken-3"},titleFontSize:{type:String,default:"0.8rem"},contentIcon:{type:String,default:"M5,3C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19H5V5H12V3H5M17.78,4C17.61,4 17.43,4.07 17.3,4.2L16.08,5.41L18.58,7.91L19.8,6.7C20.06,6.44 20.06,6 19.8,5.75L18.25,4.2C18.12,4.07 17.95,4 17.78,4M15.37,6.12L8,13.5V16H10.5L17.87,8.62L15.37,6.12Z"},contentIconColor:{type:String,default:"orange"},contentIconSize:{type:Number,default:28},inputTextColor:{type:String,default:"grey darken-3"},inputTextBottomLineBorderColor:{type:String,default:"grey lighten-1"},inputTextBottomLineBorderColorHover:{type:String,default:"grey"},inputTextBottomLineBorderColorFocus:{type:String,default:"blue darken-1"},saveBtnText:{type:String,default:"Save"},saveBtnTextColor:{type:String,default:"grey darken-3"},saveBtnTextColorHover:{type:String,default:"grey darken-2"},saveBtnIcon:{type:String,default:fc},saveBtnIconSize:{type:Number,default:22},saveBtnIconColor:{type:String,default:"grey darken-1"},saveBtnIconColorHover:{type:String,default:"grey darken-2"},saveBtnIconRippleColor:{type:String,default:"rgba(200,200,200,0.4)"},saveBtnBackgroundColor:{type:String,default:"white"},saveBtnBackgroundColorHover:{type:String,default:"grey lighten-3"},headerBackgroundColor:{type:String,default:"grey lighten-5"},contentBackgroundColor:{type:String,default:"white"},footerBackgroundColor:{type:String,default:"grey lighten-5"},minWidthForValue:{type:Number,default:30},minWidthForPopup:{type:Number,default:300}},data:function(){return{valueTemp:null,showEdit:!1}},computed:{useTitleFontSize:function(){let n=this.titleFontSize;return n=Ts(n,";",""),`font-size:${n};`},useTitleColor:function(){return fd(this.titleColor)},useHeaderBackgroundColor:function(){return fd(this.headerBackgroundColor)},useContentBackgroundColor:function(){return fd(this.contentBackgroundColor)},useFooterBackgroundColor:function(){return fd(this.footerBackgroundColor)}},methods:{evShow:function(){let n=this;n.valueTemp=n.value,n.$nextTick((()=>{n.showEdit=!0}))},evHide:function(){let n=this;n.$nextTick((()=>{n.$emit("close"),n.showEdit=!1}))},ckSave:function(n,e){let t=this;t.$nextTick((()=>{t.$emit("input",t.valueTemp),t.valueTemp="",n.funHide()}))}}};var Lx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("w-popup",{attrs:{isolated:!0,_minWidth:"minWidthForPopup"},on:{show:n.evShow,hide:n.evHide},scopedSlots:n._u([{key:"trigger",fn:function(){return[t("div",{style:"min-width:"+n.minWidthForValue+"px; min-height:1rem; cursor:pointer;"},[n._v("\n "+n._s(n.value)+"\n ")])]},proxy:!0},{key:"content",fn:function(e){return[t("div",{style:"min-width:"+n.minWidthForPopup+"px; text-align:left; border-radius:5px; overflow:hidden;"},[""!==n.title?t("div",[t("div",{style:" padding:10px; color:"+n.useTitleColor+"; "+n.useTitleFontSize+"; background:"+n.useHeaderBackgroundColor+";"},[n._v("\n "+n._s(n.title)+"\n ")])]):n._e(),n._v(" "),t("div",{style:"padding:20px; border-top:1px solid #ddd; border-bottom:1px solid #ddd; background:"+n.useContentBackgroundColor+"; display:flex; align-items:center;"},[t("div",{staticStyle:{"padding-right":"10px"}},[t("WIcon",{attrs:{icon:n.contentIcon,size:n.contentIconSize,color:n.contentIconColor}})],1),n._v(" "),t("div",{staticStyle:{width:"100%"}},[n.showEdit?t("WText",{attrs:{textColor:n.inputTextColor,bottomLineBorderColor:n.inputTextBottomLineBorderColor,bottomLineBorderColorHover:n.inputTextBottomLineBorderColorHover,bottomLineBorderColorFocus:n.inputTextBottomLineBorderColorFocus},on:{enter:function(t){return n.ckSave(e)}},model:{value:n.valueTemp,callback:function(e){n.valueTemp=e},expression:"valueTemp"}}):n._e()],1)]),n._v(" "),t("div",{style:"padding:10px; background:"+n.useFooterBackgroundColor+"; text-align:right;"},[t("WButtonChip",{attrs:{shiftLeft:-5,icon:n.saveBtnIcon,iconColor:n.saveBtnIconColor,iconColorHover:n.saveBtnIconColorHover,text:n.saveBtnText,textColor:n.saveBtnTextColor,textColorHover:n.saveBtnTextColorHover,backgroundColor:n.saveBtnBackgroundColor,backgroundColorHover:n.saveBtnBackgroundColorHover},on:{click:function(t){return n.ckSave(e)}}})],1)])]}}])})};Lx._withStripped=!0;const jx=md({render:Lx,staticRenderFns:[]},(function(n){n&&n("data-v-1b8db19d_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WPopupEditText.vue"},media:void 0})}),Rx,"data-v-1b8db19d",false,undefined,!1,vd,void 0,void 0);var Nx={components:{WIcon:sp},props:{value:{type:Number,default:0},decimal:{type:Number,default:1},title:{type:String,default:""},titleTextColor:{type:String,default:"grey darken-2"},titleTextFontSize:{type:String,default:"0.85rem"},height:{type:Number,default:4},borderRadius:{type:Number,default:5},progColor:{type:String,default:"lime accent-4"},progBackgroundColor:{type:String,default:"light-green lighten-5"},iconSize:{type:Number,default:20},iconWaiting:{type:String,default:Cc},iconFinish:{type:String,default:pc},iconWaitingColor:{type:String,default:"grey"},iconFinishColor:{type:String,default:"green"},enableIconWaiting:{type:Boolean,default:!0},enableIconFinish:{type:Boolean,default:!0},valueTextColor:{type:String,default:"grey darken-2"},valueTextFontSize:{type:String,default:"0.85rem"}},data:function(){return{mdiCheck:pc,mdiOrbitVariant:Cc}},computed:{status:function(){return this.value<=0?"waiting":this.value>=100?"finish":"running"},useProg:function(){let n=this.value;return n=Math.max(n,0),n=Math.min(n,100),n=this.digValue(n),n},useTitleTextFontSize:function(){let n=this.titleTextFontSize;return n=Ts(n,";",""),`font-size:${n};`},useBorderRadius:function(){return`border-radius:${this.borderRadius}px;`},useProgColor:function(){return fd(this.progColor)},useProgBackgroundColor:function(){return fd(this.progBackgroundColor)},useTitleTextColor:function(){return fd(this.titleTextColor)},useIconWaitingColor:function(){return fd(this.iconWaitingColor)},useIconFinishColor:function(){return fd(this.iconFinishColor)},useValueTextColor:function(){return fd(this.valueTextColor)},useValueTextFontSize:function(){let n=this.valueTextFontSize;return n=Ts(n,";",""),`font-size:${n};`}},methods:{digValue:function(n){return function(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return Yi(n)&&_i(e)?(n=Ri(n),Di(n,e).toFixed(e)):""}(n,this.decimal)}}};const zx=Nx;var Jx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",[n.title?t("div",{style:"color:"+n.useTitleTextColor+"; "+n.useTitleTextFontSize+";"},[n._v("\n "+n._s(n.title)+"\n ")]):n._e(),n._v(" "),t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("div",{style:n.useBorderRadius+" overflow:hidden; width:100%; height:"+n.height+"px;"},[t("div",{style:"background:"+n.useProgBackgroundColor+"; height:"+n.height+"px;"},[t("div",{style:"background:"+n.useProgColor+"; width:"+n.useProg+"%; height:"+n.height+"px;"})])]),n._v(" "),t("div",{staticStyle:{"padding-left":"5px"}},[n.enableIconWaiting&&"waiting"===n.status||n.enableIconFinish&&"finish"===n.status?t("WIcon",{attrs:{icon:"waiting"===n.status?n.iconWaiting:n.iconFinish,color:"waiting"===n.status?n.useIconWaitingColor:n.useIconFinishColor,size:n.iconSize}}):t("div",{style:"color:"+n.useValueTextColor+"; "+n.useValueTextFontSize+";"},[t("div",[n._v(n._s(n.useProg)+"%")])])],1)])])};Jx._withStripped=!0;const Ox=md({render:Jx,staticRenderFns:[]},(function(n){n&&n("data-v-0683e45c_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WProgressBar.vue"},media:void 0})}),zx,"data-v-0683e45c",false,undefined,!1,vd,void 0,void 0);const Dx={components:{WTooltip:Jf},props:{text:{type:String,default:""},value:{type:Number,default:0},color:{type:String,default:"rgba(100,100,100,0.8)"},trackColor:{type:String,default:"rgba(150,150,150,0.4)"},size:{type:Number,default:120},width:{type:Number,default:6},textColor:{type:String,default:"#666"},tooltip:{type:String,default:""},tooltipBorderRadius:{type:Number,default:4},tooltipPaddingStyle:{type:Object,default:()=>({v:5,h:8})},tooltipTextFontSize:{type:String,default:"0.85rem"},tooltipTextColor:{type:String,default:"white"},tooltipBackgroundColor:{type:String,default:"rgba(60,60,60,0.75)"}},data:function(){return{}},mounted:function(){},computed:{radius:function(){return this.size/2-this.width/2},sizeHalf:function(){return this.size/2},widthOuter:function(){return 1*this.width},widthInner:function(){return this.width},progSdAll:function(){return 2*Math.PI*this.radius},progSdNow:function(){let n=this.value;return n<0&&(n=0),n>100&&(n=100),(100-n)/100*this.progSdAll},valueStyle:function(){let n=this,e=n.size/5.4,t=(n.size-26)/94*.25+.75;return{color:n.useColor,"font-size":e+"pt",transform:`scale(${t})`}},textStyle:function(){let n=this.size/12;return{color:this.useTextColor,"font-size":n+"pt",transform:"scale(1.2)"}},useColor:function(){return fd(this.color)},useTrackColor:function(){return fd(this.trackColor)},useTextColor:function(){return fd(this.textColor)},hasTooltop:function(){return Fi(this.tooltip)}},methods:{clickBtn:function(){let n=this;n.$nextTick((()=>{n.$emit("click")}))}}};var Ex=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block"}},[t("WTooltip",{attrs:{displayType:"line",isolated:!0,borderRadius:n.tooltipBorderRadius,paddingStyle:n.tooltipPaddingStyle,textFontSize:n.tooltipTextFontSize,textColor:n.tooltipTextColor,backgroundColor:n.tooltipBackgroundColor,editable:n.hasTooltop},scopedSlots:n._u([{key:"trigger",fn:function(){return[t("div",{style:"position:relative; width:"+n.size+"px; height:"+n.size+"px;"},[t("svg",{style:"transform-origin:radius; transform:rotate(-90deg);",attrs:{width:n.size,height:n.size,viewPort:"0 0 "+n.size+" "+n.size,version:"1.1",xmlns:"http://www.w3.org/2000/svg"}},[t("circle",{attrs:{r:n.radius,cx:n.sizeHalf,cy:n.sizeHalf,fill:"transparent","stroke-dasharray":n.progSdAll,"stroke-dashoffset":0,stroke:n.useTrackColor,"stroke-width":n.widthOuter}}),n._v(" "),t("circle",{staticStyle:{transition:"all 0.6s ease-in-out"},attrs:{r:n.radius,cx:n.sizeHalf,cy:n.sizeHalf,fill:"transparent","stroke-dasharray":n.progSdAll,"stroke-dashoffset":n.progSdNow,stroke:n.useColor,"stroke-width":n.widthInner}})]),n._v(" "),t("div",{style:"position:absolute; top:50%; left:50%; width:"+n.size+"px; height:"+n.size+"px;"},[t("div",{staticStyle:{"text-align":"center",transform:"translate(-50%,-50%)"}},[t("div",{style:[n.valueStyle]},[n._v(n._s(n.value)+"%")]),n._v(" "),t("div",{style:[n.textStyle]},[n._v(n._s(n.text))])])])])]},proxy:!0},{key:"content",fn:function(){return[n._v("\n "+n._s(n.tooltip)+"\n ")]},proxy:!0}])})],1)};Ex._withStripped=!0;const $x=md({render:Ex,staticRenderFns:[]},(function(n){n&&n("data-v-61cb34f4_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WProgressCircle.vue"},media:void 0})}),Dx,"data-v-61cb34f4",false,undefined,!1,vd,void 0,void 0);const Qx={components:{WIconLoading:xd},props:{pathItems:{type:Array,default:()=>["https://cdn.jsdelivr.net/npm/quill@1.3.7/dist/quill.min.js","https://cdn.jsdelivr.net/npm/quill@1.3.7/dist/quill.snow.min.css","https://cdn.jsdelivr.net/npm/w-quill-vue@2.0.4/dist/w-quill-vue.umd.js"]},value:{type:String,default:""},settings:{type:Object,default:()=>{}},height:{type:Number,default:250},editable:{type:Boolean,default:!0}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){let n=this;rl(n.pathItems).then((e=>{if("loaded"!==e){let n=window["w-quill-vue"];n.default&&(n=n.default),wd().component("w-quill-vue",n)}n.cmpName="w-quill-vue"}))},computed:{},methods:{}};var Mx=function(){var n=this,e=n.$createElement;return(n._self._c||e)(n.cmpName,{ref:"$self",tag:"component",attrs:{settings:n.settings,height:n.height,editable:n.editable,value:n.value},on:{input:function(e){n.$emit("input",e)}}})};Mx._withStripped=!0;const _x=md({render:Mx,staticRenderFns:[]},(function(n){n&&n("data-v-52bc7988_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WQuillVueDyn.vue"},media:void 0})}),Qx,"data-v-52bc7988",false,undefined,!1,vd,void 0,void 0);var Ux={props:{value:{type:[Boolean,String],default:!1},text:{type:String,default:""},textColor:{type:String,default:"black"},textColorHover:{type:String,default:"grey darken-3"},textFontSize:{type:String,default:"0.85rem"},switchSize:{type:Number,default:24},checkedSwitchCircleColor:{type:String,default:"blue darken-3"},checkedSwitchCircleColorHover:{type:String,default:"blue darken-2"},checkedSwitchCircleColorDisabled:{type:String,default:"grey"},uncheckedSwitchCircleColor:{type:String,default:"#fafafa"},uncheckedSwitchCircleColorHover:{type:String,default:"#fff"},uncheckedSwitchCircleColorDisabled:{type:String,default:"#bbb"},checkedSwitchBarColor:{type:String,default:"rgba(24, 103, 192, 0.6)"},checkedSwitchBarColorHover:{type:String,default:"rgba(24, 103, 192, 0.5)"},checkedSwitchBarColorDisabled:{type:String,default:"#ececec"},uncheckedSwitchBarColor:{type:String,default:"#c5c5c5"},uncheckedSwitchBarColorHover:{type:String,default:"#ccc"},uncheckedSwitchBarColorDisabled:{type:String,default:"#ececec"},editable:{type:Boolean,default:!0}},data:function(){return{hoverTrans:!1,dh:4,b:!1}},computed:{changeParam:function(){let n=this,e=n.value;return Tc(e)?n.b=e:n.b="y"===e,""},heightCir:function(){return this.switchSize-this.dh},widthCir:function(){return this.heightCir},heightBar:function(){return this.switchSize/24*14},widthBar:function(){return this.switchSize/24*36},effTextColor:function(){return fd(this.textColor)},effTextColorHover:function(){return fd(this.textColorHover)},useTextColor:function(){let n,e=this;return e.editable?(n=e.hoverTrans?e.effTextColorHover:e.effTextColor,n):e.effTextColor},useTextFontSize:function(){let n=this.textFontSize;return n=Ts(n,";",""),`font-size:${n};`},effCheckedSwitchCircleColor:function(){return fd(this.checkedSwitchCircleColor)},effCheckedSwitchCircleColorHover:function(){return fd(this.checkedSwitchCircleColorHover)},effCheckedSwitchCircleColorDisabled:function(){return fd(this.checkedSwitchCircleColorDisabled)},useCheckedSwitchCircleColor:function(){let n=this;return n.editable?n.hoverTrans?n.effCheckedSwitchCircleColorHover:n.effCheckedSwitchCircleColor:n.effCheckedSwitchCircleColorDisabled},effUncheckedSwitchCircleColor:function(){return fd(this.uncheckedSwitchCircleColor)},effUncheckedSwitchCircleColorHover:function(){return fd(this.uncheckedSwitchCircleColorHover)},effUncheckedSwitchCircleColorDisabled:function(){return fd(this.uncheckedSwitchCircleColorDisabled)},useUncheckedSwitchCircleColor:function(){let n=this;return n.editable?n.hoverTrans?n.effUncheckedSwitchCircleColorHover:n.effUncheckedSwitchCircleColor:n.effUncheckedSwitchCircleColorDisabled},useSwitchCircleColor:function(){let n=this;return n.b?n.useCheckedSwitchCircleColor:n.useUncheckedSwitchCircleColor},effCheckedSwitchBarColor:function(){return fd(this.checkedSwitchBarColor)},effCheckedSwitchBarColorHover:function(){return fd(this.checkedSwitchBarColorHover)},effCheckedSwitchBarColorDisabled:function(){return fd(this.checkedSwitchBarColorDisabled)},useCheckedSwitchBarColor:function(){let n=this;return n.editable?n.hoverTrans?n.effCheckedSwitchBarColorHover:n.effCheckedSwitchBarColor:n.effCheckedSwitchBarColorDisabled},effUncheckedSwitchBarColor:function(){return fd(this.uncheckedSwitchBarColor)},effUncheckedSwitchBarColorHover:function(){return fd(this.uncheckedSwitchBarColorHover)},effUncheckedSwitchBarColorDisabled:function(){return fd(this.uncheckedSwitchBarColorDisabled)},useUncheckedSwitchBarColor:function(){let n=this;return n.editable?n.hoverTrans?n.effUncheckedSwitchBarColorHover:n.effUncheckedSwitchBarColor:n.effUncheckedSwitchBarColorDisabled},useSwitchBarColor:function(){let n=this;return n.b?n.useCheckedSwitchBarColor:n.useUncheckedSwitchBarColor}},methods:{toogleValue:function(){let n=this;if(!n.editable)return;let e=n.b;e=!e;let t=null;Tc(n.value)?(t=!1,e&&(t=!0)):(t="n",e&&(t="y")),n.$nextTick((()=>{n.$emit("input",t)}))}}};const qx=Ux;var nS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{style:"display:inline-block; "+(n.editable?"cursor:pointer;":""),attrs:{changeParam:n.changeParam},on:{click:n.toogleValue,mouseenter:function(e){n.hoverTrans=!0,n.$emit("mouseenter",e)},mouseleave:function(e){n.hoverTrans=!1,n.$emit("mouseleave",e)}}},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("div",{style:"padding:2px 0px; height:"+(4+Math.max(n.heightCir,n.heightBar))+"px;"},[t("div",{style:"position:relative; padding-top:"+(n.heightCir-n.heightBar)/2+"px;"},[t("div",{staticClass:"ts",style:"width:"+n.widthBar+"px; height:"+n.heightBar+"px; border-radius:8px; background:"+n.useSwitchBarColor+";"}),n._v(" "),t("div",{staticClass:"ts bs",style:"position:absolute; top:0px; left:"+(n.b?n.widthBar-n.widthCir:0)+"px; width:"+n.widthCir+"px; height:"+n.heightCir+"px; border-radius:50%; background:"+n.useSwitchCircleColor+";"})])]),n._v(" "),""!==n.text?t("div",{staticClass:"ts",style:"text-transform:none; padding-left:5px; color:"+n.useTextColor+"; "+n.useTextFontSize},[n._v("\n "+n._s(n.text)+"\n ")]):n._e()])])};nS._withStripped=!0;const eS=md({render:nS,staticRenderFns:[]},(function(n){n&&n("data-v-42fab073_0",{source:"\n.ts[data-v-42fab073] {\r\n transition:all 0.3s;\n}\n.bs[data-v-42fab073] {\r\n box-shadow: 0px 2px 4px -1px rgb(0 0 0 / 20%), 0px 4px 5px 0px rgb(0 0 0 / 14%), 0px 1px 10px 0px rgb(0 0 0 / 12%);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WSwitch.vue"],names:[],mappings:";AA+WA;IACA,mBAAA;AACA;AACA;IACA,kHAAA;AACA",file:"WSwitch.vue",sourcesContent:["<template>\r\n <div\r\n :style=\"`display:inline-block; ${editable?'cursor:pointer;':''}`\"\r\n :changeParam=\"changeParam\"\r\n @click=\"toogleValue\"\r\n @mouseenter=\"hoverTrans=true;$emit('mouseenter',$event)\"\r\n @mouseleave=\"hoverTrans=false;$emit('mouseleave',$event)\"\r\n >\r\n\r\n <div style=\"display:flex; align-items:center;\">\r\n\r\n \x3c!-- 用padding:2px 0px與height+4撐開至預設高度24px --\x3e\r\n <div :style=\"`padding:2px 0px; height:${4+Math.max(heightCir,heightBar)}px;`\">\r\n <div :style=\"`position:relative; padding-top:${(heightCir-heightBar)/2}px;`\">\r\n\r\n <div class=\"ts\" :style=\"`width:${widthBar}px; height:${heightBar}px; border-radius:8px; background:${useSwitchBarColor};`\">\r\n </div>\r\n\r\n <div class=\"ts bs\" :style=\"`position:absolute; top:0px; left:${ b ? widthBar-widthCir : 0 }px; width:${widthCir}px; height:${heightCir}px; border-radius:50%; background:${useSwitchCircleColor};`\">\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <div class=\"ts\" :style=\"`text-transform:none; padding-left:5px; color:${useTextColor}; ${useTextFontSize}`\" v-if=\"text!==''\">\r\n {{text}}\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport isbol from 'wsemi/src/isbol.mjs'\r\nimport replace from 'wsemi/src/replace.mjs'\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\n\r\n\r\n/**\r\n * @vue-prop {Boolean|String} [value=false] 輸入是否狀態的布林值或字串,可接受true或false,或是'y'或'n',預設false\r\n * @vue-prop {String} [text=''] 輸入文字字串,預設''\r\n * @vue-prop {String} [textColor='black'] 輸入文字顏色字串,預設'black'\r\n * @vue-prop {String} [textColorHover='grey darken-3'] 輸入滑鼠移入時文字顏色字串,預設'grey darken-3'\r\n * @vue-prop {String} [textFontSize='0.85rem'] 輸入文字字型大小字串,預設'0.85rem'\r\n * @vue-prop {Number} [switchSize=24] 輸入切換器大小,單位為px,預設24\r\n * @vue-prop {String} [checkedSwitchCircleColor='blue darken-3'] 輸入可編輯時,有效(true|'y')切換器鈕扣區顏色字串,預設'blue darken-3'\r\n * @vue-prop {String} [checkedSwitchCircleColorHover='blue darken-2'] 輸入滑鼠移入時可編輯時,有效(true|'y')切換器鈕扣區顏色字串,預設'blue darken-2'\r\n * @vue-prop {String} [checkedSwitchCircleColorDisabled='grey'] 輸入不可編輯時,有效(true|'y')切換器鈕扣區顏色字串,預設'grey'\r\n * @vue-prop {String} [uncheckedSwitchCircleColor='#8ad'] 輸入可編輯時,無效(false|'n')切換器鈕扣區顏色字串,預設'#8ad'\r\n * @vue-prop {String} [uncheckedSwitchCircleColorHover='#9bd'] 輸入滑鼠移入時可編輯時,無效(false|'n')切換器鈕扣區顏色字串,預設'#9bd'\r\n * @vue-prop {String} [uncheckedSwitchCircleColorDisabled='#bbb'] 輸入不可編輯時,無效(false|'n')切換器鈕扣區顏色字串,預設'#bbb'\r\n * @vue-prop {String} [checkedSwitchBarColor='blue darken-3'] 輸入可編輯時,有效(true|'y')切換器滑動區顏色字串,預設'blue darken-3'\r\n * @vue-prop {String} [checkedSwitchBarColorHover='blue darken-2'] 輸入滑鼠移入時可編輯時,有效(true|'y')切換器滑動區顏色字串,預設'blue darken-2'\r\n * @@vue-prop {String} [checkedSwitchBarColorDisabled='grey'] 輸入不可編輯時,有效(true|'y')切換器滑動區顏色字串,預設'grey'\r\n * @vue-prop {String} [uncheckedSwitchBarColor='#8ad'] 輸入可編輯時,無效(false|'n')切換器滑動區顏色字串,預設'#8ad'\r\n * @vue-prop {String} [uncheckedSwitchBarColorHover='#9bd'] 輸入滑鼠移入時可編輯時,無效(false|'n')切換器滑動區顏色字串,預設'#9bd'\r\n * @vue-prop {String} [uncheckedSwitchBarColorDisabled='#bbb'] 輸入不可編輯時,無效(false|'n')切換器滑動區顏色字串,預設'#bbb'\r\n * @vue-prop {Boolean} [editable=true] 輸入是否為編輯模式,預設true\r\n */\r\nexport default {\r\n props: {\r\n value: {\r\n type: [Boolean, String],\r\n default: false,\r\n },\r\n text: {\r\n type: String,\r\n default: '',\r\n },\r\n textColor: {\r\n type: String,\r\n default: 'black',\r\n },\r\n textColorHover: {\r\n type: String,\r\n default: 'grey darken-3',\r\n },\r\n textFontSize: {\r\n type: String,\r\n default: '0.85rem',\r\n },\r\n switchSize: {\r\n type: Number,\r\n default: 24,\r\n },\r\n checkedSwitchCircleColor: {\r\n type: String,\r\n default: 'blue darken-3',\r\n },\r\n checkedSwitchCircleColorHover: {\r\n type: String,\r\n default: 'blue darken-2',\r\n },\r\n checkedSwitchCircleColorDisabled: {\r\n type: String,\r\n default: 'grey',\r\n },\r\n uncheckedSwitchCircleColor: {\r\n type: String,\r\n default: '#fafafa',\r\n },\r\n uncheckedSwitchCircleColorHover: {\r\n type: String,\r\n default: '#fff',\r\n },\r\n uncheckedSwitchCircleColorDisabled: {\r\n type: String,\r\n default: '#bbb',\r\n },\r\n checkedSwitchBarColor: {\r\n type: String,\r\n default: 'rgba(24, 103, 192, 0.6)',\r\n },\r\n checkedSwitchBarColorHover: {\r\n type: String,\r\n default: 'rgba(24, 103, 192, 0.5)',\r\n },\r\n checkedSwitchBarColorDisabled: {\r\n type: String,\r\n default: '#ececec',\r\n },\r\n uncheckedSwitchBarColor: {\r\n type: String,\r\n default: '#c5c5c5',\r\n },\r\n uncheckedSwitchBarColorHover: {\r\n type: String,\r\n default: '#ccc',\r\n },\r\n uncheckedSwitchBarColorDisabled: {\r\n type: String,\r\n default: '#ececec',\r\n },\r\n editable: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n\r\n hoverTrans: false,\r\n\r\n dh: 4,\r\n\r\n b: false,\r\n\r\n }\r\n },\r\n computed: {\r\n\r\n changeParam: function () {\r\n //console.log('computed changeParam')\r\n\r\n let vo = this\r\n\r\n //value for trigger\r\n let value = vo.value\r\n\r\n //b\r\n if (isbol(value)) {\r\n vo.b = value\r\n }\r\n else {\r\n vo.b = (value === 'y')\r\n }\r\n\r\n return ''\r\n },\r\n\r\n heightCir: function() { // heightCir: 20,\r\n let vo = this\r\n return vo.switchSize - vo.dh\r\n },\r\n\r\n widthCir: function() { // widthCir: 20,\r\n let vo = this\r\n return vo.heightCir\r\n },\r\n\r\n heightBar: function() { // heightBar: 14,\r\n let vo = this\r\n return vo.switchSize / 24 * 14\r\n },\r\n\r\n widthBar: function() { // widthBar: 36,\r\n let vo = this\r\n return vo.switchSize / 24 * 36\r\n },\r\n\r\n effTextColor: function() {\r\n let vo = this\r\n return color2hex(vo.textColor)\r\n },\r\n\r\n effTextColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.textColorHover)\r\n },\r\n\r\n useTextColor: function() {\r\n let vo = this\r\n let r\r\n if (!vo.editable) {\r\n return vo.effTextColor\r\n }\r\n r = vo.hoverTrans ? vo.effTextColorHover : vo.effTextColor\r\n return r\r\n },\r\n\r\n useTextFontSize: function() {\r\n let vo = this\r\n let s = vo.textFontSize\r\n s = replace(s, ';', '')\r\n return `font-size:${s};`\r\n },\r\n\r\n effCheckedSwitchCircleColor: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchCircleColor)\r\n },\r\n\r\n effCheckedSwitchCircleColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchCircleColorHover)\r\n },\r\n\r\n effCheckedSwitchCircleColorDisabled: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchCircleColorDisabled)\r\n },\r\n\r\n useCheckedSwitchCircleColor: function() {\r\n let vo = this\r\n if (!vo.editable) {\r\n return vo.effCheckedSwitchCircleColorDisabled\r\n }\r\n return vo.hoverTrans ? vo.effCheckedSwitchCircleColorHover : vo.effCheckedSwitchCircleColor\r\n },\r\n\r\n effUncheckedSwitchCircleColor: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchCircleColor)\r\n },\r\n\r\n effUncheckedSwitchCircleColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchCircleColorHover)\r\n },\r\n\r\n effUncheckedSwitchCircleColorDisabled: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchCircleColorDisabled)\r\n },\r\n\r\n useUncheckedSwitchCircleColor: function() {\r\n let vo = this\r\n if (!vo.editable) {\r\n return vo.effUncheckedSwitchCircleColorDisabled\r\n }\r\n return vo.hoverTrans ? vo.effUncheckedSwitchCircleColorHover : vo.effUncheckedSwitchCircleColor\r\n },\r\n\r\n useSwitchCircleColor: function() {\r\n let vo = this\r\n return vo.b ? vo.useCheckedSwitchCircleColor : vo.useUncheckedSwitchCircleColor\r\n },\r\n\r\n effCheckedSwitchBarColor: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchBarColor)\r\n },\r\n\r\n effCheckedSwitchBarColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchBarColorHover)\r\n },\r\n\r\n effCheckedSwitchBarColorDisabled: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchBarColorDisabled)\r\n },\r\n\r\n useCheckedSwitchBarColor: function() {\r\n let vo = this\r\n if (!vo.editable) {\r\n return vo.effCheckedSwitchBarColorDisabled\r\n }\r\n return vo.hoverTrans ? vo.effCheckedSwitchBarColorHover : vo.effCheckedSwitchBarColor\r\n },\r\n\r\n effUncheckedSwitchBarColor: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchBarColor)\r\n },\r\n\r\n effUncheckedSwitchBarColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchBarColorHover)\r\n },\r\n\r\n effUncheckedSwitchBarColorDisabled: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchBarColorDisabled)\r\n },\r\n\r\n useUncheckedSwitchBarColor: function() {\r\n let vo = this\r\n if (!vo.editable) {\r\n return vo.effUncheckedSwitchBarColorDisabled\r\n }\r\n return vo.hoverTrans ? vo.effUncheckedSwitchBarColorHover : vo.effUncheckedSwitchBarColor\r\n },\r\n\r\n useSwitchBarColor: function() {\r\n let vo = this\r\n return vo.b ? vo.useCheckedSwitchBarColor : vo.useUncheckedSwitchBarColor\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n toogleValue: function () {\r\n // console.log('methods toogleValue')\r\n\r\n let vo = this\r\n\r\n //check\r\n if (!vo.editable) {\r\n return\r\n }\r\n\r\n //toogle\r\n let b = vo.b\r\n b = !b\r\n\r\n //value\r\n let value = null\r\n if (isbol(vo.value)) {\r\n value = false\r\n if (b) {\r\n value = true\r\n }\r\n }\r\n else {\r\n value = 'n'\r\n if (b) {\r\n value = 'y'\r\n }\r\n }\r\n\r\n //nextTick\r\n vo.$nextTick(() => {\r\n\r\n //emit\r\n vo.$emit('input', value)\r\n\r\n })\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.ts {\r\n transition:all 0.3s;\r\n}\r\n.bs {\r\n box-shadow: 0px 2px 4px -1px rgb(0 0 0 / 20%), 0px 4px 5px 0px rgb(0 0 0 / 14%), 0px 1px 10px 0px rgb(0 0 0 / 12%);\r\n}\r\n</style>\r\n"]},media:void 0})}),qx,"data-v-42fab073",false,undefined,!1,vd,void 0,void 0);var tS=function(n,e,t){for(var r=-1,o=n.length,i=e.length,l={};++r<o;){var a=r<i?e[r]:void 0;t(l,n[r],a)}return l},rS=fh,oS=tS;var iS=function(n,e){return oS(n||[],e||[],rS)};function lS(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(!Fg(n))return{};if(Fg(e))return ud(n)===ud(e)?iS(n,e):{};let t=[];for(let r=0;r<ud(n);r++)t.push(rg(e));return iS(n,t)}function aS(n,e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(!Fg(n))return[];if(!Fg(e))return[];let r=ii(n,(n=>function(n,e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(!ks(n))return{};if(!Fg(e))return{};let r={};return Fn(e,(function(e){r[e]=wo(n,e,t)})),r}(n,e,t)));return r}var dS={directives:{domresize:ac()},components:{WButtonCircle:Uf,WPopup:ib,WText:Yx,WButtonChip:$f,WAggridVueDyn:Hd},props:{pathItems:{type:Array},name:{type:String,default:""},description:{type:String,default:""},inforPaddingStyle:{type:Object,default:()=>({v:0,h:0})},menuPaddingStyle:{type:Object,default:()=>({v:3,h:3})},menuBackgroundColor:{type:String,default:"transparent"},sortColIds:{type:[String,Array],default:""},hideIds:{type:[String,Array],default:""},fixIds:{type:[String,Array],default:""},checkId:{type:String,default:""},removeIdsWhenDownload:{type:[String,Array],default:""},funGetLtdtHookWhenDownload:{type:Function,default:null},funGetMatHookWhenDownload:{type:Function,default:null},useHeadWhenDownload:{type:Boolean,default:!1},fileNameWhenDownload:{type:String,default:"data.xlsx"},sheetNameWhenDownload:{type:String,default:"data"},editable:{type:Boolean,default:!1},textLabelDataName:{type:String,default:"Data name:"},textPlaceholderDataName:{type:String,default:"Please enter data name"},textLabelDataDescription:{type:String,default:"Data description:"},textPlaceholderDataDescription:{type:String,default:"Please enter data description"},tooltipAddRow:{type:String,default:"add new row"},tooltipDeleteSelectedRows:{type:String,default:"delete selected rows"},tooltipDownloadExcelFile:{type:String,default:"download data to Excel file"},tooltipUploadExcelFile:{type:String,default:"upload data to Excel file"},successMsgFromAddRow:{type:String,default:"add row successfully"},errorMsgFromAddRow:{type:String,default:"can not add row"},errorMsgFromRemoveRow:{type:String,default:"can not remove selected rows"},successMsgFromUploadData:{type:String,default:"upload data successfully"},errorMsgFromUploadData:{type:String,default:"can not upload data"},errorMsgFromUploadEmptyData:{type:String,default:"no effective data"},successMsgFromDownloadData:{type:String,default:"download data successfully"},errorMsgFromDownloadData:{type:String,default:"can not download data"},errorMsgFromNoName:{type:String,default:"no data name"},errorMsgFromNoData:{type:String,default:"no data"},uploadModeTitle:{type:String,default:"Choose mode of upload:"},uploadModeTextForReplace:{type:String,default:"Replace"},uploadModeTextForAppend:{type:String,default:"Append"},opt:{type:Object,default:null}},data:function(){return{mdiDownload:"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z",mdiUpload:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z",mdiDeleteForever:"M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19M8.46,11.88L9.87,10.47L12,12.59L14.12,10.47L15.53,11.88L13.41,14L15.53,16.12L14.12,17.53L12,15.41L9.88,17.53L8.47,16.12L10.59,14L8.46,11.88M15.5,4L14.5,3H9.5L8.5,4H5V6H19V4H15.5Z",mdiTextBoxPlusOutline:"M17,14H19V17H22V19H19V22H17V19H14V17H17V14M5,3H19C20.11,3 21,3.89 21,5V12.8C20.39,12.45 19.72,12.2 19,12.08V5H5V19H12.08C12.2,19.72 12.45,20.39 12.8,21H5C3.89,21 3,20.11 3,19V5C3,3.89 3.89,3 5,3M7,7H17V9H7V7M7,11H17V12.08C16.15,12.22 15.37,12.54 14.68,13H7V11M7,15H12V17H7V15Z",tableHeight:1,showPickUploadMode:!1,paramsTemp:null,nameTrans:"",descriptionTrans:"",rowsSelect:[],useOpt:null,nameTemp:"",descriptionTemp:"",rowsTemp:[]}},computed:{changeParamsForInfor:function(){let n=this,e=n.name,t=n.description;return n.nameTrans=jc(n.name),n.descriptionTrans=jc(n.description),n.nameTemp=jc(n.name),n.descriptionTemp=jc(n.description),n.___changeParamsForInfor___={name:e,description:t},""},changeParamsForTable:function(){let n=this,e={rows:wo(n,"opt.rows"),hideIds:n.hideIds,fixIds:n.fixIds,checkId:n.checkId,editable:n.editable};return ah(n.paramsTemp,e)||(n.genOpt(),n.paramsTemp=rg(e)),""},kpUploadModeItems:function(){return{replace:this.uploadModeTextForReplace,append:this.uploadModeTextForAppend}},useKeys:function(){let n=this,e=[];return Fg(wo(n,"opt.keys"))?e=wo(n,"opt.keys"):Fg(wo(n,"opt.rows"))&&(e=wn(wo(n,"rows.0",{}))),e},useKpHead:function(){let n,e=this;return ks(wo(e,"opt.kpHead"))?n=wo(e,"opt.kpHead"):(n={},Fn(e.useKeys,(e=>{n[e]=e}))),n},hasEffRows:function(){return ud(wo(this,"useOpt.rows",[]))>0},hasEffUseOpt:function(){return null!==this.useOpt},hasEffNameAndDesp:function(){return""!==this.nameTrans||""!==this.descriptionTrans},hasEffLabelNameAndDesp:function(){return""!==this.textLabelDataName||""!==this.textLabelDataDescription},useInforPadding:function(){return`padding:${tp(this.inforPaddingStyle)};`},useMenuPaddingStyle:function(){return`padding:${tp(this.menuPaddingStyle)};`},useMenuBackgroundColor:function(){return fd(this.menuBackgroundColor)}},methods:{domresize:function(n){let e=this,t=0,r=wo(e,"$el.offsetHeight",0),o=wo(e,"$refs.menu.offsetHeight");r>0&&o>0&&(t=r-o),t=Math.max(t,200),e.tableHeight=t},default:function(){let n=this;n.tableHeight=200,n.rowsSelect=[],n.useOpt=null,n.rowsTemp=[]},genOpt:function(){let n=this;if(0===ud(n.useKeys))return void n.default();let e=null;if(e=di(wo(n,"opt.rows"))?rg(wo(n,"opt.rows")):[lS(n.useKeys)],Fi(n.sortColIds))try{e=Is(e,n.sortColIds)}catch(n){console.log(n)}else Fg(n.sortColIds)&&Fn(n.sortColIds,(n=>{try{e=Is(e,n)}catch(n){console.log(n)}}));n.rowsTemp=rg(e);let t={rows:e,keys:n.useKeys,defCellEditable:n.editable,defCellAlighH:"left",kpHead:n.useKpHead,rowChecked:function(e){n.rowsSelect=e}};if(Fi(n.hideIds)?t.kpHeadHide=lS([n.hideIds],!0):Fg(n.hideIds)&&(t.kpHeadHide=lS(n.hideIds,!0)),Fi(n.fixIds)?t.kpHeadFixLeft=lS([n.fixIds],!0):Fg(n.fixIds)&&(t.kpHeadFixLeft=lS(n.fixIds,!0)),n.editable&&Fi(n.checkId)&&(t.kpHeadCheckBox=lS([n.checkId],!0)),ks(n.opt)){let e=rg(n.opt);Fn(e,((n,e)=>{"keys"!==e&&"rows"!==e&&"kpHead"!==e&&"editable"!==e&&(t[e]=n)}))}n.useOpt=t},addRow:function(){let n=this;if(0===ud(n.useKeys))return n.default(),void n.$emit("error",n.errorMsgFromAddRow);let e=lS(n.useKeys);e.id=ws(),ci(wo(n,"opt.beforeAddRow"))&&(e=n.opt.beforeAddRow(e));try{n.useOpt.rows.push(e),n.$nextTick((()=>{let e=wo(n,"$refs.cmp.$refs.$self.getInstance");if(ci(e)){e().api.ensureIndexVisible(n.useOpt.rows.length-1,"bottom")}})),n.$emit("success",n.successMsgFromAddRow)}catch(e){console.log(e),n.$emit("error",n.errorMsgFromAddRow)}},removeRows:function(){let n=this,e=wo(n,"useOpt.rows",[]);if(e=rg(e),0===ud(e))return;let t=ii(n.rowsSelect,"rowInd");if(0!==ud(t)){ky(e,t);try{n.useOpt.rows=e}catch(e){n.$emit("error",n.errorMsgFromRemoveRow)}n.rowsSelect=[]}},downloadData:function(){let n=this;try{let e=wo(n,"$refs.cmp.$refs.$self.downloadData");if(!ci(e))return;e({funGetKeysHook:e=>(Fi(n.removeIdsWhenDownload)?Ip(e,n.removeIdsWhenDownload):Fg(n.removeIdsWhenDownload)&&Ip(e,...n.removeIdsWhenDownload),e),funGetLtdtHook:n.funGetLtdtHookWhenDownload,funGetMatHook:n.funGetMatHookWhenDownload,useHead:n.useHeadWhenDownload,fileName:n.fileNameWhenDownload,sheetName:n.sheetNameWhenDownload,pathItems:null}),n.$emit("success",n.successMsgFromDownloadData)}catch(e){n.$emit("error",n.errorMsgFromDownloadData)}},uploadData:function(n){let e=this,t=wo(e,"$refs.cmp.$refs.$self.uploadData");if(!ci(t))return;let r=wo(e,"opt.optForUploadData");Vi(r)||(r={}),Fi(wo(r,"uploadMode"))||(r.uploadMode=n),ci(wo(r,"beforeUpload"))||(r.beforeUpload=n=>{let e=[];return Fn(n,(n=>{pb(n,(n=>""===n))||e.push(n)})),e}),t(r).then((n=>{0===ud(n)?e.$emit("error",e.errorMsgFromUploadEmptyData):e.$emit("success",e.successMsgFromUploadData),e.rowsSelect=[]})).catch((n=>{console.log("catch",n),e.$emit("error",e.errorMsgFromUploadData)}))},save:function(){let n,e=this;try{n=function(){let n=jc(e.nameTrans),t=jc(e.descriptionTrans);if(!Fi(n))return{err:e.errorMsgFromNoName};let r=wo(e,"useOpt.rows",[]);r=aS(r,e.useKeys),ci(wo(e,"opt.modifyDataWhenSave"))&&(r=e.opt.modifyDataWhenSave(r));let o=wo(e,"opt.checkNoDataWhenSave");return Tc(o)||(o=!1),o&&0===r.length?{err:e.errorMsgFromNoData}:{name:n,nameTemp:e.nameTrans,description:t,descriptionTemp:e.descriptionTemp,rows:rg(r),rowsTemp:rg(e.rowsTemp)}}()}catch(e){n={err:e}}return n}}};const sS=dS;var cS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParamsForInfor:n.changeParamsForInfor,changeParamsForTable:n.changeParamsForTable}},[n.hasEffUseOpt?[t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],ref:"menu",on:{domresize:n.domresize}},[n.editable?[t("div",{style:""+n.useInforPadding},[t("table",{staticStyle:{width:"100%"}},[t("tbody",[t("tr",[t("td",{style:(n.hasEffLabelNameAndDesp?"padding-right:5px;":"")+" vertical-align:middle; opacity:0.8; font-size:0.8rem; white-space:nowrap;"},[n._v(n._s(n.textLabelDataName))]),n._v(" "),t("td",{staticStyle:{width:"100%","vertical-align":"middle"}},[t("w-text",{staticStyle:{width:"100%"},attrs:{placeholder:n.textPlaceholderDataName},model:{value:n.nameTrans,callback:function(e){n.nameTrans=e},expression:"nameTrans"}})],1)]),n._v(" "),t("tr",[t("td",{style:(n.hasEffLabelNameAndDesp?"padding-right:5px;":"")+" vertical-align:middle; opacity:0.8; font-size:0.8rem; white-space:nowrap;"},[n._v(n._s(n.textLabelDataDescription))]),n._v(" "),t("td",{staticStyle:{width:"100%","vertical-align":"middle"}},[t("w-text",{staticStyle:{width:"100%"},attrs:{placeholder:n.textPlaceholderDataDescription},model:{value:n.descriptionTrans,callback:function(e){n.descriptionTrans=e},expression:"descriptionTrans"}})],1)])])])]),n._v(" "),t("div",{style:n.useMenuPaddingStyle+" background:"+n.useMenuBackgroundColor+";"},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("WButtonCircle",{staticStyle:{margin:"5px"},attrs:{icon:n.mdiTextBoxPlusOutline,backgroundColor:"white",backgroundColorHover:"white",tooltip:n.tooltipAddRow},on:{click:n.addRow}}),n._v(" "),n.rowsSelect.length>0?t("WButtonCircle",{staticStyle:{margin:"5px"},attrs:{icon:n.mdiDeleteForever,iconColor:"#f26",backgroundColor:"white",backgroundColorHover:"white",tooltip:n.tooltipDeleteSelectedRows},on:{click:n.removeRows}}):n._e(),n._v(" "),n.hasEffRows?t("WButtonCircle",{staticStyle:{margin:"5px"},attrs:{icon:n.mdiDownload,backgroundColor:"white",backgroundColorHover:"white",tooltip:n.tooltipDownloadExcelFile},on:{click:n.downloadData}}):n._e(),n._v(" "),t("WPopup",{scopedSlots:n._u([{key:"trigger",fn:function(){return[t("WButtonCircle",{staticStyle:{margin:"5px"},attrs:{icon:n.mdiUpload,backgroundColor:"white",backgroundColorHover:"white",tooltip:n.tooltipUploadExcelFile},on:{click:function(e){n.showPickUploadMode=!0}}})]},proxy:!0},{key:"content",fn:function(){return[t("div",{staticStyle:{padding:"10px","font-size":"0.8rem",color:"#666",background:"#eee"}},[n._v("\n "+n._s(n.uploadModeTitle)+"\n ")]),n._v(" "),t("div",{staticStyle:{padding:"15px"}},[t("WButtonChip",{staticStyle:{"margin-right":"15px"},attrs:{text:n.kpUploadModeItems.replace,backgroundColor:"white",backgroundColorHover:"#f6f6f6"},on:{click:function(e){n.showPickUploadMode=!1,n.uploadData("replace")}}}),n._v(" "),t("WButtonChip",{attrs:{_style:"margin:5px;",text:n.kpUploadModeItems.append,backgroundColor:"white",backgroundColorHover:"#f6f6f6"},on:{click:function(e){n.showPickUploadMode=!1,n.uploadData("append")}}})],1)]},proxy:!0}],null,!1,2771795469),model:{value:n.showPickUploadMode,callback:function(e){n.showPickUploadMode=e},expression:"showPickUploadMode"}}),n._v(" "),n._t("btns",null,{editable:n.editable})],2)])]:[t("div",{style:"display:flex; align-items:center;"},[t("div",{style:n.useMenuPaddingStyle+" background:"+n.useMenuBackgroundColor+";"},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[n.hasEffRows?t("WButtonCircle",{staticStyle:{margin:"5px"},attrs:{icon:n.mdiDownload,tooltip:n.tooltipDownloadExcelFile,backgroundColor:"white",backgroundColorHover:"white"},on:{click:n.downloadData}}):n._e(),n._v(" "),n._t("btns",null,{editable:n.editable})],2)]),n._v(" "),t("div",{style:""+n.useInforPadding},[n._t("infor",(function(){return[t("div",{style:"display:inline-block; "+(n.hasEffNameAndDesp?"margin-left:5px;":"")},[t("div",{staticStyle:{"font-size":"1.0rem"}},[n._v("\n "+n._s(n.nameTrans)+"\n ")]),n._v(" "),t("div",{staticStyle:{"font-size":"0.8rem",opacity:"0.8"}},[n._v("\n "+n._s(n.descriptionTrans)+"\n ")])])]}),{infor:{name:n.nameTrans,description:n.descriptionTrans}})],2)])]],2),n._v(" "),t("WAggridVueDyn",{ref:"cmp",attrs:{pathItems:n.pathItems,height:n.tableHeight,opt:n.useOpt}})]:n._e()],2)};cS._withStripped=!0;const uS=md({render:cS,staticRenderFns:[]},(function(n){n&&n("data-v-12add12c_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTableDyn.vue"},media:void 0})}),sS,"data-v-12add12c",false,undefined,!1,vd,void 0,void 0);const pS={props:{value:{type:String,default:""},placeholder:{type:String,default:""},borderColorFocus:{type:String,default:"purple lighten-3"},editable:{type:Boolean,default:!0}},data:function(){return{valueTrans:""}},mounted:function(){},computed:{changeParam:function(){return this.valueTrans=this.value,""}},methods:{changeContent:function(n){let e=this;e.$nextTick((()=>{e.$emit("input",n)}))}}};var fS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("v-textarea",{staticStyle:{margin:"0px",padding:"0px"},attrs:{"auto-grow":"","hide-details":"",rows:"1",color:n.borderColorFocus,placeholder:n.placeholder,disabled:!n.editable},on:{change:n.changeContent},model:{value:n.valueTrans,callback:function(e){n.valueTrans=e},expression:"valueTrans"}})],1)};fS._withStripped=!0;const hS=md({render:fS,staticRenderFns:[]},(function(n){n&&n("data-v-d791ca92_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTextarea.vue"},media:void 0})}),pS,"data-v-d791ca92",false,undefined,!1,vd,void 0,void 0);const mS={components:{WShellEllipse:rC,WTextCore:dC},props:{width:{type:Number,default:70},value:{type:Number,default:0},valueMax:{type:Number,default:null},textFontSize:{type:String,default:"1rem"},textColor:{type:String,default:"black"},leftIconTooltip:{type:String,default:"減少"},rightIconTooltip:{type:String,default:"增加"},buttonIconSize:{type:Number,default:24},buttonColor:{type:String,default:"white"},buttonColorHover:{type:String,default:"white"},buttonColorFocus:{type:String,default:"white"},height:{type:Number,default:28},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiPlusCircle:xc,mdiMinusCircle:"M17,13H7V11H17M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z",valueTrans:"",focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){let n=this;return n.valueTrans=n.value,n.focusedTrans=n.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))},changeContent:function(n,e){let t,r=this;if(!1===r.editable)return;if(""!==e&&r.$refs.inp.setFocus(),t=iC(n,"isp0int"),t.err)return n=0,void r.$nextTick((()=>{0===r.valueTrans?r.$refs.inp.setValue(n):(r.valueTrans=n,r.$emit("input",n)),r.$emit("error",t.errmsg)}));n=Ei(n),"minus"===e?n-=1:"add"===e&&(n+=1),r.valueMax&&n>r.valueMax&&(n=r.valueMax);n<0&&(n=0),r.valueTrans!==n&&r.$nextTick((()=>{r.valueTrans=n,r.$emit("input",n)}))}}};var gS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{attrs:{shadow:!1,paddingStyle:{v:0,h:0},backgroundColor:"transparent",backgroundColorHover:"transparent",backgroundColorFocus:"transparent",borderWidth:0,borderColor:"transparent",borderColorHover:"transparent",borderColorFocus:"transparent",iconShiftOuter:0,leftIcon:n.mdiMinusCircle,leftIconSize:n.buttonIconSize,leftIconColor:n.buttonColor,leftIconColorHover:n.buttonColorHover,leftIconColorFocus:n.buttonColorFocus,leftIconTooltip:n.leftIconTooltip,rightIcon:n.mdiPlusCircle,rightIconSize:n.buttonIconSize,rightIconColor:n.buttonColor,rightIconColorHover:n.buttonColorHover,rightIconColorFocus:n.buttonColorFocus,rightIconTooltip:n.rightIconTooltip,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.changeContent(n.valueTrans,"minus")},"click-right":function(e){return n.changeContent(n.valueTrans,"add")}}},[t("WTextCore",{ref:"inp",style:{width:n.width+"px"},attrs:{textFontSize:n.textFontSize,textColor:n.textColor,textAlign:"center",height:n.height,editable:n.editable,value:n.valueTrans,focused:n.focusedTrans},on:{"update:focused":n.changeFocused,input:function(e){n.changeContent(e,"")}}})],1)],1)};gS._withStripped=!0;const vS=md({render:gS,staticRenderFns:[]},(function(n){n&&n("data-v-6529e6ed_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTextIntCore.vue"},media:void 0})}),mS,"data-v-6529e6ed",false,undefined,!1,vd,void 0,void 0);const yS={components:{WShellEllipse:rC,WTextIntCore:vS},props:{width:{type:Number,default:70},paddingStyle:{type:Object,default:()=>({v:0,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},value:{type:Number,default:0},valueMax:{type:Number,default:null},textFontSize:{type:String,default:"1rem"},textColor:{type:String,default:"black"},icon:{type:String,default:""},iconSize:{type:Number,default:24},iconColor:{type:String,default:"deep-orange lighten-2"},iconColorHover:{type:String,default:"deep-orange lighten-1"},iconColorFocus:{type:String,default:"deep-orange lighten-1"},iconTooltip:{type:String,default:""},leftIconTooltip:{type:String,default:"減少"},rightIconTooltip:{type:String,default:"增加"},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},buttonIconSize:{type:Number,default:24},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},buttonColor:{type:String,default:"deep-orange lighten-2"},buttonColorHover:{type:String,default:"deep-orange lighten-1"},buttonColorFocus:{type:String,default:"deep-orange lighten-1"},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var bS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block"},attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{staticStyle:{display:"inline-block"},attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.icon,leftIconSize:n.iconSize,leftIconColor:n.iconColor,leftIconColorHover:n.iconColorHover,leftIconColorFocus:n.iconColorFocus,leftIconTooltip:n.iconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")}}},[t("div",{staticStyle:{margin:"0px -10px"}},[t("WTextIntCore",{attrs:{width:n.width,leftIconTooltip:n.leftIconTooltip,rightIconTooltip:n.rightIconTooltip,buttonIconSize:n.buttonIconSize,buttonColor:n.buttonColor,buttonColorHover:n.buttonColorHover,buttonColorFocus:n.buttonColorFocus,valueMax:n.valueMax,value:n.value,textFontSize:n.textFontSize,textColor:n.textColor,editable:n.editable,focused:n.focusedTrans},on:{"update:focused":n.changeFocused,input:function(e){n.$emit("input",e)},error:function(e){n.$emit("error",e)}}})],1)])],1)};bS._withStripped=!0;const CS=md({render:bS,staticRenderFns:[]},(function(n){n&&n("data-v-55b5bb62_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTextInt.vue"},media:void 0})}),yS,"data-v-55b5bb62",false,undefined,!1,vd,void 0,void 0);const IS={directives:{domresize:ac()},components:{WShellEllipse:rC,WTextSuggestCore:uC},props:{paddingStyle:{type:Object,default:()=>({v:2,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},items:{type:Array,default:()=>[]},value:{type:[Object,String,Number],default:null},keyText:{type:String,default:"text"},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},itemTextFontSize:{type:String,default:"0.8rem"},itemTextColor:{type:String,default:"grey darken-3"},itemTextColorHover:{type:String,default:"light-blue darken-2"},itemBackgroundColor:{type:String,default:"white"},itemBackgroundColorHover:{type:String,default:"light-blue lighten-5"},itemPaddingStyle:{type:Object,default:()=>({v:12,h:16})},leftIcon:{type:String,default:""},leftIconSize:{type:Number,default:24},leftIconColor:{type:String,default:"deep-orange lighten-2"},leftIconColorHover:{type:String,default:"deep-orange lighten-1"},leftIconColorFocus:{type:String,default:"deep-orange lighten-1"},leftIconTooltip:{type:String,default:""},rightIcon:{type:String,default:""},rightIconSize:{type:Number,default:24},rightIconColor:{type:String,default:"deep-orange lighten-2"},rightIconColorHover:{type:String,default:"deep-orange lighten-1"},rightIconColorFocus:{type:String,default:"deep-orange lighten-1"},rightIconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},showExpansionIcon:{type:Boolean,default:!0},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},maxHeight:{type:Number,default:200},minWidth:{type:Number,default:null},maxWidth:{type:Number,default:null},autoFitMinWidth:{type:Boolean,default:!0},autoFitMaxWidth:{type:Boolean,default:!0},defItemHeight:{type:Number,default:43},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1},showPanel:{type:Boolean,default:!1}},data:function(){return{constBorderWidth:1,focusedTrans:!1,showPanelTrans:!1,useDistY:0}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{resize:function(n){let e=this,t=tp(e.paddingStyle,{returnObj:!0}).bottom-2,r=wo(e,"$el.offsetHeight",0)-26-2*t;r/=2;e.useDistY=t+r+5},getText:function(n){let e=this;return Vi(n)?n[e.keyText]:n},updateFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))},updateShowPanel:function(n){let e=this;e.showPanelTrans=n,e.$nextTick((()=>{e.$emit("update:showPanel",n)}))}}};var xS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeParam:n.changeParam},on:{domresize:n.resize}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderWidth:n.constBorderWidth,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.leftIcon,leftIconSize:n.leftIconSize,leftIconColor:n.leftIconColor,leftIconColorHover:n.leftIconColorHover,leftIconColorFocus:n.leftIconColorFocus,leftIconTooltip:n.leftIconTooltip,rightIcon:n.rightIcon,rightIconSize:n.rightIconSize,rightIconColor:n.rightIconColor,rightIconColorHover:n.rightIconColorHover,rightIconColorFocus:n.rightIconColorFocus,rightIconTooltip:n.rightIconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")},"click-right":function(e){return n.$emit("click-right")}}},[t("div",{staticStyle:{"margin-right":"-5px"}},[t("WTextSuggestCore",{attrs:{mode:"select",items:n.items,value:n.value,keyText:n.keyText,textFontSize:n.textFontSize,textColor:n.textColor,itemTextFontSize:n.itemTextFontSize,itemTextColor:n.itemTextColor,itemTextColorHover:n.itemTextColorHover,itemBackgroundColor:n.itemBackgroundColor,itemBackgroundColorHover:n.itemBackgroundColorHover,itemPaddingStyle:n.itemPaddingStyle,expansionIcon:n.showExpansionIcon?void 0:"",expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,maxHeight:n.maxHeight,minWidth:n.minWidth,maxWidth:n.maxWidth,autoFitMinWidth:n.autoFitMinWidth,autoFitMaxWidth:n.autoFitMaxWidth,placementDist:n.useDistY,defItemHeight:n.defItemHeight,editable:n.editable,focused:n.focusedTrans,showPanel:n.showPanelTrans},on:{"update:focused":function(e){n.updateFocused(e),n.$emit("blur",null,null)},"update:showPanel":n.updateShowPanel,input:function(e,t){n.$emit("input",e,t)},"click-item":function(e,t){n.$emit("click-item",e,t)}},scopedSlots:n._u([{key:"select",fn:function(e){return[n._t("select",(function(){return[n._v("\n "+n._s(e.text)+"\n ")]}),{item:e.item,text:e.text})]}},{key:"item",fn:function(e){return[n._t("item",(function(){return[t("div",[n._v(n._s(n.getText(e.item)))])]}),{item:e.item,index:e.index})]}}],null,!0)})],1)])],1)};xS._withStripped=!0;const SS=md({render:xS,staticRenderFns:[]},(function(n){n&&n("data-v-6e8713fe_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTextSelect.vue"},media:void 0})}),IS,"data-v-6e8713fe",false,undefined,!1,vd,void 0,void 0);var wS={};!function(n,e){n.exports=function(){var n=1e3,e=6e4,t=36e5,r="millisecond",o="second",i="minute",l="hour",a="day",d="week",s="month",c="quarter",u="year",p="date",f="Invalid Date",h=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(n){var e=["th","st","nd","rd"],t=n%100;return"["+n+(e[(t-20)%10]||e[t]||e[0])+"]"}},v=function(n,e,t){var r=String(n);return!r||r.length>=e?n:""+Array(e+1-r.length).join(t)+n},y={s:v,z:function(n){var e=-n.utcOffset(),t=Math.abs(e),r=Math.floor(t/60),o=t%60;return(e<=0?"+":"-")+v(r,2,"0")+":"+v(o,2,"0")},m:function n(e,t){if(e.date()<t.date())return-n(t,e);var r=12*(t.year()-e.year())+(t.month()-e.month()),o=e.clone().add(r,s),i=t-o<0,l=e.clone().add(r+(i?-1:1),s);return+(-(r+(t-o)/(i?o-l:l-o))||0)},a:function(n){return n<0?Math.ceil(n)||0:Math.floor(n)},p:function(n){return{M:s,y:u,w:d,d:a,D:p,h:l,m:i,s:o,ms:r,Q:c}[n]||String(n||"").toLowerCase().replace(/s$/,"")},u:function(n){return void 0===n}},b="en",C={};C[b]=g;var I=function(n){return n instanceof k},x=function n(e,t,r){var o;if(!e)return b;if("string"==typeof e){var i=e.toLowerCase();C[i]&&(o=i),t&&(C[i]=t,o=i);var l=e.split("-");if(!o&&l.length>1)return n(l[0])}else{var a=e.name;C[a]=e,o=a}return!r&&o&&(b=o),o||!r&&b},S=function(n,e){if(I(n))return n.clone();var t="object"==typeof e?e:{};return t.date=n,t.args=arguments,new k(t)},w=y;w.l=x,w.i=I,w.w=function(n,e){return S(n,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var k=function(){function g(n){this.$L=x(n.locale,null,!0),this.parse(n)}var v=g.prototype;return v.parse=function(n){this.$d=function(n){var e=n.date,t=n.utc;if(null===e)return new Date(NaN);if(w.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(h);if(r){var o=r[2]-1||0,i=(r[7]||"0").substring(0,3);return t?new Date(Date.UTC(r[1],o,r[3]||1,r[4]||0,r[5]||0,r[6]||0,i)):new Date(r[1],o,r[3]||1,r[4]||0,r[5]||0,r[6]||0,i)}}return new Date(e)}(n),this.$x=n.x||{},this.init()},v.init=function(){var n=this.$d;this.$y=n.getFullYear(),this.$M=n.getMonth(),this.$D=n.getDate(),this.$W=n.getDay(),this.$H=n.getHours(),this.$m=n.getMinutes(),this.$s=n.getSeconds(),this.$ms=n.getMilliseconds()},v.$utils=function(){return w},v.isValid=function(){return!(this.$d.toString()===f)},v.isSame=function(n,e){var t=S(n);return this.startOf(e)<=t&&t<=this.endOf(e)},v.isAfter=function(n,e){return S(n)<this.startOf(e)},v.isBefore=function(n,e){return this.endOf(e)<S(n)},v.$g=function(n,e,t){return w.u(n)?this[e]:this.set(t,n)},v.unix=function(){return Math.floor(this.valueOf()/1e3)},v.valueOf=function(){return this.$d.getTime()},v.startOf=function(n,e){var t=this,r=!!w.u(e)||e,c=w.p(n),f=function(n,e){var o=w.w(t.$u?Date.UTC(t.$y,e,n):new Date(t.$y,e,n),t);return r?o:o.endOf(a)},h=function(n,e){return w.w(t.toDate()[n].apply(t.toDate("s"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),t)},m=this.$W,g=this.$M,v=this.$D,y="set"+(this.$u?"UTC":"");switch(c){case u:return r?f(1,0):f(31,11);case s:return r?f(1,g):f(0,g+1);case d:var b=this.$locale().weekStart||0,C=(m<b?m+7:m)-b;return f(r?v-C:v+(6-C),g);case a:case p:return h(y+"Hours",0);case l:return h(y+"Minutes",1);case i:return h(y+"Seconds",2);case o:return h(y+"Milliseconds",3);default:return this.clone()}},v.endOf=function(n){return this.startOf(n,!1)},v.$set=function(n,e){var t,d=w.p(n),c="set"+(this.$u?"UTC":""),f=(t={},t[a]=c+"Date",t[p]=c+"Date",t[s]=c+"Month",t[u]=c+"FullYear",t[l]=c+"Hours",t[i]=c+"Minutes",t[o]=c+"Seconds",t[r]=c+"Milliseconds",t)[d],h=d===a?this.$D+(e-this.$W):e;if(d===s||d===u){var m=this.clone().set(p,1);m.$d[f](h),m.init(),this.$d=m.set(p,Math.min(this.$D,m.daysInMonth())).$d}else f&&this.$d[f](h);return this.init(),this},v.set=function(n,e){return this.clone().$set(n,e)},v.get=function(n){return this[w.p(n)]()},v.add=function(r,c){var p,f=this;r=Number(r);var h=w.p(c),m=function(n){var e=S(f);return w.w(e.date(e.date()+Math.round(n*r)),f)};if(h===s)return this.set(s,this.$M+r);if(h===u)return this.set(u,this.$y+r);if(h===a)return m(1);if(h===d)return m(7);var g=(p={},p[i]=e,p[l]=t,p[o]=n,p)[h]||1,v=this.$d.getTime()+r*g;return w.w(v,this)},v.subtract=function(n,e){return this.add(-1*n,e)},v.format=function(n){var e=this,t=this.$locale();if(!this.isValid())return t.invalidDate||f;var r=n||"YYYY-MM-DDTHH:mm:ssZ",o=w.z(this),i=this.$H,l=this.$m,a=this.$M,d=t.weekdays,s=t.months,c=function(n,t,o,i){return n&&(n[t]||n(e,r))||o[t].slice(0,i)},u=function(n){return w.s(i%12||12,n,"0")},p=t.meridiem||function(n,e,t){var r=n<12?"AM":"PM";return t?r.toLowerCase():r},h={YY:String(this.$y).slice(-2),YYYY:this.$y,M:a+1,MM:w.s(a+1,2,"0"),MMM:c(t.monthsShort,a,s,3),MMMM:c(s,a),D:this.$D,DD:w.s(this.$D,2,"0"),d:String(this.$W),dd:c(t.weekdaysMin,this.$W,d,2),ddd:c(t.weekdaysShort,this.$W,d,3),dddd:d[this.$W],H:String(i),HH:w.s(i,2,"0"),h:u(1),hh:u(2),a:p(i,l,!0),A:p(i,l,!1),m:String(l),mm:w.s(l,2,"0"),s:String(this.$s),ss:w.s(this.$s,2,"0"),SSS:w.s(this.$ms,3,"0"),Z:o};return r.replace(m,(function(n,e){return e||h[n]||o.replace(":","")}))},v.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},v.diff=function(r,p,f){var h,m=w.p(p),g=S(r),v=(g.utcOffset()-this.utcOffset())*e,y=this-g,b=w.m(this,g);return b=(h={},h[u]=b/12,h[s]=b,h[c]=b/3,h[d]=(y-v)/6048e5,h[a]=(y-v)/864e5,h[l]=y/t,h[i]=y/e,h[o]=y/n,h)[m]||y,f?b:w.a(b)},v.daysInMonth=function(){return this.endOf(s).$D},v.$locale=function(){return C[this.$L]},v.locale=function(n,e){if(!n)return this.$L;var t=this.clone(),r=x(n,e,!0);return r&&(t.$L=r),t},v.clone=function(){return w.w(this.$d,this)},v.toDate=function(){return new Date(this.valueOf())},v.toJSON=function(){return this.isValid()?this.toISOString():null},v.toISOString=function(){return this.$d.toISOString()},v.toString=function(){return this.$d.toUTCString()},g}(),T=k.prototype;return S.prototype=T,[["$ms",r],["$s",o],["$m",i],["$H",l],["$W",a],["$M",s],["$y",u],["$D",p]].forEach((function(n){T[n[1]]=function(e){return this.$g(e,n[0],n[1])}})),S.extend=function(n,e){return n.$i||(n(e,k,S),n.$i=!0),S},S.locale=x,S.isDayjs=I,S.unix=function(n){return S(1e3*n)},S.en=C[b],S.Ls=C,S.p={},S}()}({get exports(){return wS},set exports(n){wS=n}});var kS=wS;function TS(n){if(!Fi(n))return!1;let e="YYYY-MM-DD";return n===kS(n,e).format(e)}var HS={props:{value:{type:String,default:""},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{mdiChevronLeft:"M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z",mdiChevronRight:mc,show:!1,value_day:""}},mounted:function(){},watch:{show:function(n){this.$emit("update:focused",n)}},computed:{changeParam:function(){let n=this,e=n.value;return TS(e)?n.value_day=e:n.value_day="",""},getShowTime:function(){return this.value_day},useTextFontSize:function(){let n=this.textFontSize;return n=Ts(n,";",""),`font-size:${n};`},useTextColor:function(){return fd(this.textColor)}},methods:{getDay:function(n){let e=Ra(n,"-");return e=wo(e,"[2]"),e=Ei(e),e},ch_day:function(n){let e=this,t=n,r="";TS(t)&&(r=t),e.show=!1,e.$nextTick((()=>{e.$emit("input",r)}))}}};const WS=HS;var ZS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("v-menu",{attrs:{"offset-y":"","nudge-bottom":n.placementDist,"close-on-content-click":!1,disabled:!n.editable},scopedSlots:n._u([{key:"activator",fn:function(e){var r=e.on;return[t("div",n._g({style:"_width:83px; color:"+n.useTextColor+"; "+n.useTextFontSize,attrs:{TimedayCore:"day"}},r),[n._v("\n "+n._s(n.getShowTime)+"\n ")])]}}]),model:{value:n.show,callback:function(e){n.show=e},expression:"show"}},[n._v(" "),t("v-date-picker",{attrs:{"no-title":"",locale:"zh-tw","prev-icon":n.mdiChevronLeft,"next-icon":n.mdiChevronRight,color:n.pickColor,"day-format":n.getDay,value:n.value_day},on:{input:n.ch_day}})],1)],1)};ZS._withStripped=!0;const XS=md({render:ZS,staticRenderFns:[]},(function(n){n&&n("data-v-a884d58c_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimedayCore.vue"},media:void 0})}),WS,"data-v-a884d58c",false,undefined,!1,vd,void 0,void 0);const BS={components:{WShellEllipse:rC,WTimedayCore:XS},props:{textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},paddingStyle:{type:Object,default:()=>({v:2,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},value:{type:String,default:""},icon:{type:String,default:gc},iconSize:{type:Number,default:24},iconColor:{type:String,default:"deep-orange lighten-2"},iconColorHover:{type:String,default:"deep-orange lighten-1"},iconColorFocus:{type:String,default:"deep-orange lighten-1"},iconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},pickColor:{type:String,default:"deep-orange darken-1"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:gc,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var AS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block",cursor:"pointer"},attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.icon,leftIconSize:n.iconSize,leftIconColor:n.iconColor,leftIconColorHover:n.iconColorHover,leftIconColorFocus:n.iconColorFocus,leftIconTooltip:n.iconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")}}},[t("WTimedayCore",{attrs:{textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,value:n.value,placementDist:n.placementDist,editable:n.editable},on:{"update:focused":n.changeFocused,input:function(e){n.$emit("input",e)}}})],1)],1)};AS._withStripped=!0;const VS=md({render:AS,staticRenderFns:[]},(function(n){n&&n("data-v-27011eee_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimeday.vue"},media:void 0})}),BS,"data-v-27011eee",false,undefined,!1,vd,void 0,void 0);const PS={components:{WTimedayCore:XS},props:{dayStart:{type:String,default:""},dayEnd:{type:String,default:""},between:{type:String,default:"to"},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{focused_start:!1,focused_end:!1}},computed:{useTextFontSize:function(){let n=this.textFontSize;return n=Ts(n,";",""),`font-size:${n};`},useTextColor:function(){return fd(this.textColor)}},methods:{changeFocused:function(){let n=this,e=n.focused_start||n.focused_end;n.$nextTick((()=>{n.$emit("update:focused",e)}))}}};var KS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("WTimedayCore",{attrs:{TimedayRangeCore:"dayFrom",textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,placementDist:n.placementDist,editable:n.editable,value:n.dayStart},on:{"update:focused":function(e){n.focused_start=e,n.changeFocused()},input:function(e){n.$emit("update:dayStart",e)}}}),n._v(" "),t("div",{style:"padding-left:5px; padding-right:8px; color:"+n.useTextColor+"; "+n.useTextFontSize},[n._v("\n "+n._s(n.between)+"\n ")]),n._v(" "),t("WTimedayCore",{attrs:{TimedayRangeCore:"dayTo",textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,placementDist:n.placementDist,editable:n.editable,value:n.dayEnd},on:{"update:focused":function(e){n.focused_end=e,n.changeFocused()},input:function(e){n.$emit("update:dayEnd",e)}}})],1)])};KS._withStripped=!0;const GS=md({render:KS,staticRenderFns:[]},(function(n){n&&n("data-v-d2ecdcc4_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimedayRangeCore.vue"},media:void 0})}),PS,"data-v-d2ecdcc4",false,undefined,!1,vd,void 0,void 0);const FS={components:{WShellEllipse:rC,WTimedayRangeCore:GS},props:{paddingStyle:{type:Object,default:()=>({v:2,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},dayStart:{type:String,default:""},dayEnd:{type:String,default:""},between:{type:String,default:"to"},icon:{type:String,default:gc},iconSize:{type:Number,default:24},iconColor:{type:String,default:"deep-orange lighten-2"},iconColorHover:{type:String,default:"deep-orange lighten-1"},iconColorFocus:{type:String,default:"deep-orange lighten-1"},iconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:gc,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var YS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block",cursor:"pointer"},attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.icon,leftIconSize:n.iconSize,leftIconColor:n.iconColor,leftIconColorHover:n.iconColorHover,leftIconColorFocus:n.iconColorFocus,leftIconTooltip:n.iconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")}}},[t("WTimedayRangeCore",{attrs:{pickColor:n.pickColor,textFontSize:n.textFontSize,textColor:n.textColor,between:n.between,dayStart:n.dayStart,dayEnd:n.dayEnd,placementDist:n.placementDist,editable:n.editable},on:{"update:focused":n.changeFocused,"update:dayStart":function(e){n.$emit("update:dayStart",e)},"update:dayEnd":function(e){n.$emit("update:dayEnd",e)}}})],1)],1)};YS._withStripped=!0;const RS=md({render:YS,staticRenderFns:[]},(function(n){n&&n("data-v-ed82f1be_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimedayRange.vue"},media:void 0})}),FS,"data-v-ed82f1be",false,undefined,!1,vd,void 0,void 0);var LS=Nd;var jS=function(n){return(null==n?0:n.length)?LS(n,Infinity):[]};var NS={components:{WTimedayCore:XS,WTextSuggestCore:uC},props:{value:{type:String,default:""},hourMin:{type:Number,default:8},hourMax:{type:Number,default:18},minuteInter:{type:Number,default:15},minutesCustom:{type:Array,default:null},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},expansionIcon:{type:String,default:Ic},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{value_day:"",value_time:"",focused_day:!1,focused_time:!1}},mounted:function(){},computed:{changeParam:function(){let n=this,e=n.value,t=Ra(e,"T");return n.value_day=wo(t,0),n.value_time=Ec(wo(t,1),5),""},getUseMinutes:function(){let n=this;if(di(n.minutesCustom))return n.minutesCustom;let e=$i(n.hourMin)&&$i(n.hourMax)&&n.hourMin<=n.hourMax,t=$i(n.minuteInter);if(!e||!t)return;let r=ii(Gy(n.hourMin,n.hourMax+1),(function(e){let t=String(e);return e<10&&(t="0"+t),ii(Gy(0,60,n.minuteInter),(function(n){let e=String(n);return n<10&&(e="0"+e),t+":"+e}))}));r=jS(r);let o=String(n.hourMax);return n.hourMax<10&&(o="0"+o),o+=":00",r=Gd(r,(function(n){return n<=o})),r}},methods:{ch_day:function(n){this.value_day=n,this.changeContent()},ch_time:function(n){this.value_time=n,this.changeContent()},changeContent:function(){let n=this,e=n.value_day+"T"+n.value_time+":00";(function(n){if(!Fi(n))return!1;let e="YYYY-MM-DDTHH:mm:ss";return n===kS(n,e).format(e)})(e)&&n.$nextTick((()=>{n.$emit("input",e)}))},changeFocused:function(){let n=this,e=n.focused_day||n.focused_time;n.$nextTick((()=>{n.$emit("update:focused",e)}))}}};const zS=NS;var JS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("WTimedayCore",{staticStyle:{"margin-right":"5px"},attrs:{TimeminuteCore:"day",textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,placementDist:n.placementDist,editable:n.editable,value:n.value_day},on:{"update:focused":function(e){n.focused_day=e,n.changeFocused()},input:n.ch_day}}),n._v(" "),t("div",{staticStyle:{"margin-right":"-3px"}},[t("WTextSuggestCore",{attrs:{TimeminuteCore:"minute",mode:"select",textFontSize:n.textFontSize,textColor:n.textColor,placementDist:n.placementDist,minWidth:70,expansionIcon:n.expansionIcon,expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,editable:n.editable,items:n.getUseMinutes,value:n.value_time},on:{"update:focused":function(e){n.focused_time=e,n.changeFocused()},input:n.ch_time}})],1)],1)])};JS._withStripped=!0;const OS=md({render:JS,staticRenderFns:[]},(function(n){n&&n("data-v-6abfa7c4_0",{source:"\n[data-v-6abfa7c4] div.v-input__icon {\r\n transform: translateX(-5px);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WTimeminuteCore.vue"],names:[],mappings:";AAiSA;IACA,2BAAA;AACA",file:"WTimeminuteCore.vue",sourcesContent:["<template>\r\n <div\r\n style=\"\"\r\n :changeParam=\"changeParam\"\r\n >\r\n \x3c!-- 盡量不要讓display:flex暴露至外層 --\x3e\r\n <div style=\"display:flex; align-items:center;\">\r\n\r\n <WTimedayCore\r\n TimeminuteCore=\"day\"\r\n style=\"margin-right:5px;\"\r\n :textFontSize=\"textFontSize\"\r\n :textColor=\"textColor\"\r\n :pickColor=\"pickColor\"\r\n :placementDist=\"placementDist\"\r\n :editable=\"editable\"\r\n :value=\"value_day\"\r\n @update:focused=\"(v)=>{focused_day=v;changeFocused()}\"\r\n @input=\"ch_day\"\r\n ></WTimedayCore>\r\n\r\n <div style=\"margin-right:-3px;\">\r\n <WTextSuggestCore\r\n TimeminuteCore=\"minute\"\r\n :mode=\"'select'\"\r\n :textFontSize=\"textFontSize\"\r\n :textColor=\"textColor\"\r\n :placementDist=\"placementDist\"\r\n :minWidth=\"70\"\r\n :expansionIcon=\"expansionIcon\"\r\n :expansionIconSize=\"expansionIconSize\"\r\n :expansionIconColor=\"expansionIconColor\"\r\n :editable=\"editable\"\r\n :items=\"getUseMinutes\"\r\n :value=\"value_time\"\r\n @update:focused=\"(v)=>{focused_time=v;changeFocused()}\"\r\n @input=\"ch_time\"\r\n ></WTextSuggestCore>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mdiPlay } from '@mdi/js'\r\nimport split from 'lodash/split'\r\nimport get from 'lodash/get'\r\nimport map from 'lodash/map'\r\nimport range from 'lodash/range'\r\nimport flattenDeep from 'lodash/flattenDeep'\r\nimport filter from 'lodash/filter'\r\nimport strleft from 'wsemi/src/strleft.mjs'\r\nimport isarr from 'wsemi/src/isarr.mjs'\r\nimport istime from 'wsemi/src/istime.mjs'\r\nimport ispint from 'wsemi/src/ispint.mjs'\r\nimport WTimedayCore from './WTimedayCore.vue'\r\nimport WTextSuggestCore from './WTextSuggestCore.vue'\r\n\r\n\r\n/**\r\n * @vue-prop {String} [value=''] 輸入日期字串,預設''\r\n * @vue-prop {Number} [hourMin=8] 輸入可選最小小時,單位為小時,預設8\r\n * @vue-prop {Number} [hourMax=8] 輸入可選最大小時,單位為小時,預設8\r\n * @vue-prop {Number} [minuteInter=15] 輸入每小時的切分區間,單位為分鐘,預設15\r\n * @vue-prop {Array} [minutesCustom=null] 輸入自訂可選的時分點字串陣列,單位為時分(00:00),若給予,則上述hourMin,hourMax,minuteInter自動失效,預設null\r\n * @vue-prop {String} [textFontSize='0.85rem'] 輸入文字大小字串,預設'0.85rem'\r\n * @vue-prop {String} [textColor='black'] 輸入文字顏色字串,預設'black'\r\n * @vue-prop {String} [pickColor='deep-orange darken-1'] 輸入日期彈窗中選擇指定日期之顏色字串,預設'deep-orange darken-1'\r\n * @vue-prop {String} [expansionIcon=mdiPlay] 輸入顯隱圖標字串,可為mdi,md,fa代號或mdi/js路徑,預設使用mdi的圖標(mdiPlay)\r\n * @vue-prop {Number} [expansionIconSize=18] 輸入顯隱圖標尺寸數字,單位為px,預設18\r\n * @vue-prop {String} [expansionIconColor='grey'] 輸入顯隱圖標顏色字串,預設'grey'\r\n * @vue-prop {Number} [placementDist=7] 輸入日期彈窗y向下平移數字,預設7\r\n * @vue-prop {Boolean} [editable=true] 輸入是否為編輯模式,預設true\r\n */\r\nexport default {\r\n components: {\r\n WTimedayCore,\r\n WTextSuggestCore\r\n },\r\n props: {\r\n value: {\r\n type: String,\r\n default: '',\r\n },\r\n hourMin: {\r\n type: Number,\r\n default: 8,\r\n },\r\n hourMax: {\r\n type: Number,\r\n default: 18,\r\n },\r\n minuteInter: {\r\n type: Number,\r\n default: 15,\r\n },\r\n minutesCustom: {\r\n type: Array,\r\n default: null,\r\n },\r\n textFontSize: {\r\n type: String,\r\n default: '0.85rem',\r\n },\r\n textColor: {\r\n type: String,\r\n default: 'black',\r\n },\r\n pickColor: {\r\n type: String,\r\n default: 'deep-orange darken-1',\r\n },\r\n expansionIcon: {\r\n type: String,\r\n default: mdiPlay,\r\n },\r\n expansionIconSize: {\r\n type: Number,\r\n default: 18,\r\n },\r\n expansionIconColor: {\r\n type: String,\r\n default: 'grey',\r\n },\r\n placementDist: {\r\n type: Number,\r\n default: 7,\r\n },\r\n editable: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n value_day: '',\r\n value_time: '',\r\n focused_day: false,\r\n focused_time: false,\r\n }\r\n },\r\n mounted: function() {\r\n },\r\n computed: {\r\n\r\n changeParam: function () {\r\n //console.log('computed changeParam')\r\n\r\n let vo = this\r\n\r\n //value for trigger\r\n let value = vo.value\r\n\r\n //s\r\n let s = split(value, 'T')\r\n\r\n //day\r\n vo.value_day = get(s, 0)\r\n\r\n //time\r\n vo.value_time = strleft(get(s, 1), 5)\r\n\r\n return ''\r\n },\r\n\r\n getUseMinutes: function () {\r\n //console.log('computed getUseMinutes')\r\n\r\n let vo = this\r\n\r\n if (isarr(vo.minutesCustom)) {\r\n return vo.minutesCustom\r\n }\r\n\r\n let b1 = ispint(vo.hourMin) && ispint(vo.hourMax) && vo.hourMin <= vo.hourMax\r\n let b2 = ispint(vo.minuteInter)\r\n if (!b1 || !b2) {\r\n return\r\n }\r\n\r\n //rs, 各時分\r\n let rs = map(range(vo.hourMin, vo.hourMax + 1), function(hour) {\r\n\r\n //產生時\r\n let h = String(hour)\r\n if (hour < 10) {\r\n h = '0' + h\r\n }\r\n\r\n //產生分\r\n return map(range(0, 60, vo.minuteInter), function(min) {\r\n let m = String(min)\r\n if (min < 10) {\r\n m = '0' + m\r\n }\r\n return h + ':' + m\r\n })\r\n })\r\n rs = flattenDeep(rs)\r\n\r\n //hMax\r\n let hMax = String(vo.hourMax)\r\n if (vo.hourMax < 10) {\r\n hMax = '0' + hMax\r\n }\r\n hMax = hMax + ':00'\r\n rs = filter(rs, function(r) {\r\n return r <= hMax\r\n })\r\n\r\n return rs\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n ch_day: function(v) {\r\n //console.log('methods ch_day',v)\r\n\r\n let vo = this\r\n\r\n //save\r\n vo.value_day = v\r\n\r\n //changeContent\r\n vo.changeContent()\r\n\r\n },\r\n\r\n ch_time: function(v) {\r\n //console.log('methods ch_time',v)\r\n\r\n let vo = this\r\n\r\n //save\r\n vo.value_time = v\r\n\r\n //changeContent\r\n vo.changeContent()\r\n\r\n },\r\n\r\n changeContent: function () {\r\n //console.log('methods changeContent')\r\n\r\n let vo = this\r\n\r\n //value\r\n let value = vo.value_day + 'T' + vo.value_time + ':00'\r\n\r\n //check\r\n if (!istime(value)) {\r\n return\r\n }\r\n\r\n //$nextTick\r\n vo.$nextTick(() => {\r\n\r\n //emit\r\n vo.$emit('input', value)\r\n\r\n })\r\n\r\n },\r\n\r\n changeFocused: function() {\r\n //console.log('methods changeFocused')\r\n\r\n let vo = this\r\n\r\n //focused\r\n let focused = vo.focused_day || vo.focused_time\r\n\r\n //$nextTick\r\n vo.$nextTick(() => {\r\n\r\n //emit\r\n vo.$emit('update:focused', focused)\r\n\r\n })\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n::v-deep div.v-input__icon {\r\n transform: translateX(-5px);\r\n}\r\n</style>\r\n"]},media:void 0})}),zS,"data-v-6abfa7c4",false,undefined,!1,vd,void 0,void 0);const DS={components:{WShellEllipse:rC,WTimeminuteCore:OS},props:{paddingStyle:{type:Object,default:()=>({v:2,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},value:{type:String,default:""},hourMin:{type:Number,default:8},hourMax:{type:Number,default:18},minuteInter:{type:Number,default:15},minutesCustom:{type:Array,default:null},icon:{type:String,default:gc},iconSize:{type:Number,default:24},iconColor:{type:String,default:"deep-orange lighten-2"},iconColorHover:{type:String,default:"deep-orange lighten-1"},iconColorFocus:{type:String,default:"deep-orange lighten-1"},iconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},expansionIcon:{type:String,default:Ic},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:gc,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var ES=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block",cursor:"pointer"},attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.icon,leftIconSize:n.iconSize,leftIconColor:n.iconColor,leftIconColorHover:n.iconColorHover,leftIconColorFocus:n.iconColorFocus,leftIconTooltip:n.iconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")}}},[t("WTimeminuteCore",{attrs:{hourMin:n.hourMin,hourMax:n.hourMax,minuteInter:n.minuteInter,minutesCustom:n.minutesCustom,textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,expansionIcon:n.expansionIcon,expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,placementDist:n.placementDist,editable:n.editable,value:n.value},on:{"update:focused":n.changeFocused,input:function(e){n.$emit("input",e)}}})],1)],1)};ES._withStripped=!0;const $S=md({render:ES,staticRenderFns:[]},(function(n){n&&n("data-v-2f113e70_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimeminute.vue"},media:void 0})}),DS,"data-v-2f113e70",false,undefined,!1,vd,void 0,void 0);const QS={components:{WTimeminuteCore:OS},props:{minuteStart:{type:String,default:""},minuteEnd:{type:String,default:""},between:{type:String,default:"to"},hourMin:{type:Number,default:8},hourMax:{type:Number,default:18},minuteInter:{type:Number,default:15},minutesCustom:{type:Array,default:null},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},expansionIcon:{type:String,default:Ic},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{focused_start:!1,focused_end:!1}},computed:{useTextFontSize:function(){let n=this.textFontSize;return n=Ts(n,";",""),`font-size:${n};`},useTextColor:function(){return fd(this.textColor)}},methods:{changeFocused:function(){let n=this,e=n.focused_start||n.focused_end;n.$nextTick((()=>{n.$emit("update:focused",e)}))}}};var MS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("WTimeminuteCore",{attrs:{TimeminuteRangeCore:"dayminuFrom",hourMin:n.hourMin,hourMax:n.hourMax,minuteInter:n.minuteInter,minutesCustom:n.minutesCustom,textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,expansionIcon:n.expansionIcon,expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,placementDist:n.placementDist,editable:n.editable,value:n.minuteStart},on:{"update:focused":function(e){n.focused_start=e,n.changeFocused()},input:function(e){n.$emit("update:minuteStart",e)}}}),n._v(" "),t("div",{style:"padding-left:9px; padding-right:11px; color:"+n.useTextColor+"; "+n.useTextFontSize},[n._v("\n "+n._s(n.between)+"\n ")]),n._v(" "),t("WTimeminuteCore",{attrs:{TimeminuteRangeCore:"dayminuTo",hourMin:n.hourMin,hourMax:n.hourMax,minuteInter:n.minuteInter,minutesCustom:n.minutesCustom,textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,expansionIcon:n.expansionIcon,expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,placementDist:n.placementDist,editable:n.editable,value:n.minuteEnd},on:{"update:focused":function(e){n.focused_end=e,n.changeFocused()},input:function(e){n.$emit("update:minuteEnd",e)}}})],1)])};MS._withStripped=!0;const _S=md({render:MS,staticRenderFns:[]},(function(n){n&&n("data-v-468d3de8_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimeminuteRangeCore.vue"},media:void 0})}),QS,"data-v-468d3de8",false,undefined,!1,vd,void 0,void 0);const US={components:{WShellEllipse:rC,WTimeminuteRangeCore:_S},props:{paddingStyle:{type:Object,default:()=>({v:2,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},minuteStart:{type:String,default:""},minuteEnd:{type:String,default:""},between:{type:String,default:"to"},hourMin:{type:Number,default:8},hourMax:{type:Number,default:18},minuteInter:{type:Number,default:15},minutesCustom:{type:Array,default:null},icon:{type:String,default:gc},iconSize:{type:Number,default:24},iconColor:{type:String,default:"deep-orange lighten-2"},iconColorHover:{type:String,default:"deep-orange lighten-1"},iconColorFocus:{type:String,default:"deep-orange lighten-1"},iconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},expansionIcon:{type:String,default:Ic},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:gc,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var qS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block",cursor:"pointer"},attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.icon,leftIconSize:n.iconSize,leftIconColor:n.iconColor,leftIconColorHover:n.iconColorHover,leftIconColorFocus:n.iconColorFocus,leftIconTooltip:n.iconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")}}},[t("WTimeminuteRangeCore",{attrs:{textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,expansionIcon:n.expansionIcon,expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,hourMin:n.hourMin,hourMax:n.hourMax,minuteInter:n.minuteInter,minutesCustom:n.minutesCustom,between:n.between,minuteEnd:n.minuteEnd,minuteStart:n.minuteStart,placementDist:n.placementDist,editable:n.editable},on:{"update:focused":n.changeFocused,"update:minuteEnd":function(e){n.$emit("update:minuteEnd",e)},"update:minuteStart":function(e){n.$emit("update:minuteStart",e)}}})],1)],1)};qS._withStripped=!0;const nw=md({render:qS,staticRenderFns:[]},(function(n){n&&n("data-v-70bbdea5_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimeminuteRange.vue"},media:void 0})}),US,"data-v-70bbdea5",false,undefined,!1,vd,void 0,void 0);const ew={components:{WIconLoading:xd},props:{pathItems:{type:Array,default:()=>["https://cdn.jsdelivr.net/npm/tinymce@5.10.7/tinymce.min.js","https://cdn.jsdelivr.net/npm/w-tinymce-vue@2.0.5/dist/w-tinymce-vue.umd.js"]},value:{type:String,default:""},settings:{type:Object,default:()=>{}},height:{type:Number,default:250},editable:{type:Boolean,default:!0}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){let n=this;rl(n.pathItems).then((e=>{if("loaded"!==e){let n=window["w-tinymce-vue"];n.default&&(n=n.default),wd().component("w-tinymce-vue",n)}n.cmpName="w-tinymce-vue"}))},computed:{},methods:{}};var tw=function(){var n=this,e=n.$createElement;return(n._self._c||e)(n.cmpName,{ref:"$self",tag:"component",attrs:{settings:n.settings,height:n.height,editable:n.editable,value:n.value},on:{input:function(e){n.$emit("input",e)}}})};tw._withStripped=!0;const rw=md({render:tw,staticRenderFns:[]},(function(n){n&&n("data-v-e73339a0_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTinymceVueDyn.vue"},media:void 0})}),ew,"data-v-e73339a0",false,undefined,!1,vd,void 0,void 0);let ow={install:function(n){n.component("w-aggrid-vue-dyn",Hd),n.prototype.$alert=Ms,n.component("w-badge",cc),n.component("w-button-chip",$f),n.component("w-button-circle",Uf),n.component("w-checkbox",th),n.component("w-ckeditor-vue-dyn",ih),n.component("w-confirm",ug),n.component("w-dialog",ag),n.component("w-drawer",Sg),n.component("w-dropfiles",Zg),n.component("w-dynamic-list",av),n.component("w-echarts-vue-dyn",cv),n.component("w-explorer",Fb),n.component("w-group-baggage",zb),n.component("w-group-baggage-item",Lb),n.component("w-group-check",$b),n.component("w-group-dragdrop",_b),n.component("w-group-radio",nC),n.component("w-group-tags",yC),n.component("w-highcharts-bitmap-dyn",IC),n.component("w-highcharts-vue-dyn",wC),n.component("w-highstock-vue-dyn",HC),n.component("w-icon",sp),n.component("w-icon-loading",xd),n.component("w-icon-svg",XC),n.component("w-image-cascading-dyn",HI),n.component("w-image-viewer-dyn",XI),n.component("w-input-checkbox",PI),n.component("w-input-radio",FI),n.component("w-json-view",UI),n.component("w-leaflet-vue-dyn",ex),n.component("w-list-expand",sx),n.component("w-list-expand-item",ix),n.component("w-list-horizontal",fx),n.component("w-list-item",yb),n.component("w-list-vertical",xb),n.component("w-panel-avatar",vx),n.component("w-panel-bulge",Cx),n.component("w-panel-divide-horizontal",Sx),n.component("w-panel-divide-vertical",Tx),n.component("w-panel-scale",Zx),n.component("w-panel-scrolly",mb),n.component("w-panel-scrolly-core",tv),n.component("w-panel-stripe",Ax),n.component("w-popup",ib),n.component("w-popup-edit-text",jx),n.component("w-progress-bar",Ox),n.component("w-progress-circle",$x),n.component("w-quill-vue-dyn",_x),n.component("w-shell-bottom-line",Kx),n.component("w-shell-ellipse",rC),n.component("w-switch",eS),n.component("w-table-dyn",uS),n.component("w-text",Yx),n.component("w-textarea",hS),n.component("w-text-core",dC),n.component("w-text-int",CS),n.component("w-text-int-core",vS),n.component("w-text-select",SS),n.component("w-text-suggest",hC),n.component("w-text-suggest-core",uC),n.component("w-timeday",VS),n.component("w-timeday-core",XS),n.component("w-timeday-range",RS),n.component("w-timeday-range-core",GS),n.component("w-timeminute",$S),n.component("w-timeminute-core",OS),n.component("w-timeminute-range",nw),n.component("w-timeminute-range-core",_S),n.component("w-tinymce-vue-dyn",rw),n.component("w-tooltip",Jf),n.component("w-tree",Vb),n.component("w-tree-icon-checkbox",Wb),n.component("w-tree-icon-toggle",kb)}};return md({},undefined,ow,undefined,undefined,undefined,!1,void 0,void 0,void 0)}));
16
+ !function(n,e){n.exports=function(){function n(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),t.push.apply(t,r)}return t}function e(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n(Object(r),!0).forEach((function(n){l(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))}))}return e}function t(n){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},t(n)}function r(n,e){if(!(n instanceof e))throw new TypeError("Cannot call a class as a function")}function o(n,e){for(var t=0;t<e.length;t++){var r=e[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(n,d(r.key),r)}}function i(n,e,t){return e&&o(n.prototype,e),t&&o(n,t),Object.defineProperty(n,"prototype",{writable:!1}),n}function l(n,e,t){return(e=d(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function a(n,e){if("object"!=typeof n||null===n)return n;var t=n[Symbol.toPrimitive];if(void 0!==t){var r=t.call(n,e||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(n)}function d(n){var e=a(n,"string");return"symbol"==typeof e?e:String(e)}var s={backdrop:!0,button:!0,navbar:!0,title:!0,toolbar:!0,className:"",container:"body",filter:null,fullscreen:!0,inheritedAttributes:["crossOrigin","decoding","isMap","loading","referrerPolicy","sizes","srcset","useMap"],initialCoverage:.9,initialViewIndex:0,inline:!1,interval:5e3,keyboard:!0,focus:!0,loading:!0,loop:!0,minWidth:200,minHeight:100,movable:!0,rotatable:!0,scalable:!0,zoomable:!0,zoomOnTouch:!0,zoomOnWheel:!0,slideOnTouch:!0,toggleOnDblclick:!0,tooltip:!0,transition:!0,zIndex:2015,zIndexInline:0,zoomRatio:.1,minZoomRatio:.01,maxZoomRatio:100,url:"src",ready:null,show:null,shown:null,hide:null,hidden:null,view:null,viewed:null,move:null,moved:null,rotate:null,rotated:null,scale:null,scaled:null,zoom:null,zoomed:null,play:null,stop:null},c='<div class="viewer-container" tabindex="-1" touch-action="none"><div class="viewer-canvas"></div><div class="viewer-footer"><div class="viewer-title"></div><div class="viewer-toolbar"></div><div class="viewer-navbar"><ul class="viewer-list" role="navigation"></ul></div></div><div class="viewer-tooltip" role="alert" aria-hidden="true"></div><div class="viewer-button" data-viewer-action="mix" role="button"></div><div class="viewer-player"></div></div>',u="undefined"!=typeof window&&void 0!==window.document,p=u?window:{},f=!(!u||!p.document.documentElement)&&"ontouchstart"in p.document.documentElement,h=!!u&&"PointerEvent"in p,m="viewer",g="move",v="switch",y="zoom",b="".concat(m,"-active"),C="".concat(m,"-close"),I="".concat(m,"-fade"),x="".concat(m,"-fixed"),S="".concat(m,"-fullscreen"),w="".concat(m,"-fullscreen-exit"),k="".concat(m,"-hide"),T="".concat(m,"-hide-md-down"),H="".concat(m,"-hide-sm-down"),W="".concat(m,"-hide-xs-down"),Z="".concat(m,"-in"),X="".concat(m,"-invisible"),B="".concat(m,"-loading"),A="".concat(m,"-move"),V="".concat(m,"-open"),P="".concat(m,"-show"),K="".concat(m,"-transition"),G="click",F="dblclick",Y="dragstart",R="focusin",L="keydown",j="load",N="error",z=f?"touchend touchcancel":"mouseup",J=f?"touchmove":"mousemove",O=f?"touchstart":"mousedown",D=h?"pointerdown":O,E=h?"pointermove":J,$=h?"pointerup pointercancel":z,Q="resize",M="transitionend",_="wheel",U="ready",q="show",nn="shown",en="hide",tn="hidden",rn="view",on="viewed",ln="move",an="moved",dn="rotate",sn="rotated",cn="scale",un="scaled",pn="zoom",fn="zoomed",hn="play",mn="stop",gn="".concat(m,"Action"),vn=/\s\s*/,yn=["zoom-in","zoom-out","one-to-one","reset","prev","play","next","rotate-left","rotate-right","flip-horizontal","flip-vertical"];function bn(n){return"string"==typeof n}var Cn=Number.isNaN||p.isNaN;function In(n){return"number"==typeof n&&!Cn(n)}function xn(n){return void 0===n}function Sn(n){return"object"===t(n)&&null!==n}var wn=Object.prototype.hasOwnProperty;function kn(n){if(!Sn(n))return!1;try{var e=n.constructor,t=e.prototype;return e&&t&&wn.call(t,"isPrototypeOf")}catch(n){return!1}}function Tn(n){return"function"==typeof n}function Hn(n,e){if(n&&Tn(e))if(Array.isArray(n)||In(n.length)){var t,r=n.length;for(t=0;t<r&&!1!==e.call(n,n[t],t,n);t+=1);}else Sn(n)&&Object.keys(n).forEach((function(t){e.call(n,n[t],t,n)}));return n}var Wn=Object.assign||function(n){for(var e=arguments.length,t=new Array(e>1?e-1:0),r=1;r<e;r++)t[r-1]=arguments[r];return Sn(n)&&t.length>0&&t.forEach((function(e){Sn(e)&&Object.keys(e).forEach((function(t){n[t]=e[t]}))})),n},Zn=/^(?:width|height|left|top|marginLeft|marginTop)$/;function Xn(n,e){var t=n.style;Hn(e,(function(n,e){Zn.test(e)&&In(n)&&(n+="px"),t[e]=n}))}function Bn(n){return bn(n)?n.replace(/&(?!amp;|quot;|#39;|lt;|gt;)/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;"):n}function An(n,e){return!(!n||!e)&&(n.classList?n.classList.contains(e):n.className.indexOf(e)>-1)}function Vn(n,e){if(n&&e)if(In(n.length))Hn(n,(function(n){Vn(n,e)}));else if(n.classList)n.classList.add(e);else{var t=n.className.trim();t?t.indexOf(e)<0&&(n.className="".concat(t," ").concat(e)):n.className=e}}function Pn(n,e){n&&e&&(In(n.length)?Hn(n,(function(n){Pn(n,e)})):n.classList?n.classList.remove(e):n.className.indexOf(e)>=0&&(n.className=n.className.replace(e,"")))}function Kn(n,e,t){e&&(In(n.length)?Hn(n,(function(n){Kn(n,e,t)})):t?Vn(n,e):Pn(n,e))}var Gn=/([a-z\d])([A-Z])/g;function Fn(n){return n.replace(Gn,"$1-$2").toLowerCase()}function Yn(n,e){return Sn(n[e])?n[e]:n.dataset?n.dataset[e]:n.getAttribute("data-".concat(Fn(e)))}function Rn(n,e,t){Sn(t)?n[e]=t:n.dataset?n.dataset[e]=t:n.setAttribute("data-".concat(Fn(e)),t)}var Ln=function(){var n=!1;if(u){var e=!1,t=function(){},r=Object.defineProperty({},"once",{get:function(){return n=!0,e},set:function(n){e=n}});p.addEventListener("test",t,r),p.removeEventListener("test",t,r)}return n}();function jn(n,e,t){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t;e.trim().split(vn).forEach((function(e){if(!Ln){var i=n.listeners;i&&i[e]&&i[e][t]&&(o=i[e][t],delete i[e][t],0===Object.keys(i[e]).length&&delete i[e],0===Object.keys(i).length&&delete n.listeners)}n.removeEventListener(e,o,r)}))}function Nn(n,e,t){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t;e.trim().split(vn).forEach((function(e){if(r.once&&!Ln){var i=n.listeners,l=void 0===i?{}:i;o=function(){delete l[e][t],n.removeEventListener(e,o,r);for(var i=arguments.length,a=new Array(i),d=0;d<i;d++)a[d]=arguments[d];t.apply(n,a)},l[e]||(l[e]={}),l[e][t]&&n.removeEventListener(e,l[e][t],r),l[e][t]=o,n.listeners=l}n.addEventListener(e,o,r)}))}function zn(n,t,r,o){var i;return Tn(Event)&&Tn(CustomEvent)?i=new CustomEvent(t,e({bubbles:!0,cancelable:!0,detail:r},o)):(i=document.createEvent("CustomEvent")).initCustomEvent(t,!0,!0,r),n.dispatchEvent(i)}function Jn(n){var e=n.getBoundingClientRect();return{left:e.left+(window.pageXOffset-document.documentElement.clientLeft),top:e.top+(window.pageYOffset-document.documentElement.clientTop)}}function On(n){var e=n.rotate,t=n.scaleX,r=n.scaleY,o=n.translateX,i=n.translateY,l=[];In(o)&&0!==o&&l.push("translateX(".concat(o,"px)")),In(i)&&0!==i&&l.push("translateY(".concat(i,"px)")),In(e)&&0!==e&&l.push("rotate(".concat(e,"deg)")),In(t)&&1!==t&&l.push("scaleX(".concat(t,")")),In(r)&&1!==r&&l.push("scaleY(".concat(r,")"));var a=l.length?l.join(" "):"none";return{WebkitTransform:a,msTransform:a,transform:a}}function Dn(n){return bn(n)?decodeURIComponent(n.replace(/^.*\//,"").replace(/[?&#].*$/,"")):""}var En=p.navigator&&/(Macintosh|iPhone|iPod|iPad).*AppleWebKit/i.test(p.navigator.userAgent);function $n(n,e,t){var r=document.createElement("img");if(n.naturalWidth&&!En)return t(n.naturalWidth,n.naturalHeight),r;var o=document.body||document.documentElement;return r.onload=function(){t(r.width,r.height),En||o.removeChild(r)},Hn(e.inheritedAttributes,(function(e){var t=n.getAttribute(e);null!==t&&r.setAttribute(e,t)})),r.src=n.src,En||(r.style.cssText="left:0;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;opacity:0;position:absolute;top:0;z-index:-1;",o.appendChild(r)),r}function Qn(n){switch(n){case 2:return W;case 3:return H;case 4:return T;default:return""}}function Mn(n){var t=e({},n),r=[];return Hn(n,(function(n,e){delete t[e],Hn(t,(function(e){var t=Math.abs(n.startX-e.startX),o=Math.abs(n.startY-e.startY),i=Math.abs(n.endX-e.endX),l=Math.abs(n.endY-e.endY),a=Math.sqrt(t*t+o*o),d=(Math.sqrt(i*i+l*l)-a)/a;r.push(d)}))})),r.sort((function(n,e){return Math.abs(n)<Math.abs(e)})),r[0]}function _n(n,t){var r=n.pageX,o=n.pageY,i={endX:r,endY:o};return t?i:e({timeStamp:Date.now(),startX:r,startY:o},i)}function Un(n){var e=0,t=0,r=0;return Hn(n,(function(n){var o=n.startX,i=n.startY;e+=o,t+=i,r+=1})),{pageX:e/=r,pageY:t/=r}}var qn,ne={render:function(){this.initContainer(),this.initViewer(),this.initList(),this.renderViewer()},initBody:function(){var n=this.element.ownerDocument,e=n.body||n.documentElement;this.body=e,this.scrollbarWidth=window.innerWidth-n.documentElement.clientWidth,this.initialBodyPaddingRight=e.style.paddingRight,this.initialBodyComputedPaddingRight=window.getComputedStyle(e).paddingRight},initContainer:function(){this.containerData={width:window.innerWidth,height:window.innerHeight}},initViewer:function(){var n,e=this.options,t=this.parent;e.inline&&(n={width:Math.max(t.offsetWidth,e.minWidth),height:Math.max(t.offsetHeight,e.minHeight)},this.parentData=n),!this.fulled&&n||(n=this.containerData),this.viewerData=Wn({},n)},renderViewer:function(){this.options.inline&&!this.fulled&&Xn(this.viewer,this.viewerData)},initList:function(){var n=this,e=this.element,t=this.options,r=this.list,o=[];r.innerHTML="",Hn(this.images,(function(e,i){var l=e.src,a=e.alt||Dn(l),d=n.getImageURL(e);if(l||d){var s=document.createElement("li"),c=document.createElement("img");Hn(t.inheritedAttributes,(function(n){var t=e.getAttribute(n);null!==t&&c.setAttribute(n,t)})),t.navbar&&(c.src=l||d),c.alt=a,c.setAttribute("data-original-url",d||l),s.setAttribute("data-index",i),s.setAttribute("data-viewer-action","view"),s.setAttribute("role","button"),t.keyboard&&s.setAttribute("tabindex",0),s.appendChild(c),r.appendChild(s),o.push(s)}})),this.items=o,Hn(o,(function(e){var r,o,i=e.firstElementChild;Rn(i,"filled",!0),t.loading&&Vn(e,B),Nn(i,j,r=function(r){jn(i,N,o),t.loading&&Pn(e,B),n.loadImage(r)},{once:!0}),Nn(i,N,o=function(){jn(i,j,r),t.loading&&Pn(e,B)},{once:!0})})),t.transition&&Nn(e,on,(function(){Vn(r,K)}),{once:!0})},renderList:function(){var n=this.index,e=this.items[n];if(e){var t=e.nextElementSibling,r=parseInt(window.getComputedStyle(t||e).marginLeft,10),o=e.offsetWidth,i=o+r;Xn(this.list,Wn({width:i*this.length-r},On({translateX:(this.viewerData.width-o)/2-i*n})))}},resetList:function(){var n=this.list;n.innerHTML="",Pn(n,K),Xn(n,On({translateX:0}))},initImage:function(n){var e,t=this,r=this.options,o=this.image,i=this.viewerData,l=this.footer.offsetHeight,a=i.width,d=Math.max(i.height-l,l),s=this.imageData||{};this.imageInitializing={abort:function(){e.onload=null}},e=$n(o,r,(function(e,o){var i=e/o,l=Math.max(0,Math.min(1,r.initialCoverage)),c=a,u=d;t.imageInitializing=!1,d*i>a?u=a/i:c=d*i,l=In(l)?l:.9,c=Math.min(c*l,e),u=Math.min(u*l,o);var p=(a-c)/2,f=(d-u)/2,h={left:p,top:f,x:p,y:f,width:c,height:u,oldRatio:1,ratio:c/e,aspectRatio:i,naturalWidth:e,naturalHeight:o},m=Wn({},h);r.rotatable&&(h.rotate=s.rotate||0,m.rotate=0),r.scalable&&(h.scaleX=s.scaleX||1,h.scaleY=s.scaleY||1,m.scaleX=1,m.scaleY=1),t.imageData=h,t.initialImageData=m,n&&n()}))},renderImage:function(n){var e=this,t=this.image,r=this.imageData;if(Xn(t,Wn({width:r.width,height:r.height,marginLeft:r.x,marginTop:r.y},On(r))),n)if((this.viewing||this.moving||this.rotating||this.scaling||this.zooming)&&this.options.transition&&An(t,K)){var o=function(){e.imageRendering=!1,n()};this.imageRendering={abort:function(){jn(t,M,o)}},Nn(t,M,o,{once:!0})}else n()},resetImage:function(){if(this.viewing||this.viewed){var n=this.image;this.viewing&&this.viewing.abort(),n.parentNode.removeChild(n),this.image=null}}},ee={bind:function(){var n=this.options,e=this.viewer,t=this.canvas,r=this.element.ownerDocument;Nn(e,G,this.onClick=this.click.bind(this)),Nn(e,Y,this.onDragStart=this.dragstart.bind(this)),Nn(t,D,this.onPointerDown=this.pointerdown.bind(this)),Nn(r,E,this.onPointerMove=this.pointermove.bind(this)),Nn(r,$,this.onPointerUp=this.pointerup.bind(this)),Nn(r,L,this.onKeyDown=this.keydown.bind(this)),Nn(window,Q,this.onResize=this.resize.bind(this)),n.zoomable&&n.zoomOnWheel&&Nn(e,_,this.onWheel=this.wheel.bind(this),{passive:!1,capture:!0}),n.toggleOnDblclick&&Nn(t,F,this.onDblclick=this.dblclick.bind(this))},unbind:function(){var n=this.options,e=this.viewer,t=this.canvas,r=this.element.ownerDocument;jn(e,G,this.onClick),jn(e,Y,this.onDragStart),jn(t,D,this.onPointerDown),jn(r,E,this.onPointerMove),jn(r,$,this.onPointerUp),jn(r,L,this.onKeyDown),jn(window,Q,this.onResize),n.zoomable&&n.zoomOnWheel&&jn(e,_,this.onWheel,{passive:!1,capture:!0}),n.toggleOnDblclick&&jn(t,F,this.onDblclick)}},te={click:function(n){var e=this.options,t=this.imageData,r=n.target,o=Yn(r,gn);switch(o||"img"!==r.localName||"li"!==r.parentElement.localName||(o=Yn(r=r.parentElement,gn)),f&&n.isTrusted&&r===this.canvas&&clearTimeout(this.clickCanvasTimeout),o){case"mix":this.played?this.stop():e.inline?this.fulled?this.exit():this.full():this.hide();break;case"hide":this.pointerMoved||this.hide();break;case"view":this.view(Yn(r,"index"));break;case"zoom-in":this.zoom(.1,!0);break;case"zoom-out":this.zoom(-.1,!0);break;case"one-to-one":this.toggle();break;case"reset":this.reset();break;case"prev":this.prev(e.loop);break;case"play":this.play(e.fullscreen);break;case"next":this.next(e.loop);break;case"rotate-left":this.rotate(-90);break;case"rotate-right":this.rotate(90);break;case"flip-horizontal":this.scaleX(-t.scaleX||-1);break;case"flip-vertical":this.scaleY(-t.scaleY||-1);break;default:this.played&&this.stop()}},dblclick:function(n){n.preventDefault(),this.viewed&&n.target===this.image&&(f&&n.isTrusted&&clearTimeout(this.doubleClickImageTimeout),this.toggle(n.isTrusted?n:n.detail&&n.detail.originalEvent))},load:function(){var n=this;this.timeout&&(clearTimeout(this.timeout),this.timeout=!1);var e=this.element,t=this.options,r=this.image,o=this.index,i=this.viewerData;Pn(r,X),t.loading&&Pn(this.canvas,B),r.style.cssText="height:0;"+"margin-left:".concat(i.width/2,"px;")+"margin-top:".concat(i.height/2,"px;")+"max-width:none!important;position:relative;width:0;",this.initImage((function(){Kn(r,A,t.movable),Kn(r,K,t.transition),n.renderImage((function(){n.viewed=!0,n.viewing=!1,Tn(t.viewed)&&Nn(e,on,t.viewed,{once:!0}),zn(e,on,{originalImage:n.images[o],index:o,image:r},{cancelable:!1})}))}))},loadImage:function(n){var e=n.target,t=e.parentNode,r=t.offsetWidth||30,o=t.offsetHeight||50,i=!!Yn(e,"filled");$n(e,this.options,(function(n,t){var l=n/t,a=r,d=o;o*l>r?i?a=o*l:d=r/l:i?d=r/l:a=o*l,Xn(e,Wn({width:a,height:d},On({translateX:(r-a)/2,translateY:(o-d)/2})))}))},keydown:function(n){var e=this.options;if(e.keyboard){var t=n.keyCode||n.which||n.charCode;if(13===t&&this.viewer.contains(n.target)&&this.click(n),this.fulled)switch(t){case 27:this.played?this.stop():e.inline?this.fulled&&this.exit():this.hide();break;case 32:this.played&&this.stop();break;case 37:this.played&&this.playing?this.playing.prev():this.prev(e.loop);break;case 38:n.preventDefault(),this.zoom(e.zoomRatio,!0);break;case 39:this.played&&this.playing?this.playing.next():this.next(e.loop);break;case 40:n.preventDefault(),this.zoom(-e.zoomRatio,!0);break;case 48:case 49:n.ctrlKey&&(n.preventDefault(),this.toggle())}}},dragstart:function(n){"img"===n.target.localName&&n.preventDefault()},pointerdown:function(n){var e=this.options,t=this.pointers,r=n.buttons,o=n.button;if(this.pointerMoved=!1,!(!this.viewed||this.showing||this.viewing||this.hiding||("mousedown"===n.type||"pointerdown"===n.type&&"mouse"===n.pointerType)&&(In(r)&&1!==r||In(o)&&0!==o||n.ctrlKey))){n.preventDefault(),n.changedTouches?Hn(n.changedTouches,(function(n){t[n.identifier]=_n(n)})):t[n.pointerId||0]=_n(n);var i=!!e.movable&&g;e.zoomOnTouch&&e.zoomable&&Object.keys(t).length>1?i=y:e.slideOnTouch&&("touch"===n.pointerType||"touchstart"===n.type)&&this.isSwitchable()&&(i=v),!e.transition||i!==g&&i!==y||Pn(this.image,K),this.action=i}},pointermove:function(n){var e=this.pointers,t=this.action;this.viewed&&t&&(n.preventDefault(),n.changedTouches?Hn(n.changedTouches,(function(n){Wn(e[n.identifier]||{},_n(n,!0))})):Wn(e[n.pointerId||0]||{},_n(n,!0)),this.change(n))},pointerup:function(n){var e,t=this,r=this.options,o=this.action,i=this.pointers;n.changedTouches?Hn(n.changedTouches,(function(n){e=i[n.identifier],delete i[n.identifier]})):(e=i[n.pointerId||0],delete i[n.pointerId||0]),o&&(n.preventDefault(),!r.transition||o!==g&&o!==y||Vn(this.image,K),this.action=!1,f&&o!==y&&e&&Date.now()-e.timeStamp<500&&(clearTimeout(this.clickCanvasTimeout),clearTimeout(this.doubleClickImageTimeout),r.toggleOnDblclick&&this.viewed&&n.target===this.image?this.imageClicked?(this.imageClicked=!1,this.doubleClickImageTimeout=setTimeout((function(){zn(t.image,F,{originalEvent:n})}),50)):(this.imageClicked=!0,this.doubleClickImageTimeout=setTimeout((function(){t.imageClicked=!1}),500)):(this.imageClicked=!1,r.backdrop&&"static"!==r.backdrop&&n.target===this.canvas&&(this.clickCanvasTimeout=setTimeout((function(){zn(t.canvas,G,{originalEvent:n})}),50)))))},resize:function(){var n=this;if(this.isShown&&!this.hiding&&(this.fulled&&(this.close(),this.initBody(),this.open()),this.initContainer(),this.initViewer(),this.renderViewer(),this.renderList(),this.viewed&&this.initImage((function(){n.renderImage()})),this.played)){if(this.options.fullscreen&&this.fulled&&!(document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement))return void this.stop();Hn(this.player.getElementsByTagName("img"),(function(e){Nn(e,j,n.loadImage.bind(n),{once:!0}),zn(e,j)}))}},wheel:function(n){var e=this;if(this.viewed&&(n.preventDefault(),!this.wheeling)){this.wheeling=!0,setTimeout((function(){e.wheeling=!1}),50);var t=Number(this.options.zoomRatio)||.1,r=1;n.deltaY?r=n.deltaY>0?1:-1:n.wheelDelta?r=-n.wheelDelta/120:n.detail&&(r=n.detail>0?1:-1),this.zoom(-r*t,!0,null,n)}}},re={show:function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.element,t=this.options;if(t.inline||this.showing||this.isShown||this.showing)return this;if(!this.ready)return this.build(),this.ready&&this.show(n),this;if(Tn(t.show)&&Nn(e,q,t.show,{once:!0}),!1===zn(e,q)||!this.ready)return this;this.hiding&&this.transitioning.abort(),this.showing=!0,this.open();var r=this.viewer;if(Pn(r,k),r.setAttribute("role","dialog"),r.setAttribute("aria-labelledby",this.title.id),r.setAttribute("aria-modal",!0),r.removeAttribute("aria-hidden"),t.transition&&!n){var o=this.shown.bind(this);this.transitioning={abort:function(){jn(r,M,o),Pn(r,Z)}},Vn(r,K),r.initialOffsetWidth=r.offsetWidth,Nn(r,M,o,{once:!0}),Vn(r,Z)}else Vn(r,Z),this.shown();return this},hide:function(){var n=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.element,r=this.options;if(r.inline||this.hiding||!this.isShown&&!this.showing)return this;if(Tn(r.hide)&&Nn(t,en,r.hide,{once:!0}),!1===zn(t,en))return this;this.showing&&this.transitioning.abort(),this.hiding=!0,this.played?this.stop():this.viewing&&this.viewing.abort();var o=this.viewer,i=this.image,l=function(){Pn(o,Z),n.hidden()};if(r.transition&&!e){var a=function e(t){t&&t.target===o&&(jn(o,M,e),n.hidden())},d=function(){An(o,K)?(Nn(o,M,a),Pn(o,Z)):l()};this.transitioning={abort:function(){n.viewed&&An(i,K)?jn(i,M,d):An(o,K)&&jn(o,M,a)}},this.viewed&&An(i,K)?(Nn(i,M,d,{once:!0}),this.zoomTo(0,!1,null,null,!0)):d()}else l();return this},view:function(){var n=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.initialViewIndex;if(e=Number(e)||0,this.hiding||this.played||e<0||e>=this.length||this.viewed&&e===this.index)return this;if(!this.isShown)return this.index=e,this.show();this.viewing&&this.viewing.abort();var t=this.element,r=this.options,o=this.title,i=this.canvas,l=this.items[e],a=l.querySelector("img"),d=Yn(a,"originalUrl"),s=a.getAttribute("alt"),c=document.createElement("img");if(Hn(r.inheritedAttributes,(function(n){var e=a.getAttribute(n);null!==e&&c.setAttribute(n,e)})),c.src=d,c.alt=s,Tn(r.view)&&Nn(t,rn,r.view,{once:!0}),!1===zn(t,rn,{originalImage:this.images[e],index:e,image:c})||!this.isShown||this.hiding||this.played)return this;var u=this.items[this.index];u&&(Pn(u,b),u.removeAttribute("aria-selected")),Vn(l,b),l.setAttribute("aria-selected",!0),r.focus&&l.focus(),this.image=c,this.viewed=!1,this.index=e,this.imageData={},Vn(c,X),r.loading&&Vn(i,B),i.innerHTML="",i.appendChild(c),this.renderList(),o.innerHTML="";var p,f,h=function(){var e=n.imageData,t=Array.isArray(r.title)?r.title[1]:r.title;o.innerHTML=Bn(Tn(t)?t.call(n,c,e):"".concat(s," (").concat(e.naturalWidth," × ").concat(e.naturalHeight,")"))};return Nn(t,on,h,{once:!0}),this.viewing={abort:function(){jn(t,on,h),c.complete?n.imageRendering?n.imageRendering.abort():n.imageInitializing&&n.imageInitializing.abort():(c.src="",jn(c,j,p),n.timeout&&clearTimeout(n.timeout))}},c.complete?this.load():(Nn(c,j,p=function(){jn(c,N,f),n.load()},{once:!0}),Nn(c,N,f=function(){jn(c,j,p),n.timeout&&(clearTimeout(n.timeout),n.timeout=!1),Pn(c,X),r.loading&&Pn(n.canvas,B)},{once:!0}),this.timeout&&clearTimeout(this.timeout),this.timeout=setTimeout((function(){Pn(c,X),n.timeout=!1}),1e3)),this},prev:function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.index-1;return e<0&&(e=n?this.length-1:0),this.view(e),this},next:function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.length-1,t=this.index+1;return t>e&&(t=n?0:e),this.view(t),this},move:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n,t=this.imageData;return this.moveTo(xn(n)?n:t.x+Number(n),xn(e)?e:t.y+Number(e)),this},moveTo:function(n){var e=this,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,o=this.element,i=this.options,l=this.imageData;if(n=Number(n),t=Number(t),this.viewed&&!this.played&&i.movable){var a=l.x,d=l.y,s=!1;if(In(n)?s=!0:n=a,In(t)?s=!0:t=d,s){if(Tn(i.move)&&Nn(o,ln,i.move,{once:!0}),!1===zn(o,ln,{x:n,y:t,oldX:a,oldY:d,originalEvent:r}))return this;l.x=n,l.y=t,l.left=n,l.top=t,this.moving=!0,this.renderImage((function(){e.moving=!1,Tn(i.moved)&&Nn(o,an,i.moved,{once:!0}),zn(o,an,{x:n,y:t,oldX:a,oldY:d,originalEvent:r},{cancelable:!1})}))}}return this},rotate:function(n){return this.rotateTo((this.imageData.rotate||0)+Number(n)),this},rotateTo:function(n){var e=this,t=this.element,r=this.options,o=this.imageData;if(In(n=Number(n))&&this.viewed&&!this.played&&r.rotatable){var i=o.rotate;if(Tn(r.rotate)&&Nn(t,dn,r.rotate,{once:!0}),!1===zn(t,dn,{degree:n,oldDegree:i}))return this;o.rotate=n,this.rotating=!0,this.renderImage((function(){e.rotating=!1,Tn(r.rotated)&&Nn(t,sn,r.rotated,{once:!0}),zn(t,sn,{degree:n,oldDegree:i},{cancelable:!1})}))}return this},scaleX:function(n){return this.scale(n,this.imageData.scaleY),this},scaleY:function(n){return this.scale(this.imageData.scaleX,n),this},scale:function(n){var e=this,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n,r=this.element,o=this.options,i=this.imageData;if(n=Number(n),t=Number(t),this.viewed&&!this.played&&o.scalable){var l=i.scaleX,a=i.scaleY,d=!1;if(In(n)?d=!0:n=l,In(t)?d=!0:t=a,d){if(Tn(o.scale)&&Nn(r,cn,o.scale,{once:!0}),!1===zn(r,cn,{scaleX:n,scaleY:t,oldScaleX:l,oldScaleY:a}))return this;i.scaleX=n,i.scaleY=t,this.scaling=!0,this.renderImage((function(){e.scaling=!1,Tn(o.scaled)&&Nn(r,un,o.scaled,{once:!0}),zn(r,un,{scaleX:n,scaleY:t,oldScaleX:l,oldScaleY:a},{cancelable:!1})}))}}return this},zoom:function(n){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=this.imageData;return n=(n=Number(n))<0?1/(1-n):1+n,this.zoomTo(o.width*n/o.naturalWidth,e,t,r),this},zoomTo:function(n){var e=this,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i=arguments.length>4&&void 0!==arguments[4]&&arguments[4],l=this.element,a=this.options,d=this.pointers,s=this.imageData,c=s.x,u=s.y,p=s.width,f=s.height,h=s.naturalWidth,m=s.naturalHeight;if(In(n=Math.max(0,n))&&this.viewed&&!this.played&&(i||a.zoomable)){if(!i){var g=Math.max(.01,a.minZoomRatio),v=Math.min(100,a.maxZoomRatio);n=Math.min(Math.max(n,g),v)}if(o)switch(o.type){case"wheel":a.zoomRatio>=.055&&n>.95&&n<1.05&&(n=1);break;case"pointermove":case"touchmove":case"mousemove":n>.99&&n<1.01&&(n=1)}var y=h*n,b=m*n,C=y-p,I=b-f,x=s.ratio;if(Tn(a.zoom)&&Nn(l,pn,a.zoom,{once:!0}),!1===zn(l,pn,{ratio:n,oldRatio:x,originalEvent:o}))return this;if(this.zooming=!0,o){var S=Jn(this.viewer),w=d&&Object.keys(d).length>0?Un(d):{pageX:o.pageX,pageY:o.pageY};s.x-=C*((w.pageX-S.left-c)/p),s.y-=I*((w.pageY-S.top-u)/f)}else kn(r)&&In(r.x)&&In(r.y)?(s.x-=C*((r.x-c)/p),s.y-=I*((r.y-u)/f)):(s.x-=C/2,s.y-=I/2);s.left=s.x,s.top=s.y,s.width=y,s.height=b,s.oldRatio=x,s.ratio=n,this.renderImage((function(){e.zooming=!1,Tn(a.zoomed)&&Nn(l,fn,a.zoomed,{once:!0}),zn(l,fn,{ratio:n,oldRatio:x,originalEvent:o},{cancelable:!1})})),t&&this.tooltip()}return this},play:function(){var n=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!this.isShown||this.played)return this;var t=this.element,r=this.options;if(Tn(r.play)&&Nn(t,hn,r.play,{once:!0}),!1===zn(t,hn))return this;var o=this.player,i=this.loadImage.bind(this),l=[],a=0,d=0;if(this.played=!0,this.onLoadWhenPlay=i,e&&this.requestFullscreen(e),Vn(o,P),Hn(this.items,(function(n,e){var t=n.querySelector("img"),s=document.createElement("img");s.src=Yn(t,"originalUrl"),s.alt=t.getAttribute("alt"),s.referrerPolicy=t.referrerPolicy,a+=1,Vn(s,I),Kn(s,K,r.transition),An(n,b)&&(Vn(s,Z),d=e),l.push(s),Nn(s,j,i,{once:!0}),o.appendChild(s)})),In(r.interval)&&r.interval>0){var s=function e(){clearTimeout(n.playing.timeout),Pn(l[d],Z),Vn(l[d=(d-=1)>=0?d:a-1],Z),n.playing.timeout=setTimeout(e,r.interval)},c=function e(){clearTimeout(n.playing.timeout),Pn(l[d],Z),Vn(l[d=(d+=1)<a?d:0],Z),n.playing.timeout=setTimeout(e,r.interval)};a>1&&(this.playing={prev:s,next:c,timeout:setTimeout(c,r.interval)})}return this},stop:function(){var n=this;if(!this.played)return this;var e=this.element,t=this.options;if(Tn(t.stop)&&Nn(e,mn,t.stop,{once:!0}),!1===zn(e,mn))return this;var r=this.player;return clearTimeout(this.playing.timeout),this.playing=!1,this.played=!1,Hn(r.getElementsByTagName("img"),(function(e){jn(e,j,n.onLoadWhenPlay)})),Pn(r,P),r.innerHTML="",this.exitFullscreen(),this},full:function(){var n=this,e=this.options,t=this.viewer,r=this.image,o=this.list;return!this.isShown||this.played||this.fulled||!e.inline||(this.fulled=!0,this.open(),Vn(this.button,w),e.transition&&(Pn(o,K),this.viewed&&Pn(r,K)),Vn(t,x),t.setAttribute("role","dialog"),t.setAttribute("aria-labelledby",this.title.id),t.setAttribute("aria-modal",!0),t.removeAttribute("style"),Xn(t,{zIndex:e.zIndex}),e.focus&&this.enforceFocus(),this.initContainer(),this.viewerData=Wn({},this.containerData),this.renderList(),this.viewed&&this.initImage((function(){n.renderImage((function(){e.transition&&setTimeout((function(){Vn(r,K),Vn(o,K)}),0)}))}))),this},exit:function(){var n=this,e=this.options,t=this.viewer,r=this.image,o=this.list;return this.isShown&&!this.played&&this.fulled&&e.inline?(this.fulled=!1,this.close(),Pn(this.button,w),e.transition&&(Pn(o,K),this.viewed&&Pn(r,K)),e.focus&&this.clearEnforceFocus(),t.removeAttribute("role"),t.removeAttribute("aria-labelledby"),t.removeAttribute("aria-modal"),Pn(t,x),Xn(t,{zIndex:e.zIndexInline}),this.viewerData=Wn({},this.parentData),this.renderViewer(),this.renderList(),this.viewed&&this.initImage((function(){n.renderImage((function(){e.transition&&setTimeout((function(){Vn(r,K),Vn(o,K)}),0)}))})),this):this},tooltip:function(){var n=this,e=this.options,t=this.tooltipBox,r=this.imageData;return this.viewed&&!this.played&&e.tooltip?(t.textContent="".concat(Math.round(100*r.ratio),"%"),this.tooltipping?clearTimeout(this.tooltipping):e.transition?(this.fading&&zn(t,M),Vn(t,P),Vn(t,I),Vn(t,K),t.removeAttribute("aria-hidden"),t.initialOffsetWidth=t.offsetWidth,Vn(t,Z)):(Vn(t,P),t.removeAttribute("aria-hidden")),this.tooltipping=setTimeout((function(){e.transition?(Nn(t,M,(function(){Pn(t,P),Pn(t,I),Pn(t,K),t.setAttribute("aria-hidden",!0),n.fading=!1}),{once:!0}),Pn(t,Z),n.fading=!0):(Pn(t,P),t.setAttribute("aria-hidden",!0)),n.tooltipping=!1}),1e3),this):this},toggle:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return 1===this.imageData.ratio?this.zoomTo(this.imageData.oldRatio,!0,null,n):this.zoomTo(1,!0,null,n),this},reset:function(){return this.viewed&&!this.played&&(this.imageData=Wn({},this.initialImageData),this.renderImage()),this},update:function(){var n=this,e=this.element,t=this.options,r=this.isImg;if(r&&!e.parentNode)return this.destroy();var o=[];if(Hn(r?[e]:e.querySelectorAll("img"),(function(e){Tn(t.filter)?t.filter.call(n,e)&&o.push(e):n.getImageURL(e)&&o.push(e)})),!o.length)return this;if(this.images=o,this.length=o.length,this.ready){var i=[];if(Hn(this.items,(function(n,e){var t=n.querySelector("img"),r=o[e];r&&t&&r.src===t.src&&r.alt===t.alt||i.push(e)})),Xn(this.list,{width:"auto"}),this.initList(),this.isShown)if(this.length){if(this.viewed){var l=i.indexOf(this.index);if(l>=0)this.viewed=!1,this.view(Math.max(Math.min(this.index-l,this.length-1),0));else{var a=this.items[this.index];Vn(a,b),a.setAttribute("aria-selected",!0)}}}else this.image=null,this.viewed=!1,this.index=0,this.imageData={},this.canvas.innerHTML="",this.title.innerHTML=""}else this.build();return this},destroy:function(){var n=this.element,e=this.options;return n[m]?(this.destroyed=!0,this.ready?(this.played&&this.stop(),e.inline?(this.fulled&&this.exit(),this.unbind()):this.isShown?(this.viewing&&(this.imageRendering?this.imageRendering.abort():this.imageInitializing&&this.imageInitializing.abort()),this.hiding&&this.transitioning.abort(),this.hidden()):this.showing&&(this.transitioning.abort(),this.hidden()),this.ready=!1,this.viewer.parentNode.removeChild(this.viewer)):e.inline&&(this.delaying?this.delaying.abort():this.initializing&&this.initializing.abort()),e.inline||jn(n,G,this.onStart),n[m]=void 0,this):this}},oe={getImageURL:function(n){var e=this.options.url;return e=bn(e)?n.getAttribute(e):Tn(e)?e.call(this,n):""},enforceFocus:function(){var n=this;this.clearEnforceFocus(),Nn(document,R,this.onFocusin=function(e){var t=n.viewer,r=e.target;if(r!==document&&r!==t&&!t.contains(r)){for(;r;){if(null!==r.getAttribute("tabindex")||"true"===r.getAttribute("aria-modal"))return;r=r.parentElement}t.focus()}})},clearEnforceFocus:function(){this.onFocusin&&(jn(document,R,this.onFocusin),this.onFocusin=null)},open:function(){var n=this.body;Vn(n,V),this.scrollbarWidth>0&&(n.style.paddingRight="".concat(this.scrollbarWidth+(parseFloat(this.initialBodyComputedPaddingRight)||0),"px"))},close:function(){var n=this.body;Pn(n,V),this.scrollbarWidth>0&&(n.style.paddingRight=this.initialBodyPaddingRight)},shown:function(){var n=this.element,e=this.options,t=this.viewer;this.fulled=!0,this.isShown=!0,this.render(),this.bind(),this.showing=!1,e.focus&&(t.focus(),this.enforceFocus()),Tn(e.shown)&&Nn(n,nn,e.shown,{once:!0}),!1!==zn(n,nn)&&this.ready&&this.isShown&&!this.hiding&&this.view(this.index)},hidden:function(){var n=this.element,e=this.options,t=this.viewer;e.fucus&&this.clearEnforceFocus(),this.fulled=!1,this.viewed=!1,this.isShown=!1,this.close(),this.unbind(),Vn(t,k),t.removeAttribute("role"),t.removeAttribute("aria-labelledby"),t.removeAttribute("aria-modal"),t.setAttribute("aria-hidden",!0),this.resetList(),this.resetImage(),this.hiding=!1,this.destroyed||(Tn(e.hidden)&&Nn(n,tn,e.hidden,{once:!0}),zn(n,tn,null,{cancelable:!1}))},requestFullscreen:function(n){var e=this.element.ownerDocument;if(this.fulled&&!(e.fullscreenElement||e.webkitFullscreenElement||e.mozFullScreenElement||e.msFullscreenElement)){var t=e.documentElement;t.requestFullscreen?kn(n)?t.requestFullscreen(n):t.requestFullscreen():t.webkitRequestFullscreen?t.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):t.mozRequestFullScreen?t.mozRequestFullScreen():t.msRequestFullscreen&&t.msRequestFullscreen()}},exitFullscreen:function(){var n=this.element.ownerDocument;this.fulled&&(n.fullscreenElement||n.webkitFullscreenElement||n.mozFullScreenElement||n.msFullscreenElement)&&(n.exitFullscreen?n.exitFullscreen():n.webkitExitFullscreen?n.webkitExitFullscreen():n.mozCancelFullScreen?n.mozCancelFullScreen():n.msExitFullscreen&&n.msExitFullscreen())},change:function(n){var e=this.options,t=this.pointers,r=t[Object.keys(t)[0]];if(r){var o=r.endX-r.startX,i=r.endY-r.startY;switch(this.action){case g:0===o&&0===i||(this.pointerMoved=!0,this.move(o,i,n));break;case y:this.zoom(Mn(t),!1,null,n);break;case v:this.action="switched";var l=Math.abs(o);l>1&&l>Math.abs(i)&&(this.pointers={},o>1?this.prev(e.loop):o<-1&&this.next(e.loop))}Hn(t,(function(n){n.startX=n.endX,n.startY=n.endY}))}},isSwitchable:function(){var n=this.imageData,e=this.viewerData;return this.length>1&&n.x>=0&&n.y>=0&&n.width<=e.width&&n.height<=e.height}},ie=p.Viewer,le=(qn=-1,function(){return qn+=1}),ae=function(){function n(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(r(this,n),!e||1!==e.nodeType)throw new Error("The first argument is required and must be an element.");this.element=e,this.options=Wn({},s,kn(t)&&t),this.action=!1,this.fading=!1,this.fulled=!1,this.hiding=!1,this.imageClicked=!1,this.imageData={},this.index=this.options.initialViewIndex,this.isImg=!1,this.isShown=!1,this.length=0,this.moving=!1,this.played=!1,this.playing=!1,this.pointers={},this.ready=!1,this.rotating=!1,this.scaling=!1,this.showing=!1,this.timeout=!1,this.tooltipping=!1,this.viewed=!1,this.viewing=!1,this.wheeling=!1,this.zooming=!1,this.pointerMoved=!1,this.id=le(),this.init()}return i(n,[{key:"init",value:function(){var n=this,e=this.element,t=this.options;if(!e[m]){e[m]=this,t.focus&&!t.keyboard&&(t.focus=!1);var r="img"===e.localName,o=[];if(Hn(r?[e]:e.querySelectorAll("img"),(function(e){Tn(t.filter)?t.filter.call(n,e)&&o.push(e):n.getImageURL(e)&&o.push(e)})),this.isImg=r,this.length=o.length,this.images=o,this.initBody(),xn(document.createElement(m).style.transition)&&(t.transition=!1),t.inline){var i=0,l=function(){var e;(i+=1)===n.length&&(n.initializing=!1,n.delaying={abort:function(){clearTimeout(e)}},e=setTimeout((function(){n.delaying=!1,n.build()}),0))};this.initializing={abort:function(){Hn(o,(function(n){n.complete||(jn(n,j,l),jn(n,N,l))}))}},Hn(o,(function(n){var e,t;n.complete?l():(Nn(n,j,e=function(){jn(n,N,t),l()},{once:!0}),Nn(n,N,t=function(){jn(n,j,e),l()},{once:!0}))}))}else Nn(e,G,this.onStart=function(e){var r=e.target;"img"!==r.localName||Tn(t.filter)&&!t.filter.call(n,r)||n.view(n.images.indexOf(r))})}}},{key:"build",value:function(){if(!this.ready){var n=this.element,e=this.options,t=n.parentNode,r=document.createElement("div");r.innerHTML=c;var o=r.querySelector(".".concat(m,"-container")),i=o.querySelector(".".concat(m,"-title")),l=o.querySelector(".".concat(m,"-toolbar")),a=o.querySelector(".".concat(m,"-navbar")),d=o.querySelector(".".concat(m,"-button")),s=o.querySelector(".".concat(m,"-canvas"));if(this.parent=t,this.viewer=o,this.title=i,this.toolbar=l,this.navbar=a,this.button=d,this.canvas=s,this.footer=o.querySelector(".".concat(m,"-footer")),this.tooltipBox=o.querySelector(".".concat(m,"-tooltip")),this.player=o.querySelector(".".concat(m,"-player")),this.list=o.querySelector(".".concat(m,"-list")),o.id="".concat(m).concat(this.id),i.id="".concat(m,"Title").concat(this.id),Vn(i,e.title?Qn(Array.isArray(e.title)?e.title[0]:e.title):k),Vn(a,e.navbar?Qn(e.navbar):k),Kn(d,k,!e.button),e.keyboard&&d.setAttribute("tabindex",0),e.backdrop&&(Vn(o,"".concat(m,"-backdrop")),e.inline||"static"===e.backdrop||Rn(s,gn,"hide")),bn(e.className)&&e.className&&e.className.split(vn).forEach((function(n){Vn(o,n)})),e.toolbar){var u=document.createElement("ul"),p=kn(e.toolbar),f=yn.slice(0,3),h=yn.slice(7,9),g=yn.slice(9);p||Vn(l,Qn(e.toolbar)),Hn(p?e.toolbar:yn,(function(n,t){var r=p&&kn(n),o=p?Fn(t):n,i=r&&!xn(n.show)?n.show:n;if(i&&(e.zoomable||-1===f.indexOf(o))&&(e.rotatable||-1===h.indexOf(o))&&(e.scalable||-1===g.indexOf(o))){var l=r&&!xn(n.size)?n.size:n,a=r&&!xn(n.click)?n.click:n,d=document.createElement("li");e.keyboard&&d.setAttribute("tabindex",0),d.setAttribute("role","button"),Vn(d,"".concat(m,"-").concat(o)),Tn(a)||Rn(d,gn,o),In(i)&&Vn(d,Qn(i)),-1!==["small","large"].indexOf(l)?Vn(d,"".concat(m,"-").concat(l)):"play"===o&&Vn(d,"".concat(m,"-large")),Tn(a)&&Nn(d,G,a),u.appendChild(d)}})),l.appendChild(u)}else Vn(l,k);if(!e.rotatable){var v=l.querySelectorAll('li[class*="rotate"]');Vn(v,X),Hn(v,(function(n){l.appendChild(n)}))}if(e.inline)Vn(d,S),Xn(o,{zIndex:e.zIndexInline}),"static"===window.getComputedStyle(t).position&&Xn(t,{position:"relative"}),t.insertBefore(o,n.nextSibling);else{Vn(d,C),Vn(o,x),Vn(o,I),Vn(o,k),Xn(o,{zIndex:e.zIndex});var y=e.container;bn(y)&&(y=n.ownerDocument.querySelector(y)),y||(y=this.body),y.appendChild(o)}e.inline&&(this.render(),this.bind(),this.isShown=!0),this.ready=!0,Tn(e.ready)&&Nn(n,U,e.ready,{once:!0}),!1!==zn(n,U)?this.ready&&e.inline&&this.view(this.index):this.ready=!1}}}],[{key:"noConflict",value:function(){return window.Viewer=ie,n}},{key:"setDefaults",value:function(n){Wn(s,kn(n)&&n)}}]),n}();return Wn(ae.prototype,ne,ee,te,re,oe),ae}()}({get exports(){return FC},set exports(n){FC=n}});var YC=FC,RC=sh,LC=Ln;var jC=function(n,e,t){(void 0!==t&&!LC(n[e],t)||void 0===t&&!(e in n))&&RC(n,e,t)},NC=Cn,zC=w;var JC=function(n,e){if(("constructor"!==e||"function"!=typeof n[e])&&"__proto__"!=e)return n[e]},OC=gh,DC=Hh;var EC=jC,$C=Bh,QC=om,MC=up,_C=gm,UC=V,qC=P,nI=function(n){return zC(n)&&NC(n)},eI=K,tI=vn,rI=hn,oI=Fs,iI=M,lI=JC,aI=function(n){return OC(n,DC(n))};var dI=mt,sI=jC,cI=l,uI=function(n,e,t,r,o,i,l){var a=lI(n,t),d=lI(e,t),s=l.get(d);if(s)EC(n,t,s);else{var c=i?i(a,d,t+"",n,e,l):void 0,u=void 0===c;if(u){var p=qC(d),f=!p&&eI(d),h=!p&&!f&&iI(d);c=d,p||f||h?qC(a)?c=a:nI(a)?c=MC(a):f?(u=!1,c=$C(d,!0)):h?(u=!1,c=QC(d,!0)):c=[]:oI(d)||UC(d)?(c=a,UC(a)?c=aI(a):rI(a)&&!tI(a)||(c=_C(d))):u=!1}u&&(l.set(d,c),o(c,d,r,i,l),l.delete(d)),EC(n,t,c)}},pI=hn,fI=Hh,hI=JC;var mI=function n(e,t,r,o,i){e!==t&&cI(t,(function(l,a){if(i||(i=new dI),pI(l))uI(e,t,a,r,n,o,i);else{var d=o?o(hI(e,a),l,a+"",e,t,i):void 0;void 0===d&&(d=l),sI(e,a,d)}}),fI)},gI=vs,vI=ka;var yI=mI,bI=function(n){return gI((function(e,t){var r=-1,o=t.length,i=o>1?t[o-1]:void 0,l=o>2?t[2]:void 0;for(i=n.length>3&&"function"==typeof i?(o--,i):void 0,l&&vI(t[0],t[1],l)&&(i=o<3?void 0:i,o=1),e=Object(e);++r<o;){var a=t[r];a&&n(e,a,r,i)}return e}))}((function(n,e,t){yI(n,e,t)}));async function CI(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=!0,o=null,i=ui();if(ks(t)||(t={}),!js(n))return i.reject("eleImg is not HTMLElement"),i;if(o=n,null!==e){if(!js(e))return i.reject("eleGroup is not HTMLElement"),i;r=!1,o=e}if(!r){let n=e.querySelectorAll("img"),t=ud(n);if(0===t)return i.reject("eleGroup does not contain any img"),i;1===t&&(r=!0)}let l={button:!1,navbar:!1,title:!1,toolbar:{zoomIn:4,zoomOut:4,oneToOne:4,reset:4,prev:0,play:0,next:0,rotateLeft:4,rotateRight:4,flipHorizontal:4,flipVertical:4},tooltip:!1,movable:!0,zoomable:!0,rotatable:!0,scalable:!0,transition:!0,fullscreen:!1,keyboard:!0};r||(l=function(){let n={button:!1,navbar:!1,title:!1,toolbar:{zoomIn:4,zoomOut:4,oneToOne:4,reset:4,prev:0,play:0,next:0,rotateLeft:4,rotateRight:4,flipHorizontal:4,flipVertical:4},tooltip:!1,movable:!0,zoomable:!0,rotatable:!0,scalable:!0,transition:!0,fullscreen:!1,keyboard:!0};return n.navbar=!0,n.toolbar.prev=4,n.toolbar.next=4,n}()),l=bI(l,rg(t));let a=!1;l.hide=function(){a||(a=!0,s.hide(!0))},l.hidden=function(){s.destroy(),i.resolve("close")};let d=function(){let n=Sd();return YC||n.Viewer}(),s=new d(o,l);return s.show(),i}async function II(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;return Fg(r)||(r=["https://cdn.jsdelivr.net/npm/viewerjs@1.11.3/dist/viewer.min.css","https://cdn.jsdelivr.net/npm/viewerjs@1.11.3/dist/viewer.min.js"]),await rl(r),CI(n,e,t)}function xI(){return new function(n,e){let t=null;_i(n)||(n=0),n=Ei(n),kc(e)||(e=!1);let r=function(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=0,t=[];oC(n)&&(n=0),n=Ei(n);let r=tc();return r.get=function(){return t.length>0?(e+=1,t.splice(0,1)[0]):null},r.cb=function(){e-=1,e<0&&(e=0),t.length>0&&r.emit("message",t)},r.push=function(o){t.push(o),(n<=0||e<n)&&r.emit("message",t)},r.clear=function(){e=0,t=[]},r}(n);return r.on("message",(async function(n){let e=r.get();if(!e)return;await qi(1);let t,o=wo(e,"id"),i=wo(e,"fun"),l=wo(e,"input");t=ci(i)?await jg(i)(...l):{state:"error",msg:"fun is not function"},r.emit(o,t),r.cb()})),function(n){let o=ui(),i=ws();t=i;for(var l=arguments.length,a=new Array(l>1?l-1:0),d=1;d<l;d++)a[d-1]=arguments[d];let s={id:i,fun:n,input:a};return r.push(s),r.once(i,(n=>{e?i===t?"success"===n.state?o.resolve(n.msg):o.reject(n.msg):o.reject({reason:"cancelled"}):"success"===n.state?o.resolve(n.msg):o.reject(n.msg)})),o}}(arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,arguments.length>1&&void 0!==arguments[1]&&arguments[1])}let SI=!1;var wI={directives:{domresize:ac()},components:{WIconLoading:xd},props:{pathItems:{type:Array,default:()=>["https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.css","https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.js"]},images:{type:Array,default:()=>[]},imageWidth:{type:Number,default:300},imageWidthSoft:{type:Number,default:null},colNum:{type:Number,default:null},space:{type:Number,default:15},imageStyle:{type:Object,default:()=>{}},arrangeWhenFinish:{type:Boolean,default:!1},numParallel:{type:Number,default:5},opt:{type:Object,default:()=>{}}},data:function(){return{dbc:Lg(),loading:!0,first:!1,widthPanel:0,heightPanel:0,imageCols:[],imageLocs:[],useImageStyle:{},uesImageWidth:0,imagesRes:[]}},mounted:function(){let n=this;rl(n.pathItems).then((e=>{n.loading=!1}))},computed:{changeImages:function(){let n=this.images;return this.refreshDebounce({images:n}),""},changeStyle:function(){let n=this,e=n.widthPanel,t=n.imageWidth,r=n.imageStyle,o=n.colNum,i=n.space;return n.refreshDebounce({widthPanel:e,imageWidth:t,imageStyle:r,colNum:o,space:i}),""}},methods:{resize:function(n){let e=this,t=wo(e,"$el.offsetWidth",0);SI||e.widthPanel!==t&&(e.widthPanel=t)},getImgSize:function(n,e){let t=ui(),r=`g${ws()}`,o=document.createElement("img");o.src=n,o.style.maxWidth=`${e}px`;let i=document.createElement("div");return i.id=`img-${r}`,i.style.position="absolute",i.style.width=0,i.style.height=0,i.style.opacity=0,i.style.overflow="hidden",i.appendChild(o),document.body.appendChild(i),o.onload=function(){t.resolve({src:n,id:r,w:o.clientWidth,h:o.clientHeight,err:null}),rp(i)},o.onerror=function(e){t.reject({src:n,w:0,h:0,err:e}),rp(i)},t},getImgsSize:function(n,e){let t=this,r=tc(),o=xI(t.numParallel);t.imagesRes=[];let i=-1;return Fn(t.images,((l,a)=>{o(t.getImgSize,l,n).then((n=>{i++;let o=i;t.arrangeWhenFinish&&(o=a);let l={...n,name:(d=n.src,d.split("\\").pop().split("/").pop()),ind:o,evKey:e};var d;t.imagesRes[o]=l,r.emit("get",l)})).catch((n=>{console.log(n)}))})),r},refreshDebounce:function(){let n=this;n.dbc((()=>{n.refresh()}))},refresh:function(){let n=this,e=null,t=null;if(Xd(n.imageWidthSoft)&&n.imageWidthSoft>0)t=(n.widthPanel+n.space)/(n.imageWidthSoft+n.space),t=Math.floor(t),t=Math.max(t,1),e=(n.widthPanel-n.space*(t-1))/t;else if($i(n.colNum))t=Ei(n.colNum),e=(n.widthPanel-(t-1)*n.space)/t,e=Math.floor(e);else if(Xd(n.imageWidth)&&n.imageWidth>0){e=n.imageWidth;let r=n.widthPanel+n.space;r=Math.max(r,0);let o=e+n.space;o=Math.max(o,1),t=Math.floor(r/o)}else console.log("invalid colNum or imageWidth or imageWidthSoft",n.colNum,n.imageWidth,n.imageWidthSoft),t=4,e=300;n.uesImageWidth=e;let r={...n.imageStyle,"max-width":`${e}px`,"user-select":"none",cursor:"pointer",outline:"none"};function o(){n.imageCols=ii(GC(t),(()=>[])),n.imageLocs=ii(GC(t),(()=>0))}function i(e){if(!di(n.imageCols))return;let t=function(){let e=n.imageLocs[0],t=0;return Fn(n.imageLocs,((n,r)=>{e>n&&(e=n,t=r)})),t}();try{n.imageCols[t].push(e),n.imageLocs[t]+=e.h+n.space+53}catch(n){}}function l(){o(),Fn(n.imagesRes,(n=>{i(n)}))}n.useImageStyle=r,n.first?l():function(){let t=ui();o();let r=ws(),a=ud(n.images),d=n.getImgsSize(e,r),s=0;d.on("get",(e=>{e.evKey===r&&(i(e),s++,s>=a&&(n.first=!0,n.arrangeWhenFinish&&l(),t.resolve()))}))}()},showImg:function(n,e){let t=this;SI=!0,II(n.currentTarget,null,t.opt,t.pathItems).finally((()=>{SI=!1})),t.$emit("click",e)}}};const kI=wI;var TI=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeImages:n.changeImages,changeStyle:n.changeStyle},on:{domresize:n.resize}},[t("div",{staticStyle:{"margin-top":"-1px",height:"1px"}}),n._v(" "),n.loading?t("WIconLoading"):t("div",n._l(n.imageCols,(function(e,r){return t("div",{key:"c-"+r,style:"display:table-cell; vertical-align:top; margin:0; padding-left:"+(r>0?n.space:0)+"px;"},n._l(e,(function(e,r){return t("div",{key:"kimg-"+r,class:n.first?"":"fadeIn",style:"margin:"+(r>0?n.space:0)+"px 0 0 0; width:"+n.uesImageWidth+"px; user-select:none; outline:none;",attrs:{tabindex:"0"}},[t("div",{style:"display:flex;"},[t("img",{style:n.useImageStyle,attrs:{src:e.src},on:{keyup:function(t){return!t.type.indexOf("key")&&n._k(t.keyCode,"enter",13,t.key,"Enter")?null:function(t){n.showImg(t,e)}.apply(null,arguments)},click:function(t){n.showImg(t,e)}}})]),n._v(" "),t("div",{staticStyle:{background:"rgba(0,0,0,0.65)",padding:"5px"}},[t("input",{staticClass:"inp",staticStyle:{"font-size":"0.8rem",color:"#fff"},attrs:{type:"text",_spellcheck:"false",readonly:""},domProps:{value:e.name}})]),n._v(" "),t("div",{staticStyle:{background:"rgba(200,200,200,0.5)",padding:"3px 5px"}},[t("input",{staticClass:"inp",staticStyle:{"font-size":"0.7rem",opacity:"0.75"},attrs:{type:"text",_spellcheck:"false",readonly:""},domProps:{value:e.src}})])])})),0)})),0)],1)};TI._withStripped=!0;const HI=md({render:TI,staticRenderFns:[]},(function(n){n&&n("data-v-2a29abe8_0",{source:"\n.inp[data-v-2a29abe8] {\r\n font: inherit;\r\n height: 1rem;\r\n line-height: 1rem;\r\n width: 100%;\r\n margin: 0;\r\n padding: 0;\r\n display: block;\r\n background: transparent;\r\n border-style: none;\n}\n.inp[data-v-2a29abe8]:focus {\r\n outline: none;\n}\n.fadeIn[data-v-2a29abe8] {\r\n animation: aniFadeIn-data-v-2a29abe8 0.3s;\n}\n@keyframes aniFadeIn-data-v-2a29abe8\r\n{\nfrom {opacity: 0;}\nto {opacity: 1}\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WImageCascadingDyn.vue"],names:[],mappings:";AAolBA;IACA,aAAA;IACA,YAAA;IACA,iBAAA;IACA,WAAA;IACA,SAAA;IACA,UAAA;IACA,cAAA;IACA,uBAAA;IACA,kBAAA;AACA;AACA;IACA,aAAA;AACA;AACA;IACA,yCAAA;AACA;AACA;;AAEA,MAAA,UAAA,CAAA;AACA,IAAA,UAAA;AACA",file:"WImageCascadingDyn.vue",sourcesContent:["<template>\r\n <div\r\n :changeImages=\"changeImages\"\r\n :changeStyle=\"changeStyle\"\r\n v-domresize\r\n @domresize=\"resize\"\r\n >\r\n\r\n \x3c!-- 初始化無圖片時先撐開寬度 --\x3e\r\n <div style=\"margin-top:-1px; height:1px;\"></div>\r\n\r\n <WIconLoading v-if=\"loading\"></WIconLoading>\r\n\r\n <div v-else>\r\n\r\n <div\r\n :style=\"`display:table-cell; vertical-align:top; margin:0; padding-left:${kimgs>0?space:0}px;`\"\r\n :key=\"`c-${kimgs}`\"\r\n v-for=\"(imgs,kimgs) in imageCols\"\r\n >\r\n\r\n <div\r\n :class=\"`${first?'':'fadeIn'}`\"\r\n :style=\"`margin:${kimg>0?space:0}px 0 0 0; width:${uesImageWidth}px; user-select:none; outline:none;`\"\r\n tabindex=\"0\"\r\n :key=\"`kimg-${kimg}`\"\r\n v-for=\"(img,kimg) in imgs\"\r\n >\r\n\r\n <div :style=\"`display:flex;`\">\r\n <img\r\n :style=\"useImageStyle\"\r\n :src=\"img.src\"\r\n @keyup.enter=\"(e)=>{showImg(e,img)}\"\r\n @click=\"(e)=>{showImg(e,img)}\"\r\n >\r\n </div>\r\n\r\n <div style=\"background:rgba(0,0,0,0.65); padding:5px;\">\r\n <input\r\n type=\"text\"\r\n class=\"inp\"\r\n style=\"font-size:0.8rem; color:#fff;\"\r\n _spellcheck=\"false\"\r\n readonly\r\n :value=\"img.name\"\r\n >\r\n </div>\r\n\r\n <div style=\"background:rgba(200,200,200,0.5); padding:3px 5px;\">\r\n <input\r\n type=\"text\"\r\n class=\"inp\"\r\n style=\"font-size:0.7rem; opacity:0.75;\"\r\n _spellcheck=\"false\"\r\n readonly\r\n :value=\"img.src\"\r\n >\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport each from 'lodash/each'\r\nimport map from 'lodash/map'\r\nimport get from 'lodash/get'\r\nimport times from 'lodash/times'\r\nimport size from 'lodash/size'\r\nimport isNumber from 'lodash/isNumber'\r\nimport importResources from 'wsemi/src/importResources.mjs'\r\nimport domShowImagesDyn from 'wsemi/src/domShowImagesDyn.mjs'\r\nimport ispint from 'wsemi/src/ispint.mjs'\r\nimport cint from 'wsemi/src/cint.mjs'\r\nimport isarr from 'wsemi/src/isarr.mjs'\r\nimport genPm from 'wsemi/src/genPm.mjs'\r\nimport genID from 'wsemi/src/genID.mjs'\r\nimport pmQueue from 'wsemi/src/pmQueue.mjs'\r\nimport domRemove from 'wsemi/src/domRemove.mjs'\r\nimport evem from 'wsemi/src/evem.mjs'\r\nimport debounce from 'wsemi/src/debounce.mjs'\r\nimport domResize from '../js/domResize.mjs'\r\nimport WIconLoading from './WIconLoading.vue'\r\n\r\n\r\n//showViewer, 得要跨組件共用, 因彈出viewer會影響全部組件\r\nlet showViewer = false\r\n\r\n\r\nfunction getFileName(str) {\r\n return str.split('\\\\').pop().split('/').pop()\r\n}\r\n\r\n\r\n/**\r\n * @vue-prop {Array} [pathItems=['詳見原始碼']] 輸入viewerjs組件js與css檔案位置字串陣列,預設詳見原始碼處props->pathItems->default\r\n * @vue-prop {Array} [images=[]] 輸入圖片網址陣列,預設[]\r\n * @vue-prop {Number} [imageWidth=300] 輸入圖片寬度數字,單位為px,預設300\r\n * @vue-prop {Number} [imageWidthSoft=null] 輸入自動計算最小需滿足的圖片寬度數字,單位為px,預設null\r\n * @vue-prop {Number} [colNum=null] 輸入組件寬度圖片欄位(水平向有幾張圖片)數量數字,預設null\r\n * @vue-prop {Number} [space=15] 輸入圖片間間距長度數字,單位為px,預設15\r\n * @vue-prop {Object} [imageStyle={}] 輸入圖片style物件,預設{}\r\n * @vue-prop {Object} [arrangeWhenFinish=false] 輸入是否於圖片載入完畢時依照原本圖片順序排序布林值,預設false\r\n * @vue-prop {Number} [numParallel=5] 輸入同時載入圖片數量數字,預設5\r\n * @vue-prop {Object} [opt={}] 輸入viewerjs設定物件,預設使用optOne或optMuti,若img僅一個則使用optOne,反之使用optMuti\r\n * @vue-prop {Boolean} [multiple=false] 輸入\r\n */\r\nexport default {\r\n directives: {\r\n domresize: domResize(),\r\n },\r\n components: {\r\n WIconLoading,\r\n },\r\n props: {\r\n pathItems: {\r\n type: Array,\r\n default: () => [ //預設值詳見 wsemi/src/domShowImagesDyn.mjs, 因此處有預載, 故所使用viewerjs的版本得相同\r\n 'https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.css',\r\n 'https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.js',\r\n ],\r\n },\r\n images: {\r\n type: Array,\r\n default: () => [],\r\n },\r\n imageWidth: {\r\n type: Number,\r\n default: 300,\r\n },\r\n imageWidthSoft: {\r\n type: Number,\r\n default: null,\r\n },\r\n colNum: {\r\n type: Number,\r\n default: null,\r\n },\r\n space: {\r\n type: Number,\r\n default: 15,\r\n },\r\n imageStyle: {\r\n type: Object,\r\n default: () => {},\r\n },\r\n arrangeWhenFinish: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n numParallel: {\r\n type: Number,\r\n default: 5,\r\n },\r\n opt: {\r\n type: Object,\r\n default: () => {},\r\n },\r\n },\r\n data: function() {\r\n return {\r\n dbc: debounce(),\r\n\r\n loading: true,\r\n first: false,\r\n\r\n widthPanel: 0,\r\n heightPanel: 0,\r\n imageCols: [],\r\n imageLocs: [],\r\n useImageStyle: {},\r\n uesImageWidth: 0,\r\n\r\n imagesRes: [],\r\n\r\n }\r\n },\r\n mounted: function() {\r\n //console.log('mounted')\r\n\r\n let vo = this\r\n\r\n //importResources\r\n importResources(vo.pathItems)\r\n .then((res) => {\r\n //console.log('res', res)\r\n\r\n //loading\r\n vo.loading = false\r\n\r\n })\r\n\r\n },\r\n computed: {\r\n\r\n changeImages: function() {\r\n // console.log('computed changeImages')\r\n\r\n let vo = this\r\n\r\n let images = vo.images\r\n\r\n //refreshDebounce\r\n vo.refreshDebounce({ images })\r\n\r\n return ''\r\n },\r\n\r\n changeStyle: function() {\r\n // console.log('computed changeStyle')\r\n\r\n let vo = this\r\n\r\n //for trigger\r\n let widthPanel = vo.widthPanel\r\n let imageWidth = vo.imageWidth\r\n let imageStyle = vo.imageStyle\r\n let colNum = vo.colNum\r\n let space = vo.space\r\n\r\n //refreshDebounce\r\n vo.refreshDebounce({ widthPanel, imageWidth, imageStyle, colNum, space })\r\n\r\n return ''\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n resize: function(msg) {\r\n // console.log('methods resize', msg)\r\n\r\n let vo = this\r\n\r\n //widthPanel\r\n let widthPanel = get(vo, '$el.offsetWidth', 0)\r\n\r\n //check, 因開啟viewer會改變視窗尺寸, 進而觸發resize, 會導致觸發changeStyle並重算圖片, 故得使用showViewer判斷是否為開啟viewer狀態, 避免重算圖片\r\n if (showViewer) {\r\n return\r\n }\r\n\r\n //check\r\n if (vo.widthPanel === widthPanel) {\r\n return\r\n }\r\n\r\n //save\r\n vo.widthPanel = widthPanel\r\n\r\n },\r\n\r\n getImgSize: function(src, uesImageWidth) {\r\n //console.log('methods getImgSize', src, uesImageWidth)\r\n\r\n // let vo = this\r\n\r\n //pm\r\n let pm = genPm()\r\n\r\n //id\r\n let id = `g${genID()}`\r\n\r\n //img\r\n let img = document.createElement('img')\r\n img.src = src\r\n img.style.maxWidth = `${uesImageWidth}px`\r\n\r\n //div\r\n let div = document.createElement('div')\r\n div.id = `img-${id}`\r\n div.style.position = 'absolute'\r\n div.style.width = 0\r\n div.style.height = 0\r\n div.style.opacity = 0\r\n div.style.overflow = 'hidden'\r\n div.appendChild(img)\r\n\r\n //body\r\n document.body.appendChild(div)\r\n\r\n //onload\r\n img.onload = function() {\r\n // setTimeout(() => {\r\n // pm.resolve({\r\n // src,\r\n // id,\r\n // w: img.clientWidth,\r\n // h: img.clientHeight,\r\n // err: null,\r\n // })\r\n // domRemove(div)\r\n // }, random(10, 2500))\r\n pm.resolve({\r\n src,\r\n id,\r\n w: img.clientWidth,\r\n h: img.clientHeight,\r\n err: null,\r\n })\r\n domRemove(div)\r\n }\r\n\r\n //onerror\r\n img.onerror = function(err) {\r\n pm.reject({\r\n src,\r\n w: 0,\r\n h: 0,\r\n err,\r\n })\r\n domRemove(div)\r\n }\r\n\r\n return pm\r\n },\r\n\r\n getImgsSize: function(uesImageWidth, evKey) {\r\n //console.log('methods getImgsSize', uesImageWidth, evKey)\r\n\r\n let vo = this\r\n\r\n //ev\r\n let ev = evem()\r\n\r\n //pmQueue\r\n let pmq = pmQueue(vo.numParallel) //1次取得numParallel個圖片\r\n\r\n //getImgSize\r\n vo.imagesRes = []\r\n let j = -1\r\n each(vo.images, (src, k) => {\r\n pmq(vo.getImgSize, src, uesImageWidth)\r\n .then((r) => {\r\n j++\r\n\r\n //ind\r\n let ind = j\r\n if (vo.arrangeWhenFinish) { //需依照原始順序排序\r\n ind = k\r\n }\r\n\r\n //o\r\n let o = {\r\n ...r,\r\n name: getFileName(r.src),\r\n ind,\r\n evKey,\r\n }\r\n\r\n //save imagesRes\r\n vo.imagesRes[ind] = o\r\n\r\n //emit\r\n ev.emit('get', o)\r\n\r\n })\r\n .catch((err) => {\r\n console.log(err)\r\n })\r\n })\r\n\r\n return ev\r\n },\r\n\r\n refreshDebounce: function() {\r\n //console.log('methods refreshDebounce')\r\n\r\n let vo = this\r\n\r\n //dbc\r\n vo.dbc(() => {\r\n\r\n //refresh\r\n vo.refresh()\r\n\r\n })\r\n\r\n },\r\n\r\n refresh: function() {\r\n // console.log('methods refresh')\r\n\r\n let vo = this\r\n\r\n //uesImageWidth, colNum\r\n let uesImageWidth = null\r\n let colNum = null\r\n if (isNumber(vo.imageWidthSoft) && vo.imageWidthSoft > 0) {\r\n // console.log('優先使用imageWidthSoft計算colNum與imageWidth')\r\n\r\n //colNum\r\n colNum = (vo.widthPanel + vo.space) / (vo.imageWidthSoft + vo.space)\r\n colNum = Math.floor(colNum)\r\n colNum = Math.max(colNum, 1)\r\n // console.log('colNum', colNum)\r\n\r\n //uesImageWidth\r\n uesImageWidth = (vo.widthPanel - vo.space * (colNum - 1)) / colNum\r\n // console.log('uesImageWidth', uesImageWidth)\r\n\r\n }\r\n else if (ispint(vo.colNum)) {\r\n // console.log('次先使用colNum計算imageWidth')\r\n\r\n //colNum\r\n colNum = cint(vo.colNum)\r\n\r\n //uesImageWidth\r\n uesImageWidth = (vo.widthPanel - (colNum - 1) * vo.space) / colNum\r\n uesImageWidth = Math.floor(uesImageWidth)\r\n\r\n }\r\n else if (isNumber(vo.imageWidth) && vo.imageWidth > 0) {\r\n // console.log('最後使用imageWidth計算colNum')\r\n\r\n //uesImageWidth\r\n uesImageWidth = vo.imageWidth\r\n\r\n //colNum\r\n let wa = vo.widthPanel + vo.space\r\n wa = Math.max(wa, 0)\r\n let wis = uesImageWidth + vo.space\r\n wis = Math.max(wis, 1)\r\n colNum = Math.floor(wa / wis)\r\n\r\n }\r\n else {\r\n console.log('invalid colNum or imageWidth or imageWidthSoft', vo.colNum, vo.imageWidth, vo.imageWidthSoft)\r\n colNum = 4\r\n uesImageWidth = 300\r\n }\r\n vo.uesImageWidth = uesImageWidth\r\n\r\n //useImageStyle\r\n let useImageStyle = {\r\n ...vo.imageStyle,\r\n 'max-width': `${uesImageWidth}px`,\r\n 'user-select': 'none',\r\n 'cursor': 'pointer',\r\n 'outline': 'none',\r\n }\r\n vo.useImageStyle = useImageStyle\r\n\r\n function getMinHeightCol() {\r\n let hmin = vo.imageLocs[0]\r\n let ihmin = 0\r\n each(vo.imageLocs, (v, i) => {\r\n if (hmin > v) {\r\n hmin = v\r\n ihmin = i\r\n }\r\n })\r\n return ihmin\r\n }\r\n\r\n function resetImageColsAndLocs() {\r\n vo.imageCols = map(times(colNum), () => {\r\n return []\r\n })\r\n vo.imageLocs = map(times(colNum), () => {\r\n return 0\r\n })\r\n }\r\n\r\n function pushImage(img) {\r\n\r\n //check, 開發階段可能hot reload組件導致出現上一輪事件\r\n if (!isarr(vo.imageCols)) {\r\n return\r\n }\r\n\r\n //getMinHeightCol\r\n let i = getMinHeightCol()\r\n\r\n try {\r\n\r\n //push\r\n vo.imageCols[i].push(img)\r\n\r\n //update\r\n vo.imageLocs[i] += img.h + vo.space + (29 + 24) //29是圖名區高度, 24是位址區高度\r\n\r\n }\r\n catch (err) { }\r\n\r\n }\r\n\r\n function build() {\r\n\r\n //pm\r\n let pm = genPm()\r\n\r\n //resetImageColsAndLocs\r\n resetImageColsAndLocs()\r\n\r\n //evKey\r\n let evKey = genID()\r\n\r\n //num\r\n let num = size(vo.images)\r\n\r\n //getImgsSize\r\n let ev = vo.getImgsSize(uesImageWidth, evKey)\r\n\r\n //pushImage\r\n let n = 0\r\n ev.on('get', (img) => {\r\n // console.log('get', img)\r\n\r\n //check\r\n if (img.evKey !== evKey) {\r\n return\r\n }\r\n\r\n //pushImage\r\n pushImage(img)\r\n\r\n //check\r\n n++\r\n if (n >= num) {\r\n\r\n //first\r\n vo.first = true\r\n\r\n //arrange\r\n if (vo.arrangeWhenFinish) {\r\n arrange()\r\n }\r\n\r\n //resolve\r\n pm.resolve()\r\n\r\n }\r\n\r\n })\r\n\r\n return pm\r\n }\r\n\r\n function arrange() {\r\n\r\n //resetImageColsAndLocs\r\n resetImageColsAndLocs()\r\n\r\n //pushImage\r\n each(vo.imagesRes, (img) => {\r\n pushImage(img)\r\n })\r\n\r\n }\r\n\r\n if (!vo.first) {\r\n // console.log('build')\r\n build()\r\n }\r\n else {\r\n // console.log('arrange')\r\n arrange()\r\n }\r\n\r\n },\r\n\r\n showImg: function(e, img) {\r\n // console.log('methods showImg', e, img)\r\n\r\n let vo = this\r\n\r\n //showViewer\r\n showViewer = true\r\n\r\n //domShowImagesDyn\r\n domShowImagesDyn(e.currentTarget, null, vo.opt, vo.pathItems)\r\n .finally(() => {\r\n\r\n //showViewer\r\n showViewer = false\r\n\r\n })\r\n\r\n //emit\r\n vo.$emit('click', img)\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.inp {\r\n font: inherit;\r\n height: 1rem;\r\n line-height: 1rem;\r\n width: 100%;\r\n margin: 0;\r\n padding: 0;\r\n display: block;\r\n background: transparent;\r\n border-style: none;\r\n}\r\n.inp:focus {\r\n outline: none;\r\n}\r\n.fadeIn {\r\n animation: aniFadeIn 0.3s;\r\n}\r\n@keyframes aniFadeIn\r\n{\r\n from {opacity: 0;}\r\n to {opacity: 1}\r\n}\r\n</style>\r\n"]},media:void 0})}),kI,"data-v-2a29abe8",false,undefined,!1,vd,void 0,void 0);const WI={components:{WIconLoading:xd},props:{pathItems:{type:Array,default:()=>["https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.css","https://cdn.jsdelivr.net/npm/viewerjs@1.10.5/dist/viewer.min.js"]},images:{type:Array,default:()=>[]},imageStyle:{type:Object,default:()=>{}},opt:{type:Object,default:()=>{}},multiple:{type:Boolean,default:!1}},data:function(){return{loading:!0}},mounted:function(){let n=this;rl(n.pathItems).then((e=>{n.loading=!1,n.$nextTick((()=>{let e=wo(n,"$refs.wiv",[]);Fn(e,((n,e)=>{Ns(n,{duration:200,delay:100*e})}))}))}))},computed:{useImageStyle:function(){return bI({margin:"5px"},this.imageStyle)}},methods:{showImg:function(n){let e=this,t=null;e.multiple&&(t=e.$refs.wig),II(n.currentTarget,t,e.opt,e.pathItems).catch((n=>{console.log(n)}))}}};var ZI=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",[n.loading?t("WIconLoading"):t("div",{ref:"wig"},n._l(n.images,(function(e,r){return t("div",{key:r,ref:"wiv",refInFor:!0,staticStyle:{display:"inline-block",opacity:"0","user-select":"none",cursor:"pointer",outline:"none"},attrs:{tabindex:"0"},on:{keyup:function(e){return!e.type.indexOf("key")&&n._k(e.keyCode,"enter",13,e.key,"Enter")?null:n.showImg.apply(null,arguments)},click:n.showImg}},[t("img",{style:n.useImageStyle,attrs:{src:e}})])})),0)],1)};ZI._withStripped=!0;const XI=md({render:ZI,staticRenderFns:[]},(function(n){n&&n("data-v-2729d6f1_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WImageViewerDyn.vue"},media:void 0})}),WI,"data-v-2729d6f1",false,undefined,!1,vd,void 0,void 0);var BI={components:{},props:{multiCheck:{type:Boolean,default:!0},items:{type:Array,default:()=>[]},value:{type:[Array,String,Object]},keyText:{type:String,default:"text"},arrange:{type:String,default:"vertical"},textColor:{type:String,default:"#666"},textColorHover:{type:String,default:"#444"},textColorActive:{type:String,default:"#222"},textFontSize:{type:String,default:"0.85rem"},textDisabledOpacity:{type:Number,default:.7},marginStyle:{type:Object,default:()=>({top:0,bottom:0,left:0,right:0})},paddingStyle:{type:Object,default:()=>({top:0,bottom:0,left:0,right:0})},verticalAlign:{type:String,default:"center"},inputHeight:{type:[Number,String],default:null},editable:{type:Boolean,default:!0}},data:function(){return{get:wo,itemsTrans:[],dataActive:null}},mounted:function(){},computed:{changeItems:function(){let n=this;let e=rg(n.items),t=ii(e,(e=>{let t=function(e){let t;return t=n.multiCheck?Jb(n.value,e):ah(e,n.value),t}(e);return t})),r=[],o=[];return Fn(e,((n,e)=>{let i={data:n},l=`id-${e}`;i.id=l;let a=t[e];i.active=a,i.hover=!1,r.push(i),a&&o.push(l)})),n.multiCheck||(o=o[0]),n.itemsTrans=r,n.dataActive=o,""},useMarginStyle:function(){return`margin:${tp(this.marginStyle,{parse:!this.group})};`},usePadding:function(){let n=this;return`padding:${tp(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}})};`},useVerticalAlign:function(){let n=this,e="";return"center"===n.verticalAlign?e="align-items:center;":"top"===n.verticalAlign?e="align-items:flex-start;":"bottom"===n.verticalAlign&&(e="align-items:flex-end;"),e},useInputHeight:function(){let n=this,e="";return Yi(n.inputHeight)?e=`height:${n.inputHeight}px;`:Fi(n.inputHeight)&&(n.inputHeight=Ts(n.inputHeight,";",""),e=`height:${n.inputHeight};`),e},effTextColor:function(){return fd(this.textColor)},effTextColorHover:function(){return fd(this.textColorHover)},effTextColorActive:function(){return fd(this.textColorActive)}},methods:{getText:function(n){return wo(n,`data.${this.keyText}`)||wo(n,"data")},getTextColor:function(n,e){let t,r=this;return t=n.active?r.effTextColorActive:n.hover?r.effTextColorHover:r.effTextColor,r.editable||(t=n.active?r.effTextColorActive:r.effTextColor),t},mouseenter:function(n,e){let t=this;Fn(t.itemsTrans,((n,r)=>{t.itemsTrans[r].hover=r===e}))},mouseleave:function(n,e){let t=this;Fn(t.itemsTrans,((n,e)=>{t.itemsTrans[e].hover=!1}))},toggleState:function(n){let e=this;if(!1!==e.editable)if(e.multiCheck){let t=rg(e.value);if(n.active){let e=[];Fn(t,(t=>{ah(t,n.data)||e.push(t)})),t=e}else t.push(n.data);e.$nextTick((()=>{e.$emit("input",t),e.$emit("click",n.data,""+(n.active?"hide":"show"))}))}else e.$nextTick((()=>{e.$emit("input",n.data),e.$emit("click",n.data)}))}}};const AI=BI;var VI=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeItems:n.changeItems}},n._l(n.itemsTrans,(function(e,r){return t("div",{key:r,style:("vertical"===n.arrange?"":"display:inline-block;")+" "+n.useMarginStyle+" "+n.usePadding},[t("div",{style:"transition:all 0.3s; display:flex; "+n.useVerticalAlign+"; color:"+n.getTextColor(e,r)+";",on:{mouseenter:function(t){return n.mouseenter(e,r)},mouseleave:function(t){return n.mouseleave(e,r)}}},["checkbox"==(n.multiCheck?"checkbox":"radio")?t("input",{directives:[{name:"model",rawName:"v-model",value:n.dataActive,expression:"dataActive"}],style:n.useInputHeight+" padding:0px; cursor:pointer; opacity:"+(n.editable?1:n.textDisabledOpacity)+";",attrs:{disabled:!n.editable,type:"checkbox"},domProps:{value:e.id,checked:Array.isArray(n.dataActive)?n._i(n.dataActive,e.id)>-1:n.dataActive},on:{change:function(t){var r=n.dataActive,o=t.target,i=!!o.checked;if(Array.isArray(r)){var l=e.id,a=n._i(r,l);o.checked?a<0&&(n.dataActive=r.concat([l])):a>-1&&(n.dataActive=r.slice(0,a).concat(r.slice(a+1)))}else n.dataActive=i}}}):"radio"==(n.multiCheck?"checkbox":"radio")?t("input",{directives:[{name:"model",rawName:"v-model",value:n.dataActive,expression:"dataActive"}],style:n.useInputHeight+" padding:0px; cursor:pointer; opacity:"+(n.editable?1:n.textDisabledOpacity)+";",attrs:{disabled:!n.editable,type:"radio"},domProps:{value:e.id,checked:n._q(n.dataActive,e.id)},on:{change:function(t){n.dataActive=e.id}}}):t("input",{directives:[{name:"model",rawName:"v-model",value:n.dataActive,expression:"dataActive"}],style:n.useInputHeight+" padding:0px; cursor:pointer; opacity:"+(n.editable?1:n.textDisabledOpacity)+";",attrs:{disabled:!n.editable,type:n.multiCheck?"checkbox":"radio"},domProps:{value:e.id,value:n.dataActive},on:{input:function(e){e.target.composing||(n.dataActive=e.target.value)}}}),n._v(" "),t("div",{style:"opacity:"+(n.editable?1:n.textDisabledOpacity)+";",on:{click:function(t){return n.toggleState(e)}}},[n._t("default",(function(){return[t("div",{style:"margin:0px 0px 0px 5px; cursor:pointer;"},[n._v("\n "+n._s(n.getText(e))+"\n ")])]}),{item:e,kitem:r,isHover:e.hover,isActive:e.active})],2)])])})),0)};VI._withStripped=!0;const PI=md({render:VI,staticRenderFns:[]},(function(n){n&&n("data-v-0baa0ae3_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WInputCheckbox.vue"},media:void 0})}),AI,undefined,false,undefined,!1,vd,void 0,void 0);const KI={components:{WInputCheckbox:PI},props:{multiCheck:{type:Boolean,default:!0},items:{type:Array,default:()=>[]},value:{type:[Array,String,Object]},keyText:{type:String,default:"text"},arrange:{type:String,default:"vertical"},textColor:{type:String,default:"#666"},textColorHover:{type:String,default:"#444"},textColorActive:{type:String,default:"#222"},textFontSize:{type:String,default:"0.85rem"},textDisabledOpacity:{type:Number,default:.7},marginStyle:{type:Object,default:()=>({top:0,bottom:0,left:0,right:0})},paddingStyle:{type:Object,default:()=>({top:0,bottom:0,left:0,right:0})},verticalAlign:{type:String,default:"center"},inputHeight:{type:[Number,String],default:null},editable:{type:Boolean,default:!0}},data:function(){return{}},mounted:function(){},computed:{},methods:{}};var GI=function(){var n=this,e=n.$createElement;return(n._self._c||e)("WInputCheckbox",n._g(n._b({scopedSlots:n._u([{key:"default",fn:function(e){return[n._t("default",null,{item:e.item,kitem:e.kitem,isHover:e.isHover,isActive:e.isActive})]}}],null,!0)},"WInputCheckbox",Object.assign({},n.$props,{multiCheck:!1}),!1),n.$listeners))};GI._withStripped=!0;const FI=md({render:GI,staticRenderFns:[]},(function(n){n&&n("data-v-51ff4a4f_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WInputRadio.vue"},media:void 0})}),KI,"data-v-51ff4a4f",false,undefined,!1,vd,void 0,void 0);function YI(n,e){(null==e||e>n.length)&&(e=n.length);for(var t=0,r=new Array(e);t<e;t++)r[t]=n[t];return r}function RI(n){return function(n){if(Array.isArray(n))return YI(n)}(n)||function(n){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(n))return Array.from(n)}(n)||function(n,e){if(n){if("string"==typeof n)return YI(n,e);var t=Object.prototype.toString.call(n).slice(8,-1);return"Object"===t&&n.constructor&&(t=n.constructor.name),"Map"===t||"Set"===t?Array.from(n):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?YI(n,e):void 0}}(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function LI(n,e,t,r,o,i,l){try{var a=n[i](l),d=a.value}catch(n){return void t(n)}a.done?e(d):Promise.resolve(d).then(r,o)}function jI(n){return(jI="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n})(n)}var NI="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function zI(n){var e={exports:{}};return n(e,e.exports),e.exports}var JI,OI=zI((function(n){var e=function(n){var e,t=Object.prototype,r=t.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",l=o.asyncIterator||"@@asyncIterator",a=o.toStringTag||"@@toStringTag";function d(n,e,t){return Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}),n[e]}try{d({},"")}catch(n){d=function(n,e,t){return n[e]=t}}function s(n,e,t,r){var o=e&&e.prototype instanceof g?e:g,i=Object.create(o.prototype),l=new W(r||[]);return i._invoke=function(n,e,t){var r=u;return function(o,i){if(r===f)throw new Error("Generator is already running");if(r===h){if("throw"===o)throw i;return X()}for(t.method=o,t.arg=i;;){var l=t.delegate;if(l){var a=k(l,t);if(a){if(a===m)continue;return a}}if("next"===t.method)t.sent=t._sent=t.arg;else if("throw"===t.method){if(r===u)throw r=h,t.arg;t.dispatchException(t.arg)}else"return"===t.method&&t.abrupt("return",t.arg);r=f;var d=c(n,e,t);if("normal"===d.type){if(r=t.done?h:p,d.arg===m)continue;return{value:d.arg,done:t.done}}"throw"===d.type&&(r=h,t.method="throw",t.arg=d.arg)}}}(n,t,l),i}function c(n,e,t){try{return{type:"normal",arg:n.call(e,t)}}catch(n){return{type:"throw",arg:n}}}n.wrap=s;var u="suspendedStart",p="suspendedYield",f="executing",h="completed",m={};function g(){}function v(){}function y(){}var b={};b[i]=function(){return this};var C=Object.getPrototypeOf,I=C&&C(C(Z([])));I&&I!==t&&r.call(I,i)&&(b=I);var x=y.prototype=g.prototype=Object.create(b);function S(n){["next","throw","return"].forEach((function(e){d(n,e,(function(n){return this._invoke(e,n)}))}))}function w(n,e){function t(o,i,l,a){var d=c(n[o],n,i);if("throw"!==d.type){var s=d.arg,u=s.value;return u&&"object"===jI(u)&&r.call(u,"__await")?e.resolve(u.__await).then((function(n){t("next",n,l,a)}),(function(n){t("throw",n,l,a)})):e.resolve(u).then((function(n){s.value=n,l(s)}),(function(n){return t("throw",n,l,a)}))}a(d.arg)}var o;this._invoke=function(n,r){function i(){return new e((function(e,o){t(n,r,e,o)}))}return o=o?o.then(i,i):i()}}function k(n,t){var r=n.iterator[t.method];if(r===e){if(t.delegate=null,"throw"===t.method){if(n.iterator.return&&(t.method="return",t.arg=e,k(n,t),"throw"===t.method))return m;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return m}var o=c(r,n.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,m;var i=o.arg;return i?i.done?(t[n.resultName]=i.value,t.next=n.nextLoc,"return"!==t.method&&(t.method="next",t.arg=e),t.delegate=null,m):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,m)}function T(n){var e={tryLoc:n[0]};1 in n&&(e.catchLoc=n[1]),2 in n&&(e.finallyLoc=n[2],e.afterLoc=n[3]),this.tryEntries.push(e)}function H(n){var e=n.completion||{};e.type="normal",delete e.arg,n.completion=e}function W(n){this.tryEntries=[{tryLoc:"root"}],n.forEach(T,this),this.reset(!0)}function Z(n){if(n){var t=n[i];if(t)return t.call(n);if("function"==typeof n.next)return n;if(!isNaN(n.length)){var o=-1,l=function t(){for(;++o<n.length;)if(r.call(n,o))return t.value=n[o],t.done=!1,t;return t.value=e,t.done=!0,t};return l.next=l}}return{next:X}}function X(){return{value:e,done:!0}}return v.prototype=x.constructor=y,y.constructor=v,v.displayName=d(y,a,"GeneratorFunction"),n.isGeneratorFunction=function(n){var e="function"==typeof n&&n.constructor;return!!e&&(e===v||"GeneratorFunction"===(e.displayName||e.name))},n.mark=function(n){return Object.setPrototypeOf?Object.setPrototypeOf(n,y):(n.__proto__=y,d(n,a,"GeneratorFunction")),n.prototype=Object.create(x),n},n.awrap=function(n){return{__await:n}},S(w.prototype),w.prototype[l]=function(){return this},n.AsyncIterator=w,n.async=function(e,t,r,o,i){void 0===i&&(i=Promise);var l=new w(s(e,t,r,o),i);return n.isGeneratorFunction(t)?l:l.next().then((function(n){return n.done?n.value:l.next()}))},S(x),d(x,a,"Generator"),x[i]=function(){return this},x.toString=function(){return"[object Generator]"},n.keys=function(n){var e=[];for(var t in n)e.push(t);return e.reverse(),function t(){for(;e.length;){var r=e.pop();if(r in n)return t.value=r,t.done=!1,t}return t.done=!0,t}},n.values=Z,W.prototype={constructor:W,reset:function(n){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(H),!n)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=e)},stop:function(){this.done=!0;var n=this.tryEntries[0].completion;if("throw"===n.type)throw n.arg;return this.rval},dispatchException:function(n){if(this.done)throw n;var t=this;function o(r,o){return a.type="throw",a.arg=n,t.next=r,o&&(t.method="next",t.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var l=this.tryEntries[i],a=l.completion;if("root"===l.tryLoc)return o("end");if(l.tryLoc<=this.prev){var d=r.call(l,"catchLoc"),s=r.call(l,"finallyLoc");if(d&&s){if(this.prev<l.catchLoc)return o(l.catchLoc,!0);if(this.prev<l.finallyLoc)return o(l.finallyLoc)}else if(d){if(this.prev<l.catchLoc)return o(l.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<l.finallyLoc)return o(l.finallyLoc)}}}},abrupt:function(n,e){for(var t=this.tryEntries.length-1;t>=0;--t){var o=this.tryEntries[t];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===n||"continue"===n)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var l=i?i.completion:{};return l.type=n,l.arg=e,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(l)},complete:function(n,e){if("throw"===n.type)throw n.arg;return"break"===n.type||"continue"===n.type?this.next=n.arg:"return"===n.type?(this.rval=this.arg=n.arg,this.method="return",this.next="end"):"normal"===n.type&&e&&(this.next=e),m},finish:function(n){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.finallyLoc===n)return this.complete(t.completion,t.afterLoc),H(t),m}},catch:function(n){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.tryLoc===n){var r=t.completion;if("throw"===r.type){var o=r.arg;H(t)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(n,t,r){return this.delegate={iterator:Z(n),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=e),m}},n}(n.exports);try{regeneratorRuntime=e}catch(n){Function("r","regeneratorRuntime = r")(e)}})),DI=zI((function(n,e){!function(e,t){n.exports=function(e){var t,r=(e=e||{}).Base64,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=function(n){for(var e={},t=0,r=n.length;t<r;t++)e[n.charAt(t)]=t;return e}(o),l=String.fromCharCode,a=function(n){if(n.length<2)return(e=n.charCodeAt(0))<128?n:e<2048?l(192|e>>>6)+l(128|63&e):l(224|e>>>12&15)+l(128|e>>>6&63)+l(128|63&e);var e=65536+1024*(n.charCodeAt(0)-55296)+(n.charCodeAt(1)-56320);return l(240|e>>>18&7)+l(128|e>>>12&63)+l(128|e>>>6&63)+l(128|63&e)},d=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,s=function(n){return n.replace(d,a)},c=function(n){var e=[0,2,1][n.length%3],t=n.charCodeAt(0)<<16|(n.length>1?n.charCodeAt(1):0)<<8|(n.length>2?n.charCodeAt(2):0);return[o.charAt(t>>>18),o.charAt(t>>>12&63),e>=2?"=":o.charAt(t>>>6&63),e>=1?"=":o.charAt(63&t)].join("")},u=e.btoa&&"function"==typeof e.btoa?function(n){return e.btoa(n)}:function(n){if(n.match(/[^\x00-\xFF]/))throw new RangeError("The string contains invalid characters.");return n.replace(/[\s\S]{1,3}/g,c)},p=function(n){return u(s(String(n)))},f=function(n){return n.replace(/[+\/]/g,(function(n){return"+"==n?"-":"_"})).replace(/=/g,"")},h=function(n,e){return e?f(p(n)):p(n)};e.Uint8Array&&(t=function(n,e){for(var t="",r=0,i=n.length;r<i;r+=3){var l=n[r],a=n[r+1],d=n[r+2],s=l<<16|a<<8|d;t+=o.charAt(s>>>18)+o.charAt(s>>>12&63)+(void 0!==a?o.charAt(s>>>6&63):"=")+(void 0!==d?o.charAt(63&s):"=")}return e?f(t):t});var m,g=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,v=function(n){switch(n.length){case 4:var e=((7&n.charCodeAt(0))<<18|(63&n.charCodeAt(1))<<12|(63&n.charCodeAt(2))<<6|63&n.charCodeAt(3))-65536;return l(55296+(e>>>10))+l(56320+(1023&e));case 3:return l((15&n.charCodeAt(0))<<12|(63&n.charCodeAt(1))<<6|63&n.charCodeAt(2));default:return l((31&n.charCodeAt(0))<<6|63&n.charCodeAt(1))}},y=function(n){return n.replace(g,v)},b=function(n){var e=n.length,t=e%4,r=(e>0?i[n.charAt(0)]<<18:0)|(e>1?i[n.charAt(1)]<<12:0)|(e>2?i[n.charAt(2)]<<6:0)|(e>3?i[n.charAt(3)]:0),o=[l(r>>>16),l(r>>>8&255),l(255&r)];return o.length-=[0,0,2,1][t],o.join("")},C=e.atob&&"function"==typeof e.atob?function(n){return e.atob(n)}:function(n){return n.replace(/\S{1,4}/g,b)},I=function(n){return C(String(n).replace(/[^A-Za-z0-9\+\/]/g,""))},x=function(n){return String(n).replace(/[-_]/g,(function(n){return"-"==n?"+":"/"})).replace(/[^A-Za-z0-9\+\/]/g,"")},S=function(n){return function(n){return y(C(n))}(x(n))};e.Uint8Array&&(m=function(n){return Uint8Array.from(I(x(n)),(function(n){return n.charCodeAt(0)}))});if(e.Base64={VERSION:"2.6.4",atob:I,btoa:u,fromBase64:S,toBase64:h,utob:s,encode:h,encodeURI:function(n){return h(n,!0)},btou:y,decode:S,noConflict:function(){var n=e.Base64;return e.Base64=r,n},fromUint8Array:t,toUint8Array:m},"function"==typeof Object.defineProperty){var w=function(n){return{value:n,enumerable:!1,writable:!0,configurable:!0}};e.Base64.extendString=function(){Object.defineProperty(String.prototype,"fromBase64",w((function(){return S(this)}))),Object.defineProperty(String.prototype,"toBase64",w((function(n){return h(this,n)}))),Object.defineProperty(String.prototype,"toBase64URI",w((function(){return h(this,!0)})))}}return e.Meteor&&(Base64=e.Base64),n.exports&&(n.exports.Base64=e.Base64),{Base64:e.Base64}}(e)}("undefined"!=typeof self?self:"undefined"!=typeof window?window:NI)})),EI=zI((function(n){var e=Object.prototype.hasOwnProperty,t="~";function r(){}function o(n,e,t){this.fn=n,this.context=e,this.once=t||!1}function i(n,e,r,i,l){if("function"!=typeof r)throw new TypeError("The listener must be a function");var a=new o(r,i||n,l),d=t?t+e:e;return n._events[d]?n._events[d].fn?n._events[d]=[n._events[d],a]:n._events[d].push(a):(n._events[d]=a,n._eventsCount++),n}function l(n,e){0==--n._eventsCount?n._events=new r:delete n._events[e]}function a(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(t=!1)),a.prototype.eventNames=function(){var n,r,o=[];if(0===this._eventsCount)return o;for(r in n=this._events)e.call(n,r)&&o.push(t?r.slice(1):r);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(n)):o},a.prototype.listeners=function(n){var e=t?t+n:n,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,i=r.length,l=new Array(i);o<i;o++)l[o]=r[o].fn;return l},a.prototype.listenerCount=function(n){var e=t?t+n:n,r=this._events[e];return r?r.fn?1:r.length:0},a.prototype.emit=function(n,e,r,o,i,l){var a=t?t+n:n;if(!this._events[a])return!1;var d,s,c=this._events[a],u=arguments.length;if(c.fn){switch(c.once&&this.removeListener(n,c.fn,void 0,!0),u){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,r),!0;case 4:return c.fn.call(c.context,e,r,o),!0;case 5:return c.fn.call(c.context,e,r,o,i),!0;case 6:return c.fn.call(c.context,e,r,o,i,l),!0}for(s=1,d=new Array(u-1);s<u;s++)d[s-1]=arguments[s];c.fn.apply(c.context,d)}else{var p,f=c.length;for(s=0;s<f;s++)switch(c[s].once&&this.removeListener(n,c[s].fn,void 0,!0),u){case 1:c[s].fn.call(c[s].context);break;case 2:c[s].fn.call(c[s].context,e);break;case 3:c[s].fn.call(c[s].context,e,r);break;case 4:c[s].fn.call(c[s].context,e,r,o);break;default:if(!d)for(p=1,d=new Array(u-1);p<u;p++)d[p-1]=arguments[p];c[s].fn.apply(c[s].context,d)}}return!0},a.prototype.on=function(n,e,t){return i(this,n,e,t,!1)},a.prototype.once=function(n,e,t){return i(this,n,e,t,!0)},a.prototype.removeListener=function(n,e,r,o){var i=t?t+n:n;if(!this._events[i])return this;if(!e)return l(this,i),this;var a=this._events[i];if(a.fn)a.fn!==e||o&&!a.once||r&&a.context!==r||l(this,i);else{for(var d=0,s=[],c=a.length;d<c;d++)(a[d].fn!==e||o&&!a[d].once||r&&a[d].context!==r)&&s.push(a[d]);s.length?this._events[i]=1===s.length?s[0]:s:l(this,i)}return this},a.prototype.removeAllListeners=function(n){var e;return n?(e=t?t+n:n,this._events[e]&&l(this,e)):(this._events=new r,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=t,a.EventEmitter=a,n.exports=a}));!function(){if("browser"!=("undefined"!=typeof window&&void 0!==window.document?"browser":"nodejs"))return null;function n(){return new EI}var e=("CgoKdmFyIHQ9QXJyYXkuaXNBcnJheSxyPSJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsVGhpcz9nbG9iYWxUaGlzOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzoidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6e307ZnVuY3Rpb24gZSh0KXt2YXIgcj17ZXhwb3J0czp7fX07cmV0dXJuIHQocixyLmV4cG9ydHMpLHIuZXhwb3J0c312YXIgbj0ib2JqZWN0Ij09dHlwZW9mIHImJnImJnIuT2JqZWN0PT09T2JqZWN0JiZyLG89Im9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmJiZzZWxmLk9iamVjdD09PU9iamVjdCYmc2VsZix1PW58fG98fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCksYT11LlN5bWJvbCxpPU9iamVjdC5wcm90b3R5cGUsYz1pLmhhc093blByb3BlcnR5LGY9aS50b1N0cmluZyxsPWE/YS50b1N0cmluZ1RhZzp2b2lkIDA7dmFyIHY9ZnVuY3Rpb24odCl7dmFyIHI9Yy5jYWxsKHQsbCksZT10W2xdO3RyeXt0W2xdPXZvaWQgMDt2YXIgbj0hMH1jYXRjaCh0KXt9dmFyIG89Zi5jYWxsKHQpO3JldHVybiBuJiYocj90W2xdPWU6ZGVsZXRlIHRbbF0pLG99LHM9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzt2YXIgYj1mdW5jdGlvbih0KXtyZXR1cm4gcy5jYWxsKHQpfSxwPWE/YS50b1N0cmluZ1RhZzp2b2lkIDA7dmFyIHk9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwPT09dD8iW29iamVjdCBVbmRlZmluZWRdIjoiW29iamVjdCBOdWxsXSI6cCYmcCBpbiBPYmplY3QodCk/dih0KTpiKHQpfTt2YXIgaD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmIm9iamVjdCI9PXR5cGVvZiB0fTt2YXIgZD1mdW5jdGlvbih0KXtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIHR8fGgodCkmJiJbb2JqZWN0IFN5bWJvbF0iPT15KHQpfSxqPS9cLnxcWyg/OlteW1xdXSp8KFsiJ10pKD86KD8hXDEpW15cXF18XFwuKSo/XDEpXF0vLGc9L15cdyokLzt2YXIgXz1mdW5jdGlvbihyLGUpe2lmKHQocikpcmV0dXJuITE7dmFyIG49dHlwZW9mIHI7cmV0dXJuISgibnVtYmVyIiE9biYmInN5bWJvbCIhPW4mJiJib29sZWFuIiE9biYmbnVsbCE9ciYmIWQocikpfHwoZy50ZXN0KHIpfHwhai50ZXN0KHIpfHxudWxsIT1lJiZyIGluIE9iamVjdChlKSl9O3ZhciBPPWZ1bmN0aW9uKHQpe3ZhciByPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PXJ8fCJmdW5jdGlvbiI9PXIpfTt2YXIgdyxtPWZ1bmN0aW9uKHQpe2lmKCFPKHQpKXJldHVybiExO3ZhciByPXkodCk7cmV0dXJuIltvYmplY3QgRnVuY3Rpb25dIj09cnx8IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09cnx8IltvYmplY3QgQXN5bmNGdW5jdGlvbl0iPT1yfHwiW29iamVjdCBQcm94eV0iPT1yfSxBPXVbIl9fY29yZS1qc19zaGFyZWRfXyJdLFM9KHc9L1teLl0rJC8uZXhlYyhBJiZBLmtleXMmJkEua2V5cy5JRV9QUk9UT3x8IiIpKT8iU3ltYm9sKHNyYylfMS4iK3c6IiI7dmFyIFA9ZnVuY3Rpb24odCl7cmV0dXJuISFTJiZTIGluIHR9LHg9RnVuY3Rpb24ucHJvdG90eXBlLnRvU3RyaW5nO3ZhciB6PWZ1bmN0aW9uKHQpe2lmKG51bGwhPXQpe3RyeXtyZXR1cm4geC5jYWxsKHQpfWNhdGNoKHQpe310cnl7cmV0dXJuIHQrIiJ9Y2F0Y2godCl7fX1yZXR1cm4iIn0sRT0vXlxbb2JqZWN0IC4rP0NvbnN0cnVjdG9yXF0kLyxJPUZ1bmN0aW9uLnByb3RvdHlwZSwkPU9iamVjdC5wcm90b3R5cGUsTj1JLnRvU3RyaW5nLFQ9JC5oYXNPd25Qcm9wZXJ0eSxNPVJlZ0V4cCgiXiIrTi5jYWxsKFQpLnJlcGxhY2UoL1tcXF4kLiorPygpW1xde318XS9nLCJcXCQmIikucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXCgpfCBmb3IgLis/KD89XFxcXSkvZywiJDEuKj8iKSsiJCIpO3ZhciBrPWZ1bmN0aW9uKHQpe3JldHVybiEoIU8odCl8fFAodCkpJiYobSh0KT9NOkUpLnRlc3Qoeih0KSl9O3ZhciBGPWZ1bmN0aW9uKHQscil7cmV0dXJuIG51bGw9PXQ/dm9pZCAwOnRbcl19O3ZhciBDPWZ1bmN0aW9uKHQscil7dmFyIGU9Rih0LHIpO3JldHVybiBrKGUpP2U6dm9pZCAwfSxEPUMoT2JqZWN0LCJjcmVhdGUiKTt2YXIgVT1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189RD9EKG51bGwpOnt9LHRoaXMuc2l6ZT0wfTt2YXIgQj1mdW5jdGlvbih0KXt2YXIgcj10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09cj8xOjAscn0sUj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBMPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX19kYXRhX187aWYoRCl7dmFyIGU9clt0XTtyZXR1cm4iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI9PT1lP3ZvaWQgMDplfXJldHVybiBSLmNhbGwocix0KT9yW3RdOnZvaWQgMH0sVj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBLPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX19kYXRhX187cmV0dXJuIEQ/dm9pZCAwIT09clt0XTpWLmNhbGwocix0KX07dmFyIFc9ZnVuY3Rpb24odCxyKXt2YXIgZT10aGlzLl9fZGF0YV9fO3JldHVybiB0aGlzLnNpemUrPXRoaXMuaGFzKHQpPzA6MSxlW3RdPUQmJnZvaWQgMD09PXI/Il9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iOnIsdGhpc307ZnVuY3Rpb24gcSh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrcjxlOyl7dmFyIG49dFtyXTt0aGlzLnNldChuWzBdLG5bMV0pfX1xLnByb3RvdHlwZS5jbGVhcj1VLHEucHJvdG90eXBlLmRlbGV0ZT1CLHEucHJvdG90eXBlLmdldD1MLHEucHJvdG90eXBlLmhhcz1LLHEucHJvdG90eXBlLnNldD1XO3ZhciBHPXE7dmFyIEg9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPVtdLHRoaXMuc2l6ZT0wfTt2YXIgSj1mdW5jdGlvbih0LHIpe3JldHVybiB0PT09cnx8dCE9dCYmciE9cn07dmFyIFE9ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9dC5sZW5ndGg7ZS0tOylpZihKKHRbZV1bMF0scikpcmV0dXJuIGU7cmV0dXJuLTF9LFg9QXJyYXkucHJvdG90eXBlLnNwbGljZTt2YXIgWT1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9fZGF0YV9fLGU9UShyLHQpO3JldHVybiEoZTwwKSYmKGU9PXIubGVuZ3RoLTE/ci5wb3AoKTpYLmNhbGwocixlLDEpLC0tdGhpcy5zaXplLCEwKX07dmFyIFo9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fX2RhdGFfXyxlPVEocix0KTtyZXR1cm4gZTwwP3ZvaWQgMDpyW2VdWzFdfTt2YXIgdHQ9ZnVuY3Rpb24odCl7cmV0dXJuIFEodGhpcy5fX2RhdGFfXyx0KT4tMX07dmFyIHJ0PWZ1bmN0aW9uKHQscil7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPVEoZSx0KTtyZXR1cm4gbjwwPygrK3RoaXMuc2l6ZSxlLnB1c2goW3Qscl0pKTplW25dWzFdPXIsdGhpc307ZnVuY3Rpb24gZXQodCl7dmFyIHI9LTEsZT1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK3I8ZTspe3ZhciBuPXRbcl07dGhpcy5zZXQoblswXSxuWzFdKX19ZXQucHJvdG90eXBlLmNsZWFyPUgsZXQucHJvdG90eXBlLmRlbGV0ZT1ZLGV0LnByb3RvdHlwZS5nZXQ9WixldC5wcm90b3R5cGUuaGFzPXR0LGV0LnByb3RvdHlwZS5zZXQ9cnQ7dmFyIG50PWV0LG90PUModSwiTWFwIik7dmFyIHV0PWZ1bmN0aW9uKCl7dGhpcy5zaXplPTAsdGhpcy5fX2RhdGFfXz17aGFzaDpuZXcgRyxtYXA6bmV3KG90fHxudCksc3RyaW5nOm5ldyBHfX07dmFyIGF0PWZ1bmN0aW9uKHQpe3ZhciByPXR5cGVvZiB0O3JldHVybiJzdHJpbmciPT1yfHwibnVtYmVyIj09cnx8InN5bWJvbCI9PXJ8fCJib29sZWFuIj09cj8iX19wcm90b19fIiE9PXQ6bnVsbD09PXR9O3ZhciBpdD1mdW5jdGlvbih0LHIpe3ZhciBlPXQuX19kYXRhX187cmV0dXJuIGF0KHIpP2VbInN0cmluZyI9PXR5cGVvZiByPyJzdHJpbmciOiJoYXNoIl06ZS5tYXB9O3ZhciBjdD1mdW5jdGlvbih0KXt2YXIgcj1pdCh0aGlzLHQpLmRlbGV0ZSh0KTtyZXR1cm4gdGhpcy5zaXplLT1yPzE6MCxyfTt2YXIgZnQ9ZnVuY3Rpb24odCl7cmV0dXJuIGl0KHRoaXMsdCkuZ2V0KHQpfTt2YXIgbHQ9ZnVuY3Rpb24odCl7cmV0dXJuIGl0KHRoaXMsdCkuaGFzKHQpfTt2YXIgdnQ9ZnVuY3Rpb24odCxyKXt2YXIgZT1pdCh0aGlzLHQpLG49ZS5zaXplO3JldHVybiBlLnNldCh0LHIpLHRoaXMuc2l6ZSs9ZS5zaXplPT1uPzA6MSx0aGlzfTtmdW5jdGlvbiBzdCh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrcjxlOyl7dmFyIG49dFtyXTt0aGlzLnNldChuWzBdLG5bMV0pfX1zdC5wcm90b3R5cGUuY2xlYXI9dXQsc3QucHJvdG90eXBlLmRlbGV0ZT1jdCxzdC5wcm90b3R5cGUuZ2V0PWZ0LHN0LnByb3RvdHlwZS5oYXM9bHQsc3QucHJvdG90eXBlLnNldD12dDt2YXIgYnQ9c3Q7ZnVuY3Rpb24gcHQodCxyKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdHx8bnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmdW5jdGlvbiIpO3ZhciBlPWZ1bmN0aW9uKCl7dmFyIG49YXJndW1lbnRzLG89cj9yLmFwcGx5KHRoaXMsbik6blswXSx1PWUuY2FjaGU7aWYodS5oYXMobykpcmV0dXJuIHUuZ2V0KG8pO3ZhciBhPXQuYXBwbHkodGhpcyxuKTtyZXR1cm4gZS5jYWNoZT11LnNldChvLGEpfHx1LGF9O3JldHVybiBlLmNhY2hlPW5ldyhwdC5DYWNoZXx8YnQpLGV9cHQuQ2FjaGU9YnQ7dmFyIHl0PXB0O3ZhciBodD0vW14uW1xdXSt8XFsoPzooLT9cZCsoPzpcLlxkKyk/KXwoWyInXSkoKD86KD8hXDIpW15cXF18XFwuKSo/KVwyKVxdfCg/PSg/OlwufFxbXF0pKD86XC58XFtcXXwkKSkvZyxkdD0vXFwoXFwpPy9nLGp0PWZ1bmN0aW9uKHQpe3ZhciByPXl0KHQsKGZ1bmN0aW9uKHQpe3JldHVybiA1MDA9PT1lLnNpemUmJmUuY2xlYXIoKSx0fSkpLGU9ci5jYWNoZTtyZXR1cm4gcn0oKGZ1bmN0aW9uKHQpe3ZhciByPVtdO3JldHVybiA0Nj09PXQuY2hhckNvZGVBdCgwKSYmci5wdXNoKCIiKSx0LnJlcGxhY2UoaHQsKGZ1bmN0aW9uKHQsZSxuLG8pe3IucHVzaChuP28ucmVwbGFjZShkdCwiJDEiKTplfHx0KX0pKSxyfSkpO3ZhciBndD1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aCxvPUFycmF5KG4pOysrZTxuOylvW2VdPXIodFtlXSxlLHQpO3JldHVybiBvfSxfdD1hP2EucHJvdG90eXBlOnZvaWQgMCxPdD1fdD9fdC50b1N0cmluZzp2b2lkIDA7dmFyIHd0PWZ1bmN0aW9uIHIoZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO2lmKHQoZSkpcmV0dXJuIGd0KGUscikrIiI7aWYoZChlKSlyZXR1cm4gT3Q/T3QuY2FsbChlKToiIjt2YXIgbj1lKyIiO3JldHVybiIwIj09biYmMS9lPT0tSW5maW5pdHk/Ii0wIjpufTt2YXIgbXQ9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/IiI6d3QodCl9O3ZhciBBdD1mdW5jdGlvbihyLGUpe3JldHVybiB0KHIpP3I6XyhyLGUpP1tyXTpqdChtdChyKSl9O3ZhciBTdD1mdW5jdGlvbih0KXtpZigic3RyaW5nIj09dHlwZW9mIHR8fGQodCkpcmV0dXJuIHQ7dmFyIHI9dCsiIjtyZXR1cm4iMCI9PXImJjEvdD09LUluZmluaXR5PyItMCI6cn07dmFyIFB0PWZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPTAsbj0ocj1BdChyLHQpKS5sZW5ndGg7bnVsbCE9dCYmZTxuOyl0PXRbU3QocltlKytdKV07cmV0dXJuIGUmJmU9PW4/dDp2b2lkIDB9O3ZhciB4dD1mdW5jdGlvbih0LHIsZSl7dmFyIG49bnVsbD09dD92b2lkIDA6UHQodCxyKTtyZXR1cm4gdm9pZCAwPT09bj9lOm59O2Z1bmN0aW9uIHp0KHQpe3JldHVybiJbb2JqZWN0IFN0cmluZ10iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uIEV0KHQpe3JldHVybiEoIXp0KHQpfHwiIj09PXQpfWZ1bmN0aW9uIEl0KHQpe3JldHVybiJbb2JqZWN0IE9iamVjdF0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uICR0KHQpe2lmKEl0KHQpKXtmb3IobGV0IHIgaW4gdClyZXR1cm4hMDtyZXR1cm4hMX1yZXR1cm4hMX1mdW5jdGlvbiBOdCh0KXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uIFR0KHQpe3JldHVybiEhZnVuY3Rpb24odCl7cmV0dXJuIltvYmplY3QgVW5kZWZpbmVkXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodCl9KHQpfHwoISFmdW5jdGlvbih0KXtyZXR1cm4iW29iamVjdCBOdWxsXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodCl9KHQpfHwoISFmdW5jdGlvbih0KXtpZihJdCh0KSl7Zm9yKGxldCByIGluIHQpcmV0dXJuITE7cmV0dXJuITB9cmV0dXJuITF9KHQpfHwoISFmdW5jdGlvbih0KXtyZXR1cm4hKCF6dCh0KXx8IiIhPT10KX0odCl8fCEhZnVuY3Rpb24odCl7cmV0dXJuISFOdCh0KSYmMD09PXQubGVuZ3RofSh0KSkpKX1mdW5jdGlvbiBNdCh0KXtyZXR1cm4hIU50KHQpJiYoMCE9PXQubGVuZ3RoJiYoMSE9PXQubGVuZ3RofHwhVHQodFswXSkpKX12YXIga3Q9ZnVuY3Rpb24odCl7cmV0dXJuITA9PT10fHwhMT09PXR8fGgodCkmJiJbb2JqZWN0IEJvb2xlYW5dIj09eSh0KX07ZnVuY3Rpb24gRnQodCl7cmV0dXJuIGt0KHQpfXZhciBDdD1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189bmV3IG50LHRoaXMuc2l6ZT0wfTt2YXIgRHQ9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fX2RhdGFfXyxlPXIuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemU9ci5zaXplLGV9O3ZhciBVdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5nZXQodCl9O3ZhciBCdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5oYXModCl9O3ZhciBSdD1mdW5jdGlvbih0LHIpe3ZhciBlPXRoaXMuX19kYXRhX187aWYoZSBpbnN0YW5jZW9mIG50KXt2YXIgbj1lLl9fZGF0YV9fO2lmKCFvdHx8bi5sZW5ndGg8MTk5KXJldHVybiBuLnB1c2goW3Qscl0pLHRoaXMuc2l6ZT0rK2Uuc2l6ZSx0aGlzO2U9dGhpcy5fX2RhdGFfXz1uZXcgYnQobil9cmV0dXJuIGUuc2V0KHQsciksdGhpcy5zaXplPWUuc2l6ZSx0aGlzfTtmdW5jdGlvbiBMdCh0KXt2YXIgcj10aGlzLl9fZGF0YV9fPW5ldyBudCh0KTt0aGlzLnNpemU9ci5zaXplfUx0LnByb3RvdHlwZS5jbGVhcj1DdCxMdC5wcm90b3R5cGUuZGVsZXRlPUR0LEx0LnByb3RvdHlwZS5nZXQ9VXQsTHQucHJvdG90eXBlLmhhcz1CdCxMdC5wcm90b3R5cGUuc2V0PVJ0O3ZhciBWdD1MdDt2YXIgS3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uc2V0KHQsIl9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iKSx0aGlzfTt2YXIgV3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uaGFzKHQpfTtmdW5jdGlvbiBxdCh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5fX2RhdGFfXz1uZXcgYnQ7KytyPGU7KXRoaXMuYWRkKHRbcl0pfXF0LnByb3RvdHlwZS5hZGQ9cXQucHJvdG90eXBlLnB1c2g9S3QscXQucHJvdG90eXBlLmhhcz1XdDt2YXIgR3Q9cXQ7dmFyIEh0PWZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoOysrZTxuOylpZihyKHRbZV0sZSx0KSlyZXR1cm4hMDtyZXR1cm4hMX07dmFyIEp0PWZ1bmN0aW9uKHQscil7cmV0dXJuIHQuaGFzKHIpfTt2YXIgUXQ9ZnVuY3Rpb24odCxyLGUsbixvLHUpe3ZhciBhPTEmZSxpPXQubGVuZ3RoLGM9ci5sZW5ndGg7aWYoaSE9YyYmIShhJiZjPmkpKXJldHVybiExO3ZhciBmPXUuZ2V0KHQpLGw9dS5nZXQocik7aWYoZiYmbClyZXR1cm4gZj09ciYmbD09dDt2YXIgdj0tMSxzPSEwLGI9MiZlP25ldyBHdDp2b2lkIDA7Zm9yKHUuc2V0KHQsciksdS5zZXQocix0KTsrK3Y8aTspe3ZhciBwPXRbdl0seT1yW3ZdO2lmKG4pdmFyIGg9YT9uKHkscCx2LHIsdCx1KTpuKHAseSx2LHQscix1KTtpZih2b2lkIDAhPT1oKXtpZihoKWNvbnRpbnVlO3M9ITE7YnJlYWt9aWYoYil7aWYoIUh0KHIsKGZ1bmN0aW9uKHQscil7aWYoIUp0KGIscikmJihwPT09dHx8byhwLHQsZSxuLHUpKSlyZXR1cm4gYi5wdXNoKHIpfSkpKXtzPSExO2JyZWFrfX1lbHNlIGlmKHAhPT15JiYhbyhwLHksZSxuLHUpKXtzPSExO2JyZWFrfX1yZXR1cm4gdS5kZWxldGUodCksdS5kZWxldGUociksc30sWHQ9dS5VaW50OEFycmF5O3ZhciBZdD1mdW5jdGlvbih0KXt2YXIgcj0tMSxlPUFycmF5KHQuc2l6ZSk7cmV0dXJuIHQuZm9yRWFjaCgoZnVuY3Rpb24odCxuKXtlWysrcl09W24sdF19KSksZX07dmFyIFp0PWZ1bmN0aW9uKHQpe3ZhciByPS0xLGU9QXJyYXkodC5zaXplKTtyZXR1cm4gdC5mb3JFYWNoKChmdW5jdGlvbih0KXtlWysrcl09dH0pKSxlfSx0cj1hP2EucHJvdG90eXBlOnZvaWQgMCxycj10cj90ci52YWx1ZU9mOnZvaWQgMDt2YXIgZXI9ZnVuY3Rpb24odCxyLGUsbixvLHUsYSl7c3dpdGNoKGUpe2Nhc2UiW29iamVjdCBEYXRhVmlld10iOmlmKHQuYnl0ZUxlbmd0aCE9ci5ieXRlTGVuZ3RofHx0LmJ5dGVPZmZzZXQhPXIuYnl0ZU9mZnNldClyZXR1cm4hMTt0PXQuYnVmZmVyLHI9ci5idWZmZXI7Y2FzZSJbb2JqZWN0IEFycmF5QnVmZmVyXSI6cmV0dXJuISh0LmJ5dGVMZW5ndGghPXIuYnl0ZUxlbmd0aHx8IXUobmV3IFh0KHQpLG5ldyBYdChyKSkpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpjYXNlIltvYmplY3QgTnVtYmVyXSI6cmV0dXJuIEooK3QsK3IpO2Nhc2UiW29iamVjdCBFcnJvcl0iOnJldHVybiB0Lm5hbWU9PXIubmFtZSYmdC5tZXNzYWdlPT1yLm1lc3NhZ2U7Y2FzZSJbb2JqZWN0IFJlZ0V4cF0iOmNhc2UiW29iamVjdCBTdHJpbmddIjpyZXR1cm4gdD09cisiIjtjYXNlIltvYmplY3QgTWFwXSI6dmFyIGk9WXQ7Y2FzZSJbb2JqZWN0IFNldF0iOnZhciBjPTEmbjtpZihpfHwoaT1adCksdC5zaXplIT1yLnNpemUmJiFjKXJldHVybiExO3ZhciBmPWEuZ2V0KHQpO2lmKGYpcmV0dXJuIGY9PXI7bnw9MixhLnNldCh0LHIpO3ZhciBsPVF0KGkodCksaShyKSxuLG8sdSxhKTtyZXR1cm4gYS5kZWxldGUodCksbDtjYXNlIltvYmplY3QgU3ltYm9sXSI6aWYocnIpcmV0dXJuIHJyLmNhbGwodCk9PXJyLmNhbGwocil9cmV0dXJuITF9O3ZhciBucj1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPXIubGVuZ3RoLG89dC5sZW5ndGg7KytlPG47KXRbbytlXT1yW2VdO3JldHVybiB0fTt2YXIgb3I9ZnVuY3Rpb24ocixlLG4pe3ZhciBvPWUocik7cmV0dXJuIHQocik/bzpucihvLG4ocikpfTt2YXIgdXI9ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGgsbz0wLHU9W107KytlPG47KXt2YXIgYT10W2VdO3IoYSxlLHQpJiYodVtvKytdPWEpfXJldHVybiB1fTt2YXIgYXI9ZnVuY3Rpb24oKXtyZXR1cm5bXX0saXI9T2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZSxjcj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzLGZyPWNyP2Z1bmN0aW9uKHQpe3JldHVybiBudWxsPT10P1tdOih0PU9iamVjdCh0KSx1cihjcih0KSwoZnVuY3Rpb24ocil7cmV0dXJuIGlyLmNhbGwodCxyKX0pKSl9OmFyO3ZhciBscj1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPUFycmF5KHQpOysrZTx0OyluW2VdPXIoZSk7cmV0dXJuIG59O3ZhciB2cj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgQXJndW1lbnRzXSI9PXkodCl9LHNyPU9iamVjdC5wcm90b3R5cGUsYnI9c3IuaGFzT3duUHJvcGVydHkscHI9c3IucHJvcGVydHlJc0VudW1lcmFibGUseXI9dnIoZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzfSgpKT92cjpmdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmYnIuY2FsbCh0LCJjYWxsZWUiKSYmIXByLmNhbGwodCwiY2FsbGVlIil9O3ZhciBocj1mdW5jdGlvbigpe3JldHVybiExfSxkcj1lKChmdW5jdGlvbih0LHIpe3ZhciBlPXImJiFyLm5vZGVUeXBlJiZyLG49ZSYmdCYmIXQubm9kZVR5cGUmJnQsbz1uJiZuLmV4cG9ydHM9PT1lP3UuQnVmZmVyOnZvaWQgMCxhPShvP28uaXNCdWZmZXI6dm9pZCAwKXx8aHI7dC5leHBvcnRzPWF9KSksanI9L14oPzowfFsxLTldXGQqKSQvO3ZhciBncj1mdW5jdGlvbih0LHIpe3ZhciBlPXR5cGVvZiB0O3JldHVybiEhKHI9bnVsbD09cj85MDA3MTk5MjU0NzQwOTkxOnIpJiYoIm51bWJlciI9PWV8fCJzeW1ib2wiIT1lJiZqci50ZXN0KHQpKSYmdD4tMSYmdCUxPT0wJiZ0PHJ9O3ZhciBfcj1mdW5jdGlvbih0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQmJnQ+LTEmJnQlMT09MCYmdDw9OTAwNzE5OTI1NDc0MDk5MX0sT3I9e307T3JbIltvYmplY3QgRmxvYXQzMkFycmF5XSJdPU9yWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1PclsiW29iamVjdCBJbnQ4QXJyYXldIl09T3JbIltvYmplY3QgSW50MTZBcnJheV0iXT1PclsiW29iamVjdCBJbnQzMkFycmF5XSJdPU9yWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09T3JbIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIl09T3JbIltvYmplY3QgVWludDE2QXJyYXldIl09T3JbIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsT3JbIltvYmplY3QgQXJndW1lbnRzXSJdPU9yWyJbb2JqZWN0IEFycmF5XSJdPU9yWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPU9yWyJbb2JqZWN0IEJvb2xlYW5dIl09T3JbIltvYmplY3QgRGF0YVZpZXddIl09T3JbIltvYmplY3QgRGF0ZV0iXT1PclsiW29iamVjdCBFcnJvcl0iXT1PclsiW29iamVjdCBGdW5jdGlvbl0iXT1PclsiW29iamVjdCBNYXBdIl09T3JbIltvYmplY3QgTnVtYmVyXSJdPU9yWyJbb2JqZWN0IE9iamVjdF0iXT1PclsiW29iamVjdCBSZWdFeHBdIl09T3JbIltvYmplY3QgU2V0XSJdPU9yWyJbb2JqZWN0IFN0cmluZ10iXT1PclsiW29iamVjdCBXZWFrTWFwXSJdPSExO3ZhciB3cj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmX3IodC5sZW5ndGgpJiYhIU9yW3kodCldfTt2YXIgbXI9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiB0KHIpfX0sQXI9ZSgoZnVuY3Rpb24odCxyKXt2YXIgZT1yJiYhci5ub2RlVHlwZSYmcixvPWUmJnQmJiF0Lm5vZGVUeXBlJiZ0LHU9byYmby5leHBvcnRzPT09ZSYmbi5wcm9jZXNzLGE9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9byYmby5yZXF1aXJlJiZvLnJlcXVpcmUoInV0aWwiKS50eXBlcztyZXR1cm4gdHx8dSYmdS5iaW5kaW5nJiZ1LmJpbmRpbmcoInV0aWwiKX1jYXRjaCh0KXt9fSgpO3QuZXhwb3J0cz1hfSkpLFNyPUFyJiZBci5pc1R5cGVkQXJyYXksUHI9U3I/bXIoU3IpOndyLHhyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIHpyPWZ1bmN0aW9uKHIsZSl7dmFyIG49dChyKSxvPSFuJiZ5cihyKSx1PSFuJiYhbyYmZHIociksYT0hbiYmIW8mJiF1JiZQcihyKSxpPW58fG98fHV8fGEsYz1pP2xyKHIubGVuZ3RoLFN0cmluZyk6W10sZj1jLmxlbmd0aDtmb3IodmFyIGwgaW4gcikhZSYmIXhyLmNhbGwocixsKXx8aSYmKCJsZW5ndGgiPT1sfHx1JiYoIm9mZnNldCI9PWx8fCJwYXJlbnQiPT1sKXx8YSYmKCJidWZmZXIiPT1sfHwiYnl0ZUxlbmd0aCI9PWx8fCJieXRlT2Zmc2V0Ij09bCl8fGdyKGwsZikpfHxjLnB1c2gobCk7cmV0dXJuIGN9LEVyPU9iamVjdC5wcm90b3R5cGU7dmFyIElyPWZ1bmN0aW9uKHQpe3ZhciByPXQmJnQuY29uc3RydWN0b3I7cmV0dXJuIHQ9PT0oImZ1bmN0aW9uIj09dHlwZW9mIHImJnIucHJvdG90eXBlfHxFcil9O3ZhciAkcj1mdW5jdGlvbih0LHIpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdChyKGUpKX19LE5yPSRyKE9iamVjdC5rZXlzLE9iamVjdCksVHI9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt2YXIgTXI9ZnVuY3Rpb24odCl7aWYoIUlyKHQpKXJldHVybiBOcih0KTt2YXIgcj1bXTtmb3IodmFyIGUgaW4gT2JqZWN0KHQpKVRyLmNhbGwodCxlKSYmImNvbnN0cnVjdG9yIiE9ZSYmci5wdXNoKGUpO3JldHVybiByfTt2YXIga3I9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJl9yKHQubGVuZ3RoKSYmIW0odCl9O3ZhciBGcj1mdW5jdGlvbih0KXtyZXR1cm4ga3IodCk/enIodCk6TXIodCl9O3ZhciBDcj1mdW5jdGlvbih0KXtyZXR1cm4gb3IodCxGcixmcil9LERyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIFVyPWZ1bmN0aW9uKHQscixlLG4sbyx1KXt2YXIgYT0xJmUsaT1Dcih0KSxjPWkubGVuZ3RoO2lmKGMhPUNyKHIpLmxlbmd0aCYmIWEpcmV0dXJuITE7Zm9yKHZhciBmPWM7Zi0tOyl7dmFyIGw9aVtmXTtpZighKGE/bCBpbiByOkRyLmNhbGwocixsKSkpcmV0dXJuITF9dmFyIHY9dS5nZXQodCkscz11LmdldChyKTtpZih2JiZzKXJldHVybiB2PT1yJiZzPT10O3ZhciBiPSEwO3Uuc2V0KHQsciksdS5zZXQocix0KTtmb3IodmFyIHA9YTsrK2Y8Yzspe3ZhciB5PXRbbD1pW2ZdXSxoPXJbbF07aWYobil2YXIgZD1hP24oaCx5LGwscix0LHUpOm4oeSxoLGwsdCxyLHUpO2lmKCEodm9pZCAwPT09ZD95PT09aHx8byh5LGgsZSxuLHUpOmQpKXtiPSExO2JyZWFrfXB8fChwPSJjb25zdHJ1Y3RvciI9PWwpfWlmKGImJiFwKXt2YXIgaj10LmNvbnN0cnVjdG9yLGc9ci5jb25zdHJ1Y3RvcjtqPT1nfHwhKCJjb25zdHJ1Y3RvciJpbiB0KXx8ISgiY29uc3RydWN0b3IiaW4gcil8fCJmdW5jdGlvbiI9PXR5cGVvZiBqJiZqIGluc3RhbmNlb2YgaiYmImZ1bmN0aW9uIj09dHlwZW9mIGcmJmcgaW5zdGFuY2VvZiBnfHwoYj0hMSl9cmV0dXJuIHUuZGVsZXRlKHQpLHUuZGVsZXRlKHIpLGJ9LEJyPUModSwiRGF0YVZpZXciKSxScj1DKHUsIlByb21pc2UiKSxMcj1DKHUsIlNldCIpLFZyPUModSwiV2Vha01hcCIpLEtyPXooQnIpLFdyPXoob3QpLHFyPXooUnIpLEdyPXooTHIpLEhyPXooVnIpLEpyPXk7KEJyJiYiW29iamVjdCBEYXRhVmlld10iIT1KcihuZXcgQnIobmV3IEFycmF5QnVmZmVyKDEpKSl8fG90JiYiW29iamVjdCBNYXBdIiE9SnIobmV3IG90KXx8UnImJiJbb2JqZWN0IFByb21pc2VdIiE9SnIoUnIucmVzb2x2ZSgpKXx8THImJiJbb2JqZWN0IFNldF0iIT1KcihuZXcgTHIpfHxWciYmIltvYmplY3QgV2Vha01hcF0iIT1KcihuZXcgVnIpKSYmKEpyPWZ1bmN0aW9uKHQpe3ZhciByPXkodCksZT0iW29iamVjdCBPYmplY3RdIj09cj90LmNvbnN0cnVjdG9yOnZvaWQgMCxuPWU/eihlKToiIjtpZihuKXN3aXRjaChuKXtjYXNlIEtyOnJldHVybiJbb2JqZWN0IERhdGFWaWV3XSI7Y2FzZSBXcjpyZXR1cm4iW29iamVjdCBNYXBdIjtjYXNlIHFyOnJldHVybiJbb2JqZWN0IFByb21pc2VdIjtjYXNlIEdyOnJldHVybiJbb2JqZWN0IFNldF0iO2Nhc2UgSHI6cmV0dXJuIltvYmplY3QgV2Vha01hcF0ifXJldHVybiByfSk7dmFyIFFyPUpyLFhyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIFlyPWZ1bmN0aW9uKHIsZSxuLG8sdSxhKXt2YXIgaT10KHIpLGM9dChlKSxmPWk/IltvYmplY3QgQXJyYXldIjpRcihyKSxsPWM/IltvYmplY3QgQXJyYXldIjpRcihlKSx2PSJbb2JqZWN0IE9iamVjdF0iPT0oZj0iW29iamVjdCBBcmd1bWVudHNdIj09Zj8iW29iamVjdCBPYmplY3RdIjpmKSxzPSJbb2JqZWN0IE9iamVjdF0iPT0obD0iW29iamVjdCBBcmd1bWVudHNdIj09bD8iW29iamVjdCBPYmplY3RdIjpsKSxiPWY9PWw7aWYoYiYmZHIocikpe2lmKCFkcihlKSlyZXR1cm4hMTtpPSEwLHY9ITF9aWYoYiYmIXYpcmV0dXJuIGF8fChhPW5ldyBWdCksaXx8UHIocik/UXQocixlLG4sbyx1LGEpOmVyKHIsZSxmLG4sbyx1LGEpO2lmKCEoMSZuKSl7dmFyIHA9diYmWHIuY2FsbChyLCJfX3dyYXBwZWRfXyIpLHk9cyYmWHIuY2FsbChlLCJfX3dyYXBwZWRfXyIpO2lmKHB8fHkpe3ZhciBoPXA/ci52YWx1ZSgpOnIsZD15P2UudmFsdWUoKTplO3JldHVybiBhfHwoYT1uZXcgVnQpLHUoaCxkLG4sbyxhKX19cmV0dXJuISFiJiYoYXx8KGE9bmV3IFZ0KSxVcihyLGUsbixvLHUsYSkpfTt2YXIgWnI9ZnVuY3Rpb24gdChyLGUsbixvLHUpe3JldHVybiByPT09ZXx8KG51bGw9PXJ8fG51bGw9PWV8fCFoKHIpJiYhaChlKT9yIT1yJiZlIT1lOllyKHIsZSxuLG8sdCx1KSl9O3ZhciB0ZT1mdW5jdGlvbih0LHIsZSxuKXt2YXIgbz1lLmxlbmd0aCx1PW8sYT0hbjtpZihudWxsPT10KXJldHVybiF1O2Zvcih0PU9iamVjdCh0KTtvLS07KXt2YXIgaT1lW29dO2lmKGEmJmlbMl0/aVsxXSE9PXRbaVswXV06IShpWzBdaW4gdCkpcmV0dXJuITF9Zm9yKDsrK288dTspe3ZhciBjPShpPWVbb10pWzBdLGY9dFtjXSxsPWlbMV07aWYoYSYmaVsyXSl7aWYodm9pZCAwPT09ZiYmIShjIGluIHQpKXJldHVybiExfWVsc2V7dmFyIHY9bmV3IFZ0O2lmKG4pdmFyIHM9bihmLGwsYyx0LHIsdik7aWYoISh2b2lkIDA9PT1zP1pyKGwsZiwzLG4sdik6cykpcmV0dXJuITF9fXJldHVybiEwfTt2YXIgcmU9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PXQmJiFPKHQpfTt2YXIgZWU9ZnVuY3Rpb24odCl7Zm9yKHZhciByPUZyKHQpLGU9ci5sZW5ndGg7ZS0tOyl7dmFyIG49cltlXSxvPXRbbl07cltlXT1bbixvLHJlKG8pXX1yZXR1cm4gcn07dmFyIG5lPWZ1bmN0aW9uKHQscil7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiYoZVt0XT09PXImJih2b2lkIDAhPT1yfHx0IGluIE9iamVjdChlKSkpfX07dmFyIG9lPWZ1bmN0aW9uKHQpe3ZhciByPWVlKHQpO3JldHVybiAxPT1yLmxlbmd0aCYmclswXVsyXT9uZShyWzBdWzBdLHJbMF1bMV0pOmZ1bmN0aW9uKGUpe3JldHVybiBlPT09dHx8dGUoZSx0LHIpfX07dmFyIHVlPWZ1bmN0aW9uKHQscil7cmV0dXJuIG51bGwhPXQmJnIgaW4gT2JqZWN0KHQpfTt2YXIgYWU9ZnVuY3Rpb24ocixlLG4pe2Zvcih2YXIgbz0tMSx1PShlPUF0KGUscikpLmxlbmd0aCxhPSExOysrbzx1Oyl7dmFyIGk9U3QoZVtvXSk7aWYoIShhPW51bGwhPXImJm4ocixpKSkpYnJlYWs7cj1yW2ldfXJldHVybiBhfHwrK28hPXU/YTohISh1PW51bGw9PXI/MDpyLmxlbmd0aCkmJl9yKHUpJiZncihpLHUpJiYodChyKXx8eXIocikpfTt2YXIgaWU9ZnVuY3Rpb24odCxyKXtyZXR1cm4gbnVsbCE9dCYmYWUodCxyLHVlKX07dmFyIGNlPWZ1bmN0aW9uKHQscil7cmV0dXJuIF8odCkmJnJlKHIpP25lKFN0KHQpLHIpOmZ1bmN0aW9uKGUpe3ZhciBuPXh0KGUsdCk7cmV0dXJuIHZvaWQgMD09PW4mJm49PT1yP2llKGUsdCk6WnIocixuLDMpfX07dmFyIGZlPWZ1bmN0aW9uKHQpe3JldHVybiB0fTt2YXIgbGU9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiBudWxsPT1yP3ZvaWQgMDpyW3RdfX07dmFyIHZlPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihyKXtyZXR1cm4gUHQocix0KX19O3ZhciBzZT1mdW5jdGlvbih0KXtyZXR1cm4gXyh0KT9sZShTdCh0KSk6dmUodCl9O3ZhciBiZT1mdW5jdGlvbihyKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygcj9yOm51bGw9PXI/ZmU6Im9iamVjdCI9PXR5cGVvZiByP3Qocik/Y2UoclswXSxyWzFdKTpvZShyKTpzZShyKX07dmFyIHBlPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihyLGUsbil7Zm9yKHZhciBvPS0xLHU9T2JqZWN0KHIpLGE9bihyKSxpPWEubGVuZ3RoO2ktLTspe3ZhciBjPWFbdD9pOisrb107aWYoITE9PT1lKHVbY10sYyx1KSlicmVha31yZXR1cm4gcn19KCk7dmFyIHllPWZ1bmN0aW9uKHQscil7cmV0dXJuIGZ1bmN0aW9uKGUsbil7aWYobnVsbD09ZSlyZXR1cm4gZTtpZigha3IoZSkpcmV0dXJuIHQoZSxuKTtmb3IodmFyIG89ZS5sZW5ndGgsdT1yP286LTEsYT1PYmplY3QoZSk7KHI/dS0tOisrdTxvKSYmITEhPT1uKGFbdV0sdSxhKTspO3JldHVybiBlfX0oKGZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJnBlKHQscixGcil9KSk7dmFyIGhlPWZ1bmN0aW9uKHQscil7dmFyIGU9LTEsbj1rcih0KT9BcnJheSh0Lmxlbmd0aCk6W107cmV0dXJuIHllKHQsKGZ1bmN0aW9uKHQsbyx1KXtuWysrZV09cih0LG8sdSl9KSksbn07dmFyIGRlPWZ1bmN0aW9uKHIsZSl7cmV0dXJuKHQocik/Z3Q6aGUpKHIsYmUoZSkpfSxqZT1BcnJheS5wcm90b3R5cGUuam9pbjt2YXIgZ2U9ZnVuY3Rpb24odCxyKXtyZXR1cm4gbnVsbD09dD8iIjpqZS5jYWxsKHQscil9O3ZhciBfZT1mdW5jdGlvbihyKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHJ8fCF0KHIpJiZoKHIpJiYiW29iamVjdCBTdHJpbmddIj09eShyKX0sT2U9bGUoImxlbmd0aCIpLHdlPVJlZ0V4cCgiW1xcdTIwMGRcXHVkODAwLVxcdWRmZmZcXHUwMzAwLVxcdTAzNmZcXHVmZTIwLVxcdWZlMmZcXHUyMGQwLVxcdTIwZmZcXHVmZTBlXFx1ZmUwZl0iKTt2YXIgbWU9ZnVuY3Rpb24odCl7cmV0dXJuIHdlLnRlc3QodCl9LEFlPSJbXFx1ZDgwMC1cXHVkZmZmXSIsU2U9IltcXHUwMzAwLVxcdTAzNmZcXHVmZTIwLVxcdWZlMmZcXHUyMGQwLVxcdTIwZmZdIixQZT0iXFx1ZDgzY1tcXHVkZmZiLVxcdWRmZmZdIix4ZT0iW15cXHVkODAwLVxcdWRmZmZdIix6ZT0iKD86XFx1ZDgzY1tcXHVkZGU2LVxcdWRkZmZdKXsyfSIsRWU9IltcXHVkODAwLVxcdWRiZmZdW1xcdWRjMDAtXFx1ZGZmZl0iLEllPSIoPzoiK1NlKyJ8IitQZSsiKSIrIj8iLCRlPSJbXFx1ZmUwZVxcdWZlMGZdPyIrSWUrKCIoPzpcXHUyMDBkKD86IitbeGUsemUsRWVdLmpvaW4oInwiKSsiKVtcXHVmZTBlXFx1ZmUwZl0/IitJZSsiKSoiKSxOZT0iKD86IitbeGUrU2UrIj8iLFNlLHplLEVlLEFlXS5qb2luKCJ8IikrIikiLFRlPVJlZ0V4cChQZSsiKD89IitQZSsiKXwiK05lKyRlLCJnIik7dmFyIE1lPWZ1bmN0aW9uKHQpe2Zvcih2YXIgcj1UZS5sYXN0SW5kZXg9MDtUZS50ZXN0KHQpOykrK3I7cmV0dXJuIHJ9O3ZhciBrZT1mdW5jdGlvbih0KXtyZXR1cm4gbWUodCk/TWUodCk6T2UodCl9O3ZhciBGZT1mdW5jdGlvbih0KXtpZihudWxsPT10KXJldHVybiAwO2lmKGtyKHQpKXJldHVybiBfZSh0KT9rZSh0KTp0Lmxlbmd0aDt2YXIgcj1Rcih0KTtyZXR1cm4iW29iamVjdCBNYXBdIj09cnx8IltvYmplY3QgU2V0XSI9PXI/dC5zaXplOk1yKHQpLmxlbmd0aH07dmFyIENlPWZ1bmN0aW9uKHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdHx8aCh0KSYmIltvYmplY3QgTnVtYmVyXSI9PXkodCl9O3ZhciBEZT1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK2U8biYmITEhPT1yKHRbZV0sZSx0KTspO3JldHVybiB0fSxVZT1mdW5jdGlvbigpe3RyeXt2YXIgdD1DKE9iamVjdCwiZGVmaW5lUHJvcGVydHkiKTtyZXR1cm4gdCh7fSwiIix7fSksdH1jYXRjaCh0KXt9fSgpO3ZhciBCZT1mdW5jdGlvbih0LHIsZSl7Il9fcHJvdG9fXyI9PXImJlVlP1VlKHQscix7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsdmFsdWU6ZSx3cml0YWJsZTohMH0pOnRbcl09ZX0sUmU9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt2YXIgTGU9ZnVuY3Rpb24odCxyLGUpe3ZhciBuPXRbcl07UmUuY2FsbCh0LHIpJiZKKG4sZSkmJih2b2lkIDAhPT1lfHxyIGluIHQpfHxCZSh0LHIsZSl9O3ZhciBWZT1mdW5jdGlvbih0LHIsZSxuKXt2YXIgbz0hZTtlfHwoZT17fSk7Zm9yKHZhciB1PS0xLGE9ci5sZW5ndGg7Kyt1PGE7KXt2YXIgaT1yW3VdLGM9bj9uKGVbaV0sdFtpXSxpLGUsdCk6dm9pZCAwO3ZvaWQgMD09PWMmJihjPXRbaV0pLG8/QmUoZSxpLGMpOkxlKGUsaSxjKX1yZXR1cm4gZX07dmFyIEtlPWZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJlZlKHIsRnIociksdCl9O3ZhciBXZT1mdW5jdGlvbih0KXt2YXIgcj1bXTtpZihudWxsIT10KWZvcih2YXIgZSBpbiBPYmplY3QodCkpci5wdXNoKGUpO3JldHVybiByfSxxZT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBHZT1mdW5jdGlvbih0KXtpZighTyh0KSlyZXR1cm4gV2UodCk7dmFyIHI9SXIodCksZT1bXTtmb3IodmFyIG4gaW4gdCkoImNvbnN0cnVjdG9yIiE9bnx8IXImJnFlLmNhbGwodCxuKSkmJmUucHVzaChuKTtyZXR1cm4gZX07dmFyIEhlPWZ1bmN0aW9uKHQpe3JldHVybiBrcih0KT96cih0LCEwKTpHZSh0KX07dmFyIEplPWZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJlZlKHIsSGUociksdCl9LFFlPWUoKGZ1bmN0aW9uKHQscil7dmFyIGU9ciYmIXIubm9kZVR5cGUmJnIsbj1lJiZ0JiYhdC5ub2RlVHlwZSYmdCxvPW4mJm4uZXhwb3J0cz09PWU/dS5CdWZmZXI6dm9pZCAwLGE9bz9vLmFsbG9jVW5zYWZlOnZvaWQgMDt0LmV4cG9ydHM9ZnVuY3Rpb24odCxyKXtpZihyKXJldHVybiB0LnNsaWNlKCk7dmFyIGU9dC5sZW5ndGgsbj1hP2EoZSk6bmV3IHQuY29uc3RydWN0b3IoZSk7cmV0dXJuIHQuY29weShuKSxufX0pKTt2YXIgWGU9ZnVuY3Rpb24odCxyKXt2YXIgZT0tMSxuPXQubGVuZ3RoO2ZvcihyfHwocj1BcnJheShuKSk7KytlPG47KXJbZV09dFtlXTtyZXR1cm4gcn07dmFyIFllPWZ1bmN0aW9uKHQscil7cmV0dXJuIFZlKHQsZnIodCkscil9LFplPSRyKE9iamVjdC5nZXRQcm90b3R5cGVPZixPYmplY3QpLHRuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM/ZnVuY3Rpb24odCl7Zm9yKHZhciByPVtdO3Q7KW5yKHIsZnIodCkpLHQ9WmUodCk7cmV0dXJuIHJ9OmFyO3ZhciBybj1mdW5jdGlvbih0LHIpe3JldHVybiBWZSh0LHRuKHQpLHIpfTt2YXIgZW49ZnVuY3Rpb24odCl7cmV0dXJuIG9yKHQsSGUsdG4pfSxubj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBvbj1mdW5jdGlvbih0KXt2YXIgcj10Lmxlbmd0aCxlPW5ldyB0LmNvbnN0cnVjdG9yKHIpO3JldHVybiByJiYic3RyaW5nIj09dHlwZW9mIHRbMF0mJm5uLmNhbGwodCwiaW5kZXgiKSYmKGUuaW5kZXg9dC5pbmRleCxlLmlucHV0PXQuaW5wdXQpLGV9O3ZhciB1bj1mdW5jdGlvbih0KXt2YXIgcj1uZXcgdC5jb25zdHJ1Y3Rvcih0LmJ5dGVMZW5ndGgpO3JldHVybiBuZXcgWHQocikuc2V0KG5ldyBYdCh0KSkscn07dmFyIGFuPWZ1bmN0aW9uKHQscil7dmFyIGU9cj91bih0LmJ1ZmZlcik6dC5idWZmZXI7cmV0dXJuIG5ldyB0LmNvbnN0cnVjdG9yKGUsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCl9LGNuPS9cdyokLzt2YXIgZm49ZnVuY3Rpb24odCl7dmFyIHI9bmV3IHQuY29uc3RydWN0b3IodC5zb3VyY2UsY24uZXhlYyh0KSk7cmV0dXJuIHIubGFzdEluZGV4PXQubGFzdEluZGV4LHJ9LGxuPWE/YS5wcm90b3R5cGU6dm9pZCAwLHZuPWxuP2xuLnZhbHVlT2Y6dm9pZCAwO3ZhciBzbj1mdW5jdGlvbih0KXtyZXR1cm4gdm4/T2JqZWN0KHZuLmNhbGwodCkpOnt9fTt2YXIgYm49ZnVuY3Rpb24odCxyKXt2YXIgZT1yP3VuKHQuYnVmZmVyKTp0LmJ1ZmZlcjtyZXR1cm4gbmV3IHQuY29uc3RydWN0b3IoZSx0LmJ5dGVPZmZzZXQsdC5sZW5ndGgpfTt2YXIgcG49ZnVuY3Rpb24odCxyLGUpe3ZhciBuPXQuY29uc3RydWN0b3I7c3dpdGNoKHIpe2Nhc2UiW29iamVjdCBBcnJheUJ1ZmZlcl0iOnJldHVybiB1bih0KTtjYXNlIltvYmplY3QgQm9vbGVhbl0iOmNhc2UiW29iamVjdCBEYXRlXSI6cmV0dXJuIG5ldyBuKCt0KTtjYXNlIltvYmplY3QgRGF0YVZpZXddIjpyZXR1cm4gYW4odCxlKTtjYXNlIltvYmplY3QgRmxvYXQzMkFycmF5XSI6Y2FzZSJbb2JqZWN0IEZsb2F0NjRBcnJheV0iOmNhc2UiW29iamVjdCBJbnQ4QXJyYXldIjpjYXNlIltvYmplY3QgSW50MTZBcnJheV0iOmNhc2UiW29iamVjdCBJbnQzMkFycmF5XSI6Y2FzZSJbb2JqZWN0IFVpbnQ4QXJyYXldIjpjYXNlIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIjpjYXNlIltvYmplY3QgVWludDE2QXJyYXldIjpjYXNlIltvYmplY3QgVWludDMyQXJyYXldIjpyZXR1cm4gYm4odCxlKTtjYXNlIltvYmplY3QgTWFwXSI6cmV0dXJuIG5ldyBuO2Nhc2UiW29iamVjdCBOdW1iZXJdIjpjYXNlIltvYmplY3QgU3RyaW5nXSI6cmV0dXJuIG5ldyBuKHQpO2Nhc2UiW29iamVjdCBSZWdFeHBdIjpyZXR1cm4gZm4odCk7Y2FzZSJbb2JqZWN0IFNldF0iOnJldHVybiBuZXcgbjtjYXNlIltvYmplY3QgU3ltYm9sXSI6cmV0dXJuIHNuKHQpfX0seW49T2JqZWN0LmNyZWF0ZSxobj1mdW5jdGlvbigpe2Z1bmN0aW9uIHQoKXt9cmV0dXJuIGZ1bmN0aW9uKHIpe2lmKCFPKHIpKXJldHVybnt9O2lmKHluKXJldHVybiB5bihyKTt0LnByb3RvdHlwZT1yO3ZhciBlPW5ldyB0O3JldHVybiB0LnByb3RvdHlwZT12b2lkIDAsZX19KCk7dmFyIGRuPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiIhPXR5cGVvZiB0LmNvbnN0cnVjdG9yfHxJcih0KT97fTpobihaZSh0KSl9O3ZhciBqbj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgTWFwXSI9PVFyKHQpfSxnbj1BciYmQXIuaXNNYXAsX249Z24/bXIoZ24pOmpuO3ZhciBPbj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgU2V0XSI9PVFyKHQpfSx3bj1BciYmQXIuaXNTZXQsbW49d24/bXIod24pOk9uLEFuPXt9O0FuWyJbb2JqZWN0IEFyZ3VtZW50c10iXT1BblsiW29iamVjdCBBcnJheV0iXT1BblsiW29iamVjdCBBcnJheUJ1ZmZlcl0iXT1BblsiW29iamVjdCBEYXRhVmlld10iXT1BblsiW29iamVjdCBCb29sZWFuXSJdPUFuWyJbb2JqZWN0IERhdGVdIl09QW5bIltvYmplY3QgRmxvYXQzMkFycmF5XSJdPUFuWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1BblsiW29iamVjdCBJbnQ4QXJyYXldIl09QW5bIltvYmplY3QgSW50MTZBcnJheV0iXT1BblsiW29iamVjdCBJbnQzMkFycmF5XSJdPUFuWyJbb2JqZWN0IE1hcF0iXT1BblsiW29iamVjdCBOdW1iZXJdIl09QW5bIltvYmplY3QgT2JqZWN0XSJdPUFuWyJbb2JqZWN0IFJlZ0V4cF0iXT1BblsiW29iamVjdCBTZXRdIl09QW5bIltvYmplY3QgU3RyaW5nXSJdPUFuWyJbb2JqZWN0IFN5bWJvbF0iXT1BblsiW29iamVjdCBVaW50OEFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQxNkFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQzMkFycmF5XSJdPSEwLEFuWyJbb2JqZWN0IEVycm9yXSJdPUFuWyJbb2JqZWN0IEZ1bmN0aW9uXSJdPUFuWyJbb2JqZWN0IFdlYWtNYXBdIl09ITE7dmFyIFNuPWZ1bmN0aW9uIHIoZSxuLG8sdSxhLGkpe3ZhciBjLGY9MSZuLGw9MiZuLHY9NCZuO2lmKG8mJihjPWE/byhlLHUsYSxpKTpvKGUpKSx2b2lkIDAhPT1jKXJldHVybiBjO2lmKCFPKGUpKXJldHVybiBlO3ZhciBzPXQoZSk7aWYocyl7aWYoYz1vbihlKSwhZilyZXR1cm4gWGUoZSxjKX1lbHNle3ZhciBiPVFyKGUpLHA9IltvYmplY3QgRnVuY3Rpb25dIj09Ynx8IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09YjtpZihkcihlKSlyZXR1cm4gUWUoZSxmKTtpZigiW29iamVjdCBPYmplY3RdIj09Ynx8IltvYmplY3QgQXJndW1lbnRzXSI9PWJ8fHAmJiFhKXtpZihjPWx8fHA/e306ZG4oZSksIWYpcmV0dXJuIGw/cm4oZSxKZShjLGUpKTpZZShlLEtlKGMsZSkpfWVsc2V7aWYoIUFuW2JdKXJldHVybiBhP2U6e307Yz1wbihlLGIsZil9fWl8fChpPW5ldyBWdCk7dmFyIHk9aS5nZXQoZSk7aWYoeSlyZXR1cm4geTtpLnNldChlLGMpLG1uKGUpP2UuZm9yRWFjaCgoZnVuY3Rpb24odCl7Yy5hZGQocih0LG4sbyx0LGUsaSkpfSkpOl9uKGUpJiZlLmZvckVhY2goKGZ1bmN0aW9uKHQsdSl7Yy5zZXQodSxyKHQsbixvLHUsZSxpKSl9KSk7dmFyIGg9cz92b2lkIDA6KHY/bD9lbjpDcjpsP0hlOkZyKShlKTtyZXR1cm4gRGUoaHx8ZSwoZnVuY3Rpb24odCx1KXtoJiYodD1lW3U9dF0pLExlKGMsdSxyKHQsbixvLHUsZSxpKSl9KSksY307dmFyIFBuPWZ1bmN0aW9uKHQpe3JldHVybiBTbih0LDUpfTtmdW5jdGlvbiB4bih0KXtsZXQgcj0hMTtyZXR1cm4gRXQodCk/cj0haXNOYU4oTnVtYmVyKHQpKTpmdW5jdGlvbih0KXtyZXR1cm4iW29iamVjdCBOdW1iZXJdIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX0odCkmJihyPSEwKSxyfWZ1bmN0aW9uIHpuKHQpe2lmKCFFdCh0KSYmIXhuKHQpJiYhZCh0KSlyZXR1cm4iIjtsZXQgcj0iIjt0cnl7cj1TdHJpbmcodCl9Y2F0Y2godCl7fXRyeXtyPXQudG9TdHJpbmcoKX1jYXRjaCh0KXt9cmV0dXJuIHJ9dmFyIEVuPU1hdGguY2VpbCxJbj1NYXRoLm1heDt2YXIgJG49ZnVuY3Rpb24odCxyLGUsbil7Zm9yKHZhciBvPS0xLHU9SW4oRW4oKHItdCkvKGV8fDEpKSwwKSxhPUFycmF5KHUpO3UtLTspYVtuP3U6KytvXT10LHQrPWU7cmV0dXJuIGF9O3ZhciBObj1mdW5jdGlvbih0LHIsZSl7aWYoIU8oZSkpcmV0dXJuITE7dmFyIG49dHlwZW9mIHI7cmV0dXJuISEoIm51bWJlciI9PW4/a3IoZSkmJmdyKHIsZS5sZW5ndGgpOiJzdHJpbmciPT1uJiZyIGluIGUpJiZKKGVbcl0sdCl9LFRuPS9ccy87dmFyIE1uPWZ1bmN0aW9uKHQpe2Zvcih2YXIgcj10Lmxlbmd0aDtyLS0mJlRuLnRlc3QodC5jaGFyQXQocikpOyk7cmV0dXJuIHJ9LGtuPS9eXHMrLzt2YXIgRm49ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC5zbGljZSgwLE1uKHQpKzEpLnJlcGxhY2Uoa24sIiIpOnR9LENuPS9eWy0rXTB4WzAtOWEtZl0rJC9pLERuPS9eMGJbMDFdKyQvaSxVbj0vXjBvWzAtN10rJC9pLEJuPXBhcnNlSW50O3ZhciBSbj1mdW5jdGlvbih0KXtpZigibnVtYmVyIj09dHlwZW9mIHQpcmV0dXJuIHQ7aWYoZCh0KSlyZXR1cm4gTmFOO2lmKE8odCkpe3ZhciByPSJmdW5jdGlvbiI9PXR5cGVvZiB0LnZhbHVlT2Y/dC52YWx1ZU9mKCk6dDt0PU8ocik/cisiIjpyfWlmKCJzdHJpbmciIT10eXBlb2YgdClyZXR1cm4gMD09PXQ/dDordDt0PUZuKHQpO3ZhciBlPURuLnRlc3QodCk7cmV0dXJuIGV8fFVuLnRlc3QodCk/Qm4odC5zbGljZSgyKSxlPzI6OCk6Q24udGVzdCh0KT9OYU46K3R9O3ZhciBMbj1mdW5jdGlvbih0KXtyZXR1cm4gdD9JbmZpbml0eT09PSh0PVJuKHQpKXx8LUluZmluaXR5PT09dD8xNzk3NjkzMTM0ODYyMzE1N2UyOTIqKHQ8MD8tMToxKTp0PT10P3Q6MDowPT09dD90OjB9O3ZhciBWbj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24ocixlLG4pe3JldHVybiBuJiYibnVtYmVyIiE9dHlwZW9mIG4mJk5uKHIsZSxuKSYmKGU9bj12b2lkIDApLHI9TG4ociksdm9pZCAwPT09ZT8oZT1yLHI9MCk6ZT1MbihlKSxuPXZvaWQgMD09PW4/cjxlPzE6LTE6TG4obiksJG4ocixlLG4sdCl9fSgpO2Z1bmN0aW9uIEtuKHQscj1udWxsLGU9e30pe20ocil8fChyPXQ9PnQpO2xldCBuPXh0KGUsImZvcmNlIiwhMSk7cmV0dXJuIEZ0KG4pfHwobj0hMSksZnVuY3Rpb24odCxyLGU9ITEpe2xldCBuPVtdO2lmKCFOdCh0KSYmIUl0KHQpKXJldHVybiByKHQsbnVsbCxbXSk7ZnVuY3Rpb24gbyh0KXtpZihOdCh0KSlyZXR1cm4gVm4oRmUodCkpO2lmKEl0KHQpKXtsZXQgcj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0KSxuPW51bGw7cmV0dXJuIGUmJihuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpLE50KHIpfHwocj1bXSksTnQobil8fChuPVtdKSxbLi4uciwuLi5uXX1yZXR1cm4gdH1yZXR1cm4gZnVuY3Rpb24gdChlLHUpe2lmKE50KGUpKXJldHVybiBvKGUpLm1hcCgobz0+e2xldCB1PWVbb10sYT1QbihuKTtyZXR1cm4gbi5wdXNoKG8pLHU9cih1LG8sYSksdT10KHUpLG4ucG9wKCksdX0pKTtpZihJdChlKSl7bGV0IHU9byhlKSxhPXt9O3JldHVybiB1Lm1hcCgobz0+e2xldCB1PWVbb10saT1QbihuKTtuLnB1c2gobyksdT1yKHUsbyxpKSx1PXQodSksbi5wb3AoKSxhW29dPXV9KSksYX1yZXR1cm4gZX0odCl9KHQscixuKX1mdW5jdGlvbiBXbih0LHIsZSl7cmV0dXJuIHIgaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxyLHt2YWx1ZTplLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtyXT1lLHR9dmFyIHFuPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3Q6ZmV9O3ZhciBHbj1mdW5jdGlvbihyLGUpe3JldHVybih0KHIpP0RlOnllKShyLHFuKGUpKX07dmFyIEhuPWZ1bmN0aW9uKHQscixlLG4pe2lmKCFPKHQpKXJldHVybiB0O2Zvcih2YXIgbz0tMSx1PShyPUF0KHIsdCkpLmxlbmd0aCxhPXUtMSxpPXQ7bnVsbCE9aSYmKytvPHU7KXt2YXIgYz1TdChyW29dKSxmPWU7aWYoIl9fcHJvdG9fXyI9PT1jfHwiY29uc3RydWN0b3IiPT09Y3x8InByb3RvdHlwZSI9PT1jKXJldHVybiB0O2lmKG8hPWEpe3ZhciBsPWlbY107dm9pZCAwPT09KGY9bj9uKGwsYyxpKTp2b2lkIDApJiYoZj1PKGwpP2w6Z3IocltvKzFdKT9bXTp7fSl9TGUoaSxjLGYpLGk9aVtjXX1yZXR1cm4gdH07dmFyIEpuPWZ1bmN0aW9uKHQscixlKXtyZXR1cm4gbnVsbD09dD90OkhuKHQscixlKX07dmFyIFFuPWZ1bmN0aW9uKHQpe3ZhciByPW51bGw9PXQ/MDp0Lmxlbmd0aDtyZXR1cm4gcj90W3ItMV06dm9pZCAwfTt2YXIgWG49ZnVuY3Rpb24odCxyLGUpe3ZhciBuPS0xLG89dC5sZW5ndGg7cjwwJiYocj0tcj5vPzA6bytyKSwoZT1lPm8/bzplKTwwJiYoZSs9byksbz1yPmU/MDplLXI+Pj4wLHI+Pj49MDtmb3IodmFyIHU9QXJyYXkobyk7KytuPG87KXVbbl09dFtuK3JdO3JldHVybiB1fTt2YXIgWW49ZnVuY3Rpb24odCxyKXtyZXR1cm4gci5sZW5ndGg8Mj90OlB0KHQsWG4ociwwLC0xKSl9O3ZhciBabj1mdW5jdGlvbih0LHIpe3JldHVybiByPUF0KHIsdCksbnVsbD09KHQ9WW4odCxyKSl8fGRlbGV0ZSB0W1N0KFFuKHIpKV19LHRvPUZ1bmN0aW9uLnByb3RvdHlwZSxybz1PYmplY3QucHJvdG90eXBlLGVvPXRvLnRvU3RyaW5nLG5vPXJvLmhhc093blByb3BlcnR5LG9vPWVvLmNhbGwoT2JqZWN0KTt2YXIgdW89ZnVuY3Rpb24odCl7aWYoIWgodCl8fCJbb2JqZWN0IE9iamVjdF0iIT15KHQpKXJldHVybiExO3ZhciByPVplKHQpO2lmKG51bGw9PT1yKXJldHVybiEwO3ZhciBlPW5vLmNhbGwociwiY29uc3RydWN0b3IiKSYmci5jb25zdHJ1Y3RvcjtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmZSBpbnN0YW5jZW9mIGUmJmVvLmNhbGwoZSk9PW9vfTt2YXIgYW89ZnVuY3Rpb24odCl7cmV0dXJuIHVvKHQpP3ZvaWQgMDp0fSxpbz1hP2EuaXNDb25jYXRTcHJlYWRhYmxlOnZvaWQgMDt2YXIgY289ZnVuY3Rpb24ocil7cmV0dXJuIHQocil8fHlyKHIpfHwhIShpbyYmciYmcltpb10pfTt2YXIgZm89ZnVuY3Rpb24gdChyLGUsbixvLHUpe3ZhciBhPS0xLGk9ci5sZW5ndGg7Zm9yKG58fChuPWNvKSx1fHwodT1bXSk7KythPGk7KXt2YXIgYz1yW2FdO2U+MCYmbihjKT9lPjE/dChjLGUtMSxuLG8sdSk6bnIodSxjKTpvfHwodVt1Lmxlbmd0aF09Yyl9cmV0dXJuIHV9O3ZhciBsbz1mdW5jdGlvbih0KXtyZXR1cm4obnVsbD09dD8wOnQubGVuZ3RoKT9mbyh0LDEpOltdfTt2YXIgdm89ZnVuY3Rpb24odCxyLGUpe3N3aXRjaChlLmxlbmd0aCl7Y2FzZSAwOnJldHVybiB0LmNhbGwocik7Y2FzZSAxOnJldHVybiB0LmNhbGwocixlWzBdKTtjYXNlIDI6cmV0dXJuIHQuY2FsbChyLGVbMF0sZVsxXSk7Y2FzZSAzOnJldHVybiB0LmNhbGwocixlWzBdLGVbMV0sZVsyXSl9cmV0dXJuIHQuYXBwbHkocixlKX0sc289TWF0aC5tYXg7dmFyIGJvPWZ1bmN0aW9uKHQscixlKXtyZXR1cm4gcj1zbyh2b2lkIDA9PT1yP3QubGVuZ3RoLTE6ciwwKSxmdW5jdGlvbigpe2Zvcih2YXIgbj1hcmd1bWVudHMsbz0tMSx1PXNvKG4ubGVuZ3RoLXIsMCksYT1BcnJheSh1KTsrK288dTspYVtvXT1uW3Irb107bz0tMTtmb3IodmFyIGk9QXJyYXkocisxKTsrK288cjspaVtvXT1uW29dO3JldHVybiBpW3JdPWUoYSksdm8odCx0aGlzLGkpfX07dmFyIHBvPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiB0fX0seW89VWU/ZnVuY3Rpb24odCxyKXtyZXR1cm4gVWUodCwidG9TdHJpbmciLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMSx2YWx1ZTpwbyhyKSx3cml0YWJsZTohMH0pfTpmZSxobz1EYXRlLm5vdzt2YXIgam89ZnVuY3Rpb24odCl7dmFyIHI9MCxlPTA7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49aG8oKSxvPTE2LShuLWUpO2lmKGU9bixvPjApe2lmKCsrcj49ODAwKXJldHVybiBhcmd1bWVudHNbMF19ZWxzZSByPTA7cmV0dXJuIHQuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyl9fSh5byk7dmFyIGdvPWZ1bmN0aW9uKHQpe3JldHVybiBqbyhibyh0LHZvaWQgMCxsbyksdCsiIil9KChmdW5jdGlvbih0LHIpe3ZhciBlPXt9O2lmKG51bGw9PXQpcmV0dXJuIGU7dmFyIG49ITE7cj1ndChyLChmdW5jdGlvbihyKXtyZXR1cm4gcj1BdChyLHQpLG58fChuPXIubGVuZ3RoPjEpLHJ9KSksVmUodCxlbih0KSxlKSxuJiYoZT1TbihlLDcsYW8pKTtmb3IodmFyIG89ci5sZW5ndGg7by0tOylabihlLHJbb10pO3JldHVybiBlfSkpO2Z1bmN0aW9uIF9vKHQscil7dmFyIGU9T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtyJiYobj1uLmZpbHRlcigoZnVuY3Rpb24ocil7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxyKS5lbnVtZXJhYmxlfSkpKSxlLnB1c2guYXBwbHkoZSxuKX1yZXR1cm4gZX1mdW5jdGlvbiBPbyh0KXtmb3IodmFyIHI9MTtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKXt2YXIgZT1udWxsIT1hcmd1bWVudHNbcl0/YXJndW1lbnRzW3JdOnt9O3IlMj9fbyhPYmplY3QoZSksITApLmZvckVhY2goKGZ1bmN0aW9uKHIpe1duKHQscixlW3JdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKGUpKTpfbyhPYmplY3QoZSkpLmZvckVhY2goKGZ1bmN0aW9uKHIpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LHIsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHIpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiB3byh0LHI9e30pe2xldCBlPSIkbGV2ZWwiLG49IiRwYXJlbnRzIjtpZighTXQodCkpcmV0dXJuW107bGV0IG89eHQociwiYmluZEtleSIsbnVsbCk7RXQobyl8fChvPSJpZCIpO2xldCB1PXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KHUpfHwodT0icGFyZW50SWQiKTtsZXQgYT14dChyLCJiaW5kQ2hpbGRyZW4iLG51bGwpO0V0KGEpfHwoYT0iY2hpbGRyZW4iKTtsZXQgaT14dChyLCJzYXZlRXh0UHJvcHMiLG51bGwpO3JldHVybiBGdChpKXx8KGk9ITEpLGZ1bmN0aW9uKHQpe2xldCByPVtdO2Z1bmN0aW9uIGModCl7cmV0dXJuIGk/dDpnbyh0LFtlLG5dKX1sZXQgZj17fTtyZXR1cm4gR24odCwoKGUsbik9PntpZigwPT09ZS4kbGV2ZWwpe2xldCB0PWMoZSk7ci5wdXNoKHQpLGZbZVtvXV09W25dfWVsc2V7bGV0IG49ZnVuY3Rpb24ocil7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspe2xldCBuPXRbZV07aWYoclt1XT09PW5bb10pcmV0dXJuIG59cmV0dXJuIG51bGx9KGUpO2lmKG51bGwhPT1uKXtsZXQgdD1mW25bb11dO3Q9Wy4uLnQsYV07bGV0IHU9eHQocix0LFtdKSxpPWMoZSk7dS5wdXNoKGkpLGZbZVtvXV09Wy4uLnQsdS5sZW5ndGgtMV0sSm4ocix0LHUpfWVsc2UgY29uc29sZS5sb2coYGNhbiBub3QgZmluZCBwYXJlbnQgZm9yICR7eHQoZSx1KX1gKX19KSkscn0odD1mdW5jdGlvbih0KXtsZXQgcj1bXTtmdW5jdGlvbiBhKGEpe2xldCBpPVtdO0duKHQsKCh0LGMpPT57bGV0IGY9eHQodCx1KSxsPXh0KGEsbyk7aWYoZiYmbCYmZj09PWwpe2xldCB1PXh0KGEsbixbXSk7dT1Qbih1KSx1LnB1c2goYVtvXSksci5wdXNoKE9vKHtbZV06YS4kbGV2ZWwrMSxbbl06dX0sdCkpfWVsc2UgaS5wdXNoKHQpfSkpLHQ9aX1pZih0PVBuKHQpLGZ1bmN0aW9uKCl7bGV0IG89W107R24odCwoKHQsYSk9PntUdCh0W3VdKT9yLnB1c2goT28oe1tlXTowLFtuXTpbXX0sdCkpOm8ucHVzaCh0KX0pKSx0PW99KCksMD09PXIubGVuZ3RoKXJldHVybiByO2xldCBpPS0xO2Zvcig7aSs9MSwhKGk+ci5sZW5ndGgtMSk7KXtpZihhKHJbaV0pLDA9PT10Lmxlbmd0aClicmVha31yZXR1cm4gcn0odCkpfWZ1bmN0aW9uIG1vKHQscj17fSl7aWYoISR0KHQpJiYhTXQodCkpcmV0dXJuW107bGV0IGU9eHQociwiYmluZEtleSIsbnVsbCk7RXQoZSl8fChlPSJpZCIpO2xldCBuPXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KG4pfHwobj0icGFyZW50SWQiKTtsZXQgbz14dChyLCJiaW5kVGV4dCIsbnVsbCk7RXQobyl8fChvPSJ0ZXh0Iik7bGV0IHU9eHQociwiYmluZENoaWxkcmVuIixudWxsKTtFdCh1KXx8KHU9ImNoaWxkcmVuIik7bGV0IGE9eHQociwiYmluZFR5cGUiLG51bGwpO0V0KGEpfHwoYT0idHlwZSIpO2xldCBpPXh0KHIsImJpbmROdW1PZkNoaWxyZW4iLG51bGwpO0V0KGkpfHwoaT0ibnVtT2ZDaGlscmVuIik7bGV0IGM9eHQociwiYmluZFJvb3QiLG51bGwpO0V0KGMpfHwoYz0icm9vdCIpO2xldCBmPXh0KHIsInNhdmVFeHRQcm9wcyIsbnVsbCk7cmV0dXJuIEZ0KGYpfHwoZj0hMSksRXQoYykmJih0PXtbY106dH0pLHdvKGZ1bmN0aW9uKHQscj17fSl7aWYoISR0KHQpJiYhTXQodCkpcmV0dXJuW107bGV0IGU9eHQociwiYmluZEtleSIsbnVsbCk7RXQoZSl8fChlPSJpZCIpO2xldCBuPXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KG4pfHwobj0icGFyZW50SWQiKTtsZXQgbz14dChyLCJiaW5kQmVsb25nIixudWxsKTtFdChvKXx8KG89ImtleSIpO2xldCB1PXh0KHIsImJpbmRUZXh0IixudWxsKTtFdCh1KXx8KHU9InRleHQiKTtsZXQgYT14dChyLCJiaW5kVHlwZSIsbnVsbCk7RXQoYSl8fChhPSJ0eXBlIik7bGV0IGk9eHQociwiYmluZE51bU9mQ2hpbHJlbiIsbnVsbCk7ZnVuY3Rpb24gYyh0LHIsZSl7dD1Qbih0KSx0PWRlKHQsKHQ9PmQodCk/em4odCk6dCkpLGQocikmJihyPXpuKHIpKSxkKGUpJiYoZT16bihlKSksKEV0KHIpfHx4bihyKSkmJnQucHVzaChyKTtsZXQgbj1nZSh0LCItIik7cmV0dXJuKEV0KGUpfHx4bihlKSkmJihuPWAke2V9LSR7bn1gKSxufUV0KGkpfHwoaT0ibnVtT2ZDaGlscmVuIik7bGV0IGY9W107cmV0dXJuIEtuKHQsKCh0LHIsbCk9PntsZXQgdj1jKGwscikscz1jKGwsbnVsbCksYj0ibm9kZSI7SXQodCk/Yj0ib2JqZWN0IjpOdCh0KSYmKGI9ImFycmF5Iik7bGV0IHA9e1tlXTp2LFtuXTpzLFthXTpifTtpZigoRXQocil8fENlKHIpKSYmKHBbb109ciksSXQodCl8fE50KHQpfHwocFt1XT10KSxJdCh0KXx8TnQodCkpe2xldCByPUZlKHQpO3BbaV09cn1yZXR1cm4gZi5wdXNoKHApLHR9KSx7Zm9yY2U6ITB9KSxmfSh0LHtiaW5kS2V5OmUsYmluZFBhcmVudDpuLGJpbmRUZXh0Om8sYmluZFR5cGU6YSxiaW5kTnVtT2ZDaGlscmVuOml9KSx7YmluZEtleTplLGJpbmRQYXJlbnQ6bixiaW5kQ2hpbGRyZW46dSxzYXZlRXh0UHJvcHM6Zn0pfWFzeW5jIGZ1bmN0aW9uIGNvbnZlcnRUb1RyZWVXayh0LHI9e30pe3JldHVybiBtbyh0LHIpfQoKbGV0IGluc3RhbmNlID0gbnVsbApmdW5jdGlvbiBpbml0KGlucHV0KXsKCiAgICAvL2luaXQKICAgIGxldCByCiAgICAKICAgICAgICByID0gewogICAgICAgICAgICBtYWluOiBjb252ZXJ0VG9UcmVlV2sKICAgICAgICB9CiAgICAgICAgCgogICAgLy9vbgogICAgCgogICAgLy9zYXZlCiAgICBpbnN0YW5jZSA9IHIKCn0KCmZ1bmN0aW9uIHNlbmRNZXNzYWdlKGRhdGEpIHsKICAgIAogICAgICAgIHNlbGYucG9zdE1lc3NhZ2UoZGF0YSkKICAgICAgICAKfQoKYXN5bmMgZnVuY3Rpb24gcnVuKGRhdGEpIHsKICAgIC8vIGNvbnNvbGUubG9nKCdpbm5lciB3b3JrZXIgcnVuJyxkYXRhKQoKICAgIC8vbW9kZQogICAgbGV0IG1vZGUgPSBkYXRhLm1vZGUKCiAgICAvL2NoZWNrCiAgICBpZihtb2RlICE9PSAnaW5pdCcgJiYgbW9kZSAhPT0gJ2NhbGwnKXsKICAgICAgICByZXR1cm4KICAgIH0KCiAgICAvL2luaXQKICAgIGlmKG1vZGUgPT09ICdpbml0Jyl7CiAgICAgICAgCiAgICAgICAgdHJ5ewoKICAgICAgICAgICAgLy90eXBlCiAgICAgICAgICAgIGxldCB0eXBlID0gZGF0YS50eXBlCgogICAgICAgICAgICAvL2lucHV0CiAgICAgICAgICAgIGxldCBpbnB1dCA9IGRhdGEuaW5wdXQKICAgIAogICAgICAgICAgICAvL2luc3RhbmNlCiAgICAgICAgICAgIGlmKHR5cGUgPT09ICdmdW5jdGlvbicpewogICAgICAgICAgICAgICAgaW5pdCguLi5pbnB1dCkKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmKHR5cGUgPT09ICdvYmplY3QnKXsKICAgICAgICAgICAgICAgIGluc3RhbmNlID0gY29udmVydFRvVHJlZVdrCiAgICAgICAgICAgIH0KCiAgICAgICAgfQogICAgICAgIGNhdGNoKGVycil7CiAgICAgICAgCiAgICAgICAgICAgIC8vc2VuZE1lc3NhZ2UKICAgICAgICAgICAgbGV0IHJlcyA9IHsKICAgICAgICAgICAgICAgIG1vZGU6ICdlbWl0JywKICAgICAgICAgICAgICAgIGV2TmFtZTogJ2Vycm9yJywKICAgICAgICAgICAgICAgIG1zZzogZXJyLAogICAgICAgICAgICB9CiAgICAgICAgICAgIHNlbmRNZXNzYWdlKHJlcykKCiAgICAgICAgfQogICAgICAgICAgICAKICAgIH0KCiAgICAvL2NoZWNrCiAgICBpZihtb2RlID09PSAnY2FsbCcpewogICAgICAgIGxldCBzdGF0ZSA9ICcnCiAgICAgICAgbGV0IG1zZyA9IG51bGwKCiAgICAgICAgdHJ5ewoKICAgICAgICAgICAgLy9mdW4KICAgICAgICAgICAgbGV0IGZ1biA9IGluc3RhbmNlW2RhdGEuZnVuXQoKICAgICAgICAgICAgLy9pbnB1dAogICAgICAgICAgICBsZXQgaW5wdXQgPSBkYXRhLmlucHV0CgogICAgICAgICAgICAvL2V4ZWMKICAgICAgICAgICAgYXdhaXQgZnVuKC4uLmlucHV0KQogICAgICAgICAgICAgICAgLnRoZW4oKHN1YykgPT4gewogICAgICAgICAgICAgICAgICAgIHN0YXRlPSdzdWNjZXNzJwogICAgICAgICAgICAgICAgICAgIG1zZz1zdWMKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4gewogICAgICAgICAgICAgICAgICAgIHN0YXRlPSdlcnJvcicKICAgICAgICAgICAgICAgICAgICBtc2c9ZXJyCiAgICAgICAgICAgICAgICB9KQoKICAgICAgICB9CiAgICAgICAgY2F0Y2goZXJyKXsKICAgICAgICAgICAgc3RhdGUgPSAnZXJyb3InCiAgICAgICAgICAgIG1zZyA9IGVycgogICAgICAgIH0KICAgICAgICAKICAgICAgICAvL3NlbmRNZXNzYWdlCiAgICAgICAgbGV0IHJlcyA9IHsKICAgICAgICAgICAgbW9kZTogJ3JldHVybicsCiAgICAgICAgICAgIGlkOiBkYXRhLmlkLAogICAgICAgICAgICBmdW46IGRhdGEuZnVuLAogICAgICAgICAgICBzdGF0ZSwKICAgICAgICAgICAgbXNnLAogICAgICAgIH0KICAgICAgICBzZW5kTWVzc2FnZShyZXMpCgogICAgfQoKfQoKZnVuY3Rpb24gcmVjdk1lc3NhZ2UoZGF0YSkgewogICAgLy8gY29uc29sZS5sb2coJ2lubmVyIHdvcmtlciByZWN2OicsIGRhdGEpCgogICAgLy9kYXRhUmVjdgogICAgbGV0IGRhdGFSZWN2ID0gZGF0YQoKICAgIC8vcnVuCiAgICBydW4oZGF0YVJlY3YpCgp9CgoKICAgICAgICBzZWxmLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgIHJlY3ZNZXNzYWdlKGUuZGF0YSkKICAgICAgICB9CiAgICAgICAgCgo=",DI.Base64.decode("CgoKdmFyIHQ9QXJyYXkuaXNBcnJheSxyPSJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsVGhpcz9nbG9iYWxUaGlzOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzoidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6e307ZnVuY3Rpb24gZSh0KXt2YXIgcj17ZXhwb3J0czp7fX07cmV0dXJuIHQocixyLmV4cG9ydHMpLHIuZXhwb3J0c312YXIgbj0ib2JqZWN0Ij09dHlwZW9mIHImJnImJnIuT2JqZWN0PT09T2JqZWN0JiZyLG89Im9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmJiZzZWxmLk9iamVjdD09PU9iamVjdCYmc2VsZix1PW58fG98fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCksYT11LlN5bWJvbCxpPU9iamVjdC5wcm90b3R5cGUsYz1pLmhhc093blByb3BlcnR5LGY9aS50b1N0cmluZyxsPWE/YS50b1N0cmluZ1RhZzp2b2lkIDA7dmFyIHY9ZnVuY3Rpb24odCl7dmFyIHI9Yy5jYWxsKHQsbCksZT10W2xdO3RyeXt0W2xdPXZvaWQgMDt2YXIgbj0hMH1jYXRjaCh0KXt9dmFyIG89Zi5jYWxsKHQpO3JldHVybiBuJiYocj90W2xdPWU6ZGVsZXRlIHRbbF0pLG99LHM9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzt2YXIgYj1mdW5jdGlvbih0KXtyZXR1cm4gcy5jYWxsKHQpfSxwPWE/YS50b1N0cmluZ1RhZzp2b2lkIDA7dmFyIHk9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwPT09dD8iW29iamVjdCBVbmRlZmluZWRdIjoiW29iamVjdCBOdWxsXSI6cCYmcCBpbiBPYmplY3QodCk/dih0KTpiKHQpfTt2YXIgaD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmIm9iamVjdCI9PXR5cGVvZiB0fTt2YXIgZD1mdW5jdGlvbih0KXtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIHR8fGgodCkmJiJbb2JqZWN0IFN5bWJvbF0iPT15KHQpfSxqPS9cLnxcWyg/OlteW1xdXSp8KFsiJ10pKD86KD8hXDEpW15cXF18XFwuKSo/XDEpXF0vLGc9L15cdyokLzt2YXIgXz1mdW5jdGlvbihyLGUpe2lmKHQocikpcmV0dXJuITE7dmFyIG49dHlwZW9mIHI7cmV0dXJuISgibnVtYmVyIiE9biYmInN5bWJvbCIhPW4mJiJib29sZWFuIiE9biYmbnVsbCE9ciYmIWQocikpfHwoZy50ZXN0KHIpfHwhai50ZXN0KHIpfHxudWxsIT1lJiZyIGluIE9iamVjdChlKSl9O3ZhciBPPWZ1bmN0aW9uKHQpe3ZhciByPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PXJ8fCJmdW5jdGlvbiI9PXIpfTt2YXIgdyxtPWZ1bmN0aW9uKHQpe2lmKCFPKHQpKXJldHVybiExO3ZhciByPXkodCk7cmV0dXJuIltvYmplY3QgRnVuY3Rpb25dIj09cnx8IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09cnx8IltvYmplY3QgQXN5bmNGdW5jdGlvbl0iPT1yfHwiW29iamVjdCBQcm94eV0iPT1yfSxBPXVbIl9fY29yZS1qc19zaGFyZWRfXyJdLFM9KHc9L1teLl0rJC8uZXhlYyhBJiZBLmtleXMmJkEua2V5cy5JRV9QUk9UT3x8IiIpKT8iU3ltYm9sKHNyYylfMS4iK3c6IiI7dmFyIFA9ZnVuY3Rpb24odCl7cmV0dXJuISFTJiZTIGluIHR9LHg9RnVuY3Rpb24ucHJvdG90eXBlLnRvU3RyaW5nO3ZhciB6PWZ1bmN0aW9uKHQpe2lmKG51bGwhPXQpe3RyeXtyZXR1cm4geC5jYWxsKHQpfWNhdGNoKHQpe310cnl7cmV0dXJuIHQrIiJ9Y2F0Y2godCl7fX1yZXR1cm4iIn0sRT0vXlxbb2JqZWN0IC4rP0NvbnN0cnVjdG9yXF0kLyxJPUZ1bmN0aW9uLnByb3RvdHlwZSwkPU9iamVjdC5wcm90b3R5cGUsTj1JLnRvU3RyaW5nLFQ9JC5oYXNPd25Qcm9wZXJ0eSxNPVJlZ0V4cCgiXiIrTi5jYWxsKFQpLnJlcGxhY2UoL1tcXF4kLiorPygpW1xde318XS9nLCJcXCQmIikucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXCgpfCBmb3IgLis/KD89XFxcXSkvZywiJDEuKj8iKSsiJCIpO3ZhciBrPWZ1bmN0aW9uKHQpe3JldHVybiEoIU8odCl8fFAodCkpJiYobSh0KT9NOkUpLnRlc3Qoeih0KSl9O3ZhciBGPWZ1bmN0aW9uKHQscil7cmV0dXJuIG51bGw9PXQ/dm9pZCAwOnRbcl19O3ZhciBDPWZ1bmN0aW9uKHQscil7dmFyIGU9Rih0LHIpO3JldHVybiBrKGUpP2U6dm9pZCAwfSxEPUMoT2JqZWN0LCJjcmVhdGUiKTt2YXIgVT1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189RD9EKG51bGwpOnt9LHRoaXMuc2l6ZT0wfTt2YXIgQj1mdW5jdGlvbih0KXt2YXIgcj10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09cj8xOjAscn0sUj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBMPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX19kYXRhX187aWYoRCl7dmFyIGU9clt0XTtyZXR1cm4iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI9PT1lP3ZvaWQgMDplfXJldHVybiBSLmNhbGwocix0KT9yW3RdOnZvaWQgMH0sVj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBLPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX19kYXRhX187cmV0dXJuIEQ/dm9pZCAwIT09clt0XTpWLmNhbGwocix0KX07dmFyIFc9ZnVuY3Rpb24odCxyKXt2YXIgZT10aGlzLl9fZGF0YV9fO3JldHVybiB0aGlzLnNpemUrPXRoaXMuaGFzKHQpPzA6MSxlW3RdPUQmJnZvaWQgMD09PXI/Il9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iOnIsdGhpc307ZnVuY3Rpb24gcSh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrcjxlOyl7dmFyIG49dFtyXTt0aGlzLnNldChuWzBdLG5bMV0pfX1xLnByb3RvdHlwZS5jbGVhcj1VLHEucHJvdG90eXBlLmRlbGV0ZT1CLHEucHJvdG90eXBlLmdldD1MLHEucHJvdG90eXBlLmhhcz1LLHEucHJvdG90eXBlLnNldD1XO3ZhciBHPXE7dmFyIEg9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPVtdLHRoaXMuc2l6ZT0wfTt2YXIgSj1mdW5jdGlvbih0LHIpe3JldHVybiB0PT09cnx8dCE9dCYmciE9cn07dmFyIFE9ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9dC5sZW5ndGg7ZS0tOylpZihKKHRbZV1bMF0scikpcmV0dXJuIGU7cmV0dXJuLTF9LFg9QXJyYXkucHJvdG90eXBlLnNwbGljZTt2YXIgWT1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9fZGF0YV9fLGU9UShyLHQpO3JldHVybiEoZTwwKSYmKGU9PXIubGVuZ3RoLTE/ci5wb3AoKTpYLmNhbGwocixlLDEpLC0tdGhpcy5zaXplLCEwKX07dmFyIFo9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fX2RhdGFfXyxlPVEocix0KTtyZXR1cm4gZTwwP3ZvaWQgMDpyW2VdWzFdfTt2YXIgdHQ9ZnVuY3Rpb24odCl7cmV0dXJuIFEodGhpcy5fX2RhdGFfXyx0KT4tMX07dmFyIHJ0PWZ1bmN0aW9uKHQscil7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPVEoZSx0KTtyZXR1cm4gbjwwPygrK3RoaXMuc2l6ZSxlLnB1c2goW3Qscl0pKTplW25dWzFdPXIsdGhpc307ZnVuY3Rpb24gZXQodCl7dmFyIHI9LTEsZT1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK3I8ZTspe3ZhciBuPXRbcl07dGhpcy5zZXQoblswXSxuWzFdKX19ZXQucHJvdG90eXBlLmNsZWFyPUgsZXQucHJvdG90eXBlLmRlbGV0ZT1ZLGV0LnByb3RvdHlwZS5nZXQ9WixldC5wcm90b3R5cGUuaGFzPXR0LGV0LnByb3RvdHlwZS5zZXQ9cnQ7dmFyIG50PWV0LG90PUModSwiTWFwIik7dmFyIHV0PWZ1bmN0aW9uKCl7dGhpcy5zaXplPTAsdGhpcy5fX2RhdGFfXz17aGFzaDpuZXcgRyxtYXA6bmV3KG90fHxudCksc3RyaW5nOm5ldyBHfX07dmFyIGF0PWZ1bmN0aW9uKHQpe3ZhciByPXR5cGVvZiB0O3JldHVybiJzdHJpbmciPT1yfHwibnVtYmVyIj09cnx8InN5bWJvbCI9PXJ8fCJib29sZWFuIj09cj8iX19wcm90b19fIiE9PXQ6bnVsbD09PXR9O3ZhciBpdD1mdW5jdGlvbih0LHIpe3ZhciBlPXQuX19kYXRhX187cmV0dXJuIGF0KHIpP2VbInN0cmluZyI9PXR5cGVvZiByPyJzdHJpbmciOiJoYXNoIl06ZS5tYXB9O3ZhciBjdD1mdW5jdGlvbih0KXt2YXIgcj1pdCh0aGlzLHQpLmRlbGV0ZSh0KTtyZXR1cm4gdGhpcy5zaXplLT1yPzE6MCxyfTt2YXIgZnQ9ZnVuY3Rpb24odCl7cmV0dXJuIGl0KHRoaXMsdCkuZ2V0KHQpfTt2YXIgbHQ9ZnVuY3Rpb24odCl7cmV0dXJuIGl0KHRoaXMsdCkuaGFzKHQpfTt2YXIgdnQ9ZnVuY3Rpb24odCxyKXt2YXIgZT1pdCh0aGlzLHQpLG49ZS5zaXplO3JldHVybiBlLnNldCh0LHIpLHRoaXMuc2l6ZSs9ZS5zaXplPT1uPzA6MSx0aGlzfTtmdW5jdGlvbiBzdCh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrcjxlOyl7dmFyIG49dFtyXTt0aGlzLnNldChuWzBdLG5bMV0pfX1zdC5wcm90b3R5cGUuY2xlYXI9dXQsc3QucHJvdG90eXBlLmRlbGV0ZT1jdCxzdC5wcm90b3R5cGUuZ2V0PWZ0LHN0LnByb3RvdHlwZS5oYXM9bHQsc3QucHJvdG90eXBlLnNldD12dDt2YXIgYnQ9c3Q7ZnVuY3Rpb24gcHQodCxyKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdHx8bnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmdW5jdGlvbiIpO3ZhciBlPWZ1bmN0aW9uKCl7dmFyIG49YXJndW1lbnRzLG89cj9yLmFwcGx5KHRoaXMsbik6blswXSx1PWUuY2FjaGU7aWYodS5oYXMobykpcmV0dXJuIHUuZ2V0KG8pO3ZhciBhPXQuYXBwbHkodGhpcyxuKTtyZXR1cm4gZS5jYWNoZT11LnNldChvLGEpfHx1LGF9O3JldHVybiBlLmNhY2hlPW5ldyhwdC5DYWNoZXx8YnQpLGV9cHQuQ2FjaGU9YnQ7dmFyIHl0PXB0O3ZhciBodD0vW14uW1xdXSt8XFsoPzooLT9cZCsoPzpcLlxkKyk/KXwoWyInXSkoKD86KD8hXDIpW15cXF18XFwuKSo/KVwyKVxdfCg/PSg/OlwufFxbXF0pKD86XC58XFtcXXwkKSkvZyxkdD0vXFwoXFwpPy9nLGp0PWZ1bmN0aW9uKHQpe3ZhciByPXl0KHQsKGZ1bmN0aW9uKHQpe3JldHVybiA1MDA9PT1lLnNpemUmJmUuY2xlYXIoKSx0fSkpLGU9ci5jYWNoZTtyZXR1cm4gcn0oKGZ1bmN0aW9uKHQpe3ZhciByPVtdO3JldHVybiA0Nj09PXQuY2hhckNvZGVBdCgwKSYmci5wdXNoKCIiKSx0LnJlcGxhY2UoaHQsKGZ1bmN0aW9uKHQsZSxuLG8pe3IucHVzaChuP28ucmVwbGFjZShkdCwiJDEiKTplfHx0KX0pKSxyfSkpO3ZhciBndD1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aCxvPUFycmF5KG4pOysrZTxuOylvW2VdPXIodFtlXSxlLHQpO3JldHVybiBvfSxfdD1hP2EucHJvdG90eXBlOnZvaWQgMCxPdD1fdD9fdC50b1N0cmluZzp2b2lkIDA7dmFyIHd0PWZ1bmN0aW9uIHIoZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO2lmKHQoZSkpcmV0dXJuIGd0KGUscikrIiI7aWYoZChlKSlyZXR1cm4gT3Q/T3QuY2FsbChlKToiIjt2YXIgbj1lKyIiO3JldHVybiIwIj09biYmMS9lPT0tSW5maW5pdHk/Ii0wIjpufTt2YXIgbXQ9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/IiI6d3QodCl9O3ZhciBBdD1mdW5jdGlvbihyLGUpe3JldHVybiB0KHIpP3I6XyhyLGUpP1tyXTpqdChtdChyKSl9O3ZhciBTdD1mdW5jdGlvbih0KXtpZigic3RyaW5nIj09dHlwZW9mIHR8fGQodCkpcmV0dXJuIHQ7dmFyIHI9dCsiIjtyZXR1cm4iMCI9PXImJjEvdD09LUluZmluaXR5PyItMCI6cn07dmFyIFB0PWZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPTAsbj0ocj1BdChyLHQpKS5sZW5ndGg7bnVsbCE9dCYmZTxuOyl0PXRbU3QocltlKytdKV07cmV0dXJuIGUmJmU9PW4/dDp2b2lkIDB9O3ZhciB4dD1mdW5jdGlvbih0LHIsZSl7dmFyIG49bnVsbD09dD92b2lkIDA6UHQodCxyKTtyZXR1cm4gdm9pZCAwPT09bj9lOm59O2Z1bmN0aW9uIHp0KHQpe3JldHVybiJbb2JqZWN0IFN0cmluZ10iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uIEV0KHQpe3JldHVybiEoIXp0KHQpfHwiIj09PXQpfWZ1bmN0aW9uIEl0KHQpe3JldHVybiJbb2JqZWN0IE9iamVjdF0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uICR0KHQpe2lmKEl0KHQpKXtmb3IobGV0IHIgaW4gdClyZXR1cm4hMDtyZXR1cm4hMX1yZXR1cm4hMX1mdW5jdGlvbiBOdCh0KXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uIFR0KHQpe3JldHVybiEhZnVuY3Rpb24odCl7cmV0dXJuIltvYmplY3QgVW5kZWZpbmVkXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodCl9KHQpfHwoISFmdW5jdGlvbih0KXtyZXR1cm4iW29iamVjdCBOdWxsXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodCl9KHQpfHwoISFmdW5jdGlvbih0KXtpZihJdCh0KSl7Zm9yKGxldCByIGluIHQpcmV0dXJuITE7cmV0dXJuITB9cmV0dXJuITF9KHQpfHwoISFmdW5jdGlvbih0KXtyZXR1cm4hKCF6dCh0KXx8IiIhPT10KX0odCl8fCEhZnVuY3Rpb24odCl7cmV0dXJuISFOdCh0KSYmMD09PXQubGVuZ3RofSh0KSkpKX1mdW5jdGlvbiBNdCh0KXtyZXR1cm4hIU50KHQpJiYoMCE9PXQubGVuZ3RoJiYoMSE9PXQubGVuZ3RofHwhVHQodFswXSkpKX12YXIga3Q9ZnVuY3Rpb24odCl7cmV0dXJuITA9PT10fHwhMT09PXR8fGgodCkmJiJbb2JqZWN0IEJvb2xlYW5dIj09eSh0KX07ZnVuY3Rpb24gRnQodCl7cmV0dXJuIGt0KHQpfXZhciBDdD1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189bmV3IG50LHRoaXMuc2l6ZT0wfTt2YXIgRHQ9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fX2RhdGFfXyxlPXIuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemU9ci5zaXplLGV9O3ZhciBVdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5nZXQodCl9O3ZhciBCdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5oYXModCl9O3ZhciBSdD1mdW5jdGlvbih0LHIpe3ZhciBlPXRoaXMuX19kYXRhX187aWYoZSBpbnN0YW5jZW9mIG50KXt2YXIgbj1lLl9fZGF0YV9fO2lmKCFvdHx8bi5sZW5ndGg8MTk5KXJldHVybiBuLnB1c2goW3Qscl0pLHRoaXMuc2l6ZT0rK2Uuc2l6ZSx0aGlzO2U9dGhpcy5fX2RhdGFfXz1uZXcgYnQobil9cmV0dXJuIGUuc2V0KHQsciksdGhpcy5zaXplPWUuc2l6ZSx0aGlzfTtmdW5jdGlvbiBMdCh0KXt2YXIgcj10aGlzLl9fZGF0YV9fPW5ldyBudCh0KTt0aGlzLnNpemU9ci5zaXplfUx0LnByb3RvdHlwZS5jbGVhcj1DdCxMdC5wcm90b3R5cGUuZGVsZXRlPUR0LEx0LnByb3RvdHlwZS5nZXQ9VXQsTHQucHJvdG90eXBlLmhhcz1CdCxMdC5wcm90b3R5cGUuc2V0PVJ0O3ZhciBWdD1MdDt2YXIgS3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uc2V0KHQsIl9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iKSx0aGlzfTt2YXIgV3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uaGFzKHQpfTtmdW5jdGlvbiBxdCh0KXt2YXIgcj0tMSxlPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5fX2RhdGFfXz1uZXcgYnQ7KytyPGU7KXRoaXMuYWRkKHRbcl0pfXF0LnByb3RvdHlwZS5hZGQ9cXQucHJvdG90eXBlLnB1c2g9S3QscXQucHJvdG90eXBlLmhhcz1XdDt2YXIgR3Q9cXQ7dmFyIEh0PWZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoOysrZTxuOylpZihyKHRbZV0sZSx0KSlyZXR1cm4hMDtyZXR1cm4hMX07dmFyIEp0PWZ1bmN0aW9uKHQscil7cmV0dXJuIHQuaGFzKHIpfTt2YXIgUXQ9ZnVuY3Rpb24odCxyLGUsbixvLHUpe3ZhciBhPTEmZSxpPXQubGVuZ3RoLGM9ci5sZW5ndGg7aWYoaSE9YyYmIShhJiZjPmkpKXJldHVybiExO3ZhciBmPXUuZ2V0KHQpLGw9dS5nZXQocik7aWYoZiYmbClyZXR1cm4gZj09ciYmbD09dDt2YXIgdj0tMSxzPSEwLGI9MiZlP25ldyBHdDp2b2lkIDA7Zm9yKHUuc2V0KHQsciksdS5zZXQocix0KTsrK3Y8aTspe3ZhciBwPXRbdl0seT1yW3ZdO2lmKG4pdmFyIGg9YT9uKHkscCx2LHIsdCx1KTpuKHAseSx2LHQscix1KTtpZih2b2lkIDAhPT1oKXtpZihoKWNvbnRpbnVlO3M9ITE7YnJlYWt9aWYoYil7aWYoIUh0KHIsKGZ1bmN0aW9uKHQscil7aWYoIUp0KGIscikmJihwPT09dHx8byhwLHQsZSxuLHUpKSlyZXR1cm4gYi5wdXNoKHIpfSkpKXtzPSExO2JyZWFrfX1lbHNlIGlmKHAhPT15JiYhbyhwLHksZSxuLHUpKXtzPSExO2JyZWFrfX1yZXR1cm4gdS5kZWxldGUodCksdS5kZWxldGUociksc30sWHQ9dS5VaW50OEFycmF5O3ZhciBZdD1mdW5jdGlvbih0KXt2YXIgcj0tMSxlPUFycmF5KHQuc2l6ZSk7cmV0dXJuIHQuZm9yRWFjaCgoZnVuY3Rpb24odCxuKXtlWysrcl09W24sdF19KSksZX07dmFyIFp0PWZ1bmN0aW9uKHQpe3ZhciByPS0xLGU9QXJyYXkodC5zaXplKTtyZXR1cm4gdC5mb3JFYWNoKChmdW5jdGlvbih0KXtlWysrcl09dH0pKSxlfSx0cj1hP2EucHJvdG90eXBlOnZvaWQgMCxycj10cj90ci52YWx1ZU9mOnZvaWQgMDt2YXIgZXI9ZnVuY3Rpb24odCxyLGUsbixvLHUsYSl7c3dpdGNoKGUpe2Nhc2UiW29iamVjdCBEYXRhVmlld10iOmlmKHQuYnl0ZUxlbmd0aCE9ci5ieXRlTGVuZ3RofHx0LmJ5dGVPZmZzZXQhPXIuYnl0ZU9mZnNldClyZXR1cm4hMTt0PXQuYnVmZmVyLHI9ci5idWZmZXI7Y2FzZSJbb2JqZWN0IEFycmF5QnVmZmVyXSI6cmV0dXJuISh0LmJ5dGVMZW5ndGghPXIuYnl0ZUxlbmd0aHx8IXUobmV3IFh0KHQpLG5ldyBYdChyKSkpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpjYXNlIltvYmplY3QgTnVtYmVyXSI6cmV0dXJuIEooK3QsK3IpO2Nhc2UiW29iamVjdCBFcnJvcl0iOnJldHVybiB0Lm5hbWU9PXIubmFtZSYmdC5tZXNzYWdlPT1yLm1lc3NhZ2U7Y2FzZSJbb2JqZWN0IFJlZ0V4cF0iOmNhc2UiW29iamVjdCBTdHJpbmddIjpyZXR1cm4gdD09cisiIjtjYXNlIltvYmplY3QgTWFwXSI6dmFyIGk9WXQ7Y2FzZSJbb2JqZWN0IFNldF0iOnZhciBjPTEmbjtpZihpfHwoaT1adCksdC5zaXplIT1yLnNpemUmJiFjKXJldHVybiExO3ZhciBmPWEuZ2V0KHQpO2lmKGYpcmV0dXJuIGY9PXI7bnw9MixhLnNldCh0LHIpO3ZhciBsPVF0KGkodCksaShyKSxuLG8sdSxhKTtyZXR1cm4gYS5kZWxldGUodCksbDtjYXNlIltvYmplY3QgU3ltYm9sXSI6aWYocnIpcmV0dXJuIHJyLmNhbGwodCk9PXJyLmNhbGwocil9cmV0dXJuITF9O3ZhciBucj1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPXIubGVuZ3RoLG89dC5sZW5ndGg7KytlPG47KXRbbytlXT1yW2VdO3JldHVybiB0fTt2YXIgb3I9ZnVuY3Rpb24ocixlLG4pe3ZhciBvPWUocik7cmV0dXJuIHQocik/bzpucihvLG4ocikpfTt2YXIgdXI9ZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGgsbz0wLHU9W107KytlPG47KXt2YXIgYT10W2VdO3IoYSxlLHQpJiYodVtvKytdPWEpfXJldHVybiB1fTt2YXIgYXI9ZnVuY3Rpb24oKXtyZXR1cm5bXX0saXI9T2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZSxjcj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzLGZyPWNyP2Z1bmN0aW9uKHQpe3JldHVybiBudWxsPT10P1tdOih0PU9iamVjdCh0KSx1cihjcih0KSwoZnVuY3Rpb24ocil7cmV0dXJuIGlyLmNhbGwodCxyKX0pKSl9OmFyO3ZhciBscj1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPUFycmF5KHQpOysrZTx0OyluW2VdPXIoZSk7cmV0dXJuIG59O3ZhciB2cj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgQXJndW1lbnRzXSI9PXkodCl9LHNyPU9iamVjdC5wcm90b3R5cGUsYnI9c3IuaGFzT3duUHJvcGVydHkscHI9c3IucHJvcGVydHlJc0VudW1lcmFibGUseXI9dnIoZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzfSgpKT92cjpmdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmYnIuY2FsbCh0LCJjYWxsZWUiKSYmIXByLmNhbGwodCwiY2FsbGVlIil9O3ZhciBocj1mdW5jdGlvbigpe3JldHVybiExfSxkcj1lKChmdW5jdGlvbih0LHIpe3ZhciBlPXImJiFyLm5vZGVUeXBlJiZyLG49ZSYmdCYmIXQubm9kZVR5cGUmJnQsbz1uJiZuLmV4cG9ydHM9PT1lP3UuQnVmZmVyOnZvaWQgMCxhPShvP28uaXNCdWZmZXI6dm9pZCAwKXx8aHI7dC5leHBvcnRzPWF9KSksanI9L14oPzowfFsxLTldXGQqKSQvO3ZhciBncj1mdW5jdGlvbih0LHIpe3ZhciBlPXR5cGVvZiB0O3JldHVybiEhKHI9bnVsbD09cj85MDA3MTk5MjU0NzQwOTkxOnIpJiYoIm51bWJlciI9PWV8fCJzeW1ib2wiIT1lJiZqci50ZXN0KHQpKSYmdD4tMSYmdCUxPT0wJiZ0PHJ9O3ZhciBfcj1mdW5jdGlvbih0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQmJnQ+LTEmJnQlMT09MCYmdDw9OTAwNzE5OTI1NDc0MDk5MX0sT3I9e307T3JbIltvYmplY3QgRmxvYXQzMkFycmF5XSJdPU9yWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1PclsiW29iamVjdCBJbnQ4QXJyYXldIl09T3JbIltvYmplY3QgSW50MTZBcnJheV0iXT1PclsiW29iamVjdCBJbnQzMkFycmF5XSJdPU9yWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09T3JbIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIl09T3JbIltvYmplY3QgVWludDE2QXJyYXldIl09T3JbIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsT3JbIltvYmplY3QgQXJndW1lbnRzXSJdPU9yWyJbb2JqZWN0IEFycmF5XSJdPU9yWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPU9yWyJbb2JqZWN0IEJvb2xlYW5dIl09T3JbIltvYmplY3QgRGF0YVZpZXddIl09T3JbIltvYmplY3QgRGF0ZV0iXT1PclsiW29iamVjdCBFcnJvcl0iXT1PclsiW29iamVjdCBGdW5jdGlvbl0iXT1PclsiW29iamVjdCBNYXBdIl09T3JbIltvYmplY3QgTnVtYmVyXSJdPU9yWyJbb2JqZWN0IE9iamVjdF0iXT1PclsiW29iamVjdCBSZWdFeHBdIl09T3JbIltvYmplY3QgU2V0XSJdPU9yWyJbb2JqZWN0IFN0cmluZ10iXT1PclsiW29iamVjdCBXZWFrTWFwXSJdPSExO3ZhciB3cj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmX3IodC5sZW5ndGgpJiYhIU9yW3kodCldfTt2YXIgbXI9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiB0KHIpfX0sQXI9ZSgoZnVuY3Rpb24odCxyKXt2YXIgZT1yJiYhci5ub2RlVHlwZSYmcixvPWUmJnQmJiF0Lm5vZGVUeXBlJiZ0LHU9byYmby5leHBvcnRzPT09ZSYmbi5wcm9jZXNzLGE9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9byYmby5yZXF1aXJlJiZvLnJlcXVpcmUoInV0aWwiKS50eXBlcztyZXR1cm4gdHx8dSYmdS5iaW5kaW5nJiZ1LmJpbmRpbmcoInV0aWwiKX1jYXRjaCh0KXt9fSgpO3QuZXhwb3J0cz1hfSkpLFNyPUFyJiZBci5pc1R5cGVkQXJyYXksUHI9U3I/bXIoU3IpOndyLHhyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIHpyPWZ1bmN0aW9uKHIsZSl7dmFyIG49dChyKSxvPSFuJiZ5cihyKSx1PSFuJiYhbyYmZHIociksYT0hbiYmIW8mJiF1JiZQcihyKSxpPW58fG98fHV8fGEsYz1pP2xyKHIubGVuZ3RoLFN0cmluZyk6W10sZj1jLmxlbmd0aDtmb3IodmFyIGwgaW4gcikhZSYmIXhyLmNhbGwocixsKXx8aSYmKCJsZW5ndGgiPT1sfHx1JiYoIm9mZnNldCI9PWx8fCJwYXJlbnQiPT1sKXx8YSYmKCJidWZmZXIiPT1sfHwiYnl0ZUxlbmd0aCI9PWx8fCJieXRlT2Zmc2V0Ij09bCl8fGdyKGwsZikpfHxjLnB1c2gobCk7cmV0dXJuIGN9LEVyPU9iamVjdC5wcm90b3R5cGU7dmFyIElyPWZ1bmN0aW9uKHQpe3ZhciByPXQmJnQuY29uc3RydWN0b3I7cmV0dXJuIHQ9PT0oImZ1bmN0aW9uIj09dHlwZW9mIHImJnIucHJvdG90eXBlfHxFcil9O3ZhciAkcj1mdW5jdGlvbih0LHIpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdChyKGUpKX19LE5yPSRyKE9iamVjdC5rZXlzLE9iamVjdCksVHI9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt2YXIgTXI9ZnVuY3Rpb24odCl7aWYoIUlyKHQpKXJldHVybiBOcih0KTt2YXIgcj1bXTtmb3IodmFyIGUgaW4gT2JqZWN0KHQpKVRyLmNhbGwodCxlKSYmImNvbnN0cnVjdG9yIiE9ZSYmci5wdXNoKGUpO3JldHVybiByfTt2YXIga3I9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJl9yKHQubGVuZ3RoKSYmIW0odCl9O3ZhciBGcj1mdW5jdGlvbih0KXtyZXR1cm4ga3IodCk/enIodCk6TXIodCl9O3ZhciBDcj1mdW5jdGlvbih0KXtyZXR1cm4gb3IodCxGcixmcil9LERyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIFVyPWZ1bmN0aW9uKHQscixlLG4sbyx1KXt2YXIgYT0xJmUsaT1Dcih0KSxjPWkubGVuZ3RoO2lmKGMhPUNyKHIpLmxlbmd0aCYmIWEpcmV0dXJuITE7Zm9yKHZhciBmPWM7Zi0tOyl7dmFyIGw9aVtmXTtpZighKGE/bCBpbiByOkRyLmNhbGwocixsKSkpcmV0dXJuITF9dmFyIHY9dS5nZXQodCkscz11LmdldChyKTtpZih2JiZzKXJldHVybiB2PT1yJiZzPT10O3ZhciBiPSEwO3Uuc2V0KHQsciksdS5zZXQocix0KTtmb3IodmFyIHA9YTsrK2Y8Yzspe3ZhciB5PXRbbD1pW2ZdXSxoPXJbbF07aWYobil2YXIgZD1hP24oaCx5LGwscix0LHUpOm4oeSxoLGwsdCxyLHUpO2lmKCEodm9pZCAwPT09ZD95PT09aHx8byh5LGgsZSxuLHUpOmQpKXtiPSExO2JyZWFrfXB8fChwPSJjb25zdHJ1Y3RvciI9PWwpfWlmKGImJiFwKXt2YXIgaj10LmNvbnN0cnVjdG9yLGc9ci5jb25zdHJ1Y3RvcjtqPT1nfHwhKCJjb25zdHJ1Y3RvciJpbiB0KXx8ISgiY29uc3RydWN0b3IiaW4gcil8fCJmdW5jdGlvbiI9PXR5cGVvZiBqJiZqIGluc3RhbmNlb2YgaiYmImZ1bmN0aW9uIj09dHlwZW9mIGcmJmcgaW5zdGFuY2VvZiBnfHwoYj0hMSl9cmV0dXJuIHUuZGVsZXRlKHQpLHUuZGVsZXRlKHIpLGJ9LEJyPUModSwiRGF0YVZpZXciKSxScj1DKHUsIlByb21pc2UiKSxMcj1DKHUsIlNldCIpLFZyPUModSwiV2Vha01hcCIpLEtyPXooQnIpLFdyPXoob3QpLHFyPXooUnIpLEdyPXooTHIpLEhyPXooVnIpLEpyPXk7KEJyJiYiW29iamVjdCBEYXRhVmlld10iIT1KcihuZXcgQnIobmV3IEFycmF5QnVmZmVyKDEpKSl8fG90JiYiW29iamVjdCBNYXBdIiE9SnIobmV3IG90KXx8UnImJiJbb2JqZWN0IFByb21pc2VdIiE9SnIoUnIucmVzb2x2ZSgpKXx8THImJiJbb2JqZWN0IFNldF0iIT1KcihuZXcgTHIpfHxWciYmIltvYmplY3QgV2Vha01hcF0iIT1KcihuZXcgVnIpKSYmKEpyPWZ1bmN0aW9uKHQpe3ZhciByPXkodCksZT0iW29iamVjdCBPYmplY3RdIj09cj90LmNvbnN0cnVjdG9yOnZvaWQgMCxuPWU/eihlKToiIjtpZihuKXN3aXRjaChuKXtjYXNlIEtyOnJldHVybiJbb2JqZWN0IERhdGFWaWV3XSI7Y2FzZSBXcjpyZXR1cm4iW29iamVjdCBNYXBdIjtjYXNlIHFyOnJldHVybiJbb2JqZWN0IFByb21pc2VdIjtjYXNlIEdyOnJldHVybiJbb2JqZWN0IFNldF0iO2Nhc2UgSHI6cmV0dXJuIltvYmplY3QgV2Vha01hcF0ifXJldHVybiByfSk7dmFyIFFyPUpyLFhyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIFlyPWZ1bmN0aW9uKHIsZSxuLG8sdSxhKXt2YXIgaT10KHIpLGM9dChlKSxmPWk/IltvYmplY3QgQXJyYXldIjpRcihyKSxsPWM/IltvYmplY3QgQXJyYXldIjpRcihlKSx2PSJbb2JqZWN0IE9iamVjdF0iPT0oZj0iW29iamVjdCBBcmd1bWVudHNdIj09Zj8iW29iamVjdCBPYmplY3RdIjpmKSxzPSJbb2JqZWN0IE9iamVjdF0iPT0obD0iW29iamVjdCBBcmd1bWVudHNdIj09bD8iW29iamVjdCBPYmplY3RdIjpsKSxiPWY9PWw7aWYoYiYmZHIocikpe2lmKCFkcihlKSlyZXR1cm4hMTtpPSEwLHY9ITF9aWYoYiYmIXYpcmV0dXJuIGF8fChhPW5ldyBWdCksaXx8UHIocik/UXQocixlLG4sbyx1LGEpOmVyKHIsZSxmLG4sbyx1LGEpO2lmKCEoMSZuKSl7dmFyIHA9diYmWHIuY2FsbChyLCJfX3dyYXBwZWRfXyIpLHk9cyYmWHIuY2FsbChlLCJfX3dyYXBwZWRfXyIpO2lmKHB8fHkpe3ZhciBoPXA/ci52YWx1ZSgpOnIsZD15P2UudmFsdWUoKTplO3JldHVybiBhfHwoYT1uZXcgVnQpLHUoaCxkLG4sbyxhKX19cmV0dXJuISFiJiYoYXx8KGE9bmV3IFZ0KSxVcihyLGUsbixvLHUsYSkpfTt2YXIgWnI9ZnVuY3Rpb24gdChyLGUsbixvLHUpe3JldHVybiByPT09ZXx8KG51bGw9PXJ8fG51bGw9PWV8fCFoKHIpJiYhaChlKT9yIT1yJiZlIT1lOllyKHIsZSxuLG8sdCx1KSl9O3ZhciB0ZT1mdW5jdGlvbih0LHIsZSxuKXt2YXIgbz1lLmxlbmd0aCx1PW8sYT0hbjtpZihudWxsPT10KXJldHVybiF1O2Zvcih0PU9iamVjdCh0KTtvLS07KXt2YXIgaT1lW29dO2lmKGEmJmlbMl0/aVsxXSE9PXRbaVswXV06IShpWzBdaW4gdCkpcmV0dXJuITF9Zm9yKDsrK288dTspe3ZhciBjPShpPWVbb10pWzBdLGY9dFtjXSxsPWlbMV07aWYoYSYmaVsyXSl7aWYodm9pZCAwPT09ZiYmIShjIGluIHQpKXJldHVybiExfWVsc2V7dmFyIHY9bmV3IFZ0O2lmKG4pdmFyIHM9bihmLGwsYyx0LHIsdik7aWYoISh2b2lkIDA9PT1zP1pyKGwsZiwzLG4sdik6cykpcmV0dXJuITF9fXJldHVybiEwfTt2YXIgcmU9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PXQmJiFPKHQpfTt2YXIgZWU9ZnVuY3Rpb24odCl7Zm9yKHZhciByPUZyKHQpLGU9ci5sZW5ndGg7ZS0tOyl7dmFyIG49cltlXSxvPXRbbl07cltlXT1bbixvLHJlKG8pXX1yZXR1cm4gcn07dmFyIG5lPWZ1bmN0aW9uKHQscil7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiYoZVt0XT09PXImJih2b2lkIDAhPT1yfHx0IGluIE9iamVjdChlKSkpfX07dmFyIG9lPWZ1bmN0aW9uKHQpe3ZhciByPWVlKHQpO3JldHVybiAxPT1yLmxlbmd0aCYmclswXVsyXT9uZShyWzBdWzBdLHJbMF1bMV0pOmZ1bmN0aW9uKGUpe3JldHVybiBlPT09dHx8dGUoZSx0LHIpfX07dmFyIHVlPWZ1bmN0aW9uKHQscil7cmV0dXJuIG51bGwhPXQmJnIgaW4gT2JqZWN0KHQpfTt2YXIgYWU9ZnVuY3Rpb24ocixlLG4pe2Zvcih2YXIgbz0tMSx1PShlPUF0KGUscikpLmxlbmd0aCxhPSExOysrbzx1Oyl7dmFyIGk9U3QoZVtvXSk7aWYoIShhPW51bGwhPXImJm4ocixpKSkpYnJlYWs7cj1yW2ldfXJldHVybiBhfHwrK28hPXU/YTohISh1PW51bGw9PXI/MDpyLmxlbmd0aCkmJl9yKHUpJiZncihpLHUpJiYodChyKXx8eXIocikpfTt2YXIgaWU9ZnVuY3Rpb24odCxyKXtyZXR1cm4gbnVsbCE9dCYmYWUodCxyLHVlKX07dmFyIGNlPWZ1bmN0aW9uKHQscil7cmV0dXJuIF8odCkmJnJlKHIpP25lKFN0KHQpLHIpOmZ1bmN0aW9uKGUpe3ZhciBuPXh0KGUsdCk7cmV0dXJuIHZvaWQgMD09PW4mJm49PT1yP2llKGUsdCk6WnIocixuLDMpfX07dmFyIGZlPWZ1bmN0aW9uKHQpe3JldHVybiB0fTt2YXIgbGU9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiBudWxsPT1yP3ZvaWQgMDpyW3RdfX07dmFyIHZlPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihyKXtyZXR1cm4gUHQocix0KX19O3ZhciBzZT1mdW5jdGlvbih0KXtyZXR1cm4gXyh0KT9sZShTdCh0KSk6dmUodCl9O3ZhciBiZT1mdW5jdGlvbihyKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygcj9yOm51bGw9PXI/ZmU6Im9iamVjdCI9PXR5cGVvZiByP3Qocik/Y2UoclswXSxyWzFdKTpvZShyKTpzZShyKX07dmFyIHBlPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihyLGUsbil7Zm9yKHZhciBvPS0xLHU9T2JqZWN0KHIpLGE9bihyKSxpPWEubGVuZ3RoO2ktLTspe3ZhciBjPWFbdD9pOisrb107aWYoITE9PT1lKHVbY10sYyx1KSlicmVha31yZXR1cm4gcn19KCk7dmFyIHllPWZ1bmN0aW9uKHQscil7cmV0dXJuIGZ1bmN0aW9uKGUsbil7aWYobnVsbD09ZSlyZXR1cm4gZTtpZigha3IoZSkpcmV0dXJuIHQoZSxuKTtmb3IodmFyIG89ZS5sZW5ndGgsdT1yP286LTEsYT1PYmplY3QoZSk7KHI/dS0tOisrdTxvKSYmITEhPT1uKGFbdV0sdSxhKTspO3JldHVybiBlfX0oKGZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJnBlKHQscixGcil9KSk7dmFyIGhlPWZ1bmN0aW9uKHQscil7dmFyIGU9LTEsbj1rcih0KT9BcnJheSh0Lmxlbmd0aCk6W107cmV0dXJuIHllKHQsKGZ1bmN0aW9uKHQsbyx1KXtuWysrZV09cih0LG8sdSl9KSksbn07dmFyIGRlPWZ1bmN0aW9uKHIsZSl7cmV0dXJuKHQocik/Z3Q6aGUpKHIsYmUoZSkpfSxqZT1BcnJheS5wcm90b3R5cGUuam9pbjt2YXIgZ2U9ZnVuY3Rpb24odCxyKXtyZXR1cm4gbnVsbD09dD8iIjpqZS5jYWxsKHQscil9O3ZhciBfZT1mdW5jdGlvbihyKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHJ8fCF0KHIpJiZoKHIpJiYiW29iamVjdCBTdHJpbmddIj09eShyKX0sT2U9bGUoImxlbmd0aCIpLHdlPVJlZ0V4cCgiW1xcdTIwMGRcXHVkODAwLVxcdWRmZmZcXHUwMzAwLVxcdTAzNmZcXHVmZTIwLVxcdWZlMmZcXHUyMGQwLVxcdTIwZmZcXHVmZTBlXFx1ZmUwZl0iKTt2YXIgbWU9ZnVuY3Rpb24odCl7cmV0dXJuIHdlLnRlc3QodCl9LEFlPSJbXFx1ZDgwMC1cXHVkZmZmXSIsU2U9IltcXHUwMzAwLVxcdTAzNmZcXHVmZTIwLVxcdWZlMmZcXHUyMGQwLVxcdTIwZmZdIixQZT0iXFx1ZDgzY1tcXHVkZmZiLVxcdWRmZmZdIix4ZT0iW15cXHVkODAwLVxcdWRmZmZdIix6ZT0iKD86XFx1ZDgzY1tcXHVkZGU2LVxcdWRkZmZdKXsyfSIsRWU9IltcXHVkODAwLVxcdWRiZmZdW1xcdWRjMDAtXFx1ZGZmZl0iLEllPSIoPzoiK1NlKyJ8IitQZSsiKSIrIj8iLCRlPSJbXFx1ZmUwZVxcdWZlMGZdPyIrSWUrKCIoPzpcXHUyMDBkKD86IitbeGUsemUsRWVdLmpvaW4oInwiKSsiKVtcXHVmZTBlXFx1ZmUwZl0/IitJZSsiKSoiKSxOZT0iKD86IitbeGUrU2UrIj8iLFNlLHplLEVlLEFlXS5qb2luKCJ8IikrIikiLFRlPVJlZ0V4cChQZSsiKD89IitQZSsiKXwiK05lKyRlLCJnIik7dmFyIE1lPWZ1bmN0aW9uKHQpe2Zvcih2YXIgcj1UZS5sYXN0SW5kZXg9MDtUZS50ZXN0KHQpOykrK3I7cmV0dXJuIHJ9O3ZhciBrZT1mdW5jdGlvbih0KXtyZXR1cm4gbWUodCk/TWUodCk6T2UodCl9O3ZhciBGZT1mdW5jdGlvbih0KXtpZihudWxsPT10KXJldHVybiAwO2lmKGtyKHQpKXJldHVybiBfZSh0KT9rZSh0KTp0Lmxlbmd0aDt2YXIgcj1Rcih0KTtyZXR1cm4iW29iamVjdCBNYXBdIj09cnx8IltvYmplY3QgU2V0XSI9PXI/dC5zaXplOk1yKHQpLmxlbmd0aH07dmFyIENlPWZ1bmN0aW9uKHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdHx8aCh0KSYmIltvYmplY3QgTnVtYmVyXSI9PXkodCl9O3ZhciBEZT1mdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK2U8biYmITEhPT1yKHRbZV0sZSx0KTspO3JldHVybiB0fSxVZT1mdW5jdGlvbigpe3RyeXt2YXIgdD1DKE9iamVjdCwiZGVmaW5lUHJvcGVydHkiKTtyZXR1cm4gdCh7fSwiIix7fSksdH1jYXRjaCh0KXt9fSgpO3ZhciBCZT1mdW5jdGlvbih0LHIsZSl7Il9fcHJvdG9fXyI9PXImJlVlP1VlKHQscix7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsdmFsdWU6ZSx3cml0YWJsZTohMH0pOnRbcl09ZX0sUmU9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt2YXIgTGU9ZnVuY3Rpb24odCxyLGUpe3ZhciBuPXRbcl07UmUuY2FsbCh0LHIpJiZKKG4sZSkmJih2b2lkIDAhPT1lfHxyIGluIHQpfHxCZSh0LHIsZSl9O3ZhciBWZT1mdW5jdGlvbih0LHIsZSxuKXt2YXIgbz0hZTtlfHwoZT17fSk7Zm9yKHZhciB1PS0xLGE9ci5sZW5ndGg7Kyt1PGE7KXt2YXIgaT1yW3VdLGM9bj9uKGVbaV0sdFtpXSxpLGUsdCk6dm9pZCAwO3ZvaWQgMD09PWMmJihjPXRbaV0pLG8/QmUoZSxpLGMpOkxlKGUsaSxjKX1yZXR1cm4gZX07dmFyIEtlPWZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJlZlKHIsRnIociksdCl9O3ZhciBXZT1mdW5jdGlvbih0KXt2YXIgcj1bXTtpZihudWxsIT10KWZvcih2YXIgZSBpbiBPYmplY3QodCkpci5wdXNoKGUpO3JldHVybiByfSxxZT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBHZT1mdW5jdGlvbih0KXtpZighTyh0KSlyZXR1cm4gV2UodCk7dmFyIHI9SXIodCksZT1bXTtmb3IodmFyIG4gaW4gdCkoImNvbnN0cnVjdG9yIiE9bnx8IXImJnFlLmNhbGwodCxuKSkmJmUucHVzaChuKTtyZXR1cm4gZX07dmFyIEhlPWZ1bmN0aW9uKHQpe3JldHVybiBrcih0KT96cih0LCEwKTpHZSh0KX07dmFyIEplPWZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJlZlKHIsSGUociksdCl9LFFlPWUoKGZ1bmN0aW9uKHQscil7dmFyIGU9ciYmIXIubm9kZVR5cGUmJnIsbj1lJiZ0JiYhdC5ub2RlVHlwZSYmdCxvPW4mJm4uZXhwb3J0cz09PWU/dS5CdWZmZXI6dm9pZCAwLGE9bz9vLmFsbG9jVW5zYWZlOnZvaWQgMDt0LmV4cG9ydHM9ZnVuY3Rpb24odCxyKXtpZihyKXJldHVybiB0LnNsaWNlKCk7dmFyIGU9dC5sZW5ndGgsbj1hP2EoZSk6bmV3IHQuY29uc3RydWN0b3IoZSk7cmV0dXJuIHQuY29weShuKSxufX0pKTt2YXIgWGU9ZnVuY3Rpb24odCxyKXt2YXIgZT0tMSxuPXQubGVuZ3RoO2ZvcihyfHwocj1BcnJheShuKSk7KytlPG47KXJbZV09dFtlXTtyZXR1cm4gcn07dmFyIFllPWZ1bmN0aW9uKHQscil7cmV0dXJuIFZlKHQsZnIodCkscil9LFplPSRyKE9iamVjdC5nZXRQcm90b3R5cGVPZixPYmplY3QpLHRuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM/ZnVuY3Rpb24odCl7Zm9yKHZhciByPVtdO3Q7KW5yKHIsZnIodCkpLHQ9WmUodCk7cmV0dXJuIHJ9OmFyO3ZhciBybj1mdW5jdGlvbih0LHIpe3JldHVybiBWZSh0LHRuKHQpLHIpfTt2YXIgZW49ZnVuY3Rpb24odCl7cmV0dXJuIG9yKHQsSGUsdG4pfSxubj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciBvbj1mdW5jdGlvbih0KXt2YXIgcj10Lmxlbmd0aCxlPW5ldyB0LmNvbnN0cnVjdG9yKHIpO3JldHVybiByJiYic3RyaW5nIj09dHlwZW9mIHRbMF0mJm5uLmNhbGwodCwiaW5kZXgiKSYmKGUuaW5kZXg9dC5pbmRleCxlLmlucHV0PXQuaW5wdXQpLGV9O3ZhciB1bj1mdW5jdGlvbih0KXt2YXIgcj1uZXcgdC5jb25zdHJ1Y3Rvcih0LmJ5dGVMZW5ndGgpO3JldHVybiBuZXcgWHQocikuc2V0KG5ldyBYdCh0KSkscn07dmFyIGFuPWZ1bmN0aW9uKHQscil7dmFyIGU9cj91bih0LmJ1ZmZlcik6dC5idWZmZXI7cmV0dXJuIG5ldyB0LmNvbnN0cnVjdG9yKGUsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCl9LGNuPS9cdyokLzt2YXIgZm49ZnVuY3Rpb24odCl7dmFyIHI9bmV3IHQuY29uc3RydWN0b3IodC5zb3VyY2UsY24uZXhlYyh0KSk7cmV0dXJuIHIubGFzdEluZGV4PXQubGFzdEluZGV4LHJ9LGxuPWE/YS5wcm90b3R5cGU6dm9pZCAwLHZuPWxuP2xuLnZhbHVlT2Y6dm9pZCAwO3ZhciBzbj1mdW5jdGlvbih0KXtyZXR1cm4gdm4/T2JqZWN0KHZuLmNhbGwodCkpOnt9fTt2YXIgYm49ZnVuY3Rpb24odCxyKXt2YXIgZT1yP3VuKHQuYnVmZmVyKTp0LmJ1ZmZlcjtyZXR1cm4gbmV3IHQuY29uc3RydWN0b3IoZSx0LmJ5dGVPZmZzZXQsdC5sZW5ndGgpfTt2YXIgcG49ZnVuY3Rpb24odCxyLGUpe3ZhciBuPXQuY29uc3RydWN0b3I7c3dpdGNoKHIpe2Nhc2UiW29iamVjdCBBcnJheUJ1ZmZlcl0iOnJldHVybiB1bih0KTtjYXNlIltvYmplY3QgQm9vbGVhbl0iOmNhc2UiW29iamVjdCBEYXRlXSI6cmV0dXJuIG5ldyBuKCt0KTtjYXNlIltvYmplY3QgRGF0YVZpZXddIjpyZXR1cm4gYW4odCxlKTtjYXNlIltvYmplY3QgRmxvYXQzMkFycmF5XSI6Y2FzZSJbb2JqZWN0IEZsb2F0NjRBcnJheV0iOmNhc2UiW29iamVjdCBJbnQ4QXJyYXldIjpjYXNlIltvYmplY3QgSW50MTZBcnJheV0iOmNhc2UiW29iamVjdCBJbnQzMkFycmF5XSI6Y2FzZSJbb2JqZWN0IFVpbnQ4QXJyYXldIjpjYXNlIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIjpjYXNlIltvYmplY3QgVWludDE2QXJyYXldIjpjYXNlIltvYmplY3QgVWludDMyQXJyYXldIjpyZXR1cm4gYm4odCxlKTtjYXNlIltvYmplY3QgTWFwXSI6cmV0dXJuIG5ldyBuO2Nhc2UiW29iamVjdCBOdW1iZXJdIjpjYXNlIltvYmplY3QgU3RyaW5nXSI6cmV0dXJuIG5ldyBuKHQpO2Nhc2UiW29iamVjdCBSZWdFeHBdIjpyZXR1cm4gZm4odCk7Y2FzZSJbb2JqZWN0IFNldF0iOnJldHVybiBuZXcgbjtjYXNlIltvYmplY3QgU3ltYm9sXSI6cmV0dXJuIHNuKHQpfX0seW49T2JqZWN0LmNyZWF0ZSxobj1mdW5jdGlvbigpe2Z1bmN0aW9uIHQoKXt9cmV0dXJuIGZ1bmN0aW9uKHIpe2lmKCFPKHIpKXJldHVybnt9O2lmKHluKXJldHVybiB5bihyKTt0LnByb3RvdHlwZT1yO3ZhciBlPW5ldyB0O3JldHVybiB0LnByb3RvdHlwZT12b2lkIDAsZX19KCk7dmFyIGRuPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiIhPXR5cGVvZiB0LmNvbnN0cnVjdG9yfHxJcih0KT97fTpobihaZSh0KSl9O3ZhciBqbj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgTWFwXSI9PVFyKHQpfSxnbj1BciYmQXIuaXNNYXAsX249Z24/bXIoZ24pOmpuO3ZhciBPbj1mdW5jdGlvbih0KXtyZXR1cm4gaCh0KSYmIltvYmplY3QgU2V0XSI9PVFyKHQpfSx3bj1BciYmQXIuaXNTZXQsbW49d24/bXIod24pOk9uLEFuPXt9O0FuWyJbb2JqZWN0IEFyZ3VtZW50c10iXT1BblsiW29iamVjdCBBcnJheV0iXT1BblsiW29iamVjdCBBcnJheUJ1ZmZlcl0iXT1BblsiW29iamVjdCBEYXRhVmlld10iXT1BblsiW29iamVjdCBCb29sZWFuXSJdPUFuWyJbb2JqZWN0IERhdGVdIl09QW5bIltvYmplY3QgRmxvYXQzMkFycmF5XSJdPUFuWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1BblsiW29iamVjdCBJbnQ4QXJyYXldIl09QW5bIltvYmplY3QgSW50MTZBcnJheV0iXT1BblsiW29iamVjdCBJbnQzMkFycmF5XSJdPUFuWyJbb2JqZWN0IE1hcF0iXT1BblsiW29iamVjdCBOdW1iZXJdIl09QW5bIltvYmplY3QgT2JqZWN0XSJdPUFuWyJbb2JqZWN0IFJlZ0V4cF0iXT1BblsiW29iamVjdCBTZXRdIl09QW5bIltvYmplY3QgU3RyaW5nXSJdPUFuWyJbb2JqZWN0IFN5bWJvbF0iXT1BblsiW29iamVjdCBVaW50OEFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQxNkFycmF5XSJdPUFuWyJbb2JqZWN0IFVpbnQzMkFycmF5XSJdPSEwLEFuWyJbb2JqZWN0IEVycm9yXSJdPUFuWyJbb2JqZWN0IEZ1bmN0aW9uXSJdPUFuWyJbb2JqZWN0IFdlYWtNYXBdIl09ITE7dmFyIFNuPWZ1bmN0aW9uIHIoZSxuLG8sdSxhLGkpe3ZhciBjLGY9MSZuLGw9MiZuLHY9NCZuO2lmKG8mJihjPWE/byhlLHUsYSxpKTpvKGUpKSx2b2lkIDAhPT1jKXJldHVybiBjO2lmKCFPKGUpKXJldHVybiBlO3ZhciBzPXQoZSk7aWYocyl7aWYoYz1vbihlKSwhZilyZXR1cm4gWGUoZSxjKX1lbHNle3ZhciBiPVFyKGUpLHA9IltvYmplY3QgRnVuY3Rpb25dIj09Ynx8IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09YjtpZihkcihlKSlyZXR1cm4gUWUoZSxmKTtpZigiW29iamVjdCBPYmplY3RdIj09Ynx8IltvYmplY3QgQXJndW1lbnRzXSI9PWJ8fHAmJiFhKXtpZihjPWx8fHA/e306ZG4oZSksIWYpcmV0dXJuIGw/cm4oZSxKZShjLGUpKTpZZShlLEtlKGMsZSkpfWVsc2V7aWYoIUFuW2JdKXJldHVybiBhP2U6e307Yz1wbihlLGIsZil9fWl8fChpPW5ldyBWdCk7dmFyIHk9aS5nZXQoZSk7aWYoeSlyZXR1cm4geTtpLnNldChlLGMpLG1uKGUpP2UuZm9yRWFjaCgoZnVuY3Rpb24odCl7Yy5hZGQocih0LG4sbyx0LGUsaSkpfSkpOl9uKGUpJiZlLmZvckVhY2goKGZ1bmN0aW9uKHQsdSl7Yy5zZXQodSxyKHQsbixvLHUsZSxpKSl9KSk7dmFyIGg9cz92b2lkIDA6KHY/bD9lbjpDcjpsP0hlOkZyKShlKTtyZXR1cm4gRGUoaHx8ZSwoZnVuY3Rpb24odCx1KXtoJiYodD1lW3U9dF0pLExlKGMsdSxyKHQsbixvLHUsZSxpKSl9KSksY307dmFyIFBuPWZ1bmN0aW9uKHQpe3JldHVybiBTbih0LDUpfTtmdW5jdGlvbiB4bih0KXtsZXQgcj0hMTtyZXR1cm4gRXQodCk/cj0haXNOYU4oTnVtYmVyKHQpKTpmdW5jdGlvbih0KXtyZXR1cm4iW29iamVjdCBOdW1iZXJdIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX0odCkmJihyPSEwKSxyfWZ1bmN0aW9uIHpuKHQpe2lmKCFFdCh0KSYmIXhuKHQpJiYhZCh0KSlyZXR1cm4iIjtsZXQgcj0iIjt0cnl7cj1TdHJpbmcodCl9Y2F0Y2godCl7fXRyeXtyPXQudG9TdHJpbmcoKX1jYXRjaCh0KXt9cmV0dXJuIHJ9dmFyIEVuPU1hdGguY2VpbCxJbj1NYXRoLm1heDt2YXIgJG49ZnVuY3Rpb24odCxyLGUsbil7Zm9yKHZhciBvPS0xLHU9SW4oRW4oKHItdCkvKGV8fDEpKSwwKSxhPUFycmF5KHUpO3UtLTspYVtuP3U6KytvXT10LHQrPWU7cmV0dXJuIGF9O3ZhciBObj1mdW5jdGlvbih0LHIsZSl7aWYoIU8oZSkpcmV0dXJuITE7dmFyIG49dHlwZW9mIHI7cmV0dXJuISEoIm51bWJlciI9PW4/a3IoZSkmJmdyKHIsZS5sZW5ndGgpOiJzdHJpbmciPT1uJiZyIGluIGUpJiZKKGVbcl0sdCl9LFRuPS9ccy87dmFyIE1uPWZ1bmN0aW9uKHQpe2Zvcih2YXIgcj10Lmxlbmd0aDtyLS0mJlRuLnRlc3QodC5jaGFyQXQocikpOyk7cmV0dXJuIHJ9LGtuPS9eXHMrLzt2YXIgRm49ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC5zbGljZSgwLE1uKHQpKzEpLnJlcGxhY2Uoa24sIiIpOnR9LENuPS9eWy0rXTB4WzAtOWEtZl0rJC9pLERuPS9eMGJbMDFdKyQvaSxVbj0vXjBvWzAtN10rJC9pLEJuPXBhcnNlSW50O3ZhciBSbj1mdW5jdGlvbih0KXtpZigibnVtYmVyIj09dHlwZW9mIHQpcmV0dXJuIHQ7aWYoZCh0KSlyZXR1cm4gTmFOO2lmKE8odCkpe3ZhciByPSJmdW5jdGlvbiI9PXR5cGVvZiB0LnZhbHVlT2Y/dC52YWx1ZU9mKCk6dDt0PU8ocik/cisiIjpyfWlmKCJzdHJpbmciIT10eXBlb2YgdClyZXR1cm4gMD09PXQ/dDordDt0PUZuKHQpO3ZhciBlPURuLnRlc3QodCk7cmV0dXJuIGV8fFVuLnRlc3QodCk/Qm4odC5zbGljZSgyKSxlPzI6OCk6Q24udGVzdCh0KT9OYU46K3R9O3ZhciBMbj1mdW5jdGlvbih0KXtyZXR1cm4gdD9JbmZpbml0eT09PSh0PVJuKHQpKXx8LUluZmluaXR5PT09dD8xNzk3NjkzMTM0ODYyMzE1N2UyOTIqKHQ8MD8tMToxKTp0PT10P3Q6MDowPT09dD90OjB9O3ZhciBWbj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24ocixlLG4pe3JldHVybiBuJiYibnVtYmVyIiE9dHlwZW9mIG4mJk5uKHIsZSxuKSYmKGU9bj12b2lkIDApLHI9TG4ociksdm9pZCAwPT09ZT8oZT1yLHI9MCk6ZT1MbihlKSxuPXZvaWQgMD09PW4/cjxlPzE6LTE6TG4obiksJG4ocixlLG4sdCl9fSgpO2Z1bmN0aW9uIEtuKHQscj1udWxsLGU9e30pe20ocil8fChyPXQ9PnQpO2xldCBuPXh0KGUsImZvcmNlIiwhMSk7cmV0dXJuIEZ0KG4pfHwobj0hMSksZnVuY3Rpb24odCxyLGU9ITEpe2xldCBuPVtdO2lmKCFOdCh0KSYmIUl0KHQpKXJldHVybiByKHQsbnVsbCxbXSk7ZnVuY3Rpb24gbyh0KXtpZihOdCh0KSlyZXR1cm4gVm4oRmUodCkpO2lmKEl0KHQpKXtsZXQgcj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0KSxuPW51bGw7cmV0dXJuIGUmJihuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpLE50KHIpfHwocj1bXSksTnQobil8fChuPVtdKSxbLi4uciwuLi5uXX1yZXR1cm4gdH1yZXR1cm4gZnVuY3Rpb24gdChlLHUpe2lmKE50KGUpKXJldHVybiBvKGUpLm1hcCgobz0+e2xldCB1PWVbb10sYT1QbihuKTtyZXR1cm4gbi5wdXNoKG8pLHU9cih1LG8sYSksdT10KHUpLG4ucG9wKCksdX0pKTtpZihJdChlKSl7bGV0IHU9byhlKSxhPXt9O3JldHVybiB1Lm1hcCgobz0+e2xldCB1PWVbb10saT1QbihuKTtuLnB1c2gobyksdT1yKHUsbyxpKSx1PXQodSksbi5wb3AoKSxhW29dPXV9KSksYX1yZXR1cm4gZX0odCl9KHQscixuKX1mdW5jdGlvbiBXbih0LHIsZSl7cmV0dXJuIHIgaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxyLHt2YWx1ZTplLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtyXT1lLHR9dmFyIHFuPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3Q6ZmV9O3ZhciBHbj1mdW5jdGlvbihyLGUpe3JldHVybih0KHIpP0RlOnllKShyLHFuKGUpKX07dmFyIEhuPWZ1bmN0aW9uKHQscixlLG4pe2lmKCFPKHQpKXJldHVybiB0O2Zvcih2YXIgbz0tMSx1PShyPUF0KHIsdCkpLmxlbmd0aCxhPXUtMSxpPXQ7bnVsbCE9aSYmKytvPHU7KXt2YXIgYz1TdChyW29dKSxmPWU7aWYoIl9fcHJvdG9fXyI9PT1jfHwiY29uc3RydWN0b3IiPT09Y3x8InByb3RvdHlwZSI9PT1jKXJldHVybiB0O2lmKG8hPWEpe3ZhciBsPWlbY107dm9pZCAwPT09KGY9bj9uKGwsYyxpKTp2b2lkIDApJiYoZj1PKGwpP2w6Z3IocltvKzFdKT9bXTp7fSl9TGUoaSxjLGYpLGk9aVtjXX1yZXR1cm4gdH07dmFyIEpuPWZ1bmN0aW9uKHQscixlKXtyZXR1cm4gbnVsbD09dD90OkhuKHQscixlKX07dmFyIFFuPWZ1bmN0aW9uKHQpe3ZhciByPW51bGw9PXQ/MDp0Lmxlbmd0aDtyZXR1cm4gcj90W3ItMV06dm9pZCAwfTt2YXIgWG49ZnVuY3Rpb24odCxyLGUpe3ZhciBuPS0xLG89dC5sZW5ndGg7cjwwJiYocj0tcj5vPzA6bytyKSwoZT1lPm8/bzplKTwwJiYoZSs9byksbz1yPmU/MDplLXI+Pj4wLHI+Pj49MDtmb3IodmFyIHU9QXJyYXkobyk7KytuPG87KXVbbl09dFtuK3JdO3JldHVybiB1fTt2YXIgWW49ZnVuY3Rpb24odCxyKXtyZXR1cm4gci5sZW5ndGg8Mj90OlB0KHQsWG4ociwwLC0xKSl9O3ZhciBabj1mdW5jdGlvbih0LHIpe3JldHVybiByPUF0KHIsdCksbnVsbD09KHQ9WW4odCxyKSl8fGRlbGV0ZSB0W1N0KFFuKHIpKV19LHRvPUZ1bmN0aW9uLnByb3RvdHlwZSxybz1PYmplY3QucHJvdG90eXBlLGVvPXRvLnRvU3RyaW5nLG5vPXJvLmhhc093blByb3BlcnR5LG9vPWVvLmNhbGwoT2JqZWN0KTt2YXIgdW89ZnVuY3Rpb24odCl7aWYoIWgodCl8fCJbb2JqZWN0IE9iamVjdF0iIT15KHQpKXJldHVybiExO3ZhciByPVplKHQpO2lmKG51bGw9PT1yKXJldHVybiEwO3ZhciBlPW5vLmNhbGwociwiY29uc3RydWN0b3IiKSYmci5jb25zdHJ1Y3RvcjtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmZSBpbnN0YW5jZW9mIGUmJmVvLmNhbGwoZSk9PW9vfTt2YXIgYW89ZnVuY3Rpb24odCl7cmV0dXJuIHVvKHQpP3ZvaWQgMDp0fSxpbz1hP2EuaXNDb25jYXRTcHJlYWRhYmxlOnZvaWQgMDt2YXIgY289ZnVuY3Rpb24ocil7cmV0dXJuIHQocil8fHlyKHIpfHwhIShpbyYmciYmcltpb10pfTt2YXIgZm89ZnVuY3Rpb24gdChyLGUsbixvLHUpe3ZhciBhPS0xLGk9ci5sZW5ndGg7Zm9yKG58fChuPWNvKSx1fHwodT1bXSk7KythPGk7KXt2YXIgYz1yW2FdO2U+MCYmbihjKT9lPjE/dChjLGUtMSxuLG8sdSk6bnIodSxjKTpvfHwodVt1Lmxlbmd0aF09Yyl9cmV0dXJuIHV9O3ZhciBsbz1mdW5jdGlvbih0KXtyZXR1cm4obnVsbD09dD8wOnQubGVuZ3RoKT9mbyh0LDEpOltdfTt2YXIgdm89ZnVuY3Rpb24odCxyLGUpe3N3aXRjaChlLmxlbmd0aCl7Y2FzZSAwOnJldHVybiB0LmNhbGwocik7Y2FzZSAxOnJldHVybiB0LmNhbGwocixlWzBdKTtjYXNlIDI6cmV0dXJuIHQuY2FsbChyLGVbMF0sZVsxXSk7Y2FzZSAzOnJldHVybiB0LmNhbGwocixlWzBdLGVbMV0sZVsyXSl9cmV0dXJuIHQuYXBwbHkocixlKX0sc289TWF0aC5tYXg7dmFyIGJvPWZ1bmN0aW9uKHQscixlKXtyZXR1cm4gcj1zbyh2b2lkIDA9PT1yP3QubGVuZ3RoLTE6ciwwKSxmdW5jdGlvbigpe2Zvcih2YXIgbj1hcmd1bWVudHMsbz0tMSx1PXNvKG4ubGVuZ3RoLXIsMCksYT1BcnJheSh1KTsrK288dTspYVtvXT1uW3Irb107bz0tMTtmb3IodmFyIGk9QXJyYXkocisxKTsrK288cjspaVtvXT1uW29dO3JldHVybiBpW3JdPWUoYSksdm8odCx0aGlzLGkpfX07dmFyIHBvPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiB0fX0seW89VWU/ZnVuY3Rpb24odCxyKXtyZXR1cm4gVWUodCwidG9TdHJpbmciLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMSx2YWx1ZTpwbyhyKSx3cml0YWJsZTohMH0pfTpmZSxobz1EYXRlLm5vdzt2YXIgam89ZnVuY3Rpb24odCl7dmFyIHI9MCxlPTA7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49aG8oKSxvPTE2LShuLWUpO2lmKGU9bixvPjApe2lmKCsrcj49ODAwKXJldHVybiBhcmd1bWVudHNbMF19ZWxzZSByPTA7cmV0dXJuIHQuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyl9fSh5byk7dmFyIGdvPWZ1bmN0aW9uKHQpe3JldHVybiBqbyhibyh0LHZvaWQgMCxsbyksdCsiIil9KChmdW5jdGlvbih0LHIpe3ZhciBlPXt9O2lmKG51bGw9PXQpcmV0dXJuIGU7dmFyIG49ITE7cj1ndChyLChmdW5jdGlvbihyKXtyZXR1cm4gcj1BdChyLHQpLG58fChuPXIubGVuZ3RoPjEpLHJ9KSksVmUodCxlbih0KSxlKSxuJiYoZT1TbihlLDcsYW8pKTtmb3IodmFyIG89ci5sZW5ndGg7by0tOylabihlLHJbb10pO3JldHVybiBlfSkpO2Z1bmN0aW9uIF9vKHQscil7dmFyIGU9T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtyJiYobj1uLmZpbHRlcigoZnVuY3Rpb24ocil7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxyKS5lbnVtZXJhYmxlfSkpKSxlLnB1c2guYXBwbHkoZSxuKX1yZXR1cm4gZX1mdW5jdGlvbiBPbyh0KXtmb3IodmFyIHI9MTtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKXt2YXIgZT1udWxsIT1hcmd1bWVudHNbcl0/YXJndW1lbnRzW3JdOnt9O3IlMj9fbyhPYmplY3QoZSksITApLmZvckVhY2goKGZ1bmN0aW9uKHIpe1duKHQscixlW3JdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKGUpKTpfbyhPYmplY3QoZSkpLmZvckVhY2goKGZ1bmN0aW9uKHIpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LHIsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHIpKX0pKX1yZXR1cm4gdH1mdW5jdGlvbiB3byh0LHI9e30pe2xldCBlPSIkbGV2ZWwiLG49IiRwYXJlbnRzIjtpZighTXQodCkpcmV0dXJuW107bGV0IG89eHQociwiYmluZEtleSIsbnVsbCk7RXQobyl8fChvPSJpZCIpO2xldCB1PXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KHUpfHwodT0icGFyZW50SWQiKTtsZXQgYT14dChyLCJiaW5kQ2hpbGRyZW4iLG51bGwpO0V0KGEpfHwoYT0iY2hpbGRyZW4iKTtsZXQgaT14dChyLCJzYXZlRXh0UHJvcHMiLG51bGwpO3JldHVybiBGdChpKXx8KGk9ITEpLGZ1bmN0aW9uKHQpe2xldCByPVtdO2Z1bmN0aW9uIGModCl7cmV0dXJuIGk/dDpnbyh0LFtlLG5dKX1sZXQgZj17fTtyZXR1cm4gR24odCwoKGUsbik9PntpZigwPT09ZS4kbGV2ZWwpe2xldCB0PWMoZSk7ci5wdXNoKHQpLGZbZVtvXV09W25dfWVsc2V7bGV0IG49ZnVuY3Rpb24ocil7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspe2xldCBuPXRbZV07aWYoclt1XT09PW5bb10pcmV0dXJuIG59cmV0dXJuIG51bGx9KGUpO2lmKG51bGwhPT1uKXtsZXQgdD1mW25bb11dO3Q9Wy4uLnQsYV07bGV0IHU9eHQocix0LFtdKSxpPWMoZSk7dS5wdXNoKGkpLGZbZVtvXV09Wy4uLnQsdS5sZW5ndGgtMV0sSm4ocix0LHUpfWVsc2UgY29uc29sZS5sb2coYGNhbiBub3QgZmluZCBwYXJlbnQgZm9yICR7eHQoZSx1KX1gKX19KSkscn0odD1mdW5jdGlvbih0KXtsZXQgcj1bXTtmdW5jdGlvbiBhKGEpe2xldCBpPVtdO0duKHQsKCh0LGMpPT57bGV0IGY9eHQodCx1KSxsPXh0KGEsbyk7aWYoZiYmbCYmZj09PWwpe2xldCB1PXh0KGEsbixbXSk7dT1Qbih1KSx1LnB1c2goYVtvXSksci5wdXNoKE9vKHtbZV06YS4kbGV2ZWwrMSxbbl06dX0sdCkpfWVsc2UgaS5wdXNoKHQpfSkpLHQ9aX1pZih0PVBuKHQpLGZ1bmN0aW9uKCl7bGV0IG89W107R24odCwoKHQsYSk9PntUdCh0W3VdKT9yLnB1c2goT28oe1tlXTowLFtuXTpbXX0sdCkpOm8ucHVzaCh0KX0pKSx0PW99KCksMD09PXIubGVuZ3RoKXJldHVybiByO2xldCBpPS0xO2Zvcig7aSs9MSwhKGk+ci5sZW5ndGgtMSk7KXtpZihhKHJbaV0pLDA9PT10Lmxlbmd0aClicmVha31yZXR1cm4gcn0odCkpfWZ1bmN0aW9uIG1vKHQscj17fSl7aWYoISR0KHQpJiYhTXQodCkpcmV0dXJuW107bGV0IGU9eHQociwiYmluZEtleSIsbnVsbCk7RXQoZSl8fChlPSJpZCIpO2xldCBuPXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KG4pfHwobj0icGFyZW50SWQiKTtsZXQgbz14dChyLCJiaW5kVGV4dCIsbnVsbCk7RXQobyl8fChvPSJ0ZXh0Iik7bGV0IHU9eHQociwiYmluZENoaWxkcmVuIixudWxsKTtFdCh1KXx8KHU9ImNoaWxkcmVuIik7bGV0IGE9eHQociwiYmluZFR5cGUiLG51bGwpO0V0KGEpfHwoYT0idHlwZSIpO2xldCBpPXh0KHIsImJpbmROdW1PZkNoaWxyZW4iLG51bGwpO0V0KGkpfHwoaT0ibnVtT2ZDaGlscmVuIik7bGV0IGM9eHQociwiYmluZFJvb3QiLG51bGwpO0V0KGMpfHwoYz0icm9vdCIpO2xldCBmPXh0KHIsInNhdmVFeHRQcm9wcyIsbnVsbCk7cmV0dXJuIEZ0KGYpfHwoZj0hMSksRXQoYykmJih0PXtbY106dH0pLHdvKGZ1bmN0aW9uKHQscj17fSl7aWYoISR0KHQpJiYhTXQodCkpcmV0dXJuW107bGV0IGU9eHQociwiYmluZEtleSIsbnVsbCk7RXQoZSl8fChlPSJpZCIpO2xldCBuPXh0KHIsImJpbmRQYXJlbnQiLG51bGwpO0V0KG4pfHwobj0icGFyZW50SWQiKTtsZXQgbz14dChyLCJiaW5kQmVsb25nIixudWxsKTtFdChvKXx8KG89ImtleSIpO2xldCB1PXh0KHIsImJpbmRUZXh0IixudWxsKTtFdCh1KXx8KHU9InRleHQiKTtsZXQgYT14dChyLCJiaW5kVHlwZSIsbnVsbCk7RXQoYSl8fChhPSJ0eXBlIik7bGV0IGk9eHQociwiYmluZE51bU9mQ2hpbHJlbiIsbnVsbCk7ZnVuY3Rpb24gYyh0LHIsZSl7dD1Qbih0KSx0PWRlKHQsKHQ9PmQodCk/em4odCk6dCkpLGQocikmJihyPXpuKHIpKSxkKGUpJiYoZT16bihlKSksKEV0KHIpfHx4bihyKSkmJnQucHVzaChyKTtsZXQgbj1nZSh0LCItIik7cmV0dXJuKEV0KGUpfHx4bihlKSkmJihuPWAke2V9LSR7bn1gKSxufUV0KGkpfHwoaT0ibnVtT2ZDaGlscmVuIik7bGV0IGY9W107cmV0dXJuIEtuKHQsKCh0LHIsbCk9PntsZXQgdj1jKGwscikscz1jKGwsbnVsbCksYj0ibm9kZSI7SXQodCk/Yj0ib2JqZWN0IjpOdCh0KSYmKGI9ImFycmF5Iik7bGV0IHA9e1tlXTp2LFtuXTpzLFthXTpifTtpZigoRXQocil8fENlKHIpKSYmKHBbb109ciksSXQodCl8fE50KHQpfHwocFt1XT10KSxJdCh0KXx8TnQodCkpe2xldCByPUZlKHQpO3BbaV09cn1yZXR1cm4gZi5wdXNoKHApLHR9KSx7Zm9yY2U6ITB9KSxmfSh0LHtiaW5kS2V5OmUsYmluZFBhcmVudDpuLGJpbmRUZXh0Om8sYmluZFR5cGU6YSxiaW5kTnVtT2ZDaGlscmVuOml9KSx7YmluZEtleTplLGJpbmRQYXJlbnQ6bixiaW5kQ2hpbGRyZW46dSxzYXZlRXh0UHJvcHM6Zn0pfWFzeW5jIGZ1bmN0aW9uIGNvbnZlcnRUb1RyZWVXayh0LHI9e30pe3JldHVybiBtbyh0LHIpfQoKbGV0IGluc3RhbmNlID0gbnVsbApmdW5jdGlvbiBpbml0KGlucHV0KXsKCiAgICAvL2luaXQKICAgIGxldCByCiAgICAKICAgICAgICByID0gewogICAgICAgICAgICBtYWluOiBjb252ZXJ0VG9UcmVlV2sKICAgICAgICB9CiAgICAgICAgCgogICAgLy9vbgogICAgCgogICAgLy9zYXZlCiAgICBpbnN0YW5jZSA9IHIKCn0KCmZ1bmN0aW9uIHNlbmRNZXNzYWdlKGRhdGEpIHsKICAgIAogICAgICAgIHNlbGYucG9zdE1lc3NhZ2UoZGF0YSkKICAgICAgICAKfQoKYXN5bmMgZnVuY3Rpb24gcnVuKGRhdGEpIHsKICAgIC8vIGNvbnNvbGUubG9nKCdpbm5lciB3b3JrZXIgcnVuJyxkYXRhKQoKICAgIC8vbW9kZQogICAgbGV0IG1vZGUgPSBkYXRhLm1vZGUKCiAgICAvL2NoZWNrCiAgICBpZihtb2RlICE9PSAnaW5pdCcgJiYgbW9kZSAhPT0gJ2NhbGwnKXsKICAgICAgICByZXR1cm4KICAgIH0KCiAgICAvL2luaXQKICAgIGlmKG1vZGUgPT09ICdpbml0Jyl7CiAgICAgICAgCiAgICAgICAgdHJ5ewoKICAgICAgICAgICAgLy90eXBlCiAgICAgICAgICAgIGxldCB0eXBlID0gZGF0YS50eXBlCgogICAgICAgICAgICAvL2lucHV0CiAgICAgICAgICAgIGxldCBpbnB1dCA9IGRhdGEuaW5wdXQKICAgIAogICAgICAgICAgICAvL2luc3RhbmNlCiAgICAgICAgICAgIGlmKHR5cGUgPT09ICdmdW5jdGlvbicpewogICAgICAgICAgICAgICAgaW5pdCguLi5pbnB1dCkKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmKHR5cGUgPT09ICdvYmplY3QnKXsKICAgICAgICAgICAgICAgIGluc3RhbmNlID0gY29udmVydFRvVHJlZVdrCiAgICAgICAgICAgIH0KCiAgICAgICAgfQogICAgICAgIGNhdGNoKGVycil7CiAgICAgICAgCiAgICAgICAgICAgIC8vc2VuZE1lc3NhZ2UKICAgICAgICAgICAgbGV0IHJlcyA9IHsKICAgICAgICAgICAgICAgIG1vZGU6ICdlbWl0JywKICAgICAgICAgICAgICAgIGV2TmFtZTogJ2Vycm9yJywKICAgICAgICAgICAgICAgIG1zZzogZXJyLAogICAgICAgICAgICB9CiAgICAgICAgICAgIHNlbmRNZXNzYWdlKHJlcykKCiAgICAgICAgfQogICAgICAgICAgICAKICAgIH0KCiAgICAvL2NoZWNrCiAgICBpZihtb2RlID09PSAnY2FsbCcpewogICAgICAgIGxldCBzdGF0ZSA9ICcnCiAgICAgICAgbGV0IG1zZyA9IG51bGwKCiAgICAgICAgdHJ5ewoKICAgICAgICAgICAgLy9mdW4KICAgICAgICAgICAgbGV0IGZ1biA9IGluc3RhbmNlW2RhdGEuZnVuXQoKICAgICAgICAgICAgLy9pbnB1dAogICAgICAgICAgICBsZXQgaW5wdXQgPSBkYXRhLmlucHV0CgogICAgICAgICAgICAvL2V4ZWMKICAgICAgICAgICAgYXdhaXQgZnVuKC4uLmlucHV0KQogICAgICAgICAgICAgICAgLnRoZW4oKHN1YykgPT4gewogICAgICAgICAgICAgICAgICAgIHN0YXRlPSdzdWNjZXNzJwogICAgICAgICAgICAgICAgICAgIG1zZz1zdWMKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycikgPT4gewogICAgICAgICAgICAgICAgICAgIHN0YXRlPSdlcnJvcicKICAgICAgICAgICAgICAgICAgICBtc2c9ZXJyCiAgICAgICAgICAgICAgICB9KQoKICAgICAgICB9CiAgICAgICAgY2F0Y2goZXJyKXsKICAgICAgICAgICAgc3RhdGUgPSAnZXJyb3InCiAgICAgICAgICAgIG1zZyA9IGVycgogICAgICAgIH0KICAgICAgICAKICAgICAgICAvL3NlbmRNZXNzYWdlCiAgICAgICAgbGV0IHJlcyA9IHsKICAgICAgICAgICAgbW9kZTogJ3JldHVybicsCiAgICAgICAgICAgIGlkOiBkYXRhLmlkLAogICAgICAgICAgICBmdW46IGRhdGEuZnVuLAogICAgICAgICAgICBzdGF0ZSwKICAgICAgICAgICAgbXNnLAogICAgICAgIH0KICAgICAgICBzZW5kTWVzc2FnZShyZXMpCgogICAgfQoKfQoKZnVuY3Rpb24gcmVjdk1lc3NhZ2UoZGF0YSkgewogICAgLy8gY29uc29sZS5sb2coJ2lubmVyIHdvcmtlciByZWN2OicsIGRhdGEpCgogICAgLy9kYXRhUmVjdgogICAgbGV0IGRhdGFSZWN2ID0gZGF0YQoKICAgIC8vcnVuCiAgICBydW4oZGF0YVJlY3YpCgp9CgoKICAgICAgICBzZWxmLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgIHJlY3ZNZXNzYWdlKGUuZGF0YSkKICAgICAgICB9CiAgICAgICAgCgo="));function t(){var t=n();var r=function(n){try{var e=new Blob([n]),t=window.URL||window.webkitURL;return new Worker(t.createObjectURL(e))}catch(n){i(n)}}(e);if(!r)return i("invalid worker"),null;function o(){var n=function(){var n,e,t=new Promise((function(){n=arguments[0],e=arguments[1]}));return t.resolve=n,t.reject=e,t}(),e=function(){for(var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,e=[],t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),r=t.length,o=0;o<n;o++)e[o]=t[0|Math.random()*r];return e.join("")}(),o={mode:"call",id:e,fun:"main",input:Array.prototype.slice.call(arguments)};return r.postMessage(o),t.once(e,(function(e){"success"===e.state?n.resolve(e.msg):n.reject(e.msg)})),n}function i(n){t.emit("error",n)}return r.onmessage=function(n){!function(n){var e=n,r=e.mode;"emit"!==r&&"return"!==r||("emit"===r&&t.emit(e.evName,e.msg),"return"===r&&t.emit(e.id,e))}(n.data)},r.onerror=i,function(){var n={mode:"init",type:"function",input:Array.prototype.slice.call(arguments)};r.postMessage(n)}(Array.prototype.slice.call(arguments)),t.main=o,t.main=o,t.terminate=function(){r?(r.terminate(),r=void 0):i("worker has been terminated")},t}JI=function(){var n,e=(n=OI.mark((function n(){var e,r,o,i=arguments;return OI.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e=Array.prototype.slice.call(i),r=t(),n.next=4,r.main.apply(r,RI(e)).finally((function(){r.terminate()}));case 4:return o=n.sent,n.abrupt("return",o);case 6:case"end":return n.stop()}}),n)})),function(){var e=this,t=arguments;return new Promise((function(r,o){var i=n.apply(e,t);function l(n){LI(i,r,o,l,a,"next",n)}function a(n){LI(i,r,o,l,a,"throw",n)}l(void 0)}))});return function(){return e.apply(this,arguments)}}()}();var $I=JI,QI={components:{WTree:Vb},props:{data:{type:[Array,Object],default:()=>{}},viewHeightMax:{type:Number,default:400},defaultDisplayLevel:{type:Number,default:null},indent:{type:Number,default:1},iconSize:{type:Number,default:24},iconToggleColor:{type:String,default:"grey"},iconToggleBackgroundColor:{type:String,default:"transparent"},iconToggleBackgroundColorHover:{type:String,default:"rgba(128,128,128,0.15)"},filterKeywords:{type:String,default:""},filterFunction:{type:Function,default:null},loadingText:{type:String,default:"Loading..."},noResultsText:{type:String,default:"No results"},searchingText:{type:String,default:"Searching..."},defItemHeight:{type:Number,default:24},itemsPreload:{type:Number,default:5},keyColor:{type:String,default:"grey darken-2"},keyNumbersColor:{type:String,default:"grey lighten-1"},numColor:{type:String,default:"indigo accent-2"},strColor:{type:String,default:"orange accent-2"},bolColor:{type:String,default:"light-green lighten-1"},funColor:{type:String,default:"purple accent-2"},defaultColor:{type:String,default:"grey darken-4"},rippleColor:{type:String,default:"rgba(200,200,200,0.4)"},show:{type:Boolean,default:!0}},data:function(){return{lockFromSetData:!1,useColors:{},root:"___root___",lineNumberWidth:0}},watch:{data:{immediate:!0,deep:!0,handler(n){this.setData(n)}}},computed:{changeColors:function(){return this.convertColors(),""},useItemHeightMin:function(){return`min-height:${Math.max(this.iconSize,this.defItemHeight)}px;`}},methods:{convertColors:function(){let n=this;if(ks(n.useColors))return;let e={numColor:fd(n.numColor),strColor:fd(n.strColor),bolColor:fd(n.bolColor),funColor:fd(n.funColor),defaultColor:fd(n.defaultColor),keyColor:fd(n.keyColor),keyNumbersColor:fd(n.keyNumbersColor)};n.useColors=e},parseData:async function(n){return await $I(n,{bindRoot:this.root})},setData:function(n){let e=this;(async function(){if(e.lockFromSetData=!0,!di(n)&&!Vi(n)){return"data is not an array or object"}e.convertColors(),n=rg(n);let t=await e.parseData(n);await Mi((()=>void 0!==e.$refs.wt),{timeInterval:20}),e.$refs.wt&&await e.$refs.wt.setData(t),e.getLineNumberWidth()})().catch((n=>{console.log(n)})).finally((()=>{e.lockFromSetData=!1}))},getLineNumberWidth:function(){let n=this;(async function(){if(await Mi((()=>void 0!==n.$refs.wt),{timeInterval:20}),!n.$refs.wt)return;let e=n.$refs.wt.getRows(),t=ud(e),r=8*(Math.ceil(Math.log10(t))+.5);n.lineNumberWidth=r})().catch((n=>{console.log(n)}))},genBlock:function(n){let e="";return"object"===n.type?e=`{${n.numOfChilren}}`:"array"===n.type&&(e=`[${n.numOfChilren}]`),e},getKey:function(n){let e="";return(Fi(n.key)||Xd(n.key))&&(e=n.key),e===this.root&&(e=""),e},getType:function(n){let e="";return"node"!==n.type&&(e=n.type),e},getText:function(n){let e="";return"node"===n.type&&(e=n.text),e},getTextTypeColor:function(n){let e=this,t=e.useColors.defaultColor;if("node"===n.type){let r="";Xd(n.text)?r="numColor":si(n.text)?r="strColor":Tc(n.text)?r="bolColor":ci(n.text)&&(r="funColor"),Hs(e.useColors,r)&&(t=e.useColors[r])}return t},toggleItemsByFun:function(n){return this.$refs.wt.toggleItemsByFun(n)},toggleItemsAll:function(n){return this.$refs.wt.toggleItemsAll(n)}}};const MI=QI;var _I=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",[t("WTree",{ref:"wt",attrs:{viewHeightMax:n.viewHeightMax,defaultDisplayLevel:n.defaultDisplayLevel,indent:n.indent,iconSize:n.iconSize,iconToggleColor:n.iconToggleColor,iconToggleBackgroundColor:n.iconToggleBackgroundColor,iconToggleBackgroundColorHover:n.iconToggleBackgroundColorHover,itemRippleColor:n.rippleColor,filterKeywords:n.filterKeywords,filterFunction:n.filterFunction,loadingText:n.loadingText,noResultsText:n.lockFromSetData?"":n.noResultsText,searchingText:n.searchingText,defItemHeight:n.defItemHeight,itemsPreload:n.itemsPreload,show:n.show},on:{"change-view-items":function(e){n.$emit("change-view-items",e)},"change-height-of-items":function(e){n.$emit("change-height-of-items",e)}},scopedSlots:n._u([{key:"head",fn:function(e){return[t("div",{style:n.useItemHeightMin+" min-width:"+n.lineNumberWidth+"px; display:flex; align-items:center; justify-content:end;"},[t("div",{style:"font-size:0.8rem; padding-top:1px; color:#f26; user-select:none;"},[n._v(n._s(e.index+1))])])]}},{key:"item",fn:function(e){return[t("div",{style:n.useItemHeightMin+" display:flex; align-items:center;"},[t("div",{staticStyle:{display:"flex"}},[""!==n.getKey(e.data)?t("div",{style:"padding-right:5px; color:"+n.useColors.keyColor+";"},[n._v("\n "+n._s(n.getKey(e.data))+":\n ")]):n._e(),n._v(" "),""!==n.getType(e.data)?t("div",{style:"padding-right:3px; color:"+n.useColors.keyColor+";"},[n._v("\n "+n._s(n.getType(e.data))+"\n ")]):n._e(),n._v(" "),t("div",{style:"color:"+n.getTextTypeColor(e.data)+";"},[n._v("\n "+n._s(n.getText(e.data))+"\n ")])]),n._v(" "),t("div",{style:"padding-left:5px; color:"+n.useColors.keyNumbersColor+";"},[n._v("\n "+n._s(n.genBlock(e.data))+"\n ")])])]}}])}),n._v(" "),n.lockFromSetData?t("div",{staticStyle:{padding:"12px","font-size":"0.8rem"}},[n._v("\n "+n._s(n.loadingText)+"\n ")]):n._e()],1)};_I._withStripped=!0;const UI=md({render:_I,staticRenderFns:[]},(function(n){n&&n("data-v-d1e490c4_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WJsonView.vue"},media:void 0})}),MI,"data-v-d1e490c4",false,undefined,!1,vd,void 0,void 0);const qI={components:{WIconLoading:xd},props:{pathItems:{type:Array,default:()=>["https://cdn.jsdelivr.net/npm/w-leaflet-vue@1.0.38/dist/w-leaflet-vue.umd.js"]},opt:{type:Object,default:()=>{}}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){let n=this;rl(n.pathItems).then((e=>{if("loaded"!==e){let n=window["w-leaflet-vue"];n.default&&(n=n.default),wd().component("w-leaflet-vue",n)}n.cmpName="w-leaflet-vue"}))},computed:{},methods:{}};var nx=function(){var n=this,e=n.$createElement;return(n._self._c||e)(n.cmpName,{ref:"$self",tag:"component",attrs:{opt:n.opt}})};nx._withStripped=!0;const ex=md({render:nx,staticRenderFns:[]},(function(n){n&&n("data-v-3a8a90b6_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WLeafletVueDyn.vue"},media:void 0})}),qI,"data-v-3a8a90b6",false,undefined,!1,vd,void 0,void 0);var tx={directives:{domripple:ip()},components:{WIcon:sp},props:{text:{type:String,default:""},textFontSize:{type:String,default:"1rem"},active:{type:Boolean,default:!1},paddingStyle:{type:Object,default:()=>({v:10,h:12})},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"rgba(200,200,200,0.2)"},backgroundColorActive:{type:String,default:"orange lighten-1"},textColor:{type:String,default:"#444"},textColorHover:{type:String,default:"#222"},textColorActive:{type:String,default:"white"},icon:{type:String,default:""},iconSize:{type:Number,default:22},iconColor:{type:String,default:"#444"},iconColorHover:{type:String,default:"#222"},iconColorActive:{type:String,default:"white"},expansionIcon:{type:String,default:Ic},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"#aaa"},expansionIconColorHover:{type:String,default:"#888"},expansionIconColorActive:{type:String,default:"rgba(255,255,255,0.8)"},rippleColor:{type:String,default:"rgba(255,255,255,0.4)"}},data:function(){return{obstructMutation:!1,mouseEnter:!1,heightContent:""}},computed:{changeActive:function(){return this.updateHeightContent(this.active),""},useTextFontSize:function(){let n=this.textFontSize;return n=Ts(n,";",""),`font-size:${n};`},hasIcon:function(){return""!==this.icon},usePadding:function(){let n=this;return`padding:${tp(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}})};`},effBackgroundColor:function(){return fd(this.backgroundColor)},effBackgroundColorHover:function(){return fd(this.backgroundColorHover)},effBackgroundActive:function(){return fd(this.backgroundColorActive)},useBackgroundColor:function(){let n=this;return n.active?n.effBackgroundActive:n.mouseEnter?n.effBackgroundColorHover:n.effBackgroundColor},effTextColor:function(){return fd(this.textColor)},effTextColorHover:function(){return fd(this.textColorHover)},effTextActive:function(){return fd(this.textColorActive)},useTextColor:function(){let n=this;return n.active?n.effTextActive:n.mouseEnter?n.effTextColorHover:n.effTextColor},effIconColor:function(){return fd(this.iconColor)},effIconColorHover:function(){return fd(this.iconColorHover)},effIconActive:function(){return fd(this.iconColorActive)},useIconColor:function(){let n=this;return n.active?n.effIconActive:n.mouseEnter?n.effIconColorHover:n.effIconColor},effExpansionIconColor:function(){return fd(this.expansionIconColor)},effExpansionIconColorHover:function(){return fd(this.expansionIconColorHover)},effExpansionIconColorActive:function(){return fd(this.expansionIconColorActive)},useExpansionIconColor:function(){let n=this;return n.active?n.effExpansionIconColorActive:n.mouseEnter?n.effExpansionIconColorHover:n.effExpansionIconColor},useRotateDeg:function(){return this.active?180:0}},methods:{updateHeightContent:function(){let n=this;(async function(){for(let e=1;e<=5;e++)setTimeout((()=>{n.obstructMutation=!n.obstructMutation}),100*e);if(n.active){if(n.active){n.$el||await Mi((()=>void 0!==n.$el),{timeInterval:10});let e=wo(n,"$refs.rct.clientHeight");Xd(e)&&(n.heightContent=`height:${e}px;`)}}else n.heightContent=""})().catch((n=>{console.log(n)}))},getIcon:function(n){return wo(n,"icon","")},getText:function(n){if(""===wo(n,"text",""))return n},clickItem:function(n,e){let t=this;return t.$emit("update:active",!t.active),t.$emit("click",{icon:n,text:e}),""}}};const rx=tx;var ox=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeActive:n.changeActive}},[t("div",{directives:[{name:"domripple",rawName:"v-domripple",value:{color:n.rippleColor},expression:"{color:rippleColor}"}],style:"transition:all 0.3s; "+n.usePadding+" background:"+n.useBackgroundColor+"; cursor:pointer;",on:{mouseenter:function(e){n.mouseEnter=!0},mouseleave:function(e){n.mouseEnter=!1},click:function(e){return n.clickItem(n.icon,n.text)}}},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("div",{staticStyle:{"margin-right":"4px"}},[t("div",{style:"transition:all 0.3s; transform:rotate("+(n.useRotateDeg+90)+"deg); cursor:pointer;"},[t("WIcon",{attrs:{icon:n.expansionIcon,color:n.useExpansionIconColor,size:n.expansionIconSize}})],1)]),n._v(" "),n._t("header",(function(){return[n.hasIcon?t("WIcon",{staticStyle:{"margin-right":"8px"},attrs:{icon:n.icon,color:n.useIconColor,size:n.iconSize}}):n._e(),n._v(" "),t("div",{style:"transition:all 0.3s; color:"+n.useTextColor+"; "+n.useTextFontSize},[n._v("\n "+n._s(n.text)+"\n ")])]}),{isHover:n.mouseEnter,isActive:n.active})],2)]),n._v(" "),t("div",{class:"ct "+(n.active?"ct-show":"ct-hide"),style:""+n.heightContent},[t("div",{ref:"rct"},[n._t("content",null,{isHover:n.mouseEnter,isActive:n.active})],2)]),n._v(" "),t("div",{staticStyle:{position:"relative",height:"0px",overflow:"hidden"}},[n.obstructMutation?t("div",{staticStyle:{position:"absolute",left:"0px",top:"0px",height:"0px"}}):n._e()])])};ox._withStripped=!0;const ix=md({render:ox,staticRenderFns:[]},(function(n){n&&n("data-v-79a44a96_0",{source:"\n.ct[data-v-79a44a96] {\r\n transition: height 0.5s, opacity 0.5s ease-out;\n}\n.ct-hide[data-v-79a44a96] {\r\n overflow: hidden;\r\n height: 0px;\r\n opacity: 0;\n}\n.ct-show[data-v-79a44a96] {\r\n opacity: 1;\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WListExpandItem.vue"],names:[],mappings:";AA+bA;IACA,8CAAA;AACA;AACA;IACA,gBAAA;IACA,WAAA;IACA,UAAA;AACA;AACA;IACA,UAAA;AACA",file:"WListExpandItem.vue",sourcesContent:["<template>\r\n <div\r\n :changeActive=\"changeActive\"\r\n >\r\n\r\n \x3c!-- header --\x3e\r\n <div\r\n :style=\"`transition:all 0.3s; ${usePadding} background:${useBackgroundColor}; cursor:pointer;`\"\r\n v-domripple=\"{color:rippleColor}\"\r\n @mouseenter=\"mouseEnter=true\"\r\n @mouseleave=\"mouseEnter=false\"\r\n @click=\"clickItem(icon,text)\"\r\n >\r\n <div style=\"display:flex; align-items:center;\">\r\n\r\n <div style=\"margin-right:4px;\">\r\n <div :style=\"`transition:all 0.3s; transform:rotate(${useRotateDeg+90}deg); cursor:pointer;`\">\r\n <WIcon\r\n :icon=\"expansionIcon\"\r\n :color=\"useExpansionIconColor\"\r\n :size=\"expansionIconSize\"\r\n ></WIcon>\r\n </div>\r\n </div>\r\n\r\n <slot\r\n name=\"header\"\r\n :isHover=\"mouseEnter\"\r\n :isActive=\"active\"\r\n >\r\n\r\n <WIcon\r\n style=\"margin-right:8px;\"\r\n :icon=\"icon\"\r\n :color=\"useIconColor\"\r\n :size=\"iconSize\"\r\n v-if=\"hasIcon\"\r\n ></WIcon>\r\n\r\n <div :style=\"`transition:all 0.3s; color:${useTextColor}; ${useTextFontSize}`\">\r\n {{text}}\r\n </div>\r\n\r\n </slot>\r\n\r\n </div>\r\n </div>\r\n\r\n \x3c!-- content --\x3e\r\n <div :class=\"`ct ${active?'ct-show':'ct-hide'}`\" :style=\"`${heightContent}`\">\r\n <div ref=\"rct\">\r\n\r\n <slot\r\n name=\"content\"\r\n :isHover=\"mouseEnter\"\r\n :isActive=\"active\"\r\n >\r\n </slot>\r\n\r\n </div>\r\n </div>\r\n\r\n <div style=\"position:relative; height:0px; overflow:hidden;\">\r\n <div style=\"position:absolute; left:0px; top:0px; height:0px;\" v-if=\"obstructMutation\">\r\n </div>\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mdiPlay } from '@mdi/js'\r\nimport get from 'lodash/get'\r\nimport isNumber from 'lodash/isNumber'\r\nimport replace from 'wsemi/src/replace.mjs'\r\nimport waitFun from 'wsemi/src/waitFun.mjs'\r\nimport domRipple from '../js/domRipple.mjs'\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\nimport parseSpace from '../js/parseSpace.mjs'\r\nimport WIcon from './WIcon.vue'\r\n\r\n\r\n/**\r\n * @vue-prop {String} [text=''] 輸入文字字串,預設''\r\n * @vue-prop {String} [textFontSize='1rem'] 輸入文字字型大小字串,預設'1rem'\r\n * @vue-prop {Boolean} [active=false] 輸入是否為主動模式布林值,預設false\r\n * @vue-prop {Object} [paddingStyle={v:10,h:12}] 輸入內寬距離設定物件,可用鍵值為v、h、left、right、top、bottom,v代表同時設定top與bottom,h代表設定left與right,若有重複設定時後面鍵值會覆蓋前面,各鍵值為寬度數字,單位為px,預設{v:10,h:12}\r\n * @vue-prop {String} [backgroundColor='white'] 輸入背景顏色字串,預設'white'\r\n * @vue-prop {String} [backgroundColorHover='rgba(200,200,200,0.2)'] 輸入滑鼠移入時背景顏色字串,預設'rgba(200,200,200,0.2)'\r\n * @vue-prop {String} [backgroundColorActive='orange lighten-1'] 輸入主動模式時背景顏色字串,預設'orange lighten-1'\r\n * @vue-prop {String} [textColor='#444'] 輸入文字顏色字串,預設'#444'\r\n * @vue-prop {String} [textColorHover='#222'] 輸入滑鼠移入時文字顏色字串,預設'#222'\r\n * @vue-prop {String} [textColorActive='white'] 輸入主動模式時文字顏色字串,預設'white'\r\n * @vue-prop {String} [icon=''] 輸入圖標字串,可為mdi,md,fa代號或mdi/js路徑,預設''\r\n * @vue-prop {Number} [iconSize=22] 輸入左側圖標之尺寸數字,單位px,預設22\r\n * @vue-prop {String} [iconColor='#444'] 輸入圖標顏色字串,預設'#444'\r\n * @vue-prop {String} [iconColorHover='#222'] 輸入滑鼠移入時圖標顏色字串,預設'#222'\r\n * @vue-prop {String} [iconColorActive='white'] 輸入主動模式時圖標顏色字串,預設'white'\r\n * @vue-prop {String} [expansionIcon=mdiPlay] 輸入顯隱圖標字串,可為mdi,md,fa代號或mdi/js路徑,預設使用mdi的圖標(mdiPlay)\r\n * @vue-prop {Number} [expansionIconSize=18] 輸入顯隱圖標尺寸數字,單位為px,預設18\r\n * @vue-prop {String} [expansionIconColor='#aaa'] 輸入顯隱圖標顏色字串,預設'#aaa'\r\n * @vue-prop {String} [expansionIconColorHover='#888'] 輸入滑鼠移入時顯隱圖標顏色字串,預設'#888'\r\n * @vue-prop {String} [expansionIconColorActive='rgba(255,255,255,0.8)'] 輸入主動模式時顯隱圖標顏色字串,預設'rgba(255,255,255,0.8)'\r\n * @vue-prop {String} [rippleColor='rgba(255,255,255,0.4)'] 輸入ripple效果顏色字串,預設'rgba(255,255,255,0.4)'\r\n */\r\nexport default {\r\n directives: {\r\n domripple: domRipple(),\r\n },\r\n components: {\r\n WIcon,\r\n },\r\n props: {\r\n text: {\r\n type: String,\r\n default: '',\r\n },\r\n textFontSize: {\r\n type: String,\r\n default: '1rem',\r\n },\r\n active: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n paddingStyle: {\r\n type: Object,\r\n default: () => {\r\n return {\r\n v: 10,\r\n h: 12,\r\n }\r\n },\r\n },\r\n backgroundColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n backgroundColorHover: {\r\n type: String,\r\n default: 'rgba(200,200,200,0.2)',\r\n },\r\n backgroundColorActive: {\r\n type: String,\r\n default: 'orange lighten-1',\r\n },\r\n textColor: {\r\n type: String,\r\n default: '#444',\r\n },\r\n textColorHover: {\r\n type: String,\r\n default: '#222',\r\n },\r\n textColorActive: {\r\n type: String,\r\n default: 'white',\r\n },\r\n icon: {\r\n type: String,\r\n default: '',\r\n },\r\n iconSize: {\r\n type: Number,\r\n default: 22,\r\n },\r\n iconColor: {\r\n type: String,\r\n default: '#444',\r\n },\r\n iconColorHover: {\r\n type: String,\r\n default: '#222',\r\n },\r\n iconColorActive: {\r\n type: String,\r\n default: 'white',\r\n },\r\n expansionIcon: {\r\n type: String,\r\n default: mdiPlay,\r\n },\r\n expansionIconSize: {\r\n type: Number,\r\n default: 18,\r\n },\r\n expansionIconColor: {\r\n type: String,\r\n default: '#aaa',\r\n },\r\n expansionIconColorHover: {\r\n type: String,\r\n default: '#888',\r\n },\r\n expansionIconColorActive: {\r\n type: String,\r\n default: 'rgba(255,255,255,0.8)',\r\n },\r\n rippleColor: {\r\n type: String,\r\n default: 'rgba(255,255,255,0.4)',\r\n },\r\n },\r\n data: function() {\r\n return {\r\n obstructMutation: false,\r\n mouseEnter: false,\r\n heightContent: '',\r\n }\r\n },\r\n computed: {\r\n\r\n changeActive: function() {\r\n let vo = this\r\n vo.updateHeightContent(vo.active)\r\n return ''\r\n },\r\n\r\n useTextFontSize: function() {\r\n let vo = this\r\n let s = vo.textFontSize\r\n s = replace(s, ';', '')\r\n return `font-size:${s};`\r\n },\r\n\r\n hasIcon: function() {\r\n let vo = this\r\n return vo.icon !== ''\r\n },\r\n\r\n usePadding: function() {\r\n //console.log('computed usePadding')\r\n\r\n let vo = this\r\n\r\n //parseSpace\r\n let cs = parseSpace(vo.paddingStyle, { ext: { left: vo.shiftLeft, right: vo.shiftRight } })\r\n\r\n //padding\r\n let padding = `padding:${cs};`\r\n\r\n return padding\r\n },\r\n\r\n effBackgroundColor: function() {\r\n let vo = this\r\n return color2hex(vo.backgroundColor)\r\n },\r\n\r\n effBackgroundColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.backgroundColorHover)\r\n },\r\n\r\n effBackgroundActive: function() {\r\n let vo = this\r\n return color2hex(vo.backgroundColorActive)\r\n },\r\n\r\n useBackgroundColor: function() {\r\n let vo = this\r\n if (vo.active) {\r\n return vo.effBackgroundActive\r\n }\r\n return vo.mouseEnter ? vo.effBackgroundColorHover : vo.effBackgroundColor\r\n },\r\n\r\n effTextColor: function() {\r\n let vo = this\r\n return color2hex(vo.textColor)\r\n },\r\n\r\n effTextColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.textColorHover)\r\n },\r\n\r\n effTextActive: function() {\r\n let vo = this\r\n return color2hex(vo.textColorActive)\r\n },\r\n\r\n useTextColor: function() {\r\n let vo = this\r\n if (vo.active) {\r\n return vo.effTextActive\r\n }\r\n return vo.mouseEnter ? vo.effTextColorHover : vo.effTextColor\r\n },\r\n\r\n effIconColor: function() {\r\n let vo = this\r\n return color2hex(vo.iconColor)\r\n },\r\n\r\n effIconColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.iconColorHover)\r\n },\r\n\r\n effIconActive: function() {\r\n let vo = this\r\n return color2hex(vo.iconColorActive)\r\n },\r\n\r\n useIconColor: function() {\r\n let vo = this\r\n if (vo.active) {\r\n return vo.effIconActive\r\n }\r\n return vo.mouseEnter ? vo.effIconColorHover : vo.effIconColor\r\n },\r\n\r\n effExpansionIconColor: function() {\r\n //console.log('computed effExpansionIconColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.expansionIconColor)\r\n },\r\n\r\n effExpansionIconColorHover: function() {\r\n //console.log('computed effExpansionIconColorHover')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.expansionIconColorHover)\r\n },\r\n\r\n effExpansionIconColorActive: function() {\r\n //console.log('computed effExpansionIconColorActive')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.expansionIconColorActive)\r\n },\r\n\r\n useExpansionIconColor: function() {\r\n let vo = this\r\n if (vo.active) {\r\n return vo.effExpansionIconColorActive\r\n }\r\n return vo.mouseEnter ? vo.effExpansionIconColorHover : vo.effExpansionIconColor\r\n },\r\n\r\n useRotateDeg: function() {\r\n //console.log('computed useRotateDeg')\r\n\r\n let vo = this\r\n\r\n return vo.active ? 180 : 0\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n updateHeightContent: function() {\r\n let vo = this\r\n\r\n async function core() {\r\n\r\n //於WPanelScrolly內容區使用顯隱動畫時, 因瀏覽器之內容區高度會先更新完畢, 而transition動畫結束時間較慢, 導致WPanelScrolly內容區無法算得實際高度而導致出現遮蔽情況\r\n //於指定時間(n*s=500ms需與class ct內設定transition時間長度一致)內反覆變更元素顯隱, 藉此刺激WPanelScrolly內mutation事件, 使能進行重算內容區高度\r\n let n = 5\r\n let s = 100\r\n for (let i = 1; i <= n; i++) {\r\n setTimeout(() => {\r\n vo.obstructMutation = !vo.obstructMutation\r\n // console.log('obstructMutation', vo.obstructMutation)\r\n }, i * s)\r\n }\r\n\r\n if (!vo.active) {\r\n //隱藏內容\r\n\r\n //clear\r\n vo.heightContent = ''\r\n\r\n }\r\n else if (vo.active) {\r\n //顯示內容\r\n\r\n if (!vo.$el) {\r\n\r\n //wait $el\r\n await waitFun(() => {\r\n // console.log('waitFun try', vo.text)\r\n return vo.$el !== undefined\r\n }, { timeInterval: 10 })\r\n // console.log('waitFun finish', vo.text)\r\n\r\n }\r\n\r\n //h\r\n let h = get(vo, '$refs.rct.clientHeight')\r\n // console.log(h, vo.text)\r\n\r\n //update\r\n if (isNumber(h)) {\r\n\r\n //heightContent\r\n vo.heightContent = `height:${h}px;`\r\n\r\n }\r\n\r\n }\r\n\r\n }\r\n\r\n //core\r\n core()\r\n .catch((err) => {\r\n console.log(err)\r\n })\r\n\r\n },\r\n\r\n getIcon: function(item) {\r\n return get(item, 'icon', '')\r\n },\r\n\r\n getText: function(item) {\r\n let t = get(item, 'text', '')\r\n if (t === '') {\r\n return item\r\n }\r\n },\r\n\r\n clickItem: function(icon, text) {\r\n // console.log('methods clickItem', icon, text)\r\n\r\n let vo = this\r\n\r\n //emit\r\n vo.$emit('update:active', !vo.active)\r\n\r\n //emit\r\n vo.$emit('click', { icon, text })\r\n\r\n return ''\r\n },\r\n\r\n }\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.ct {\r\n transition: height 0.5s, opacity 0.5s ease-out;\r\n}\r\n.ct-hide {\r\n overflow: hidden;\r\n height: 0px;\r\n opacity: 0;\r\n}\r\n.ct-show {\r\n opacity: 1;\r\n}\r\n</style>\r\n"]},media:void 0})}),rx,"data-v-79a44a96",false,undefined,!1,vd,void 0,void 0);var lx={directives:{domresize:ac()},components:{WPanelScrolly:mb,WListExpandItem:ix},props:{items:{type:Array,default:()=>[]},activeMode:{type:String,default:"one"},itemActive:{type:[String,Object,Array],default:null},itemTextFontSize:{type:String,default:"1rem"},keyText:{type:String,default:"text"},keyIcon:{type:String,default:"icon"},keyDsp:{type:String,default:"dsp"},paddingStyle:{type:Object,default:()=>({v:10,h:12})},itemBackgroundColor:{type:String,default:"white"},itemBackgroundColorHover:{type:String,default:"rgba(200,200,200,0.2)"},itemBackgroundColorActive:{type:String,default:"orange lighten-1"},itemTextColor:{type:String,default:"#444"},itemTextColorHover:{type:String,default:"#222"},itemTextColorActive:{type:String,default:"white"},itemIconSize:{type:Number,default:22},itemIconColor:{type:String,default:"#444"},itemIconColorHover:{type:String,default:"#222"},itemIconColorActive:{type:String,default:"white"},itemExpansionIcon:{type:String,default:Ic},itemExpansionIconSize:{type:Number,default:18},itemExpansionIconColor:{type:String,default:"grey"},itemRippleColor:{type:String,default:"rgba(255,255,255,0.4)"}},data:function(){return{panelHeight:0,listHeight:0,itemActiveTrans:null}},computed:{changeItemActive:function(){return this.itemActiveTrans=this.itemActive,""},isObjValue:function(){return 0!==ud(this.items)&&pb(this.items,(n=>Vi(n)))}},methods:{resize:function(n){let e=this;e.panelHeight=n.snew.offsetHeight;let t=0,r=wo(e,"$refs.refHeader");js(r)&&(t=r.offsetHeight);let o=0,i=wo(e,"$refs.refFooter");js(i)&&(o=i.offsetHeight);let l=e.panelHeight-t-o;l>0&&e.listHeight!==l&&(e.listHeight=l)},getIcon:function(n){let e=this;return e.isObjValue?wo(n,e.keyIcon,""):""},getText:function(n){let e=this;if(e.isObjValue){return wo(n,e.keyText,"")}return n},getDsp:function(n){let e=this;if(e.isObjValue){return wo(n,e.keyDsp,"")}return n},getActive:function(n){let e=this,t=!1;return"one"===e.activeMode?t=ah(n,e.itemActiveTrans):"multi"===e.activeMode&&Fn(e.itemActiveTrans,(e=>{if(t=ah(n,e),t)return!1})),t},updateItemActive:function(n,e,t){let r=this,o=rg(r.itemActiveTrans);!n&&e?"one"===r.activeMode?o=t:"multi"===r.activeMode&&o.push(rg(t)):n&&!e&&function(){if("one"===r.activeMode)o=null;else if("multi"===r.activeMode){let n=[];Fn(o,(e=>{ah(t,e)||n.push(e)})),o=n}}(),r.itemActiveTrans=o,r.$nextTick((()=>{r.$emit("update:itemActive",rg(o))}))},ckItem:function(n){let e=this;e.$nextTick((()=>{e.$emit("click",rg(n))}))}}};const ax=lx;var dx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeItemActive:n.changeItemActive},on:{domresize:n.resize}},[t("div",{style:"height:"+n.panelHeight+"px;"},[t("div",{ref:"refHeader"},[n._t("header")],2),n._v(" "),t("WPanelScrolly",{style:"height:"+n.listHeight+"px;"},n._l(n.items,(function(e,r){return t("div",{key:r},[t("WListExpandItem",{attrs:{icon:n.getIcon(e),text:n.getText(e),textFontSize:n.itemTextFontSize,active:n.getActive(e),paddingStyle:n.paddingStyle,backgroundColor:n.itemBackgroundColor,backgroundColorHover:n.itemBackgroundColorHover,backgroundColorActive:n.itemBackgroundColorActive,textColor:n.itemTextColor,textColorHover:n.itemTextColorHover,textColorActive:n.itemTextColorActive,iconSize:n.itemIconSize,iconColor:n.itemIconColor,iconColorHover:n.itemIconColorHover,iconColorActive:n.itemIconColorActive,expansionIcon:n.itemExpansionIcon,expansionIconSize:n.itemExpansionIconSize,expansionIconColor:n.itemExpansionIconColor,rippleColor:n.itemRippleColor},on:{"update:active":function(t){n.updateItemActive(n.getActive(e),t,e)},click:function(t){return n.ckItem(e)}},scopedSlots:n._u([{key:"header",fn:function(t){return[n._t("item-header",null,{item:Object.assign({},e,t)})]}},{key:"content",fn:function(r){return[n._t("item-content",(function(){return[t("div",{staticStyle:{padding:"10px","font-size":"0.9rem"}},[n._v("\n "+n._s(n.getDsp(e))+"\n ")])]}),{item:Object.assign({},e,r)})]}}],null,!0)})],1)})),0),n._v(" "),t("div",{ref:"refFooter"},[n._t("footer")],2)],1)])};dx._withStripped=!0;const sx=md({render:dx,staticRenderFns:[]},(function(n){n&&n("data-v-db681232_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WListExpand.vue"},media:void 0})}),ax,"data-v-db681232",false,undefined,!1,vd,void 0,void 0);var cx={directives:{domresize:ac()},components:{WListItem:yb},props:{items:{type:Array,default:()=>[]},useActive:{type:Boolean,default:!0},itemActive:{type:[String,Object],default:null},itemTextFontSize:{type:String,default:"1rem"},keyText:{type:String,default:"text"},keyIcon:{type:String,default:"icon"},space:{type:Number,default:0},paddingStyle:{type:Object,default:()=>({v:10,h:12})},itemBorderRadius:{type:Number,default:0},itemBackgroundColor:{type:String,default:"transparent"},itemBackgroundColorHover:{type:String,default:"rgba(200,200,200,0.2)"},itemBackgroundColorActive:{type:String,default:"white"},itemTextColor:{type:String,default:"#444"},itemTextColorHover:{type:String,default:"#222"},itemTextColorActive:{type:String,default:"orange darken-3"},itemIconSize:{type:Number,default:22},itemIconColor:{type:String,default:"#444"},itemIconColorHover:{type:String,default:"#222"},itemIconColorActive:{type:String,default:"orange darken-3"},itemRippleColor:{type:String,default:"rgba(245,124,0,0.4)"},itemClickable:{type:Boolean,default:!0},itemCursorPointer:{type:Boolean,default:!0},borderBottom:{type:Boolean,default:!0},borderBottomSize:{type:Number,default:2},borderBottomColor:{type:String,default:"rgba(245,124,0,0.8)"}},data:function(){return{borderBottomLeft:0,borderBottomWidth:0,itemActiveTrans:null}},watch:{itemActiveTrans:{handler(n,e){this.updateBorderBottom()},immediate:!0}},computed:{changeItemActive:function(){let n=this;return n.useActive&&(n.itemActiveTrans=n.itemActive),""},isObjValue:function(){return 0!==ud(this.items)&&pb(this.items,(n=>Vi(n)))},useBorderBottomColor:function(){return fd(this.borderBottomColor)}},methods:{resize:function(n){this.updateBorderBottom()},getIcon:function(n){let e=this;return e.isObjValue?wo(n,e.keyIcon,""):""},getText:function(n){let e=this;if(e.isObjValue){return wo(n,e.keyText,"")}return n},getActive:function(n){let e=this,t=!1;return e.useActive&&(t=ah(n,e.itemActiveTrans)),t},updateBorderBottom:function(){let n=this;if(null==n.itemActiveTrans)return;let e=0,t=[],r=wo(n,"$refs.wli",[]);Fn(r,((r,o)=>{let i=r,l=wo(i,"clientWidth",0),a=wo(i,"clientHeight",0),d=e,s=l,c=a;o>0&&n.space>0&&(d+=n.space,s-=n.space),t.push({left:d,bottom:0,width:s,heiht:c}),e+=l}));let o=-1;if(Fn(n.items,((e,t)=>{if(ah(e,n.itemActiveTrans))return o=t,!1})),-1===o)return;let i=t[o];n.borderBottomLeft=i.left,n.borderBottomWidth=i.width},ckItem:function(n){let e=this;e.itemActiveTrans=n,e.$emit("click",{...n}),e.$emit("update:itemActive",{...n})}}};const ux=cx;var px=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeItemActive:n.changeItemActive},on:{domresize:n.resize}},[t("div",{staticStyle:{position:"relative",display:"flex","align-items":"center","white-space":"nowrap"}},[n.borderBottom?t("div",{style:"transition:all 0.3s; position:absolute; z-index:1; bottom:0px; left:"+n.borderBottomLeft+"px; padding-left:"+n.borderBottomWidth+"px; border-bottom:"+n.borderBottomSize+"px solid "+n.useBorderBottomColor+";"}):n._e(),n._v(" "),n._l(n.items,(function(e,r){return t("div",{key:r},[t("div",{ref:"wli",refInFor:!0,style:n.space>0&&r>0?"padding-left:"+n.space+"px;":""},[t("WListItem",{attrs:{icon:n.getIcon(e),text:n.getText(e),textFontSize:n.itemTextFontSize,active:n.getActive(e),paddingStyle:n.paddingStyle,borderRadius:n.itemBorderRadius,backgroundColor:n.itemBackgroundColor,backgroundColorHover:n.itemBackgroundColorHover,backgroundColorActive:n.itemBackgroundColorActive,textColor:n.itemTextColor,textColorHover:n.itemTextColorHover,textColorActive:n.itemTextColorActive,iconSize:n.itemIconSize,iconColor:n.itemIconColor,iconColorHover:n.itemIconColorHover,iconColorActive:n.itemIconColorActive,rippleColor:n.itemRippleColor,clickable:n.itemClickable,cursorPointer:n.itemCursorPointer},on:{click:function(t){return n.ckItem(e)}},scopedSlots:n._u([{key:"default",fn:function(t){return[n._t("item",null,{item:Object.assign({},{ind:r},e,t)})]}}],null,!0)})],1)])}))],2)])};px._withStripped=!0;const fx=md({render:px,staticRenderFns:[]},(function(n){n&&n("data-v-b5356834_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WListHorizontal.vue"},media:void 0})}),ux,"data-v-b5356834",false,undefined,!1,vd,void 0,void 0);var hx={directives:{domresize:ac()},components:{WIcon:sp},props:{avatarOuterPadding:{type:Number,default:15},avatarInnerPadding:{type:Number,default:15},avatarIcon:{type:String,default:"M16 12L9 2L2 12H3.86L0 18H7V22H11V18H18L14.14 12H16M20.14 12H22L15 2L12.61 5.41L17.92 13H15.97L19.19 18H24L20.14 12M13 19H17V22H13V19Z"},avatarIconSize:{type:Number,default:60},avatarIconColor:{type:String,default:"white"},avatarBorderWidth:{type:Number,default:1},avatarBorderColor:{type:String,default:"transparent"},avatarBackgroundColor:{type:String,default:"rgba(239,108,0,0.5)"},avatarBorderRadius:{type:Number,default:10},avatarShadow:{type:Boolean,default:!0},shiftVFromAvaterCenter:{type:Number,default:20},spaceHBetweenAvatarAndHeader:{type:Number,default:20},spaceVBetweenHeaderAndContent:{type:Number,default:0},headerVerticalAlign:{type:String,default:"center"},headerPadding:{type:Number,default:15},headerText:{type:String,default:""},headerTextColor:{type:String,default:"#444"},headerTextSize:{type:String,default:"1.0rem"},subHeaderText:{type:String,default:""},subHeaderTextColor:{type:String,default:"#888"},subHeaderTextSize:{type:String,default:"0.7rem"},sepLineWidth:{type:Number,default:1},sepLineColor:{type:String,default:"#ddd"},contentBorderRadius:{type:Number,default:3},contentBackgroundColor:{type:String,default:"white"},contentShadow:{type:Boolean,default:!0}},data:function(){return{avatarWidth:0,avatarHeight:0}},computed:{useAvatarIconColor:function(){return fd(this.avatarIconColor)},useAvatarBorderColor:function(){return fd(this.avatarBorderColor)},useAvatarBackgroundColor:function(){return fd(this.avatarBackgroundColor)},useHeaderVerticalAlign:function(){let n="";return n="bottom"===this.headerVerticalAlign?"flex-end":"center"===this.headerVerticalAlign?"center":"flex-start",n},useHeaderTextColor:function(){return fd(this.headerTextColor)},useSubHeaderTextColor:function(){return fd(this.subHeaderTextColor)},useSepLineColor:function(){return fd(this.sepLineColor)},useContentBackgroundColor:function(){return fd(this.contentBackgroundColor)}},methods:{resizeAvatar:function(n){this.avatarWidth=n.snew.offsetWidth,this.avatarHeight=n.snew.offsetHeight}}};const mx=hx;var gx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block",position:"relative"}},[t("div",{staticStyle:{position:"absolute",top:"0px",left:"0px"}},[t("div",{style:"transition:all 0.3s; padding:0px "+n.avatarOuterPadding+"px "+n.avatarOuterPadding+"px "+n.avatarOuterPadding+"px;"},[t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],class:n.avatarShadow?"shadow-header":"",style:"transition:all 0.3s; _box-sizing:border-box; border:"+n.avatarBorderWidth+"px solid "+n.useAvatarBorderColor+"; border-radius:"+n.avatarBorderRadius+"px; background:"+n.useAvatarBackgroundColor+";",on:{domresize:n.resizeAvatar}},[t("div",{staticStyle:{height:"100%",width:"100%",display:"flex","align-items":"center","justify-content":"center"}},[t("div",{style:"transition:all 0.3s; padding:"+n.avatarInnerPadding+"px;"},[n._t("avatar",(function(){return[t("WIcon",{attrs:{icon:n.avatarIcon,size:n.avatarIconSize,color:n.useAvatarIconColor}})]}))],2)])])])]),n._v(" "),t("div",{style:"transition:all 0.3s; padding-top:"+(n.avatarHeight/2-n.shiftVFromAvaterCenter)+"px;"}),n._v(" "),t("div",{class:n.contentShadow?"shadow":"",style:"transition:all 0.3s; border-radius:"+n.contentBorderRadius+"px; background:"+n.useContentBackgroundColor+";",attrs:{avatarWidth:""}},[t("div",{staticStyle:{display:"flex"}},[t("div",{style:"transition:all 0.3s; min-width:"+(n.avatarOuterPadding+n.avatarWidth+n.spaceHBetweenAvatarAndHeader)+"px; min-height:"+(n.avatarOuterPadding+(n.avatarHeight/2+n.shiftVFromAvaterCenter)+n.spaceVBetweenHeaderAndContent)+"px;"}),n._v(" "),t("div",{style:"transition:all 0.3s; width:100%; padding:"+n.headerPadding+"px; display:flex; align-items:"+n.useHeaderVerticalAlign+"; justify-content:flex-end;"},[t("div",{staticStyle:{"text-align":"right"}},[t("div",{style:"transition:all 0.3s; color:"+n.useSubHeaderTextColor+"; font-size:"+n.subHeaderTextSize+"; line-height:"+n.subHeaderTextSize+";"},[n._v("\n "+n._s(n.subHeaderText)+"\n ")]),n._v(" "),t("div",{style:"transition:all 0.3s; color:"+n.useHeaderTextColor+"; font-size:"+n.headerTextSize+";"},[n._v("\n "+n._s(n.headerText)+"\n ")])])])]),n._v(" "),t("div",{style:"transition:all 0.3s; border-top:"+n.sepLineWidth+"px solid "+n.useSepLineColor+";"},[t("div",{staticStyle:{transition:"all 0.3s"}},[n._t("default")],2)])])])};gx._withStripped=!0;const vx=md({render:gx,staticRenderFns:[]},(function(n){n&&n("data-v-97a4b53a_0",{source:"\n.shadow[data-v-97a4b53a] {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\n}\n.shadow-header[data-v-97a4b53a] {\r\n box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.12), 0px 7px 10px 1px rgba(0, 0, 0, 0.06), 0px 2px 16px 1px rgba(0, 0, 0, 0.04);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WPanelAvatar.vue"],names:[],mappings:";AA4UA;IACA,mGAAA;AACA;AACA;IACA,4HAAA;AACA",file:"WPanelAvatar.vue",sourcesContent:["<template>\r\n <div\r\n style=\"display:inline-block; position:relative;\"\r\n >\r\n\r\n <div style=\"position:absolute; top:0px; left:0px;\">\r\n\r\n <div\r\n :style=\"`transition:all 0.3s; padding:0px ${avatarOuterPadding}px ${avatarOuterPadding}px ${avatarOuterPadding}px;`\"\r\n >\r\n <div\r\n :class=\"`${avatarShadow?'shadow-header':''}`\"\r\n :style=\"`transition:all 0.3s; _box-sizing:border-box; border:${avatarBorderWidth}px solid ${useAvatarBorderColor}; border-radius:${avatarBorderRadius}px; background:${useAvatarBackgroundColor};`\"\r\n v-domresize\r\n @domresize=\"resizeAvatar\"\r\n >\r\n\r\n <div style=\"height:100%; width:100%; display:flex; align-items:center; justify-content:center;\">\r\n <div :style=\"`transition:all 0.3s; padding:${avatarInnerPadding}px;`\">\r\n\r\n <slot name=\"avatar\">\r\n <WIcon\r\n :icon=\"avatarIcon\"\r\n :size=\"avatarIconSize\"\r\n :color=\"useAvatarIconColor\"\r\n ></WIcon>\r\n </slot>\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n <div :style=\"`transition:all 0.3s; padding-top:${avatarHeight/2-shiftVFromAvaterCenter}px;`\"></div>\r\n\r\n <div\r\n avatarWidth\r\n :class=\"`${contentShadow?'shadow':''}`\"\r\n :style=\"`transition:all 0.3s; border-radius:${contentBorderRadius}px; background:${useContentBackgroundColor};`\"\r\n >\r\n\r\n <div style=\"display:flex;\">\r\n\r\n <div :style=\"`transition:all 0.3s; min-width:${avatarOuterPadding+avatarWidth+spaceHBetweenAvatarAndHeader}px; min-height:${avatarOuterPadding+(avatarHeight/2+shiftVFromAvaterCenter)+spaceVBetweenHeaderAndContent}px;`\"></div>\r\n\r\n <div :style=\"`transition:all 0.3s; width:100%; padding:${headerPadding}px; display:flex; align-items:${useHeaderVerticalAlign}; justify-content:flex-end;`\">\r\n\r\n <div style=\"text-align:right;\">\r\n <div :style=\"`transition:all 0.3s; color:${useSubHeaderTextColor}; font-size:${subHeaderTextSize}; line-height:${subHeaderTextSize};`\">\r\n {{subHeaderText}}\r\n </div>\r\n\r\n <div :style=\"`transition:all 0.3s; color:${useHeaderTextColor}; font-size:${headerTextSize};`\">\r\n {{headerText}}\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n <div :style=\"`transition:all 0.3s; border-top:${sepLineWidth}px solid ${useSepLineColor};`\">\r\n\r\n <div style=\"transition:all 0.3s;\">\r\n <slot></slot>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mdiForest } from '@mdi/js'\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\nimport domResize from '../js/domResize.mjs'\r\nimport WIcon from './WIcon.vue'\r\n\r\n\r\n/**\r\n * @vue-prop {Number} [avatarOuterPadding=15] 輸入圖標區外側間距數字,單位為px,預設15\r\n * @vue-prop {Number} [avatarInnerPadding=15] 輸入圖標區內側間距數字,單位為px,預設15\r\n * @vue-prop {String} [avatarIcon=mdiForest] 輸入圖標字串,預設mdiForest\r\n * @vue-prop {Number} [avatarIconSize=60] 輸入圖標尺寸數字,單位為px,預設60\r\n * @vue-prop {String} [avatarIconColor='white'] 輸入圖標顏色字串,預設'white'\r\n * @vue-prop {Number} [avatarBorderWidth=1] 輸入圖標區框線寬度數字,單位為px,預設1\r\n * @vue-prop {String} [avatarBorderColor='transparnet'] 輸入圖標區框線顏色字串,預設'transparnet'\r\n * @vue-prop {String} [avatarBackgroundColor='rgba(239,108,0,0.5)'] 輸入圖標區背景顏色字串,預設'rgba(239,108,0,0.5)'\r\n * @vue-prop {Number} [avatarBorderRadius=10] 輸入圖標區框圓角程度數字,單位為px,預設10\r\n * @vue-prop {Boolean} [avatarShadow=true] 輸入是否使用圖標區陰影效果數字,預設true\r\n * @vue-prop {Number} [shiftVFromAvaterCenter=20] 輸入圖標區基於水平中線之朝下平移數字,單位為px,預設20\r\n * @vue-prop {Number} [spaceHBetweenAvatarAndHeader=20] 輸入圖標區與右側標題區間距數字,單位為px,預設20\r\n * @vue-prop {Number} [spaceVBetweenHeaderAndContent=0] 輸入標題區與下方內容區間距數字,單位為px,預設0\r\n * @vue-prop {String} [headerVerticalAlign='center'] 輸入標題區內文字垂直對齊字串,可選'top'、'center'、'bottom',預設'center'\r\n * @vue-prop {Number} [headerPadding=15] 輸入標題區間距數字,單位為px,預設15\r\n * @vue-prop {String} [headerText=''] 輸入標題區主要文字字串,預設''\r\n * @vue-prop {String} [headerTextColor='#444'] 輸入標題區主要文字顏色字串,預設'#444'\r\n * @vue-prop {String} [headerTextSize='1.0rem'] 輸入標題區主要文字字型大小數字,預設'1.0rem'\r\n * @vue-prop {String} [subHeaderText=''] 輸入標題區次要文字字串,預設''\r\n * @vue-prop {String} [subHeaderTextColor='#888'] 輸入標題區次要文字顏色字串,預設'#888'\r\n * @vue-prop {String} [subHeaderTextSize='0.7rem'] 輸入標題區次要文字字型大小數字,預設'0.7rem'\r\n * @vue-prop {Number} [sepLineWidth=1] 輸入標題區與內容區分隔線寬度數字,單位為px,預設1\r\n * @vue-prop {String} [sepLineColor='#ddd'] 輸入標題區與內容區分隔線顏色字串,預設'#ddd'\r\n * @vue-prop {Number} [contentBorderRadius=3] 輸入內容區框圓角程度數字,單位為px,預設3\r\n * @vue-prop {String} [contentBackgroundColor='white'] 輸入內容區背景顏色字串,預設'white'\r\n * @vue-prop {Boolean} [contentShadow=true] 輸入是否使用內容區陰影效果數字,預設true\r\n */\r\nexport default {\r\n directives: {\r\n domresize: domResize(),\r\n },\r\n components: {\r\n WIcon,\r\n },\r\n props: {\r\n avatarOuterPadding: {\r\n type: Number,\r\n default: 15,\r\n },\r\n avatarInnerPadding: {\r\n type: Number,\r\n default: 15,\r\n },\r\n avatarIcon: {\r\n type: String,\r\n default: mdiForest,\r\n },\r\n avatarIconSize: {\r\n type: Number,\r\n default: 60,\r\n },\r\n avatarIconColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n avatarBorderWidth: {\r\n type: Number,\r\n default: 1,\r\n },\r\n avatarBorderColor: {\r\n type: String,\r\n default: 'transparent',\r\n },\r\n avatarBackgroundColor: {\r\n type: String,\r\n default: 'rgba(239,108,0,0.5)',\r\n },\r\n avatarBorderRadius: {\r\n type: Number,\r\n default: 10,\r\n },\r\n avatarShadow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n shiftVFromAvaterCenter: {\r\n type: Number,\r\n default: 20,\r\n },\r\n spaceHBetweenAvatarAndHeader: {\r\n type: Number,\r\n default: 20,\r\n },\r\n spaceVBetweenHeaderAndContent: {\r\n type: Number,\r\n default: 0,\r\n },\r\n headerVerticalAlign: {\r\n type: String,\r\n default: 'center', //top, center, bottom\r\n },\r\n headerPadding: {\r\n type: Number,\r\n default: 15,\r\n },\r\n headerText: {\r\n type: String,\r\n default: '',\r\n },\r\n headerTextColor: {\r\n type: String,\r\n default: '#444',\r\n },\r\n headerTextSize: {\r\n type: String,\r\n default: '1.0rem',\r\n },\r\n subHeaderText: {\r\n type: String,\r\n default: '',\r\n },\r\n subHeaderTextColor: {\r\n type: String,\r\n default: '#888',\r\n },\r\n subHeaderTextSize: {\r\n type: String,\r\n default: '0.7rem',\r\n },\r\n sepLineWidth: {\r\n type: Number,\r\n default: 1,\r\n },\r\n sepLineColor: {\r\n type: String,\r\n default: '#ddd',\r\n },\r\n contentBorderRadius: {\r\n type: Number,\r\n default: 3,\r\n },\r\n contentBackgroundColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n contentShadow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n\r\n avatarWidth: 0,\r\n avatarHeight: 0,\r\n\r\n // headerHeight: 0,\r\n\r\n }\r\n },\r\n computed: {\r\n\r\n useAvatarIconColor: function() {\r\n //console.log('computed useAvatarIconColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.avatarIconColor)\r\n },\r\n\r\n useAvatarBorderColor: function() {\r\n //console.log('computed useAvatarBorderColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.avatarBorderColor)\r\n },\r\n\r\n useAvatarBackgroundColor: function() {\r\n //console.log('computed useAvatarBackgroundColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.avatarBackgroundColor)\r\n },\r\n\r\n useHeaderVerticalAlign: function() {\r\n //console.log('computed useHeaderVerticalAlign')\r\n\r\n let vo = this\r\n\r\n let c = ''\r\n if (vo.headerVerticalAlign === 'bottom') {\r\n c = 'flex-end'\r\n }\r\n else if (vo.headerVerticalAlign === 'center') {\r\n c = 'center'\r\n }\r\n else {\r\n //top, default\r\n c = 'flex-start'\r\n }\r\n\r\n return c\r\n },\r\n\r\n useHeaderTextColor: function() {\r\n //console.log('computed useHeaderTextColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.headerTextColor)\r\n },\r\n\r\n useSubHeaderTextColor: function() {\r\n //console.log('computed useSubHeaderTextColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.subHeaderTextColor)\r\n },\r\n\r\n useSepLineColor: function() {\r\n //console.log('computed useSepLineColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.sepLineColor)\r\n },\r\n\r\n useContentBackgroundColor: function() {\r\n //console.log('computed useContentBackgroundColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.contentBackgroundColor)\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n resizeAvatar: function(msg) {\r\n // console.log('methods resizeAvatar', msg)\r\n\r\n let vo = this\r\n\r\n //update\r\n vo.avatarWidth = msg.snew.offsetWidth\r\n vo.avatarHeight = msg.snew.offsetHeight\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.shadow {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\r\n}\r\n.shadow-header {\r\n box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.12), 0px 7px 10px 1px rgba(0, 0, 0, 0.06), 0px 2px 16px 1px rgba(0, 0, 0, 0.04);\r\n}\r\n</style>\r\n"]},media:void 0})}),mx,"data-v-97a4b53a",false,undefined,!1,vd,void 0,void 0);const yx={directives:{domresize:ac()},props:{headerBorderRadius:{type:Number,default:0},paddingStyle:{type:Object,default:()=>({v:0,h:20})},headerText:{type:String,default:""},headerTextColor:{type:String,default:"white"},headerBackgroundColor:{type:String,default:"rgba(77, 182, 172, 0.8)"},headerShadow:{type:Boolean,default:!0},contentBorderRadius:{type:Number,default:0},contentPadding:{type:[Number,String],default:0},contentBackgroundColor:{type:String,default:"white"},contentShadow:{type:Boolean,default:!0}},data:function(){return{headerHeight:0}},computed:{usePadding:function(){let n=this;return`padding:${tp(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}})};`},useHeaderTextColor:function(){return fd(this.headerTextColor)},useHeaderBackgroundColor:function(){return fd(this.headerBackgroundColor)},useContentBackgroundColor:function(){return fd(this.contentBackgroundColor)},useContentPadding:function(){let n=this;return Yi(n.contentPadding)?`${n.contentPadding}px`:n.contentPadding}},methods:{updateHeaderHeight:function(n){this.headerHeight=n.snew.offsetHeight,this.$emit("resize",n)}}};var bx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",[t("div",{style:"transition:all 0.3s; "+n.usePadding+" z-index:2;"},[t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],class:{"shadow-header":n.headerShadow},style:"transition:all 0.3s; display:inline-block; background:"+n.useHeaderBackgroundColor+"; border-radius:"+n.headerBorderRadius+"px;",on:{domresize:n.updateHeaderHeight}},[n._t("header",(function(){return[t("div",{style:"transition:all 0.3s; padding:5px 10px; color:"+n.useHeaderTextColor+";"},[n._v("\n "+n._s(n.headerText)+"\n ")])]}))],2)]),n._v(" "),t("div",{style:"transition:all 0.3s; margin-top:-"+n.headerHeight/2+"px; z-index:1;"},[t("div",{class:{shadow:n.contentShadow},style:"transition:all 0.3s; background:"+n.useContentBackgroundColor+"; border-radius:"+n.contentBorderRadius+"px;"},[t("div",{style:"transition:all 0.3s; padding:"+n.useContentPadding+";"},[t("div",{style:"transition:all 0.3s; height:"+n.headerHeight/2+"px;"}),n._v(" "),n._t("default")],2)])])])};bx._withStripped=!0;const Cx=md({render:bx,staticRenderFns:[]},(function(n){n&&n("data-v-9e45e15e_0",{source:"\n.shadow[data-v-9e45e15e] {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\n}\n.shadow-header[data-v-9e45e15e] {\r\n box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.12), 0px 7px 10px 1px rgba(0, 0, 0, 0.06), 0px 2px 16px 1px rgba(0, 0, 0, 0.04);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WPanelBulge.vue"],names:[],mappings:";AAiMA;IACA,mGAAA;AACA;AACA;IACA,4HAAA;AACA",file:"WPanelBulge.vue",sourcesContent:["<template>\r\n <div>\r\n\r\n <div\r\n :style=\"`transition:all 0.3s; ${usePadding} z-index:2;`\"\r\n >\r\n <div\r\n :class=\"{'shadow-header':headerShadow}\"\r\n :style=\"`transition:all 0.3s; display:inline-block; background:${useHeaderBackgroundColor}; border-radius:${headerBorderRadius}px;`\"\r\n v-domresize\r\n @domresize=\"updateHeaderHeight\"\r\n >\r\n\r\n <slot name=\"header\">\r\n <div :style=\"`transition:all 0.3s; padding:5px 10px; color:${useHeaderTextColor};`\">\r\n {{headerText}}\r\n </div>\r\n </slot>\r\n\r\n </div>\r\n </div>\r\n\r\n <div :style=\"`transition:all 0.3s; margin-top:-${headerHeight/2}px; z-index:1;`\">\r\n\r\n <div\r\n :class=\"{'shadow':contentShadow}\"\r\n :style=\"`transition:all 0.3s; background:${useContentBackgroundColor}; border-radius:${contentBorderRadius}px;`\"\r\n >\r\n\r\n <div :style=\"`transition:all 0.3s; padding:${useContentPadding};`\">\r\n\r\n <div :style=\"`transition:all 0.3s; height:${headerHeight/2}px;`\"></div>\r\n\r\n <slot></slot>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport isnum from 'wsemi/src/isnum.mjs'\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\nimport parseSpace from '../js/parseSpace.mjs'\r\nimport domResize from '../js/domResize.mjs'\r\n\r\n\r\n/**\r\n * @vue-prop {Number} [headerBorderRadius=0] 輸入標題區圓角寬度,單位為px,預設0\r\n * @vue-prop {Object} [paddingStyle={v:0,h:20}] 輸入內寬距離設定物件,可用鍵值為v、h、left、right、top、bottom,v代表同時設定top與bottom,h代表設定left與right,若有重複設定時後面鍵值會覆蓋前面,各鍵值為寬度數字,單位為px,預設{v:0,h:20}\r\n * @vue-prop {String} [headerText=''] 輸入標題文字字串,預設''\r\n * @vue-prop {String} [headerTextColor='white'] 輸入標題文字顏色字串,預設'white'\r\n * @vue-prop {String} [headerBackgroundColor='teal lighten-2'] 輸入標題背景顏色字串,預設'teal lighten-2'\r\n * @vue-prop {Boolean} [headerShadow=true] 輸入標題區是否使用陰影模式,預設true\r\n * @vue-prop {Number} [contentBorderRadius=0] 輸入內容區圓角寬度,單位為px,預設0\r\n * @vue-prop {Number|String} [contentPadding=20] 輸入內容區邊寬長度數字或字串,若輸入數字則單位為px,預設20,若輸入字串則需自己添加單位\r\n * @vue-prop {String} [contentBackgroundColor='white'] 輸入內容區塊背景顏色字串,預設'white'\r\n * @vue-prop {Boolean} [contentShadow=true] 輸入內容區是否使用陰影模式,預設true\r\n */\r\nexport default {\r\n directives: {\r\n domresize: domResize(),\r\n },\r\n props: {\r\n headerBorderRadius: {\r\n type: Number,\r\n default: 0,\r\n },\r\n paddingStyle: {\r\n type: Object,\r\n default: () => {\r\n return {\r\n v: 0,\r\n h: 20,\r\n }\r\n },\r\n },\r\n headerText: {\r\n type: String,\r\n default: '',\r\n },\r\n headerTextColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n headerBackgroundColor: {\r\n type: String,\r\n default: 'rgba(77, 182, 172, 0.8)', //teal lighten-2\r\n },\r\n headerShadow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n contentBorderRadius: {\r\n type: Number,\r\n default: 0,\r\n },\r\n contentPadding: {\r\n type: [Number, String],\r\n default: 0,\r\n },\r\n contentBackgroundColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n contentShadow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n headerHeight: 0,\r\n }\r\n },\r\n computed: {\r\n\r\n usePadding: function() {\r\n //console.log('computed usePadding')\r\n\r\n let vo = this\r\n\r\n //parseSpace\r\n let cs = parseSpace(vo.paddingStyle, { ext: { left: vo.shiftLeft, right: vo.shiftRight } })\r\n\r\n //padding\r\n let padding = `padding:${cs};`\r\n\r\n return padding\r\n },\r\n\r\n useHeaderTextColor: function() {\r\n //console.log('computed useHeaderTextColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.headerTextColor)\r\n },\r\n\r\n useHeaderBackgroundColor: function() {\r\n //console.log('computed useHeaderBackgroundColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.headerBackgroundColor)\r\n },\r\n\r\n useContentBackgroundColor: function() {\r\n //console.log('computed useContentBackgroundColor')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.contentBackgroundColor)\r\n },\r\n\r\n useContentPadding: function() {\r\n //console.log('computed useContentPadding')\r\n\r\n let vo = this\r\n\r\n if (isnum(vo.contentPadding)) {\r\n return `${vo.contentPadding}px`\r\n }\r\n else {\r\n return vo.contentPadding\r\n }\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n updateHeaderHeight: function(msg) {\r\n //console.log('methods updateHeaderHeight', msg)\r\n\r\n let vo = this\r\n\r\n //update\r\n vo.headerHeight = msg.snew.offsetHeight\r\n\r\n //emit\r\n vo.$emit('resize', msg)\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.shadow {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\r\n}\r\n.shadow-header {\r\n box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.12), 0px 7px 10px 1px rgba(0, 0, 0, 0.06), 0px 2px 16px 1px rgba(0, 0, 0, 0.04);\r\n}\r\n</style>\r\n"]},media:void 0})}),yx,"data-v-9e45e15e",false,undefined,!1,vd,void 0,void 0);const Ix={directives:{domresize:ac()},props:{ratio:{type:Number,default:.5},ratioMin:{type:Number,default:0},ratioMax:{type:Number,default:1},leftWidthMin:{type:Number,default:null},leftWidthMax:{type:Number,default:null},rightWidthMin:{type:Number,default:null},rightWidthMax:{type:Number,default:null},barColor:{type:String,default:"#ddd"},barSize:{type:Number,default:2},barBorderColor:{type:String,default:"transparent"},barBorderSize:{type:Number,default:3}},data:function(){return{r:null,panelWidth:0,panelHeight:0,das:null}},mounted:function(){let n=this,e=bg(n.$refs.divPanel,n.$refs.divBar,{useTouchDragForPanel:!1});e.on("dragBar",n.dragBar),n.das=e},beforeDestroy:function(){let n=this;n.das&&n.das.clear()},computed:{changeParam:function(){let n=this,e=n.ratio;return e=n.limitRatio(e),n.r=e,""},bw:function(){return this.barSize+2*this.barBorderSize},useBarColor:function(){return fd(this.barColor)},useBarBorderColor:function(){return fd(this.barBorderColor)}},methods:{resizePanel:function(n){let e=this;e.panelWidth=n.snew.offsetWidth,e.panelHeight=n.snew.offsetHeight,e.$emit("resize",n)},limitRatio:function(n){let e=this;if(n=Math.min(n,e.ratioMax),n=Math.max(n,e.ratioMin),e.panelWidth>0){let t=n*e.panelWidth;Xd(e.leftWidthMin)&&t<e.leftWidthMin&&(n=e.leftWidthMin/e.panelWidth),Xd(e.leftWidthMax)&&t>e.leftWidthMax&&(n=e.leftWidthMax/e.panelWidth);let r=(1-n)*e.panelWidth;Xd(e.rightWidthMin)&&r<e.rightWidthMin&&(n=-(e.rightWidthMin/e.panelWidth-1)),Xd(e.rightWidthMax)&&r>e.rightWidthMax&&(n=-(e.rightWidthMax/e.panelWidth-1))}return n},dragBar:function({clientX:n}){let e=this,t=e.$el.getBoundingClientRect(),r=n,o=e.$el.offsetWidth,i=0;o>0&&(i=(r-t.left)/o),i=e.limitRatio(i),e.r=i,e.$emit("update:ratio",i)}}};var xx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeParam:n.changeParam},on:{domresize:n.resizePanel}},[t("div",{ref:"divPanel",staticStyle:{position:"relative",display:"flex"}},[t("div",{ref:"left",style:"width:"+n.r*n.panelWidth+"px; height:"+n.panelHeight+"px;"},[n._t("left",null,{ratio:n.r,width:n.r*n.panelWidth,height:n.panelHeight})],2),n._v(" "),t("div",{ref:"divBar",style:"position:absolute; z-index:1; left:"+(n.r*n.panelWidth-n.bw/2)+"px; width:"+n.bw+"px; height:"+n.panelHeight+"px; border-left:"+n.barBorderSize+"px solid "+n.useBarBorderColor+"; border-right:"+n.barBorderSize+"px solid "+n.useBarBorderColor+"; cursor:col-resize; user-select:none;"},[t("div",{style:"width:"+n.barSize+"px; height:"+n.panelHeight+"px; background:"+n.useBarColor+";"})]),n._v(" "),t("div",{ref:"right",style:"width:"+(1-n.r)*n.panelWidth+"px; height:"+n.panelHeight+"px;"},[n._t("right",null,{ratio:1-n.r,width:(1-n.r)*n.panelWidth,height:n.panelHeight})],2)])])};xx._withStripped=!0;const Sx=md({render:xx,staticRenderFns:[]},(function(n){n&&n("data-v-c8e720c8_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WPanelDivideHorizontal.vue"},media:void 0})}),Ix,"data-v-c8e720c8",false,undefined,!1,vd,void 0,void 0);const wx={directives:{domresize:ac()},props:{ratio:{type:Number,default:.5},ratioMin:{type:Number,default:0},ratioMax:{type:Number,default:1},topHeightMin:{type:Number,default:null},topHeightMax:{type:Number,default:null},bottomHeightMin:{type:Number,default:null},bottomHeightMax:{type:Number,default:null},barColor:{type:String,default:"#ddd"},barBorderColor:{type:String,default:"transparent"},barSize:{type:Number,default:2},barBorderSize:{type:Number,default:3}},data:function(){return{r:null,panelWidth:0,panelHeight:0,das:null}},mounted:function(){let n=this,e=bg(n.$refs.divPanel,n.$refs.divBar,{useTouchDragForPanel:!1});e.on("dragBar",n.dragBar),n.das=e},beforeDestroy:function(){let n=this;n.das&&n.das.clear()},computed:{changeParam:function(){let n=this,e=n.ratio;return e=n.limitRatio(e),n.r=e,""},bw:function(){return this.barSize+2*this.barBorderSize},useBarColor:function(){return fd(this.barColor)},useBarBorderColor:function(){return fd(this.barBorderColor)}},methods:{resizePanel:function(n){let e=this;e.panelWidth=n.snew.offsetWidth,e.panelHeight=n.snew.offsetHeight,e.$emit("resize",n)},limitRatio:function(n){let e=this;if(n=Math.min(n,e.ratioMax),n=Math.max(n,e.ratioMin),e.panelHeight>0){let t=n*e.panelHeight;Xd(e.topHeightMin)&&t<e.topHeightMin&&(n=e.topHeightMin/e.panelHeight),Xd(e.topHeightMax)&&t>e.topHeightMax&&(n=e.topHeightMax/e.panelHeight);let r=(1-n)*e.panelHeight;Xd(e.bottomHeightMin)&&r<e.bottomHeightMin&&(n=-(e.bottomHeightMin/e.panelHeight-1)),Xd(e.bottomHeightMax)&&r>e.bottomHeightMax&&(n=-(e.bottomHeightMax/e.panelHeight-1))}return n},dragBar:function({clientY:n}){let e=this,t=e.$el.getBoundingClientRect(),r=n,o=e.$el.offsetHeight,i=0;o>0&&(i=(r-t.top)/o),i=e.limitRatio(i),e.r=i,e.$emit("update:ratio",i)}}};var kx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeParam:n.changeParam},on:{domresize:n.resizePanel}},[t("div",{ref:"divPanel",staticStyle:{position:"relative"}},[t("div",{ref:"top",style:"width:"+n.panelWidth+"px; height:"+n.r*n.panelHeight+"px;"},[n._t("top",null,{ratio:n.r,width:n.panelWidth,height:n.r*n.panelHeight})],2),n._v(" "),t("div",{ref:"divBar",style:"position:absolute; z-index:1; top:"+(n.r*n.panelHeight-n.bw/2)+"px; width:"+n.panelWidth+"px; height:"+n.barSize+"px; border-top:"+n.barBorderSize+"px solid "+n.useBarBorderColor+"; border-bottom:"+n.barBorderSize+"px solid "+n.useBarBorderColor+"; cursor:row-resize; user-select:none;"},[t("div",{style:"width:"+n.panelWidth+"px; height:"+n.barSize+"px; background:"+n.useBarColor+";"})]),n._v(" "),t("div",{ref:"bottom",style:"width:"+n.panelWidth+"px; height:"+(1-n.r)*n.panelHeight+"px;"},[n._t("bottom",null,{ratio:1-n.r,width:n.panelWidth,height:(1-n.r)*n.panelHeight})],2)])])};kx._withStripped=!0;const Tx=md({render:kx,staticRenderFns:[]},(function(n){n&&n("data-v-3de7dcbe_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WPanelDivideVertical.vue"},media:void 0})}),wx,"data-v-3de7dcbe",false,undefined,!1,vd,void 0,void 0);const Hx={directives:{domresize:ac(),dommutation:_g()},components:{},props:{scale:{type:Number,default:1}},data:function(){return{width:1,height:1}},mounted:function(){this.fitSize()},computed:{},methods:{domresize:function(n){this.fitSize()},dommutation:function(n){this.fitSize()},fitSize:function(){let n=this,e=wo(n,"$refs.tar");if(js(e)){let t=e.getBoundingClientRect();n.width===t.width&&n.height===t.height||(n.width=t.width,n.height=t.height)}}}};var Wx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"},{name:"dommutation",rawName:"v-dommutation"}],style:"display:inline-block; width:"+n.width+"px; height:"+n.height+"px; max-height:"+n.height+"px;",attrs:{domresize:"domresize"},on:{dommutation:n.dommutation}},[t("div",{style:"position:relative; width:"+n.width+"px; height:"+n.height+"px; max-height:"+n.height+"px;"},[t("div",{style:"position:absolute; left:0; top:0; width:"+n.width+"px; height:"+n.height+"px; max-height:"+n.height+"px;"},[t("div",{style:"transform-origin:top left; transform:scale("+n.scale+"); width:"+n.width+"px; height:"+n.height+"px; max-height:"+n.height+"px;"},[t("div",{ref:"tar",staticStyle:{display:"inline-block"}},[n._t("default")],2)])])])])};Wx._withStripped=!0;const Zx=md({render:Wx,staticRenderFns:[]},(function(n){n&&n("data-v-2d8c19a3_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WPanelScale.vue"},media:void 0})}),Hx,"data-v-2d8c19a3",false,undefined,!1,vd,void 0,void 0);const Xx={props:{hasHeader:{type:Boolean,default:!0},hasFooter:{type:Boolean,default:!0},padding:{type:Number,default:20},borderRadius:{type:Number,default:5},headerBackgroundColor:{type:String,default:"grey lighten-5"},contentBackgroundColor:{type:String,default:"white"},footerBackgroundColor:{type:String,default:"grey lighten-5"},shadow:{type:Boolean,default:!0}},data:function(){return{}},mounted:function(){},computed:{usePanelStyle:function(){let n={};return n["background-color"]=fd(this.contentBackgroundColor),n["border-radius"]=`${this.borderRadius}px`,n},useHeaderStyle:function(){let n=this,e={};return e.padding=`${n.padding}px`,e["border-bottom"]="1px solid #ddd",e["background-color"]=fd(n.headerBackgroundColor),e["border-radius"]=`${n.borderRadius}px ${n.borderRadius}px 0 0`,e.display="flex",e["justify-content"]="flex-start",e["align-items"]="center",e},useContentStyle:function(){let n=this,e={},t="0 0",r="0 0";return n.hasHeader||(t=`${n.borderRadius}px ${n.borderRadius}px`),n.hasFooter||(r=`${n.borderRadius}px ${n.borderRadius}px`),e["border-radius"]=`${t} ${r}`,e},useFooterStyle:function(){let n=this,e={};return e.padding=`${n.padding}px`,e["border-top"]="1px solid #ddd",e["background-color"]=fd(n.footerBackgroundColor),e["border-radius"]=`0 0 ${n.borderRadius}px ${n.borderRadius}px`,e}},methods:{}};var Bx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{class:{shadow:n.shadow},style:[n.usePanelStyle]},[n.hasHeader?t("div",{style:[n.useHeaderStyle]},[n._t("icon"),n._v(" "),t("div",[n._t("title"),n._v(" "),n._t("description")],2)],2):n._e(),n._v(" "),t("div",{style:[n.useContentStyle]},[n._t("content")],2),n._v(" "),n.hasFooter?t("div",{style:[n.useFooterStyle]},[n._t("footer")],2):n._e()])};Bx._withStripped=!0;const Ax=md({render:Bx,staticRenderFns:[]},(function(n){n&&n("data-v-9a073702_0",{source:"\n.shadow[data-v-9a073702] {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WPanelStripe.vue"],names:[],mappings:";AAoJA;IACA,mGAAA;AACA",file:"WPanelStripe.vue",sourcesContent:["<template>\r\n <div :class=\"{'shadow':shadow}\" :style=\"[usePanelStyle]\">\r\n\r\n <div :style=\"[useHeaderStyle]\" v-if=\"hasHeader\">\r\n <slot name=\"icon\"></slot>\r\n <div>\r\n <slot name=\"title\"></slot>\r\n <slot name=\"description\"></slot>\r\n </div>\r\n </div>\r\n\r\n <div :style=\"[useContentStyle]\">\r\n <slot name=\"content\"></slot>\r\n </div>\r\n\r\n <div :style=\"[useFooterStyle]\" v-if=\"hasFooter\">\r\n <slot name=\"footer\"></slot>\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\n\r\n\r\n/**\r\n * @vue-prop {Boolean} [hasHeader=true] 輸入是否有上部標題區,預設true\r\n * @vue-prop {Boolean} [hasFooter=true] 輸入是否有下部基底區,預設true\r\n * @vue-prop {Number} [padding=20] 輸入內間距,單位為px,預設20\r\n * @vue-prop {Number} [borderRadius=5] 輸入圓角寬度數字,單位為px,預設5\r\n * @vue-prop {String} [headerBackgroundColor='grey lighten-5'] 輸入上方區塊背景顏色字串,預設'grey lighten-5'\r\n * @vue-prop {String} [contentBackgroundColor='white'] 輸入內容區塊背景顏色字串,預設'white'\r\n * @vue-prop {String} [footerBackgroundColor='grey lighten-5'] 輸入下方區塊背景顏色字串,預設'grey lighten-5'\r\n * @vue-prop {Boolean} [shadow=true] 輸入是否為陰影模式,預設true\r\n */\r\nexport default {\r\n props: {\r\n hasHeader: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n hasFooter: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n padding: {\r\n type: Number,\r\n default: 20,\r\n },\r\n borderRadius: {\r\n type: Number,\r\n default: 5,\r\n },\r\n headerBackgroundColor: {\r\n type: String,\r\n default: 'grey lighten-5',\r\n },\r\n contentBackgroundColor: {\r\n type: String,\r\n default: 'white',\r\n },\r\n footerBackgroundColor: {\r\n type: String,\r\n default: 'grey lighten-5',\r\n },\r\n shadow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n }\r\n },\r\n mounted: function() {\r\n },\r\n computed: {\r\n\r\n usePanelStyle: function() {\r\n //console.log('computed usePanelStyle')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n s['background-color'] = color2hex(vo.contentBackgroundColor)\r\n s['border-radius'] = `${vo.borderRadius}px`\r\n\r\n return s\r\n },\r\n\r\n useHeaderStyle: function() {\r\n //console.log('computed useHeaderStyle')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n s['padding'] = `${vo.padding}px`\r\n s['border-bottom'] = '1px solid #ddd'\r\n s['background-color'] = color2hex(vo.headerBackgroundColor)\r\n s['border-radius'] = `${vo.borderRadius}px ${vo.borderRadius}px 0 0`\r\n s['display'] = 'flex'\r\n s['justify-content'] = 'flex-start'\r\n s['align-items'] = 'center'\r\n\r\n return s\r\n },\r\n\r\n useContentStyle: function() {\r\n //console.log('computed useContentStyle')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n let ch = '0 0'\r\n let cf = '0 0'\r\n if (!vo.hasHeader) {\r\n ch = `${vo.borderRadius}px ${vo.borderRadius}px`\r\n }\r\n if (!vo.hasFooter) {\r\n cf = `${vo.borderRadius}px ${vo.borderRadius}px`\r\n }\r\n s['border-radius'] = `${ch} ${cf}`\r\n\r\n return s\r\n },\r\n\r\n useFooterStyle: function() {\r\n //console.log('computed useFooterStyle')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n s['padding'] = `${vo.padding}px`\r\n s['border-top'] = '1px solid #ddd'\r\n s['background-color'] = color2hex(vo.footerBackgroundColor)\r\n s['border-radius'] = `0 0 ${vo.borderRadius}px ${vo.borderRadius}px`\r\n\r\n return s\r\n },\r\n\r\n },\r\n methods: {\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.shadow {\r\n box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);\r\n}\r\n</style>\r\n"]},media:void 0})}),Xx,"data-v-9a073702",false,undefined,!1,vd,void 0,void 0);const Vx={components:{},props:{borderColor:{type:String,default:"grey lighten-1"},borderColorHover:{type:String,default:"grey"},borderColorFocus:{type:String,default:"blue darken-2"},borderWidth:{type:Number,default:1},borderWidthHover:{type:Number,default:1},borderWidthFocus:{type:Number,default:2},focused:{type:Boolean,default:!1}},data:function(){return{focusedTrans:!1,hoverTrans:!1}},computed:{changeParam:function(){return this.focusedTrans=this.focused,""},useBorderWidth:function(){let n=this;return n.hoverTrans?n.borderWidthHover:n.borderWidth},useBorderColor:function(){let n=this;return n.hoverTrans?fd(n.borderColorHover):fd(n.borderColor)},useBorderColorFocus:function(){return fd(this.borderColorFocus)}},methods:{}};var Px=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("div",{staticStyle:{position:"relative"},on:{mouseenter:function(e){n.hoverTrans=!0},mouseleave:function(e){n.hoverTrans=!1}}},[n._t("default"),n._v(" "),t("div",{style:"position:absolute; left:0px; right:0px; bottom:0px; z-index:1; border-bottom:"+n.useBorderWidth+"px solid "+n.useBorderColor+";"}),n._v(" "),t("transition",{attrs:{name:"fade"}},[n.focused?t("div",{style:"position:absolute; left:0px; right:0px; bottom:0px; z-index:2; border-bottom:"+n.borderWidthFocus+"px solid "+n.useBorderColorFocus+";"}):n._e()])],2)])};Px._withStripped=!0;const Kx=md({render:Px,staticRenderFns:[]},(function(n){n&&n("data-v-25eae2b8_0",{source:"\n.fade-enter-active[data-v-25eae2b8], .fade-leave-active[data-v-25eae2b8] {\r\n transition: all 0.3s;\n}\n.fade-enter[data-v-25eae2b8], .fade-leave-to[data-v-25eae2b8] {\r\n transform: scaleX(0);\n}\n.fade-enter-to[data-v-25eae2b8], .fade-leave[data-v-25eae2b8] {\r\n transform: scaleX(100%);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WShellBottomLine.vue"],names:[],mappings:";AAiIA;IACA,oBAAA;AACA;AACA;IACA,oBAAA;AACA;AACA;IACA,uBAAA;AACA",file:"WShellBottomLine.vue",sourcesContent:["<template>\r\n <div :changeParam=\"changeParam\">\r\n\r\n <div\r\n style=\"position:relative;\"\r\n @mouseenter=\"hoverTrans=true\"\r\n @mouseleave=\"hoverTrans=false\"\r\n >\r\n\r\n <slot></slot>\r\n\r\n <div\r\n :style=\"`position:absolute; left:0px; right:0px; bottom:0px; z-index:1; border-bottom:${useBorderWidth}px solid ${useBorderColor};`\"\r\n ></div>\r\n\r\n <transition name=\"fade\">\r\n <div\r\n :style=\"`position:absolute; left:0px; right:0px; bottom:0px; z-index:2; border-bottom:${borderWidthFocus}px solid ${useBorderColorFocus};`\"\r\n v-if=\"focused\"\r\n ></div>\r\n </transition>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\n\r\n\r\n/**\r\n * @vue-prop {Number} [borderWidth=1] 輸入線寬度數字,單位為px,預設1\r\n * @vue-prop {String} [borderColor='grey lighten-1'] 輸入線顏色字串,預設'grey lighten-1'\r\n * @vue-prop {String} [borderColorHover='grey'] 輸入滑鼠移入時線顏色字串,預設'grey'\r\n * @vue-prop {String} [borderColorFocus='blue darken-2'] 輸入取得焦點時線顏色字串,預設'blue darken-2'\r\n * @vue-prop {Number} [borderWidthHover=1] 輸入滑鼠移入時線寬度數字,單位為px,預設1\r\n * @vue-prop {Number} [borderWidthFocus=2] 輸入取得焦點時線寬度數字,單位為px,預設2\r\n * @vue-prop {Boolean} [focused=false] 輸入是否為取得焦點狀態,預設false\r\n */\r\nexport default {\r\n components: {\r\n },\r\n props: {\r\n borderColor: {\r\n type: String,\r\n default: 'grey lighten-1',\r\n },\r\n borderColorHover: {\r\n type: String,\r\n default: 'grey',\r\n },\r\n borderColorFocus: {\r\n type: String,\r\n default: 'blue darken-2',\r\n },\r\n borderWidth: {\r\n type: Number,\r\n default: 1,\r\n },\r\n borderWidthHover: {\r\n type: Number,\r\n default: 1,\r\n },\r\n borderWidthFocus: {\r\n type: Number,\r\n default: 2,\r\n },\r\n focused: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n focusedTrans: false,\r\n hoverTrans: false,\r\n }\r\n },\r\n computed: {\r\n\r\n changeParam: function () {\r\n //console.log('computed changeParam')\r\n\r\n let vo = this\r\n\r\n //focusedTrans\r\n vo.focusedTrans = vo.focused\r\n\r\n return ''\r\n },\r\n\r\n useBorderWidth: function() {\r\n //console.log('computed useBorderWidth')\r\n\r\n let vo = this\r\n\r\n if (vo.hoverTrans) {\r\n return vo.borderWidthHover\r\n }\r\n return vo.borderWidth\r\n },\r\n\r\n useBorderColor: function() {\r\n //console.log('computed useBorderColor')\r\n\r\n let vo = this\r\n\r\n if (vo.hoverTrans) {\r\n return color2hex(vo.borderColorHover)\r\n }\r\n return color2hex(vo.borderColor)\r\n },\r\n\r\n useBorderColorFocus: function() {\r\n //console.log('computed useBorderColorFocus')\r\n\r\n let vo = this\r\n\r\n return color2hex(vo.borderColorFocus)\r\n },\r\n\r\n },\r\n methods: {\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.fade-enter-active, .fade-leave-active {\r\n transition: all 0.3s;\r\n}\r\n.fade-enter, .fade-leave-to {\r\n transform: scaleX(0);\r\n}\r\n.fade-enter-to, .fade-leave {\r\n transform: scaleX(100%);\r\n}\r\n</style>\r\n"]},media:void 0})}),Vx,"data-v-25eae2b8",false,undefined,!1,vd,void 0,void 0);const Gx={components:{WShellEllipse:rC,WShellBottomLine:Kx,WTextCore:dC},props:{paddingStyle:{type:Object,default:()=>({v:0,h:0})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!1},type:{type:String,default:"any"},value:{type:[String,Number]},textFontSize:{type:String,default:"1rem"},textColor:{type:String,default:"black"},textAlign:{type:String,default:"left"},leftIcon:{type:String,default:""},leftIconSize:{type:Number,default:24},leftIconColor:{type:String,default:"blue"},leftIconColorHover:{type:String,default:"blue darken-1"},leftIconColorFocus:{type:String,default:"blue darken-1"},leftIconTooltip:{type:String,default:""},rightIcon:{type:String,default:""},rightIconSize:{type:Number,default:24},rightIconColor:{type:String,default:"blue"},rightIconColorHover:{type:String,default:"blue darken-1"},rightIconColorFocus:{type:String,default:"blue darken-1"},rightIconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:0},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"transparent"},backgroundColorHover:{type:String,default:"transparent"},backgroundColorFocus:{type:String,default:"transparent"},borderColor:{type:String,default:"transparent"},borderColorHover:{type:String,default:"transparent"},borderColorFocus:{type:String,default:"transparent"},bottomLineBorderColor:{type:String,default:"grey lighten-1"},bottomLineBorderColorHover:{type:String,default:"grey"},bottomLineBorderColorFocus:{type:String,default:"blue darken-1"},bottomLineBorderWidth:{type:Number,default:1},bottomLineBorderWidthHover:{type:Number,default:1},bottomLineBorderWidthFocus:{type:Number,default:2},placeholder:{type:String,default:""},height:{type:Number,default:28},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var Fx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("WShellBottomLine",{attrs:{borderColor:n.bottomLineBorderColor,borderColorHover:n.bottomLineBorderColorHover,borderColorFocus:n.bottomLineBorderColorFocus,borderWidth:n.bottomLineBorderWidth,borderWidthHover:n.bottomLineBorderWidthHover,borderWidthFocus:n.bottomLineBorderWidthFocus,focused:n.focusedTrans}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.leftIcon,leftIconSize:n.leftIconSize,leftIconColor:n.leftIconColor,leftIconColorHover:n.leftIconColorHover,leftIconColorFocus:n.leftIconColorFocus,leftIconTooltip:n.leftIconTooltip,rightIcon:n.rightIcon,rightIconSize:n.rightIconSize,rightIconColor:n.rightIconColor,rightIconColorHover:n.rightIconColorHover,rightIconColorFocus:n.rightIconColorFocus,rightIconTooltip:n.rightIconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")},"click-right":function(e){return n.$emit("click-right")}}},[t("WTextCore",{attrs:{type:n.type,textFontSize:n.textFontSize,textColor:n.textColor,textAlign:n.textAlign,placeholder:n.placeholder,height:n.height,editable:n.editable,value:n.value,focused:n.focusedTrans},on:{"update:focused":n.changeFocused,select:function(e,t,r){n.$emit("select",e,t,r)},blur:function(e,t,r){n.$emit("blur",e,t,r)},enter:function(e,t,r){n.$emit("enter",e,t,r)},input:function(e,t,r){n.$emit("input",e,t,r)},change:function(e,t,r){n.$emit("change",e,t,r)}}})],1)],1)],1)};Fx._withStripped=!0;const Yx=md({render:Fx,staticRenderFns:[]},(function(n){n&&n("data-v-5d189428_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WText.vue"},media:void 0})}),Gx,"data-v-5d189428",false,undefined,!1,vd,void 0,void 0);const Rx={components:{WPopup:ib,WText:Yx,WButtonChip:$f,WIcon:sp},props:{value:{type:[String,Number],default:""},title:{type:String,default:"Editor"},titleColor:{type:String,default:"grey darken-3"},titleFontSize:{type:String,default:"0.8rem"},contentIcon:{type:String,default:"M5,3C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19H5V5H12V3H5M17.78,4C17.61,4 17.43,4.07 17.3,4.2L16.08,5.41L18.58,7.91L19.8,6.7C20.06,6.44 20.06,6 19.8,5.75L18.25,4.2C18.12,4.07 17.95,4 17.78,4M15.37,6.12L8,13.5V16H10.5L17.87,8.62L15.37,6.12Z"},contentIconColor:{type:String,default:"orange"},contentIconSize:{type:Number,default:28},inputTextColor:{type:String,default:"grey darken-3"},inputTextBottomLineBorderColor:{type:String,default:"grey lighten-1"},inputTextBottomLineBorderColorHover:{type:String,default:"grey"},inputTextBottomLineBorderColorFocus:{type:String,default:"blue darken-1"},saveBtnText:{type:String,default:"Save"},saveBtnTextColor:{type:String,default:"grey darken-3"},saveBtnTextColorHover:{type:String,default:"grey darken-2"},saveBtnIcon:{type:String,default:fc},saveBtnIconSize:{type:Number,default:22},saveBtnIconColor:{type:String,default:"grey darken-1"},saveBtnIconColorHover:{type:String,default:"grey darken-2"},saveBtnIconRippleColor:{type:String,default:"rgba(200,200,200,0.4)"},saveBtnBackgroundColor:{type:String,default:"white"},saveBtnBackgroundColorHover:{type:String,default:"grey lighten-3"},headerBackgroundColor:{type:String,default:"grey lighten-5"},contentBackgroundColor:{type:String,default:"white"},footerBackgroundColor:{type:String,default:"grey lighten-5"},minWidthForValue:{type:Number,default:30},minWidthForPopup:{type:Number,default:300}},data:function(){return{valueTemp:null,showEdit:!1}},computed:{useTitleFontSize:function(){let n=this.titleFontSize;return n=Ts(n,";",""),`font-size:${n};`},useTitleColor:function(){return fd(this.titleColor)},useHeaderBackgroundColor:function(){return fd(this.headerBackgroundColor)},useContentBackgroundColor:function(){return fd(this.contentBackgroundColor)},useFooterBackgroundColor:function(){return fd(this.footerBackgroundColor)}},methods:{evShow:function(){let n=this;n.valueTemp=n.value,n.$nextTick((()=>{n.showEdit=!0}))},evHide:function(){let n=this;n.$nextTick((()=>{n.$emit("close"),n.showEdit=!1}))},ckSave:function(n,e){let t=this;t.$nextTick((()=>{t.$emit("input",t.valueTemp),t.valueTemp="",n.funHide()}))}}};var Lx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("w-popup",{attrs:{isolated:!0,_minWidth:"minWidthForPopup"},on:{show:n.evShow,hide:n.evHide},scopedSlots:n._u([{key:"trigger",fn:function(){return[t("div",{style:"min-width:"+n.minWidthForValue+"px; min-height:1rem; cursor:pointer;"},[n._v("\n "+n._s(n.value)+"\n ")])]},proxy:!0},{key:"content",fn:function(e){return[t("div",{style:"min-width:"+n.minWidthForPopup+"px; text-align:left; border-radius:5px; overflow:hidden;"},[""!==n.title?t("div",[t("div",{style:" padding:10px; color:"+n.useTitleColor+"; "+n.useTitleFontSize+"; background:"+n.useHeaderBackgroundColor+";"},[n._v("\n "+n._s(n.title)+"\n ")])]):n._e(),n._v(" "),t("div",{style:"padding:20px; border-top:1px solid #ddd; border-bottom:1px solid #ddd; background:"+n.useContentBackgroundColor+"; display:flex; align-items:center;"},[t("div",{staticStyle:{"padding-right":"10px"}},[t("WIcon",{attrs:{icon:n.contentIcon,size:n.contentIconSize,color:n.contentIconColor}})],1),n._v(" "),t("div",{staticStyle:{width:"100%"}},[n.showEdit?t("WText",{attrs:{textColor:n.inputTextColor,bottomLineBorderColor:n.inputTextBottomLineBorderColor,bottomLineBorderColorHover:n.inputTextBottomLineBorderColorHover,bottomLineBorderColorFocus:n.inputTextBottomLineBorderColorFocus},on:{enter:function(t){return n.ckSave(e)}},model:{value:n.valueTemp,callback:function(e){n.valueTemp=e},expression:"valueTemp"}}):n._e()],1)]),n._v(" "),t("div",{style:"padding:10px; background:"+n.useFooterBackgroundColor+"; text-align:right;"},[t("WButtonChip",{attrs:{shiftLeft:-5,icon:n.saveBtnIcon,iconColor:n.saveBtnIconColor,iconColorHover:n.saveBtnIconColorHover,text:n.saveBtnText,textColor:n.saveBtnTextColor,textColorHover:n.saveBtnTextColorHover,backgroundColor:n.saveBtnBackgroundColor,backgroundColorHover:n.saveBtnBackgroundColorHover},on:{click:function(t){return n.ckSave(e)}}})],1)])]}}])})};Lx._withStripped=!0;const jx=md({render:Lx,staticRenderFns:[]},(function(n){n&&n("data-v-1b8db19d_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WPopupEditText.vue"},media:void 0})}),Rx,"data-v-1b8db19d",false,undefined,!1,vd,void 0,void 0);var Nx={components:{WIcon:sp},props:{value:{type:Number,default:0},decimal:{type:Number,default:1},title:{type:String,default:""},titleTextColor:{type:String,default:"grey darken-2"},titleTextFontSize:{type:String,default:"0.85rem"},height:{type:Number,default:4},borderRadius:{type:Number,default:5},progColor:{type:String,default:"lime accent-4"},progBackgroundColor:{type:String,default:"light-green lighten-5"},iconSize:{type:Number,default:20},iconWaiting:{type:String,default:Cc},iconFinish:{type:String,default:pc},iconWaitingColor:{type:String,default:"grey"},iconFinishColor:{type:String,default:"green"},enableIconWaiting:{type:Boolean,default:!0},enableIconFinish:{type:Boolean,default:!0},valueTextColor:{type:String,default:"grey darken-2"},valueTextFontSize:{type:String,default:"0.85rem"}},data:function(){return{mdiCheck:pc,mdiOrbitVariant:Cc}},computed:{status:function(){return this.value<=0?"waiting":this.value>=100?"finish":"running"},useProg:function(){let n=this.value;return n=Math.max(n,0),n=Math.min(n,100),n=this.digValue(n),n},useTitleTextFontSize:function(){let n=this.titleTextFontSize;return n=Ts(n,";",""),`font-size:${n};`},useBorderRadius:function(){return`border-radius:${this.borderRadius}px;`},useProgColor:function(){return fd(this.progColor)},useProgBackgroundColor:function(){return fd(this.progBackgroundColor)},useTitleTextColor:function(){return fd(this.titleTextColor)},useIconWaitingColor:function(){return fd(this.iconWaitingColor)},useIconFinishColor:function(){return fd(this.iconFinishColor)},useValueTextColor:function(){return fd(this.valueTextColor)},useValueTextFontSize:function(){let n=this.valueTextFontSize;return n=Ts(n,";",""),`font-size:${n};`}},methods:{digValue:function(n){return function(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return Yi(n)&&_i(e)?(n=Ri(n),Di(n,e).toFixed(e)):""}(n,this.decimal)}}};const zx=Nx;var Jx=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",[n.title?t("div",{style:"color:"+n.useTitleTextColor+"; "+n.useTitleTextFontSize+";"},[n._v("\n "+n._s(n.title)+"\n ")]):n._e(),n._v(" "),t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("div",{style:n.useBorderRadius+" overflow:hidden; width:100%; height:"+n.height+"px;"},[t("div",{style:"background:"+n.useProgBackgroundColor+"; height:"+n.height+"px;"},[t("div",{style:"background:"+n.useProgColor+"; width:"+n.useProg+"%; height:"+n.height+"px;"})])]),n._v(" "),t("div",{staticStyle:{"padding-left":"5px"}},[n.enableIconWaiting&&"waiting"===n.status||n.enableIconFinish&&"finish"===n.status?t("WIcon",{attrs:{icon:"waiting"===n.status?n.iconWaiting:n.iconFinish,color:"waiting"===n.status?n.useIconWaitingColor:n.useIconFinishColor,size:n.iconSize}}):t("div",{style:"color:"+n.useValueTextColor+"; "+n.useValueTextFontSize+";"},[t("div",[n._v(n._s(n.useProg)+"%")])])],1)])])};Jx._withStripped=!0;const Ox=md({render:Jx,staticRenderFns:[]},(function(n){n&&n("data-v-0683e45c_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WProgressBar.vue"},media:void 0})}),zx,"data-v-0683e45c",false,undefined,!1,vd,void 0,void 0);const Dx={components:{WTooltip:Jf},props:{text:{type:String,default:""},value:{type:Number,default:0},color:{type:String,default:"rgba(100,100,100,0.8)"},trackColor:{type:String,default:"rgba(150,150,150,0.4)"},size:{type:Number,default:120},width:{type:Number,default:6},textColor:{type:String,default:"#666"},tooltip:{type:String,default:""},tooltipBorderRadius:{type:Number,default:4},tooltipPaddingStyle:{type:Object,default:()=>({v:5,h:8})},tooltipTextFontSize:{type:String,default:"0.85rem"},tooltipTextColor:{type:String,default:"white"},tooltipBackgroundColor:{type:String,default:"rgba(60,60,60,0.75)"}},data:function(){return{}},mounted:function(){},computed:{radius:function(){return this.size/2-this.width/2},sizeHalf:function(){return this.size/2},widthOuter:function(){return 1*this.width},widthInner:function(){return this.width},progSdAll:function(){return 2*Math.PI*this.radius},progSdNow:function(){let n=this.value;return n<0&&(n=0),n>100&&(n=100),(100-n)/100*this.progSdAll},valueStyle:function(){let n=this,e=n.size/5.4,t=(n.size-26)/94*.25+.75;return{color:n.useColor,"font-size":e+"pt",transform:`scale(${t})`}},textStyle:function(){let n=this.size/12;return{color:this.useTextColor,"font-size":n+"pt",transform:"scale(1.2)"}},useColor:function(){return fd(this.color)},useTrackColor:function(){return fd(this.trackColor)},useTextColor:function(){return fd(this.textColor)},hasTooltop:function(){return Fi(this.tooltip)}},methods:{clickBtn:function(){let n=this;n.$nextTick((()=>{n.$emit("click")}))}}};var Ex=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block"}},[t("WTooltip",{attrs:{displayType:"line",isolated:!0,borderRadius:n.tooltipBorderRadius,paddingStyle:n.tooltipPaddingStyle,textFontSize:n.tooltipTextFontSize,textColor:n.tooltipTextColor,backgroundColor:n.tooltipBackgroundColor,editable:n.hasTooltop},scopedSlots:n._u([{key:"trigger",fn:function(){return[t("div",{style:"position:relative; width:"+n.size+"px; height:"+n.size+"px;"},[t("svg",{style:"transform-origin:radius; transform:rotate(-90deg);",attrs:{width:n.size,height:n.size,viewPort:"0 0 "+n.size+" "+n.size,version:"1.1",xmlns:"http://www.w3.org/2000/svg"}},[t("circle",{attrs:{r:n.radius,cx:n.sizeHalf,cy:n.sizeHalf,fill:"transparent","stroke-dasharray":n.progSdAll,"stroke-dashoffset":0,stroke:n.useTrackColor,"stroke-width":n.widthOuter}}),n._v(" "),t("circle",{staticStyle:{transition:"all 0.6s ease-in-out"},attrs:{r:n.radius,cx:n.sizeHalf,cy:n.sizeHalf,fill:"transparent","stroke-dasharray":n.progSdAll,"stroke-dashoffset":n.progSdNow,stroke:n.useColor,"stroke-width":n.widthInner}})]),n._v(" "),t("div",{style:"position:absolute; top:50%; left:50%; width:"+n.size+"px; height:"+n.size+"px;"},[t("div",{staticStyle:{"text-align":"center",transform:"translate(-50%,-50%)"}},[t("div",{style:[n.valueStyle]},[n._v(n._s(n.value)+"%")]),n._v(" "),t("div",{style:[n.textStyle]},[n._v(n._s(n.text))])])])])]},proxy:!0},{key:"content",fn:function(){return[n._v("\n "+n._s(n.tooltip)+"\n ")]},proxy:!0}])})],1)};Ex._withStripped=!0;const $x=md({render:Ex,staticRenderFns:[]},(function(n){n&&n("data-v-61cb34f4_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WProgressCircle.vue"},media:void 0})}),Dx,"data-v-61cb34f4",false,undefined,!1,vd,void 0,void 0);const Qx={components:{WIconLoading:xd},props:{pathItems:{type:Array,default:()=>["https://cdn.jsdelivr.net/npm/quill@1.3.7/dist/quill.min.js","https://cdn.jsdelivr.net/npm/quill@1.3.7/dist/quill.snow.min.css","https://cdn.jsdelivr.net/npm/w-quill-vue@2.0.4/dist/w-quill-vue.umd.js"]},value:{type:String,default:""},settings:{type:Object,default:()=>{}},height:{type:Number,default:250},editable:{type:Boolean,default:!0}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){let n=this;rl(n.pathItems).then((e=>{if("loaded"!==e){let n=window["w-quill-vue"];n.default&&(n=n.default),wd().component("w-quill-vue",n)}n.cmpName="w-quill-vue"}))},computed:{},methods:{}};var Mx=function(){var n=this,e=n.$createElement;return(n._self._c||e)(n.cmpName,{ref:"$self",tag:"component",attrs:{settings:n.settings,height:n.height,editable:n.editable,value:n.value},on:{input:function(e){n.$emit("input",e)}}})};Mx._withStripped=!0;const _x=md({render:Mx,staticRenderFns:[]},(function(n){n&&n("data-v-52bc7988_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WQuillVueDyn.vue"},media:void 0})}),Qx,"data-v-52bc7988",false,undefined,!1,vd,void 0,void 0);var Ux={props:{value:{type:[Boolean,String],default:!1},text:{type:String,default:""},textColor:{type:String,default:"black"},textColorHover:{type:String,default:"grey darken-3"},textFontSize:{type:String,default:"0.85rem"},switchSize:{type:Number,default:24},checkedSwitchCircleColor:{type:String,default:"blue darken-3"},checkedSwitchCircleColorHover:{type:String,default:"blue darken-2"},checkedSwitchCircleColorDisabled:{type:String,default:"grey"},uncheckedSwitchCircleColor:{type:String,default:"#fafafa"},uncheckedSwitchCircleColorHover:{type:String,default:"#fff"},uncheckedSwitchCircleColorDisabled:{type:String,default:"#bbb"},checkedSwitchBarColor:{type:String,default:"rgba(24, 103, 192, 0.6)"},checkedSwitchBarColorHover:{type:String,default:"rgba(24, 103, 192, 0.5)"},checkedSwitchBarColorDisabled:{type:String,default:"#ececec"},uncheckedSwitchBarColor:{type:String,default:"#c5c5c5"},uncheckedSwitchBarColorHover:{type:String,default:"#ccc"},uncheckedSwitchBarColorDisabled:{type:String,default:"#ececec"},editable:{type:Boolean,default:!0}},data:function(){return{hoverTrans:!1,dh:4,b:!1}},computed:{changeParam:function(){let n=this,e=n.value;return Tc(e)?n.b=e:n.b="y"===e,""},heightCir:function(){return this.switchSize-this.dh},widthCir:function(){return this.heightCir},heightBar:function(){return this.switchSize/24*14},widthBar:function(){return this.switchSize/24*36},heightToogle:function(){return Math.max(this.heightCir,this.heightBar)},effTextColor:function(){return fd(this.textColor)},effTextColorHover:function(){return fd(this.textColorHover)},useTextColor:function(){let n,e=this;return e.editable?(n=e.hoverTrans?e.effTextColorHover:e.effTextColor,n):e.effTextColor},useTextFontSize:function(){let n=this.textFontSize;return n=Ts(n,";",""),`font-size:${n};`},effCheckedSwitchCircleColor:function(){return fd(this.checkedSwitchCircleColor)},effCheckedSwitchCircleColorHover:function(){return fd(this.checkedSwitchCircleColorHover)},effCheckedSwitchCircleColorDisabled:function(){return fd(this.checkedSwitchCircleColorDisabled)},useCheckedSwitchCircleColor:function(){let n=this;return n.editable?n.hoverTrans?n.effCheckedSwitchCircleColorHover:n.effCheckedSwitchCircleColor:n.effCheckedSwitchCircleColorDisabled},effUncheckedSwitchCircleColor:function(){return fd(this.uncheckedSwitchCircleColor)},effUncheckedSwitchCircleColorHover:function(){return fd(this.uncheckedSwitchCircleColorHover)},effUncheckedSwitchCircleColorDisabled:function(){return fd(this.uncheckedSwitchCircleColorDisabled)},useUncheckedSwitchCircleColor:function(){let n=this;return n.editable?n.hoverTrans?n.effUncheckedSwitchCircleColorHover:n.effUncheckedSwitchCircleColor:n.effUncheckedSwitchCircleColorDisabled},useSwitchCircleColor:function(){let n=this;return n.b?n.useCheckedSwitchCircleColor:n.useUncheckedSwitchCircleColor},effCheckedSwitchBarColor:function(){return fd(this.checkedSwitchBarColor)},effCheckedSwitchBarColorHover:function(){return fd(this.checkedSwitchBarColorHover)},effCheckedSwitchBarColorDisabled:function(){return fd(this.checkedSwitchBarColorDisabled)},useCheckedSwitchBarColor:function(){let n=this;return n.editable?n.hoverTrans?n.effCheckedSwitchBarColorHover:n.effCheckedSwitchBarColor:n.effCheckedSwitchBarColorDisabled},effUncheckedSwitchBarColor:function(){return fd(this.uncheckedSwitchBarColor)},effUncheckedSwitchBarColorHover:function(){return fd(this.uncheckedSwitchBarColorHover)},effUncheckedSwitchBarColorDisabled:function(){return fd(this.uncheckedSwitchBarColorDisabled)},useUncheckedSwitchBarColor:function(){let n=this;return n.editable?n.hoverTrans?n.effUncheckedSwitchBarColorHover:n.effUncheckedSwitchBarColor:n.effUncheckedSwitchBarColorDisabled},useSwitchBarColor:function(){let n=this;return n.b?n.useCheckedSwitchBarColor:n.useUncheckedSwitchBarColor}},methods:{toogleValue:function(){let n=this;if(!n.editable)return;let e=n.b;e=!e;let t=null;Tc(n.value)?(t=!1,e&&(t=!0)):(t="n",e&&(t="y")),n.$nextTick((()=>{n.$emit("input",t)}))}}};const qx=Ux;var nS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{style:"display:inline-block; "+(n.editable?"cursor:pointer;":""),attrs:{changeParam:n.changeParam},on:{click:n.toogleValue,mouseenter:function(e){n.hoverTrans=!0,n.$emit("mouseenter",e)},mouseleave:function(e){n.hoverTrans=!1,n.$emit("mouseleave",e)}}},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("div",{style:"width:"+n.widthBar+"px; height:"+n.heightToogle+"px;"},[t("div",{style:"position:relative;"},[t("div",{staticClass:"ts",style:"position:absolute; top:"+(1+(n.heightToogle-n.heightBar)/2)+"px; left:0px; width:"+n.widthBar+"px; height:"+n.heightBar+"px; border-radius:8px; background:"+n.useSwitchBarColor+";"}),n._v(" "),t("div",{staticClass:"ts bs",style:"position:absolute; top:"+(1+(n.heightToogle-n.heightCir)/2)+"px; left:"+(n.b?n.widthBar-n.widthCir:0)+"px; width:"+n.widthCir+"px; height:"+n.heightCir+"px; border-radius:50%; background:"+n.useSwitchCircleColor+";"})])]),n._v(" "),""!==n.text?t("div",{staticClass:"ts",style:"text-transform:none; padding-left:5px; color:"+n.useTextColor+"; "+n.useTextFontSize},[n._v("\n "+n._s(n.text)+"\n ")]):n._e()])])};nS._withStripped=!0;const eS=md({render:nS,staticRenderFns:[]},(function(n){n&&n("data-v-61d311b4_0",{source:"\n.ts[data-v-61d311b4] {\r\n transition:all 0.3s;\n}\n.bs[data-v-61d311b4] {\r\n box-shadow: 0px 2px 4px -1px rgb(0 0 0 / 20%), 0px 4px 5px 0px rgb(0 0 0 / 14%), 0px 1px 10px 0px rgb(0 0 0 / 12%);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WSwitch.vue"],names:[],mappings:";AAqXA;IACA,mBAAA;AACA;AACA;IACA,kHAAA;AACA",file:"WSwitch.vue",sourcesContent:["<template>\r\n <div\r\n :style=\"`display:inline-block; ${editable?'cursor:pointer;':''}`\"\r\n :changeParam=\"changeParam\"\r\n @click=\"toogleValue\"\r\n @mouseenter=\"hoverTrans=true;$emit('mouseenter',$event)\"\r\n @mouseleave=\"hoverTrans=false;$emit('mouseleave',$event)\"\r\n >\r\n\r\n <div style=\"display:flex; align-items:center;\">\r\n\r\n <div :style=\"`width:${widthBar}px; height:${heightToogle}px;`\">\r\n <div :style=\"`position:relative;`\">\r\n\r\n \x3c!-- 文字會稍微偏下故top+1 --\x3e\r\n <div class=\"ts\" :style=\"`position:absolute; top:${1+(heightToogle-heightBar)/2}px; left:0px; width:${widthBar}px; height:${heightBar}px; border-radius:8px; background:${useSwitchBarColor};`\">\r\n </div>\r\n\r\n \x3c!-- 文字會稍微偏下故top+1 --\x3e\r\n <div class=\"ts bs\" :style=\"`position:absolute; top:${1+(heightToogle-heightCir)/2}px; left:${ b ? widthBar-widthCir : 0 }px; width:${widthCir}px; height:${heightCir}px; border-radius:50%; background:${useSwitchCircleColor};`\">\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <div class=\"ts\" :style=\"`text-transform:none; padding-left:5px; color:${useTextColor}; ${useTextFontSize}`\" v-if=\"text!==''\">\r\n {{text}}\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport isbol from 'wsemi/src/isbol.mjs'\r\nimport replace from 'wsemi/src/replace.mjs'\r\nimport color2hex from '../js/vuetifyColor.mjs'\r\n\r\n\r\n/**\r\n * @vue-prop {Boolean|String} [value=false] 輸入是否狀態的布林值或字串,可接受true或false,或是'y'或'n',預設false\r\n * @vue-prop {String} [text=''] 輸入文字字串,預設''\r\n * @vue-prop {String} [textColor='black'] 輸入文字顏色字串,預設'black'\r\n * @vue-prop {String} [textColorHover='grey darken-3'] 輸入滑鼠移入時文字顏色字串,預設'grey darken-3'\r\n * @vue-prop {String} [textFontSize='0.85rem'] 輸入文字字型大小字串,預設'0.85rem'\r\n * @vue-prop {Number} [switchSize=24] 輸入切換器大小,單位為px,預設24\r\n * @vue-prop {String} [checkedSwitchCircleColor='blue darken-3'] 輸入可編輯時,有效(true|'y')切換器鈕扣區顏色字串,預設'blue darken-3'\r\n * @vue-prop {String} [checkedSwitchCircleColorHover='blue darken-2'] 輸入滑鼠移入時可編輯時,有效(true|'y')切換器鈕扣區顏色字串,預設'blue darken-2'\r\n * @vue-prop {String} [checkedSwitchCircleColorDisabled='grey'] 輸入不可編輯時,有效(true|'y')切換器鈕扣區顏色字串,預設'grey'\r\n * @vue-prop {String} [uncheckedSwitchCircleColor='#8ad'] 輸入可編輯時,無效(false|'n')切換器鈕扣區顏色字串,預設'#8ad'\r\n * @vue-prop {String} [uncheckedSwitchCircleColorHover='#9bd'] 輸入滑鼠移入時可編輯時,無效(false|'n')切換器鈕扣區顏色字串,預設'#9bd'\r\n * @vue-prop {String} [uncheckedSwitchCircleColorDisabled='#bbb'] 輸入不可編輯時,無效(false|'n')切換器鈕扣區顏色字串,預設'#bbb'\r\n * @vue-prop {String} [checkedSwitchBarColor='blue darken-3'] 輸入可編輯時,有效(true|'y')切換器滑動區顏色字串,預設'blue darken-3'\r\n * @vue-prop {String} [checkedSwitchBarColorHover='blue darken-2'] 輸入滑鼠移入時可編輯時,有效(true|'y')切換器滑動區顏色字串,預設'blue darken-2'\r\n * @@vue-prop {String} [checkedSwitchBarColorDisabled='grey'] 輸入不可編輯時,有效(true|'y')切換器滑動區顏色字串,預設'grey'\r\n * @vue-prop {String} [uncheckedSwitchBarColor='#8ad'] 輸入可編輯時,無效(false|'n')切換器滑動區顏色字串,預設'#8ad'\r\n * @vue-prop {String} [uncheckedSwitchBarColorHover='#9bd'] 輸入滑鼠移入時可編輯時,無效(false|'n')切換器滑動區顏色字串,預設'#9bd'\r\n * @vue-prop {String} [uncheckedSwitchBarColorDisabled='#bbb'] 輸入不可編輯時,無效(false|'n')切換器滑動區顏色字串,預設'#bbb'\r\n * @vue-prop {Boolean} [editable=true] 輸入是否為編輯模式,預設true\r\n */\r\nexport default {\r\n props: {\r\n value: {\r\n type: [Boolean, String],\r\n default: false,\r\n },\r\n text: {\r\n type: String,\r\n default: '',\r\n },\r\n textColor: {\r\n type: String,\r\n default: 'black',\r\n },\r\n textColorHover: {\r\n type: String,\r\n default: 'grey darken-3',\r\n },\r\n textFontSize: {\r\n type: String,\r\n default: '0.85rem',\r\n },\r\n switchSize: {\r\n type: Number,\r\n default: 24,\r\n },\r\n checkedSwitchCircleColor: {\r\n type: String,\r\n default: 'blue darken-3',\r\n },\r\n checkedSwitchCircleColorHover: {\r\n type: String,\r\n default: 'blue darken-2',\r\n },\r\n checkedSwitchCircleColorDisabled: {\r\n type: String,\r\n default: 'grey',\r\n },\r\n uncheckedSwitchCircleColor: {\r\n type: String,\r\n default: '#fafafa',\r\n },\r\n uncheckedSwitchCircleColorHover: {\r\n type: String,\r\n default: '#fff',\r\n },\r\n uncheckedSwitchCircleColorDisabled: {\r\n type: String,\r\n default: '#bbb',\r\n },\r\n checkedSwitchBarColor: {\r\n type: String,\r\n default: 'rgba(24, 103, 192, 0.6)',\r\n },\r\n checkedSwitchBarColorHover: {\r\n type: String,\r\n default: 'rgba(24, 103, 192, 0.5)',\r\n },\r\n checkedSwitchBarColorDisabled: {\r\n type: String,\r\n default: '#ececec',\r\n },\r\n uncheckedSwitchBarColor: {\r\n type: String,\r\n default: '#c5c5c5',\r\n },\r\n uncheckedSwitchBarColorHover: {\r\n type: String,\r\n default: '#ccc',\r\n },\r\n uncheckedSwitchBarColorDisabled: {\r\n type: String,\r\n default: '#ececec',\r\n },\r\n editable: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n\r\n hoverTrans: false,\r\n\r\n dh: 4,\r\n\r\n b: false,\r\n\r\n }\r\n },\r\n computed: {\r\n\r\n changeParam: function () {\r\n //console.log('computed changeParam')\r\n\r\n let vo = this\r\n\r\n //value for trigger\r\n let value = vo.value\r\n\r\n //b\r\n if (isbol(value)) {\r\n vo.b = value\r\n }\r\n else {\r\n vo.b = (value === 'y')\r\n }\r\n\r\n return ''\r\n },\r\n\r\n heightCir: function() { // heightCir: 20,\r\n let vo = this\r\n return vo.switchSize - vo.dh\r\n },\r\n\r\n widthCir: function() { // widthCir: 20,\r\n let vo = this\r\n return vo.heightCir\r\n },\r\n\r\n heightBar: function() { // heightBar: 14,\r\n let vo = this\r\n return vo.switchSize / 24 * 14\r\n },\r\n\r\n widthBar: function() { // widthBar: 36,\r\n let vo = this\r\n return vo.switchSize / 24 * 36\r\n },\r\n\r\n heightToogle: function() {\r\n let vo = this\r\n return Math.max(vo.heightCir, vo.heightBar)\r\n },\r\n\r\n effTextColor: function() {\r\n let vo = this\r\n return color2hex(vo.textColor)\r\n },\r\n\r\n effTextColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.textColorHover)\r\n },\r\n\r\n useTextColor: function() {\r\n let vo = this\r\n let r\r\n if (!vo.editable) {\r\n return vo.effTextColor\r\n }\r\n r = vo.hoverTrans ? vo.effTextColorHover : vo.effTextColor\r\n return r\r\n },\r\n\r\n useTextFontSize: function() {\r\n let vo = this\r\n let s = vo.textFontSize\r\n s = replace(s, ';', '')\r\n return `font-size:${s};`\r\n },\r\n\r\n effCheckedSwitchCircleColor: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchCircleColor)\r\n },\r\n\r\n effCheckedSwitchCircleColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchCircleColorHover)\r\n },\r\n\r\n effCheckedSwitchCircleColorDisabled: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchCircleColorDisabled)\r\n },\r\n\r\n useCheckedSwitchCircleColor: function() {\r\n let vo = this\r\n if (!vo.editable) {\r\n return vo.effCheckedSwitchCircleColorDisabled\r\n }\r\n return vo.hoverTrans ? vo.effCheckedSwitchCircleColorHover : vo.effCheckedSwitchCircleColor\r\n },\r\n\r\n effUncheckedSwitchCircleColor: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchCircleColor)\r\n },\r\n\r\n effUncheckedSwitchCircleColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchCircleColorHover)\r\n },\r\n\r\n effUncheckedSwitchCircleColorDisabled: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchCircleColorDisabled)\r\n },\r\n\r\n useUncheckedSwitchCircleColor: function() {\r\n let vo = this\r\n if (!vo.editable) {\r\n return vo.effUncheckedSwitchCircleColorDisabled\r\n }\r\n return vo.hoverTrans ? vo.effUncheckedSwitchCircleColorHover : vo.effUncheckedSwitchCircleColor\r\n },\r\n\r\n useSwitchCircleColor: function() {\r\n let vo = this\r\n return vo.b ? vo.useCheckedSwitchCircleColor : vo.useUncheckedSwitchCircleColor\r\n },\r\n\r\n effCheckedSwitchBarColor: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchBarColor)\r\n },\r\n\r\n effCheckedSwitchBarColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchBarColorHover)\r\n },\r\n\r\n effCheckedSwitchBarColorDisabled: function() {\r\n let vo = this\r\n return color2hex(vo.checkedSwitchBarColorDisabled)\r\n },\r\n\r\n useCheckedSwitchBarColor: function() {\r\n let vo = this\r\n if (!vo.editable) {\r\n return vo.effCheckedSwitchBarColorDisabled\r\n }\r\n return vo.hoverTrans ? vo.effCheckedSwitchBarColorHover : vo.effCheckedSwitchBarColor\r\n },\r\n\r\n effUncheckedSwitchBarColor: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchBarColor)\r\n },\r\n\r\n effUncheckedSwitchBarColorHover: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchBarColorHover)\r\n },\r\n\r\n effUncheckedSwitchBarColorDisabled: function() {\r\n let vo = this\r\n return color2hex(vo.uncheckedSwitchBarColorDisabled)\r\n },\r\n\r\n useUncheckedSwitchBarColor: function() {\r\n let vo = this\r\n if (!vo.editable) {\r\n return vo.effUncheckedSwitchBarColorDisabled\r\n }\r\n return vo.hoverTrans ? vo.effUncheckedSwitchBarColorHover : vo.effUncheckedSwitchBarColor\r\n },\r\n\r\n useSwitchBarColor: function() {\r\n let vo = this\r\n return vo.b ? vo.useCheckedSwitchBarColor : vo.useUncheckedSwitchBarColor\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n toogleValue: function () {\r\n // console.log('methods toogleValue')\r\n\r\n let vo = this\r\n\r\n //check\r\n if (!vo.editable) {\r\n return\r\n }\r\n\r\n //toogle\r\n let b = vo.b\r\n b = !b\r\n\r\n //value\r\n let value = null\r\n if (isbol(vo.value)) {\r\n value = false\r\n if (b) {\r\n value = true\r\n }\r\n }\r\n else {\r\n value = 'n'\r\n if (b) {\r\n value = 'y'\r\n }\r\n }\r\n\r\n //nextTick\r\n vo.$nextTick(() => {\r\n\r\n //emit\r\n vo.$emit('input', value)\r\n\r\n })\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n.ts {\r\n transition:all 0.3s;\r\n}\r\n.bs {\r\n box-shadow: 0px 2px 4px -1px rgb(0 0 0 / 20%), 0px 4px 5px 0px rgb(0 0 0 / 14%), 0px 1px 10px 0px rgb(0 0 0 / 12%);\r\n}\r\n</style>\r\n"]},media:void 0})}),qx,"data-v-61d311b4",false,undefined,!1,vd,void 0,void 0);var tS=function(n,e,t){for(var r=-1,o=n.length,i=e.length,l={};++r<o;){var a=r<i?e[r]:void 0;t(l,n[r],a)}return l},rS=fh,oS=tS;var iS=function(n,e){return oS(n||[],e||[],rS)};function lS(n){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(!Fg(n))return{};if(Fg(e))return ud(n)===ud(e)?iS(n,e):{};let t=[];for(let r=0;r<ud(n);r++)t.push(rg(e));return iS(n,t)}function aS(n,e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(!Fg(n))return[];if(!Fg(e))return[];let r=ii(n,(n=>function(n,e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(!ks(n))return{};if(!Fg(e))return{};let r={};return Fn(e,(function(e){r[e]=wo(n,e,t)})),r}(n,e,t)));return r}var dS={directives:{domresize:ac()},components:{WButtonCircle:Uf,WPopup:ib,WText:Yx,WButtonChip:$f,WAggridVueDyn:Hd},props:{pathItems:{type:Array},name:{type:String,default:""},description:{type:String,default:""},inforPaddingStyle:{type:Object,default:()=>({v:0,h:0})},menuPaddingStyle:{type:Object,default:()=>({v:3,h:3})},menuBackgroundColor:{type:String,default:"transparent"},sortColIds:{type:[String,Array],default:""},hideIds:{type:[String,Array],default:""},fixIds:{type:[String,Array],default:""},checkId:{type:String,default:""},removeIdsWhenDownload:{type:[String,Array],default:""},funGetLtdtHookWhenDownload:{type:Function,default:null},funGetMatHookWhenDownload:{type:Function,default:null},useHeadWhenDownload:{type:Boolean,default:!1},fileNameWhenDownload:{type:String,default:"data.xlsx"},sheetNameWhenDownload:{type:String,default:"data"},editable:{type:Boolean,default:!1},textLabelDataName:{type:String,default:"Data name:"},textPlaceholderDataName:{type:String,default:"Please enter data name"},textLabelDataDescription:{type:String,default:"Data description:"},textPlaceholderDataDescription:{type:String,default:"Please enter data description"},tooltipAddRow:{type:String,default:"add new row"},tooltipDeleteSelectedRows:{type:String,default:"delete selected rows"},tooltipDownloadExcelFile:{type:String,default:"download data to Excel file"},tooltipUploadExcelFile:{type:String,default:"upload data to Excel file"},successMsgFromAddRow:{type:String,default:"add row successfully"},errorMsgFromAddRow:{type:String,default:"can not add row"},errorMsgFromRemoveRow:{type:String,default:"can not remove selected rows"},successMsgFromUploadData:{type:String,default:"upload data successfully"},errorMsgFromUploadData:{type:String,default:"can not upload data"},errorMsgFromUploadEmptyData:{type:String,default:"no effective data"},successMsgFromDownloadData:{type:String,default:"download data successfully"},errorMsgFromDownloadData:{type:String,default:"can not download data"},errorMsgFromNoName:{type:String,default:"no data name"},errorMsgFromNoData:{type:String,default:"no data"},uploadModeTitle:{type:String,default:"Choose mode of upload:"},uploadModeTextForReplace:{type:String,default:"Replace"},uploadModeTextForAppend:{type:String,default:"Append"},opt:{type:Object,default:null}},data:function(){return{mdiDownload:"M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z",mdiUpload:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z",mdiDeleteForever:"M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19M8.46,11.88L9.87,10.47L12,12.59L14.12,10.47L15.53,11.88L13.41,14L15.53,16.12L14.12,17.53L12,15.41L9.88,17.53L8.47,16.12L10.59,14L8.46,11.88M15.5,4L14.5,3H9.5L8.5,4H5V6H19V4H15.5Z",mdiTextBoxPlusOutline:"M17,14H19V17H22V19H19V22H17V19H14V17H17V14M5,3H19C20.11,3 21,3.89 21,5V12.8C20.39,12.45 19.72,12.2 19,12.08V5H5V19H12.08C12.2,19.72 12.45,20.39 12.8,21H5C3.89,21 3,20.11 3,19V5C3,3.89 3.89,3 5,3M7,7H17V9H7V7M7,11H17V12.08C16.15,12.22 15.37,12.54 14.68,13H7V11M7,15H12V17H7V15Z",tableHeight:1,showPickUploadMode:!1,paramsTemp:null,nameTrans:"",descriptionTrans:"",rowsSelect:[],useOpt:null,nameTemp:"",descriptionTemp:"",rowsTemp:[]}},computed:{changeParamsForInfor:function(){let n=this,e=n.name,t=n.description;return n.nameTrans=jc(n.name),n.descriptionTrans=jc(n.description),n.nameTemp=jc(n.name),n.descriptionTemp=jc(n.description),n.___changeParamsForInfor___={name:e,description:t},""},changeParamsForTable:function(){let n=this,e={rows:wo(n,"opt.rows"),hideIds:n.hideIds,fixIds:n.fixIds,checkId:n.checkId,editable:n.editable};return ah(n.paramsTemp,e)||(n.genOpt(),n.paramsTemp=rg(e)),""},kpUploadModeItems:function(){return{replace:this.uploadModeTextForReplace,append:this.uploadModeTextForAppend}},useKeys:function(){let n=this,e=[];return Fg(wo(n,"opt.keys"))?e=wo(n,"opt.keys"):Fg(wo(n,"opt.rows"))&&(e=wn(wo(n,"rows.0",{}))),e},useKpHead:function(){let n,e=this;return ks(wo(e,"opt.kpHead"))?n=wo(e,"opt.kpHead"):(n={},Fn(e.useKeys,(e=>{n[e]=e}))),n},hasEffRows:function(){return ud(wo(this,"useOpt.rows",[]))>0},hasEffUseOpt:function(){return null!==this.useOpt},hasEffNameAndDesp:function(){return""!==this.nameTrans||""!==this.descriptionTrans},hasEffLabelNameAndDesp:function(){return""!==this.textLabelDataName||""!==this.textLabelDataDescription},useInforPadding:function(){return`padding:${tp(this.inforPaddingStyle)};`},useMenuPaddingStyle:function(){return`padding:${tp(this.menuPaddingStyle)};`},useMenuBackgroundColor:function(){return fd(this.menuBackgroundColor)}},methods:{domresize:function(n){let e=this,t=0,r=wo(e,"$el.offsetHeight",0),o=wo(e,"$refs.menu.offsetHeight");r>0&&o>0&&(t=r-o),t=Math.max(t,200),e.tableHeight=t},default:function(){let n=this;n.tableHeight=200,n.rowsSelect=[],n.useOpt=null,n.rowsTemp=[]},genOpt:function(){let n=this;if(0===ud(n.useKeys))return void n.default();let e=null;if(e=di(wo(n,"opt.rows"))?rg(wo(n,"opt.rows")):[lS(n.useKeys)],Fi(n.sortColIds))try{e=Is(e,n.sortColIds)}catch(n){console.log(n)}else Fg(n.sortColIds)&&Fn(n.sortColIds,(n=>{try{e=Is(e,n)}catch(n){console.log(n)}}));n.rowsTemp=rg(e);let t={rows:e,keys:n.useKeys,defCellEditable:n.editable,defCellAlighH:"left",kpHead:n.useKpHead,rowChecked:function(e){n.rowsSelect=e}};if(Fi(n.hideIds)?t.kpHeadHide=lS([n.hideIds],!0):Fg(n.hideIds)&&(t.kpHeadHide=lS(n.hideIds,!0)),Fi(n.fixIds)?t.kpHeadFixLeft=lS([n.fixIds],!0):Fg(n.fixIds)&&(t.kpHeadFixLeft=lS(n.fixIds,!0)),n.editable&&Fi(n.checkId)&&(t.kpHeadCheckBox=lS([n.checkId],!0)),ks(n.opt)){let e=rg(n.opt);Fn(e,((n,e)=>{"keys"!==e&&"rows"!==e&&"kpHead"!==e&&"editable"!==e&&(t[e]=n)}))}n.useOpt=t},addRow:function(){let n=this;if(0===ud(n.useKeys))return n.default(),void n.$emit("error",n.errorMsgFromAddRow);let e=lS(n.useKeys);e.id=ws(),ci(wo(n,"opt.beforeAddRow"))&&(e=n.opt.beforeAddRow(e));try{n.useOpt.rows.push(e),n.$nextTick((()=>{let e=wo(n,"$refs.cmp.$refs.$self.getInstance");if(ci(e)){e().api.ensureIndexVisible(n.useOpt.rows.length-1,"bottom")}})),n.$emit("success",n.successMsgFromAddRow)}catch(e){console.log(e),n.$emit("error",n.errorMsgFromAddRow)}},removeRows:function(){let n=this,e=wo(n,"useOpt.rows",[]);if(e=rg(e),0===ud(e))return;let t=ii(n.rowsSelect,"rowInd");if(0!==ud(t)){ky(e,t);try{n.useOpt.rows=e}catch(e){n.$emit("error",n.errorMsgFromRemoveRow)}n.rowsSelect=[]}},downloadData:function(){let n=this;try{let e=wo(n,"$refs.cmp.$refs.$self.downloadData");if(!ci(e))return;e({funGetKeysHook:e=>(Fi(n.removeIdsWhenDownload)?Ip(e,n.removeIdsWhenDownload):Fg(n.removeIdsWhenDownload)&&Ip(e,...n.removeIdsWhenDownload),e),funGetLtdtHook:n.funGetLtdtHookWhenDownload,funGetMatHook:n.funGetMatHookWhenDownload,useHead:n.useHeadWhenDownload,fileName:n.fileNameWhenDownload,sheetName:n.sheetNameWhenDownload,pathItems:null}),n.$emit("success",n.successMsgFromDownloadData)}catch(e){n.$emit("error",n.errorMsgFromDownloadData)}},uploadData:function(n){let e=this,t=wo(e,"$refs.cmp.$refs.$self.uploadData");if(!ci(t))return;let r=wo(e,"opt.optForUploadData");Vi(r)||(r={}),Fi(wo(r,"uploadMode"))||(r.uploadMode=n),ci(wo(r,"beforeUpload"))||(r.beforeUpload=n=>{let e=[];return Fn(n,(n=>{pb(n,(n=>""===n))||e.push(n)})),e}),t(r).then((n=>{0===ud(n)?e.$emit("error",e.errorMsgFromUploadEmptyData):e.$emit("success",e.successMsgFromUploadData),e.rowsSelect=[]})).catch((n=>{console.log("catch",n),e.$emit("error",e.errorMsgFromUploadData)}))},save:function(){let n,e=this;try{n=function(){let n=jc(e.nameTrans),t=jc(e.descriptionTrans);if(!Fi(n))return{err:e.errorMsgFromNoName};let r=wo(e,"useOpt.rows",[]);r=aS(r,e.useKeys),ci(wo(e,"opt.modifyDataWhenSave"))&&(r=e.opt.modifyDataWhenSave(r));let o=wo(e,"opt.checkNoDataWhenSave");return Tc(o)||(o=!1),o&&0===r.length?{err:e.errorMsgFromNoData}:{name:n,nameTemp:e.nameTrans,description:t,descriptionTemp:e.descriptionTemp,rows:rg(r),rowsTemp:rg(e.rowsTemp)}}()}catch(e){n={err:e}}return n}}};const sS=dS;var cS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParamsForInfor:n.changeParamsForInfor,changeParamsForTable:n.changeParamsForTable}},[n.hasEffUseOpt?[t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],ref:"menu",on:{domresize:n.domresize}},[n.editable?[t("div",{style:""+n.useInforPadding},[t("table",{staticStyle:{width:"100%"}},[t("tbody",[t("tr",[t("td",{style:(n.hasEffLabelNameAndDesp?"padding-right:5px;":"")+" vertical-align:middle; opacity:0.8; font-size:0.8rem; white-space:nowrap;"},[n._v(n._s(n.textLabelDataName))]),n._v(" "),t("td",{staticStyle:{width:"100%","vertical-align":"middle"}},[t("w-text",{staticStyle:{width:"100%"},attrs:{placeholder:n.textPlaceholderDataName},model:{value:n.nameTrans,callback:function(e){n.nameTrans=e},expression:"nameTrans"}})],1)]),n._v(" "),t("tr",[t("td",{style:(n.hasEffLabelNameAndDesp?"padding-right:5px;":"")+" vertical-align:middle; opacity:0.8; font-size:0.8rem; white-space:nowrap;"},[n._v(n._s(n.textLabelDataDescription))]),n._v(" "),t("td",{staticStyle:{width:"100%","vertical-align":"middle"}},[t("w-text",{staticStyle:{width:"100%"},attrs:{placeholder:n.textPlaceholderDataDescription},model:{value:n.descriptionTrans,callback:function(e){n.descriptionTrans=e},expression:"descriptionTrans"}})],1)])])])]),n._v(" "),t("div",{style:n.useMenuPaddingStyle+" background:"+n.useMenuBackgroundColor+";"},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("WButtonCircle",{staticStyle:{margin:"5px"},attrs:{icon:n.mdiTextBoxPlusOutline,backgroundColor:"white",backgroundColorHover:"white",tooltip:n.tooltipAddRow},on:{click:n.addRow}}),n._v(" "),n.rowsSelect.length>0?t("WButtonCircle",{staticStyle:{margin:"5px"},attrs:{icon:n.mdiDeleteForever,iconColor:"#f26",backgroundColor:"white",backgroundColorHover:"white",tooltip:n.tooltipDeleteSelectedRows},on:{click:n.removeRows}}):n._e(),n._v(" "),n.hasEffRows?t("WButtonCircle",{staticStyle:{margin:"5px"},attrs:{icon:n.mdiDownload,backgroundColor:"white",backgroundColorHover:"white",tooltip:n.tooltipDownloadExcelFile},on:{click:n.downloadData}}):n._e(),n._v(" "),t("WPopup",{scopedSlots:n._u([{key:"trigger",fn:function(){return[t("WButtonCircle",{staticStyle:{margin:"5px"},attrs:{icon:n.mdiUpload,backgroundColor:"white",backgroundColorHover:"white",tooltip:n.tooltipUploadExcelFile},on:{click:function(e){n.showPickUploadMode=!0}}})]},proxy:!0},{key:"content",fn:function(){return[t("div",{staticStyle:{padding:"10px","font-size":"0.8rem",color:"#666",background:"#eee"}},[n._v("\n "+n._s(n.uploadModeTitle)+"\n ")]),n._v(" "),t("div",{staticStyle:{padding:"15px"}},[t("WButtonChip",{staticStyle:{"margin-right":"15px"},attrs:{text:n.kpUploadModeItems.replace,backgroundColor:"white",backgroundColorHover:"#f6f6f6"},on:{click:function(e){n.showPickUploadMode=!1,n.uploadData("replace")}}}),n._v(" "),t("WButtonChip",{attrs:{_style:"margin:5px;",text:n.kpUploadModeItems.append,backgroundColor:"white",backgroundColorHover:"#f6f6f6"},on:{click:function(e){n.showPickUploadMode=!1,n.uploadData("append")}}})],1)]},proxy:!0}],null,!1,2771795469),model:{value:n.showPickUploadMode,callback:function(e){n.showPickUploadMode=e},expression:"showPickUploadMode"}}),n._v(" "),n._t("btns",null,{editable:n.editable})],2)])]:[t("div",{style:"display:flex; align-items:center;"},[t("div",{style:n.useMenuPaddingStyle+" background:"+n.useMenuBackgroundColor+";"},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[n.hasEffRows?t("WButtonCircle",{staticStyle:{margin:"5px"},attrs:{icon:n.mdiDownload,tooltip:n.tooltipDownloadExcelFile,backgroundColor:"white",backgroundColorHover:"white"},on:{click:n.downloadData}}):n._e(),n._v(" "),n._t("btns",null,{editable:n.editable})],2)]),n._v(" "),t("div",{style:""+n.useInforPadding},[n._t("infor",(function(){return[t("div",{style:"display:inline-block; "+(n.hasEffNameAndDesp?"margin-left:5px;":"")},[t("div",{staticStyle:{"font-size":"1.0rem"}},[n._v("\n "+n._s(n.nameTrans)+"\n ")]),n._v(" "),t("div",{staticStyle:{"font-size":"0.8rem",opacity:"0.8"}},[n._v("\n "+n._s(n.descriptionTrans)+"\n ")])])]}),{infor:{name:n.nameTrans,description:n.descriptionTrans}})],2)])]],2),n._v(" "),t("WAggridVueDyn",{ref:"cmp",attrs:{pathItems:n.pathItems,height:n.tableHeight,opt:n.useOpt}})]:n._e()],2)};cS._withStripped=!0;const uS=md({render:cS,staticRenderFns:[]},(function(n){n&&n("data-v-12add12c_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTableDyn.vue"},media:void 0})}),sS,"data-v-12add12c",false,undefined,!1,vd,void 0,void 0);const pS={props:{value:{type:String,default:""},placeholder:{type:String,default:""},borderColorFocus:{type:String,default:"purple lighten-3"},editable:{type:Boolean,default:!0}},data:function(){return{valueTrans:""}},mounted:function(){},computed:{changeParam:function(){return this.valueTrans=this.value,""}},methods:{changeContent:function(n){let e=this;e.$nextTick((()=>{e.$emit("input",n)}))}}};var fS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("v-textarea",{staticStyle:{margin:"0px",padding:"0px"},attrs:{"auto-grow":"","hide-details":"",rows:"1",color:n.borderColorFocus,placeholder:n.placeholder,disabled:!n.editable},on:{change:n.changeContent},model:{value:n.valueTrans,callback:function(e){n.valueTrans=e},expression:"valueTrans"}})],1)};fS._withStripped=!0;const hS=md({render:fS,staticRenderFns:[]},(function(n){n&&n("data-v-d791ca92_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTextarea.vue"},media:void 0})}),pS,"data-v-d791ca92",false,undefined,!1,vd,void 0,void 0);const mS={components:{WShellEllipse:rC,WTextCore:dC},props:{width:{type:Number,default:70},value:{type:Number,default:0},valueMax:{type:Number,default:null},textFontSize:{type:String,default:"1rem"},textColor:{type:String,default:"black"},leftIconTooltip:{type:String,default:"減少"},rightIconTooltip:{type:String,default:"增加"},buttonIconSize:{type:Number,default:24},buttonColor:{type:String,default:"white"},buttonColorHover:{type:String,default:"white"},buttonColorFocus:{type:String,default:"white"},height:{type:Number,default:28},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiPlusCircle:xc,mdiMinusCircle:"M17,13H7V11H17M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z",valueTrans:"",focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){let n=this;return n.valueTrans=n.value,n.focusedTrans=n.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))},changeContent:function(n,e){let t,r=this;if(!1===r.editable)return;if(""!==e&&r.$refs.inp.setFocus(),t=iC(n,"isp0int"),t.err)return n=0,void r.$nextTick((()=>{0===r.valueTrans?r.$refs.inp.setValue(n):(r.valueTrans=n,r.$emit("input",n)),r.$emit("error",t.errmsg)}));n=Ei(n),"minus"===e?n-=1:"add"===e&&(n+=1),r.valueMax&&n>r.valueMax&&(n=r.valueMax);n<0&&(n=0),r.valueTrans!==n&&r.$nextTick((()=>{r.valueTrans=n,r.$emit("input",n)}))}}};var gS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{attrs:{shadow:!1,paddingStyle:{v:0,h:0},backgroundColor:"transparent",backgroundColorHover:"transparent",backgroundColorFocus:"transparent",borderWidth:0,borderColor:"transparent",borderColorHover:"transparent",borderColorFocus:"transparent",iconShiftOuter:0,leftIcon:n.mdiMinusCircle,leftIconSize:n.buttonIconSize,leftIconColor:n.buttonColor,leftIconColorHover:n.buttonColorHover,leftIconColorFocus:n.buttonColorFocus,leftIconTooltip:n.leftIconTooltip,rightIcon:n.mdiPlusCircle,rightIconSize:n.buttonIconSize,rightIconColor:n.buttonColor,rightIconColorHover:n.buttonColorHover,rightIconColorFocus:n.buttonColorFocus,rightIconTooltip:n.rightIconTooltip,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.changeContent(n.valueTrans,"minus")},"click-right":function(e){return n.changeContent(n.valueTrans,"add")}}},[t("WTextCore",{ref:"inp",style:{width:n.width+"px"},attrs:{textFontSize:n.textFontSize,textColor:n.textColor,textAlign:"center",height:n.height,editable:n.editable,value:n.valueTrans,focused:n.focusedTrans},on:{"update:focused":n.changeFocused,input:function(e){n.changeContent(e,"")}}})],1)],1)};gS._withStripped=!0;const vS=md({render:gS,staticRenderFns:[]},(function(n){n&&n("data-v-6529e6ed_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTextIntCore.vue"},media:void 0})}),mS,"data-v-6529e6ed",false,undefined,!1,vd,void 0,void 0);const yS={components:{WShellEllipse:rC,WTextIntCore:vS},props:{width:{type:Number,default:70},paddingStyle:{type:Object,default:()=>({v:0,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},value:{type:Number,default:0},valueMax:{type:Number,default:null},textFontSize:{type:String,default:"1rem"},textColor:{type:String,default:"black"},icon:{type:String,default:""},iconSize:{type:Number,default:24},iconColor:{type:String,default:"deep-orange lighten-2"},iconColorHover:{type:String,default:"deep-orange lighten-1"},iconColorFocus:{type:String,default:"deep-orange lighten-1"},iconTooltip:{type:String,default:""},leftIconTooltip:{type:String,default:"減少"},rightIconTooltip:{type:String,default:"增加"},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},buttonIconSize:{type:Number,default:24},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},buttonColor:{type:String,default:"deep-orange lighten-2"},buttonColorHover:{type:String,default:"deep-orange lighten-1"},buttonColorFocus:{type:String,default:"deep-orange lighten-1"},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var bS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block"},attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{staticStyle:{display:"inline-block"},attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.icon,leftIconSize:n.iconSize,leftIconColor:n.iconColor,leftIconColorHover:n.iconColorHover,leftIconColorFocus:n.iconColorFocus,leftIconTooltip:n.iconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")}}},[t("div",{staticStyle:{margin:"0px -10px"}},[t("WTextIntCore",{attrs:{width:n.width,leftIconTooltip:n.leftIconTooltip,rightIconTooltip:n.rightIconTooltip,buttonIconSize:n.buttonIconSize,buttonColor:n.buttonColor,buttonColorHover:n.buttonColorHover,buttonColorFocus:n.buttonColorFocus,valueMax:n.valueMax,value:n.value,textFontSize:n.textFontSize,textColor:n.textColor,editable:n.editable,focused:n.focusedTrans},on:{"update:focused":n.changeFocused,input:function(e){n.$emit("input",e)},error:function(e){n.$emit("error",e)}}})],1)])],1)};bS._withStripped=!0;const CS=md({render:bS,staticRenderFns:[]},(function(n){n&&n("data-v-55b5bb62_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTextInt.vue"},media:void 0})}),yS,"data-v-55b5bb62",false,undefined,!1,vd,void 0,void 0);const IS={directives:{domresize:ac()},components:{WShellEllipse:rC,WTextSuggestCore:uC},props:{paddingStyle:{type:Object,default:()=>({v:2,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},items:{type:Array,default:()=>[]},value:{type:[Object,String,Number],default:null},keyText:{type:String,default:"text"},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},itemTextFontSize:{type:String,default:"0.8rem"},itemTextColor:{type:String,default:"grey darken-3"},itemTextColorHover:{type:String,default:"light-blue darken-2"},itemBackgroundColor:{type:String,default:"white"},itemBackgroundColorHover:{type:String,default:"light-blue lighten-5"},itemPaddingStyle:{type:Object,default:()=>({v:12,h:16})},leftIcon:{type:String,default:""},leftIconSize:{type:Number,default:24},leftIconColor:{type:String,default:"deep-orange lighten-2"},leftIconColorHover:{type:String,default:"deep-orange lighten-1"},leftIconColorFocus:{type:String,default:"deep-orange lighten-1"},leftIconTooltip:{type:String,default:""},rightIcon:{type:String,default:""},rightIconSize:{type:Number,default:24},rightIconColor:{type:String,default:"deep-orange lighten-2"},rightIconColorHover:{type:String,default:"deep-orange lighten-1"},rightIconColorFocus:{type:String,default:"deep-orange lighten-1"},rightIconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},showExpansionIcon:{type:Boolean,default:!0},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},maxHeight:{type:Number,default:200},minWidth:{type:Number,default:null},maxWidth:{type:Number,default:null},autoFitMinWidth:{type:Boolean,default:!0},autoFitMaxWidth:{type:Boolean,default:!0},defItemHeight:{type:Number,default:43},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1},showPanel:{type:Boolean,default:!1}},data:function(){return{constBorderWidth:1,focusedTrans:!1,showPanelTrans:!1,useDistY:0}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{resize:function(n){let e=this,t=tp(e.paddingStyle,{returnObj:!0}).bottom-2,r=wo(e,"$el.offsetHeight",0)-26-2*t;r/=2;e.useDistY=t+r+5},getText:function(n){let e=this;return Vi(n)?n[e.keyText]:n},updateFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))},updateShowPanel:function(n){let e=this;e.showPanelTrans=n,e.$nextTick((()=>{e.$emit("update:showPanel",n)}))}}};var xS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{directives:[{name:"domresize",rawName:"v-domresize"}],attrs:{changeParam:n.changeParam},on:{domresize:n.resize}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderWidth:n.constBorderWidth,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.leftIcon,leftIconSize:n.leftIconSize,leftIconColor:n.leftIconColor,leftIconColorHover:n.leftIconColorHover,leftIconColorFocus:n.leftIconColorFocus,leftIconTooltip:n.leftIconTooltip,rightIcon:n.rightIcon,rightIconSize:n.rightIconSize,rightIconColor:n.rightIconColor,rightIconColorHover:n.rightIconColorHover,rightIconColorFocus:n.rightIconColorFocus,rightIconTooltip:n.rightIconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")},"click-right":function(e){return n.$emit("click-right")}}},[t("div",{staticStyle:{"margin-right":"-5px"}},[t("WTextSuggestCore",{attrs:{mode:"select",items:n.items,value:n.value,keyText:n.keyText,textFontSize:n.textFontSize,textColor:n.textColor,itemTextFontSize:n.itemTextFontSize,itemTextColor:n.itemTextColor,itemTextColorHover:n.itemTextColorHover,itemBackgroundColor:n.itemBackgroundColor,itemBackgroundColorHover:n.itemBackgroundColorHover,itemPaddingStyle:n.itemPaddingStyle,expansionIcon:n.showExpansionIcon?void 0:"",expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,maxHeight:n.maxHeight,minWidth:n.minWidth,maxWidth:n.maxWidth,autoFitMinWidth:n.autoFitMinWidth,autoFitMaxWidth:n.autoFitMaxWidth,placementDist:n.useDistY,defItemHeight:n.defItemHeight,editable:n.editable,focused:n.focusedTrans,showPanel:n.showPanelTrans},on:{"update:focused":function(e){n.updateFocused(e),n.$emit("blur",null,null)},"update:showPanel":n.updateShowPanel,input:function(e,t){n.$emit("input",e,t)},"click-item":function(e,t){n.$emit("click-item",e,t)}},scopedSlots:n._u([{key:"select",fn:function(e){return[n._t("select",(function(){return[n._v("\n "+n._s(e.text)+"\n ")]}),{item:e.item,text:e.text})]}},{key:"item",fn:function(e){return[n._t("item",(function(){return[t("div",[n._v(n._s(n.getText(e.item)))])]}),{item:e.item,index:e.index})]}}],null,!0)})],1)])],1)};xS._withStripped=!0;const SS=md({render:xS,staticRenderFns:[]},(function(n){n&&n("data-v-6e8713fe_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTextSelect.vue"},media:void 0})}),IS,"data-v-6e8713fe",false,undefined,!1,vd,void 0,void 0);var wS={};!function(n,e){n.exports=function(){var n=1e3,e=6e4,t=36e5,r="millisecond",o="second",i="minute",l="hour",a="day",d="week",s="month",c="quarter",u="year",p="date",f="Invalid Date",h=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(n){var e=["th","st","nd","rd"],t=n%100;return"["+n+(e[(t-20)%10]||e[t]||e[0])+"]"}},v=function(n,e,t){var r=String(n);return!r||r.length>=e?n:""+Array(e+1-r.length).join(t)+n},y={s:v,z:function(n){var e=-n.utcOffset(),t=Math.abs(e),r=Math.floor(t/60),o=t%60;return(e<=0?"+":"-")+v(r,2,"0")+":"+v(o,2,"0")},m:function n(e,t){if(e.date()<t.date())return-n(t,e);var r=12*(t.year()-e.year())+(t.month()-e.month()),o=e.clone().add(r,s),i=t-o<0,l=e.clone().add(r+(i?-1:1),s);return+(-(r+(t-o)/(i?o-l:l-o))||0)},a:function(n){return n<0?Math.ceil(n)||0:Math.floor(n)},p:function(n){return{M:s,y:u,w:d,d:a,D:p,h:l,m:i,s:o,ms:r,Q:c}[n]||String(n||"").toLowerCase().replace(/s$/,"")},u:function(n){return void 0===n}},b="en",C={};C[b]=g;var I=function(n){return n instanceof k},x=function n(e,t,r){var o;if(!e)return b;if("string"==typeof e){var i=e.toLowerCase();C[i]&&(o=i),t&&(C[i]=t,o=i);var l=e.split("-");if(!o&&l.length>1)return n(l[0])}else{var a=e.name;C[a]=e,o=a}return!r&&o&&(b=o),o||!r&&b},S=function(n,e){if(I(n))return n.clone();var t="object"==typeof e?e:{};return t.date=n,t.args=arguments,new k(t)},w=y;w.l=x,w.i=I,w.w=function(n,e){return S(n,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var k=function(){function g(n){this.$L=x(n.locale,null,!0),this.parse(n)}var v=g.prototype;return v.parse=function(n){this.$d=function(n){var e=n.date,t=n.utc;if(null===e)return new Date(NaN);if(w.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(h);if(r){var o=r[2]-1||0,i=(r[7]||"0").substring(0,3);return t?new Date(Date.UTC(r[1],o,r[3]||1,r[4]||0,r[5]||0,r[6]||0,i)):new Date(r[1],o,r[3]||1,r[4]||0,r[5]||0,r[6]||0,i)}}return new Date(e)}(n),this.$x=n.x||{},this.init()},v.init=function(){var n=this.$d;this.$y=n.getFullYear(),this.$M=n.getMonth(),this.$D=n.getDate(),this.$W=n.getDay(),this.$H=n.getHours(),this.$m=n.getMinutes(),this.$s=n.getSeconds(),this.$ms=n.getMilliseconds()},v.$utils=function(){return w},v.isValid=function(){return!(this.$d.toString()===f)},v.isSame=function(n,e){var t=S(n);return this.startOf(e)<=t&&t<=this.endOf(e)},v.isAfter=function(n,e){return S(n)<this.startOf(e)},v.isBefore=function(n,e){return this.endOf(e)<S(n)},v.$g=function(n,e,t){return w.u(n)?this[e]:this.set(t,n)},v.unix=function(){return Math.floor(this.valueOf()/1e3)},v.valueOf=function(){return this.$d.getTime()},v.startOf=function(n,e){var t=this,r=!!w.u(e)||e,c=w.p(n),f=function(n,e){var o=w.w(t.$u?Date.UTC(t.$y,e,n):new Date(t.$y,e,n),t);return r?o:o.endOf(a)},h=function(n,e){return w.w(t.toDate()[n].apply(t.toDate("s"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),t)},m=this.$W,g=this.$M,v=this.$D,y="set"+(this.$u?"UTC":"");switch(c){case u:return r?f(1,0):f(31,11);case s:return r?f(1,g):f(0,g+1);case d:var b=this.$locale().weekStart||0,C=(m<b?m+7:m)-b;return f(r?v-C:v+(6-C),g);case a:case p:return h(y+"Hours",0);case l:return h(y+"Minutes",1);case i:return h(y+"Seconds",2);case o:return h(y+"Milliseconds",3);default:return this.clone()}},v.endOf=function(n){return this.startOf(n,!1)},v.$set=function(n,e){var t,d=w.p(n),c="set"+(this.$u?"UTC":""),f=(t={},t[a]=c+"Date",t[p]=c+"Date",t[s]=c+"Month",t[u]=c+"FullYear",t[l]=c+"Hours",t[i]=c+"Minutes",t[o]=c+"Seconds",t[r]=c+"Milliseconds",t)[d],h=d===a?this.$D+(e-this.$W):e;if(d===s||d===u){var m=this.clone().set(p,1);m.$d[f](h),m.init(),this.$d=m.set(p,Math.min(this.$D,m.daysInMonth())).$d}else f&&this.$d[f](h);return this.init(),this},v.set=function(n,e){return this.clone().$set(n,e)},v.get=function(n){return this[w.p(n)]()},v.add=function(r,c){var p,f=this;r=Number(r);var h=w.p(c),m=function(n){var e=S(f);return w.w(e.date(e.date()+Math.round(n*r)),f)};if(h===s)return this.set(s,this.$M+r);if(h===u)return this.set(u,this.$y+r);if(h===a)return m(1);if(h===d)return m(7);var g=(p={},p[i]=e,p[l]=t,p[o]=n,p)[h]||1,v=this.$d.getTime()+r*g;return w.w(v,this)},v.subtract=function(n,e){return this.add(-1*n,e)},v.format=function(n){var e=this,t=this.$locale();if(!this.isValid())return t.invalidDate||f;var r=n||"YYYY-MM-DDTHH:mm:ssZ",o=w.z(this),i=this.$H,l=this.$m,a=this.$M,d=t.weekdays,s=t.months,c=function(n,t,o,i){return n&&(n[t]||n(e,r))||o[t].slice(0,i)},u=function(n){return w.s(i%12||12,n,"0")},p=t.meridiem||function(n,e,t){var r=n<12?"AM":"PM";return t?r.toLowerCase():r},h={YY:String(this.$y).slice(-2),YYYY:this.$y,M:a+1,MM:w.s(a+1,2,"0"),MMM:c(t.monthsShort,a,s,3),MMMM:c(s,a),D:this.$D,DD:w.s(this.$D,2,"0"),d:String(this.$W),dd:c(t.weekdaysMin,this.$W,d,2),ddd:c(t.weekdaysShort,this.$W,d,3),dddd:d[this.$W],H:String(i),HH:w.s(i,2,"0"),h:u(1),hh:u(2),a:p(i,l,!0),A:p(i,l,!1),m:String(l),mm:w.s(l,2,"0"),s:String(this.$s),ss:w.s(this.$s,2,"0"),SSS:w.s(this.$ms,3,"0"),Z:o};return r.replace(m,(function(n,e){return e||h[n]||o.replace(":","")}))},v.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},v.diff=function(r,p,f){var h,m=w.p(p),g=S(r),v=(g.utcOffset()-this.utcOffset())*e,y=this-g,b=w.m(this,g);return b=(h={},h[u]=b/12,h[s]=b,h[c]=b/3,h[d]=(y-v)/6048e5,h[a]=(y-v)/864e5,h[l]=y/t,h[i]=y/e,h[o]=y/n,h)[m]||y,f?b:w.a(b)},v.daysInMonth=function(){return this.endOf(s).$D},v.$locale=function(){return C[this.$L]},v.locale=function(n,e){if(!n)return this.$L;var t=this.clone(),r=x(n,e,!0);return r&&(t.$L=r),t},v.clone=function(){return w.w(this.$d,this)},v.toDate=function(){return new Date(this.valueOf())},v.toJSON=function(){return this.isValid()?this.toISOString():null},v.toISOString=function(){return this.$d.toISOString()},v.toString=function(){return this.$d.toUTCString()},g}(),T=k.prototype;return S.prototype=T,[["$ms",r],["$s",o],["$m",i],["$H",l],["$W",a],["$M",s],["$y",u],["$D",p]].forEach((function(n){T[n[1]]=function(e){return this.$g(e,n[0],n[1])}})),S.extend=function(n,e){return n.$i||(n(e,k,S),n.$i=!0),S},S.locale=x,S.isDayjs=I,S.unix=function(n){return S(1e3*n)},S.en=C[b],S.Ls=C,S.p={},S}()}({get exports(){return wS},set exports(n){wS=n}});var kS=wS;function TS(n){if(!Fi(n))return!1;let e="YYYY-MM-DD";return n===kS(n,e).format(e)}var HS={props:{value:{type:String,default:""},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{mdiChevronLeft:"M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z",mdiChevronRight:mc,show:!1,value_day:""}},mounted:function(){},watch:{show:function(n){this.$emit("update:focused",n)}},computed:{changeParam:function(){let n=this,e=n.value;return TS(e)?n.value_day=e:n.value_day="",""},getShowTime:function(){return this.value_day},useTextFontSize:function(){let n=this.textFontSize;return n=Ts(n,";",""),`font-size:${n};`},useTextColor:function(){return fd(this.textColor)}},methods:{getDay:function(n){let e=Ra(n,"-");return e=wo(e,"[2]"),e=Ei(e),e},ch_day:function(n){let e=this,t=n,r="";TS(t)&&(r=t),e.show=!1,e.$nextTick((()=>{e.$emit("input",r)}))}}};const WS=HS;var ZS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("v-menu",{attrs:{"offset-y":"","nudge-bottom":n.placementDist,"close-on-content-click":!1,disabled:!n.editable},scopedSlots:n._u([{key:"activator",fn:function(e){var r=e.on;return[t("div",n._g({style:"_width:83px; color:"+n.useTextColor+"; "+n.useTextFontSize,attrs:{TimedayCore:"day"}},r),[n._v("\n "+n._s(n.getShowTime)+"\n ")])]}}]),model:{value:n.show,callback:function(e){n.show=e},expression:"show"}},[n._v(" "),t("v-date-picker",{attrs:{"no-title":"",locale:"zh-tw","prev-icon":n.mdiChevronLeft,"next-icon":n.mdiChevronRight,color:n.pickColor,"day-format":n.getDay,value:n.value_day},on:{input:n.ch_day}})],1)],1)};ZS._withStripped=!0;const XS=md({render:ZS,staticRenderFns:[]},(function(n){n&&n("data-v-a884d58c_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimedayCore.vue"},media:void 0})}),WS,"data-v-a884d58c",false,undefined,!1,vd,void 0,void 0);const BS={components:{WShellEllipse:rC,WTimedayCore:XS},props:{textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},paddingStyle:{type:Object,default:()=>({v:2,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},value:{type:String,default:""},icon:{type:String,default:gc},iconSize:{type:Number,default:24},iconColor:{type:String,default:"deep-orange lighten-2"},iconColorHover:{type:String,default:"deep-orange lighten-1"},iconColorFocus:{type:String,default:"deep-orange lighten-1"},iconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},pickColor:{type:String,default:"deep-orange darken-1"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:gc,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var AS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block",cursor:"pointer"},attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.icon,leftIconSize:n.iconSize,leftIconColor:n.iconColor,leftIconColorHover:n.iconColorHover,leftIconColorFocus:n.iconColorFocus,leftIconTooltip:n.iconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")}}},[t("WTimedayCore",{attrs:{textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,value:n.value,placementDist:n.placementDist,editable:n.editable},on:{"update:focused":n.changeFocused,input:function(e){n.$emit("input",e)}}})],1)],1)};AS._withStripped=!0;const VS=md({render:AS,staticRenderFns:[]},(function(n){n&&n("data-v-27011eee_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimeday.vue"},media:void 0})}),BS,"data-v-27011eee",false,undefined,!1,vd,void 0,void 0);const PS={components:{WTimedayCore:XS},props:{dayStart:{type:String,default:""},dayEnd:{type:String,default:""},between:{type:String,default:"to"},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{focused_start:!1,focused_end:!1}},computed:{useTextFontSize:function(){let n=this.textFontSize;return n=Ts(n,";",""),`font-size:${n};`},useTextColor:function(){return fd(this.textColor)}},methods:{changeFocused:function(){let n=this,e=n.focused_start||n.focused_end;n.$nextTick((()=>{n.$emit("update:focused",e)}))}}};var KS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("WTimedayCore",{attrs:{TimedayRangeCore:"dayFrom",textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,placementDist:n.placementDist,editable:n.editable,value:n.dayStart},on:{"update:focused":function(e){n.focused_start=e,n.changeFocused()},input:function(e){n.$emit("update:dayStart",e)}}}),n._v(" "),t("div",{style:"padding-left:5px; padding-right:8px; color:"+n.useTextColor+"; "+n.useTextFontSize},[n._v("\n "+n._s(n.between)+"\n ")]),n._v(" "),t("WTimedayCore",{attrs:{TimedayRangeCore:"dayTo",textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,placementDist:n.placementDist,editable:n.editable,value:n.dayEnd},on:{"update:focused":function(e){n.focused_end=e,n.changeFocused()},input:function(e){n.$emit("update:dayEnd",e)}}})],1)])};KS._withStripped=!0;const GS=md({render:KS,staticRenderFns:[]},(function(n){n&&n("data-v-d2ecdcc4_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimedayRangeCore.vue"},media:void 0})}),PS,"data-v-d2ecdcc4",false,undefined,!1,vd,void 0,void 0);const FS={components:{WShellEllipse:rC,WTimedayRangeCore:GS},props:{paddingStyle:{type:Object,default:()=>({v:2,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},dayStart:{type:String,default:""},dayEnd:{type:String,default:""},between:{type:String,default:"to"},icon:{type:String,default:gc},iconSize:{type:Number,default:24},iconColor:{type:String,default:"deep-orange lighten-2"},iconColorHover:{type:String,default:"deep-orange lighten-1"},iconColorFocus:{type:String,default:"deep-orange lighten-1"},iconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:gc,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var YS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block",cursor:"pointer"},attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.icon,leftIconSize:n.iconSize,leftIconColor:n.iconColor,leftIconColorHover:n.iconColorHover,leftIconColorFocus:n.iconColorFocus,leftIconTooltip:n.iconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")}}},[t("WTimedayRangeCore",{attrs:{pickColor:n.pickColor,textFontSize:n.textFontSize,textColor:n.textColor,between:n.between,dayStart:n.dayStart,dayEnd:n.dayEnd,placementDist:n.placementDist,editable:n.editable},on:{"update:focused":n.changeFocused,"update:dayStart":function(e){n.$emit("update:dayStart",e)},"update:dayEnd":function(e){n.$emit("update:dayEnd",e)}}})],1)],1)};YS._withStripped=!0;const RS=md({render:YS,staticRenderFns:[]},(function(n){n&&n("data-v-ed82f1be_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimedayRange.vue"},media:void 0})}),FS,"data-v-ed82f1be",false,undefined,!1,vd,void 0,void 0);var LS=Nd;var jS=function(n){return(null==n?0:n.length)?LS(n,Infinity):[]};var NS={components:{WTimedayCore:XS,WTextSuggestCore:uC},props:{value:{type:String,default:""},hourMin:{type:Number,default:8},hourMax:{type:Number,default:18},minuteInter:{type:Number,default:15},minutesCustom:{type:Array,default:null},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},expansionIcon:{type:String,default:Ic},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{value_day:"",value_time:"",focused_day:!1,focused_time:!1}},mounted:function(){},computed:{changeParam:function(){let n=this,e=n.value,t=Ra(e,"T");return n.value_day=wo(t,0),n.value_time=Ec(wo(t,1),5),""},getUseMinutes:function(){let n=this;if(di(n.minutesCustom))return n.minutesCustom;let e=$i(n.hourMin)&&$i(n.hourMax)&&n.hourMin<=n.hourMax,t=$i(n.minuteInter);if(!e||!t)return;let r=ii(Gy(n.hourMin,n.hourMax+1),(function(e){let t=String(e);return e<10&&(t="0"+t),ii(Gy(0,60,n.minuteInter),(function(n){let e=String(n);return n<10&&(e="0"+e),t+":"+e}))}));r=jS(r);let o=String(n.hourMax);return n.hourMax<10&&(o="0"+o),o+=":00",r=Gd(r,(function(n){return n<=o})),r}},methods:{ch_day:function(n){this.value_day=n,this.changeContent()},ch_time:function(n){this.value_time=n,this.changeContent()},changeContent:function(){let n=this,e=n.value_day+"T"+n.value_time+":00";(function(n){if(!Fi(n))return!1;let e="YYYY-MM-DDTHH:mm:ss";return n===kS(n,e).format(e)})(e)&&n.$nextTick((()=>{n.$emit("input",e)}))},changeFocused:function(){let n=this,e=n.focused_day||n.focused_time;n.$nextTick((()=>{n.$emit("update:focused",e)}))}}};const zS=NS;var JS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{attrs:{changeParam:n.changeParam}},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("WTimedayCore",{staticStyle:{"margin-right":"5px"},attrs:{TimeminuteCore:"day",textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,placementDist:n.placementDist,editable:n.editable,value:n.value_day},on:{"update:focused":function(e){n.focused_day=e,n.changeFocused()},input:n.ch_day}}),n._v(" "),t("div",{staticStyle:{"margin-right":"-3px"}},[t("WTextSuggestCore",{attrs:{TimeminuteCore:"minute",mode:"select",textFontSize:n.textFontSize,textColor:n.textColor,placementDist:n.placementDist,minWidth:70,expansionIcon:n.expansionIcon,expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,editable:n.editable,items:n.getUseMinutes,value:n.value_time},on:{"update:focused":function(e){n.focused_time=e,n.changeFocused()},input:n.ch_time}})],1)],1)])};JS._withStripped=!0;const OS=md({render:JS,staticRenderFns:[]},(function(n){n&&n("data-v-6abfa7c4_0",{source:"\n[data-v-6abfa7c4] div.v-input__icon {\r\n transform: translateX(-5px);\n}\r\n",map:{version:3,sources:["D:\\- 006 - 開源\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WTimeminuteCore.vue"],names:[],mappings:";AAiSA;IACA,2BAAA;AACA",file:"WTimeminuteCore.vue",sourcesContent:["<template>\r\n <div\r\n style=\"\"\r\n :changeParam=\"changeParam\"\r\n >\r\n \x3c!-- 盡量不要讓display:flex暴露至外層 --\x3e\r\n <div style=\"display:flex; align-items:center;\">\r\n\r\n <WTimedayCore\r\n TimeminuteCore=\"day\"\r\n style=\"margin-right:5px;\"\r\n :textFontSize=\"textFontSize\"\r\n :textColor=\"textColor\"\r\n :pickColor=\"pickColor\"\r\n :placementDist=\"placementDist\"\r\n :editable=\"editable\"\r\n :value=\"value_day\"\r\n @update:focused=\"(v)=>{focused_day=v;changeFocused()}\"\r\n @input=\"ch_day\"\r\n ></WTimedayCore>\r\n\r\n <div style=\"margin-right:-3px;\">\r\n <WTextSuggestCore\r\n TimeminuteCore=\"minute\"\r\n :mode=\"'select'\"\r\n :textFontSize=\"textFontSize\"\r\n :textColor=\"textColor\"\r\n :placementDist=\"placementDist\"\r\n :minWidth=\"70\"\r\n :expansionIcon=\"expansionIcon\"\r\n :expansionIconSize=\"expansionIconSize\"\r\n :expansionIconColor=\"expansionIconColor\"\r\n :editable=\"editable\"\r\n :items=\"getUseMinutes\"\r\n :value=\"value_time\"\r\n @update:focused=\"(v)=>{focused_time=v;changeFocused()}\"\r\n @input=\"ch_time\"\r\n ></WTextSuggestCore>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mdiPlay } from '@mdi/js'\r\nimport split from 'lodash/split'\r\nimport get from 'lodash/get'\r\nimport map from 'lodash/map'\r\nimport range from 'lodash/range'\r\nimport flattenDeep from 'lodash/flattenDeep'\r\nimport filter from 'lodash/filter'\r\nimport strleft from 'wsemi/src/strleft.mjs'\r\nimport isarr from 'wsemi/src/isarr.mjs'\r\nimport istime from 'wsemi/src/istime.mjs'\r\nimport ispint from 'wsemi/src/ispint.mjs'\r\nimport WTimedayCore from './WTimedayCore.vue'\r\nimport WTextSuggestCore from './WTextSuggestCore.vue'\r\n\r\n\r\n/**\r\n * @vue-prop {String} [value=''] 輸入日期字串,預設''\r\n * @vue-prop {Number} [hourMin=8] 輸入可選最小小時,單位為小時,預設8\r\n * @vue-prop {Number} [hourMax=8] 輸入可選最大小時,單位為小時,預設8\r\n * @vue-prop {Number} [minuteInter=15] 輸入每小時的切分區間,單位為分鐘,預設15\r\n * @vue-prop {Array} [minutesCustom=null] 輸入自訂可選的時分點字串陣列,單位為時分(00:00),若給予,則上述hourMin,hourMax,minuteInter自動失效,預設null\r\n * @vue-prop {String} [textFontSize='0.85rem'] 輸入文字大小字串,預設'0.85rem'\r\n * @vue-prop {String} [textColor='black'] 輸入文字顏色字串,預設'black'\r\n * @vue-prop {String} [pickColor='deep-orange darken-1'] 輸入日期彈窗中選擇指定日期之顏色字串,預設'deep-orange darken-1'\r\n * @vue-prop {String} [expansionIcon=mdiPlay] 輸入顯隱圖標字串,可為mdi,md,fa代號或mdi/js路徑,預設使用mdi的圖標(mdiPlay)\r\n * @vue-prop {Number} [expansionIconSize=18] 輸入顯隱圖標尺寸數字,單位為px,預設18\r\n * @vue-prop {String} [expansionIconColor='grey'] 輸入顯隱圖標顏色字串,預設'grey'\r\n * @vue-prop {Number} [placementDist=7] 輸入日期彈窗y向下平移數字,預設7\r\n * @vue-prop {Boolean} [editable=true] 輸入是否為編輯模式,預設true\r\n */\r\nexport default {\r\n components: {\r\n WTimedayCore,\r\n WTextSuggestCore\r\n },\r\n props: {\r\n value: {\r\n type: String,\r\n default: '',\r\n },\r\n hourMin: {\r\n type: Number,\r\n default: 8,\r\n },\r\n hourMax: {\r\n type: Number,\r\n default: 18,\r\n },\r\n minuteInter: {\r\n type: Number,\r\n default: 15,\r\n },\r\n minutesCustom: {\r\n type: Array,\r\n default: null,\r\n },\r\n textFontSize: {\r\n type: String,\r\n default: '0.85rem',\r\n },\r\n textColor: {\r\n type: String,\r\n default: 'black',\r\n },\r\n pickColor: {\r\n type: String,\r\n default: 'deep-orange darken-1',\r\n },\r\n expansionIcon: {\r\n type: String,\r\n default: mdiPlay,\r\n },\r\n expansionIconSize: {\r\n type: Number,\r\n default: 18,\r\n },\r\n expansionIconColor: {\r\n type: String,\r\n default: 'grey',\r\n },\r\n placementDist: {\r\n type: Number,\r\n default: 7,\r\n },\r\n editable: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n data: function() {\r\n return {\r\n value_day: '',\r\n value_time: '',\r\n focused_day: false,\r\n focused_time: false,\r\n }\r\n },\r\n mounted: function() {\r\n },\r\n computed: {\r\n\r\n changeParam: function () {\r\n //console.log('computed changeParam')\r\n\r\n let vo = this\r\n\r\n //value for trigger\r\n let value = vo.value\r\n\r\n //s\r\n let s = split(value, 'T')\r\n\r\n //day\r\n vo.value_day = get(s, 0)\r\n\r\n //time\r\n vo.value_time = strleft(get(s, 1), 5)\r\n\r\n return ''\r\n },\r\n\r\n getUseMinutes: function () {\r\n //console.log('computed getUseMinutes')\r\n\r\n let vo = this\r\n\r\n if (isarr(vo.minutesCustom)) {\r\n return vo.minutesCustom\r\n }\r\n\r\n let b1 = ispint(vo.hourMin) && ispint(vo.hourMax) && vo.hourMin <= vo.hourMax\r\n let b2 = ispint(vo.minuteInter)\r\n if (!b1 || !b2) {\r\n return\r\n }\r\n\r\n //rs, 各時分\r\n let rs = map(range(vo.hourMin, vo.hourMax + 1), function(hour) {\r\n\r\n //產生時\r\n let h = String(hour)\r\n if (hour < 10) {\r\n h = '0' + h\r\n }\r\n\r\n //產生分\r\n return map(range(0, 60, vo.minuteInter), function(min) {\r\n let m = String(min)\r\n if (min < 10) {\r\n m = '0' + m\r\n }\r\n return h + ':' + m\r\n })\r\n })\r\n rs = flattenDeep(rs)\r\n\r\n //hMax\r\n let hMax = String(vo.hourMax)\r\n if (vo.hourMax < 10) {\r\n hMax = '0' + hMax\r\n }\r\n hMax = hMax + ':00'\r\n rs = filter(rs, function(r) {\r\n return r <= hMax\r\n })\r\n\r\n return rs\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n ch_day: function(v) {\r\n //console.log('methods ch_day',v)\r\n\r\n let vo = this\r\n\r\n //save\r\n vo.value_day = v\r\n\r\n //changeContent\r\n vo.changeContent()\r\n\r\n },\r\n\r\n ch_time: function(v) {\r\n //console.log('methods ch_time',v)\r\n\r\n let vo = this\r\n\r\n //save\r\n vo.value_time = v\r\n\r\n //changeContent\r\n vo.changeContent()\r\n\r\n },\r\n\r\n changeContent: function () {\r\n //console.log('methods changeContent')\r\n\r\n let vo = this\r\n\r\n //value\r\n let value = vo.value_day + 'T' + vo.value_time + ':00'\r\n\r\n //check\r\n if (!istime(value)) {\r\n return\r\n }\r\n\r\n //$nextTick\r\n vo.$nextTick(() => {\r\n\r\n //emit\r\n vo.$emit('input', value)\r\n\r\n })\r\n\r\n },\r\n\r\n changeFocused: function() {\r\n //console.log('methods changeFocused')\r\n\r\n let vo = this\r\n\r\n //focused\r\n let focused = vo.focused_day || vo.focused_time\r\n\r\n //$nextTick\r\n vo.$nextTick(() => {\r\n\r\n //emit\r\n vo.$emit('update:focused', focused)\r\n\r\n })\r\n\r\n },\r\n\r\n },\r\n}\r\n<\/script>\r\n\r\n<style scoped>\r\n::v-deep div.v-input__icon {\r\n transform: translateX(-5px);\r\n}\r\n</style>\r\n"]},media:void 0})}),zS,"data-v-6abfa7c4",false,undefined,!1,vd,void 0,void 0);const DS={components:{WShellEllipse:rC,WTimeminuteCore:OS},props:{paddingStyle:{type:Object,default:()=>({v:2,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},value:{type:String,default:""},hourMin:{type:Number,default:8},hourMax:{type:Number,default:18},minuteInter:{type:Number,default:15},minutesCustom:{type:Array,default:null},icon:{type:String,default:gc},iconSize:{type:Number,default:24},iconColor:{type:String,default:"deep-orange lighten-2"},iconColorHover:{type:String,default:"deep-orange lighten-1"},iconColorFocus:{type:String,default:"deep-orange lighten-1"},iconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},expansionIcon:{type:String,default:Ic},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:gc,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var ES=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block",cursor:"pointer"},attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.icon,leftIconSize:n.iconSize,leftIconColor:n.iconColor,leftIconColorHover:n.iconColorHover,leftIconColorFocus:n.iconColorFocus,leftIconTooltip:n.iconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")}}},[t("WTimeminuteCore",{attrs:{hourMin:n.hourMin,hourMax:n.hourMax,minuteInter:n.minuteInter,minutesCustom:n.minutesCustom,textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,expansionIcon:n.expansionIcon,expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,placementDist:n.placementDist,editable:n.editable,value:n.value},on:{"update:focused":n.changeFocused,input:function(e){n.$emit("input",e)}}})],1)],1)};ES._withStripped=!0;const $S=md({render:ES,staticRenderFns:[]},(function(n){n&&n("data-v-2f113e70_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimeminute.vue"},media:void 0})}),DS,"data-v-2f113e70",false,undefined,!1,vd,void 0,void 0);const QS={components:{WTimeminuteCore:OS},props:{minuteStart:{type:String,default:""},minuteEnd:{type:String,default:""},between:{type:String,default:"to"},hourMin:{type:Number,default:8},hourMax:{type:Number,default:18},minuteInter:{type:Number,default:15},minutesCustom:{type:Array,default:null},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},expansionIcon:{type:String,default:Ic},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{focused_start:!1,focused_end:!1}},computed:{useTextFontSize:function(){let n=this.textFontSize;return n=Ts(n,";",""),`font-size:${n};`},useTextColor:function(){return fd(this.textColor)}},methods:{changeFocused:function(){let n=this,e=n.focused_start||n.focused_end;n.$nextTick((()=>{n.$emit("update:focused",e)}))}}};var MS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{},[t("div",{staticStyle:{display:"flex","align-items":"center"}},[t("WTimeminuteCore",{attrs:{TimeminuteRangeCore:"dayminuFrom",hourMin:n.hourMin,hourMax:n.hourMax,minuteInter:n.minuteInter,minutesCustom:n.minutesCustom,textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,expansionIcon:n.expansionIcon,expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,placementDist:n.placementDist,editable:n.editable,value:n.minuteStart},on:{"update:focused":function(e){n.focused_start=e,n.changeFocused()},input:function(e){n.$emit("update:minuteStart",e)}}}),n._v(" "),t("div",{style:"padding-left:9px; padding-right:11px; color:"+n.useTextColor+"; "+n.useTextFontSize},[n._v("\n "+n._s(n.between)+"\n ")]),n._v(" "),t("WTimeminuteCore",{attrs:{TimeminuteRangeCore:"dayminuTo",hourMin:n.hourMin,hourMax:n.hourMax,minuteInter:n.minuteInter,minutesCustom:n.minutesCustom,textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,expansionIcon:n.expansionIcon,expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,placementDist:n.placementDist,editable:n.editable,value:n.minuteEnd},on:{"update:focused":function(e){n.focused_end=e,n.changeFocused()},input:function(e){n.$emit("update:minuteEnd",e)}}})],1)])};MS._withStripped=!0;const _S=md({render:MS,staticRenderFns:[]},(function(n){n&&n("data-v-468d3de8_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimeminuteRangeCore.vue"},media:void 0})}),QS,"data-v-468d3de8",false,undefined,!1,vd,void 0,void 0);const US={components:{WShellEllipse:rC,WTimeminuteRangeCore:_S},props:{paddingStyle:{type:Object,default:()=>({v:2,h:15})},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},minuteStart:{type:String,default:""},minuteEnd:{type:String,default:""},between:{type:String,default:"to"},hourMin:{type:Number,default:8},hourMax:{type:Number,default:18},minuteInter:{type:Number,default:15},minutesCustom:{type:Array,default:null},icon:{type:String,default:gc},iconSize:{type:Number,default:24},iconColor:{type:String,default:"deep-orange lighten-2"},iconColorHover:{type:String,default:"deep-orange lighten-1"},iconColorFocus:{type:String,default:"deep-orange lighten-1"},iconTooltip:{type:String,default:""},iconShiftOuter:{type:Number,default:-10},iconShiftInner:{type:Number,default:5},backgroundColor:{type:String,default:"white"},backgroundColorHover:{type:String,default:"white"},backgroundColorFocus:{type:String,default:"white"},borderColor:{type:String,default:"white"},borderColorHover:{type:String,default:"white"},borderColorFocus:{type:String,default:"white"},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},expansionIcon:{type:String,default:Ic},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},placementDist:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:gc,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){let e=this;e.focusedTrans=n,e.$nextTick((()=>{e.$emit("update:focused",n)}))}}};var qS=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block",cursor:"pointer"},attrs:{changeParam:n.changeParam}},[t("WShellEllipse",{attrs:{paddingStyle:n.paddingStyle,borderRadius:n.borderRadius,shadow:n.shadow,leftIcon:n.icon,leftIconSize:n.iconSize,leftIconColor:n.iconColor,leftIconColorHover:n.iconColorHover,leftIconColorFocus:n.iconColorFocus,leftIconTooltip:n.iconTooltip,iconShiftOuter:n.iconShiftOuter,iconShiftInner:n.iconShiftInner,backgroundColor:n.backgroundColor,backgroundColorHover:n.backgroundColorHover,backgroundColorFocus:n.backgroundColorFocus,borderColor:n.borderColor,borderColorHover:n.borderColorHover,borderColorFocus:n.borderColorFocus,editable:n.editable,focused:n.focusedTrans},on:{"click-left":function(e){return n.$emit("click-left")}}},[t("WTimeminuteRangeCore",{attrs:{textFontSize:n.textFontSize,textColor:n.textColor,pickColor:n.pickColor,expansionIcon:n.expansionIcon,expansionIconSize:n.expansionIconSize,expansionIconColor:n.expansionIconColor,hourMin:n.hourMin,hourMax:n.hourMax,minuteInter:n.minuteInter,minutesCustom:n.minutesCustom,between:n.between,minuteEnd:n.minuteEnd,minuteStart:n.minuteStart,placementDist:n.placementDist,editable:n.editable},on:{"update:focused":n.changeFocused,"update:minuteEnd":function(e){n.$emit("update:minuteEnd",e)},"update:minuteStart":function(e){n.$emit("update:minuteStart",e)}}})],1)],1)};qS._withStripped=!0;const nw=md({render:qS,staticRenderFns:[]},(function(n){n&&n("data-v-70bbdea5_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTimeminuteRange.vue"},media:void 0})}),US,"data-v-70bbdea5",false,undefined,!1,vd,void 0,void 0);const ew={components:{WIconLoading:xd},props:{pathItems:{type:Array,default:()=>["https://cdn.jsdelivr.net/npm/tinymce@5.10.7/tinymce.min.js","https://cdn.jsdelivr.net/npm/w-tinymce-vue@2.0.5/dist/w-tinymce-vue.umd.js"]},value:{type:String,default:""},settings:{type:Object,default:()=>{}},height:{type:Number,default:250},editable:{type:Boolean,default:!0}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){let n=this;rl(n.pathItems).then((e=>{if("loaded"!==e){let n=window["w-tinymce-vue"];n.default&&(n=n.default),wd().component("w-tinymce-vue",n)}n.cmpName="w-tinymce-vue"}))},computed:{},methods:{}};var tw=function(){var n=this,e=n.$createElement;return(n._self._c||e)(n.cmpName,{ref:"$self",tag:"component",attrs:{settings:n.settings,height:n.height,editable:n.editable,value:n.value},on:{input:function(e){n.$emit("input",e)}}})};tw._withStripped=!0;const rw=md({render:tw,staticRenderFns:[]},(function(n){n&&n("data-v-e73339a0_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"WTinymceVueDyn.vue"},media:void 0})}),ew,"data-v-e73339a0",false,undefined,!1,vd,void 0,void 0);let ow={install:function(n){n.component("w-aggrid-vue-dyn",Hd),n.prototype.$alert=Ms,n.component("w-badge",cc),n.component("w-button-chip",$f),n.component("w-button-circle",Uf),n.component("w-checkbox",th),n.component("w-ckeditor-vue-dyn",ih),n.component("w-confirm",ug),n.component("w-dialog",ag),n.component("w-drawer",Sg),n.component("w-dropfiles",Zg),n.component("w-dynamic-list",av),n.component("w-echarts-vue-dyn",cv),n.component("w-explorer",Fb),n.component("w-group-baggage",zb),n.component("w-group-baggage-item",Lb),n.component("w-group-check",$b),n.component("w-group-dragdrop",_b),n.component("w-group-radio",nC),n.component("w-group-tags",yC),n.component("w-highcharts-bitmap-dyn",IC),n.component("w-highcharts-vue-dyn",wC),n.component("w-highstock-vue-dyn",HC),n.component("w-icon",sp),n.component("w-icon-loading",xd),n.component("w-icon-svg",XC),n.component("w-image-cascading-dyn",HI),n.component("w-image-viewer-dyn",XI),n.component("w-input-checkbox",PI),n.component("w-input-radio",FI),n.component("w-json-view",UI),n.component("w-leaflet-vue-dyn",ex),n.component("w-list-expand",sx),n.component("w-list-expand-item",ix),n.component("w-list-horizontal",fx),n.component("w-list-item",yb),n.component("w-list-vertical",xb),n.component("w-panel-avatar",vx),n.component("w-panel-bulge",Cx),n.component("w-panel-divide-horizontal",Sx),n.component("w-panel-divide-vertical",Tx),n.component("w-panel-scale",Zx),n.component("w-panel-scrolly",mb),n.component("w-panel-scrolly-core",tv),n.component("w-panel-stripe",Ax),n.component("w-popup",ib),n.component("w-popup-edit-text",jx),n.component("w-progress-bar",Ox),n.component("w-progress-circle",$x),n.component("w-quill-vue-dyn",_x),n.component("w-shell-bottom-line",Kx),n.component("w-shell-ellipse",rC),n.component("w-switch",eS),n.component("w-table-dyn",uS),n.component("w-text",Yx),n.component("w-textarea",hS),n.component("w-text-core",dC),n.component("w-text-int",CS),n.component("w-text-int-core",vS),n.component("w-text-select",SS),n.component("w-text-suggest",hC),n.component("w-text-suggest-core",uC),n.component("w-timeday",VS),n.component("w-timeday-core",XS),n.component("w-timeday-range",RS),n.component("w-timeday-range-core",GS),n.component("w-timeminute",$S),n.component("w-timeminute-core",OS),n.component("w-timeminute-range",nw),n.component("w-timeminute-range-core",_S),n.component("w-tinymce-vue-dyn",rw),n.component("w-tooltip",Jf),n.component("w-tree",Vb),n.component("w-tree-icon-checkbox",Wb),n.component("w-tree-icon-toggle",kb)}};return md({},undefined,ow,undefined,undefined,undefined,!1,void 0,void 0,void 0)}));
17
17
  //# sourceMappingURL=w-component-vue.umd.js.map