@type-dom/ui 0.0.7 → 0.0.9

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 (225) hide show
  1. package/package.json +1 -2
  2. package/src/aria.d.ts +0 -17
  3. package/src/aria.js +0 -18
  4. package/src/components/basic/td-button/td-button.abstract.d.ts +2 -3
  5. package/src/components/basic/td-button/td-button.abstract.js +30 -26
  6. package/src/components/basic/td-button/td-button.interface.d.ts +0 -1
  7. package/src/components/basic/td-button-group/td-button-group.class.d.ts +2 -3
  8. package/src/components/basic/td-button-group/td-button-group.class.js +14 -16
  9. package/src/components/basic/td-container/td-aside/td-aside.class.js +2 -2
  10. package/src/components/basic/td-container/td-container.class.js +5 -5
  11. package/src/components/basic/td-container/td-container.js +1 -1
  12. package/src/components/basic/td-container/td-footer/td-footer.class.js +2 -2
  13. package/src/components/basic/td-container/td-header/td-header.class.js +3 -4
  14. package/src/components/basic/td-container/td-main/td-main.class.js +2 -2
  15. package/src/components/basic/td-icon/td-icon.class.js +9 -9
  16. package/src/components/basic/td-layout/td-col/td-col.class.d.ts +5 -2
  17. package/src/components/basic/td-layout/td-col/td-col.class.js +80 -80
  18. package/src/components/basic/td-layout/td-row/td-row.class.js +13 -13
  19. package/src/components/basic/td-link/td-link.class.d.ts +0 -1
  20. package/src/components/basic/td-link/td-link.class.js +17 -19
  21. package/src/components/basic/td-scrollbar/bar/bar.class.js +3 -3
  22. package/src/components/basic/td-scrollbar/td-scrollbar.class.js +5 -5
  23. package/src/components/basic/td-scrollbar/thumb/thumb.class.js +3 -3
  24. package/src/components/basic/td-space/td-space.class.js +10 -10
  25. package/src/components/basic/td-text/td-text.class.js +12 -9
  26. package/src/components/data/td-avatar/td-avatar.class.js +12 -13
  27. package/src/components/data/td-badge/td-badge.class.d.ts +1 -0
  28. package/src/components/data/td-badge/td-badge.class.js +15 -11
  29. package/src/components/data/td-card/td-card.class.js +7 -7
  30. package/src/components/data/td-check-tag/td-check-tag.class.d.ts +0 -1
  31. package/src/components/data/td-check-tag/td-check-tag.class.js +9 -11
  32. package/src/components/data/td-collapse/td-collapse.class.js +2 -3
  33. package/src/components/data/td-collapse/td-collapse.interface.d.ts +1 -0
  34. package/src/components/data/td-collapse-item/td-collapse-item.class.js +8 -8
  35. package/src/components/data/td-collapse-transition/td-collapse-transition.util.js +14 -14
  36. package/src/components/data/td-count-down/td-count-down.class.js +1 -1
  37. package/src/components/data/td-descriptions/td-descriptions-row.js +2 -2
  38. package/src/components/data/td-descriptions/td-descriptions.class.js +8 -8
  39. package/src/components/data/td-descriptions/td-descritions-cell.js +14 -14
  40. package/src/components/data/td-descriptions-item/td-descriptions-item.class.js +1 -1
  41. package/src/components/data/td-empty/img-empty.class.js +3 -3
  42. package/src/components/data/td-empty/td-empty.class.js +4 -4
  43. package/src/components/data/td-image/td-image.class.js +6 -6
  44. package/src/components/data/td-image-viewer/td-image-viewer.class.d.ts +2 -1
  45. package/src/components/data/td-image-viewer/td-image-viewer.class.js +14 -10
  46. package/src/components/data/td-result/td-result.class.js +3 -3
  47. package/src/components/data/td-segmented/td-segmented.class.js +26 -30
  48. package/src/components/data/td-statistic/td-statistic.abstract.js +2 -2
  49. package/src/components/data/td-tag/td-tag.class.js +10 -10
  50. package/src/components/feedback/index.d.ts +0 -2
  51. package/src/components/feedback/index.js +3 -5
  52. package/src/components/feedback/td-alert/td-alert.class.js +9 -9
  53. package/src/components/feedback/td-dialog/td-dialog.class.js +4 -4
  54. package/src/components/feedback/td-dialog-content/td-dialog-content.class.js +4 -4
  55. package/src/components/feedback/td-drawer/td-drawer.class.js +1 -1
  56. package/src/components/feedback/td-focus-trap/td-focus-trap.class.d.ts +19 -1
  57. package/src/components/feedback/td-focus-trap/td-focus-trap.class.js +223 -48
  58. package/src/components/feedback/td-focus-trap/tokens.d.ts +2 -1
  59. package/src/components/feedback/td-focus-trap/utils.d.ts +1 -1
  60. package/src/components/feedback/td-focus-trap/utils.js +9 -11
  61. package/src/components/feedback/td-loading/td-loading.class.js +1 -1
  62. package/src/components/feedback/td-message/td-message.class.d.ts +4 -2
  63. package/src/components/feedback/td-message/td-message.class.js +34 -27
  64. package/src/components/feedback/td-message/td-message.style.js +2 -1
  65. package/src/components/feedback/td-message-box/td-message-box.class.d.ts +3 -1
  66. package/src/components/feedback/td-message-box/td-message-box.class.js +79 -75
  67. package/src/components/feedback/td-message-box/td-message-box.interface.d.ts +2 -1
  68. package/src/components/feedback/td-notification/td-notification.class.d.ts +3 -2
  69. package/src/components/feedback/td-notification/td-notification.class.js +29 -29
  70. package/src/components/feedback/td-only-child/td-only-child.class.d.ts +7 -0
  71. package/src/components/feedback/td-only-child/td-only-child.class.js +74 -0
  72. package/src/components/feedback/td-overlay/td-overlay.class.d.ts +1 -1
  73. package/src/components/feedback/td-overlay/td-overlay.class.js +5 -5
  74. package/src/components/feedback/td-popper/arrow/arrow.class.d.ts +6 -0
  75. package/src/components/feedback/td-popper/arrow/arrow.class.js +22 -3
  76. package/src/components/feedback/td-popper/composable/use-focus-trap.d.ts +0 -0
  77. package/src/components/feedback/td-popper/composable/use-focus-trap.js +1 -0
  78. package/src/components/feedback/td-popper/content/content.class.d.ts +1 -0
  79. package/src/components/feedback/td-popper/content/content.class.js +25 -4
  80. package/src/components/feedback/td-popper/content/content.const.d.ts +3 -0
  81. package/src/components/feedback/td-popper/content/content.const.js +29 -0
  82. package/src/components/feedback/td-popper/content/content.interface.d.ts +9 -0
  83. package/src/components/feedback/td-popper/td-popper.class.d.ts +1 -1
  84. package/src/components/feedback/td-popper/td-popper.class.js +35 -2
  85. package/src/components/feedback/td-popper/td-popper.const.d.ts +21 -0
  86. package/src/components/feedback/td-popper/td-popper.const.js +5 -0
  87. package/src/components/feedback/td-popper/trigger/trigger.class.d.ts +11 -0
  88. package/src/components/feedback/td-popper/trigger/trigger.class.js +96 -1
  89. package/src/components/feedback/td-popper/trigger/trigger.const.d.ts +1 -0
  90. package/src/components/feedback/td-popper/trigger/trigger.const.js +12 -0
  91. package/src/components/feedback/td-popper/trigger/trigger.interface.d.ts +1 -0
  92. package/src/components/feedback/td-tooltip/content/content.class.js +1 -1
  93. package/src/components/feedback/td-tooltip/td-tooltip.class.js +1 -1
  94. package/src/components/feedback/td-tooltip/trigger/trigger.class.js +1 -1
  95. package/src/components/form/checkbox-group/checkbox-group.class.js +6 -7
  96. package/src/components/form/checkbox-group/checkbox-option/checkbox-option.class.d.ts +1 -1
  97. package/src/components/form/checkbox-group/checkbox-option/checkbox-option.class.js +21 -20
  98. package/src/components/form/field-item/cascade/field-cascade.abstract.d.ts +1 -1
  99. package/src/components/form/field-item/cascade/field-cascade.abstract.js +48 -43
  100. package/src/components/form/field-item/field-item.abstract.js +3 -3
  101. package/src/components/form/field-item/input/field-input.abstract.d.ts +1 -1
  102. package/src/components/form/field-item/input/field-input.abstract.js +15 -14
  103. package/src/components/form/field-item/options/field-options.abstract.d.ts +1 -3
  104. package/src/components/form/field-item/options/field-options.abstract.js +49 -46
  105. package/src/components/form/field-item/radio/field-radio.abstract.d.ts +1 -1
  106. package/src/components/form/field-item/radio/field-radio.abstract.js +32 -36
  107. package/src/components/form/field-item/select/field-select.abstract.d.ts +1 -1
  108. package/src/components/form/field-item/select/field-select.abstract.js +19 -19
  109. package/src/components/form/field-item/span/field-span.abstract.js +5 -5
  110. package/src/components/form/field-item/textarea/field-textarea.abstract.js +5 -5
  111. package/src/components/form/field-select/field-select.class.d.ts +1 -1
  112. package/src/components/form/field-select/field-select.class.js +23 -24
  113. package/src/components/form/field-select/option/option.class.js +1 -3
  114. package/src/components/form/radio-group/radio-group.class.js +6 -7
  115. package/src/components/form/radio-group/radio-option/radio-option.class.d.ts +0 -1
  116. package/src/components/form/radio-group/radio-option/radio-option.class.js +14 -15
  117. package/src/components/form/select/select.class.d.ts +1 -1
  118. package/src/components/form/select/select.class.js +19 -18
  119. package/src/components/form/td-checkbox/td-checkbox.class.js +3 -3
  120. package/src/components/form/td-checkbox-button/td-checkbox-button.class.js +3 -3
  121. package/src/components/form/td-checkbox-group/td-checkbox-group.class.js +3 -3
  122. package/src/components/form/td-form/td-form.class.js +5 -3
  123. package/src/components/form/td-form-item/td-form-item.class.js +16 -16
  124. package/src/components/form/td-input/td-input-field.class.js +8 -8
  125. package/src/components/form/td-input/td-input.class.d.ts +0 -1
  126. package/src/components/form/td-input/td-input.class.js +9 -11
  127. package/src/components/form/td-input/widget/prefix.js +1 -1
  128. package/src/components/form/td-input/widget/suffix.js +3 -3
  129. package/src/components/form/td-input/widget/td-input-wrapper.class.js +12 -11
  130. package/src/components/form/td-input/widget/td-textarea-wrapper.js +3 -3
  131. package/src/components/form/td-option/td-option.class.js +3 -3
  132. package/src/components/form/td-option-group/td-option-group.class.js +3 -3
  133. package/src/components/form/td-radio/td-radio.class.d.ts +0 -1
  134. package/src/components/form/td-radio/td-radio.class.js +50 -54
  135. package/src/components/form/td-radio-button/td-radio-button.class.d.ts +0 -1
  136. package/src/components/form/td-radio-button/td-radio-button.class.js +46 -50
  137. package/src/components/form/td-radio-group/td-radio-group.class.js +3 -4
  138. package/src/components/form/td-select/dropdown/dropdown.class.js +2 -2
  139. package/src/components/form/td-select/td-select.class.js +2 -2
  140. package/src/components/form/td-switch/td-switch.class.d.ts +1 -1
  141. package/src/components/form/td-switch/td-switch.class.js +27 -28
  142. package/src/components/form/td-switch/widget/td-switch-core.js +6 -6
  143. package/src/components/form/td-switch/widget/td-switch-left.js +3 -3
  144. package/src/components/form/td-switch/widget/td-switch-right.js +2 -2
  145. package/src/components/navigation/td-affix/td-affix.class.d.ts +3 -0
  146. package/src/components/navigation/td-affix/td-affix.class.js +22 -20
  147. package/src/components/navigation/td-anchor/td-anchor-link/td-anchor-link.class.js +1 -1
  148. package/src/components/navigation/td-anchor/td-anchor.class.js +10 -10
  149. package/src/components/navigation/td-backtop/td-backtop.class.d.ts +5 -3
  150. package/src/components/navigation/td-backtop/td-backtop.class.js +42 -34
  151. package/src/components/navigation/td-backtop/td-backtop.interface.d.ts +3 -0
  152. package/src/components/navigation/td-backtop/use-backtop.d.ts +7 -0
  153. package/src/components/navigation/td-backtop/use-backtop.js +44 -0
  154. package/src/components/navigation/td-breadcrumb/td-breadcrumb.class.js +4 -4
  155. package/src/components/navigation/td-breadcrumb-item/td-breadcrumb-item.class.js +3 -3
  156. package/src/components/navigation/td-menu/td-menu.class.js +5 -5
  157. package/src/components/navigation/td-menu/td-menu.interface.d.ts +2 -1
  158. package/src/components/navigation/td-tabs/td-tab-bar.class.js +5 -5
  159. package/src/components/navigation/td-tabs/td-tab-nav.class.js +14 -14
  160. package/src/components/navigation/td-tabs/td-tab-pane.class.js +3 -3
  161. package/src/components/navigation/td-tabs/td-tabs.class.js +22 -25
  162. package/src/components/others/collapsible-box/collapsible-box.js +2 -2
  163. package/src/components/others/collapsible-box/contents/contents.js +2 -2
  164. package/src/components/others/collapsible-box/heading/expand-heading.d.ts +1 -1
  165. package/src/components/others/collapsible-box/heading/expand-heading.js +27 -26
  166. package/src/components/others/custom-block/custom-block.d.ts +11 -0
  167. package/src/components/others/custom-block/custom-block.js +58 -0
  168. package/src/components/others/example/example-float-control.d.ts +8 -0
  169. package/src/components/others/example/example-float-control.js +63 -0
  170. package/src/components/others/example/example-showcase.d.ts +7 -0
  171. package/src/components/others/example/example-showcase.js +20 -0
  172. package/src/components/others/example/example-source-wrapper.d.ts +9 -0
  173. package/src/components/others/example/example-source-wrapper.js +30 -0
  174. package/src/components/others/example/example.d.ts +14 -0
  175. package/src/components/others/example/example.js +77 -0
  176. package/src/components/others/example/index.d.ts +5 -0
  177. package/src/components/others/example/index.js +13 -0
  178. package/src/components/others/example/op-btns.d.ts +7 -0
  179. package/src/components/others/example/op-btns.js +95 -0
  180. package/src/components/others/index.d.ts +4 -0
  181. package/src/components/others/index.js +9 -1
  182. package/src/components/others/menus/menu.d.ts +21 -0
  183. package/src/components/others/menus/menu.js +125 -0
  184. package/src/components/others/menus/menus.d.ts +15 -0
  185. package/src/components/others/menus/menus.js +101 -0
  186. package/src/components/others/td-divider/td-divider.class.js +8 -8
  187. package/src/hooks/index.d.ts +3 -0
  188. package/src/hooks/index.js +6 -0
  189. package/src/hooks/use-cursor.d.ts +1 -0
  190. package/src/hooks/use-cursor.js +56 -0
  191. package/src/hooks/use-escape-keydown.d.ts +4 -0
  192. package/src/hooks/use-escape-keydown.js +31 -0
  193. package/src/hooks/use-forward-ref.d.ts +13 -0
  194. package/src/hooks/use-forward-ref.js +27 -0
  195. package/src/index.d.ts +1 -0
  196. package/src/index.js +1 -0
  197. package/src/ui/ui.abstract.d.ts +1 -1
  198. package/src/ui/ui.abstract.js +3 -3
  199. package/src/ui/ui.interface.d.ts +3 -3
  200. package/src/components/feedback/dialog/dialog.class.d.ts +0 -7
  201. package/src/components/feedback/dialog/dialog.class.js +0 -21
  202. package/src/components/feedback/dialog/dialog.interface.d.ts +0 -4
  203. package/src/components/feedback/dialog/dialog.interface.js +0 -2
  204. package/src/components/feedback/message-box/message-box.d.ts +0 -9
  205. package/src/components/feedback/message-box/message-box.interface.d.ts +0 -4
  206. package/src/components/feedback/message-box/message-box.interface.js +0 -2
  207. package/src/components/feedback/message-box/message-box.js +0 -33
  208. package/src/components/feedback/overlay/container/body/body.d.ts +0 -7
  209. package/src/components/feedback/overlay/container/body/body.js +0 -17
  210. package/src/components/feedback/overlay/container/container.d.ts +0 -15
  211. package/src/components/feedback/overlay/container/container.js +0 -37
  212. package/src/components/feedback/overlay/container/footer/cancel-button/cancel-button.d.ts +0 -8
  213. package/src/components/feedback/overlay/container/footer/cancel-button/cancel-button.js +0 -31
  214. package/src/components/feedback/overlay/container/footer/confirm-button/confirm-button.d.ts +0 -9
  215. package/src/components/feedback/overlay/container/footer/confirm-button/confirm-button.js +0 -31
  216. package/src/components/feedback/overlay/container/footer/footer.d.ts +0 -10
  217. package/src/components/feedback/overlay/container/footer/footer.js +0 -47
  218. package/src/components/feedback/overlay/container/header/close-button/close-button.d.ts +0 -11
  219. package/src/components/feedback/overlay/container/header/close-button/close-button.js +0 -33
  220. package/src/components/feedback/overlay/container/header/header.d.ts +0 -12
  221. package/src/components/feedback/overlay/container/header/header.js +0 -25
  222. package/src/components/feedback/overlay/container/header/title/title.d.ts +0 -9
  223. package/src/components/feedback/overlay/container/header/title/title.js +0 -19
  224. package/src/components/feedback/overlay/overlay.abstract.d.ts +0 -13
  225. package/src/components/feedback/overlay/overlay.abstract.js +0 -59
