@gnwebsoft/ui 4.0.23 → 4.0.26

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 (329) hide show
  1. package/dist/chunk-443ILX4Y.js +2535 -0
  2. package/dist/chunk-C55PJKEV.cjs +2624 -0
  3. package/dist/chunk-FMN47XRJ.cjs +72 -0
  4. package/dist/chunk-FYU2OIMD.js +15 -0
  5. package/dist/chunk-HDL5E7XD.js +523 -0
  6. package/dist/chunk-LUW7V5GI.cjs +15 -0
  7. package/dist/chunk-OOYORGC6.cjs +2535 -0
  8. package/dist/chunk-PW777IOX.js +140 -0
  9. package/dist/chunk-QYHJIPSZ.cjs +140 -0
  10. package/dist/chunk-R2U4YYZU.js +2624 -0
  11. package/dist/chunk-T5H5X3VR.js +72 -0
  12. package/dist/chunk-UZ2KNGOF.cjs +523 -0
  13. package/dist/core/api/ApiClient.d.ts +329 -0
  14. package/dist/core/api/ApiClient.d.ts.map +1 -0
  15. package/dist/core/api/CorrelationIdGenerator.d.ts +52 -0
  16. package/dist/core/api/CorrelationIdGenerator.d.ts.map +1 -0
  17. package/dist/core/api/Errors/ErrorNormalizer.d.ts +106 -0
  18. package/dist/core/api/Errors/ErrorNormalizer.d.ts.map +1 -0
  19. package/dist/core/api/Interceptors/InterceptorManager.d.ts +236 -0
  20. package/dist/core/api/Interceptors/InterceptorManager.d.ts.map +1 -0
  21. package/dist/core/api/Models/FilterModel.d.ts +22 -0
  22. package/dist/core/api/Models/FilterModel.d.ts.map +1 -0
  23. package/dist/core/api/Models/QueryParams.d.ts +13 -0
  24. package/dist/core/api/Models/QueryParams.d.ts.map +1 -0
  25. package/dist/core/api/Models/index.d.ts +3 -0
  26. package/dist/core/api/Models/index.d.ts.map +1 -0
  27. package/dist/core/api/RequestManager.d.ts +142 -0
  28. package/dist/core/api/RequestManager.d.ts.map +1 -0
  29. package/dist/core/api/Retry/RetryHandler.d.ts +100 -0
  30. package/dist/core/api/Retry/RetryHandler.d.ts.map +1 -0
  31. package/dist/core/api/Signals/SignalManager.d.ts +153 -0
  32. package/dist/core/api/Signals/SignalManager.d.ts.map +1 -0
  33. package/dist/core/api/Utils/ResponseParser.d.ts +105 -0
  34. package/dist/core/api/Utils/ResponseParser.d.ts.map +1 -0
  35. package/dist/core/api/Utils/UrlBuilder.d.ts +111 -0
  36. package/dist/core/api/Utils/UrlBuilder.d.ts.map +1 -0
  37. package/dist/core/api/createApiClient.d.ts +247 -0
  38. package/dist/core/api/createApiClient.d.ts.map +1 -0
  39. package/dist/core/api/index.d.ts +7 -0
  40. package/dist/core/api/index.d.ts.map +1 -0
  41. package/dist/core/api/types/ApiError.d.ts +17 -0
  42. package/dist/core/api/types/ApiError.d.ts.map +1 -0
  43. package/dist/core/api/types/ApiResponse.d.ts +76 -0
  44. package/dist/core/api/types/ApiResponse.d.ts.map +1 -0
  45. package/dist/core/api/types/CancelToken.d.ts +15 -0
  46. package/dist/core/api/types/CancelToken.d.ts.map +1 -0
  47. package/dist/core/api/types/ErrorInterceptor.d.ts +3 -0
  48. package/dist/core/api/types/ErrorInterceptor.d.ts.map +1 -0
  49. package/dist/core/api/types/ErrorResponseData.d.ts +68 -0
  50. package/dist/core/api/types/ErrorResponseData.d.ts.map +1 -0
  51. package/dist/core/api/types/RequestConfig.d.ts +21 -0
  52. package/dist/core/api/types/RequestConfig.d.ts.map +1 -0
  53. package/dist/core/api/types/RequestInterceptor.d.ts +3 -0
  54. package/dist/core/api/types/RequestInterceptor.d.ts.map +1 -0
  55. package/dist/core/api/types/ResponseInterceptor.d.ts +3 -0
  56. package/dist/core/api/types/ResponseInterceptor.d.ts.map +1 -0
  57. package/dist/core/api/types/ValidationErrors.d.ts +7 -0
  58. package/dist/core/api/types/ValidationErrors.d.ts.map +1 -0
  59. package/dist/core/api/types/index.d.ts +10 -0
  60. package/dist/core/api/types/index.d.ts.map +1 -0
  61. package/dist/core/api/useValidationErrors.d.ts +11 -0
  62. package/dist/core/api/useValidationErrors.d.ts.map +1 -0
  63. package/dist/core/components/AuthorizedView/AuthorizedView.d.ts +7 -0
  64. package/dist/core/components/AuthorizedView/AuthorizedView.d.ts.map +1 -0
  65. package/dist/core/components/AuthorizedView/index.d.ts +2 -0
  66. package/dist/core/components/AuthorizedView/index.d.ts.map +1 -0
  67. package/dist/core/components/CancelButton/CancelButton.d.ts +4 -0
  68. package/dist/core/components/CancelButton/CancelButton.d.ts.map +1 -0
  69. package/dist/core/components/CancelButton/index.d.ts +2 -0
  70. package/dist/core/components/CancelButton/index.d.ts.map +1 -0
  71. package/dist/core/components/ClearButton/ClearButton.d.ts +63 -0
  72. package/dist/core/components/ClearButton/ClearButton.d.ts.map +1 -0
  73. package/dist/core/components/ClearButton/index.d.ts +2 -0
  74. package/dist/core/components/ClearButton/index.d.ts.map +1 -0
  75. package/dist/core/components/Containers/SimpleContainer.d.ts +10 -0
  76. package/dist/core/components/Containers/SimpleContainer.d.ts.map +1 -0
  77. package/dist/core/components/Containers/index.d.ts +2 -0
  78. package/dist/core/components/Containers/index.d.ts.map +1 -0
  79. package/dist/core/components/FilterButton/FilterButton.d.ts +86 -0
  80. package/dist/core/components/FilterButton/FilterButton.d.ts.map +1 -0
  81. package/dist/core/components/FilterButton/index.d.ts +2 -0
  82. package/dist/core/components/FilterButton/index.d.ts.map +1 -0
  83. package/dist/core/components/FilterDisplay/FilterChip.d.ts +9 -0
  84. package/dist/core/components/FilterDisplay/FilterChip.d.ts.map +1 -0
  85. package/dist/core/components/FilterDisplay/FilterDisplay.d.ts +10 -0
  86. package/dist/core/components/FilterDisplay/FilterDisplay.d.ts.map +1 -0
  87. package/dist/core/components/FilterDisplay/index.d.ts +3 -0
  88. package/dist/core/components/FilterDisplay/index.d.ts.map +1 -0
  89. package/dist/core/components/FilterWrapper/FilterWrapper.d.ts +99 -0
  90. package/dist/core/components/FilterWrapper/FilterWrapper.d.ts.map +1 -0
  91. package/dist/core/components/FilterWrapper/index.d.ts +2 -0
  92. package/dist/core/components/FilterWrapper/index.d.ts.map +1 -0
  93. package/dist/core/components/Footer/Footer.d.ts +3 -0
  94. package/dist/core/components/Footer/Footer.d.ts.map +1 -0
  95. package/dist/core/components/Footer/index.d.ts +2 -0
  96. package/dist/core/components/Footer/index.d.ts.map +1 -0
  97. package/dist/core/components/LabelText/LabelText.d.ts +103 -0
  98. package/dist/core/components/LabelText/LabelText.d.ts.map +1 -0
  99. package/dist/core/components/LabelText/index.d.ts +2 -0
  100. package/dist/core/components/LabelText/index.d.ts.map +1 -0
  101. package/dist/core/components/RenderIf/RenderIf.d.ts +7 -0
  102. package/dist/core/components/RenderIf/RenderIf.d.ts.map +1 -0
  103. package/dist/core/components/RenderIf/index.d.ts +2 -0
  104. package/dist/core/components/RenderIf/index.d.ts.map +1 -0
  105. package/dist/core/components/SectionBox/SectionBox.d.ts +15 -0
  106. package/dist/core/components/SectionBox/SectionBox.d.ts.map +1 -0
  107. package/dist/core/components/SectionBox/index.d.ts +2 -0
  108. package/dist/core/components/SectionBox/index.d.ts.map +1 -0
  109. package/dist/core/components/SimpleTabs/SimpleTabs.d.ts +17 -0
  110. package/dist/core/components/SimpleTabs/SimpleTabs.d.ts.map +1 -0
  111. package/dist/core/components/SimpleTabs/index.d.ts +2 -0
  112. package/dist/core/components/SimpleTabs/index.d.ts.map +1 -0
  113. package/dist/core/components/SubmitButton/SubmitButton.d.ts +6 -0
  114. package/dist/core/components/SubmitButton/SubmitButton.d.ts.map +1 -0
  115. package/dist/core/components/SubmitButton/index.d.ts +2 -0
  116. package/dist/core/components/SubmitButton/index.d.ts.map +1 -0
  117. package/dist/core/components/WithRef/WithRef.d.ts +14 -0
  118. package/dist/core/components/WithRef/WithRef.d.ts.map +1 -0
  119. package/dist/core/components/WithRef/index.d.ts +2 -0
  120. package/dist/core/components/WithRef/index.d.ts.map +1 -0
  121. package/dist/core/components/index.d.ts +15 -0
  122. package/dist/core/components/index.d.ts.map +1 -0
  123. package/dist/core/config.d.ts +24 -0
  124. package/dist/core/config.d.ts.map +1 -0
  125. package/dist/core/hooks/index.d.ts +3 -0
  126. package/dist/core/hooks/index.d.ts.map +1 -0
  127. package/dist/core/hooks/makeQuery.d.ts +12 -0
  128. package/dist/core/hooks/makeQuery.d.ts.map +1 -0
  129. package/dist/core/hooks/useApiClient.d.ts +3 -0
  130. package/dist/core/hooks/useApiClient.d.ts.map +1 -0
  131. package/dist/core/hooks/useFormErrorHandler.d.ts +35 -0
  132. package/dist/core/hooks/useFormErrorHandler.d.ts.map +1 -0
  133. package/dist/core/hooks/useListView.d.ts +20 -0
  134. package/dist/core/hooks/useListView.d.ts.map +1 -0
  135. package/dist/core/index.cjs +123 -0
  136. package/dist/core/index.d.ts +8 -0
  137. package/dist/core/index.d.ts.map +1 -0
  138. package/dist/core/index.js +123 -0
  139. package/dist/core/models.d.ts +5 -0
  140. package/dist/core/models.d.ts.map +1 -0
  141. package/dist/core/types/FilterLabel.d.ts +6 -0
  142. package/dist/core/types/FilterLabel.d.ts.map +1 -0
  143. package/dist/core/types/ListModels.d.ts +18 -0
  144. package/dist/core/types/ListModels.d.ts.map +1 -0
  145. package/dist/core/types/OptionsRequest.d.ts +4 -0
  146. package/dist/core/types/OptionsRequest.d.ts.map +1 -0
  147. package/dist/core/types/index.d.ts +4 -0
  148. package/dist/core/types/index.d.ts.map +1 -0
  149. package/dist/core/utils/CacheUtility/index.d.ts +15 -0
  150. package/dist/core/utils/CacheUtility/index.d.ts.map +1 -0
  151. package/dist/core/utils/calculateFilterCount.d.ts +2 -0
  152. package/dist/core/utils/calculateFilterCount.d.ts.map +1 -0
  153. package/dist/core/utils/format-time.d.ts +79 -0
  154. package/dist/core/utils/format-time.d.ts.map +1 -0
  155. package/dist/core/utils/getEmptyObject.d.ts +7 -0
  156. package/dist/core/utils/getEmptyObject.d.ts.map +1 -0
  157. package/dist/core/utils/index.d.ts +7 -0
  158. package/dist/core/utils/index.d.ts.map +1 -0
  159. package/dist/core/utils/useStableRowCount.d.ts +9 -0
  160. package/dist/core/utils/useStableRowCount.d.ts.map +1 -0
  161. package/dist/core/utils/watch/core.d.ts +22 -0
  162. package/dist/core/utils/watch/core.d.ts.map +1 -0
  163. package/dist/core/utils/watch/index.d.ts +49 -0
  164. package/dist/core/utils/watch/index.d.ts.map +1 -0
  165. package/dist/core/utils/watch/utilities.d.ts +34 -0
  166. package/dist/core/utils/watch/utilities.d.ts.map +1 -0
  167. package/dist/hooks/index.cjs +11 -0
  168. package/dist/hooks/index.d.ts +3 -0
  169. package/dist/hooks/index.d.ts.map +1 -0
  170. package/dist/hooks/index.js +11 -0
  171. package/dist/hooks/useTransform/enhanced.d.ts +133 -0
  172. package/dist/hooks/useTransform/enhanced.d.ts.map +1 -0
  173. package/dist/hooks/useTransform/index.d.ts +93 -0
  174. package/dist/hooks/useTransform/index.d.ts.map +1 -0
  175. package/dist/index.cjs +269 -0
  176. package/dist/index.d.ts +6 -0
  177. package/dist/index.d.ts.map +1 -0
  178. package/dist/index.js +269 -0
  179. package/dist/types/AsyncMultiSelectPayload.d.ts +5 -0
  180. package/dist/types/AsyncMultiSelectPayload.d.ts.map +1 -0
  181. package/dist/types/AsyncSelectPayload.d.ts +5 -0
  182. package/dist/types/AsyncSelectPayload.d.ts.map +1 -0
  183. package/dist/types/OperationResponse.d.ts +5 -0
  184. package/dist/types/OperationResponse.d.ts.map +1 -0
  185. package/dist/types/OptionItem.d.ts +66 -0
  186. package/dist/types/OptionItem.d.ts.map +1 -0
  187. package/dist/types/api.d.ts +127 -0
  188. package/dist/types/api.d.ts.map +1 -0
  189. package/dist/types/events.d.ts +74 -0
  190. package/dist/types/events.d.ts.map +1 -0
  191. package/dist/types/index.cjs +31 -0
  192. package/dist/types/index.d.ts +14 -0
  193. package/dist/types/index.d.ts.map +1 -0
  194. package/dist/types/index.js +31 -0
  195. package/dist/types/utilities.d.ts +458 -0
  196. package/dist/types/utilities.d.ts.map +1 -0
  197. package/dist/utils/flattenObjectKeys.d.ts +63 -0
  198. package/dist/utils/flattenObjectKeys.d.ts.map +1 -0
  199. package/dist/utils/getTimezone.d.ts +4 -0
  200. package/dist/utils/getTimezone.d.ts.map +1 -0
  201. package/dist/utils/handleServerErrors.d.ts +70 -0
  202. package/dist/utils/handleServerErrors.d.ts.map +1 -0
  203. package/dist/utils/index.cjs +55 -0
  204. package/dist/utils/index.d.ts +9 -0
  205. package/dist/utils/index.d.ts.map +1 -0
  206. package/dist/utils/index.js +55 -0
  207. package/dist/utils/propertyExists.d.ts +35 -0
  208. package/dist/utils/propertyExists.d.ts.map +1 -0
  209. package/dist/utils/readValueAsDate.d.ts +4 -0
  210. package/dist/utils/readValueAsDate.d.ts.map +1 -0
  211. package/dist/utils/removeLeadingTrailingSlashes.d.ts +2 -0
  212. package/dist/utils/removeLeadingTrailingSlashes.d.ts.map +1 -0
  213. package/dist/utils/schemaTools.d.ts +209 -0
  214. package/dist/utils/schemaTools.d.ts.map +1 -0
  215. package/dist/utils/typeGuards.d.ts +316 -0
  216. package/dist/utils/typeGuards.d.ts.map +1 -0
  217. package/dist/utils/watch/core.d.ts +22 -0
  218. package/dist/utils/watch/core.d.ts.map +1 -0
  219. package/dist/utils/watch/index.d.ts +49 -0
  220. package/dist/utils/watch/index.d.ts.map +1 -0
  221. package/dist/utils/watch/utilities.d.ts +34 -0
  222. package/dist/utils/watch/utilities.d.ts.map +1 -0
  223. package/dist/wrappers/AsyncMultiSelect/AsyncMultiSelect.d.ts +9 -0
  224. package/dist/wrappers/AsyncMultiSelect/AsyncMultiSelect.d.ts.map +1 -0
  225. package/dist/wrappers/AsyncMultiSelect/index.d.ts +3 -0
  226. package/dist/wrappers/AsyncMultiSelect/index.d.ts.map +1 -0
  227. package/dist/wrappers/AsyncMultiSelect/types.d.ts +19 -0
  228. package/dist/wrappers/AsyncMultiSelect/types.d.ts.map +1 -0
  229. package/dist/wrappers/AsyncSelect/index.d.ts +9 -0
  230. package/dist/wrappers/AsyncSelect/index.d.ts.map +1 -0
  231. package/dist/wrappers/AsyncSelect/types.d.ts +20 -0
  232. package/dist/wrappers/AsyncSelect/types.d.ts.map +1 -0
  233. package/dist/wrappers/Button.d.ts +49 -0
  234. package/dist/wrappers/Button.d.ts.map +1 -0
  235. package/dist/wrappers/CheckboxElement/CheckboxElement.d.ts +102 -0
  236. package/dist/wrappers/CheckboxElement/CheckboxElement.d.ts.map +1 -0
  237. package/dist/wrappers/CheckboxElement/index.d.ts +3 -0
  238. package/dist/wrappers/CheckboxElement/index.d.ts.map +1 -0
  239. package/dist/wrappers/CheckboxElement/types.d.ts +76 -0
  240. package/dist/wrappers/CheckboxElement/types.d.ts.map +1 -0
  241. package/dist/wrappers/CheckboxGroup/CheckboxGroup.d.ts +98 -0
  242. package/dist/wrappers/CheckboxGroup/CheckboxGroup.d.ts.map +1 -0
  243. package/dist/wrappers/CheckboxGroup/EnhancedCheckboxGroup.d.ts +49 -0
  244. package/dist/wrappers/CheckboxGroup/EnhancedCheckboxGroup.d.ts.map +1 -0
  245. package/dist/wrappers/CheckboxGroup/enhanced-types.d.ts +171 -0
  246. package/dist/wrappers/CheckboxGroup/enhanced-types.d.ts.map +1 -0
  247. package/dist/wrappers/CheckboxGroup/index.d.ts +3 -0
  248. package/dist/wrappers/CheckboxGroup/index.d.ts.map +1 -0
  249. package/dist/wrappers/CheckboxGroup/types.d.ts +106 -0
  250. package/dist/wrappers/CheckboxGroup/types.d.ts.map +1 -0
  251. package/dist/wrappers/DatePickerElement/DatePickerElement.d.ts +131 -0
  252. package/dist/wrappers/DatePickerElement/DatePickerElement.d.ts.map +1 -0
  253. package/dist/wrappers/DatePickerElement/DatePickerElementCore.d.ts +57 -0
  254. package/dist/wrappers/DatePickerElement/DatePickerElementCore.d.ts.map +1 -0
  255. package/dist/wrappers/DatePickerElement/hooks/index.d.ts +24 -0
  256. package/dist/wrappers/DatePickerElement/hooks/index.d.ts.map +1 -0
  257. package/dist/wrappers/DatePickerElement/hooks/useDatePickerStyles.d.ts +63 -0
  258. package/dist/wrappers/DatePickerElement/hooks/useDatePickerStyles.d.ts.map +1 -0
  259. package/dist/wrappers/DatePickerElement/hooks/useDatePickerValidation.d.ts +79 -0
  260. package/dist/wrappers/DatePickerElement/hooks/useDatePickerValidation.d.ts.map +1 -0
  261. package/dist/wrappers/DatePickerElement/hooks/useDatePickerValue.d.ts +73 -0
  262. package/dist/wrappers/DatePickerElement/hooks/useDatePickerValue.d.ts.map +1 -0
  263. package/dist/wrappers/DatePickerElement/index.d.ts +47 -0
  264. package/dist/wrappers/DatePickerElement/index.d.ts.map +1 -0
  265. package/dist/wrappers/DatePickerElement/types.d.ts +183 -0
  266. package/dist/wrappers/DatePickerElement/types.d.ts.map +1 -0
  267. package/dist/wrappers/DatePickerElement/utils.d.ts +89 -0
  268. package/dist/wrappers/DatePickerElement/utils.d.ts.map +1 -0
  269. package/dist/wrappers/DateTimePickerElement/index.d.ts +1 -0
  270. package/dist/wrappers/DateTimePickerElement/index.d.ts.map +1 -0
  271. package/dist/wrappers/DateTimePickerElement/types.d.ts +1 -0
  272. package/dist/wrappers/DateTimePickerElement/types.d.ts.map +1 -0
  273. package/dist/wrappers/Field/index.d.ts +50 -0
  274. package/dist/wrappers/Field/index.d.ts.map +1 -0
  275. package/dist/wrappers/FileUploadElement/FileUploadElement.d.ts +64 -0
  276. package/dist/wrappers/FileUploadElement/FileUploadElement.d.ts.map +1 -0
  277. package/dist/wrappers/FileUploadElement/index.d.ts +3 -0
  278. package/dist/wrappers/FileUploadElement/index.d.ts.map +1 -0
  279. package/dist/wrappers/NumberFieldElement/NumberFieldElement.d.ts +177 -0
  280. package/dist/wrappers/NumberFieldElement/NumberFieldElement.d.ts.map +1 -0
  281. package/dist/wrappers/NumberFieldElement/index.d.ts +3 -0
  282. package/dist/wrappers/NumberFieldElement/index.d.ts.map +1 -0
  283. package/dist/wrappers/OTPInputElement/HelperText.d.ts +8 -0
  284. package/dist/wrappers/OTPInputElement/HelperText.d.ts.map +1 -0
  285. package/dist/wrappers/OTPInputElement/OTPInputElement.d.ts +32 -0
  286. package/dist/wrappers/OTPInputElement/OTPInputElement.d.ts.map +1 -0
  287. package/dist/wrappers/OTPInputElement/index.d.ts +3 -0
  288. package/dist/wrappers/OTPInputElement/index.d.ts.map +1 -0
  289. package/dist/wrappers/PasswordElement/PasswordElement.d.ts +104 -0
  290. package/dist/wrappers/PasswordElement/PasswordElement.d.ts.map +1 -0
  291. package/dist/wrappers/PasswordElement/index.d.ts +2 -0
  292. package/dist/wrappers/PasswordElement/index.d.ts.map +1 -0
  293. package/dist/wrappers/RadioButtonGroup/RadioButtonGroup.d.ts +38 -0
  294. package/dist/wrappers/RadioButtonGroup/RadioButtonGroup.d.ts.map +1 -0
  295. package/dist/wrappers/RadioButtonGroup/index.d.ts +2 -0
  296. package/dist/wrappers/RadioButtonGroup/index.d.ts.map +1 -0
  297. package/dist/wrappers/SelectCascadeElement/SelectCascadeElement.d.ts +22 -0
  298. package/dist/wrappers/SelectCascadeElement/SelectCascadeElement.d.ts.map +1 -0
  299. package/dist/wrappers/SelectCascadeElement/index.d.ts +2 -0
  300. package/dist/wrappers/SelectCascadeElement/index.d.ts.map +1 -0
  301. package/dist/wrappers/SelectElement/SelectElement.d.ts +93 -0
  302. package/dist/wrappers/SelectElement/SelectElement.d.ts.map +1 -0
  303. package/dist/wrappers/SelectElement/index.d.ts +2 -0
  304. package/dist/wrappers/SelectElement/index.d.ts.map +1 -0
  305. package/dist/wrappers/SelectMultiElement/SelectMultiElement.d.ts +21 -0
  306. package/dist/wrappers/SelectMultiElement/SelectMultiElement.d.ts.map +1 -0
  307. package/dist/wrappers/SelectMultiElement/index.d.ts +2 -0
  308. package/dist/wrappers/SelectMultiElement/index.d.ts.map +1 -0
  309. package/dist/wrappers/SliderElement/SliderElement.d.ts +69 -0
  310. package/dist/wrappers/SliderElement/SliderElement.d.ts.map +1 -0
  311. package/dist/wrappers/SliderElement/index.d.ts +3 -0
  312. package/dist/wrappers/SliderElement/index.d.ts.map +1 -0
  313. package/dist/wrappers/TextFieldElement/TextFieldElement.d.ts +179 -0
  314. package/dist/wrappers/TextFieldElement/TextFieldElement.d.ts.map +1 -0
  315. package/dist/wrappers/TextFieldElement/index.d.ts +3 -0
  316. package/dist/wrappers/TextFieldElement/index.d.ts.map +1 -0
  317. package/dist/wrappers/TimePickerElement/TimePickerElement.d.ts +30 -0
  318. package/dist/wrappers/TimePickerElement/TimePickerElement.d.ts.map +1 -0
  319. package/dist/wrappers/TimePickerElement/index.d.ts +2 -0
  320. package/dist/wrappers/TimePickerElement/index.d.ts.map +1 -0
  321. package/dist/wrappers/index.cjs +63 -0
  322. package/dist/wrappers/index.d.ts +17 -0
  323. package/dist/wrappers/index.d.ts.map +1 -0
  324. package/dist/wrappers/index.js +63 -0
  325. package/dist/wrappers/types/common.d.ts +87 -0
  326. package/dist/wrappers/types/common.d.ts.map +1 -0
  327. package/dist/wrappers/types/index.d.ts +8 -0
  328. package/dist/wrappers/types/index.d.ts.map +1 -0
  329. package/package.json +1 -1
