@dhccmobile/vue3-lo-form 2.1.2 → 2.1.3

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.
Files changed (160) hide show
  1. package/README.md +4 -5
  2. package/dist/vue3-lo-form.common.js +27 -27
  3. package/dist/vue3-lo-form.common.js.map +1 -1
  4. package/dist/vue3-lo-form.css +1 -1
  5. package/dist/vue3-lo-form.umd.js +27 -27
  6. package/dist/vue3-lo-form.umd.js.map +1 -1
  7. package/dist/vue3-lo-form.umd.min.js +1 -1
  8. package/dist/vue3-lo-form.umd.min.js.map +1 -1
  9. package/package.json +1 -1
  10. package/src/App.vue +115 -121
  11. package/src/UserInfoForm.vue +177 -0
  12. package/src/components/form/DvFormLayout.vue +1 -2
  13. package/src/components/index.js +4 -0
  14. package/src/components/index.js.map +1 -0
  15. package/src/constants/config/form-template.config.js +33 -0
  16. package/src/constants/config/form-template.config.js.map +1 -0
  17. package/src/constants/config/form.config.js +5 -0
  18. package/src/constants/config/form.config.js.map +1 -0
  19. package/src/constants/config/storage.config.js +5 -0
  20. package/src/constants/config/storage.config.js.map +1 -0
  21. package/src/constants/encode-assets/icons.js +2 -0
  22. package/src/constants/encode-assets/icons.js.map +1 -0
  23. package/src/constants/encode-assets/svg.js +8 -0
  24. package/src/constants/encode-assets/svg.js.map +1 -0
  25. package/src/constants/enum/builtIn-label.enum.js +6 -0
  26. package/src/constants/enum/builtIn-label.enum.js.map +1 -0
  27. package/src/constants/enum/cache-type.enum.js +8 -0
  28. package/src/constants/enum/cache-type.enum.js.map +1 -0
  29. package/src/constants/enum/control-format-type.enum.js +10 -0
  30. package/src/constants/enum/control-format-type.enum.js.map +1 -0
  31. package/src/constants/enum/dynamic-option-type.enum.js +7 -0
  32. package/src/constants/enum/dynamic-option-type.enum.js.map +1 -0
  33. package/src/constants/enum/form-bus-attr.enum.js +9 -0
  34. package/src/constants/enum/form-bus-attr.enum.js.map +1 -0
  35. package/src/constants/enum/form-field-class.enum.js +8 -0
  36. package/src/constants/enum/form-field-class.enum.js.map +1 -0
  37. package/src/constants/enum/form-field-type.enum.js +24 -0
  38. package/src/constants/enum/form-field-type.enum.js.map +1 -0
  39. package/src/constants/enum/form-type.enum.js +6 -0
  40. package/src/constants/enum/form-type.enum.js.map +1 -0
  41. package/src/constants/enum/index.js +20 -0
  42. package/src/constants/enum/index.js.map +1 -0
  43. package/src/constants/enum/lateral-arrangement.enum.js +10 -0
  44. package/src/constants/enum/lateral-arrangement.enum.js.map +1 -0
  45. package/src/constants/enum/money-unit.enum.js +7 -0
  46. package/src/constants/enum/money-unit.enum.js.map +1 -0
  47. package/src/constants/enum/option-type.enum.js +6 -0
  48. package/src/constants/enum/option-type.enum.js.map +1 -0
  49. package/src/constants/enum/submitted-type.enum.js +35 -0
  50. package/src/constants/enum/submitted-type.enum.js.map +1 -0
  51. package/src/constants/enum/support-upload-type.enum.js +6 -0
  52. package/src/constants/enum/support-upload-type.enum.js.map +1 -0
  53. package/src/constants/enum/switch.enum.js +6 -0
  54. package/src/constants/enum/switch.enum.js.map +1 -0
  55. package/src/constants/enum/upload-type.enum.js +18 -0
  56. package/src/constants/enum/upload-type.enum.js.map +1 -0
  57. package/src/constants/enum/validate-rules.enum.js +26 -0
  58. package/src/constants/enum/validate-rules.enum.js.map +1 -0
  59. package/src/constants/enum/validate-status.enum.js +9 -0
  60. package/src/constants/enum/validate-status.enum.js.map +1 -0
  61. package/src/constants/enum/vertical-arrangement.enum.js +8 -0
  62. package/src/constants/enum/vertical-arrangement.enum.js.map +1 -0
  63. package/src/constants/enum/zoom-type.js +7 -0
  64. package/src/constants/enum/zoom-type.js.map +1 -0
  65. package/src/constants/index.js +4 -0
  66. package/src/constants/index.js.map +1 -0
  67. package/src/core/FormApi.js +1241 -0
  68. package/src/core/FormApi.js.map +1 -0
  69. package/src/core/FormApi.ts +1 -1
  70. package/src/core/index.js +2 -0
  71. package/src/core/index.js.map +1 -0
  72. package/src/domain/AbstractControl.js +4 -0
  73. package/src/domain/AbstractControl.js.map +1 -0
  74. package/src/domain/Control.js +2 -0
  75. package/src/domain/Control.js.map +1 -0
  76. package/src/domain/CustomFormat.js +2 -0
  77. package/src/domain/CustomFormat.js.map +1 -0
  78. package/src/domain/DesForm.js +29 -0
  79. package/src/domain/DesForm.js.map +1 -0
  80. package/src/domain/DesFormControl.js +163 -0
  81. package/src/domain/DesFormControl.js.map +1 -0
  82. package/src/domain/DesFormLayout.js +33 -0
  83. package/src/domain/DesFormLayout.js.map +1 -0
  84. package/src/domain/FieldChangeHistory.js +2 -0
  85. package/src/domain/FieldChangeHistory.js.map +1 -0
  86. package/src/domain/FormConfig.js +2 -0
  87. package/src/domain/FormConfig.js.map +1 -0
  88. package/src/domain/FormControl.js +102 -0
  89. package/src/domain/FormControl.js.map +1 -0
  90. package/src/domain/FormEnum.js +2 -0
  91. package/src/domain/FormEnum.js.map +1 -0
  92. package/src/domain/FormGroup.js +38 -0
  93. package/src/domain/FormGroup.js.map +1 -0
  94. package/src/domain/FormRestfulResponse.js +2 -0
  95. package/src/domain/FormRestfulResponse.js.map +1 -0
  96. package/src/domain/ProvideInjectData.js +2 -0
  97. package/src/domain/ProvideInjectData.js.map +1 -0
  98. package/src/domain/SysDictDetail.js +25 -0
  99. package/src/domain/SysDictDetail.js.map +1 -0
  100. package/src/domain/SysDictInfo.js +25 -0
  101. package/src/domain/SysDictInfo.js.map +1 -0
  102. package/src/domain/SysDictTreeDetail.js +35 -0
  103. package/src/domain/SysDictTreeDetail.js.map +1 -0
  104. package/src/domain/index.js +13 -0
  105. package/src/domain/index.js.map +1 -0
  106. package/src/filtres/amount-capitalization.filter.js +150 -0
  107. package/src/filtres/amount-capitalization.filter.js.map +1 -0
  108. package/src/filtres/extract-options.filter.js +54 -0
  109. package/src/filtres/extract-options.filter.js.map +1 -0
  110. package/src/filtres/generate-grid-column-end.filter.js +18 -0
  111. package/src/filtres/generate-grid-column-end.filter.js.map +1 -0
  112. package/src/filtres/generate-grid-template-columns.filter.js +20 -0
  113. package/src/filtres/generate-grid-template-columns.filter.js.map +1 -0
  114. package/src/filtres/switch-enum-convert.filter.js +18 -0
  115. package/src/filtres/switch-enum-convert.filter.js.map +1 -0
  116. package/src/filtres/zoom-multiple.filter.js +31 -0
  117. package/src/filtres/zoom-multiple.filter.js.map +1 -0
  118. package/src/index.js +69 -0
  119. package/src/index.js.map +1 -0
  120. package/src/main.js +22 -0
  121. package/src/main.js.map +1 -0
  122. package/src/main.ts +2 -2
  123. package/src/services/api.service.js +74 -0
  124. package/src/services/api.service.js.map +1 -0
  125. package/src/services/clean-local-forage.service.js +53 -0
  126. package/src/services/clean-local-forage.service.js.map +1 -0
  127. package/src/services/date-format.service.js +76 -0
  128. package/src/services/date-format.service.js.map +1 -0
  129. package/src/services/dict-local-forage.service.js +53 -0
  130. package/src/services/dict-local-forage.service.js.map +1 -0
  131. package/src/services/form-bean-utils.service.js +39 -0
  132. package/src/services/form-bean-utils.service.js.map +1 -0
  133. package/src/services/form-local-forage.service.js +53 -0
  134. package/src/services/form-local-forage.service.js.map +1 -0
  135. package/src/services/form-tools.service.js +750 -0
  136. package/src/services/form-tools.service.js.map +1 -0
  137. package/src/services/form-tree-node-convert.service.js +174 -0
  138. package/src/services/form-tree-node-convert.service.js.map +1 -0
  139. package/src/services/form-validate.service.js +100 -0
  140. package/src/services/form-validate.service.js.map +1 -0
  141. package/src/services/index.js +10 -0
  142. package/src/services/index.js.map +1 -0
  143. package/src/services/router.service.js +94 -0
  144. package/src/services/router.service.js.map +1 -0
  145. package/src/services/validate-generator.service.js +688 -0
  146. package/src/services/validate-generator.service.js.map +1 -0
  147. package/src/store/dict.store.js +52 -0
  148. package/src/store/dict.store.js.map +1 -0
  149. package/src/store/form.store.js +26 -0
  150. package/src/store/form.store.js.map +1 -0
  151. package/src/store/index.js +3 -0
  152. package/src/store/index.js.map +1 -0
  153. package/src/styles/theme2.scss +1 -1
  154. package/src/types/formTheme.js +2 -0
  155. package/src/types/formTheme.js.map +1 -0
  156. package/src/types/formTheme.ts +8 -0
  157. package/src/types/vfForm.js +2 -0
  158. package/src/types/vfForm.js.map +1 -0
  159. package/types/core/FormApi.d.ts +1 -1
  160. package/types/types/formTheme.d.ts +8 -0
