@ticatec/uniface-element 0.2.3 → 0.3.0

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 (178) hide show
  1. package/dist/accordion/README.md +169 -0
  2. package/dist/accordion/README_CN.md +176 -0
  3. package/dist/action-bar/README.md +275 -0
  4. package/dist/action-bar/README_CN.md +285 -0
  5. package/dist/app-layout/README.md +374 -0
  6. package/dist/app-layout/README_CN.md +381 -0
  7. package/dist/app-top-bar/README.md +357 -0
  8. package/dist/app-top-bar/README_CN.md +365 -0
  9. package/dist/attachment-files/AttachmentFilesField.svelte +67 -1
  10. package/dist/attachment-files/AttachmentFilesField.svelte.d.ts +8 -1
  11. package/dist/base-calendar/CalendarBase.svelte +0 -3
  12. package/dist/box/README.md +385 -0
  13. package/dist/box/README_CN.md +393 -0
  14. package/dist/breadcrumbs/README.md +442 -0
  15. package/dist/breadcrumbs/README_CN.md +442 -0
  16. package/dist/button/Button.svelte +27 -7
  17. package/dist/button/Button.svelte.d.ts +3 -1
  18. package/dist/button/IconButton.svelte +26 -6
  19. package/dist/button/IconButton.svelte.d.ts +3 -1
  20. package/dist/button/IconButton_README.md +513 -0
  21. package/dist/button/IconButton_README_CN.md +513 -0
  22. package/dist/button/README.md +428 -0
  23. package/dist/button/README_CN.md +428 -0
  24. package/dist/button/TextButton.svelte +26 -6
  25. package/dist/button/TextButton.svelte.d.ts +3 -1
  26. package/dist/button/TextButton_README.md +571 -0
  27. package/dist/button/TextButton_README_CN.md +571 -0
  28. package/dist/card/README.md +666 -0
  29. package/dist/card/README_CN.md +666 -0
  30. package/dist/cascade-options-select/CascadeOptionSelect.svelte +43 -7
  31. package/dist/cascade-options-select/CascadeOptionSelect.svelte.d.ts +3 -4
  32. package/dist/cascade-options-select/README.md +663 -2
  33. package/dist/cascade-options-select/README_CN.md +664 -0
  34. package/dist/checkbox/CheckBox.svelte +20 -6
  35. package/dist/checkbox/CheckBox.svelte.d.ts +4 -2
  36. package/dist/checkbox/README.md +562 -0
  37. package/dist/checkbox/README_CN.md +727 -0
  38. package/dist/common-editor/NumberInput.svelte +39 -26
  39. package/dist/common-editor/NumberInput.svelte.d.ts +5 -1
  40. package/dist/concise-data-table/ConciseListTable.svelte +133 -36
  41. package/dist/concise-data-table/ConciseListTable.svelte.d.ts +8 -1
  42. package/dist/concise-data-table/DataCell.svelte +5 -6
  43. package/dist/concise-data-table/DataRow.svelte +22 -2
  44. package/dist/concise-data-table/DataRow.svelte.d.ts +1 -0
  45. package/dist/concise-data-table/README.md +606 -0
  46. package/dist/concise-data-table/README_CN.md +611 -0
  47. package/dist/context-menu/ContextMenu.svelte +138 -21
  48. package/dist/context-menu/ContextMenu.svelte.d.ts +5 -0
  49. package/dist/context-menu/ContextMenuItem.d.ts +20 -4
  50. package/dist/context-menu/README.md +551 -0
  51. package/dist/context-menu/README_CN.md +551 -0
  52. package/dist/criteria-field/CriteriaField.svelte +3 -5
  53. package/dist/criteria-field/README.md +532 -0
  54. package/dist/criteria-field/README_CN.md +532 -0
  55. package/dist/data-table/README.md +712 -0
  56. package/dist/data-table/README_CN.md +712 -0
  57. package/dist/date-picker/DatePicker.svelte +44 -7
  58. package/dist/date-picker/DatePicker.svelte.d.ts +3 -4
  59. package/dist/date-picker/DateTimePicker.svelte +32 -8
  60. package/dist/date-picker/DateTimePicker.svelte.d.ts +3 -4
  61. package/dist/date-picker/README.md +326 -0
  62. package/dist/date-picker/README_CN.md +316 -0
  63. package/dist/date-picker/ScrollBar.svelte +18 -8
  64. package/dist/date-picker/ScrollBar.svelte.d.ts +1 -1
  65. package/dist/date-picker/TimePanel.svelte +5 -5
  66. package/dist/date-picker/TimePanel.svelte.d.ts +1 -1
  67. package/dist/date-range/README.md +374 -0
  68. package/dist/date-range/README_CN.md +374 -0
  69. package/dist/dialog/DialogBoard.svelte +1 -1
  70. package/dist/dialog/README.md +596 -0
  71. package/dist/dialog/README_CN.md +596 -0
  72. package/dist/drawer/README.md +679 -1
  73. package/dist/drawer/README_CN.md +679 -0
  74. package/dist/group-box/group-check-box/GroupCheckBox.svelte +62 -5
  75. package/dist/group-box/group-check-box/GroupCheckBox.svelte.d.ts +7 -2
  76. package/dist/group-box/group-check-box/README.md +749 -0
  77. package/dist/group-box/group-check-box/README_CN.md +750 -0
  78. package/dist/group-box/group-radio-box/GroupRadioBox.svelte +69 -4
  79. package/dist/group-box/group-radio-box/GroupRadioBox.svelte.d.ts +8 -2
  80. package/dist/group-box/group-radio-box/README.md +920 -0
  81. package/dist/group-box/group-radio-box/README_CN.md +920 -0
  82. package/dist/image-files/README.md +1346 -0
  83. package/dist/image-files/README_CN.md +1346 -0
  84. package/dist/input-options-select/InputOptionsSelect.svelte +161 -65
  85. package/dist/input-options-select/InputOptionsSelect.svelte.d.ts +4 -1
  86. package/dist/lib/forwardAllEvents.d.ts +3 -0
  87. package/dist/lib/forwardAllEvents.js +24 -0
  88. package/dist/list-box/README.md +579 -0
  89. package/dist/list-box/README_CN.md +682 -0
  90. package/dist/lookup-editor/LookupEditor.svelte +15 -3
  91. package/dist/lookup-editor/LookupEditor.svelte.d.ts +3 -4
  92. package/dist/lookup-editor/README.md +684 -0
  93. package/dist/lookup-editor/README_CN.md +684 -0
  94. package/dist/memo-editor/MemoEditor.svelte +77 -27
  95. package/dist/memo-editor/MemoEditor.svelte.d.ts +6 -3
  96. package/dist/memo-editor/README.md +819 -0
  97. package/dist/memo-editor/README_CN.md +819 -0
  98. package/dist/message-box/README.md +398 -0
  99. package/dist/message-box/README_CN.md +398 -0
  100. package/dist/number-editor/NumberEditor.svelte +2 -2
  101. package/dist/number-editor/NumberEditor.svelte.d.ts +1 -1
  102. package/dist/number-editor/README.md +353 -22
  103. package/dist/number-editor/README_CN.md +357 -0
  104. package/dist/number-range/README.md +443 -0
  105. package/dist/number-range/README_CN.md +443 -0
  106. package/dist/options-multi-select/OptionsMultiSelect.svelte +87 -12
  107. package/dist/options-multi-select/OptionsMultiSelect.svelte.d.ts +3 -1
  108. package/dist/options-multi-select/README.md +480 -0
  109. package/dist/options-multi-select/README_CN.md +480 -0
  110. package/dist/options-select/OptionsSelect.svelte +36 -5
  111. package/dist/options-select/OptionsSelect.svelte.d.ts +3 -4
  112. package/dist/options-select/README.md +632 -0
  113. package/dist/options-select/README_CN.md +632 -0
  114. package/dist/page/README.md +605 -0
  115. package/dist/page/README_CN.md +605 -0
  116. package/dist/pagination/README.md +946 -0
  117. package/dist/pagination/README_CN.md +946 -0
  118. package/dist/pagination-panel/README.md +1075 -0
  119. package/dist/pagination-panel/README_CN.md +1075 -0
  120. package/dist/popup-hint/README.md +841 -0
  121. package/dist/popup-hint/README_CN.md +840 -0
  122. package/dist/progress-bar/README.md +242 -0
  123. package/dist/progress-bar/README_CN.md +242 -0
  124. package/dist/progress-step-bar/README.md +316 -0
  125. package/dist/progress-step-bar/README_CN.md +316 -0
  126. package/dist/prompts-text-editor/PromptsTextEditor.svelte +6 -3
  127. package/dist/prompts-text-editor/PromptsTextEditor.svelte.d.ts +3 -1
  128. package/dist/prompts-text-editor/README.md +329 -0
  129. package/dist/prompts-text-editor/README_CN.md +329 -0
  130. package/dist/property-editor/README.md +969 -0
  131. package/dist/property-editor/README_CN.md +969 -0
  132. package/dist/radio-button/README.md +372 -0
  133. package/dist/radio-button/README_CN.md +372 -0
  134. package/dist/radio-button/RadioButton.svelte +32 -3
  135. package/dist/radio-button/RadioButton.svelte.d.ts +12 -1
  136. package/dist/search-box/README.md +425 -0
  137. package/dist/search-box/README_CN.md +424 -0
  138. package/dist/search-box/SearchBox.svelte +22 -6
  139. package/dist/search-box/SearchBox.svelte.d.ts +4 -1
  140. package/dist/tabs/README.md +919 -0
  141. package/dist/tabs/README_CN.md +920 -0
  142. package/dist/tag/README.md +922 -0
  143. package/dist/tag/README_CN.md +922 -0
  144. package/dist/text-editor/PasswordEditor.svelte +17 -2
  145. package/dist/text-editor/PasswordEditor.svelte.d.ts +3 -3
  146. package/dist/text-editor/PasswordEditor_README.md +551 -0
  147. package/dist/text-editor/PasswordEditor_README_CN.md +551 -0
  148. package/dist/text-editor/README.md +466 -0
  149. package/dist/text-editor/README_CN.md +466 -0
  150. package/dist/text-editor/TextEditor.svelte +51 -19
  151. package/dist/text-editor/TextEditor.svelte.d.ts +0 -1
  152. package/dist/ticatec-uniface-web.css +1 -0
  153. package/dist/time-editor/README.md +498 -24
  154. package/dist/time-editor/README_CN.md +498 -0
  155. package/dist/time-editor/TimeEditor.svelte +7 -3
  156. package/dist/time-editor/TimeEditor.svelte.d.ts +3 -1
  157. package/dist/toast/README.md +667 -0
  158. package/dist/toast/README_CN.md +667 -0
  159. package/dist/transfer/README.md +795 -0
  160. package/dist/transfer/Transfer.svelte +6 -4
  161. package/dist/transfer/Transfer.svelte.d.ts +3 -1
  162. package/dist/tree-view/README.md +761 -0
  163. package/dist/tree-view/README_CN.md +761 -0
  164. package/dist/tree-view/TreeView.svelte +5 -3
  165. package/dist/tree-view/TreeView.svelte.d.ts +3 -1
  166. package/dist/unit-number-editor/README.md +546 -20
  167. package/dist/unit-number-editor/README_CN.md +525 -0
  168. package/dist/unit-number-editor/UnitNumberEditor.svelte +62 -8
  169. package/dist/unit-number-editor/UnitNumberEditor.svelte.d.ts +5 -1
  170. package/docs/form-field/cn/README_CN.md +364 -0
  171. package/docs/form-field/en/README.md +364 -0
  172. package/docs/form-panel/flex-form/cn/README_CN.md +586 -0
  173. package/docs/form-panel/flex-form/en/README.md +586 -0
  174. package/docs/form-panel/flex-row-form/cn/README_CN.md +787 -0
  175. package/docs/form-panel/flex-row-form/en/README.md +787 -0
  176. package/docs/form-panel/grid-form/en/README.md +744 -0
  177. package/package.json +1 -1
  178. package/dist/drawer/README-CN.md +0 -1
