@dev_ailaw/venus 1.420.0 → 1.422.0

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/dist/style.css CHANGED
@@ -1 +1 @@
1
- /*! tailwindcss v2.2.17 | MIT License | https://tailwindcss.com *//*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */*,:before,:after{box-sizing:border-box}html{-moz-tab-size:4;-o-tab-size:4;tab-size:4}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"}hr{height:0;color:inherit}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}button{background-color:transparent;background-image:none}fieldset{margin:0;padding:0}ol,ul{list-style:none;margin:0;padding:0}html{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}body{font-family:inherit;line-height:inherit}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#a1a1aa}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#a1a1aa}input::placeholder,textarea::placeholder{opacity:1;color:#a1a1aa}button,[role=button]{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}pre,code,kbd,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{border-color:currentColor}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.relative{position:relative}.mr-2{margin-right:.5rem}.mb-0{margin-bottom:0}.mb-5{margin-bottom:1.25rem}.ml-2{margin-left:.5rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.contents{display:contents}.hidden{display:none}.h-6{height:1.5rem}.h-screen{height:100vh}.w-6{width:1.5rem}.w-60{width:15rem}.w-72{width:18rem}.flex-1{flex:1 1 0%}@-webkit-keyframes spin{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@-webkit-keyframes ping{75%,to{transform:scale(2);opacity:0}}@keyframes ping{75%,to{transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,to{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes bounce{0%,to{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}.cursor-pointer{cursor:pointer}.items-center{align-items:center}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.rounded{border-radius:.25rem}.border{border-width:1px}.border-solid{border-style:solid}.border-light-purple{--tw-border-opacity: 1;border-color:rgba(192,150,250,var(--tw-border-opacity))}.border-light-blue{--tw-border-opacity: 1;border-color:rgba(145,213,255,var(--tw-border-opacity))}.bg-purple{--tw-bg-opacity: 1;background-color:rgba(249,240,255,var(--tw-bg-opacity))}.bg-blue{--tw-bg-opacity: 1;background-color:rgba(230,247,255,var(--tw-bg-opacity))}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.pt-3{padding-top:.75rem}.pt-3\.5{padding-top:.875rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.font-bold{font-weight:700}.capitalize{text-transform:capitalize}.leading-5{line-height:1.25rem}.text-secondary{--tw-text-opacity: 1;color:rgba(102,102,102,var(--tw-text-opacity))}.text-smart{--tw-text-opacity: 1;color:rgba(114,46,209,var(--tw-text-opacity))}.text-classic{--tw-text-opacity: 1;color:rgba(24,144,255,var(--tw-text-opacity))}*,:before,:after{--tw-shadow: 0 0 #0000}*,:before,:after{--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgba(59, 130, 246, .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000}.filter{--tw-blur: var(--tw-empty, );--tw-brightness: var(--tw-empty, );--tw-contrast: var(--tw-empty, );--tw-grayscale: var(--tw-empty, );--tw-hue-rotate: var(--tw-empty, );--tw-invert: var(--tw-empty, );--tw-saturate: var(--tw-empty, );--tw-sepia: var(--tw-empty, );--tw-drop-shadow: var(--tw-empty, );filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur{--tw-blur: blur(8px)}.btn-divider[data-v-20a86d10]{margin-bottom:0!important;margin-top:12px!important}.beta[data-v-1114aea6]{line-height:20px;border-radius:15px;background-color:red;color:#fff;padding:0 3.5px;margin:0 5px}.min-w-80[data-v-72ef9bd2]{min-width:320px}.ant-popover{z-index:9999!important}.ant-popover .ant-popover-inner-content{padding:8px 16px}.container[data-v-4027e57a]{border:1px solid #cccccc;border-radius:6px;padding:0 4px;min-height:30px;cursor:pointer}.block[data-v-4027e57a]{display:block}.tags-container[data-v-18554545]{word-break:keep-all;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.taskTemplateInline[data-v-c5d917d8]{float:right}a.taskTemplateInline[data-v-c5d917d8]{margin-left:10px}div.taskTemplateInline[data-v-c5d917d8]{margin-top:5px!important}.task-cart-main-modal[data-v-697d89e6] .ant-modal-body{padding-bottom:0}
1
+ /*! tailwindcss v2.2.17 | MIT License | https://tailwindcss.com *//*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */*,:before,:after{box-sizing:border-box}html{-moz-tab-size:4;-o-tab-size:4;tab-size:4}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"}hr{height:0;color:inherit}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}button{background-color:transparent;background-image:none}fieldset{margin:0;padding:0}ol,ul{list-style:none;margin:0;padding:0}html{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}body{font-family:inherit;line-height:inherit}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#a1a1aa}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#a1a1aa}input::placeholder,textarea::placeholder{opacity:1;color:#a1a1aa}button,[role=button]{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}pre,code,kbd,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{border-color:currentColor}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.relative{position:relative}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mb-0{margin-bottom:0}.mb-5{margin-bottom:1.25rem}.ml-2{margin-left:.5rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.contents{display:contents}.hidden{display:none}.h-6{height:1.5rem}.h-screen{height:100vh}.w-6{width:1.5rem}.w-60{width:15rem}.w-72{width:18rem}.flex-1{flex:1 1 0%}@-webkit-keyframes spin{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@-webkit-keyframes ping{75%,to{transform:scale(2);opacity:0}}@keyframes ping{75%,to{transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,to{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes bounce{0%,to{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}.cursor-pointer{cursor:pointer}.items-center{align-items:center}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.rounded{border-radius:.25rem}.border{border-width:1px}.border-solid{border-style:solid}.border-light-purple{--tw-border-opacity: 1;border-color:rgba(192,150,250,var(--tw-border-opacity))}.border-light-blue{--tw-border-opacity: 1;border-color:rgba(145,213,255,var(--tw-border-opacity))}.bg-purple{--tw-bg-opacity: 1;background-color:rgba(249,240,255,var(--tw-bg-opacity))}.bg-blue{--tw-bg-opacity: 1;background-color:rgba(230,247,255,var(--tw-bg-opacity))}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.pt-3{padding-top:.75rem}.pt-3\.5{padding-top:.875rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.font-bold{font-weight:700}.capitalize{text-transform:capitalize}.leading-5{line-height:1.25rem}.text-secondary{--tw-text-opacity: 1;color:rgba(102,102,102,var(--tw-text-opacity))}.text-smart{--tw-text-opacity: 1;color:rgba(114,46,209,var(--tw-text-opacity))}.text-classic{--tw-text-opacity: 1;color:rgba(24,144,255,var(--tw-text-opacity))}*,:before,:after{--tw-shadow: 0 0 #0000}*,:before,:after{--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgba(59, 130, 246, .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000}.filter{--tw-blur: var(--tw-empty, );--tw-brightness: var(--tw-empty, );--tw-contrast: var(--tw-empty, );--tw-grayscale: var(--tw-empty, );--tw-hue-rotate: var(--tw-empty, );--tw-invert: var(--tw-empty, );--tw-saturate: var(--tw-empty, );--tw-sepia: var(--tw-empty, );--tw-drop-shadow: var(--tw-empty, );filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur{--tw-blur: blur(8px)}.btn-divider[data-v-20a86d10]{margin-bottom:0!important;margin-top:12px!important}.beta[data-v-1114aea6]{line-height:20px;border-radius:15px;background-color:red;color:#fff;padding:0 3.5px;margin:0 5px}.min-w-80[data-v-72ef9bd2]{min-width:320px}.ant-popover{z-index:9999!important}.ant-popover .ant-popover-inner-content{padding:8px 16px}.container[data-v-4027e57a]{border:1px solid #cccccc;border-radius:6px;padding:0 4px;min-height:30px;cursor:pointer}.block[data-v-4027e57a]{display:block}.tags-container[data-v-18554545]{word-break:keep-all;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.rule-link-tag[data-v-ce2895d0]{display:inline-block;vertical-align:middle;margin-left:8px;font-size:11px;line-height:18px;padding:0 6px;border-radius:3px;color:#0958d9;background:#e6f4ff;border:1px solid #91caff}.rule-link-tag-edited[data-v-ce2895d0]{color:#595959;background:#fafafa;border-color:#d9d9d9}.rule-status-row[data-v-ce2895d0]{font-size:12px;color:#999;line-height:22px;white-space:nowrap;margin-top:4px}.rule-status-ok[data-v-ce2895d0]{color:#52c41a}.rule-status-na[data-v-ce2895d0]{color:#bbb;cursor:default}.rule-status-hint[data-v-ce2895d0]{margin-left:8px;color:#bfbfbf}.taskTemplateInline[data-v-c5d917d8]{float:right}a.taskTemplateInline[data-v-c5d917d8]{margin-left:10px}div.taskTemplateInline[data-v-c5d917d8]{margin-top:5px!important}.task-cart-main-modal[data-v-e416d0ae] .ant-modal-body{padding-bottom:0}
package/dist/venus.es.js CHANGED
@@ -38,7 +38,7 @@ function __variableDynamicImportRuntime0__$1(path2) {
38
38
  });
39
39
  }
40
40
  }
