@ditari/bsui 1.1.19 → 1.1.21
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/CHANGELOG.md +12 -0
- package/dist/cjs/desensitize/Desensitize.cjs +28 -6
- package/dist/cjs/desensitize/Desensitize.cjs.map +1 -1
- package/dist/cjs/desensitize/Desensitize.d.ts +20 -2
- package/dist/css/desensitize/style/index.css +1 -1
- package/dist/css/index.css +1 -1
- package/dist/esm/desensitize/Desensitize.d.ts +20 -2
- package/dist/esm/desensitize/Desensitize.mjs +28 -6
- package/dist/esm/desensitize/Desensitize.mjs.map +1 -1
- package/dist/style/desensitize/style/index.scss +1 -0
- package/package.json +1 -1
- package/src/desensitize/Desensitize.tsx +29 -7
- package/src/desensitize/style/index.scss +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -25,11 +25,21 @@ var Desensitize = /* @__PURE__ */ vue.defineComponent({
|
|
|
25
25
|
type: String,
|
|
26
26
|
default: "*"
|
|
27
27
|
},
|
|
28
|
-
//
|
|
28
|
+
// 替换规则 id 和mobile
|
|
29
29
|
rule: {
|
|
30
30
|
type: String,
|
|
31
31
|
required: true
|
|
32
32
|
},
|
|
33
|
+
// 正则表达式
|
|
34
|
+
regex: {
|
|
35
|
+
type: String,
|
|
36
|
+
default: ""
|
|
37
|
+
},
|
|
38
|
+
// 替换方式
|
|
39
|
+
regexValue: {
|
|
40
|
+
type: String,
|
|
41
|
+
default: ""
|
|
42
|
+
},
|
|
33
43
|
eye: {
|
|
34
44
|
type: Boolean,
|
|
35
45
|
default: false
|
|
@@ -40,13 +50,25 @@ var Desensitize = /* @__PURE__ */ vue.defineComponent({
|
|
|
40
50
|
const desensitizedString = vue.computed(() => {
|
|
41
51
|
const value = props.value;
|
|
42
52
|
const rule = props.rule;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
53
|
+
const regex = props.regex;
|
|
54
|
+
const regexValue = props.regexValue;
|
|
55
|
+
let str = "";
|
|
56
|
+
if (!value) {
|
|
57
|
+
return "";
|
|
58
|
+
}
|
|
59
|
+
if (rule) {
|
|
60
|
+
switch (rule) {
|
|
61
|
+
case "mobile":
|
|
62
|
+
str = value.replace(/(\d{3})\d{4}(\d{4})/, "$1*****$2");
|
|
63
|
+
break;
|
|
64
|
+
case "id":
|
|
65
|
+
str = value.replace(/(\d{4})\d{10}(\w{4})/, "$1*****$2");
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
47
68
|
} else {
|
|
48
|
-
|
|
69
|
+
str = value.replace(regex, regexValue);
|
|
49
70
|
}
|
|
71
|
+
return str;
|
|
50
72
|
});
|
|
51
73
|
return () => vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
|
|
52
74
|
"class": baseClassName
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Desensitize.cjs","sources":["../../../src/desensitize/Desensitize.tsx"],"sourcesContent":["/**\n * 脱敏\n * @author 余春林\n */\nimport { defineComponent, computed, ref } from \"vue\";\nimport { EyeOutlined, EyeInvisibleOutlined } from \"@ant-design/icons-vue\";\nimport { prefixName } from \"../theme\";\n\n//class名称\nconst baseClassName = `${prefixName}-desensitize`;\nexport default defineComponent({\n name: \"DDesensitize\",\n components: {\n EyeOutlined,\n EyeInvisibleOutlined\n },\n props: {\n value: {\n // type: [string,number] 可以使用PropType 来声明对象类型\n // type: String as () => string | number,\n type: String,\n required: true\n },\n // 替换样式\n style: {\n type: String,\n default: \"*\"\n },\n //
|
|
1
|
+
{"version":3,"file":"Desensitize.cjs","sources":["../../../src/desensitize/Desensitize.tsx"],"sourcesContent":["/**\n * 脱敏\n * @author 余春林\n */\nimport { defineComponent, computed, ref } from \"vue\";\nimport { EyeOutlined, EyeInvisibleOutlined } from \"@ant-design/icons-vue\";\nimport { prefixName } from \"../theme\";\n\n//class名称\nconst baseClassName = `${prefixName}-desensitize`;\nexport default defineComponent({\n name: \"DDesensitize\",\n components: {\n EyeOutlined,\n EyeInvisibleOutlined\n },\n props: {\n value: {\n // type: [string,number] 可以使用PropType 来声明对象类型\n // type: String as () => string | number,\n type: String as () => string | undefined,\n required: true\n },\n // 替换样式\n style: {\n type: String,\n default: \"*\"\n },\n // 替换规则 id 和mobile\n rule: {\n type: String,\n required: true\n },\n // 正则表达式\n regex: {\n type: String,\n default: \"\"\n },\n // 替换方式\n regexValue: {\n type: String,\n default: \"\"\n },\n eye: {\n type: Boolean,\n default: false\n }\n },\n setup(props) {\n // 控制显示隐藏脱敏或者不脱敏\n const invisible = ref(true);\n const desensitizedString = computed(() => {\n const value = props.value;\n const rule = props.rule;\n const regex = props.regex;\n const regexValue = props.regexValue;\n let str = \"\";\n if (!value) {\n return \"\";\n }\n if (rule) {\n switch (rule) {\n case \"mobile\":\n str = value.replace(/(\\d{3})\\d{4}(\\d{4})/, \"$1*****$2\");\n break;\n case \"id\":\n str = value.replace(/(\\d{4})\\d{10}(\\w{4})/, \"$1*****$2\");\n break;\n }\n } else {\n str = value.replace(regex, regexValue);\n }\n return str;\n });\n return () => (\n <>\n <div class={baseClassName}>\n <span class={\"value\"}>\n {invisible.value ? desensitizedString.value : props.value}\n </span>\n {props.eye ? (\n <span>\n <eye-outlined\n onClick={() => (invisible.value = !invisible.value)}\n v-show={!invisible.value}\n />\n <eye-invisible-outlined\n onClick={() => (invisible.value = !invisible.value)}\n v-show={invisible.value}\n />\n </span>\n ) : undefined}\n </div>\n </>\n );\n }\n});\n"],"names":["baseClassName","prefixName","defineComponent","name","components","EyeOutlined","EyeInvisibleOutlined","props","value","type","String","required","style","default","rule","regex","regexValue","eye","Boolean","setup","invisible","ref","desensitizedString","computed","str","replace","_createVNode","_Fragment","_withDirectives","_resolveComponent","onClick","_vShow","undefined"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
declare const _default: import("vue").DefineComponent<{
|
|
2
2
|
value: {
|
|
3
|
-
type:
|
|
3
|
+
type: () => string | undefined;
|
|
4
4
|
required: true;
|
|
5
5
|
};
|
|
6
6
|
style: {
|
|
@@ -11,13 +11,21 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
11
11
|
type: StringConstructor;
|
|
12
12
|
required: true;
|
|
13
13
|
};
|
|
14
|
+
regex: {
|
|
15
|
+
type: StringConstructor;
|
|
16
|
+
default: string;
|
|
17
|
+
};
|
|
18
|
+
regexValue: {
|
|
19
|
+
type: StringConstructor;
|
|
20
|
+
default: string;
|
|
21
|
+
};
|
|
14
22
|
eye: {
|
|
15
23
|
type: BooleanConstructor;
|
|
16
24
|
default: boolean;
|
|
17
25
|
};
|
|
18
26
|
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
19
27
|
value: {
|
|
20
|
-
type:
|
|
28
|
+
type: () => string | undefined;
|
|
21
29
|
required: true;
|
|
22
30
|
};
|
|
23
31
|
style: {
|
|
@@ -28,12 +36,22 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
28
36
|
type: StringConstructor;
|
|
29
37
|
required: true;
|
|
30
38
|
};
|
|
39
|
+
regex: {
|
|
40
|
+
type: StringConstructor;
|
|
41
|
+
default: string;
|
|
42
|
+
};
|
|
43
|
+
regexValue: {
|
|
44
|
+
type: StringConstructor;
|
|
45
|
+
default: string;
|
|
46
|
+
};
|
|
31
47
|
eye: {
|
|
32
48
|
type: BooleanConstructor;
|
|
33
49
|
default: boolean;
|
|
34
50
|
};
|
|
35
51
|
}>>, {
|
|
36
52
|
style: string;
|
|
53
|
+
regex: string;
|
|
54
|
+
regexValue: string;
|
|
37
55
|
eye: boolean;
|
|
38
56
|
}, {}>;
|
|
39
57
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ditari-bsui-desensitize .value{padding:0 4px}
|
|
1
|
+
.ditari-bsui-desensitize{display:inline-block}.ditari-bsui-desensitize .value{padding:0 4px}
|
package/dist/css/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.ditari-bsui-grid{position:relative;display:grid}.ditari-bsui-grid .ditari-bsui-grid--item{border:1px solid #4e4e4e;margin-left:-1px;margin-top:-1px}.ditari-bsui-grid-form .ant-form-item{margin-bottom:0;height:100%}.ditari-bsui-grid-form .ant-form-item .ant-form-item-label{border-right:1px solid #4e4e4e}.ditari-bsui-grid-form .ant-form-item .ant-input,.ditari-bsui-grid-form .ant-form-item .ant-select-selector,.ditari-bsui-grid-form .ant-form-item .ant-input-number{border:0;border-radius:0}.ditari-bsui-grid-form .ant-form-item .ant-input:focus,.ditari-bsui-grid-form .ant-form-item .ant-select-selector:focus,.ditari-bsui-grid-form .ant-form-item .ant-input-number:focus{box-shadow:0 0 0 2px #1890ff}.ditari-bsui-grid-form .ant-form-item .ant-input .ant-input-number-input,.ditari-bsui-grid-form .ant-form-item .ant-select-selector .ant-input-number-input,.ditari-bsui-grid-form .ant-form-item .ant-input-number .ant-input-number-input{border:0;border-radius:0}.ditari-bsui-grid-form .ant-form-item .ant-input .ant-input-number-input:focus,.ditari-bsui-grid-form .ant-form-item .ant-select-selector .ant-input-number-input:focus,.ditari-bsui-grid-form .ant-form-item .ant-input-number .ant-input-number-input:focus{box-shadow:0 0 0 2px #1890ff}.ditari-bsui-grid-form .ant-form-item .ant-input[disabled]{color:#525252}.ditari-bsui-grid-form .ant-form-item-has-error .ant-form-item-explain{display:block}.ditari-bsui-grid-form .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{box-shadow:0 0 0 2px #1890ff}.ditari-bsui-grid-form .ant-form-item-has-error :not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus{box-shadow:0 0 0px 2px red;border-radius:0}.ditari-bsui-grid-form .ant-form-item-has-error :not(.ant-input-disabled):not(.ant-input-borderless).ant-input{box-shadow:0 0 0px 2px #ff4d4f}.ditari-menu{height:calc(100vh - 240px - 0px);overflow:scroll}.ditari-menu::-webkit-scrollbar{width:0 !important;display:none}.ditari-layout-sider{background-color:#162157}.ditari-layout-sider .ant-menu-dark{background-color:#162157}.ditari-layout-sider .ant-menu-dark .ant-menu-inline.ant-menu-sub{background-color:#101847}.ditari-bsui-breadcrumb .ant-breadcrumb-separator{display:none}.ditari-bsui-breadcrumb .breadcrumb{display:flex}.ditari-bsui-breadcrumb .breadcrumb .breadcrumb-item{color:#333}.ditari-bsui-breadcrumb .breadcrumb .breadcrumb-item:first-child .breadcrumb-link{border-radius:6px 0 0 6px;clip-path:polygon(0 0, calc(100% - 8px) 0, 100% 50%, calc(100% - 8px) 100%, 0 100%)}.ditari-bsui-breadcrumb .breadcrumb .breadcrumb-item:last-child:not(:first-child) .breadcrumb-link{border-radius:0 6px 6px 0;clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%, 8px 50%)}.ditari-bsui-breadcrumb .breadcrumb-link{display:block;padding:4px 12px;background:#f0f2f5;clip-path:polygon(0 0, calc(100% - 8px) 0, 100% 50%, calc(100% - 8px) 100%, 0 100%, 8px 50%)}.ditari-bsui-breadcrumb a.breadcrumb-link{color:#2589ff}.breadcrumb-enter-active{transition:all .25s}.breadcrumb-enter-from,.breadcrumb-leave-active{opacity:0;transform:translateX(30px) skewX(-50deg)}.ditari-list-layout{padding:20px;height:100%}.ditari-list-layout .wrapper{display:flex;flex-direction:column}.ditari-list-layout .ditari-list-table{flex:1}.ditari-list-layout .ditari-list-table .ant-card-body{display:flex;flex-direction:column;height:100%}.ditari-list-layout .ditari-list-form .ant-card-body{padding-bottom:0}.ditari-list-layout .wrapper{height:100%}.ditari-ant-back-top{right:4px;bottom:120px}.ditari-layout{height:100%}.ditari-layout .ditari-layout-sider{position:fixed;left:0;top:0;bottom:0;z-index:1}.ditari-layout .ditari-top-layout{position:fixed;left:200px;right:0;z-index:210}.ditari-layout .ditari-layout-content{margin-left:200px;margin-top:84px}.fade-enter-active,.fade-leave-active{transition:opacity .1s ease}.fade-enter-from,.fade-leave-to{opacity:0}.main-enter-active{transition:.2s}.main-leave-active{transition:.15s}.main-enter-from{opacity:0;margin-left:-20px}.main-leave-to{opacity:0;margin-left:20px}.ditari-layout-header{display:flex;justify-content:space-between;align-items:center;padding:0 15px;height:42px;border-bottom:1px solid #f0f2f5;background-color:#fff}.ditari-layout-header .ditari-layout-header-left{display:flex;justify-content:center}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed{margin-right:20px;cursor:pointer;width:42px;line-height:30px;text-align:center;transition-duration:.2s}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed:hover{background-color:#f0f2f5;border-radius:4px}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed .icon{transition-duration:.2s}.ditari-user-menu{display:flex;align-items:center;height:100%}.ditari-user-menu .ditari-operation-items{margin-left:10px;height:100%}.ditari-user-menu .ditari-operation-items .ant-dropdown-link{display:flex;align-items:center;justify-content:center;height:100%}.collapsed-animation{transform:rotate(-180deg)}.ditari-bsui-nav{display:flex;background:linear-gradient(270deg, #019cfe 0%, #0165fe 100%)}.ditari-bsui-nav .ant-tabs-nav{margin:0}.ditari-bsui-nav .ant-tabs-content-holder{display:none}.ditari-bsui-nav .ant-tabs-nav-list{padding-right:30px}.ditari-bsui-nav .ant-tabs-tab{position:relative;margin-left:0 !important;border:0 !important;transition:none !important;border-radius:10px 10px 0 0 !important;color:#fff}.ditari-bsui-nav .ant-tabs-tab:first-child .tab-dividers::before,.ditari-bsui-nav .ant-tabs-tab.ant-tabs-tab-active .tab-dividers::before{opacity:0}.ditari-bsui-nav .ant-tabs-tab.ant-tabs-tab-active{background-color:#fff}.ditari-bsui-nav .ant-tabs-tab.ant-tabs-tab-active .tab-item{color:#0065b3}.ditari-bsui-nav .ant-tabs-tab:not(.ant-tabs-tab-active){background:rgba(0,0,0,0)}.ditari-bsui-nav .ant-tabs-tab:hover:not(.ant-tabs-tab-active){background:#065de1}.ditari-bsui-nav .ant-tabs-tab:hover:not(.ant-tabs-tab-active) .tab-dividers::before{opacity:0}.ditari-bsui-nav .ant-tabs-tab:hover:not(.ant-tabs-tab-active)+.ant-tabs-tab .tab-dividers::before{opacity:0}.ditari-bsui-nav .ant-tabs-tab .ant-tabs-tab-btn{display:flex;align-items:center}.ditari-bsui-nav .ant-tabs-tab .tab-close{padding:4px;margin-left:10px;display:flex;align-items:center;justify-content:center;border-radius:50%}.ditari-bsui-nav .ant-tabs-tab .tab-close:hover{background-color:#63aeff;color:#fff}.ditari-bsui-nav .ant-tabs-tab .tab-close .anticon{margin:0}.ditari-bsui-nav .ant-tabs-tab-active+.ant-tabs-tab .tab-dividers::before{opacity:0}.ditari-bsui-nav .ant-tabs-nav-wrap{padding:4px 8px 0}.ditari-bsui-nav .ant-tabs-nav::before{border-bottom-width:0}.ditari-bsui-nav .ant-tabs-tab::before,.ditari-bsui-nav .ant-tabs-tab::after{position:absolute;bottom:0;content:"";width:20px;height:20px;border-radius:100%;box-shadow:0 0 0 40px rgba(0,0,0,0)}.ditari-bsui-nav .ant-tabs-tab::before{left:-20px;clip-path:inset(50% -10px 0 50%)}.ditari-bsui-nav .ant-tabs-tab::after{right:-20px;clip-path:inset(50% 50% 0 -10px)}.ditari-bsui-nav .ant-tabs-tab:hover::before,.ditari-bsui-nav .ant-tabs-tab:hover::after{box-shadow:0 0 0 30px #065de1}.ditari-bsui-nav .ant-tabs-tab.ant-tabs-tab-active::before,.ditari-bsui-nav .ant-tabs-tab.ant-tabs-tab-active::after{z-index:10;box-shadow:0 0 0 30px #fff}.ditari-bsui-nav .tab-dividers{position:absolute;z-index:0;height:14px;top:50%;left:0;margin-top:-7px}.ditari-bsui-nav .tab-dividers::before{content:"";display:block;position:absolute;top:0;left:1px;bottom:0;width:1px;opacity:1;background-color:#fff;transition:opacity .2s ease,background-color .3s}.ditari-show-layout{position:relative}.ditari-show-layout .ant-card{margin-bottom:10px}.ditari-show-layout .ant-card .ant-card-head{padding:10px 24px}.ditari-show-layout .ant-card .ant-card-head .ant-card-head-title{padding:0}.ditari-show-layout .ant-card:last-child{margin-bottom:0}.ditari-show-layout .ditari-page-header{position:sticky;top:84px;z-index:10;padding:4px 24px;transition:all .3s}.ditari-show-layout .ditari-page-header.active{box-shadow:7px 12px 20px 0 #e0e0e0}.ditari-show-layout .ditari-show-footer{position:fixed;right:0;bottom:0;left:200px;z-index:10;padding:10px;background:#fff;box-shadow:4px -2px 5px 3px #e0e0e0}.ditari-fuck-top-layout{position:fixed;left:200px;right:0;z-index:210;display:flex;background:linear-gradient(270deg, #019cfe 0%, #0165fe 100%)}.ditari-fuck-top-layout .ditari-bsui-nav{flex:1;min-width:0}.ditari-fuck-top-layout .ditari-side-collapsed{display:flex;align-items:center;justify-content:center;width:42px;cursor:pointer;color:#fff}.ditari-bsui-pagination{margin-top:24px;text-align:center}.ant-table.ant-table-bordered>.ant-table-container{border-bottom:1px solid #f0f0f0}.ditari-bsui-desensitize .value{padding:0 4px}.ditari-bsui-modal .ant-modal-body{padding:0}.ditari-bsui-modal .ditari-bsui-modal-content{max-height:200px;overflow-y:scroll}.ditari-bsui-modal .ditari-bsui-modal-content::-webkit-scrollbar{width:0 !important;display:none}.ant-table.ant-table-bordered>.ant-table-container{border-bottom:1px solid #f0f0f0}@media screen and (min-width: 320px){.modal{font-size:12px}}@media screen and (min-width: 640px){.modal{font-size:14px}}@media screen and (min-width: 1024px){.modal{font-size:16px}}@media screen and (min-width: 1440px){.modal{font-size:18px}}@media screen and (max-width: 640px){.modal-sm{width:100%;height:100%;min-width:240px;min-height:160px}}@media screen and (min-width: 640px)and (max-width: 1024px){.modal-md{margin:100px auto;max-width:600px;max-height:480px}}@media screen and (min-width: 1024px)and (max-width: 1440px){.modal-lg{margin:100px auto;max-width:800px;max-height:600px}}@media screen and (min-width: 1440px){.modal-xl{margin:100px auto}}html,body,#app{height:100%;background:#f0f2f5}html::-webkit-scrollbar,body::-webkit-scrollbar,#app::-webkit-scrollbar{width:0 !important;display:none}
|
|
1
|
+
.ditari-bsui-grid{position:relative;display:grid}.ditari-bsui-grid .ditari-bsui-grid--item{border:1px solid #4e4e4e;margin-left:-1px;margin-top:-1px}.ditari-bsui-grid-form .ant-form-item{margin-bottom:0;height:100%}.ditari-bsui-grid-form .ant-form-item .ant-form-item-label{border-right:1px solid #4e4e4e}.ditari-bsui-grid-form .ant-form-item .ant-input,.ditari-bsui-grid-form .ant-form-item .ant-select-selector,.ditari-bsui-grid-form .ant-form-item .ant-input-number{border:0;border-radius:0}.ditari-bsui-grid-form .ant-form-item .ant-input:focus,.ditari-bsui-grid-form .ant-form-item .ant-select-selector:focus,.ditari-bsui-grid-form .ant-form-item .ant-input-number:focus{box-shadow:0 0 0 2px #1890ff}.ditari-bsui-grid-form .ant-form-item .ant-input .ant-input-number-input,.ditari-bsui-grid-form .ant-form-item .ant-select-selector .ant-input-number-input,.ditari-bsui-grid-form .ant-form-item .ant-input-number .ant-input-number-input{border:0;border-radius:0}.ditari-bsui-grid-form .ant-form-item .ant-input .ant-input-number-input:focus,.ditari-bsui-grid-form .ant-form-item .ant-select-selector .ant-input-number-input:focus,.ditari-bsui-grid-form .ant-form-item .ant-input-number .ant-input-number-input:focus{box-shadow:0 0 0 2px #1890ff}.ditari-bsui-grid-form .ant-form-item .ant-input[disabled]{color:#525252}.ditari-bsui-grid-form .ant-form-item-has-error .ant-form-item-explain{display:block}.ditari-bsui-grid-form .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{box-shadow:0 0 0 2px #1890ff}.ditari-bsui-grid-form .ant-form-item-has-error :not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus{box-shadow:0 0 0px 2px red;border-radius:0}.ditari-bsui-grid-form .ant-form-item-has-error :not(.ant-input-disabled):not(.ant-input-borderless).ant-input{box-shadow:0 0 0px 2px #ff4d4f}.ditari-menu{height:calc(100vh - 240px - 0px);overflow:scroll}.ditari-menu::-webkit-scrollbar{width:0 !important;display:none}.ditari-layout-sider{background-color:#162157}.ditari-layout-sider .ant-menu-dark{background-color:#162157}.ditari-layout-sider .ant-menu-dark .ant-menu-inline.ant-menu-sub{background-color:#101847}.ditari-bsui-breadcrumb .ant-breadcrumb-separator{display:none}.ditari-bsui-breadcrumb .breadcrumb{display:flex}.ditari-bsui-breadcrumb .breadcrumb .breadcrumb-item{color:#333}.ditari-bsui-breadcrumb .breadcrumb .breadcrumb-item:first-child .breadcrumb-link{border-radius:6px 0 0 6px;clip-path:polygon(0 0, calc(100% - 8px) 0, 100% 50%, calc(100% - 8px) 100%, 0 100%)}.ditari-bsui-breadcrumb .breadcrumb .breadcrumb-item:last-child:not(:first-child) .breadcrumb-link{border-radius:0 6px 6px 0;clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%, 8px 50%)}.ditari-bsui-breadcrumb .breadcrumb-link{display:block;padding:4px 12px;background:#f0f2f5;clip-path:polygon(0 0, calc(100% - 8px) 0, 100% 50%, calc(100% - 8px) 100%, 0 100%, 8px 50%)}.ditari-bsui-breadcrumb a.breadcrumb-link{color:#2589ff}.breadcrumb-enter-active{transition:all .25s}.breadcrumb-enter-from,.breadcrumb-leave-active{opacity:0;transform:translateX(30px) skewX(-50deg)}.ditari-list-layout{padding:20px;height:100%}.ditari-list-layout .wrapper{display:flex;flex-direction:column}.ditari-list-layout .ditari-list-table{flex:1}.ditari-list-layout .ditari-list-table .ant-card-body{display:flex;flex-direction:column;height:100%}.ditari-list-layout .ditari-list-form .ant-card-body{padding-bottom:0}.ditari-list-layout .wrapper{height:100%}.ditari-ant-back-top{right:4px;bottom:120px}.ditari-layout{height:100%}.ditari-layout .ditari-layout-sider{position:fixed;left:0;top:0;bottom:0;z-index:1}.ditari-layout .ditari-top-layout{position:fixed;left:200px;right:0;z-index:210}.ditari-layout .ditari-layout-content{margin-left:200px;margin-top:84px}.fade-enter-active,.fade-leave-active{transition:opacity .1s ease}.fade-enter-from,.fade-leave-to{opacity:0}.main-enter-active{transition:.2s}.main-leave-active{transition:.15s}.main-enter-from{opacity:0;margin-left:-20px}.main-leave-to{opacity:0;margin-left:20px}.ditari-layout-header{display:flex;justify-content:space-between;align-items:center;padding:0 15px;height:42px;border-bottom:1px solid #f0f2f5;background-color:#fff}.ditari-layout-header .ditari-layout-header-left{display:flex;justify-content:center}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed{margin-right:20px;cursor:pointer;width:42px;line-height:30px;text-align:center;transition-duration:.2s}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed:hover{background-color:#f0f2f5;border-radius:4px}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed .icon{transition-duration:.2s}.ditari-user-menu{display:flex;align-items:center;height:100%}.ditari-user-menu .ditari-operation-items{margin-left:10px;height:100%}.ditari-user-menu .ditari-operation-items .ant-dropdown-link{display:flex;align-items:center;justify-content:center;height:100%}.collapsed-animation{transform:rotate(-180deg)}.ditari-bsui-nav{display:flex;background:linear-gradient(270deg, #019cfe 0%, #0165fe 100%)}.ditari-bsui-nav .ant-tabs-nav{margin:0}.ditari-bsui-nav .ant-tabs-content-holder{display:none}.ditari-bsui-nav .ant-tabs-nav-list{padding-right:30px}.ditari-bsui-nav .ant-tabs-tab{position:relative;margin-left:0 !important;border:0 !important;transition:none !important;border-radius:10px 10px 0 0 !important;color:#fff}.ditari-bsui-nav .ant-tabs-tab:first-child .tab-dividers::before,.ditari-bsui-nav .ant-tabs-tab.ant-tabs-tab-active .tab-dividers::before{opacity:0}.ditari-bsui-nav .ant-tabs-tab.ant-tabs-tab-active{background-color:#fff}.ditari-bsui-nav .ant-tabs-tab.ant-tabs-tab-active .tab-item{color:#0065b3}.ditari-bsui-nav .ant-tabs-tab:not(.ant-tabs-tab-active){background:rgba(0,0,0,0)}.ditari-bsui-nav .ant-tabs-tab:hover:not(.ant-tabs-tab-active){background:#065de1}.ditari-bsui-nav .ant-tabs-tab:hover:not(.ant-tabs-tab-active) .tab-dividers::before{opacity:0}.ditari-bsui-nav .ant-tabs-tab:hover:not(.ant-tabs-tab-active)+.ant-tabs-tab .tab-dividers::before{opacity:0}.ditari-bsui-nav .ant-tabs-tab .ant-tabs-tab-btn{display:flex;align-items:center}.ditari-bsui-nav .ant-tabs-tab .tab-close{padding:4px;margin-left:10px;display:flex;align-items:center;justify-content:center;border-radius:50%}.ditari-bsui-nav .ant-tabs-tab .tab-close:hover{background-color:#63aeff;color:#fff}.ditari-bsui-nav .ant-tabs-tab .tab-close .anticon{margin:0}.ditari-bsui-nav .ant-tabs-tab-active+.ant-tabs-tab .tab-dividers::before{opacity:0}.ditari-bsui-nav .ant-tabs-nav-wrap{padding:4px 8px 0}.ditari-bsui-nav .ant-tabs-nav::before{border-bottom-width:0}.ditari-bsui-nav .ant-tabs-tab::before,.ditari-bsui-nav .ant-tabs-tab::after{position:absolute;bottom:0;content:"";width:20px;height:20px;border-radius:100%;box-shadow:0 0 0 40px rgba(0,0,0,0)}.ditari-bsui-nav .ant-tabs-tab::before{left:-20px;clip-path:inset(50% -10px 0 50%)}.ditari-bsui-nav .ant-tabs-tab::after{right:-20px;clip-path:inset(50% 50% 0 -10px)}.ditari-bsui-nav .ant-tabs-tab:hover::before,.ditari-bsui-nav .ant-tabs-tab:hover::after{box-shadow:0 0 0 30px #065de1}.ditari-bsui-nav .ant-tabs-tab.ant-tabs-tab-active::before,.ditari-bsui-nav .ant-tabs-tab.ant-tabs-tab-active::after{z-index:10;box-shadow:0 0 0 30px #fff}.ditari-bsui-nav .tab-dividers{position:absolute;z-index:0;height:14px;top:50%;left:0;margin-top:-7px}.ditari-bsui-nav .tab-dividers::before{content:"";display:block;position:absolute;top:0;left:1px;bottom:0;width:1px;opacity:1;background-color:#fff;transition:opacity .2s ease,background-color .3s}.ditari-show-layout{position:relative}.ditari-show-layout .ant-card{margin-bottom:10px}.ditari-show-layout .ant-card .ant-card-head{padding:10px 24px}.ditari-show-layout .ant-card .ant-card-head .ant-card-head-title{padding:0}.ditari-show-layout .ant-card:last-child{margin-bottom:0}.ditari-show-layout .ditari-page-header{position:sticky;top:84px;z-index:10;padding:4px 24px;transition:all .3s}.ditari-show-layout .ditari-page-header.active{box-shadow:7px 12px 20px 0 #e0e0e0}.ditari-show-layout .ditari-show-footer{position:fixed;right:0;bottom:0;left:200px;z-index:10;padding:10px;background:#fff;box-shadow:4px -2px 5px 3px #e0e0e0}.ditari-fuck-top-layout{position:fixed;left:200px;right:0;z-index:210;display:flex;background:linear-gradient(270deg, #019cfe 0%, #0165fe 100%)}.ditari-fuck-top-layout .ditari-bsui-nav{flex:1;min-width:0}.ditari-fuck-top-layout .ditari-side-collapsed{display:flex;align-items:center;justify-content:center;width:42px;cursor:pointer;color:#fff}.ditari-bsui-pagination{margin-top:24px;text-align:center}.ant-table.ant-table-bordered>.ant-table-container{border-bottom:1px solid #f0f0f0}.ditari-bsui-desensitize{display:inline-block}.ditari-bsui-desensitize .value{padding:0 4px}.ditari-bsui-modal .ant-modal-body{padding:0}.ditari-bsui-modal .ditari-bsui-modal-content{max-height:200px;overflow-y:scroll}.ditari-bsui-modal .ditari-bsui-modal-content::-webkit-scrollbar{width:0 !important;display:none}.ant-table.ant-table-bordered>.ant-table-container{border-bottom:1px solid #f0f0f0}@media screen and (min-width: 320px){.modal{font-size:12px}}@media screen and (min-width: 640px){.modal{font-size:14px}}@media screen and (min-width: 1024px){.modal{font-size:16px}}@media screen and (min-width: 1440px){.modal{font-size:18px}}@media screen and (max-width: 640px){.modal-sm{width:100%;height:100%;min-width:240px;min-height:160px}}@media screen and (min-width: 640px)and (max-width: 1024px){.modal-md{margin:100px auto;max-width:600px;max-height:480px}}@media screen and (min-width: 1024px)and (max-width: 1440px){.modal-lg{margin:100px auto;max-width:800px;max-height:600px}}@media screen and (min-width: 1440px){.modal-xl{margin:100px auto}}html,body,#app{height:100%;background:#f0f2f5}html::-webkit-scrollbar,body::-webkit-scrollbar,#app::-webkit-scrollbar{width:0 !important;display:none}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
declare const _default: import("vue").DefineComponent<{
|
|
2
2
|
value: {
|
|
3
|
-
type:
|
|
3
|
+
type: () => string | undefined;
|
|
4
4
|
required: true;
|
|
5
5
|
};
|
|
6
6
|
style: {
|
|
@@ -11,13 +11,21 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
11
11
|
type: StringConstructor;
|
|
12
12
|
required: true;
|
|
13
13
|
};
|
|
14
|
+
regex: {
|
|
15
|
+
type: StringConstructor;
|
|
16
|
+
default: string;
|
|
17
|
+
};
|
|
18
|
+
regexValue: {
|
|
19
|
+
type: StringConstructor;
|
|
20
|
+
default: string;
|
|
21
|
+
};
|
|
14
22
|
eye: {
|
|
15
23
|
type: BooleanConstructor;
|
|
16
24
|
default: boolean;
|
|
17
25
|
};
|
|
18
26
|
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
19
27
|
value: {
|
|
20
|
-
type:
|
|
28
|
+
type: () => string | undefined;
|
|
21
29
|
required: true;
|
|
22
30
|
};
|
|
23
31
|
style: {
|
|
@@ -28,12 +36,22 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
28
36
|
type: StringConstructor;
|
|
29
37
|
required: true;
|
|
30
38
|
};
|
|
39
|
+
regex: {
|
|
40
|
+
type: StringConstructor;
|
|
41
|
+
default: string;
|
|
42
|
+
};
|
|
43
|
+
regexValue: {
|
|
44
|
+
type: StringConstructor;
|
|
45
|
+
default: string;
|
|
46
|
+
};
|
|
31
47
|
eye: {
|
|
32
48
|
type: BooleanConstructor;
|
|
33
49
|
default: boolean;
|
|
34
50
|
};
|
|
35
51
|
}>>, {
|
|
36
52
|
style: string;
|
|
53
|
+
regex: string;
|
|
54
|
+
regexValue: string;
|
|
37
55
|
eye: boolean;
|
|
38
56
|
}, {}>;
|
|
39
57
|
export default _default;
|
|
@@ -21,11 +21,21 @@ var Desensitize = /* @__PURE__ */ defineComponent({
|
|
|
21
21
|
type: String,
|
|
22
22
|
default: "*"
|
|
23
23
|
},
|
|
24
|
-
//
|
|
24
|
+
// 替换规则 id 和mobile
|
|
25
25
|
rule: {
|
|
26
26
|
type: String,
|
|
27
27
|
required: true
|
|
28
28
|
},
|
|
29
|
+
// 正则表达式
|
|
30
|
+
regex: {
|
|
31
|
+
type: String,
|
|
32
|
+
default: ""
|
|
33
|
+
},
|
|
34
|
+
// 替换方式
|
|
35
|
+
regexValue: {
|
|
36
|
+
type: String,
|
|
37
|
+
default: ""
|
|
38
|
+
},
|
|
29
39
|
eye: {
|
|
30
40
|
type: Boolean,
|
|
31
41
|
default: false
|
|
@@ -36,13 +46,25 @@ var Desensitize = /* @__PURE__ */ defineComponent({
|
|
|
36
46
|
const desensitizedString = computed(() => {
|
|
37
47
|
const value = props.value;
|
|
38
48
|
const rule = props.rule;
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
49
|
+
const regex = props.regex;
|
|
50
|
+
const regexValue = props.regexValue;
|
|
51
|
+
let str = "";
|
|
52
|
+
if (!value) {
|
|
53
|
+
return "";
|
|
54
|
+
}
|
|
55
|
+
if (rule) {
|
|
56
|
+
switch (rule) {
|
|
57
|
+
case "mobile":
|
|
58
|
+
str = value.replace(/(\d{3})\d{4}(\d{4})/, "$1*****$2");
|
|
59
|
+
break;
|
|
60
|
+
case "id":
|
|
61
|
+
str = value.replace(/(\d{4})\d{10}(\w{4})/, "$1*****$2");
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
43
64
|
} else {
|
|
44
|
-
|
|
65
|
+
str = value.replace(regex, regexValue);
|
|
45
66
|
}
|
|
67
|
+
return str;
|
|
46
68
|
});
|
|
47
69
|
return () => createVNode(Fragment, null, [createVNode("div", {
|
|
48
70
|
"class": baseClassName
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Desensitize.mjs","sources":["../../../src/desensitize/Desensitize.tsx"],"sourcesContent":["/**\n * 脱敏\n * @author 余春林\n */\nimport { defineComponent, computed, ref } from \"vue\";\nimport { EyeOutlined, EyeInvisibleOutlined } from \"@ant-design/icons-vue\";\nimport { prefixName } from \"../theme\";\n\n//class名称\nconst baseClassName = `${prefixName}-desensitize`;\nexport default defineComponent({\n name: \"DDesensitize\",\n components: {\n EyeOutlined,\n EyeInvisibleOutlined\n },\n props: {\n value: {\n // type: [string,number] 可以使用PropType 来声明对象类型\n // type: String as () => string | number,\n type: String,\n required: true\n },\n // 替换样式\n style: {\n type: String,\n default: \"*\"\n },\n //
|
|
1
|
+
{"version":3,"file":"Desensitize.mjs","sources":["../../../src/desensitize/Desensitize.tsx"],"sourcesContent":["/**\n * 脱敏\n * @author 余春林\n */\nimport { defineComponent, computed, ref } from \"vue\";\nimport { EyeOutlined, EyeInvisibleOutlined } from \"@ant-design/icons-vue\";\nimport { prefixName } from \"../theme\";\n\n//class名称\nconst baseClassName = `${prefixName}-desensitize`;\nexport default defineComponent({\n name: \"DDesensitize\",\n components: {\n EyeOutlined,\n EyeInvisibleOutlined\n },\n props: {\n value: {\n // type: [string,number] 可以使用PropType 来声明对象类型\n // type: String as () => string | number,\n type: String as () => string | undefined,\n required: true\n },\n // 替换样式\n style: {\n type: String,\n default: \"*\"\n },\n // 替换规则 id 和mobile\n rule: {\n type: String,\n required: true\n },\n // 正则表达式\n regex: {\n type: String,\n default: \"\"\n },\n // 替换方式\n regexValue: {\n type: String,\n default: \"\"\n },\n eye: {\n type: Boolean,\n default: false\n }\n },\n setup(props) {\n // 控制显示隐藏脱敏或者不脱敏\n const invisible = ref(true);\n const desensitizedString = computed(() => {\n const value = props.value;\n const rule = props.rule;\n const regex = props.regex;\n const regexValue = props.regexValue;\n let str = \"\";\n if (!value) {\n return \"\";\n }\n if (rule) {\n switch (rule) {\n case \"mobile\":\n str = value.replace(/(\\d{3})\\d{4}(\\d{4})/, \"$1*****$2\");\n break;\n case \"id\":\n str = value.replace(/(\\d{4})\\d{10}(\\w{4})/, \"$1*****$2\");\n break;\n }\n } else {\n str = value.replace(regex, regexValue);\n }\n return str;\n });\n return () => (\n <>\n <div class={baseClassName}>\n <span class={\"value\"}>\n {invisible.value ? desensitizedString.value : props.value}\n </span>\n {props.eye ? (\n <span>\n <eye-outlined\n onClick={() => (invisible.value = !invisible.value)}\n v-show={!invisible.value}\n />\n <eye-invisible-outlined\n onClick={() => (invisible.value = !invisible.value)}\n v-show={invisible.value}\n />\n </span>\n ) : undefined}\n </div>\n </>\n );\n }\n});\n"],"names":["baseClassName","prefixName","name","components","EyeOutlined","EyeInvisibleOutlined","props","value","type","String","required","style","default","rule","regex","regexValue","eye","Boolean","setup","invisible","ref","desensitizedString","computed","str","replace","_createVNode","_Fragment","_withDirectives","_resolveComponent","onClick","_vShow","undefined"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -18,7 +18,7 @@ export default defineComponent({
|
|
|
18
18
|
value: {
|
|
19
19
|
// type: [string,number] 可以使用PropType 来声明对象类型
|
|
20
20
|
// type: String as () => string | number,
|
|
21
|
-
type: String,
|
|
21
|
+
type: String as () => string | undefined,
|
|
22
22
|
required: true
|
|
23
23
|
},
|
|
24
24
|
// 替换样式
|
|
@@ -26,11 +26,21 @@ export default defineComponent({
|
|
|
26
26
|
type: String,
|
|
27
27
|
default: "*"
|
|
28
28
|
},
|
|
29
|
-
//
|
|
29
|
+
// 替换规则 id 和mobile
|
|
30
30
|
rule: {
|
|
31
31
|
type: String,
|
|
32
32
|
required: true
|
|
33
33
|
},
|
|
34
|
+
// 正则表达式
|
|
35
|
+
regex: {
|
|
36
|
+
type: String,
|
|
37
|
+
default: ""
|
|
38
|
+
},
|
|
39
|
+
// 替换方式
|
|
40
|
+
regexValue: {
|
|
41
|
+
type: String,
|
|
42
|
+
default: ""
|
|
43
|
+
},
|
|
34
44
|
eye: {
|
|
35
45
|
type: Boolean,
|
|
36
46
|
default: false
|
|
@@ -42,13 +52,25 @@ export default defineComponent({
|
|
|
42
52
|
const desensitizedString = computed(() => {
|
|
43
53
|
const value = props.value;
|
|
44
54
|
const rule = props.rule;
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
55
|
+
const regex = props.regex;
|
|
56
|
+
const regexValue = props.regexValue;
|
|
57
|
+
let str = "";
|
|
58
|
+
if (!value) {
|
|
59
|
+
return "";
|
|
60
|
+
}
|
|
61
|
+
if (rule) {
|
|
62
|
+
switch (rule) {
|
|
63
|
+
case "mobile":
|
|
64
|
+
str = value.replace(/(\d{3})\d{4}(\d{4})/, "$1*****$2");
|
|
65
|
+
break;
|
|
66
|
+
case "id":
|
|
67
|
+
str = value.replace(/(\d{4})\d{10}(\w{4})/, "$1*****$2");
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
49
70
|
} else {
|
|
50
|
-
|
|
71
|
+
str = value.replace(regex, regexValue);
|
|
51
72
|
}
|
|
73
|
+
return str;
|
|
52
74
|
});
|
|
53
75
|
return () => (
|
|
54
76
|
<>
|