@@ -0,0 +1,35 @@
1
+ export class SysDictTreeDetail {
2
+ dictId;
3
+ appId;
4
+ dicEntryPk;
5
+ dataId;
6
+ dicEntryRank;
7
+ dictCd;
8
+ dictNm;
9
+ dicKey;
10
+ dicValue;
11
+ suprDicPk;
12
+ treedictLevel;
13
+ isLeaf;
14
+ sortNo;
15
+ useState;
16
+ children;
17
+ constructor(options = {}) {
18
+ this.dictId = options.dictId || '';
19
+ this.appId = options.appId || '';
20
+ this.dicEntryPk = options.dicEntryPk || '';
21
+ this.dataId = options.dataId || '';
22
+ this.dicEntryRank = options.dicEntryRank || '';
23
+ this.dictCd = options.dictCd || '';
24
+ this.dictNm = options.dictNm || '';
25
+ this.dicKey = options.dicKey || '';
26
+ this.dicValue = options.dicValue || '';
27
+ this.suprDicPk = options.suprDicPk || '';
28
+ this.treedictLevel = options.treedictLevel || '';
29
+ this.isLeaf = options.isLeaf || '';
30
+ this.sortNo = options.sortNo || '';
31
+ this.useState = options.useState || '';
32
+ this.children = options.children || [];
33
+ }
34
+ }
35
+ //# sourceMappingURL=SysDictTreeDetail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SysDictTreeDetail.js","sourceRoot":"","sources":["SysDictTreeDetail.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,iBAAiB;IAC5B,MAAM,CAAS;IACf,KAAK,CAAS;IACd,UAAU,CAAS;IACnB,MAAM,CAAS;IACf,YAAY,CAAS;IACrB,MAAM,CAAS;IACf,MAAM,CAAS;IACf,MAAM,CAAS;IACf,QAAQ,CAAS;IACjB,SAAS,CAAS;IAClB,aAAa,CAAS;IACtB,MAAM,CAAS;IACf,MAAM,CAAS;IACf,QAAQ,CAAS;IACjB,QAAQ,CAAsB;IAC9B,YACE,UAgBI,EAAE;QAEN,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;IACzC,CAAC;CACF"}
@@ -0,0 +1,13 @@
1
+ export * from "./DesFormControl";
2
+ export * from "./Control";
3
+ export * from "./DesForm";
4
+ export * from "./DesFormControl";
5
+ export * from "./DesFormLayout";
6
+ export * from "./FormConfig";
7
+ export * from "./FormControl";
8
+ export * from "./FormEnum";
9
+ export * from "./FormGroup";
10
+ export * from "./FormRestfulResponse";
11
+ export * from "./CustomFormat";
12
+ export * from "./FieldChangeHistory";
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,150 @@
1
+ function transform(currencyDigits) {
2
+ // Constants:
3
+ const MAXIMUM_NUMBER = 999999999999.99;
4
+ // Predefine the radix characters and currency symbols for output:
5
+ const CN_ZERO = "零";
6
+ const CN_ONE = "壹";
7
+ const CN_TWO = "贰";
8
+ const CN_THREE = "叁";
9
+ const CN_FOUR = "肆";
10
+ const CN_FIVE = "伍";
11
+ const CN_SIX = "陆";
12
+ const CN_SEVEN = "柒";
13
+ const CN_EIGHT = "捌";
14
+ const CN_NINE = "玖";
15
+ const CN_TEN = "拾";
16
+ const CN_HUNDRED = "佰";
17
+ const CN_THOUSAND = "仟";
18
+ const CN_TEN_THOUSAND = "万";
19
+ const CN_HUNDRED_MILLION = "亿";
20
+ // 满足数字大写转换需求
21
+ const CN_SYMBOL = ""; // 不带前缀【金额:】
22
+ const CN_DOLLAR = ""; // 元
23
+ const DROP = "点"; // 点 2023年8月31日10:51:25
24
+ const CN_TEN_CENT = ""; // 角
25
+ const CN_CENT = ""; // 分
26
+ const CN_INTEGER = ""; // 整
27
+ // constiables:
28
+ let integral; // Represent integral part of digit number.
29
+ let decimal; // Represent decimal part of digit number.
30
+ let outputCharacters; // The output result.
31
+ let parts = [];
32
+ let digits = [], radices = [], bigRadices = [], decimals = [];
33
+ let zeroCount;
34
+ let i, p, d;
35
+ let quotient, modulus;
36
+ // Validate input string:
37
+ currencyDigits = currencyDigits != undefined ? currencyDigits.toString() : "";
38
+ let prefix = "";
39
+ if (currencyDigits != null && currencyDigits.indexOf("-") === 0) {
40
+ prefix = "负";
41
+ currencyDigits = currencyDigits.substr(1);
42
+ }
43
+ if (currencyDigits === "") {
44
+ return "空"; // 默认提示
45
+ }
46
+ if (currencyDigits.match(/[^,.\d]/) != null) {
47
+ return "您的输入含有无效字符";
48
+ }
49
+ if (currencyDigits.match(/^((\d{1,3}(,\d{3})*(.((\d{3},)*\d{1,3}))?)|(\d+(.\d+)?))$/) == null) {
50
+ return "您的输入的数字格式不正确";
51
+ }
52
+ // Normalize the format of input digits:
53
+ currencyDigits = currencyDigits.replace(/,/g, ""); // Remove comma delimiters.
54
+ currencyDigits = currencyDigits.replace(/^0+/, ""); // Trim zeros at the beginning.
55
+ // Assert the number is not greater than the maximum number.
56
+ if (Number(currencyDigits) > MAXIMUM_NUMBER) {
57
+ let divisor = 1000000000000;
58
+ if (currencyDigits.indexOf(".") > -1) {
59
+ const num = currencyDigits.split(".")[1].length;
60
+ for (let i = 0; i < num; i++) {
61
+ divisor = divisor * 10;
62
+ }
63
+ currencyDigits = currencyDigits.replace(".", "");
64
+ }
65
+ return Number(currencyDigits) / Number(divisor) + "万亿元";
66
+ }
67
+ // Process the coversion from currency digits to characters:
68
+ // Separate integral and decimal parts before processing coversion:
69
+ parts = currencyDigits.split(".");
70
+ if (parts.length > 1) {
71
+ integral = parts[0];
72
+ decimal = parts[1];
73
+ // Cut down redundant decimal digits that are after the second.
74
+ decimal = decimal.substr(0, 2);
75
+ }
76
+ else {
77
+ integral = parts[0];
78
+ decimal = "";
79
+ }
80
+ // Prepare the characters corresponding to the digits:
81
+ digits = [CN_ZERO, CN_ONE, CN_TWO, CN_THREE, CN_FOUR, CN_FIVE, CN_SIX, CN_SEVEN, CN_EIGHT, CN_NINE];
82
+ radices = ["", CN_TEN, CN_HUNDRED, CN_THOUSAND];
83
+ bigRadices = ["", CN_TEN_THOUSAND, CN_HUNDRED_MILLION];
84
+ decimals = [CN_TEN_CENT, CN_CENT];
85
+ // Start processing:
86
+ outputCharacters = "";
87
+ // Process integral part if it is larger than 0:
88
+ if (Number(integral) > 0) {
89
+ zeroCount = 0;
90
+ for (i = 0; i < integral.length; i++) {
91
+ p = integral.length - i - 1;
92
+ d = integral.substr(i, 1);
93
+ quotient = p / 4;
94
+ modulus = p % 4;
95
+ if (d === "0") {
96
+ zeroCount++;
97
+ }
98
+ else {
99
+ if (zeroCount > 0) {
100
+ outputCharacters += digits[0];
101
+ }
102
+ zeroCount = 0;
103
+ outputCharacters += digits[Number(d)] + radices[modulus];
104
+ }
105
+ if (modulus === 0 && zeroCount < 4) {
106
+ outputCharacters += bigRadices[quotient];
107
+ zeroCount = 0;
108
+ }
109
+ }
110
+ // outputCharacters += CN_DOLLAR; // 原来的【元】
111
+ }
112
+ else {
113
+ //整数位为'零'
114
+ outputCharacters = digits[Number(integral)];
115
+ }
116
+ // Process decimal part if there is:
117
+ //校验小数位是否有值
118
+ if (decimal !== "" && decimal !== "0" && decimal !== "00") {
119
+ outputCharacters += DROP; // new 2023年8月31日10:52:54
120
+ for (i = 0; i < decimal.length; i++) {
121
+ d = decimal.substr(i, 1);
122
+ if (d !== "0") {
123
+ outputCharacters += digits[Number(d)] + decimals[i];
124
+ }
125
+ else if (i === 0) {
126
+ //处理金额十分位数值为0时的大写转换
127
+ outputCharacters += digits[Number(d)];
128
+ }
129
+ }
130
+ }
131
+ // Confirm and return the final output string:
132
+ if (outputCharacters === "") {
133
+ outputCharacters = CN_ZERO + CN_DOLLAR;
134
+ }
135
+ if (decimal === "") {
136
+ outputCharacters += CN_INTEGER;
137
+ }
138
+ outputCharacters = CN_SYMBOL + prefix + outputCharacters;
139
+ return outputCharacters;
140
+ }
141
+ /**
142
+ * @description: 跨列计算
143
+ * @author ChenRui
144
+ * @date 2020/12/1 19:34
145
+ */
146
+ const amountCapitalization = (data) => {
147
+ return transform(data);
148
+ };
149
+ export default amountCapitalization;
150
+ //# sourceMappingURL=amount-capitalization.filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"amount-capitalization.filter.js","sourceRoot":"","sources":["amount-capitalization.filter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import { OptionType } from "../constants/enum/option-type.enum";
2
+ import { DynamicOptionType } from "../constants/enum/dynamic-option-type.enum";
3
+ function transformReverse(controlAttr, data) {
4
+ if (data == null) {
5
+ data = [];
6
+ }
7
+ if (controlAttr != null) {
8
+ if (controlAttr.isOptionType === OptionType.Fixed.code) {
9
+ controlAttr.optionConfig = data;
10
+ }
11
+ else if (controlAttr.isOptionType === OptionType.Dynamic.code) {
12
+ if (controlAttr.dynamicOptionType === DynamicOptionType.GeneralDictionary.code) {
13
+ controlAttr.generalDictionaryOptions = data;
14
+ }
15
+ else if (controlAttr.dynamicOptionType === DynamicOptionType.TreeDictionary.code) {
16
+ controlAttr.treeShapeOptions = data;
17
+ }
18
+ }
19
+ }
20
+ }
21
+ function transform(controlAttr) {
22
+ if (controlAttr != null) {
23
+ if (controlAttr.isOptionType === OptionType.Fixed.code) {
24
+ return controlAttr.optionConfig || [];
25
+ }
26
+ else if (controlAttr.isOptionType === OptionType.Dynamic.code) {
27
+ if (controlAttr.dynamicOptionType === DynamicOptionType.GeneralDictionary.code) {
28
+ return controlAttr.generalDictionaryOptions || [];
29
+ }
30
+ else if (controlAttr.dynamicOptionType === DynamicOptionType.TreeDictionary.code) {
31
+ return controlAttr.treeShapeOptions || [];
32
+ }
33
+ }
34
+ }
35
+ return [];
36
+ }
37
+ /**
38
+ * @description: 根据字典类型获取可选项
39
+ * @author ChenRui
40
+ * @date 2020/12/30 11:18
41
+ */
42
+ const extractOptions = (controlAttr, ...args) => {
43
+ return transform(controlAttr);
44
+ };
45
+ /**
46
+ * @description: 保存可选项
47
+ * @author ChenRui
48
+ * @date 2021/1/29 16:17
49
+ */
50
+ const storageOptions = (controlAttr, data) => {
51
+ return transformReverse(controlAttr, data);
52
+ };
53
+ export { storageOptions, extractOptions };
54
+ //# sourceMappingURL=extract-options.filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract-options.filter.js","sourceRoot":"","sources":["extract-options.filter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAE/E,SAAS,gBAAgB,CAAC,WAAgB,EAAE,IAAW;IACrD,IAAI,IAAI,IAAI,IAAI,EAAE;QAChB,IAAI,GAAG,EAAE,CAAC;KACX;IACD,IAAI,WAAW,IAAI,IAAI,EAAE;QACvB,IAAI,WAAW,CAAC,YAAY,KAAK,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE;YACtD,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC;SACjC;aAAM,IAAI,WAAW,CAAC,YAAY,KAAK,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE;YAC/D,IAAI,WAAW,CAAC,iBAAiB,KAAK,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,EAAE;gBAC9E,WAAW,CAAC,wBAAwB,GAAG,IAAI,CAAC;aAC7C;iBAAM,IAAI,WAAW,CAAC,iBAAiB,KAAK,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE;gBAClF,WAAW,CAAC,gBAAgB,GAAG,IAAI,CAAC;aACrC;SACF;KACF;AACH,CAAC;AAED,SAAS,SAAS,CAAC,WAAgB;IACjC,IAAI,WAAW,IAAI,IAAI,EAAE;QACvB,IAAI,WAAW,CAAC,YAAY,KAAK,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE;YACtD,OAAO,WAAW,CAAC,YAAY,IAAI,EAAE,CAAC;SACvC;aAAM,IAAI,WAAW,CAAC,YAAY,KAAK,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE;YAC/D,IAAI,WAAW,CAAC,iBAAiB,KAAK,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,EAAE;gBAC9E,OAAO,WAAW,CAAC,wBAAwB,IAAI,EAAE,CAAC;aACnD;iBAAM,IAAI,WAAW,CAAC,iBAAiB,KAAK,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE;gBAClF,OAAO,WAAW,CAAC,gBAAgB,IAAI,EAAE,CAAC;aAC3C;SACF;KACF;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;GAIG;AACH,MAAM,cAAc,GAAG,CAAC,WAAgB,EAAE,GAAG,IAAW,EAAS,EAAE;IACjE,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,cAAc,GAAG,CAAC,WAAgB,EAAE,IAAW,EAAQ,EAAE;IAC7D,OAAO,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AAC7C,CAAC,CAAC;AACF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,18 @@
1
+ function transform(configs) {
2
+ if (configs != null && configs.length > 0) {
3
+ return configs.length + 1;
4
+ }
5
+ else {
6
+ return 2;
7
+ }
8
+ }
9
+ /**
10
+ * @description: 跨列计算
11
+ * @author ChenRui
12
+ * @date 2020/12/1 19:34
13
+ */
14
+ const generateGridColumnEnd = (configs) => {
15
+ return transform(configs);
16
+ };
17
+ export default generateGridColumnEnd;
18
+ //# sourceMappingURL=generate-grid-column-end.filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-grid-column-end.filter.js","sourceRoot":"","sources":["generate-grid-column-end.filter.ts"],"names":[],"mappings":"AAKA,SAAS,SAAS,CAAC,OAAiB;IAClC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACzC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;KAC3B;SAAM;QACL,OAAO,CAAC,CAAC;KACV;AACH,CAAC;AACD;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,CAAC,OAAiB,EAAE,EAAE;IAClD,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -0,0 +1,20 @@
1
+ function transform(configs) {
2
+ if (configs != null && configs.length > 0) {
3
+ const arr = [];
4
+ configs.sort((a, b) => a.order - b.order).forEach((item) => arr.push(item.value + "fr"));
5
+ return arr.join(" ");
6
+ }
7
+ else {
8
+ return `1fr`;
9
+ }
10
+ }
11
+ /**
12
+ * @description: 网格布局比例分配
13
+ * @author ChenRui
14
+ * @date 2020/12/1 19:32
15
+ */
16
+ const generateGridTemplateColumns = (configs) => {
17
+ return transform(configs);
18
+ };
19
+ export default generateGridTemplateColumns;
20
+ //# sourceMappingURL=generate-grid-template-columns.filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-grid-template-columns.filter.js","sourceRoot":"","sources":["generate-grid-template-columns.filter.ts"],"names":[],"mappings":"AAKA,SAAS,SAAS,CAAC,OAAiB;IAClC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACzC,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC;QACzG,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACtB;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AACD;;;;GAIG;AACH,MAAM,2BAA2B,GAAG,CAAC,OAAiB,EAAE,EAAE;IACxD,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC,CAAC;AAEF,eAAe,2BAA2B,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @description: 通用字典转换
3
+ * @author ChenRui
4
+ * @date 2020/7/29 18:43
5
+ */
6
+ function encode(code, switchEnumFiled, attribute, defaultVal) {
7
+ if (switchEnumFiled != null && Object.values(switchEnumFiled).length > 0) {
8
+ for (const switchEnum of Object.values(switchEnumFiled)) {
9
+ return switchEnum[attribute || "name"] || defaultVal;
10
+ }
11
+ }
12
+ return defaultVal || "";
13
+ }
14
+ const switchEnumConvert = (code, switchEnumFiled, attribute, defaultVal) => {
15
+ return encode(code, switchEnumFiled, attribute, defaultVal);
16
+ };
17
+ export default switchEnumConvert;
18
+ //# sourceMappingURL=switch-enum-convert.filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch-enum-convert.filter.js","sourceRoot":"","sources":["switch-enum-convert.filter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,SAAS,MAAM,CAAC,IAAY,EAAE,eAAoB,EAAE,SAAkB,EAAE,UAAgB;IACtF,IAAI,eAAe,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;QACxE,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,CAAQ,EAAE;YAC9D,OAAO,UAAU,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC;SACtD;KACF;IACD,OAAO,UAAU,IAAI,EAAE,CAAC;AAC1B,CAAC;AACD,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,eAAoB,EAAE,SAAkB,EAAE,UAAgB,EAAE,EAAE;IACrG,OAAO,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { ZoomType } from "@/constants/enum/zoom-type";
2
+ import { getCurrentInstance } from "vue";
3
+ /**
4
+ * @description: 通用字典转换
5
+ * @author ChenRui
6
+ * @date 2020/7/29 18:43
7
+ */
8
+ function encode(data, formControl) {
9
+ const proxy = getCurrentInstance()?.proxy;
10
+ const mathjs = proxy?.$mathjs;
11
+ if (data && formControl.controlAttr.zoomMultiple) {
12
+ if (formControl.controlAttr.zoomType === ZoomType.enlarge.code) {
13
+ data = mathjs.format(mathjs.evaluate(`${data} * ${formControl.controlAttr.zoomMultiple}`), { notation: "fixed" });
14
+ }
15
+ else if (formControl.controlAttr.zoomType === ZoomType.narrow.code) {
16
+ data = mathjs.format(mathjs.evaluate(`${data} / ${formControl.controlAttr.zoomMultiple}`), { notation: "fixed" });
17
+ }
18
+ else if (formControl.controlAttr.zoomType === ZoomType.automatic.code) {
19
+ data = mathjs.format(mathjs.evaluate(`${data} * ${formControl.controlAttr.zoomMultiple}`), { notation: "fixed" });
20
+ }
21
+ }
22
+ if (String(formControl.value) === "0") {
23
+ data = 0;
24
+ }
25
+ return data;
26
+ }
27
+ const zoomMultiple = (code, formControl) => {
28
+ return encode(code, formControl);
29
+ };
30
+ export default zoomMultiple;
31
+ //# sourceMappingURL=zoom-multiple.filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zoom-multiple.filter.js","sourceRoot":"","sources":["zoom-multiple.filter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAGtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,KAAK,CAAC;AAEzC;;;;GAIG;AACH,SAAS,MAAM,CAAC,IAAS,EAAE,WAAwB;IACjD,MAAM,KAAK,GAAQ,kBAAkB,EAAE,EAAE,KAAK,CAAC;IAC/C,MAAM,MAAM,GAAiB,KAAK,EAAE,OAAuB,CAAC;IAC5D,IAAI,IAAI,IAAI,WAAW,CAAC,WAAW,CAAC,YAAY,EAAE;QAChD,IAAI,WAAW,CAAC,WAAW,CAAC,QAAQ,KAAK,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE;YAC9D,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,MAAM,WAAW,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;SACnH;aAAM,IAAI,WAAW,CAAC,WAAW,CAAC,QAAQ,KAAK,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE;YACpE,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,MAAM,WAAW,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;SACnH;aAAM,IAAI,WAAW,CAAC,WAAW,CAAC,QAAQ,KAAK,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE;YACvE,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,MAAM,WAAW,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;SACnH;KACF;IACD,IAAI,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE;QACrC,IAAI,GAAG,CAAC,CAAC;KACV;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AACD,MAAM,YAAY,GAAG,CAAC,IAAS,EAAE,WAAwB,EAAE,EAAE;IAC3D,OAAO,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
package/src/index.js ADDED
@@ -0,0 +1,69 @@
1
+ import DyForm from "./components/form/DvForm.vue";
2
+ import { formToolsService } from "@/services";
3
+ import { DEFAULT_FORM_FILE_NAME } from "./constants/config/form.config";
4
+ import { formLocalForageService } from "@/services";
5
+ import { dictLocalForageService } from "@/services";
6
+ import { create, subtractDependencies, addDependencies, multiplyDependencies, divideDependencies, formatDependencies, evaluateDependencies } from "mathjs";
7
+ import { cleanLocalForageService } from "@/services";
8
+ export * from "./components/index";
9
+ export * from "./constants/index";
10
+ export * from "./core/index";
11
+ export * from "./domain/index";
12
+ export * from "./services/index";
13
+ export * from "./store/index";
14
+ export * from "./types/vfForm";
15
+ import "./styles/index.scss";
16
+ import "dayjs/locale/zh-cn";
17
+ import dayjs from "dayjs";
18
+ const components = {
19
+ DyForm,
20
+ };
21
+ const install = function (app, options) {
22
+ if (install.installed)
23
+ return;
24
+ install.installed = true;
25
+ // Modal.install(vue);
26
+ Object.keys(components).forEach((key) => {
27
+ app.component(key, components[key]);
28
+ });
29
+ dayjs.locale("zh-cn");
30
+ const url = options && options.url ? options.url : "./resources/json/" + DEFAULT_FORM_FILE_NAME;
31
+ app.config.globalProperties.$qlForm = {
32
+ url: url,
33
+ contextPath: options.contextPath || "/ms-loong",
34
+ dictUrl: options && options.dictUrl ? options.dictUrl : "",
35
+ dictRestLoadMode: options && options.dictRestLoadMode ? options.dictRestLoadMode : "GET",
36
+ dictRestLoadBody: options && options.dictRestLoadBody ? options.dictRestLoadBody : undefined,
37
+ dictRestLoadHeaders: options && options.dictRestLoadHeaders ? options.dictRestLoadHeaders : undefined,
38
+ dictRestLoadOnlyBody: options && options.dictRestLoadOnlyBody ? options.dictRestLoadOnlyBody : false,
39
+ loadMode: options && options.loadMode ? options.loadMode : "static",
40
+ appId: options && options.appId ? options.appId : "",
41
+ onlySimpleLoadConfig: options && options.onlySimpleLoadConfig ? options.onlySimpleLoadConfig : false,
42
+ urls: options?.urls,
43
+ dictUrls: options?.dictUrls,
44
+ desApiAddr: options?.desApiAddr || "",
45
+ };
46
+ app.config.globalProperties.$formToolsService = formToolsService;
47
+ window.$app = app;
48
+ cleanLocalForageService.init();
49
+ formLocalForageService.init();
50
+ dictLocalForageService.init();
51
+ const mathjsDependencies = {
52
+ formatDependencies,
53
+ subtractDependencies,
54
+ multiplyDependencies,
55
+ evaluateDependencies,
56
+ addDependencies,
57
+ divideDependencies,
58
+ };
59
+ const mathjs = create(mathjsDependencies, {
60
+ number: "BigNumber",
61
+ precision: 20,
62
+ });
63
+ app.config.globalProperties.$mathjs = mathjs;
64
+ };
65
+ const VueLoForm = {
66
+ install,
67
+ };
68
+ export default VueLoForm;
69
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
package/src/main.js ADDED
@@ -0,0 +1,22 @@
1
+ import { createApp } from "vue";
2
+ import App from "./App.vue";
3
+ import "ant-design-vue/dist/antd.css";
4
+ import "@dhccmobile/common-style/css/common-style.css";
5
+ import VueLoForm from "@/index";
6
+ const app = createApp(App);
7
+ // 设置为 true 以在浏览器开发工具的 performance/timeline 面板中启用对组件初始化、编译、渲染和更新的性能追踪。
8
+ app.config.performance = true;
9
+ app
10
+ .use(VueLoForm, {
11
+ url: "http://82.156.213.34:8080",
12
+ appId: "1009549397931601920",
13
+ onlySimpleLoadConfig: false,
14
+ loadMode: "dynamic",
15
+ })
16
+ .mount("#app");
17
+ const win = window;
18
+ win.$loFormConfig = {
19
+ // theme: "labelWrap",
20
+ customThemeClass: "custom",
21
+ };
22
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,GAAG,MAAM,WAAW,CAAC;AAC5B,OAAO,8BAA8B,CAAC;AACtC,OAAO,+CAA+C,CAAC;AACvD,OAAO,SAAS,MAAM,SAAS,CAAC;AAEhC,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;AAC3B,sEAAsE;AACtE,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;AAC9B,GAAG;KACA,GAAG,CAAC,SAAS,EAAE;IACd,GAAG,EAAE,2BAA2B;IAChC,KAAK,EAAE,qBAAqB;IAC5B,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,SAAS;CACpB,CAAC;KACD,KAAK,CAAC,MAAM,CAAC,CAAC;AACjB,MAAM,GAAG,GAAQ,MAAM,CAAC;AACxB,GAAG,CAAC,aAAa,GAAG;IAClB,sBAAsB;IACpB,gBAAgB,EAAE,QAAQ;CAC5B,CAAC"}
package/src/main.ts CHANGED
@@ -9,8 +9,8 @@ const app = createApp(App);
9
9
  app.config.performance = true;