@@ -1,21 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FieldSelect = void 0;
4
- const rxjs_1 = require("rxjs");
5
4
  const framework_1 = require("@type-dom/framework");
6
5
  const option_class_1 = require("./option/option.class");
7
6
  class FieldSelect extends framework_1.TypeSelect {
8
7
  constructor() {
9
8
  super();
10
9
  this.className = 'FieldSelect';
11
- this.ctrl.addAttrName('td-select');
10
+ this.attr.addName('td-select');
12
11
  this.childNodes = [];
13
12
  }
14
13
  setOptions(options, value) {
15
14
  this.clearChildren();
16
15
  const firstOpt = new option_class_1.SelectOption();
17
16
  firstOpt.textNode.setText('请选择');
18
- firstOpt.ctrl.addAttrObj({
17
+ firstOpt.attr.addObj({
19
18
  label: '请选择',
20
19
  value: 0
21
20
  });
@@ -23,7 +22,7 @@ class FieldSelect extends framework_1.TypeSelect {
23
22
  options.forEach((opt) => {
24
23
  const optObj = new option_class_1.SelectOption();
25
24
  optObj.textNode.setText(opt.label);
26
- optObj.ctrl.addAttrObj({
25
+ optObj.attr.addObj({
27
26
  label: opt.label,
28
27
  value: opt.value
29
28
  });
@@ -32,12 +31,11 @@ class FieldSelect extends framework_1.TypeSelect {
32
31
  this.addChild(optObj);
33
32
  });
34
33
  this.childNodes.forEach((optObj) => {
35
- var _a;
36
- if (String((_a = optObj.props.attrObj) === null || _a === void 0 ? void 0 : _a.value).trim() === String(value).trim()) {
37
- optObj.ctrl.addAttribute('selected', true);
34
+ if (String(optObj.attr.get('value')).trim() === String(value).trim()) {
35
+ optObj.attr.add('selected', true);
38
36
  }
39
37
  else {
40
- // optObj.ctrl.removeAttribute('selected');
38
+ // optObj.attr.remove('selected');
41
39
  }
42
40
  });
43
41
  // console.error('this.dom.value is ', this.dom.value);
@@ -47,22 +45,23 @@ class FieldSelect extends framework_1.TypeSelect {
47
45
  this.mount(); // 需要单独渲染。
48
46
  // console.error('this.dom.value is ', this.dom.value);
49
47
  }
50
- initEvents() {
51
- this.subscriptions.push(
52
- // 如果只有一个选项时,监听change,input有问题。
53
- (0, rxjs_1.fromEvent)(this.dom, 'click').subscribe((evt) => {
54
- console.log('this.select.dom click, event is ', evt);
55
- console.log('this.select.dom.value is ', this.dom.value);
56
- // console.log(this.reset);
57
- // this.setValue(this.dom.value);
58
- this.value = this.dom.value;
59
- }), (0, rxjs_1.fromEvent)(this.dom, 'change').subscribe((evt) => {
60
- console.log('this.select.dom change, event is ', evt);
61
- console.log('this.select.dom.value is ', this.dom.value);
62
- // console.log(this.reset);
63
- // this.setValue(this.dom.value);
64
- this.value = this.dom.value;
65
- }));
48
+ setup() {
49
+ this.addEvents({
50
+ click: (evt) => {
51
+ console.log('this.select.dom click, event is ', evt);
52
+ console.log('this.select.dom.value is ', this.dom.value);
53
+ // console.log(this.reset);
54
+ // this.setValue(this.dom.value);
55
+ this.value = this.dom.value;
56
+ },
57
+ change: (evt) => {
58
+ console.log('this.select.dom change, event is ', evt);
59
+ console.log('this.select.dom.value is ', this.dom.value);
60
+ // console.log(this.reset);
61
+ // this.setValue(this.dom.value);
62
+ this.value = this.dom.value;
63
+ }
64
+ });
66
65
  }
67
66
  }
68
67
  exports.FieldSelect = FieldSelect;
@@ -6,9 +6,7 @@ class SelectOption extends framework_1.TypeOption {
6
6
  constructor() {
7
7
  super();
8
8
  this.className = 'SelectOption';
9
- this.props.attrObj = {
10
- name: 'option'
11
- };
9
+ this.attr.addName('option');
12
10
  this.textNode = new framework_1.TextNode('一个选项');
13
11
  this.childNodes = [this.textNode];
14
12
  }
@@ -7,10 +7,10 @@ class RadioGroup extends framework_1.TypeDiv {
7
7
  constructor(params = {}) {
8
8
  super();
9
9
  this.className = 'RadioGroup';
10
- this.ctrl.addAttrName('radio-group');
10
+ this.attr.addName('radio-group');
11
11
  this.value = '';
12
12
  this.childNodes = [];
13
- this.props = this.setParams(params);
13
+ this.props = this.useParams(params);
14
14
  }
15
15
  setup() {
16
16
  const props = this.props;
@@ -23,7 +23,7 @@ class RadioGroup extends framework_1.TypeDiv {
23
23
  const random = Math.random();
24
24
  options.forEach((opt) => {
25
25
  const optObj = new radio_option_class_1.RadioOption({ parent: this });
26
- optObj.input.ctrl.addAttrObj({
26
+ optObj.input.attr.addObj({
27
27
  name: 'radio' + random,
28
28
  label: opt.label,
29
29
  value: opt.value,
@@ -40,14 +40,13 @@ class RadioGroup extends framework_1.TypeDiv {
40
40
  this.value = value;
41
41
  // console.error('value is ', value);
42
42
  this.childNodes.forEach((opt) => {
43
- var _a;
44
- if (String((_a = opt.input.props.attrObj) === null || _a === void 0 ? void 0 : _a.value) === String(value)) {
45
- opt.input.ctrl.setAttrObj({
43
+ if (String(opt.input.attr.get('value')) === String(value)) {
44
+ opt.input.attr.setObj({
46
45
  checked: true
47
46
  });
48
47
  }
49
48
  else {
50
- opt.input.ctrl.removeAttribute('checked');
49
+ opt.input.attr.remove('checked');
51
50
  }
52
51
  });
53
52
  }
@@ -10,5 +10,4 @@ export declare class RadioOption extends TypeSpan implements IRadioOption {
10
10
  textNode: TextNode;
11
11
  constructor(params?: IRadioOptionConfig);
12
12
  setup(config?: IRadioOptionConfig): void;
13
- initEvents(): void;
14
13
  }
@@ -1,17 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RadioOption = void 0;
4
- const rxjs_1 = require("rxjs");
5
4
  const framework_1 = require("@type-dom/framework");
6
5
  class RadioOption extends framework_1.TypeSpan {
7
6
  constructor(params = {}) {
8
7
  super();
9
8
  this.className = 'RadioOption';
10
- this.ctrl.addStyleObj({
9
+ this.style.addObj({
11
10
  padding: '0 5px'
12
11
  });
13
12
  this.input = new framework_1.Input({ parent: this });
14
- this.input.ctrl.addAttrObj({
13
+ this.input.attr.addObj({
15
14
  type: 'radio'
16
15
  // name: optionSetting.name,
17
16
  // label: opt.label,
@@ -20,26 +19,26 @@ class RadioOption extends framework_1.TypeSpan {
20
19
  });
21
20
  this.textNode = new framework_1.TextNode('');
22
21
  this.childNodes = [this.input, this.textNode];
23
- this.props = this.setParams(params);
22
+ this.props = this.useParams(params);
24
23
  }
25
24
  setup(config) {
26
25
  if (config === null || config === void 0 ? void 0 : config.name) {
27
- this.input.ctrl.addAttrName(config.name);
26
+ this.input.attr.addName(config.name);
28
27
  }
29
28
  if (config === null || config === void 0 ? void 0 : config.value) {
30
- this.input.ctrl.addAttrObj({ value: config.value });
29
+ this.input.attr.addObj({ value: config.value });
31
30
  }
32
31
  if (config === null || config === void 0 ? void 0 : config.checked) {
33
- this.input.ctrl.addAttrObj({ checked: config.checked || false });
32
+ this.input.attr.addObj({ checked: config.checked || false });
34
33
  }
35
- }
36
- initEvents() {
37
- this.subscriptions.push((0, rxjs_1.fromEvent)(this.input.dom, 'click').subscribe(() => {
38
- console.log('this.input.dom click . ');
39
- console.log('this.input.dom.value is ', this.input.dom.value);
40
- if (this.parent)
41
- this.parent.value = this.input.dom.value;
42
- }));
34
+ this.input.addEvents({
35
+ click: () => {
36
+ console.log('this.input.dom click . ');
37
+ console.log('this.input.dom.value is ', this.input.dom.value);
38
+ if (this.parent)
39
+ this.parent.value = this.input.dom.value;
40
+ }
41
+ });
43
42
  }
44
43
  }
45
44
  exports.RadioOption = RadioOption;
@@ -6,7 +6,7 @@ export declare class Select extends TypeSelect implements ISelect {
6
6
  value: string | number | boolean;
7
7
  constructor();
8
8
  setOptionSetting(optionSetting: IOptionSetting): void;
9
- initEvents(): void;
9
+ setup(): void;
10
10
  jsSelectIsExitItem(objSelect: HTMLSelectElement, objItemValue: string): boolean;
11
11
  jsAddItemToSelect(objSelect: HTMLSelectElement, objItemText: string | undefined, objItemValue: string): void;
12
12
  jsRemoveItemFromSelect(objSelect: HTMLSelectElement, objItemValue: string): void;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Select = void 0;
4
- const rxjs_1 = require("rxjs");
5
4
  const framework_1 = require("@type-dom/framework");
6
5
  class Select extends framework_1.TypeSelect {
7
6
  constructor() {
@@ -14,7 +13,7 @@ class Select extends framework_1.TypeSelect {
14
13
  this.clearChildren();
15
14
  optionSetting.options.forEach((opt) => {
16
15
  const optionObj = new framework_1.Option({ parent: this });
17
- optionObj.ctrl.setAttrObj({
16
+ optionObj.attr.setObj({
18
17
  // label: opt.label,
19
18
  value: opt.value,
20
19
  selected: opt.selected || false
@@ -27,22 +26,24 @@ class Select extends framework_1.TypeSelect {
27
26
  this.addChild(optionObj);
28
27
  });
29
28
  }
30
- initEvents() {
31
- this.subscriptions.push((0, rxjs_1.fromEvent)(this.dom, 'click').subscribe(() => {
32
- console.log('this.dom click . ');
33
- console.log('this.dom.value is ', this.dom.value);
34
- this.value = this.dom.value; // 对应的opt.label.
35
- this.childNodes.forEach((opt) => {
36
- if (opt.dom.value === this.dom.value) {
37
- opt.ctrl.setAttrObj({
38
- selected: true
39
- });
40
- }
41
- else {
42
- opt.ctrl.removeAttribute('selected');
43
- }
44
- });
45
- }));
29
+ setup() {
30
+ this.addEvents({
31
+ click: () => {
32
+ console.log('this.dom click . ');
33
+ console.log('this.dom.value is ', this.dom.value);
34
+ this.value = this.dom.value; // 对应的opt.label.
35
+ this.childNodes.forEach((opt) => {
36
+ if (opt.dom.value === this.dom.value) {
37
+ opt.attr.setObj({
38
+ selected: true
39
+ });
40
+ }
41
+ else {
42
+ opt.attr.remove('selected');
43
+ }
44
+ });
45
+ }
46
+ });
46
47
  }
47
48
  // 1.判断select选项中 是否存在Value="paraValue"的Item
48
49
  jsSelectIsExitItem(objSelect, objItemValue) {
@@ -11,10 +11,10 @@ class TdCheckbox extends ui_abstract_1.UI {
11
11
  const tag = !hasOwnLabel ? 'span' : 'label';
12
12
  super(params, tag); // label | span
13
13
  this.className = 'TdCheckbox';
14
- this.ctrl.addAttrObj({
14
+ this.attr.addObj({
15
15
  name: 'td-checkbox'
16
16
  });
17
- this.ctrl.addStyleObj(td_checkbox_style_1.$checkboxStyle);
17
+ this.style.addObj(td_checkbox_style_1.$checkboxStyle);
18
18
  const inputSpan = new framework_1.Span({
19
19
  attrObj: {
20
20
  name: 'td-checkbox-input-span'
@@ -71,7 +71,7 @@ class TdCheckbox extends ui_abstract_1.UI {
71
71
  }
72
72
  this.addChild(labelSpan);
73
73
  }
74
- this.props = this.setParams(params);
74
+ this.props = this.useParams(params);
75
75
  }
76
76
  handleChange(ev) {
77
77
  if (this.isLimitExceeded)
@@ -10,10 +10,10 @@ class TdCheckboxButton extends ui_abstract_1.UI {
10
10
  constructor(params = {}) {
11
11
  super(params, 'label'); // label | span
12
12
  this.className = 'TdCheckboxButton';
13
- this.ctrl.addAttrObj({
13
+ this.attr.addObj({
14
14
  name: 'td-checkbox-button'
15
15
  });
16
- this.ctrl.addStyleObj(td_checkbox_button_style_1.$checkboxButtonStyle);
16
+ this.style.addObj(td_checkbox_button_style_1.$checkboxButtonStyle);
17
17
  const { hasOwnLabel } = (0, use_checkbox_1.useCheckbox)(params);
18
18
  const original = new framework_1.Input({
19
19
  name: 'original',
@@ -53,7 +53,7 @@ class TdCheckboxButton extends ui_abstract_1.UI {
53
53
  }
54
54
  this.addChild(labelSpan);
55
55
  }
56
- this.props = this.setParams(params);
56
+ this.props = this.useParams(params);
57
57
  }
58
58
  handleChange(ev) {
59
59
  if (this.isLimitExceeded)
@@ -7,14 +7,14 @@ class TdCheckboxGroup extends ui_abstract_1.UI {
7
7
  constructor(params = {}) {
8
8
  super(params);
9
9
  this.className = 'TdCheckboxGroup';
10
- this.ctrl.addAttrObj({
10
+ this.attr.addObj({
11
11
  role: 'group',
12
12
  // ariaLabel: !config.isLabeledByFormItem ? config?.ariaLabel || 'checkbox-group' : undefined,
13
13
  // aria-labelledby="isLabeledByFormItem ? formItem?.labelId : undefined"
14
14
  });
15
- this.ctrl.addStyleObj(td_checkbox_style_1.$checkboxGroupStyle);
15
+ this.style.addObj(td_checkbox_style_1.$checkboxGroupStyle);
16
16
  this.addChild(this.getSlotNode());
17
- this.props = this.setParams(params);
17
+ this.props = this.useParams(params);
18
18
  }
19
19
  }
20
20
  exports.TdCheckboxGroup = TdCheckboxGroup;
@@ -16,13 +16,15 @@ class TdForm extends ui_abstract_1.UI {
16
16
  constructor(params = {}) {
17
17
  super(params, 'form');
18
18
  this.className = 'TdForm';
19
- this.ctrl.addAttrName('td-form');
19
+ this.attr.addName('td-form');
20
20
  this.provide(td_form_const_1.formContextKey, params); // 要在form-item 中 inject
21
- this.addChild(this.getSlotNode());
21
+ if (params.slot) {
22
+ this.slotChild(params.slot);
23
+ }
22
24
  if (params === null || params === void 0 ? void 0 : params.model) {
23
25
  this.model = params.model;
24
26
  }
25
- this.props = this.setParams(params);
27
+ this.props = this.useParams(params);
26
28
  }
27
29
  }
28
30
  exports.TdForm = TdForm;
@@ -13,8 +13,8 @@ class TdFormItem extends ui_abstract_1.UI {
13
13
  constructor(params = {}) {
14
14
  super(params);
15
15
  this.className = 'TdFormItem';
16
- this.ctrl.addAttrName('td-form-item');
17
- this.ctrl.addStyleObj({
16
+ this.attr.addName('td-form-item');
17
+ this.style.addObj({
18
18
  display: 'flex',
19
19
  // --font-size: 14px,
20
20
  fontSize: var_1.$fontSizes[(params === null || params === void 0 ? void 0 : params.size) || 'base'],
@@ -64,7 +64,7 @@ class TdFormItem extends ui_abstract_1.UI {
64
64
  // this.content.addChild(this.error);
65
65
  this.addChild(this.content);
66
66
  this.content.addChild(this.getSlotNode());
67
- this.props = this.setParams(params);
67
+ this.props = this.useParams(params);
68
68
  }
69
69
  created() {
70
70
  // inject 要在 created 之中,否则无法确定 parent .
@@ -75,7 +75,7 @@ class TdFormItem extends ui_abstract_1.UI {
75
75
  // 下面的方法要调用到 this.parent 才能获取到。需要 form的setConfig 方法调用后
76
76
  }
77
77
  setup() {
78
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
78
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
79
79
  const props = this.props;
80
80
  if (props === null || props === void 0 ? void 0 : props.label) {
81
81
  this.label = new framework_1.Label({
@@ -102,7 +102,7 @@ class TdFormItem extends ui_abstract_1.UI {
102
102
  else {
103
103
  const labelWidth = (0, utils_1.addUnit)(props.labelWidth || ((_b = this.parent) === null || _b === void 0 ? void 0 : _b.props.labelWidth) || '120px');
104
104
  if (labelWidth) {
105
- this.label.ctrl.addStyleObj({
105
+ this.label.style.addObj({
106
106
  width: labelWidth,
107
107
  });
108
108
  }
@@ -117,17 +117,17 @@ class TdFormItem extends ui_abstract_1.UI {
117
117
  }));
118
118
  }
119
119
  (_d = this.labelWrap) === null || _d === void 0 ? void 0 : _d.addChild(this.label);
120
- this.ctrl.addStyleObj({
120
+ this.style.addObj({
121
121
  display: ((_e = this.parent) === null || _e === void 0 ? void 0 : _e.props.inline) ? 'inline-flex' : 'flex',
122
122
  verticalAlign: 'middle',
123
123
  marginRight: ((_f = this.parent) === null || _f === void 0 ? void 0 : _f.props.inline)
124
124
  ? '32px'
125
- : (_g = this.props.styleObj) === null || _g === void 0 ? void 0 : _g.marginRight,
125
+ : this.style.get('marginRight'),
126
126
  // justifyContent: justifyContent,
127
127
  });
128
- this.setLabelPosition((_h = this.parent) === null || _h === void 0 ? void 0 : _h.props.labelPosition);
129
- this.setSize((_j = this.parent) === null || _j === void 0 ? void 0 : _j.props.size);
130
- this.setLabelWidth((_k = this.parent) === null || _k === void 0 ? void 0 : _k.props.labelWidth);
128
+ this.setLabelPosition((_g = this.parent) === null || _g === void 0 ? void 0 : _g.props.labelPosition);
129
+ this.setSize((_h = this.parent) === null || _h === void 0 ? void 0 : _h.props.size);
130
+ this.setLabelWidth((_j = this.parent) === null || _j === void 0 ? void 0 : _j.props.labelWidth);
131
131
  }
132
132
  }
133
133
  // 待实现:设置子元素的labelWidth
@@ -136,31 +136,31 @@ class TdFormItem extends ui_abstract_1.UI {
136
136
  if (width === undefined) {
137
137
  return;
138
138
  }
139
- (_a = this.label) === null || _a === void 0 ? void 0 : _a.ctrl.addStyleObj({
139
+ (_a = this.label) === null || _a === void 0 ? void 0 : _a.style.addObj({
140
140
  width: (0, utils_1.addUnit)(width),
141
141
  });
142
142
  }
143
143
  setLabelPosition(position) {
144
144
  var _a;
145
145
  // todo top 怎么处理 ?
146
- (_a = this.label) === null || _a === void 0 ? void 0 : _a.ctrl.addStyleObj({
146
+ (_a = this.label) === null || _a === void 0 ? void 0 : _a.style.addObj({
147
147
  justifyContent: position === 'left' ? 'flex-start' : 'flex-end',
148
148
  });
149
149
  }
150
150
  setSize(size = 'default') {
151
151
  var _a, _b;
152
- this.ctrl.addStyleObj({
152
+ this.style.addObj({
153
153
  fontSize: var_1.$fontSizes[size],
154
154
  marginBottom: td_form_item_style_1.$formItemMarginBottom[size],
155
155
  });
156
- (_a = this.label) === null || _a === void 0 ? void 0 : _a.ctrl.addStyleObj({
156
+ (_a = this.label) === null || _a === void 0 ? void 0 : _a.style.addObj({
157
157
  height: td_form_item_style_1.$formItemLineHeight[size],
158
158
  lineHeight: td_form_item_style_1.$formItemLineHeight[size],
159
159
  });
160
- this.content.ctrl.addStyleObj({
160
+ this.content.style.addObj({
161
161
  lineHeight: td_form_item_style_1.$formItemLineHeight[size],
162
162
  });
163
- (_b = this.error) === null || _b === void 0 ? void 0 : _b.ctrl.addStyleObj({
163
+ (_b = this.error) === null || _b === void 0 ? void 0 : _b.style.addObj({
164
164
  paddingTop: td_form_item_style_1.$formItemErrorPaddingTop[size],
165
165
  });
166
166
  }
@@ -8,27 +8,27 @@ class TdInputField extends field_input_abstract_1.FieldInput {
8
8
  super(params.labelTitle, params.placeholder);
9
9
  console.log('InputItem constructor . ');
10
10
  this.className = 'TdInputField';
11
- this.ctrl.addStyleObj({
11
+ this.style.addObj({
12
12
  padding: '2px 10px 2px 0'
13
13
  });
14
- this.ctrl.addAttrName('input-item');
15
- this.label.ctrl.addStyleObj({
14
+ this.attr.addName('input-item');
15
+ this.label.style.addObj({
16
16
  fontSize: '16px',
17
17
  width: params.labelWidth || '150px'
18
18
  });
19
- this.content.ctrl.addAttrObj({
19
+ this.content.attr.addObj({
20
20
  type: (params === null || params === void 0 ? void 0 : params.type) || 'text'
21
21
  });
22
22
  // todo 有后缀时才需要这样
23
- // this.content.ctrl.addStyleObj({
23
+ // this.content.style.addObj({
24
24
  // borderRadius: '4px 0 0 4px',
25
25
  // });
26
26
  if (params.readonly) {
27
- this.content.ctrl.addAttrObj({
27
+ this.content.attr.addObj({
28
28
  disabled: true
29
29
  });
30
30
  }
31
- // this.button.ctrl.setStyleObj({
31
+ // this.button.style.setObj({
32
32
  // display: 'inline-block',
33
33
  // padding: '4px 3px',
34
34
  // fontSize: '14px',
@@ -44,7 +44,7 @@ class TdInputField extends field_input_abstract_1.FieldInput {
44
44
  // OfdEditor.selectedControl?.resetLabelText(this.content.dom.value);
45
45
  // return;
46
46
  // }
47
- // if (this.props.styleObj.display === 'none') this.setStyle('display', 'block');
47
+ // if (this.style.get('display') === 'none') this.setStyle('display', 'block');
48
48
  // if (OfdEditor.selectedControl?.formItem.labelText?.text) {
49
49
  // this.resetInputValue(OfdEditor.selectedControl.formItem.labelText.text);
50
50
  // } else {
@@ -14,7 +14,6 @@ export declare class TdInput extends UI implements ITdInput {
14
14
  constructor(params?: ITdInputConfig);
15
15
  get value(): string;
16
16
  setup(): void;
17
- initEvents(): void;
18
17
  setModelValue(value: IJsonDataProp): void;
19
18
  setHovering(hovering: boolean): void;
20
19
  setFocus(isFocused: boolean): void;
@@ -13,11 +13,11 @@ class TdInput extends ui_abstract_1.UI {
13
13
  super(params);
14
14
  console.log('TdInput constructor . ');
15
15
  this.className = 'TdInput';
16
- this.ctrl.addAttrName('td-input');
17
- this.ctrl.addAttrObj({
16
+ this.attr.addName('td-input');
17
+ this.attr.addObj({
18
18
  tabIndex: 0
19
19
  });
20
- this.ctrl.addStyleObj({
20
+ this.style.addObj({
21
21
  position: 'relative',
22
22
  display: 'inline-flex',
23
23
  width: '100%',
@@ -33,7 +33,7 @@ class TdInput extends ui_abstract_1.UI {
33
33
  if (params === null || params === void 0 ? void 0 : params.modelValue) {
34
34
  this.modelValue = params.modelValue;
35
35
  }
36
- this.props = this.setParams(params);
36
+ this.props = this.useParams(params);
37
37
  }
38
38
  get value() {
39
39
  return this.panel.inner.value;
@@ -41,7 +41,7 @@ class TdInput extends ui_abstract_1.UI {
41
41
  setup() {
42
42
  const props = this.props;
43
43
  if (props === null || props === void 0 ? void 0 : props.width) {
44
- this.ctrl.addWidth(props.width);
44
+ this.style.addWidth(props.width);
45
45
  }
46
46
  // todo
47
47
  if ((props === null || props === void 0 ? void 0 : props.type) === 'textarea') {
@@ -60,8 +60,6 @@ class TdInput extends ui_abstract_1.UI {
60
60
  if (!(props === null || props === void 0 ? void 0 : props.formatter) && (props === null || props === void 0 ? void 0 : props.parser)) {
61
61
  throw new Error('If you set the parser, you also need to set the formatter');
62
62
  }
63
- }
64
- initEvents() {
65
63
  if (this.props.disabled) {
66
64
  return;
67
65
  }
@@ -172,14 +170,14 @@ class TdInput extends ui_abstract_1.UI {
172
170
  this.hovering = hovering;
173
171
  if (hovering) {
174
172
  if (!this.isFocused) {
175
- (_a = this.panel) === null || _a === void 0 ? void 0 : _a.ctrl.setStyleObj({
173
+ (_a = this.panel) === null || _a === void 0 ? void 0 : _a.style.setObj({
176
174
  boxShadow: '0 0 0 1px ' + td_input_style_1.$input.hoverBorderColor + ' inset'
177
175
  });
178
176
  }
179
177
  }
180
178
  else {
181
179
  if (!this.isFocused) {
182
- (_b = this.panel) === null || _b === void 0 ? void 0 : _b.ctrl.setStyleObj({
180
+ (_b = this.panel) === null || _b === void 0 ? void 0 : _b.style.setObj({
183
181
  boxShadow: '0 0 0 1px ' + td_input_style_1.$input.borderColor + ' inset'
184
182
  });
185
183
  }
@@ -189,12 +187,12 @@ class TdInput extends ui_abstract_1.UI {
189
187
  var _a, _b;
190
188
  this.isFocused = isFocused;
191
189
  if (isFocused) {
192
- (_a = this.panel) === null || _a === void 0 ? void 0 : _a.ctrl.setStyleObj({
190
+ (_a = this.panel) === null || _a === void 0 ? void 0 : _a.style.setObj({
193
191
  boxShadow: '0 0 0 1px ' + td_input_style_1.$input.focusBorderColor + ' inset'
194
192
  });
195
193
  }
196
194
  else {
197
- (_b = this.panel) === null || _b === void 0 ? void 0 : _b.ctrl.setStyleObj({
195
+ (_b = this.panel) === null || _b === void 0 ? void 0 : _b.style.setObj({
198
196
  boxShadow: '0 0 0 1px ' + td_input_style_1.$input.borderColor + ' inset'
199
197
  });
200
198
  }
@@ -9,7 +9,7 @@ class TdInputPrefix extends framework_1.TypeSpan {
9
9
  super();
10
10
  this.parent = parent;
11
11
  this.className = 'TdInputPrefix';
12
- this.ctrl.addStyleObj({
12
+ this.style.addObj({
13
13
  display: (config === null || config === void 0 ? void 0 : config.prefixIcon) ? 'inline-flex' : 'none',
14
14
  whiteSpace: 'nowrap',
15
15
  flexShrink: 0,
@@ -10,7 +10,7 @@ class TdInputSuffix extends framework_1.TypeSpan {
10
10
  super();
11
11
  this.parent = parent;
12
12
  this.className = 'TdInputSuffix';
13
- this.ctrl.addStyleObj({
13
+ this.style.addObj({
14
14
  display: this.parent.suffixVisible ? 'inline-flex' : 'none',
15
15
  whiteSpace: 'nowrap',
16
16
  flexShrink: 0,
@@ -80,12 +80,12 @@ class TdInputSuffix extends framework_1.TypeSpan {
80
80
  this.parent.passwordVisible = !this.parent.passwordVisible;
81
81
  (_a = this.passwordIcon) === null || _a === void 0 ? void 0 : _a.replaceSvg(this.parent.passwordVisible ? new svgs_1.ElViewSvg() : new svgs_1.ElHideSvg());
82
82
  if (this.parent.passwordVisible) {
83
- this.parent.inner.ctrl.setAttrObj({
83
+ this.parent.inner.attr.setObj({
84
84
  type: 'text'
85
85
  });
86
86
  }
87
87
  else {
88
- this.parent.inner.ctrl.setAttrObj({
88
+ this.parent.inner.attr.setObj({
89
89
  type: 'password'
90
90
  });
91
91
  }