@@ -1,85 +1,135 @@
1
1
  <script lang="ts">
2
-
3
2
  import {DisplayMode} from "../common/DisplayMode";
4
3
  import prefixFilter from "../utils/prefixFilter";
5
4
  import {onMount} from "svelte";
6
5
  import Icon from "../icon";
6
+ import {forwardAllEvents} from "../lib/forwardAllEvents";
7
7
 
8
- const excludeAttrs = ['readonly', 'disabled', 'required', "rows", "form", "wrap"]
8
+ const excludeAttrs = ['readonly', 'disabled', 'required', "rows", "form", "wrap"];
9
9
 
10
10
  export let disabled: boolean = false;
11
11
  export let readonly: boolean = false;
12
12
  export let variant: '' | 'plain' | 'outlined' | 'filled' = '';
13
13
  export {className as class};
14
14
  export let style: string = '';
15
- export let value: string;
15
+ export let value: string = '';
16
16
  export let wrap: "hard" | "soft" = "hard";
17
17
  export let resize: 'none' | 'horizontal' | 'vertical' | 'both' = 'none';
18
18
  export let displayMode: DisplayMode = DisplayMode.Edit;
19
19
  export let input$rows: number = 3;
20
20
  export let showIndicator: boolean = false;
21
- export let maxLength: number = null as unknown as number;
21
+ export let maxLength: number | null = null;
22
22
 
