jobsys-explore 4.2.16 → 4.2.18
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/.changeset/stupid-wombats-count.md +5 -0
- package/.changeset/twenty-dolls-fix.md +5 -0
- package/CHANGELOG.md +19 -0
- package/components/form/ExSelect.jsx +2 -2
- package/components/search/ExSearch.jsx +2 -1
- package/components/uploader/ExUploader.jsx +2 -2
- package/components/utils.js +2 -2
- package/directives/auth.js +113 -0
- package/directives/index.js +4 -0
- package/dist/directives.cjs +2 -0
- package/dist/directives.cjs.map +1 -0
- package/dist/directives.js +46 -0
- package/dist/directives.js.map +1 -0
- package/dist/jobsys-explore.cjs +4 -4
- package/dist/jobsys-explore.cjs.map +1 -1
- package/dist/jobsys-explore.js +262 -262
- package/dist/jobsys-explore.js.map +1 -1
- package/package.json +5 -1
- package/playground/App.vue +2 -2
- package/playground/TestPagination.vue +5 -0
- package/playground/TestUploader.vue +13 -2
- package/vite.config.js +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# jobsys-explore
|
|
2
2
|
|
|
3
|
+
## 4.2.18
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- datetime and pagination search
|
|
8
|
+
- empty zero
|
|
9
|
+
- e
|
|
10
|
+
- add directive
|
|
11
|
+
- exuploader fixed disabled
|
|
12
|
+
|
|
13
|
+
## 4.2.17
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- datetime and pagination search
|
|
18
|
+
- empty zero
|
|
19
|
+
- e
|
|
20
|
+
- exuploader fixed disabled
|
|
21
|
+
|
|
3
22
|
## 4.2.16
|
|
4
23
|
|
|
5
24
|
### Patch Changes
|
|
@@ -3,7 +3,7 @@ import PickerWrapper, { pickerSlots } from "./PickerWrapper.jsx"
|
|
|
3
3
|
import { Button, Picker, Search } from "vant"
|
|
4
4
|
import { defaultFieldProps, defaultOptionsProps } from "../utils"
|
|
5
5
|
import { useFetch } from "../../hooks"
|
|
6
|
-
import { cloneDeep, find, isArray, isFunction, isString } from "lodash-es"
|
|
6
|
+
import { cloneDeep, find, isArray, isFunction, isNumber, isString } from "lodash-es"
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* ExSelect 下拉选择
|
|
@@ -113,7 +113,7 @@ export default defineComponent({
|
|
|
113
113
|
options = options.map((option) => {
|
|
114
114
|
if (isArray(option)) {
|
|
115
115
|
return option.map((op) => {
|
|
116
|
-
return isString(op) ? { value: op, label: op, text: op } : { text: op.label, ...op }
|
|
116
|
+
return isString(op) || isNumber(op) ? { value: op, label: op, text: op } : { text: op.label, ...op }
|
|
117
117
|
})
|
|
118
118
|
}
|
|
119
119
|
|
|
@@ -98,7 +98,7 @@ export default defineComponent({
|
|
|
98
98
|
value = isFunction(item.defaultValue) ? item.defaultValue() : item.defaultValue
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
if (item.type === "date" && !value) {
|
|
101
|
+
if ((item.type === "date" || item.type === "datetime") && !value) {
|
|
102
102
|
return null
|
|
103
103
|
}
|
|
104
104
|
|
|
@@ -120,6 +120,7 @@ export default defineComponent({
|
|
|
120
120
|
props.columns.forEach((item) => {
|
|
121
121
|
form[item.key] = searchItemDefaultValue(item)
|
|
122
122
|
})
|
|
123
|
+
console.log(props.columns, form)
|
|
123
124
|
state.queryForm = form
|
|
124
125
|
}
|
|
125
126
|
|
|
@@ -243,9 +243,9 @@ export default defineComponent({
|
|
|
243
243
|
accetp={props.accept}
|
|
244
244
|
uploadText={props.uploadText}
|
|
245
245
|
uploadIcon={props.uploadIcon}
|
|
246
|
-
|
|
246
|
+
disabled={props.disabled}
|
|
247
247
|
readonly={props.readonly}
|
|
248
|
-
deletable={!props.readonly}
|
|
248
|
+
deletable={!(props.readonly || props.disabled)}
|
|
249
249
|
showUpload={!props.readonly && !props.disabled}
|
|
250
250
|
afterRead={onSubmit}
|
|
251
251
|
onOversize={onOversize}
|
package/components/utils.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cloneDeep, isFunction, isString } from "lodash-es"
|
|
1
|
+
import { cloneDeep, isFunction, isNumber, isString } from "lodash-es"
|
|
2
2
|
import { watch } from "vue"
|
|
3
3
|
import { useCache, useFetch } from "../hooks"
|
|
4
4
|
|
|
@@ -118,7 +118,7 @@ export const prepareOptions = (options) => {
|
|
|
118
118
|
if (op.children?.length) {
|
|
119
119
|
op.children = prepareOptions(op.children)
|
|
120
120
|
}
|
|
121
|
-
return isString(op) ? { value: op, label: op, text: op } : { text: op.label, ...op }
|
|
121
|
+
return isString(op) || isNumber(op) ? { value: op, label: op, text: op } : { text: op.label, ...op }
|
|
122
122
|
})
|
|
123
123
|
return options
|
|
124
124
|
}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v-auth="'permissions1'"
|
|
3
|
+
* v-auth:all="['clickPermissions',['permission1', 'permission2']]"
|
|
4
|
+
* v-auth:any="['clickPermissions',['permission1', 'permission2']]"
|
|
5
|
+
* v-auth:none="['clickPermissions',['permission1', 'permission2']]"
|
|
6
|
+
* @type {*[]}
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
let defaultPermissions = []
|
|
10
|
+
|
|
11
|
+
const authDirective = {
|
|
12
|
+
beforeMount(el, binding) {
|
|
13
|
+
let { value } = binding
|
|
14
|
+
const { arg } = binding
|
|
15
|
+
|
|
16
|
+
if (!value) {
|
|
17
|
+
return
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
if (typeof value === "string" || value instanceof String) {
|
|
21
|
+
value = [value]
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
let [permissions, myPermissions] = value
|
|
25
|
+
|
|
26
|
+
if (!myPermissions) {
|
|
27
|
+
myPermissions = defaultPermissions
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
if (typeof permissions === "string" || permissions instanceof String) {
|
|
31
|
+
permissions = [permissions]
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// arg: 'any' 任何一个, 'all' 全部都有,默认, 'none' 都没有
|
|
35
|
+
|
|
36
|
+
if (arg === undefined || arg === "all") {
|
|
37
|
+
if (!permissions.every((p) => myPermissions.includes(p))) {
|
|
38
|
+
el.style.display = "none"
|
|
39
|
+
}
|
|
40
|
+
} else if (arg === "any") {
|
|
41
|
+
if (!permissions.some((p) => myPermissions.includes(p))) {
|
|
42
|
+
el.style.display = "none"
|
|
43
|
+
}
|
|
44
|
+
} else if (arg === "none") {
|
|
45
|
+
if (permissions.some((p) => myPermissions.includes(p))) {
|
|
46
|
+
el.style.display = "none"
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* 初始化权限集合
|
|
54
|
+
* @param permissions
|
|
55
|
+
*/
|
|
56
|
+
export function setDefaultPermissions(permissions) {
|
|
57
|
+
defaultPermissions = permissions
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
function auth(value, arg) {
|
|
61
|
+
if (!value) {
|
|
62
|
+
return true
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
if (typeof value === "string" || value instanceof String) {
|
|
66
|
+
value = [value]
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
let [permissions, myPermissions] = value
|
|
70
|
+
|
|
71
|
+
if (!myPermissions) {
|
|
72
|
+
myPermissions = defaultPermissions
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
if (typeof permissions === "string" || permissions instanceof String) {
|
|
76
|
+
permissions = [permissions]
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// arg: 'any' 任何一个, 'all' 全部都有,默认, 'none' 都没有
|
|
80
|
+
|
|
81
|
+
if (arg === undefined || arg === "all") {
|
|
82
|
+
if (!permissions.every((p) => myPermissions.includes(p))) {
|
|
83
|
+
return false
|
|
84
|
+
}
|
|
85
|
+
} else if (arg === "any") {
|
|
86
|
+
if (!permissions.some((p) => myPermissions.includes(p))) {
|
|
87
|
+
return false
|
|
88
|
+
}
|
|
89
|
+
} else if (arg === "none") {
|
|
90
|
+
if (permissions.some((p) => myPermissions.includes(p))) {
|
|
91
|
+
return false
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return true
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export default {
|
|
98
|
+
/**
|
|
99
|
+
*
|
|
100
|
+
* @param app
|
|
101
|
+
* @param {Object} [options]
|
|
102
|
+
* @param {Object} [options.defaultPermissions]
|
|
103
|
+
*/
|
|
104
|
+
install(app, options) {
|
|
105
|
+
app.directive("auth", authDirective)
|
|
106
|
+
app.config.globalProperties.$auth = auth
|
|
107
|
+
app.provide("auth", auth)
|
|
108
|
+
|
|
109
|
+
if (options && options.defaultPermissions) {
|
|
110
|
+
setDefaultPermissions(options.defaultPermissions)
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let o=[];const a={beforeMount(e,n){let{value:i}=n;const{arg:t}=n;if(!i)return;(typeof i=="string"||i instanceof String)&&(i=[i]);let[s,f]=i;f||(f=o),(typeof s=="string"||s instanceof String)&&(s=[s]),t===void 0||t==="all"?s.every(r=>f.includes(r))||(e.style.display="none"):t==="any"?s.some(r=>f.includes(r))||(e.style.display="none"):t==="none"&&s.some(r=>f.includes(r))&&(e.style.display="none")}};function u(e){o=e}function l(e,n){if(!e)return!0;(typeof e=="string"||e instanceof String)&&(e=[e]);let[i,t]=e;if(t||(t=o),(typeof i=="string"||i instanceof String)&&(i=[i]),n===void 0||n==="all"){if(!i.every(s=>t.includes(s)))return!1}else if(n==="any"){if(!i.some(s=>t.includes(s)))return!1}else if(n==="none"&&i.some(s=>t.includes(s)))return!1;return!0}const c={install(e,n){e.directive("auth",a),e.config.globalProperties.$auth=l,e.provide("auth",l),n&&n.defaultPermissions&&u(n.defaultPermissions)}};exports.auth=c;exports.setDefaultPermissions=u;
|
|
2
|
+
//# sourceMappingURL=directives.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directives.cjs","sources":["../directives/auth.js"],"sourcesContent":["/**\r\n * v-auth=\"'permissions1'\"\r\n * v-auth:all=\"['clickPermissions',['permission1', 'permission2']]\"\r\n * v-auth:any=\"['clickPermissions',['permission1', 'permission2']]\"\r\n * v-auth:none=\"['clickPermissions',['permission1', 'permission2']]\"\r\n * @type {*[]}\r\n */\r\n\r\nlet defaultPermissions = []\r\n\r\nconst authDirective = {\r\n\tbeforeMount(el, binding) {\r\n\t\tlet { value } = binding\r\n\t\tconst { arg } = binding\r\n\r\n\t\tif (!value) {\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\tif (typeof value === \"string\" || value instanceof String) {\r\n\t\t\tvalue = [value]\r\n\t\t}\r\n\r\n\t\tlet [permissions, myPermissions] = value\r\n\r\n\t\tif (!myPermissions) {\r\n\t\t\tmyPermissions = defaultPermissions\r\n\t\t}\r\n\r\n\t\tif (typeof permissions === \"string\" || permissions instanceof String) {\r\n\t\t\tpermissions = [permissions]\r\n\t\t}\r\n\r\n\t\t// arg: 'any' 任何一个, 'all' 全部都有,默认, 'none' 都没有\r\n\r\n\t\tif (arg === undefined || arg === \"all\") {\r\n\t\t\tif (!permissions.every((p) => myPermissions.includes(p))) {\r\n\t\t\t\tel.style.display = \"none\"\r\n\t\t\t}\r\n\t\t} else if (arg === \"any\") {\r\n\t\t\tif (!permissions.some((p) => myPermissions.includes(p))) {\r\n\t\t\t\tel.style.display = \"none\"\r\n\t\t\t}\r\n\t\t} else if (arg === \"none\") {\r\n\t\t\tif (permissions.some((p) => myPermissions.includes(p))) {\r\n\t\t\t\tel.style.display = \"none\"\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n}\r\n\r\n/**\r\n * 初始化权限集合\r\n * @param permissions\r\n */\r\nexport function setDefaultPermissions(permissions) {\r\n\tdefaultPermissions = permissions\r\n}\r\n\r\nfunction auth(value, arg) {\r\n\tif (!value) {\r\n\t\treturn true\r\n\t}\r\n\r\n\tif (typeof value === \"string\" || value instanceof String) {\r\n\t\tvalue = [value]\r\n\t}\r\n\r\n\tlet [permissions, myPermissions] = value\r\n\r\n\tif (!myPermissions) {\r\n\t\tmyPermissions = defaultPermissions\r\n\t}\r\n\r\n\tif (typeof permissions === \"string\" || permissions instanceof String) {\r\n\t\tpermissions = [permissions]\r\n\t}\r\n\r\n\t// arg: 'any' 任何一个, 'all' 全部都有,默认, 'none' 都没有\r\n\r\n\tif (arg === undefined || arg === \"all\") {\r\n\t\tif (!permissions.every((p) => myPermissions.includes(p))) {\r\n\t\t\treturn false\r\n\t\t}\r\n\t} else if (arg === \"any\") {\r\n\t\tif (!permissions.some((p) => myPermissions.includes(p))) {\r\n\t\t\treturn false\r\n\t\t}\r\n\t} else if (arg === \"none\") {\r\n\t\tif (permissions.some((p) => myPermissions.includes(p))) {\r\n\t\t\treturn false\r\n\t\t}\r\n\t}\r\n\treturn true\r\n}\r\n\r\nexport default {\r\n\t/**\r\n\t *\r\n\t * @param app\r\n\t * @param {Object} [options]\r\n\t * @param {Object} [options.defaultPermissions]\r\n\t */\r\n\tinstall(app, options) {\r\n\t\tapp.directive(\"auth\", authDirective)\r\n\t\tapp.config.globalProperties.$auth = auth\r\n\t\tapp.provide(\"auth\", auth)\r\n\r\n\t\tif (options && options.defaultPermissions) {\r\n\t\t\tsetDefaultPermissions(options.defaultPermissions)\r\n\t\t}\r\n\t},\r\n}\r\n"],"names":["defaultPermissions","authDirective","el","binding","value","arg","permissions","myPermissions","p","setDefaultPermissions","auth","auth$1","app","options"],"mappings":"gFAQA,IAAIA,EAAqB,CAAE,EAE3B,MAAMC,EAAgB,CACrB,YAAYC,EAAIC,EAAS,CACxB,GAAI,CAAE,MAAAC,CAAK,EAAKD,EAChB,KAAM,CAAE,IAAAE,CAAG,EAAKF,EAEhB,GAAI,CAACC,EACJ,QAGG,OAAOA,GAAU,UAAYA,aAAiB,UACjDA,EAAQ,CAACA,CAAK,GAGf,GAAI,CAACE,EAAaC,CAAa,EAAIH,EAE9BG,IACJA,EAAgBP,IAGb,OAAOM,GAAgB,UAAYA,aAAuB,UAC7DA,EAAc,CAACA,CAAW,GAKvBD,IAAQ,QAAaA,IAAQ,MAC3BC,EAAY,MAAOE,GAAMD,EAAc,SAASC,CAAC,CAAC,IACtDN,EAAG,MAAM,QAAU,QAEVG,IAAQ,MACbC,EAAY,KAAME,GAAMD,EAAc,SAASC,CAAC,CAAC,IACrDN,EAAG,MAAM,QAAU,QAEVG,IAAQ,QACdC,EAAY,KAAME,GAAMD,EAAc,SAASC,CAAC,CAAC,IACpDN,EAAG,MAAM,QAAU,OAGrB,CACF,EAMO,SAASO,EAAsBH,EAAa,CAClDN,EAAqBM,CACtB,CAEA,SAASI,EAAKN,EAAOC,EAAK,CACzB,GAAI,CAACD,EACJ,MAAO,IAGJ,OAAOA,GAAU,UAAYA,aAAiB,UACjDA,EAAQ,CAACA,CAAK,GAGf,GAAI,CAACE,EAAaC,CAAa,EAAIH,EAYnC,GAVKG,IACJA,EAAgBP,IAGb,OAAOM,GAAgB,UAAYA,aAAuB,UAC7DA,EAAc,CAACA,CAAW,GAKvBD,IAAQ,QAAaA,IAAQ,OAChC,GAAI,CAACC,EAAY,MAAOE,GAAMD,EAAc,SAASC,CAAC,CAAC,EACtD,MAAO,WAEEH,IAAQ,OAClB,GAAI,CAACC,EAAY,KAAME,GAAMD,EAAc,SAASC,CAAC,CAAC,EACrD,MAAO,WAEEH,IAAQ,QACdC,EAAY,KAAME,GAAMD,EAAc,SAASC,CAAC,CAAC,EACpD,MAAO,GAGT,MAAO,EACR,CAEA,MAAeG,EAAA,CAOd,QAAQC,EAAKC,EAAS,CACrBD,EAAI,UAAU,OAAQX,CAAa,EACnCW,EAAI,OAAO,iBAAiB,MAAQF,EACpCE,EAAI,QAAQ,OAAQF,CAAI,EAEpBG,GAAWA,EAAQ,oBACtBJ,EAAsBI,EAAQ,kBAAkB,CAEjD,CACF"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
let o = [];
|
|
2
|
+
const u = {
|
|
3
|
+
beforeMount(e, n) {
|
|
4
|
+
let { value: i } = n;
|
|
5
|
+
const { arg: t } = n;
|
|
6
|
+
if (!i)
|
|
7
|
+
return;
|
|
8
|
+
(typeof i == "string" || i instanceof String) && (i = [i]);
|
|
9
|
+
let [s, f] = i;
|
|
10
|
+
f || (f = o), (typeof s == "string" || s instanceof String) && (s = [s]), t === void 0 || t === "all" ? s.every((r) => f.includes(r)) || (e.style.display = "none") : t === "any" ? s.some((r) => f.includes(r)) || (e.style.display = "none") : t === "none" && s.some((r) => f.includes(r)) && (e.style.display = "none");
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
function a(e) {
|
|
14
|
+
o = e;
|
|
15
|
+
}
|
|
16
|
+
function l(e, n) {
|
|
17
|
+
if (!e)
|
|
18
|
+
return !0;
|
|
19
|
+
(typeof e == "string" || e instanceof String) && (e = [e]);
|
|
20
|
+
let [i, t] = e;
|
|
21
|
+
if (t || (t = o), (typeof i == "string" || i instanceof String) && (i = [i]), n === void 0 || n === "all") {
|
|
22
|
+
if (!i.every((s) => t.includes(s)))
|
|
23
|
+
return !1;
|
|
24
|
+
} else if (n === "any") {
|
|
25
|
+
if (!i.some((s) => t.includes(s)))
|
|
26
|
+
return !1;
|
|
27
|
+
} else if (n === "none" && i.some((s) => t.includes(s)))
|
|
28
|
+
return !1;
|
|
29
|
+
return !0;
|
|
30
|
+
}
|
|
31
|
+
const c = {
|
|
32
|
+
/**
|
|
33
|
+
*
|
|
34
|
+
* @param app
|
|
35
|
+
* @param {Object} [options]
|
|
36
|
+
* @param {Object} [options.defaultPermissions]
|
|
37
|
+
*/
|
|
38
|
+
install(e, n) {
|
|
39
|
+
e.directive("auth", u), e.config.globalProperties.$auth = l, e.provide("auth", l), n && n.defaultPermissions && a(n.defaultPermissions);
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
export {
|
|
43
|
+
c as auth,
|
|
44
|
+
a as setDefaultPermissions
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=directives.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directives.js","sources":["../directives/auth.js"],"sourcesContent":["/**\r\n * v-auth=\"'permissions1'\"\r\n * v-auth:all=\"['clickPermissions',['permission1', 'permission2']]\"\r\n * v-auth:any=\"['clickPermissions',['permission1', 'permission2']]\"\r\n * v-auth:none=\"['clickPermissions',['permission1', 'permission2']]\"\r\n * @type {*[]}\r\n */\r\n\r\nlet defaultPermissions = []\r\n\r\nconst authDirective = {\r\n\tbeforeMount(el, binding) {\r\n\t\tlet { value } = binding\r\n\t\tconst { arg } = binding\r\n\r\n\t\tif (!value) {\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\tif (typeof value === \"string\" || value instanceof String) {\r\n\t\t\tvalue = [value]\r\n\t\t}\r\n\r\n\t\tlet [permissions, myPermissions] = value\r\n\r\n\t\tif (!myPermissions) {\r\n\t\t\tmyPermissions = defaultPermissions\r\n\t\t}\r\n\r\n\t\tif (typeof permissions === \"string\" || permissions instanceof String) {\r\n\t\t\tpermissions = [permissions]\r\n\t\t}\r\n\r\n\t\t// arg: 'any' 任何一个, 'all' 全部都有,默认, 'none' 都没有\r\n\r\n\t\tif (arg === undefined || arg === \"all\") {\r\n\t\t\tif (!permissions.every((p) => myPermissions.includes(p))) {\r\n\t\t\t\tel.style.display = \"none\"\r\n\t\t\t}\r\n\t\t} else if (arg === \"any\") {\r\n\t\t\tif (!permissions.some((p) => myPermissions.includes(p))) {\r\n\t\t\t\tel.style.display = \"none\"\r\n\t\t\t}\r\n\t\t} else if (arg === \"none\") {\r\n\t\t\tif (permissions.some((p) => myPermissions.includes(p))) {\r\n\t\t\t\tel.style.display = \"none\"\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n}\r\n\r\n/**\r\n * 初始化权限集合\r\n * @param permissions\r\n */\r\nexport function setDefaultPermissions(permissions) {\r\n\tdefaultPermissions = permissions\r\n}\r\n\r\nfunction auth(value, arg) {\r\n\tif (!value) {\r\n\t\treturn true\r\n\t}\r\n\r\n\tif (typeof value === \"string\" || value instanceof String) {\r\n\t\tvalue = [value]\r\n\t}\r\n\r\n\tlet [permissions, myPermissions] = value\r\n\r\n\tif (!myPermissions) {\r\n\t\tmyPermissions = defaultPermissions\r\n\t}\r\n\r\n\tif (typeof permissions === \"string\" || permissions instanceof String) {\r\n\t\tpermissions = [permissions]\r\n\t}\r\n\r\n\t// arg: 'any' 任何一个, 'all' 全部都有,默认, 'none' 都没有\r\n\r\n\tif (arg === undefined || arg === \"all\") {\r\n\t\tif (!permissions.every((p) => myPermissions.includes(p))) {\r\n\t\t\treturn false\r\n\t\t}\r\n\t} else if (arg === \"any\") {\r\n\t\tif (!permissions.some((p) => myPermissions.includes(p))) {\r\n\t\t\treturn false\r\n\t\t}\r\n\t} else if (arg === \"none\") {\r\n\t\tif (permissions.some((p) => myPermissions.includes(p))) {\r\n\t\t\treturn false\r\n\t\t}\r\n\t}\r\n\treturn true\r\n}\r\n\r\nexport default {\r\n\t/**\r\n\t *\r\n\t * @param app\r\n\t * @param {Object} [options]\r\n\t * @param {Object} [options.defaultPermissions]\r\n\t */\r\n\tinstall(app, options) {\r\n\t\tapp.directive(\"auth\", authDirective)\r\n\t\tapp.config.globalProperties.$auth = auth\r\n\t\tapp.provide(\"auth\", auth)\r\n\r\n\t\tif (options && options.defaultPermissions) {\r\n\t\t\tsetDefaultPermissions(options.defaultPermissions)\r\n\t\t}\r\n\t},\r\n}\r\n"],"names":["defaultPermissions","authDirective","el","binding","value","arg","permissions","myPermissions","p","setDefaultPermissions","auth","auth$1","app","options"],"mappings":"AAQA,IAAIA,IAAqB,CAAE;AAE3B,MAAMC,IAAgB;AAAA,EACrB,YAAYC,GAAIC,GAAS;AACxB,QAAI,EAAE,OAAAC,EAAK,IAAKD;AAChB,UAAM,EAAE,KAAAE,EAAG,IAAKF;AAEhB,QAAI,CAACC;AACJ;AAGD,KAAI,OAAOA,KAAU,YAAYA,aAAiB,YACjDA,IAAQ,CAACA,CAAK;AAGf,QAAI,CAACE,GAAaC,CAAa,IAAIH;AAEnC,IAAKG,MACJA,IAAgBP,KAGb,OAAOM,KAAgB,YAAYA,aAAuB,YAC7DA,IAAc,CAACA,CAAW,IAKvBD,MAAQ,UAAaA,MAAQ,QAC3BC,EAAY,MAAM,CAACE,MAAMD,EAAc,SAASC,CAAC,CAAC,MACtDN,EAAG,MAAM,UAAU,UAEVG,MAAQ,QACbC,EAAY,KAAK,CAACE,MAAMD,EAAc,SAASC,CAAC,CAAC,MACrDN,EAAG,MAAM,UAAU,UAEVG,MAAQ,UACdC,EAAY,KAAK,CAACE,MAAMD,EAAc,SAASC,CAAC,CAAC,MACpDN,EAAG,MAAM,UAAU;AAAA,EAGrB;AACF;AAMO,SAASO,EAAsBH,GAAa;AAClD,EAAAN,IAAqBM;AACtB;AAEA,SAASI,EAAKN,GAAOC,GAAK;AACzB,MAAI,CAACD;AACJ,WAAO;AAGR,GAAI,OAAOA,KAAU,YAAYA,aAAiB,YACjDA,IAAQ,CAACA,CAAK;AAGf,MAAI,CAACE,GAAaC,CAAa,IAAIH;AAYnC,MAVKG,MACJA,IAAgBP,KAGb,OAAOM,KAAgB,YAAYA,aAAuB,YAC7DA,IAAc,CAACA,CAAW,IAKvBD,MAAQ,UAAaA,MAAQ;AAChC,QAAI,CAACC,EAAY,MAAM,CAACE,MAAMD,EAAc,SAASC,CAAC,CAAC;AACtD,aAAO;AAAA,aAEEH,MAAQ;AAClB,QAAI,CAACC,EAAY,KAAK,CAACE,MAAMD,EAAc,SAASC,CAAC,CAAC;AACrD,aAAO;AAAA,aAEEH,MAAQ,UACdC,EAAY,KAAK,CAACE,MAAMD,EAAc,SAASC,CAAC,CAAC;AACpD,WAAO;AAGT,SAAO;AACR;AAEA,MAAeG,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOd,QAAQC,GAAKC,GAAS;AACrB,IAAAD,EAAI,UAAU,QAAQX,CAAa,GACnCW,EAAI,OAAO,iBAAiB,QAAQF,GACpCE,EAAI,QAAQ,QAAQF,CAAI,GAEpBG,KAAWA,EAAQ,sBACtBJ,EAAsBI,EAAQ,kBAAkB;AAAA,EAEjD;AACF;"}
|