@donotdev/crud 0.0.31 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/LICENSE.md +3 -3
  2. package/dist/CrudService.d.ts +4 -4
  3. package/dist/CrudService.js +2 -2
  4. package/dist/CrudStore.d.ts +1 -1
  5. package/dist/CrudStore.js +1 -1
  6. package/dist/FieldRegistry.d.ts +1 -1
  7. package/dist/FieldRegistry.d.ts.map +1 -1
  8. package/dist/FieldRegistry.js +1 -1
  9. package/dist/adapters/FunctionsAdapter.d.ts +3 -3
  10. package/dist/adapters/FunctionsAdapter.d.ts.map +1 -1
  11. package/dist/adapters/FunctionsAdapter.js +1 -1
  12. package/dist/adapters/index.d.ts +1 -1
  13. package/dist/builtinFieldTypes.d.ts +1 -1
  14. package/dist/components/CrudButton.js +1 -1
  15. package/dist/components/DateFilter.js +1 -1
  16. package/dist/components/DisplayFieldRenderer.d.ts +1 -1
  17. package/dist/components/DisplayFieldRenderer.js +1 -1
  18. package/dist/components/DisplayThumbnail.d.ts +1 -1
  19. package/dist/components/DisplayThumbnail.js +1 -1
  20. package/dist/components/EntityFilters.js +1 -1
  21. package/dist/components/FormFieldRenderer.js +1 -1
  22. package/dist/components/FormLayout.d.ts +1 -1
  23. package/dist/components/FormLayout.js +1 -1
  24. package/dist/components/controlled/complex/ControlledAddressField.js +1 -1
  25. package/dist/components/controlled/complex/ControlledDateField.js +1 -1
  26. package/dist/components/controlled/complex/ControlledFieldArrayField.js +1 -1
  27. package/dist/components/controlled/complex/ControlledGeoPointField.js +1 -1
  28. package/dist/components/controlled/complex/ControlledMapField.js +1 -1
  29. package/dist/components/controlled/complex/ControlledMultiInputField.js +1 -1
  30. package/dist/components/controlled/complex/ControlledRichTextField.js +1 -1
  31. package/dist/components/controlled/complex/ControlledTimestampField.js +1 -1
  32. package/dist/components/controlled/complex/index.js +1 -1
  33. package/dist/components/controlled/file/ControlledDocumentField.js +1 -1
  34. package/dist/components/controlled/file/ControlledFileField.js +1 -1
  35. package/dist/components/controlled/file/ControlledImageField.js +1 -1
  36. package/dist/components/controlled/file/ControlledMultiDocumentField.js +1 -1
  37. package/dist/components/controlled/file/ControlledMultiFileField.js +1 -1
  38. package/dist/components/controlled/file/ControlledMultiImageField.js +1 -1
  39. package/dist/components/controlled/file/index.js +1 -1
  40. package/dist/components/controlled/index.js +1 -1
  41. package/dist/components/controlled/input/ControlledCheckboxField.js +1 -1
  42. package/dist/components/controlled/input/ControlledCurrencyField.js +1 -1
  43. package/dist/components/controlled/input/ControlledDurationField.js +1 -1
  44. package/dist/components/controlled/input/ControlledGdprConsentField.js +1 -1
  45. package/dist/components/controlled/input/ControlledNumberField.js +1 -1
  46. package/dist/components/controlled/input/ControlledPasswordField.js +1 -1
  47. package/dist/components/controlled/input/ControlledPhoneField.js +1 -1
  48. package/dist/components/controlled/input/ControlledPriceField.js +1 -1
  49. package/dist/components/controlled/input/ControlledRangeField.js +1 -1
  50. package/dist/components/controlled/input/ControlledRatingField.js +1 -1
  51. package/dist/components/controlled/input/ControlledSwitchField.js +1 -1
  52. package/dist/components/controlled/input/ControlledTextField.js +1 -1
  53. package/dist/components/controlled/input/ControlledTextareaField.js +1 -1
  54. package/dist/components/controlled/input/index.js +1 -1
  55. package/dist/components/controlled/select/ControlledComboboxField.js +1 -1
  56. package/dist/components/controlled/select/ControlledDropdownField.js +1 -1
  57. package/dist/components/controlled/select/ControlledMultiDropdownField.js +1 -1
  58. package/dist/components/controlled/select/ControlledRadioField.js +1 -1
  59. package/dist/components/controlled/select/ControlledReferenceField.js +1 -1
  60. package/dist/components/controlled/select/ControlledYearField.js +1 -1
  61. package/dist/components/controlled/select/index.js +1 -1
  62. package/dist/components/controlled/types.js +1 -1
  63. package/dist/components/fields/display/AvatarFieldDisplay.d.ts +1 -1
  64. package/dist/components/fields/display/AvatarFieldDisplay.js +1 -1
  65. package/dist/components/fields/display/BadgeFieldDisplay.d.ts +1 -1
  66. package/dist/components/fields/display/BadgeFieldDisplay.js +1 -1
  67. package/dist/components/fields/display/ButtonFieldDisplay.d.ts +2 -2
  68. package/dist/components/fields/display/ButtonFieldDisplay.js +1 -1
  69. package/dist/components/fields/display/CheckboxFieldDisplay.d.ts +1 -1
  70. package/dist/components/fields/display/CheckboxFieldDisplay.js +1 -1
  71. package/dist/components/fields/display/DateFieldDisplay.d.ts +1 -1
  72. package/dist/components/fields/display/DateFieldDisplay.js +1 -1
  73. package/dist/components/fields/display/DropdownDisplay.d.ts +1 -1
  74. package/dist/components/fields/display/DropdownDisplay.js +1 -1
  75. package/dist/components/fields/display/FileFieldDisplay.d.ts +1 -1
  76. package/dist/components/fields/display/FileFieldDisplay.js +1 -1
  77. package/dist/components/fields/display/GeoPointFieldDisplay.d.ts +1 -1
  78. package/dist/components/fields/display/GeoPointFieldDisplay.js +1 -1
  79. package/dist/components/fields/display/HiddenFieldDisplay.d.ts +2 -2
  80. package/dist/components/fields/display/HiddenFieldDisplay.js +1 -1
  81. package/dist/components/fields/display/ImageFieldDisplay.d.ts +1 -1
  82. package/dist/components/fields/display/ImageFieldDisplay.js +1 -1
  83. package/dist/components/fields/display/LinkFieldDisplay.d.ts +1 -1
  84. package/dist/components/fields/display/LinkFieldDisplay.js +1 -1
  85. package/dist/components/fields/display/MapFieldDisplay.d.ts +1 -1
  86. package/dist/components/fields/display/MapFieldDisplay.js +1 -1
  87. package/dist/components/fields/display/MultiDropdownDisplay.d.ts +1 -1
  88. package/dist/components/fields/display/MultiDropdownDisplay.js +1 -1
  89. package/dist/components/fields/display/MultiInputTextFieldDisplay.d.ts +1 -1
  90. package/dist/components/fields/display/MultiInputTextFieldDisplay.js +1 -1
  91. package/dist/components/fields/display/NumberFieldDisplay.d.ts +1 -1
  92. package/dist/components/fields/display/NumberFieldDisplay.js +1 -1
  93. package/dist/components/fields/display/PasswordFieldDisplay.d.ts +1 -1
  94. package/dist/components/fields/display/PasswordFieldDisplay.js +1 -1
  95. package/dist/components/fields/display/PhoneNumberDisplay.d.ts +1 -1
  96. package/dist/components/fields/display/PhoneNumberDisplay.js +1 -1
  97. package/dist/components/fields/display/RadioFieldDisplay.d.ts +1 -1
  98. package/dist/components/fields/display/RadioFieldDisplay.js +1 -1
  99. package/dist/components/fields/display/RangeFieldDisplay.d.ts +1 -1
  100. package/dist/components/fields/display/RangeFieldDisplay.js +1 -1
  101. package/dist/components/fields/display/ReferenceFieldDisplay.d.ts +1 -1
  102. package/dist/components/fields/display/ReferenceFieldDisplay.js +1 -1
  103. package/dist/components/fields/display/RichTextDisplay.d.ts +1 -1
  104. package/dist/components/fields/display/RichTextDisplay.js +2 -2
  105. package/dist/components/fields/display/TextAreaDisplay.d.ts +1 -1
  106. package/dist/components/fields/display/TextAreaDisplay.js +1 -1
  107. package/dist/components/fields/display/TextFieldDisplay.d.ts +1 -1
  108. package/dist/components/fields/display/TextFieldDisplay.js +1 -1
  109. package/dist/components/fields/display/TimestampFieldDisplay.d.ts +1 -1
  110. package/dist/components/fields/display/TimestampFieldDisplay.js +1 -1
  111. package/dist/components/fields/display/index.d.ts +1 -1
  112. package/dist/components/fields/display/index.js +1 -1
  113. package/dist/components/form/fields/AddressFieldComponent.js +1 -1
  114. package/dist/components/form/fields/AvatarFieldComponent.d.ts +2 -2
  115. package/dist/components/form/fields/AvatarFieldComponent.js +1 -1
  116. package/dist/components/form/fields/BadgeFieldComponent.d.ts +2 -2
  117. package/dist/components/form/fields/BadgeFieldComponent.js +1 -1
  118. package/dist/components/form/fields/ButtonFieldComponent.js +1 -1
  119. package/dist/components/form/fields/CheckboxFieldComponent.d.ts +1 -1
  120. package/dist/components/form/fields/CheckboxFieldComponent.js +1 -1
  121. package/dist/components/form/fields/ComboboxComponent.d.ts +1 -1
  122. package/dist/components/form/fields/ComboboxComponent.js +1 -1
  123. package/dist/components/form/fields/CurrencyFieldComponent.d.ts +1 -1
  124. package/dist/components/form/fields/CurrencyFieldComponent.js +1 -1
  125. package/dist/components/form/fields/DateFieldComponent.d.ts +1 -1
  126. package/dist/components/form/fields/DateFieldComponent.js +1 -1
  127. package/dist/components/form/fields/DocumentFieldComponent.js +1 -1
  128. package/dist/components/form/fields/DropdownComponent.d.ts +1 -1
  129. package/dist/components/form/fields/DropdownComponent.js +1 -1
  130. package/dist/components/form/fields/DurationFieldComponent.js +1 -1
  131. package/dist/components/form/fields/FileFieldComponent.js +1 -1
  132. package/dist/components/form/fields/GdprConsentFieldComponent.d.ts +1 -1
  133. package/dist/components/form/fields/GdprConsentFieldComponent.js +1 -1
  134. package/dist/components/form/fields/GeoPointFieldComponent.d.ts +1 -1
  135. package/dist/components/form/fields/GeoPointFieldComponent.js +1 -1
  136. package/dist/components/form/fields/HiddenFieldComponent.d.ts +1 -1
  137. package/dist/components/form/fields/HiddenFieldComponent.js +1 -1
  138. package/dist/components/form/fields/ImageFieldComponent.js +1 -1
  139. package/dist/components/form/fields/MapFieldComponent.js +1 -1
  140. package/dist/components/form/fields/MultiDropdownComponent.d.ts +1 -1
  141. package/dist/components/form/fields/MultiDropdownComponent.js +1 -1
  142. package/dist/components/form/fields/MultiInputTextFieldComponent.js +1 -1
  143. package/dist/components/form/fields/NumberFieldComponent.d.ts +1 -1
  144. package/dist/components/form/fields/NumberFieldComponent.js +1 -1
  145. package/dist/components/form/fields/PasswordFieldComponent.d.ts +1 -1
  146. package/dist/components/form/fields/PasswordFieldComponent.js +1 -1
  147. package/dist/components/form/fields/PhoneNumberComponent.d.ts +1 -1
  148. package/dist/components/form/fields/PhoneNumberComponent.js +1 -1
  149. package/dist/components/form/fields/PriceFieldComponent.js +1 -1
  150. package/dist/components/form/fields/RadioFieldComponent.js +1 -1
  151. package/dist/components/form/fields/RangeFieldComponent.d.ts +1 -1
  152. package/dist/components/form/fields/RangeFieldComponent.js +1 -1
  153. package/dist/components/form/fields/RatingFieldComponent.d.ts +1 -1
  154. package/dist/components/form/fields/RatingFieldComponent.js +1 -1
  155. package/dist/components/form/fields/ReferenceFieldComponent.js +1 -1
  156. package/dist/components/form/fields/RichTextComponent.d.ts +1 -1
  157. package/dist/components/form/fields/RichTextComponent.js +1 -1
  158. package/dist/components/form/fields/SwitchFieldComponent.d.ts +1 -1
  159. package/dist/components/form/fields/SwitchFieldComponent.js +1 -1
  160. package/dist/components/form/fields/TextAreaComponent.d.ts +1 -1
  161. package/dist/components/form/fields/TextAreaComponent.js +1 -1
  162. package/dist/components/form/fields/TextFieldComponent.d.ts +2 -2
  163. package/dist/components/form/fields/TextFieldComponent.js +1 -1
  164. package/dist/components/form/fields/TimestampFieldComponent.js +1 -1
  165. package/dist/components/form/fields/index.d.ts +1 -1
  166. package/dist/components/form/fields/index.js +1 -1
  167. package/dist/components/form/fields/internal/TiptapEditor.d.ts +1 -1
  168. package/dist/components/form/fields/internal/TiptapEditor.js +2 -2
  169. package/dist/components/form/fields/types.d.ts +1 -1
  170. package/dist/components/form/index.d.ts +1 -1
  171. package/dist/components/form/internal/ImageViewerDialog.js +1 -1
  172. package/dist/components/index.d.ts +1 -1
  173. package/dist/components/index.js +1 -1
  174. package/dist/contexts/UploadContext.js +1 -1
  175. package/dist/contexts/index.js +1 -1
  176. package/dist/fieldTypeRegistry.d.ts.map +1 -1
  177. package/dist/fieldTypeRegistry.js +1 -1
  178. package/dist/fieldTypeRegistry.store.js +1 -1
  179. package/dist/fieldTypeRegistry.types.d.ts.map +1 -1
  180. package/dist/forms/hooks/index.d.ts +1 -1
  181. package/dist/forms/hooks/index.js +1 -1
  182. package/dist/forms/hooks/useController.js +1 -1
  183. package/dist/forms/hooks/useEntityField.d.ts +1 -1
  184. package/dist/forms/hooks/useEntityField.js +1 -1
  185. package/dist/forms/hooks/useEntityForm.d.ts.map +1 -1
  186. package/dist/forms/hooks/useEntityForm.js +1 -1
  187. package/dist/forms/index.d.ts +1 -1
  188. package/dist/forms/index.js +1 -1
  189. package/dist/forms/types.d.ts +7 -7
  190. package/dist/forms/utils/buildInitialValues.js +1 -1
  191. package/dist/forms/utils/getFieldsForOperation.d.ts +2 -2
  192. package/dist/forms/utils/getFieldsForOperation.js +1 -1
  193. package/dist/forms/utils/index.d.ts +1 -1
  194. package/dist/forms/utils/index.js +1 -1
  195. package/dist/forms/utils/isFieldEditable.d.ts +1 -1
  196. package/dist/forms/utils/isFieldEditable.js +1 -1
  197. package/dist/forms/utils/translateFieldLabel.d.ts +3 -3
  198. package/dist/forms/utils/translateFieldLabel.js +1 -1
  199. package/dist/forms/utils/validateEntity.d.ts +1 -1
  200. package/dist/forms/utils/validateEntity.js +1 -1
  201. package/dist/hooks/index.js +1 -1
  202. package/dist/hooks/useCrudFilters.js +1 -1
  203. package/dist/hooks/useEntityFavorites.js +1 -1
  204. package/dist/hooks/useFieldConditions.js +1 -1
  205. package/dist/hooks/useFileUpload.js +1 -1
  206. package/dist/hooks/useReferenceResolver.js +1 -1
  207. package/dist/hooks/useRelatedItems.js +1 -1
  208. package/dist/hooks/useUnsavedChangesWarning.js +1 -1
  209. package/dist/index.d.ts +1 -1
  210. package/dist/index.js +1 -1
  211. package/dist/registerBuiltinFieldTypes.js +1 -1
  212. package/dist/stores/FormStore.js +1 -1
  213. package/dist/stores/UploadStore.js +1 -1
  214. package/dist/stores/index.d.ts +1 -1
  215. package/dist/stores/index.js +1 -1
  216. package/dist/tsconfig.tsbuildinfo +1 -1
  217. package/dist/types.d.ts +4 -4
  218. package/dist/types.js +1 -1
  219. package/dist/useBaseCrudList.js +1 -1
  220. package/dist/useCrud.js +1 -1
  221. package/dist/useCrudCardList.js +1 -1
  222. package/dist/useCrudList.js +1 -1
  223. package/dist/utils/clientListProcessing.d.ts +1 -1
  224. package/dist/utils/clientListProcessing.js +1 -1
  225. package/dist/utils/collections.d.ts +6 -6
  226. package/dist/utils/collections.js +1 -1
  227. package/dist/utils/fileStorage.js +1 -1
  228. package/dist/utils/imageProcessing.d.ts +1 -1
  229. package/dist/utils/imageProcessing.js +1 -1
  230. package/dist/utils/imageStorage.js +1 -1
  231. package/dist/utils/imageUtils.d.ts +1 -1
  232. package/dist/utils/imageUtils.js +1 -1
  233. package/dist/utils/matchesFilter.d.ts.map +1 -1
  234. package/dist/utils/matchesFilter.js +1 -1
  235. package/dist/utils/mergeWithOptimistic.js +1 -1
  236. package/dist/utils/sanitizeHtml.d.ts +0 -5
  237. package/dist/utils/sanitizeHtml.d.ts.map +1 -1
  238. package/dist/utils/sanitizeHtml.js +1 -1
  239. package/dist/utils/scopeUtils.js +1 -1
  240. package/dist/utils/uploadValidation.d.ts +1 -1
  241. package/dist/utils/uploadValidation.js +1 -1
  242. package/dist/workflows/WorkflowPersistence.d.ts +1 -1
  243. package/dist/workflows/WorkflowPersistence.js +1 -1
  244. package/dist/workflows/defineWorkflow.d.ts +1 -1
  245. package/dist/workflows/index.d.ts +1 -1
  246. package/dist/workflows/index.js +1 -1
  247. package/dist/workflows/useEntityWorkflow.js +1 -1
  248. package/package.json +3 -3
