@luomus/laji-form 14.3.6

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 (302) hide show
  1. package/CHANGELOG.md +215 -0
  2. package/LICENSE +21 -0
  3. package/README.md +180 -0
  4. package/cypress/fixtures/example.json +5 -0
  5. closes suggestion list (failed).png +0 -0
  6. is marked as suggested (failed).png +0 -0
  7. package/dist/images/finnish-flag.png +0 -0
  8. package/dist/images/handled.png +0 -0
  9. package/dist/images/heard.png +0 -0
  10. package/dist/images/indirect.png +0 -0
  11. package/dist/images/media.png +0 -0
  12. package/dist/images/seen.png +0 -0
  13. package/dist/images/specimen.png +0 -0
  14. package/dist/laji-form.js +2 -0
  15. package/dist/laji-form.js.LICENSE.txt +92 -0
  16. package/dist/styles.css +3771 -0
  17. package/lib/ApiClient.d.ts +46 -0
  18. package/lib/ApiClient.js +93 -0
  19. package/lib/Context.d.ts +8 -0
  20. package/lib/Context.js +18 -0
  21. package/lib/ReactContext.d.ts +7 -0
  22. package/lib/ReactContext.js +5 -0
  23. package/lib/components/BaseComponent.d.ts +9 -0
  24. package/lib/components/BaseComponent.js +29 -0
  25. package/lib/components/LajiForm.d.ts +221 -0
  26. package/lib/components/LajiForm.js +614 -0
  27. package/lib/components/VirtualSchemaField.d.ts +42 -0
  28. package/lib/components/VirtualSchemaField.js +74 -0
  29. package/lib/components/components.d.ts +119 -0
  30. package/lib/components/components.js +606 -0
  31. package/lib/components/fields/AnnotationField.d.ts +34 -0
  32. package/lib/components/fields/AnnotationField.js +242 -0
  33. package/lib/components/fields/AnyToBooleanField.d.ts +18 -0
  34. package/lib/components/fields/AnyToBooleanField.js +20 -0
  35. package/lib/components/fields/ArrayBulkField.d.ts +23 -0
  36. package/lib/components/fields/ArrayBulkField.js +82 -0
  37. package/lib/components/fields/ArrayCombinerField.d.ts +36 -0
  38. package/lib/components/fields/ArrayCombinerField.js +138 -0
  39. package/lib/components/fields/ArrayField.d.ts +39 -0
  40. package/lib/components/fields/ArrayField.js +148 -0
  41. package/lib/components/fields/AudioArrayField.d.ts +22 -0
  42. package/lib/components/fields/AudioArrayField.js +100 -0
  43. package/lib/components/fields/AutoArrayField.d.ts +24 -0
  44. package/lib/components/fields/AutoArrayField.js +56 -0
  45. package/lib/components/fields/AutosuggestField.d.ts +69 -0
  46. package/lib/components/fields/AutosuggestField.js +299 -0
  47. package/lib/components/fields/CombinedValueDisplayField.d.ts +41 -0
  48. package/lib/components/fields/CombinedValueDisplayField.js +100 -0
  49. package/lib/components/fields/ConditionalOnChangeField.d.ts +42 -0
  50. package/lib/components/fields/ConditionalOnChangeField.js +107 -0
  51. package/lib/components/fields/ConditionalUiSchemaField.d.ts +123 -0
  52. package/lib/components/fields/ConditionalUiSchemaField.js +143 -0
  53. package/lib/components/fields/ContextInjectionField.d.ts +24 -0
  54. package/lib/components/fields/ContextInjectionField.js +68 -0
  55. package/lib/components/fields/DataLeakerField.d.ts +40 -0
  56. package/lib/components/fields/DataLeakerField.js +68 -0
  57. package/lib/components/fields/DefaultValueArrayField.d.ts +34 -0
  58. package/lib/components/fields/DefaultValueArrayField.js +59 -0
  59. package/lib/components/fields/DependentBooleanField.d.ts +38 -0
  60. package/lib/components/fields/DependentBooleanField.js +87 -0
  61. package/lib/components/fields/DependentDisableField.d.ts +35 -0
  62. package/lib/components/fields/DependentDisableField.js +71 -0
  63. package/lib/components/fields/EnumRangeArrayField.d.ts +27 -0
  64. package/lib/components/fields/EnumRangeArrayField.js +115 -0
  65. package/lib/components/fields/ExtraLabelRowField.d.ts +38 -0
  66. package/lib/components/fields/ExtraLabelRowField.js +100 -0
  67. package/lib/components/fields/FakePropertyField.d.ts +18 -0
  68. package/lib/components/fields/FakePropertyField.js +48 -0
  69. package/lib/components/fields/FilterArrayField.d.ts +73 -0
  70. package/lib/components/fields/FilterArrayField.js +121 -0
  71. package/lib/components/fields/FlatField.d.ts +29 -0
  72. package/lib/components/fields/FlatField.js +171 -0
  73. package/lib/components/fields/GeocoderField.d.ts +47 -0
  74. package/lib/components/fields/GeocoderField.js +372 -0
  75. package/lib/components/fields/GridLayoutField.d.ts +18 -0
  76. package/lib/components/fields/GridLayoutField.js +32 -0
  77. package/lib/components/fields/HiddenField.d.ts +10 -0
  78. package/lib/components/fields/HiddenField.js +11 -0
  79. package/lib/components/fields/ImageArrayField.d.ts +153 -0
  80. package/lib/components/fields/ImageArrayField.js +696 -0
  81. package/lib/components/fields/ImageDisplayField.d.ts +18 -0
  82. package/lib/components/fields/ImageDisplayField.js +44 -0
  83. package/lib/components/fields/InitiallyHiddenField.d.ts +21 -0
  84. package/lib/components/fields/InitiallyHiddenField.js +58 -0
  85. package/lib/components/fields/InjectDefaultValueField.d.ts +37 -0
  86. package/lib/components/fields/InjectDefaultValueField.js +68 -0
  87. package/lib/components/fields/InjectField.d.ts +46 -0
  88. package/lib/components/fields/InjectField.js +88 -0
  89. package/lib/components/fields/InputWithDefaultValueButtonField.d.ts +25 -0
  90. package/lib/components/fields/InputWithDefaultValueButtonField.js +61 -0
  91. package/lib/components/fields/LocalityField.d.ts +22 -0
  92. package/lib/components/fields/LocalityField.js +94 -0
  93. package/lib/components/fields/LocationChooserField.d.ts +27 -0
  94. package/lib/components/fields/LocationChooserField.js +440 -0
  95. package/lib/components/fields/MapArrayField.d.ts +78 -0
  96. package/lib/components/fields/MapArrayField.js +1783 -0
  97. package/lib/components/fields/MapField.d.ts +48 -0
  98. package/lib/components/fields/MapField.js +434 -0
  99. package/lib/components/fields/MultiAnyToBooleanField.d.ts +25 -0
  100. package/lib/components/fields/MultiAnyToBooleanField.js +100 -0
  101. package/lib/components/fields/MultiArrayField.d.ts +53 -0
  102. package/lib/components/fields/MultiArrayField.js +224 -0
  103. package/lib/components/fields/MultiLanguageField.d.ts +13 -0
  104. package/lib/components/fields/MultiLanguageField.js +52 -0
  105. package/lib/components/fields/MultiTagArrayField.d.ts +36 -0
  106. package/lib/components/fields/MultiTagArrayField.js +142 -0
  107. package/lib/components/fields/NamedPlaceChooserField.d.ts +29 -0
  108. package/lib/components/fields/NamedPlaceChooserField.js +380 -0
  109. package/lib/components/fields/NamedPlaceSaverField.d.ts +29 -0
  110. package/lib/components/fields/NamedPlaceSaverField.js +237 -0
  111. package/lib/components/fields/NestField.d.ts +148 -0
  112. package/lib/components/fields/NestField.js +289 -0
  113. package/lib/components/fields/ObjectField.d.ts +2 -0
  114. package/lib/components/fields/ObjectField.js +119 -0
  115. package/lib/components/fields/PrefillingArrayField.d.ts +22 -0
  116. package/lib/components/fields/PrefillingArrayField.js +65 -0
  117. package/lib/components/fields/SchemaField.d.ts +7 -0
  118. package/lib/components/fields/SchemaField.js +109 -0
  119. package/lib/components/fields/ScopeField.d.ts +85 -0
  120. package/lib/components/fields/ScopeField.js +521 -0
  121. package/lib/components/fields/SectionArrayField.d.ts +38 -0
  122. package/lib/components/fields/SectionArrayField.js +614 -0
  123. package/lib/components/fields/SelectTreeField.d.ts +39 -0
  124. package/lib/components/fields/SelectTreeField.js +143 -0
  125. package/lib/components/fields/SingleActiveArrayField.d.ts +49 -0
  126. package/lib/components/fields/SingleActiveArrayField.js +974 -0
  127. package/lib/components/fields/SingleItemArrayField.d.ts +15 -0
  128. package/lib/components/fields/SingleItemArrayField.js +60 -0
  129. package/lib/components/fields/SortArrayField.d.ts +73 -0
  130. package/lib/components/fields/SortArrayField.js +351 -0
  131. package/lib/components/fields/SplitField.d.ts +28 -0
  132. package/lib/components/fields/SplitField.js +65 -0
  133. package/lib/components/fields/StringToArrayField.d.ts +24 -0
  134. package/lib/components/fields/StringToArrayField.js +48 -0
  135. package/lib/components/fields/SumField.d.ts +35 -0
  136. package/lib/components/fields/SumField.js +83 -0
  137. package/lib/components/fields/TableField.d.ts +18 -0
  138. package/lib/components/fields/TableField.js +136 -0
  139. package/lib/components/fields/TagArrayField.d.ts +38 -0
  140. package/lib/components/fields/TagArrayField.js +128 -0
  141. package/lib/components/fields/ToggleAdditionalArrayFieldsField.d.ts +26 -0
  142. package/lib/components/fields/ToggleAdditionalArrayFieldsField.js +81 -0
  143. package/lib/components/fields/UiFieldApplierField.d.ts +30 -0
  144. package/lib/components/fields/UiFieldApplierField.js +106 -0
  145. package/lib/components/fields/UiFieldMapperArrayField.d.ts +42 -0
  146. package/lib/components/fields/UiFieldMapperArrayField.js +121 -0
  147. package/lib/components/fields/UnitCountShorthandField.d.ts +22 -0
  148. package/lib/components/fields/UnitCountShorthandField.js +149 -0
  149. package/lib/components/fields/UnitListShorthandArrayField.d.ts +26 -0
  150. package/lib/components/fields/UnitListShorthandArrayField.js +108 -0
  151. package/lib/components/fields/UnitShorthandField.d.ts +32 -0
  152. package/lib/components/fields/UnitShorthandField.js +220 -0
  153. package/lib/components/templates/ArrayFieldTemplate.d.ts +85 -0
  154. package/lib/components/templates/ArrayFieldTemplate.js +416 -0
  155. package/lib/components/templates/BaseInputTemplate.d.ts +11 -0
  156. package/lib/components/templates/BaseInputTemplate.js +80 -0
  157. package/lib/components/templates/DescriptionField.d.ts +1 -0
  158. package/lib/components/templates/DescriptionField.js +37 -0
  159. package/lib/components/templates/ErrorListTemplate.d.ts +9 -0
  160. package/lib/components/templates/ErrorListTemplate.js +95 -0
  161. package/lib/components/templates/FieldTemplate.d.ts +6 -0
  162. package/lib/components/templates/FieldTemplate.js +112 -0
  163. package/lib/components/templates/ObjectFieldTemplate.d.ts +7 -0
  164. package/lib/components/templates/ObjectFieldTemplate.js +66 -0
  165. package/lib/components/templates/TitleField.d.ts +9 -0
  166. package/lib/components/templates/TitleField.js +51 -0
  167. package/lib/components/widgets/AnyToBooleanWidget.d.ts +20 -0
  168. package/lib/components/widgets/AnyToBooleanWidget.js +49 -0
  169. package/lib/components/widgets/AutosuggestWidget.d.ts +66 -0
  170. package/lib/components/widgets/AutosuggestWidget.js +1127 -0
  171. package/lib/components/widgets/CheckboxWidget.d.ts +37 -0
  172. package/lib/components/widgets/CheckboxWidget.js +139 -0
  173. package/lib/components/widgets/DateTimeWidget.d.ts +62 -0
  174. package/lib/components/widgets/DateTimeWidget.js +251 -0
  175. package/lib/components/widgets/DateWidget.d.ts +23 -0
  176. package/lib/components/widgets/DateWidget.js +41 -0
  177. package/lib/components/widgets/HiddenWidget.d.ts +15 -0
  178. package/lib/components/widgets/HiddenWidget.js +19 -0
  179. package/lib/components/widgets/ImageSelectWidget.d.ts +14 -0
  180. package/lib/components/widgets/ImageSelectWidget.js +57 -0
  181. package/lib/components/widgets/InformalTaxonGroupChooserWidget.d.ts +43 -0
  182. package/lib/components/widgets/InformalTaxonGroupChooserWidget.js +237 -0
  183. package/lib/components/widgets/InputGroupWidget.d.ts +21 -0
  184. package/lib/components/widgets/InputGroupWidget.js +36 -0
  185. package/lib/components/widgets/InputWithDefaultValueButtonWidget.d.ts +21 -0
  186. package/lib/components/widgets/InputWithDefaultValueButtonWidget.js +47 -0
  187. package/lib/components/widgets/NumberWidget.d.ts +13 -0
  188. package/lib/components/widgets/NumberWidget.js +21 -0
  189. package/lib/components/widgets/PlainTextWidget.d.ts +12 -0
  190. package/lib/components/widgets/PlainTextWidget.js +24 -0
  191. package/lib/components/widgets/SelectWidget.d.ts +52 -0
  192. package/lib/components/widgets/SelectWidget.js +158 -0
  193. package/lib/components/widgets/SeparatedDateTimeWidget.d.ts +19 -0
  194. package/lib/components/widgets/SeparatedDateTimeWidget.js +59 -0
  195. package/lib/components/widgets/TaxonImageWidget.d.ts +13 -0
  196. package/lib/components/widgets/TaxonImageWidget.js +30 -0
  197. package/lib/components/widgets/TextSelectWidget.d.ts +25 -0
  198. package/lib/components/widgets/TextSelectWidget.js +94 -0
  199. package/lib/components/widgets/TextareaWidget.d.ts +32 -0
  200. package/lib/components/widgets/TextareaWidget.js +87 -0
  201. package/lib/components/widgets/TimeWidget.d.ts +11 -0
  202. package/lib/components/widgets/TimeWidget.js +19 -0
  203. package/lib/components/widgets/URLWidget.d.ts +14 -0
  204. package/lib/components/widgets/URLWidget.js +12 -0
  205. package/lib/components/widgets/UpperCaseWidget.d.ts +13 -0
  206. package/lib/components/widgets/UpperCaseWidget.js +21 -0
  207. package/lib/index.d.ts +20 -0
  208. package/lib/index.js +50 -0
  209. package/lib/services/blocker-service.d.ts +11 -0
  210. package/lib/services/blocker-service.js +55 -0
  211. package/lib/services/custom-event-service.d.ts +17 -0
  212. package/lib/services/custom-event-service.js +35 -0
  213. package/lib/services/dom-id-service.d.ts +8 -0
  214. package/lib/services/dom-id-service.js +30 -0
  215. package/lib/services/focus-service.d.ts +13 -0
  216. package/lib/services/focus-service.js +60 -0
  217. package/lib/services/id-service.d.ts +22 -0
  218. package/lib/services/id-service.js +130 -0
  219. package/lib/services/key-handler-service.d.ts +56 -0
  220. package/lib/services/key-handler-service.js +184 -0
  221. package/lib/services/root-instance-service.d.ts +25 -0
  222. package/lib/services/root-instance-service.js +49 -0
  223. package/lib/services/settings-service.d.ts +34 -0
  224. package/lib/services/settings-service.js +154 -0
  225. package/lib/services/singleton-map-service.d.ts +23 -0
  226. package/lib/services/singleton-map-service.js +44 -0
  227. package/lib/services/submit-hook-service.d.ts +24 -0
  228. package/lib/services/submit-hook-service.js +73 -0
  229. package/lib/styles.d.ts +1 -0
  230. package/lib/styles.js +4 -0
  231. package/lib/themes/bs3.d.ts +3 -0
  232. package/lib/themes/bs3.js +133 -0
  233. package/lib/themes/bs5.d.ts +3 -0
  234. package/lib/themes/bs5.js +111 -0
  235. package/lib/themes/glyphicon-fa-mapping.d.ts +3 -0
  236. package/lib/themes/glyphicon-fa-mapping.js +271 -0
  237. package/lib/themes/stub.d.ts +3 -0
  238. package/lib/themes/stub.js +82 -0
  239. package/lib/themes/theme.d.ts +233 -0
  240. package/lib/themes/theme.js +2 -0
  241. package/lib/translations.json +842 -0
  242. package/lib/utils.d.ts +167 -0
  243. package/lib/utils.js +1191 -0
  244. package/lib/validation.d.ts +7 -0
  245. package/lib/validation.js +141 -0
  246. package/llol +10 -0
  247. package/llol.pdf +10 -0
  248. package/package.json +99 -0
  249. package/q +196 -0
  250. package/test-export/array-spec.d.ts +1 -0
  251. package/test-export/array-spec.js +204 -0
  252. package/test-export/bird-point-count-spec.d.ts +1 -0
  253. package/test-export/bird-point-count-spec.js +62 -0
  254. package/test-export/collection-contest-form-spec.d.ts +1 -0
  255. package/test-export/collection-contest-form-spec.js +38 -0
  256. package/test-export/dataset-form-spec.d.ts +1 -0
  257. package/test-export/dataset-form-spec.js +50 -0
  258. package/test-export/date-time-widget-spec.d.ts +1 -0
  259. package/test-export/date-time-widget-spec.js +188 -0
  260. package/test-export/geocoder-spec.d.ts +1 -0
  261. package/test-export/geocoder-spec.js +135 -0
  262. package/test-export/image-array-spec.d.ts +1 -0
  263. package/test-export/image-array-spec.js +94 -0
  264. package/test-export/inject-field-spec.d.ts +1 -0
  265. package/test-export/inject-field-spec.js +148 -0
  266. package/test-export/internal-uuids-spec.d.ts +1 -0
  267. package/test-export/internal-uuids-spec.js +157 -0
  268. package/test-export/invasive-species-eradication-np-spec.d.ts +1 -0
  269. package/test-export/invasive-species-eradication-np-spec.js +18 -0
  270. package/test-export/invasive-species-eradication-spec.d.ts +1 -0
  271. package/test-export/invasive-species-eradication-spec.js +25 -0
  272. package/test-export/line-transect-spec.d.ts +1 -0
  273. package/test-export/line-transect-spec.js +121 -0
  274. package/test-export/mobile-form-spec.d.ts +1 -0
  275. package/test-export/mobile-form-spec.js +84 -0
  276. package/test-export/nafi-spec.d.ts +1 -0
  277. package/test-export/nafi-spec.js +85 -0
  278. package/test-export/select-widget-spec.d.ts +1 -0
  279. package/test-export/select-widget-spec.js +68 -0
  280. package/test-export/single-item-array-field-spec.d.ts +1 -0
  281. package/test-export/single-item-array-field-spec.js +92 -0
  282. package/test-export/syke-butterfly-spec.d.ts +1 -0
  283. package/test-export/syke-butterfly-spec.js +163 -0
  284. package/test-export/test-utils.d.ts +184 -0
  285. package/test-export/test-utils.js +354 -0
  286. package/test-export/transaction-form-spec.d.ts +1 -0
  287. package/test-export/transaction-form-spec.js +63 -0
  288. package/test-export/trip-report-autosuggest-spec.d.ts +1 -0
  289. package/test-export/trip-report-autosuggest-spec.js +272 -0
  290. package/test-export/trip-report-spec.d.ts +1 -0
  291. package/test-export/trip-report-spec.js +456 -0
  292. package/test-export/unit-list-shorthand-array-field-spec.d.ts +1 -0
  293. package/test-export/unit-list-shorthand-array-field-spec.js +71 -0
  294. package/test-export/validation-spec.d.ts +1 -0
  295. package/test-export/validation-spec.js +336 -0
  296. package/test-export/water-bird-spec.d.ts +1 -0
  297. package/test-export/water-bird-spec.js +30 -0
  298. package/test-export/wbc-spec.d.ts +1 -0
  299. package/test-export/wbc-spec.js +82 -0
  300. package/tsconfig.json +25 -0
  301. package/tsconfig.lib.json +11 -0
  302. package/tsconfig.test.json +10 -0