10
10
  app
11
11
  .use(VueLoForm, {
12
- url: "http://10.7.114.81:30570",
13
- appId: "1009549605007003648,1014269796445605888,1015215693289242624,1028015525370548224",
12
+ url: "http://82.156.213.34:8080",
13
+ appId: "1009549397931601920",
14
14
  onlySimpleLoadConfig: false,
15
15
  loadMode: "dynamic",
16
16
  })
@@ -0,0 +1,74 @@
1
+ class ApiService {
2
+ createBasicHeaders() {
3
+ return {
4
+ "Content-Type": "application/json",
5
+ Accept: "application/json",
6
+ };
7
+ }
8
+ createAuthHeaders() {
9
+ const data = JSON.parse(localStorage.getItem("core:token") || sessionStorage.getItem("core:token") || "{}");
10
+ const accessToken = data.accessToken || "";
11
+ const jti = data.jti || "";
12
+ return {
13
+ Authorization: "bearer " + accessToken,
14
+ "user-identity": jti,
15
+ "Content-Type": "application/json",
16
+ Accept: "application/json",
17
+ };
18
+ }
19
+ fetch(path, query, body, method, header) {
20
+ path = query != null ? this.urlQueryConvert(path, query) : path;
21
+ return fetch(path, {
22
+ method: method ? method : "GET",
23
+ headers: header,
24
+ body: body,
25
+ }).then(function (response) {
26
+ response.status; //=> number 100–599
27
+ response.statusText; //=> String
28
+ response.headers; //=> Headers
29
+ response.url; //=> String
30
+ return response.json();
31
+ }, function (error) {
32
+ error.message; //=> String
33
+ });
34
+ }
35
+ /**
36
+ * @description: url请求参数组装
37
+ * @author ChenRui
38
+ * @date 2020/8/28 15:21
39
+ */
40
+ urlQueryConvert(url, query) {
41
+ let connectiveSymbol = "";
42
+ if (url.indexOf("?") !== -1) {
43
+ connectiveSymbol = "&";
44
+ }
45
+ else {
46
+ connectiveSymbol = "?";
47
+ }
48
+ if (query) {
49
+ Object.keys(query).forEach((key, idx) => {
50
+ const val = query[key];
51
+ if (idx === 0) {
52
+ if (val != null && val !== "null" && val !== "undefined") {
53
+ url += connectiveSymbol + key + "=" + val;
54
+ }
55
+ else {
56
+ url += connectiveSymbol + key + "=";
57
+ }
58
+ }
59
+ else {
60
+ if (val != null && val !== "null" && val !== "undefined") {
61
+ url += "&" + key + "=" + val;
62
+ }
63
+ else {
64
+ url += "&" + key + "=";
65
+ }
66
+ }
67
+ });
68
+ }
69
+ return url;
70
+ }
71
+ }
72
+ const apiService = new ApiService();
73
+ export { apiService };
74
+ //# sourceMappingURL=api.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.service.js","sourceRoot":"","sources":["api.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import * as sourceLocalForage from "localforage";
2
+ import { NAME } from "../constants/config/storage.config";
3
+ class CleanLocalForageService {
4
+ localForage;
5
+ config;
6
+ get formConfig() {
7
+ if (window.$app.config.globalProperties.$qlForm) {
8
+ return window.$app.config.globalProperties.$qlForm;
9
+ }
10
+ return {};
11
+ }
12
+ constructor() { }
13
+ init() {
14
+ const appId = this.formConfig.appId ? this.formConfig.appId : "";
15
+ this.config = {
16
+ driver: sourceLocalForage.INDEXEDDB,
17
+ name: NAME,
18
+ version: 1.0,
19
+ storeName: "clean:" + appId,
20
+ description: "用于清理实例的缓存对象",
21
+ };
22
+ this.localForage = sourceLocalForage.createInstance(this.config);
23
+ }
24
+ /**
25
+ * @description: 设值
26
+ * @author ChenRui
27
+ * @date 2021/3/12 16:31
28
+ */
29
+ setItem(key, value) {
30
+ this.localForage.setItem(key, value);
31
+ }
32
+ /**
33
+ * @description: 取值
34
+ * @author ChenRui
35
+ * @date 2021/3/12 16:31
36
+ */
37
+ getItem(key) {
38
+ return this.localForage.getItem(key);
39
+ }
40
+ /**
41
+ * @description: 删除实例
42
+ * @author ChenRui
43
+ * @date 2021/6/22 11:08
44
+ */
45
+ dropInstance() {
46
+ if (this.localForage != null) {
47
+ this.localForage.dropInstance().then();
48
+ }
49
+ }
50
+ }
51
+ const cleanLocalForageService = new CleanLocalForageService();
52
+ export { CleanLocalForageService, cleanLocalForageService };
53
+ //# sourceMappingURL=clean-local-forage.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clean-local-forage.service.js","sourceRoot":"","sources":["clean-local-forage.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,iBAAiB,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,MAAM,uBAAuB;IAC3B,WAAW,CAAM;IACjB,MAAM,CAAM;IACZ,IAAI,UAAU;QACZ,IAAK,MAAc,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE;YACxD,OAAQ,MAAc,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC;SAC7D;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,gBAAe,CAAC;IAEhB,IAAI;QACF,MAAM,KAAK,GAAW,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,IAAI,CAAC,MAAM,GAAG;YACZ,MAAM,EAAE,iBAAiB,CAAC,SAAS;YACnC,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE,QAAQ,GAAG,KAAK;YAC3B,WAAW,EAAE,aAAa;SAC3B,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,GAAW,EAAE,KAAU;QAC7B,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,GAAW;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,YAAY;QACV,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE;YAC5B,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,CAAC;SACxC;IACH,CAAC;CACF;AACD,MAAM,uBAAuB,GAA4B,IAAI,uBAAuB,EAAE,CAAC;AACvF,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,CAAC"}