@@ -1 +1 @@
1
- "use client";import{jsx as n}from"react/jsx-runtime";import{Controller as p}from"react-hook-form";import{ImageFieldComponent as f}from"../../form/fields";import{convertValidationRules as g}from"../types";function c(i){const{control:m,errors:r,fieldConfig:a,t:s}=i,{name:e,label:u,validation:o}=a,l=a.options||{};return n(p,{name:e,control:m,rules:o?g(o):void 0,render:({field:t})=>n(f,{name:e,label:s(u),value:t.value??null,onChange:d=>t.onChange(d),error:!!r[e],helperText:r[e]?.message,required:o?.required,multiple:!1,maxFiles:1,maxSize:l.maxSize,storagePath:l.storagePath})})}export{c as ControlledImageField};
1
+ "use client";import{jsx as a}from"react/jsx-runtime";import{Controller as p}from"react-hook-form";import{ImageFieldComponent as c}from"../../form/fields";import{convertValidationRules as f}from"../types";function v(i){const{control:m,errors:r,fieldConfig:n,t:s}=i,{name:e,label:u,validation:o}=n,t=n.options||{};return a(p,{name:e,control:m,rules:o?f(o):void 0,render:({field:l})=>a(c,{name:e,label:s(u),value:l.value??null,onChange:d=>l.onChange(d),error:!!r[e],helperText:r[e]?.message,required:o?.required,multiple:!1,maxFiles:1,maxSize:t.maxSize,storagePath:t.storagePath})})}export{v as ControlledImageField};
@@ -1 +1 @@
1
- "use client";import{jsx as n}from"react/jsx-runtime";import{Controller as c}from"react-hook-form";import{DocumentFieldComponent as f}from"../../form/fields";import{convertValidationRules as v}from"../types";function x(i){const{control:m,errors:l,fieldConfig:t,t:s}=i,{name:r,label:u,validation:o}=t,a=t.options||{};return n(c,{name:r,control:m,rules:o?v(o):void 0,render:({field:e})=>{const d=Array.isArray(e.value)?e.value:e.value?[e.value]:null;return n(f,{name:r,label:s(u),value:d,onChange:p=>e.onChange(p),error:!!l[r],helperText:l[r]?.message,required:o?.required,multiple:!0,maxFiles:a.maxFiles??10,maxSize:a.maxSize,storagePath:a.storagePath})}})}export{x as ControlledMultiDocumentField};
1
+ "use client";import{jsx as l}from"react/jsx-runtime";import{Controller as x}from"react-hook-form";import{DocumentFieldComponent as d}from"../../form/fields";import{convertValidationRules as v}from"../types";function F(i){const{control:u,errors:t,fieldConfig:a,t:m}=i,{name:r,label:s,validation:o}=a,n=a.options||{};return l(x,{name:r,control:u,rules:o?v(o):void 0,render:({field:e})=>{const c=Array.isArray(e.value)?e.value:e.value?[e.value]:null;return l(d,{name:r,label:m(s),value:c,onChange:p=>e.onChange(p),error:!!t[r],helperText:t[r]?.message,required:o?.required,multiple:!0,maxFiles:n.maxFiles??10,maxSize:n.maxSize,storagePath:n.storagePath})}})}export{F as ControlledMultiDocumentField};
@@ -1 +1 @@
1
- "use client";import{jsx as t}from"react/jsx-runtime";import{Controller as p}from"react-hook-form";import{FileFieldComponent as v}from"../../form/fields";import{convertValidationRules as c}from"../types";function x(n){const{control:s,errors:a,fieldConfig:i,t:m}=n,{name:r,label:u,validation:o}=i,l=i.options||{};return t(p,{name:r,control:s,rules:o?c(o):void 0,render:({field:e})=>{const d=Array.isArray(e.value)?e.value:e.value?[e.value]:null;return t(v,{name:r,label:m(u),value:d,onChange:f=>e.onChange(f),error:!!a[r],helperText:a[r]?.message,required:o?.required,multiple:!0,maxFiles:l.maxFiles??10,maxSize:l.maxSize,storagePath:l.storagePath})}})}export{x as ControlledMultiFileField};
1
+ "use client";import{jsx as l}from"react/jsx-runtime";import{Controller as x}from"react-hook-form";import{FileFieldComponent as d}from"../../form/fields";import{convertValidationRules as v}from"../types";function f(i){const{control:s,errors:t,fieldConfig:a,t:u}=i,{name:r,label:m,validation:o}=a,n=a.options||{};return l(x,{name:r,control:s,rules:o?v(o):void 0,render:({field:e})=>{const p=Array.isArray(e.value)?e.value:e.value?[e.value]:null;return l(d,{name:r,label:u(m),value:p,onChange:c=>e.onChange(c),error:!!t[r],helperText:t[r]?.message,required:o?.required,multiple:!0,maxFiles:n.maxFiles??10,maxSize:n.maxSize,storagePath:n.storagePath})}})}export{f as ControlledMultiFileField};
@@ -1 +1 @@
1
- "use client";import{jsx as t}from"react/jsx-runtime";import{Controller as p}from"react-hook-form";import{ImageFieldComponent as c}from"../../form/fields";import{convertValidationRules as g}from"../types";function v(n){const{control:m,errors:l,fieldConfig:i,t:s}=n,{name:r,label:u,validation:o}=i,a=i.options||{};return t(p,{name:r,control:m,rules:o?g(o):void 0,render:({field:e})=>{const d=Array.isArray(e.value)?e.value:e.value?[e.value]:null;return t(c,{name:r,label:s(u),value:d,onChange:f=>e.onChange(f),error:!!l[r],helperText:l[r]?.message,required:o?.required,multiple:!0,maxFiles:a.maxFiles??10,maxSize:a.maxSize,storagePath:a.fieldSpecific?.storagePath})}})}export{v as ControlledMultiImageField};
1
+ "use client";import{jsx as l}from"react/jsx-runtime";import{Controller as d}from"react-hook-form";import{ImageFieldComponent as g}from"../../form/fields";import{convertValidationRules as x}from"../types";function F(i){const{control:m,errors:n,fieldConfig:t,t:s}=i,{name:r,label:u,validation:o}=t,a=t.options||{};return l(d,{name:r,control:m,rules:o?x(o):void 0,render:({field:e})=>{const c=Array.isArray(e.value)?e.value:e.value?[e.value]:null;return l(g,{name:r,label:s(u),value:c,onChange:p=>e.onChange(p),error:!!n[r],helperText:n[r]?.message,required:o?.required,multiple:!0,maxFiles:a.maxFiles??10,maxSize:a.maxSize,storagePath:a.fieldSpecific?.storagePath})}})}export{F as ControlledMultiImageField};
@@ -1 +1 @@
1
- import{ControlledDocumentField as l}from"./ControlledDocumentField";import{ControlledFileField as o}from"./ControlledFileField";import{ControlledImageField as e}from"./ControlledImageField";import{ControlledMultiDocumentField as t}from"./ControlledMultiDocumentField";import{ControlledMultiFileField as i}from"./ControlledMultiFileField";import{ControlledMultiImageField as r}from"./ControlledMultiImageField";export{l as ControlledDocumentField,o as ControlledFileField,e as ControlledImageField,t as ControlledMultiDocumentField,i as ControlledMultiFileField,r as ControlledMultiImageField};
1
+ import{ControlledDocumentField as l}from"./ControlledDocumentField";import{ControlledFileField as t}from"./ControlledFileField";import{ControlledImageField as i}from"./ControlledImageField";import{ControlledMultiDocumentField as n}from"./ControlledMultiDocumentField";import{ControlledMultiFileField as f}from"./ControlledMultiFileField";import{ControlledMultiImageField as x}from"./ControlledMultiImageField";export{l as ControlledDocumentField,t as ControlledFileField,i as ControlledImageField,n as ControlledMultiDocumentField,f as ControlledMultiFileField,x as ControlledMultiImageField};
@@ -1 +1 @@
1
- import{convertValidationRules as o,convertPatternToRegex as e}from"./types";export*from"./input";export*from"./select";export*from"./file";export*from"./complex";export{e as convertPatternToRegex,o as convertValidationRules};
1
+ import{convertValidationRules as e,convertPatternToRegex as t}from"./types";export*from"./input";export*from"./select";export*from"./file";export*from"./complex";export{t as convertPatternToRegex,e as convertValidationRules};
@@ -1 +1 @@
1
- "use client";import{jsx as n}from"react/jsx-runtime";import{Controller as s}from"react-hook-form";import{CheckboxFieldComponent as f}from"../../form/fields";import{convertValidationRules as u}from"../types";function C(t){const{control:l,errors:p,fieldConfig:i,t:a}=t,{name:d,label:e,validation:o}=i,c=typeof e=="string"?a(e):e;return n(s,{name:d,control:l,rules:o?u(o):void 0,render:({field:r})=>n(f,{label:c,checked:!!r.value,onChange:m=>r.onChange(m.target.checked),required:o?.required})})}export{C as ControlledCheckboxField};
1
+ "use client";import{jsx as r}from"react/jsx-runtime";import{Controller as s}from"react-hook-form";import{CheckboxFieldComponent as u}from"../../form/fields";import{convertValidationRules as C}from"../types";function x(t){const{control:l,errors:f,fieldConfig:i,t:a}=t,{name:c,label:e,validation:o}=i,d=typeof e=="string"?a(e):e;return r(s,{name:c,control:l,rules:o?C(o):void 0,render:({field:n})=>r(u,{label:d,checked:!!n.value,onChange:m=>n.onChange(m.target.checked),required:o?.required})})}export{x as ControlledCheckboxField};
@@ -1 +1 @@
1
- "use client";import{jsx as u}from"react/jsx-runtime";import{Controller as h}from"react-hook-form";import{CurrencyFieldComponent as v}from"../../form/fields";import{convertValidationRules as y}from"../types";function N(c){const{control:s,errors:n,fieldConfig:a,t:d,placeholder:m}=c,{name:o,label:p,validation:l}=a,t=(a.options||{}).fieldSpecific;return u(h,{name:o,control:s,rules:l?y(l):void 0,render:({field:e})=>{const f=g=>{const r=g.target.value;if(r==null||r===""){e.onChange(null);return}const i=typeof r=="number"?r/100:parseFloat(String(r))/100;isNaN(i)?e.onChange(null):e.onChange(i)},C=e.value!=null&&!isNaN(e.value)?Math.round(e.value*100):void 0;return u(v,{label:d(p),value:C,onChange:f,currency:t?.currency||"EUR",locale:t?.locale,error:!!n[o],helperText:n[o]?.message,required:l?.required,placeholder:m})}})}export{N as ControlledCurrencyField};
1
+ "use client";import{jsx as c}from"react/jsx-runtime";import{Controller as g}from"react-hook-form";import{CurrencyFieldComponent as v}from"../../form/fields";import{convertValidationRules as y}from"../types";function V(i){const{control:s,errors:l,fieldConfig:t,t:d,placeholder:p}=i,{name:o,label:m,validation:r}=t,a=(t.options||{}).fieldSpecific;return c(g,{name:o,control:s,rules:r?y(r):void 0,render:({field:e})=>{const f=h=>{const n=h.target.value;if(n==null||n===""){e.onChange(null);return}const u=typeof n=="number"?n/100:parseFloat(String(n))/100;isNaN(u)?e.onChange(null):e.onChange(u)},C=e.value!=null&&!isNaN(e.value)?Math.round(e.value*100):void 0;return c(v,{label:d(m),value:C,onChange:f,currency:a?.currency||"EUR",locale:a?.locale,error:!!l[o],helperText:l[o]?.message,required:r?.required,placeholder:p})}})}export{V as ControlledCurrencyField};
@@ -1 +1 @@
1
- "use client";import{jsx as t}from"react/jsx-runtime";import{Controller as f}from"react-hook-form";import{DurationFieldComponent as u}from"../../form/fields";import{convertValidationRules as c}from"../types";function C(s){const{control:d,errors:i,fieldConfig:l,t:a}=s,{name:e,label:m,validation:o}=l,r=(l.options||{}).fieldSpecific;return t(f,{name:e,control:d,rules:o?c(o):void 0,render:({field:n})=>t(u,{label:a(m),value:n.value??0,onChange:p=>n.onChange(p),error:!!i[e],helperText:i[e]?.message,required:o?.required,disabled:n.disabled,min:r?.min??0,max:r?.max??480,step:r?.step??5,t:a})})}export{C as ControlledDurationField};
1
+ "use client";import{jsx as a}from"react/jsx-runtime";import{Controller as c}from"react-hook-form";import{DurationFieldComponent as u}from"../../form/fields";import{convertValidationRules as f}from"../types";function h(s){const{control:m,errors:i,fieldConfig:t,t:l}=s,{name:e,label:d,validation:o}=t,n=(t.options||{}).fieldSpecific;return a(c,{name:e,control:m,rules:o?f(o):void 0,render:({field:r})=>a(u,{label:l(d),value:r.value??0,onChange:p=>r.onChange(p),error:!!i[e],helperText:i[e]?.message,required:o?.required,disabled:r.disabled,min:n?.min??0,max:n?.max??480,step:n?.step??5,t:l})})}export{h as ControlledDurationField};
@@ -1 +1 @@
1
- "use client";import{jsx as t}from"react/jsx-runtime";import{Controller as g}from"react-hook-form";import{GdprConsentFieldComponent as u}from"../../form/fields";import{convertValidationRules as h}from"../types";function v(i){const{control:a,errors:y,fieldConfig:l}=i,{name:s,validation:o,options:c={}}=l,r=c.fieldSpecific,d=r?.privacyPolicyPath||"/legal/privacy",p=r?.termsPath||"/legal/terms";return t(g,{name:s,control:a,rules:o?h(o):void 0,render:({field:n})=>{const e=n.value,m=typeof e=="object"&&e!==null?!!e.gdprConsent:!!e;return t(u,{checked:m,onChange:C=>{if(C.target.checked){const f=new Date().toISOString().split("T")[0];n.onChange({gdprConsent:!0,gdprConsentDate:new Date().toISOString(),gdprConsentVersion:f})}else n.onChange(!1)},required:o?.required,privacyPolicyPath:d,termsPath:p})}})}export{v as ControlledGdprConsentField};
1
+ "use client";import{jsx as r}from"react/jsx-runtime";import{Controller as m}from"react-hook-form";import{GdprConsentFieldComponent as u}from"../../form/fields";import{convertValidationRules as f}from"../types";function D(c){const{control:a,errors:y,fieldConfig:i}=c,{name:s,validation:n,options:l={}}=i,t=l.fieldSpecific,d=t?.privacyPolicyPath||"/legal/privacy",p=t?.termsPath||"/legal/terms";return r(m,{name:s,control:a,rules:n?f(n):void 0,render:({field:o})=>{const e=o.value,h=typeof e=="object"&&e!==null?!!e.gdprConsent:!!e;return r(u,{checked:h,onChange:C=>{if(C.target.checked){const g=new Date().toISOString().split("T")[0];o.onChange({gdprConsent:!0,gdprConsentDate:new Date().toISOString(),gdprConsentVersion:g})}else o.onChange(!1)},required:n?.required,privacyPolicyPath:d,termsPath:p})}})}export{D as ControlledGdprConsentField};
@@ -1 +1 @@
1
- "use client";import{jsx as m}from"react/jsx-runtime";import{Controller as g}from"react-hook-form";import{NumberFieldComponent as v}from"../../form/fields";import{convertValidationRules as C}from"../types";function h(u){const{control:c,errors:t,fieldConfig:l,t:d,placeholder:N}=u,{name:r,label:p,validation:e}=l,i=l.options||{},o=i.fieldSpecific;return m(g,{name:r,control:c,rules:e?C(e):void 0,render:({field:a})=>{const f=n=>{if(n.target.value===""||n.target.value===null){a.onChange(null);return}try{const s=parseFloat(n.target.value);isNaN(s)||a.onChange(s)}catch{a.onChange(0)}};return m(v,{...a,label:d(p),value:a.value??void 0,onChange:f,error:!!t[r],helperText:t[r]?.message,required:e?.required,min:e?.min,max:e?.max,step:o?.mask==="currency"?.01:o?.mask==="mileage"?1:void 0,mask:o?.mask||"number",className:i.className})}})}export{h as ControlledNumberField};
1
+ "use client";import{jsx as m}from"react/jsx-runtime";import{Controller as g}from"react-hook-form";import{NumberFieldComponent as h}from"../../form/fields";import{convertValidationRules as C}from"../types";function F(u){const{control:c,errors:t,fieldConfig:l,t:d,placeholder:v}=u,{name:r,label:p,validation:e}=l,i=l.options||{},o=i.fieldSpecific;return m(g,{name:r,control:c,rules:e?C(e):void 0,render:({field:n})=>{const f=a=>{if(a.target.value===""||a.target.value===null){n.onChange(null);return}try{const s=parseFloat(a.target.value);isNaN(s)||n.onChange(s)}catch{n.onChange(0)}};return m(h,{...n,label:d(p),value:n.value??void 0,onChange:f,error:!!t[r],helperText:t[r]?.message,required:e?.required,min:e?.min,max:e?.max,step:o?.mask==="currency"?.01:o?.mask==="mileage"?1:void 0,mask:o?.mask||"number",className:i.className})}})}export{F as ControlledNumberField};
@@ -1 +1 @@
1
- "use client";import{jsx as n}from"react/jsx-runtime";import{Controller as p}from"react-hook-form";import{PasswordFieldComponent as u}from"../../form/fields";import{convertValidationRules as f}from"../types";function h(s){const{control:t,errors:l,fieldConfig:i,t:d,placeholder:m}=s,{name:e,label:c,validation:o,options:a={}}=i;return n(p,{name:e,control:t,rules:o?f(o):void 0,render:({field:r})=>n(u,{...r,label:d(c),value:r.value??"",onChange:r.onChange,error:!!l[e],helperText:l[e]?.message,required:o?.required,placeholder:m||a.placeholder,className:a.className})})}export{h as ControlledPasswordField};
1
+ "use client";import{jsx as a}from"react/jsx-runtime";import{Controller as p}from"react-hook-form";import{PasswordFieldComponent as u}from"../../form/fields";import{convertValidationRules as f}from"../types";function x(t){const{control:s,errors:l,fieldConfig:i,t:d,placeholder:m}=t,{name:e,label:c,validation:o,options:n={}}=i;return a(p,{name:e,control:s,rules:o?f(o):void 0,render:({field:r})=>a(u,{...r,label:d(c),value:r.value??"",onChange:r.onChange,error:!!l[e],helperText:l[e]?.message,required:o?.required,placeholder:m||n.placeholder,className:n.className})})}export{x as ControlledPasswordField};
@@ -1 +1 @@
1
- "use client";import{jsx as l}from"react/jsx-runtime";import{Controller as d}from"react-hook-form";import{PhoneNumberComponent as f}from"../../form/fields";import{convertValidationRules as p}from"../types";function c(t){const{control:a,errors:n,fieldConfig:i,t:s}=t,{name:e,label:m,validation:r}=i;return l(d,{name:e,control:a,rules:r?p(r):void 0,render:({field:o})=>l(f,{label:s(m),value:typeof o.value=="string"?o.value:"",onChange:u=>o.onChange(u.target.value||""),error:n[e]?.message,helperText:n[e]?.message,required:r?.required})})}export{c as ControlledPhoneField};
1
+ "use client";import{jsx as t}from"react/jsx-runtime";import{Controller as d}from"react-hook-form";import{PhoneNumberComponent as p}from"../../form/fields";import{convertValidationRules as c}from"../types";function h(l){const{control:a,errors:n,fieldConfig:i,t:m}=l,{name:e,label:s,validation:r}=i;return t(d,{name:e,control:a,rules:r?c(r):void 0,render:({field:o})=>t(p,{label:m(s),value:typeof o.value=="string"?o.value:"",onChange:u=>o.onChange(u.target.value||""),error:n[e]?.message,helperText:n[e]?.message,required:r?.required})})}export{h as ControlledPhoneField};
@@ -1 +1 @@
1
- "use client";import{jsx as t}from"react/jsx-runtime";import{Controller as C}from"react-hook-form";import{PriceFieldComponent as v}from"../../form/fields";import{convertValidationRules as h}from"../types";function g(a){const{control:c,errors:i,fieldConfig:l,t:s,placeholder:d}=a,{name:e,label:u,validation:r}=l,o=(l.options||{}).fieldSpecific;return t(C,{name:e,control:c,rules:r?h(r):void 0,render:({field:n})=>{const p=n.value,f=m=>{n.onChange(m)};return t(v,{label:s(u),value:p??void 0,onChange:f,error:!!i[e],helperText:i[e]?.message,required:r?.required,placeholder:d,defaultCurrency:o?.defaultCurrency??"EUR",optionsTitle:o?.optionsTitle,currencies:o?.currencies})}})}export{g as ControlledPriceField};
1
+ "use client";import{jsx as l}from"react/jsx-runtime";import{Controller as C}from"react-hook-form";import{PriceFieldComponent as h}from"../../form/fields";import{convertValidationRules as g}from"../types";function q(c){const{control:s,errors:n,fieldConfig:i,t:a,placeholder:d}=c,{name:e,label:u,validation:o}=i,r=(i.options||{}).fieldSpecific;return l(C,{name:e,control:s,rules:o?g(o):void 0,render:({field:t})=>{const p=t.value,f=m=>{t.onChange(m)};return l(h,{label:a(u),value:p??void 0,onChange:f,error:!!n[e],helperText:n[e]?.message,required:o?.required,placeholder:d,defaultCurrency:r?.defaultCurrency??"EUR",optionsTitle:r?.optionsTitle,currencies:r?.currencies})}})}export{q as ControlledPriceField};
@@ -1 +1 @@
1
- "use client";import{jsx as a}from"react/jsx-runtime";import{Controller as f}from"react-hook-form";import{RangeFieldComponent as c}from"../../form/fields";import{convertValidationRules as g}from"../types";function v(s){const{control:m,errors:l,fieldConfig:i,t:u}=s,{name:o,label:d,validation:e}=i,t=i.options||{},p=t.fieldSpecific;return a(f,{name:o,control:m,rules:e?g(e):void 0,render:({field:r})=>a(c,{label:u(d),value:r.value??void 0,onChange:n=>{typeof n=="number"?r.onChange(n):r.onChange(Number(n.target.value)||0)},error:!!l[o],helperText:l[o]?.message,required:e?.required,min:e?.min,max:e?.max,step:t.step,showValue:p?.showValue})})}export{v as ControlledRangeField};
1
+ "use client";import{jsx as a}from"react/jsx-runtime";import{Controller as d}from"react-hook-form";import{RangeFieldComponent as f}from"../../form/fields";import{convertValidationRules as g}from"../types";function v(s){const{control:m,errors:t,fieldConfig:i,t:p}=s,{name:o,label:u,validation:e}=i,l=i.options||{},c=l.fieldSpecific;return a(d,{name:o,control:m,rules:e?g(e):void 0,render:({field:n})=>a(f,{label:p(u),value:n.value??void 0,onChange:r=>{typeof r=="number"?n.onChange(r):n.onChange(Number(r.target.value)||0)},error:!!t[o],helperText:t[o]?.message,required:e?.required,min:e?.min,max:e?.max,step:l.step,showValue:c?.showValue})})}export{v as ControlledRangeField};
@@ -1 +1 @@
1
- "use client";import{jsx as a}from"react/jsx-runtime";import{Controller as u}from"react-hook-form";import{RatingFieldComponent as p}from"../../form/fields";import{convertValidationRules as c}from"../types";function g(t){const{control:s,errors:r,fieldConfig:l,t:m}=t,{name:o,label:d,validation:e}=l,n=(l.options||{}).fieldSpecific;return a(u,{name:o,control:s,rules:e?c(e):void 0,render:({field:i})=>a(p,{label:m(d),value:i.value??0,onChange:f=>{i.onChange(f)},error:!!r[o],helperText:r[o]?.message,required:e?.required,max:n?.max??e?.max??5,showValue:n?.showValue})})}export{g as ControlledRatingField};
1
+ "use client";import{jsx as l}from"react/jsx-runtime";import{Controller as p}from"react-hook-form";import{RatingFieldComponent as u}from"../../form/fields";import{convertValidationRules as f}from"../types";function R(a){const{control:s,errors:n,fieldConfig:r,t:m}=a,{name:o,label:c,validation:e}=r,i=(r.options||{}).fieldSpecific;return l(p,{name:o,control:s,rules:e?f(e):void 0,render:({field:t})=>l(u,{label:m(c),value:t.value??0,onChange:d=>{t.onChange(d)},error:!!n[o],helperText:n[o]?.message,required:e?.required,max:i?.max??e?.max??5,showValue:i?.showValue})})}export{R as ControlledRatingField};
@@ -1 +1 @@
1
- "use client";import{jsx as d}from"react/jsx-runtime";import{Controller as v}from"react-hook-form";import{SwitchFieldComponent as x}from"../../form/fields";import"../types";function S(h){const{control:s,errors:m,fieldConfig:u,t:o,onChange:c}=h,{name:l,label:f,options:p={}}=u,e=p.fieldSpecific,k=e?.uncheckedValue??!1,r=e?.checkedValue??!0,t=e?.uncheckedLabel,a=e?.checkedLabel;return d(v,{name:l,control:s,render:({field:{value:b,onChange:C}})=>{const g=b===r,L=n=>{const i=n?r:k;C(i),c&&c(i)};return d(x,{label:o(f),checked:g,onChange:n=>L(n.target.checked),uncheckedLabel:t?o(t):void 0,checkedLabel:a?o(a):void 0,helperText:m[l]?.message})}})}export{S as ControlledSwitchField};
1
+ "use client";import{jsx as i}from"react/jsx-runtime";import{Controller as V}from"react-hook-form";import{SwitchFieldComponent as x}from"../../form/fields";import"../types";function T(h){const{control:s,errors:u,fieldConfig:f,t:c,onChange:o}=h,{name:t,label:k,options:m={}}=f,e=m.fieldSpecific,p=e?.uncheckedValue??!1,l=e?.checkedValue??!0,d=e?.uncheckedLabel,r=e?.checkedLabel;return i(V,{name:t,control:s,render:({field:{value:C,onChange:b}})=>{const g=C===l,L=n=>{const a=n?l:p;b(a),o&&o(a)};return i(x,{label:c(k),checked:g,onChange:n=>L(n.target.checked),uncheckedLabel:d?c(d):void 0,checkedLabel:r?c(r):void 0,helperText:u[t]?.message})}})}export{T as ControlledSwitchField};
@@ -1 +1 @@
1
- "use client";import{jsx as n}from"react/jsx-runtime";import{Controller as c}from"react-hook-form";import{TextFieldComponent as u}from"../../form/fields";import{convertValidationRules as h}from"../types";function C(s){const{control:i,errors:a,fieldConfig:e,t:m,placeholder:p}=s,{name:r,label:d,validation:o,options:l={}}=e;return n(c,{name:r,control:i,rules:o?h(o):void 0,render:({field:t})=>n(u,{...t,label:m(d),value:t.value??"",onChange:t.onChange,error:a[r]?.message,helperText:a[r]?.message,type:e.type==="email"?"email":e.type==="url"?"url":e.type==="color"?"color":"text",required:o?.required,placeholder:p||l.placeholder,maxLength:o?.maxLength,showCharCount:l.showCharCount,className:l.className})})}export{C as ControlledTextField};
1
+ "use client";import{jsx as a}from"react/jsx-runtime";import{Controller as u}from"react-hook-form";import{TextFieldComponent as d}from"../../form/fields";import{convertValidationRules as h}from"../types";function v(s){const{control:m,errors:n,fieldConfig:e,t:i,placeholder:p}=s,{name:r,label:c,validation:o,options:l={}}=e;return a(u,{name:r,control:m,rules:o?h(o):void 0,render:({field:t})=>a(d,{...t,label:i(c),value:t.value??"",onChange:t.onChange,error:n[r]?.message,helperText:n[r]?.message,type:e.type==="email"?"email":e.type==="url"?"url":e.type==="color"?"color":"text",required:o?.required,placeholder:p||l.placeholder,maxLength:o?.maxLength,showCharCount:l.showCharCount,className:l.className})})}export{v as ControlledTextField};
@@ -1 +1 @@
1
- "use client";import{jsx as n}from"react/jsx-runtime";import{Controller as h}from"react-hook-form";import{TextAreaComponent as c}from"../../form/fields";import{convertValidationRules as p}from"../types";function C(s){const{control:i,errors:l,fieldConfig:t,t:m,placeholder:d}=s,{name:r,label:u,validation:o}=t,e=t.options||{};return n(h,{name:r,control:i,rules:o?p(o):void 0,render:({field:a})=>n(c,{...a,label:m(u),value:a.value??"",onChange:a.onChange,error:l[r]?.message,helperText:l[r]?.message,required:o?.required,placeholder:d||e.placeholder,maxLength:o?.maxLength,showCharCount:e.showCharCount,autoResize:e.autoResize,rows:e.rows,className:e.className})})}export{C as ControlledTextareaField};
1
+ "use client";import{jsx as l}from"react/jsx-runtime";import{Controller as h}from"react-hook-form";import{TextAreaComponent as p}from"../../form/fields";import{convertValidationRules as d}from"../types";function v(s){const{control:i,errors:a,fieldConfig:t,t:m,placeholder:u}=s,{name:r,label:c,validation:o}=t,e=t.options||{};return l(h,{name:r,control:i,rules:o?d(o):void 0,render:({field:n})=>l(p,{...n,label:m(c),value:n.value??"",onChange:n.onChange,error:a[r]?.message,helperText:a[r]?.message,required:o?.required,placeholder:u||e.placeholder,maxLength:o?.maxLength,showCharCount:e.showCharCount,autoResize:e.autoResize,rows:e.rows,className:e.className})})}export{v as ControlledTextareaField};
@@ -1 +1 @@
1
- import{ControlledCheckboxField as o}from"./ControlledCheckboxField";import{ControlledCurrencyField as l}from"./ControlledCurrencyField";import{ControlledNumberField as e}from"./ControlledNumberField";import{ControlledPasswordField as r}from"./ControlledPasswordField";import{ControlledPriceField as d}from"./ControlledPriceField";import{ControlledPhoneField as t}from"./ControlledPhoneField";import{ControlledRangeField as i}from"./ControlledRangeField";import{ControlledRatingField as n}from"./ControlledRatingField";import{ControlledDurationField as a}from"./ControlledDurationField";import{ControlledSwitchField as s}from"./ControlledSwitchField";import{ControlledTextField as C}from"./ControlledTextField";import{ControlledTextareaField as m}from"./ControlledTextareaField";import{ControlledGdprConsentField as F}from"./ControlledGdprConsentField";export{o as ControlledCheckboxField,l as ControlledCurrencyField,a as ControlledDurationField,F as ControlledGdprConsentField,e as ControlledNumberField,r as ControlledPasswordField,t as ControlledPhoneField,d as ControlledPriceField,i as ControlledRangeField,n as ControlledRatingField,s as ControlledSwitchField,C as ControlledTextField,m as ControlledTextareaField};
1
+ import{ControlledCheckboxField as r}from"./ControlledCheckboxField";import{ControlledCurrencyField as t}from"./ControlledCurrencyField";import{ControlledNumberField as n}from"./ControlledNumberField";import{ControlledPasswordField as x}from"./ControlledPasswordField";import{ControlledPriceField as m}from"./ControlledPriceField";import{ControlledPhoneField as f}from"./ControlledPhoneField";import{ControlledRangeField as a}from"./ControlledRangeField";import{ControlledRatingField as h}from"./ControlledRatingField";import{ControlledDurationField as u}from"./ControlledDurationField";import{ControlledSwitchField as b}from"./ControlledSwitchField";import{ControlledTextField as w}from"./ControlledTextField";import{ControlledTextareaField as T}from"./ControlledTextareaField";import{ControlledGdprConsentField as y}from"./ControlledGdprConsentField";export{r as ControlledCheckboxField,t as ControlledCurrencyField,u as ControlledDurationField,y as ControlledGdprConsentField,n as ControlledNumberField,x as ControlledPasswordField,f as ControlledPhoneField,m as ControlledPriceField,a as ControlledRangeField,h as ControlledRatingField,b as ControlledSwitchField,w as ControlledTextField,T as ControlledTextareaField};
@@ -1 +1 @@
1
- "use client";import{jsx as h}from"react/jsx-runtime";import{useMemo as C}from"react";import{Controller as q,useWatch as B,useFormContext as F}from"react-hook-form";import{translateLabel as P}from"../../../forms/utils";import{ComboboxComponent as j}from"../../form/fields";import{convertValidationRules as D}from"../types";function S(v){const{control:d,errors:p,fieldConfig:t,t:l,placeholder:g}=v,{name:a,label:x,validation:o,options:u={}}=t,m=F()?.setValue,r=B({control:d}),n="dependsOn"in t?t.dependsOn:void 0,O=n&&r?r[n.field]:void 0,c=C(()=>{const e=o?.options;return e?typeof e=="function"?e(r||{}):e:[]},[o?.options,r,O]),y=C(()=>c.map(e=>({...e,label:P(e.label,l)})),[c,l]),s=u.fieldSpecific;return h(q,{name:a,control:d,rules:o?D(o):void 0,render:({field:e})=>{const V=i=>{const f=typeof i=="string"?i:i.target.value;if(e.onChange(f),n&&m&&s?.setParentOnChange){const b=s.setParentOnChange(f,r||{});b!=null&&m(n.field,b,{shouldValidate:!0,shouldDirty:!0})}};return h(j,{...e,label:l(x),value:e.value??"",onChange:V,onBlur:e.onBlur,options:y,error:!!p[a],helperText:p[a]?.message,required:o?.required,placeholder:g||u.placeholder,creatable:s?.creatable??!1})}})}export{S as ControlledComboboxField};
1
+ "use client";import{jsx as b}from"react/jsx-runtime";import{useMemo as h}from"react";import{Controller as j,useWatch as q,useFormContext as B}from"react-hook-form";import{translateLabel as F}from"../../../forms/utils";import{ComboboxComponent as P}from"../../form/fields";import{convertValidationRules as S}from"../types";function _(x){const{control:d,errors:c,fieldConfig:r,t:l,placeholder:g}=x,{name:s,label:O,validation:n,options:p={}}=r,f=B()?.setValue,o=q({control:d}),t="dependsOn"in r?r.dependsOn:void 0,V=t&&o?o[t.field]:void 0,m=h(()=>{const e=n?.options;return e?typeof e=="function"?e(o||{}):e:[]},[n?.options,o,V]),v=h(()=>m.map(e=>({...e,label:F(e.label,l)})),[m,l]),a=p.fieldSpecific;return b(j,{name:s,control:d,rules:n?S(n):void 0,render:({field:e})=>{const y=i=>{const C=typeof i=="string"?i:i.target.value;if(e.onChange(C),t&&f&&a?.setParentOnChange){const u=a.setParentOnChange(C,o||{});u!=null&&f(t.field,u,{shouldValidate:!0,shouldDirty:!0})}};return b(P,{...e,label:l(O),value:e.value??"",onChange:y,onBlur:e.onBlur,options:v,error:!!c[s],helperText:c[s]?.message,required:n?.required,placeholder:g||p.placeholder,creatable:a?.creatable??!1})}})}export{_ as ControlledComboboxField};
@@ -1 +1 @@
1
- "use client";import{jsx as v}from"react/jsx-runtime";import{useMemo as g}from"react";import{Controller as D,useWatch as V,useFormContext as q}from"react-hook-form";import{translateLabel as w}from"../../../forms/utils";import{DropdownComponent as B}from"../../form/fields";import{convertValidationRules as F}from"../types";function S(h){const{control:i,errors:d,fieldConfig:t,t:l,onChange:j}=h,{name:a,label:C,validation:o,options:b={}}=t,u=q()?.setValue,n=V({control:i}),r="dependsOn"in t?t.dependsOn:void 0,x=r&&n?n[r.field]:void 0,p=g(()=>{const e=o?.options;return e?typeof e=="function"?e(n||{}):e:[]},[o?.options,n,x]),O=g(()=>p.map(e=>({...e,label:w(e.label,l)})),[p,l]),m=b.fieldSpecific;return v(D,{name:a,control:i,rules:o?F(o):void 0,render:({field:e})=>{const y=s=>{const f=typeof s=="string"?s:s.target.value;if(e.onChange(f),r&&u&&m?.setParentOnChange){const c=m.setParentOnChange(f,n||{});c!=null&&u(r.field,c,{shouldValidate:!0,shouldDirty:!0})}};return v(B,{label:l(C),value:e.value!==void 0&&e.value!==null?String(e.value):"",onChange:y,onBlur:e.onBlur,options:O,error:!!d[a],helperText:d[a]?.message,required:o?.required})}})}export{S as ControlledDropdownField};
1
+ "use client";import{jsx as C}from"react/jsx-runtime";import{useMemo as g}from"react";import{Controller as w,useWatch as y,useFormContext as D}from"react-hook-form";import{translateLabel as S}from"../../../forms/utils";import{DropdownComponent as j}from"../../form/fields";import{convertValidationRules as q}from"../types";function _(h){const{control:u,errors:d,fieldConfig:r,t:s,onChange:B}=h,{name:i,label:O,validation:n,options:V={}}=r,p=D()?.setValue,o=y({control:u}),t="dependsOn"in r?r.dependsOn:void 0,x=t&&o?o[t.field]:void 0,f=g(()=>{const e=n?.options;return e?typeof e=="function"?e(o||{}):e:[]},[n?.options,o,x]),b=g(()=>f.map(e=>({...e,label:S(e.label,s)})),[f,s]),c=V.fieldSpecific;return C(w,{name:i,control:u,rules:n?q(n):void 0,render:({field:e})=>{const v=l=>{const m=typeof l=="string"?l:l.target.value;if(e.onChange(m),t&&p&&c?.setParentOnChange){const a=c.setParentOnChange(m,o||{});a!=null&&p(t.field,a,{shouldValidate:!0,shouldDirty:!0})}};return C(j,{label:s(O),value:e.value!==void 0&&e.value!==null?String(e.value):"",onChange:v,onBlur:e.onBlur,options:b,error:!!d[i],helperText:d[i]?.message,required:n?.required})}})}export{_ as ControlledDropdownField};
@@ -1 +1 @@
1
- "use client";import{jsx as m}from"react/jsx-runtime";import{useMemo as c}from"react";import{Controller as b,useWatch as h}from"react-hook-form";import{translateLabel as A}from"../../../forms/utils";import{MultiDropdownComponent as x}from"../../form/fields";import{convertValidationRules as O}from"../types";function D(f){const{control:s,errors:u,fieldConfig:t,t:a}=f,{name:l,label:v,validation:o}=t,r=h({control:s}),d="dependsOn"in t?t.dependsOn:void 0,g=d&&r?r[d.field]:void 0,p=c(()=>{const e=o?.options;return e?typeof e=="function"?e(r||{}):e:[]},[o?.options,r,g]),y=c(()=>p.map(e=>({value:String(e.value),label:A(e.label,a)})),[p,a]);return m(b,{name:l,control:s,rules:o?O(o):void 0,render:({field:e})=>{const C=i=>{let n;if(Array.isArray(i))n=i;else try{n=JSON.parse(i.target.value)}catch{n=[]}e.onChange(n)};return m(x,{...e,label:a(v),value:Array.isArray(e.value)?e.value:[],onChange:C,onBlur:e.onBlur,options:y,error:!!u[l],helperText:u[l]?.message,required:o?.required})}})}export{D as ControlledMultiDropdownField};
1
+ "use client";import{jsx as m}from"react/jsx-runtime";import{useMemo as c}from"react";import{Controller as y,useWatch as O}from"react-hook-form";import{translateLabel as b}from"../../../forms/utils";import{MultiDropdownComponent as x}from"../../form/fields";import{convertValidationRules as A}from"../types";function D(f){const{control:i,errors:u,fieldConfig:t,t:a}=f,{name:l,label:g,validation:n}=t,r=O({control:i}),p="dependsOn"in t?t.dependsOn:void 0,h=p&&r?r[p.field]:void 0,d=c(()=>{const e=n?.options;return e?typeof e=="function"?e(r||{}):e:[]},[n?.options,r,h]),C=c(()=>d.map(e=>({value:String(e.value),label:b(e.label,a)})),[d,a]);return m(y,{name:l,control:i,rules:n?A(n):void 0,render:({field:e})=>{const v=s=>{let o;if(Array.isArray(s))o=s;else try{o=JSON.parse(s.target.value)}catch{o=[]}e.onChange(o)};return m(x,{...e,label:a(g),value:Array.isArray(e.value)?e.value:[],onChange:v,onBlur:e.onBlur,options:C,error:!!u[l],helperText:u[l]?.message,required:n?.required})}})}export{D as ControlledMultiDropdownField};
@@ -1 +1 @@
1
- "use client";import{jsx as p}from"react/jsx-runtime";import{useMemo as u}from"react";import{Controller as b,useWatch as h}from"react-hook-form";import{translateLabel as x}from"../../../forms/utils";import{RadioFieldComponent as R}from"../../form/fields";import{convertValidationRules as q}from"../types";function O(f){const{control:i,errors:s,fieldConfig:n,t}=f,{name:a,label:c,validation:o}=n,r=h({control:i}),d="dependsOn"in n?n.dependsOn:void 0,v=d&&r?r[d.field]:void 0,m=u(()=>{const e=o?.options;return e?typeof e=="function"?e(r||{}):e:[]},[o?.options,r,v]),g=u(()=>m.map(e=>({value:String(e.value),label:x(e.label,t)})),[m,t]);return p(b,{name:a,control:i,rules:o?q(o):void 0,render:({field:e})=>p(R,{...e,label:t(c),value:e.value??void 0,onChange:l=>{const C=typeof l=="string"?l:l.target.value;e.onChange(C)},options:g,error:!!s[a],helperText:s[a]?.message,required:o?.required})})}export{O as ControlledRadioField};
1
+ "use client";import{jsx as p}from"react/jsx-runtime";import{useMemo as m}from"react";import{Controller as v,useWatch as O}from"react-hook-form";import{translateLabel as h}from"../../../forms/utils";import{RadioFieldComponent as x}from"../../form/fields";import{convertValidationRules as V}from"../types";function L(f){const{control:a,errors:l,fieldConfig:r,t}=f,{name:i,label:c,validation:n}=r,o=O({control:a}),d="dependsOn"in r?r.dependsOn:void 0,g=d&&o?o[d.field]:void 0,u=m(()=>{const e=n?.options;return e?typeof e=="function"?e(o||{}):e:[]},[n?.options,o,g]),C=m(()=>u.map(e=>({value:String(e.value),label:h(e.label,t)})),[u,t]);return p(v,{name:i,control:a,rules:n?V(n):void 0,render:({field:e})=>p(x,{...e,label:t(c),value:e.value??void 0,onChange:s=>{const b=typeof s=="string"?s:s.target.value;e.onChange(b)},options:C,error:!!l[i],helperText:l[i]?.message,required:n?.required})})}export{L as ControlledRadioField};
@@ -1 +1 @@
1
- "use client";import{jsx as m}from"react/jsx-runtime";import{useMemo as C}from"react";import{Controller as F}from"react-hook-form";import{useCrudList as _}from"../../../useCrudList";import x from"../../form/fields/ReferenceFieldComponent";import{convertValidationRules as L}from"../types";const R=["name","title","label","displayName"];function p(e,o,l){if(o?.length){const r=o.map(i=>e[i]).filter(i=>i!=null&&i!=="");if(r.length)return r.join(" ")}if(l&&e[l]!=null&&e[l]!=="")return String(e[l]);for(const r of R)if(e[r]!=null&&e[r]!=="")return String(e[r]);return e.id??"?"}function S(e){const{control:o,errors:l,fieldConfig:r,t:i,placeholder:c}=e,{name:d,label:b,validation:a,options:s={}}=r,f=a?.reference,t=s.fieldSpecific,{items:u,loading:g}=_(f??"__disabled__",{enabled:!!f}),h=C(()=>u.map(n=>({id:n.id,label:p(n,t?.labelFields,t?.displayField)})),[u,t?.labelFields,t?.displayField]);return m(F,{name:d,control:o,rules:a?L(a):void 0,render:({field:n})=>m(x,{label:i(b),value:n.value??"",onChange:v=>n.onChange(v),onBlur:n.onBlur,options:h,isLoading:g,error:!!l[d],helperText:l[d]?.message,required:a?.required,placeholder:c||s.placeholder})})}export{S as ControlledReferenceField,p as buildReferenceLabel};
1
+ "use client";import{jsx as u}from"react/jsx-runtime";import{useMemo as C}from"react";import{Controller as _}from"react-hook-form";import{useCrudList as x}from"../../../useCrudList";import S from"../../form/fields/ReferenceFieldComponent";import{convertValidationRules as L}from"../types";const R=["name","title","label","displayName"];function T(e,t,n){if(t?.length){const r=t.map(o=>e[o]).filter(o=>o!=null&&o!=="");if(r.length)return r.join(" ")}if(n&&e[n]!=null&&e[n]!=="")return String(e[n]);for(const r of R)if(e[r]!=null&&e[r]!=="")return String(e[r]);return e.id??"?"}function B(e){const{control:t,errors:n,fieldConfig:r,t:o,placeholder:p}=e,{name:s,label:m,validation:i,options:c={}}=r,f=i?.reference,a=c.fieldSpecific,{items:d,loading:g}=x(f??"__disabled__",{enabled:!!f}),b=C(()=>d.map(l=>({id:l.id,label:T(l,a?.labelFields,a?.displayField)})),[d,a?.labelFields,a?.displayField]);return u(_,{name:s,control:t,rules:i?L(i):void 0,render:({field:l})=>u(S,{label:o(m),value:l.value??"",onChange:h=>l.onChange(h),onBlur:l.onBlur,options:b,isLoading:g,error:!!n[s],helperText:n[s]?.message,required:i?.required,placeholder:p||c.placeholder})})}export{B as ControlledReferenceField,T as buildReferenceLabel};
@@ -1 +1 @@
1
- "use client";import{jsx as i}from"react/jsx-runtime";import{useMemo as h}from"react";import{Controller as b}from"react-hook-form";import{translateLabel as C}from"../../../forms/utils";import{ComboboxComponent as x}from"../../form/fields";import{convertValidationRules as y}from"../types";function S(s){const{control:m,errors:n,fieldConfig:u,t:c,placeholder:p}=s,{name:l,label:d,validation:r,options:f={}}=u,v=h(()=>{const e=r?.min??1900,t=r?.max??new Date().getFullYear()+10,a=[];for(let o=t;o>=e;o--)a.push({value:String(o),label:String(o)});return a},[r?.min,r?.max]);return i(b,{name:l,control:m,rules:r?y(r):void 0,render:({field:e})=>{const t=a=>{const o=typeof a=="string"?a:a.target.value,g=o===""?void 0:Number(o);e.onChange(g)};return i(x,{...e,label:C(d,c),value:e.value!==void 0&&e.value!==null?String(e.value):"",onChange:t,onBlur:e.onBlur,options:v,error:!!n[l],helperText:n[l]?.message,required:r?.required,placeholder:p||f.placeholder,translationNamespace:"crud",placeholderKey:"actions.selectYear",placeholderDefault:"Select or type year",creatable:!0})}})}export{S as ControlledYearField};
1
+ "use client";import{jsx as s}from"react/jsx-runtime";import{useMemo as b}from"react";import{Controller as x}from"react-hook-form";import{translateLabel as C}from"../../../forms/utils";import{ComboboxComponent as y}from"../../form/fields";import{convertValidationRules as v}from"../types";function B(i){const{control:u,errors:l,fieldConfig:m,t:c,placeholder:p}=i,{name:t,label:d,validation:r,options:f={}}=m,g=b(()=>{const e=r?.min??1900,a=r?.max??new Date().getFullYear()+10,n=[];for(let o=a;o>=e;o--)n.push({value:String(o),label:String(o)});return n},[r?.min,r?.max]);return s(x,{name:t,control:u,rules:r?v(r):void 0,render:({field:e})=>{const a=n=>{const o=typeof n=="string"?n:n.target.value,h=o===""?void 0:Number(o);e.onChange(h)};return s(y,{...e,label:C(d,c),value:e.value!==void 0&&e.value!==null?String(e.value):"",onChange:a,onBlur:e.onBlur,options:g,error:!!l[t],helperText:l[t]?.message,required:r?.required,placeholder:p||f.placeholder,translationNamespace:"crud",placeholderKey:"actions.selectYear",placeholderDefault:"Select or type year",creatable:!0})}})}export{B as ControlledYearField};
@@ -1 +1 @@
1
- import{ControlledComboboxField as o}from"./ControlledComboboxField";import{ControlledDropdownField as l}from"./ControlledDropdownField";import{ControlledMultiDropdownField as e}from"./ControlledMultiDropdownField";import{ControlledRadioField as r}from"./ControlledRadioField";import{ControlledReferenceField as d}from"./ControlledReferenceField";import{ControlledYearField as i}from"./ControlledYearField";export{o as ControlledComboboxField,l as ControlledDropdownField,e as ControlledMultiDropdownField,r as ControlledRadioField,d as ControlledReferenceField,i as ControlledYearField};
1
+ import{ControlledComboboxField as r}from"./ControlledComboboxField";import{ControlledDropdownField as d}from"./ControlledDropdownField";import{ControlledMultiDropdownField as n}from"./ControlledMultiDropdownField";import{ControlledRadioField as p}from"./ControlledRadioField";import{ControlledReferenceField as m}from"./ControlledReferenceField";import{ControlledYearField as C}from"./ControlledYearField";export{r as ControlledComboboxField,d as ControlledDropdownField,n as ControlledMultiDropdownField,p as ControlledRadioField,m as ControlledReferenceField,C as ControlledYearField};
@@ -1 +1 @@
1
- "use client";function i(e){if(e){if(e instanceof RegExp)return e;try{const t=/^\/(.*)\/([gimyus]*)$/.exec(e);if(t){const[,r,n]=t;if(r)return new RegExp(r,n)}return new RegExp(e)}catch{return}}}function a(e){if(!e)return{};const t={};return e.required!==void 0&&(t.required=e.required),e.min!==void 0&&(t.min=e.min),e.max!==void 0&&(t.max=e.max),e.minLength!==void 0&&(t.minLength=e.minLength),e.maxLength!==void 0&&(t.maxLength=e.maxLength),e.pattern&&typeof e.pattern=="string"&&(t.pattern={value:i(e.pattern)||/.*/,message:"Invalid format"}),t}export{i as convertPatternToRegex,a as convertValidationRules};
1
+ "use client";function f(e){if(e){if(e instanceof RegExp)return e;try{const n=/^\/(.*)\/([gimyus]*)$/.exec(e);if(n){const[,r,t]=n;if(r)return new RegExp(r,t)}return new RegExp(e)}catch{return}}}function u(e){if(!e)return{};const n={};return e.required!==void 0&&(n.required=e.required),e.min!==void 0&&(n.min=e.min),e.max!==void 0&&(n.max=e.max),e.minLength!==void 0&&(n.minLength=e.minLength),e.maxLength!==void 0&&(n.maxLength=e.maxLength),e.pattern&&typeof e.pattern=="string"&&(n.pattern={value:f(e.pattern)||/.*/,message:"Invalid format"}),n}export{f as convertPatternToRegex,u as convertValidationRules};
@@ -14,7 +14,7 @@ export interface AvatarFieldDisplayProps {
14
14
  /**
15
15
  * AvatarFieldDisplay - Displays image values as avatars
16
16
  *
17
- * @version 0.0.1
17
+ * @version 0.1.0
18
18
  * @since 0.0.1
19
19
  * @author AMBROISE PARK Consulting
20
20
  */
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{Avatar as n,Text as p}from"@donotdev/components";const l=({config:a,value:s,t:d,className:t,size:r="md"})=>{if(!s)return e(p,{as:"span",variant:"muted",className:t,children:"-"});const i={sm:"size-touch",md:"size-touch",lg:"h-16 w-16"},c=m=>m.split(" ").map(o=>o.charAt(0)).slice(0,2).join("").toUpperCase();return e(n,{src:s,alt:a.label||"Avatar",fallback:c(a.label||"AV"),className:`${i[r]} ${t||""}`})};var u=l;export{l as AvatarFieldDisplay,u as default};
1
+ import{jsx as e}from"react/jsx-runtime";import{Avatar as m,Text as n}from"@donotdev/components";const p=({config:t,value:a,t:d,className:s,size:r="md"})=>{if(!a)return e(n,{as:"span",variant:"muted",className:s,children:"-"});const l={sm:"size-touch",md:"size-touch",lg:"h-16 w-16"},i=o=>o.split(" ").map(c=>c.charAt(0)).slice(0,2).join("").toUpperCase();return e(m,{src:a,alt:t.label||"Avatar",fallback:i(t.label||"AV"),className:`${l[r]} ${s||""}`})};var x=p;export{p as AvatarFieldDisplay,x as default};
@@ -12,7 +12,7 @@ export interface BadgeFieldDisplayProps {
12
12
  /**
13
13
  * BadgeFieldDisplay - Displays boolean/select values as badges
14
14
  *
15
- * @version 0.0.1
15
+ * @version 0.1.0
16
16
  * @since 0.0.1
17
17
  * @author AMBROISE PARK Consulting
18
18
  */
@@ -1 +1 @@
1
- import{jsx as o}from"react/jsx-runtime";import{Badge as l,Text as r}from"@donotdev/components";const n=({config:m,value:a,t:s,className:e})=>{if(a==null)return o(r,{as:"span",variant:"muted",className:e,children:"-"});const t=typeof a=="boolean"?s(a?"common.yes":"common.no"):String(a);return o(l,{variant:typeof a=="boolean"?a?"default":"secondary":"outline",className:e,children:t})};var i=n;export{n as BadgeFieldDisplay,i as default};
1
+ import{jsx as e}from"react/jsx-runtime";import{Badge as a,Text as i}from"@donotdev/components";const s=({config:d,value:n,t:o,className:t})=>{if(n==null)return e(i,{as:"span",variant:"muted",className:t,children:"-"});const r=typeof n=="boolean"?o(n?"common.yes":"common.no"):String(n);return e(a,{variant:typeof n=="boolean"?n?"default":"secondary":"outline",className:t,children:r})};var p=s;export{s as BadgeFieldDisplay,p as default};
@@ -2,7 +2,7 @@
2
2
  * @fileoverview ButtonFieldDisplay component
3
3
  * @description Button fields are not displayed in read-only mode
4
4
  *
5
- * @version 0.0.1
5
+ * @version 0.1.0
6
6
  * @since 0.0.1
7
7
  * @author AMBROISE PARK Consulting
8
8
  */
@@ -20,7 +20,7 @@ export interface ButtonFieldDisplayProps {
20
20
  /**
21
21
  * ButtonFieldDisplay - Button fields are not displayed in read-only mode
22
22
  *
23
- * @version 0.0.1
23
+ * @version 0.1.0
24
24
  * @since 0.0.1
25
25
  * @author AMBROISE PARK Consulting
26
26
  */
@@ -1 +1 @@
1
- const a=()=>null;var t=a;export{a as ButtonFieldDisplay,t as default};
1
+ const t=()=>null;var e=t;export{t as ButtonFieldDisplay,e as default};
@@ -12,7 +12,7 @@ export interface CheckboxFieldDisplayProps {
12
12
  /**
13
13
  * CheckboxFieldDisplay - Displays checkbox/boolean values as badges
14
14
  *
15
- * @version 0.0.1
15
+ * @version 0.1.0
16
16
  * @since 0.0.1
17
17
  * @author AMBROISE PARK Consulting
18
18
  */
@@ -1 +1 @@
1
- import{jsx as s}from"react/jsx-runtime";import{Badge as c,Text as l}from"@donotdev/components";const n=({config:t,value:a,t:o,className:e})=>{if(a==null)return s(l,{as:"span",variant:"muted",className:e,children:"-"});const r=o(a?"common.yes":"common.no");return s(c,{variant:a?"default":"secondary",className:e,children:r})};var m=n;export{n as CheckboxFieldDisplay,m as default};
1
+ import{jsx as r}from"react/jsx-runtime";import{Badge as t,Text as i}from"@donotdev/components";const s=({config:c,value:n,t:a,className:o})=>{if(n==null)return r(i,{as:"span",variant:"muted",className:o,children:"-"});const e=a(n?"common.yes":"common.no");return r(t,{variant:n?"default":"secondary",className:o,children:e})};var f=s;export{s as CheckboxFieldDisplay,f as default};
@@ -15,7 +15,7 @@ export interface DateFieldDisplayProps {
15
15
  /**
16
16
  * DateFieldDisplay - Displays date values in read-only mode
17
17
  *
18
- * @version 0.0.1
18
+ * @version 0.1.0
19
19
  * @since 0.0.1
20
20
  * @author AMBROISE PARK Consulting
21
21
  */
@@ -1 +1 @@
1
- import{jsx as a,jsxs as d}from"react/jsx-runtime";import{Text as e,Spinner as o}from"@donotdev/components";const l=({config:i,value:t,t:u,className:s,loading:c=!1})=>{if(c)return a(o,{className:s});if(!t)return a(e,{as:"span",variant:"muted",className:s,children:"-"});try{const n=new Date(t),r=n.toLocaleDateString(),m=n.toLocaleTimeString();return i.type==="date"?a(e,{as:"span",className:s,children:r}):d("div",{className:s,children:[a(e,{as:"span",children:r}),a(e,{as:"span",variant:"muted",level:"small",children:m})]})}catch{return a(e,{as:"span",variant:"muted",className:s,children:"-"})}};var p=l;export{l as DateFieldDisplay,p as default};
1
+ import{jsx as e,jsxs as d}from"react/jsx-runtime";import{Text as a,Spinner as c}from"@donotdev/components";const m=({config:i,value:n,t:p,className:t,loading:l=!1})=>{if(l)return e(c,{className:t});if(!n)return e(a,{as:"span",variant:"muted",className:t,children:"-"});try{const r=new Date(n),s=r.toLocaleDateString(),o=r.toLocaleTimeString();return i.type==="date"?e(a,{as:"span",className:t,children:s}):d("div",{className:t,children:[e(a,{as:"span",children:s}),e(a,{as:"span",variant:"muted",level:"small",children:o})]})}catch{return e(a,{as:"span",variant:"muted",className:t,children:"-"})}};var h=m;export{m as DateFieldDisplay,h as default};
@@ -12,7 +12,7 @@ export interface DropdownDisplayProps {
12
12
  /**
13
13
  * DropdownDisplay - Displays select values as badges
14
14
  *
15
- * @version 0.0.1
15
+ * @version 0.1.0
16
16
  * @since 0.0.1
17
17
  * @author AMBROISE PARK Consulting
18
18
  */
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{Badge as t,BADGE_VARIANT as o,Text as i}from"@donotdev/components";const r=({config:n,value:a,t:c,className:s})=>a?e(t,{variant:o.OUTLINE,className:s,children:a}):e(i,{as:"span",variant:"muted",className:s,children:"-"});var l=r;export{r as DropdownDisplay,l as default};
1
+ import{jsx as a}from"react/jsx-runtime";import{Badge as e,BADGE_VARIANT as n,Text as o}from"@donotdev/components";const i=({config:s,value:r,t:p,className:t})=>r?a(e,{variant:n.OUTLINE,className:t,children:r}):a(o,{as:"span",variant:"muted",className:t,children:"-"});var c=i;export{i as DropdownDisplay,c as default};
@@ -12,7 +12,7 @@ export interface FileFieldDisplayProps {
12
12
  /**
13
13
  * FileFieldDisplay - Displays file values in read-only mode
14
14
  *
15
- * @version 0.0.1
15
+ * @version 0.1.0
16
16
  * @since 0.0.1
17
17
  * @author AMBROISE PARK Consulting
18
18
  */
@@ -1 +1 @@
1
- import{jsx as s,jsxs as i}from"react/jsx-runtime";import{Badge as n,BADGE_VARIANT as t,Text as l,Stack as c}from"@donotdev/components";const r=({config:m,value:a,t:o,className:e})=>a?i(c,{direction:"row",align:"center",className:e,children:[s(l,{as:"span",level:"small",children:a.name}),a.size&&i(n,{variant:t.SECONDARY,children:[(a.size/1024).toFixed(1)," KB"]})]}):s(l,{as:"span",variant:"muted",className:e,children:"-"});var d=r;export{r as FileFieldDisplay,d as default};
1
+ import{jsx as r,jsxs as s}from"react/jsx-runtime";import{Badge as a,BADGE_VARIANT as n,Text as t,Stack as l}from"@donotdev/components";const o=({config:c,value:e,t:d,className:i})=>e?s(l,{direction:"row",align:"center",className:i,children:[r(t,{as:"span",level:"small",children:e.name}),e.size&&s(a,{variant:n.SECONDARY,children:[(e.size/1024).toFixed(1)," KB"]})]}):r(t,{as:"span",variant:"muted",className:i,children:"-"});var p=o;export{o as FileFieldDisplay,p as default};
@@ -16,7 +16,7 @@ export interface GeoPointFieldDisplayProps {
16
16
  /**
17
17
  * GeoPointFieldDisplay - Displays geopoint values in read-only mode
18
18
  *
19
- * @version 0.0.1
19
+ * @version 0.1.0
20
20
  * @since 0.0.1
21
21
  * @author AMBROISE PARK Consulting
22
22
  */
@@ -1 +1 @@
1
- import{jsx as o,jsxs as t}from"react/jsx-runtime";import{Text as l}from"@donotdev/components";const e=({config:d,value:a,t:m,className:s})=>!a||a.lat===void 0&&a.lng===void 0?o(l,{as:"span",variant:"muted",className:s,children:"-"}):t(l,{as:"div",level:"small",className:`font-mono ${s||""}`,children:[a.lat?.toFixed(6),", ",a.lng?.toFixed(6)]});var i=e;export{e as GeoPointFieldDisplay,i as default};
1
+ import{jsx as s,jsxs as i}from"react/jsx-runtime";import{Text as e}from"@donotdev/components";const o=({config:r,value:t,t:d,className:n})=>!t||t.lat===void 0&&t.lng===void 0?s(e,{as:"span",variant:"muted",className:n,children:"-"}):i(e,{as:"div",level:"small",className:`font-mono ${n||""}`,children:[t.lat?.toFixed(6),", ",t.lng?.toFixed(6)]});var x=o;export{o as GeoPointFieldDisplay,x as default};
@@ -2,7 +2,7 @@
2
2
  * @fileoverview HiddenFieldDisplay component
3
3
  * @description Hidden fields are not displayed
4
4
  *
5
- * @version 0.0.1
5
+ * @version 0.1.0
6
6
  * @since 0.0.1
7
7
  * @author AMBROISE PARK Consulting
8
8
  */
@@ -21,7 +21,7 @@ export interface HiddenFieldDisplayProps {
21
21
  /**
22
22
  * HiddenFieldDisplay - Hidden fields are not displayed
23
23
  *
24
- * @version 0.0.1
24
+ * @version 0.1.0
25
25
  * @since 0.0.1
26
26
  * @author AMBROISE PARK Consulting
27
27
  */
@@ -1 +1 @@
1
- const a=()=>null;var l=a;export{a as HiddenFieldDisplay,l as default};
1
+ const e=()=>null;var l=e;export{e as HiddenFieldDisplay,l as default};
@@ -15,7 +15,7 @@ export interface ImageFieldDisplayProps {
15
15
  /**
16
16
  * ImageFieldDisplay - Displays image values as avatars
17
17
  *
18
- * @version 0.0.1
18
+ * @version 0.1.0
19
19
  * @since 0.0.1
20
20
  * @author AMBROISE PARK Consulting
21
21
  */
@@ -1 +1 @@
1
- import{jsx as t}from"react/jsx-runtime";import{Avatar as n,Text as p}from"@donotdev/components";const l=({config:a,value:s,t:d,className:e,size:r="md"})=>{if(!s)return t(p,{as:"span",variant:"muted",className:e,children:"-"});const i={sm:"size-touch",md:"size-touch",lg:"h-16 w-16"},c=m=>m.split(" ").map(o=>o.charAt(0)).slice(0,2).join("").toUpperCase();return t(n,{src:s,alt:a.label||"Image",fallback:c(a.label||"IMG"),className:`${i[r]} ${e||""}`})};var u=l;export{l as ImageFieldDisplay,u as default};
1
+ import{jsx as e}from"react/jsx-runtime";import{Avatar as c,Text as n}from"@donotdev/components";const p=({config:t,value:s,t:d,className:a,size:r="md"})=>{if(!s)return e(n,{as:"span",variant:"muted",className:a,children:"-"});const l={sm:"size-touch",md:"size-touch",lg:"h-16 w-16"},i=m=>m.split(" ").map(o=>o.charAt(0)).slice(0,2).join("").toUpperCase();return e(c,{src:s,alt:t.label||"Image",fallback:i(t.label||"IMG"),className:`${l[r]} ${a||""}`})};var x=p;export{p as ImageFieldDisplay,x as default};
@@ -13,7 +13,7 @@ export interface LinkFieldDisplayProps {
13
13
  /**
14
14
  * LinkFieldDisplay - Displays URL/email/tel values as clickable links
15
15
  *
16
- * @version 0.0.1
16
+ * @version 0.1.0
17
17
  * @since 0.0.1
18
18
  * @author AMBROISE PARK Consulting
19
19
  */
@@ -1 +1 @@
1
- import{jsx as t}from"react/jsx-runtime";import{Text as i}from"@donotdev/components";const o=({config:l,value:e,t:r,className:n})=>{if(!e)return t(i,{as:"span",variant:"muted",className:n,children:"-"});const s=(()=>{switch(l.type){case"email":return{href:`mailto:${e}`,"aria-label":r("common.sendEmailTo",{email:e})};case"tel":return{href:`tel:${e}`,"aria-label":r("common.callNumber",{number:e})};default:return{href:e,target:"_blank",rel:"noopener noreferrer","aria-label":r("common.openLink")}}})();return t("a",{...s,className:n||"",style:{color:"var(--primary)",textDecoration:"none"},onMouseEnter:a=>a.currentTarget.style.textDecoration="underline",onMouseLeave:a=>a.currentTarget.style.textDecoration="none",children:e})};var c=o;export{o as LinkFieldDisplay,c as default};
1
+ import{jsx as o}from"react/jsx-runtime";import{Text as l}from"@donotdev/components";const s=({config:a,value:e,t:r,className:t})=>{if(!e)return o(l,{as:"span",variant:"muted",className:t,children:"-"});const i=(()=>{switch(a.type){case"email":return{href:`mailto:${e}`,"aria-label":r("common.sendEmailTo",{email:e})};case"tel":return{href:`tel:${e}`,"aria-label":r("common.callNumber",{number:e})};default:return{href:e,target:"_blank",rel:"noopener noreferrer","aria-label":r("common.openLink")}}})();return o("a",{...i,className:t||"",style:{color:"var(--primary)",textDecoration:"none"},onMouseEnter:n=>n.currentTarget.style.textDecoration="underline",onMouseLeave:n=>n.currentTarget.style.textDecoration="none",children:e})};var u=s;export{s as LinkFieldDisplay,u as default};
@@ -16,7 +16,7 @@ export interface MapFieldDisplayProps {
16
16
  /**
17
17
  * MapFieldDisplay - Displays map values in read-only mode
18
18
  *
19
- * @version 0.0.1
19
+ * @version 0.1.0
20
20
  * @since 0.0.1
21
21
  * @author AMBROISE PARK Consulting
22
22
  */
@@ -1 +1 @@
1
- import{jsx as o,jsxs as i}from"react/jsx-runtime";import{Text as l}from"@donotdev/components";const e=({config:d,value:a,t:m,className:s})=>!a||a.lat===void 0&&a.lng===void 0?o(l,{as:"span",variant:"muted",className:s,children:"-"}):i(l,{as:"div",level:"small",className:`font-mono ${s||""}`,children:[a.lat?.toFixed(6),", ",a.lng?.toFixed(6)]});var t=e;export{e as MapFieldDisplay,t as default};
1
+ import{jsx as e,jsxs as i}from"react/jsx-runtime";import{Text as s}from"@donotdev/components";const o=({config:r,value:t,t:d,className:n})=>!t||t.lat===void 0&&t.lng===void 0?e(s,{as:"span",variant:"muted",className:n,children:"-"}):i(s,{as:"div",level:"small",className:`font-mono ${n||""}`,children:[t.lat?.toFixed(6),", ",t.lng?.toFixed(6)]});var x=o;export{o as MapFieldDisplay,x as default};
@@ -13,7 +13,7 @@ export interface MultiDropdownDisplayProps {
13
13
  /**
14
14
  * MultiDropdownDisplay - Displays multiselect values as multiple badges
15
15
  *
16
- * @version 0.0.1
16
+ * @version 0.1.0
17
17
  * @since 0.0.1
18
18
  * @author AMBROISE PARK Consulting
19
19
  */
@@ -1 +1 @@
1
- import{jsx as r}from"react/jsx-runtime";import{Badge as n,BADGE_VARIANT as l,Text as o,Stack as c}from"@donotdev/components";const t=({config:p,value:a,t:d,className:s})=>!a||!Array.isArray(a)||a.length===0?r(o,{as:"span",variant:"muted",className:s,children:"-"}):r(c,{direction:"row",wrap:"wrap",className:s,children:a.map((e,i)=>r(n,{variant:l.OUTLINE,children:String(e)},i))});var m=t;export{t as MultiDropdownDisplay,m as default};
1
+ import{jsx as t}from"react/jsx-runtime";import{Badge as o,BADGE_VARIANT as e,Text as p,Stack as s}from"@donotdev/components";const c=({config:d,value:r,t:m,className:a})=>!r||!Array.isArray(r)||r.length===0?t(p,{as:"span",variant:"muted",className:a,children:"-"}):t(s,{direction:"row",wrap:"wrap",className:a,children:r.map((i,n)=>t(o,{variant:e.OUTLINE,children:String(i)},n))});var x=c;export{c as MultiDropdownDisplay,x as default};
@@ -13,7 +13,7 @@ export interface MultiInputTextFieldDisplayProps {
13
13
  /**
14
14
  * MultiInputTextFieldDisplay - Displays array values as multiple badges
15
15
  *
16
- * @version 0.0.1
16
+ * @version 0.1.0
17
17
  * @since 0.0.1
18
18
  * @author AMBROISE PARK Consulting
19
19
  */
@@ -1 +1 @@
1
- import{jsx as r}from"react/jsx-runtime";import{Badge as l,BADGE_VARIANT as n,Text as c,Stack as m}from"@donotdev/components";const e=({config:p,value:a,t:d,className:s})=>!a||!Array.isArray(a)||a.length===0?r(c,{as:"span",variant:"muted",className:s,children:"-"}):r(m,{direction:"row",wrap:"wrap",className:s,children:a.map((t,i)=>r(l,{variant:n.OUTLINE,children:String(t)},i))});var o=e;export{e as MultiInputTextFieldDisplay,o as default};
1
+ import{jsx as t}from"react/jsx-runtime";import{Badge as e,BADGE_VARIANT as o,Text as p,Stack as s}from"@donotdev/components";const c=({config:d,value:r,t:m,className:i})=>!r||!Array.isArray(r)||r.length===0?t(p,{as:"span",variant:"muted",className:i,children:"-"}):t(s,{direction:"row",wrap:"wrap",className:i,children:r.map((a,n)=>t(e,{variant:o.OUTLINE,children:String(a)},n))});var f=c;export{c as MultiInputTextFieldDisplay,f as default};
@@ -15,7 +15,7 @@ export interface NumberFieldDisplayProps {
15
15
  /**
16
16
  * NumberFieldDisplay - Displays number values in read-only mode
17
17
  *
18
- * @version 0.0.1
18
+ * @version 0.1.0
19
19
  * @since 0.0.1
20
20
  * @author AMBROISE PARK Consulting
21
21
  */
@@ -1 +1 @@
1
- import{jsx as s}from"react/jsx-runtime";import{Text as e,Spinner as r}from"@donotdev/components";const n=({config:i,value:l,t:m,className:a,loading:o=!1})=>o?s(r,{className:a}):l==null?s(e,{as:"span",variant:"muted",className:a,children:"-"}):s(e,{as:"span",className:`font-mono ${a||""}`,children:l.toLocaleString()});var t=n;export{n as NumberFieldDisplay,t as default};
1
+ import{jsx as e}from"react/jsx-runtime";import{Text as t,Spinner as o}from"@donotdev/components";const s=({config:a,value:n,t:f,className:r,loading:i=!1})=>i?e(o,{className:r}):n==null?e(t,{as:"span",variant:"muted",className:r,children:"-"}):e(t,{as:"span",className:`font-mono ${r||""}`,children:n.toLocaleString()});var p=s;export{s as NumberFieldDisplay,p as default};
@@ -15,7 +15,7 @@ export interface PasswordFieldDisplayProps {
15
15
  /**
16
16
  * PasswordFieldDisplay - Displays password values with show/hide toggle and copy functionality
17
17
  *
18
- * @version 0.0.1
18
+ * @version 0.1.0
19
19
  * @since 0.0.1
20
20
  * @author AMBROISE PARK Consulting
21
21
  */
@@ -1 +1 @@
1
- import{jsx as o,jsxs as t}from"react/jsx-runtime";import{Eye as c,EyeOff as n}from"lucide-react";import{useState as u}from"react";import{Skeleton as m,Button as y,CopyToClipboard as f,Stack as i}from"@donotdev/components";const l=({config:g,value:e,t:r,className:s,loading:d=!1})=>{const[a,p]=u(!1);return d?o(m,{className:s}):e?t(i,{direction:"row",align:"center",className:s,children:[o("span",{style:{fontFamily:"monospace"},children:a?e:"\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"}),t(i,{direction:"row",align:"center",gap:"tight",children:[o(y,{type:"button",onClick:()=>p(!a),"aria-label":a?"Hide password":"Show password",children:a?o(n,{}):o(c,{})}),o(f,{text:e,tooltipText:r("copyToClipboard")||"Copy to clipboard",copiedTooltipText:r("copied")||"Copied!",ariaLabel:r("copyPassword")||"Copy password"})]})]}):o("div",{style:{color:"var(--muted-foreground)"},children:"-"})};var w=l;export{l as PasswordFieldDisplay,w as default};
1
+ import{jsx as o,jsxs as s}from"react/jsx-runtime";import{Eye as n,EyeOff as d}from"lucide-react";import{useState as c}from"react";import{Skeleton as f,Button as m,CopyToClipboard as y,Stack as a}from"@donotdev/components";const x=({config:b,value:r,t:i,className:t,loading:l=!1})=>{const[e,p]=c(!1);return l?o(f,{className:t}):r?s(a,{direction:"row",align:"center",className:t,children:[o("span",{style:{fontFamily:"monospace"},children:e?r:"\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"}),s(a,{direction:"row",align:"center",gap:"tight",children:[o(m,{type:"button",onClick:()=>p(!e),"aria-label":e?"Hide password":"Show password",children:e?o(d,{}):o(n,{})}),o(y,{text:r,tooltipText:i("copyToClipboard")||"Copy to clipboard",copiedTooltipText:i("copied")||"Copied!",ariaLabel:i("copyPassword")||"Copy password"})]})]}):o("div",{style:{color:"var(--muted-foreground)"},children:"-"})};var g=x;export{x as PasswordFieldDisplay,g as default};
@@ -13,7 +13,7 @@ export interface PhoneNumberDisplayProps {
13
13
  /**
14
14
  * PhoneNumberDisplay - Displays phone number values as clickable links
15
15
  *
16
- * @version 0.0.1
16
+ * @version 0.1.0
17
17
  * @since 0.0.1
18
18
  * @author AMBROISE PARK Consulting
19
19
  */
@@ -1 +1 @@
1
- import{jsx as t}from"react/jsx-runtime";import{Text as s}from"@donotdev/components";const n=({config:c,value:e,t:o,className:r})=>e?t("a",{href:`tel:${e}`,className:r||"",style:{color:"var(--primary)",textDecoration:"none"},onMouseEnter:a=>a.currentTarget.style.textDecoration="underline",onMouseLeave:a=>a.currentTarget.style.textDecoration="none","aria-label":o("common.callNumber",{number:e}),children:e}):t(s,{as:"span",variant:"muted",className:r,children:"-"});var l=n;export{n as PhoneNumberDisplay,l as default};
1
+ import{jsx as n}from"react/jsx-runtime";import{Text as a}from"@donotdev/components";const i=({config:s,value:e,t:o,className:t})=>e?n("a",{href:`tel:${e}`,className:t||"",style:{color:"var(--primary)",textDecoration:"none"},onMouseEnter:r=>r.currentTarget.style.textDecoration="underline",onMouseLeave:r=>r.currentTarget.style.textDecoration="none","aria-label":o("common.callNumber",{number:e}),children:e}):n(a,{as:"span",variant:"muted",className:t,children:"-"});var m=i;export{i as PhoneNumberDisplay,m as default};
@@ -13,7 +13,7 @@ export interface RadioFieldDisplayProps {
13
13
  /**
14
14
  * RadioFieldDisplay - Displays radio values as badges
15
15
  *
16
- * @version 0.0.1
16
+ * @version 0.1.0
17
17
  * @since 0.0.1
18
18
  * @author AMBROISE PARK Consulting
19
19
  */