@plitzi/sdk-elements 0.37.1 → 0.37.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (261) hide show
  1. package/CHANGELOG.md +1306 -0
  2. package/dist/Component/ComponentProvider.d.ts +1 -1
  3. package/dist/Component/ComponentProvider.mjs +10 -5
  4. package/dist/Element/JsxManager.d.ts +1 -1
  5. package/dist/Element/JsxManager.mjs +1 -0
  6. package/dist/Element/LayoutBody.d.ts +1 -1
  7. package/dist/Element/PluginManager.d.ts +1 -1
  8. package/dist/Element/PluginRemote.d.ts +3 -1
  9. package/dist/Element/PluginRemote.mjs +9 -9
  10. package/dist/Element/ReplicaProvider.d.ts +1 -1
  11. package/dist/Element/helpers/elementConstants.mjs +28 -0
  12. package/dist/Element/helpers/elementUtils.mjs +1 -1
  13. package/dist/Element/helpers/loadComponent.d.ts +6 -1
  14. package/dist/Element/helpers/loadComponent.mjs +7 -7
  15. package/dist/Element/helpers/pluginSelector.d.ts +1 -1
  16. package/dist/Element/helpers/pluginSelector.mjs +1 -0
  17. package/dist/Element/hocs/withElement.d.ts +1 -1
  18. package/dist/Element/hooks/useElementDataSource.mjs +23 -16
  19. package/dist/Element/hooks/useElementInternal.mjs +60 -52
  20. package/dist/Element/hooks/useInternalClassName.mjs +19 -18
  21. package/dist/Element/hooks/useKeyTriggers.d.ts +18 -0
  22. package/dist/Element/hooks/useKeyTriggers.mjs +36 -0
  23. package/dist/Element/hooks/useRootElementInteractions.mjs +70 -55
  24. package/dist/Element/hooks/useRscData.mjs +20 -15
  25. package/dist/components/ElementAdvancedEditor.d.ts +1 -1
  26. package/dist/dataSource/GlobalSources.mjs +115 -79
  27. package/dist/dataSource/getSourcesByElementId.mjs +2 -2
  28. package/dist/elements/advanced/BlockHtml/BlockHtml.d.ts +2 -2
  29. package/dist/elements/advanced/BlockHtml/Settings.d.ts +1 -1
  30. package/dist/elements/advanced/BlockHtml/index.d.ts +1 -1
  31. package/dist/elements/advanced/BlockJsx/BlockJsx.d.ts +2 -2
  32. package/dist/elements/advanced/BlockJsx/BlockJsx.mjs +1 -1
  33. package/dist/elements/advanced/BlockJsx/Settings.d.ts +1 -1
  34. package/dist/elements/advanced/BlockJsx/index.d.ts +1 -1
  35. package/dist/elements/advanced/Custom/Custom.d.ts +2 -2
  36. package/dist/elements/advanced/Custom/Settings.d.ts +1 -1
  37. package/dist/elements/advanced/Custom/index.d.ts +1 -1
  38. package/dist/elements/advanced/NodeHtml/declaration.d.ts +1 -1
  39. package/dist/elements/advanced/NodeHtml/index.d.ts +2 -2
  40. package/dist/elements/advanced/PlitziSdk/Settings.d.ts +1 -1
  41. package/dist/elements/advanced/Reference/Reference.d.ts +2 -2
  42. package/dist/elements/advanced/Reference/Settings.d.ts +1 -1
  43. package/dist/elements/advanced/Reference/index.d.ts +1 -1
  44. package/dist/elements/basic/Button/Button.d.ts +11 -4
  45. package/dist/elements/basic/Button/Button.mjs +5 -5
  46. package/dist/elements/basic/Button/Settings.d.ts +2 -1
  47. package/dist/elements/basic/Button/Settings.mjs +14 -7
  48. package/dist/elements/basic/Button/declaration.d.ts +8 -3
  49. package/dist/elements/basic/Button/declaration.mjs +14 -6
  50. package/dist/elements/basic/Button/index.d.ts +9 -4
  51. package/dist/elements/basic/Dropdown/Dropdown.d.ts +2 -2
  52. package/dist/elements/basic/Dropdown/Dropdown.mjs +48 -39
  53. package/dist/elements/basic/Dropdown/DropdownPopup/DropdownPopup.d.ts +2 -2
  54. package/dist/elements/basic/Dropdown/DropdownPopup/Settings.d.ts +1 -1
  55. package/dist/elements/basic/Dropdown/DropdownPopup/declaration.d.ts +2 -1
  56. package/dist/elements/basic/Dropdown/DropdownPopup/declaration.mjs +2 -1
  57. package/dist/elements/basic/Dropdown/DropdownPopup/index.d.ts +3 -2
  58. package/dist/elements/basic/Dropdown/Settings.d.ts +1 -1
  59. package/dist/elements/basic/Dropdown/declaration.d.ts +3 -0
  60. package/dist/elements/basic/Dropdown/declaration.mjs +9 -3
  61. package/dist/elements/basic/Dropdown/index.d.ts +7 -3
  62. package/dist/elements/basic/Dropdown/useDropdown.d.ts +6 -1
  63. package/dist/elements/basic/Dropdown/useDropdown.mjs +58 -41
  64. package/dist/elements/basic/Dropdown/useDropdownTrigger.d.ts +26 -0
  65. package/dist/elements/basic/Dropdown/useDropdownTrigger.mjs +30 -0
  66. package/dist/elements/basic/Heading/Heading.d.ts +2 -2
  67. package/dist/elements/basic/Heading/Settings.d.ts +1 -1
  68. package/dist/elements/basic/Heading/declaration.d.ts +9 -6
  69. package/dist/elements/basic/Heading/declaration.mjs +17 -9
  70. package/dist/elements/basic/Heading/index.d.ts +10 -7
  71. package/dist/elements/basic/Link/Link.d.ts +2 -2
  72. package/dist/elements/basic/Link/Link.mjs +5 -2
  73. package/dist/elements/basic/Link/Settings.d.ts +2 -1
  74. package/dist/elements/basic/Link/Settings.mjs +31 -24
  75. package/dist/elements/basic/Link/declaration.d.ts +5 -1
  76. package/dist/elements/basic/Link/declaration.mjs +16 -3
  77. package/dist/elements/basic/Link/index.d.ts +6 -2
  78. package/dist/elements/basic/Markdown/Markdown.d.ts +2 -2
  79. package/dist/elements/basic/Markdown/Settings.d.ts +1 -1
  80. package/dist/elements/basic/Markdown/declaration.d.ts +1 -1
  81. package/dist/elements/basic/Markdown/declaration.mjs +1 -1
  82. package/dist/elements/basic/Markdown/index.d.ts +2 -2
  83. package/dist/elements/basic/Paragraph/Paragraph.d.ts +2 -2
  84. package/dist/elements/basic/Paragraph/Settings.d.ts +1 -1
  85. package/dist/elements/basic/Paragraph/index.d.ts +1 -1
  86. package/dist/elements/basic/RichText/RichText.d.ts +2 -2
  87. package/dist/elements/basic/RichText/Settings.d.ts +1 -1
  88. package/dist/elements/basic/RichText/declaration.d.ts +3 -0
  89. package/dist/elements/basic/RichText/declaration.mjs +8 -3
  90. package/dist/elements/basic/RichText/index.d.ts +4 -1
  91. package/dist/elements/basic/Text/Settings.d.ts +1 -1
  92. package/dist/elements/basic/Text/Text.d.ts +2 -2
  93. package/dist/elements/basic/Text/declaration.d.ts +1 -1
  94. package/dist/elements/basic/Text/declaration.mjs +1 -1
  95. package/dist/elements/basic/Text/index.d.ts +2 -2
  96. package/dist/elements/basic/ThemeToggle/ThemeToggle.d.ts +2 -2
  97. package/dist/elements/basic/ThemeToggle/ThemeToggle.mjs +58 -62
  98. package/dist/elements/basic/ThemeToggle/declaration.d.ts +15 -1
  99. package/dist/elements/basic/ThemeToggle/declaration.mjs +12 -4
  100. package/dist/elements/basic/ThemeToggle/index.d.ts +16 -2
  101. package/dist/elements/declarations/index.d.ts +530 -21
  102. package/dist/elements/declarations/index.mjs +24 -22
  103. package/dist/elements/form/Form/Form.d.ts +2 -2
  104. package/dist/elements/form/Form/Form.mjs +37 -57
  105. package/dist/elements/form/Form/Settings.d.ts +1 -1
  106. package/dist/elements/form/Form/declaration.d.ts +60 -0
  107. package/dist/elements/form/Form/declaration.mjs +59 -3
  108. package/dist/elements/form/Form/index.d.ts +62 -2
  109. package/dist/elements/form/FormControl/FormControl.d.ts +19 -7
  110. package/dist/elements/form/FormControl/FormControl.mjs +138 -138
  111. package/dist/elements/form/FormControl/Settings.d.ts +3 -1
  112. package/dist/elements/form/FormControl/Settings.mjs +73 -57
  113. package/dist/elements/form/FormControl/components/Label.d.ts +3 -1
  114. package/dist/elements/form/FormControl/components/Label.mjs +20 -18
  115. package/dist/elements/form/FormControl/components/visuallyHidden.d.ts +6 -0
  116. package/dist/elements/form/FormControl/components/visuallyHidden.mjs +14 -0
  117. package/dist/elements/form/FormControl/declaration.d.ts +17 -0
  118. package/dist/elements/form/FormControl/declaration.mjs +56 -30
  119. package/dist/elements/form/FormControl/hocs/withFieldValue.d.ts +1 -1
  120. package/dist/elements/form/FormControl/hocs/withFieldValue.mjs +68 -61
  121. package/dist/elements/form/FormControl/index.d.ts +19 -2
  122. package/dist/elements/form/FormControl/inputs/Checkbox.d.ts +6 -1
  123. package/dist/elements/form/FormControl/inputs/Checkbox.mjs +5 -3
  124. package/dist/elements/form/FormControl/inputs/Hidden.d.ts +1 -1
  125. package/dist/elements/form/FormControl/inputs/Input.d.ts +8 -1
  126. package/dist/elements/form/FormControl/inputs/Input.mjs +44 -38
  127. package/dist/elements/form/FormControl/inputs/Select.d.ts +6 -1
  128. package/dist/elements/form/FormControl/inputs/Select.mjs +12 -10
  129. package/dist/elements/form/FormControl/inputs/Textarea.d.ts +8 -1
  130. package/dist/elements/form/FormControl/inputs/Textarea.mjs +26 -21
  131. package/dist/elements/form/FormControl/inputs/useFocusWhenShown.d.ts +7 -0
  132. package/dist/elements/form/FormControl/inputs/useFocusWhenShown.mjs +9 -0
  133. package/dist/elements/index.d.ts +3 -1
  134. package/dist/elements/index.mjs +16 -14
  135. package/dist/elements/internal/LayoutContainer/LayoutContainer.d.ts +2 -2
  136. package/dist/elements/internal/LayoutContainer/Settings.d.ts +1 -1
  137. package/dist/elements/internal/LayoutContainer/declaration.d.ts +3 -0
  138. package/dist/elements/internal/LayoutContainer/declaration.mjs +15 -3
  139. package/dist/elements/internal/LayoutContainer/index.d.ts +4 -1
  140. package/dist/elements/internal/LayoutPicker/LayoutPicker.d.ts +1 -1
  141. package/dist/elements/internal/Loading/Loading.d.ts +2 -2
  142. package/dist/elements/internal/Loading/index.d.ts +1 -1
  143. package/dist/elements/internal/NotFound/NotFound.d.ts +2 -2
  144. package/dist/elements/internal/NotFound/index.d.ts +1 -1
  145. package/dist/elements/internal/Page/Page.d.ts +2 -2
  146. package/dist/elements/internal/Page/Page.mjs +34 -43
  147. package/dist/elements/internal/Page/Settings.d.ts +1 -1
  148. package/dist/elements/internal/Page/declaration.d.ts +13 -0
  149. package/dist/elements/internal/Page/declaration.mjs +11 -0
  150. package/dist/elements/internal/Page/index.d.ts +14 -1
  151. package/dist/elements/media/FontAwesome/FontAwesome.d.ts +9 -2
  152. package/dist/elements/media/FontAwesome/FontAwesome.mjs +12 -5
  153. package/dist/elements/media/FontAwesome/Settings.d.ts +2 -1
  154. package/dist/elements/media/FontAwesome/Settings.mjs +29 -22
  155. package/dist/elements/media/FontAwesome/declaration.d.ts +1 -0
  156. package/dist/elements/media/FontAwesome/index.d.ts +2 -1
  157. package/dist/elements/media/Image/Image.d.ts +14 -3
  158. package/dist/elements/media/Image/Image.mjs +25 -25
  159. package/dist/elements/media/Image/Settings.d.ts +3 -1
  160. package/dist/elements/media/Image/Settings.mjs +29 -15
  161. package/dist/elements/media/Image/declaration.d.ts +7 -1
  162. package/dist/elements/media/Image/declaration.mjs +16 -3
  163. package/dist/elements/media/Image/index.d.ts +8 -2
  164. package/dist/elements/media/Video/Settings.d.ts +1 -1
  165. package/dist/elements/media/Video/Video.d.ts +2 -2
  166. package/dist/elements/media/Video/index.d.ts +1 -1
  167. package/dist/elements/provider/ApiContainer/ApiContainer.d.ts +11 -2
  168. package/dist/elements/provider/ApiContainer/ApiContainer.mjs +164 -198
  169. package/dist/elements/provider/ApiContainer/Settings.d.ts +2 -1
  170. package/dist/elements/provider/ApiContainer/Settings.mjs +129 -122
  171. package/dist/elements/provider/ApiContainer/components/FiltersInput/FiltersInput.d.ts +1 -1
  172. package/dist/elements/provider/ApiContainer/declaration.d.ts +88 -0
  173. package/dist/elements/provider/ApiContainer/declaration.mjs +112 -4
  174. package/dist/elements/provider/ApiContainer/helpers/isEmptyAnswer.d.ts +16 -0
  175. package/dist/elements/provider/ApiContainer/helpers/isEmptyAnswer.mjs +4 -0
  176. package/dist/elements/provider/ApiContainer/helpers/providerOutcome.d.ts +25 -0
  177. package/dist/elements/provider/ApiContainer/helpers/providerOutcome.mjs +7 -0
  178. package/dist/elements/provider/ApiContainer/helpers/queryInput.d.ts +5 -0
  179. package/dist/elements/provider/ApiContainer/helpers/queryInput.mjs +12 -0
  180. package/dist/elements/provider/ApiContainer/hooks/useAutoRefresh.d.ts +21 -0
  181. package/dist/elements/provider/ApiContainer/hooks/useAutoRefresh.mjs +18 -0
  182. package/dist/elements/provider/ApiContainer/index.d.ts +89 -1
  183. package/dist/elements/provider/Channel/Channel.d.ts +26 -0
  184. package/dist/elements/provider/Channel/Channel.mjs +92 -0
  185. package/dist/elements/provider/Channel/Settings.d.ts +9 -0
  186. package/dist/elements/provider/Channel/Settings.mjs +38 -0
  187. package/dist/elements/provider/Channel/declaration.d.ts +138 -0
  188. package/dist/elements/provider/Channel/declaration.mjs +125 -0
  189. package/dist/elements/provider/Channel/index.d.ts +137 -0
  190. package/dist/elements/provider/Channel/index.mjs +6 -0
  191. package/dist/elements/settings.mjs +25 -23
  192. package/dist/elements/structure/Container/Container.d.ts +17 -3
  193. package/dist/elements/structure/Container/Container.mjs +18 -9
  194. package/dist/elements/structure/Container/Settings.d.ts +4 -2
  195. package/dist/elements/structure/Container/Settings.mjs +110 -69
  196. package/dist/elements/structure/Container/declaration.d.ts +12 -1
  197. package/dist/elements/structure/Container/declaration.mjs +35 -3
  198. package/dist/elements/structure/Container/index.d.ts +7 -2
  199. package/dist/elements/structure/Container/index.mjs +3 -3
  200. package/dist/elements/structure/DialogContainer/DialogContainer.d.ts +2 -2
  201. package/dist/elements/structure/DialogContainer/DialogContainer.mjs +126 -153
  202. package/dist/elements/structure/DialogContainer/Settings.d.ts +1 -1
  203. package/dist/elements/structure/DialogContainer/declaration.d.ts +82 -1
  204. package/dist/elements/structure/DialogContainer/declaration.mjs +62 -1
  205. package/dist/elements/structure/DialogContainer/index.d.ts +83 -2
  206. package/dist/elements/structure/List/List.d.ts +2 -2
  207. package/dist/elements/structure/List/ListItem/ListItem.d.ts +2 -2
  208. package/dist/elements/structure/List/ListItem/Settings.d.ts +1 -1
  209. package/dist/elements/structure/List/ListItem/index.d.ts +1 -1
  210. package/dist/elements/structure/List/Settings.d.ts +1 -1
  211. package/dist/elements/structure/List/declaration.d.ts +4 -0
  212. package/dist/elements/structure/List/declaration.mjs +7 -3
  213. package/dist/elements/structure/List/index.d.ts +6 -2
  214. package/dist/elements/structure/List/modes/ListBasic.d.ts +1 -1
  215. package/dist/elements/structure/List/modes/ListControlled/ListControlled.d.ts +1 -1
  216. package/dist/elements/structure/List/modes/ListControlled/ListControlledItem.d.ts +1 -1
  217. package/dist/elements/structure/ModalContainer/ModalContainer.d.ts +2 -2
  218. package/dist/elements/structure/ModalContainer/ModalContainer.mjs +92 -107
  219. package/dist/elements/structure/ModalContainer/Settings.d.ts +1 -1
  220. package/dist/elements/structure/ModalContainer/declaration.d.ts +48 -2
  221. package/dist/elements/structure/ModalContainer/declaration.mjs +40 -2
  222. package/dist/elements/structure/ModalContainer/index.d.ts +49 -3
  223. package/dist/elements/structure/ModalContainer/metadataFromText.d.ts +1 -0
  224. package/dist/elements/structure/ModalContainer/metadataFromText.mjs +10 -0
  225. package/dist/elements/structure/ModalContainer/useModalDialog.d.ts +20 -0
  226. package/dist/elements/structure/ModalContainer/useModalDialog.mjs +31 -0
  227. package/dist/elements/structure/Pagination/Pagination.d.ts +7 -2
  228. package/dist/elements/structure/Pagination/Pagination.mjs +49 -52
  229. package/dist/elements/structure/Pagination/Settings.d.ts +2 -1
  230. package/dist/elements/structure/Pagination/Settings.mjs +16 -9
  231. package/dist/elements/structure/Pagination/declaration.d.ts +16 -0
  232. package/dist/elements/structure/Pagination/declaration.mjs +14 -3
  233. package/dist/elements/structure/Pagination/index.d.ts +17 -1
  234. package/dist/elements/structure/TabContainer/Settings.d.ts +1 -1
  235. package/dist/elements/structure/TabContainer/TabContainer.d.ts +2 -2
  236. package/dist/elements/structure/TabContainer/TabContainer.mjs +19 -17
  237. package/dist/elements/structure/TabContainer/TabContainerBody/Settings.d.ts +1 -1
  238. package/dist/elements/structure/TabContainer/TabContainerBody/TabContainerBody.d.ts +2 -2
  239. package/dist/elements/structure/TabContainer/TabContainerBody/TabContainerBody.mjs +8 -6
  240. package/dist/elements/structure/TabContainer/TabContainerBody/declaration.d.ts +1 -0
  241. package/dist/elements/structure/TabContainer/TabContainerBody/declaration.mjs +1 -0
  242. package/dist/elements/structure/TabContainer/TabContainerBody/index.d.ts +2 -1
  243. package/dist/elements/structure/TabContainer/TabContainerContext.d.ts +2 -0
  244. package/dist/elements/structure/TabContainer/TabContainerHeader/Settings.d.ts +1 -1
  245. package/dist/elements/structure/TabContainer/TabContainerHeader/TabContainerHeader.d.ts +2 -2
  246. package/dist/elements/structure/TabContainer/TabContainerHeader/TabContainerHeader.mjs +18 -14
  247. package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.d.ts +1 -0
  248. package/dist/elements/structure/TabContainer/TabContainerHeader/declaration.mjs +1 -0
  249. package/dist/elements/structure/TabContainer/TabContainerHeader/index.d.ts +2 -1
  250. package/dist/elements/structure/TabContainer/TabContainerItem/Settings.d.ts +1 -1
  251. package/dist/elements/structure/TabContainer/TabContainerItem/TabContainerItem.d.ts +6 -2
  252. package/dist/elements/structure/TabContainer/TabContainerItem/TabContainerItem.mjs +48 -13
  253. package/dist/elements/structure/TabContainer/TabContainerItem/declaration.d.ts +1 -1
  254. package/dist/elements/structure/TabContainer/TabContainerItem/index.d.ts +1 -1
  255. package/dist/elements/structure/TabContainer/index.d.ts +6 -4
  256. package/dist/index.d.ts +570 -57
  257. package/dist/index.mjs +20 -17
  258. package/dist/realtime/useChannel.d.ts +35 -0
  259. package/dist/realtime/useChannel.mjs +57 -0
  260. package/package.json +75 -11
  261. package/dist/elements/media/FontAwesome/FontAwesome.stories-paused.d.ts +0 -1
