@star-insure/sdk 6.0.14 → 6.0.15

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 (305) hide show
  1. package/dist/index.d.ts +21 -0
  2. package/dist/sdk.es.js +71 -67
  3. package/dist/sdk.es.js.map +1 -1
  4. package/dist/sdk.es10.js +1 -1
  5. package/dist/sdk.es100.js +61 -44
  6. package/dist/sdk.es100.js.map +1 -1
  7. package/dist/sdk.es101.js +63 -48
  8. package/dist/sdk.es101.js.map +1 -1
  9. package/dist/sdk.es102.js +74 -27
  10. package/dist/sdk.es102.js.map +1 -1
  11. package/dist/sdk.es103.js +70 -21
  12. package/dist/sdk.es103.js.map +1 -1
  13. package/dist/sdk.es104.js +29 -55
  14. package/dist/sdk.es104.js.map +1 -1
  15. package/dist/sdk.es105.js +35 -61
  16. package/dist/sdk.es105.js.map +1 -1
  17. package/dist/sdk.es106.js +29 -62
  18. package/dist/sdk.es106.js.map +1 -1
  19. package/dist/sdk.es107.js +30 -62
  20. package/dist/sdk.es107.js.map +1 -1
  21. package/dist/sdk.es108.js +70 -36
  22. package/dist/sdk.es108.js.map +1 -1
  23. package/dist/sdk.es109.js +82 -36
  24. package/dist/sdk.es109.js.map +1 -1
  25. package/dist/sdk.es11.js +1 -1
  26. package/dist/sdk.es110.js +82 -35
  27. package/dist/sdk.es110.js.map +1 -1
  28. package/dist/sdk.es111.js +79 -34
  29. package/dist/sdk.es111.js.map +1 -1
  30. package/dist/sdk.es112.js +35 -58
  31. package/dist/sdk.es112.js.map +1 -1
  32. package/dist/sdk.es113.js +36 -71
  33. package/dist/sdk.es113.js.map +1 -1
  34. package/dist/sdk.es114.js +40 -75
  35. package/dist/sdk.es114.js.map +1 -1
  36. package/dist/sdk.es115.js +32 -78
  37. package/dist/sdk.es115.js.map +1 -1
  38. package/dist/sdk.es116.js +37 -50
  39. package/dist/sdk.es116.js.map +1 -1
  40. package/dist/sdk.es117.js +38 -50
  41. package/dist/sdk.es117.js.map +1 -1
  42. package/dist/sdk.es118.js +38 -50
  43. package/dist/sdk.es118.js.map +1 -1
  44. package/dist/sdk.es119.js +33 -34
  45. package/dist/sdk.es119.js.map +1 -1
  46. package/dist/sdk.es12.js +10 -16
  47. package/dist/sdk.es12.js.map +1 -1
  48. package/dist/sdk.es120.js +29 -29
  49. package/dist/sdk.es120.js.map +1 -1
  50. package/dist/sdk.es121.js +27 -40
  51. package/dist/sdk.es121.js.map +1 -1
  52. package/dist/sdk.es122.js +35 -38
  53. package/dist/sdk.es122.js.map +1 -1
  54. package/dist/sdk.es123.js +35 -37
  55. package/dist/sdk.es123.js.map +1 -1
  56. package/dist/sdk.es124.js +26 -39
  57. package/dist/sdk.es124.js.map +1 -1
  58. package/dist/sdk.es125.js +27 -28
  59. package/dist/sdk.es125.js.map +1 -1
  60. package/dist/sdk.es126.js +6 -44
  61. package/dist/sdk.es126.js.map +1 -1
  62. package/dist/sdk.es127.js +39 -43
  63. package/dist/sdk.es127.js.map +1 -1
  64. package/dist/sdk.es128.js +2 -33
  65. package/dist/sdk.es128.js.map +1 -1
  66. package/dist/sdk.es129.js +66 -32
  67. package/dist/sdk.es129.js.map +1 -1
  68. package/dist/sdk.es13.js +16 -10
  69. package/dist/sdk.es13.js.map +1 -1
  70. package/dist/sdk.es130.js +30 -53
  71. package/dist/sdk.es130.js.map +1 -1
  72. package/dist/sdk.es131.js +10 -9
  73. package/dist/sdk.es131.js.map +1 -1
  74. package/dist/sdk.es132.js +121 -20
  75. package/dist/sdk.es132.js.map +1 -1
  76. package/dist/sdk.es133.js +84 -65
  77. package/dist/sdk.es133.js.map +1 -1
  78. package/dist/sdk.es134.js +8 -31
  79. package/dist/sdk.es134.js.map +1 -1
  80. package/dist/sdk.es135.js +11 -11
  81. package/dist/sdk.es135.js.map +1 -1
  82. package/dist/sdk.es136.js +14 -121
  83. package/dist/sdk.es136.js.map +1 -1
  84. package/dist/sdk.es137.js +14 -86
  85. package/dist/sdk.es137.js.map +1 -1
  86. package/dist/sdk.es138.js +5 -7
  87. package/dist/sdk.es138.js.map +1 -1
  88. package/dist/sdk.es139.js +3674 -10
  89. package/dist/sdk.es139.js.map +1 -1
  90. package/dist/sdk.es14.js +10 -36
  91. package/dist/sdk.es14.js.map +1 -1
  92. package/dist/sdk.es140.js +2 -14
  93. package/dist/sdk.es140.js.map +1 -1
  94. package/dist/sdk.es141.js +5 -13
  95. package/dist/sdk.es141.js.map +1 -1
  96. package/dist/sdk.es142.js +5 -5
  97. package/dist/sdk.es142.js.map +1 -1
  98. package/dist/sdk.es143.js +10 -24
  99. package/dist/sdk.es143.js.map +1 -1
  100. package/dist/sdk.es144.js +7 -99
  101. package/dist/sdk.es144.js.map +1 -1
  102. package/dist/sdk.es145.js +7 -47
  103. package/dist/sdk.es145.js.map +1 -1
  104. package/dist/sdk.es146.js +25 -10
  105. package/dist/sdk.es146.js.map +1 -1
  106. package/dist/sdk.es147.js +99 -9
  107. package/dist/sdk.es147.js.map +1 -1
  108. package/dist/sdk.es148.js +47 -14
  109. package/dist/sdk.es148.js.map +1 -1
  110. package/dist/sdk.es149.js +9 -10
  111. package/dist/sdk.es149.js.map +1 -1
  112. package/dist/sdk.es15.js +36 -40
  113. package/dist/sdk.es15.js.map +1 -1
  114. package/dist/sdk.es150.js +9 -5
  115. package/dist/sdk.es150.js.map +1 -1
  116. package/dist/sdk.es151.js +13 -5
  117. package/dist/sdk.es151.js.map +1 -1
  118. package/dist/sdk.es152.js +10 -10
  119. package/dist/sdk.es152.js.map +1 -1
  120. package/dist/sdk.es153.js +53 -7
  121. package/dist/sdk.es153.js.map +1 -1
  122. package/dist/sdk.es154.js +10 -7
  123. package/dist/sdk.es154.js.map +1 -1
  124. package/dist/sdk.es155.js +20 -6
  125. package/dist/sdk.es155.js.map +1 -1
  126. package/dist/sdk.es156.js +5 -13
  127. package/dist/sdk.es156.js.map +1 -1
  128. package/dist/sdk.es157.js +13 -27
  129. package/dist/sdk.es157.js.map +1 -1
  130. package/dist/sdk.es158.js +25 -12
  131. package/dist/sdk.es158.js.map +1 -1
  132. package/dist/sdk.es159.js +15 -11
  133. package/dist/sdk.es159.js.map +1 -1
  134. package/dist/sdk.es16.js +39 -25
  135. package/dist/sdk.es16.js.map +1 -1
  136. package/dist/sdk.es160.js +15 -0
  137. package/dist/sdk.es160.js.map +1 -0
  138. package/dist/sdk.es17.js +26 -4
  139. package/dist/sdk.es17.js.map +1 -1
  140. package/dist/sdk.es18.js +4 -50
  141. package/dist/sdk.es18.js.map +1 -1
  142. package/dist/sdk.es19.js +23 -78
  143. package/dist/sdk.es19.js.map +1 -1
  144. package/dist/sdk.es2.js +2 -2
  145. package/dist/sdk.es20.js +103 -42
  146. package/dist/sdk.es20.js.map +1 -1
  147. package/dist/sdk.es21.js +44 -8
  148. package/dist/sdk.es21.js.map +1 -1
  149. package/dist/sdk.es22.js +8 -39
  150. package/dist/sdk.es22.js.map +1 -1
  151. package/dist/sdk.es23.js +39 -4
  152. package/dist/sdk.es23.js.map +1 -1
  153. package/dist/sdk.es24.js +4 -4
  154. package/dist/sdk.es24.js.map +1 -1
  155. package/dist/sdk.es25.js +4 -5
  156. package/dist/sdk.es25.js.map +1 -1
  157. package/dist/sdk.es26.js +5 -7
  158. package/dist/sdk.es26.js.map +1 -1
  159. package/dist/sdk.es27.js +7 -5
  160. package/dist/sdk.es27.js.map +1 -1
  161. package/dist/sdk.es28.js +5 -46
  162. package/dist/sdk.es28.js.map +1 -1
  163. package/dist/sdk.es29.js +46 -7
  164. package/dist/sdk.es29.js.map +1 -1
  165. package/dist/sdk.es30.js +7 -103
  166. package/dist/sdk.es30.js.map +1 -1
  167. package/dist/sdk.es31.js +97 -22
  168. package/dist/sdk.es31.js.map +1 -1
  169. package/dist/sdk.es32.js +19 -156
  170. package/dist/sdk.es32.js.map +1 -1
  171. package/dist/sdk.es33.js +162 -175
  172. package/dist/sdk.es33.js.map +1 -1
  173. package/dist/sdk.es34.js +179 -20
  174. package/dist/sdk.es34.js.map +1 -1
  175. package/dist/sdk.es35.js +21 -100
  176. package/dist/sdk.es35.js.map +1 -1
  177. package/dist/sdk.es36.js +102 -59
  178. package/dist/sdk.es36.js.map +1 -1
  179. package/dist/sdk.es37.js +55 -120
  180. package/dist/sdk.es37.js.map +1 -1
  181. package/dist/sdk.es38.js +125 -3
  182. package/dist/sdk.es38.js.map +1 -1
  183. package/dist/sdk.es39.js +3 -11
  184. package/dist/sdk.es39.js.map +1 -1
  185. package/dist/sdk.es40.js +10 -4
  186. package/dist/sdk.es40.js.map +1 -1
  187. package/dist/sdk.es41.js +4 -7
  188. package/dist/sdk.es41.js.map +1 -1
  189. package/dist/sdk.es42.js +8 -2
  190. package/dist/sdk.es42.js.map +1 -1
  191. package/dist/sdk.es43.js +2 -26
  192. package/dist/sdk.es43.js.map +1 -1
  193. package/dist/sdk.es44.js +17 -593
  194. package/dist/sdk.es44.js.map +1 -1
  195. package/dist/sdk.es45.js +602 -2
  196. package/dist/sdk.es45.js.map +1 -1
  197. package/dist/sdk.es46.js +2 -2
  198. package/dist/sdk.es47.js +2 -3
  199. package/dist/sdk.es47.js.map +1 -1
  200. package/dist/sdk.es48.js +9 -5
  201. package/dist/sdk.es48.js.map +1 -1
  202. package/dist/sdk.es49.js +7 -4
  203. package/dist/sdk.es49.js.map +1 -1
  204. package/dist/sdk.es50.js +7 -7
  205. package/dist/sdk.es50.js.map +1 -1
  206. package/dist/sdk.es51.js +4 -6
  207. package/dist/sdk.es51.js.map +1 -1
  208. package/dist/sdk.es52.js +15 -8
  209. package/dist/sdk.es52.js.map +1 -1
  210. package/dist/sdk.es53.js +8 -6
  211. package/dist/sdk.es53.js.map +1 -1
  212. package/dist/sdk.es54.js +9 -7
  213. package/dist/sdk.es54.js.map +1 -1
  214. package/dist/sdk.es55.js +8 -4
  215. package/dist/sdk.es55.js.map +1 -1
  216. package/dist/sdk.es56.js +638 -15
  217. package/dist/sdk.es56.js.map +1 -1
  218. package/dist/sdk.es57.js +74 -9
  219. package/dist/sdk.es57.js.map +1 -1
  220. package/dist/sdk.es58.js +4 -9
  221. package/dist/sdk.es58.js.map +1 -1
  222. package/dist/sdk.es59.js +19 -8
  223. package/dist/sdk.es59.js.map +1 -1
  224. package/dist/sdk.es60.js +4 -638
  225. package/dist/sdk.es60.js.map +1 -1
  226. package/dist/sdk.es61.js +16 -72
  227. package/dist/sdk.es61.js.map +1 -1
  228. package/dist/sdk.es62.js +5 -4
  229. package/dist/sdk.es62.js.map +1 -1
  230. package/dist/sdk.es63.js +8 -19
  231. package/dist/sdk.es63.js.map +1 -1
  232. package/dist/sdk.es64.js +48 -4
  233. package/dist/sdk.es64.js.map +1 -1
  234. package/dist/sdk.es65.js +8 -18
  235. package/dist/sdk.es65.js.map +1 -1
  236. package/dist/sdk.es66.js +57 -6
  237. package/dist/sdk.es66.js.map +1 -1
  238. package/dist/sdk.es67.js +65 -9
  239. package/dist/sdk.es67.js.map +1 -1
  240. package/dist/sdk.es68.js +8 -48
  241. package/dist/sdk.es68.js.map +1 -1
  242. package/dist/sdk.es69.js +4 -8
  243. package/dist/sdk.es69.js.map +1 -1
  244. package/dist/sdk.es70.js +5 -57
  245. package/dist/sdk.es70.js.map +1 -1
  246. package/dist/sdk.es71.js +3 -65
  247. package/dist/sdk.es71.js.map +1 -1
  248. package/dist/sdk.es72.js +21 -8
  249. package/dist/sdk.es72.js.map +1 -1
  250. package/dist/sdk.es73.js +80 -4
  251. package/dist/sdk.es73.js.map +1 -1
  252. package/dist/sdk.es74.js +75 -20
  253. package/dist/sdk.es74.js.map +1 -1
  254. package/dist/sdk.es75.js +222 -69
  255. package/dist/sdk.es75.js.map +1 -1
  256. package/dist/sdk.es76.js +25 -75
  257. package/dist/sdk.es76.js.map +1 -1
  258. package/dist/sdk.es77.js +4 -232
  259. package/dist/sdk.es77.js.map +1 -1
  260. package/dist/sdk.es78.js +7 -25
  261. package/dist/sdk.es78.js.map +1 -1
  262. package/dist/sdk.es79.js +6 -3674
  263. package/dist/sdk.es79.js.map +1 -1
  264. package/dist/sdk.es80.js +2 -6
  265. package/dist/sdk.es80.js.map +1 -1
  266. package/dist/sdk.es81.js +11 -2
  267. package/dist/sdk.es81.js.map +1 -1
  268. package/dist/sdk.es82.js +10 -39
  269. package/dist/sdk.es82.js.map +1 -1
  270. package/dist/sdk.es83.js +13 -2
  271. package/dist/sdk.es83.js.map +1 -1
  272. package/dist/sdk.es84.js +10 -10
  273. package/dist/sdk.es84.js.map +1 -1
  274. package/dist/sdk.es85.js +18 -10
  275. package/dist/sdk.es85.js.map +1 -1
  276. package/dist/sdk.es86.js +5 -12
  277. package/dist/sdk.es86.js.map +1 -1
  278. package/dist/sdk.es87.js +55 -11
  279. package/dist/sdk.es87.js.map +1 -1
  280. package/dist/sdk.es88.js +8 -18
  281. package/dist/sdk.es88.js.map +1 -1
  282. package/dist/sdk.es89.js +4 -5
  283. package/dist/sdk.es89.js.map +1 -1
  284. package/dist/sdk.es9.js +2 -2
  285. package/dist/sdk.es90.js +13 -54
  286. package/dist/sdk.es90.js.map +1 -1
  287. package/dist/sdk.es91.js +15 -2
  288. package/dist/sdk.es91.js.map +1 -1
  289. package/dist/sdk.es92.js +3 -8
  290. package/dist/sdk.es92.js.map +1 -1
  291. package/dist/sdk.es93.js +12 -4
  292. package/dist/sdk.es93.js.map +1 -1
  293. package/dist/sdk.es94.js +8 -12
  294. package/dist/sdk.es94.js.map +1 -1
  295. package/dist/sdk.es95.js +55 -15
  296. package/dist/sdk.es95.js.map +1 -1
  297. package/dist/sdk.es96.js +57 -4
  298. package/dist/sdk.es96.js.map +1 -1
  299. package/dist/sdk.es97.js +58 -12
  300. package/dist/sdk.es97.js.map +1 -1
  301. package/dist/sdk.es98.js +33 -10
  302. package/dist/sdk.es98.js.map +1 -1
  303. package/dist/sdk.es99.js +25 -49
  304. package/dist/sdk.es99.js.map +1 -1
  305. package/package.json +1 -1
