w-component-vue 2.2.59 → 2.2.60
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.
- package/README.md +1 -1
- package/dist/w-component-vue.umd.js +2 -2
- package/docs/binarySearch.mjs.html +1 -1
- package/docs/examples/app.html +1 -1
- package/docs/examples/app.umd.js +2 -2
- package/docs/examples/w-aggrid-vue-dyn_defCellEditable.html +1 -1
- package/docs/examples/w-aggrid-vue-dyn_kpCellEditable_kpRowStyle.html +1 -1
- package/docs/examples/w-aggrid-vue-dyn_kpHeadTooltip_kpCellTooltip.html +1 -1
- package/docs/examples/w-aggrid-vue-dyn_large data (1,000,000 items).html +1 -1
- package/docs/examples/w-aggrid-vue-dyn_simple data.html +1 -1
- package/docs/examples/w-alert_backgroundColor.html +1 -1
- package/docs/examples/w-alert_borderColor.html +1 -1
- package/docs/examples/w-alert_borderRadius.html +1 -1
- package/docs/examples/w-alert_borderWidth.html +1 -1
- package/docs/examples/w-alert_default.html +1 -1
- package/docs/examples/w-alert_icon.html +1 -1
- package/docs/examples/w-alert_position.html +1 -1
- package/docs/examples/w-alert_recive closed event by promise.html +1 -1
- package/docs/examples/w-alert_shadowStyle.html +1 -1
- package/docs/examples/w-alert_textColor.html +1 -1
- package/docs/examples/w-alert_time (6s).html +1 -1
- package/docs/examples/w-alert_type error.html +1 -1
- package/docs/examples/w-alert_type infor.html +1 -1
- package/docs/examples/w-alert_type warning.html +1 -1
- package/docs/examples/w-badge_backgroundColor.html +1 -1
- package/docs/examples/w-badge_badgeAlign.html +1 -1
- package/docs/examples/w-badge_borderColor_textColor_backgroundColor.html +1 -1
- package/docs/examples/w-badge_borderRadius.html +1 -1
- package/docs/examples/w-badge_default.html +1 -1
- package/docs/examples/w-badge_textColor_backgroundColor.html +1 -1
- package/docs/examples/w-badge_textFontSize.html +1 -1
- package/docs/examples/w-button-chip_active_backgroundColorActive.html +1 -1
- package/docs/examples/w-button-chip_active_borderColorActive.html +1 -1
- package/docs/examples/w-button-chip_active_iconColorActive.html +1 -1
- package/docs/examples/w-button-chip_active_no shadow_no shadowActive.html +1 -1
- package/docs/examples/w-button-chip_active_shadowActiveStyle.html +1 -1
- package/docs/examples/w-button-chip_active_textColorActive.html +1 -1
- package/docs/examples/w-button-chip_backgroundColor_backgroundColorHover.html +1 -1
- package/docs/examples/w-button-chip_borderColor_borderColorHover.html +1 -1
- package/docs/examples/w-button-chip_borderRadius.html +1 -1
- package/docs/examples/w-button-chip_borderRadiusStyle.html +1 -1
- package/docs/examples/w-button-chip_borderRadiusStyle_borderWidth_borderColor_borderColorHover.html +1 -1
- package/docs/examples/w-button-chip_borderWidth.html +1 -1
- package/docs/examples/w-button-chip_close.html +1 -1
- package/docs/examples/w-button-chip_close_shiftRight.html +1 -1
- package/docs/examples/w-button-chip_default.html +1 -1
- package/docs/examples/w-button-chip_icon (fontawesome).html +1 -1
- package/docs/examples/w-button-chip_icon (material).html +1 -1
- package/docs/examples/w-button-chip_icon_iconColor_iconColorHover_close.html +1 -1
- package/docs/examples/w-button-chip_icon_no text.html +1 -1
- package/docs/examples/w-button-chip_loading.html +1 -1
- package/docs/examples/w-button-chip_loading_loadingColor.html +1 -1
- package/docs/examples/w-button-chip_loading_textColor_textColorHover.html +1 -1
- package/docs/examples/w-button-chip_modify loading by callback in click.html +1 -1
- package/docs/examples/w-button-chip_modify prog by callback in click.html +1 -1
- package/docs/examples/w-button-chip_no shadow.html +1 -1
- package/docs/examples/w-button-chip_not editable.html +1 -1
- package/docs/examples/w-button-chip_not editable_disabledColor.html +1 -1
- package/docs/examples/w-button-chip_paddingStyle (equal height to using icon).html +1 -1
- package/docs/examples/w-button-chip_paddingStyle (thin style).html +1 -1
- package/docs/examples/w-button-chip_paddingStyle_icon_iconSize_textFontSize.html +1 -1
- package/docs/examples/w-button-chip_prog.html +1 -1
- package/docs/examples/w-button-chip_prog_progColor_progBackgroundColor.html +1 -1
- package/docs/examples/w-button-chip_promiseUnlock.html +1 -1
- package/docs/examples/w-button-chip_rippleColor.html +1 -1
- package/docs/examples/w-button-chip_shadowStyle.html +1 -1
- package/docs/examples/w-button-chip_shiftLeft.html +1 -1
- package/docs/examples/w-button-chip_slot_close.html +1 -1
- package/docs/examples/w-button-chip_textColor.html +1 -1
- package/docs/examples/w-button-chip_textColor_textColorHover.html +1 -1
- package/docs/examples/w-button-chip_tooltip.html +1 -1
- package/docs/examples/w-button-circle_backgroundColor_backgroundColorHover_backgroundColorFocus.html +1 -1
- package/docs/examples/w-button-circle_borderWidth_borderColor_borderColorHover_borderColorFocus.html +1 -1
- package/docs/examples/w-button-circle_icon (fontawesome).html +1 -1
- package/docs/examples/w-button-circle_icon (material).html +1 -1
- package/docs/examples/w-button-circle_iconColor_iconColorHover_iconColorFocus.html +1 -1
- package/docs/examples/w-button-circle_loading.html +1 -1
- package/docs/examples/w-button-circle_loading_loadingColor.html +1 -1
- package/docs/examples/w-button-circle_no shadow.html +1 -1
- package/docs/examples/w-button-circle_not editable.html +1 -1
- package/docs/examples/w-button-circle_not editable_disabledColor.html +1 -1
- package/docs/examples/w-button-circle_paddingStyle.html +1 -1
- package/docs/examples/w-button-circle_paddingStyle_iconSize.html +1 -1
- package/docs/examples/w-button-circle_promiseUnlock.html +1 -1
- package/docs/examples/w-button-circle_rippleColor.html +1 -1
- package/docs/examples/w-button-circle_shadowStyle.html +1 -1
- package/docs/examples/w-button-circle_tooltip.html +1 -1
- package/docs/examples/w-checkbox_checkedIconColor_checkedIconColorHover_uncheckedIconColor_uncheckedIconColorHover.html +1 -1
- package/docs/examples/w-checkbox_checkedIcon_uncheckedIcon.html +1 -1
- package/docs/examples/w-checkbox_default.html +1 -1
- package/docs/examples/w-checkbox_iconSize_textFontSize.html +1 -1
- package/docs/examples/w-checkbox_not editable.html +1 -1
- package/docs/examples/w-checkbox_not editable_checkedIconColorDisabled_uncheckedIconColorDisabled.html +1 -1
- package/docs/examples/w-checkbox_text.html +1 -1
- package/docs/examples/w-checkbox_text_textColor_textColorHover.html +1 -1
- package/docs/examples/w-checkbox_use string (y or n).html +1 -1
- package/docs/examples/w-ckeditor-vue-dyn_default.html +1 -1
- package/docs/examples/w-ckeditor-vue-dyn_height.html +1 -1
- package/docs/examples/w-ckeditor-vue-dyn_not editable.html +1 -1
- package/docs/examples/w-ckeditor-vue-dyn_settings.html +1 -1
- package/docs/examples/w-confirm_contentColor_contentIconColor_contentBackgroundColor.html +1 -1
- package/docs/examples/w-confirm_contentIcon (fontawesome).html +1 -1
- package/docs/examples/w-confirm_contentIconColor.html +1 -1
- package/docs/examples/w-confirm_contentIconSize.html +1 -1
- package/docs/examples/w-confirm_hasNoBtn_yesBtnText.html +1 -1
- package/docs/examples/w-confirm_maxWidth.html +1 -1
- package/docs/examples/w-confirm_noBtnTextColor_noBtnTextColorHover_noBtnBackgroundColor_noBtnBackgroundColorHover.html +1 -1
- package/docs/examples/w-confirm_noBtnText_yesBtnText.html +1 -1
- package/docs/examples/w-confirm_scrollable (slot content).html +1 -1
- package/docs/examples/w-confirm_scrollable.html +1 -1
- package/docs/examples/w-confirm_slot content.html +1 -1
- package/docs/examples/w-confirm_slot footer.html +1 -1
- package/docs/examples/w-confirm_slot header.html +1 -1
- package/docs/examples/w-confirm_titleColor_headerBackgroundColor_footerBackgroundColor.html +1 -1
- package/docs/examples/w-confirm_title_content.html +1 -1
- package/docs/examples/w-dialog_closeWithInterceptor.html +1 -1
- package/docs/examples/w-dialog_contentTextColor_contentBackgroundColor.html +1 -1
- package/docs/examples/w-dialog_fullscreen.html +1 -1
- package/docs/examples/w-dialog_hasSaveBtn and hasCloseBtn, no save and close button.html +1 -1
- package/docs/examples/w-dialog_hasSaveBtn, no save button.html +1 -1
- package/docs/examples/w-dialog_headerBackgroundColor.html +1 -1
- package/docs/examples/w-dialog_headerBtns.html +1 -1
- package/docs/examples/w-dialog_headerIconColor_headerTextColor_headerBackgroundColor.html +1 -1
- package/docs/examples/w-dialog_icon (fontawesome).html +1 -1
- package/docs/examples/w-dialog_maxWidth, for narrow width.html +1 -1
- package/docs/examples/w-dialog_multi dialogs.html +1 -1
- package/docs/examples/w-dialog_saveBtnTooltip_closeBtnTooltip.html +1 -1
- package/docs/examples/w-dialog_scrollable.html +1 -1
- package/docs/examples/w-dialog_separate for slot content.html +1 -1
- package/docs/examples/w-dialog_slot content.html +1 -1
- package/docs/examples/w-dialog_slot header-left_header-right.html +1 -1
- package/docs/examples/w-dialog_table in slot content.html +1 -1
- package/docs/examples/w-dialog_title.html +1 -1
- package/docs/examples/w-drawer_afloat.html +1 -1
- package/docs/examples/w-drawer_afloat_afloatByFix.html +1 -1
- package/docs/examples/w-drawer_afloat_afloatByFix_dragDrawerWidth.html +1 -1
- package/docs/examples/w-drawer_afloat_afloatByFix_mode.html +1 -1
- package/docs/examples/w-drawer_afloat_afloatByFix_mode_dragDrawerWidth.html +1 -1
- package/docs/examples/w-drawer_afloat_dragDrawerWidth.html +1 -1
- package/docs/examples/w-drawer_afloat_mode.html +1 -1
- package/docs/examples/w-drawer_afloat_mode_dragDrawerWidth.html +1 -1
- package/docs/examples/w-drawer_afloat_overlayOpacity.html +1 -1
- package/docs/examples/w-drawer_default.html +1 -1
- package/docs/examples/w-drawer_dragDrawerWidth_drawerBarBorderColor_drawerBarBorderSize.html +1 -1
- package/docs/examples/w-drawer_dragDrawerWidth_drawerBarColor_drawerBarSize.html +1 -1
- package/docs/examples/w-drawer_dragDrawerWidth_drawerWidth(sync).html +1 -1
- package/docs/examples/w-drawer_dragDrawerWidth_drawerWidthMin_drawerWidthMax.html +1 -1
- package/docs/examples/w-drawer_drawerWidth.html +1 -1
- package/docs/examples/w-drawer_mode.html +1 -1
- package/docs/examples/w-drawer_mode_dragDrawerWidth.html +1 -1
- package/docs/examples/w-drawer_multiple_dragDrawerWidth_drawerWidthMin_drawerWidthMax.html +1 -1
- package/docs/examples/w-dropfiles_backgroundColor_backgroundColorDropIn_backgroundColorHover.html +1 -1
- package/docs/examples/w-dropfiles_borderColor_borderColorDropIn_borderColorHover_backgroundColorDropIn.html +1 -1
- package/docs/examples/w-dropfiles_borderRadius.html +1 -1
- package/docs/examples/w-dropfiles_borderWidth.html +1 -1
- package/docs/examples/w-dropfiles_default.html +1 -1
- package/docs/examples/w-dropfiles_timeTransition.html +1 -1
- package/docs/examples/w-dynamic-list_change rows.html +1 -1
- package/docs/examples/w-dynamic-list_change slot.html +1 -1
- package/docs/examples/w-dynamic-list_default.html +1 -1
- package/docs/examples/w-dynamic-list_filterKeywords_noResultsText.html +1 -1
- package/docs/examples/w-dynamic-list_large data (1,000,000 items).html +1 -1
- package/docs/examples/w-dynamic-list_processItems.html +1 -1
- package/docs/examples/w-dynamic-list_render.html +1 -1
- package/docs/examples/w-dynamic-list_slot item with image.html +1 -1
- package/docs/examples/w-dynamic-list_viewHeightMax.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_area.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_bar3D.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_continuous.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_heatmap.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_line.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_line3D.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_parallel.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_polar heatmap.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_polar.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_radar.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_scatter.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_stack.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_surface.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_tree.html +1 -1
- package/docs/examples/w-echarts-vue-dyn_treemap.html +1 -1
- package/docs/examples/w-explorer_bindRoot.html +1 -1
- package/docs/examples/w-explorer_btnDisplayTreeBackgroundColor_btnDisplayTreeBackgroundColorHover_btnDisplayTreeBackgroundColorFocus.html +1 -1
- package/docs/examples/w-explorer_btnDisplayTreeIconColor_btnDisplayTreeIconColorHover_btnDisplayTreeIconColorFocus.html +1 -1
- package/docs/examples/w-explorer_btnDisplayTreeIconShow_btnDisplayTreeIconHide_btnDisplayTreeIconSize.html +1 -1
- package/docs/examples/w-explorer_dark mode.html +1 -1
- package/docs/examples/w-explorer_default.html +1 -1
- package/docs/examples/w-explorer_defaultShowTreeFirst.html +1 -1
- package/docs/examples/w-explorer_defaultShowTreeFirst_noSelectedText.html +1 -1
- package/docs/examples/w-explorer_events.html +1 -1
- package/docs/examples/w-explorer_funSortTree.html +1 -1
- package/docs/examples/w-explorer_lineBetweenPathAndListWidth_lineBetweenPathAndListColor.html +1 -1
- package/docs/examples/w-explorer_listBackgroundColor.html +1 -1
- package/docs/examples/w-explorer_listFolderIcon_listFileIcon_listIconSize.html +1 -1
- package/docs/examples/w-explorer_listItemBackgroundColor_listItemBackgroundColorHover_listItemBackgroundColorActive.html +1 -1
- package/docs/examples/w-explorer_listItemIconColor_listItemIconColorHover_listItemIconColorActive.html +1 -1
- package/docs/examples/w-explorer_listItemRippleColor.html +1 -1
- package/docs/examples/w-explorer_listItemTextColor_listItemTextColorHover_listItemTextColorActive.html +1 -1
- package/docs/examples/w-explorer_listItemTextFontSize.html +1 -1
- package/docs/examples/w-explorer_listPaddingStyle.html +1 -1
- package/docs/examples/w-explorer_pathBackgroundColor.html +1 -1
- package/docs/examples/w-explorer_pathBtnBackgroundColor_pathBtnBackgroundColorHover.html +1 -1
- package/docs/examples/w-explorer_pathBtnTextColor_pathBtnTextColorHover.html +1 -1
- package/docs/examples/w-explorer_pathBtnTextFontSize.html +1 -1
- package/docs/examples/w-explorer_pathSepIcon_pathSepIconColor_pathSepIconSize.html +1 -1
- package/docs/examples/w-explorer_showTree.html +1 -1
- package/docs/examples/w-explorer_slot list-item-cover.html +1 -1
- package/docs/examples/w-explorer_slot list-item-sub.html +1 -1
- package/docs/examples/w-explorer_slot list-item-text-left.html +1 -1
- package/docs/examples/w-explorer_slot list-item-text-right.html +1 -1
- package/docs/examples/w-explorer_slot list-item_list-item-cover_list-head_list-foot.html +1 -1
- package/docs/examples/w-explorer_small text.html +1 -1
- package/docs/examples/w-explorer_toggleTreeFoldersAll.html +1 -1
- package/docs/examples/w-explorer_toggleTreeFoldersByFun.html +1 -1
- package/docs/examples/w-explorer_treeAfloat.html +1 -1
- package/docs/examples/w-explorer_treeBackgroundColor.html +1 -1
- package/docs/examples/w-explorer_treeDefItemHeight_listDefItemHeight.html +1 -1
- package/docs/examples/w-explorer_treeDefaultDisplayLevel.html +1 -1
- package/docs/examples/w-explorer_treeDrawerBarSize_treeDrawerBarColor.html +1 -1
- package/docs/examples/w-explorer_treeFolderIconColor_treeFolderIconColorHover_treeFolderIconColorActive.html +1 -1
- package/docs/examples/w-explorer_treeFolderIcon_treeFolderIconSize.html +1 -1
- package/docs/examples/w-explorer_treeIndent.html +1 -1
- package/docs/examples/w-explorer_treeItemBackgroundColor_treeItemBackgroundColorHover_treeItemBackgroundColorActive.html +1 -1
- package/docs/examples/w-explorer_treeItemRippleColor.html +1 -1
- package/docs/examples/w-explorer_treeItemTextColor_treeItemTextColorHover_treeItemTextColorActive.html +1 -1
- package/docs/examples/w-explorer_treeItemTextFontSize.html +1 -1
- package/docs/examples/w-explorer_treePaddingStyle.html +1 -1
- package/docs/examples/w-explorer_treeToggleIconColor_treeToggleIconBackgroundColor_treeToggleIconBackgroundColorHover.html +1 -1
- package/docs/examples/w-explorer_treeToggleIconSize.html +1 -1
- package/docs/examples/w-explorer_treeWidth.html +1 -1
- package/docs/examples/w-explorer_treeWidthMin_treeWidthMax.html +1 -1
- package/docs/examples/w-explorer_triggerClickTreeFolderByFun.html +1 -1
- package/docs/examples/w-explorer_triggerClickTreeFolderById.html +1 -1
- package/docs/examples/w-group-baggage_connLineColor.html +1 -1
- package/docs/examples/w-group-baggage_connLineWidth.html +1 -1
- package/docs/examples/w-group-baggage_connLineZoneWidth.html +1 -1
- package/docs/examples/w-group-baggage_contentBackgroundColor_contentBackgroundColorHover.html +1 -1
- package/docs/examples/w-group-baggage_contentBorderColor_contentBorderColorHover.html +1 -1
- package/docs/examples/w-group-baggage_contentBorderRadius.html +1 -1
- package/docs/examples/w-group-baggage_contentBorderWidth.html +1 -1
- package/docs/examples/w-group-baggage_contentPaddingStyle.html +1 -1
- package/docs/examples/w-group-baggage_contentTextColor_contentTextColorHover.html +1 -1
- package/docs/examples/w-group-baggage_contentTextFontSize.html +1 -1
- package/docs/examples/w-group-baggage_default.html +1 -1
- package/docs/examples/w-group-baggage_keyTag_keyText.html +1 -1
- package/docs/examples/w-group-baggage_slot tag.html +1 -1
- package/docs/examples/w-group-baggage_slot text-sub.html +1 -1
- package/docs/examples/w-group-baggage_slot text_contentPaddingStyle.html +1 -1
- package/docs/examples/w-group-baggage_tagBackgroundColor_tagBackgroundColorHover.html +1 -1
- package/docs/examples/w-group-baggage_tagBorderColor_tagBorderColorHover.html +1 -1
- package/docs/examples/w-group-baggage_tagBorderRadius.html +1 -1
- package/docs/examples/w-group-baggage_tagBorderWidth.html +1 -1
- package/docs/examples/w-group-baggage_tagClickable_contentClickable_events.html +1 -1
- package/docs/examples/w-group-baggage_tagDistBetweenTopAndBaseline.html +1 -1
- package/docs/examples/w-group-baggage_tagPaddingStyle_contentShiftTopFromBaseline.html +1 -1
- package/docs/examples/w-group-baggage_tagTextColor_tagTextColorHover.html +1 -1
- package/docs/examples/w-group-baggage_tagTextFontSize_contentShiftTopFromBaseline.html +1 -1
- package/docs/examples/w-group-check_backgroundColorActive.html +1 -1
- package/docs/examples/w-group-check_backgroundColor_backgroundColorHover.html +1 -1
- package/docs/examples/w-group-check_borderColor_borderColorHover_borderColorActive.html +1 -1
- package/docs/examples/w-group-check_borderRadius.html +1 -1
- package/docs/examples/w-group-check_borderRadius_borderRadiusStyle_paddingStyle.html +1 -1
- package/docs/examples/w-group-check_borderWidth_borderColor_borderColorHover_borderColorActive.html +1 -1
- package/docs/examples/w-group-check_click (console.log).html +1 -1
- package/docs/examples/w-group-check_default.html +1 -1
- package/docs/examples/w-group-check_group (only one).html +1 -1
- package/docs/examples/w-group-check_group_borderColor_borderColorHover_borderColorActive.html +1 -1
- package/docs/examples/w-group-check_group_groupBorderRadiusStyle_groupShift_borderRadius.html +1 -1
- package/docs/examples/w-group-check_icon (fontawesome).html +1 -1
- package/docs/examples/w-group-check_icon (material).html +1 -1
- package/docs/examples/w-group-check_iconColorActive.html +1 -1
- package/docs/examples/w-group-check_iconColor_iconColorHover.html +1 -1
- package/docs/examples/w-group-check_loading.html +1 -1
- package/docs/examples/w-group-check_loading_loadingColor.html +1 -1
- package/docs/examples/w-group-check_marginStyle.html +1 -1
- package/docs/examples/w-group-check_no shadowActive.html +1 -1
- package/docs/examples/w-group-check_not editable.html +1 -1
- package/docs/examples/w-group-check_paddingStyle_borderRadius_textColor_iconColor.html +1 -1
- package/docs/examples/w-group-check_paddingStyle_iconSize_textFontSize.html +1 -1
- package/docs/examples/w-group-check_shadow.html +1 -1
- package/docs/examples/w-group-check_shadowActiveStyle.html +1 -1
- package/docs/examples/w-group-check_shadow_shadowStyle.html +1 -1
- package/docs/examples/w-group-check_shiftLeft.html +1 -1
- package/docs/examples/w-group-check_shiftLeft_shiftRight.html +1 -1
- package/docs/examples/w-group-check_slot_shadow.html +1 -1
- package/docs/examples/w-group-check_textColor.html +1 -1
- package/docs/examples/w-group-check_textColorActive.html +1 -1
- package/docs/examples/w-group-check_textColor_textColorHover.html +1 -1
- package/docs/examples/w-group-check_tooltip.html +1 -1
- package/docs/examples/w-group-dragdrop_default.html +1 -1
- package/docs/examples/w-group-dragdrop_event (dragdrop).html +1 -1
- package/docs/examples/w-group-dragdrop_items(string array).html +1 -1
- package/docs/examples/w-group-dragdrop_keyBinder.html +1 -1
- package/docs/examples/w-group-dragdrop_not draggable.html +1 -1
- package/docs/examples/w-group-dragdrop_not itemStyleInline (block).html +1 -1
- package/docs/examples/w-group-radio_backgroundColorActive.html +1 -1
- package/docs/examples/w-group-radio_backgroundColor_backgroundColorHover.html +1 -1
- package/docs/examples/w-group-radio_borderColor_borderColorHover_borderColorActive.html +1 -1
- package/docs/examples/w-group-radio_borderRadius.html +1 -1
- package/docs/examples/w-group-radio_borderRadius_borderRadiusStyle_paddingStyle.html +1 -1
- package/docs/examples/w-group-radio_borderWidth_borderColor_borderColorHover_borderColorActive.html +1 -1
- package/docs/examples/w-group-radio_click (console.log).html +1 -1
- package/docs/examples/w-group-radio_default.html +1 -1
- package/docs/examples/w-group-radio_group (only one).html +1 -1
- package/docs/examples/w-group-radio_group_borderColor_borderColorHover_borderColorActive.html +1 -1
- package/docs/examples/w-group-radio_group_groupBorderRadiusStyle_groupShift_borderRadius.html +1 -1
- package/docs/examples/w-group-radio_icon (fontawesome).html +1 -1
- package/docs/examples/w-group-radio_icon (material).html +1 -1
- package/docs/examples/w-group-radio_iconColorActive.html +1 -1
- package/docs/examples/w-group-radio_iconColor_iconColorHover.html +1 -1
- package/docs/examples/w-group-radio_loading.html +1 -1
- package/docs/examples/w-group-radio_loading_loadingColor.html +1 -1
- package/docs/examples/w-group-radio_marginStyle.html +1 -1
- package/docs/examples/w-group-radio_no shadowActive.html +1 -1
- package/docs/examples/w-group-radio_not editable.html +1 -1
- package/docs/examples/w-group-radio_paddingStyle_borderRadius_textColor_iconColor.html +1 -1
- package/docs/examples/w-group-radio_paddingStyle_iconSize_textFontSize.html +1 -1
- package/docs/examples/w-group-radio_shadow.html +1 -1
- package/docs/examples/w-group-radio_shadowActiveStyle.html +1 -1
- package/docs/examples/w-group-radio_shadow_shadowStyle.html +1 -1
- package/docs/examples/w-group-radio_shiftLeft.html +1 -1
- package/docs/examples/w-group-radio_shiftLeft_shiftRight.html +1 -1
- package/docs/examples/w-group-radio_slot_shadow.html +1 -1
- package/docs/examples/w-group-radio_textColor.html +1 -1
- package/docs/examples/w-group-radio_textColorActive.html +1 -1
- package/docs/examples/w-group-radio_textColor_textColorHover.html +1 -1
- package/docs/examples/w-group-radio_tooltip.html +1 -1
- package/docs/examples/w-group-tags_backgroundColor_backgroundColorHover.html +1 -1
- package/docs/examples/w-group-tags_borderColor_borderColorHover.html +1 -1
- package/docs/examples/w-group-tags_borderRadius.html +1 -1
- package/docs/examples/w-group-tags_closeWithInterceptor.html +1 -1
- package/docs/examples/w-group-tags_default.html +1 -1
- package/docs/examples/w-group-tags_editableClose(no close button).html +1 -1
- package/docs/examples/w-group-tags_editableInput(no slot input).html +1 -1
- package/docs/examples/w-group-tags_enableCloseEventOnly.html +1 -1
- package/docs/examples/w-group-tags_icon (fontawesome).html +1 -1
- package/docs/examples/w-group-tags_icon (material).html +1 -1
- package/docs/examples/w-group-tags_iconColor_iconColorHover_textColor_textColorHover.html +1 -1
- package/docs/examples/w-group-tags_icon_iconColor_iconColorHover.html +1 -1
- package/docs/examples/w-group-tags_inputTextButtonTooltip.html +1 -1
- package/docs/examples/w-group-tags_inputTextColor_inputTextBorderColor_inputTextBorderColorHover_inputTextBorderColorFocus.html +1 -1
- package/docs/examples/w-group-tags_inputTextWidth.html +1 -1
- package/docs/examples/w-group-tags_marginStyle.html +1 -1
- package/docs/examples/w-group-tags_modify loading by callback in click.html +1 -1
- package/docs/examples/w-group-tags_modify loading_textColor_textColorHover.html +1 -1
- package/docs/examples/w-group-tags_modify prog by callback in click.html +1 -1
- package/docs/examples/w-group-tags_no shadow_borderColor_borderColorHover.html +1 -1
- package/docs/examples/w-group-tags_not draggable.html +1 -1
- package/docs/examples/w-group-tags_not editable.html +1 -1
- package/docs/examples/w-group-tags_not editable_nodata.html +1 -1
- package/docs/examples/w-group-tags_object items.html +1 -1
- package/docs/examples/w-group-tags_object items_addButtonTextColor_addButtonTextColorHover_addButtonIconColor.html +1 -1
- package/docs/examples/w-group-tags_object items_addButtonText_addButtonTooltip.html +1 -1
- package/docs/examples/w-group-tags_object items_keyIcon.html +1 -1
- package/docs/examples/w-group-tags_object items_keyText.html +1 -1
- package/docs/examples/w-group-tags_object items_keyTooltip.html +1 -1
- package/docs/examples/w-group-tags_object items_slot item.html +1 -1
- package/docs/examples/w-group-tags_object items_slot item_editableInput(no slot input)_useActive.html +1 -1
- package/docs/examples/w-group-tags_object items_slot item_useColorsFromItem_editableInput(no slot input).html +1 -1
- package/docs/examples/w-group-tags_paddingStyle_icon_iconSize_textFontSize.html +1 -1
- package/docs/examples/w-group-tags_progColor_progBackgroundColor.html +1 -1
- package/docs/examples/w-group-tags_shadowStyle.html +1 -1
- package/docs/examples/w-group-tags_shiftLeft.html +1 -1
- package/docs/examples/w-group-tags_slot input.html +1 -1
- package/docs/examples/w-group-tags_slot item.html +1 -1
- package/docs/examples/w-group-tags_slot item_useActive_valueActive_paddingStyle.html +1 -1
- package/docs/examples/w-group-tags_suggests.html +1 -1
- package/docs/examples/w-group-tags_suggests_inputTextColor_inputExpansionIconColor.html +1 -1
- package/docs/examples/w-group-tags_suggests_placeholder_noResultsText.html +1 -1
- package/docs/examples/w-group-tags_suggests_suggectItemFontSize_suggectItemTextColor_suggectItemTextColorHover.html +1 -1
- package/docs/examples/w-group-tags_textColor.html +1 -1
- package/docs/examples/w-group-tags_textColor_textColorHover.html +1 -1
- package/docs/examples/w-group-tags_useActive_valueActive.html +1 -1
- package/docs/examples/w-highcharts-bitmap-dyn_render (need w-hc2png-server).html +1 -1
- package/docs/examples/w-highcharts-vue-dyn_area.html +1 -1
- package/docs/examples/w-highcharts-vue-dyn_bar.html +1 -1
- package/docs/examples/w-highcharts-vue-dyn_heatmap.html +1 -1
- package/docs/examples/w-highcharts-vue-dyn_large heatmap.html +1 -1
- package/docs/examples/w-highcharts-vue-dyn_line.html +1 -1
- package/docs/examples/w-highcharts-vue-dyn_pie.html +1 -1
- package/docs/examples/w-highstock-vue-dyn_area.html +1 -1
- package/docs/examples/w-highstock-vue-dyn_line.html +1 -1
- package/docs/examples/w-icon-svg_path (mdi-access-point)_size.html +1 -1
- package/docs/examples/w-icon-svg_path (mdi-account-badge-horizontal)_timeTransition.html +1 -1
- package/docs/examples/w-icon-svg_path (mdi-fruit-cherries).html +1 -1
- package/docs/examples/w-icon-svg_path (mdi-graph-outline)_color_colorHover.html +1 -1
- package/docs/examples/w-icon-svg_path (use 3 paths)_sizeOriginal.html +1 -1
- package/docs/examples/w-icon-svg_path_sizeOriginal.html +1 -1
- package/docs/examples/w-image-cascading-dyn_arrangeWhenFinish.html +1 -1
- package/docs/examples/w-image-cascading-dyn_colNum.html +1 -1
- package/docs/examples/w-image-cascading-dyn_default(imageWidth=300).html +1 -1
- package/docs/examples/w-image-cascading-dyn_imageWidth.html +1 -1
- package/docs/examples/w-image-cascading-dyn_imageWidthSoft.html +1 -1
- package/docs/examples/w-image-viewer-dyn_multiple image with navbar.html +1 -1
- package/docs/examples/w-image-viewer-dyn_one image.html +1 -1
- package/docs/examples/w-input-checkbox_arrange_marginStyle.html +1 -1
- package/docs/examples/w-input-checkbox_arrange_paddingStyle.html +1 -1
- package/docs/examples/w-input-checkbox_click (console.log).html +1 -1
- package/docs/examples/w-input-checkbox_default.html +1 -1
- package/docs/examples/w-input-checkbox_marginStyle.html +1 -1
- package/docs/examples/w-input-checkbox_not editable.html +1 -1
- package/docs/examples/w-input-checkbox_object items_keyText.html +1 -1
- package/docs/examples/w-input-checkbox_paddingStyle.html +1 -1
- package/docs/examples/w-input-checkbox_slot_paddingStyle_verticalAlign_inputHeight.html +1 -1
- package/docs/examples/w-input-checkbox_textColor_textColorHover_textColorActive.html +1 -1
- package/docs/examples/w-input-radio_arrange_marginStyle.html +1 -1
- package/docs/examples/w-input-radio_arrange_paddingStyle.html +1 -1
- package/docs/examples/w-input-radio_click (console.log).html +1 -1
- package/docs/examples/w-input-radio_default.html +1 -1
- package/docs/examples/w-input-radio_marginStyle.html +1 -1
- package/docs/examples/w-input-radio_not editable.html +1 -1
- package/docs/examples/w-input-radio_object items_keyText.html +1 -1
- package/docs/examples/w-input-radio_paddingStyle.html +1 -1
- package/docs/examples/w-input-radio_slot_paddingStyle_verticalAlign_inputHeight.html +1 -1
- package/docs/examples/w-input-radio_textColor_textColorHover_textColorActive.html +1 -1
- package/docs/examples/w-json-view_default.html +1 -1
- package/docs/examples/w-json-view_events.html +1 -1
- package/docs/examples/w-json-view_filterKeywords_filterFunction.html +1 -1
- package/docs/examples/w-json-view_filterKeywords_noResultsText.html +1 -1
- package/docs/examples/w-json-view_iconColor_keyColor_keyNumbersColor_numColor.html +1 -1
- package/docs/examples/w-json-view_iconSize(24)_defItemHeight(32).html +1 -1
- package/docs/examples/w-json-view_large data (15,500 lines).html +1 -1
- package/docs/examples/w-json-view_no viewHeightMax.html +1 -1
- package/docs/examples/w-json-view_rippleColor.html +1 -1
- package/docs/examples/w-json-view_toggleItemsAll.html +1 -1
- package/docs/examples/w-json-view_toggleItemsByFun.html +1 -1
- package/docs/examples/w-json-view_viewHeightMax.html +1 -1
- package/docs/examples/w-leaflet-vue-dyn_contourSet for rain data.html +1 -1
- package/docs/examples/w-leaflet-vue-dyn_contourSets.html +1 -1
- package/docs/examples/w-leaflet-vue-dyn_pointSets.html +1 -1
- package/docs/examples/w-leaflet-vue-dyn_polygonSets.html +1 -1
- package/docs/examples/w-list-expand_activeMode(multi).html +1 -1
- package/docs/examples/w-list-expand_auto scroll.html +1 -1
- package/docs/examples/w-list-expand_default.html +1 -1
- package/docs/examples/w-list-expand_itemBackgroundColor_itemBackgroundColorHover_itemBackgroundColorActive.html +1 -1
- package/docs/examples/w-list-expand_keyText_keyIcon_keyDsp.html +1 -1
- package/docs/examples/w-list-expand_paddingStyle.html +1 -1
- package/docs/examples/w-list-expand_slot footer.html +1 -1
- package/docs/examples/w-list-expand_slot header.html +1 -1
- package/docs/examples/w-list-expand_slot item-content_itemTextColor_itemTextColorHover_itemTextColorActive.html +1 -1
- package/docs/examples/w-list-expand_slot item-header_item-content.html +1 -1
- package/docs/examples/w-list-horizontal_borderBottomSize.html +1 -1
- package/docs/examples/w-list-horizontal_default.html +1 -1
- package/docs/examples/w-list-horizontal_itemBackgroundColor_itemBackgroundColorHover_itemBackgroundColorActive.html +1 -1
- package/docs/examples/w-list-horizontal_itemBorderRadius.html +1 -1
- package/docs/examples/w-list-horizontal_itemBorderRadius_space.html +1 -1
- package/docs/examples/w-list-horizontal_itemRippleColor.html +1 -1
- package/docs/examples/w-list-horizontal_itemRippleColor_borderBottomColor_itemTextColorActive_itemIconColorActive.html +1 -1
- package/docs/examples/w-list-horizontal_itemTextFontSize_itemIconSize.html +1 -1
- package/docs/examples/w-list-horizontal_keyText_keyIcon.html +1 -1
- package/docs/examples/w-list-horizontal_no borderBottom.html +1 -1
- package/docs/examples/w-list-horizontal_paddingStyle.html +1 -1
- package/docs/examples/w-list-horizontal_paddingStyle_borderBottomColor_itemRippleColor_itemTextColor.html +1 -1
- package/docs/examples/w-list-horizontal_slot.html +1 -1
- package/docs/examples/w-list-horizontal_space.html +1 -1
- package/docs/examples/w-list-horizontal_string items.html +1 -1
- package/docs/examples/w-list-vertical_auto scroll.html +1 -1
- package/docs/examples/w-list-vertical_default.html +1 -1
- package/docs/examples/w-list-vertical_itemActive.html +1 -1
- package/docs/examples/w-list-vertical_itemActive_itemBackgroundColor_itemBackgroundColorHover_itemBackgroundColorActive.html +1 -1
- package/docs/examples/w-list-vertical_itemActive_itemTextColor_itemTextColorHover_itemTextColorActive.html +1 -1
- package/docs/examples/w-list-vertical_keyText_keyIcon.html +1 -1
- package/docs/examples/w-list-vertical_paddingStyle.html +1 -1
- package/docs/examples/w-list-vertical_slot footer.html +1 -1
- package/docs/examples/w-list-vertical_slot header.html +1 -1
- package/docs/examples/w-list-vertical_slot item.html +1 -1
- package/docs/examples/w-list-vertical_string items.html +1 -1
- package/docs/examples/w-list-vertical_useActive (no active).html +1 -1
- package/docs/examples/w-list-vertical_useActive (no active)_itemRippleColor.html +1 -1
- package/docs/examples/w-panel-avatar_avatarBackgroundColor.html +1 -1
- package/docs/examples/w-panel-avatar_avatarBorderRadius.html +1 -1
- package/docs/examples/w-panel-avatar_avatarBorderWidth_avatarBorderColor_avatarBackgroundColor.html +1 -1
- package/docs/examples/w-panel-avatar_avatarIcon (fontawesome).html +1 -1
- package/docs/examples/w-panel-avatar_avatarIcon (material).html +1 -1
- package/docs/examples/w-panel-avatar_avatarIcon_avatarIconSize_avatarIconColor_avatarBackgroundColor.html +1 -1
- package/docs/examples/w-panel-avatar_avatarOuterPadding_avatarInnerPadding.html +1 -1
- package/docs/examples/w-panel-avatar_contentBackgroundColor.html +1 -1
- package/docs/examples/w-panel-avatar_contentBorderRadius.html +1 -1
- package/docs/examples/w-panel-avatar_contentShadow.html +1 -1
- package/docs/examples/w-panel-avatar_default.html +1 -1
- package/docs/examples/w-panel-avatar_headerPadding_headerTextColor_headerTextSize_subHeaderTextColor.html +1 -1
- package/docs/examples/w-panel-avatar_headerVerticalAlign_spaceVBetweenHeaderAndContent.html +1 -1
- package/docs/examples/w-panel-avatar_no avatarShadow.html +1 -1
- package/docs/examples/w-panel-avatar_sepLineWidth_sepLineColor.html +1 -1
- package/docs/examples/w-panel-avatar_shiftVFromAvaterCenter.html +1 -1
- package/docs/examples/w-panel-avatar_slot avatar_avatarBackgroundColor.html +1 -1
- package/docs/examples/w-panel-avatar_spaceHBetweenAvatarAndHeader_spaceVBetweenHeaderAndContent.html +1 -1
- package/docs/examples/w-panel-bulge_contentBackgroundColor.html +1 -1
- package/docs/examples/w-panel-bulge_contentBorderRadius.html +1 -1
- package/docs/examples/w-panel-bulge_default.html +1 -1
- package/docs/examples/w-panel-bulge_headerBorderRadius.html +1 -1
- package/docs/examples/w-panel-bulge_headerTextColor_headerBackgroundColor.html +1 -1
- package/docs/examples/w-panel-bulge_no headerShadow_no contentShadow, with green outer.html +1 -1
- package/docs/examples/w-panel-bulge_paddingStyle.html +1 -1
- package/docs/examples/w-panel-bulge_slot for header_headerBorderRadius_headerBackgroundColor(linear-gradient).html +1 -1
- package/docs/examples/w-panel-bulge_with grey outer.html +1 -1
- package/docs/examples/w-panel-divide-horizontal_barBorderSize_barBorderColor.html +1 -1
- package/docs/examples/w-panel-divide-horizontal_barColor.html +1 -1
- package/docs/examples/w-panel-divide-horizontal_barSize.html +1 -1
- package/docs/examples/w-panel-divide-horizontal_default.html +1 -1
- package/docs/examples/w-panel-divide-horizontal_leftWidthMin_leftWidthMax.html +1 -1
- package/docs/examples/w-panel-divide-horizontal_ratio.html +1 -1
- package/docs/examples/w-panel-divide-horizontal_ratioMin_ratioMax.html +1 -1
- package/docs/examples/w-panel-divide-horizontal_rightWidthMin_rightWidthMax.html +1 -1
- package/docs/examples/w-panel-divide-vertical_barBorderSize_barBorderColor.html +1 -1
- package/docs/examples/w-panel-divide-vertical_barColor.html +1 -1
- package/docs/examples/w-panel-divide-vertical_barSize.html +1 -1
- package/docs/examples/w-panel-divide-vertical_bottomHeightMin_bottomHeightMax.html +1 -1
- package/docs/examples/w-panel-divide-vertical_default.html +1 -1
- package/docs/examples/w-panel-divide-vertical_ratio.html +1 -1
- package/docs/examples/w-panel-divide-vertical_ratioMin_ratioMax.html +1 -1
- package/docs/examples/w-panel-divide-vertical_topHeightMin_topHeightMax.html +1 -1
- package/docs/examples/w-panel-scale_for select.html +1 -1
- package/docs/examples/w-panel-scale_for v-btn.html +1 -1
- package/docs/examples/w-panel-scale_for w-panel-bulge.html +1 -1
- package/docs/examples/w-panel-scale_for w-panel-scrolly.html +1 -1
- package/docs/examples/w-panel-scale_for w-text-suggest.html +1 -1
- package/docs/examples/w-panel-scrolly_barOpacity_barOpacityHover.html +1 -1
- package/docs/examples/w-panel-scrolly_default.html +1 -1
- package/docs/examples/w-panel-scrolly_events.html +1 -1
- package/docs/examples/w-panel-scrolly_scrollTop.html +1 -1
- package/docs/examples/w-panel-stripe_borderRadius.html +1 -1
- package/docs/examples/w-panel-stripe_buttons in slot footer.html +1 -1
- package/docs/examples/w-panel-stripe_headerBackgroundColor_footerBackgroundColor.html +1 -1
- package/docs/examples/w-panel-stripe_no footer.html +1 -1
- package/docs/examples/w-panel-stripe_no header.html +1 -1
- package/docs/examples/w-panel-stripe_no shadow, with crimson outer.html +1 -1
- package/docs/examples/w-panel-stripe_only slot icon and slot title in header.html +1 -1
- package/docs/examples/w-panel-stripe_only slot title in header.html +1 -1
- package/docs/examples/w-panel-stripe_padding.html +1 -1
- package/docs/examples/w-panel-stripe_separate for slot content.html +1 -1
- package/docs/examples/w-panel-stripe_slot icon (fontawesome).html +1 -1
- package/docs/examples/w-panel-stripe_slot icon, slot title, slot description, slot content and slot footer.html +1 -1
- package/docs/examples/w-panel-stripe_table in slot content.html +1 -1
- package/docs/examples/w-panel-stripe_with grey outer.html +1 -1
- package/docs/examples/w-popup-edit-text_default.html +1 -1
- package/docs/examples/w-popup-edit-text_in table.html +1 -1
- package/docs/examples/w-popup-edit-text_minWidthForPopup.html +1 -1
- package/docs/examples/w-popup-edit-text_minWidthForValue.html +1 -1
- package/docs/examples/w-popup-edit-text_no title.html +1 -1
- package/docs/examples/w-popup-edit-text_title_contentIcon_contentIconColor_contentIconSize.html +1 -1
- package/docs/examples/w-popup-edit-text_title_footerBackgroundColor.html +1 -1
- package/docs/examples/w-popup-edit-text_title_inputTextColor_contentIconColor_contentBackgroundColor.html +1 -1
- package/docs/examples/w-popup-edit-text_title_saveBtnText_saveBtnTextColor_saveBtnTextColorHover.html +1 -1
- package/docs/examples/w-popup-edit-text_title_titleColor_titleFontSize_headerBackgroundColor.html +1 -1
- package/docs/examples/w-popup_auto flipping in scroll panel.html +1 -1
- package/docs/examples/w-popup_backgroundColor.html +1 -1
- package/docs/examples/w-popup_borderRadius.html +1 -1
- package/docs/examples/w-popup_click item by latency hiding.html +1 -1
- package/docs/examples/w-popup_default.html +1 -1
- package/docs/examples/w-popup_distY.html +1 -1
- package/docs/examples/w-popup_in dialog.html +1 -1
- package/docs/examples/w-popup_in popup.html +1 -1
- package/docs/examples/w-popup_in scroll panel.html +1 -1
- package/docs/examples/w-popup_isolated.html +1 -1
- package/docs/examples/w-popup_maxWidth.html +1 -1
- package/docs/examples/w-popup_minWidth.html +1 -1
- package/docs/examples/w-popup_no shadow_backgroundColor.html +1 -1
- package/docs/examples/w-popup_not editable.html +1 -1
- package/docs/examples/w-popup_shadowStyle.html +1 -1
- package/docs/examples/w-popup_slot for table_maxWidth.html +1 -1
- package/docs/examples/w-progress-bar_decimal.html +1 -1
- package/docs/examples/w-progress-bar_default.html +1 -1
- package/docs/examples/w-progress-bar_enableIconFinish (no iconFinish).html +1 -1
- package/docs/examples/w-progress-bar_enableIconWaiting (no iconWaiting).html +1 -1
- package/docs/examples/w-progress-bar_height.html +1 -1
- package/docs/examples/w-progress-bar_height_borderRadius.html +1 -1
- package/docs/examples/w-progress-bar_iconFinish (fontawesome).html +1 -1
- package/docs/examples/w-progress-bar_iconFinishColor.html +1 -1
- package/docs/examples/w-progress-bar_iconSize.html +1 -1
- package/docs/examples/w-progress-bar_iconWaiting (fontawesome).html +1 -1
- package/docs/examples/w-progress-bar_iconWaitingColor.html +1 -1
- package/docs/examples/w-progress-bar_progColor.html +1 -1
- package/docs/examples/w-progress-bar_progColor_progBackgroundColor.html +1 -1
- package/docs/examples/w-progress-bar_title.html +1 -1
- package/docs/examples/w-progress-bar_title_titleTextColor.html +1 -1
- package/docs/examples/w-progress-bar_title_titleTextFontSize.html +1 -1
- package/docs/examples/w-progress-bar_value=0 (waiting).html +1 -1
- package/docs/examples/w-progress-bar_value=100 (finish).html +1 -1
- package/docs/examples/w-progress-bar_valueTextColor.html +1 -1
- package/docs/examples/w-progress-bar_valueTextFontSize.html +1 -1
- package/docs/examples/w-progress-circle_color.html +1 -1
- package/docs/examples/w-progress-circle_default.html +1 -1
- package/docs/examples/w-progress-circle_small size.html +1 -1
- package/docs/examples/w-progress-circle_tooltip.html +1 -1
- package/docs/examples/w-progress-circle_very small size.html +1 -1
- package/docs/examples/w-progress-circle_width.html +1 -1
- package/docs/examples/w-progress-circle_/344/270/255/346/226/207text.html +1 -1
- package/docs/examples/w-quill-vue-dyn_default.html +1 -1
- package/docs/examples/w-quill-vue-dyn_height.html +1 -1
- package/docs/examples/w-quill-vue-dyn_not editable.html +1 -1
- package/docs/examples/w-quill-vue-dyn_settings.html +1 -1
- package/docs/examples/w-switch_checkedSwitchCircleColor_checkedSwitchCircleColorHover_checkedSwitchBarColor_checkedSwitchBarColorHover.html +1 -1
- package/docs/examples/w-switch_default.html +1 -1
- package/docs/examples/w-switch_not editable.html +1 -1
- package/docs/examples/w-switch_not editable_checkedSwitchCircleColorDisabled_checkedSwitchBarColorDisabled_uncheckedSwitchCircleColorDisabled.html +1 -1
- package/docs/examples/w-switch_switchSize_textFontSize.html +1 -1
- package/docs/examples/w-switch_text.html +1 -1
- package/docs/examples/w-switch_text_textColor_textColorHover.html +1 -1
- package/docs/examples/w-switch_uncheckedSwitchCircleColor_uncheckedSwitchCircleColorHover_uncheckedSwitchBarColor_uncheckedSwitchBarColorHover.html +1 -1
- package/docs/examples/w-switch_use string (y or n).html +1 -1
- package/docs/examples/w-table-dyn_default.html +1 -1
- package/docs/examples/w-table-dyn_editable.html +1 -1
- package/docs/examples/w-table-dyn_editable_checkId.html +1 -1
- package/docs/examples/w-table-dyn_editable_checkId_opt.modifyDataWhenSave_save(call cmp. method).html +1 -1
- package/docs/examples/w-table-dyn_editable_checkId_successMsgFromAddRow_errorMsgFromAddRow.html +1 -1
- package/docs/examples/w-table-dyn_editable_checkId_tooltipAddRow_tooltipDeleteSelectedRows.html +1 -1
- package/docs/examples/w-table-dyn_editable_inforPaddingStyle_menuBackgroundColor.html +1 -1
- package/docs/examples/w-table-dyn_editable_opt.beforeAddRow.html +1 -1
- package/docs/examples/w-table-dyn_editable_opt.kpConvertKeysWhenUploadData.html +1 -1
- package/docs/examples/w-table-dyn_editable_opt.optForUploadData.html +1 -1
- package/docs/examples/w-table-dyn_editable_slot btns.html +1 -1
- package/docs/examples/w-table-dyn_editable_textLabelDataName_textPlaceholderDataName_textLabelDataDescription.html +1 -1
- package/docs/examples/w-table-dyn_fixIds (fix id).html +1 -1
- package/docs/examples/w-table-dyn_hideIds (hide mappingId).html +1 -1
- package/docs/examples/w-table-dyn_name_description.html +1 -1
- package/docs/examples/w-table-dyn_opt.kpHead.html +1 -1
- package/docs/examples/w-table-dyn_removeIdsWhenDownload (remove id, mappingId, order, isActive).html +1 -1
- package/docs/examples/w-table-dyn_slot btns.html +1 -1
- package/docs/examples/w-table-dyn_slot infor (name_description).html +1 -1
- package/docs/examples/w-table-dyn_sortColIds (sort by order).html +1 -1
- package/docs/examples/w-text-int_borderRadius.html +1 -1
- package/docs/examples/w-text-int_border_backgroundColor_backgroundColorHover_backgroundColorFocus.html +1 -1
- package/docs/examples/w-text-int_border_borderRadius.html +1 -1
- package/docs/examples/w-text-int_border_buttonColor_buttonColorHover_buttonColorFocus.html +1 -1
- package/docs/examples/w-text-int_border_default.html +1 -1
- package/docs/examples/w-text-int_border_not editable.html +1 -1
- package/docs/examples/w-text-int_border_width.html +1 -1
- package/docs/examples/w-text-int_buttonColor_buttonColorHover_buttonColorFocus.html +1 -1
- package/docs/examples/w-text-int_buttonIconSize.html +1 -1
- package/docs/examples/w-text-int_default.html +1 -1
- package/docs/examples/w-text-int_not editable.html +1 -1
- package/docs/examples/w-text-int_textColor.html +1 -1
- package/docs/examples/w-text-int_textFontSize.html +1 -1
- package/docs/examples/w-text-int_width.html +1 -1
- package/docs/examples/w-text-select_a lot of items.html +1 -1
- package/docs/examples/w-text-select_borderRadius.html +1 -1
- package/docs/examples/w-text-select_border_a lot of items.html +1 -1
- package/docs/examples/w-text-select_border_backgroundColor_backgroundColorHover_backgroundColorFocus.html +1 -1
- package/docs/examples/w-text-select_border_borderRadius.html +1 -1
- package/docs/examples/w-text-select_border_default.html +1 -1
- package/docs/examples/w-text-select_border_events.html +1 -1
- package/docs/examples/w-text-select_border_expansionIconSize.html +1 -1
- package/docs/examples/w-text-select_border_fullwidth.html +1 -1
- package/docs/examples/w-text-select_border_itemPaddingStyle.html +1 -1
- package/docs/examples/w-text-select_border_itemTextColor_itemTextColorHover_itemBackgroundColor.html +1 -1
- package/docs/examples/w-text-select_border_itemTextFontSize_defItemHeight_width.html +1 -1
- package/docs/examples/w-text-select_border_items(string array).html +1 -1
- package/docs/examples/w-text-select_border_keyText.html +1 -1
- package/docs/examples/w-text-select_border_leftIcon (fontawesome).html +1 -1
- package/docs/examples/w-text-select_border_leftIcon (material).html +1 -1
- package/docs/examples/w-text-select_border_leftIcon_leftIconColor_leftIconColorHover.html +1 -1
- package/docs/examples/w-text-select_border_leftIcon_leftIconSize.html +1 -1
- package/docs/examples/w-text-select_border_not editable.html +1 -1
- package/docs/examples/w-text-select_border_paddingStyle (equal height to using icon).html +1 -1
- package/docs/examples/w-text-select_border_paddingStyle (thin style).html +1 -1
- package/docs/examples/w-text-select_border_rightIcon_rightIconColor_rightIconColorHover.html +1 -1
- package/docs/examples/w-text-select_border_rightIcon_rightIconSize.html +1 -1
- package/docs/examples/w-text-select_border_showExpansionIcon.html +1 -1
- package/docs/examples/w-text-select_border_slot item.html +1 -1
- package/docs/examples/w-text-select_border_slot select.html +1 -1
- package/docs/examples/w-text-select_border_textColor_expansionIconColor.html +1 -1
- package/docs/examples/w-text-select_border_textFontSize.html +1 -1
- package/docs/examples/w-text-select_border_with popup.html +1 -1
- package/docs/examples/w-text-select_default.html +1 -1
- package/docs/examples/w-text-select_events.html +1 -1
- package/docs/examples/w-text-select_expansionIconSize.html +1 -1
- package/docs/examples/w-text-select_fullwidth.html +1 -1
- package/docs/examples/w-text-select_itemPaddingStyle.html +1 -1
- package/docs/examples/w-text-select_itemTextColor_itemTextColorHover_itemBackgroundColor_itemBackgroundColorHover.html +1 -1
- package/docs/examples/w-text-select_itemTextFontSize_defItemHeight_width.html +1 -1
- package/docs/examples/w-text-select_items(string array).html +1 -1
- package/docs/examples/w-text-select_keyText.html +1 -1
- package/docs/examples/w-text-select_leftIcon (fontawesome).html +1 -1
- package/docs/examples/w-text-select_leftIcon (material).html +1 -1
- package/docs/examples/w-text-select_leftIcon_leftIconColor_leftIconColorHover_leftIconColorFocus.html +1 -1
- package/docs/examples/w-text-select_leftIcon_leftIconSize.html +1 -1
- package/docs/examples/w-text-select_not editable.html +1 -1
- package/docs/examples/w-text-select_paddingStyle (equal height to using icon).html +1 -1
- package/docs/examples/w-text-select_paddingStyle (thin style).html +1 -1
- package/docs/examples/w-text-select_rightIcon_rightIconColor_rightIconColorHover_rightIconColorFocus.html +1 -1
- package/docs/examples/w-text-select_rightIcon_rightIconSize.html +1 -1
- package/docs/examples/w-text-select_showExpansionIcon.html +1 -1
- package/docs/examples/w-text-select_slot item.html +1 -1
- package/docs/examples/w-text-select_slot select.html +1 -1
- package/docs/examples/w-text-select_textColor_expansionIconColor.html +1 -1
- package/docs/examples/w-text-select_textFontSize.html +1 -1
- package/docs/examples/w-text-select_with popup.html +1 -1
- package/docs/examples/w-text-suggest_a lot of items.html +1 -1
- package/docs/examples/w-text-suggest_borderRadius.html +1 -1
- package/docs/examples/w-text-suggest_border_a lot of items.html +1 -1
- package/docs/examples/w-text-suggest_border_backgroundColor_backgroundColorHover_backgroundColorFocus.html +1 -1
- package/docs/examples/w-text-suggest_border_borderRadius.html +1 -1
- package/docs/examples/w-text-suggest_border_default.html +1 -1
- package/docs/examples/w-text-suggest_border_events.html +1 -1
- package/docs/examples/w-text-suggest_border_expansionIconSize.html +1 -1
- package/docs/examples/w-text-suggest_border_fullwidth.html +1 -1
- package/docs/examples/w-text-suggest_border_itemPaddingStyle.html +1 -1
- package/docs/examples/w-text-suggest_border_itemTextColor_itemTextColorHover_itemBackgroundColor.html +1 -1
- package/docs/examples/w-text-suggest_border_itemTextFontSize_defItemHeight.html +1 -1
- package/docs/examples/w-text-suggest_border_items(string array).html +1 -1
- package/docs/examples/w-text-suggest_border_keyText.html +1 -1
- package/docs/examples/w-text-suggest_border_leftIcon (fontawesome).html +1 -1
- package/docs/examples/w-text-suggest_border_leftIcon (material).html +1 -1
- package/docs/examples/w-text-suggest_border_leftIcon_leftIconColor_leftIconColorHover.html +1 -1
- package/docs/examples/w-text-suggest_border_leftIcon_leftIconSize.html +1 -1
- package/docs/examples/w-text-suggest_border_noResultsText.html +1 -1
- package/docs/examples/w-text-suggest_border_not editable.html +1 -1
- package/docs/examples/w-text-suggest_border_paddingStyle (equal height to using icon).html +1 -1
- package/docs/examples/w-text-suggest_border_paddingStyle (thin style).html +1 -1
- package/docs/examples/w-text-suggest_border_placeholder.html +1 -1
- package/docs/examples/w-text-suggest_border_rightIcon_rightIconColor_rightIconColorHover.html +1 -1
- package/docs/examples/w-text-suggest_border_rightIcon_rightIconSize.html +1 -1
- package/docs/examples/w-text-suggest_border_showExpansionIcon.html +1 -1
- package/docs/examples/w-text-suggest_border_showPanel(press enter to hide panel)_focused.html +1 -1
- package/docs/examples/w-text-suggest_border_slot item.html +1 -1
- package/docs/examples/w-text-suggest_border_textColor_expansionIconColor.html +1 -1
- package/docs/examples/w-text-suggest_border_textFontSize.html +1 -1
- package/docs/examples/w-text-suggest_border_with popup.html +1 -1
- package/docs/examples/w-text-suggest_default.html +1 -1
- package/docs/examples/w-text-suggest_events.html +1 -1
- package/docs/examples/w-text-suggest_expansionIconSize.html +1 -1
- package/docs/examples/w-text-suggest_fullwidth.html +1 -1
- package/docs/examples/w-text-suggest_itemPaddingStyle.html +1 -1
- package/docs/examples/w-text-suggest_itemTextColor_itemTextColorHover_itemBackgroundColor_itemBackgroundColorHover.html +1 -1
- package/docs/examples/w-text-suggest_itemTextFontSize_defItemHeight.html +1 -1
- package/docs/examples/w-text-suggest_items(string array).html +1 -1
- package/docs/examples/w-text-suggest_keyText.html +1 -1
- package/docs/examples/w-text-suggest_leftIcon (fontawesome).html +1 -1
- package/docs/examples/w-text-suggest_leftIcon (material).html +1 -1
- package/docs/examples/w-text-suggest_leftIcon_leftIconColor_leftIconColorHover_leftIconColorFocus.html +1 -1
- package/docs/examples/w-text-suggest_leftIcon_leftIconSize.html +1 -1
- package/docs/examples/w-text-suggest_noResultsText.html +1 -1
- package/docs/examples/w-text-suggest_not editable.html +1 -1
- package/docs/examples/w-text-suggest_paddingStyle (equal height to using icon).html +1 -1
- package/docs/examples/w-text-suggest_paddingStyle (thin style).html +1 -1
- package/docs/examples/w-text-suggest_placeholder.html +1 -1
- package/docs/examples/w-text-suggest_rightIcon_rightIconColor_rightIconColorHover_rightIconColorFocus.html +1 -1
- package/docs/examples/w-text-suggest_rightIcon_rightIconSize.html +1 -1
- package/docs/examples/w-text-suggest_showExpansionIcon.html +1 -1
- package/docs/examples/w-text-suggest_showPanel(press enter to hide panel)_focused.html +1 -1
- package/docs/examples/w-text-suggest_slot item.html +1 -1
- package/docs/examples/w-text-suggest_textColor_expansionIconColor.html +1 -1
- package/docs/examples/w-text-suggest_textFontSize.html +1 -1
- package/docs/examples/w-text_border_backgroundColor_backgroundColorHover_backgroundColorFocus.html +1 -1
- package/docs/examples/w-text_border_borderRadius_paddingStyle.html +1 -1
- package/docs/examples/w-text_border_default.html +1 -1
- package/docs/examples/w-text_border_events.html +1 -1
- package/docs/examples/w-text_border_fullwidth.html +1 -1
- package/docs/examples/w-text_border_leftIcon (fontawesome).html +1 -1
- package/docs/examples/w-text_border_leftIcon (material).html +1 -1
- package/docs/examples/w-text_border_leftIcon_leftIconColor_leftIconColorHover.html +1 -1
- package/docs/examples/w-text_border_not editable.html +1 -1
- package/docs/examples/w-text_border_placeholder.html +1 -1
- package/docs/examples/w-text_border_rightIcon_rightIconColor_rightIconColorHover.html +1 -1
- package/docs/examples/w-text_border_textAlign.html +1 -1
- package/docs/examples/w-text_border_textColor.html +1 -1
- package/docs/examples/w-text_bottomLineBorderColor_bottomLineBorderColorHover_bottomLineBorderColorFocus.html +1 -1
- package/docs/examples/w-text_default.html +1 -1
- package/docs/examples/w-text_events.html +1 -1
- package/docs/examples/w-text_fullwidth.html +1 -1
- package/docs/examples/w-text_leftIcon (fontawesome).html +1 -1
- package/docs/examples/w-text_leftIcon (material).html +1 -1
- package/docs/examples/w-text_leftIcon_leftIconColor_leftIconColorHover_leftIconColorFocus.html +1 -1
- package/docs/examples/w-text_leftIcon_leftIconSize.html +1 -1
- package/docs/examples/w-text_leftIcon_leftIconTooltip.html +1 -1
- package/docs/examples/w-text_not editable.html +1 -1
- package/docs/examples/w-text_placeholder.html +1 -1
- package/docs/examples/w-text_rightIcon.html +1 -1
- package/docs/examples/w-text_rightIcon_rightIconColor_rightIconColorHover_rightIconColorFocus.html +1 -1
- package/docs/examples/w-text_rightIcon_rightIconSize.html +1 -1
- package/docs/examples/w-text_rightIcon_rightIconTooltip.html +1 -1
- package/docs/examples/w-text_textAlign.html +1 -1
- package/docs/examples/w-text_textColor.html +1 -1
- package/docs/examples/w-text_textFontSize.html +1 -1
- package/docs/examples/w-textarea_borderColorFocus.html +1 -1
- package/docs/examples/w-textarea_default.html +1 -1
- package/docs/examples/w-textarea_fullwidth.html +1 -1
- package/docs/examples/w-textarea_not editable.html +1 -1
- package/docs/examples/w-textarea_placeholder.html +1 -1
- package/docs/examples/w-timeday-range_between.html +1 -1
- package/docs/examples/w-timeday-range_borderRadius.html +1 -1
- package/docs/examples/w-timeday-range_border_between.html +1 -1
- package/docs/examples/w-timeday-range_border_borderRadius.html +1 -1
- package/docs/examples/w-timeday-range_border_default.html +1 -1
- package/docs/examples/w-timeday-range_border_icon (fontawesome).html +1 -1
- package/docs/examples/w-timeday-range_border_icon (material).html +1 -1
- package/docs/examples/w-timeday-range_border_iconColor_iconColorFoucs_borderColor.html +1 -1
- package/docs/examples/w-timeday-range_border_iconTooltip.html +1 -1
- package/docs/examples/w-timeday-range_border_not editable.html +1 -1
- package/docs/examples/w-timeday-range_border_pickColor.html +1 -1
- package/docs/examples/w-timeday-range_border_textColor.html +1 -1
- package/docs/examples/w-timeday-range_default.html +1 -1
- package/docs/examples/w-timeday-range_icon (fontawesome).html +1 -1
- package/docs/examples/w-timeday-range_icon (material).html +1 -1
- package/docs/examples/w-timeday-range_iconColor_iconColorFoucs.html +1 -1
- package/docs/examples/w-timeday-range_iconTooltip.html +1 -1
- package/docs/examples/w-timeday-range_icon_iconSize_distY.html +1 -1
- package/docs/examples/w-timeday-range_not editable.html +1 -1
- package/docs/examples/w-timeday-range_paddingStyle (equal height to using icon).html +1 -1
- package/docs/examples/w-timeday-range_paddingStyle (thin style)_distY.html +1 -1
- package/docs/examples/w-timeday-range_pickColor.html +1 -1
- package/docs/examples/w-timeday-range_textColor.html +1 -1
- package/docs/examples/w-timeday_borderRadius.html +1 -1
- package/docs/examples/w-timeday_border_borderRadius.html +1 -1
- package/docs/examples/w-timeday_border_default.html +1 -1
- package/docs/examples/w-timeday_border_icon (fontawesome).html +1 -1
- package/docs/examples/w-timeday_border_icon (material).html +1 -1
- package/docs/examples/w-timeday_border_iconColor_iconColorFoucs_borderColor.html +1 -1
- package/docs/examples/w-timeday_border_iconTooltip.html +1 -1
- package/docs/examples/w-timeday_border_not editable.html +1 -1
- package/docs/examples/w-timeday_border_pickColor.html +1 -1
- package/docs/examples/w-timeday_border_textColor.html +1 -1
- package/docs/examples/w-timeday_default.html +1 -1
- package/docs/examples/w-timeday_icon (fontawesome).html +1 -1
- package/docs/examples/w-timeday_icon (material).html +1 -1
- package/docs/examples/w-timeday_iconColor_iconColorFoucs.html +1 -1
- package/docs/examples/w-timeday_iconTooltip.html +1 -1
- package/docs/examples/w-timeday_icon_iconSize_distY.html +1 -1
- package/docs/examples/w-timeday_not editable.html +1 -1
- package/docs/examples/w-timeday_paddingStyle (equal height to using icon).html +1 -1
- package/docs/examples/w-timeday_paddingStyle (thin style)_distY.html +1 -1
- package/docs/examples/w-timeday_pickColor.html +1 -1
- package/docs/examples/w-timeday_textColor.html +1 -1
- package/docs/examples/w-timeminute-range_between.html +1 -1
- package/docs/examples/w-timeminute-range_borderRadius.html +1 -1
- package/docs/examples/w-timeminute-range_border_between.html +1 -1
- package/docs/examples/w-timeminute-range_border_borderRadius.html +1 -1
- package/docs/examples/w-timeminute-range_border_default.html +1 -1
- package/docs/examples/w-timeminute-range_border_hourMin_hourMax.html +1 -1
- package/docs/examples/w-timeminute-range_border_icon (fontawesome).html +1 -1
- package/docs/examples/w-timeminute-range_border_icon (material).html +1 -1
- package/docs/examples/w-timeminute-range_border_iconColor_iconColorFoucs_borderColor.html +1 -1
- package/docs/examples/w-timeminute-range_border_iconTooltip.html +1 -1
- package/docs/examples/w-timeminute-range_border_minuteInter.html +1 -1
- package/docs/examples/w-timeminute-range_border_minutesCustom.html +1 -1
- package/docs/examples/w-timeminute-range_border_not editable.html +1 -1
- package/docs/examples/w-timeminute-range_border_pickColor.html +1 -1
- package/docs/examples/w-timeminute-range_border_textColor_expansionIconColor.html +1 -1
- package/docs/examples/w-timeminute-range_default.html +1 -1
- package/docs/examples/w-timeminute-range_hourMin_hourMax.html +1 -1
- package/docs/examples/w-timeminute-range_icon (fontawesome).html +1 -1
- package/docs/examples/w-timeminute-range_icon (material).html +1 -1
- package/docs/examples/w-timeminute-range_iconColor_iconColorFoucs.html +1 -1
- package/docs/examples/w-timeminute-range_iconTooltip.html +1 -1
- package/docs/examples/w-timeminute-range_icon_iconSize_distY.html +1 -1
- package/docs/examples/w-timeminute-range_minuteInter.html +1 -1
- package/docs/examples/w-timeminute-range_minutesCustom.html +1 -1
- package/docs/examples/w-timeminute-range_not editable.html +1 -1
- package/docs/examples/w-timeminute-range_paddingStyle (equal height to using icon).html +1 -1
- package/docs/examples/w-timeminute-range_paddingStyle (thin style)_distY.html +1 -1
- package/docs/examples/w-timeminute-range_pickColor.html +1 -1
- package/docs/examples/w-timeminute-range_textColor_expansionIconColor.html +1 -1
- package/docs/examples/w-timeminute_borderRadius.html +1 -1
- package/docs/examples/w-timeminute_border_borderRadius.html +1 -1
- package/docs/examples/w-timeminute_border_default.html +1 -1
- package/docs/examples/w-timeminute_border_hourMin_hourMax.html +1 -1
- package/docs/examples/w-timeminute_border_icon (fontawesome).html +1 -1
- package/docs/examples/w-timeminute_border_icon (material).html +1 -1
- package/docs/examples/w-timeminute_border_iconColor_iconColorFoucs_borderColor.html +1 -1
- package/docs/examples/w-timeminute_border_iconTooltip.html +1 -1
- package/docs/examples/w-timeminute_border_minuteInter.html +1 -1
- package/docs/examples/w-timeminute_border_minutesCustom.html +1 -1
- package/docs/examples/w-timeminute_border_not editable.html +1 -1
- package/docs/examples/w-timeminute_border_pickColor.html +1 -1
- package/docs/examples/w-timeminute_border_textColor_expansionIconColor.html +1 -1
- package/docs/examples/w-timeminute_default.html +1 -1
- package/docs/examples/w-timeminute_hourMin_hourMax.html +1 -1
- package/docs/examples/w-timeminute_icon (fontawesome).html +1 -1
- package/docs/examples/w-timeminute_icon (material).html +1 -1
- package/docs/examples/w-timeminute_iconColor_iconColorFoucs.html +1 -1
- package/docs/examples/w-timeminute_iconTooltip.html +1 -1
- package/docs/examples/w-timeminute_icon_iconSize_distY.html +1 -1
- package/docs/examples/w-timeminute_minuteInter.html +1 -1
- package/docs/examples/w-timeminute_minutesCustom.html +1 -1
- package/docs/examples/w-timeminute_not editable.html +1 -1
- package/docs/examples/w-timeminute_paddingStyle (equal height to using icon).html +1 -1
- package/docs/examples/w-timeminute_paddingStyle (thin style)_distY.html +1 -1
- package/docs/examples/w-timeminute_pickColor.html +1 -1
- package/docs/examples/w-timeminute_textColor_expansionIconColor.html +1 -1
- package/docs/examples/w-tinymce-vue-dyn_default.html +1 -1
- package/docs/examples/w-tinymce-vue-dyn_height.html +1 -1
- package/docs/examples/w-tinymce-vue-dyn_not editable.html +1 -1
- package/docs/examples/w-tinymce-vue-dyn_settings.html +1 -1
- package/docs/examples/w-tree_activable_itemActive.html +1 -1
- package/docs/examples/w-tree_activable_itemActive_funActive.html +1 -1
- package/docs/examples/w-tree_activable_itemActive_itemTextColor_itemTextColorHover.html +1 -1
- package/docs/examples/w-tree_default.html +1 -1
- package/docs/examples/w-tree_defaultDisplayLevel.html +1 -1
- package/docs/examples/w-tree_draggable.html +1 -1
- package/docs/examples/w-tree_draggable_dgInsertLineColor_dgInsertBackgroundColor_dgBelongBackgroundColor.html +1 -1
- package/docs/examples/w-tree_draggable_dgPreviewOpacity_dgPreviewBorderWidth_dgBelongBackgroundColor.html +1 -1
- package/docs/examples/w-tree_draggable_dgTextDisabled_dgTextDisabledColor_dgTextDisabledPaddingLeft.html +1 -1
- package/docs/examples/w-tree_events.html +1 -1
- package/docs/examples/w-tree_filterKeywords_filterFunction.html +1 -1
- package/docs/examples/w-tree_filterKeywords_noResultsText.html +1 -1
- package/docs/examples/w-tree_filterKeywords_noResultsText_selectable.html +1 -1
- package/docs/examples/w-tree_iconSize(20).html +1 -1
- package/docs/examples/w-tree_iconSize(20)_defItemHeight(24).html +1 -1
- package/docs/examples/w-tree_iconSize(30)_defItemHeight(36).html +1 -1
- package/docs/examples/w-tree_iconToggleColor_iconToggleBackgroundColor_iconToggleBackgroundColorHover.html +1 -1
- package/docs/examples/w-tree_indent.html +1 -1
- package/docs/examples/w-tree_itemTextColor_itemTextColorHover_itemBackgroundColor_itemBackgroundColorHover.html +1 -1
- package/docs/examples/w-tree_keyPrimary_keyText_keyChildren.html +1 -1
- package/docs/examples/w-tree_no viewHeightMax.html +1 -1
- package/docs/examples/w-tree_operatable.html +1 -1
- package/docs/examples/w-tree_operatable_operateBtnBackgroundColor_operateBtnBackgroundColorHover_operateBtnBackgroundColorFocus.html +1 -1
- package/docs/examples/w-tree_operatable_operateBtnTooltip_operateItemTextForInsertBefore_perateItemTextForInsertChild.html +1 -1
- package/docs/examples/w-tree_operatable_operateItemBackgroundColor_operateItemBackgroundColorHover_operateItemTextColor.html +1 -1
- package/docs/examples/w-tree_operatable_operateItemIconSize_operateItemPaddingStyle_operatePanelWidth.html +1 -1
- package/docs/examples/w-tree_paddingStyle.html +1 -1
- package/docs/examples/w-tree_rippleColor.html +1 -1
- package/docs/examples/w-tree_selectable.html +1 -1
- package/docs/examples/w-tree_selectable_draggable.html +1 -1
- package/docs/examples/w-tree_slot.html +1 -1
- package/docs/examples/w-tree_slot_iconUncheckedColor_iconUncheckedDisabledColor_iconCheckedColor.html +1 -1
- package/docs/examples/w-tree_slot_locked_selectable.html +1 -1
- package/docs/examples/w-tree_slot_operatable.html +1 -1
- package/docs/examples/w-tree_slot_selectable.html +1 -1
- package/docs/examples/w-tree_slot_selectable_draggable.html +1 -1
- package/docs/examples/w-tree_slot_selectable_iconSize(20)_defItemHeight(24).html +1 -1
- package/docs/examples/w-tree_slot_selectable_large data (100,000 items).html +1 -1
- package/docs/examples/w-tree_toggleItemsAll.html +1 -1
- package/docs/examples/w-tree_toggleItemsByFun.html +1 -1
- package/docs/examples/w-tree_viewHeightMax.html +1 -1
- package/docs/global.html +1 -1
- package/docs/highchartsSetting.mjs.html +1 -1
- package/docs/index.html +1 -1
- package/docs/module-WAggridVueDyn.html +1 -1
- package/docs/module-WBadge.html +1 -1
- package/docs/module-WButtonChip.html +1 -1
- package/docs/module-WButtonCircle.html +1 -1
- package/docs/module-WCheckbox.html +1 -1
- package/docs/module-WCkeditorVueDyn.html +1 -1
- package/docs/module-WConfirm.html +1 -1
- package/docs/module-WDialog.html +1 -1
- package/docs/module-WDrawer.html +1 -1
- package/docs/module-WDropfiles.html +1 -1
- package/docs/module-WDynamicList.html +1 -1
- package/docs/module-WEchartsVueDyn.html +1 -1
- package/docs/module-WExplorer.html +1 -1
- package/docs/module-WGroupBaggage.html +1 -1
- package/docs/module-WGroupCheck.html +1 -1
- package/docs/module-WGroupDragdrop.html +1 -1
- package/docs/module-WGroupRadio.html +1 -1
- package/docs/module-WGroupTags.html +1 -1
- package/docs/module-WHighchartsBitmapDyn.html +1 -1
- package/docs/module-WHighchartsVueDyn.html +1 -1
- package/docs/module-WHighstockVueDyn.html +1 -1
- package/docs/module-WIcon.html +1 -1
- package/docs/module-WIconLoading.html +1 -1
- package/docs/module-WIconSvg.html +1 -1
- package/docs/module-WImageCascadingDyn.html +1 -1
- package/docs/module-WImageViewerDyn.html +1 -1
- package/docs/module-WInputCheckbox.html +1 -1
- package/docs/module-WInputRadio.html +1 -1
- package/docs/module-WJsonView.html +1 -1
- package/docs/module-WLeafletVueDyn.html +1 -1
- package/docs/module-WListExpand.html +1 -1
- package/docs/module-WListExpandItem.html +1 -1
- package/docs/module-WListHorizontal.html +1 -1
- package/docs/module-WListItem.html +1 -1
- package/docs/module-WListVertical.html +1 -1
- package/docs/module-WPanelAvatar.html +1 -1
- package/docs/module-WPanelBulge.html +1 -1
- package/docs/module-WPanelDivideHorizontal.html +1 -1
- package/docs/module-WPanelDivideVertical.html +1 -1
- package/docs/module-WPanelScrolly.html +1 -1
- package/docs/module-WPanelScrollyCore.html +1 -1
- package/docs/module-WPanelStripe.html +1 -1
- package/docs/module-WPopup.html +1 -1
- package/docs/module-WPopupEditText.html +1 -1
- package/docs/module-WProgressBar.html +1 -1
- package/docs/module-WProgressCircle.html +1 -1
- package/docs/module-WQuillVueDyn.html +1 -1
- package/docs/module-WShellBottomLine.html +1 -1
- package/docs/module-WShellEllipse.html +1 -1
- package/docs/module-WShellMaterial.html +1 -1
- package/docs/module-WSwitch.html +1 -1
- package/docs/module-WTableDyn.html +1 -1
- package/docs/module-WText.html +1 -1
- package/docs/module-WTextCore.html +1 -1
- package/docs/module-WTextInt.html +1 -1
- package/docs/module-WTextIntCore.html +1 -1
- package/docs/module-WTextSelect.html +1 -1
- package/docs/module-WTextSuggest.html +1 -1
- package/docs/module-WTextSuggestCore.html +1 -1
- package/docs/module-WTextarea.html +1 -1
- package/docs/module-WTimeday.html +1 -1
- package/docs/module-WTimedayCore.html +1 -1
- package/docs/module-WTimedayRange.html +1 -1
- package/docs/module-WTimedayRangeCore.html +1 -1
- package/docs/module-WTimeminute.html +1 -1
- package/docs/module-WTimeminuteCore.html +1 -1
- package/docs/module-WTimeminuteRange.html +1 -1
- package/docs/module-WTimeminuteRangeCore.html +1 -1
- package/docs/module-WTinymceVueDyn.html +1 -1
- package/docs/module-WTree.html +1 -1
- package/docs/module-WTreeIconCheckbox.html +1 -1
- package/docs/module-WTreeIconToggle.html +1 -1
- package/docs/vuetifyColor.mjs.html +1 -1
- package/package.json +1 -1
- package/src/components/WLeafletVueDyn.vue +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* w-component-vue v2.2.
|
|
2
|
+
* w-component-vue v2.2.60
|
|
3
3
|
* (c) 2018-2021 yuda-lyu(semisphere)
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
* Released under the MIT license
|
|
13
13
|
*
|
|
14
14
|
* Date: 2022-04-05T08:21:02.491Z
|
|
15
|
-
*/var Yf=function(n,e,t){(void 0!==t&&!an(n[e],t)||void 0===t&&!(e in n))&&Xl(n,e,t)};var Gf=function(n){return I(n)&&U(n)};var Ff=function(n,e){if(("constructor"!==e||"function"!=typeof n[e])&&"__proto__"!=e)return n[e]};var Lf=function(n){return Vl(n,Fl(n))};var jf=function(n,e,t,r,o,i,a){var l=Ff(n,t),c=Ff(e,t),d=a.get(c);if(d)Yf(n,t,d);else{var s=i?i(l,c,t+"",n,e,a):void 0,u=void 0===s;if(u){var p=Z(c),f=!p&&B(c),h=!p&&!f&&j(c);s=c,p||f||h?Z(l)?s=l:Gf(l)?s=Rl(l):f?(u=!1,s=jl(c,!0)):h?(u=!1,s=ec(c,!0)):s=[]:Pi(c)||W(c)?(s=l,W(l)?s=Lf(l):M(l)&&!Q(l)||(s=ic(c))):u=!1}u&&(a.set(c,s),o(s,c,r,i,a),a.delete(c)),Yf(n,t,s)}};var Rf=function n(e,t,r,i,a){e!==t&&o(t,(function(o,l){if(a||(a=new te),M(o))jf(e,t,l,r,n,i,a);else{var c=i?i(Ff(e,l),o,l+"",e,t,a):void 0;void 0===c&&(c=o),Yf(e,l,c)}}),Fl)};var zf=function(n){return Ci((function(e,t){var r=-1,o=t.length,i=o>1?t[o-1]:void 0,a=o>2?t[2]:void 0;for(i=n.length>3&&"function"==typeof i?(o--,i):void 0,a&&yo(t[0],t[1],a)&&(i=o<3?void 0:i,o=1),e=Object(e);++r<o;){var l=t[r];l&&n(e,l,r,i)}return e}))}((function(n,e,t){Rf(n,e,t)}));function Nf(){var 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}function Of(){var n=Qo();return Kf||n.Viewer}function Jf(n){return Df.apply(this,arguments)}function Df(){return Df=Mt(Ut.mark((function n(e){var t,r,o,i,a,l,c,d,s,u,p,f=arguments;return Ut.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(t=f.length>1&&void 0!==f[1]?f[1]:null,r=f.length>2&&void 0!==f[2]?f[2]:{},o=!0,i=null,a=Bt(),ki(r)||(r={}),Yi(e)){n.next=11;break}return a.reject("eleImg is not HTMLElement"),n.abrupt("return",a);case 11:i=e;case 12:if(null===t){n.next=20;break}if(Yi(t)){n.next=18;break}return a.reject("eleGroup is not HTMLElement"),n.abrupt("return",a);case 18:o=!1,i=t;case 20:if(o){n.next=29;break}if(l=t.querySelectorAll("img"),0!==(c=Fo(l))){n.next=28;break}return a.reject("eleGroup does not contain any img"),n.abrupt("return",a);case 28:1===c&&(o=!0);case 29:return d={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},o||(d=Nf()),d=zf(d,vc(r)),s=!1,d.hide=function(){s||(s=!0,p.hide(!0))},d.hidden=function(){p.destroy(),a.resolve("close")},u=Of(),(p=new u(i,d)).show(),n.abrupt("return",a);case 39:case"end":return n.stop()}}),n)}))),Df.apply(this,arguments)}function Ef(n){return _f.apply(this,arguments)}function _f(){return _f=Mt(Ut.mark((function n(e){var t,r,o,i=arguments;return Ut.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t=i.length>1&&void 0!==i[1]?i[1]:null,r=i.length>2&&void 0!==i[2]?i[2]:{},$c(o=i.length>3?i[3]:void 0)||(o=["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"]),n.next=6,vr(o);case 6:return n.abrupt("return",Jf(e,t,r));case 7:case"end":return n.stop()}}),n)}))),_f.apply(this,arguments)}function Mf(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=0,t=[];nf(n)&&(n=0),n=ar(n);var r=Mi();function o(){if(t.length>0)return e+=1,t.splice(0,1)[0];return null}function i(){(e-=1)<0&&(e=0),t.length>0&&r.emit("message",t)}function a(o){t.push(o),(n<=0||e<n)&&r.emit("message",t)}function l(){e=0,t=[]}return r.get=o,r.cb=i,r.push=a,r.clear=l,r}function Qf(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 Uf(n){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?Qf(Object(t),!0).forEach((function(e){Ei(n,e,t[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qf(Object(t)).forEach((function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(t,e))}))}return n}var $f=!1;var qf={directives:{domresize:na()},components:{WIconLoading:Mo},props:{pathItems:{type:Array,default:function(){return["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:function(){return[]}},imageWidth:{type:Number,default:300},imageWidthSoft:{type:Number,default:null},colNum:{type:Number,default:null},space:{type:Number,default:15},imageStyle:{type:Object,default:function(){}},arrangeWhenFinish:{type:Boolean,default:!1},numParallel:{type:Number,default:5},opt:{type:Object,default:function(){}}},data:function(){return{dbc:rd(),loading:!0,first:!1,widthPanel:0,heightPanel:0,imageCols:[],imageLocs:[],useImageStyle:{},uesImageWidth:0,imagesRes:[]}},mounted:function(){var n=this;vr(n.pathItems).then((function(e){n.loading=!1}))},computed:{changeImages:function(){var n=this.images;return this.refreshDebounce({images:n}),""},changeStyle:function(){var 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){var e=this,t=mt(e,"$el.offsetWidth",0);$f||e.widthPanel!==t&&(e.widthPanel=t)},getImgSize:function(n,e){var t=Bt(),r="g".concat(wi()),o=document.createElement("img");o.src=n,o.style.maxWidth="".concat(e,"px");var i=document.createElement("div");return i.id="img-".concat(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}),rl(i)},o.onerror=function(e){t.reject({src:n,w:0,h:0,err:e}),rl(i)},t},getImgsSize:function(n,e){var t=this,r=Mi(),o=function(){function n(n,e){var t=null;ur(n)||(n=0),n=ar(n),ma(e)||(e=!1);var r=Mf(n);return r.on("message",function(){var n=Mt(Ut.mark((function n(e){var t,o,i,a,l;return Ut.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(t=r.get()){n.next=3;break}return n.abrupt("return");case 3:return n.next=5,fr(1);case 5:if(o=mt(t,"id"),i=mt(t,"fun"),a=mt(t,"input"),Xt(i)){n.next=12;break}l={state:"error",msg:"fun is not function"},n.next=15;break;case 12:return n.next=14,od(i).apply(void 0,td(a));case 14:l=n.sent;case 15:r.emit(o,l),r.cb();case 17:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}()),function(n){var o=Bt(),i=wi();t=i;for(var a=arguments.length,l=new Array(a>1?a-1:0),c=1;c<a;c++)l[c-1]=arguments[c];var d={id:i,fun:n,input:l};return r.push(d),r.once(i,(function(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}}return new n(arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,arguments.length>1&&void 0!==arguments[1]&&arguments[1])}(t.numParallel);t.imagesRes=[];var i=-1;return tn(t.images,(function(a,l){o(t.getImgSize,a,n).then((function(n){var o=++i;t.arrangeWhenFinish&&(o=l);var a,c=Uf(Uf({},n),{},{name:(a=n.src,a.split("\\").pop().split("/").pop()),ind:o,evKey:e});t.imagesRes[o]=c,r.emit("get",c)})).catch((function(n){console.log(n)}))})),r},refreshDebounce:function(){var n=this;n.dbc((function(){n.refresh()}))},refresh:function(){var n=this,e=null,t=null;if(ei(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(lr(n.colNum))t=ar(n.colNum),e=(n.widthPanel-(t-1)*n.space)/t,e=Math.floor(e);else if(ei(n.imageWidth)&&n.imageWidth>0){e=n.imageWidth;var r=n.widthPanel+n.space;r=Math.max(r,0);var 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;var i=Uf(Uf({},n.imageStyle),{},{"max-width":"".concat(e,"px"),"user-select":"none",cursor:"pointer",outline:"none"});function a(){n.imageCols=kt(Pf(t),(function(){return[]})),n.imageLocs=kt(Pf(t),(function(){return 0}))}function l(e){if(Wt(n.imageCols)){var t,r,o=(t=n.imageLocs[0],r=0,tn(n.imageLocs,(function(n,e){t>n&&(t=n,r=e)})),r);try{n.imageCols[o].push(e),n.imageLocs[o]+=e.h+n.space+53}catch(n){}}}function c(){a(),tn(n.imagesRes,(function(n){l(n)}))}n.useImageStyle=i,n.first?c():function(){var t=Bt();a();var r=wi(),o=Fo(n.images),i=n.getImgsSize(e,r),d=0;i.on("get",(function(e){e.evKey===r&&(l(e),++d>=o&&(n.first=!0,n.arrangeWhenFinish&&c(),t.resolve()))}))}()},showImg:function(n,e){var t=this;$f=!0,Ef(n.currentTarget,null,t.opt,t.pathItems).finally((function(){$f=!1})),t.$emit("click",e)}}};const nh=qf;var eh=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)};eh._withStripped=!0;const th=zo({render:eh,staticRenderFns:[]},(function(n){n&&n("data-v-1fddd0be_0",{source:"\n.inp[data-v-1fddd0be] {\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-1fddd0be]:focus {\r\n outline: none;\n}\n.fadeIn[data-v-1fddd0be] {\r\n animation: aniFadeIn-data-v-1fddd0be 0.3s;\n}\n@keyframes aniFadeIn-data-v-1fddd0be\r\n{\nfrom {opacity: 0;}\nto {opacity: 1}\n}\r\n",map:{version:3,sources:["D:\\開源-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})}),nh,"data-v-1fddd0be",false,undefined,!1,Jo,void 0,void 0);const rh={components:{WIconLoading:Mo},props:{pathItems:{type:Array,default:function(){return["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:function(){return[]}},imageStyle:{type:Object,default:function(){}},opt:{type:Object,default:function(){}},multiple:{type:Boolean,default:!1}},data:function(){return{loading:!0}},mounted:function(){var n=this;vr(n.pathItems).then((function(e){n.loading=!1,n.$nextTick((function(){var e=mt(n,"$refs.wiv",[]);tn(e,(function(n,e){Gi(n,{duration:200,delay:100*e})}))}))}))},computed:{useImageStyle:function(){return zf({margin:"5px"},this.imageStyle)}},methods:{showImg:function(n){var e=this,t=null;e.multiple&&(t=e.$refs.wig),Ef(n.currentTarget,t,e.opt,e.pathItems).catch((function(n){console.log(n)}))}}};var oh=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)};oh._withStripped=!0;const ih=zo({render:oh,staticRenderFns:[]},(function(n){n&&n("data-v-69e2e858_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})}),rh,"data-v-69e2e858",false,undefined,!1,Jo,void 0,void 0);var ah={components:{},props:{multiCheck:{type:Boolean,default:!0},items:{type:Array,default:function(){return[]}},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:function(){return{top:0,bottom:0,left:0,right:0}}},paddingStyle:{type:Object,default:function(){return{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:mt,itemsTrans:[],dataActive:null}},mounted:function(){},computed:{changeItems:function(){var n=this;var e=vc(n.items),t=kt(e,(function(e){var t=function(e){return n.multiCheck?jp(n.value,e):Zl(e,n.value)}(e);return t})),r=[],o=[];return tn(e,(function(n,e){var i={data:n},a="id-".concat(e);i.id=a;var l=t[e];i.active=l,i.hover=!1,r.push(i),l&&o.push(a)})),n.multiCheck||(o=o[0]),n.itemsTrans=r,n.dataActive=o,""},useMarginStyle:function(){var n=tl(this.marginStyle,{parse:!this.group});return"margin:".concat(n,";")},usePadding:function(){var n=this,e=tl(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}});return"padding:".concat(e,";")},useVerticalAlign:function(){var 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(){var n=this,e="";return nr(n.inputHeight)?e="height:".concat(n.inputHeight,"px;"):qt(n.inputHeight)&&(n.inputHeight=Ti(n.inputHeight,";",""),e="height:".concat(n.inputHeight,";")),e},effTextColor:function(){return jo(this.textColor)},effTextColorHover:function(){return jo(this.textColorHover)},effTextColorActive:function(){return jo(this.textColorActive)}},methods:{getText:function(n){return mt(n,"data.".concat(this.keyText))||mt(n,"data")},getTextColor:function(n,e){var 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){var t=this;tn(t.itemsTrans,(function(n,r){t.itemsTrans[r].hover=r===e}))},mouseleave:function(n,e){var t=this;tn(t.itemsTrans,(function(n,e){t.itemsTrans[e].hover=!1}))},toggleState:function(n){var e=this;if(!1!==e.editable)if(e.multiCheck){var t=vc(e.value);if(n.active){var r=[];tn(t,(function(e){Zl(e,n.data)||r.push(e)})),t=r}else t.push(n.data);e.$nextTick((function(){e.$emit("input",t),e.$emit("click",n.data,"".concat(n.active?"hide":"show"))}))}else e.$nextTick((function(){e.$emit("input",n.data),e.$emit("click",n.data)}))}}};const lh=ah;var ch=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 a=e.id,l=n._i(r,a);o.checked?l<0&&(n.dataActive=r.concat([a])):l>-1&&(n.dataActive=r.slice(0,l).concat(r.slice(l+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)};ch._withStripped=!0;const dh=zo({render:ch,staticRenderFns:[]},(function(n){n&&n("data-v-2014fa48_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})}),lh,undefined,false,undefined,!1,Jo,void 0,void 0);const sh={components:{WInputCheckbox:dh},props:{multiCheck:{type:Boolean,default:!0},items:{type:Array,default:function(){return[]}},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:function(){return{top:0,bottom:0,left:0,right:0}}},paddingStyle:{type:Object,default:function(){return{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 uh=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))};uh._withStripped=!0;const ph=zo({render:uh,staticRenderFns:[]},(function(n){n&&n("data-v-3197c770_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})}),sh,"data-v-3197c770",false,undefined,!1,Jo,void 0,void 0);function fh(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 hh(n){return function(n){if(Array.isArray(n))return fh(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 fh(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)?fh(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 mh(n,e,t,r,o,i,a){try{var l=n[i](a),c=l.value}catch(n){return void t(n)}l.done?e(c):Promise.resolve(c).then(r,o)}function gh(n){return(gh="function"==typeof Symbol&&"symbol"==a(Symbol.iterator)?function(n){return a(n)}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":a(n)})(n)}var vh="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function yh(n){var e={exports:{}};return n(e,e.exports),e.exports}var bh,Ch=yh((function(n){var e=function(n){var e,t=Object.prototype,r=t.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(n,e,t){return Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}),n[e]}try{c({},"")}catch(n){c=function(n,e,t){return n[e]=t}}function d(n,e,t,r){var o=e&&e.prototype instanceof g?e:g,i=Object.create(o.prototype),a=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 a=t.delegate;if(a){var l=k(a,t);if(l){if(l===m)continue;return l}}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 c=s(n,e,t);if("normal"===c.type){if(r=t.done?h:p,c.arg===m)continue;return{value:c.arg,done:t.done}}"throw"===c.type&&(r=h,t.method="throw",t.arg=c.arg)}}}(n,t,a),i}function s(n,e,t){try{return{type:"normal",arg:n.call(e,t)}}catch(n){return{type:"throw",arg:n}}}n.wrap=d;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,x=C&&C(C(Z([])));x&&x!==t&&r.call(x,i)&&(b=x);var I=y.prototype=g.prototype=Object.create(b);function S(n){["next","throw","return"].forEach((function(e){c(n,e,(function(n){return this._invoke(e,n)}))}))}function w(n,e){function t(o,i,a,l){var c=s(n[o],n,i);if("throw"!==c.type){var d=c.arg,u=d.value;return u&&"object"===gh(u)&&r.call(u,"__await")?e.resolve(u.__await).then((function(n){t("next",n,a,l)}),(function(n){t("throw",n,a,l)})):e.resolve(u).then((function(n){d.value=n,a(d)}),(function(n){return t("throw",n,a,l)}))}l(c.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=s(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,a=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 a.next=a}}return{next:X}}function X(){return{value:e,done:!0}}return v.prototype=I.constructor=y,y.constructor=v,v.displayName=c(y,l,"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,c(n,l,"GeneratorFunction")),n.prototype=Object.create(I),n},n.awrap=function(n){return{__await:n}},S(w.prototype),w.prototype[a]=function(){return this},n.AsyncIterator=w,n.async=function(e,t,r,o,i){void 0===i&&(i=Promise);var a=new w(d(e,t,r,o),i);return n.isGeneratorFunction(t)?a:a.next().then((function(n){return n.done?n.value:a.next()}))},S(I),c(I,l,"Generator"),I[i]=function(){return this},I.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 l.type="throw",l.arg=n,t.next=r,o&&(t.method="next",t.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],l=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var c=r.call(a,"catchLoc"),d=r.call(a,"finallyLoc");if(c&&d){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.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 a=i?i.completion:{};return a.type=n,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(a)},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)}})),xh=yh((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),a=String.fromCharCode,l=function(n){if(n.length<2)return(e=n.charCodeAt(0))<128?n:e<2048?a(192|e>>>6)+a(128|63&e):a(224|e>>>12&15)+a(128|e>>>6&63)+a(128|63&e);var e=65536+1024*(n.charCodeAt(0)-55296)+(n.charCodeAt(1)-56320);return a(240|e>>>18&7)+a(128|e>>>12&63)+a(128|e>>>6&63)+a(128|63&e)},c=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,d=function(n){return n.replace(c,l)},s=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,s)},p=function(n){return u(d(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 a=n[r],l=n[r+1],c=n[r+2],d=a<<16|l<<8|c;t+=o.charAt(d>>>18)+o.charAt(d>>>12&63)+(void 0!==l?o.charAt(d>>>6&63):"=")+(void 0!==c?o.charAt(63&d):"=")}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 a(55296+(e>>>10))+a(56320+(1023&e));case 3:return a((15&n.charCodeAt(0))<<12|(63&n.charCodeAt(1))<<6|63&n.charCodeAt(2));default:return a((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=[a(r>>>16),a(r>>>8&255),a(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)},x=function(n){return C(String(n).replace(/[^A-Za-z0-9\+\/]/g,""))},I=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))}(I(n))};e.Uint8Array&&(m=function(n){return Uint8Array.from(x(I(n)),(function(n){return n.charCodeAt(0)}))});if(e.Base64={VERSION:"2.6.4",atob:x,btoa:u,fromBase64:S,toBase64:h,utob:d,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:vh)})),Ih=yh((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,a){if("function"!=typeof r)throw new TypeError("The listener must be a function");var l=new o(r,i||n,a),c=t?t+e:e;return n._events[c]?n._events[c].fn?n._events[c]=[n._events[c],l]:n._events[c].push(l):(n._events[c]=l,n._eventsCount++),n}function a(n,e){0==--n._eventsCount?n._events=new r:delete n._events[e]}function l(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(t=!1)),l.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},l.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,a=new Array(i);o<i;o++)a[o]=r[o].fn;return a},l.prototype.listenerCount=function(n){var e=t?t+n:n,r=this._events[e];return r?r.fn?1:r.length:0},l.prototype.emit=function(n,e,r,o,i,a){var l=t?t+n:n;if(!this._events[l])return!1;var c,d,s=this._events[l],u=arguments.length;if(s.fn){switch(s.once&&this.removeListener(n,s.fn,void 0,!0),u){case 1:return s.fn.call(s.context),!0;case 2:return s.fn.call(s.context,e),!0;case 3:return s.fn.call(s.context,e,r),!0;case 4:return s.fn.call(s.context,e,r,o),!0;case 5:return s.fn.call(s.context,e,r,o,i),!0;case 6:return s.fn.call(s.context,e,r,o,i,a),!0}for(d=1,c=new Array(u-1);d<u;d++)c[d-1]=arguments[d];s.fn.apply(s.context,c)}else{var p,f=s.length;for(d=0;d<f;d++)switch(s[d].once&&this.removeListener(n,s[d].fn,void 0,!0),u){case 1:s[d].fn.call(s[d].context);break;case 2:s[d].fn.call(s[d].context,e);break;case 3:s[d].fn.call(s[d].context,e,r);break;case 4:s[d].fn.call(s[d].context,e,r,o);break;default:if(!c)for(p=1,c=new Array(u-1);p<u;p++)c[p-1]=arguments[p];s[d].fn.apply(s[d].context,c)}}return!0},l.prototype.on=function(n,e,t){return i(this,n,e,t,!1)},l.prototype.once=function(n,e,t){return i(this,n,e,t,!0)},l.prototype.removeListener=function(n,e,r,o){var i=t?t+n:n;if(!this._events[i])return this;if(!e)return a(this,i),this;var l=this._events[i];if(l.fn)l.fn!==e||o&&!l.once||r&&l.context!==r||a(this,i);else{for(var c=0,d=[],s=l.length;c<s;c++)(l[c].fn!==e||o&&!l[c].once||r&&l[c].context!==r)&&d.push(l[c]);d.length?this._events[i]=1===d.length?d[0]:d:a(this,i)}return this},l.prototype.removeAllListeners=function(n){var e;return n?(e=t?t+n:n,this._events[e]&&a(this,e)):(this._events=new r,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=t,l.EventEmitter=l,n.exports=l}));!function(){if("browser"!=("undefined"!=typeof window&&void 0!==window.document?"browser":"nodejs"))return null;function n(){return new Ih}function e(){var n,e,t=new Promise((function(){n=arguments[0],e=arguments[1]}));return t.resolve=n,t.reject=e,t}function t(){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];var i=e.join("");return i}var r=("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=",xh.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 o(){var o=n();function i(n){try{var e=new Blob([n]),t=window.URL||window.webkitURL;return new Worker(t.createObjectURL(e))}catch(n){u(n)}}var a=i(r);if(!a)return u("invalid worker"),null;function l(){a?(a.terminate(),a=void 0):u("worker has been terminated")}function c(){var n={mode:"init",type:"function",input:Array.prototype.slice.call(arguments)};a.postMessage(n)}function d(){var n=e(),r=t(),i={mode:"call",id:r,fun:"main",input:Array.prototype.slice.call(arguments)};return a.postMessage(i),o.once(r,(function(e){"success"===e.state?n.resolve(e.msg):n.reject(e.msg)})),n}function s(n){var e=n,t=e.mode;"emit"!==t&&"return"!==t||("emit"===t&&o.emit(e.evName,e.msg),"return"===t&&o.emit(e.id,e))}function u(n){o.emit("error",n)}return a.onmessage=function(n){s(n.data)},a.onerror=u,c(Array.prototype.slice.call(arguments)),o.main=d,o.main=d,o.terminate=l,o}bh=function(){var n,e=(n=Ch.mark((function n(){var e,t,r,i=arguments;return Ch.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e=Array.prototype.slice.call(i),t=o(),n.next=4,t.main.apply(t,hh(e)).finally((function(){t.terminate()}));case 4:return r=n.sent,n.abrupt("return",r);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 a(n){mh(i,r,o,a,l,"next",n)}function l(n){mh(i,r,o,a,l,"throw",n)}a(void 0)}))});return function(){return e.apply(this,arguments)}}()}();var Sh,wh=bh,kh={components:{WTree:Wp},props:{data:{type:[Array,Object],default:function(){}},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:function(n){this.setData(n)}}},computed:{changeColors:function(){return this.convertColors(),""},useItemHeightMin:function(){return"min-height:".concat(Math.max(this.iconSize,this.defItemHeight),"px;")}},methods:{convertColors:function(){var n=this;if(!ki(n.useColors)){var e={numColor:jo(n.numColor),strColor:jo(n.strColor),bolColor:jo(n.bolColor),funColor:jo(n.funColor),defaultColor:jo(n.defaultColor),keyColor:jo(n.keyColor),keyNumbersColor:jo(n.keyNumbersColor)};n.useColors=e}},parseData:(Sh=Mt(Ut.mark((function n(e){var t,r;return Ut.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t=this,n.next=3,wh(e,{bindRoot:t.root});case 3:return r=n.sent,n.abrupt("return",r);case 5:case"end":return n.stop()}}),n,this)}))),function(n){return Sh.apply(this,arguments)}),setData:function(n){var e=this;function t(){return(t=Mt(Ut.mark((function t(){var r;return Ut.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.lockFromSetData=!0,Wt(n)||Dt(n)){t.next=4;break}return"data is not an array or object",t.abrupt("return","data is not an array or object");case 4:return e.convertColors(),n=vc(n),t.next=8,e.parseData(n);case 8:return r=t.sent,t.next=11,dr((function(){return void 0!==e.$refs.wt}),{timeInterval:20});case 11:if(!e.$refs.wt){t.next=14;break}return t.next=14,e.$refs.wt.setData(r);case 14:e.getLineNumberWidth();case 15:case"end":return t.stop()}}),t)})))).apply(this,arguments)}(function(){return t.apply(this,arguments)})().catch((function(n){console.log(n)})).finally((function(){e.lockFromSetData=!1}))},getLineNumberWidth:function(){var n=this;function e(){return e=Mt(Ut.mark((function e(){var t,r,o,i;return Ut.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,dr((function(){return void 0!==n.$refs.wt}),{timeInterval:20});case 2:if(n.$refs.wt){e.next=4;break}return e.abrupt("return");case 4:t=n.$refs.wt.getRows(),r=Fo(t),o=Math.ceil(Math.log10(r)),i=8*(o+.5),n.lineNumberWidth=i;case 9:case"end":return e.stop()}}),e)}))),e.apply(this,arguments)}(function(){return e.apply(this,arguments)})().catch((function(n){console.log(n)}))},genBlock:function(n){var e="";return"object"===n.type?e="{".concat(n.numOfChilren,"}"):"array"===n.type&&(e="[".concat(n.numOfChilren,"]")),e},getKey:function(n){var e="";return(qt(n.key)||ei(n.key))&&(e=n.key),e===this.root&&(e=""),e},getType:function(n){var e="";return"node"!==n.type&&(e=n.type),e},getText:function(n){var e="";return"node"===n.type&&(e=n.text),e},getTextTypeColor:function(n){var e=this,t=e.useColors.defaultColor;if("node"===n.type){var r="";ei(n.text)?r="numColor":Zt(n.text)?r="strColor":ga(n.text)?r="bolColor":Xt(n.text)&&(r="funColor"),Hi(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 Th=kh;var Hh=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)};Hh._withStripped=!0;const Wh=zo({render:Hh,staticRenderFns:[]},(function(n){n&&n("data-v-174e62d7_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})}),Th,"data-v-174e62d7",false,undefined,!1,Jo,void 0,void 0);const Zh={components:{WIconLoading:Mo},props:{pathItems:{type:Array,default:function(){return["https://cdn.jsdelivr.net/npm/w-leaflet-vue@1.0.34/dist/w-leaflet-vue.umd.js"]}},opt:{type:Object,default:function(){}}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){var n=this;vr(n.pathItems).then((function(e){if("loaded"!==e){var t=window["w-leaflet-vue"];t.default&&(t=t.default),Uo().component("w-leaflet-vue",t)}n.cmpName="w-leaflet-vue"}))},computed:{},methods:{}};var Xh=function(){var n=this,e=n.$createElement;return(n._self._c||e)(n.cmpName,{ref:"$self",tag:"component",attrs:{opt:n.opt}})};Xh._withStripped=!0;const Bh=zo({render:Xh,staticRenderFns:[]},(function(n){n&&n("data-v-3fc77b22_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})}),Zh,"data-v-3fc77b22",false,undefined,!1,Jo,void 0,void 0);var Ah={directives:{domripple:il()},components:{WIcon:dl},props:{text:{type:String,default:""},textFontSize:{type:String,default:"1rem"},active:{type:Boolean,default:!1},paddingStyle:{type:Object,default:function(){return{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:fa},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(){var n=this.textFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},hasIcon:function(){return""!==this.icon},usePadding:function(){var n=this,e=tl(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}});return"padding:".concat(e,";")},effBackgroundColor:function(){return jo(this.backgroundColor)},effBackgroundColorHover:function(){return jo(this.backgroundColorHover)},effBackgroundActive:function(){return jo(this.backgroundColorActive)},useBackgroundColor:function(){var n=this;return n.active?n.effBackgroundActive:n.mouseEnter?n.effBackgroundColorHover:n.effBackgroundColor},effTextColor:function(){return jo(this.textColor)},effTextColorHover:function(){return jo(this.textColorHover)},effTextActive:function(){return jo(this.textColorActive)},useTextColor:function(){var n=this;return n.active?n.effTextActive:n.mouseEnter?n.effTextColorHover:n.effTextColor},effIconColor:function(){return jo(this.iconColor)},effIconColorHover:function(){return jo(this.iconColorHover)},effIconActive:function(){return jo(this.iconColorActive)},useIconColor:function(){var n=this;return n.active?n.effIconActive:n.mouseEnter?n.effIconColorHover:n.effIconColor},effExpansionIconColor:function(){return jo(this.expansionIconColor)},effExpansionIconColorHover:function(){return jo(this.expansionIconColorHover)},effExpansionIconColorActive:function(){return jo(this.expansionIconColorActive)},useExpansionIconColor:function(){var n=this;return n.active?n.effExpansionIconColorActive:n.mouseEnter?n.effExpansionIconColorHover:n.effExpansionIconColor},useRotateDeg:function(){return this.active?180:0}},methods:{updateHeightContent:function(){var n=this;function e(){return e=Mt(Ut.mark((function e(){var t,r;return Ut.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(5,100,t=1;t<=5;t++)setTimeout((function(){n.obstructMutation=!n.obstructMutation}),100*t);if(n.active){e.next=7;break}n.heightContent="",e.next=13;break;case 7:if(!n.active){e.next=13;break}if(n.$el){e.next=11;break}return e.next=11,dr((function(){return void 0!==n.$el}),{timeInterval:10});case 11:r=mt(n,"$refs.rct.clientHeight"),ei(r)&&(n.heightContent="height:".concat(r,"px;"));case 13:case"end":return e.stop()}}),e)}))),e.apply(this,arguments)}(function(){return e.apply(this,arguments)})().catch((function(n){console.log(n)}))},getIcon:function(n){return mt(n,"icon","")},getText:function(n){if(""===mt(n,"text",""))return n},clickItem:function(n,e){var t=this;return t.$emit("update:active",!t.active),t.$emit("click",{icon:n,text:e}),""}}};const Vh=Ah;var Ph=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()])])};Ph._withStripped=!0;const Kh=zo({render:Ph,staticRenderFns:[]},(function(n){n&&n("data-v-6ec0eac8_0",{source:"\n.ct[data-v-6ec0eac8] {\r\n transition: height 0.5s, opacity 0.5s ease-out;\n}\n.ct-hide[data-v-6ec0eac8] {\r\n overflow: hidden;\r\n height: 0px;\r\n opacity: 0;\n}\n.ct-show[data-v-6ec0eac8] {\r\n opacity: 1;\n}\r\n",map:{version:3,sources:["D:\\開源-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})}),Vh,"data-v-6ec0eac8",false,undefined,!1,Jo,void 0,void 0);var Yh={directives:{domresize:na()},components:{WPanelScrolly:ap,WListExpandItem:Kh},props:{items:{type:Array,default:function(){return[]}},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:function(){return{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:fa},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!==Fo(this.items)&&rp(this.items,(function(n){return Dt(n)}))}},methods:{resize:function(n){var e=this;e.panelHeight=n.snew.offsetHeight;var t=0,r=mt(e,"$refs.refHeader");Yi(r)&&(t=r.offsetHeight);var o=0,i=mt(e,"$refs.refFooter");Yi(i)&&(o=i.offsetHeight);var a=e.panelHeight-t-o;a>0&&e.listHeight!==a&&(e.listHeight=a)},getIcon:function(n){return this.isObjValue?mt(n,this.keyIcon,""):""},getText:function(n){return this.isObjValue?mt(n,this.keyText,""):n},getDsp:function(n){return this.isObjValue?mt(n,this.keyDsp,""):n},getActive:function(n){var e=this,t=!1;return"one"===e.activeMode?t=Zl(n,e.itemActiveTrans):"multi"===e.activeMode&&tn(e.itemActiveTrans,(function(e){if(t=Zl(n,e))return!1})),t},updateItemActive:function(n,e,t){var r=this,o=vc(r.itemActiveTrans);!n&&e?"one"===r.activeMode?o=t:"multi"===r.activeMode&&o.push(vc(t)):n&&!e&&function(){if("one"===r.activeMode)o=null;else if("multi"===r.activeMode){var n=[];tn(o,(function(e){Zl(t,e)||n.push(e)})),o=n}}(),r.itemActiveTrans=o,r.$nextTick((function(){r.$emit("update:itemActive",vc(o))}))},ckItem:function(n){var e=this;e.$nextTick((function(){e.$emit("click",vc(n))}))}}};const Gh=Yh;var Fh=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)])};Fh._withStripped=!0;const Lh=zo({render:Fh,staticRenderFns:[]},(function(n){n&&n("data-v-dd653ee4_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})}),Gh,"data-v-dd653ee4",false,undefined,!1,Jo,void 0,void 0);function jh(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 Rh(n){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?jh(Object(t),!0).forEach((function(e){Ei(n,e,t[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):jh(Object(t)).forEach((function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(t,e))}))}return n}var zh={directives:{domresize:na()},components:{WListItem:dp},props:{items:{type:Array,default:function(){return[]}},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:function(){return{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:function(n,e){this.updateBorderBottom()},immediate:!0}},computed:{changeItemActive:function(){var n=this;return n.useActive&&(n.itemActiveTrans=n.itemActive),""},isObjValue:function(){return 0!==Fo(this.items)&&rp(this.items,(function(n){return Dt(n)}))},useBorderBottomColor:function(){return jo(this.borderBottomColor)}},methods:{resize:function(n){this.updateBorderBottom()},getIcon:function(n){return this.isObjValue?mt(n,this.keyIcon,""):""},getText:function(n){return this.isObjValue?mt(n,this.keyText,""):n},getActive:function(n){var e=!1;return this.useActive&&(e=Zl(n,this.itemActiveTrans)),e},updateBorderBottom:function(){var n=this;if(null!=n.itemActiveTrans){var e=0,t=[],r=mt(n,"$refs.wli",[]);tn(r,(function(r,o){var i=r,a=mt(i,"clientWidth",0),l=mt(i,"clientHeight",0),c=e,d=a,s=l;o>0&&n.space>0&&(c+=n.space,d-=n.space),t.push({left:c,bottom:0,width:d,heiht:s}),e+=a}));var o=-1;if(tn(n.items,(function(e,t){if(Zl(e,n.itemActiveTrans))return o=t,!1})),-1!==o){var i=t[o];n.borderBottomLeft=i.left,n.borderBottomWidth=i.width}}},ckItem:function(n){var e=this;e.itemActiveTrans=n,e.$emit("click",Rh({},n)),e.$emit("update:itemActive",Rh({},n))}}};const Nh=zh;var Oh=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)])};Oh._withStripped=!0;const Jh=zo({render:Oh,staticRenderFns:[]},(function(n){n&&n("data-v-5b87399f_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})}),Nh,"data-v-5b87399f",false,undefined,!1,Jo,void 0,void 0);const Dh={directives:{domresize:na()},components:{WIcon:dl},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 jo(this.avatarIconColor)},useAvatarBorderColor:function(){return jo(this.avatarBorderColor)},useAvatarBackgroundColor:function(){return jo(this.avatarBackgroundColor)},useHeaderVerticalAlign:function(){return"bottom"===this.headerVerticalAlign?"flex-end":"center"===this.headerVerticalAlign?"center":"flex-start"},useHeaderTextColor:function(){return jo(this.headerTextColor)},useSubHeaderTextColor:function(){return jo(this.subHeaderTextColor)},useSepLineColor:function(){return jo(this.sepLineColor)},useContentBackgroundColor:function(){return jo(this.contentBackgroundColor)}},methods:{resizeAvatar:function(n){this.avatarWidth=n.snew.offsetWidth,this.avatarHeight=n.snew.offsetHeight}}};var Eh=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)])])])};Eh._withStripped=!0;const _h=zo({render:Eh,staticRenderFns:[]},(function(n){n&&n("data-v-33b33048_0",{source:"\n.shadow[data-v-33b33048] {\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-33b33048] {\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:\\開源-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})}),Dh,"data-v-33b33048",false,undefined,!1,Jo,void 0,void 0);const Mh={directives:{domresize:na()},props:{headerBorderRadius:{type:Number,default:0},paddingStyle:{type:Object,default:function(){return{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(){var n=this,e=tl(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}});return"padding:".concat(e,";")},useHeaderTextColor:function(){return jo(this.headerTextColor)},useHeaderBackgroundColor:function(){return jo(this.headerBackgroundColor)},useContentBackgroundColor:function(){return jo(this.contentBackgroundColor)},useContentPadding:function(){var n=this;return nr(n.contentPadding)?"".concat(n.contentPadding,"px"):n.contentPadding}},methods:{updateHeaderHeight:function(n){this.headerHeight=n.snew.offsetHeight,this.$emit("resize",n)}}};var Qh=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)])])])};Qh._withStripped=!0;const Uh=zo({render:Qh,staticRenderFns:[]},(function(n){n&&n("data-v-2f6a26ca_0",{source:"\n.shadow[data-v-2f6a26ca] {\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-2f6a26ca] {\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:\\開源-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})}),Mh,"data-v-2f6a26ca",false,undefined,!1,Jo,void 0,void 0);const $h={directives:{domresize:na()},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(){var n=this,e=kc(n.$refs.divPanel,n.$refs.divBar,{useTouchDragForPanel:!1});e.on("dragBar",n.dragBar),n.das=e},beforeDestroy:function(){this.das&&this.das.clear()},computed:{changeParam:function(){var n=this,e=n.ratio;return e=n.limitRatio(e),n.r=e,""},bw:function(){return this.barSize+2*this.barBorderSize},useBarColor:function(){return jo(this.barColor)},useBarBorderColor:function(){return jo(this.barBorderColor)}},methods:{resizePanel:function(n){var e=this;e.panelWidth=n.snew.offsetWidth,e.panelHeight=n.snew.offsetHeight,e.$emit("resize",n)},limitRatio:function(n){var e=this;if(n=Math.min(n,e.ratioMax),n=Math.max(n,e.ratioMin),e.panelWidth>0){var t=n*e.panelWidth;ei(e.leftWidthMin)&&t<e.leftWidthMin&&(n=e.leftWidthMin/e.panelWidth),ei(e.leftWidthMax)&&t>e.leftWidthMax&&(n=e.leftWidthMax/e.panelWidth);var r=(1-n)*e.panelWidth;ei(e.rightWidthMin)&&r<e.rightWidthMin&&(n=-(e.rightWidthMin/e.panelWidth-1)),ei(e.rightWidthMax)&&r>e.rightWidthMax&&(n=-(e.rightWidthMax/e.panelWidth-1))}return n},dragBar:function(n){var e=n.clientX,t=this,r=t.$el.getBoundingClientRect(),o=e,i=t.$el.offsetWidth,a=0;i>0&&(a=(o-r.left)/i),a=t.limitRatio(a),t.r=a,t.$emit("update:ratio",a)}}};var qh=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)])])};qh._withStripped=!0;const nm=zo({render:qh,staticRenderFns:[]},(function(n){n&&n("data-v-31fe9756_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})}),$h,"data-v-31fe9756",false,undefined,!1,Jo,void 0,void 0);const em={directives:{domresize:na()},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(){var n=this,e=kc(n.$refs.divPanel,n.$refs.divBar,{useTouchDragForPanel:!1});e.on("dragBar",n.dragBar),n.das=e},beforeDestroy:function(){this.das&&this.das.clear()},computed:{changeParam:function(){var n=this,e=n.ratio;return e=n.limitRatio(e),n.r=e,""},bw:function(){return this.barSize+2*this.barBorderSize},useBarColor:function(){return jo(this.barColor)},useBarBorderColor:function(){return jo(this.barBorderColor)}},methods:{resizePanel:function(n){var e=this;e.panelWidth=n.snew.offsetWidth,e.panelHeight=n.snew.offsetHeight,e.$emit("resize",n)},limitRatio:function(n){var e=this;if(n=Math.min(n,e.ratioMax),n=Math.max(n,e.ratioMin),e.panelHeight>0){var t=n*e.panelHeight;ei(e.topHeightMin)&&t<e.topHeightMin&&(n=e.topHeightMin/e.panelHeight),ei(e.topHeightMax)&&t>e.topHeightMax&&(n=e.topHeightMax/e.panelHeight);var r=(1-n)*e.panelHeight;ei(e.bottomHeightMin)&&r<e.bottomHeightMin&&(n=-(e.bottomHeightMin/e.panelHeight-1)),ei(e.bottomHeightMax)&&r>e.bottomHeightMax&&(n=-(e.bottomHeightMax/e.panelHeight-1))}return n},dragBar:function(n){var e=n.clientY,t=this,r=t.$el.getBoundingClientRect(),o=e,i=t.$el.offsetHeight,a=0;i>0&&(a=(o-r.top)/i),a=t.limitRatio(a),t.r=a,t.$emit("update:ratio",a)}}};var tm=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)])])};tm._withStripped=!0;const rm=zo({render:tm,staticRenderFns:[]},(function(n){n&&n("data-v-6ccef436_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})}),em,"data-v-6ccef436",false,undefined,!1,Jo,void 0,void 0);const om={directives:{domresize:na(),dommutation:ud()},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(){var n=this,e=mt(n,"$refs.tar");if(Yi(e)){var t=e.getBoundingClientRect();n.width===t.width&&n.height===t.height||(n.width=t.width,n.height=t.height)}}}};var im=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)])])])])};im._withStripped=!0;const am=zo({render:im,staticRenderFns:[]},(function(n){n&&n("data-v-2df1dddc_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})}),om,"data-v-2df1dddc",false,undefined,!1,Jo,void 0,void 0);const lm={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(){var n={};return n["background-color"]=jo(this.contentBackgroundColor),n["border-radius"]="".concat(this.borderRadius,"px"),n},useHeaderStyle:function(){var n=this,e={};return e.padding="".concat(n.padding,"px"),e["border-bottom"]="1px solid #ddd",e["background-color"]=jo(n.headerBackgroundColor),e["border-radius"]="".concat(n.borderRadius,"px ").concat(n.borderRadius,"px 0 0"),e.display="flex",e["justify-content"]="flex-start",e["align-items"]="center",e},useContentStyle:function(){var n=this,e={},t="0 0",r="0 0";return n.hasHeader||(t="".concat(n.borderRadius,"px ").concat(n.borderRadius,"px")),n.hasFooter||(r="".concat(n.borderRadius,"px ").concat(n.borderRadius,"px")),e["border-radius"]="".concat(t," ").concat(r),e},useFooterStyle:function(){var n=this,e={};return e.padding="".concat(n.padding,"px"),e["border-top"]="1px solid #ddd",e["background-color"]=jo(n.footerBackgroundColor),e["border-radius"]="0 0 ".concat(n.borderRadius,"px ").concat(n.borderRadius,"px"),e}},methods:{}};var cm=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()])};cm._withStripped=!0;const dm=zo({render:cm,staticRenderFns:[]},(function(n){n&&n("data-v-0e00d4b8_0",{source:"\n.shadow[data-v-0e00d4b8] {\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:\\開源-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})}),lm,"data-v-0e00d4b8",false,undefined,!1,Jo,void 0,void 0);const sm={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(){var n=this;return n.hoverTrans?n.borderWidthHover:n.borderWidth},useBorderColor:function(){var n=this;return n.hoverTrans?jo(n.borderColorHover):jo(n.borderColor)},useBorderColorFocus:function(){return jo(this.borderColorFocus)}},methods:{}};var um=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)])};um._withStripped=!0;const pm=zo({render:um,staticRenderFns:[]},(function(n){n&&n("data-v-495f93cb_0",{source:"\n.fade-enter-active[data-v-495f93cb], .fade-leave-active[data-v-495f93cb] {\r\n transition: all 0.3s;\n}\n.fade-enter[data-v-495f93cb], .fade-leave-to[data-v-495f93cb] {\r\n transform: scaleX(0);\n}\n.fade-enter-to[data-v-495f93cb], .fade-leave[data-v-495f93cb] {\r\n transform: scaleX(100%);\n}\r\n",map:{version:3,sources:["D:\\開源-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})}),sm,"data-v-495f93cb",false,undefined,!1,Jo,void 0,void 0);const fm={components:{WShellEllipse:qp,WShellBottomLine:pm,WTextCore:of},props:{paddingStyle:{type:Object,default:function(){return{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){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var hm=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)};hm._withStripped=!0;const mm=zo({render:hm,staticRenderFns:[]},(function(n){n&&n("data-v-1516d15a_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})}),fm,"data-v-1516d15a",false,undefined,!1,Jo,void 0,void 0);const gm={components:{WPopup:np,WText:mm,WButtonChip:fl},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:aa},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(){var n=this.titleFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},useTitleColor:function(){return jo(this.titleColor)},useHeaderBackgroundColor:function(){return jo(this.headerBackgroundColor)},useContentBackgroundColor:function(){return jo(this.contentBackgroundColor)},useFooterBackgroundColor:function(){return jo(this.footerBackgroundColor)}},methods:{evShow:function(){var n=this;n.valueTemp=n.value,n.$nextTick((function(){n.showEdit=!0}))},evHide:function(){var n=this;n.$nextTick((function(){n.$emit("close"),n.showEdit=!1}))},ckSave:function(n,e){var t=this;t.$nextTick((function(){t.$emit("input",t.valueTemp),t.valueTemp="",n.funHide()}))}}};var vm=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("v-icon",{attrs:{size:n.contentIconSize,color:n.contentIconColor}},[n._v("\n "+n._s(n.contentIcon)+"\n ")])],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)])]}}])})};vm._withStripped=!0;const ym=zo({render:vm,staticRenderFns:[]},(function(n){n&&n("data-v-8e114012_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",map:{version:3,sources:[],names:[],mappings:"",file:"WPopupEditText.vue"},media:void 0})}),gm,"data-v-8e114012",false,undefined,!1,Jo,void 0,void 0);var bm={components:{WIcon:dl},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:pa},iconFinish:{type:String,default:ia},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:ia,mdiOrbitVariant:pa}},computed:{status:function(){return this.value<=0?"waiting":this.value>=100?"finish":"running"},useProg:function(){var n=this.value;return n=Math.max(n,0),n=Math.min(n,100),n=this.digValue(n)},useTitleTextFontSize:function(){var n=this.titleTextFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},useBorderRadius:function(){return"border-radius:".concat(this.borderRadius,"px;")},useProgColor:function(){return jo(this.progColor)},useProgBackgroundColor:function(){return jo(this.progBackgroundColor)},useTitleTextColor:function(){return jo(this.titleTextColor)},useIconWaitingColor:function(){return jo(this.iconWaitingColor)},useIconFinishColor:function(){return jo(this.iconFinishColor)},useValueTextColor:function(){return jo(this.valueTextColor)},useValueTextFontSize:function(){var n=this.valueTextFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")}},methods:{digValue:function(n){return function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return nr(n)&&ur(e)?(n=er(n),ir(n,e).toFixed(e)):""}(n,this.decimal)}}};const Cm=bm;var xm=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)])])};xm._withStripped=!0;const Im=zo({render:xm,staticRenderFns:[]},(function(n){n&&n("data-v-42189703_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})}),Cm,"data-v-42189703",false,undefined,!1,Jo,void 0,void 0);const Sm={props:{text:{type:String,default:""},value:{type:Number,default:0},color:{type:String,default:"purple lighten-1"},size:{type:Number,default:120},width:{type:Number,default:10},tooltip:{type:String,default:""}},data:function(){return{}},mounted:function(){},computed:{styleProg:function(){var n=this.size/5.4,e=(this.size-26)/94*.25+.75;return{"font-size":n+"pt",transform:"scale(".concat(e,")")}},styleText:function(){return{color:"#666","font-size":this.size/12+"pt",transform:"scale(".concat(1.2,")")}}},methods:{clickBtn:function(){var n=this;n.$nextTick((function(){n.$emit("click")}))}}};var wm=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block"}},[t("v-tooltip",{attrs:{bottom:"",transition:"slide-y-transition",disabled:""===n.tooltip},scopedSlots:n._u([{key:"activator",fn:function(e){var r=e.on;return[t("v-progress-circular",n._g({attrs:{rotate:-90,size:n.size,width:n.width,color:n.color,value:n.value}},r),[t("div",{staticStyle:{"text-align":"center",transform:"translateY(-2%)"}},[t("div",{style:[n.styleProg]},[n._v(n._s(n.value)+"%")]),n._v(" "),t("div",{style:[n.styleText]},[n._v(n._s(n.text))])])])]}}])},[n._v(" "),t("span",[n._v(n._s(n.tooltip))])])],1)};wm._withStripped=!0;const km=zo({render:wm,staticRenderFns:[]},(function(n){n&&n("data-v-f8d45658_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",map:{version:3,sources:[],names:[],mappings:"",file:"WProgressCircle.vue"},media:void 0})}),Sm,"data-v-f8d45658",false,undefined,!1,Jo,void 0,void 0);const Tm={components:{WIconLoading:Mo},props:{pathItems:{type:Array,default:function(){return["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.2/dist/w-quill-vue.umd.js"]}},value:{type:String,default:""},settings:{type:Object,default:function(){}},height:{type:Number,default:250},editable:{type:Boolean,default:!0}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){var n=this;vr(n.pathItems).then((function(e){if("loaded"!==e){var t=window["w-quill-vue"];t.default&&(t=t.default),Uo().component("w-quill-vue",t)}n.cmpName="w-quill-vue"}))},computed:{},methods:{}};var Hm=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)}}})};Hm._withStripped=!0;const Wm=zo({render:Hm,staticRenderFns:[]},(function(n){n&&n("data-v-6781807a_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})}),Tm,"data-v-6781807a",false,undefined,!1,Jo,void 0,void 0);const Zm={components:{WIcon:dl},props:{title:{type:String,default:""},titleColor:{type:String,default:"deep-orange darken-1"},leftIcon:{type:String,default:""},leftIconColor:{type:String,default:"deep-orange lighten-2"},leftIconColorFocus:{type:String,default:"deep-orange lighten-1"},leftIconTooltip:{type:String,default:""},rightIcon:{type:String,default:""},rightIconColor:{type:String,default:"deep-orange lighten-2"},rightIconColorFocus:{type:String,default:"deep-orange lighten-1"},rightIconTooltip:{type:String,default:""},small:{type:Boolean,default:!0},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,""},useTitleColor:function(){var n={};return n.color=jo(this.titleColor),n},usePadding:function(){var n={};return this.small?n.padding="0px":n.padding="3px 6px",n},usePaddingSlot:function(){var n={"padding-top":"0px","padding-bottom":"0px","padding-left":"0px","padding-right":"0px"};return""!==this.leftIcon&&(n["padding-left"]="10px"),""!==this.rightIcon&&(n["padding-right"]="10px"),n}},methods:{clickIcon:function(n){var e=this;!1!==e.editable&&e.$nextTick((function(){e.$emit("click-"+n)}))}}};var Xm=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticClass:"group",style:[n.usePadding,{opacity:n.editable?1:.6}],attrs:{changeParam:n.changeParam}},[n.leftIcon?t("div",{staticStyle:{"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.clickIcon("left")},click:function(e){return n.clickIcon("left")}}},[t("v-tooltip",{attrs:{bottom:"",transition:"slide-y-transition",disabled:""===n.leftIconTooltip},scopedSlots:n._u([{key:"activator",fn:function(e){var r=e.on;return[t("div",n._g({attrs:{ShellMaterial:"leftIcon"}},Object.assign({},r)),[t("WIcon",{attrs:{icon:n.leftIcon,color:n.focusedTrans?n.leftIconColorFocus:n.leftIconColor}})],1)]}}],null,!1,2520331971)},[n._v(" "),t("span",[n._v(n._s(n.leftIconTooltip))])])],1):n._e(),n._v(" "),t("div",{staticStyle:{width:"100%"}},[t("div",{style:[{position:"relative"},n.usePaddingSlot]},[t("div",{style:[{position:"absolute",top:"0px",transform:"translateY(-120%)","font-size":"0.9rem","white-space":"nowrap",opacity:.7},n.useTitleColor]},[n._v("\n "+n._s(n.title)+"\n ")]),n._v(" "),n._t("default")],2)]),n._v(" "),n.rightIcon?t("div",{staticStyle:{"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.clickIcon("right")},click:function(e){return n.clickIcon("right")}}},[t("v-tooltip",{attrs:{bottom:"",transition:"slide-y-transition",disabled:""===n.rightIconTooltip},scopedSlots:n._u([{key:"activator",fn:function(e){var r=e.on;return[t("div",n._g({attrs:{ShellMaterial:"rightIcon"}},Object.assign({},r)),[t("WIcon",{attrs:{icon:n.rightIcon,color:n.focusedTrans?n.rightIconColorFocus:n.rightIconColor}})],1)]}}],null,!1,3992299779)},[n._v(" "),t("span",[n._v(n._s(n.rightIconTooltip))])])],1):n._e()])};Xm._withStripped=!0;const Bm=zo({render:Xm,staticRenderFns:[]},(function(n){n&&n("data-v-70409afc_0",{source:"\n.group[data-v-70409afc] {\r\n transition: all 0.3s;\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\n}\r\n",map:{version:3,sources:["D:\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WShellMaterial.vue"],names:[],mappings:";AAmPA;IACA,oBAAA;IACA,aAAA;IACA,2BAAA;IACA,mBAAA;AACA",file:"WShellMaterial.vue",sourcesContent:["<template>\r\n <div\r\n :changeParam=\"changeParam\"\r\n class=\"group\"\r\n :style=\"[usePadding,{'opacity':editable?1:0.6}]\"\r\n >\r\n\r\n <div\r\n style=\"user-select:none; cursor:pointer; outline:none;\"\r\n tabindex=\"0\"\r\n @keyup.enter=\"clickIcon('left')\"\r\n @click=\"clickIcon('left')\"\r\n v-if=\"leftIcon\"\r\n >\r\n\r\n <v-tooltip bottom transition=\"slide-y-transition\" :disabled=\"leftIconTooltip===''\">\r\n\r\n <template v-slot:activator=\"{ on: ttShellMaterialLeft }\">\r\n <div ShellMaterial=\"leftIcon\" v-on=\"{...ttShellMaterialLeft}\">\r\n <WIcon\r\n :icon=\"leftIcon\"\r\n :color=\"focusedTrans?leftIconColorFocus:leftIconColor\"\r\n ></WIcon>\r\n </div>\r\n </template>\r\n\r\n <span>{{leftIconTooltip}}</span>\r\n\r\n </v-tooltip>\r\n\r\n </div>\r\n\r\n <div style=\"width:100%;\">\r\n\r\n <div :style=\"[{'position':'relative'},usePaddingSlot]\">\r\n\r\n <div :style=\"[{'position':'absolute','top':'0px','transform': 'translateY(-120%)','font-size':'0.9rem','white-space':'nowrap','opacity':0.7},useTitleColor]\">\r\n {{title}}\r\n </div>\r\n\r\n <slot></slot>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n <div\r\n style=\"user-select:none; cursor:pointer; outline:none;\"\r\n tabindex=\"0\"\r\n @keyup.enter=\"clickIcon('right')\"\r\n @click=\"clickIcon('right')\"\r\n v-if=\"rightIcon\"\r\n >\r\n\r\n <v-tooltip bottom transition=\"slide-y-transition\" :disabled=\"rightIconTooltip===''\">\r\n\r\n <template v-slot:activator=\"{ on: ttShellMaterialRight }\">\r\n <div ShellMaterial=\"rightIcon\" v-on=\"{...ttShellMaterialRight}\">\r\n <WIcon\r\n :icon=\"rightIcon\"\r\n :color=\"focusedTrans?rightIconColorFocus:rightIconColor\"\r\n ></WIcon>\r\n </div>\r\n </template>\r\n\r\n <span>{{rightIconTooltip}}</span>\r\n\r\n </v-tooltip>\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\nimport WIcon from './WIcon.vue'\r\n\r\n\r\n/**\r\n * @vue-prop {String} [title=''] 輸入標題字串,預設''\r\n * @vue-prop {String} [titleColor='deep-orange darken-1'] 輸入標題顏色字串,預設'deep-orange darken-1'\r\n * @vue-prop {String} [leftIcon=''] 輸入左側圖標字串,可為mdi,md,fa代號或mdi/js路徑,預設''\r\n * @vue-prop {String} [leftIconColor='deep-orange lighten-2'] 輸入左側圖標顏色字串,預設'deep-orange lighten-2'\r\n * @vue-prop {String} [leftIconColorFocus='deep-orange lighten-1'] 輸入左側圖標Focus顏色字串,預設'deep-orange lighten-1'\r\n * @vue-prop {String} [leftIconTooltip=''] 輸入左側圖標提示文字字串,預設''\r\n * @vue-prop {String} [rightIcon=''] 輸入右側圖標字串,可為mdi,md,fa代號或mdi/js路徑,預設''\r\n * @vue-prop {String} [rightIconColor='deep-orange lighten-2'] 輸入右側圖標顏色字串,預設'deep-orange lighten-2'\r\n * @vue-prop {String} [rightIconColorFocus='deep-orange lighten-1'] 輸入右側圖標Focus顏色字串,預設'deep-orange lighten-1'\r\n * @vue-prop {String} [rightIconTooltip=''] 輸入右側圖標提示文字字串,預設''\r\n * @vue-prop {Boolean} [small=true] 輸入是否為小型模式,預設true\r\n * @vue-prop {Boolean} [editable=true] 輸入是否為編輯模式,預設true\r\n * @vue-prop {Boolean} [focused=false] 輸入是否為取得焦點狀態,預設false\r\n */\r\nexport default {\r\n components: {\r\n WIcon,\r\n },\r\n props: {\r\n title: {\r\n type: String,\r\n default: '',\r\n },\r\n titleColor: {\r\n type: String,\r\n default: 'deep-orange darken-1',\r\n },\r\n leftIcon: {\r\n type: String,\r\n default: '',\r\n },\r\n leftIconColor: {\r\n type: String,\r\n default: 'deep-orange lighten-2',\r\n },\r\n leftIconColorFocus: {\r\n type: String,\r\n default: 'deep-orange lighten-1',\r\n },\r\n leftIconTooltip: {\r\n type: String,\r\n default: '',\r\n },\r\n rightIcon: {\r\n type: String,\r\n default: '',\r\n },\r\n rightIconColor: {\r\n type: String,\r\n default: 'deep-orange lighten-2',\r\n },\r\n rightIconColorFocus: {\r\n type: String,\r\n default: 'deep-orange lighten-1',\r\n },\r\n rightIconTooltip: {\r\n type: String,\r\n default: '',\r\n },\r\n small: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n editable: {\r\n type: Boolean,\r\n default: true,\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 }\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 //focusedTrans\r\n vo.focusedTrans = vo.focused\r\n\r\n return ''\r\n },\r\n\r\n useTitleColor: function() {\r\n //console.log('computed useTitleColor')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n s['color'] = color2hex(vo.titleColor)\r\n return s\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 let s = {}\r\n if (vo.small) {\r\n s['padding'] = '0px'\r\n }\r\n else {\r\n s['padding'] = '3px 6px'\r\n }\r\n return s\r\n },\r\n\r\n usePaddingSlot: function() {\r\n //console.log('computed usePaddingSlot')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n s['padding-top'] = '0px'\r\n s['padding-bottom'] = '0px'\r\n s['padding-left'] = '0px'\r\n s['padding-right'] = '0px'\r\n if (vo.leftIcon !== '') {\r\n s['padding-left'] = '10px'\r\n }\r\n if (vo.rightIcon !== '') {\r\n s['padding-right'] = '10px'\r\n }\r\n return s\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n clickIcon: function (mode) {\r\n //console.log('methods clickIcon', mode)\r\n\r\n let vo = this\r\n\r\n if (vo.editable === false) {\r\n return\r\n }\r\n\r\n //$nextTick\r\n vo.$nextTick(() => {\r\n\r\n //emit\r\n vo.$emit('click-' + mode)\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.group {\r\n transition: all 0.3s;\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n}\r\n</style>\r\n"]},media:void 0})}),Zm,"data-v-70409afc",false,undefined,!1,Jo,void 0,void 0);var Am={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(){var n=this,e=n.value;return ga(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 jo(this.textColor)},effTextColorHover:function(){return jo(this.textColorHover)},useTextColor:function(){var n=this;return n.editable?n.hoverTrans?n.effTextColorHover:n.effTextColor:n.effTextColor},useTextFontSize:function(){var n=this.textFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},effCheckedSwitchCircleColor:function(){return jo(this.checkedSwitchCircleColor)},effCheckedSwitchCircleColorHover:function(){return jo(this.checkedSwitchCircleColorHover)},effCheckedSwitchCircleColorDisabled:function(){return jo(this.checkedSwitchCircleColorDisabled)},useCheckedSwitchCircleColor:function(){var n=this;return n.editable?n.hoverTrans?n.effCheckedSwitchCircleColorHover:n.effCheckedSwitchCircleColor:n.effCheckedSwitchCircleColorDisabled},effUncheckedSwitchCircleColor:function(){return jo(this.uncheckedSwitchCircleColor)},effUncheckedSwitchCircleColorHover:function(){return jo(this.uncheckedSwitchCircleColorHover)},effUncheckedSwitchCircleColorDisabled:function(){return jo(this.uncheckedSwitchCircleColorDisabled)},useUncheckedSwitchCircleColor:function(){var n=this;return n.editable?n.hoverTrans?n.effUncheckedSwitchCircleColorHover:n.effUncheckedSwitchCircleColor:n.effUncheckedSwitchCircleColorDisabled},useSwitchCircleColor:function(){var n=this;return n.b?n.useCheckedSwitchCircleColor:n.useUncheckedSwitchCircleColor},effCheckedSwitchBarColor:function(){return jo(this.checkedSwitchBarColor)},effCheckedSwitchBarColorHover:function(){return jo(this.checkedSwitchBarColorHover)},effCheckedSwitchBarColorDisabled:function(){return jo(this.checkedSwitchBarColorDisabled)},useCheckedSwitchBarColor:function(){var n=this;return n.editable?n.hoverTrans?n.effCheckedSwitchBarColorHover:n.effCheckedSwitchBarColor:n.effCheckedSwitchBarColorDisabled},effUncheckedSwitchBarColor:function(){return jo(this.uncheckedSwitchBarColor)},effUncheckedSwitchBarColorHover:function(){return jo(this.uncheckedSwitchBarColorHover)},effUncheckedSwitchBarColorDisabled:function(){return jo(this.uncheckedSwitchBarColorDisabled)},useUncheckedSwitchBarColor:function(){var n=this;return n.editable?n.hoverTrans?n.effUncheckedSwitchBarColorHover:n.effUncheckedSwitchBarColor:n.effUncheckedSwitchBarColorDisabled},useSwitchBarColor:function(){var n=this;return n.b?n.useCheckedSwitchBarColor:n.useUncheckedSwitchBarColor}},methods:{toogleValue:function(){var n=this;if(n.editable){var e=n.b;e=!e;var t=null;ga(n.value)?(t=!1,e&&(t=!0)):(t="n",e&&(t="y")),n.$nextTick((function(){n.$emit("input",t)}))}}}};const Vm=Am;var Pm=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()])])};Pm._withStripped=!0;const Km=zo({render:Pm,staticRenderFns:[]},(function(n){n&&n("data-v-3483a14c_0",{source:"\n.ts[data-v-3483a14c] {\r\n transition:all 0.3s;\n}\n.bs[data-v-3483a14c] {\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:\\開源-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})}),Vm,"data-v-3483a14c",false,undefined,!1,Jo,void 0,void 0);var Ym=function(n,e,t){for(var r=-1,o=n.length,i=e.length,a={};++r<o;){var l=r<i?e[r]:void 0;t(a,n[r],l)}return a};var Gm=function(n,e){return Ym(n||[],e||[],Al)};function Fm(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(!$c(n))return{};if($c(e))return Fo(n)===Fo(e)?Gm(n,e):{};for(var t=[],r=0;r<Fo(n);r++)t.push(vc(e));var o=Gm(n,t);return o}function Lm(n,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(!ki(n))return{};if(!$c(e))return{};var r={};return tn(e,(function(e){r[e]=mt(n,e,t)})),r}var jm={directives:{domresize:na()},components:{WButtonCircle:vl,WPopup:np,WText:mm,WButtonChip:fl,WAggridVueDyn:ni},props:{pathItems:{type:Array},name:{type:String,default:""},description:{type:String,default:""},inforPaddingStyle:{type:Object,default:function(){return{v:0,h:0}}},menuPaddingStyle:{type:Object,default:function(){return{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(){var n=this,e=n.name,t=n.description;return n.nameTrans=Sa(n.name),n.descriptionTrans=Sa(n.description),n.nameTemp=Sa(n.name),n.descriptionTemp=Sa(n.description),n.___changeParamsForInfor___={name:e,description:t},""},changeParamsForTable:function(){var n=this,e={rows:mt(n,"opt.rows"),hideIds:n.hideIds,fixIds:n.fixIds,checkId:n.checkId,editable:n.editable};return Zl(n.paramsTemp,e)||(n.genOpt(),n.paramsTemp=vc(e)),""},kpUploadModeItems:function(){return{replace:this.uploadModeTextForReplace,append:this.uploadModeTextForAppend}},useKeys:function(){var n=this,e=[];return $c(mt(n,"opt.keys"))?e=mt(n,"opt.keys"):$c(mt(n,"opt.rows"))&&(e=$(mt(n,"rows.0",{}))),e},useKpHead:function(){var n,e=this;return ki(mt(e,"opt.kpHead"))?n=mt(e,"opt.kpHead"):(n={},tn(e.useKeys,(function(e){n[e]=e}))),n},hasEffRows:function(){return Fo(mt(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(){var n=tl(this.inforPaddingStyle);return"padding:".concat(n,";")},useMenuPaddingStyle:function(){var n=tl(this.menuPaddingStyle);return"padding:".concat(n,";")},useMenuBackgroundColor:function(){return jo(this.menuBackgroundColor)}},methods:{domresize:function(n){var e=this,t=0,r=mt(e,"$el.offsetHeight",0),o=mt(e,"$refs.menu.offsetHeight");r>0&&o>0&&(t=r-o),t=Math.max(t,200),e.tableHeight=t},default:function(){var n=this;n.tableHeight=200,n.rowsSelect=[],n.useOpt=null,n.rowsTemp=[]},genOpt:function(){var n=this;if(0!==Fo(n.useKeys)){var e=null;if(e=Wt(mt(n,"opt.rows"))?vc(mt(n,"opt.rows")):[Fm(n.useKeys)],qt(n.sortColIds))try{e=xi(e,n.sortColIds)}catch(n){console.log(n)}else $c(n.sortColIds)&&tn(n.sortColIds,(function(n){try{e=xi(e,n)}catch(n){console.log(n)}}));n.rowsTemp=vc(e);var t={rows:e,keys:n.useKeys,defCellEditable:n.editable,defCellAlighH:"left",kpHead:n.useKpHead,rowChecked:function(e){n.rowsSelect=e}};if(qt(n.hideIds)?t.kpHeadHide=Fm([n.hideIds],!0):$c(n.hideIds)&&(t.kpHeadHide=Fm(n.hideIds,!0)),qt(n.fixIds)?t.kpHeadFixLeft=Fm([n.fixIds],!0):$c(n.fixIds)&&(t.kpHeadFixLeft=Fm(n.fixIds,!0)),n.editable&&qt(n.checkId)&&(t.kpHeadCheckBox=Fm([n.checkId],!0)),ki(n.opt)){var r=vc(n.opt);tn(r,(function(n,e){"keys"!==e&&"rows"!==e&&"kpHead"!==e&&"editable"!==e&&(t[e]=n)}))}n.useOpt=t}else n.default()},addRow:function(){var n=this;if(0===Fo(n.useKeys))return n.default(),void n.$emit("error",n.errorMsgFromAddRow);var e=Fm(n.useKeys);e.id=wi(),Xt(mt(n,"opt.beforeAddRow"))&&(e=n.opt.beforeAddRow(e));try{n.useOpt.rows.push(e),n.$nextTick((function(){var e=mt(n,"$refs.cmp.$refs.$self.getInstance");Xt(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(){var n=this,e=mt(n,"useOpt.rows",[]);if(e=vc(e),0!==Fo(e)){var t=kt(n.rowsSelect,"rowInd");if(0!==Fo(t)){ls(e,t);try{n.useOpt.rows=e}catch(e){n.$emit("error",n.errorMsgFromRemoveRow)}n.rowsSelect=[]}}},downloadData:function(){var n=this;try{var e=mt(n,"$refs.cmp.$refs.$self.downloadData");if(!Xt(e))return;e({funGetKeysHook:function(e){return qt(n.removeIdsWhenDownload)?Is(e,n.removeIdsWhenDownload):$c(n.removeIdsWhenDownload)&&Is.apply(void 0,[e].concat(td(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){var e=this,t=mt(e,"$refs.cmp.$refs.$self.uploadData");if(Xt(t)){var r=mt(e,"opt.optForUploadData");Dt(r)||(r={}),qt(mt(r,"uploadMode"))||(r.uploadMode=n),Xt(mt(r,"beforeUpload"))||(r.beforeUpload=function(n){var e=[];return tn(n,(function(n){rp(n,(function(n){return""===n}))||e.push(n)})),e}),t(r).then((function(n){0===Fo(n)?e.$emit("error",e.errorMsgFromUploadEmptyData):e.$emit("success",e.successMsgFromUploadData),e.rowsSelect=[]})).catch((function(n){console.log("catch",n),e.$emit("error",e.errorMsgFromUploadData)}))}},save:function(){var n,e=this;try{n=function(){var n=Sa(e.nameTrans),t=Sa(e.descriptionTrans);if(!qt(n))return{err:e.errorMsgFromNoName};var r=mt(e,"useOpt.rows",[]);r=function(n,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return $c(n)&&$c(e)?kt(n,(function(n){return Lm(n,e,t)})):[]}(r,e.useKeys),Xt(mt(e,"opt.modifyDataWhenSave"))&&(r=e.opt.modifyDataWhenSave(r));var o=mt(e,"opt.checkNoDataWhenSave");return ga(o)||(o=!1),o&&0===r.length?{err:e.errorMsgFromNoData}:{name:n,nameTemp:e.nameTrans,description:t,descriptionTemp:e.descriptionTemp,rows:vc(r),rowsTemp:vc(e.rowsTemp)}}()}catch(e){n={err:e}}return n}}};const Rm=jm;var zm=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)};zm._withStripped=!0;const Nm=zo({render:zm,staticRenderFns:[]},(function(n){n&&n("data-v-054f2eba_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})}),Rm,"data-v-054f2eba",false,undefined,!1,Jo,void 0,void 0);const Om={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){var e=this;e.$nextTick((function(){e.$emit("input",n)}))}}};var Jm=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)};Jm._withStripped=!0;const Dm=zo({render:Jm,staticRenderFns:[]},(function(n){n&&n("data-v-217f1844_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})}),Om,"data-v-217f1844",false,undefined,!1,Jo,void 0,void 0);const Em={components:{WShellEllipse:qp,WTextCore:of},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:ha,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(){var n=this;return n.valueTrans=n.value,n.focusedTrans=n.focused,""}},methods:{changeFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))},changeContent:function(n,e){var t,r=this;if(!1!==r.editable){if(""!==e&&r.$refs.inp.setFocus(),(t=ef(n,"isp0int")).err)return n=0,void r.$nextTick((function(){0===r.valueTrans?r.$refs.inp.setValue(n):(r.valueTrans=n,r.$emit("input",n)),r.$emit("error",t.errmsg)}));n=ar(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((function(){r.valueTrans=n,r.$emit("input",n)}))}}}};var _m=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)};_m._withStripped=!0;const Mm=zo({render:_m,staticRenderFns:[]},(function(n){n&&n("data-v-200c5eb4_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})}),Em,"data-v-200c5eb4",false,undefined,!1,Jo,void 0,void 0);const Qm={components:{WShellEllipse:qp,WTextIntCore:Mm},props:{width:{type:Number,default:70},paddingStyle:{type:Object,default:function(){return{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){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var Um=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)};Um._withStripped=!0;const $m=zo({render:Um,staticRenderFns:[]},(function(n){n&&n("data-v-1b20d0f0_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})}),Qm,"data-v-1b20d0f0",false,undefined,!1,Jo,void 0,void 0);const qm={directives:{domresize:na()},components:{WShellEllipse:qp,WTextSuggestCore:cf},props:{paddingStyle:{type:Object,default:function(){return{v:2,h:15}}},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},items:{type:Array,default:function(){return[]}},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:function(){return{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"},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){var e=this,t=tl(e.paddingStyle,{returnObj:!0}).bottom-2,r=mt(e,"$el.offsetHeight",0)-26-2*t;r/=2;e.useDistY=t+r+5},getText:function(n){return Dt(n)?n[this.keyText]:n},updateFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))},updateShowPanel:function(n){var e=this;e.showPanelTrans=n,e.$nextTick((function(){e.$emit("update:showPanel",n)}))}}};var ng=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,distY: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)};ng._withStripped=!0;const eg=zo({render:ng,staticRenderFns:[]},(function(n){n&&n("data-v-2669ec71_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",map:{version:3,sources:[],names:[],mappings:"",file:"WTextSelect.vue"},media:void 0})}),qm,"data-v-2669ec71",false,undefined,!1,Jo,void 0,void 0);var tg=c((function(n,e){n.exports=function(){var n=1e3,e=6e4,t=36e5,r="millisecond",o="second",i="minute",l="hour",c="day",d="week",s="month",u="quarter",p="year",f="date",h="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,g=/\[([^\]]+)]|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,v={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("_")},y=function(n,e,t){var r=String(n);return!r||r.length>=e?n:""+Array(e+1-r.length).join(t)+n},b={s:y,z:function(n){var e=-n.utcOffset(),t=Math.abs(e),r=Math.floor(t/60),o=t%60;return(e<=0?"+":"-")+y(r,2,"0")+":"+y(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,a=e.clone().add(r+(i?-1:1),s);return+(-(r+(t-o)/(i?o-a:a-o))||0)},a:function(n){return n<0?Math.ceil(n)||0:Math.floor(n)},p:function(n){return{M:s,y:p,w:d,d:c,D:f,h:l,m:i,s:o,ms:r,Q:u}[n]||String(n||"").toLowerCase().replace(/s$/,"")},u:function(n){return void 0===n}},C="en",x={};x[C]=v;var I=function(n){return n instanceof T},S=function n(e,t,r){var o;if(!e)return C;if("string"==typeof e){var i=e.toLowerCase();x[i]&&(o=i),t&&(x[i]=t,o=i);var a=e.split("-");if(!o&&a.length>1)return n(a[0])}else{var l=e.name;x[l]=e,o=l}return!r&&o&&(C=o),o||!r&&C},w=function(n,e){if(I(n))return n.clone();var t="object"==a(e)?e:{};return t.date=n,t.args=arguments,new T(t)},k=b;k.l=S,k.i=I,k.w=function(n,e){return w(n,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var T=function(){function a(n){this.$L=S(n.locale,null,!0),this.parse(n)}var v=a.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(k.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(m);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 k},v.isValid=function(){return!(this.$d.toString()===h)},v.isSame=function(n,e){var t=w(n);return this.startOf(e)<=t&&t<=this.endOf(e)},v.isAfter=function(n,e){return w(n)<this.startOf(e)},v.isBefore=function(n,e){return this.endOf(e)<w(n)},v.$g=function(n,e,t){return k.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=!!k.u(e)||e,a=k.p(n),u=function(n,e){var o=k.w(t.$u?Date.UTC(t.$y,e,n):new Date(t.$y,e,n),t);return r?o:o.endOf(c)},h=function(n,e){return k.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(a){case p:return r?u(1,0):u(31,11);case s:return r?u(1,g):u(0,g+1);case d:var b=this.$locale().weekStart||0,C=(m<b?m+7:m)-b;return u(r?v-C:v+(6-C),g);case c:case f: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,a=k.p(n),d="set"+(this.$u?"UTC":""),u=(t={},t[c]=d+"Date",t[f]=d+"Date",t[s]=d+"Month",t[p]=d+"FullYear",t[l]=d+"Hours",t[i]=d+"Minutes",t[o]=d+"Seconds",t[r]=d+"Milliseconds",t)[a],h=a===c?this.$D+(e-this.$W):e;if(a===s||a===p){var m=this.clone().set(f,1);m.$d[u](h),m.init(),this.$d=m.set(f,Math.min(this.$D,m.daysInMonth())).$d}else u&&this.$d[u](h);return this.init(),this},v.set=function(n,e){return this.clone().$set(n,e)},v.get=function(n){return this[k.p(n)]()},v.add=function(r,a){var u,f=this;r=Number(r);var h=k.p(a),m=function(n){var e=w(f);return k.w(e.date(e.date()+Math.round(n*r)),f)};if(h===s)return this.set(s,this.$M+r);if(h===p)return this.set(p,this.$y+r);if(h===c)return m(1);if(h===d)return m(7);var g=(u={},u[i]=e,u[l]=t,u[o]=n,u)[h]||1,v=this.$d.getTime()+r*g;return k.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||h;var r=n||"YYYY-MM-DDTHH:mm:ssZ",o=k.z(this),i=this.$H,a=this.$m,l=this.$M,c=t.weekdays,d=t.months,s=function(n,t,o,i){return n&&(n[t]||n(e,r))||o[t].slice(0,i)},u=function(n){return k.s(i%12||12,n,"0")},p=t.meridiem||function(n,e,t){var r=n<12?"AM":"PM";return t?r.toLowerCase():r},f={YY:String(this.$y).slice(-2),YYYY:this.$y,M:l+1,MM:k.s(l+1,2,"0"),MMM:s(t.monthsShort,l,d,3),MMMM:s(d,l),D:this.$D,DD:k.s(this.$D,2,"0"),d:String(this.$W),dd:s(t.weekdaysMin,this.$W,c,2),ddd:s(t.weekdaysShort,this.$W,c,3),dddd:c[this.$W],H:String(i),HH:k.s(i,2,"0"),h:u(1),hh:u(2),a:p(i,a,!0),A:p(i,a,!1),m:String(a),mm:k.s(a,2,"0"),s:String(this.$s),ss:k.s(this.$s,2,"0"),SSS:k.s(this.$ms,3,"0"),Z:o};return r.replace(g,(function(n,e){return e||f[n]||o.replace(":","")}))},v.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},v.diff=function(r,a,f){var h,m=k.p(a),g=w(r),v=(g.utcOffset()-this.utcOffset())*e,y=this-g,b=k.m(this,g);return b=(h={},h[p]=b/12,h[s]=b,h[u]=b/3,h[d]=(y-v)/6048e5,h[c]=(y-v)/864e5,h[l]=y/t,h[i]=y/e,h[o]=y/n,h)[m]||y,f?b:k.a(b)},v.daysInMonth=function(){return this.endOf(s).$D},v.$locale=function(){return x[this.$L]},v.locale=function(n,e){if(!n)return this.$L;var t=this.clone(),r=S(n,e,!0);return r&&(t.$L=r),t},v.clone=function(){return k.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()},a}(),H=T.prototype;return w.prototype=H,[["$ms",r],["$s",o],["$m",i],["$H",l],["$W",c],["$M",s],["$y",p],["$D",f]].forEach((function(n){H[n[1]]=function(e){return this.$g(e,n[0],n[1])}})),w.extend=function(n,e){return n.$i||(n(e,T,w),n.$i=!0),w},w.locale=S,w.isDayjs=I,w.unix=function(n){return w(1e3*n)},w.en=x[C],w.Ls=x,w.p={},w}()}));function rg(n){if(!qt(n))return!1;var e="YYYY-MM-DD";return n===tg(n,e).format(e)}var og={props:{value:{type:String,default:""},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},distY:{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:la,show:!1,value_day:""}},mounted:function(){},watch:{show:function(n){this.$emit("update:focused",n)}},computed:{changeParam:function(){var n=this,e=n.value;return rg(e)?n.value_day=e:n.value_day="",""},getShowTime:function(){return this.value_day},useTextFontSize:function(){var n=this.textFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},useTextColor:function(){return jo(this.textColor)}},methods:{getDay:function(n){var e=Io(n,"-");return e=ar(e=mt(e,"[2]"))},ch_day:function(n){var e=this,t=n,r="";rg(t)&&(r=t),e.show=!1,e.$nextTick((function(){e.$emit("input",r)}))}}};const ig=og;var ag=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.distY,"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)};ag._withStripped=!0;const lg=zo({render:ag,staticRenderFns:[]},(function(n){n&&n("data-v-78a1452b_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})}),ig,"data-v-78a1452b",false,undefined,!1,Jo,void 0,void 0);const cg={components:{WShellEllipse:qp,WTimedayCore:lg},props:{textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},paddingStyle:{type:Object,default:function(){return{v:2,h:15}}},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},value:{type:String,default:""},icon:{type:String,default:ca},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"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:ca,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var dg=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,distY:n.distY,editable:n.editable},on:{"update:focused":n.changeFocused,input:function(e){n.$emit("input",e)}}})],1)],1)};dg._withStripped=!0;const sg=zo({render:dg,staticRenderFns:[]},(function(n){n&&n("data-v-9563f1b6_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})}),cg,"data-v-9563f1b6",false,undefined,!1,Jo,void 0,void 0);const ug={components:{WTimedayCore:lg},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"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{focused_start:!1,focused_end:!1}},computed:{useTextFontSize:function(){var n=this.textFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},useTextColor:function(){return jo(this.textColor)}},methods:{changeFocused:function(){var n=this,e=n.focused_start||n.focused_end;n.$nextTick((function(){n.$emit("update:focused",e)}))}}};var pg=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,distY:n.distY,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,distY:n.distY,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)])};pg._withStripped=!0;const fg=zo({render:pg,staticRenderFns:[]},(function(n){n&&n("data-v-0addada7_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})}),ug,"data-v-0addada7",false,undefined,!1,Jo,void 0,void 0);const hg={components:{WShellEllipse:qp,WTimedayRangeCore:fg},props:{paddingStyle:{type:Object,default:function(){return{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:ca},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"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:ca,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var mg=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,distY:n.distY,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)};mg._withStripped=!0;const gg=zo({render:mg,staticRenderFns:[]},(function(n){n&&n("data-v-aa79952c_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})}),hg,"data-v-aa79952c",false,undefined,!1,Jo,void 0,void 0);var vg=function(n){return(null==n?0:n.length)?ai(n,Infinity):[]};var yg={components:{WTimedayCore:lg,WTextSuggestCore:cf},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:fa},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},distY:{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(){var n=this,e=n.value,t=Io(e,"T");return n.value_day=mt(t,0),n.value_time=Ha(mt(t,1),5),""},getUseMinutes:function(){var n=this;if(Wt(n.minutesCustom))return n.minutesCustom;var e=lr(n.hourMin)&&lr(n.hourMax)&&n.hourMin<=n.hourMax,t=lr(n.minuteInter);if(e&&t){var r=kt(fs(n.hourMin,n.hourMax+1),(function(e){var t=String(e);return e<10&&(t="0"+t),kt(fs(0,60,n.minuteInter),(function(n){var e=String(n);return n<10&&(e="0"+e),t+":"+e}))}));r=vg(r);var o=String(n.hourMax);return n.hourMax<10&&(o="0"+o),o+=":00",r=ri(r,(function(n){return n<=o}))}}},methods:{ch_day:function(n){this.value_day=n,this.changeContent()},ch_time:function(n){this.value_time=n,this.changeContent()},changeContent:function(){var n=this,e=n.value_day+"T"+n.value_time+":00";(function(n){if(!qt(n))return!1;var e="YYYY-MM-DDTHH:mm:ss";return n===tg(n,e).format(e)})(e)&&n.$nextTick((function(){n.$emit("input",e)}))},changeFocused:function(){var n=this,e=n.focused_day||n.focused_time;n.$nextTick((function(){n.$emit("update:focused",e)}))}}};const bg=yg;var Cg=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,distY:n.distY,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,distY:n.distY,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)])};Cg._withStripped=!0;const xg=zo({render:Cg,staticRenderFns:[]},(function(n){n&&n("data-v-f84e780a_0",{source:"\n[data-v-f84e780a] div.v-input__icon {\r\n transform: translateX(-5px);\n}\r\n",map:{version:3,sources:["D:\\開源-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 :distY=\"distY\"\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 :distY=\"distY\"\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} [distY=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 distY: {\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})}),bg,"data-v-f84e780a",false,undefined,!1,Jo,void 0,void 0);const Ig={components:{WShellEllipse:qp,WTimeminuteCore:xg},props:{paddingStyle:{type:Object,default:function(){return{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:ca},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:fa},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:ca,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var Sg=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,distY:n.distY,editable:n.editable,value:n.value},on:{"update:focused":n.changeFocused,input:function(e){n.$emit("input",e)}}})],1)],1)};Sg._withStripped=!0;const wg=zo({render:Sg,staticRenderFns:[]},(function(n){n&&n("data-v-765fded7_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})}),Ig,"data-v-765fded7",false,undefined,!1,Jo,void 0,void 0);const kg={components:{WTimeminuteCore:xg},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:fa},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{focused_start:!1,focused_end:!1}},computed:{useTextFontSize:function(){var n=this.textFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},useTextColor:function(){return jo(this.textColor)}},methods:{changeFocused:function(){var n=this,e=n.focused_start||n.focused_end;n.$nextTick((function(){n.$emit("update:focused",e)}))}}};var Tg=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,distY:n.distY,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,distY:n.distY,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)])};Tg._withStripped=!0;const Hg=zo({render:Tg,staticRenderFns:[]},(function(n){n&&n("data-v-998ac7d6_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})}),kg,"data-v-998ac7d6",false,undefined,!1,Jo,void 0,void 0);const Wg={components:{WShellEllipse:qp,WTimeminuteRangeCore:Hg},props:{paddingStyle:{type:Object,default:function(){return{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:ca},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:fa},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:ca,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var Zg=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,distY:n.distY,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)};Zg._withStripped=!0;const Xg=zo({render:Zg,staticRenderFns:[]},(function(n){n&&n("data-v-1bb03348_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})}),Wg,"data-v-1bb03348",false,undefined,!1,Jo,void 0,void 0);const Bg={components:{WIconLoading:Mo},props:{pathItems:{type:Array,default:function(){return["https://cdn.jsdelivr.net/npm/tinymce@5.5.1/tinymce.min.js","https://cdn.jsdelivr.net/npm/w-tinymce-vue@2.0.2/dist/w-tinymce-vue.umd.js"]}},value:{type:String,default:""},settings:{type:Object,default:function(){}},height:{type:Number,default:250},editable:{type:Boolean,default:!0}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){var n=this;vr(n.pathItems).then((function(e){if("loaded"!==e){var t=window["w-tinymce-vue"];t.default&&(t=t.default),Uo().component("w-tinymce-vue",t)}n.cmpName="w-tinymce-vue"}))},computed:{},methods:{}};var Ag=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)}}})};Ag._withStripped=!0;const Vg=zo({render:Ag,staticRenderFns:[]},(function(n){n&&n("data-v-1ac68af2_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})}),Bg,"data-v-1ac68af2",false,undefined,!1,Jo,void 0,void 0);var Pg={install:function(n){n.component("w-aggrid-vue-dyn",ni),n.prototype.$alert=Di,n.component("w-badge",ra),n.component("w-button-chip",fl),n.component("w-button-circle",vl),n.component("w-checkbox",xl),n.component("w-ckeditor-vue-dyn",wl),n.component("w-confirm",Wl),n.component("w-dialog",Cc),n.component("w-drawer",Zc),n.component("w-dropfiles",Dc),n.component("w-dynamic-list",Hd),n.component("w-echarts-vue-dyn",Xd),n.component("w-explorer",Vp),n.component("w-group-baggage",Lp),n.component("w-group-check",Op),n.component("w-group-dragdrop",Ep),n.component("w-group-radio",Qp),n.component("w-group-tags",vf),n.component("w-highcharts-bitmap-dyn",If),n.component("w-highcharts-vue-dyn",kf),n.component("w-highstock-vue-dyn",Wf),n.component("w-icon",dl),n.component("w-icon-loading",Mo),n.component("w-icon-svg",Bf),n.component("w-image-cascading-dyn",th),n.component("w-image-viewer-dyn",ih),n.component("w-input-checkbox",dh),n.component("w-input-radio",ph),n.component("w-json-view",Wh),n.component("w-leaflet-vue-dyn",Bh),n.component("w-list-expand",Lh),n.component("w-list-expand-item",Kh),n.component("w-list-horizontal",Jh),n.component("w-list-item",dp),n.component("w-list-vertical",mp),n.component("w-panel-avatar",_h),n.component("w-panel-bulge",Uh),n.component("w-panel-divide-horizontal",nm),n.component("w-panel-divide-vertical",rm),n.component("w-panel-scale",am),n.component("w-panel-scrolly",ap),n.component("w-panel-scrolly-core",bd),n.component("w-panel-slot-hover",Yp),n.component("w-panel-stripe",dm),n.component("w-popup",np),n.component("w-popup-edit-text",ym),n.component("w-progress-bar",Im),n.component("w-progress-circle",km),n.component("w-quill-vue-dyn",Wm),n.component("w-shell-bottom-line",pm),n.component("w-shell-ellipse",qp),n.component("w-shell-material",Bm),n.component("w-switch",Km),n.component("w-table-dyn",Nm),n.component("w-text",mm),n.component("w-textarea",Dm),n.component("w-text-core",of),n.component("w-text-int",$m),n.component("w-text-int-core",Mm),n.component("w-text-select",eg),n.component("w-text-suggest",uf),n.component("w-text-suggest-core",cf),n.component("w-timeday",sg),n.component("w-timeday-core",lg),n.component("w-timeday-range",gg),n.component("w-timeday-range-core",fg),n.component("w-timeminute",wg),n.component("w-timeminute-core",xg),n.component("w-timeminute-range",Xg),n.component("w-timeminute-range-core",Hg),n.component("w-tinymce-vue-dyn",Vg),n.component("w-tree",Wp),n.component("w-tree-icon-checkbox",xp),n.component("w-tree-icon-toggle",yp)}};return zo({},undefined,Pg,undefined,undefined,undefined,!1,void 0,void 0,void 0)}));
|
|
15
|
+
*/var Yf=function(n,e,t){(void 0!==t&&!an(n[e],t)||void 0===t&&!(e in n))&&Xl(n,e,t)};var Gf=function(n){return I(n)&&U(n)};var Ff=function(n,e){if(("constructor"!==e||"function"!=typeof n[e])&&"__proto__"!=e)return n[e]};var Lf=function(n){return Vl(n,Fl(n))};var jf=function(n,e,t,r,o,i,a){var l=Ff(n,t),c=Ff(e,t),d=a.get(c);if(d)Yf(n,t,d);else{var s=i?i(l,c,t+"",n,e,a):void 0,u=void 0===s;if(u){var p=Z(c),f=!p&&B(c),h=!p&&!f&&j(c);s=c,p||f||h?Z(l)?s=l:Gf(l)?s=Rl(l):f?(u=!1,s=jl(c,!0)):h?(u=!1,s=ec(c,!0)):s=[]:Pi(c)||W(c)?(s=l,W(l)?s=Lf(l):M(l)&&!Q(l)||(s=ic(c))):u=!1}u&&(a.set(c,s),o(s,c,r,i,a),a.delete(c)),Yf(n,t,s)}};var Rf=function n(e,t,r,i,a){e!==t&&o(t,(function(o,l){if(a||(a=new te),M(o))jf(e,t,l,r,n,i,a);else{var c=i?i(Ff(e,l),o,l+"",e,t,a):void 0;void 0===c&&(c=o),Yf(e,l,c)}}),Fl)};var zf=function(n){return Ci((function(e,t){var r=-1,o=t.length,i=o>1?t[o-1]:void 0,a=o>2?t[2]:void 0;for(i=n.length>3&&"function"==typeof i?(o--,i):void 0,a&&yo(t[0],t[1],a)&&(i=o<3?void 0:i,o=1),e=Object(e);++r<o;){var l=t[r];l&&n(e,l,r,i)}return e}))}((function(n,e,t){Rf(n,e,t)}));function Nf(){var 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}function Of(){var n=Qo();return Kf||n.Viewer}function Jf(n){return Df.apply(this,arguments)}function Df(){return Df=Mt(Ut.mark((function n(e){var t,r,o,i,a,l,c,d,s,u,p,f=arguments;return Ut.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(t=f.length>1&&void 0!==f[1]?f[1]:null,r=f.length>2&&void 0!==f[2]?f[2]:{},o=!0,i=null,a=Bt(),ki(r)||(r={}),Yi(e)){n.next=11;break}return a.reject("eleImg is not HTMLElement"),n.abrupt("return",a);case 11:i=e;case 12:if(null===t){n.next=20;break}if(Yi(t)){n.next=18;break}return a.reject("eleGroup is not HTMLElement"),n.abrupt("return",a);case 18:o=!1,i=t;case 20:if(o){n.next=29;break}if(l=t.querySelectorAll("img"),0!==(c=Fo(l))){n.next=28;break}return a.reject("eleGroup does not contain any img"),n.abrupt("return",a);case 28:1===c&&(o=!0);case 29:return d={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},o||(d=Nf()),d=zf(d,vc(r)),s=!1,d.hide=function(){s||(s=!0,p.hide(!0))},d.hidden=function(){p.destroy(),a.resolve("close")},u=Of(),(p=new u(i,d)).show(),n.abrupt("return",a);case 39:case"end":return n.stop()}}),n)}))),Df.apply(this,arguments)}function Ef(n){return _f.apply(this,arguments)}function _f(){return _f=Mt(Ut.mark((function n(e){var t,r,o,i=arguments;return Ut.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t=i.length>1&&void 0!==i[1]?i[1]:null,r=i.length>2&&void 0!==i[2]?i[2]:{},$c(o=i.length>3?i[3]:void 0)||(o=["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"]),n.next=6,vr(o);case 6:return n.abrupt("return",Jf(e,t,r));case 7:case"end":return n.stop()}}),n)}))),_f.apply(this,arguments)}function Mf(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=0,t=[];nf(n)&&(n=0),n=ar(n);var r=Mi();function o(){if(t.length>0)return e+=1,t.splice(0,1)[0];return null}function i(){(e-=1)<0&&(e=0),t.length>0&&r.emit("message",t)}function a(o){t.push(o),(n<=0||e<n)&&r.emit("message",t)}function l(){e=0,t=[]}return r.get=o,r.cb=i,r.push=a,r.clear=l,r}function Qf(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 Uf(n){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?Qf(Object(t),!0).forEach((function(e){Ei(n,e,t[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qf(Object(t)).forEach((function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(t,e))}))}return n}var $f=!1;var qf={directives:{domresize:na()},components:{WIconLoading:Mo},props:{pathItems:{type:Array,default:function(){return["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:function(){return[]}},imageWidth:{type:Number,default:300},imageWidthSoft:{type:Number,default:null},colNum:{type:Number,default:null},space:{type:Number,default:15},imageStyle:{type:Object,default:function(){}},arrangeWhenFinish:{type:Boolean,default:!1},numParallel:{type:Number,default:5},opt:{type:Object,default:function(){}}},data:function(){return{dbc:rd(),loading:!0,first:!1,widthPanel:0,heightPanel:0,imageCols:[],imageLocs:[],useImageStyle:{},uesImageWidth:0,imagesRes:[]}},mounted:function(){var n=this;vr(n.pathItems).then((function(e){n.loading=!1}))},computed:{changeImages:function(){var n=this.images;return this.refreshDebounce({images:n}),""},changeStyle:function(){var 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){var e=this,t=mt(e,"$el.offsetWidth",0);$f||e.widthPanel!==t&&(e.widthPanel=t)},getImgSize:function(n,e){var t=Bt(),r="g".concat(wi()),o=document.createElement("img");o.src=n,o.style.maxWidth="".concat(e,"px");var i=document.createElement("div");return i.id="img-".concat(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}),rl(i)},o.onerror=function(e){t.reject({src:n,w:0,h:0,err:e}),rl(i)},t},getImgsSize:function(n,e){var t=this,r=Mi(),o=function(){function n(n,e){var t=null;ur(n)||(n=0),n=ar(n),ma(e)||(e=!1);var r=Mf(n);return r.on("message",function(){var n=Mt(Ut.mark((function n(e){var t,o,i,a,l;return Ut.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(t=r.get()){n.next=3;break}return n.abrupt("return");case 3:return n.next=5,fr(1);case 5:if(o=mt(t,"id"),i=mt(t,"fun"),a=mt(t,"input"),Xt(i)){n.next=12;break}l={state:"error",msg:"fun is not function"},n.next=15;break;case 12:return n.next=14,od(i).apply(void 0,td(a));case 14:l=n.sent;case 15:r.emit(o,l),r.cb();case 17:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}()),function(n){var o=Bt(),i=wi();t=i;for(var a=arguments.length,l=new Array(a>1?a-1:0),c=1;c<a;c++)l[c-1]=arguments[c];var d={id:i,fun:n,input:l};return r.push(d),r.once(i,(function(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}}return new n(arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,arguments.length>1&&void 0!==arguments[1]&&arguments[1])}(t.numParallel);t.imagesRes=[];var i=-1;return tn(t.images,(function(a,l){o(t.getImgSize,a,n).then((function(n){var o=++i;t.arrangeWhenFinish&&(o=l);var a,c=Uf(Uf({},n),{},{name:(a=n.src,a.split("\\").pop().split("/").pop()),ind:o,evKey:e});t.imagesRes[o]=c,r.emit("get",c)})).catch((function(n){console.log(n)}))})),r},refreshDebounce:function(){var n=this;n.dbc((function(){n.refresh()}))},refresh:function(){var n=this,e=null,t=null;if(ei(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(lr(n.colNum))t=ar(n.colNum),e=(n.widthPanel-(t-1)*n.space)/t,e=Math.floor(e);else if(ei(n.imageWidth)&&n.imageWidth>0){e=n.imageWidth;var r=n.widthPanel+n.space;r=Math.max(r,0);var 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;var i=Uf(Uf({},n.imageStyle),{},{"max-width":"".concat(e,"px"),"user-select":"none",cursor:"pointer",outline:"none"});function a(){n.imageCols=kt(Pf(t),(function(){return[]})),n.imageLocs=kt(Pf(t),(function(){return 0}))}function l(e){if(Wt(n.imageCols)){var t,r,o=(t=n.imageLocs[0],r=0,tn(n.imageLocs,(function(n,e){t>n&&(t=n,r=e)})),r);try{n.imageCols[o].push(e),n.imageLocs[o]+=e.h+n.space+53}catch(n){}}}function c(){a(),tn(n.imagesRes,(function(n){l(n)}))}n.useImageStyle=i,n.first?c():function(){var t=Bt();a();var r=wi(),o=Fo(n.images),i=n.getImgsSize(e,r),d=0;i.on("get",(function(e){e.evKey===r&&(l(e),++d>=o&&(n.first=!0,n.arrangeWhenFinish&&c(),t.resolve()))}))}()},showImg:function(n,e){var t=this;$f=!0,Ef(n.currentTarget,null,t.opt,t.pathItems).finally((function(){$f=!1})),t.$emit("click",e)}}};const nh=qf;var eh=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)};eh._withStripped=!0;const th=zo({render:eh,staticRenderFns:[]},(function(n){n&&n("data-v-1fddd0be_0",{source:"\n.inp[data-v-1fddd0be] {\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-1fddd0be]:focus {\r\n outline: none;\n}\n.fadeIn[data-v-1fddd0be] {\r\n animation: aniFadeIn-data-v-1fddd0be 0.3s;\n}\n@keyframes aniFadeIn-data-v-1fddd0be\r\n{\nfrom {opacity: 0;}\nto {opacity: 1}\n}\r\n",map:{version:3,sources:["D:\\開源-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})}),nh,"data-v-1fddd0be",false,undefined,!1,Jo,void 0,void 0);const rh={components:{WIconLoading:Mo},props:{pathItems:{type:Array,default:function(){return["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:function(){return[]}},imageStyle:{type:Object,default:function(){}},opt:{type:Object,default:function(){}},multiple:{type:Boolean,default:!1}},data:function(){return{loading:!0}},mounted:function(){var n=this;vr(n.pathItems).then((function(e){n.loading=!1,n.$nextTick((function(){var e=mt(n,"$refs.wiv",[]);tn(e,(function(n,e){Gi(n,{duration:200,delay:100*e})}))}))}))},computed:{useImageStyle:function(){return zf({margin:"5px"},this.imageStyle)}},methods:{showImg:function(n){var e=this,t=null;e.multiple&&(t=e.$refs.wig),Ef(n.currentTarget,t,e.opt,e.pathItems).catch((function(n){console.log(n)}))}}};var oh=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)};oh._withStripped=!0;const ih=zo({render:oh,staticRenderFns:[]},(function(n){n&&n("data-v-69e2e858_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})}),rh,"data-v-69e2e858",false,undefined,!1,Jo,void 0,void 0);var ah={components:{},props:{multiCheck:{type:Boolean,default:!0},items:{type:Array,default:function(){return[]}},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:function(){return{top:0,bottom:0,left:0,right:0}}},paddingStyle:{type:Object,default:function(){return{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:mt,itemsTrans:[],dataActive:null}},mounted:function(){},computed:{changeItems:function(){var n=this;var e=vc(n.items),t=kt(e,(function(e){var t=function(e){return n.multiCheck?jp(n.value,e):Zl(e,n.value)}(e);return t})),r=[],o=[];return tn(e,(function(n,e){var i={data:n},a="id-".concat(e);i.id=a;var l=t[e];i.active=l,i.hover=!1,r.push(i),l&&o.push(a)})),n.multiCheck||(o=o[0]),n.itemsTrans=r,n.dataActive=o,""},useMarginStyle:function(){var n=tl(this.marginStyle,{parse:!this.group});return"margin:".concat(n,";")},usePadding:function(){var n=this,e=tl(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}});return"padding:".concat(e,";")},useVerticalAlign:function(){var 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(){var n=this,e="";return nr(n.inputHeight)?e="height:".concat(n.inputHeight,"px;"):qt(n.inputHeight)&&(n.inputHeight=Ti(n.inputHeight,";",""),e="height:".concat(n.inputHeight,";")),e},effTextColor:function(){return jo(this.textColor)},effTextColorHover:function(){return jo(this.textColorHover)},effTextColorActive:function(){return jo(this.textColorActive)}},methods:{getText:function(n){return mt(n,"data.".concat(this.keyText))||mt(n,"data")},getTextColor:function(n,e){var 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){var t=this;tn(t.itemsTrans,(function(n,r){t.itemsTrans[r].hover=r===e}))},mouseleave:function(n,e){var t=this;tn(t.itemsTrans,(function(n,e){t.itemsTrans[e].hover=!1}))},toggleState:function(n){var e=this;if(!1!==e.editable)if(e.multiCheck){var t=vc(e.value);if(n.active){var r=[];tn(t,(function(e){Zl(e,n.data)||r.push(e)})),t=r}else t.push(n.data);e.$nextTick((function(){e.$emit("input",t),e.$emit("click",n.data,"".concat(n.active?"hide":"show"))}))}else e.$nextTick((function(){e.$emit("input",n.data),e.$emit("click",n.data)}))}}};const lh=ah;var ch=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 a=e.id,l=n._i(r,a);o.checked?l<0&&(n.dataActive=r.concat([a])):l>-1&&(n.dataActive=r.slice(0,l).concat(r.slice(l+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)};ch._withStripped=!0;const dh=zo({render:ch,staticRenderFns:[]},(function(n){n&&n("data-v-2014fa48_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})}),lh,undefined,false,undefined,!1,Jo,void 0,void 0);const sh={components:{WInputCheckbox:dh},props:{multiCheck:{type:Boolean,default:!0},items:{type:Array,default:function(){return[]}},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:function(){return{top:0,bottom:0,left:0,right:0}}},paddingStyle:{type:Object,default:function(){return{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 uh=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))};uh._withStripped=!0;const ph=zo({render:uh,staticRenderFns:[]},(function(n){n&&n("data-v-3197c770_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})}),sh,"data-v-3197c770",false,undefined,!1,Jo,void 0,void 0);function fh(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 hh(n){return function(n){if(Array.isArray(n))return fh(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 fh(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)?fh(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 mh(n,e,t,r,o,i,a){try{var l=n[i](a),c=l.value}catch(n){return void t(n)}l.done?e(c):Promise.resolve(c).then(r,o)}function gh(n){return(gh="function"==typeof Symbol&&"symbol"==a(Symbol.iterator)?function(n){return a(n)}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":a(n)})(n)}var vh="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function yh(n){var e={exports:{}};return n(e,e.exports),e.exports}var bh,Ch=yh((function(n){var e=function(n){var e,t=Object.prototype,r=t.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(n,e,t){return Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}),n[e]}try{c({},"")}catch(n){c=function(n,e,t){return n[e]=t}}function d(n,e,t,r){var o=e&&e.prototype instanceof g?e:g,i=Object.create(o.prototype),a=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 a=t.delegate;if(a){var l=k(a,t);if(l){if(l===m)continue;return l}}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 c=s(n,e,t);if("normal"===c.type){if(r=t.done?h:p,c.arg===m)continue;return{value:c.arg,done:t.done}}"throw"===c.type&&(r=h,t.method="throw",t.arg=c.arg)}}}(n,t,a),i}function s(n,e,t){try{return{type:"normal",arg:n.call(e,t)}}catch(n){return{type:"throw",arg:n}}}n.wrap=d;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,x=C&&C(C(Z([])));x&&x!==t&&r.call(x,i)&&(b=x);var I=y.prototype=g.prototype=Object.create(b);function S(n){["next","throw","return"].forEach((function(e){c(n,e,(function(n){return this._invoke(e,n)}))}))}function w(n,e){function t(o,i,a,l){var c=s(n[o],n,i);if("throw"!==c.type){var d=c.arg,u=d.value;return u&&"object"===gh(u)&&r.call(u,"__await")?e.resolve(u.__await).then((function(n){t("next",n,a,l)}),(function(n){t("throw",n,a,l)})):e.resolve(u).then((function(n){d.value=n,a(d)}),(function(n){return t("throw",n,a,l)}))}l(c.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=s(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,a=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 a.next=a}}return{next:X}}function X(){return{value:e,done:!0}}return v.prototype=I.constructor=y,y.constructor=v,v.displayName=c(y,l,"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,c(n,l,"GeneratorFunction")),n.prototype=Object.create(I),n},n.awrap=function(n){return{__await:n}},S(w.prototype),w.prototype[a]=function(){return this},n.AsyncIterator=w,n.async=function(e,t,r,o,i){void 0===i&&(i=Promise);var a=new w(d(e,t,r,o),i);return n.isGeneratorFunction(t)?a:a.next().then((function(n){return n.done?n.value:a.next()}))},S(I),c(I,l,"Generator"),I[i]=function(){return this},I.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 l.type="throw",l.arg=n,t.next=r,o&&(t.method="next",t.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],l=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var c=r.call(a,"catchLoc"),d=r.call(a,"finallyLoc");if(c&&d){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.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 a=i?i.completion:{};return a.type=n,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(a)},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)}})),xh=yh((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),a=String.fromCharCode,l=function(n){if(n.length<2)return(e=n.charCodeAt(0))<128?n:e<2048?a(192|e>>>6)+a(128|63&e):a(224|e>>>12&15)+a(128|e>>>6&63)+a(128|63&e);var e=65536+1024*(n.charCodeAt(0)-55296)+(n.charCodeAt(1)-56320);return a(240|e>>>18&7)+a(128|e>>>12&63)+a(128|e>>>6&63)+a(128|63&e)},c=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,d=function(n){return n.replace(c,l)},s=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,s)},p=function(n){return u(d(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 a=n[r],l=n[r+1],c=n[r+2],d=a<<16|l<<8|c;t+=o.charAt(d>>>18)+o.charAt(d>>>12&63)+(void 0!==l?o.charAt(d>>>6&63):"=")+(void 0!==c?o.charAt(63&d):"=")}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 a(55296+(e>>>10))+a(56320+(1023&e));case 3:return a((15&n.charCodeAt(0))<<12|(63&n.charCodeAt(1))<<6|63&n.charCodeAt(2));default:return a((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=[a(r>>>16),a(r>>>8&255),a(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)},x=function(n){return C(String(n).replace(/[^A-Za-z0-9\+\/]/g,""))},I=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))}(I(n))};e.Uint8Array&&(m=function(n){return Uint8Array.from(x(I(n)),(function(n){return n.charCodeAt(0)}))});if(e.Base64={VERSION:"2.6.4",atob:x,btoa:u,fromBase64:S,toBase64:h,utob:d,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:vh)})),Ih=yh((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,a){if("function"!=typeof r)throw new TypeError("The listener must be a function");var l=new o(r,i||n,a),c=t?t+e:e;return n._events[c]?n._events[c].fn?n._events[c]=[n._events[c],l]:n._events[c].push(l):(n._events[c]=l,n._eventsCount++),n}function a(n,e){0==--n._eventsCount?n._events=new r:delete n._events[e]}function l(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(t=!1)),l.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},l.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,a=new Array(i);o<i;o++)a[o]=r[o].fn;return a},l.prototype.listenerCount=function(n){var e=t?t+n:n,r=this._events[e];return r?r.fn?1:r.length:0},l.prototype.emit=function(n,e,r,o,i,a){var l=t?t+n:n;if(!this._events[l])return!1;var c,d,s=this._events[l],u=arguments.length;if(s.fn){switch(s.once&&this.removeListener(n,s.fn,void 0,!0),u){case 1:return s.fn.call(s.context),!0;case 2:return s.fn.call(s.context,e),!0;case 3:return s.fn.call(s.context,e,r),!0;case 4:return s.fn.call(s.context,e,r,o),!0;case 5:return s.fn.call(s.context,e,r,o,i),!0;case 6:return s.fn.call(s.context,e,r,o,i,a),!0}for(d=1,c=new Array(u-1);d<u;d++)c[d-1]=arguments[d];s.fn.apply(s.context,c)}else{var p,f=s.length;for(d=0;d<f;d++)switch(s[d].once&&this.removeListener(n,s[d].fn,void 0,!0),u){case 1:s[d].fn.call(s[d].context);break;case 2:s[d].fn.call(s[d].context,e);break;case 3:s[d].fn.call(s[d].context,e,r);break;case 4:s[d].fn.call(s[d].context,e,r,o);break;default:if(!c)for(p=1,c=new Array(u-1);p<u;p++)c[p-1]=arguments[p];s[d].fn.apply(s[d].context,c)}}return!0},l.prototype.on=function(n,e,t){return i(this,n,e,t,!1)},l.prototype.once=function(n,e,t){return i(this,n,e,t,!0)},l.prototype.removeListener=function(n,e,r,o){var i=t?t+n:n;if(!this._events[i])return this;if(!e)return a(this,i),this;var l=this._events[i];if(l.fn)l.fn!==e||o&&!l.once||r&&l.context!==r||a(this,i);else{for(var c=0,d=[],s=l.length;c<s;c++)(l[c].fn!==e||o&&!l[c].once||r&&l[c].context!==r)&&d.push(l[c]);d.length?this._events[i]=1===d.length?d[0]:d:a(this,i)}return this},l.prototype.removeAllListeners=function(n){var e;return n?(e=t?t+n:n,this._events[e]&&a(this,e)):(this._events=new r,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=t,l.EventEmitter=l,n.exports=l}));!function(){if("browser"!=("undefined"!=typeof window&&void 0!==window.document?"browser":"nodejs"))return null;function n(){return new Ih}function e(){var n,e,t=new Promise((function(){n=arguments[0],e=arguments[1]}));return t.resolve=n,t.reject=e,t}function t(){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];var i=e.join("");return i}var r=("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=",xh.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 o(){var o=n();function i(n){try{var e=new Blob([n]),t=window.URL||window.webkitURL;return new Worker(t.createObjectURL(e))}catch(n){u(n)}}var a=i(r);if(!a)return u("invalid worker"),null;function l(){a?(a.terminate(),a=void 0):u("worker has been terminated")}function c(){var n={mode:"init",type:"function",input:Array.prototype.slice.call(arguments)};a.postMessage(n)}function d(){var n=e(),r=t(),i={mode:"call",id:r,fun:"main",input:Array.prototype.slice.call(arguments)};return a.postMessage(i),o.once(r,(function(e){"success"===e.state?n.resolve(e.msg):n.reject(e.msg)})),n}function s(n){var e=n,t=e.mode;"emit"!==t&&"return"!==t||("emit"===t&&o.emit(e.evName,e.msg),"return"===t&&o.emit(e.id,e))}function u(n){o.emit("error",n)}return a.onmessage=function(n){s(n.data)},a.onerror=u,c(Array.prototype.slice.call(arguments)),o.main=d,o.main=d,o.terminate=l,o}bh=function(){var n,e=(n=Ch.mark((function n(){var e,t,r,i=arguments;return Ch.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e=Array.prototype.slice.call(i),t=o(),n.next=4,t.main.apply(t,hh(e)).finally((function(){t.terminate()}));case 4:return r=n.sent,n.abrupt("return",r);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 a(n){mh(i,r,o,a,l,"next",n)}function l(n){mh(i,r,o,a,l,"throw",n)}a(void 0)}))});return function(){return e.apply(this,arguments)}}()}();var Sh,wh=bh,kh={components:{WTree:Wp},props:{data:{type:[Array,Object],default:function(){}},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:function(n){this.setData(n)}}},computed:{changeColors:function(){return this.convertColors(),""},useItemHeightMin:function(){return"min-height:".concat(Math.max(this.iconSize,this.defItemHeight),"px;")}},methods:{convertColors:function(){var n=this;if(!ki(n.useColors)){var e={numColor:jo(n.numColor),strColor:jo(n.strColor),bolColor:jo(n.bolColor),funColor:jo(n.funColor),defaultColor:jo(n.defaultColor),keyColor:jo(n.keyColor),keyNumbersColor:jo(n.keyNumbersColor)};n.useColors=e}},parseData:(Sh=Mt(Ut.mark((function n(e){var t,r;return Ut.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t=this,n.next=3,wh(e,{bindRoot:t.root});case 3:return r=n.sent,n.abrupt("return",r);case 5:case"end":return n.stop()}}),n,this)}))),function(n){return Sh.apply(this,arguments)}),setData:function(n){var e=this;function t(){return(t=Mt(Ut.mark((function t(){var r;return Ut.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.lockFromSetData=!0,Wt(n)||Dt(n)){t.next=4;break}return"data is not an array or object",t.abrupt("return","data is not an array or object");case 4:return e.convertColors(),n=vc(n),t.next=8,e.parseData(n);case 8:return r=t.sent,t.next=11,dr((function(){return void 0!==e.$refs.wt}),{timeInterval:20});case 11:if(!e.$refs.wt){t.next=14;break}return t.next=14,e.$refs.wt.setData(r);case 14:e.getLineNumberWidth();case 15:case"end":return t.stop()}}),t)})))).apply(this,arguments)}(function(){return t.apply(this,arguments)})().catch((function(n){console.log(n)})).finally((function(){e.lockFromSetData=!1}))},getLineNumberWidth:function(){var n=this;function e(){return e=Mt(Ut.mark((function e(){var t,r,o,i;return Ut.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,dr((function(){return void 0!==n.$refs.wt}),{timeInterval:20});case 2:if(n.$refs.wt){e.next=4;break}return e.abrupt("return");case 4:t=n.$refs.wt.getRows(),r=Fo(t),o=Math.ceil(Math.log10(r)),i=8*(o+.5),n.lineNumberWidth=i;case 9:case"end":return e.stop()}}),e)}))),e.apply(this,arguments)}(function(){return e.apply(this,arguments)})().catch((function(n){console.log(n)}))},genBlock:function(n){var e="";return"object"===n.type?e="{".concat(n.numOfChilren,"}"):"array"===n.type&&(e="[".concat(n.numOfChilren,"]")),e},getKey:function(n){var e="";return(qt(n.key)||ei(n.key))&&(e=n.key),e===this.root&&(e=""),e},getType:function(n){var e="";return"node"!==n.type&&(e=n.type),e},getText:function(n){var e="";return"node"===n.type&&(e=n.text),e},getTextTypeColor:function(n){var e=this,t=e.useColors.defaultColor;if("node"===n.type){var r="";ei(n.text)?r="numColor":Zt(n.text)?r="strColor":ga(n.text)?r="bolColor":Xt(n.text)&&(r="funColor"),Hi(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 Th=kh;var Hh=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)};Hh._withStripped=!0;const Wh=zo({render:Hh,staticRenderFns:[]},(function(n){n&&n("data-v-174e62d7_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})}),Th,"data-v-174e62d7",false,undefined,!1,Jo,void 0,void 0);const Zh={components:{WIconLoading:Mo},props:{pathItems:{type:Array,default:function(){return["https://cdn.jsdelivr.net/npm/w-leaflet-vue@1.0.35/dist/w-leaflet-vue.umd.js"]}},opt:{type:Object,default:function(){}}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){var n=this;vr(n.pathItems).then((function(e){if("loaded"!==e){var t=window["w-leaflet-vue"];t.default&&(t=t.default),Uo().component("w-leaflet-vue",t)}n.cmpName="w-leaflet-vue"}))},computed:{},methods:{}};var Xh=function(){var n=this,e=n.$createElement;return(n._self._c||e)(n.cmpName,{ref:"$self",tag:"component",attrs:{opt:n.opt}})};Xh._withStripped=!0;const Bh=zo({render:Xh,staticRenderFns:[]},(function(n){n&&n("data-v-5a7c737e_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})}),Zh,"data-v-5a7c737e",false,undefined,!1,Jo,void 0,void 0);var Ah={directives:{domripple:il()},components:{WIcon:dl},props:{text:{type:String,default:""},textFontSize:{type:String,default:"1rem"},active:{type:Boolean,default:!1},paddingStyle:{type:Object,default:function(){return{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:fa},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(){var n=this.textFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},hasIcon:function(){return""!==this.icon},usePadding:function(){var n=this,e=tl(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}});return"padding:".concat(e,";")},effBackgroundColor:function(){return jo(this.backgroundColor)},effBackgroundColorHover:function(){return jo(this.backgroundColorHover)},effBackgroundActive:function(){return jo(this.backgroundColorActive)},useBackgroundColor:function(){var n=this;return n.active?n.effBackgroundActive:n.mouseEnter?n.effBackgroundColorHover:n.effBackgroundColor},effTextColor:function(){return jo(this.textColor)},effTextColorHover:function(){return jo(this.textColorHover)},effTextActive:function(){return jo(this.textColorActive)},useTextColor:function(){var n=this;return n.active?n.effTextActive:n.mouseEnter?n.effTextColorHover:n.effTextColor},effIconColor:function(){return jo(this.iconColor)},effIconColorHover:function(){return jo(this.iconColorHover)},effIconActive:function(){return jo(this.iconColorActive)},useIconColor:function(){var n=this;return n.active?n.effIconActive:n.mouseEnter?n.effIconColorHover:n.effIconColor},effExpansionIconColor:function(){return jo(this.expansionIconColor)},effExpansionIconColorHover:function(){return jo(this.expansionIconColorHover)},effExpansionIconColorActive:function(){return jo(this.expansionIconColorActive)},useExpansionIconColor:function(){var n=this;return n.active?n.effExpansionIconColorActive:n.mouseEnter?n.effExpansionIconColorHover:n.effExpansionIconColor},useRotateDeg:function(){return this.active?180:0}},methods:{updateHeightContent:function(){var n=this;function e(){return e=Mt(Ut.mark((function e(){var t,r;return Ut.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(5,100,t=1;t<=5;t++)setTimeout((function(){n.obstructMutation=!n.obstructMutation}),100*t);if(n.active){e.next=7;break}n.heightContent="",e.next=13;break;case 7:if(!n.active){e.next=13;break}if(n.$el){e.next=11;break}return e.next=11,dr((function(){return void 0!==n.$el}),{timeInterval:10});case 11:r=mt(n,"$refs.rct.clientHeight"),ei(r)&&(n.heightContent="height:".concat(r,"px;"));case 13:case"end":return e.stop()}}),e)}))),e.apply(this,arguments)}(function(){return e.apply(this,arguments)})().catch((function(n){console.log(n)}))},getIcon:function(n){return mt(n,"icon","")},getText:function(n){if(""===mt(n,"text",""))return n},clickItem:function(n,e){var t=this;return t.$emit("update:active",!t.active),t.$emit("click",{icon:n,text:e}),""}}};const Vh=Ah;var Ph=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()])])};Ph._withStripped=!0;const Kh=zo({render:Ph,staticRenderFns:[]},(function(n){n&&n("data-v-6ec0eac8_0",{source:"\n.ct[data-v-6ec0eac8] {\r\n transition: height 0.5s, opacity 0.5s ease-out;\n}\n.ct-hide[data-v-6ec0eac8] {\r\n overflow: hidden;\r\n height: 0px;\r\n opacity: 0;\n}\n.ct-show[data-v-6ec0eac8] {\r\n opacity: 1;\n}\r\n",map:{version:3,sources:["D:\\開源-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})}),Vh,"data-v-6ec0eac8",false,undefined,!1,Jo,void 0,void 0);var Yh={directives:{domresize:na()},components:{WPanelScrolly:ap,WListExpandItem:Kh},props:{items:{type:Array,default:function(){return[]}},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:function(){return{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:fa},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!==Fo(this.items)&&rp(this.items,(function(n){return Dt(n)}))}},methods:{resize:function(n){var e=this;e.panelHeight=n.snew.offsetHeight;var t=0,r=mt(e,"$refs.refHeader");Yi(r)&&(t=r.offsetHeight);var o=0,i=mt(e,"$refs.refFooter");Yi(i)&&(o=i.offsetHeight);var a=e.panelHeight-t-o;a>0&&e.listHeight!==a&&(e.listHeight=a)},getIcon:function(n){return this.isObjValue?mt(n,this.keyIcon,""):""},getText:function(n){return this.isObjValue?mt(n,this.keyText,""):n},getDsp:function(n){return this.isObjValue?mt(n,this.keyDsp,""):n},getActive:function(n){var e=this,t=!1;return"one"===e.activeMode?t=Zl(n,e.itemActiveTrans):"multi"===e.activeMode&&tn(e.itemActiveTrans,(function(e){if(t=Zl(n,e))return!1})),t},updateItemActive:function(n,e,t){var r=this,o=vc(r.itemActiveTrans);!n&&e?"one"===r.activeMode?o=t:"multi"===r.activeMode&&o.push(vc(t)):n&&!e&&function(){if("one"===r.activeMode)o=null;else if("multi"===r.activeMode){var n=[];tn(o,(function(e){Zl(t,e)||n.push(e)})),o=n}}(),r.itemActiveTrans=o,r.$nextTick((function(){r.$emit("update:itemActive",vc(o))}))},ckItem:function(n){var e=this;e.$nextTick((function(){e.$emit("click",vc(n))}))}}};const Gh=Yh;var Fh=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)])};Fh._withStripped=!0;const Lh=zo({render:Fh,staticRenderFns:[]},(function(n){n&&n("data-v-dd653ee4_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})}),Gh,"data-v-dd653ee4",false,undefined,!1,Jo,void 0,void 0);function jh(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 Rh(n){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?jh(Object(t),!0).forEach((function(e){Ei(n,e,t[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):jh(Object(t)).forEach((function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(t,e))}))}return n}var zh={directives:{domresize:na()},components:{WListItem:dp},props:{items:{type:Array,default:function(){return[]}},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:function(){return{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:function(n,e){this.updateBorderBottom()},immediate:!0}},computed:{changeItemActive:function(){var n=this;return n.useActive&&(n.itemActiveTrans=n.itemActive),""},isObjValue:function(){return 0!==Fo(this.items)&&rp(this.items,(function(n){return Dt(n)}))},useBorderBottomColor:function(){return jo(this.borderBottomColor)}},methods:{resize:function(n){this.updateBorderBottom()},getIcon:function(n){return this.isObjValue?mt(n,this.keyIcon,""):""},getText:function(n){return this.isObjValue?mt(n,this.keyText,""):n},getActive:function(n){var e=!1;return this.useActive&&(e=Zl(n,this.itemActiveTrans)),e},updateBorderBottom:function(){var n=this;if(null!=n.itemActiveTrans){var e=0,t=[],r=mt(n,"$refs.wli",[]);tn(r,(function(r,o){var i=r,a=mt(i,"clientWidth",0),l=mt(i,"clientHeight",0),c=e,d=a,s=l;o>0&&n.space>0&&(c+=n.space,d-=n.space),t.push({left:c,bottom:0,width:d,heiht:s}),e+=a}));var o=-1;if(tn(n.items,(function(e,t){if(Zl(e,n.itemActiveTrans))return o=t,!1})),-1!==o){var i=t[o];n.borderBottomLeft=i.left,n.borderBottomWidth=i.width}}},ckItem:function(n){var e=this;e.itemActiveTrans=n,e.$emit("click",Rh({},n)),e.$emit("update:itemActive",Rh({},n))}}};const Nh=zh;var Oh=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)])};Oh._withStripped=!0;const Jh=zo({render:Oh,staticRenderFns:[]},(function(n){n&&n("data-v-5b87399f_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})}),Nh,"data-v-5b87399f",false,undefined,!1,Jo,void 0,void 0);const Dh={directives:{domresize:na()},components:{WIcon:dl},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 jo(this.avatarIconColor)},useAvatarBorderColor:function(){return jo(this.avatarBorderColor)},useAvatarBackgroundColor:function(){return jo(this.avatarBackgroundColor)},useHeaderVerticalAlign:function(){return"bottom"===this.headerVerticalAlign?"flex-end":"center"===this.headerVerticalAlign?"center":"flex-start"},useHeaderTextColor:function(){return jo(this.headerTextColor)},useSubHeaderTextColor:function(){return jo(this.subHeaderTextColor)},useSepLineColor:function(){return jo(this.sepLineColor)},useContentBackgroundColor:function(){return jo(this.contentBackgroundColor)}},methods:{resizeAvatar:function(n){this.avatarWidth=n.snew.offsetWidth,this.avatarHeight=n.snew.offsetHeight}}};var Eh=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)])])])};Eh._withStripped=!0;const _h=zo({render:Eh,staticRenderFns:[]},(function(n){n&&n("data-v-33b33048_0",{source:"\n.shadow[data-v-33b33048] {\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-33b33048] {\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:\\開源-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})}),Dh,"data-v-33b33048",false,undefined,!1,Jo,void 0,void 0);const Mh={directives:{domresize:na()},props:{headerBorderRadius:{type:Number,default:0},paddingStyle:{type:Object,default:function(){return{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(){var n=this,e=tl(n.paddingStyle,{ext:{left:n.shiftLeft,right:n.shiftRight}});return"padding:".concat(e,";")},useHeaderTextColor:function(){return jo(this.headerTextColor)},useHeaderBackgroundColor:function(){return jo(this.headerBackgroundColor)},useContentBackgroundColor:function(){return jo(this.contentBackgroundColor)},useContentPadding:function(){var n=this;return nr(n.contentPadding)?"".concat(n.contentPadding,"px"):n.contentPadding}},methods:{updateHeaderHeight:function(n){this.headerHeight=n.snew.offsetHeight,this.$emit("resize",n)}}};var Qh=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)])])])};Qh._withStripped=!0;const Uh=zo({render:Qh,staticRenderFns:[]},(function(n){n&&n("data-v-2f6a26ca_0",{source:"\n.shadow[data-v-2f6a26ca] {\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-2f6a26ca] {\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:\\開源-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})}),Mh,"data-v-2f6a26ca",false,undefined,!1,Jo,void 0,void 0);const $h={directives:{domresize:na()},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(){var n=this,e=kc(n.$refs.divPanel,n.$refs.divBar,{useTouchDragForPanel:!1});e.on("dragBar",n.dragBar),n.das=e},beforeDestroy:function(){this.das&&this.das.clear()},computed:{changeParam:function(){var n=this,e=n.ratio;return e=n.limitRatio(e),n.r=e,""},bw:function(){return this.barSize+2*this.barBorderSize},useBarColor:function(){return jo(this.barColor)},useBarBorderColor:function(){return jo(this.barBorderColor)}},methods:{resizePanel:function(n){var e=this;e.panelWidth=n.snew.offsetWidth,e.panelHeight=n.snew.offsetHeight,e.$emit("resize",n)},limitRatio:function(n){var e=this;if(n=Math.min(n,e.ratioMax),n=Math.max(n,e.ratioMin),e.panelWidth>0){var t=n*e.panelWidth;ei(e.leftWidthMin)&&t<e.leftWidthMin&&(n=e.leftWidthMin/e.panelWidth),ei(e.leftWidthMax)&&t>e.leftWidthMax&&(n=e.leftWidthMax/e.panelWidth);var r=(1-n)*e.panelWidth;ei(e.rightWidthMin)&&r<e.rightWidthMin&&(n=-(e.rightWidthMin/e.panelWidth-1)),ei(e.rightWidthMax)&&r>e.rightWidthMax&&(n=-(e.rightWidthMax/e.panelWidth-1))}return n},dragBar:function(n){var e=n.clientX,t=this,r=t.$el.getBoundingClientRect(),o=e,i=t.$el.offsetWidth,a=0;i>0&&(a=(o-r.left)/i),a=t.limitRatio(a),t.r=a,t.$emit("update:ratio",a)}}};var qh=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)])])};qh._withStripped=!0;const nm=zo({render:qh,staticRenderFns:[]},(function(n){n&&n("data-v-31fe9756_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})}),$h,"data-v-31fe9756",false,undefined,!1,Jo,void 0,void 0);const em={directives:{domresize:na()},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(){var n=this,e=kc(n.$refs.divPanel,n.$refs.divBar,{useTouchDragForPanel:!1});e.on("dragBar",n.dragBar),n.das=e},beforeDestroy:function(){this.das&&this.das.clear()},computed:{changeParam:function(){var n=this,e=n.ratio;return e=n.limitRatio(e),n.r=e,""},bw:function(){return this.barSize+2*this.barBorderSize},useBarColor:function(){return jo(this.barColor)},useBarBorderColor:function(){return jo(this.barBorderColor)}},methods:{resizePanel:function(n){var e=this;e.panelWidth=n.snew.offsetWidth,e.panelHeight=n.snew.offsetHeight,e.$emit("resize",n)},limitRatio:function(n){var e=this;if(n=Math.min(n,e.ratioMax),n=Math.max(n,e.ratioMin),e.panelHeight>0){var t=n*e.panelHeight;ei(e.topHeightMin)&&t<e.topHeightMin&&(n=e.topHeightMin/e.panelHeight),ei(e.topHeightMax)&&t>e.topHeightMax&&(n=e.topHeightMax/e.panelHeight);var r=(1-n)*e.panelHeight;ei(e.bottomHeightMin)&&r<e.bottomHeightMin&&(n=-(e.bottomHeightMin/e.panelHeight-1)),ei(e.bottomHeightMax)&&r>e.bottomHeightMax&&(n=-(e.bottomHeightMax/e.panelHeight-1))}return n},dragBar:function(n){var e=n.clientY,t=this,r=t.$el.getBoundingClientRect(),o=e,i=t.$el.offsetHeight,a=0;i>0&&(a=(o-r.top)/i),a=t.limitRatio(a),t.r=a,t.$emit("update:ratio",a)}}};var tm=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)])])};tm._withStripped=!0;const rm=zo({render:tm,staticRenderFns:[]},(function(n){n&&n("data-v-6ccef436_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})}),em,"data-v-6ccef436",false,undefined,!1,Jo,void 0,void 0);const om={directives:{domresize:na(),dommutation:ud()},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(){var n=this,e=mt(n,"$refs.tar");if(Yi(e)){var t=e.getBoundingClientRect();n.width===t.width&&n.height===t.height||(n.width=t.width,n.height=t.height)}}}};var im=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)])])])])};im._withStripped=!0;const am=zo({render:im,staticRenderFns:[]},(function(n){n&&n("data-v-2df1dddc_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})}),om,"data-v-2df1dddc",false,undefined,!1,Jo,void 0,void 0);const lm={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(){var n={};return n["background-color"]=jo(this.contentBackgroundColor),n["border-radius"]="".concat(this.borderRadius,"px"),n},useHeaderStyle:function(){var n=this,e={};return e.padding="".concat(n.padding,"px"),e["border-bottom"]="1px solid #ddd",e["background-color"]=jo(n.headerBackgroundColor),e["border-radius"]="".concat(n.borderRadius,"px ").concat(n.borderRadius,"px 0 0"),e.display="flex",e["justify-content"]="flex-start",e["align-items"]="center",e},useContentStyle:function(){var n=this,e={},t="0 0",r="0 0";return n.hasHeader||(t="".concat(n.borderRadius,"px ").concat(n.borderRadius,"px")),n.hasFooter||(r="".concat(n.borderRadius,"px ").concat(n.borderRadius,"px")),e["border-radius"]="".concat(t," ").concat(r),e},useFooterStyle:function(){var n=this,e={};return e.padding="".concat(n.padding,"px"),e["border-top"]="1px solid #ddd",e["background-color"]=jo(n.footerBackgroundColor),e["border-radius"]="0 0 ".concat(n.borderRadius,"px ").concat(n.borderRadius,"px"),e}},methods:{}};var cm=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()])};cm._withStripped=!0;const dm=zo({render:cm,staticRenderFns:[]},(function(n){n&&n("data-v-0e00d4b8_0",{source:"\n.shadow[data-v-0e00d4b8] {\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:\\開源-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})}),lm,"data-v-0e00d4b8",false,undefined,!1,Jo,void 0,void 0);const sm={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(){var n=this;return n.hoverTrans?n.borderWidthHover:n.borderWidth},useBorderColor:function(){var n=this;return n.hoverTrans?jo(n.borderColorHover):jo(n.borderColor)},useBorderColorFocus:function(){return jo(this.borderColorFocus)}},methods:{}};var um=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)])};um._withStripped=!0;const pm=zo({render:um,staticRenderFns:[]},(function(n){n&&n("data-v-495f93cb_0",{source:"\n.fade-enter-active[data-v-495f93cb], .fade-leave-active[data-v-495f93cb] {\r\n transition: all 0.3s;\n}\n.fade-enter[data-v-495f93cb], .fade-leave-to[data-v-495f93cb] {\r\n transform: scaleX(0);\n}\n.fade-enter-to[data-v-495f93cb], .fade-leave[data-v-495f93cb] {\r\n transform: scaleX(100%);\n}\r\n",map:{version:3,sources:["D:\\開源-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})}),sm,"data-v-495f93cb",false,undefined,!1,Jo,void 0,void 0);const fm={components:{WShellEllipse:qp,WShellBottomLine:pm,WTextCore:of},props:{paddingStyle:{type:Object,default:function(){return{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){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var hm=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)};hm._withStripped=!0;const mm=zo({render:hm,staticRenderFns:[]},(function(n){n&&n("data-v-1516d15a_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})}),fm,"data-v-1516d15a",false,undefined,!1,Jo,void 0,void 0);const gm={components:{WPopup:np,WText:mm,WButtonChip:fl},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:aa},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(){var n=this.titleFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},useTitleColor:function(){return jo(this.titleColor)},useHeaderBackgroundColor:function(){return jo(this.headerBackgroundColor)},useContentBackgroundColor:function(){return jo(this.contentBackgroundColor)},useFooterBackgroundColor:function(){return jo(this.footerBackgroundColor)}},methods:{evShow:function(){var n=this;n.valueTemp=n.value,n.$nextTick((function(){n.showEdit=!0}))},evHide:function(){var n=this;n.$nextTick((function(){n.$emit("close"),n.showEdit=!1}))},ckSave:function(n,e){var t=this;t.$nextTick((function(){t.$emit("input",t.valueTemp),t.valueTemp="",n.funHide()}))}}};var vm=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("v-icon",{attrs:{size:n.contentIconSize,color:n.contentIconColor}},[n._v("\n "+n._s(n.contentIcon)+"\n ")])],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)])]}}])})};vm._withStripped=!0;const ym=zo({render:vm,staticRenderFns:[]},(function(n){n&&n("data-v-8e114012_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",map:{version:3,sources:[],names:[],mappings:"",file:"WPopupEditText.vue"},media:void 0})}),gm,"data-v-8e114012",false,undefined,!1,Jo,void 0,void 0);var bm={components:{WIcon:dl},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:pa},iconFinish:{type:String,default:ia},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:ia,mdiOrbitVariant:pa}},computed:{status:function(){return this.value<=0?"waiting":this.value>=100?"finish":"running"},useProg:function(){var n=this.value;return n=Math.max(n,0),n=Math.min(n,100),n=this.digValue(n)},useTitleTextFontSize:function(){var n=this.titleTextFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},useBorderRadius:function(){return"border-radius:".concat(this.borderRadius,"px;")},useProgColor:function(){return jo(this.progColor)},useProgBackgroundColor:function(){return jo(this.progBackgroundColor)},useTitleTextColor:function(){return jo(this.titleTextColor)},useIconWaitingColor:function(){return jo(this.iconWaitingColor)},useIconFinishColor:function(){return jo(this.iconFinishColor)},useValueTextColor:function(){return jo(this.valueTextColor)},useValueTextFontSize:function(){var n=this.valueTextFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")}},methods:{digValue:function(n){return function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return nr(n)&&ur(e)?(n=er(n),ir(n,e).toFixed(e)):""}(n,this.decimal)}}};const Cm=bm;var xm=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)])])};xm._withStripped=!0;const Im=zo({render:xm,staticRenderFns:[]},(function(n){n&&n("data-v-42189703_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})}),Cm,"data-v-42189703",false,undefined,!1,Jo,void 0,void 0);const Sm={props:{text:{type:String,default:""},value:{type:Number,default:0},color:{type:String,default:"purple lighten-1"},size:{type:Number,default:120},width:{type:Number,default:10},tooltip:{type:String,default:""}},data:function(){return{}},mounted:function(){},computed:{styleProg:function(){var n=this.size/5.4,e=(this.size-26)/94*.25+.75;return{"font-size":n+"pt",transform:"scale(".concat(e,")")}},styleText:function(){return{color:"#666","font-size":this.size/12+"pt",transform:"scale(".concat(1.2,")")}}},methods:{clickBtn:function(){var n=this;n.$nextTick((function(){n.$emit("click")}))}}};var wm=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticStyle:{display:"inline-block"}},[t("v-tooltip",{attrs:{bottom:"",transition:"slide-y-transition",disabled:""===n.tooltip},scopedSlots:n._u([{key:"activator",fn:function(e){var r=e.on;return[t("v-progress-circular",n._g({attrs:{rotate:-90,size:n.size,width:n.width,color:n.color,value:n.value}},r),[t("div",{staticStyle:{"text-align":"center",transform:"translateY(-2%)"}},[t("div",{style:[n.styleProg]},[n._v(n._s(n.value)+"%")]),n._v(" "),t("div",{style:[n.styleText]},[n._v(n._s(n.text))])])])]}}])},[n._v(" "),t("span",[n._v(n._s(n.tooltip))])])],1)};wm._withStripped=!0;const km=zo({render:wm,staticRenderFns:[]},(function(n){n&&n("data-v-f8d45658_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",map:{version:3,sources:[],names:[],mappings:"",file:"WProgressCircle.vue"},media:void 0})}),Sm,"data-v-f8d45658",false,undefined,!1,Jo,void 0,void 0);const Tm={components:{WIconLoading:Mo},props:{pathItems:{type:Array,default:function(){return["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.2/dist/w-quill-vue.umd.js"]}},value:{type:String,default:""},settings:{type:Object,default:function(){}},height:{type:Number,default:250},editable:{type:Boolean,default:!0}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){var n=this;vr(n.pathItems).then((function(e){if("loaded"!==e){var t=window["w-quill-vue"];t.default&&(t=t.default),Uo().component("w-quill-vue",t)}n.cmpName="w-quill-vue"}))},computed:{},methods:{}};var Hm=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)}}})};Hm._withStripped=!0;const Wm=zo({render:Hm,staticRenderFns:[]},(function(n){n&&n("data-v-6781807a_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})}),Tm,"data-v-6781807a",false,undefined,!1,Jo,void 0,void 0);const Zm={components:{WIcon:dl},props:{title:{type:String,default:""},titleColor:{type:String,default:"deep-orange darken-1"},leftIcon:{type:String,default:""},leftIconColor:{type:String,default:"deep-orange lighten-2"},leftIconColorFocus:{type:String,default:"deep-orange lighten-1"},leftIconTooltip:{type:String,default:""},rightIcon:{type:String,default:""},rightIconColor:{type:String,default:"deep-orange lighten-2"},rightIconColorFocus:{type:String,default:"deep-orange lighten-1"},rightIconTooltip:{type:String,default:""},small:{type:Boolean,default:!0},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,""},useTitleColor:function(){var n={};return n.color=jo(this.titleColor),n},usePadding:function(){var n={};return this.small?n.padding="0px":n.padding="3px 6px",n},usePaddingSlot:function(){var n={"padding-top":"0px","padding-bottom":"0px","padding-left":"0px","padding-right":"0px"};return""!==this.leftIcon&&(n["padding-left"]="10px"),""!==this.rightIcon&&(n["padding-right"]="10px"),n}},methods:{clickIcon:function(n){var e=this;!1!==e.editable&&e.$nextTick((function(){e.$emit("click-"+n)}))}}};var Xm=function(){var n=this,e=n.$createElement,t=n._self._c||e;return t("div",{staticClass:"group",style:[n.usePadding,{opacity:n.editable?1:.6}],attrs:{changeParam:n.changeParam}},[n.leftIcon?t("div",{staticStyle:{"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.clickIcon("left")},click:function(e){return n.clickIcon("left")}}},[t("v-tooltip",{attrs:{bottom:"",transition:"slide-y-transition",disabled:""===n.leftIconTooltip},scopedSlots:n._u([{key:"activator",fn:function(e){var r=e.on;return[t("div",n._g({attrs:{ShellMaterial:"leftIcon"}},Object.assign({},r)),[t("WIcon",{attrs:{icon:n.leftIcon,color:n.focusedTrans?n.leftIconColorFocus:n.leftIconColor}})],1)]}}],null,!1,2520331971)},[n._v(" "),t("span",[n._v(n._s(n.leftIconTooltip))])])],1):n._e(),n._v(" "),t("div",{staticStyle:{width:"100%"}},[t("div",{style:[{position:"relative"},n.usePaddingSlot]},[t("div",{style:[{position:"absolute",top:"0px",transform:"translateY(-120%)","font-size":"0.9rem","white-space":"nowrap",opacity:.7},n.useTitleColor]},[n._v("\n "+n._s(n.title)+"\n ")]),n._v(" "),n._t("default")],2)]),n._v(" "),n.rightIcon?t("div",{staticStyle:{"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.clickIcon("right")},click:function(e){return n.clickIcon("right")}}},[t("v-tooltip",{attrs:{bottom:"",transition:"slide-y-transition",disabled:""===n.rightIconTooltip},scopedSlots:n._u([{key:"activator",fn:function(e){var r=e.on;return[t("div",n._g({attrs:{ShellMaterial:"rightIcon"}},Object.assign({},r)),[t("WIcon",{attrs:{icon:n.rightIcon,color:n.focusedTrans?n.rightIconColorFocus:n.rightIconColor}})],1)]}}],null,!1,3992299779)},[n._v(" "),t("span",[n._v(n._s(n.rightIconTooltip))])])],1):n._e()])};Xm._withStripped=!0;const Bm=zo({render:Xm,staticRenderFns:[]},(function(n){n&&n("data-v-70409afc_0",{source:"\n.group[data-v-70409afc] {\r\n transition: all 0.3s;\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\n}\r\n",map:{version:3,sources:["D:\\開源-JS-104-2-w-component-vue\\w-component-vue\\src\\components\\WShellMaterial.vue"],names:[],mappings:";AAmPA;IACA,oBAAA;IACA,aAAA;IACA,2BAAA;IACA,mBAAA;AACA",file:"WShellMaterial.vue",sourcesContent:["<template>\r\n <div\r\n :changeParam=\"changeParam\"\r\n class=\"group\"\r\n :style=\"[usePadding,{'opacity':editable?1:0.6}]\"\r\n >\r\n\r\n <div\r\n style=\"user-select:none; cursor:pointer; outline:none;\"\r\n tabindex=\"0\"\r\n @keyup.enter=\"clickIcon('left')\"\r\n @click=\"clickIcon('left')\"\r\n v-if=\"leftIcon\"\r\n >\r\n\r\n <v-tooltip bottom transition=\"slide-y-transition\" :disabled=\"leftIconTooltip===''\">\r\n\r\n <template v-slot:activator=\"{ on: ttShellMaterialLeft }\">\r\n <div ShellMaterial=\"leftIcon\" v-on=\"{...ttShellMaterialLeft}\">\r\n <WIcon\r\n :icon=\"leftIcon\"\r\n :color=\"focusedTrans?leftIconColorFocus:leftIconColor\"\r\n ></WIcon>\r\n </div>\r\n </template>\r\n\r\n <span>{{leftIconTooltip}}</span>\r\n\r\n </v-tooltip>\r\n\r\n </div>\r\n\r\n <div style=\"width:100%;\">\r\n\r\n <div :style=\"[{'position':'relative'},usePaddingSlot]\">\r\n\r\n <div :style=\"[{'position':'absolute','top':'0px','transform': 'translateY(-120%)','font-size':'0.9rem','white-space':'nowrap','opacity':0.7},useTitleColor]\">\r\n {{title}}\r\n </div>\r\n\r\n <slot></slot>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n <div\r\n style=\"user-select:none; cursor:pointer; outline:none;\"\r\n tabindex=\"0\"\r\n @keyup.enter=\"clickIcon('right')\"\r\n @click=\"clickIcon('right')\"\r\n v-if=\"rightIcon\"\r\n >\r\n\r\n <v-tooltip bottom transition=\"slide-y-transition\" :disabled=\"rightIconTooltip===''\">\r\n\r\n <template v-slot:activator=\"{ on: ttShellMaterialRight }\">\r\n <div ShellMaterial=\"rightIcon\" v-on=\"{...ttShellMaterialRight}\">\r\n <WIcon\r\n :icon=\"rightIcon\"\r\n :color=\"focusedTrans?rightIconColorFocus:rightIconColor\"\r\n ></WIcon>\r\n </div>\r\n </template>\r\n\r\n <span>{{rightIconTooltip}}</span>\r\n\r\n </v-tooltip>\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\nimport WIcon from './WIcon.vue'\r\n\r\n\r\n/**\r\n * @vue-prop {String} [title=''] 輸入標題字串,預設''\r\n * @vue-prop {String} [titleColor='deep-orange darken-1'] 輸入標題顏色字串,預設'deep-orange darken-1'\r\n * @vue-prop {String} [leftIcon=''] 輸入左側圖標字串,可為mdi,md,fa代號或mdi/js路徑,預設''\r\n * @vue-prop {String} [leftIconColor='deep-orange lighten-2'] 輸入左側圖標顏色字串,預設'deep-orange lighten-2'\r\n * @vue-prop {String} [leftIconColorFocus='deep-orange lighten-1'] 輸入左側圖標Focus顏色字串,預設'deep-orange lighten-1'\r\n * @vue-prop {String} [leftIconTooltip=''] 輸入左側圖標提示文字字串,預設''\r\n * @vue-prop {String} [rightIcon=''] 輸入右側圖標字串,可為mdi,md,fa代號或mdi/js路徑,預設''\r\n * @vue-prop {String} [rightIconColor='deep-orange lighten-2'] 輸入右側圖標顏色字串,預設'deep-orange lighten-2'\r\n * @vue-prop {String} [rightIconColorFocus='deep-orange lighten-1'] 輸入右側圖標Focus顏色字串,預設'deep-orange lighten-1'\r\n * @vue-prop {String} [rightIconTooltip=''] 輸入右側圖標提示文字字串,預設''\r\n * @vue-prop {Boolean} [small=true] 輸入是否為小型模式,預設true\r\n * @vue-prop {Boolean} [editable=true] 輸入是否為編輯模式,預設true\r\n * @vue-prop {Boolean} [focused=false] 輸入是否為取得焦點狀態,預設false\r\n */\r\nexport default {\r\n components: {\r\n WIcon,\r\n },\r\n props: {\r\n title: {\r\n type: String,\r\n default: '',\r\n },\r\n titleColor: {\r\n type: String,\r\n default: 'deep-orange darken-1',\r\n },\r\n leftIcon: {\r\n type: String,\r\n default: '',\r\n },\r\n leftIconColor: {\r\n type: String,\r\n default: 'deep-orange lighten-2',\r\n },\r\n leftIconColorFocus: {\r\n type: String,\r\n default: 'deep-orange lighten-1',\r\n },\r\n leftIconTooltip: {\r\n type: String,\r\n default: '',\r\n },\r\n rightIcon: {\r\n type: String,\r\n default: '',\r\n },\r\n rightIconColor: {\r\n type: String,\r\n default: 'deep-orange lighten-2',\r\n },\r\n rightIconColorFocus: {\r\n type: String,\r\n default: 'deep-orange lighten-1',\r\n },\r\n rightIconTooltip: {\r\n type: String,\r\n default: '',\r\n },\r\n small: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n editable: {\r\n type: Boolean,\r\n default: true,\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 }\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 //focusedTrans\r\n vo.focusedTrans = vo.focused\r\n\r\n return ''\r\n },\r\n\r\n useTitleColor: function() {\r\n //console.log('computed useTitleColor')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n s['color'] = color2hex(vo.titleColor)\r\n return s\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 let s = {}\r\n if (vo.small) {\r\n s['padding'] = '0px'\r\n }\r\n else {\r\n s['padding'] = '3px 6px'\r\n }\r\n return s\r\n },\r\n\r\n usePaddingSlot: function() {\r\n //console.log('computed usePaddingSlot')\r\n\r\n let vo = this\r\n\r\n let s = {}\r\n s['padding-top'] = '0px'\r\n s['padding-bottom'] = '0px'\r\n s['padding-left'] = '0px'\r\n s['padding-right'] = '0px'\r\n if (vo.leftIcon !== '') {\r\n s['padding-left'] = '10px'\r\n }\r\n if (vo.rightIcon !== '') {\r\n s['padding-right'] = '10px'\r\n }\r\n return s\r\n },\r\n\r\n },\r\n methods: {\r\n\r\n clickIcon: function (mode) {\r\n //console.log('methods clickIcon', mode)\r\n\r\n let vo = this\r\n\r\n if (vo.editable === false) {\r\n return\r\n }\r\n\r\n //$nextTick\r\n vo.$nextTick(() => {\r\n\r\n //emit\r\n vo.$emit('click-' + mode)\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.group {\r\n transition: all 0.3s;\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n}\r\n</style>\r\n"]},media:void 0})}),Zm,"data-v-70409afc",false,undefined,!1,Jo,void 0,void 0);var Am={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(){var n=this,e=n.value;return ga(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 jo(this.textColor)},effTextColorHover:function(){return jo(this.textColorHover)},useTextColor:function(){var n=this;return n.editable?n.hoverTrans?n.effTextColorHover:n.effTextColor:n.effTextColor},useTextFontSize:function(){var n=this.textFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},effCheckedSwitchCircleColor:function(){return jo(this.checkedSwitchCircleColor)},effCheckedSwitchCircleColorHover:function(){return jo(this.checkedSwitchCircleColorHover)},effCheckedSwitchCircleColorDisabled:function(){return jo(this.checkedSwitchCircleColorDisabled)},useCheckedSwitchCircleColor:function(){var n=this;return n.editable?n.hoverTrans?n.effCheckedSwitchCircleColorHover:n.effCheckedSwitchCircleColor:n.effCheckedSwitchCircleColorDisabled},effUncheckedSwitchCircleColor:function(){return jo(this.uncheckedSwitchCircleColor)},effUncheckedSwitchCircleColorHover:function(){return jo(this.uncheckedSwitchCircleColorHover)},effUncheckedSwitchCircleColorDisabled:function(){return jo(this.uncheckedSwitchCircleColorDisabled)},useUncheckedSwitchCircleColor:function(){var n=this;return n.editable?n.hoverTrans?n.effUncheckedSwitchCircleColorHover:n.effUncheckedSwitchCircleColor:n.effUncheckedSwitchCircleColorDisabled},useSwitchCircleColor:function(){var n=this;return n.b?n.useCheckedSwitchCircleColor:n.useUncheckedSwitchCircleColor},effCheckedSwitchBarColor:function(){return jo(this.checkedSwitchBarColor)},effCheckedSwitchBarColorHover:function(){return jo(this.checkedSwitchBarColorHover)},effCheckedSwitchBarColorDisabled:function(){return jo(this.checkedSwitchBarColorDisabled)},useCheckedSwitchBarColor:function(){var n=this;return n.editable?n.hoverTrans?n.effCheckedSwitchBarColorHover:n.effCheckedSwitchBarColor:n.effCheckedSwitchBarColorDisabled},effUncheckedSwitchBarColor:function(){return jo(this.uncheckedSwitchBarColor)},effUncheckedSwitchBarColorHover:function(){return jo(this.uncheckedSwitchBarColorHover)},effUncheckedSwitchBarColorDisabled:function(){return jo(this.uncheckedSwitchBarColorDisabled)},useUncheckedSwitchBarColor:function(){var n=this;return n.editable?n.hoverTrans?n.effUncheckedSwitchBarColorHover:n.effUncheckedSwitchBarColor:n.effUncheckedSwitchBarColorDisabled},useSwitchBarColor:function(){var n=this;return n.b?n.useCheckedSwitchBarColor:n.useUncheckedSwitchBarColor}},methods:{toogleValue:function(){var n=this;if(n.editable){var e=n.b;e=!e;var t=null;ga(n.value)?(t=!1,e&&(t=!0)):(t="n",e&&(t="y")),n.$nextTick((function(){n.$emit("input",t)}))}}}};const Vm=Am;var Pm=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()])])};Pm._withStripped=!0;const Km=zo({render:Pm,staticRenderFns:[]},(function(n){n&&n("data-v-3483a14c_0",{source:"\n.ts[data-v-3483a14c] {\r\n transition:all 0.3s;\n}\n.bs[data-v-3483a14c] {\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:\\開源-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})}),Vm,"data-v-3483a14c",false,undefined,!1,Jo,void 0,void 0);var Ym=function(n,e,t){for(var r=-1,o=n.length,i=e.length,a={};++r<o;){var l=r<i?e[r]:void 0;t(a,n[r],l)}return a};var Gm=function(n,e){return Ym(n||[],e||[],Al)};function Fm(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(!$c(n))return{};if($c(e))return Fo(n)===Fo(e)?Gm(n,e):{};for(var t=[],r=0;r<Fo(n);r++)t.push(vc(e));var o=Gm(n,t);return o}function Lm(n,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(!ki(n))return{};if(!$c(e))return{};var r={};return tn(e,(function(e){r[e]=mt(n,e,t)})),r}var jm={directives:{domresize:na()},components:{WButtonCircle:vl,WPopup:np,WText:mm,WButtonChip:fl,WAggridVueDyn:ni},props:{pathItems:{type:Array},name:{type:String,default:""},description:{type:String,default:""},inforPaddingStyle:{type:Object,default:function(){return{v:0,h:0}}},menuPaddingStyle:{type:Object,default:function(){return{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(){var n=this,e=n.name,t=n.description;return n.nameTrans=Sa(n.name),n.descriptionTrans=Sa(n.description),n.nameTemp=Sa(n.name),n.descriptionTemp=Sa(n.description),n.___changeParamsForInfor___={name:e,description:t},""},changeParamsForTable:function(){var n=this,e={rows:mt(n,"opt.rows"),hideIds:n.hideIds,fixIds:n.fixIds,checkId:n.checkId,editable:n.editable};return Zl(n.paramsTemp,e)||(n.genOpt(),n.paramsTemp=vc(e)),""},kpUploadModeItems:function(){return{replace:this.uploadModeTextForReplace,append:this.uploadModeTextForAppend}},useKeys:function(){var n=this,e=[];return $c(mt(n,"opt.keys"))?e=mt(n,"opt.keys"):$c(mt(n,"opt.rows"))&&(e=$(mt(n,"rows.0",{}))),e},useKpHead:function(){var n,e=this;return ki(mt(e,"opt.kpHead"))?n=mt(e,"opt.kpHead"):(n={},tn(e.useKeys,(function(e){n[e]=e}))),n},hasEffRows:function(){return Fo(mt(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(){var n=tl(this.inforPaddingStyle);return"padding:".concat(n,";")},useMenuPaddingStyle:function(){var n=tl(this.menuPaddingStyle);return"padding:".concat(n,";")},useMenuBackgroundColor:function(){return jo(this.menuBackgroundColor)}},methods:{domresize:function(n){var e=this,t=0,r=mt(e,"$el.offsetHeight",0),o=mt(e,"$refs.menu.offsetHeight");r>0&&o>0&&(t=r-o),t=Math.max(t,200),e.tableHeight=t},default:function(){var n=this;n.tableHeight=200,n.rowsSelect=[],n.useOpt=null,n.rowsTemp=[]},genOpt:function(){var n=this;if(0!==Fo(n.useKeys)){var e=null;if(e=Wt(mt(n,"opt.rows"))?vc(mt(n,"opt.rows")):[Fm(n.useKeys)],qt(n.sortColIds))try{e=xi(e,n.sortColIds)}catch(n){console.log(n)}else $c(n.sortColIds)&&tn(n.sortColIds,(function(n){try{e=xi(e,n)}catch(n){console.log(n)}}));n.rowsTemp=vc(e);var t={rows:e,keys:n.useKeys,defCellEditable:n.editable,defCellAlighH:"left",kpHead:n.useKpHead,rowChecked:function(e){n.rowsSelect=e}};if(qt(n.hideIds)?t.kpHeadHide=Fm([n.hideIds],!0):$c(n.hideIds)&&(t.kpHeadHide=Fm(n.hideIds,!0)),qt(n.fixIds)?t.kpHeadFixLeft=Fm([n.fixIds],!0):$c(n.fixIds)&&(t.kpHeadFixLeft=Fm(n.fixIds,!0)),n.editable&&qt(n.checkId)&&(t.kpHeadCheckBox=Fm([n.checkId],!0)),ki(n.opt)){var r=vc(n.opt);tn(r,(function(n,e){"keys"!==e&&"rows"!==e&&"kpHead"!==e&&"editable"!==e&&(t[e]=n)}))}n.useOpt=t}else n.default()},addRow:function(){var n=this;if(0===Fo(n.useKeys))return n.default(),void n.$emit("error",n.errorMsgFromAddRow);var e=Fm(n.useKeys);e.id=wi(),Xt(mt(n,"opt.beforeAddRow"))&&(e=n.opt.beforeAddRow(e));try{n.useOpt.rows.push(e),n.$nextTick((function(){var e=mt(n,"$refs.cmp.$refs.$self.getInstance");Xt(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(){var n=this,e=mt(n,"useOpt.rows",[]);if(e=vc(e),0!==Fo(e)){var t=kt(n.rowsSelect,"rowInd");if(0!==Fo(t)){ls(e,t);try{n.useOpt.rows=e}catch(e){n.$emit("error",n.errorMsgFromRemoveRow)}n.rowsSelect=[]}}},downloadData:function(){var n=this;try{var e=mt(n,"$refs.cmp.$refs.$self.downloadData");if(!Xt(e))return;e({funGetKeysHook:function(e){return qt(n.removeIdsWhenDownload)?Is(e,n.removeIdsWhenDownload):$c(n.removeIdsWhenDownload)&&Is.apply(void 0,[e].concat(td(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){var e=this,t=mt(e,"$refs.cmp.$refs.$self.uploadData");if(Xt(t)){var r=mt(e,"opt.optForUploadData");Dt(r)||(r={}),qt(mt(r,"uploadMode"))||(r.uploadMode=n),Xt(mt(r,"beforeUpload"))||(r.beforeUpload=function(n){var e=[];return tn(n,(function(n){rp(n,(function(n){return""===n}))||e.push(n)})),e}),t(r).then((function(n){0===Fo(n)?e.$emit("error",e.errorMsgFromUploadEmptyData):e.$emit("success",e.successMsgFromUploadData),e.rowsSelect=[]})).catch((function(n){console.log("catch",n),e.$emit("error",e.errorMsgFromUploadData)}))}},save:function(){var n,e=this;try{n=function(){var n=Sa(e.nameTrans),t=Sa(e.descriptionTrans);if(!qt(n))return{err:e.errorMsgFromNoName};var r=mt(e,"useOpt.rows",[]);r=function(n,e){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return $c(n)&&$c(e)?kt(n,(function(n){return Lm(n,e,t)})):[]}(r,e.useKeys),Xt(mt(e,"opt.modifyDataWhenSave"))&&(r=e.opt.modifyDataWhenSave(r));var o=mt(e,"opt.checkNoDataWhenSave");return ga(o)||(o=!1),o&&0===r.length?{err:e.errorMsgFromNoData}:{name:n,nameTemp:e.nameTrans,description:t,descriptionTemp:e.descriptionTemp,rows:vc(r),rowsTemp:vc(e.rowsTemp)}}()}catch(e){n={err:e}}return n}}};const Rm=jm;var zm=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)};zm._withStripped=!0;const Nm=zo({render:zm,staticRenderFns:[]},(function(n){n&&n("data-v-054f2eba_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})}),Rm,"data-v-054f2eba",false,undefined,!1,Jo,void 0,void 0);const Om={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){var e=this;e.$nextTick((function(){e.$emit("input",n)}))}}};var Jm=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)};Jm._withStripped=!0;const Dm=zo({render:Jm,staticRenderFns:[]},(function(n){n&&n("data-v-217f1844_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})}),Om,"data-v-217f1844",false,undefined,!1,Jo,void 0,void 0);const Em={components:{WShellEllipse:qp,WTextCore:of},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:ha,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(){var n=this;return n.valueTrans=n.value,n.focusedTrans=n.focused,""}},methods:{changeFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))},changeContent:function(n,e){var t,r=this;if(!1!==r.editable){if(""!==e&&r.$refs.inp.setFocus(),(t=ef(n,"isp0int")).err)return n=0,void r.$nextTick((function(){0===r.valueTrans?r.$refs.inp.setValue(n):(r.valueTrans=n,r.$emit("input",n)),r.$emit("error",t.errmsg)}));n=ar(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((function(){r.valueTrans=n,r.$emit("input",n)}))}}}};var _m=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)};_m._withStripped=!0;const Mm=zo({render:_m,staticRenderFns:[]},(function(n){n&&n("data-v-200c5eb4_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})}),Em,"data-v-200c5eb4",false,undefined,!1,Jo,void 0,void 0);const Qm={components:{WShellEllipse:qp,WTextIntCore:Mm},props:{width:{type:Number,default:70},paddingStyle:{type:Object,default:function(){return{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){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var Um=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)};Um._withStripped=!0;const $m=zo({render:Um,staticRenderFns:[]},(function(n){n&&n("data-v-1b20d0f0_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})}),Qm,"data-v-1b20d0f0",false,undefined,!1,Jo,void 0,void 0);const qm={directives:{domresize:na()},components:{WShellEllipse:qp,WTextSuggestCore:cf},props:{paddingStyle:{type:Object,default:function(){return{v:2,h:15}}},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},items:{type:Array,default:function(){return[]}},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:function(){return{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"},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){var e=this,t=tl(e.paddingStyle,{returnObj:!0}).bottom-2,r=mt(e,"$el.offsetHeight",0)-26-2*t;r/=2;e.useDistY=t+r+5},getText:function(n){return Dt(n)?n[this.keyText]:n},updateFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))},updateShowPanel:function(n){var e=this;e.showPanelTrans=n,e.$nextTick((function(){e.$emit("update:showPanel",n)}))}}};var ng=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,distY: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)};ng._withStripped=!0;const eg=zo({render:ng,staticRenderFns:[]},(function(n){n&&n("data-v-2669ec71_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",map:{version:3,sources:[],names:[],mappings:"",file:"WTextSelect.vue"},media:void 0})}),qm,"data-v-2669ec71",false,undefined,!1,Jo,void 0,void 0);var tg=c((function(n,e){n.exports=function(){var n=1e3,e=6e4,t=36e5,r="millisecond",o="second",i="minute",l="hour",c="day",d="week",s="month",u="quarter",p="year",f="date",h="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,g=/\[([^\]]+)]|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,v={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("_")},y=function(n,e,t){var r=String(n);return!r||r.length>=e?n:""+Array(e+1-r.length).join(t)+n},b={s:y,z:function(n){var e=-n.utcOffset(),t=Math.abs(e),r=Math.floor(t/60),o=t%60;return(e<=0?"+":"-")+y(r,2,"0")+":"+y(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,a=e.clone().add(r+(i?-1:1),s);return+(-(r+(t-o)/(i?o-a:a-o))||0)},a:function(n){return n<0?Math.ceil(n)||0:Math.floor(n)},p:function(n){return{M:s,y:p,w:d,d:c,D:f,h:l,m:i,s:o,ms:r,Q:u}[n]||String(n||"").toLowerCase().replace(/s$/,"")},u:function(n){return void 0===n}},C="en",x={};x[C]=v;var I=function(n){return n instanceof T},S=function n(e,t,r){var o;if(!e)return C;if("string"==typeof e){var i=e.toLowerCase();x[i]&&(o=i),t&&(x[i]=t,o=i);var a=e.split("-");if(!o&&a.length>1)return n(a[0])}else{var l=e.name;x[l]=e,o=l}return!r&&o&&(C=o),o||!r&&C},w=function(n,e){if(I(n))return n.clone();var t="object"==a(e)?e:{};return t.date=n,t.args=arguments,new T(t)},k=b;k.l=S,k.i=I,k.w=function(n,e){return w(n,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var T=function(){function a(n){this.$L=S(n.locale,null,!0),this.parse(n)}var v=a.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(k.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(m);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 k},v.isValid=function(){return!(this.$d.toString()===h)},v.isSame=function(n,e){var t=w(n);return this.startOf(e)<=t&&t<=this.endOf(e)},v.isAfter=function(n,e){return w(n)<this.startOf(e)},v.isBefore=function(n,e){return this.endOf(e)<w(n)},v.$g=function(n,e,t){return k.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=!!k.u(e)||e,a=k.p(n),u=function(n,e){var o=k.w(t.$u?Date.UTC(t.$y,e,n):new Date(t.$y,e,n),t);return r?o:o.endOf(c)},h=function(n,e){return k.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(a){case p:return r?u(1,0):u(31,11);case s:return r?u(1,g):u(0,g+1);case d:var b=this.$locale().weekStart||0,C=(m<b?m+7:m)-b;return u(r?v-C:v+(6-C),g);case c:case f: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,a=k.p(n),d="set"+(this.$u?"UTC":""),u=(t={},t[c]=d+"Date",t[f]=d+"Date",t[s]=d+"Month",t[p]=d+"FullYear",t[l]=d+"Hours",t[i]=d+"Minutes",t[o]=d+"Seconds",t[r]=d+"Milliseconds",t)[a],h=a===c?this.$D+(e-this.$W):e;if(a===s||a===p){var m=this.clone().set(f,1);m.$d[u](h),m.init(),this.$d=m.set(f,Math.min(this.$D,m.daysInMonth())).$d}else u&&this.$d[u](h);return this.init(),this},v.set=function(n,e){return this.clone().$set(n,e)},v.get=function(n){return this[k.p(n)]()},v.add=function(r,a){var u,f=this;r=Number(r);var h=k.p(a),m=function(n){var e=w(f);return k.w(e.date(e.date()+Math.round(n*r)),f)};if(h===s)return this.set(s,this.$M+r);if(h===p)return this.set(p,this.$y+r);if(h===c)return m(1);if(h===d)return m(7);var g=(u={},u[i]=e,u[l]=t,u[o]=n,u)[h]||1,v=this.$d.getTime()+r*g;return k.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||h;var r=n||"YYYY-MM-DDTHH:mm:ssZ",o=k.z(this),i=this.$H,a=this.$m,l=this.$M,c=t.weekdays,d=t.months,s=function(n,t,o,i){return n&&(n[t]||n(e,r))||o[t].slice(0,i)},u=function(n){return k.s(i%12||12,n,"0")},p=t.meridiem||function(n,e,t){var r=n<12?"AM":"PM";return t?r.toLowerCase():r},f={YY:String(this.$y).slice(-2),YYYY:this.$y,M:l+1,MM:k.s(l+1,2,"0"),MMM:s(t.monthsShort,l,d,3),MMMM:s(d,l),D:this.$D,DD:k.s(this.$D,2,"0"),d:String(this.$W),dd:s(t.weekdaysMin,this.$W,c,2),ddd:s(t.weekdaysShort,this.$W,c,3),dddd:c[this.$W],H:String(i),HH:k.s(i,2,"0"),h:u(1),hh:u(2),a:p(i,a,!0),A:p(i,a,!1),m:String(a),mm:k.s(a,2,"0"),s:String(this.$s),ss:k.s(this.$s,2,"0"),SSS:k.s(this.$ms,3,"0"),Z:o};return r.replace(g,(function(n,e){return e||f[n]||o.replace(":","")}))},v.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},v.diff=function(r,a,f){var h,m=k.p(a),g=w(r),v=(g.utcOffset()-this.utcOffset())*e,y=this-g,b=k.m(this,g);return b=(h={},h[p]=b/12,h[s]=b,h[u]=b/3,h[d]=(y-v)/6048e5,h[c]=(y-v)/864e5,h[l]=y/t,h[i]=y/e,h[o]=y/n,h)[m]||y,f?b:k.a(b)},v.daysInMonth=function(){return this.endOf(s).$D},v.$locale=function(){return x[this.$L]},v.locale=function(n,e){if(!n)return this.$L;var t=this.clone(),r=S(n,e,!0);return r&&(t.$L=r),t},v.clone=function(){return k.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()},a}(),H=T.prototype;return w.prototype=H,[["$ms",r],["$s",o],["$m",i],["$H",l],["$W",c],["$M",s],["$y",p],["$D",f]].forEach((function(n){H[n[1]]=function(e){return this.$g(e,n[0],n[1])}})),w.extend=function(n,e){return n.$i||(n(e,T,w),n.$i=!0),w},w.locale=S,w.isDayjs=I,w.unix=function(n){return w(1e3*n)},w.en=x[C],w.Ls=x,w.p={},w}()}));function rg(n){if(!qt(n))return!1;var e="YYYY-MM-DD";return n===tg(n,e).format(e)}var og={props:{value:{type:String,default:""},textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},pickColor:{type:String,default:"deep-orange darken-1"},distY:{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:la,show:!1,value_day:""}},mounted:function(){},watch:{show:function(n){this.$emit("update:focused",n)}},computed:{changeParam:function(){var n=this,e=n.value;return rg(e)?n.value_day=e:n.value_day="",""},getShowTime:function(){return this.value_day},useTextFontSize:function(){var n=this.textFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},useTextColor:function(){return jo(this.textColor)}},methods:{getDay:function(n){var e=Io(n,"-");return e=ar(e=mt(e,"[2]"))},ch_day:function(n){var e=this,t=n,r="";rg(t)&&(r=t),e.show=!1,e.$nextTick((function(){e.$emit("input",r)}))}}};const ig=og;var ag=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.distY,"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)};ag._withStripped=!0;const lg=zo({render:ag,staticRenderFns:[]},(function(n){n&&n("data-v-78a1452b_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})}),ig,"data-v-78a1452b",false,undefined,!1,Jo,void 0,void 0);const cg={components:{WShellEllipse:qp,WTimedayCore:lg},props:{textFontSize:{type:String,default:"0.85rem"},textColor:{type:String,default:"black"},paddingStyle:{type:Object,default:function(){return{v:2,h:15}}},borderRadius:{type:Number,default:30},shadow:{type:Boolean,default:!0},value:{type:String,default:""},icon:{type:String,default:ca},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"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:ca,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var dg=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,distY:n.distY,editable:n.editable},on:{"update:focused":n.changeFocused,input:function(e){n.$emit("input",e)}}})],1)],1)};dg._withStripped=!0;const sg=zo({render:dg,staticRenderFns:[]},(function(n){n&&n("data-v-9563f1b6_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})}),cg,"data-v-9563f1b6",false,undefined,!1,Jo,void 0,void 0);const ug={components:{WTimedayCore:lg},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"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{focused_start:!1,focused_end:!1}},computed:{useTextFontSize:function(){var n=this.textFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},useTextColor:function(){return jo(this.textColor)}},methods:{changeFocused:function(){var n=this,e=n.focused_start||n.focused_end;n.$nextTick((function(){n.$emit("update:focused",e)}))}}};var pg=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,distY:n.distY,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,distY:n.distY,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)])};pg._withStripped=!0;const fg=zo({render:pg,staticRenderFns:[]},(function(n){n&&n("data-v-0addada7_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})}),ug,"data-v-0addada7",false,undefined,!1,Jo,void 0,void 0);const hg={components:{WShellEllipse:qp,WTimedayRangeCore:fg},props:{paddingStyle:{type:Object,default:function(){return{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:ca},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"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:ca,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var mg=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,distY:n.distY,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)};mg._withStripped=!0;const gg=zo({render:mg,staticRenderFns:[]},(function(n){n&&n("data-v-aa79952c_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})}),hg,"data-v-aa79952c",false,undefined,!1,Jo,void 0,void 0);var vg=function(n){return(null==n?0:n.length)?ai(n,Infinity):[]};var yg={components:{WTimedayCore:lg,WTextSuggestCore:cf},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:fa},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},distY:{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(){var n=this,e=n.value,t=Io(e,"T");return n.value_day=mt(t,0),n.value_time=Ha(mt(t,1),5),""},getUseMinutes:function(){var n=this;if(Wt(n.minutesCustom))return n.minutesCustom;var e=lr(n.hourMin)&&lr(n.hourMax)&&n.hourMin<=n.hourMax,t=lr(n.minuteInter);if(e&&t){var r=kt(fs(n.hourMin,n.hourMax+1),(function(e){var t=String(e);return e<10&&(t="0"+t),kt(fs(0,60,n.minuteInter),(function(n){var e=String(n);return n<10&&(e="0"+e),t+":"+e}))}));r=vg(r);var o=String(n.hourMax);return n.hourMax<10&&(o="0"+o),o+=":00",r=ri(r,(function(n){return n<=o}))}}},methods:{ch_day:function(n){this.value_day=n,this.changeContent()},ch_time:function(n){this.value_time=n,this.changeContent()},changeContent:function(){var n=this,e=n.value_day+"T"+n.value_time+":00";(function(n){if(!qt(n))return!1;var e="YYYY-MM-DDTHH:mm:ss";return n===tg(n,e).format(e)})(e)&&n.$nextTick((function(){n.$emit("input",e)}))},changeFocused:function(){var n=this,e=n.focused_day||n.focused_time;n.$nextTick((function(){n.$emit("update:focused",e)}))}}};const bg=yg;var Cg=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,distY:n.distY,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,distY:n.distY,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)])};Cg._withStripped=!0;const xg=zo({render:Cg,staticRenderFns:[]},(function(n){n&&n("data-v-f84e780a_0",{source:"\n[data-v-f84e780a] div.v-input__icon {\r\n transform: translateX(-5px);\n}\r\n",map:{version:3,sources:["D:\\開源-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 :distY=\"distY\"\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 :distY=\"distY\"\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} [distY=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 distY: {\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})}),bg,"data-v-f84e780a",false,undefined,!1,Jo,void 0,void 0);const Ig={components:{WShellEllipse:qp,WTimeminuteCore:xg},props:{paddingStyle:{type:Object,default:function(){return{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:ca},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:fa},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:ca,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var Sg=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,distY:n.distY,editable:n.editable,value:n.value},on:{"update:focused":n.changeFocused,input:function(e){n.$emit("input",e)}}})],1)],1)};Sg._withStripped=!0;const wg=zo({render:Sg,staticRenderFns:[]},(function(n){n&&n("data-v-765fded7_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})}),Ig,"data-v-765fded7",false,undefined,!1,Jo,void 0,void 0);const kg={components:{WTimeminuteCore:xg},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:fa},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0}},data:function(){return{focused_start:!1,focused_end:!1}},computed:{useTextFontSize:function(){var n=this.textFontSize;return n=Ti(n,";",""),"font-size:".concat(n,";")},useTextColor:function(){return jo(this.textColor)}},methods:{changeFocused:function(){var n=this,e=n.focused_start||n.focused_end;n.$nextTick((function(){n.$emit("update:focused",e)}))}}};var Tg=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,distY:n.distY,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,distY:n.distY,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)])};Tg._withStripped=!0;const Hg=zo({render:Tg,staticRenderFns:[]},(function(n){n&&n("data-v-998ac7d6_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})}),kg,"data-v-998ac7d6",false,undefined,!1,Jo,void 0,void 0);const Wg={components:{WShellEllipse:qp,WTimeminuteRangeCore:Hg},props:{paddingStyle:{type:Object,default:function(){return{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:ca},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:fa},expansionIconSize:{type:Number,default:18},expansionIconColor:{type:String,default:"grey"},distY:{type:Number,default:7},editable:{type:Boolean,default:!0},focused:{type:Boolean,default:!1}},data:function(){return{mdiClockOutline:ca,focusedTrans:!1}},mounted:function(){},computed:{changeParam:function(){return this.focusedTrans=this.focused,""}},methods:{changeFocused:function(n){var e=this;e.focusedTrans=n,e.$nextTick((function(){e.$emit("update:focused",n)}))}}};var Zg=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,distY:n.distY,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)};Zg._withStripped=!0;const Xg=zo({render:Zg,staticRenderFns:[]},(function(n){n&&n("data-v-1bb03348_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})}),Wg,"data-v-1bb03348",false,undefined,!1,Jo,void 0,void 0);const Bg={components:{WIconLoading:Mo},props:{pathItems:{type:Array,default:function(){return["https://cdn.jsdelivr.net/npm/tinymce@5.5.1/tinymce.min.js","https://cdn.jsdelivr.net/npm/w-tinymce-vue@2.0.2/dist/w-tinymce-vue.umd.js"]}},value:{type:String,default:""},settings:{type:Object,default:function(){}},height:{type:Number,default:250},editable:{type:Boolean,default:!0}},data:function(){return{cmpName:"WIconLoading"}},mounted:function(){var n=this;vr(n.pathItems).then((function(e){if("loaded"!==e){var t=window["w-tinymce-vue"];t.default&&(t=t.default),Uo().component("w-tinymce-vue",t)}n.cmpName="w-tinymce-vue"}))},computed:{},methods:{}};var Ag=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)}}})};Ag._withStripped=!0;const Vg=zo({render:Ag,staticRenderFns:[]},(function(n){n&&n("data-v-1ac68af2_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})}),Bg,"data-v-1ac68af2",false,undefined,!1,Jo,void 0,void 0);var Pg={install:function(n){n.component("w-aggrid-vue-dyn",ni),n.prototype.$alert=Di,n.component("w-badge",ra),n.component("w-button-chip",fl),n.component("w-button-circle",vl),n.component("w-checkbox",xl),n.component("w-ckeditor-vue-dyn",wl),n.component("w-confirm",Wl),n.component("w-dialog",Cc),n.component("w-drawer",Zc),n.component("w-dropfiles",Dc),n.component("w-dynamic-list",Hd),n.component("w-echarts-vue-dyn",Xd),n.component("w-explorer",Vp),n.component("w-group-baggage",Lp),n.component("w-group-check",Op),n.component("w-group-dragdrop",Ep),n.component("w-group-radio",Qp),n.component("w-group-tags",vf),n.component("w-highcharts-bitmap-dyn",If),n.component("w-highcharts-vue-dyn",kf),n.component("w-highstock-vue-dyn",Wf),n.component("w-icon",dl),n.component("w-icon-loading",Mo),n.component("w-icon-svg",Bf),n.component("w-image-cascading-dyn",th),n.component("w-image-viewer-dyn",ih),n.component("w-input-checkbox",dh),n.component("w-input-radio",ph),n.component("w-json-view",Wh),n.component("w-leaflet-vue-dyn",Bh),n.component("w-list-expand",Lh),n.component("w-list-expand-item",Kh),n.component("w-list-horizontal",Jh),n.component("w-list-item",dp),n.component("w-list-vertical",mp),n.component("w-panel-avatar",_h),n.component("w-panel-bulge",Uh),n.component("w-panel-divide-horizontal",nm),n.component("w-panel-divide-vertical",rm),n.component("w-panel-scale",am),n.component("w-panel-scrolly",ap),n.component("w-panel-scrolly-core",bd),n.component("w-panel-slot-hover",Yp),n.component("w-panel-stripe",dm),n.component("w-popup",np),n.component("w-popup-edit-text",ym),n.component("w-progress-bar",Im),n.component("w-progress-circle",km),n.component("w-quill-vue-dyn",Wm),n.component("w-shell-bottom-line",pm),n.component("w-shell-ellipse",qp),n.component("w-shell-material",Bm),n.component("w-switch",Km),n.component("w-table-dyn",Nm),n.component("w-text",mm),n.component("w-textarea",Dm),n.component("w-text-core",of),n.component("w-text-int",$m),n.component("w-text-int-core",Mm),n.component("w-text-select",eg),n.component("w-text-suggest",uf),n.component("w-text-suggest-core",cf),n.component("w-timeday",sg),n.component("w-timeday-core",lg),n.component("w-timeday-range",gg),n.component("w-timeday-range-core",fg),n.component("w-timeminute",wg),n.component("w-timeminute-core",xg),n.component("w-timeminute-range",Xg),n.component("w-timeminute-range-core",Hg),n.component("w-tinymce-vue-dyn",Vg),n.component("w-tree",Wp),n.component("w-tree-icon-checkbox",xp),n.component("w-tree-icon-toggle",yp)}};return zo({},undefined,Pg,undefined,undefined,undefined,!1,void 0,void 0,void 0)}));
|
|
16
16
|
//# sourceMappingURL=w-component-vue.umd.js.map
|