41
- var __vue2_script$k = defineComponent({
41
+ var __vue2_script$l = defineComponent({
42
42
  props: {
43
43
  type: {
44
44
  type: String,
@@ -65,13 +65,13 @@ var __vue2_script$k = defineComponent({
65
65
  return { iconUrl };
66
66
  }
67
67
  });
68
- var render$k = function() {
68
+ var render$l = function() {
69
69
  var _vm = this;
70
70
  var _h = _vm.$createElement;
71
71
  var _c = _vm._self._c || _h;
72
72
  return _c("img", { staticClass: "w-6 h-6", attrs: { "src": _vm.iconUrl, "alt": _vm.type } });
73
73
  };
74
- var staticRenderFns$k = [];
74
+ var staticRenderFns$l = [];
75
75
  function normalizeComponent(scriptExports, render2, staticRenderFns2, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {
76
76
  var options = typeof scriptExports === "function" ? scriptExports.options : scriptExports;
77
77
  if (render2) {
@@ -123,17 +123,17 @@ function normalizeComponent(scriptExports, render2, staticRenderFns2, functional
123
123
  options
124
124
  };
125
125
  }
126
- const __cssModules$k = {};
127
- var __component__$k = /* @__PURE__ */ normalizeComponent(__vue2_script$k, render$k, staticRenderFns$k, false, __vue2_injectStyles$k, null, null, null);
128
- function __vue2_injectStyles$k(context) {
129
- for (let o in __cssModules$k) {
130
- this[o] = __cssModules$k[o];
126
+ const __cssModules$l = {};
127
+ var __component__$l = /* @__PURE__ */ normalizeComponent(__vue2_script$l, render$l, staticRenderFns$l, false, __vue2_injectStyles$l, null, null, null);
128
+ function __vue2_injectStyles$l(context) {
129
+ for (let o in __cssModules$l) {
130
+ this[o] = __cssModules$l[o];
131
131
  }
132
132
  }
133
133
  var ProfileTypeIcon = /* @__PURE__ */ function() {
134
- return __component__$k.exports;
134
+ return __component__$l.exports;
135
135
  }();
136
- var __vue2_script$j = defineComponent({
136
+ var __vue2_script$k = defineComponent({
137
137
  props: {
138
138
  source: {
139
139
  type: Object,
@@ -142,22 +142,22 @@ var __vue2_script$j = defineComponent({
142
142
  },
143
143
  components: { ProfileTypeIcon }
144
144
  });
145
- var render$j = function() {
145
+ var render$k = function() {
146
146
  var _vm = this;
147
147
  var _h = _vm.$createElement;
148
148
  var _c = _vm._self._c || _h;
149
149
  return _c("div", { staticClass: "flex space-x-1 items-center" }, [_c("ProfileTypeIcon", { attrs: { "type": _vm.source.profileType } }), _c("div", { staticClass: "text-secondary" }, [_vm._v(_vm._s(_vm.source.profileName))])], 1);
150
150
  };
151
- var staticRenderFns$j = [];
152
- const __cssModules$j = {};
153
- var __component__$j = /* @__PURE__ */ normalizeComponent(__vue2_script$j, render$j, staticRenderFns$j, false, __vue2_injectStyles$j, null, null, null);
154
- function __vue2_injectStyles$j(context) {
155
- for (let o in __cssModules$j) {
156
- this[o] = __cssModules$j[o];
151
+ var staticRenderFns$k = [];
152
+ const __cssModules$k = {};
153
+ var __component__$k = /* @__PURE__ */ normalizeComponent(__vue2_script$k, render$k, staticRenderFns$k, false, __vue2_injectStyles$k, null, null, null);
154
+ function __vue2_injectStyles$k(context) {
155
+ for (let o in __cssModules$k) {
156
+ this[o] = __cssModules$k[o];
157
157
  }
158
158
  }
159
159
  var ProfileSelectItem = /* @__PURE__ */ function() {
160
- return __component__$j.exports;
160
+ return __component__$k.exports;
161
161
  }();
162
162
  const meQuery = gql`
163
163
  query Me {
@@ -249,7 +249,7 @@ const profileTypes = {
249
249
  CLIENTPROFILE: "Company",
250
250
  PREPARERPROFILE: "Attorney"
251
251
  };
252
- var __vue2_script$i = defineComponent({
252
+ var __vue2_script$j = defineComponent({
253
253
  props: {
254
254
  value: {
255
255
  type: String
@@ -269,7 +269,7 @@ var __vue2_script$i = defineComponent({
269
269
  return { profileTypes, handleChange };
270
270
  }
271
271
  });
272
- var render$i = function() {
272
+ var render$j = function() {
273
273
  var _vm = this;
274
274
  var _h = _vm.$createElement;
275
275
  var _c = _vm._self._c || _h;
@@ -277,18 +277,18 @@ var render$i = function() {
277
277
  return _c("Option", { key, attrs: { "value": key } }, [_c("div", { staticClass: "flex items-center space-x-1" }, [_c("ProfileTypeIcon", { attrs: { "type": key } }), _c("div", { staticClass: "text-secondary" }, [_vm._v(_vm._s(_vm.profileTypes[key]))])], 1)]);
278
278
  }), 1);
279
279
  };
280
- var staticRenderFns$i = [];
281
- const __cssModules$i = {};
282
- var __component__$i = /* @__PURE__ */ normalizeComponent(__vue2_script$i, render$i, staticRenderFns$i, false, __vue2_injectStyles$i, null, null, null);
283
- function __vue2_injectStyles$i(context) {
284
- for (let o in __cssModules$i) {
285
- this[o] = __cssModules$i[o];
280
+ var staticRenderFns$j = [];
281
+ const __cssModules$j = {};
282
+ var __component__$j = /* @__PURE__ */ normalizeComponent(__vue2_script$j, render$j, staticRenderFns$j, false, __vue2_injectStyles$j, null, null, null);
283
+ function __vue2_injectStyles$j(context) {
284
+ for (let o in __cssModules$j) {
285
+ this[o] = __cssModules$j[o];
286
286
  }
287
287
  }
288
288
  var ProfileTypeSelect = /* @__PURE__ */ function() {
289
- return __component__$i.exports;
289
+ return __component__$j.exports;
290
290
  }();
291
- var __vue2_script$h = defineComponent({
291
+ var __vue2_script$i = defineComponent({
292
292
  props: {
293
293
  enabledTypes: {
294
294
  type: Array,
@@ -351,7 +351,7 @@ var __vue2_script$h = defineComponent({
351
351
  };
352
352
  }
353
353
  });
354
- var render$h = function() {
354
+ var render$i = function() {
355
355
  var _vm = this;
356
356
  var _h = _vm.$createElement;
357
357
  var _c = _vm._self._c || _h;
@@ -365,18 +365,18 @@ var render$h = function() {
365
365
  _vm.$set(_vm.value, "sendEmail", $$v);
366
366
  }, expression: "value.sendEmail" } }, [_vm._v("Send client portal login password (System will email client a login password)")])], 1) : _vm._e()], 1)], 1);
367
367
  };
368
- var staticRenderFns$h = [];
369
- const __cssModules$h = {};
370
- var __component__$h = /* @__PURE__ */ normalizeComponent(__vue2_script$h, render$h, staticRenderFns$h, false, __vue2_injectStyles$h, null, null, null);
371
- function __vue2_injectStyles$h(context) {
372
- for (let o in __cssModules$h) {
373
- this[o] = __cssModules$h[o];
368
+ var staticRenderFns$i = [];
369
+ const __cssModules$i = {};
370
+ var __component__$i = /* @__PURE__ */ normalizeComponent(__vue2_script$i, render$i, staticRenderFns$i, false, __vue2_injectStyles$i, null, null, null);
371
+ function __vue2_injectStyles$i(context) {
372
+ for (let o in __cssModules$i) {
373
+ this[o] = __cssModules$i[o];
374
374
  }
375
375
  }
376
376
  var ProfileCreateModal = /* @__PURE__ */ function() {
377
- return __component__$h.exports;
377
+ return __component__$i.exports;
378
378
  }();
379
- var __vue2_script$g = defineComponent({
379
+ var __vue2_script$h = defineComponent({
380
380
  props: {
381
381
  value: {
382
382
  type: Object
@@ -419,7 +419,7 @@ var __vue2_script$g = defineComponent({
419
419
  };
420
420
  }
421
421
  });
422
- var render$g = function() {
422
+ var render$h = function() {
423
423
  var _vm = this;
424
424
  var _h = _vm.$createElement;
425
425
  var _c = _vm._self._c || _h;
@@ -427,17 +427,17 @@ var render$g = function() {
427
427
  return _c("Option", { key: v.id, attrs: { "value": v.id, "name": v.profileName } }, [_c("ProfileSelectItem", { attrs: { "source": v } })], 1);
428
428
  })], 2);
429
429
  };
430
- var staticRenderFns$g = [];
430
+ var staticRenderFns$h = [];
431
431
  var profileSelector_vue_vue_type_style_index_0_scoped_true_lang = "";
432
- const __cssModules$g = {};
433
- var __component__$g = /* @__PURE__ */ normalizeComponent(__vue2_script$g, render$g, staticRenderFns$g, false, __vue2_injectStyles$g, "20a86d10", null, null);
434
- function __vue2_injectStyles$g(context) {
435
- for (let o in __cssModules$g) {
436
- this[o] = __cssModules$g[o];
432
+ const __cssModules$h = {};
433
+ var __component__$h = /* @__PURE__ */ normalizeComponent(__vue2_script$h, render$h, staticRenderFns$h, false, __vue2_injectStyles$h, "20a86d10", null, null);
434
+ function __vue2_injectStyles$h(context) {
435
+ for (let o in __cssModules$h) {
436
+ this[o] = __cssModules$h[o];
437
437
  }
438
438
  }
439
439
  var ProfileSelector = /* @__PURE__ */ function() {
440
- return __component__$g.exports;
440
+ return __component__$h.exports;
441
441
  }();
442
442
  function useProfiles(keywords, onlyRole, roleTypes, profileIds, disabledProfile) {
443
443
  const me = useMe();
@@ -466,7 +466,7 @@ function useProfiles(keywords, onlyRole, roleTypes, profileIds, disabledProfile)
466
466
  const profiles = useResult(result, [], (data) => data.profileSearch.profileList);
467
467
  return { profiles, loading };
468
468
  }
469
- var __vue2_script$f = defineComponent({
469
+ var __vue2_script$g = defineComponent({
470
470
  components: { ProfileSelector, ProfileCreateModal },
471
471
  props: {
472
472
  value: {
@@ -550,7 +550,7 @@ var __vue2_script$f = defineComponent({
550
550
  };
551
551
  }
552
552
  });
553
- var render$f = function() {
553
+ var render$g = function() {
554
554
  var _vm = this;
555
555
  var _h = _vm.$createElement;
556
556
  var _c = _vm._self._c || _h;
@@ -560,16 +560,16 @@ var render$f = function() {
560
560
  return _vm.toggleModal(false);
561
561
  }, "profile-created": _vm.handleProfileCreated } }) : _vm._e()], 1);
562
562
  };
563
- var staticRenderFns$f = [];
564
- const __cssModules$f = {};
565
- var __component__$f = /* @__PURE__ */ normalizeComponent(__vue2_script$f, render$f, staticRenderFns$f, false, __vue2_injectStyles$f, null, null, null);
566
- function __vue2_injectStyles$f(context) {
567
- for (let o in __cssModules$f) {
568
- this[o] = __cssModules$f[o];
563
+ var staticRenderFns$g = [];
564
+ const __cssModules$g = {};
565
+ var __component__$g = /* @__PURE__ */ normalizeComponent(__vue2_script$g, render$g, staticRenderFns$g, false, __vue2_injectStyles$g, null, null, null);
566
+ function __vue2_injectStyles$g(context) {
567
+ for (let o in __cssModules$g) {
568
+ this[o] = __cssModules$g[o];
569
569
  }
570
570
  }
571
571
  var index$4 = /* @__PURE__ */ function() {
572
- return __component__$f.exports;
572
+ return __component__$g.exports;
573
573
  }();
574
574
  const queryAllCaseTemplates = gql`
575
575
  query AllCaseTemplates($lawFirmId: Int!) {
@@ -621,7 +621,7 @@ function useCaseTemplates() {
621
621
  }));
622
622
  return { templates, loading };
623
623
  }
624
- var __vue2_script$e = defineComponent({
624
+ var __vue2_script$f = defineComponent({
625
625
  props: {
626
626
  isSmart: {
627
627
  type: Boolean
@@ -630,7 +630,7 @@ var __vue2_script$e = defineComponent({
630
630
  setup() {
631
631
  }
632
632
  });
633
- var render$e = function() {
633
+ var render$f = function() {
634
634
  var _vm = this;
635
635
  var _h = _vm.$createElement;
636
636
  var _c = _vm._self._c || _h;
@@ -639,18 +639,18 @@ var render$e = function() {
639
639
  "text-classic bg-blue border-light-blue": !_vm.isSmart
640
640
  } }, [_vm._v(" " + _vm._s(_vm.isSmart ? _vm.$t("message.smart") : _vm.$t("message.classic")) + " ")]);
641
641
  };
642
- var staticRenderFns$e = [];
643
- const __cssModules$e = {};
644
- var __component__$e = /* @__PURE__ */ normalizeComponent(__vue2_script$e, render$e, staticRenderFns$e, false, __vue2_injectStyles$e, null, null, null);
645
- function __vue2_injectStyles$e(context) {
646
- for (let o in __cssModules$e) {
647
- this[o] = __cssModules$e[o];
642
+ var staticRenderFns$f = [];
643
+ const __cssModules$f = {};
644
+ var __component__$f = /* @__PURE__ */ normalizeComponent(__vue2_script$f, render$f, staticRenderFns$f, false, __vue2_injectStyles$f, null, null, null);
645
+ function __vue2_injectStyles$f(context) {
646
+ for (let o in __cssModules$f) {
647
+ this[o] = __cssModules$f[o];
648
648
  }
649
649
  }
650
650
  var CaseTemplateTypeBadge = /* @__PURE__ */ function() {
651
- return __component__$e.exports;
651
+ return __component__$f.exports;
652
652
  }();
653
- var __vue2_script$d = defineComponent({
653
+ var __vue2_script$e = defineComponent({
654
654
  props: {
655
655
  source: {
656
656
  type: Object,
@@ -659,23 +659,23 @@ var __vue2_script$d = defineComponent({
659
659
  },
660
660
  components: { CaseTemplateTypeBadge, Popover }
661
661
  });
662
- var render$d = function() {
662
+ var render$e = function() {
663
663
  var _vm = this;
664
664
  var _h = _vm.$createElement;
665
665
  var _c = _vm._self._c || _h;
666
666
  return _c("popover", [_c("div", { staticClass: "flex space-x-2 items-center" }, [_c("span", [_vm._v(_vm._s(_vm.source.templateName))]), _c("case-template-type-badge", { attrs: { "isSmart": _vm.source.isSmart } })], 1), _c("div", { attrs: { "slot": "content" }, slot: "content" }, [_c("span", [_vm._v(_vm._s(_vm.source.templateName) + " ")]), _c("b", [_vm._v("(" + _vm._s(_vm.source.isSmart ? "Smart" : "Classic") + ")")])])]);
667
667
  };
668
- var staticRenderFns$d = [];
668
+ var staticRenderFns$e = [];
669
669
  var caseTemplateOption_vue_vue_type_style_index_0_scoped_true_lang = "";
670
- const __cssModules$d = {};
671
- var __component__$d = /* @__PURE__ */ normalizeComponent(__vue2_script$d, render$d, staticRenderFns$d, false, __vue2_injectStyles$d, "1114aea6", null, null);
672
- function __vue2_injectStyles$d(context) {
673
- for (let o in __cssModules$d) {
674
- this[o] = __cssModules$d[o];
670
+ const __cssModules$e = {};
671
+ var __component__$e = /* @__PURE__ */ normalizeComponent(__vue2_script$e, render$e, staticRenderFns$e, false, __vue2_injectStyles$e, "1114aea6", null, null);
672
+ function __vue2_injectStyles$e(context) {
673
+ for (let o in __cssModules$e) {
674
+ this[o] = __cssModules$e[o];
675
675
  }
676
676
  }
677
677
  var CaseTemplateOption = /* @__PURE__ */ function() {
678
- return __component__$d.exports;
678
+ return __component__$e.exports;
679
679
  }();
680
680
  const handleString = (str) => {
681
681
  const reg = /[-/]/g;
@@ -692,7 +692,7 @@ var caseTemplateFilter = (inputKeywords, formsString, label = formsString) => {
692
692
  const inputKW = inputKeywords.split(" ");
693
693
  return inputKW.some((v) => formsString.includes(v));
694
694
  };
695
- var __vue2_script$c = defineComponent({
695
+ var __vue2_script$d = defineComponent({
696
696
  props: ["value", "blackList", "exemptLawFirmList", "templateType"],
697
697
  components: {
698
698
  ASelect: Select,
@@ -756,7 +756,7 @@ var __vue2_script$c = defineComponent({
756
756
  };
757
757
  }
758
758
  });
759
- var render$c = function() {
759
+ var render$d = function() {
760
760
  var _vm = this;
761
761
  var _h = _vm.$createElement;
762
762
  var _c = _vm._self._c || _h;
@@ -766,18 +766,18 @@ var render$c = function() {
766
766
  return _c("a-option", { key: v.id, attrs: { "value": v.id, "name": v.templateName, "forms": v.keywords } }, [_c("CaseTemplateOption", { attrs: { "source": v } })], 1);
767
767
  }), 1)], 1);
768
768
  };
769
- var staticRenderFns$c = [];
769
+ var staticRenderFns$d = [];
770
770
  var index_vue_vue_type_style_index_0_scoped_true_lang$7 = "";
771
771
  var index_vue_vue_type_style_index_1_lang = "";
772
- const __cssModules$c = {};
773
- var __component__$c = /* @__PURE__ */ normalizeComponent(__vue2_script$c, render$c, staticRenderFns$c, false, __vue2_injectStyles$c, "72ef9bd2", null, null);
774
- function __vue2_injectStyles$c(context) {
775
- for (let o in __cssModules$c) {
776
- this[o] = __cssModules$c[o];
772
+ const __cssModules$d = {};
773
+ var __component__$d = /* @__PURE__ */ normalizeComponent(__vue2_script$d, render$d, staticRenderFns$d, false, __vue2_injectStyles$d, "72ef9bd2", null, null);
774
+ function __vue2_injectStyles$d(context) {
775
+ for (let o in __cssModules$d) {
776
+ this[o] = __cssModules$d[o];
777
777
  }
778
778
  }
779
779
  var index$3 = /* @__PURE__ */ function() {
780
- return __component__$c.exports;
780
+ return __component__$d.exports;
781
781
  }();
782
782
  function __variableDynamicImportRuntime0__(path2) {
783
783
  switch (path2) {
@@ -1893,7 +1893,7 @@ const acceptableFormats = [
1893
1893
  ".jpeg",
1894
1894
  ".png"
1895
1895
  ];
1896
- var __vue2_script$b = defineComponent({
1896
+ var __vue2_script$c = defineComponent({
1897
1897
  name: "aFileUploader",
1898
1898
  components: {
1899
1899
  AntUpload: Upload,
@@ -2020,7 +2020,7 @@ var __vue2_script$b = defineComponent({
2020
2020
  };
2021
2021
  }
2022
2022
  });
2023
- var render$b = function() {
2023
+ var render$c = function() {
2024
2024
  var _vm = this;
2025
2025
  var _h = _vm.$createElement;
2026
2026
  var _c = _vm._self._c || _h;
@@ -2047,17 +2047,17 @@ var render$b = function() {
2047
2047
  return _vm.handleSelectFolderTree.apply(null, arguments);
2048
2048
  } } }, [_vm._v(" Upload Folder Sample ")])], 1) : _vm._e()], 1);
2049
2049
  };
2050
- var staticRenderFns$b = [];
2050
+ var staticRenderFns$c = [];
2051
2051
  var index_vue_vue_type_style_index_0_scoped_true_lang$6 = "";
2052
- const __cssModules$b = {};
2053
- var __component__$b = /* @__PURE__ */ normalizeComponent(__vue2_script$b, render$b, staticRenderFns$b, false, __vue2_injectStyles$b, "4027e57a", null, null);
2054
- function __vue2_injectStyles$b(context) {
2055
- for (let o in __cssModules$b) {
2056
- this[o] = __cssModules$b[o];
2052
+ const __cssModules$c = {};
2053
+ var __component__$c = /* @__PURE__ */ normalizeComponent(__vue2_script$c, render$c, staticRenderFns$c, false, __vue2_injectStyles$c, "4027e57a", null, null);
2054
+ function __vue2_injectStyles$c(context) {
2055
+ for (let o in __cssModules$c) {
2056
+ this[o] = __cssModules$c[o];
2057
2057
  }
2058
2058
  }
2059
2059
  var AFileUploader = /* @__PURE__ */ function() {
2060
- return __component__$b.exports;
2060
+ return __component__$c.exports;
2061
2061
  }();
2062
2062
  var AssigneeTypes;
2063
2063
  (function(AssigneeTypes2) {
@@ -2084,7 +2084,7 @@ var ResponseCode;
2084
2084
  ResponseCode2["success"] = "SUCCESS";
2085
2085
  ResponseCode2["failed"] = "FAILED";
2086
2086
  })(ResponseCode || (ResponseCode = {}));
2087
- var __vue2_script$a = defineComponent({
2087
+ var __vue2_script$b = defineComponent({
2088
2088
  components: {
2089
2089
  AntTag: Tag
2090
2090
  },
@@ -2101,25 +2101,25 @@ var __vue2_script$a = defineComponent({
2101
2101
  };
2102
2102
  }
2103
2103
  });
2104
- var render$a = function() {
2104
+ var render$b = function() {
2105
2105
  var _vm = this;
2106
2106
  var _h = _vm.$createElement;
2107
2107
  var _c = _vm._self._c || _h;
2108
2108
  return _c("ant-tag", { attrs: { "color": _vm.tagColor(_vm.assigneeType || "EMPTY_DEFAULT") } }, [_vm._v(" " + _vm._s(_vm.$t(_vm.AssigneeTypesText[_vm.assigneeType])) + " ")]);
2109
2109
  };
2110
- var staticRenderFns$a = [];
2110
+ var staticRenderFns$b = [];
2111
2111
  var index_vue_vue_type_style_index_0_scoped_true_lang$5 = "";
2112
- const __cssModules$a = {};
2113
- var __component__$a = /* @__PURE__ */ normalizeComponent(__vue2_script$a, render$a, staticRenderFns$a, false, __vue2_injectStyles$a, "3f69c61c", null, null);
2114
- function __vue2_injectStyles$a(context) {
2115
- for (let o in __cssModules$a) {
2116
- this[o] = __cssModules$a[o];
2112
+ const __cssModules$b = {};
2113
+ var __component__$b = /* @__PURE__ */ normalizeComponent(__vue2_script$b, render$b, staticRenderFns$b, false, __vue2_injectStyles$b, "3f69c61c", null, null);
2114
+ function __vue2_injectStyles$b(context) {
2115
+ for (let o in __cssModules$b) {
2116
+ this[o] = __cssModules$b[o];
2117
2117
  }
2118
2118
  }
2119
2119
  var AssigneeTag = /* @__PURE__ */ function() {
2120
- return __component__$a.exports;
2120
+ return __component__$b.exports;
2121
2121
  }();
2122
- var __vue2_script$9 = defineComponent({
2122
+ var __vue2_script$a = defineComponent({
2123
2123
  name: "index",
2124
2124
  components: {
2125
2125
  AntTooltip: Tooltip
@@ -2138,23 +2138,23 @@ var __vue2_script$9 = defineComponent({
2138
2138
  }
2139
2139
  }
2140
2140
  });
2141
- var render$9 = function() {
2141
+ var render$a = function() {
2142
2142
  var _vm = this;
2143
2143
  var _h = _vm.$createElement;
2144
2144
  var _c = _vm._self._c || _h;
2145
2145
  return _c("ant-tooltip", { attrs: { "placement": _vm.placement, "title": _vm.tags ? _vm.tags.join(", ") : "-" } }, [_c("div", { staticClass: "tags-container", style: "max-width:" + _vm.maxWidth + "px" }, [_c("span", [_vm._v(_vm._s(_vm.tags ? _vm.tags.join(", ") : "-"))])])]);
2146
2146
  };
2147
- var staticRenderFns$9 = [];
2147
+ var staticRenderFns$a = [];
2148
2148
  var index_vue_vue_type_style_index_0_scoped_true_lang$4 = "";
2149
- const __cssModules$9 = {};
2150
- var __component__$9 = /* @__PURE__ */ normalizeComponent(__vue2_script$9, render$9, staticRenderFns$9, false, __vue2_injectStyles$9, "18554545", null, null);
2151
- function __vue2_injectStyles$9(context) {
2152
- for (let o in __cssModules$9) {
2153
- this[o] = __cssModules$9[o];
2149
+ const __cssModules$a = {};
2150
+ var __component__$a = /* @__PURE__ */ normalizeComponent(__vue2_script$a, render$a, staticRenderFns$a, false, __vue2_injectStyles$a, "18554545", null, null);
2151
+ function __vue2_injectStyles$a(context) {
2152
+ for (let o in __cssModules$a) {
2153
+ this[o] = __cssModules$a[o];
2154
2154
  }
2155
2155
  }
2156
2156
  var TagsWithTooltip = /* @__PURE__ */ function() {
2157
- return __component__$9.exports;
2157
+ return __component__$a.exports;
2158
2158
  }();
2159
2159
  var TaskTypes;
2160
2160
  (function(TaskTypes2) {
@@ -2306,6 +2306,27 @@ var belongsTo = [
2306
2306
  "COMPANY_INDUSTRY_INTRODUCTION"
2307
2307
  ]
2308
2308
  ];
2309
+ async function ruleHashOf(name, rule) {
2310
+ const data = new TextEncoder().encode(`${name || ""}
2311
+ ${rule || ""}`);
2312
+ const digest = await crypto.subtle.digest("SHA-1", data);
2313
+ return Array.from(new Uint8Array(digest)).map((b) => b.toString(16).padStart(2, "0")).join("");
2314
+ }
2315
+ async function badgeOf(record) {
2316
+ const rule = (record.ruleDescription || "").trim();
2317
+ if (!rule)
2318
+ return { s: "notset", types: [] };
2319
+ let items = null;
2320
+ try {
2321
+ items = JSON.parse(record.aiCheckItems || "null");
2322
+ } catch (e) {
2323
+ items = null;
2324
+ }
2325
+ if (items && items.hash === await ruleHashOf(record.taskName || "", rule)) {
2326
+ return { s: items.supported ? "ready" : "wont", types: items.types || [] };
2327
+ }
2328
+ return { s: "notchecked", types: [] };
2329
+ }
2309
2330
  const roles = [
2310
2331
  {
2311
2332
  id: AssigneeTypes.BENEFICIARY,
@@ -2329,7 +2350,7 @@ const roles = [
2329
2350
  hide: true
2330
2351
  }
2331
2352
  ];
2332
- var __vue2_script$8 = defineComponent({
2353
+ var __vue2_script$9 = defineComponent({
2333
2354
  name: "index",
2334
2355
  components: {
2335
2356
  AntForm: Form,
@@ -2369,6 +2390,10 @@ var __vue2_script$8 = defineComponent({
2369
2390
  showAiRule: {
2370
2391
  type: Boolean,
2371
2392
  default: false
2393
+ },
2394
+ checkRuleFunc: {
2395
+ type: Function,
2396
+ default: null
2372
2397
  }
2373
2398
  },
2374
2399
  mounted() {
@@ -2398,6 +2423,60 @@ var __vue2_script$8 = defineComponent({
2398
2423
  ruleMirror.value = null;
2399
2424
  changeVal("ruleDescription", text);
2400
2425
  };
2426
+ const ruleIsLinked = computed(() => {
2427
+ const rule = props.value.ruleDescription || "";
2428
+ return !rule || rule === ruleMirror.value;
2429
+ });
2430
+ const relinkRule = () => {
2431
+ const desc = props.value.descriptions || "";
2432
+ ruleMirror.value = desc;
2433
+ changeVal("ruleDescription", desc);
2434
+ };
2435
+ const ruleCheck = ref({ state: "idle", types: [] });
2436
+ const checkRuleNow = async () => {
2437
+ if (!props.checkRuleFunc)
2438
+ return;
2439
+ const rule = (props.value.ruleDescription || "").trim();
2440
+ if (!rule || ruleCheck.value.state === "checking")
2441
+ return;
2442
+ ruleCheck.value = { state: "checking", types: [] };
2443
+ try {
2444
+ const res = await props.checkRuleFunc({
2445
+ taskName: props.value.taskName || "",
2446
+ ruleDescription: rule
2447
+ });
2448
+ if (!res || res.error) {
2449
+ ruleCheck.value = { state: "error", types: [] };
2450
+ } else {
2451
+ ruleCheck.value = { state: res.supported ? "ready" : "wont", types: res.types || [] };
2452
+ }
2453
+ } catch (e) {
2454
+ ruleCheck.value = { state: "error", types: [] };
2455
+ }
2456
+ };
2457
+ let seedSeq = 0;
2458
+ const seedRuleCheck = async () => {
2459
+ const seq = ++seedSeq;
2460
+ const rule = (props.value.ruleDescription || "").trim();
2461
+ if (!props.showAiRule || !rule || !props.value.aiCheckItems)
2462
+ return;
2463
+ const badge = await badgeOf({
2464
+ taskName: props.value.taskName,
2465
+ ruleDescription: rule,
2466
+ aiCheckItems: props.value.aiCheckItems
2467
+ });
2468
+ if (seq !== seedSeq || ruleCheck.value.state === "checking")
2469
+ return;
2470
+ if (badge.s === "ready" || badge.s === "wont") {
2471
+ ruleCheck.value = { state: badge.s, types: badge.types };
2472
+ }
2473
+ };
2474
+ watch(() => [props.value.ruleDescription, props.value.taskName], () => {
2475
+ if (ruleCheck.value.state !== "checking") {
2476
+ ruleCheck.value = { state: "idle", types: [] };
2477
+ }
2478
+ seedRuleCheck();
2479
+ }, { immediate: true });
2401
2480
  const changeMultiple = (event) => {
2402
2481
  let toBeEmitted = __spreadProps(__spreadValues({}, props.value), {
2403
2482
  isEmployee: event
@@ -2469,11 +2548,15 @@ var __vue2_script$8 = defineComponent({
2469
2548
  nameErrorContent,
2470
2549
  belongsTo,
2471
2550
  AssigneeTypes,
2472
- shouldShowBelongsTo
2551
+ shouldShowBelongsTo,
2552
+ ruleIsLinked,
2553
+ relinkRule,
2554
+ ruleCheck,
2555
+ checkRuleNow
2473
2556
  };
2474
2557
  }
2475
2558
  });
2476
- var render$8 = function() {
2559
+ var render$9 = function() {
2477
2560
  var _vm = this;
2478
2561
  var _h = _vm.$createElement;
2479
2562
  var _c = _vm._self._c || _h;
@@ -2492,8 +2575,8 @@ var render$8 = function() {
2492
2575
  }, expression: "value.assigneeTypeList" } }, [_c("a-checkbox", { attrs: { "value": 1, "disabled": _vm.value.isEmployee === "BENEFICIARY" } }, [_vm._v(_vm._s(_vm.$t("message.Beneficiary")) + " ")]), _c("a-checkbox", { attrs: { "value": 2, "disabled": _vm.value.isEmployee === "PETITIONER" } }, [_vm._v(_vm._s(_vm.$t("message.petitioner")) + " ")])], 1)], 1)], 1) : _vm._e(), _c("ant-row", { attrs: { "gutter": 40 } }, [_c("ant-col", { attrs: { "span": 12 } }, [_c("ant-form-item", { attrs: { "required": "", "label": _vm.$t("message.type"), "help": _vm.typeError ? _vm.$t("message.required") : void 0, "validate-status": _vm.typeError ? "error" : void 0 } }, [_vm.value.generalTaskType !== _vm.TaskTypes.worksheet ? _c("ant-radio-group", { attrs: { "disabled": _vm.value.presetDocs != null || _vm.disabled, "value": _vm.value.generalTaskType }, on: { "change": function($event) {
2493
2576
  return _vm.changeVal("generalTaskType", $event.target.value);
2494
2577
  } } }, [_c("ant-radio", { attrs: { "value": _vm.TaskTypes.clientUpload } }, [_vm._v(" " + _vm._s(_vm.$t("message.clientUpload")) + " ")]), _c("ant-radio", { attrs: { "value": _vm.TaskTypes.clientReview, "disabled": _vm.isAttorneySelected } }, [_vm._v(" " + _vm._s(_vm.$t("message.clientReview")) + " ")])], 1) : _c("div", [_vm._v(_vm._s(_vm.$t("message.worksheet")))])], 1)], 1), _vm.shouldShowBelongsTo ? _c("ant-col", { attrs: { "span": 12 } }, [_c("ant-form-item", { scopedSlots: _vm._u([{ key: "label", fn: function() {
2495
- return [_vm._v(" " + _vm._s(_vm.$t("message.belongsTo")) + " "), _c("ant-popover", { attrs: { "content": _vm.$t("message.toReuseThisDoc") } }, [_c("ant-icon", { staticClass: "pt-3.5 text-classic cursor-pointer", attrs: { "type": "question-circle" } })], 1)];
2496
- }, proxy: true }], null, false, 4216407690) }, [_c("ant-select", { on: { "change": function($event) {
2578
+ return [_vm._v(" " + _vm._s(_vm.$t("message.belongsTo")) + " "), _c("ant-popover", { attrs: { "content": _vm.$t("message.toReuseThisDoc"), "overlay-style": { maxWidth: "380px" } } }, [_c("ant-icon", { staticClass: "pt-3.5 text-classic cursor-pointer", attrs: { "type": "question-circle" } })], 1)];
2579
+ }, proxy: true }], null, false, 1708057377) }, [_c("ant-select", { on: { "change": function($event) {
2497
2580
  return _vm.changeVal("taskSmartType", $event);
2498
2581
  } }, model: { value: _vm.value.taskSmartType, callback: function($$v) {
2499
2582
  _vm.$set(_vm.value, "taskSmartType", $$v);
@@ -2502,10 +2585,10 @@ var render$8 = function() {
2502
2585
  }), 1)], 1)], 1) : _vm._e()], 1), _c("ant-form-item", { attrs: { "label": "" + _vm.$t("message.descriptions") + " (" + _vm.$t("message.optional") + ")" } }, [_c("ant-textarea", { attrs: { "disabled": _vm.disabled, "value": _vm.value.descriptions }, on: { "input": function($event) {
2503
2586
  return _vm.changeVal("descriptions", $event.target.value);
2504
2587
  } } })], 1), _vm.showAiRule ? _c("ant-form-item", { scopedSlots: _vm._u([{ key: "label", fn: function() {
2505
- return [_vm._v(" " + _vm._s(_vm.$t("message.aiReviewRule")) + _vm._s(" ") + "(" + _vm._s(_vm.$t("message.optional")) + ") "), _c("ant-popover", { attrs: { "content": _vm.$t("message.aiReviewRuleHint") } }, [_c("ant-icon", { staticClass: "pt-3.5 text-classic cursor-pointer", attrs: { "type": "question-circle" } })], 1)];
2506
- }, proxy: true }], null, false, 974060645) }, [_c("ant-textarea", { attrs: { "disabled": _vm.disabled, "value": _vm.value.ruleDescription, "placeholder": _vm.$t("message.aiReviewRulePlaceholder") }, on: { "input": function($event) {
2588
+ return [_vm._v(" " + _vm._s(_vm.$t("message.aiReviewRule")) + _vm._s(" ") + "(" + _vm._s(_vm.$t("message.optional")) + ") "), _c("ant-popover", { attrs: { "content": _vm.$t("message.aiReviewRuleHint"), "overlay-style": { maxWidth: "380px" } } }, [_c("ant-icon", { staticClass: "pt-3.5 text-classic cursor-pointer", attrs: { "type": "question-circle" } })], 1), _vm.ruleIsLinked ? _c("span", { staticClass: "rule-link-tag" }, [_vm._v(_vm._s(_vm.$t("message.aiCheckLinkedToDesc")))]) : _c("span", { staticClass: "rule-link-tag rule-link-tag-edited" }, [_vm._v(" " + _vm._s(_vm.$t("message.aiCheckEditedTag")) + " \xB7 "), _c("a", { on: { "click": _vm.relinkRule } }, [_vm._v(_vm._s(_vm.$t("message.aiCheckRelink")))])])];
2589
+ }, proxy: true }], null, false, 2774678724) }, [_c("ant-textarea", { attrs: { "disabled": _vm.disabled, "value": _vm.value.ruleDescription, "placeholder": _vm.$t("message.aiReviewRulePlaceholder") }, on: { "input": function($event) {
2507
2590
  return _vm.changeRule($event.target.value);
2508
- } } })], 1) : _vm._e(), _c("ant-form-item", { attrs: { "label": "" + _vm.$t("message.attachment") + " (" + _vm.$t("message.optional") + ")" } }, [_c("a-file-uploader", { attrs: { "disabled": _vm.value.presetDocs != null || _vm.disabled, "value": _vm.value.presetDocs || _vm.value.sampleDocs, "uploadFilesFunc": _vm.uploadFilesFunc }, on: { "change": function($event) {
2591
+ } } }), _vm.checkRuleFunc ? _c("div", { staticClass: "rule-status-row" }, [_vm.ruleCheck.state === "checking" ? [_c("ant-icon", { staticClass: "mr-1", attrs: { "type": "loading" } }), _vm._v(_vm._s(_vm.$t("message.aiCheckChecking")) + "\u2026 ")] : _vm.ruleCheck.state === "ready" ? [_c("span", { staticClass: "rule-status-ok" }, [_c("ant-icon", { staticClass: "mr-1", attrs: { "type": "check-circle" } }), _vm._v(_vm._s(_vm.$t("message.aiCheckReady")) + " \xB7 " + _vm._s(_vm.ruleCheck.types.join(", ")) + " ")], 1), _c("a", { staticClass: "ml-2", on: { "click": _vm.checkRuleNow } }, [_vm._v(_vm._s(_vm.$t("message.aiCheckCheckAgain")))])] : _vm.ruleCheck.state === "wont" ? [_c("ant-popover", { attrs: { "content": _vm.$t("message.aiCheckWontReviewHint"), "overlay-style": { maxWidth: "380px" } } }, [_c("span", { staticClass: "rule-status-na" }, [_vm._v(_vm._s(_vm.$t("message.aiCheckWontReview")))])])] : _vm.ruleCheck.state === "error" ? [_c("span", { staticClass: "rule-status-na" }, [_vm._v(_vm._s(_vm.$t("message.aiCheckCheckFailed")))]), _c("a", { staticClass: "ml-2", on: { "click": _vm.checkRuleNow } }, [_vm._v(_vm._s(_vm.$t("message.aiCheckCheckAgain")))])] : (_vm.value.ruleDescription || "").trim() ? [_c("a", { on: { "click": _vm.checkRuleNow } }, [_vm._v(_vm._s(_vm.$t("message.aiCheckCheckNow")))]), _c("span", { staticClass: "rule-status-hint" }, [_vm._v(_vm._s(_vm.$t("message.aiCheckCheckNowHint")))])] : _vm._e()], 2) : _vm._e()], 1) : _vm._e(), _c("ant-form-item", { attrs: { "label": "" + _vm.$t("message.attachment") + " (" + _vm.$t("message.optional") + ")" } }, [_c("a-file-uploader", { attrs: { "disabled": _vm.value.presetDocs != null || _vm.disabled, "value": _vm.value.presetDocs || _vm.value.sampleDocs, "uploadFilesFunc": _vm.uploadFilesFunc }, on: { "change": function($event) {
2509
2592
  return _vm.changeVal("sampleDocs", $event);
2510
2593
  } } })], 1), _c("ant-form-item", { attrs: { "label": "" + _vm.$t("message.tags") + " (" + _vm.$t("message.optional") + ")" } }, [_c("ant-select", { attrs: { "disabled": _vm.disabled, "mode": "tags", "value": _vm.value.tagList || [], "options": [] }, on: { "change": function($event) {
2511
2594
  return _vm.changeVal("tagList", $event);
@@ -2513,19 +2596,19 @@ var render$8 = function() {
2513
2596
  return _vm.changeVal("allowSubmitWithoutFile", $event.target.checked);
2514
2597
  } } }, [_vm._v(" " + _vm._s(_vm.$t("message.notApplicable")) + " ")]) : _vm._e()], 1)], 1);
2515
2598
  };
2516
- var staticRenderFns$8 = [];
2599
+ var staticRenderFns$9 = [];
2517
2600
  var index_vue_vue_type_style_index_0_scoped_true_lang$3 = "";
2518
- const __cssModules$8 = {};
2519
- var __component__$8 = /* @__PURE__ */ normalizeComponent(__vue2_script$8, render$8, staticRenderFns$8, false, __vue2_injectStyles$8, "88b231b2", null, null);
2520
- function __vue2_injectStyles$8(context) {
2521
- for (let o in __cssModules$8) {
2522
- this[o] = __cssModules$8[o];
2601
+ const __cssModules$9 = {};
2602
+ var __component__$9 = /* @__PURE__ */ normalizeComponent(__vue2_script$9, render$9, staticRenderFns$9, false, __vue2_injectStyles$9, "ce2895d0", null, null);
2603
+ function __vue2_injectStyles$9(context) {
2604
+ for (let o in __cssModules$9) {
2605
+ this[o] = __cssModules$9[o];
2523
2606
  }
2524
2607
  }
2525
2608
  var TaskForm = /* @__PURE__ */ function() {
2526
- return __component__$8.exports;
2609
+ return __component__$9.exports;
2527
2610
  }();
2528
- var __vue2_script$7 = defineComponent({
2611
+ var __vue2_script$8 = defineComponent({
2529
2612
  name: "NewTask",
2530
2613
  components: {
2531
2614
  AFileUploader,
@@ -2579,6 +2662,10 @@ var __vue2_script$7 = defineComponent({
2579
2662
  showAiRule: {
2580
2663
  type: Boolean,
2581
2664
  default: false
2665
+ },
2666
+ checkRuleFunc: {
2667
+ type: Function,
2668
+ default: null
2582
2669
  }
2583
2670
  },
2584
2671
  setup(props, { emit }) {
@@ -2640,7 +2727,7 @@ var __vue2_script$7 = defineComponent({
2640
2727
  };
2641
2728
  }
2642
2729
  });
2643
- var render$7 = function() {
2730
+ var render$8 = function() {
2644
2731
  var _vm = this;
2645
2732
  var _h = _vm.$createElement;
2646
2733
  var _c = _vm._self._c || _h;
@@ -2652,25 +2739,25 @@ var render$7 = function() {
2652
2739
  } } }, [_vm._v(" " + _vm._s(_vm.$t("message.sendTaskEmail")) + " ")])], 1) : _vm._e(), _c("div", [_vm.hasDoubleConfirm ? _c("ant-popconfirm", { attrs: { "title": _vm.$t("message.updateTaskConfirm"), "placement": "top" }, on: { "confirm": _vm.submit } }, [_c("ant-button", { attrs: { "loading": _vm.loading, "type": "primary" } }, [_vm._v(_vm._s(_vm.$t("message.submit")) + " ")])], 1) : _c("ant-button", { attrs: { "loading": _vm.loading, "type": "primary" }, on: { "click": _vm.submit } }, [_vm._v(_vm._s(_vm.$t("message.submit")) + " ")]), _c("ant-button", { on: { "click": function($event) {
2653
2740
  return _vm.changeVisible(false);
2654
2741
  } } }, [_vm._v(_vm._s(_vm.$t("message.cancel")) + " ")])], 1)])];
2655
- }, proxy: true }]) }, [_c("task-form", { ref: "taskForm", attrs: { "upload-files-func": _vm.uploadFilesFunc, "law-firm-id": _vm.lawFirmId, "user-id": _vm.userId, "value": _vm.value.taskTemplateObj, "show-ai-rule": _vm.showAiRule }, on: { "update:value": _vm.updateFormValue } }), _vm.showAddToList ? _c("ant-checkbox", { attrs: { "checked": _vm.value.isAddedToTask }, on: { "change": function($event) {
2742
+ }, proxy: true }]) }, [_c("task-form", { ref: "taskForm", attrs: { "upload-files-func": _vm.uploadFilesFunc, "law-firm-id": _vm.lawFirmId, "user-id": _vm.userId, "value": _vm.value.taskTemplateObj, "show-ai-rule": _vm.showAiRule, "check-rule-func": _vm.checkRuleFunc }, on: { "update:value": _vm.updateFormValue } }), _vm.showAddToList ? _c("ant-checkbox", { attrs: { "checked": _vm.value.isAddedToTask }, on: { "change": function($event) {
2656
2743
  return _vm.changeVal("isAddedToTask", $event.target.checked);
2657
2744
  } } }, [_vm._v(" " + _vm._s(_vm.$t("message.addToTaskList")) + " ")]) : _vm._e(), _vm.showAllowSubmit ? _c("ant-checkbox", { staticClass: "ml-2", attrs: { "checked": _vm.value.allowSubmitWithoutFile }, on: { "change": function($event) {
2658
2745
  return _vm.changeVal("allowSubmitWithoutFile", $event.target.checked);
2659
2746
  } } }, [_vm._v(" " + _vm._s(_vm.$t("message.allowSubmitWithoutFile")) + " ")]) : _vm._e()], 1);
2660
2747
  };
2661
- var staticRenderFns$7 = [];
2748
+ var staticRenderFns$8 = [];
2662
2749
  var index_vue_vue_type_style_index_0_scoped_true_lang$2 = "";
2663
- const __cssModules$7 = {};
2664
- var __component__$7 = /* @__PURE__ */ normalizeComponent(__vue2_script$7, render$7, staticRenderFns$7, false, __vue2_injectStyles$7, "40b09048", null, null);
2665
- function __vue2_injectStyles$7(context) {
2666
- for (let o in __cssModules$7) {
2667
- this[o] = __cssModules$7[o];
2750
+ const __cssModules$8 = {};
2751
+ var __component__$8 = /* @__PURE__ */ normalizeComponent(__vue2_script$8, render$8, staticRenderFns$8, false, __vue2_injectStyles$8, "c6f522a6", null, null);
2752
+ function __vue2_injectStyles$8(context) {
2753
+ for (let o in __cssModules$8) {
2754
+ this[o] = __cssModules$8[o];
2668
2755
  }
2669
2756
  }
2670
2757
  var NewTask = /* @__PURE__ */ function() {
2671
- return __component__$7.exports;
2758
+ return __component__$8.exports;
2672
2759
  }();
2673
- var __vue2_script$6 = defineComponent({
2760
+ var __vue2_script$7 = defineComponent({
2674
2761
  name: "taskTemplateFilter",
2675
2762
  components: {
2676
2763
  AntInput: Input,
@@ -2716,7 +2803,7 @@ var __vue2_script$6 = defineComponent({
2716
2803
  };
2717
2804
  }
2718
2805
  });
2719
- var render$6 = function() {
2806
+ var render$7 = function() {
2720
2807
  var _vm = this;
2721
2808
  var _h = _vm.$createElement;
2722
2809
  var _c = _vm._self._c || _h;
@@ -2730,17 +2817,17 @@ var render$6 = function() {
2730
2817
  return _vm.changeVal("isEmployee", $event);
2731
2818
  } } }, [_c("ant-checkbox", { attrs: { "value": _vm.AssigneeTypes.ATTORNEY } }, [_vm._v(_vm._s(_vm.$t("message.attorney")) + " ")]), _c("ant-checkbox", { attrs: { "value": _vm.AssigneeTypes.BENEFICIARY } }, [_vm._v(_vm._s(_vm.$t("message.beneficiary")) + " ")]), _c("ant-checkbox", { attrs: { "value": _vm.AssigneeTypes.PETITIONER } }, [_vm._v(_vm._s(_vm.$t("message.petitioner")) + " ")]), _c("ant-checkbox", { attrs: { "value": _vm.AssigneeTypes.EMPTY_DEFAULT } }, [_vm._v(_vm._s(_vm.$t("message.none")) + " ")])], 1)], 1)], 1);
2732
2819
  };
2733
- var staticRenderFns$6 = [];
2820
+ var staticRenderFns$7 = [];
2734
2821
  var index_vue_vue_type_style_index_0_scoped_true_lang$1 = "";
2735
- const __cssModules$6 = {};
2736
- var __component__$6 = /* @__PURE__ */ normalizeComponent(__vue2_script$6, render$6, staticRenderFns$6, false, __vue2_injectStyles$6, "c5d917d8", null, null);
2737
- function __vue2_injectStyles$6(context) {
2738
- for (let o in __cssModules$6) {
2739
- this[o] = __cssModules$6[o];
2822
+ const __cssModules$7 = {};
2823
+ var __component__$7 = /* @__PURE__ */ normalizeComponent(__vue2_script$7, render$7, staticRenderFns$7, false, __vue2_injectStyles$7, "c5d917d8", null, null);
2824
+ function __vue2_injectStyles$7(context) {
2825
+ for (let o in __cssModules$7) {
2826
+ this[o] = __cssModules$7[o];
2740
2827
  }
2741
2828
  }
2742
2829
  var TaskTemplateFilter = /* @__PURE__ */ function() {
2743
- return __component__$6.exports;
2830
+ return __component__$7.exports;
2744
2831
  }();
2745
2832
  function useVm() {
2746
2833
  const scope = getCurrentScope();
@@ -2750,13 +2837,49 @@ function useT() {
2750
2837
  const vm = useVm();
2751
2838
  return (key) => vm.$i18n.t(key);
2752
2839
  }
2840
+ var __vue2_script$6 = defineComponent({
2841
+ name: "AiReviewBadge",
2842
+ components: {
2843
+ AntTag: Tag,
2844
+ AntIcon: Icon,
2845
+ AntTooltip: Tooltip
2846
+ },
2847
+ props: {
2848
+ status: {
2849
+ type: String,
2850
+ default: "notset"
2851
+ },
2852
+ types: {
2853
+ type: Array,
2854
+ default: () => []
2855
+ }
2856
+ }
2857
+ });
2858
+ var render$6 = function() {
2859
+ var _vm = this;
2860
+ var _h = _vm.$createElement;
2861
+ var _c = _vm._self._c || _h;
2862
+ return _c("span", { staticStyle: { "white-space": "nowrap" } }, [_vm.status === "ready" ? _c("ant-tooltip", { attrs: { "title": _vm.types.join(", ") } }, [_c("ant-tag", { staticStyle: { "margin": "0" }, attrs: { "color": "green" } }, [_c("ant-icon", { attrs: { "type": "check" } }), _vm._v(" " + _vm._s(_vm.$t("message.aiCheckReady"))), _vm.types.length ? [_vm._v(" \xB7 " + _vm._s(_vm.types.join(", ")))] : _vm._e()], 2)], 1) : _vm.status === "wont" ? _c("ant-tooltip", { attrs: { "title": _vm.$t("message.aiCheckWontReviewHint"), "overlay-style": { maxWidth: "320px" } } }, [_c("ant-tag", { staticStyle: { "margin": "0" } }, [_vm._v(_vm._s(_vm.$t("message.aiCheckWontReview")))])], 1) : _vm.status === "notchecked" ? _c("span", { staticStyle: { "font-size": "12px", "color": "#8c8c8c" } }, [_vm._v(" " + _vm._s(_vm.$t("message.aiCheckNotChecked")) + " ")]) : _c("span", { staticStyle: { "color": "#bfbfbf" } }, [_vm._v("\u2014")])], 1);
2863
+ };
2864
+ var staticRenderFns$6 = [];
2865
+ const __cssModules$6 = {};
2866
+ var __component__$6 = /* @__PURE__ */ normalizeComponent(__vue2_script$6, render$6, staticRenderFns$6, false, __vue2_injectStyles$6, null, null, null);
2867
+ function __vue2_injectStyles$6(context) {
2868
+ for (let o in __cssModules$6) {
2869
+ this[o] = __cssModules$6[o];
2870
+ }
2871
+ }
2872
+ var AiReviewBadge = /* @__PURE__ */ function() {
2873
+ return __component__$6.exports;
2874
+ }();
2753
2875
  var __vue2_script$5 = defineComponent({
2754
2876
  name: "TaskTablePure",
2755
2877
  components: {
2756
2878
  AntTable: Table,
2757
2879
  AntButton: Button,
2758
2880
  AssigneeTag,
2759
- TagsWithTooltip
2881
+ TagsWithTooltip,
2882
+ AiReviewBadge
2760
2883
  },
2761
2884
  props: {
2762
2885
  addedTasks: {
@@ -2782,12 +2905,16 @@ var __vue2_script$5 = defineComponent({
2782
2905
  showEdit: {
2783
2906
  type: Boolean,
2784
2907
  default: true
2908
+ },
2909
+ showAiRule: {
2910
+ type: Boolean,
2911
+ default: false
2785
2912
  }
2786
2913
  },
2787
2914
  setup(props) {
2788
2915
  const { addedTasks } = toRefs(props);
2789
2916
  const t = useT();
2790
- const columns = [
2917
+ const columns = computed(() => [
2791
2918
  {
2792
2919
  title: t("message.taskName"),
2793
2920
  dataIndex: "taskName",
@@ -2808,6 +2935,13 @@ var __vue2_script$5 = defineComponent({
2808
2935
  width: 120,
2809
2936
  scopedSlots: { customRender: "tagList" }
2810
2937
  },
2938
+ ...props.showAiRule ? [{
2939
+ title: t("message.aiCheckColumn"),
2940
+ dataIndex: "ruleDescription",
2941
+ key: "aiReview",
2942
+ width: 140,
2943
+ scopedSlots: { customRender: "aiReview" }
2944
+ }] : [],
2811
2945
  {
2812
2946
  title: "Operation",
2813
2947
  dataIndex: "id",
@@ -2815,11 +2949,22 @@ var __vue2_script$5 = defineComponent({
2815
2949
  width: 210,
2816
2950
  scopedSlots: { customRender: "operation" }
2817
2951
  }
2818
- ];
2952
+ ]);
2953
+ const badgeMap = ref({});
2954
+ watch(() => [props.dataSource, props.showAiRule], async ([list, on]) => {
2955
+ if (!on || !(list == null ? void 0 : list.length))
2956
+ return;
2957
+ const entries = await Promise.all(list.map(async (r) => [r.id, await badgeOf(r)]));
2958
+ const next = __spreadValues({}, badgeMap.value);
2959
+ for (const [id, badge] of entries)
2960
+ next[id] = badge;
2961
+ badgeMap.value = next;
2962
+ }, { immediate: true });
2819
2963
  const isTemplateAdded = (record) => addedTasks.value.some((added) => added.id === record.id);
2820
2964
  return {
2821
2965
  isTemplateAdded,
2822
- columns
2966
+ columns,
2967
+ badgeMap
2823
2968
  };
2824
2969
  }
2825
2970
  });
@@ -2835,6 +2980,8 @@ var render$5 = function() {
2835
2980
  return _c("span", {}, [_c("span", { staticStyle: { "word-break": "break-word" } }, [_vm._v(_vm._s(taskName))])]);
2836
2981
  } }, { key: "tagList", fn: function(tags) {
2837
2982
  return [_c("tags-with-tooltip", { attrs: { "tags": tags } })];
2983
+ } }, { key: "aiReview", fn: function(_, record) {
2984
+ return [_c("ai-review-badge", { attrs: { "status": (_vm.badgeMap[record.id] || {}).s || "notset", "types": (_vm.badgeMap[record.id] || {}).types || [] } })];
2838
2985
  } }, { key: "operation", fn: function(_, record) {
2839
2986
  return [_vm.showEdit && record.isGallery ? _c("span", { staticStyle: { "width": "82px", "display": "inline-block", "color": "#999" } }, [_vm._v(" Preset ")]) : _vm.showEdit ? _c("ant-button", { staticClass: "mr-2", attrs: { "disabled": _vm.isTemplateAdded(record), "size": "small" }, on: { "click": function($event) {
2840
2987
  return _vm.$emit("editTask", record);
@@ -2848,7 +2995,7 @@ var render$5 = function() {
2848
2995
  var staticRenderFns$5 = [];
2849
2996
  var TaskTablePure_vue_vue_type_style_index_0_scoped_true_lang = "";
2850
2997
  const __cssModules$5 = {};
2851
- var __component__$5 = /* @__PURE__ */ normalizeComponent(__vue2_script$5, render$5, staticRenderFns$5, false, __vue2_injectStyles$5, "58f5c207", null, null);
2998
+ var __component__$5 = /* @__PURE__ */ normalizeComponent(__vue2_script$5, render$5, staticRenderFns$5, false, __vue2_injectStyles$5, "7ca72cd5", null, null);
2852
2999
  function __vue2_injectStyles$5(context) {
2853
3000
  for (let o in __cssModules$5) {
2854
3001
  this[o] = __cssModules$5[o];
@@ -3008,6 +3155,10 @@ var __vue2_script$4 = defineComponent({
3008
3155
  withGallery: {
3009
3156
  type: Boolean,
3010
3157
  default: true
3158
+ },
3159
+ showAiRule: {
3160
+ type: Boolean,
3161
+ default: false
3011
3162
  }
3012
3163
  },
3013
3164
  setup(props, { emit }) {
@@ -3039,13 +3190,13 @@ var render$4 = function() {
3039
3190
  var _h = _vm.$createElement;
3040
3191
  var _c = _vm._self._c || _h;
3041
3192
  return _c("div", [_vm._t("default", function() {
3042
- return [_c("task-table-pure", { attrs: { "loading": _vm.loading, "data-source": _vm.dataSource, "pagination": _vm.pagination, "added-tasks": _vm.addedTasks }, on: { "editTask": _vm.editTask, "addTask": _vm.addTask, "removeTask": _vm.removeTask, "changePagination": _vm.changePagination } })];
3193
+ return [_c("task-table-pure", { attrs: { "loading": _vm.loading, "data-source": _vm.dataSource, "pagination": _vm.pagination, "added-tasks": _vm.addedTasks, "show-ai-rule": _vm.showAiRule }, on: { "editTask": _vm.editTask, "addTask": _vm.addTask, "removeTask": _vm.removeTask, "changePagination": _vm.changePagination } })];
3043
3194
  }, { "loading": _vm.loading, "dataSource": _vm.dataSource, "pagination": _vm.pagination, "AssigneeTypesText": _vm.AssigneeTypesText, "changePagination": _vm.changePagination })], 2);
3044
3195
  };
3045
3196
  var staticRenderFns$4 = [];
3046
3197
  var TaskTable_vue_vue_type_style_index_0_scoped_true_lang = "";
3047
3198
  const __cssModules$4 = {};
3048
- var __component__$4 = /* @__PURE__ */ normalizeComponent(__vue2_script$4, render$4, staticRenderFns$4, false, __vue2_injectStyles$4, "6662fabb", null, null);
3199
+ var __component__$4 = /* @__PURE__ */ normalizeComponent(__vue2_script$4, render$4, staticRenderFns$4, false, __vue2_injectStyles$4, "079a9f4b", null, null);
3049
3200
  function __vue2_injectStyles$4(context) {
3050
3201
  for (let o in __cssModules$4) {
3051
3202
  this[o] = __cssModules$4[o];
@@ -3096,6 +3247,10 @@ var __vue2_script$3 = defineComponent({
3096
3247
  showNewBtn: {
3097
3248
  type: Boolean,
3098
3249
  default: true
3250
+ },
3251
+ showAiRule: {
3252
+ type: Boolean,
3253
+ default: false
3099
3254
  }
3100
3255
  },
3101
3256
  setup(props, { emit }) {
@@ -3128,11 +3283,11 @@ var render$3 = function() {
3128
3283
  } } }, [_vm._v("Cancel ")]), _c("ant-badge", { attrs: { "count": _vm.addedTasks.length } }, [_c("ant-button", { attrs: { "disabled": _vm.addedTasks.length === 0, "type": "primary" }, on: { "click": function($event) {
3129
3284
  return _vm.$emit("update:reviewModalVisible", true);
3130
3285
  } } }, [_vm._v(" " + _vm._s(_vm.openReviewButtonText) + " ")])], 1)];
3131
- }, proxy: true }]) }, [_c("task-template-filter", { attrs: { "show-task-home-page-link": true, "show-task-setting-link": _vm.showTaskSettingLink, "conditions": _vm.conditions, "inline": !!_vm.showPage, "show-new-btn": _vm.showNewBtn }, on: { "update:conditions": function($event) {
3286
+ }, proxy: true }]) }, [_vm._t("header"), _c("task-template-filter", { attrs: { "show-task-home-page-link": true, "show-task-setting-link": _vm.showTaskSettingLink, "conditions": _vm.conditions, "inline": !!_vm.showPage, "show-new-btn": _vm.showNewBtn }, on: { "update:conditions": function($event) {
3132
3287
  _vm.conditions = $event;
3133
3288
  }, "update:newTaskVisible": function($event) {
3134
3289
  return _vm.$emit("update:newTaskVisible", true);
3135
- } } }), _c("task-table", { ref: "taskTable", attrs: { "conditions": _vm.conditions, "added-tasks": _vm.addedTasks, "law-firm-id": _vm.lawFirmId, "page-size": _vm.pageSize, "with-gallery": _vm.withGallery }, on: { "update:addedTasks": function($event) {
3290
+ } } }), _c("task-table", { ref: "taskTable", attrs: { "conditions": _vm.conditions, "added-tasks": _vm.addedTasks, "law-firm-id": _vm.lawFirmId, "page-size": _vm.pageSize, "with-gallery": _vm.withGallery, "show-ai-rule": _vm.showAiRule }, on: { "update:addedTasks": function($event) {
3136
3291
  return _vm.$emit("update:addedTasks", $event);
3137
3292
  }, "editTask": function($event) {
3138
3293
  return _vm.$emit("editTask", $event);
@@ -3142,12 +3297,12 @@ var render$3 = function() {
3142
3297
  var pagination = ref2.pagination;
3143
3298
  var changePagination = ref2.changePagination;
3144
3299
  return [_vm._t("default", null, { "editAction": _vm.editAction, "loading": loading, "dataSource": dataSource, "pagination": pagination, "changePagination": changePagination })];
3145
- } }], null, true) })], 1);
3300
+ } }], null, true) })], 2);
3146
3301
  };
3147
3302
  var staticRenderFns$3 = [];
3148
3303
  var MainModal_vue_vue_type_style_index_0_scoped_true_lang = "";
3149
3304
  const __cssModules$3 = {};
3150
- var __component__$3 = /* @__PURE__ */ normalizeComponent(__vue2_script$3, render$3, staticRenderFns$3, false, __vue2_injectStyles$3, "697d89e6", null, null);
3305
+ var __component__$3 = /* @__PURE__ */ normalizeComponent(__vue2_script$3, render$3, staticRenderFns$3, false, __vue2_injectStyles$3, "e416d0ae", null, null);
3151
3306
  function __vue2_injectStyles$3(context) {
3152
3307
  for (let o in __cssModules$3) {
3153
3308
  this[o] = __cssModules$3[o];
@@ -3394,6 +3549,10 @@ var __vue2_script$1 = defineComponent({
3394
3549
  showAiRule: {
3395
3550
  type: Boolean,
3396
3551
  default: false
3552
+ },
3553
+ checkRuleFunc: {
3554
+ type: Function,
3555
+ default: null
3397
3556
  }
3398
3557
  },
3399
3558
  setup(props, { emit }) {
@@ -3506,7 +3665,7 @@ var render$1 = function() {
3506
3665
  var _vm = this;
3507
3666
  var _h = _vm.$createElement;
3508
3667
  var _c = _vm._self._c || _h;
3509
- return _vm.lawFirmId != null ? _c("div", { attrs: { "id": "venus-component-task-cart" } }, [_c("main-modal", { ref: "mainModal", attrs: { "visible": _vm.visible, "show-page": _vm.pageMode, "page-size": _vm.pageSize, "law-firm-id": _vm.lawFirmId, "tempTask": _vm.tempTask, "show-new-btn": _vm.showNewBtn, "with-gallery": _vm.withGallery, "added-tasks": _vm.addedTasks, "newTaskVisible": _vm.newTaskVisible, "show-task-setting-link": _vm.showTaskSettingLink, "reviewModalVisible": _vm.reviewModalVisible, "open-review-button-text": _vm.openReviewButtonText }, on: { "update:tempTask": function($event) {
3668
+ return _vm.lawFirmId != null ? _c("div", { attrs: { "id": "venus-component-task-cart" } }, [_c("main-modal", { ref: "mainModal", attrs: { "visible": _vm.visible, "show-page": _vm.pageMode, "page-size": _vm.pageSize, "law-firm-id": _vm.lawFirmId, "tempTask": _vm.tempTask, "show-new-btn": _vm.showNewBtn, "with-gallery": _vm.withGallery, "added-tasks": _vm.addedTasks, "newTaskVisible": _vm.newTaskVisible, "show-task-setting-link": _vm.showTaskSettingLink, "reviewModalVisible": _vm.reviewModalVisible, "open-review-button-text": _vm.openReviewButtonText, "show-ai-rule": _vm.showAiRule }, on: { "update:tempTask": function($event) {
3510
3669
  _vm.tempTask = $event;
3511
3670
  }, "update:temp-task": function($event) {
3512
3671
  _vm.tempTask = $event;
@@ -3530,7 +3689,7 @@ var render$1 = function() {
3530
3689
  var pagination = ref2.pagination;
3531
3690
  var changePagination = ref2.changePagination;
3532
3691
  return [_vm._t("table", null, { "loading": loading, "dataSource": dataSource, "pagination": pagination, "changePagination": changePagination })];
3533
- } }], null, true) }), _c("review-modal", { ref: "reviewModal", attrs: { "adding": _vm.adding, "sendEmail": _vm.sendEmail, "allow-clear": _vm.allowClear, "tempTask": _vm.tempTask, "review-text": _vm.reviewText, "added-tasks": _vm.addedTasks, "showSendEmail": _vm.showSendEmail, "visible": _vm.reviewModalVisible, "newTaskVisible": _vm.newTaskVisible }, on: { "update:tempTask": function($event) {
3692
+ } }], null, true) }, [_c("template", { slot: "header" }, [_vm._t("header")], 2)], 2), _c("review-modal", { ref: "reviewModal", attrs: { "adding": _vm.adding, "sendEmail": _vm.sendEmail, "allow-clear": _vm.allowClear, "tempTask": _vm.tempTask, "review-text": _vm.reviewText, "added-tasks": _vm.addedTasks, "showSendEmail": _vm.showSendEmail, "visible": _vm.reviewModalVisible, "newTaskVisible": _vm.newTaskVisible }, on: { "update:tempTask": function($event) {
3534
3693
  _vm.tempTask = $event;
3535
3694
  }, "update:temp-task": function($event) {
3536
3695
  _vm.tempTask = $event;
@@ -3546,7 +3705,7 @@ var render$1 = function() {
3546
3705
  _vm.newTaskVisible = $event;
3547
3706
  }, "submit": _vm.endReviewing, "update:sendEmail": function($event) {
3548
3707
  return _vm.$emit("update:sendEmail", $event);
3549
- } } }), _c("new-task", { attrs: { "user-id": _vm.userId, "loading": _vm.submitting, "value": _vm.tempTask, "law-firm-id": _vm.lawFirmId, "visible": _vm.newTaskVisible, "upload-files-func": _vm.uploadFilesFunc, "has-double-confirm": !!_vm.tempTask.taskTemplateObj.id, "show-ai-rule": _vm.showAiRule }, on: { "update:value": function($event) {
3708
+ } } }), _c("new-task", { attrs: { "user-id": _vm.userId, "loading": _vm.submitting, "value": _vm.tempTask, "law-firm-id": _vm.lawFirmId, "visible": _vm.newTaskVisible, "upload-files-func": _vm.uploadFilesFunc, "has-double-confirm": !!_vm.tempTask.taskTemplateObj.id, "show-ai-rule": _vm.showAiRule, "check-rule-func": _vm.checkRuleFunc }, on: { "update:value": function($event) {
3550
3709
  _vm.tempTask = $event;
3551
3710
  }, "update:visible": function($event) {
3552
3711
  _vm.newTaskVisible = $event;
@@ -3555,7 +3714,7 @@ var render$1 = function() {
3555
3714
  var staticRenderFns$1 = [];
3556
3715
  var index_vue_vue_type_style_index_0_scoped_true_lang = "";
3557
3716
  const __cssModules$1 = {};
3558
- var __component__$1 = /* @__PURE__ */ normalizeComponent(__vue2_script$1, render$1, staticRenderFns$1, false, __vue2_injectStyles$1, "07a41818", null, null);
3717
+ var __component__$1 = /* @__PURE__ */ normalizeComponent(__vue2_script$1, render$1, staticRenderFns$1, false, __vue2_injectStyles$1, "b3369b56", null, null);
3559
3718
  function __vue2_injectStyles$1(context) {
3560
3719
  for (let o in __cssModules$1) {
3561
3720
  this[o] = __cssModules$1[o];
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "1.420.0",
6
+ "version": "1.422.0",
7
7
  "files": [
8
8
  "dist"
9
9
  ],