23
23
  let input$;
24
24
  let className: string = '';
25
25
  let textValue: string;
26
26
  let len: number;
27
-
27
+ let editor: HTMLTextAreaElement;
28
+ let width: number = 0;
28
29
 
29
30
  const escapeHTML = (text: string) => {
30
31
  return text == null ? '' : text.replace(/</g, "&lt;").replace(/>/g, "&gt;");
31
- }
32
+ };
32
33
 
33
- $: textValue = displayMode == DisplayMode.View ? escapeHTML(value).replace(/\n/g, "<br/>").replace(/ /g, '&nbsp;') : value;
34
+ // 根据 displayMode 显示内容
35
+ $: textValue = displayMode === DisplayMode.View
36
+ ? escapeHTML(value).replace(/\n/g, "<br/>").replace(/ /g, '&nbsp;')
37
+ : value;
34
38
 
35
39
  $: input$ = prefixFilter($$props, "input$", excludeAttrs);
40
+ $: len = textValue?.length ?? 0;
36
41
 
37
- $: len = textValue == null ? 0 : textValue.length;
42
+ // 失焦/回车确认 change
43
+ let oldValue = value;
38
44
 
39
- let editor: any;
40
- let width: number = 0;
45
+ function handleInput(e: InputEvent) {
46
+ value = (e.target as HTMLTextAreaElement).value;
47
+ }
48
+
49
+ function handleChange(e: Event) {
50
+ if (oldValue !== value) {
51
+ oldValue = value;
52
+ }
53
+ }
54
+
55
+ // 自动计算宽度
41
56
  onMount(() => {
42
57
  if (editor) {
43
58
  const resizeObserver = new ResizeObserver(entries => {
44
59
  for (let entry of entries) {
45
60
  const style = getComputedStyle(editor);
46
- let paddingLeft = parseFloat(style.paddingLeft);
47
- let paddingRight = parseFloat(style.paddingRight);
48
- width = entry.contentRect.width + paddingRight + paddingLeft;
61
+ const paddingLeft = parseFloat(style.paddingLeft);
62
+ const paddingRight = parseFloat(style.paddingRight);
63
+ width = entry.contentRect.width + paddingLeft + paddingRight;
49
64
  }
50
65
  });
51
66
  resizeObserver.observe(editor);
52
- return () => resizeObserver.disconnect();
67
+ const forward = forwardAllEvents(editor, $$props, {
68
+ input: handleInput,
69
+ change: handleChange
70
+ });
71
+
72
+ return () => {
73
+ resizeObserver.disconnect();
74
+ forward.destroy?.();
75
+ }
53
76
  }
54
77
  });