@@ -8,14 +8,31 @@ export type FormControlAttributes = AuthorableAttributes<FormControlProps, 'valu
8
8
  };
9
9
  declare const declaration: {
10
10
  readonly type: "formControl";
11
+ readonly attributeValues: {
12
+ readonly subType: readonly string[];
13
+ };
14
+ readonly triggers: {
15
+ readonly onChange: {
16
+ readonly action: "onChange";
17
+ readonly title: "On Change";
18
+ readonly type: "trigger";
19
+ readonly params: {};
20
+ readonly preview: {
21
+ readonly value: "";
22
+ readonly name: "";
23
+ };
24
+ };
25
+ };
11
26
  readonly content: {
12
27
  readonly attributes: {
13
28
  readonly subType: "text";
14
29
  readonly name: "";
15
30
  readonly label: "Label";
31
+ readonly hideLabel: false;
16
32
  readonly placeholder: "";
17
33
  readonly defaultValue: "";
18
34
  readonly autoComplete: true;
35
+ readonly autoFocus: false;
19
36
  readonly disabled: false;
20
37
  readonly options: readonly [];
21
38
  readonly required: true;
@@ -1,6 +1,6 @@
1
- import { elementDeclaration as e } from "@plitzi/sdk-shared/authoring/declare";
1
+ import { elementDeclaration as e, valuesOf as t } from "@plitzi/sdk-shared/authoring/declare";
2
2
  //#region src/elements/form/FormControl/declaration.ts
3
- var t = {
3
+ var n = {
4
4
  width: "100%",
5
5
  display: "flex",
6
6
  "align-items": "center",
@@ -29,7 +29,7 @@ var t = {
29
29
  "line-height": "20px",
30
30
  outline: "none",
31
31
  position: "relative"
32
- }, n = {
32
+ }, r = {
33
33
  display: "flex",
34
34
  cursor: "pointer",
35
35
  "font-weight": "600",
@@ -37,23 +37,49 @@ var t = {
37
37
  "line-height": "18px",
38
38
  color: "#6b7280",
39
39
  "user-select": "none"
40
- }, r = {
41
- ...n,
42
- "margin-bottom": "4px"
43
40
  }, i = {
41
+ ...r,
42
+ "margin-bottom": "4px"
43
+ }, a = {
44
44
  display: "block",
45
45
  color: "red",
46
46
  "margin-top": "4px"
47
- }, a = e()({
47
+ }, o = e()({
48
48
  type: "formControl",
49
+ attributeValues: { subType: t()([
50
+ "text",
51
+ "number",
52
+ "email",
53
+ "password",
54
+ "date",
55
+ "time",
56
+ "checkbox",
57
+ "switch",
58
+ "select",
59
+ "textarea",
60
+ "hidden",
61
+ "color"
62
+ ]) },
63
+ triggers: { onChange: {
64
+ action: "onChange",
65
+ title: "On Change",
66
+ type: "trigger",
67
+ params: {},
68
+ preview: {
69
+ value: "",
70
+ name: ""
71
+ }
72
+ } },
49
73
  content: {
50
74
  attributes: {
51
75
  subType: "text",
52
76
  name: "",
53
77
  label: "Label",
78
+ hideLabel: !1,
54
79
  placeholder: "",
55
80
  defaultValue: "",
56
81
  autoComplete: !0,
82
+ autoFocus: !1,
57
83
  disabled: !1,
58
84
  options: [],
59
85
  required: !0,
@@ -110,8 +136,8 @@ var t = {
110
136
  style: {
111
137
  base: {},
112
138
  input: { default: {} },
113
- label: { default: r },
114
- error: { default: i }
139
+ label: { default: i },
140
+ error: { default: a }
115
141
  }
116
142
  },
117
143
  text: {
@@ -119,9 +145,9 @@ var t = {
119
145
  displayMode: "desktop",
120
146
  style: {
121
147
  base: { default: {} },
122
- input: { default: t },
123
- label: { default: r },
124
- error: { default: i }
148
+ input: { default: n },
149
+ label: { default: i },
150
+ error: { default: a }
125
151
  }
126
152
  },
127
153
  password: {
@@ -129,9 +155,9 @@ var t = {
129
155
  displayMode: "desktop",
130
156
  style: {
131
157
  base: { default: {} },
132
- input: { default: t },
133
- label: { default: r },
134
- error: { default: i }
158
+ input: { default: n },
159
+ label: { default: i },
160
+ error: { default: a }
135
161
  }
136
162
  },
137
163
  number: {
@@ -139,9 +165,9 @@ var t = {
139
165
  displayMode: "desktop",
140
166
  style: {
141
167
  base: { default: {} },
142
- input: { default: t },
143
- label: { default: r },
144
- error: { default: i }
168
+ input: { default: n },
169
+ label: { default: i },
170
+ error: { default: a }
145
171
  }
146
172
  },
147
173
  email: {
@@ -149,9 +175,9 @@ var t = {
149
175
  displayMode: "desktop",
150
176
  style: {
151
177
  base: { default: {} },
152
- input: { default: t },
153
- label: { default: r },
154
- error: { default: i }
178
+ input: { default: n },
179
+ label: { default: i },
180
+ error: { default: a }
155
181
  }
156
182
  },
157
183
  textarea: {
@@ -159,9 +185,9 @@ var t = {
159
185
  displayMode: "desktop",
160
186
  style: {
161
187
  base: { default: {} },
162
- input: { default: t },
163
- label: { default: r },
164
- error: { default: i }
188
+ input: { default: n },
189
+ label: { default: i },
190
+ error: { default: a }
165
191
  }
166
192
  },
167
193
  checkbox: {
@@ -175,8 +201,8 @@ var t = {
175
201
  "margin-left": "0px",
176
202
  "margin-right": "4px"
177
203
  } },
178
- label: { default: n },
179
- error: { default: i }
204
+ label: { default: r },
205
+ error: { default: a }
180
206
  }
181
207
  },
182
208
  select: {
@@ -185,11 +211,11 @@ var t = {
185
211
  style: {
186
212
  base: { default: {} },
187
213
  input: { default: {
188
- ...t,
214
+ ...n,
189
215
  cursor: "pointer"
190
216
  } },
191
- label: r,
192
- error: { default: i }
217
+ label: i,
218
+ error: { default: a }
193
219
  }
194
220
  }
195
221
  }
@@ -198,4 +224,4 @@ var t = {
198
224
  }
199
225
  });
200
226
  //#endregion
201
- export { a as default };
227
+ export { o as default };
@@ -18,7 +18,7 @@ export type WithFieldValueProps<T> = {
18
18
  previewError?: boolean;
19
19
  } & T;
20
20
  declare const withFieldValue: <T extends object>(WrappedComponent: FC<T>) => {
21
- (props: WithFieldValueProps<T>): import("react").JSX.Element;
21
+ (props: WithFieldValueProps<T>): import('react').JSX.Element;
22
22
  displayName: string;
23
23
  };
24
24
  export default withFieldValue;
@@ -1,97 +1,104 @@
1
1
  import { validateField as e } from "../helpers/validateField.mjs";
2
- import { useCallback as t, useEffect as n, useMemo as r } from "react";
3
- import i from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
4
- import { get as a } from "@plitzi/plitzi-ui/helpers";
5
- import { createStoreHook as o } from "@plitzi/nexus/react";
6
- import { getDisplayName as s } from "@plitzi/sdk-shared/helpers/utils";
7
- import { jsx as c } from "react/jsx-runtime";
2
+ import { useCallback as t, useEffect as n, useMemo as r, useState as i } from "react";
3
+ import a from "@plitzi/sdk-shared/hooks/usePlitziServiceContext";
4
+ import { get as o } from "@plitzi/plitzi-ui/helpers";
5
+ import { createStoreHook as s } from "@plitzi/nexus/react";
6
+ import { getDisplayName as c } from "@plitzi/sdk-shared/helpers/utils";
7
+ import { jsx as l } from "react/jsx-runtime";
8
8
  //#region src/elements/form/FormControl/hocs/withFieldValue.tsx
9
- var l = (l) => {
10
- let u = (s) => {
11
- let { ref: u, name: d = "", subType: f = "text", defaultValue: p = "", required: m = !0, requiredMessage: h = "", minLength: g = 0, minLengthMessage: _ = "", maxLength: v = 0, maxLengthMessage: y = "", formatMessage: b = "", pattern: x = "", patternMessage: S = "", matches: C = "", matchesMessage: w = "", previewError: T = !1 } = s, { settings: { previewMode: E } } = i(), { useStore: D } = o(), [O] = D("runtime.sources.form");
12
- if (!O) return /* @__PURE__ */ c(l, { ...s });
13
- let { setFieldValue: k, setFieldError: A, registerValidator: j, unregisterValidator: M, errors: N, values: P } = O, F = r(() => a(P, d, p), [
9
+ var u = (u) => {
10
+ let d = (c) => {
11
+ let { ref: d, name: f = "", subType: p = "text", defaultValue: m = "", required: h = !0, requiredMessage: g = "", minLength: _ = 0, minLengthMessage: v = "", maxLength: y = 0, maxLengthMessage: b = "", formatMessage: x = "", pattern: S = "", patternMessage: C = "", matches: w = "", matchesMessage: T = "", previewError: E = !1 } = c, { settings: { previewMode: D } } = a(), { useStore: O } = s(), [k] = O("runtime.sources.form"), [A, j] = i(m), [M, N] = i(m);
12
+ !k && M !== m && (N(m), j(m));
13
+ let P = k?.values, F = r(() => k ? o(P, f, m) : A, [
14
+ k,
14
15
  P,
15
- d,
16
- p
17
- ]), I = r(() => !E && T ? "This is an error message" : N[d], [
16
+ f,
17
+ m,
18
+ A
19
+ ]), I = r(() => !D && E ? "This is an error message" : k?.errors[f] ?? "", [
20
+ D,
18
21
  E,
19
- T,
20
- N,
21
- d
22
+ k?.errors,
23
+ f
22
24
  ]), L = r(() => ({
23
- required: m,
24
- requiredMessage: h,
25
- minLength: g,
26
- minLengthMessage: _,
27
- maxLength: v,
28
- maxLengthMessage: y,
29
- type: f,
30
- formatMessage: b,
31
- pattern: x,
32
- patternMessage: S,
33
- matches: C,
34
- matchesMessage: w
25
+ required: h,
26
+ requiredMessage: g,
27
+ minLength: _,
28
+ minLengthMessage: v,
29
+ maxLength: y,
30
+ maxLengthMessage: b,
31
+ type: p,
32
+ formatMessage: x,
33
+ pattern: S,
34
+ patternMessage: C,
35
+ matches: w,
36
+ matchesMessage: T
35
37
  }), [
36
- m,
37
38
  h,
38
39
  g,
39
40
  _,
40
41
  v,
41
42
  y,
42
- f,
43
43
  b,
44
+ p,
44
45
  x,
45
46
  S,
46
47
  C,
47
- w
48
- ]);
48
+ w,
49
+ T
50
+ ]), R = k?.registerValidator, z = k?.unregisterValidator, B = k?.setFieldValue, V = k?.setFieldError;
49
51
  n(() => {
50
- if (d) return j(d, (t) => e(a(t, d, p), L, t)), () => M(d);
52
+ if (f && R && z) return R(f, (t) => e(o(t, f, m), L, t)), () => z(f);
51
53
  }, [
52
- d,
53
- p,
54
+ f,
55
+ m,
54
56
  L,
55
- j,
56
- M
57
+ R,
58
+ z
57
59
  ]), n(() => {
58
- p && F && d && k(d, F);
60
+ B && m && F && f && B(f, F);
59
61
  }, [
60
- p,
61
- d,
62
- k,
62
+ m,
63
+ f,
64
+ B,
63
65
  F
64
66
  ]);
65
- let R = t((e) => {
66
- e.target.type === "radio" || e.target.type === "checkbox" || f === "switch" ? k(d, e.target.checked) : k(d, e.target.value);
67
+ let H = t((e) => {
68
+ let t = e.target.type === "radio" || e.target.type === "checkbox" || p === "switch";
69
+ if (!B) {
70
+ j(t ? String(e.target.checked) : e.target.value);
71
+ return;
72
+ }
73
+ B(f, t ? e.target.checked : e.target.value);
67
74
  }, [
68
- k,
69
- d,
70
- f
71
- ]), z = t(() => A(d, e(F, L, P)), [
75
+ B,
76
+ f,
77
+ p
78
+ ]), U = t(() => V?.(f, e(F, L, P ?? {})), [
72
79
  F,
73
80
  L,
74
81
  P,
75
- d,
76
- A
82
+ f,
83
+ V
77
84
  ]);
78
- return r(() => /* @__PURE__ */ c(l, {
79
- ...s,
80
- ref: u,
85
+ return r(() => /* @__PURE__ */ l(u, {
86
+ ...c,
87
+ ref: d,
81
88
  value: F,
82
89
  error: I,
83
- handleChange: R,
84
- handleValidate: z
90
+ handleChange: H,
91
+ handleValidate: U
85
92
  }), [
86
- s,
87
- u,
93
+ c,
94
+ d,
88
95
  I,
89
96
  F,
90
- R,
91
- z
97
+ H,
98
+ U
92
99
  ]);
93
100
  };
94
- return u.displayName = `withFieldValue(${s(l)})`, u;
101
+ return d.displayName = `withFieldValue(${c(u)})`, d;
95
102
  };
96
103
  //#endregion
97
- export { l as default };
104
+ export { u as default };
@@ -1,10 +1,10 @@
1
1
  declare const FormControl: {
2
- (props: import('../../../Element/hocs/withElement').WithElementProps<import('./hocs/withFieldValue').WithFieldValueProps<import('./FormControl').FormControlProps>>): import("react").JSX.Element;
2
+ (props: import('../../../Element/hocs/withElement').WithElementProps<import('./hocs/withFieldValue').WithFieldValueProps<import('./FormControl').FormControlProps>>): import('react').JSX.Element;
3
3
  displayName: string;
4
4
  } & {
5
5
  content: {
6
6
  market: {
7
- icon: import("react").JSX.Element;
7
+ icon: import('react').JSX.Element;
8
8
  category: "form";
9
9
  owner: "Plitzi";
10
10
  verified: true;
@@ -16,9 +16,11 @@ declare const FormControl: {
16
16
  readonly subType: "text";
17
17
  readonly name: "";
18
18
  readonly label: "Label";
19
+ readonly hideLabel: false;
19
20
  readonly placeholder: "";
20
21
  readonly defaultValue: "";
21
22
  readonly autoComplete: true;
23
+ readonly autoFocus: false;
22
24
  readonly disabled: false;
23
25
  readonly options: readonly [];
24
26
  readonly required: true;
@@ -495,6 +497,21 @@ declare const FormControl: {
495
497
  settings: {};
496
498
  };
497
499
  type: "formControl";
500
+ attributeValues: {
501
+ readonly subType: readonly string[];
502
+ };
503
+ triggers: {
504
+ readonly onChange: {
505
+ readonly action: "onChange";
506
+ readonly title: "On Change";
507
+ readonly type: "trigger";
508
+ readonly params: {};
509
+ readonly preview: {
510
+ readonly value: "";
511
+ readonly name: "";
512
+ };
513
+ };
514
+ };
498
515
  __attributes: import('./declaration').FormControlAttributes;
499
516
  };
500
517
  export default FormControl;
@@ -9,6 +9,11 @@ export type CheckboxProps = {
9
9
  disabled?: boolean;
10
10
  onChange?: (e: ChangeEvent<HTMLInputElement>) => void;
11
11
  onValidate?: () => void;
12
+ /**
13
+ * The id of the message saying what is wrong with the value, while something is: the field is then marked invalid
14
+ * and described by it, so a screen reader or a browser agent hears why the form would not send.
15
+ */
16
+ errorId?: string;
12
17
  };
13
- declare const Checkbox: ({ className, id, name, placeholder, value, required, disabled, onChange, onValidate }: CheckboxProps) => import("react").JSX.Element;
18
+ declare const Checkbox: ({ className, id, name, placeholder, value, required, disabled, onChange, onValidate, errorId }: CheckboxProps) => import('react').JSX.Element;
14
19
  export default Checkbox;
@@ -2,11 +2,13 @@ import { useCallback as e } from "react";
2
2
  import { jsx as t } from "react/jsx-runtime";
3
3
  import n from "clsx";
4
4
  //#region src/elements/form/FormControl/inputs/Checkbox.tsx
5
- var r = ({ className: r = "", id: i = "", name: a = "", placeholder: o = "", value: s = "", required: c = !0, disabled: l = !1, onChange: u, onValidate: d }) => {
6
- let f = e(() => d?.(), [d]);
5
+ var r = ({ className: r = "", id: i = "", name: a = "", placeholder: o = "", value: s = "", required: c = !0, disabled: l = !1, onChange: u, onValidate: d, errorId: f }) => {
6
+ let p = e(() => d?.(), [d]);
7
7
  return /* @__PURE__ */ t("input", {
8
8
  className: n("form-control__checkbox-container", r),
9
9
  id: i,
10
+ "aria-invalid": f ? !0 : void 0,
11
+ "aria-describedby": f,
10
12
  name: a,
11
13
  type: "checkbox",
12
14
  placeholder: o,
@@ -14,7 +16,7 @@ var r = ({ className: r = "", id: i = "", name: a = "", placeholder: o = "", val
14
16
  required: c,
15
17
  disabled: l,
16
18
  onChange: u,
17
- onBlur: f
19
+ onBlur: p
18
20
  });
19
21
  };
20
22
  //#endregion
@@ -7,5 +7,5 @@ export type HiddenProps = {
7
7
  disabled?: boolean;
8
8
  previewMode?: boolean;
9
9
  };
10
- declare const Hidden: ({ className, id, name, value, required, disabled, previewMode }: HiddenProps) => import("react").JSX.Element;
10
+ declare const Hidden: ({ className, id, name, value, required, disabled, previewMode }: HiddenProps) => import('react').JSX.Element;
11
11
  export default Hidden;
@@ -6,6 +6,8 @@ export type InputProps = {
6
6
  value?: string;
7
7
  type?: string;
8
8
  autoComplete?: boolean;
9
+ /** Takes the focus while true: as it becomes true, whether on mount or as the field is shown again. */
10
+ autoFocus?: boolean;
9
11
  required?: boolean;
10
12
  /** `0` for none. The one rule the browser enforces itself, and by the kindest means: it stops the typing. */
11
13
  maxLength?: number;
@@ -13,6 +15,11 @@ export type InputProps = {
13
15
  readOnly?: boolean;
14
16
  onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
15
17
  onValidate?: () => void;
18
+ /**
19
+ * The id of the message saying what is wrong with the value, while something is: the field is then marked invalid
20
+ * and described by it, so a screen reader or a browser agent hears why the form would not send.
21
+ */
22
+ errorId?: string;
16
23
  };
17
- declare const Input: ({ className, id, name, placeholder, value, type, autoComplete, required, maxLength, disabled, readOnly, onChange, onValidate }: InputProps) => import("react").JSX.Element;
24
+ declare const Input: ({ className, id, name, placeholder, value, type, autoComplete, autoFocus, required, maxLength, disabled, readOnly, onChange, onValidate, errorId }: InputProps) => import('react').JSX.Element;
18
25
  export default Input;
@@ -1,43 +1,49 @@
1
- import { useCallback as e, useRef as t, useState as n } from "react";
2
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
3
- import a from "clsx";
1
+ import e from "./useFocusWhenShown.mjs";
2
+ import { useCallback as t, useRef as n, useState as r } from "react";
3
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
4
+ import o from "clsx";
4
5
  //#region src/elements/form/FormControl/inputs/Input.tsx
5
- var o = ({ className: o = "", id: s = "", name: c = "", placeholder: l = "", value: u = "", type: d = "text", autoComplete: f = !1, required: p = !0, maxLength: m = 0, disabled: h = !1, readOnly: g = !1, onChange: _, onValidate: v }) => {
6
- let [y, b] = n(!1), x = t(null), S = e(() => b((e) => !e), [b]), C = e(() => {
7
- x.current?.focus();
8
- }, [x]), w = e(() => v?.(), [v]);
9
- return /* @__PURE__ */ i("div", {
10
- className: a("form-control__input-container", o),
11
- onClick: C,
12
- children: [
13
- /* @__PURE__ */ r("input", {
14
- ref: x,
15
- className: "input-container__input",
16
- id: s,
17
- name: c,
18
- type: d === "password" && y ? "text" : d,
19
- placeholder: l,
20
- value: u,
21
- required: p,
22
- maxLength: m > 0 ? m : void 0,
23
- autoComplete: f ? "on" : "off",
24
- disabled: h,
25
- readOnly: g,
26
- onChange: _,
27
- onBlur: w
28
- }),
29
- d === "password" && !y && /* @__PURE__ */ r("div", {
30
- className: "form-input__icon",
31
- onClick: S,
32
- children: /* @__PURE__ */ r("i", { className: "fa-solid fa-eye" })
33
- }),
34
- d === "password" && y && /* @__PURE__ */ r("div", {
35
- className: "form-input__icon",
36
- onClick: S,
37
- children: /* @__PURE__ */ r("i", { className: "fa-solid fa-eye-slash" })
6
+ var s = ({ className: s = "", id: c = "", name: l = "", placeholder: u = "", value: d = "", type: f = "text", autoComplete: p = !1, autoFocus: m = !1, required: h = !0, maxLength: g = 0, disabled: _ = !1, readOnly: v = !1, onChange: y, onValidate: b, errorId: x }) => {
7
+ let [S, C] = r(!1), w = n(null);
8
+ e(w, m);
9
+ let T = t(() => C((e) => !e), [C]), E = t((e) => {
10
+ let t = w.current;
11
+ if (t?.focus(), f === "color" && t && e.target !== t) try {
12
+ t.showPicker();
13
+ } catch {}
14
+ }, [w, f]), D = t(() => b?.(), [b]);
15
+ return /* @__PURE__ */ a("div", {
16
+ className: o("form-control__input-container", s),
17
+ onClick: E,
18
+ children: [/* @__PURE__ */ i("input", {
19
+ ref: w,
20
+ className: "input-container__input",
21
+ id: c,
22
+ "aria-invalid": x ? !0 : void 0,
23
+ "aria-describedby": x,
24
+ name: l,
25
+ type: f === "password" && S ? "text" : f,
26
+ placeholder: u,
27
+ value: d,
28
+ required: h,
29
+ maxLength: g > 0 ? g : void 0,
30
+ autoComplete: p ? "on" : "off",
31
+ disabled: _,
32
+ readOnly: v,
33
+ onChange: y,
34
+ onBlur: D
35
+ }), f === "password" && /* @__PURE__ */ i("button", {
36
+ type: "button",
37
+ className: "form-input__icon",
38
+ "aria-pressed": S,
39
+ title: "Show password",
40
+ onClick: T,
41
+ children: /* @__PURE__ */ i("i", {
42
+ className: S ? "fa-solid fa-eye-slash" : "fa-solid fa-eye",
43
+ "aria-hidden": "true"
38
44
  })
39
- ]
45
+ })]
40
46
  });
41
47
  };
42
48
  //#endregion
43
- export { o as default };
49
+ export { s as default };
@@ -12,6 +12,11 @@ export type SelectProps = {
12
12
  disabled?: boolean;
13
13
  onChange?: (e: ChangeEvent<HTMLSelectElement>) => void;
14
14
  onValidate?: () => void;
15
+ /**
16
+ * The id of the message saying what is wrong with the value, while something is: the field is then marked invalid
17
+ * and described by it, so a screen reader or a browser agent hears why the form would not send.
18
+ */
19
+ errorId?: string;
15
20
  };
16
- declare const Select: ({ id, name, options, placeholder, value, className, disabled, onChange, onValidate }: SelectProps) => import("react").JSX.Element;
21
+ declare const Select: ({ id, name, options, placeholder, value, className, disabled, onChange, onValidate, errorId }: SelectProps) => import('react').JSX.Element;
17
22
  export default Select;
@@ -2,12 +2,12 @@ import { useCallback as e, useMemo as t, useRef as n } from "react";
2
2
  import { jsx as r, jsxs as i } from "react/jsx-runtime";
3
3
  import a from "clsx";
4
4
  //#region src/elements/form/FormControl/inputs/Select.tsx
5
- var o = ({ id: o = "", name: s, options: c = [], placeholder: l = "", value: u = "", className: d = "", disabled: f = !1, onChange: p, onValidate: m }) => {
6
- let h = n(null), g = e(() => {
7
- h.current?.click();
8
- }, [h]), _ = e((e) => {
5
+ var o = ({ id: o = "", name: s, options: c = [], placeholder: l = "", value: u = "", className: d = "", disabled: f = !1, onChange: p, onValidate: m, errorId: h }) => {
6
+ let g = n(null), _ = e(() => {
7
+ g.current?.click();
8
+ }, [g]), v = e((e) => {
9
9
  e.stopPropagation();
10
- }, []), v = e(() => m?.(), [m]), y = t(() => Array.isArray(c) ? c.map((e) => {
10
+ }, []), y = e(() => m?.(), [m]), b = t(() => Array.isArray(c) ? c.map((e) => {
11
11
  if (typeof e == "string") return {
12
12
  value: e,
13
13
  label: e
@@ -26,21 +26,23 @@ var o = ({ id: o = "", name: s, options: c = [], placeholder: l = "", value: u =
26
26
  }) : [], [c]);
27
27
  return /* @__PURE__ */ r("div", {
28
28
  className: a("form-control__select-container", d),
29
- onClick: g,
29
+ onClick: _,
30
30
  children: /* @__PURE__ */ i("select", {
31
- ref: h,
31
+ ref: g,
32
32
  id: o,
33
+ "aria-invalid": h ? !0 : void 0,
34
+ "aria-describedby": h,
33
35
  name: s,
34
36
  onChange: p,
35
37
  value: u,
36
38
  className: "select-container__select",
37
39
  disabled: f,
38
- onClick: _,
39
- onBlur: v,
40
+ onClick: v,
41
+ onBlur: y,
40
42
  children: [l && /* @__PURE__ */ r("option", {
41
43
  value: "",
42
44
  children: l
43
- }), y.map((e, t) => /* @__PURE__ */ r("option", {
45
+ }), b.map((e, t) => /* @__PURE__ */ r("option", {
44
46
  value: e.value,
45
47
  children: e.label
46
48
  }, t))]