@maketribe/ms-app 3.0.22 → 3.0.24

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 (170) hide show
  1. package/dist/cjs/components/column-components/column-link/column-link-options.d.ts +34 -0
  2. package/dist/cjs/components/column-components/column-link/column-link-options.js +31 -0
  3. package/dist/cjs/components/column-components/column-link/column-link-options.js.map +1 -0
  4. package/dist/cjs/components/column-components/column-link/column-link.d.ts +60 -0
  5. package/dist/cjs/components/column-components/column-link/column-link.js +35 -0
  6. package/dist/cjs/components/column-components/column-link/column-link.js.map +1 -0
  7. package/dist/cjs/components/column-components/column-link/index.d.ts +62 -0
  8. package/dist/cjs/components/column-components/column-link/index.js +14 -0
  9. package/dist/cjs/components/column-components/column-link/index.js.map +1 -0
  10. package/dist/cjs/components/column-components/column-switch/column-switch-options.d.ts +4 -1
  11. package/dist/cjs/components/column-components/column-switch/column-switch-options.js +1 -1
  12. package/dist/cjs/components/column-components/column-switch/column-switch-options.js.map +1 -1
  13. package/dist/cjs/components/column-components/column-switch/column-switch.d.ts +6 -2
  14. package/dist/cjs/components/column-components/column-switch/column-switch.js +6 -1
  15. package/dist/cjs/components/column-components/column-switch/column-switch.js.map +1 -1
  16. package/dist/cjs/components/column-components/column-switch/index.d.ts +6 -2
  17. package/dist/cjs/components/column-components/index.d.ts +1 -0
  18. package/dist/cjs/components/column-components/index.js +5 -0
  19. package/dist/cjs/components/column-components/index.js.map +1 -1
  20. package/dist/cjs/components/data-model/data-table/composables/use-column.d.ts +5 -0
  21. package/dist/cjs/components/data-model/data-table/composables/use-column.js.map +1 -1
  22. package/dist/cjs/components/form-components/form-data-table-select/form-data-table-select.js +1 -1
  23. package/dist/cjs/components/form-components/form-data-table-select/form-data-table-select.js.map +1 -1
  24. package/dist/cjs/components/index.js +51 -46
  25. package/dist/cjs/components/index.js.map +1 -1
  26. package/dist/cjs/components/json-editor/index.d.ts +2 -2
  27. package/dist/cjs/components/json-editor/json-editor-options.d.ts +1 -1
  28. package/dist/cjs/components/json-editor/json-editor-options.js +1 -1
  29. package/dist/cjs/components/json-editor/json-editor-options.js.map +1 -1
  30. package/dist/cjs/components/json-editor/json-editor.d.ts +2 -2
  31. package/dist/cjs/components/json-editor/json-editor.js +3 -2
  32. package/dist/cjs/components/json-editor/json-editor.js.map +1 -1
  33. package/dist/cjs/core/component/ConfigComponents.js +8 -0
  34. package/dist/cjs/core/component/ConfigComponents.js.map +1 -1
  35. package/dist/cjs/core/component/DataTableComponents.js +7 -0
  36. package/dist/cjs/core/component/DataTableComponents.js.map +1 -1
  37. package/dist/cjs/dataview/config/ConfigForm.d.ts +2 -2
  38. package/dist/cjs/dataview/config/ConfigForm.js +27 -5
  39. package/dist/cjs/dataview/config/ConfigForm.js.map +1 -1
  40. package/dist/cjs/index.js +51 -46
  41. package/dist/cjs/index.js.map +1 -1
  42. package/dist/cjs/installer.js +1 -0
  43. package/dist/cjs/installer.js.map +1 -1
  44. package/dist/cjs/layouts/components/bar/index.js +1 -0
  45. package/dist/cjs/layouts/components/bar/index.js.map +1 -1
  46. package/dist/cjs/layouts/components/header/tools.js +1 -0
  47. package/dist/cjs/layouts/components/header/tools.js.map +1 -1
  48. package/dist/cjs/layouts/components/lock/lock.js +1 -0
  49. package/dist/cjs/layouts/components/lock/lock.js.map +1 -1
  50. package/dist/cjs/layouts/components/menu/menu-item.js +1 -0
  51. package/dist/cjs/layouts/components/menu/menu-item.js.map +1 -1
  52. package/dist/cjs/layouts/container/default.js +1 -0
  53. package/dist/cjs/layouts/container/default.js.map +1 -1
  54. package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js +1 -0
  55. package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
  56. package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js +1 -0
  57. package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
  58. package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js +1 -0
  59. package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
  60. package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js +1 -0
  61. package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
  62. package/dist/cjs/page/index/dv/default/table.vue2.js +1 -0
  63. package/dist/cjs/page/index/dv/default/table.vue2.js.map +1 -1
  64. package/dist/cjs/page/index/dv/local-log/index.vue2.js +1 -0
  65. package/dist/cjs/page/index/dv/local-log/index.vue2.js.map +1 -1
  66. package/dist/cjs/page/index/dv/ms-member/index.vue2.js +1 -0
  67. package/dist/cjs/page/index/dv/ms-member/index.vue2.js.map +1 -1
  68. package/dist/cjs/page/index/dv/ms-role/index.vue2.js +1 -0
  69. package/dist/cjs/page/index/dv/ms-role/index.vue2.js.map +1 -1
  70. package/dist/cjs/page/index/material/index.vue2.js +1 -0
  71. package/dist/cjs/page/index/material/index.vue2.js.map +1 -1
  72. package/dist/cjs/page/login/index.vue2.js +1 -0
  73. package/dist/cjs/page/login/index.vue2.js.map +1 -1
  74. package/dist/cjs/page/signup/index.vue2.js +1 -0
  75. package/dist/cjs/page/signup/index.vue2.js.map +1 -1
  76. package/dist/esm/components/column-components/column-link/column-link-options.d.ts +34 -0
  77. package/dist/esm/components/column-components/column-link/column-link-options.js +28 -0
  78. package/dist/esm/components/column-components/column-link/column-link-options.js.map +1 -0
  79. package/dist/esm/components/column-components/column-link/column-link.d.ts +60 -0
  80. package/dist/esm/components/column-components/column-link/column-link.js +33 -0
  81. package/dist/esm/components/column-components/column-link/column-link.js.map +1 -0
  82. package/dist/esm/components/column-components/column-link/index.d.ts +62 -0
  83. package/dist/esm/components/column-components/column-link/index.js +7 -0
  84. package/dist/esm/components/column-components/column-link/index.js.map +1 -0
  85. package/dist/esm/components/column-components/column-switch/column-switch-options.d.ts +4 -1
  86. package/dist/esm/components/column-components/column-switch/column-switch-options.js +1 -1
  87. package/dist/esm/components/column-components/column-switch/column-switch-options.js.map +1 -1
  88. package/dist/esm/components/column-components/column-switch/column-switch.d.ts +6 -2
  89. package/dist/esm/components/column-components/column-switch/column-switch.js +6 -1
  90. package/dist/esm/components/column-components/column-switch/column-switch.js.map +1 -1
  91. package/dist/esm/components/column-components/column-switch/index.d.ts +6 -2
  92. package/dist/esm/components/column-components/index.d.ts +1 -0
  93. package/dist/esm/components/column-components/index.js +2 -0
  94. package/dist/esm/components/column-components/index.js.map +1 -1
  95. package/dist/esm/components/data-model/data-table/composables/use-column.d.ts +5 -0
  96. package/dist/esm/components/data-model/data-table/composables/use-column.js.map +1 -1
  97. package/dist/esm/components/form-components/form-data-table-select/form-data-table-select.js +1 -1
  98. package/dist/esm/components/form-components/form-data-table-select/form-data-table-select.js.map +1 -1
  99. package/dist/esm/components/index.js +2 -0
  100. package/dist/esm/components/index.js.map +1 -1
  101. package/dist/esm/components/json-editor/index.d.ts +2 -2
  102. package/dist/esm/components/json-editor/json-editor-options.d.ts +1 -1
  103. package/dist/esm/components/json-editor/json-editor-options.js +1 -1
  104. package/dist/esm/components/json-editor/json-editor-options.js.map +1 -1
  105. package/dist/esm/components/json-editor/json-editor.d.ts +2 -2
  106. package/dist/esm/components/json-editor/json-editor.js +3 -2
  107. package/dist/esm/components/json-editor/json-editor.js.map +1 -1
  108. package/dist/esm/core/component/ConfigComponents.js +8 -0
  109. package/dist/esm/core/component/ConfigComponents.js.map +1 -1
  110. package/dist/esm/core/component/DataTableComponents.js +7 -0
  111. package/dist/esm/core/component/DataTableComponents.js.map +1 -1
  112. package/dist/esm/dataview/config/ConfigForm.d.ts +2 -2
  113. package/dist/esm/dataview/config/ConfigForm.js +27 -5
  114. package/dist/esm/dataview/config/ConfigForm.js.map +1 -1
  115. package/dist/esm/index.js +2 -0
  116. package/dist/esm/index.js.map +1 -1
  117. package/dist/esm/installer.js +1 -0
  118. package/dist/esm/installer.js.map +1 -1
  119. package/dist/esm/layouts/components/bar/index.js +1 -0
  120. package/dist/esm/layouts/components/bar/index.js.map +1 -1
  121. package/dist/esm/layouts/components/header/tools.js +1 -0
  122. package/dist/esm/layouts/components/header/tools.js.map +1 -1
  123. package/dist/esm/layouts/components/lock/lock.js +1 -0
  124. package/dist/esm/layouts/components/lock/lock.js.map +1 -1
  125. package/dist/esm/layouts/components/menu/menu-item.js +1 -0
  126. package/dist/esm/layouts/components/menu/menu-item.js.map +1 -1
  127. package/dist/esm/layouts/container/default.js +1 -0
  128. package/dist/esm/layouts/container/default.js.map +1 -1
  129. package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js +1 -0
  130. package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
  131. package/dist/esm/page/index/dv/default/single/list/normal.vue2.js +1 -0
  132. package/dist/esm/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
  133. package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js +1 -0
  134. package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
  135. package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js +1 -0
  136. package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
  137. package/dist/esm/page/index/dv/default/table.vue2.js +1 -0
  138. package/dist/esm/page/index/dv/default/table.vue2.js.map +1 -1
  139. package/dist/esm/page/index/dv/local-log/index.vue2.js +1 -0
  140. package/dist/esm/page/index/dv/local-log/index.vue2.js.map +1 -1
  141. package/dist/esm/page/index/dv/ms-member/index.vue2.js +1 -0
  142. package/dist/esm/page/index/dv/ms-member/index.vue2.js.map +1 -1
  143. package/dist/esm/page/index/dv/ms-role/index.vue2.js +1 -0
  144. package/dist/esm/page/index/dv/ms-role/index.vue2.js.map +1 -1
  145. package/dist/esm/page/index/material/index.vue2.js +1 -0
  146. package/dist/esm/page/index/material/index.vue2.js.map +1 -1
  147. package/dist/esm/page/login/index.vue2.js +1 -0
  148. package/dist/esm/page/login/index.vue2.js.map +1 -1
  149. package/dist/esm/page/signup/index.vue2.js +1 -0
  150. package/dist/esm/page/signup/index.vue2.js.map +1 -1
  151. package/dist/style/components/index.css +1 -1
  152. package/dist/style/components/json-editor.css +1 -0
  153. package/dist/style/index.css +1 -1
  154. package/dist/style/src/components/index.scss +1 -0
  155. package/dist/style/src/components/json-editor.scss +7 -0
  156. package/dist/style/src/page/dv/index.scss +1 -1
  157. package/package.json +4 -4
  158. package/src/components/column-components/column-link/column-link-options.ts +34 -0
  159. package/src/components/column-components/column-link/column-link.tsx +27 -0
  160. package/src/components/column-components/column-link/index.ts +7 -0
  161. package/src/components/column-components/column-switch/column-switch-options.ts +2 -2
  162. package/src/components/column-components/column-switch/column-switch.tsx +6 -1
  163. package/src/components/column-components/index.ts +1 -0
  164. package/src/components/data-model/data-table/composables/use-column.ts +2 -0
  165. package/src/components/form-components/form-data-table-select/form-data-table-select.tsx +1 -1
  166. package/src/components/json-editor/json-editor-options.ts +1 -1
  167. package/src/components/json-editor/json-editor.tsx +3 -2
  168. package/src/core/component/ConfigComponents.ts +9 -0
  169. package/src/core/component/DataTableComponents.ts +8 -0
  170. package/src/dataview/config/ConfigForm.ts +27 -4
@@ -30,7 +30,8 @@ class ConfigForm extends DataForm {
30
30
  componentProps: {
31
31
  options: [
32
32
  { value: "string", label: "\u5B57\u7B26\u4E32" },
33
- { value: "int", label: "\u6574\u6570" }
33
+ { value: "int", label: "\u6574\u6570" },
34
+ { value: "json", label: "JSON" }
34
35
  ],
35
36
  onChange: () => {
36
37
  this.handleTypeChange(this.data);
@@ -45,6 +46,20 @@ class ConfigForm extends DataForm {
45
46
  label: "\u914D\u7F6E\u503C",
46
47
  required: true,
47
48
  defaultValue: null,
49
+ rules: [
50
+ {
51
+ validator: (rule, value, callback) => {
52
+ if (this.data?.type === "json") {
53
+ try {
54
+ JSON.parse(value);
55
+ } catch (e) {
56
+ callback(new Error("JSON\u683C\u5F0F\u9519\u8BEF"));
57
+ }
58
+ }
59
+ callback();
60
+ }
61
+ }
62
+ ],
48
63
  componentInfo: this.resolveType(defaultType)
49
64
  })
50
65
  ]);
@@ -61,19 +76,26 @@ class ConfigForm extends DataForm {
61
76
  }