55
78
 
56
- const clean = async () => {
57
- value='';
58
- }
59
-
79
+ const clean = () => {
80
+ value = '';
81
+ editor?.focus();
82
+ };
60
83
  </script>
84
+
61
85
  {#if displayMode === DisplayMode.View}
62
86
  <div class="uniface-display-field" style="width:100%; min-height: 60px; {style};">
63
- {@html textValue }
87
+ {@html textValue}
64
88
  </div>
65
89
  {:else if readonly}
66
- <textarea style="width:100%; {style}; resize: {resize}" class="uniface-memo-editor {variant} {className}" {readonly} rows={input$rows??3}
67
- {value} {disabled} {...input$}></textarea>
90
+ <textarea
91
+ style="width:100%; {style}; resize: {resize}"
92
+ class="uniface-memo-editor {variant} {className}"
93
+ {readonly}
94
+ rows={input$rows ?? 3}
95
+ {value}
96
+ {disabled}
97
+ {...input$}
98
+ ></textarea>
68
99
  {:else}
69
100
  <div class="uniface-memo-editor-wrapper" tabindex="-1" style="position: relative; {style}">
70
- <textarea bind:this={editor} style="width:100%; ; resize: {resize}" class="uniface-memo-editor {variant} {className}"
71
- rows={input$rows??3}
72
- {wrap} bind:value {disabled} {...input$} maxlength={maxLength}
73
- on:blur on:focus on:keydown on:keyup on:keypress on:change on:input></textarea>
101
+ <textarea
102
+ bind:this={editor}
103
+ style="width:100%; resize: {resize}"
104
+ class="uniface-memo-editor {variant} {className}"
105
+ rows={input$rows ?? 3}
106
+ {wrap}
107
+ bind:value
108
+ {disabled}
109
+ {...input$}
110
+ maxlength={maxLength}
111
+ on:blur
112
+ on:focus
113
+ on:keydown
114
+ on:keyup
115
+ on:keypress
116
+ on:input
117
+ on:change
118
+ on:compositionstart
119
+ on:compositionend
120
+ on:compositionupdate
121
+ ></textarea>
122
+
74
123
  {#if showIndicator && maxLength}
75
124
  <div class="uniface-memo-indicator" style="width: {width}px">
76
125
  <span>{len} / {maxLength}</span>
77
126
  </div>
78
127
  {/if}
79
- {#if !disabled && value && value.length > 0}
128
+
129
+ {#if !disabled && value?.length > 0}
80
130
  <div class="action-button-wrapper" style="position: absolute; top: 0; left: 0; width: {width}px;">
81
131
  <Icon name="icon_google_clear" class="uniface-editor-clean-icon" onClick={clean}/>
82
132
  </div>
83
133
  {/if}
84
134
  </div>
85
- {/if}
135
+ {/if}
@@ -19,21 +19,24 @@ declare const MemoEditor: $$__sveltets_2_IsomorphicComponent<{
19
19
  variant?: "" | "plain" | "outlined" | "filled" | undefined;
20
20
  class?: string | undefined;
21
21
  style?: string | undefined;
22
- value: string;
22
+ value?: string | undefined;
23
23
  wrap?: "hard" | "soft" | undefined;
24
24
  resize?: "none" | "horizontal" | "vertical" | "both" | undefined;
25
25
  displayMode?: DisplayMode | undefined;
26
26
  input$rows?: number | undefined;
27
27
  showIndicator?: boolean | undefined;
28
- maxLength?: number | undefined;
28
+ maxLength?: number | null | undefined;
29
29
  }, {
30
30
  blur: FocusEvent;
31
31
  focus: FocusEvent;
32
32
  keydown: KeyboardEvent;
33
33
  keyup: KeyboardEvent;
34
34
  keypress: KeyboardEvent;
35
- change: Event;
36
35
  input: Event;
36
+ change: Event;
37
+ compositionstart: CompositionEvent;
38
+ compositionend: CompositionEvent;
39
+ compositionupdate: CompositionEvent;
37
40
  } & {
38
41
  [evt: string]: CustomEvent<any>;
39
42
  }, {}, {