package/dist/sdk.es29.js CHANGED
@@ -1,11 +1,50 @@
1
- import { j as a } from "./sdk.es38.js";
2
- import g from "./sdk.es48.js";
3
- function c({ children: o, className: r = "", onClick: t = () => {
4
- }, ...e }) {
5
- const n = r.includes("bg") ? "" : "bg-white even:bg-gray-50";
6
- return /* @__PURE__ */ a.jsx("tr", { ...e, className: g(r, n, "hover:bg-gray-100"), onClick: (s) => t(s), children: o });
1
+ import { j as e } from "./sdk.es39.js";
2
+ import o from "react";
3
+ import { Link as x } from "@inertiajs/react";
4
+ import u from "./sdk.es70.js";
5
+ function g({
6
+ children: i,
7
+ className: c = "",
8
+ sort: s,
9
+ textAlign: r = "left",
10
+ condensed: a,
11
+ ...l
12
+ }) {
13
+ const [f, d] = o.useState("");
14
+ o.useEffect(() => {
15
+ if (typeof window < "u" && s) {
16
+ const t = new URLSearchParams(window.location.search);
17
+ let n = "asc";
18
+ t.get("sort") && (n = t.get("sort")?.includes("asc") ? "desc" : "asc"), t.set("sort", `${s} ${n}`), d(`?${t.toString()}`);
19
+ }
20
+ }, []);
21
+ const m = r === "center" && "text-center justify-center" || r === "right" && "text-right justify-end" || "text-left justify-between";
22
+ return /* @__PURE__ */ e.jsx("th", { ...l, className: u(c, "py-3.5 px-3 text-sm font-semibold text-left", {
23
+ "w-0 whitespace-nowrap": a
24
+ }), children: /* @__PURE__ */ e.jsxs("div", { className: `flex items-center gap-3 ${m}`, children: [
25
+ i,
26
+ s && /* @__PURE__ */ e.jsx(x, { href: f, children: /* @__PURE__ */ e.jsx(
27
+ "svg",
28
+ {
29
+ xmlns: "http://www.w3.org/2000/svg",
30
+ className: "h-5 w-5",
31
+ fill: "none",
32
+ viewBox: "0 0 24 24",
33
+ stroke: "currentColor",
34
+ strokeWidth: "2",
35
+ children: /* @__PURE__ */ e.jsx(
36
+ "path",
37
+ {
38
+ strokeLinecap: "round",
39
+ strokeLinejoin: "round",
40
+ d: "M8 9l4-4 4 4m0 6l-4 4-4-4"
41
+ }
42
+ )
43
+ }
44
+ ) })
45
+ ] }) });
7
46
  }
8
47
  export {
9
- c as default
48
+ g as default
10
49
  };
11
50
  //# sourceMappingURL=sdk.es29.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.es29.js","sources":["../src/components/tables/TableRow.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\n\ninterface Props extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement> {\n children: React.ReactNode;\n className?: string;\n onClick?: (e?: React.SyntheticEvent) => void;\n}\n\nexport default function TableRow({ children, className = '', onClick = () => {}, ...props }: Props) {\n const bgClass = className.includes('bg') ? '' : 'bg-white even:bg-gray-50'\n\n return (\n <tr {...props} className={cn(className, bgClass, 'hover:bg-gray-100')} onClick={(e) => onClick(e)}>\n {children}\n </tr>\n )\n}\n"],"names":["TableRow","children","className","onClick","props","bgClass","cn","e"],"mappings":";;AASA,SAAwBA,EAAS,EAAE,UAAAC,GAAU,WAAAC,IAAY,IAAI,SAAAC,IAAU,MAAM;AAAC,GAAG,GAAGC,KAAgB;AAChG,QAAMC,IAAUH,EAAU,SAAS,IAAI,IAAI,KAAK;AAEhD,+BACK,MAAI,EAAA,GAAGE,GAAO,WAAWE,EAAGJ,GAAWG,GAAS,mBAAmB,GAAG,SAAS,CAACE,MAAMJ,EAAQI,CAAC,GAC3F,UAAAN,GACL;AAER;"}
1
+ {"version":3,"file":"sdk.es29.js","sources":["../src/components/tables/TableHeader.tsx"],"sourcesContent":["import React from 'react';\nimport { Link } from '@inertiajs/react';\nimport cn from 'classnames';\n\ninterface Props extends React.DetailedHTMLProps<React.ThHTMLAttributes<HTMLTableHeaderCellElement>, HTMLTableHeaderCellElement> {\n children: React.ReactNode;\n className?: string;\n textAlign?: 'left' | 'right' | 'center';\n sort?: string;\n condensed?: true;\n}\n\nexport default function TableHeader({\n children,\n className = '',\n sort,\n textAlign = 'left',\n condensed,\n ...props\n}: Props) {\n const [sortLink, setSortLink] = React.useState<string>('');\n\n React.useEffect(() => {\n if (typeof window !== 'undefined' && sort) {\n const query = new URLSearchParams(window.location.search);\n\n let direction: 'asc' | 'desc' = 'asc';\n\n if (query.get('sort')) {\n // Choose the opposite direction for sorting\n direction = query.get('sort')?.includes('asc') ? 'desc' : 'asc';\n }\n\n query.set('sort', `${sort} ${direction}`);\n\n setSortLink(`?${query.toString()}`);\n }\n }, []);\n\n const textAlignClass =\n (textAlign === 'center' && 'text-center justify-center') ||\n (textAlign === 'right' && 'text-right justify-end') ||\n 'text-left justify-between';\n\n return (\n <th {...props} className={cn(className, 'py-3.5 px-3 text-sm font-semibold text-left', {\n 'w-0 whitespace-nowrap': condensed,\n })}>\n <div className={`flex items-center gap-3 ${textAlignClass}`}>\n {children}\n {sort && (\n <Link href={sortLink}>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"h-5 w-5\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n d=\"M8 9l4-4 4 4m0 6l-4 4-4-4\"\n />\n </svg>\n </Link>\n )}\n </div>\n </th>\n );\n}\n"],"names":["TableHeader","children","className","sort","textAlign","condensed","props","sortLink","setSortLink","React","query","direction","textAlignClass","cn","jsxs","jsx","Link"],"mappings":";;;;AAYA,SAAwBA,EAAY;AAAA,EAClC,UAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,MAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,WAAAC;AAAA,EACA,GAAGC;AACL,GAAU;AACR,QAAM,CAACC,GAAUC,CAAW,IAAIC,EAAM,SAAiB,EAAE;AAEzDA,EAAAA,EAAM,UAAU,MAAM;AAChB,QAAA,OAAO,SAAW,OAAeN,GAAM;AACzC,YAAMO,IAAQ,IAAI,gBAAgB,OAAO,SAAS,MAAM;AAExD,UAAIC,IAA4B;AAE5B,MAAAD,EAAM,IAAI,MAAM,MAElBC,IAAYD,EAAM,IAAI,MAAM,GAAG,SAAS,KAAK,IAAI,SAAS,QAG5DA,EAAM,IAAI,QAAQ,GAAGP,CAAI,IAAIQ,CAAS,EAAE,GAExCH,EAAY,IAAIE,EAAM,SAAS,CAAC,EAAE;AAAA,IAAA;AAAA,EAEtC,GAAG,EAAE;AAEL,QAAME,IACHR,MAAc,YAAY,gCAC1BA,MAAc,WAAW,4BAC1B;AAEF,+BACG,MAAI,EAAA,GAAGE,GAAO,WAAWO,EAAGX,GAAW,+CAA+C;AAAA,IACrF,yBAAyBG;AAAA,EAAA,CAC1B,GACC,UAAAS,gBAAAA,EAAA,KAAC,SAAI,WAAW,2BAA2BF,CAAc,IACtD,UAAA;AAAA,IAAAX;AAAA,IACAE,KACCY,gBAAAA,EAAA,IAACC,GAAK,EAAA,MAAMT,GACV,UAAAQ,gBAAAA,EAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,OAAM;AAAA,QACN,WAAU;AAAA,QACV,MAAK;AAAA,QACL,SAAQ;AAAA,QACR,QAAO;AAAA,QACP,aAAY;AAAA,QAEZ,UAAAA,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,eAAc;AAAA,YACd,gBAAe;AAAA,YACf,GAAE;AAAA,UAAA;AAAA,QAAA;AAAA,MACJ;AAAA,IAAA,EAEJ,CAAA;AAAA,EAAA,EAAA,CAEJ,EACF,CAAA;AAEJ;"}
package/dist/sdk.es30.js CHANGED
@@ -1,107 +1,11 @@
1
- import { j as r } from "./sdk.es38.js";
2
- import "@inertiajs/react";
3
- import "react";
4
- import "./sdk.es9.js";
5
- import "./sdk.es10.js";
6
- import "./sdk.es11.js";
7
- import { calculateAge as D } from "./sdk.es13.js";
8
- import { l as y } from "./sdk.es47.js";
9
- function E({
10
- name: s = "dob",
11
- id: c = "dob",
12
- onChange: x,
13
- value: t,
14
- maxYear: h = 0,
15
- showAge: g = !1,
16
- isRequired: a = !0
17
- }) {
18
- const f = [...Array.from(Array(31).keys())].map((e) => y.padStart(`${e + 1}`, 2, "0")), b = [
19
- "January",
20
- "February",
21
- "March",
22
- "April",
23
- "May",
24
- "June",
25
- "July",
26
- "August",
27
- "September",
28
- "October",
29
- "November",
30
- "December"
31
- ], j = [...Array.from(Array(12).keys())].map((e) => ({
32
- title: b[e],
33
- value: y.padStart(`${e + 1}`, 2, "0")
34
- })), $ = [...Array.from(Array(100).keys())].map((e) => h ? h - e : (/* @__PURE__ */ new Date()).getFullYear() - e);
35
- function i(e) {
36
- const { name: d, value: u } = e.currentTarget;
37
- let A = d.includes("year") ? u : l, N = d.includes("month") ? u : n, w = d.includes("day") ? u : o;
38
- x(`${A}-${N}-${w}`);
39
- }
40
- const [l, n, o] = t ? t.split("-") : ["", "", ""], v = l && n && o && !isNaN(Date.parse(`${l}-${n}-${o}`)), m = {
41
- backgroundPosition: "top 10px right 3px, center right 10px"
42
- }, p = {
43
- backgroundPosition: "right 0.5rem center",
44
- paddingRight: "1.5rem"
45
- };
46
- return /* @__PURE__ */ r.jsxs("span", { className: "flex flex-col gap-2", children: [
47
- /* @__PURE__ */ r.jsxs("span", { className: "flex w-full border border-gray-300 rounded-lg bg-white", children: [
48
- /* @__PURE__ */ r.jsxs(
49
- "select",
50
- {
51
- name: `${s}_day`,
52
- id: `${c}_day`,
53
- value: o,
54
- className: "flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2",
55
- onChange: i,
56
- required: a,
57
- style: a ? m : p,
58
- children: [
59
- /* @__PURE__ */ r.jsx("option", { value: "", children: "Day" }),
60
- f.map((e) => /* @__PURE__ */ r.jsx("option", { value: e, children: e }, e))
61
- ]
62
- }
63
- ),
64
- /* @__PURE__ */ r.jsxs(
65
- "select",
66
- {
67
- name: `${s}_month`,
68
- id: `${c}_month`,
69
- value: n,
70
- className: "flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2",
71
- onChange: i,
72
- required: a,
73
- style: a ? m : p,
74
- children: [
75
- /* @__PURE__ */ r.jsx("option", { value: "", children: "Month" }),
76
- j.map((e) => /* @__PURE__ */ r.jsx("option", { value: e.value, children: e.title }, e.value))
77
- ]
78
- }
79
- ),
80
- /* @__PURE__ */ r.jsxs(
81
- "select",
82
- {
83
- name: `${s}_year`,
84
- id: `${c}_year`,
85
- value: l,
86
- className: "flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2",
87
- onChange: i,
88
- required: a,
89
- style: a ? m : p,
90
- children: [
91
- /* @__PURE__ */ r.jsx("option", { value: "", children: "Year" }),
92
- $.map((e) => /* @__PURE__ */ r.jsx("option", { value: e, children: e }, e))
93
- ]
94
- }
95
- )
96
- ] }),
97
- g && t && v && /* @__PURE__ */ r.jsxs("span", { className: "font-bold", children: [
98
- "Age: ",
99
- D(t),
100
- " years"
101
- ] })
102
- ] });
1
+ import { j as a } from "./sdk.es39.js";
2
+ import g from "./sdk.es70.js";
3
+ function c({ children: o, className: r = "", onClick: t = () => {
4
+ }, ...e }) {
5
+ const n = r.includes("bg") ? "" : "bg-white even:bg-gray-50";
6
+ return /* @__PURE__ */ a.jsx("tr", { ...e, className: g(r, n, "hover:bg-gray-100"), onClick: (s) => t(s), children: o });
103
7
  }
104
8
  export {
105
- E as default
9
+ c as default
106
10
  };
107
11
  //# sourceMappingURL=sdk.es30.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.es30.js","sources":["../src/components/forms/DateOfBirthField.tsx"],"sourcesContent":["import React from 'react';\nimport { calculateAge } from '../../lib';\nimport { padStart } from 'lodash';\n\ninterface Props {\n name?: string;\n id?: string;\n onChange: (dateString: string) => void;\n value?: string;\n maxYear?: number;\n showAge?: boolean;\n isRequired?: boolean;\n}\n\nexport default function DateOfBirthField({\n name = 'dob',\n id = 'dob',\n onChange,\n value,\n maxYear = 0,\n showAge = false,\n isRequired = true\n}: Props) {\n const dayOptions = [...Array.from(Array(31).keys())].map(value => {\n return padStart(`${value + 1}`, 2, '0');\n });\n\n const months = [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n ];\n const monthOptions = [...Array.from(Array(12).keys())].map(value => {\n return {\n title: months[value],\n value: padStart(`${value + 1}`, 2, '0'),\n };\n });\n\n // Create 100 years of options, subtracting the maximum year if provided\n const yearOptions = [...Array.from(Array(100).keys())].map(value => {\n return maxYear ? maxYear - value : new Date().getFullYear() - value;\n });\n\n function handleChange(\n e: React.ChangeEvent<\n HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement\n >\n ) {\n const { name, value } = e.currentTarget;\n\n let y = name.includes('year') ? value : year;\n let m = name.includes('month') ? value : month;\n let d = name.includes('day') ? value : day;\n\n onChange(`${y}-${m}-${d}`);\n }\n\n const [year, month, day] = value ? value.split('-') : ['', '', ''];\n const isValidDate =\n year && month && day && !isNaN(Date.parse(`${year}-${month}-${day}`));\n\n const styleReq = {\n backgroundPosition: 'top 10px right 3px, center right 10px',\n }\n\n const style = {\n backgroundPosition: 'right 0.5rem center',\n paddingRight: '1.5rem'\n }\n\n return (\n <span className=\"flex flex-col gap-2\">\n <span className=\"flex w-full border border-gray-300 rounded-lg bg-white\">\n <select\n name={`${name}_day`}\n id={`${id}_day`}\n value={day}\n className=\"flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2\"\n onChange={handleChange}\n required={isRequired}\n style={isRequired ? styleReq : style}\n >\n <option value=\"\">Day</option>\n {dayOptions.map(option => (\n <option key={option} value={option}>\n {option}\n </option>\n ))}\n </select>\n <select\n name={`${name}_month`}\n id={`${id}_month`}\n value={month}\n className=\"flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2\"\n onChange={handleChange}\n required={isRequired}\n style={isRequired ? styleReq : style}\n >\n <option value=\"\">Month</option>\n {monthOptions.map(option => (\n <option key={option.value} value={option.value}>\n {option.title}\n </option>\n ))}\n </select>\n <select\n name={`${name}_year`}\n id={`${id}_year`}\n value={year}\n className=\"flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2\"\n onChange={handleChange}\n required={isRequired}\n style={isRequired ? styleReq : style}\n >\n <option value=\"\">Year</option>\n {yearOptions.map(option => (\n <option key={option} value={option}>\n {option}\n </option>\n ))}\n </select>\n </span>\n {showAge && value && isValidDate && (\n <span className=\"font-bold\">Age: {calculateAge(value)} years</span>\n )}\n </span>\n );\n}\n"],"names":["DateOfBirthField","name","id","onChange","value","maxYear","showAge","isRequired","dayOptions","padStart","months","monthOptions","yearOptions","handleChange","y","year","m","month","d","day","isValidDate","styleReq","style","jsxs","jsx","option","calculateAge"],"mappings":"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"}
1
+ {"version":3,"file":"sdk.es30.js","sources":["../src/components/tables/TableRow.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\n\ninterface Props extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement> {\n children: React.ReactNode;\n className?: string;\n onClick?: (e?: React.SyntheticEvent) => void;\n}\n\nexport default function TableRow({ children, className = '', onClick = () => {}, ...props }: Props) {\n const bgClass = className.includes('bg') ? '' : 'bg-white even:bg-gray-50'\n\n return (\n <tr {...props} className={cn(className, bgClass, 'hover:bg-gray-100')} onClick={(e) => onClick(e)}>\n {children}\n </tr>\n )\n}\n"],"names":["TableRow","children","className","onClick","props","bgClass","cn","e"],"mappings":";;AASA,SAAwBA,EAAS,EAAE,UAAAC,GAAU,WAAAC,IAAY,IAAI,SAAAC,IAAU,MAAM;AAAC,GAAG,GAAGC,KAAgB;AAChG,QAAMC,IAAUH,EAAU,SAAS,IAAI,IAAI,KAAK;AAEhD,+BACK,MAAI,EAAA,GAAGE,GAAO,WAAWE,EAAGJ,GAAWG,GAAS,mBAAmB,GAAG,SAAS,CAACE,MAAMJ,EAAQI,CAAC,GAC3F,UAAAN,GACL;AAER;"}
package/dist/sdk.es31.js CHANGED
@@ -1,33 +1,108 @@
1
- import { j as e } from "./sdk.es38.js";
2
- import { formatMoney as f, formatNumber as p } from "./sdk.es3.js";
1
+ import { j as r } from "./sdk.es39.js";
3
2
  import "@inertiajs/react";
4
3
  import "react";
5
4
  import "./sdk.es9.js";
6
5
  import "./sdk.es10.js";
7
6
  import "./sdk.es11.js";
8
- function b({ value: o = 0, onChange: t, name: i = "value", id: a = "value", className: s = "", required: u = !1 }) {
9
- function l(r) {
10
- let n = 0;
11
- r.currentTarget.value && (n = p(r.currentTarget.value), isNaN(n) && (n = 0)), t(n);
7
+ import "./sdk.es12.js";
8
+ import { calculateAge as D } from "./sdk.es14.js";
9
+ import { l as y } from "./sdk.es71.js";
10
+ function P({
11
+ name: s = "dob",
12
+ id: c = "dob",
13
+ onChange: x,
14
+ value: t,
15
+ maxYear: h = 0,
16
+ showAge: g = !1,
17
+ isRequired: a = !0
18
+ }) {
19
+ const f = [...Array.from(Array(31).keys())].map((e) => y.padStart(`${e + 1}`, 2, "0")), b = [
20
+ "January",
21
+ "February",
22
+ "March",
23
+ "April",
24
+ "May",
25
+ "June",
26
+ "July",
27
+ "August",
28
+ "September",
29
+ "October",
30
+ "November",
31
+ "December"
32
+ ], j = [...Array.from(Array(12).keys())].map((e) => ({
33
+ title: b[e],
34
+ value: y.padStart(`${e + 1}`, 2, "0")
35
+ })), $ = [...Array.from(Array(100).keys())].map((e) => h ? h - e : (/* @__PURE__ */ new Date()).getFullYear() - e);
36
+ function i(e) {
37
+ const { name: d, value: u } = e.currentTarget;
38
+ let A = d.includes("year") ? u : l, N = d.includes("month") ? u : n, w = d.includes("day") ? u : o;
39
+ x(`${A}-${N}-${w}`);
12
40
  }
13
- const c = f(o, 0);
14
- return /* @__PURE__ */ e.jsxs("div", { className: `${s} flex items-center gap-2 pl-4 rounded-md border border-gray-300 transition-all focus-within:border-accent focus-within:outline-none focus-within:ring focus-within:ring-accent focus-within:ring-opacity-50`, children: [
15
- /* @__PURE__ */ e.jsx("span", { className: "font-bold pr-2", children: "$" }),
16
- /* @__PURE__ */ e.jsx(
17
- "input",
18
- {
19
- type: "text",
20
- name: i,
21
- id: a,
22
- value: c,
23
- onChange: l,
24
- className: "w-full !focus:outline-none !focus:ring-0 !focus:ring-transparent !focus:ring-opacity-0 !ring-0 !border-0 !transition-none !rounded-l-none",
25
- required: u
26
- }
27
- )
41
+ const [l, n, o] = t ? t.split("-") : ["", "", ""], v = l && n && o && !isNaN(Date.parse(`${l}-${n}-${o}`)), m = {
42
+ backgroundPosition: "top 10px right 3px, center right 10px"
43
+ }, p = {
44
+ backgroundPosition: "right 0.5rem center",
45
+ paddingRight: "1.5rem"
46
+ };
47
+ return /* @__PURE__ */ r.jsxs("span", { className: "flex flex-col gap-2", children: [
48
+ /* @__PURE__ */ r.jsxs("span", { className: "flex w-full border border-gray-300 rounded-lg bg-white", children: [
49
+ /* @__PURE__ */ r.jsxs(
50
+ "select",
51
+ {
52
+ name: `${s}_day`,
53
+ id: `${c}_day`,
54
+ value: o,
55
+ className: "flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2",
56
+ onChange: i,
57
+ required: a,
58
+ style: a ? m : p,
59
+ children: [
60
+ /* @__PURE__ */ r.jsx("option", { value: "", children: "Day" }),
61
+ f.map((e) => /* @__PURE__ */ r.jsx("option", { value: e, children: e }, e))
62
+ ]
63
+ }
64
+ ),
65
+ /* @__PURE__ */ r.jsxs(
66
+ "select",
67
+ {
68
+ name: `${s}_month`,
69
+ id: `${c}_month`,
70
+ value: n,
71
+ className: "flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2",
72
+ onChange: i,
73
+ required: a,
74
+ style: a ? m : p,
75
+ children: [
76
+ /* @__PURE__ */ r.jsx("option", { value: "", children: "Month" }),
77
+ j.map((e) => /* @__PURE__ */ r.jsx("option", { value: e.value, children: e.title }, e.value))
78
+ ]
79
+ }
80
+ ),
81
+ /* @__PURE__ */ r.jsxs(
82
+ "select",
83
+ {
84
+ name: `${s}_year`,
85
+ id: `${c}_year`,
86
+ value: l,
87
+ className: "flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2",
88
+ onChange: i,
89
+ required: a,
90
+ style: a ? m : p,
91
+ children: [
92
+ /* @__PURE__ */ r.jsx("option", { value: "", children: "Year" }),
93
+ $.map((e) => /* @__PURE__ */ r.jsx("option", { value: e, children: e }, e))
94
+ ]
95
+ }
96
+ )
97
+ ] }),
98
+ g && t && v && /* @__PURE__ */ r.jsxs("span", { className: "font-bold", children: [
99
+ "Age: ",
100
+ D(t),
101
+ " years"
102
+ ] })
28
103
  ] });
29
104
  }
30
105
  export {
31
- b as default
106
+ P as default
32
107
  };
33
108
  //# sourceMappingURL=sdk.es31.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.es31.js","sources":["../src/components/forms/MoneyField.tsx"],"sourcesContent":["import React from 'react';\nimport { formatMoney, formatNumber } from \"../../lib\";\n\ninterface Props {\n value?: number;\n onChange: (value: number) => void;\n id?: string;\n name?: string;\n className?: string;\n required?: boolean;\n}\n\nexport default function MoneyField({ value = 0, onChange, name = 'value', id = 'value', className = '', required = false }: Props) {\n function handleChange(e: React.SyntheticEvent<HTMLInputElement>) {\n let newValue: number = 0;\n\n if (e.currentTarget.value) {\n newValue = formatNumber(e.currentTarget.value);\n\n if (isNaN(newValue)) {\n newValue = 0;\n }\n }\n\n onChange(newValue);\n }\n\n const displayValue = formatMoney(value, 0);\n\n return (\n <div className={`${className} flex items-center gap-2 pl-4 rounded-md border border-gray-300 transition-all focus-within:border-accent focus-within:outline-none focus-within:ring focus-within:ring-accent focus-within:ring-opacity-50`}>\n <span className=\"font-bold pr-2\">$</span>\n <input\n type=\"text\"\n name={name}\n id={id}\n value={displayValue}\n onChange={handleChange}\n className=\"w-full !focus:outline-none !focus:ring-0 !focus:ring-transparent !focus:ring-opacity-0 !ring-0 !border-0 !transition-none !rounded-l-none\"\n required={required}\n />\n </div>\n );\n\n}\n"],"names":["MoneyField","value","onChange","name","id","className","required","handleChange","e","newValue","formatNumber","displayValue","formatMoney","jsxs","jsx"],"mappings":";;;;;;;AAYA,SAAwBA,EAAW,EAAE,OAAAC,IAAQ,GAAG,UAAAC,GAAU,MAAAC,IAAO,SAAS,IAAAC,IAAK,SAAS,WAAAC,IAAY,IAAI,UAAAC,IAAW,MAAgB;AAC/H,WAASC,EAAaC,GAA2C;AAC7D,QAAIC,IAAmB;AAEnB,IAAAD,EAAE,cAAc,UACLC,IAAAC,EAAaF,EAAE,cAAc,KAAK,GAEzC,MAAMC,CAAQ,MACHA,IAAA,KAInBP,EAASO,CAAQ;AAAA,EAAA;AAGf,QAAAE,IAAeC,EAAYX,GAAO,CAAC;AAEzC,SACKY,gBAAAA,EAAA,KAAA,OAAA,EAAI,WAAW,GAAGR,CAAS,+MACxB,UAAA;AAAA,IAACS,gBAAAA,EAAA,IAAA,QAAA,EAAK,WAAU,kBAAiB,UAAC,KAAA;AAAA,IAClCA,gBAAAA,EAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,MAAK;AAAA,QACL,MAAAX;AAAA,QACA,IAAAC;AAAA,QACA,OAAOO;AAAA,QACP,UAAUJ;AAAA,QACV,WAAU;AAAA,QACV,UAAAD;AAAA,MAAA;AAAA,IAAA;AAAA,EACJ,GACJ;AAGR;"}
1
+ {"version":3,"file":"sdk.es31.js","sources":["../src/components/forms/DateOfBirthField.tsx"],"sourcesContent":["import React from 'react';\nimport { calculateAge } from '../../lib';\nimport { padStart } from 'lodash';\n\ninterface Props {\n name?: string;\n id?: string;\n onChange: (dateString: string) => void;\n value?: string;\n maxYear?: number;\n showAge?: boolean;\n isRequired?: boolean;\n}\n\nexport default function DateOfBirthField({\n name = 'dob',\n id = 'dob',\n onChange,\n value,\n maxYear = 0,\n showAge = false,\n isRequired = true\n}: Props) {\n const dayOptions = [...Array.from(Array(31).keys())].map(value => {\n return padStart(`${value + 1}`, 2, '0');\n });\n\n const months = [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n ];\n const monthOptions = [...Array.from(Array(12).keys())].map(value => {\n return {\n title: months[value],\n value: padStart(`${value + 1}`, 2, '0'),\n };\n });\n\n // Create 100 years of options, subtracting the maximum year if provided\n const yearOptions = [...Array.from(Array(100).keys())].map(value => {\n return maxYear ? maxYear - value : new Date().getFullYear() - value;\n });\n\n function handleChange(\n e: React.ChangeEvent<\n HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement\n >\n ) {\n const { name, value } = e.currentTarget;\n\n let y = name.includes('year') ? value : year;\n let m = name.includes('month') ? value : month;\n let d = name.includes('day') ? value : day;\n\n onChange(`${y}-${m}-${d}`);\n }\n\n const [year, month, day] = value ? value.split('-') : ['', '', ''];\n const isValidDate =\n year && month && day && !isNaN(Date.parse(`${year}-${month}-${day}`));\n\n const styleReq = {\n backgroundPosition: 'top 10px right 3px, center right 10px',\n }\n\n const style = {\n backgroundPosition: 'right 0.5rem center',\n paddingRight: '1.5rem'\n }\n\n return (\n <span className=\"flex flex-col gap-2\">\n <span className=\"flex w-full border border-gray-300 rounded-lg bg-white\">\n <select\n name={`${name}_day`}\n id={`${id}_day`}\n value={day}\n className=\"flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2\"\n onChange={handleChange}\n required={isRequired}\n style={isRequired ? styleReq : style}\n >\n <option value=\"\">Day</option>\n {dayOptions.map(option => (\n <option key={option} value={option}>\n {option}\n </option>\n ))}\n </select>\n <select\n name={`${name}_month`}\n id={`${id}_month`}\n value={month}\n className=\"flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2\"\n onChange={handleChange}\n required={isRequired}\n style={isRequired ? styleReq : style}\n >\n <option value=\"\">Month</option>\n {monthOptions.map(option => (\n <option key={option.value} value={option.value}>\n {option.title}\n </option>\n ))}\n </select>\n <select\n name={`${name}_year`}\n id={`${id}_year`}\n value={year}\n className=\"flex-grow focus:outline-none border-0 !mr-[3px] lg:pl-4 xl:pl-2\"\n onChange={handleChange}\n required={isRequired}\n style={isRequired ? styleReq : style}\n >\n <option value=\"\">Year</option>\n {yearOptions.map(option => (\n <option key={option} value={option}>\n {option}\n </option>\n ))}\n </select>\n </span>\n {showAge && value && isValidDate && (\n <span className=\"font-bold\">Age: {calculateAge(value)} years</span>\n )}\n </span>\n );\n}\n"],"names":["DateOfBirthField","name","id","onChange","value","maxYear","showAge","isRequired","dayOptions","padStart","months","monthOptions","yearOptions","handleChange","y","year","m","month","d","day","isValidDate","styleReq","style","jsxs","jsx","option","calculateAge"],"mappings":"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"}
package/dist/sdk.es32.js CHANGED
@@ -1,171 +1,34 @@
1
- import { j as t } from "./sdk.es38.js";
2
- import n from "react";
3
- import { sanitiseVehicleType as L } from "./sdk.es4.js";
1
+ import { j as e } from "./sdk.es39.js";
2
+ import { formatMoney as f, formatNumber as p } from "./sdk.es3.js";
4
3
  import "@inertiajs/react";
5
- import { useToast as U } from "./sdk.es9.js";
4
+ import "react";
5
+ import "./sdk.es9.js";
6
6
  import "./sdk.es10.js";
7
7
  import "./sdk.es11.js";
8
- import o from "./sdk.es48.js";
9
- const I = [
10
- "POOR",
11
- "FAIR",
12
- "AVERAGE",
13
- "GOOD",
14
- "VERY_GOOD",
15
- "AS_NEW",
16
- "NEW"
17
- ];
18
- function H({
19
- name: i = "registration_search",
20
- initialRegistrationValue: k = "",
21
- onVehicleDataFound: b,
22
- apiUrl: N = "/api/rego-search",
23
- showOdometerReadingField: u = !1,
24
- showConditionField: m = !1,
25
- onChange: h,
26
- outerClassName: R,
27
- odoInputClassName: C,
28
- conditionSelectClassName: O,
29
- regoInputClassName: E,
30
- searchBtnClassName: A
31
- }) {
32
- const [g, D] = n.useState(k), [f, G] = n.useState(""), [y, V] = n.useState("GOOD"), [s, r] = n.useState("idle"), { addToast: c } = U();
33
- function l(e) {
34
- e.currentTarget.name === i && D(e.currentTarget.value?.toUpperCase() || ""), e.currentTarget.name === "odo_search" && G(e.currentTarget.value), e.currentTarget.name === "condition_search" && V(e.currentTarget.value), h && h({ registration: e.currentTarget.value.toUpperCase() });
8
+ import "./sdk.es12.js";
9
+ function v({ value: o = 0, onChange: t, name: i = "value", id: a = "value", className: s = "", required: u = !1 }) {
10
+ function l(r) {
11
+ let n = 0;
12
+ r.currentTarget.value && (n = p(r.currentTarget.value), isNaN(n) && (n = 0)), t(n);
35
13
  }
36
- function v(e) {
37
- e.key === "Enter" && x();
38
- }
39
- async function x() {
40
- r("processing");
41
- const e = {
42
- registration: g,
43
- odometerReading: f,
44
- condition: y
45
- }, W = new URLSearchParams(e).toString(), w = await fetch(`${N}?${W}`, {
46
- headers: { "Content-Type": "application/json" }
47
- });
48
- if (!w.ok) {
49
- c({
50
- message: "There was an error with the provided registration.",
51
- status: "error",
52
- timeout: 3e3
53
- }), r("error");
54
- return;
55
- }
56
- const { data: d, ok: K } = await w.json();
57
- if (!K || !d) {
58
- c({
59
- message: "Failed to find vehicle, please complete manually.",
60
- status: "error",
61
- timeout: 3e3
62
- }), r("error");
63
- return;
64
- }
65
- const a = d.data.vehicle, j = a.make, S = a.model, T = a["year-of-manufacture"], _ = a["gross-vehicle-mass"] ? parseInt(a["gross-vehicle-mass"].replaceAll(",", "")) : 0, p = a["vehicle-type"];
66
- (!j || !S || !T || !p) && (c({
67
- message: "We couldn't find all of your data, please complete manually.",
68
- status: "error",
69
- timeout: 3e3
70
- }), r("error")), b({
71
- ...d,
72
- make: j || "",
73
- model: S || "",
74
- year: T || "",
75
- vehicle_type: p ? L(p) : "car",
76
- is_heavy: _ && _ > 3500 || !1
77
- }), r("success");
78
- }
79
- return /* @__PURE__ */ t.jsx("div", { className: "w-full flex flex-col", children: /* @__PURE__ */ t.jsxs("div", { className: o(R, "w-full flex flex-wrap gap-3 bg-gray-100 rounded-md p-3"), children: [
80
- u || m && /* @__PURE__ */ t.jsxs("div", { className: "w-full grid grid-cols-2 gap-3", children: [
81
- u && /* @__PURE__ */ t.jsxs("label", { children: [
82
- "Approx. km travelled",
83
- /* @__PURE__ */ t.jsx(
84
- "input",
85
- {
86
- onKeyDown: v,
87
- type: "number",
88
- name: "odo_search",
89
- id: "odo_search",
90
- value: f,
91
- onChange: l,
92
- className: o(C, "transition-all", {
93
- "pointer-events-none opacity-50": s === "processing"
94
- }),
95
- disabled: s === "processing"
96
- }
97
- )
98
- ] }),
99
- m && /* @__PURE__ */ t.jsxs("label", { children: [
100
- "Vehicle condition",
101
- /* @__PURE__ */ t.jsx(
102
- "select",
103
- {
104
- name: "condition_search",
105
- id: "condition_search",
106
- value: y,
107
- onChange: l,
108
- className: o(O, "transition-all", {
109
- "pointer-events-none opacity-50": s === "processing"
110
- }),
111
- disabled: s === "processing",
112
- children: I.map((e) => /* @__PURE__ */ t.jsx("option", { children: e }, e))
113
- }
114
- )
115
- ] })
116
- ] }),
117
- /* @__PURE__ */ t.jsx(
14
+ const c = f(o, 0);
15
+ return /* @__PURE__ */ e.jsxs("div", { className: `${s} flex items-center gap-2 pl-4 rounded-md border border-gray-300 transition-all focus-within:border-accent focus-within:outline-none focus-within:ring focus-within:ring-accent focus-within:ring-opacity-50`, children: [
16
+ /* @__PURE__ */ e.jsx("span", { className: "font-bold pr-2", children: "$" }),
17
+ /* @__PURE__ */ e.jsx(
118
18
  "input",
119
19
  {
120
- onKeyDown: v,
121
- placeholder: "Search for your rego",
122
20
  type: "text",
123
21
  name: i,
124
- id: i,
125
- value: g,
22
+ id: a,
23
+ value: c,
126
24
  onChange: l,
127
- className: o(E, "flex-grow transition-all", {
128
- "pointer-events-none opacity-50": s === "processing"
129
- }),
130
- disabled: s === "processing"
131
- }
132
- ),
133
- /* @__PURE__ */ t.jsxs(
134
- "button",
135
- {
136
- title: "Search",
137
- type: "button",
138
- onClick: x,
139
- disabled: s === "processing",
140
- className: o(A, "bg-accent px-4 py-3 rounded-md transition-all"),
141
- children: [
142
- /* @__PURE__ */ t.jsx("span", { className: "sr-only", children: "Search" }),
143
- /* @__PURE__ */ t.jsx(
144
- "svg",
145
- {
146
- xmlns: "http://www.w3.org/2000/svg",
147
- className: "h-5 w-5 text-white",
148
- fill: "none",
149
- viewBox: "0 0 24 24",
150
- stroke: "currentColor",
151
- strokeWidth: "2",
152
- children: /* @__PURE__ */ t.jsx(
153
- "path",
154
- {
155
- strokeLinecap: "round",
156
- strokeLinejoin: "round",
157
- d: "M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"
158
- }
159
- )
160
- }
161
- )
162
- ]
25
+ className: "w-full !focus:outline-none !focus:ring-0 !focus:ring-transparent !focus:ring-opacity-0 !ring-0 !border-0 !transition-none !rounded-l-none",
26
+ required: u
163
27
  }
164
28
  )
165
- ] }) });
29
+ ] });
166
30
  }
167
31
  export {
168
- I as conditionOptions,
169
- H as default
32
+ v as default
170
33
  };
171
34
  //# sourceMappingURL=sdk.es32.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.es32.js","sources":["../src/components/forms/RegistrationSearchField.tsx"],"sourcesContent":["import React from 'react';\nimport { sanitiseVehicleType } from '../../lib';\nimport {\n ApiResponse,\n FormStatus,\n MotorwebVehicleResponse,\n VehicleType,\n} from '../../types';\nimport { useToast } from '../../lib/toast';\nimport cn from 'classnames';\n\nexport interface VehicleData extends MotorwebVehicleResponse {\n make: string;\n model: string;\n year: string;\n vehicle_type: VehicleType;\n is_heavy: boolean;\n}\n\nexport interface RegistrationSearchOnChange {\n registration: string;\n}\n\ninterface Props {\n name?: string;\n onChange?: (values: RegistrationSearchOnChange) => void;\n onVehicleDataFound: (vehicleData: VehicleData) => void;\n apiUrl?: string;\n showOdometerReadingField?: boolean;\n showConditionField?: boolean;\n initialRegistrationValue?: string;\n outerClassName?: string;\n odoInputClassName?: string;\n conditionSelectClassName?: string;\n regoInputClassName?: string;\n searchBtnClassName?: string;\n}\n\nexport const conditionOptions = [\n 'POOR',\n 'FAIR',\n 'AVERAGE',\n 'GOOD',\n 'VERY_GOOD',\n 'AS_NEW',\n 'NEW',\n];\n\nexport default function RegistrationSearchField({\n name = 'registration_search',\n initialRegistrationValue = '',\n onVehicleDataFound,\n apiUrl = '/api/rego-search',\n showOdometerReadingField = false,\n showConditionField = false,\n onChange,\n outerClassName,\n odoInputClassName,\n conditionSelectClassName,\n regoInputClassName,\n searchBtnClassName,\n}: Props) {\n const [rego, setRego] = React.useState<string>(initialRegistrationValue);\n const [odo, setOdo] = React.useState<string>('');\n const [condition, setCondition] = React.useState<string>('GOOD');\n\n const [status, setStatus] = React.useState<FormStatus>('idle');\n const { addToast } = useToast();\n\n function handleChange(\n e: React.SyntheticEvent<HTMLInputElement | HTMLSelectElement>\n ) {\n if (e.currentTarget.name === name) {\n setRego(e.currentTarget.value?.toUpperCase() || '');\n }\n\n if (e.currentTarget.name === 'odo_search') {\n setOdo(e.currentTarget.value);\n }\n\n if (e.currentTarget.name === 'condition_search') {\n setCondition(e.currentTarget.value);\n }\n\n if (onChange) {\n onChange({ registration: e.currentTarget.value.toUpperCase() });\n }\n }\n\n function handleKeydown(e: React.KeyboardEvent) {\n if (e.key === 'Enter') {\n handleSearch();\n }\n }\n\n async function handleSearch() {\n setStatus('processing');\n\n const payload = {\n registration: rego,\n odometerReading: odo,\n condition,\n };\n\n // Turn the payload in to a query string\n // @ts-ignore\n const query = new URLSearchParams(payload).toString();\n\n const res = await fetch(`${apiUrl}?${query}`, {\n headers: { 'Content-Type': 'application/json' },\n });\n\n if (!res.ok) {\n addToast({\n message: `There was an error with the provided registration.`,\n status: 'error',\n timeout: 3000,\n });\n setStatus('error');\n return;\n }\n\n const { data, ok }: ApiResponse<MotorwebVehicleResponse> = await res.json();\n\n if (!ok || !data) {\n addToast({\n message: `Failed to find vehicle, please complete manually.`,\n status: 'error',\n timeout: 3000,\n });\n setStatus('error');\n return;\n }\n\n const vehicleData = data.data.vehicle;\n\n const make = vehicleData.make;\n const model = vehicleData.model;\n const year = vehicleData['year-of-manufacture'];\n const weight = vehicleData['gross-vehicle-mass']\n ? parseInt(vehicleData['gross-vehicle-mass'].replaceAll(',', ''))\n : 0;\n const vehicleType = vehicleData['vehicle-type'];\n\n if (!make || !model || !year || !vehicleType) {\n addToast({\n message: `We couldn't find all of your data, please complete manually.`,\n status: 'error',\n timeout: 3000,\n });\n setStatus('error');\n }\n\n onVehicleDataFound({\n ...data,\n make: make || '',\n model: model || '',\n year: year || '',\n vehicle_type: vehicleType ? sanitiseVehicleType(vehicleType) : 'car',\n is_heavy: (weight && weight > 3500) || false,\n });\n\n setStatus('success');\n }\n\n return (\n <div className=\"w-full flex flex-col\">\n <div className={cn(outerClassName, \"w-full flex flex-wrap gap-3 bg-gray-100 rounded-md p-3\")}>\n {showOdometerReadingField ||\n (showConditionField && (\n <div className=\"w-full grid grid-cols-2 gap-3\">\n {showOdometerReadingField && (\n <label>\n Approx. km travelled\n <input\n onKeyDown={handleKeydown}\n type=\"number\"\n name=\"odo_search\"\n id=\"odo_search\"\n value={odo}\n onChange={handleChange}\n className={cn(odoInputClassName, \"transition-all\", {\n 'pointer-events-none opacity-50': status === 'processing',\n })}\n disabled={status === 'processing'}\n />\n </label>\n )}\n\n {showConditionField && (\n <label>\n Vehicle condition\n <select\n name=\"condition_search\"\n id=\"condition_search\"\n value={condition}\n onChange={handleChange}\n className={cn(conditionSelectClassName, \"transition-all\", {\n 'pointer-events-none opacity-50': status === 'processing',\n })}\n disabled={status === 'processing'}\n >\n {conditionOptions.map(conditionOption => (\n <option key={conditionOption}>{conditionOption}</option>\n ))}\n </select>\n </label>\n )}\n </div>\n ))}\n\n <input\n onKeyDown={handleKeydown}\n placeholder=\"Search for your rego\"\n type=\"text\"\n name={name}\n id={name}\n value={rego}\n onChange={handleChange}\n className={cn(regoInputClassName, \"flex-grow transition-all\", {\n 'pointer-events-none opacity-50': status === 'processing',\n })}\n disabled={status === 'processing'}\n />\n\n <button\n title=\"Search\"\n type=\"button\"\n onClick={handleSearch}\n disabled={status === 'processing'}\n className={cn(searchBtnClassName, \"bg-accent px-4 py-3 rounded-md transition-all\")}\n >\n <span className=\"sr-only\">Search</span>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"h-5 w-5 text-white\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n d=\"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z\"\n />\n </svg>\n </button>\n </div>\n </div>\n );\n}\n"],"names":["conditionOptions","RegistrationSearchField","name","initialRegistrationValue","onVehicleDataFound","apiUrl","showOdometerReadingField","showConditionField","onChange","outerClassName","odoInputClassName","conditionSelectClassName","regoInputClassName","searchBtnClassName","rego","setRego","React","odo","setOdo","condition","setCondition","status","setStatus","addToast","useToast","handleChange","handleKeydown","handleSearch","payload","query","res","data","ok","vehicleData","make","model","year","weight","vehicleType","sanitiseVehicleType","jsx","jsxs","cn","conditionOption"],"mappings":"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"}
1
+ {"version":3,"file":"sdk.es32.js","sources":["../src/components/forms/MoneyField.tsx"],"sourcesContent":["import React from 'react';\nimport { formatMoney, formatNumber } from \"../../lib\";\n\ninterface Props {\n value?: number;\n onChange: (value: number) => void;\n id?: string;\n name?: string;\n className?: string;\n required?: boolean;\n}\n\nexport default function MoneyField({ value = 0, onChange, name = 'value', id = 'value', className = '', required = false }: Props) {\n function handleChange(e: React.SyntheticEvent<HTMLInputElement>) {\n let newValue: number = 0;\n\n if (e.currentTarget.value) {\n newValue = formatNumber(e.currentTarget.value);\n\n if (isNaN(newValue)) {\n newValue = 0;\n }\n }\n\n onChange(newValue);\n }\n\n const displayValue = formatMoney(value, 0);\n\n return (\n <div className={`${className} flex items-center gap-2 pl-4 rounded-md border border-gray-300 transition-all focus-within:border-accent focus-within:outline-none focus-within:ring focus-within:ring-accent focus-within:ring-opacity-50`}>\n <span className=\"font-bold pr-2\">$</span>\n <input\n type=\"text\"\n name={name}\n id={id}\n value={displayValue}\n onChange={handleChange}\n className=\"w-full !focus:outline-none !focus:ring-0 !focus:ring-transparent !focus:ring-opacity-0 !ring-0 !border-0 !transition-none !rounded-l-none\"\n required={required}\n />\n </div>\n );\n\n}\n"],"names":["MoneyField","value","onChange","name","id","className","required","handleChange","e","newValue","formatNumber","displayValue","formatMoney","jsxs","jsx"],"mappings":";;;;;;;;AAYA,SAAwBA,EAAW,EAAE,OAAAC,IAAQ,GAAG,UAAAC,GAAU,MAAAC,IAAO,SAAS,IAAAC,IAAK,SAAS,WAAAC,IAAY,IAAI,UAAAC,IAAW,MAAgB;AAC/H,WAASC,EAAaC,GAA2C;AAC7D,QAAIC,IAAmB;AAEnB,IAAAD,EAAE,cAAc,UACLC,IAAAC,EAAaF,EAAE,cAAc,KAAK,GAEzC,MAAMC,CAAQ,MACHA,IAAA,KAInBP,EAASO,CAAQ;AAAA,EAAA;AAGf,QAAAE,IAAeC,EAAYX,GAAO,CAAC;AAEzC,SACKY,gBAAAA,EAAA,KAAA,OAAA,EAAI,WAAW,GAAGR,CAAS,+MACxB,UAAA;AAAA,IAACS,gBAAAA,EAAA,IAAA,QAAA,EAAK,WAAU,kBAAiB,UAAC,KAAA;AAAA,IAClCA,gBAAAA,EAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,MAAK;AAAA,QACL,MAAAX;AAAA,QACA,IAAAC;AAAA,QACA,OAAOO;AAAA,QACP,UAAUJ;AAAA,QACV,WAAU;AAAA,QACV,UAAAD;AAAA,MAAA;AAAA,IAAA;AAAA,EACJ,GACJ;AAGR;"}