62
77
  formatItem(item) {
63
78
  let value = item.value;
64
- try {
65
- value = JSON.parse(item.value);
66
- } catch (e) {
79
+ if (item.type !== "json") {
80
+ try {
81
+ value = JSON.parse(item.value);
82
+ } catch (e) {
83
+ }
67
84
  }
68
85
  return { ...item, value };
69
86
  }
70
87
  formatSubmitData(data) {
71
- return { ...data, value: JSON.stringify(data.value) };
88
+ return {
89
+ ...data,
90
+ value: data.type === "json" ? data.value : JSON.stringify(data.value)
91
+ };
72
92
  }
73
93
  resolveType(type) {
74
94
  switch (type) {
75
95
  case "int":
76
96
  return "MKConfigInputNumber";
97
+ case "json":
98
+ return "MKConfigJsonEditor";
77
99
  default:
78
100
  return "MKConfigInput";
79
101
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigForm.js","sources":["../../../../src/dataview/config/ConfigForm.ts"],"sourcesContent":["import {\n DataForm,\n DataFormOptions,\n FormColumn,\n IComponents,\n} from \"@maketribe/dm\";\nimport { defineDataForm } from \"../../define-data-form\";\nimport { ConfigComponents, ITypeResolver } from \"../../core\";\n\nexport type Config<T = any> = {\n id: string;\n key: string;\n type: string;\n value: T;\n};\n\nexport type ConfigFormOptions = DataFormOptions & {\n typeResolver?: ITypeResolver<Config>;\n configComponent?: IComponents;\n};\n\nexport class ConfigForm\n extends DataForm<Config>\n implements ITypeResolver<Config>\n{\n configComponent: IComponents;\n\n constructor(options: ConfigFormOptions = {}) {\n super({ name: \"ms-cfg\", ...options });\n\n this.configComponent = options.configComponent ?? new ConfigComponents();\n }\n\n protected async initialize() {\n await super.initialize();\n\n const defaultType = \"string\";\n this.setColumns([\n new FormColumn({ name: \"id\", label: \"编号\" }),\n new FormColumn({ name: \"key\", label: \"配置键\", required: true }),\n new FormColumn({\n name: \"type\",\n label: \"类型\",\n componentInfo: \"MKFormDataSelect\",\n defaultValue: defaultType,\n required: true,\n componentProps: {\n options: [\n { value: \"string\", label: \"字符串\" },\n { value: \"int\", label: \"整数\" },\n ],\n onChange: () => {\n this.handleTypeChange(this.data);\n\n if (this.data) {\n this.data.value = null;\n }\n },\n },\n }),\n new FormColumn({\n name: \"value\",\n label: \"配置值\",\n required: true,\n defaultValue: null,\n componentInfo: this.resolveType(defaultType),\n }),\n ]);\n\n this.dataChangeEvent.on(({ data }) => {\n this.handleTypeChange(data);\n });\n }\n\n handleTypeChange(data: Config | null) {\n if (!data) {\n return;\n }\n\n const valueFormColumn = this.getColumn(\"value\")!;\n valueFormColumn.componentInfo =\n this.configComponent.resolveComponent(this.resolveItemType(data!)) ||\n this.configComponent.resolveComponent(\"MKFormInput\")!;\n }\n\n formatItem(item: Config): Config {\n let value = item.value;\n\n try {\n value = JSON.parse(item.value);\n } catch (e) {}\n\n return { ...item, value };\n }\n\n formatSubmitData(data: any) {\n return { ...data, value: JSON.stringify(data.value) };\n }\n\n resolveType(type: string) {\n switch (type) {\n case \"int\":\n return \"MKConfigInputNumber\";\n default:\n return \"MKConfigInput\";\n }\n }\n\n resolveItemType(config: Config) {\n return this.resolveType(config.type);\n }\n}\n\ndefineDataForm(ConfigForm);\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfigForm.js","sources":["../../../../src/dataview/config/ConfigForm.ts"],"sourcesContent":["import {\n DataForm,\n DataFormOptions,\n FormColumn,\n IComponents,\n} from \"@maketribe/dm\";\nimport { defineDataForm } from \"../../define-data-form\";\nimport { ConfigComponents, ITypeResolver } from \"../../core\";\n\nexport type Config<T = any> = {\n id: string;\n key: string;\n type: string;\n value: T;\n};\n\nexport type ConfigFormOptions = DataFormOptions & {\n typeResolver?: ITypeResolver<Config>;\n configComponent?: IComponents;\n};\n\nexport class ConfigForm\n extends DataForm<Config>\n implements ITypeResolver<Config>\n{\n configComponent: IComponents;\n\n constructor(options: ConfigFormOptions = {}) {\n super({ name: \"ms-cfg\", ...options });\n\n this.configComponent = options.configComponent ?? new ConfigComponents();\n }\n\n protected async initialize() {\n await super.initialize();\n\n const defaultType = \"string\";\n this.setColumns([\n new FormColumn({ name: \"id\", label: \"编号\" }),\n new FormColumn({ name: \"key\", label: \"配置键\", required: true }),\n new FormColumn({\n name: \"type\",\n label: \"类型\",\n componentInfo: \"MKFormDataSelect\",\n defaultValue: defaultType,\n required: true,\n componentProps: {\n options: [\n { value: \"string\", label: \"字符串\" },\n { value: \"int\", label: \"整数\" },\n { value: \"json\", label: \"JSON\" },\n ],\n onChange: () => {\n this.handleTypeChange(this.data);\n\n if (this.data) {\n this.data.value = null;\n }\n },\n },\n }),\n new FormColumn({\n name: \"value\",\n label: \"配置值\",\n required: true,\n defaultValue: null,\n rules: [\n {\n validator: (rule, value, callback) => {\n if (this.data?.type === \"json\") {\n try {\n JSON.parse(value);\n } catch (e) {\n callback(new Error(\"JSON格式错误\"));\n }\n }\n\n callback();\n },\n },\n ],\n componentInfo: this.resolveType(defaultType),\n }),\n ]);\n\n this.dataChangeEvent.on(({ data }) => {\n this.handleTypeChange(data);\n });\n }\n\n handleTypeChange(data: Config | null) {\n if (!data) {\n return;\n }\n\n const valueFormColumn = this.getColumn(\"value\")!;\n valueFormColumn.componentInfo =\n this.configComponent.resolveComponent(this.resolveItemType(data!)) ||\n this.configComponent.resolveComponent(\"MKFormInput\")!;\n }\n\n formatItem(item: Config): Config {\n let value = item.value;\n\n if (item.type !== \"json\") {\n try {\n value = JSON.parse(item.value);\n } catch (e) {}\n }\n\n return { ...item, value };\n }\n\n formatSubmitData(data: any) {\n return {\n ...data,\n value: data.type === \"json\" ? data.value : JSON.stringify(data.value),\n };\n }\n\n resolveType(type: string) {\n switch (type) {\n case \"int\":\n return \"MKConfigInputNumber\";\n case \"json\":\n return \"MKConfigJsonEditor\";\n default:\n return \"MKConfigInput\";\n }\n }\n\n resolveItemType(config: Config) {\n return this.resolveType(config.type);\n }\n}\n\ndefineDataForm(ConfigForm);\n"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -90,6 +90,7 @@ export { MKColumnJson } from './components/column-components/column-json/index.j
90
90
  export { MKColumnDate } from './components/column-components/column-date/index.js';
91
91
  export { MKColumnSwitch } from './components/column-components/column-switch/index.js';
92
92
  export { MKColumnTag } from './components/column-components/column-tag/index.js';
93
+ export { MKColumnLink } from './components/column-components/column-link/index.js';
93
94
  export { MKConditionInput } from './components/condition-components/condition-input/index.js';
94
95
  export { MKConditionDate } from './components/condition-components/condition-date/index.js';
95
96
  export { MKConditionNumber } from './components/condition-components/condition-number/index.js';
@@ -162,6 +163,7 @@ export { columnJsonProps } from './components/column-components/column-json/colu
162
163
  export { columnDateProps, dateTypes } from './components/column-components/column-date/column-date-options.js';
163
164
  export { columnSwitchEmits, columnSwitchProps } from './components/column-components/column-switch/column-switch-options.js';
164
165
  export { columnTagProps } from './components/column-components/column-tag/column-tag-options.js';
166
+ export { columnLinkEmits, columnLinkProps } from './components/column-components/column-link/column-link-options.js';
165
167
  export { conditionInputProps } from './components/condition-components/condition-input/condition-input-options.js';
166
168
  export { conditionDateProps } from './components/condition-components/condition-date/condition-date-options.js';
167
169
  export { conditionNumberProps } from './components/condition-components/condition-number/condition-number-options.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/index.ts"],"sourcesContent":["export * from \"./constants\";\nexport * from \"./dataview\";\n\nexport * from \"./core\";\n\nimport { installer } from \"./installer\";\n\nexport * from \"./layouts\";\nexport * from \"./composables\";\nexport * from \"./components\";\nexport * from \"./tokens\";\n\nexport const install = installer.install;\nexport const version = installer.version;\n\nexport * from \"./init-application\";\nexport * from \"./define-data-table\";\nexport * from \"./define-data-form\";\nexport * from \"./define-data-tree\";\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYO,MAAM,UAAU,SAAU,CAAA,QAAA;AAC1B,MAAM,UAAU,SAAU,CAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/index.ts"],"sourcesContent":["export * from \"./constants\";\nexport * from \"./dataview\";\n\nexport * from \"./core\";\n\nimport { installer } from \"./installer\";\n\nexport * from \"./layouts\";\nexport * from \"./composables\";\nexport * from \"./components\";\nexport * from \"./tokens\";\n\nexport const install = installer.install;\nexport const version = installer.version;\n\nexport * from \"./init-application\";\nexport * from \"./define-data-table\";\nexport * from \"./define-data-form\";\nexport * from \"./define-data-tree\";\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYO,MAAM,UAAU,SAAU,CAAA,QAAA;AAC1B,MAAM,UAAU,SAAU,CAAA;;;;"}
@@ -36,6 +36,7 @@ import './components/column-components/column-json/index.js';
36
36
  import './components/column-components/column-date/column-date-options.js';
37
37
  import './components/column-components/column-switch/column-switch-options.js';
38
38
  import './components/column-components/column-tag/column-tag-options.js';
39
+ import './components/column-components/column-link/column-link-options.js';
39
40
  import './components/condition-components/condition-input/index.js';
40
41
  import './components/condition-components/condition-date/index.js';
41
42
  import './components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"installer.js","sources":["../../src/installer.ts"],"sourcesContent":["import { Plugin } from \"vue\";\nimport { makeInstaller } from \"@maketribe/utils\";\nimport { Dialoger, Messager, Notificationer } from \"@maketribe/dm\";\nimport { DialogerImpl, MessagerImpl, NotificationerImpl } from \"./message-impl\";\nimport {\n ConfigProviderContext,\n MKConfigProvider,\n MKDataForm,\n MKDataFormPage,\n MKDataTable,\n MKDataTablePage,\n MKImageView,\n MKSvgIcon,\n MKVideoView,\n provideGlobalConfig,\n MKDataTableSelect,\n MKDataTableSelectDialog,\n MKPagination,\n MKDataTablePagination,\n MKMarkdownEditor,\n MKRichTextEditor,\n MKMaterialList,\n MKMaterialSelect,\n MKSystemProvider,\n MKRolePermissionConfig,\n MKImageSelect,\n MKVerifyDialog,\n MKUploadFile,\n MKUploadImage,\n MKWebFileUploadContext,\n MKMaterialUploadContext,\n} from \"./components\";\n\nconst components: Plugin[] = [\n MKConfigProvider,\n MKDataForm,\n MKDataFormPage,\n MKDataTable,\n MKDataTablePage,\n MKImageView,\n MKSvgIcon,\n MKVideoView,\n MKDataTableSelect,\n MKDataTableSelectDialog,\n MKPagination,\n MKDataTablePagination,\n MKMarkdownEditor,\n MKRichTextEditor,\n MKMaterialList,\n MKMaterialSelect,\n MKSystemProvider,\n MKRolePermissionConfig,\n MKImageSelect,\n MKVerifyDialog,\n MKUploadFile,\n MKUploadImage,\n MKWebFileUploadContext,\n MKMaterialUploadContext,\n];\n\nexport const installer = makeInstaller<ConfigProviderContext>(\n components,\n \"1.0.0-dev\",\n (app, version, options) => {\n if (options) {\n provideGlobalConfig(options, app, true);\n }\n\n Messager.implInstance = new MessagerImpl();\n Dialoger.implInstance = new DialogerImpl();\n Notificationer.implInstance = new NotificationerImpl();\n }\n);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,MAAM,UAAuB,GAAA;AAAA,EAC3B,gBAAA;AAAA,EACA,UAAA;AAAA,EACA,cAAA;AAAA,EACA,WAAA;AAAA,EACA,eAAA;AAAA,EACA,WAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,iBAAA;AAAA,EACA,uBAAA;AAAA,EACA,YAAA;AAAA,EACA,qBAAA;AAAA,EACA,gBAAA;AAAA,EACA,gBAAA;AAAA,EACA,cAAA;AAAA,EACA,gBAAA;AAAA,EACA,gBAAA;AAAA,EACA,sBAAA;AAAA,EACA,aAAA;AAAA,EACA,cAAA;AAAA,EACA,YAAA;AAAA,EACA,aAAA;AAAA,EACA,sBAAA;AAAA,EACA,uBAAA;AACF,CAAA,CAAA;AAEO,MAAM,SAAY,GAAA,aAAA;AAAA,EACvB,UAAA;AAAA,EACA,WAAA;AAAA,EACA,CAAC,GAAK,EAAA,OAAA,EAAS,OAAY,KAAA;AACzB,IAAA,IAAI,OAAS,EAAA;AACX,MAAoB,mBAAA,CAAA,OAAA,EAAS,KAAK,IAAI,CAAA,CAAA;AAAA,KACxC;AAEA,IAAS,QAAA,CAAA,YAAA,GAAe,IAAI,YAAa,EAAA,CAAA;AACzC,IAAS,QAAA,CAAA,YAAA,GAAe,IAAI,YAAa,EAAA,CAAA;AACzC,IAAe,cAAA,CAAA,YAAA,GAAe,IAAI,kBAAmB,EAAA,CAAA;AAAA,GACvD;AACF;;;;"}
1
+ {"version":3,"file":"installer.js","sources":["../../src/installer.ts"],"sourcesContent":["import { Plugin } from \"vue\";\nimport { makeInstaller } from \"@maketribe/utils\";\nimport { Dialoger, Messager, Notificationer } from \"@maketribe/dm\";\nimport { DialogerImpl, MessagerImpl, NotificationerImpl } from \"./message-impl\";\nimport {\n ConfigProviderContext,\n MKConfigProvider,\n MKDataForm,\n MKDataFormPage,\n MKDataTable,\n MKDataTablePage,\n MKImageView,\n MKSvgIcon,\n MKVideoView,\n provideGlobalConfig,\n MKDataTableSelect,\n MKDataTableSelectDialog,\n MKPagination,\n MKDataTablePagination,\n MKMarkdownEditor,\n MKRichTextEditor,\n MKMaterialList,\n MKMaterialSelect,\n MKSystemProvider,\n MKRolePermissionConfig,\n MKImageSelect,\n MKVerifyDialog,\n MKUploadFile,\n MKUploadImage,\n MKWebFileUploadContext,\n MKMaterialUploadContext,\n} from \"./components\";\n\nconst components: Plugin[] = [\n MKConfigProvider,\n MKDataForm,\n MKDataFormPage,\n MKDataTable,\n MKDataTablePage,\n MKImageView,\n MKSvgIcon,\n MKVideoView,\n MKDataTableSelect,\n MKDataTableSelectDialog,\n MKPagination,\n MKDataTablePagination,\n MKMarkdownEditor,\n MKRichTextEditor,\n MKMaterialList,\n MKMaterialSelect,\n MKSystemProvider,\n MKRolePermissionConfig,\n MKImageSelect,\n MKVerifyDialog,\n MKUploadFile,\n MKUploadImage,\n MKWebFileUploadContext,\n MKMaterialUploadContext,\n];\n\nexport const installer = makeInstaller<ConfigProviderContext>(\n components,\n \"1.0.0-dev\",\n (app, version, options) => {\n if (options) {\n provideGlobalConfig(options, app, true);\n }\n\n Messager.implInstance = new MessagerImpl();\n Dialoger.implInstance = new DialogerImpl();\n Notificationer.implInstance = new NotificationerImpl();\n }\n);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,MAAM,UAAuB,GAAA;AAAA,EAC3B,gBAAA;AAAA,EACA,UAAA;AAAA,EACA,cAAA;AAAA,EACA,WAAA;AAAA,EACA,eAAA;AAAA,EACA,WAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,iBAAA;AAAA,EACA,uBAAA;AAAA,EACA,YAAA;AAAA,EACA,qBAAA;AAAA,EACA,gBAAA;AAAA,EACA,gBAAA;AAAA,EACA,cAAA;AAAA,EACA,gBAAA;AAAA,EACA,gBAAA;AAAA,EACA,sBAAA;AAAA,EACA,aAAA;AAAA,EACA,cAAA;AAAA,EACA,YAAA;AAAA,EACA,aAAA;AAAA,EACA,sBAAA;AAAA,EACA,uBAAA;AACF,CAAA,CAAA;AAEO,MAAM,SAAY,GAAA,aAAA;AAAA,EACvB,UAAA;AAAA,EACA,WAAA;AAAA,EACA,CAAC,GAAK,EAAA,OAAA,EAAS,OAAY,KAAA;AACzB,IAAA,IAAI,OAAS,EAAA;AACX,MAAoB,mBAAA,CAAA,OAAA,EAAS,KAAK,IAAI,CAAA,CAAA;AAAA,KACxC;AAEA,IAAS,QAAA,CAAA,YAAA,GAAe,IAAI,YAAa,EAAA,CAAA;AACzC,IAAS,QAAA,CAAA,YAAA,GAAe,IAAI,YAAa,EAAA,CAAA;AACzC,IAAe,cAAA,CAAA,YAAA,GAAe,IAAI,kBAAmB,EAAA,CAAA;AAAA,GACvD;AACF;;;;"}
@@ -31,6 +31,7 @@ import '../../../components/column-components/column-json/index.js';
31
31
  import '../../../components/column-components/column-date/column-date-options.js';
32
32
  import '../../../components/column-components/column-switch/column-switch-options.js';
33
33
  import '../../../components/column-components/column-tag/column-tag-options.js';
34
+ import '../../../components/column-components/column-link/column-link-options.js';
34
35
  import '../../../components/condition-components/condition-input/index.js';
35
36
  import '../../../components/condition-components/condition-date/index.js';
36
37
  import '../../../components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/layouts/components/bar/index.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\nimport { MKSvgIcon } from \"../../../components\";\nimport { MSAppClient, MenuNode } from \"../../../core\";\nimport { MenuType } from \"../../../constants\";\n\nexport const MKBar = defineComponent({\n name: \"MKBar\",\n props: {\n barItem: {\n type: MenuNode,\n },\n },\n setup(props) {\n const msAppClient = MSAppClient.instance!;\n const userSession = msAppClient.userSession!;\n const menu = userSession.menu;\n const vueRouter = msAppClient.vueRouter;\n // const router = userSession.router;\n\n const currentBarItem = computed(() => props.barItem);\n\n const handleBarItemClick = (barItem: MenuNode) => {\n let target: MenuNode | null = barItem;\n\n if (barItem.children.length) {\n target = menu.getFirstLeafMenuNode(barItem.children);\n }\n\n if (!target) {\n return;\n }\n\n if (target?.route) {\n vueRouter.push({ name: target.route.name });\n }\n };\n\n return () => {\n const barItems = menu.rootMenus\n .filter((rootMenu) => rootMenu.type !== \"3\")\n .map((rootMenu) => (\n <div\n class={[\n \"mk-bar__item\",\n rootMenu.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === rootMenu.id ? \"is-active\" : \"\",\n ]}\n onClick={() => handleBarItemClick(rootMenu)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={rootMenu.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{rootMenu.title} </div>\n </div>\n ));\n\n const systemSettingNode = menu.rootMenus.find(\n (rootMenu) => rootMenu.type === MenuType.SystemSettings\n );\n\n const footer = systemSettingNode?.children.length ? (\n <div class=\"mk-bar__footer\">\n <div\n class={[\n \"mk-bar__item\",\n \"mk-bar__settings\",\n systemSettingNode.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === systemSettingNode.id\n ? \"is-active\"\n : \"\",\n ]}\n onClick={() => handleBarItemClick(systemSettingNode)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={systemSettingNode.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{systemSettingNode.title} </div>\n </div>\n </div>\n ) : null;\n\n const logo = msAppClient.logo ? (\n <div class=\"mk-bar__logo\">\n <div\n class=\"mk-logo\"\n style={{ backgroundImage: `url(${msAppClient.logo})` }}\n />\n </div>\n ) : null;\n\n return (\n <div class=\"mk-bar\">\n {logo}\n\n <div class=\"mk-bar__items\">{barItems}</div>\n\n {footer}\n </div>\n );\n };\n },\n});\n"],"names":["MKBar","name","props","barItem","type","MenuNode","setup","msAppClient","MSAppClient","instance","userSession","menu","vueRouter","currentBarItem","computed","handleBarItemClick","target","children","length","getFirstLeafMenuNode","route","push","barItems","rootMenus","filter","rootMenu","map","_createVNode","unref","id","onClick","MKSvgIcon","iconName","title","_createTextVNode","systemSettingNode","find","MenuType","SystemSettings","footer","logo","backgroundImage"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/layouts/components/bar/index.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\nimport { MKSvgIcon } from \"../../../components\";\nimport { MSAppClient, MenuNode } from \"../../../core\";\nimport { MenuType } from \"../../../constants\";\n\nexport const MKBar = defineComponent({\n name: \"MKBar\",\n props: {\n barItem: {\n type: MenuNode,\n },\n },\n setup(props) {\n const msAppClient = MSAppClient.instance!;\n const userSession = msAppClient.userSession!;\n const menu = userSession.menu;\n const vueRouter = msAppClient.vueRouter;\n // const router = userSession.router;\n\n const currentBarItem = computed(() => props.barItem);\n\n const handleBarItemClick = (barItem: MenuNode) => {\n let target: MenuNode | null = barItem;\n\n if (barItem.children.length) {\n target = menu.getFirstLeafMenuNode(barItem.children);\n }\n\n if (!target) {\n return;\n }\n\n if (target?.route) {\n vueRouter.push({ name: target.route.name });\n }\n };\n\n return () => {\n const barItems = menu.rootMenus\n .filter((rootMenu) => rootMenu.type !== \"3\")\n .map((rootMenu) => (\n <div\n class={[\n \"mk-bar__item\",\n rootMenu.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === rootMenu.id ? \"is-active\" : \"\",\n ]}\n onClick={() => handleBarItemClick(rootMenu)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={rootMenu.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{rootMenu.title} </div>\n </div>\n ));\n\n const systemSettingNode = menu.rootMenus.find(\n (rootMenu) => rootMenu.type === MenuType.SystemSettings\n );\n\n const footer = systemSettingNode?.children.length ? (\n <div class=\"mk-bar__footer\">\n <div\n class={[\n \"mk-bar__item\",\n \"mk-bar__settings\",\n systemSettingNode.children.length ? \"has-children\" : \"\",\n unref(currentBarItem)?.id === systemSettingNode.id\n ? \"is-active\"\n : \"\",\n ]}\n onClick={() => handleBarItemClick(systemSettingNode)}\n >\n <div class=\"mk-bar__item-button\">\n <MKSvgIcon iconClass={systemSettingNode.iconName} />\n </div>\n <div class=\"mk-bar__item-title\">{systemSettingNode.title} </div>\n </div>\n </div>\n ) : null;\n\n const logo = msAppClient.logo ? (\n <div class=\"mk-bar__logo\">\n <div\n class=\"mk-logo\"\n style={{ backgroundImage: `url(${msAppClient.logo})` }}\n />\n </div>\n ) : null;\n\n return (\n <div class=\"mk-bar\">\n {logo}\n\n <div class=\"mk-bar__items\">{barItems}</div>\n\n {footer}\n </div>\n );\n };\n },\n});\n"],"names":["MKBar","name","props","barItem","type","MenuNode","setup","msAppClient","MSAppClient","instance","userSession","menu","vueRouter","currentBarItem","computed","handleBarItemClick","target","children","length","getFirstLeafMenuNode","route","push","barItems","rootMenus","filter","rootMenu","map","_createVNode","unref","id","onClick","MKSvgIcon","iconName","title","_createTextVNode","systemSettingNode","find","MenuType","SystemSettings","footer","logo","backgroundImage"],"mappings":"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"}
@@ -35,6 +35,7 @@ import '../../../components/column-components/column-json/index.js';
35
35
  import '../../../components/column-components/column-date/column-date-options.js';
36
36
  import '../../../components/column-components/column-switch/column-switch-options.js';
37
37
  import '../../../components/column-components/column-tag/column-tag-options.js';
38
+ import '../../../components/column-components/column-link/column-link-options.js';
38
39
  import '../../../components/condition-components/condition-input/index.js';
39
40
  import '../../../components/condition-components/condition-date/index.js';
40
41
  import '../../../components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sources":["../../../../../src/layouts/components/header/tools.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\nimport {\n ElDropdown,\n ElDropdownItem,\n ElDropdownMenu,\n ElImage,\n} from \"element-plus\";\nimport { MSAppClient } from \"../../../core\";\nimport { MKSvgIcon } from \"../../../components\";\n\nexport const MKHeaderTools = defineComponent({\n name: \"MKHeaderTools\",\n setup(props) {\n const msAppClient = MSAppClient.instance!;\n const userSession = msAppClient.userSession!;\n\n const userInfo = computed(() => userSession.userInfo!);\n\n const avatar = computed(() => unref(userInfo).avatar || \"/avatar.png\");\n\n return () => {\n return (\n <div class=\"mk-header-tools\">\n <div class=\"mk-header-tools__item\">\n <ElDropdown\n class=\"mk-header-tools__user\"\n trigger=\"click\"\n v-slots={{\n default: () => (\n <div class=\"mk-header-tools__user-info\">\n <ElImage\n class=\"mk-header-tools__avatar\"\n src={unref(avatar)}\n />\n <span class=\"mk-header-tools__nickName\">\n {unref(userInfo).nickName}\n </span>\n </div>\n ),\n dropdown: () => (\n <ElDropdownMenu>\n <ElDropdownItem onClick={() => msAppClient.logout()}>\n <MKSvgIcon iconClass=\"SwitchButton\" />\n 退出登录\n </ElDropdownItem>\n </ElDropdownMenu>\n ),\n }}\n />\n </div>\n </div>\n );\n };\n },\n});\n"],"names":["MKHeaderTools","name","setup","props","msAppClient","MSAppClient","instance","userSession","userInfo","computed","avatar","unref","_createVNode","ElDropdown","default","ElImage","nickName","dropdown","ElDropdownMenu","ElDropdownItem","onClick","logout","MKSvgIcon","_createTextVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUO,MAAMA,gCAAgC,eAAA,CAAA;AAAA,EAC3CC,IAAM,EAAA,eAAA;AAAA,EACNC,MAAMC,KAAO,EAAA;AACX,IAAA,MAAMC,cAAcC,WAAYC,CAAAA,QAAAA,CAAAA;AAChC,IAAA,MAAMC,cAAcH,WAAYG,CAAAA,WAAAA,CAAAA;AAEhC,IAAA,MAAMC,QAAWC,GAAAA,QAAAA,CAAS,MAAMF,WAAAA,CAAYC,QAAS,CAAA,CAAA;AAErD,IAAA,MAAME,SAASD,QAAS,CAAA,MAAME,MAAMH,QAAQ,CAAA,CAAEE,UAAU,aAAa,CAAA,CAAA;AAErE,IAAA,OAAO,MAAM;AACX,MAAA,OAAAE,YAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,iBAAA;AAAA,OAAA,EAAA,CAAAA,WAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,uBAAA;AAAA,OAAA,EAAAA,CAAAA,WAAAA,CAAAC,UAAA,EAAA;AAAA,QAAA,OAAA,EAAA,uBAAA;AAAA,QAAA,SAAA,EAAA,OAAA;AAAA,OAMiB,EAAA;AAAA,QACPC,OAAAA,EAASA,MAAAF,WAAAA,CAAA,KAAA,EAAA;AAAA,UAAA,OAAA,EAAA,4BAAA;AAAA,SAAA,EAAAA,CAAAA,WAAAA,CAAAG,OAAA,EAAA;AAAA,UAAA,OAAA,EAAA,yBAAA;AAAA,UAAA,KAAA,EAIEJ,MAAMD,MAAM,CAAA;AAAA,SAAC,EAAA,IAAA,CAAAE,EAAAA,WAAAA,CAAA,MAAA,EAAA;AAAA,UAAA,OAAA,EAAA,2BAAA;AAAA,SAAA,EAAA,CAGjBD,KAAMH,CAAAA,QAAQ,EAAEQ,QAAQ,CAG9B,CAAA,CAAA,CAAA;AAAA,QACDC,QAAUA,EAAAA,MAAAL,WAAAM,CAAAA,cAAAA,EAAA,IAAA,EAAA;AAAA,UAAAJ,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAO,cAAA,EAAA;AAAA,YAAA,SAAA,EAEmBC,MAAMhB,WAAAA,CAAYiB,MAAO,EAAA;AAAA,WAAC,EAAA;AAAA,YAAAP,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAU,SAAA,EAAA;AAAA,cAAA,WAAA,EAAA,cAAA;AAAA,aAAA,EAAA,IAAA,CAAAC,EAAAA,eAAAA,CAAA,0BAAA,CAAA,CAAA;AAAA,WAAA,CAAA,CAAA;AAAA,SAAA,CAAA;AAAA,OAMxD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,KAKX,CAAA;AAAA,GACF;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"tools.js","sources":["../../../../../src/layouts/components/header/tools.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\nimport {\n ElDropdown,\n ElDropdownItem,\n ElDropdownMenu,\n ElImage,\n} from \"element-plus\";\nimport { MSAppClient } from \"../../../core\";\nimport { MKSvgIcon } from \"../../../components\";\n\nexport const MKHeaderTools = defineComponent({\n name: \"MKHeaderTools\",\n setup(props) {\n const msAppClient = MSAppClient.instance!;\n const userSession = msAppClient.userSession!;\n\n const userInfo = computed(() => userSession.userInfo!);\n\n const avatar = computed(() => unref(userInfo).avatar || \"/avatar.png\");\n\n return () => {\n return (\n <div class=\"mk-header-tools\">\n <div class=\"mk-header-tools__item\">\n <ElDropdown\n class=\"mk-header-tools__user\"\n trigger=\"click\"\n v-slots={{\n default: () => (\n <div class=\"mk-header-tools__user-info\">\n <ElImage\n class=\"mk-header-tools__avatar\"\n src={unref(avatar)}\n />\n <span class=\"mk-header-tools__nickName\">\n {unref(userInfo).nickName}\n </span>\n </div>\n ),\n dropdown: () => (\n <ElDropdownMenu>\n <ElDropdownItem onClick={() => msAppClient.logout()}>\n <MKSvgIcon iconClass=\"SwitchButton\" />\n 退出登录\n </ElDropdownItem>\n </ElDropdownMenu>\n ),\n }}\n />\n </div>\n </div>\n );\n };\n },\n});\n"],"names":["MKHeaderTools","name","setup","props","msAppClient","MSAppClient","instance","userSession","userInfo","computed","avatar","unref","_createVNode","ElDropdown","default","ElImage","nickName","dropdown","ElDropdownMenu","ElDropdownItem","onClick","logout","MKSvgIcon","_createTextVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUO,MAAMA,gCAAgC,eAAA,CAAA;AAAA,EAC3CC,IAAM,EAAA,eAAA;AAAA,EACNC,MAAMC,KAAO,EAAA;AACX,IAAA,MAAMC,cAAcC,WAAYC,CAAAA,QAAAA,CAAAA;AAChC,IAAA,MAAMC,cAAcH,WAAYG,CAAAA,WAAAA,CAAAA;AAEhC,IAAA,MAAMC,QAAWC,GAAAA,QAAAA,CAAS,MAAMF,WAAAA,CAAYC,QAAS,CAAA,CAAA;AAErD,IAAA,MAAME,SAASD,QAAS,CAAA,MAAME,MAAMH,QAAQ,CAAA,CAAEE,UAAU,aAAa,CAAA,CAAA;AAErE,IAAA,OAAO,MAAM;AACX,MAAA,OAAAE,YAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,iBAAA;AAAA,OAAA,EAAA,CAAAA,WAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,uBAAA;AAAA,OAAA,EAAAA,CAAAA,WAAAA,CAAAC,UAAA,EAAA;AAAA,QAAA,OAAA,EAAA,uBAAA;AAAA,QAAA,SAAA,EAAA,OAAA;AAAA,OAMiB,EAAA;AAAA,QACPC,OAAAA,EAASA,MAAAF,WAAAA,CAAA,KAAA,EAAA;AAAA,UAAA,OAAA,EAAA,4BAAA;AAAA,SAAA,EAAAA,CAAAA,WAAAA,CAAAG,OAAA,EAAA;AAAA,UAAA,OAAA,EAAA,yBAAA;AAAA,UAAA,KAAA,EAIEJ,MAAMD,MAAM,CAAA;AAAA,SAAC,EAAA,IAAA,CAAAE,EAAAA,WAAAA,CAAA,MAAA,EAAA;AAAA,UAAA,OAAA,EAAA,2BAAA;AAAA,SAAA,EAAA,CAGjBD,KAAMH,CAAAA,QAAQ,EAAEQ,QAAQ,CAG9B,CAAA,CAAA,CAAA;AAAA,QACDC,QAAUA,EAAAA,MAAAL,WAAAM,CAAAA,cAAAA,EAAA,IAAA,EAAA;AAAA,UAAAJ,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAO,cAAA,EAAA;AAAA,YAAA,SAAA,EAEmBC,MAAMhB,WAAAA,CAAYiB,MAAO,EAAA;AAAA,WAAC,EAAA;AAAA,YAAAP,OAAAA,EAAAA,MAAAF,CAAAA,WAAAA,CAAAU,SAAA,EAAA;AAAA,cAAA,WAAA,EAAA,cAAA;AAAA,aAAA,EAAA,IAAA,CAAAC,EAAAA,eAAAA,CAAA,0BAAA,CAAA,CAAA;AAAA,WAAA,CAAA,CAAA;AAAA,SAAA,CAAA;AAAA,OAMxD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,KAKX,CAAA;AAAA,GACF;AACF,CAAC;;;;"}
@@ -36,6 +36,7 @@ import '../../../components/column-components/column-json/index.js';
36
36
  import '../../../components/column-components/column-date/column-date-options.js';
37
37
  import '../../../components/column-components/column-switch/column-switch-options.js';
38
38
  import '../../../components/column-components/column-tag/column-tag-options.js';
39
+ import '../../../components/column-components/column-link/column-link-options.js';
39
40
  import '../../../components/condition-components/condition-input/index.js';
40
41
  import '../../../components/condition-components/condition-date/index.js';
41
42
  import '../../../components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"lock.js","sources":["../../../../../src/layouts/components/lock/lock.tsx"],"sourcesContent":["import { defineComponent, ref, unref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElButton, ElInput } from \"element-plus\";\nimport { Messager } from \"@maketribe/dm\";\nimport { MSAppClient } from \"../../../core\";\nimport { MKVerifyDialog } from \"../../../components\";\n\nexport default defineComponent({\n name: \"MKLock\",\n setup() {\n const msAppClient = MSAppClient.instance!;\n\n const vueRouter = useRouter();\n\n const locking = ref(msAppClient.userSession!.locking ?? false);\n\n const password = ref(\"\");\n const isVisibleVerify = ref(false);\n\n const handleToLogin = () => {\n vueRouter.push({ name: \"login\" });\n };\n\n const handleUnlock = () => {\n isVisibleVerify.value = true;\n };\n\n const handleVerifySuccess = async (code: string) => {\n const userSession = msAppClient.userSession!;\n\n try {\n const response = await userSession.unlock(unref(password), code);\n\n if (response.data.code !== 200) {\n Messager.instance.error({ message: response.data.msg });\n return;\n }\n } catch (e) {\n console.error(e);\n\n Messager.instance.error({ message: \"网络异常\" });\n } finally {\n isVisibleVerify.value = false;\n }\n };\n\n msAppClient.userSession!.lockingChangeEvent.on(({ locking: isLocking }) => {\n locking.value = isLocking;\n });\n\n return () => {\n if (!unref(locking)) {\n return null;\n }\n\n const verifyDialogVNode = unref(isVisibleVerify) ? (\n <MKVerifyDialog\n scene=\"Login\"\n visible={unref(isVisibleVerify)}\n onUpdate:visible={(v) => (isVisibleVerify.value = v as boolean)}\n onConfirm={handleVerifySuccess}\n />\n ) : null;\n\n return (\n <div class=\"mk-lock\">\n <div class=\"mk-lock__overlay mk-overlay\"></div>\n\n <div class=\"mk-lock-entry\">\n <div class=\"mk-lock-entry__user-info\"></div>\n <ElInput\n type=\"password\"\n placeholder=\"请输入用户密码\"\n modelValue={unref(password)}\n onUpdate:modelValue={(v: string) => (password.value = v)}\n />\n <div class=\"mk-lock-entry__footer\">\n <ElButton type=\"primary\" link onClick={handleToLogin}>\n 返回登陆\n </ElButton>\n <ElButton type=\"primary\" link onClick={handleUnlock}>\n 进入系统\n </ElButton>\n </div>\n </div>\n\n {verifyDialogVNode}\n </div>\n );\n };\n },\n});\n"],"names":["name","setup","msAppClient","MSAppClient","instance","vueRouter","useRouter","locking","ref","userSession","password","isVisibleVerify","handleToLogin","push","handleUnlock","value","handleVerifySuccess","code","response","unlock","unref","data","Messager","error","message","msg","e","console","lockingChangeEvent","on","isLocking","verifyDialogVNode","_createVNode","MKVerifyDialog","v","ElInput","ElButton","default","_createTextVNode"],"mappings":"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"}
1
+ {"version":3,"file":"lock.js","sources":["../../../../../src/layouts/components/lock/lock.tsx"],"sourcesContent":["import { defineComponent, ref, unref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElButton, ElInput } from \"element-plus\";\nimport { Messager } from \"@maketribe/dm\";\nimport { MSAppClient } from \"../../../core\";\nimport { MKVerifyDialog } from \"../../../components\";\n\nexport default defineComponent({\n name: \"MKLock\",\n setup() {\n const msAppClient = MSAppClient.instance!;\n\n const vueRouter = useRouter();\n\n const locking = ref(msAppClient.userSession!.locking ?? false);\n\n const password = ref(\"\");\n const isVisibleVerify = ref(false);\n\n const handleToLogin = () => {\n vueRouter.push({ name: \"login\" });\n };\n\n const handleUnlock = () => {\n isVisibleVerify.value = true;\n };\n\n const handleVerifySuccess = async (code: string) => {\n const userSession = msAppClient.userSession!;\n\n try {\n const response = await userSession.unlock(unref(password), code);\n\n if (response.data.code !== 200) {\n Messager.instance.error({ message: response.data.msg });\n return;\n }\n } catch (e) {\n console.error(e);\n\n Messager.instance.error({ message: \"网络异常\" });\n } finally {\n isVisibleVerify.value = false;\n }\n };\n\n msAppClient.userSession!.lockingChangeEvent.on(({ locking: isLocking }) => {\n locking.value = isLocking;\n });\n\n return () => {\n if (!unref(locking)) {\n return null;\n }\n\n const verifyDialogVNode = unref(isVisibleVerify) ? (\n <MKVerifyDialog\n scene=\"Login\"\n visible={unref(isVisibleVerify)}\n onUpdate:visible={(v) => (isVisibleVerify.value = v as boolean)}\n onConfirm={handleVerifySuccess}\n />\n ) : null;\n\n return (\n <div class=\"mk-lock\">\n <div class=\"mk-lock__overlay mk-overlay\"></div>\n\n <div class=\"mk-lock-entry\">\n <div class=\"mk-lock-entry__user-info\"></div>\n <ElInput\n type=\"password\"\n placeholder=\"请输入用户密码\"\n modelValue={unref(password)}\n onUpdate:modelValue={(v: string) => (password.value = v)}\n />\n <div class=\"mk-lock-entry__footer\">\n <ElButton type=\"primary\" link onClick={handleToLogin}>\n 返回登陆\n </ElButton>\n <ElButton type=\"primary\" link onClick={handleUnlock}>\n 进入系统\n </ElButton>\n </div>\n </div>\n\n {verifyDialogVNode}\n </div>\n );\n };\n },\n});\n"],"names":["name","setup","msAppClient","MSAppClient","instance","vueRouter","useRouter","locking","ref","userSession","password","isVisibleVerify","handleToLogin","push","handleUnlock","value","handleVerifySuccess","code","response","unlock","unref","data","Messager","error","message","msg","e","console","lockingChangeEvent","on","isLocking","verifyDialogVNode","_createVNode","MKVerifyDialog","v","ElInput","ElButton","default","_createTextVNode"],"mappings":"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"}
@@ -31,6 +31,7 @@ import '../../../components/column-components/column-json/index.js';
31
31
  import '../../../components/column-components/column-date/column-date-options.js';
32
32
  import '../../../components/column-components/column-switch/column-switch-options.js';
33
33
  import '../../../components/column-components/column-tag/column-tag-options.js';
34
+ import '../../../components/column-components/column-link/column-link-options.js';
34
35
  import '../../../components/condition-components/condition-input/index.js';
35
36
  import '../../../components/condition-components/condition-date/index.js';
36
37
  import '../../../components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item.js","sources":["../../../../../src/layouts/components/menu/menu-item.tsx"],"sourcesContent":["import { Fragment, computed, defineComponent } from \"vue\";\nimport { ElMenuItem, ElSubMenu } from \"element-plus\";\nimport { MKSvgIcon } from \"../../../components\";\nimport { MenuNode } from \"../../../core\";\n\nconst MKAsideMenuItem = defineComponent({\n name: \"MKMenuItem\",\n props: {\n node: {\n type: MenuNode,\n required: true,\n },\n },\n setup(props) {\n return () => {\n if (!props.node.children.length) {\n const icon = props.node.iconName ? (\n <MKSvgIcon\n class=\"mk-menu-item__icon\"\n iconClass={props.node.iconName}\n />\n ) : null;\n\n return (\n <ElMenuItem index={props.node.id}>\n {icon}\n {props.node.title}\n </ElMenuItem>\n );\n }\n\n const items = props.node.children.map((node) => (\n <MKAsideMenuItem node={node} key={node.id} />\n ));\n\n return (\n <ElSubMenu\n index={props.node.id}\n v-slots={{\n title: () => {\n const icon = props.node.iconName ? (\n <MKSvgIcon\n class=\"mk-menu-item__icon\"\n iconClass={props.node.iconName}\n />\n ) : null;\n return (\n <Fragment>\n {icon}\n {props.node.title}\n </Fragment>\n );\n },\n }}\n >\n {items}\n </ElSubMenu>\n );\n };\n },\n});\n\nexport default MKAsideMenuItem;\n"],"names":["MKAsideMenuItem","name","props","node","type","MenuNode","required","setup","children","length","icon","iconName","_createVNode","MKSvgIcon","ElMenuItem","id","default","title","items","map","ElSubMenu","_Fragment"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAMA,kCAAkC,eAAA,CAAA;AAAA,EACtCC,IAAM,EAAA,YAAA;AAAA,EACNC,KAAO,EAAA;AAAA,IACLC,IAAM,EAAA;AAAA,MACJC,IAAMC,EAAAA,QAAAA;AAAAA,MACNC,QAAU,EAAA,IAAA;AAAA,KACZ;AAAA,GACF;AAAA,EACAC,MAAML,KAAO,EAAA;AACX,IAAA,OAAO,MAAM;AACX,MAAA,IAAI,CAACA,KAAAA,CAAMC,IAAKK,CAAAA,QAAAA,CAASC,MAAQ,EAAA;AAC/B,QAAA,MAAMC,IAAOR,GAAAA,KAAAA,CAAMC,IAAKQ,CAAAA,QAAAA,GAAQC,YAAAC,SAAA,EAAA;AAAA,UAAA,OAAA,EAAA,oBAAA;AAAA,UAAA,WAAA,EAGjBX,MAAMC,IAAKQ,CAAAA,QAAAA;AAAAA,SAAQ,EAAA,IAAA,CAE9B,GAAA,IAAA,CAAA;AAEJ,QAAA,OAAAC,YAAAE,UAAA,EAAA;AAAA,UAAA,OAAA,EACqBZ,MAAMC,IAAKY,CAAAA,EAAAA;AAAAA,SAAE,EAAA;AAAA,UAAAC,SAAAA,MAC7BN,CAAAA,IACAR,EAAAA,KAAAA,CAAMC,KAAKc,KAAK,CAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAGvB;AAEA,MAAA,MAAMC,QAAQhB,KAAMC,CAAAA,IAAAA,CAAKK,SAASW,GAAKhB,CAAAA,CAAAA,IAAAA,KAAIS,YAAAZ,eAAA,EAAA;AAAA,QAAA,MAClBG,EAAAA,IAAAA;AAAAA,QAAI,OAAOA,IAAKY,CAAAA,EAAAA;AAAAA,OAAE,EAAA,IAAA,CAC1C,CAAA,CAAA;AAED,MAAA,OAAAH,YAAAQ,SAAA,EAAA;AAAA,QAAA,OAAA,EAEWlB,MAAMC,IAAKY,CAAAA,EAAAA;AAAAA,OAAE,EAAA;AAAA,QAAAC,OAAAA,EAAAA,MAAA,CAkBnBE,KAAK,CAAA;AAAA,QAhBJD,OAAOA,MAAM;AACX,UAAA,MAAMP,IAAOR,GAAAA,KAAAA,CAAMC,IAAKQ,CAAAA,QAAAA,GAAQC,YAAAC,SAAA,EAAA;AAAA,YAAA,OAAA,EAAA,oBAAA;AAAA,YAAA,WAAA,EAGjBX,MAAMC,IAAKQ,CAAAA,QAAAA;AAAAA,WAAQ,EAAA,IAAA,CAE9B,GAAA,IAAA,CAAA;AACJ,UAAAC,OAAAA,WAAAA,CAAAS,UAEKX,IAAAA,EAAAA,CAAAA,MACAR,KAAMC,CAAAA,IAAAA,CAAKc,KAAK,CAAA,CAAA,CAAA;AAAA,SAGvB;AAAA,OAAC,CAAA,CAAA;AAAA,KAMT,CAAA;AAAA,GACF;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"menu-item.js","sources":["../../../../../src/layouts/components/menu/menu-item.tsx"],"sourcesContent":["import { Fragment, computed, defineComponent } from \"vue\";\nimport { ElMenuItem, ElSubMenu } from \"element-plus\";\nimport { MKSvgIcon } from \"../../../components\";\nimport { MenuNode } from \"../../../core\";\n\nconst MKAsideMenuItem = defineComponent({\n name: \"MKMenuItem\",\n props: {\n node: {\n type: MenuNode,\n required: true,\n },\n },\n setup(props) {\n return () => {\n if (!props.node.children.length) {\n const icon = props.node.iconName ? (\n <MKSvgIcon\n class=\"mk-menu-item__icon\"\n iconClass={props.node.iconName}\n />\n ) : null;\n\n return (\n <ElMenuItem index={props.node.id}>\n {icon}\n {props.node.title}\n </ElMenuItem>\n );\n }\n\n const items = props.node.children.map((node) => (\n <MKAsideMenuItem node={node} key={node.id} />\n ));\n\n return (\n <ElSubMenu\n index={props.node.id}\n v-slots={{\n title: () => {\n const icon = props.node.iconName ? (\n <MKSvgIcon\n class=\"mk-menu-item__icon\"\n iconClass={props.node.iconName}\n />\n ) : null;\n return (\n <Fragment>\n {icon}\n {props.node.title}\n </Fragment>\n );\n },\n }}\n >\n {items}\n </ElSubMenu>\n );\n };\n },\n});\n\nexport default MKAsideMenuItem;\n"],"names":["MKAsideMenuItem","name","props","node","type","MenuNode","required","setup","children","length","icon","iconName","_createVNode","MKSvgIcon","ElMenuItem","id","default","title","items","map","ElSubMenu","_Fragment"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAMA,kCAAkC,eAAA,CAAA;AAAA,EACtCC,IAAM,EAAA,YAAA;AAAA,EACNC,KAAO,EAAA;AAAA,IACLC,IAAM,EAAA;AAAA,MACJC,IAAMC,EAAAA,QAAAA;AAAAA,MACNC,QAAU,EAAA,IAAA;AAAA,KACZ;AAAA,GACF;AAAA,EACAC,MAAML,KAAO,EAAA;AACX,IAAA,OAAO,MAAM;AACX,MAAA,IAAI,CAACA,KAAAA,CAAMC,IAAKK,CAAAA,QAAAA,CAASC,MAAQ,EAAA;AAC/B,QAAA,MAAMC,IAAOR,GAAAA,KAAAA,CAAMC,IAAKQ,CAAAA,QAAAA,GAAQC,YAAAC,SAAA,EAAA;AAAA,UAAA,OAAA,EAAA,oBAAA;AAAA,UAAA,WAAA,EAGjBX,MAAMC,IAAKQ,CAAAA,QAAAA;AAAAA,SAAQ,EAAA,IAAA,CAE9B,GAAA,IAAA,CAAA;AAEJ,QAAA,OAAAC,YAAAE,UAAA,EAAA;AAAA,UAAA,OAAA,EACqBZ,MAAMC,IAAKY,CAAAA,EAAAA;AAAAA,SAAE,EAAA;AAAA,UAAAC,SAAAA,MAC7BN,CAAAA,IACAR,EAAAA,KAAAA,CAAMC,KAAKc,KAAK,CAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAGvB;AAEA,MAAA,MAAMC,QAAQhB,KAAMC,CAAAA,IAAAA,CAAKK,SAASW,GAAKhB,CAAAA,CAAAA,IAAAA,KAAIS,YAAAZ,eAAA,EAAA;AAAA,QAAA,MAClBG,EAAAA,IAAAA;AAAAA,QAAI,OAAOA,IAAKY,CAAAA,EAAAA;AAAAA,OAAE,EAAA,IAAA,CAC1C,CAAA,CAAA;AAED,MAAA,OAAAH,YAAAQ,SAAA,EAAA;AAAA,QAAA,OAAA,EAEWlB,MAAMC,IAAKY,CAAAA,EAAAA;AAAAA,OAAE,EAAA;AAAA,QAAAC,OAAAA,EAAAA,MAAA,CAkBnBE,KAAK,CAAA;AAAA,QAhBJD,OAAOA,MAAM;AACX,UAAA,MAAMP,IAAOR,GAAAA,KAAAA,CAAMC,IAAKQ,CAAAA,QAAAA,GAAQC,YAAAC,SAAA,EAAA;AAAA,YAAA,OAAA,EAAA,oBAAA;AAAA,YAAA,WAAA,EAGjBX,MAAMC,IAAKQ,CAAAA,QAAAA;AAAAA,WAAQ,EAAA,IAAA,CAE9B,GAAA,IAAA,CAAA;AACJ,UAAAC,OAAAA,WAAAA,CAAAS,UAEKX,IAAAA,EAAAA,CAAAA,MACAR,KAAMC,CAAAA,IAAAA,CAAKc,KAAK,CAAA,CAAA,CAAA;AAAA,SAGvB;AAAA,OAAC,CAAA,CAAA;AAAA,KAMT,CAAA;AAAA,GACF;AACF,CAAC;;;;"}
@@ -32,6 +32,7 @@ import '../../components/column-components/column-json/index.js';
32
32
  import '../../components/column-components/column-date/column-date-options.js';
33
33
  import '../../components/column-components/column-switch/column-switch-options.js';
34
34
  import '../../components/column-components/column-tag/column-tag-options.js';
35
+ import '../../components/column-components/column-link/column-link-options.js';
35
36
  import '../../components/condition-components/condition-input/index.js';
36
37
  import '../../components/condition-components/condition-date/index.js';
37
38
  import '../../components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"default.js","sources":["../../../../src/layouts/container/default.tsx"],"sourcesContent":["import { Ref, defineComponent, ref, unref } from \"vue\";\nimport { RouterView, useRouter } from \"vue-router\";\nimport { ElAside, ElContainer, ElHeader, ElMain } from \"element-plus\";\nimport { MKSystemProvider } from \"../../components\";\nimport { MKBar, MKMenu } from \"../components\";\nimport { MenuNode } from \"../../core\";\nimport { MSAppClient } from \"../../core\";\nimport { MKHeader } from \"../components/header\";\nimport { createDisposable } from \"@maketribe/utils\";\n\nfunction includeMenuNode(rootMenuNode: MenuNode, menuNode: MenuNode) {\n let list = [rootMenuNode];\n\n for (let i = 0; i < list.length; i++) {\n const item = list[i];\n\n if (item.id === menuNode.id) {\n return true;\n }\n\n list = list.concat(item.children);\n }\n\n return false;\n}\n\nexport const MKLayoutDefault = defineComponent({\n name: \"MKLayoutDefault\",\n setup() {\n const msAppClient = MSAppClient.instance!;\n const userSession = msAppClient.userSession!;\n const menu = userSession.menu;\n const vueRouter = useRouter();\n\n const currentBarItem: Ref<MenuNode | null> = ref(null);\n\n handleCurrentMenuChange();\n menu.currentMenuChangeEvent.on(handleCurrentMenuChange);\n\n function handleCurrentMenuChange() {\n currentBarItem.value = menu.getCurrentMenuNode()\n ? menu.rootMenus.find((item) =>\n includeMenuNode(item, menu.getCurrentMenuNode()!)\n ) ?? null\n : null;\n }\n\n // 用户会话销毁就前往登录页面。\n userSession.register(\n createDisposable(() => {\n vueRouter.push({ name: \"login\" });\n })\n );\n\n return () => {\n return (\n <MKSystemProvider>\n <ElContainer class=\"mk-layout-default\">\n <ElAside>\n <MKBar barItem={unref(currentBarItem) as MenuNode} />\n </ElAside>\n <ElMain>\n <ElContainer class=\"mk-layout-default__body\">\n <ElHeader class=\"mk-layout-default__header\">\n <MKHeader />\n </ElHeader>\n <ElMain>\n <ElContainer class=\"mk-layout-default__main\">\n <ElAside class=\"mk-layout-default__menu\">\n <MKMenu barItem={unref(currentBarItem) as MenuNode} />\n </ElAside>\n <ElMain>\n <RouterView />\n </ElMain>\n </ElContainer>\n </ElMain>\n </ElContainer>\n </ElMain>\n </ElContainer>\n </MKSystemProvider>\n );\n };\n },\n});\n"],"names":["includeMenuNode","rootMenuNode","menuNode","list","i","length","item","id","concat","children","MKLayoutDefault","name","setup","msAppClient","MSAppClient","instance","userSession","menu","vueRouter","useRouter","currentBarItem","ref","handleCurrentMenuChange","currentMenuChangeEvent","on","value","getCurrentMenuNode","rootMenus","find","register","createDisposable","push","_createVNode","MKSystemProvider","default","ElContainer","ElAside","MKBar","unref","ElMain","ElHeader","MKHeader","MKMenu","RouterView"],"mappings":"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"}
1
+ {"version":3,"file":"default.js","sources":["../../../../src/layouts/container/default.tsx"],"sourcesContent":["import { Ref, defineComponent, ref, unref } from \"vue\";\nimport { RouterView, useRouter } from \"vue-router\";\nimport { ElAside, ElContainer, ElHeader, ElMain } from \"element-plus\";\nimport { MKSystemProvider } from \"../../components\";\nimport { MKBar, MKMenu } from \"../components\";\nimport { MenuNode } from \"../../core\";\nimport { MSAppClient } from \"../../core\";\nimport { MKHeader } from \"../components/header\";\nimport { createDisposable } from \"@maketribe/utils\";\n\nfunction includeMenuNode(rootMenuNode: MenuNode, menuNode: MenuNode) {\n let list = [rootMenuNode];\n\n for (let i = 0; i < list.length; i++) {\n const item = list[i];\n\n if (item.id === menuNode.id) {\n return true;\n }\n\n list = list.concat(item.children);\n }\n\n return false;\n}\n\nexport const MKLayoutDefault = defineComponent({\n name: \"MKLayoutDefault\",\n setup() {\n const msAppClient = MSAppClient.instance!;\n const userSession = msAppClient.userSession!;\n const menu = userSession.menu;\n const vueRouter = useRouter();\n\n const currentBarItem: Ref<MenuNode | null> = ref(null);\n\n handleCurrentMenuChange();\n menu.currentMenuChangeEvent.on(handleCurrentMenuChange);\n\n function handleCurrentMenuChange() {\n currentBarItem.value = menu.getCurrentMenuNode()\n ? menu.rootMenus.find((item) =>\n includeMenuNode(item, menu.getCurrentMenuNode()!)\n ) ?? null\n : null;\n }\n\n // 用户会话销毁就前往登录页面。\n userSession.register(\n createDisposable(() => {\n vueRouter.push({ name: \"login\" });\n })\n );\n\n return () => {\n return (\n <MKSystemProvider>\n <ElContainer class=\"mk-layout-default\">\n <ElAside>\n <MKBar barItem={unref(currentBarItem) as MenuNode} />\n </ElAside>\n <ElMain>\n <ElContainer class=\"mk-layout-default__body\">\n <ElHeader class=\"mk-layout-default__header\">\n <MKHeader />\n </ElHeader>\n <ElMain>\n <ElContainer class=\"mk-layout-default__main\">\n <ElAside class=\"mk-layout-default__menu\">\n <MKMenu barItem={unref(currentBarItem) as MenuNode} />\n </ElAside>\n <ElMain>\n <RouterView />\n </ElMain>\n </ElContainer>\n </ElMain>\n </ElContainer>\n </ElMain>\n </ElContainer>\n </MKSystemProvider>\n );\n };\n },\n});\n"],"names":["includeMenuNode","rootMenuNode","menuNode","list","i","length","item","id","concat","children","MKLayoutDefault","name","setup","msAppClient","MSAppClient","instance","userSession","menu","vueRouter","useRouter","currentBarItem","ref","handleCurrentMenuChange","currentMenuChangeEvent","on","value","getCurrentMenuNode","rootMenus","find","register","createDisposable","push","_createVNode","MKSystemProvider","default","ElContainer","ElAside","MKBar","unref","ElMain","ElHeader","MKHeader","MKMenu","RouterView"],"mappings":"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"}
@@ -34,6 +34,7 @@ import '../../../../../../components/column-components/column-json/index.js';
34
34
  import '../../../../../../components/column-components/column-date/column-date-options.js';
35
35
  import '../../../../../../components/column-components/column-switch/column-switch-options.js';
36
36
  import '../../../../../../components/column-components/column-tag/column-tag-options.js';
37
+ import '../../../../../../components/column-components/column-link/column-link-options.js';
37
38
  import '../../../../../../components/condition-components/condition-input/index.js';
38
39
  import '../../../../../../components/condition-components/condition-date/index.js';
39
40
  import '../../../../../../components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage v-if=\"dataTable\" :data-table=\"dataTable\" selection />\n\n <ElDialog v-if=\"dataForm\" appendToBody v-model=\"isShowDialog\">\n <MKDataForm v-loading=\"dataForm.loading\" :dataForm=\"dataForm\">\n <MKForm :dataForm=\"dataForm\" />\n </MKDataForm>\n\n <template #footer>\n <ElButton\n type=\"primary\"\n :loading=\"dataForm.loading\"\n @click=\"handleSubmit\"\n >\n {{ I18n.instance.translate(\"mk.dataForm.saveButton\") }}\n </ElButton>\n <ElButton @click=\"handleCancel\">\n {{ I18n.instance.translate(\"mk.dataForm.cancelButton\") }}\n </ElButton>\n </template>\n </ElDialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref, nextTick } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage, ElDialog, ElButton } from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport { DataForm, DataTable, Dialoger, Messager } from \"@maketribe/dm\";\nimport {\n MKDataTablePage,\n MKDataForm,\n MKForm,\n} from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n dataForm: { type: DataForm<any> },\n});\n\nconst router = useRouter();\n\nconst isShowDialog = ref(false);\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(\n () =>\n [\n props.dataTable,\n props.dataForm,\n unref(router.currentRoute).meta.name,\n ] as [DataTable, DataForm, string]\n ),\n ([_dataTable, _dataForm, name]) => {\n dataTable.value =\n _dataTable || DataModelDefines.instance.getDataTable(name);\n dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(async () => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n _dataForm.addRecord();\n });\n\n dataTable.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n try {\n const response = await _dataForm.editRecord(\n item[dataTable.primaryKey]\n );\n\n if (response.data.code !== 200) {\n ElMessage.error(response.data.msg);\n isShowDialog.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDialog.value = false;\n }\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n\nconst handleSubmit = async () => {\n try {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n return;\n }\n\n if (!(await _dataForm.validate())) {\n return;\n }\n\n const response = await _dataForm.submit();\n\n if (response.data.code !== 200) {\n ElMessage.error({ message: response.data.msg });\n return;\n }\n\n unref(dataTable)?.load();\n ElMessage.success({\n message: I18n.instance.translate(\"mk.message.saveSuccess\"),\n });\n\n isShowDialog.value = false;\n } catch (e) {\n ElMessage.error({\n message: I18n.instance.translate(\"mk.message.saveError\"),\n });\n }\n};\n\nconst handleCancel = () => {\n unref(dataForm)?.cancel();\n isShowDialog.value = false;\n};\n</script>\n"],"names":["dataTable"],"mappings":"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"}
1
+ {"version":3,"file":"dialog.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage v-if=\"dataTable\" :data-table=\"dataTable\" selection />\n\n <ElDialog v-if=\"dataForm\" appendToBody v-model=\"isShowDialog\">\n <MKDataForm v-loading=\"dataForm.loading\" :dataForm=\"dataForm\">\n <MKForm :dataForm=\"dataForm\" />\n </MKDataForm>\n\n <template #footer>\n <ElButton\n type=\"primary\"\n :loading=\"dataForm.loading\"\n @click=\"handleSubmit\"\n >\n {{ I18n.instance.translate(\"mk.dataForm.saveButton\") }}\n </ElButton>\n <ElButton @click=\"handleCancel\">\n {{ I18n.instance.translate(\"mk.dataForm.cancelButton\") }}\n </ElButton>\n </template>\n </ElDialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref, nextTick } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage, ElDialog, ElButton } from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport { DataForm, DataTable, Dialoger, Messager } from \"@maketribe/dm\";\nimport {\n MKDataTablePage,\n MKDataForm,\n MKForm,\n} from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n dataForm: { type: DataForm<any> },\n});\n\nconst router = useRouter();\n\nconst isShowDialog = ref(false);\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(\n () =>\n [\n props.dataTable,\n props.dataForm,\n unref(router.currentRoute).meta.name,\n ] as [DataTable, DataForm, string]\n ),\n ([_dataTable, _dataForm, name]) => {\n dataTable.value =\n _dataTable || DataModelDefines.instance.getDataTable(name);\n dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(async () => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n _dataForm.addRecord();\n });\n\n dataTable.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n try {\n const response = await _dataForm.editRecord(\n item[dataTable.primaryKey]\n );\n\n if (response.data.code !== 200) {\n ElMessage.error(response.data.msg);\n isShowDialog.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDialog.value = false;\n }\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n\nconst handleSubmit = async () => {\n try {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n return;\n }\n\n if (!(await _dataForm.validate())) {\n return;\n }\n\n const response = await _dataForm.submit();\n\n if (response.data.code !== 200) {\n ElMessage.error({ message: response.data.msg });\n return;\n }\n\n unref(dataTable)?.load();\n ElMessage.success({\n message: I18n.instance.translate(\"mk.message.saveSuccess\"),\n });\n\n isShowDialog.value = false;\n } catch (e) {\n ElMessage.error({\n message: I18n.instance.translate(\"mk.message.saveError\"),\n });\n }\n};\n\nconst handleCancel = () => {\n unref(dataForm)?.cancel();\n isShowDialog.value = false;\n};\n</script>\n"],"names":["dataTable"],"mappings":"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"}
@@ -33,6 +33,7 @@ import '../../../../../../components/column-components/column-json/index.js';
33
33
  import '../../../../../../components/column-components/column-date/column-date-options.js';
34
34
  import '../../../../../../components/column-components/column-switch/column-switch-options.js';
35
35
  import '../../../../../../components/column-components/column-tag/column-tag-options.js';
36
+ import '../../../../../../components/column-components/column-link/column-link-options.js';
36
37
  import '../../../../../../components/condition-components/condition-input/index.js';
37
38
  import '../../../../../../components/condition-components/condition-date/index.js';
38
39
  import '../../../../../../components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"normal.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/normal.vue"],"sourcesContent":["<template>\n <MKDataTablePage\n v-if=\"dataTable\"\n v-show=\"!isShowDataForm\"\n :data-table=\"dataTable\"\n selection\n />\n <MKDataFormPage\n v-if=\"dataForm\"\n v-show=\"isShowDataForm\"\n :data-form=\"dataForm\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage } from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport { DataForm, DataTable, Dialoger, Messager } from \"@maketribe/dm\";\nimport { MKDataTablePage, MKDataFormPage } from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n dataForm: { type: DataForm<any> },\n});\n\nconst router = useRouter();\n\nconst isShowDataForm = ref(false);\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(\n () =>\n [\n props.dataTable,\n props.dataForm,\n unref(router.currentRoute).meta.name,\n ] as [DataTable, DataForm, string]\n ),\n ([_dataTable, _dataForm, name]) => {\n dataTable.value =\n _dataTable || DataModelDefines.instance.getDataTable(name);\n dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(() => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n _dataForm.addRecord();\n });\n\n dataTable.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n try {\n const response = await _dataForm.editRecord(\n item[dataTable.primaryKey]\n );\n\n if (response.data.code !== 200) {\n ElMessage.error(response.data.msg);\n isShowDataForm.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDataForm.value = false;\n }\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n\nwatch(\n dataForm,\n (dataForm, _, onCleanup) => {\n if (dataForm) {\n dataForm.submittedEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(dataTable)?.load();\n });\n\n dataForm.cancelEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(dataTable)?.load();\n });\n }\n\n onCleanup(() => {\n dataForm?.dispose();\n });\n },\n { immediate: true }\n);\n</script>\n"],"names":["dataTable","dataForm"],"mappings":"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"}
1
+ {"version":3,"file":"normal.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/normal.vue"],"sourcesContent":["<template>\n <MKDataTablePage\n v-if=\"dataTable\"\n v-show=\"!isShowDataForm\"\n :data-table=\"dataTable\"\n selection\n />\n <MKDataFormPage\n v-if=\"dataForm\"\n v-show=\"isShowDataForm\"\n :data-form=\"dataForm\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage } from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport { DataForm, DataTable, Dialoger, Messager } from \"@maketribe/dm\";\nimport { MKDataTablePage, MKDataFormPage } from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n dataForm: { type: DataForm<any> },\n});\n\nconst router = useRouter();\n\nconst isShowDataForm = ref(false);\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(\n () =>\n [\n props.dataTable,\n props.dataForm,\n unref(router.currentRoute).meta.name,\n ] as [DataTable, DataForm, string]\n ),\n ([_dataTable, _dataForm, name]) => {\n dataTable.value =\n _dataTable || DataModelDefines.instance.getDataTable(name);\n dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(() => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n _dataForm.addRecord();\n });\n\n dataTable.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n try {\n const response = await _dataForm.editRecord(\n item[dataTable.primaryKey]\n );\n\n if (response.data.code !== 200) {\n ElMessage.error(response.data.msg);\n isShowDataForm.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDataForm.value = false;\n }\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n\nwatch(\n dataForm,\n (dataForm, _, onCleanup) => {\n if (dataForm) {\n dataForm.submittedEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(dataTable)?.load();\n });\n\n dataForm.cancelEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(dataTable)?.load();\n });\n }\n\n onCleanup(() => {\n dataForm?.dispose();\n });\n },\n { immediate: true }\n);\n</script>\n"],"names":["dataTable","dataForm"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,IAAA,MAAM,SAAS,SAAU,EAAA,CAAA;AAEzB,IAAM,MAAA,cAAA,GAAiB,IAAI,KAAK,CAAA,CAAA;AAEhC,IAAM,MAAA,SAAA,GAAmC,IAAI,IAAI,CAAA,CAAA;AACjD,IAAM,MAAA,QAAA,GAAiC,IAAI,IAAI,CAAA,CAAA;AAE/C,IAAA,KAAA;AAAA,MACE,QAAA;AAAA,QACE,MACE;AAAA,UACE,KAAM,CAAA,SAAA;AAAA,UACN,KAAM,CAAA,QAAA;AAAA,UACN,KAAM,CAAA,MAAA,CAAO,YAAY,CAAA,CAAE,IAAK,CAAA,IAAA;AAAA,SAClC;AAAA,OACJ;AAAA,MACA,CAAC,CAAC,UAAY,EAAA,SAAA,EAAW,IAAI,CAAM,KAAA;AACjC,QAAA,SAAA,CAAU,KACR,GAAA,UAAA,IAAc,gBAAiB,CAAA,QAAA,CAAS,aAAa,IAAI,CAAA,CAAA;AAC3D,QAAA,QAAA,CAAS,KAAQ,GAAA,SAAA,IAAa,gBAAiB,CAAA,QAAA,CAAS,YAAY,IAAI,CAAA,CAAA;AAAA,OAC1E;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,SAAA;AAAA,MACA,CAACA,UAAW,EAAA,CAAA,EAAG,SAAc,KAAA;AAC3B,QAAA,IAAIA,UAAW,EAAA;AACb,UAAAA,UAAAA,CAAU,cAAe,CAAA,EAAA,CAAG,MAAM;AAChC,YAAM,MAAA,SAAA,GAAY,MAAM,QAAQ,CAAA,CAAA;AAEhC,YAAA,IAAI,CAAC,SAAW,EAAA;AACd,cAAA,OAAA,CAAQ,IAAK,CAAA,CAAA,gCAAA,EAAUA,UAAU,CAAA,IAAI,CAAe,uBAAA,CAAA,CAAA,CAAA;AACpD,cAAA,OAAA;AAAA,aACF;AAEA,YAAA,cAAA,CAAe,KAAQ,GAAA,IAAA,CAAA;AAEvB,YAAA,SAAA,CAAU,SAAU,EAAA,CAAA;AAAA,WACrB,CAAA,CAAA;AAED,UAAAA,WAAU,eAAgB,CAAA,EAAA,CAAG,OAAO,EAAE,MAAW,KAAA;AAC/C,YAAM,MAAA,SAAA,GAAY,MAAM,QAAQ,CAAA,CAAA;AAEhC,YAAA,IAAI,CAAC,SAAW,EAAA;AACd,cAAA,OAAA,CAAQ,IAAK,CAAA,CAAA,gCAAA,EAAUA,UAAU,CAAA,IAAI,CAAe,uBAAA,CAAA,CAAA,CAAA;AACpD,cAAA,OAAA;AAAA,aACF;AAEA,YAAA,cAAA,CAAe,KAAQ,GAAA,IAAA,CAAA;AAEvB,YAAI,IAAA;AACF,cAAM,MAAA,QAAA,GAAW,MAAM,SAAU,CAAA,UAAA;AAAA,gBAC/B,IAAA,CAAKA,WAAU,UAAU,CAAA;AAAA,eAC3B,CAAA;AAEA,cAAI,IAAA,QAAA,CAAS,IAAK,CAAA,IAAA,KAAS,GAAK,EAAA;AAC9B,gBAAU,SAAA,CAAA,KAAA,CAAM,QAAS,CAAA,IAAA,CAAK,GAAG,CAAA,CAAA;AACjC,gBAAA,cAAA,CAAe,KAAQ,GAAA,KAAA,CAAA;AACvB,gBAAA,OAAA;AAAA,eACF;AAAA,qBACO,CAAG,EAAA;AACV,cAAA,OAAA,CAAQ,MAAM,CAAC,CAAA,CAAA;AACf,cAAA,cAAA,CAAe,KAAQ,GAAA,KAAA,CAAA;AAAA,aACzB;AAAA,WACD,CAAA,CAAA;AAAA,SACH;AAEA,QAAA,SAAA,CAAU,MAAM;AACd,UAAAA,YAAW,cAAe,EAAA,CAAA;AAC1B,UAAAA,YAAW,OAAQ,EAAA,CAAA;AAAA,SACpB,CAAA,CAAA;AAAA,OACH;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,QAAA;AAAA,MACA,CAACC,SAAU,EAAA,CAAA,EAAG,SAAc,KAAA;AAC1B,QAAA,IAAIA,SAAU,EAAA;AACZ,UAAAA,SAAAA,CAAS,cAAe,CAAA,EAAA,CAAG,MAAM;AAC/B,YAAA,cAAA,CAAe,KAAQ,GAAA,KAAA,CAAA;AAEvB,YAAM,KAAA,CAAA,SAAS,GAAG,IAAK,EAAA,CAAA;AAAA,WACxB,CAAA,CAAA;AAED,UAAAA,SAAAA,CAAS,WAAY,CAAA,EAAA,CAAG,MAAM;AAC5B,YAAA,cAAA,CAAe,KAAQ,GAAA,KAAA,CAAA;AAEvB,YAAM,KAAA,CAAA,SAAS,GAAG,IAAK,EAAA,CAAA;AAAA,WACxB,CAAA,CAAA;AAAA,SACH;AAEA,QAAA,SAAA,CAAU,MAAM;AACd,UAAAA,WAAU,OAAQ,EAAA,CAAA;AAAA,SACnB,CAAA,CAAA;AAAA,OACH;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -37,6 +37,7 @@ import '../../../../../../components/column-components/column-json/index.js';
37
37
  import '../../../../../../components/column-components/column-date/column-date-options.js';
38
38
  import '../../../../../../components/column-components/column-switch/column-switch-options.js';
39
39
  import '../../../../../../components/column-components/column-tag/column-tag-options.js';
40
+ import '../../../../../../components/column-components/column-link/column-link-options.js';
40
41
  import '../../../../../../components/condition-components/condition-input/index.js';
41
42
  import '../../../../../../components/condition-components/condition-date/index.js';
42
43
  import '../../../../../../components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/table-tree/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage :data-table=\"dataTree\" selection>\n <MKTableView :data-table=\"dataTree\">\n <MKTableTree :data-tree=\"dataTree\" />\n </MKTableView>\n </MKDataTablePage>\n</template>\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataTree } from \"@maketribe/dm\";\nimport { DataModelDefines } from \"../../../../../../core\";\nimport {\n MKDataTablePage,\n MKTableView,\n MKTableTree,\n} from \"../../../../../../components\";\n\nconst router = useRouter();\n\nconst props = defineProps({\n dataTree: { type: DataTree<any> },\n});\n\nconst dataTree: Ref<DataTree | null> = ref(null);\n\nwatch(\n computed(() => [props.dataTree, unref(router.currentRoute).meta.name]),\n ([_dataTree, name]) => {\n dataTree.value =\n (_dataTree as DataTree) ||\n DataModelDefines.instance.getDataTree(name as string);\n },\n { immediate: true }\n);\n\nwatch(\n dataTree,\n (dataTree, _, onCleanup) => {\n // if (dataTree) {\n // dataTree.addRecordEvent.on(() => {\n // router.push({ name: `dv/${unref(dataTree).name}/add` });\n // });\n\n // dataTree.editRecordEvent.on(({ item }) => {\n // router.push({\n // name: `dv/${unref(dataTree).name}/edit`,\n // params: { id: item[unref(dataTree)?.primaryKey as string] },\n // });\n // });\n // }\n\n onCleanup(() => {\n // dataTree?.clearSelection();\n // dataTree?.dispose();\n });\n },\n { immediate: true }\n);\n</script>\n"],"names":["dataTree"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,IAAA,MAAM,SAAS,SAAU,EAAA,CAAA;AAMzB,IAAM,MAAA,QAAA,GAAiC,IAAI,IAAI,CAAA,CAAA;AAE/C,IAAA,KAAA;AAAA,MACE,QAAA,CAAS,MAAM,CAAC,KAAM,CAAA,QAAA,EAAU,KAAM,CAAA,MAAA,CAAO,YAAY,CAAA,CAAE,IAAK,CAAA,IAAI,CAAC,CAAA;AAAA,MACrE,CAAC,CAAC,SAAW,EAAA,IAAI,CAAM,KAAA;AACrB,QAAA,QAAA,CAAS,KACN,GAAA,SAAA,IACD,gBAAiB,CAAA,QAAA,CAAS,YAAY,IAAc,CAAA,CAAA;AAAA,OACxD;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,QAAA;AAAA,MACA,CAACA,SAAU,EAAA,CAAA,EAAG,SAAc,KAAA;AAc1B,QAAA,SAAA,CAAU,MAAM;AAAA,SAGf,CAAA,CAAA;AAAA,OACH;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"dialog.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/table-tree/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage :data-table=\"dataTree\" selection>\n <MKTableView :data-table=\"dataTree\">\n <MKTableTree :data-tree=\"dataTree\" />\n </MKTableView>\n </MKDataTablePage>\n</template>\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataTree } from \"@maketribe/dm\";\nimport { DataModelDefines } from \"../../../../../../core\";\nimport {\n MKDataTablePage,\n MKTableView,\n MKTableTree,\n} from \"../../../../../../components\";\n\nconst router = useRouter();\n\nconst props = defineProps({\n dataTree: { type: DataTree<any> },\n});\n\nconst dataTree: Ref<DataTree | null> = ref(null);\n\nwatch(\n computed(() => [props.dataTree, unref(router.currentRoute).meta.name]),\n ([_dataTree, name]) => {\n dataTree.value =\n (_dataTree as DataTree) ||\n DataModelDefines.instance.getDataTree(name as string);\n },\n { immediate: true }\n);\n\nwatch(\n dataTree,\n (dataTree, _, onCleanup) => {\n // if (dataTree) {\n // dataTree.addRecordEvent.on(() => {\n // router.push({ name: `dv/${unref(dataTree).name}/add` });\n // });\n\n // dataTree.editRecordEvent.on(({ item }) => {\n // router.push({\n // name: `dv/${unref(dataTree).name}/edit`,\n // params: { id: item[unref(dataTree)?.primaryKey as string] },\n // });\n // });\n // }\n\n onCleanup(() => {\n // dataTree?.clearSelection();\n // dataTree?.dispose();\n });\n },\n { immediate: true }\n);\n</script>\n"],"names":["dataTree"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,IAAA,MAAM,SAAS,SAAU,EAAA,CAAA;AAMzB,IAAM,MAAA,QAAA,GAAiC,IAAI,IAAI,CAAA,CAAA;AAE/C,IAAA,KAAA;AAAA,MACE,QAAA,CAAS,MAAM,CAAC,KAAM,CAAA,QAAA,EAAU,KAAM,CAAA,MAAA,CAAO,YAAY,CAAA,CAAE,IAAK,CAAA,IAAI,CAAC,CAAA;AAAA,MACrE,CAAC,CAAC,SAAW,EAAA,IAAI,CAAM,KAAA;AACrB,QAAA,QAAA,CAAS,KACN,GAAA,SAAA,IACD,gBAAiB,CAAA,QAAA,CAAS,YAAY,IAAc,CAAA,CAAA;AAAA,OACxD;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,QAAA;AAAA,MACA,CAACA,SAAU,EAAA,CAAA,EAAG,SAAc,KAAA;AAc1B,QAAA,SAAA,CAAU,MAAM;AAAA,SAGf,CAAA,CAAA;AAAA,OACH;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -34,6 +34,7 @@ import '../../../../../../components/column-components/column-json/index.js';
34
34
  import '../../../../../../components/column-components/column-date/column-date-options.js';
35
35
  import '../../../../../../components/column-components/column-switch/column-switch-options.js';
36
36
  import '../../../../../../components/column-components/column-tag/column-tag-options.js';
37
+ import '../../../../../../components/column-components/column-link/column-link-options.js';
37
38
  import '../../../../../../components/condition-components/condition-input/index.js';
38
39
  import '../../../../../../components/condition-components/condition-date/index.js';
39
40
  import '../../../../../../components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/tree/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage v-if=\"dataTree\" :data-table=\"dataTree\">\n <MKTreeView :data-tree=\"dataTree\" />\n </MKDataTablePage>\n <!-- <MKDataTreePage\n v-if=\"dataTree && dataForm\"\n :data-tree=\"dataTree\"\n :data-form=\"dataForm\"\n :props=\"{ label: 'name', children: 'children' }\"\n /> -->\n <ElDialog appendToBody v-if=\"dataForm\" v-model=\"isShowDialog\">\n <MKDataForm v-loading=\"dataForm.loading\" :dataForm=\"dataForm\">\n <MKForm :dataForm=\"dataForm\" />\n </MKDataForm>\n <template #footer>\n <ElButton\n type=\"primary\"\n :loading=\"dataForm.loading\"\n @click=\"handleSubmit\"\n >\n {{ I18n.instance.translate(\"mk.dataForm.saveButton\") }}\n </ElButton>\n <ElButton @click=\"handleCancel\">\n {{ I18n.instance.translate(\"mk.dataForm.cancelButton\") }}\n </ElButton>\n </template>\n </ElDialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, unref, Ref, ref, watch } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage, ElDialog, ElButton } from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport { DataForm, DataTree, Dialoger, Messager } from \"@maketribe/dm\";\nimport {\n MKDataTablePage,\n MKTreeView,\n MKDataForm,\n MKForm,\n} from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst router = useRouter();\n\nconst dataTree: Ref<DataTree | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\n(window as any).dataTree = dataTree;\n\nconst isShowDialog = ref(false);\n\nwatch(\n computed(() => unref(router.currentRoute).meta.name as string),\n (name) => {\n dataTree.value = DataModelDefines.instance.getDataTree(name);\n dataForm.value = DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTree,\n (dataTree, _, onCleanup) => {\n if (dataTree) {\n dataTree.addRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTree.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n const parentKey = unref(dataTree.parentKey);\n\n _dataForm.addRecord(item ? { [parentKey]: item[parentKey] } : {});\n });\n\n dataTree.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTree.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n try {\n const response = await _dataForm.editRecord(item);\n\n if (response.data.code !== 200) {\n ElMessage.error(response.data.msg);\n isShowDialog.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDialog.value = false;\n }\n });\n\n dataTree.deleteRecordEvent.on(async ({ item }) => {\n const i18n = I18n.instance;\n\n const isConfirm = await Dialoger.instance.confirm({\n title: i18n.translate(\"mk.dataTablePage.deleteTitle\"),\n message: i18n.translate(\"mk.dataTablePage.deleteMessage\"),\n type: \"warning\",\n });\n\n if (!isConfirm) {\n return;\n }\n\n const response = await dataTree.deleteAfterRefresh(\n item[dataTree.primaryKey]\n );\n\n if (response.data.code !== 200) {\n Messager.instance.error({ message: response.data.msg });\n return;\n }\n\n Messager.instance.success({ message: \"删除成功\" });\n });\n }\n\n onCleanup(() => {\n dataTree?.dispose();\n });\n },\n { immediate: true }\n);\n\nconst handleSubmit = async () => {\n try {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n return;\n }\n\n if (!(await _dataForm.validate())) {\n return;\n }\n\n const response = await _dataForm.submit();\n\n if (response.data.code !== 200) {\n ElMessage.error({ message: response.data.msg });\n return;\n }\n\n unref(dataTree)?.load();\n ElMessage.success({\n message: I18n.instance.translate(\"mk.message.saveSuccess\"),\n });\n\n isShowDialog.value = false;\n } catch (e) {\n ElMessage.error({\n message: I18n.instance.translate(\"mk.message.saveError\"),\n });\n }\n};\n\nconst handleCancel = () => {\n unref(dataForm)?.cancel();\n isShowDialog.value = false;\n};\n</script>\n"],"names":["dataTree"],"mappings":"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"}
1
+ {"version":3,"file":"dialog.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/tree/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage v-if=\"dataTree\" :data-table=\"dataTree\">\n <MKTreeView :data-tree=\"dataTree\" />\n </MKDataTablePage>\n <!-- <MKDataTreePage\n v-if=\"dataTree && dataForm\"\n :data-tree=\"dataTree\"\n :data-form=\"dataForm\"\n :props=\"{ label: 'name', children: 'children' }\"\n /> -->\n <ElDialog appendToBody v-if=\"dataForm\" v-model=\"isShowDialog\">\n <MKDataForm v-loading=\"dataForm.loading\" :dataForm=\"dataForm\">\n <MKForm :dataForm=\"dataForm\" />\n </MKDataForm>\n <template #footer>\n <ElButton\n type=\"primary\"\n :loading=\"dataForm.loading\"\n @click=\"handleSubmit\"\n >\n {{ I18n.instance.translate(\"mk.dataForm.saveButton\") }}\n </ElButton>\n <ElButton @click=\"handleCancel\">\n {{ I18n.instance.translate(\"mk.dataForm.cancelButton\") }}\n </ElButton>\n </template>\n </ElDialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, unref, Ref, ref, watch } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage, ElDialog, ElButton } from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport { DataForm, DataTree, Dialoger, Messager } from \"@maketribe/dm\";\nimport {\n MKDataTablePage,\n MKTreeView,\n MKDataForm,\n MKForm,\n} from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst router = useRouter();\n\nconst dataTree: Ref<DataTree | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\n(window as any).dataTree = dataTree;\n\nconst isShowDialog = ref(false);\n\nwatch(\n computed(() => unref(router.currentRoute).meta.name as string),\n (name) => {\n dataTree.value = DataModelDefines.instance.getDataTree(name);\n dataForm.value = DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTree,\n (dataTree, _, onCleanup) => {\n if (dataTree) {\n dataTree.addRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTree.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n const parentKey = unref(dataTree.parentKey);\n\n _dataForm.addRecord(item ? { [parentKey]: item[parentKey] } : {});\n });\n\n dataTree.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTree.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n try {\n const response = await _dataForm.editRecord(item);\n\n if (response.data.code !== 200) {\n ElMessage.error(response.data.msg);\n isShowDialog.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDialog.value = false;\n }\n });\n\n dataTree.deleteRecordEvent.on(async ({ item }) => {\n const i18n = I18n.instance;\n\n const isConfirm = await Dialoger.instance.confirm({\n title: i18n.translate(\"mk.dataTablePage.deleteTitle\"),\n message: i18n.translate(\"mk.dataTablePage.deleteMessage\"),\n type: \"warning\",\n });\n\n if (!isConfirm) {\n return;\n }\n\n const response = await dataTree.deleteAfterRefresh(\n item[dataTree.primaryKey]\n );\n\n if (response.data.code !== 200) {\n Messager.instance.error({ message: response.data.msg });\n return;\n }\n\n Messager.instance.success({ message: \"删除成功\" });\n });\n }\n\n onCleanup(() => {\n dataTree?.dispose();\n });\n },\n { immediate: true }\n);\n\nconst handleSubmit = async () => {\n try {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n return;\n }\n\n if (!(await _dataForm.validate())) {\n return;\n }\n\n const response = await _dataForm.submit();\n\n if (response.data.code !== 200) {\n ElMessage.error({ message: response.data.msg });\n return;\n }\n\n unref(dataTree)?.load();\n ElMessage.success({\n message: I18n.instance.translate(\"mk.message.saveSuccess\"),\n });\n\n isShowDialog.value = false;\n } catch (e) {\n ElMessage.error({\n message: I18n.instance.translate(\"mk.message.saveError\"),\n });\n }\n};\n\nconst handleCancel = () => {\n unref(dataForm)?.cancel();\n isShowDialog.value = false;\n};\n</script>\n"],"names":["dataTree"],"mappings":"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"}
@@ -37,6 +37,7 @@ import '../../../../components/column-components/column-json/index.js';
37
37
  import '../../../../components/column-components/column-date/column-date-options.js';
38
38
  import '../../../../components/column-components/column-switch/column-switch-options.js';
39
39
  import '../../../../components/column-components/column-tag/column-tag-options.js';
40
+ import '../../../../components/column-components/column-link/column-link-options.js';
40
41
  import '../../../../components/condition-components/condition-input/index.js';
41
42
  import '../../../../components/condition-components/condition-date/index.js';
42
43
  import '../../../../components/condition-components/condition-number/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"table.vue2.js","sources":["../../../../../../src/page/index/dv/default/table.vue"],"sourcesContent":["<template>\n <MKDataTablePage :data-table=\"dataTable\" selection />\n</template>\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataTable } from \"@maketribe/dm\";\nimport { DataModelDefines } from \"../../../../core\";\nimport { MKDataTablePage } from \"../../../../components\";\n\nconst router = useRouter();\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n});\n\nconst dataTable: Ref<DataTable | null> = ref(null);\n\nwatch(\n computed(() => [props.dataTable, unref(router.currentRoute).meta.name]),\n ([_dataTable, name]) => {\n dataTable.value =\n (_dataTable as DataTable) ||\n DataModelDefines.instance.getDataTable(name as string);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(() => {\n router.push({ name: `dv/${unref(dataTable).name}/add` });\n });\n\n dataTable.editRecordEvent.on(({ item }) => {\n router.push({\n name: `dv/${unref(dataTable).name}/edit`,\n params: { id: item[unref(dataTable)?.primaryKey as string] },\n });\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n</script>\n"],"names":["dataTable"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAA,MAAM,SAAS,SAAU,EAAA,CAAA;AAMzB,IAAM,MAAA,SAAA,GAAmC,IAAI,IAAI,CAAA,CAAA;AAEjD,IAAA,KAAA;AAAA,MACE,QAAA,CAAS,MAAM,CAAC,KAAM,CAAA,SAAA,EAAW,KAAM,CAAA,MAAA,CAAO,YAAY,CAAA,CAAE,IAAK,CAAA,IAAI,CAAC,CAAA;AAAA,MACtE,CAAC,CAAC,UAAY,EAAA,IAAI,CAAM,KAAA;AACtB,QAAA,SAAA,CAAU,KACP,GAAA,UAAA,IACD,gBAAiB,CAAA,QAAA,CAAS,aAAa,IAAc,CAAA,CAAA;AAAA,OACzD;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,SAAA;AAAA,MACA,CAACA,UAAW,EAAA,CAAA,EAAG,SAAc,KAAA;AAC3B,QAAA,IAAIA,UAAW,EAAA;AACb,UAAAA,UAAAA,CAAU,cAAe,CAAA,EAAA,CAAG,MAAM;AAChC,YAAO,MAAA,CAAA,IAAA,CAAK,EAAE,IAAM,EAAA,CAAA,GAAA,EAAM,MAAMA,UAAS,CAAA,CAAE,IAAI,CAAA,IAAA,CAAA,EAAQ,CAAA,CAAA;AAAA,WACxD,CAAA,CAAA;AAED,UAAAA,WAAU,eAAgB,CAAA,EAAA,CAAG,CAAC,EAAE,MAAW,KAAA;AACzC,YAAA,MAAA,CAAO,IAAK,CAAA;AAAA,cACV,IAAM,EAAA,CAAA,GAAA,EAAM,KAAMA,CAAAA,UAAS,EAAE,IAAI,CAAA,KAAA,CAAA;AAAA,cACjC,MAAA,EAAQ,EAAE,EAAI,EAAA,IAAA,CAAK,MAAMA,UAAS,CAAA,EAAG,UAAoB,CAAE,EAAA;AAAA,aAC5D,CAAA,CAAA;AAAA,WACF,CAAA,CAAA;AAAA,SACH;AAEA,QAAA,SAAA,CAAU,MAAM;AACd,UAAAA,YAAW,cAAe,EAAA,CAAA;AAC1B,UAAAA,YAAW,OAAQ,EAAA,CAAA;AAAA,SACpB,CAAA,CAAA;AAAA,OACH;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;;;;;;;;;;;;"}
1
+ {"version":3,"file":"table.vue2.js","sources":["../../../../../../src/page/index/dv/default/table.vue"],"sourcesContent":["<template>\n <MKDataTablePage :data-table=\"dataTable\" selection />\n</template>\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataTable } from \"@maketribe/dm\";\nimport { DataModelDefines } from \"../../../../core\";\nimport { MKDataTablePage } from \"../../../../components\";\n\nconst router = useRouter();\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n});\n\nconst dataTable: Ref<DataTable | null> = ref(null);\n\nwatch(\n computed(() => [props.dataTable, unref(router.currentRoute).meta.name]),\n ([_dataTable, name]) => {\n dataTable.value =\n (_dataTable as DataTable) ||\n DataModelDefines.instance.getDataTable(name as string);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(() => {\n router.push({ name: `dv/${unref(dataTable).name}/add` });\n });\n\n dataTable.editRecordEvent.on(({ item }) => {\n router.push({\n name: `dv/${unref(dataTable).name}/edit`,\n params: { id: item[unref(dataTable)?.primaryKey as string] },\n });\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n</script>\n"],"names":["dataTable"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAA,MAAM,SAAS,SAAU,EAAA,CAAA;AAMzB,IAAM,MAAA,SAAA,GAAmC,IAAI,IAAI,CAAA,CAAA;AAEjD,IAAA,KAAA;AAAA,MACE,QAAA,CAAS,MAAM,CAAC,KAAM,CAAA,SAAA,EAAW,KAAM,CAAA,MAAA,CAAO,YAAY,CAAA,CAAE,IAAK,CAAA,IAAI,CAAC,CAAA;AAAA,MACtE,CAAC,CAAC,UAAY,EAAA,IAAI,CAAM,KAAA;AACtB,QAAA,SAAA,CAAU,KACP,GAAA,UAAA,IACD,gBAAiB,CAAA,QAAA,CAAS,aAAa,IAAc,CAAA,CAAA;AAAA,OACzD;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,SAAA;AAAA,MACA,CAACA,UAAW,EAAA,CAAA,EAAG,SAAc,KAAA;AAC3B,QAAA,IAAIA,UAAW,EAAA;AACb,UAAAA,UAAAA,CAAU,cAAe,CAAA,EAAA,CAAG,MAAM;AAChC,YAAO,MAAA,CAAA,IAAA,CAAK,EAAE,IAAM,EAAA,CAAA,GAAA,EAAM,MAAMA,UAAS,CAAA,CAAE,IAAI,CAAA,IAAA,CAAA,EAAQ,CAAA,CAAA;AAAA,WACxD,CAAA,CAAA;AAED,UAAAA,WAAU,eAAgB,CAAA,EAAA,CAAG,CAAC,EAAE,MAAW,KAAA;AACzC,YAAA,MAAA,CAAO,IAAK,CAAA;AAAA,cACV,IAAM,EAAA,CAAA,GAAA,EAAM,KAAMA,CAAAA,UAAS,EAAE,IAAI,CAAA,KAAA,CAAA;AAAA,cACjC,MAAA,EAAQ,EAAE,EAAI,EAAA,IAAA,CAAK,MAAMA,UAAS,CAAA,EAAG,UAAoB,CAAE,EAAA;AAAA,aAC5D,CAAA,CAAA;AAAA,WACF,CAAA,CAAA;AAAA,SACH;AAEA,QAAA,SAAA,CAAU,MAAM;AACd,UAAAA,YAAW,cAAe,EAAA,CAAA;AAC1B,UAAAA,YAAW,OAAQ,EAAA,CAAA;AAAA,SACpB,CAAA,CAAA;AAAA,OACH;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;;;;;;;;;;;;"}
@@ -37,6 +37,7 @@ import '../../../../components/column-components/column-json/index.js';
37
37
  import '../../../../components/column-components/column-date/column-date-options.js';
38
38
  import '../../../../components/column-components/column-switch/column-switch-options.js';
39
39
  import '../../../../components/column-components/column-tag/column-tag-options.js';
40
+ import '../../../../components/column-components/column-link/column-link-options.js';
40
41
  import '../../../../components/condition-components/condition-input/index.js';
41
42
  import '../../../../components/condition-components/condition-date/index.js';
42
43
  import '../../../../components/condition-components/condition-number/index.js';