@@ -0,0 +1,140 @@
1
+ // src/hooks/useTransform/index.ts
2
+ function useTransform(options) {
3
+ const value = typeof options.transform?.input === "function" ? options.transform.input(options.value) : options.value;
4
+ const onChange = (eventOrValue, value2) => {
5
+ if (typeof options.transform?.output === "function") {
6
+ options.onChange(options.transform.output(eventOrValue, value2));
7
+ } else {
8
+ options.onChange(eventOrValue);
9
+ }
10
+ };
11
+ return {
12
+ value,
13
+ onChange
14
+ };
15
+ }
16
+
17
+ // src/hooks/useTransform/enhanced.ts
18
+ import { useCallback, useMemo } from "react";
19
+ var transformFactories = {
20
+ number: () => ({
21
+ input: (value) => {
22
+ if (value == null) return "";
23
+ return String(value);
24
+ },
25
+ output: (eventOrValue, _value) => {
26
+ let rawValue;
27
+ if (typeof eventOrValue === "object" && eventOrValue !== null && "target" in eventOrValue && typeof eventOrValue.target === "object" && eventOrValue.target !== null && "value" in eventOrValue.target) {
28
+ rawValue = String(eventOrValue.target.value);
29
+ } else {
30
+ rawValue = String(eventOrValue);
31
+ }
32
+ if (rawValue === "") return null;
33
+ const numValue = Number(rawValue);
34
+ return isNaN(numValue) ? null : numValue;
35
+ }
36
+ }),
37
+ text: () => ({
38
+ input: (value) => {
39
+ return value ?? "";
40
+ },
41
+ output: (eventOrValue, _value) => {
42
+ if (typeof eventOrValue === "object" && eventOrValue !== null && "target" in eventOrValue && typeof eventOrValue.target === "object" && eventOrValue.target !== null && "value" in eventOrValue.target) {
43
+ return eventOrValue.target.value;
44
+ }
45
+ return eventOrValue;
46
+ }
47
+ }),
48
+ select: () => ({
49
+ input: (value) => {
50
+ return value ?? "";
51
+ },
52
+ output: (eventOrValue, value) => {
53
+ if (value !== void 0) {
54
+ return value;
55
+ }
56
+ if (typeof eventOrValue === "object" && eventOrValue !== null && "target" in eventOrValue && typeof eventOrValue.target === "object" && eventOrValue.target !== null && "value" in eventOrValue.target) {
57
+ return eventOrValue.target.value;
58
+ }
59
+ return eventOrValue;
60
+ }
61
+ })
62
+ };
63
+ function getBuiltInTransform(fieldType) {
64
+ switch (fieldType) {
65
+ case "number":
66
+ return transformFactories.number();
67
+ case "text":
68
+ return transformFactories.text();
69
+ case "select":
70
+ case "radio":
71
+ return transformFactories.select();
72
+ default:
73
+ return void 0;
74
+ }
75
+ }
76
+ function useEnhancedTransform(options) {
77
+ const {
78
+ value: fieldValue,
79
+ onChange: fieldOnChange,
80
+ transform,
81
+ fieldType,
82
+ defaultValue,
83
+ enableWarnings
84
+ } = options;
85
+ const builtInTransform = useMemo(
86
+ () => fieldType ? getBuiltInTransform(fieldType) : void 0,
87
+ [fieldType]
88
+ );
89
+ if (enableWarnings && process.env.NODE_ENV === "development") {
90
+ if (transform && fieldType) {
91
+ console.warn(
92
+ "useEnhancedTransform: Both custom transform and fieldType provided. Custom transform will take precedence."
93
+ );
94
+ }
95
+ }
96
+ const transformedValue = useMemo(() => {
97
+ const inputTransform = transform?.input || builtInTransform?.input;
98
+ if (typeof inputTransform === "function") {
99
+ return inputTransform(fieldValue);
100
+ }
101
+ if (fieldValue == null && defaultValue !== void 0) {
102
+ return defaultValue;
103
+ }
104
+ return fieldValue;
105
+ }, [fieldValue, transform?.input, builtInTransform?.input, defaultValue]);
106
+ const enhancedOnChange = useCallback(
107
+ (eventOrValue, value) => {
108
+ const outputTransform = transform?.output || builtInTransform?.output;
109
+ if (typeof outputTransform === "function") {
110
+ try {
111
+ const transformedValue2 = outputTransform(eventOrValue, value);
112
+ fieldOnChange(transformedValue2);
113
+ } catch (error) {
114
+ if (enableWarnings && process.env.NODE_ENV === "development") {
115
+ console.error("useEnhancedTransform: Error in output transformation:", error);
116
+ }
117
+ fieldOnChange(
118
+ value !== void 0 ? value : eventOrValue
119
+ );
120
+ }
121
+ } else {
122
+ fieldOnChange(
123
+ value !== void 0 ? value : eventOrValue
124
+ );
125
+ }
126
+ },
127
+ [fieldOnChange, transform?.output, builtInTransform?.output, enableWarnings]
128
+ );
129
+ return {
130
+ value: transformedValue,
131
+ onChange: enhancedOnChange
132
+ };
133
+ }
134
+
135
+ export {
136
+ useTransform,
137
+ transformFactories,
138
+ useEnhancedTransform
139
+ };
140
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2hvb2tzL3VzZVRyYW5zZm9ybS9pbmRleC50cyIsICIuLi9zcmMvaG9va3MvdXNlVHJhbnNmb3JtL2VuaGFuY2VkLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgdHlwZSB7XG4gIEZpZWxkUGF0aCxcbiAgRmllbGRWYWx1ZXMsXG4gIFBhdGhWYWx1ZSxcbiAgVXNlQ29udHJvbGxlclJldHVybixcbn0gZnJvbSBcInJlYWN0LWhvb2stZm9ybVwiO1xuXG5pbXBvcnQgdHlwZSB7IEV2ZW50T3JWYWx1ZSB9IGZyb20gXCIuLi8uLi90eXBlcy9ldmVudHNcIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciB0aGUgdXNlVHJhbnNmb3JtIGhvb2suXG4gKlxuICogQHRlbXBsYXRlIFRGaWVsZFZhbHVlcyAtIFRoZSBmb3JtIHZhbHVlcyB0eXBlXG4gKiBAdGVtcGxhdGUgVE5hbWUgLSBUaGUgZmllbGQgbmFtZSB0eXBlXG4gKiBAdGVtcGxhdGUgVFZhbHVlIC0gVGhlIHRyYW5zZm9ybWVkIHZhbHVlIHR5cGVcbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVXNlVHJhbnNmb3JtT3B0aW9uczxcbiAgVEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMgPSBGaWVsZFZhbHVlcyxcbiAgVE5hbWUgZXh0ZW5kcyBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPiA9IEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+LFxuICBUVmFsdWUgPSB1bmtub3duLFxuPiB7XG4gIC8qKiBUaGUgY3VycmVudCBmaWVsZCB2YWx1ZSBmcm9tIHJlYWN0LWhvb2stZm9ybSAqL1xuICB2YWx1ZTogVXNlQ29udHJvbGxlclJldHVybjxURmllbGRWYWx1ZXMsIFROYW1lPltcImZpZWxkXCJdW1widmFsdWVcIl07XG4gIC8qKiBUaGUgb25DaGFuZ2UgaGFuZGxlciBmcm9tIHJlYWN0LWhvb2stZm9ybSAqL1xuICBvbkNoYW5nZTogVXNlQ29udHJvbGxlclJldHVybjxURmllbGRWYWx1ZXMsIFROYW1lPltcImZpZWxkXCJdW1wib25DaGFuZ2VcIl07XG4gIC8qKiBPcHRpb25hbCB0cmFuc2Zvcm1hdGlvbiBmdW5jdGlvbnMgKi9cbiAgdHJhbnNmb3JtPzoge1xuICAgIC8qKlxuICAgICAqIFRyYW5zZm9ybSB0aGUgZmllbGQgdmFsdWUgZm9yIGRpc3BsYXkgaW4gdGhlIGlucHV0XG4gICAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGN1cnJlbnQgZmllbGQgdmFsdWVcbiAgICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUgdG8gZGlzcGxheVxuICAgICAqL1xuICAgIGlucHV0PzogKHZhbHVlOiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4pID0+IFRWYWx1ZTtcbiAgICAvKipcbiAgICAgKiBUcmFuc2Zvcm0gdGhlIGlucHV0IGV2ZW50IGJhY2sgdG8gdGhlIGZpZWxkIHZhbHVlXG4gICAgICogQHBhcmFtIGV2ZW50IC0gVGhlIGlucHV0IGV2ZW50IHBhcmFtZXRlcnNcbiAgICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUgdG8gc3RvcmUgaW4gdGhlIGZvcm1cbiAgICAgKi9cbiAgICBvdXRwdXQ/OiAoXG4gICAgICBldmVudE9yVmFsdWU6IEV2ZW50T3JWYWx1ZTxQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4+LFxuICAgICAgdmFsdWU/OiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT5cbiAgICApID0+IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPjtcbiAgfTtcbn1cblxuLyoqXG4gKiBSZXR1cm4gdHlwZSBmb3IgdGhlIHVzZVRyYW5zZm9ybSBob29rLlxuICpcbiAqIEB0ZW1wbGF0ZSBURmllbGRWYWx1ZXMgLSBUaGUgZm9ybSB2YWx1ZXMgdHlwZVxuICogQHRlbXBsYXRlIFROYW1lIC0gVGhlIGZpZWxkIG5hbWUgdHlwZVxuICogQHRlbXBsYXRlIFRWYWx1ZSAtIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZSB0eXBlXG4gKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFVzZVRyYW5zZm9ybVJldHVybjxcbiAgVEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMgPSBGaWVsZFZhbHVlcyxcbiAgVE5hbWUgZXh0ZW5kcyBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPiA9IEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+LFxuICBUVmFsdWUgPSB1bmtub3duLFxuPiB7XG4gIC8qKiBUaGUgdHJhbnNmb3JtZWQgdmFsdWUgdG8gZGlzcGxheSBpbiB0aGUgaW5wdXQgKi9cbiAgdmFsdWU6IFRWYWx1ZTtcbiAgLyoqIFRoZSBlbmhhbmNlZCBvbkNoYW5nZSBoYW5kbGVyIHdpdGggdHJhbnNmb3JtYXRpb24gYXBwbGllZCAqL1xuICBvbkNoYW5nZTogVXNlQ29udHJvbGxlclJldHVybjxURmllbGRWYWx1ZXMsIFROYW1lPltcImZpZWxkXCJdW1wib25DaGFuZ2VcIl07XG59XG5cbi8qKlxuICogQSBob29rIGZvciB0cmFuc2Zvcm1pbmcgZm9ybSBmaWVsZCB2YWx1ZXMgYmV0d2VlbiBkaXNwbGF5IGFuZCBzdG9yYWdlIGZvcm1hdHMuXG4gKlxuICogVGhpcyBob29rIHByb3ZpZGVzIGEgd2F5IHRvIHRyYW5zZm9ybSB2YWx1ZXMgYXMgdGhleSBmbG93IGJldHdlZW4gdGhlIGZvcm0gZmllbGRcbiAqIGFuZCB0aGUgZGlzcGxheSBjb21wb25lbnQuIEl0J3MgcGFydGljdWxhcmx5IHVzZWZ1bCBmb3IgZm9ybWF0dGluZyBkYXRhIGZvciBkaXNwbGF5XG4gKiAobGlrZSBkYXRlcywgbnVtYmVycywgb3IgY29tcGxleCBvYmplY3RzKSB3aGlsZSBtYWludGFpbmluZyBhIGRpZmZlcmVudCBpbnRlcm5hbFxuICogcmVwcmVzZW50YXRpb24gaW4gdGhlIGZvcm0gc3RhdGUuXG4gKlxuICogQGV4YW1wbGVcbiAqIFRyYW5zZm9ybSBhIGRhdGUgZm9yIGRpc3BsYXk6XG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgdmFsdWUsIG9uQ2hhbmdlIH0gPSB1c2VUcmFuc2Zvcm0oe1xuICogICB2YWx1ZTogZmllbGQudmFsdWUsXG4gKiAgIG9uQ2hhbmdlOiBmaWVsZC5vbkNoYW5nZSxcbiAqICAgdHJhbnNmb3JtOiB7XG4gKiAgICAgaW5wdXQ6IChkYXRlKSA9PiBkYXRlID8gZm9ybWF0KGRhdGUsICd5eXl5LU1NLWRkJykgOiAnJyxcbiAqICAgICBvdXRwdXQ6IChldmVudCkgPT4gbmV3IERhdGUoZXZlbnQudGFyZ2V0LnZhbHVlKVxuICogICB9XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBUcmFuc2Zvcm0gbnVtYmVycyB3aXRoIGZvcm1hdHRpbmc6XG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgdmFsdWUsIG9uQ2hhbmdlIH0gPSB1c2VUcmFuc2Zvcm0oe1xuICogICB2YWx1ZTogZmllbGQudmFsdWUsXG4gKiAgIG9uQ2hhbmdlOiBmaWVsZC5vbkNoYW5nZSxcbiAqICAgdHJhbnNmb3JtOiB7XG4gKiAgICAgaW5wdXQ6IChudW0pID0+IG51bSA/IG51bS50b0xvY2FsZVN0cmluZygpIDogJycsXG4gKiAgICAgb3V0cHV0OiAoZXZlbnQpID0+IHBhcnNlRmxvYXQoZXZlbnQudGFyZ2V0LnZhbHVlLnJlcGxhY2UoLywvZywgJycpKVxuICogICB9XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEB0ZW1wbGF0ZSBURmllbGRWYWx1ZXMgLSBUaGUgZm9ybSB2YWx1ZXMgdHlwZVxuICogQHRlbXBsYXRlIFROYW1lIC0gVGhlIGZpZWxkIG5hbWUgdHlwZVxuICogQHRlbXBsYXRlIFRWYWx1ZSAtIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZSB0eXBlXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBDb25maWd1cmF0aW9uIG9wdGlvbnMgaW5jbHVkaW5nIHZhbHVlLCBvbkNoYW5nZSwgYW5kIHRyYW5zZm9ybSBmdW5jdGlvbnNcbiAqIEByZXR1cm5zIE9iamVjdCB3aXRoIHRyYW5zZm9ybWVkIHZhbHVlIGFuZCBlbmhhbmNlZCBvbkNoYW5nZSBoYW5kbGVyXG4gKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlVHJhbnNmb3JtPFxuICBURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcyA9IEZpZWxkVmFsdWVzLFxuICBUTmFtZSBleHRlbmRzIEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+ID0gRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4sXG4gIFRWYWx1ZSA9IHVua25vd24sXG4+KFxuICBvcHRpb25zOiBVc2VUcmFuc2Zvcm1PcHRpb25zPFRGaWVsZFZhbHVlcywgVE5hbWUsIFRWYWx1ZT5cbik6IFVzZVRyYW5zZm9ybVJldHVybjxURmllbGRWYWx1ZXMsIFROYW1lLCBUVmFsdWU+IHtcbiAgY29uc3QgdmFsdWUgPVxuICAgIHR5cGVvZiBvcHRpb25zLnRyYW5zZm9ybT8uaW5wdXQgPT09IFwiZnVuY3Rpb25cIlxuICAgICAgPyBvcHRpb25zLnRyYW5zZm9ybS5pbnB1dChvcHRpb25zLnZhbHVlKVxuICAgICAgOiBvcHRpb25zLnZhbHVlO1xuXG4gIGNvbnN0IG9uQ2hhbmdlID0gKFxuICAgIGV2ZW50T3JWYWx1ZTogRXZlbnRPclZhbHVlPFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPj4sXG4gICAgdmFsdWU/OiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT5cbiAgKTogdm9pZCA9PiB7XG4gICAgaWYgKHR5cGVvZiBvcHRpb25zLnRyYW5zZm9ybT8ub3V0cHV0ID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIG9wdGlvbnMub25DaGFuZ2Uob3B0aW9ucy50cmFuc2Zvcm0ub3V0cHV0KGV2ZW50T3JWYWx1ZSwgdmFsdWUpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gUGFzcyB0aHJvdWdoIHRoZSBldmVudCBvciB2YWx1ZSBkaXJlY3RseVxuICAgICAgb3B0aW9ucy5vbkNoYW5nZShldmVudE9yVmFsdWUgYXMgUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+KTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICB2YWx1ZSxcbiAgICBvbkNoYW5nZSxcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgdXNlVHJhbnNmb3JtO1xuIiwgImltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VNZW1vIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgdHlwZSB7XG4gIEZpZWxkUGF0aCxcbiAgRmllbGRWYWx1ZXMsXG4gIFBhdGhWYWx1ZSxcbiAgVXNlQ29udHJvbGxlclJldHVybixcbn0gZnJvbSBcInJlYWN0LWhvb2stZm9ybVwiO1xuXG5pbXBvcnQgdHlwZSB7IEV2ZW50T3JWYWx1ZSB9IGZyb20gXCIuLi8uLi90eXBlcy9ldmVudHNcIjtcblxuLyoqXG4gKiBGaWVsZCB0eXBlcyBmb3IgYnVpbHQtaW4gdHJhbnNmb3JtYXRpb24gcGF0dGVybnNcbiAqL1xuZXhwb3J0IHR5cGUgRmllbGRUeXBlID0gJ3RleHQnIHwgJ251bWJlcicgfCAnZGF0ZScgfCAndGltZScgfCAnc2VsZWN0JyB8ICdyYWRpbyc7XG5cbi8qKlxuICogRW5oYW5jZWQgb3B0aW9ucyBmb3IgdGhlIHVzZVRyYW5zZm9ybSBob29rIHdpdGggcGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9uc1xuICogYW5kIGJ1aWx0LWluIGZpZWxkIHR5cGUgaGFuZGxpbmcuXG4gKlxuICogQHRlbXBsYXRlIFRGaWVsZFZhbHVlcyAtIFRoZSBmb3JtIHZhbHVlcyB0eXBlXG4gKiBAdGVtcGxhdGUgVE5hbWUgLSBUaGUgZmllbGQgbmFtZSB0eXBlXG4gKiBAdGVtcGxhdGUgVFZhbHVlIC0gVGhlIHRyYW5zZm9ybWVkIHZhbHVlIHR5cGVcbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW5oYW5jZWRVc2VUcmFuc2Zvcm1PcHRpb25zPFxuICBURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcyA9IEZpZWxkVmFsdWVzLFxuICBUTmFtZSBleHRlbmRzIEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+ID0gRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4sXG4gIFRWYWx1ZSA9IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPixcbj4ge1xuICAvKiogVGhlIGN1cnJlbnQgZmllbGQgdmFsdWUgZnJvbSByZWFjdC1ob29rLWZvcm0gKi9cbiAgdmFsdWU6IFVzZUNvbnRyb2xsZXJSZXR1cm48VEZpZWxkVmFsdWVzLCBUTmFtZT5bXCJmaWVsZFwiXVtcInZhbHVlXCJdO1xuICAvKiogVGhlIG9uQ2hhbmdlIGhhbmRsZXIgZnJvbSByZWFjdC1ob29rLWZvcm0gKi9cbiAgb25DaGFuZ2U6IFVzZUNvbnRyb2xsZXJSZXR1cm48VEZpZWxkVmFsdWVzLCBUTmFtZT5bXCJmaWVsZFwiXVtcIm9uQ2hhbmdlXCJdO1xuICAvKiogT3B0aW9uYWwgdHJhbnNmb3JtYXRpb24gZnVuY3Rpb25zICovXG4gIHRyYW5zZm9ybT86IHtcbiAgICAvKipcbiAgICAgKiBUcmFuc2Zvcm0gdGhlIGZpZWxkIHZhbHVlIGZvciBkaXNwbGF5IGluIHRoZSBpbnB1dFxuICAgICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBjdXJyZW50IGZpZWxkIHZhbHVlXG4gICAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVkIHZhbHVlIHRvIGRpc3BsYXlcbiAgICAgKi9cbiAgICBpbnB1dD86ICh2YWx1ZTogUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+KSA9PiBUVmFsdWU7XG4gICAgLyoqXG4gICAgICogVHJhbnNmb3JtIHRoZSBpbnB1dCBldmVudCBiYWNrIHRvIHRoZSBmaWVsZCB2YWx1ZVxuICAgICAqIEBwYXJhbSBldmVudCAtIFRoZSBpbnB1dCBldmVudCBvciB2YWx1ZVxuICAgICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZSB0byBzdG9yZSBpbiB0aGUgZm9ybVxuICAgICAqL1xuICAgIG91dHB1dD86IChcbiAgICAgIGV2ZW50T3JWYWx1ZTogRXZlbnRPclZhbHVlPFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPj4sXG4gICAgICB2YWx1ZT86IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPlxuICAgICkgPT4gUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+O1xuICB9O1xuICAvKiogQnVpbHQtaW4gZmllbGQgdHlwZSBmb3IgYXV0b21hdGljIHRyYW5zZm9ybWF0aW9uICovXG4gIGZpZWxkVHlwZT86IEZpZWxkVHlwZTtcbiAgLyoqIERlZmF1bHQgdmFsdWUgdG8gdXNlIHdoZW4gZmllbGQgdmFsdWUgaXMgbnVsbC91bmRlZmluZWQgKi9cbiAgZGVmYXVsdFZhbHVlPzogVFZhbHVlO1xuICAvKiogRW5hYmxlIGRldmVsb3BtZW50IHdhcm5pbmdzIGZvciBkZWJ1Z2dpbmcgKi9cbiAgZW5hYmxlV2FybmluZ3M/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIEVuaGFuY2VkIHJldHVybiB0eXBlIGZvciB0aGUgdXNlVHJhbnNmb3JtIGhvb2sgd2l0aCBzdGFibGUgcmVmZXJlbmNlc1xuICpcbiAqIEB0ZW1wbGF0ZSBURmllbGRWYWx1ZXMgLSBUaGUgZm9ybSB2YWx1ZXMgdHlwZVxuICogQHRlbXBsYXRlIFROYW1lIC0gVGhlIGZpZWxkIG5hbWUgdHlwZSAgXG4gKiBAdGVtcGxhdGUgVFZhbHVlIC0gVGhlIHRyYW5zZm9ybWVkIHZhbHVlIHR5cGVcbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW5oYW5jZWRVc2VUcmFuc2Zvcm1SZXR1cm48XG4gIFRGaWVsZFZhbHVlcyBleHRlbmRzIEZpZWxkVmFsdWVzID0gRmllbGRWYWx1ZXMsXG4gIFROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4gPSBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPixcbiAgVFZhbHVlID0gUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+LFxuPiB7XG4gIC8qKiBUaGUgdHJhbnNmb3JtZWQgdmFsdWUgdG8gZGlzcGxheSBpbiB0aGUgaW5wdXQgKG1lbW9pemVkKSAqL1xuICB2YWx1ZTogVFZhbHVlO1xuICAvKiogVGhlIGVuaGFuY2VkIG9uQ2hhbmdlIGhhbmRsZXIgd2l0aCB0cmFuc2Zvcm1hdGlvbiBhcHBsaWVkIChtZW1vaXplZCkgKi9cbiAgb25DaGFuZ2U6IFVzZUNvbnRyb2xsZXJSZXR1cm48VEZpZWxkVmFsdWVzLCBUTmFtZT5bXCJmaWVsZFwiXVtcIm9uQ2hhbmdlXCJdO1xufVxuXG4vKipcbiAqIFRyYW5zZm9ybSBmYWN0b3JpZXMgZm9yIGNvbW1vbiBmaWVsZCB0eXBlc1xuICovXG5leHBvcnQgY29uc3QgdHJhbnNmb3JtRmFjdG9yaWVzID0ge1xuICBudW1iZXI6IDxURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcywgVE5hbWUgZXh0ZW5kcyBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPj4oKSA9PiAoe1xuICAgIGlucHV0OiAodmFsdWU6IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPikgPT4ge1xuICAgICAgaWYgKHZhbHVlID09IG51bGwpIHJldHVybiBcIlwiIGFzIHN0cmluZztcblxuICAgICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gICAgfSxcbiAgICBvdXRwdXQ6IChcbiAgICAgIGV2ZW50T3JWYWx1ZTogRXZlbnRPclZhbHVlPFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPj4sXG4gICAgICBfdmFsdWU/OiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT5cbiAgICApID0+IHtcbiAgICAgIGxldCByYXdWYWx1ZTogc3RyaW5nO1xuICAgICAgXG4gICAgICAvLyBFeHRyYWN0IHN0cmluZyB2YWx1ZSBmcm9tIGV2ZW50IG9yIGRpcmVjdCB2YWx1ZVxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2YgZXZlbnRPclZhbHVlID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBldmVudE9yVmFsdWUgIT09IG51bGwgJiZcbiAgICAgICAgJ3RhcmdldCcgaW4gZXZlbnRPclZhbHVlICYmXG4gICAgICAgIHR5cGVvZiBldmVudE9yVmFsdWUudGFyZ2V0ID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBldmVudE9yVmFsdWUudGFyZ2V0ICE9PSBudWxsICYmXG4gICAgICAgICd2YWx1ZScgaW4gZXZlbnRPclZhbHVlLnRhcmdldFxuICAgICAgKSB7XG4gICAgICAgIHJhd1ZhbHVlID0gU3RyaW5nKChldmVudE9yVmFsdWUudGFyZ2V0IGFzIHVua25vd24gYXMgeyB2YWx1ZTogdW5rbm93biB9KS52YWx1ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByYXdWYWx1ZSA9IFN0cmluZyhldmVudE9yVmFsdWUpO1xuICAgICAgfVxuXG4gICAgICBpZiAocmF3VmFsdWUgPT09IFwiXCIpIHJldHVybiBudWxsIGFzIFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPjtcbiAgICAgIGNvbnN0IG51bVZhbHVlID0gTnVtYmVyKHJhd1ZhbHVlKTtcblxuICAgICAgcmV0dXJuIChpc05hTihudW1WYWx1ZSkgPyBudWxsIDogbnVtVmFsdWUpIGFzIFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPjtcbiAgICB9LFxuICB9KSxcblxuICB0ZXh0OiA8VEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMsIFROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4+KCkgPT4gKHtcbiAgICBpbnB1dDogKHZhbHVlOiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4pID0+IHtcbiAgICAgIHJldHVybiAodmFsdWUgPz8gXCJcIikgYXMgc3RyaW5nO1xuICAgIH0sXG4gICAgb3V0cHV0OiAoXG4gICAgICBldmVudE9yVmFsdWU6IEV2ZW50T3JWYWx1ZTxQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4+LFxuICAgICAgX3ZhbHVlPzogUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+XG4gICAgKSA9PiB7XG4gICAgICAvLyBFeHRyYWN0IHN0cmluZyB2YWx1ZSBmcm9tIGV2ZW50IG9yIGRpcmVjdCB2YWx1ZVxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2YgZXZlbnRPclZhbHVlID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBldmVudE9yVmFsdWUgIT09IG51bGwgJiZcbiAgICAgICAgJ3RhcmdldCcgaW4gZXZlbnRPclZhbHVlICYmXG4gICAgICAgIHR5cGVvZiBldmVudE9yVmFsdWUudGFyZ2V0ID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBldmVudE9yVmFsdWUudGFyZ2V0ICE9PSBudWxsICYmXG4gICAgICAgICd2YWx1ZScgaW4gZXZlbnRPclZhbHVlLnRhcmdldFxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiAoZXZlbnRPclZhbHVlLnRhcmdldCBhcyB1bmtub3duIGFzIHsgdmFsdWU6IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPiB9KS52YWx1ZTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgcmV0dXJuIGV2ZW50T3JWYWx1ZSBhcyBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT47XG4gICAgfSxcbiAgfSksXG5cbiAgc2VsZWN0OiA8VEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMsIFROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4+KCkgPT4gKHtcbiAgICBpbnB1dDogKHZhbHVlOiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4pID0+IHtcbiAgICAgIHJldHVybiB2YWx1ZSA/PyAoXCJcIiBhcyBzdHJpbmcpO1xuICAgIH0sXG4gICAgb3V0cHV0OiAoXG4gICAgICBldmVudE9yVmFsdWU6IEV2ZW50T3JWYWx1ZTxQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4+LFxuICAgICAgdmFsdWU/OiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT5cbiAgICApID0+IHtcbiAgICAgIC8vIE1VSSBwYXR0ZXJuOiAoZXZlbnQsIHZhbHVlKSB3aGVyZSB2YWx1ZSBpcyB0aGUgYWN0dWFsIHNlbGVjdGVkIHZhbHVlXG4gICAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm4gdmFsdWUgYXMgUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+O1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBTdGFuZGFyZCBldmVudCBwYXR0ZXJuOiBleHRyYWN0IGZyb20gZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgICBpZiAoXG4gICAgICAgIHR5cGVvZiBldmVudE9yVmFsdWUgPT09ICdvYmplY3QnICYmXG4gICAgICAgIGV2ZW50T3JWYWx1ZSAhPT0gbnVsbCAmJlxuICAgICAgICAndGFyZ2V0JyBpbiBldmVudE9yVmFsdWUgJiZcbiAgICAgICAgdHlwZW9mIGV2ZW50T3JWYWx1ZS50YXJnZXQgPT09ICdvYmplY3QnICYmXG4gICAgICAgIGV2ZW50T3JWYWx1ZS50YXJnZXQgIT09IG51bGwgJiZcbiAgICAgICAgJ3ZhbHVlJyBpbiBldmVudE9yVmFsdWUudGFyZ2V0XG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIChldmVudE9yVmFsdWUudGFyZ2V0IGFzIHVua25vd24gYXMgeyB2YWx1ZTogUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+IH0pLnZhbHVlO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBEaXJlY3QgdmFsdWVcbiAgICAgIHJldHVybiBldmVudE9yVmFsdWUgYXMgUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+O1xuICAgIH0sXG4gIH0pLFxufSBhcyBjb25zdDs7XG5cbi8qKlxuICogR2V0IGJ1aWx0LWluIHRyYW5zZm9ybWF0aW9uIGZvciBhIGZpZWxkIHR5cGVcbiAqL1xuZnVuY3Rpb24gZ2V0QnVpbHRJblRyYW5zZm9ybTxcbiAgVEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMsXG4gIFROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4sXG4+KGZpZWxkVHlwZT86IEZpZWxkVHlwZSkge1xuICBzd2l0Y2ggKGZpZWxkVHlwZSkge1xuICAgIGNhc2UgJ251bWJlcic6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtRmFjdG9yaWVzLm51bWJlcjxURmllbGRWYWx1ZXMsIFROYW1lPigpO1xuICAgIGNhc2UgJ3RleHQnOlxuICAgICAgcmV0dXJuIHRyYW5zZm9ybUZhY3Rvcmllcy50ZXh0PFRGaWVsZFZhbHVlcywgVE5hbWU+KCk7XG4gICAgY2FzZSAnc2VsZWN0JzpcbiAgICBjYXNlICdyYWRpbyc6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtRmFjdG9yaWVzLnNlbGVjdDxURmllbGRWYWx1ZXMsIFROYW1lPigpO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbi8qKlxuICogQW4gZW5oYW5jZWQgaG9vayBmb3IgdHJhbnNmb3JtaW5nIGZvcm0gZmllbGQgdmFsdWVzIHdpdGggcGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9uc1xuICogYW5kIGJ1aWx0LWluIGZpZWxkIHR5cGUgaGFuZGxpbmcuXG4gKlxuICogVGhpcyBlbmhhbmNlZCB2ZXJzaW9uIHByb3ZpZGVzOlxuICogLSBQZXJmb3JtYW5jZSBvcHRpbWl6YXRpb25zIHdpdGggdXNlTWVtbyBhbmQgdXNlQ2FsbGJhY2tcbiAqIC0gQnVpbHQtaW4gdHJhbnNmb3JtYXRpb25zIGZvciBjb21tb24gZmllbGQgdHlwZXNcbiAqIC0gQmV0dGVyIFR5cGVTY3JpcHQgaW5mZXJlbmNlXG4gKiAtIERldmVsb3BtZW50IHdhcm5pbmdzXG4gKiAtIFN0YWJsZSByZWZlcmVuY2VzIHRvIHByZXZlbnQgdW5uZWNlc3NhcnkgcmUtcmVuZGVyc1xuICpcbiAqIEBleGFtcGxlXG4gKiBCYXNpYyB1c2FnZSB3aXRoIGJ1aWx0LWluIG51bWJlciBoYW5kbGluZzpcbiAqIGBgYHRzeFxuICogY29uc3QgeyB2YWx1ZSwgb25DaGFuZ2UgfSA9IHVzZUVuaGFuY2VkVHJhbnNmb3JtKHtcbiAqICAgdmFsdWU6IGZpZWxkLnZhbHVlLFxuICogICBvbkNoYW5nZTogZmllbGQub25DaGFuZ2UsXG4gKiAgIGZpZWxkVHlwZTogJ251bWJlcidcbiAqIH0pO1xuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIEN1c3RvbSB0cmFuc2Zvcm1hdGlvbnMgKHNhbWUgYXMgb3JpZ2luYWwpOlxuICogYGBgdHN4XG4gKiBjb25zdCB7IHZhbHVlLCBvbkNoYW5nZSB9ID0gdXNlRW5oYW5jZWRUcmFuc2Zvcm0oe1xuICogICB2YWx1ZTogZmllbGQudmFsdWUsXG4gKiAgIG9uQ2hhbmdlOiBmaWVsZC5vbkNoYW5nZSxcbiAqICAgdHJhbnNmb3JtOiB7XG4gKiAgICAgaW5wdXQ6ICh2YWx1ZSkgPT4gdmFsdWU/LnRvU3RyaW5nKCkgfHwgJycsXG4gKiAgICAgb3V0cHV0OiAoZXZlbnQpID0+IHBhcnNlSW50KGV2ZW50LnRhcmdldC52YWx1ZSkgfHwgbnVsbFxuICogICB9XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBXaXRoIGRlZmF1bHQgdmFsdWUgYW5kIHdhcm5pbmdzOlxuICogYGBgdHN4XG4gKiBjb25zdCB7IHZhbHVlLCBvbkNoYW5nZSB9ID0gdXNlRW5oYW5jZWRUcmFuc2Zvcm0oe1xuICogICB2YWx1ZTogZmllbGQudmFsdWUsXG4gKiAgIG9uQ2hhbmdlOiBmaWVsZC5vbkNoYW5nZSxcbiAqICAgZmllbGRUeXBlOiAndGV4dCcsXG4gKiAgIGRlZmF1bHRWYWx1ZTogJycsXG4gKiAgIGVuYWJsZVdhcm5pbmdzOiBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50J1xuICogfSk7XG4gKiBgYGBcbiAqXG4gKiBAdGVtcGxhdGUgVEZpZWxkVmFsdWVzIC0gVGhlIGZvcm0gdmFsdWVzIHR5cGVcbiAqIEB0ZW1wbGF0ZSBUTmFtZSAtIFRoZSBmaWVsZCBuYW1lIHR5cGVcbiAqIEB0ZW1wbGF0ZSBUVmFsdWUgLSBUaGUgdHJhbnNmb3JtZWQgdmFsdWUgdHlwZVxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gQ29uZmlndXJhdGlvbiBvcHRpb25zIGluY2x1ZGluZyB2YWx1ZSwgb25DaGFuZ2UsIGFuZCB0cmFuc2Zvcm0gZnVuY3Rpb25zXG4gKiBAcmV0dXJucyBPYmplY3Qgd2l0aCB0cmFuc2Zvcm1lZCB2YWx1ZSBhbmQgZW5oYW5jZWQgb25DaGFuZ2UgaGFuZGxlciAoYm90aCBtZW1vaXplZClcbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VFbmhhbmNlZFRyYW5zZm9ybTxcbiAgVEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMgPSBGaWVsZFZhbHVlcyxcbiAgVE5hbWUgZXh0ZW5kcyBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPiA9IEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+LFxuICBUVmFsdWUgPSBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4sXG4+KFxuICBvcHRpb25zOiBFbmhhbmNlZFVzZVRyYW5zZm9ybU9wdGlvbnM8VEZpZWxkVmFsdWVzLCBUTmFtZSwgVFZhbHVlPlxuKTogRW5oYW5jZWRVc2VUcmFuc2Zvcm1SZXR1cm48VEZpZWxkVmFsdWVzLCBUTmFtZSwgVFZhbHVlPiB7XG4gIGNvbnN0IHsgXG4gICAgdmFsdWU6IGZpZWxkVmFsdWUsIFxuICAgIG9uQ2hhbmdlOiBmaWVsZE9uQ2hhbmdlLCBcbiAgICB0cmFuc2Zvcm0sIFxuICAgIGZpZWxkVHlwZSwgXG4gICAgZGVmYXVsdFZhbHVlLFxuICAgIGVuYWJsZVdhcm5pbmdzIFxuICB9ID0gb3B0aW9ucztcblxuICAvLyBHZXQgYnVpbHQtaW4gdHJhbnNmb3JtIGlmIGZpZWxkVHlwZSBpcyBzcGVjaWZpZWRcbiAgY29uc3QgYnVpbHRJblRyYW5zZm9ybSA9IHVzZU1lbW8oKCkgPT4gXG4gICAgZmllbGRUeXBlID8gZ2V0QnVpbHRJblRyYW5zZm9ybTxURmllbGRWYWx1ZXMsIFROYW1lPihmaWVsZFR5cGUpIDogdW5kZWZpbmVkLCBcbiAgICBbZmllbGRUeXBlXVxuICApO1xuXG4gIC8vIERldmVsb3BtZW50IHdhcm5pbmdzXG4gIGlmIChlbmFibGVXYXJuaW5ncyAmJiBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50Jykge1xuICAgIGlmICh0cmFuc2Zvcm0gJiYgZmllbGRUeXBlKSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAndXNlRW5oYW5jZWRUcmFuc2Zvcm06IEJvdGggY3VzdG9tIHRyYW5zZm9ybSBhbmQgZmllbGRUeXBlIHByb3ZpZGVkLiBDdXN0b20gdHJhbnNmb3JtIHdpbGwgdGFrZSBwcmVjZWRlbmNlLidcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWVtb2l6ZSB0aGUgdHJhbnNmb3JtZWQgZGlzcGxheSB2YWx1ZVxuICBjb25zdCB0cmFuc2Zvcm1lZFZhbHVlID0gdXNlTWVtbygoKTogVFZhbHVlID0+IHtcbiAgICBjb25zdCBpbnB1dFRyYW5zZm9ybSA9IHRyYW5zZm9ybT8uaW5wdXQgfHwgYnVpbHRJblRyYW5zZm9ybT8uaW5wdXQ7XG4gICAgXG4gICAgaWYgKHR5cGVvZiBpbnB1dFRyYW5zZm9ybSA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICByZXR1cm4gaW5wdXRUcmFuc2Zvcm0oZmllbGRWYWx1ZSkgYXMgVFZhbHVlO1xuICAgIH1cbiAgICBcbiAgICAvLyBGYWxsYmFjayB3aXRoIGRlZmF1bHQgdmFsdWUgc3VwcG9ydFxuICAgIGlmIChmaWVsZFZhbHVlID09IG51bGwgJiYgZGVmYXVsdFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBkZWZhdWx0VmFsdWU7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBmaWVsZFZhbHVlIGFzIFRWYWx1ZTtcbiAgfSwgW2ZpZWxkVmFsdWUsIHRyYW5zZm9ybT8uaW5wdXQsIGJ1aWx0SW5UcmFuc2Zvcm0/LmlucHV0LCBkZWZhdWx0VmFsdWVdKTtcblxuICAvLyBNZW1vaXplIHRoZSBlbmhhbmNlZCBvbkNoYW5nZSBoYW5kbGVyXG4gIGNvbnN0IGVuaGFuY2VkT25DaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAoXG4gICAgICBldmVudE9yVmFsdWU6IEV2ZW50T3JWYWx1ZTxQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4+LFxuICAgICAgdmFsdWU/OiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT5cbiAgICApID0+IHtcbiAgICAgIGNvbnN0IG91dHB1dFRyYW5zZm9ybSA9IHRyYW5zZm9ybT8ub3V0cHV0IHx8IGJ1aWx0SW5UcmFuc2Zvcm0/Lm91dHB1dDtcbiAgICAgIFxuICAgICAgaWYgKHR5cGVvZiBvdXRwdXRUcmFuc2Zvcm0gPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIEhhbmRsZSBib3RoIHNpZ25hdHVyZXM6IG9sZCAoZXZlbnQgb25seSkgYW5kIG5ldyAoZXZlbnQsIHZhbHVlKVxuICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybWVkVmFsdWUgPSAob3V0cHV0VHJhbnNmb3JtIGFzIChlOiBFdmVudE9yVmFsdWU8UGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+Piwgdj86IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPikgPT4gUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+KShldmVudE9yVmFsdWUsIHZhbHVlKTtcblxuICAgICAgICAgIGZpZWxkT25DaGFuZ2UodHJhbnNmb3JtZWRWYWx1ZSk7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgaWYgKGVuYWJsZVdhcm5pbmdzICYmIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICAgICAgY29uc29sZS5lcnJvcigndXNlRW5oYW5jZWRUcmFuc2Zvcm06IEVycm9yIGluIG91dHB1dCB0cmFuc2Zvcm1hdGlvbjonLCBlcnJvcik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gRmFsbGJhY2sgdG8gZGlyZWN0IHZhbHVlIG9yIGZpcnN0IGFyZ3VtZW50XG4gICAgICAgICAgZmllbGRPbkNoYW5nZShcbiAgICAgICAgICAgIHZhbHVlICE9PSB1bmRlZmluZWQgXG4gICAgICAgICAgICAgID8gdmFsdWUgXG4gICAgICAgICAgICAgIDogZXZlbnRPclZhbHVlIGFzIFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPlxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIE5vIHRyYW5zZm9ybSwgcGFzcyB0aHJvdWdoIHRoZSB2YWx1ZSBvciBldmVudFxuICAgICAgICBmaWVsZE9uQ2hhbmdlKFxuICAgICAgICAgIHZhbHVlICE9PSB1bmRlZmluZWQgXG4gICAgICAgICAgICA/IHZhbHVlIFxuICAgICAgICAgICAgOiBldmVudE9yVmFsdWUgYXMgUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbZmllbGRPbkNoYW5nZSwgdHJhbnNmb3JtPy5vdXRwdXQsIGJ1aWx0SW5UcmFuc2Zvcm0/Lm91dHB1dCwgZW5hYmxlV2FybmluZ3NdXG4gICk7XG5cbiAgcmV0dXJuIHtcbiAgICB2YWx1ZTogdHJhbnNmb3JtZWRWYWx1ZSxcbiAgICBvbkNoYW5nZTogZW5oYW5jZWRPbkNoYW5nZSxcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgdXNlRW5oYW5jZWRUcmFuc2Zvcm07Il0sCiAgIm1hcHBpbmdzIjogIjtBQThHTyxTQUFTLGFBS2QsU0FDaUQ7QUFDakQsUUFBTSxRQUNKLE9BQU8sUUFBUSxXQUFXLFVBQVUsYUFDaEMsUUFBUSxVQUFVLE1BQU0sUUFBUSxLQUFLLElBQ3JDLFFBQVE7QUFFZCxRQUFNLFdBQVcsQ0FDZixjQUNBQSxXQUNTO0FBQ1QsUUFBSSxPQUFPLFFBQVEsV0FBVyxXQUFXLFlBQVk7QUFDbkQsY0FBUSxTQUFTLFFBQVEsVUFBVSxPQUFPLGNBQWNB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
@@ -0,0 +1,140 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }// src/hooks/useTransform/index.ts
2
+ function useTransform(options) {
3
+ const value = typeof _optionalChain([options, 'access', _ => _.transform, 'optionalAccess', _2 => _2.input]) === "function" ? options.transform.input(options.value) : options.value;
4
+ const onChange = (eventOrValue, value2) => {
5
+ if (typeof _optionalChain([options, 'access', _3 => _3.transform, 'optionalAccess', _4 => _4.output]) === "function") {
6
+ options.onChange(options.transform.output(eventOrValue, value2));
7
+ } else {
8
+ options.onChange(eventOrValue);
9
+ }
10
+ };
11
+ return {
12
+ value,
13
+ onChange
14
+ };
15
+ }
16
+
17
+ // src/hooks/useTransform/enhanced.ts
18
+ var _react = require('react');
19
+ var transformFactories = {
20
+ number: () => ({
21
+ input: (value) => {
22
+ if (value == null) return "";
23
+ return String(value);
24
+ },
25
+ output: (eventOrValue, _value) => {
26
+ let rawValue;
27
+ if (typeof eventOrValue === "object" && eventOrValue !== null && "target" in eventOrValue && typeof eventOrValue.target === "object" && eventOrValue.target !== null && "value" in eventOrValue.target) {
28
+ rawValue = String(eventOrValue.target.value);
29
+ } else {
30
+ rawValue = String(eventOrValue);
31
+ }
32
+ if (rawValue === "") return null;
33
+ const numValue = Number(rawValue);
34
+ return isNaN(numValue) ? null : numValue;
35
+ }
36
+ }),
37
+ text: () => ({
38
+ input: (value) => {
39
+ return _nullishCoalesce(value, () => ( ""));
40
+ },
41
+ output: (eventOrValue, _value) => {
42
+ if (typeof eventOrValue === "object" && eventOrValue !== null && "target" in eventOrValue && typeof eventOrValue.target === "object" && eventOrValue.target !== null && "value" in eventOrValue.target) {
43
+ return eventOrValue.target.value;
44
+ }
45
+ return eventOrValue;
46
+ }
47
+ }),
48
+ select: () => ({
49
+ input: (value) => {
50
+ return _nullishCoalesce(value, () => ( ""));
51
+ },
52
+ output: (eventOrValue, value) => {
53
+ if (value !== void 0) {
54
+ return value;
55
+ }
56
+ if (typeof eventOrValue === "object" && eventOrValue !== null && "target" in eventOrValue && typeof eventOrValue.target === "object" && eventOrValue.target !== null && "value" in eventOrValue.target) {
57
+ return eventOrValue.target.value;
58
+ }
59
+ return eventOrValue;
60
+ }
61
+ })
62
+ };
63
+ function getBuiltInTransform(fieldType) {
64
+ switch (fieldType) {
65
+ case "number":
66
+ return transformFactories.number();
67
+ case "text":
68
+ return transformFactories.text();
69
+ case "select":
70
+ case "radio":
71
+ return transformFactories.select();
72
+ default:
73
+ return void 0;
74
+ }
75
+ }
76
+ function useEnhancedTransform(options) {
77
+ const {
78
+ value: fieldValue,
79
+ onChange: fieldOnChange,
80
+ transform,
81
+ fieldType,
82
+ defaultValue,
83
+ enableWarnings
84
+ } = options;
85
+ const builtInTransform = _react.useMemo.call(void 0,
86
+ () => fieldType ? getBuiltInTransform(fieldType) : void 0,
87
+ [fieldType]
88
+ );
89
+ if (enableWarnings && process.env.NODE_ENV === "development") {
90
+ if (transform && fieldType) {
91
+ console.warn(
92
+ "useEnhancedTransform: Both custom transform and fieldType provided. Custom transform will take precedence."
93
+ );
94
+ }
95
+ }
96
+ const transformedValue = _react.useMemo.call(void 0, () => {
97
+ const inputTransform = _optionalChain([transform, 'optionalAccess', _5 => _5.input]) || _optionalChain([builtInTransform, 'optionalAccess', _6 => _6.input]);
98
+ if (typeof inputTransform === "function") {
99
+ return inputTransform(fieldValue);
100
+ }
101
+ if (fieldValue == null && defaultValue !== void 0) {
102
+ return defaultValue;
103
+ }
104
+ return fieldValue;
105
+ }, [fieldValue, _optionalChain([transform, 'optionalAccess', _7 => _7.input]), _optionalChain([builtInTransform, 'optionalAccess', _8 => _8.input]), defaultValue]);
106
+ const enhancedOnChange = _react.useCallback.call(void 0,
107
+ (eventOrValue, value) => {
108
+ const outputTransform = _optionalChain([transform, 'optionalAccess', _9 => _9.output]) || _optionalChain([builtInTransform, 'optionalAccess', _10 => _10.output]);
109
+ if (typeof outputTransform === "function") {
110
+ try {
111
+ const transformedValue2 = outputTransform(eventOrValue, value);
112
+ fieldOnChange(transformedValue2);
113
+ } catch (error) {
114
+ if (enableWarnings && process.env.NODE_ENV === "development") {
115
+ console.error("useEnhancedTransform: Error in output transformation:", error);
116
+ }
117
+ fieldOnChange(
118
+ value !== void 0 ? value : eventOrValue
119
+ );
120
+ }
121
+ } else {
122
+ fieldOnChange(
123
+ value !== void 0 ? value : eventOrValue
124
+ );
125
+ }
126
+ },
127
+ [fieldOnChange, _optionalChain([transform, 'optionalAccess', _11 => _11.output]), _optionalChain([builtInTransform, 'optionalAccess', _12 => _12.output]), enableWarnings]
128
+ );
129
+ return {
130
+ value: transformedValue,
131
+ onChange: enhancedOnChange
132
+ };
133
+ }
134
+
135
+
136
+
137
+
138
+
139
+ exports.useTransform = useTransform; exports.transformFactories = transformFactories; exports.useEnhancedTransform = useEnhancedTransform;
140
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImQ6XFxQcm9qZWN0c1xcR05XZWJTb2Z0LlVJXFxwYWNrYWdlc1xcdWlcXGRpc3RcXGNodW5rLVFZSEpJUFNaLmNqcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBLFNBQVMsWUFBWSxDQUFDLE9BQU8sRUFBRTtBQUMvQixFQUFFLE1BQU0sTUFBTSxFQUFFLHVCQUFPLE9BQU8sbUJBQUMsU0FBUyw2QkFBRSxRQUFNLElBQUksV0FBVyxFQUFFLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxPQUFPLENBQUMsS0FBSztBQUN2SCxFQUFFLE1BQU0sU0FBUyxFQUFFLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxHQUFHO0FBQzdDLElBQUksR0FBRyxDQUFDLHVCQUFPLE9BQU8scUJBQUMsU0FBUyw2QkFBRSxTQUFPLElBQUksVUFBVSxFQUFFO0FBQ3pELE1BQU0sT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDdEUsSUFBSSxFQUFFLEtBQUs7QUFDWCxNQUFNLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDO0FBQ3BDLElBQUk7QUFDSixFQUFFLENBQUM7QUFDSCxFQUFFLE9BQU87QUFDVCxJQUFJLEtBQUs7QUFDVCxJQUFJO0FBQ0osRUFBRSxDQUFDO0FBQ0g7QUFDQTtBQUNBO0FBQ0EsOEJBQTRDO0FBQzVDLElBQUksbUJBQW1CLEVBQUU7QUFDekIsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQztBQUNqQixJQUFJLEtBQUssRUFBRSxDQUFDLEtBQUssRUFBRSxHQUFHO0FBQ3RCLE1BQU0sR0FBRyxDQUFDLE1BQU0sR0FBRyxJQUFJLEVBQUUsT0FBTyxFQUFFO0FBQ2xDLE1BQU0sT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDO0FBQzFCLElBQUksQ0FBQztBQUNMLElBQUksTUFBTSxF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STtBQUNKLElBQUksT0FBTyxVQUFVO0FBQ3JCLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxrQkFBRSxTQUFTLDZCQUFFLE9BQUssa0JBQUUsZ0JBQWdCLDZCQUFFLE9BQUssRUFBRSxZQUFZLENBQUMsQ0FBQztBQUMzRSxFQUFFLE1BQU0saUJBQWlCLEVBQUUsZ0NBQVc7QUFDdEMsSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLEVBQUUsR0FBRztBQUM3QixNQUFNLE1BQU0sZ0JBQWdCLGtCQUFFLFNBQVMsNkJBQUUsU0FBTyxtQkFBRyxnQkFBZ0IsK0JBQUUsUUFBTTtBQUMzRSxNQUFNLEdBQUcsQ0FBQyxPQUFPLGdCQUFnQixJQUFJLFVBQVUsRUFBRTtBQUNqRCxRQUFRLElBQUk7QUFDWixVQUFVLE1BQU0sa0JBQWtCLEVBQUUsZUFBZSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUM7QUFDeEUsVUFBVSxhQUFhLENBQUMsaUJBQWlCLENBQUM7QUFDMUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxLQUFLLEVBQUU7QUFDeEIsVUFBVSxHQUFHLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxJQUFJLGFBQWEsRUFBRTtBQUN4RSxZQUFZLE9BQU8sQ0FBQyxLQUFLLENBQUMsdURBQXVELEVBQUUsS0FBSyxDQUFDO0FBQ3pGLFVBQVU7QUFDVixVQUFVLGFBQWE7QUFDdkIsWUFBWSxNQUFNLElBQUksS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFO0FBQ3ZDLFVBQVUsQ0FBQztBQUNYLFFBQVE7QUFDUixNQUFNLEVBQUUsS0FBSztBQUNiLFFBQVEsYUFBYTtBQUNyQixVQUFVLE1BQU0sSUFBSSxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUU7QUFDckMsUUFBUSxDQUFDO0FBQ1QsTUFBTTtBQUNOLElBQUksQ0FBQztBQUNMLElBQUksQ0FBQyxhQUFhLGtCQUFFLFNBQVMsK0JBQUUsUUFBTSxrQkFBRSxnQkFBZ0IsK0JBQUUsUUFBTSxFQUFFLGNBQWM7QUFDL0UsRUFBRSxDQUFDO0FBQ0gsRUFBRSxPQUFPO0FBQ1QsSUFBSSxLQUFLLEVBQUUsZ0JBQWdCO0FBQzNCLElBQUksUUFBUSxFQUFFO0FBQ2QsRUFBRSxDQUFDO0FBQ0g7QUFDQTtBQUNBO0FBQ0U7QUFDQTtBQUNBO0FBQ0YsMElBQUMiLCJmaWxlIjoiRDpcXFByb2plY3RzXFxHTldlYlNvZnQuVUlcXHBhY2thZ2VzXFx1aVxcZGlzdFxcY2h1bmstUVlISklQU1ouY2pzIiwic291cmNlc0NvbnRlbnQiOltudWxsXX0=