{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\eslint-loader\\index.js??ref--13-0!D:\\jenkins\\workspace\\xq-web-bpm\\src\\directive.js","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\directive.js","mtime":1675071992288},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\eslint-loader\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["import \"core-js/modules/web.dom.iterable\";\nimport \"core-js/modules/es6.string.iterator\";\nimport \"core-js/modules/es6.map\";\nimport \"core-js/modules/es6.regexp.replace\";\nimport Vue from \"vue\";\nimport moment from 'moment'; //日期格式化插件\n\nimport utils from \"@/hotent-ui-util.js\";\nimport req from \"@/request.js\";\nimport _ from \"lodash\";\nimport app from \"@/main.js\";\n/**\r\n * 根据指令model的值获取拼音\r\n * 使用方式：\r\n * 例如：\r\n * <ht-input  v-model=\"role.code\" v-pinyin=\"role.name\" placeholder=\"full修饰符 为全拼，否则为首字母\"></ht-input>\r\n * <ht-input  v-model=\"role.code\" v-pinyin.full=\"role.name\" placeholder=\"full修饰符 为全拼，否则为首字母\"></ht-input>\r\n *  watch role.name  set role.code\r\n */\n\nVue.directive('pinyin', {\n  // 指令的定义\n  componentUpdated: function componentUpdated(el, binding, vnode) {\n    var context = vnode.context; // 防抖\n\n    var debounceGetPinyin = _.debounce(function (newVal) {\n      // disabled 或者 readonly 时 不需要请求\n      if (el.__vue__.disabled || el.__vue__.readonly) return;\n      req.request({\n        url: \"\".concat(window.context.uc, \"/base/tools/v1/getPinyin\"),\n        method: \"GET\",\n        params: {\n          chinese: newVal,\n          type: \"\".concat(binding.modifiers.full ? 1 : 0)\n        }\n      }).then(function (res) {\n        if (res.data.state) {\n          var modelExp = vnode.data.model.expression.replace(/\\[\\w+.?\\$\\w+\\]/g, \"[\" + binding.arg + \"]\");\n          utils.setValueByPath(context, modelExp, res.data.value);\n          app.$nextTick(function () {\n            app.$validator.validate();\n          });\n        }\n      }).finally(function () {});\n    }, 300);\n\n    if (binding.value && binding.value != binding.oldValue) {\n      debounceGetPinyin(binding.value);\n    } // context.$watch(watchExp(), function (newVal, oldVal) {\n    // \tif (newVal && newVal != oldVal) {\n    // \t\tdebounceGetPinyin(newVal);\n    // \t}\n    // }, {\n    // \tdeep: true,\n    // \timmediate: false\n    // });\n\n  }\n});\nVue.filter('dateformat', function (dataStr) {\n  var pattern = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'yyyy-MM-dd HH:mm:ss';\n\n  if (dataStr) {\n    return moment(dataStr).format(pattern);\n  } else {\n    return \"\";\n  }\n}); //VUE页面使用：{{ newsinfo.add_time | dateformat('YYYY-MM-DD HH:mm:ss')}}\n\nVue.filter('timeLag', function (difference) {\n  var r = \"\",\n      ////计算出相差天数\n  days = Math.floor(difference / (24 * 3600 * 1000)),\n      //计算出小时数\n  leave1 = difference % (24 * 3600 * 1000),\n      //计算天数后剩余的毫秒数\n  hours = Math.floor(leave1 / (3600 * 1000)),\n      //计算相差分钟数\n  leave2 = leave1 % (3600 * 1000),\n      //计算小时数后剩余的毫秒数\n  minutes = Math.floor(leave2 / (60 * 1000)),\n      //计算相差秒数\n  leave3 = leave2 % (60 * 1000),\n      //计算分钟数后剩余的毫秒数\n  seconds = Math.round(leave3 / 1000);\n  if (days > 0) r += days + \"天\";\n  if (hours > 0) r += hours + \"小时\";\n  if (minutes > 0) r += minutes + \"分钟\";\n  if (seconds > 0) r += seconds + \"秒\";\n\n  if (!r) {\n    return '0秒';\n  }\n\n  return r;\n}); // 表单指令，会在表单的vue实例上添加一个map，用以存放数学运算的表达式\n\nVue.directive('form', {\n  bind: function bind(el, binding, vnode) {\n    var inst = vnode.context;\n\n    if (inst && !inst.hasOwnProperty(\"watchMap\")) {\n      inst[\"watchMap\"] = new Map();\n    }\n  }\n}); // 当前用户不是平台管理员时删除指令所在元素\n\nVue.directive('pm', {\n  inserted: function inserted(el, binding, vnode) {\n    var result = false;\n\n    try {\n      result = vnode.context.$store.state.login.currentUser.userAttrs.tenantId == -1;\n    } catch (e) {}\n\n    if (!result) {\n      el.parentNode && el.parentNode.removeChild(el);\n    }\n  }\n}); //表格横向拖拽\n\nVue.directive('tableDrag', {\n  inserted: function inserted(el) {\n    el = el.getElementsByClassName('el-table__body-wrapper')[0] || el;\n\n    if (el) {\n      el.style.cursor = 'grab';\n\n      el.onmousedown = function (event) {\n        var gapX = event.clientX;\n        var startX = el.scrollLeft;\n\n        document.onmousemove = function (e) {\n          var x = e.clientX - gapX;\n          el.scrollLeft = startX - x;\n          return false;\n        };\n\n        document.onmouseup = function (e) {\n          document.onmousemove = null;\n          document.onmouseup = null;\n        };\n      };\n    }\n  }\n});",null]}