package/lib/utils.d.ts ADDED
@@ -0,0 +1,167 @@
1
+ import * as React from "react";
2
+ import { Spec as UpdateObject } from "immutability-helper";
3
+ import { isObject as _isObject } from "@luomus/laji-map/lib/utils";
4
+ import { UiSchema, RJSFSchema } from "@rjsf/utils";
5
+ import { FormContext, Translations, FieldProps, ByLang } from "./components/LajiForm";
6
+ export declare const isObject: typeof _isObject;
7
+ export declare function isHidden(uiSchema: UiSchema, property: string): boolean;
8
+ export declare function isDefaultData(formData: any, schema: any): boolean;
9
+ export declare function getDefaultFormState<T>(schema: RJSFSchema, formData?: T, rootSchema?: RJSFSchema): any;
10
+ /**
11
+ * If you use this with schema data, note that this function doesn't check default data.
12
+ */
13
+ export declare function hasData(formData: any): boolean;
14
+ /**
15
+ * If you use this with schema data, note that this function doesn't check default data.
16
+ */
17
+ export declare function propertyHasData(field: string, container: any): boolean;
18
+ export declare function getUpdateObjectFromJSONPath(path: string, injection: any): any;
19
+ export declare function getUpdateObjectFromJSONPointer(path: string, injection: any): any;
20
+ export declare function immutableDelete(_obj: any, _delProp: string): any;
21
+ export declare function getUiOptions(container: UiSchema): any;
22
+ export declare function getInnerUiSchema(parentUiSchema: UiSchema): any;
23
+ export declare function isNullOrUndefined(val: any): boolean;
24
+ export declare function isEmptyString(val: any): boolean;
25
+ export declare function parseJSONPointer(object: any, jsonPointer: string, safeMode?: true | "createParents", strictEmptyPath?: boolean): any;
26
+ export declare function parseJSONPointer(object: any, jsonPointer: string, safeMode?: false, strictEmptyPath?: boolean): any | undefined;
27
+ export declare function getReactComponentName(WrappedComponent: React.ComponentClass): string;
28
+ export declare function isMultiSelect(schema: any, uiSchema?: UiSchema): boolean;
29
+ export declare function isSelect(schema: RJSFSchema): boolean;
30
+ export declare function getTabbableFields(elem: HTMLElement, reverse?: boolean): HTMLElement[];
31
+ export declare function isTabbableInput(elem: HTMLElement): boolean | RegExpMatchArray;
32
+ export declare function canFocusNextInput(root: React.ReactInstance, inputElem: HTMLElement): any;
33
+ export declare function findNearestParentSchemaElem(elem: HTMLElement | null | undefined): HTMLElement | null | undefined;
34
+ export declare function findNearestParentTabbableElem(elem: HTMLElement): HTMLElement | undefined;
35
+ export interface ReactUtilsType {
36
+ findNearestParentSchemaElemId: (elem: HTMLElement) => string | undefined;
37
+ getSchemaElementById: (id: string) => HTMLElement | null;
38
+ focusById: (id: string, focus?: boolean) => boolean;
39
+ focusAndScroll: (idToFocus?: string, idToScroll?: string, focus?: boolean) => boolean | undefined;
40
+ shouldSyncScroll: () => boolean;
41
+ syncScroll: (force: boolean) => void;
42
+ filterItemIdsDeeply: (item: any, idSchemaId: string) => any;
43
+ formDataIsEmpty: (props: FieldProps) => boolean;
44
+ formDataEquals: (f1: any, f2: any, id: string) => boolean;
45
+ keyboardClick: (fn: (e: KeyboardEvent | React.KeyboardEvent) => void) => (e: (KeyboardEvent | React.KeyboardEvent)) => void;
46
+ getNextInput: (inputElem: HTMLElement, reverseDirection: boolean) => HTMLElement | undefined;
47
+ focusNextInput: (reverseDirection: boolean) => void;
48
+ getNextInputInInputs: (inputElem: HTMLElement | undefined, reverseDirection: boolean, fields: HTMLElement[]) => HTMLElement | undefined;
49
+ }
50
+ export declare const ReactUtils: (context: FormContext) => ReactUtilsType;
51
+ export declare const getNextInputInInputs: (formContext: FormContext) => (inputElem: HTMLElement | undefined, reverseDirection: boolean | undefined, fields: HTMLElement[]) => HTMLElement | undefined;
52
+ export declare const getNextInput: (formContext: FormContext) => (inputElem: HTMLElement, reverseDirection?: boolean) => HTMLElement | undefined;
53
+ export declare const focusNextInput: (formContext: FormContext) => (reverseDirection?: boolean) => boolean;
54
+ export declare const findNearestParentSchemaElemId: (contextId: number, elem: HTMLElement) => string | undefined;
55
+ export declare const getSchemaElementById: (contextId: number, id: string) => HTMLElement | null;
56
+ export declare const focusById: (context: FormContext, id: string, focus?: boolean | undefined) => boolean;
57
+ export declare const focusAndScroll: (context: FormContext, idToFocus?: string | undefined, idToScroll?: string | undefined, focus?: boolean | undefined) => boolean | undefined;
58
+ export declare const shouldSyncScroll: (context: FormContext) => boolean;
59
+ export declare const _syncScroll: (context: FormContext) => (force?: boolean) => void;
60
+ export declare const syncScroll: (context: FormContext, force: boolean) => void;
61
+ export declare const filterLajiFormId: (item: any) => any;
62
+ export declare const filterItemId: (item: any) => any;
63
+ export declare const filterItemIdsDeeply: (item: any, context: FormContext, idSchemaId: string) => any;
64
+ export declare const formDataIsEmpty: (props: FieldProps, context: FormContext) => any;
65
+ export declare const formDataEquals: (f1: any, f2: any, context: FormContext, id: string) => any;
66
+ export declare const keyboardClick: (fn: (e: KeyboardEvent | React.KeyboardEvent) => void, context: FormContext) => (e: KeyboardEvent | React.KeyboardEvent) => void;
67
+ export declare function getNestedTailUiSchema(uiSchema: UiSchema): UiSchema<any, RJSFSchema, any>;
68
+ export declare function updateTailUiSchema(uiSchema: UiSchema, updateObject: UpdateObject<any, any>): UiSchema<any, RJSFSchema, any>;
69
+ export declare function getNestedUiFieldsList(uiSchema: UiSchema): any[];
70
+ declare type BootstrapColumns = {
71
+ lg: number;
72
+ md: number;
73
+ sm: number;
74
+ xs: number;
75
+ };
76
+ export declare function getBootstrapCols(width: number): BootstrapColumns;
77
+ export declare function isDescendant(parent: HTMLElement | null, child: HTMLElement): boolean;
78
+ export declare function getKeyHandlerTargetId(target: string | undefined, context: any, formData?: any): string;
79
+ export declare function capitalizeFirstLetter(string: string): string;
80
+ export declare function decapitalizeFirstLetter(string: string): string;
81
+ export declare function stringifyKeyCombo(keyCombo?: string): string;
82
+ export declare function canAdd(props: any): any;
83
+ export declare function bsSizeToPixels(bsSize: keyof BootstrapColumns): 1200 | 992 | 768 | 576;
84
+ export declare function pixelsToBsSize(pixels: number): "" | "lg" | "md" | "sm" | "xs";
85
+ export declare function applyFunction(props: FieldProps): any;
86
+ export declare function getWindowScrolled(): number;
87
+ export declare function getScrollPositionForScrollIntoViewIfNeeded(elem: Element, topOffset?: number, bottomOffset?: number): number;
88
+ export declare function scrollIntoViewIfNeeded(elem: HTMLElement, topOffset?: number, bottomOffset?: number): void;
89
+ export declare function filter(properties: any[], filter: string[], filterType: string | undefined, getValue: (s: string) => any): any[];
90
+ export declare function updateSafelyWithJSONPath(obj: any, value: any, path: string, immutably: boolean, createNew: (obj: any, split: string) => any): any;
91
+ export declare function updateSafelyWithJSONPointer(obj: any, value: any, path: string, immutably?: boolean, createNew?: (obj: any, split: string, o?: any, _split?: string) => any): any;
92
+ export declare function injectButtons(uiSchema: any, buttons: any[], buttonsPath: string): any;
93
+ export declare function dictionarify(array: any[], getKey?: (item: any) => string, getValue?: (item: any) => any): any;
94
+ export declare function formatValue(props: FieldProps, _formatter?: any, parentProps?: any): any;
95
+ export declare const formatErrorMessage: (msg: string) => string;
96
+ export declare function checkRules(rules: any[], props: FieldProps, cache?: {
97
+ [key: string]: any;
98
+ }, prop?: keyof FieldProps): boolean | {
99
+ passes: boolean;
100
+ cache: {
101
+ [key: string]: any;
102
+ };
103
+ };
104
+ export declare function checkArrayRules(rules: any[], props: FieldProps, idx: number, cache?: {
105
+ [key: string]: any;
106
+ }, prop?: keyof FieldProps): boolean | {
107
+ passes: boolean;
108
+ cache: {
109
+ [key: string]: any;
110
+ };
111
+ };
112
+ export declare function bringRemoteFormData(formData: any, formContext: FormContext): any;
113
+ export declare function triggerParentComponent(eventName: string, e: React.SyntheticEvent, props: any): void;
114
+ export declare function parseSchemaFromFormDataPointer(schema: RJSFSchema, pointer: string): any;
115
+ export declare function parseUiSchemaFromFormDataPointer(uiSchema: any, pointer: string): any;
116
+ export declare function checkJSONPointer(obj: any, pointer: string): boolean;
117
+ export declare const JSONPointerToId: (fieldName: string) => string;
118
+ export declare const idSchemaIdToJSONPointer: (id: string) => string;
119
+ export declare function schemaJSONPointer(schema: RJSFSchema, JSONPointer: string): string | undefined;
120
+ export declare function uiSchemaJSONPointer(schema: RJSFSchema, JSONPointer: string): string | undefined;
121
+ export declare function updateFormDataWithJSONPointer(schemaProps: Pick<FieldProps, "formData" | "registry" | "schema">, value: any, path: string): any;
122
+ export declare const assignUUID: (item: any, immutably?: boolean) => any;
123
+ export declare const getUUID: (item: any) => number;
124
+ /**
125
+ * Return item UUID or the parent UUID
126
+ **/
127
+ export declare const getFieldUUID: (props: {
128
+ formData?: any;
129
+ formContext: FormContext;
130
+ }) => number | "root";
131
+ export declare function addLajiFormIds(_formData: any, tree: any, immutably?: boolean): [any, {
132
+ [id: string]: true;
133
+ }];
134
+ export declare function getAllLajiFormIdsDeeply(_formData: any, tree: any): {
135
+ [id: string]: true;
136
+ };
137
+ export declare function removeLajiFormIds(formData: any, tree: any): any;
138
+ export declare function findPointerForLajiFormId(tmpIdTree: any, formData: any, lajiFormId: any): string | undefined;
139
+ export declare function highlightElem(elem?: Element): void;
140
+ export declare function filteredErrors(errorSchema: any): any;
141
+ export declare function constructTranslations(translations: {
142
+ [word: string]: {
143
+ [lang: string]: string;
144
+ };
145
+ }): Translations;
146
+ export declare function getIdxWithOffset(idx: number, offsets?: Record<string, number>, totalOffset?: number): number;
147
+ export declare function getIdxWithoutOffset(idx: number, offsets?: Record<string, number>, totalOffset?: number): number;
148
+ /**
149
+ * The indices of the formData that a component receives doesn't match the actual root formData indices,
150
+ * if the data is sorted or has offsets. This returns the original index.
151
+ */
152
+ export declare function getFormDataIndex(idx: number, uiSchema: any): number;
153
+ /**
154
+ * Given an index pointing to actual index in root formData, returns the index with sorting & offset applied.
155
+ */
156
+ export declare function getReversedFormDataIndex(idx: number, uiSchema: any): number;
157
+ export declare function toJSONPointer(s: string): string;
158
+ export declare function getTitle(props: {
159
+ schema: RJSFSchema;
160
+ uiSchema: any;
161
+ name?: string;
162
+ }, idx?: number): any;
163
+ export declare const classNames: (...cs: any[]) => string;
164
+ export declare function translate(translations: ByLang, key: string, params?: {
165
+ [key: string]: string | undefined;
166
+ }): string;
167
+ export {};