@panneau/fields 5.0.0-alpha.2 → 5.0.0-alpha.21

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 (408) hide show
  1. package/README.md +186 -20
  2. package/dist/address/AddressField.css +44 -0
  3. package/dist/address/AddressField.d.ts +37 -0
  4. package/dist/address/AddressField.d.ts.map +1 -0
  5. package/dist/address/AddressField.js +411 -0
  6. package/dist/address/AddressField.js.map +1 -0
  7. package/dist/address/AddressField.module.js +22 -0
  8. package/dist/address/AddressField.module.js.map +1 -0
  9. package/dist/address/address.d.ts +23 -0
  10. package/dist/address/address.d.ts.map +1 -0
  11. package/dist/address/address.js +58 -0
  12. package/dist/address/address.js.map +1 -0
  13. package/dist/address/index.d.ts +3 -0
  14. package/dist/address/index.d.ts.map +1 -0
  15. package/dist/address/index.js +3 -0
  16. package/dist/boolean/BooleanField.d.ts +1 -1
  17. package/dist/boolean/BooleanField.js +78 -17
  18. package/dist/boolean/BooleanField.js.map +1 -1
  19. package/dist/boolean/index.d.ts +1 -1
  20. package/dist/color/ColorField.css +9 -0
  21. package/dist/color/ColorField.d.ts +12 -5
  22. package/dist/color/ColorField.d.ts.map +1 -1
  23. package/dist/color/ColorField.js +341 -81
  24. package/dist/color/ColorField.js.map +1 -1
  25. package/dist/color/ColorField.module.js +4 -2
  26. package/dist/color/ColorField.module.js.map +1 -1
  27. package/dist/color/index.d.ts +2 -1
  28. package/dist/color/index.d.ts.map +1 -1
  29. package/dist/color/index.js +3 -1
  30. package/dist/color/palette.d.ts +23 -0
  31. package/dist/color/palette.d.ts.map +1 -0
  32. package/dist/color/palette.js +34 -0
  33. package/dist/color/palette.js.map +1 -0
  34. package/dist/compound/Compound.css +26 -0
  35. package/dist/compound/Compound.module.js +16 -0
  36. package/dist/compound/Compound.module.js.map +1 -0
  37. package/dist/compound/compound.d.ts +56 -0
  38. package/dist/compound/compound.d.ts.map +1 -0
  39. package/dist/compound/compound.js +186 -0
  40. package/dist/compound/compound.js.map +1 -0
  41. package/dist/country/CountryField.css +42 -0
  42. package/dist/country/CountryField.d.ts +32 -0
  43. package/dist/country/CountryField.d.ts.map +1 -0
  44. package/dist/country/CountryField.js +424 -0
  45. package/dist/country/CountryField.js.map +1 -0
  46. package/dist/country/CountryField.module.js +20 -0
  47. package/dist/country/CountryField.module.js.map +1 -0
  48. package/dist/country/codes.d.ts +6 -0
  49. package/dist/country/codes.d.ts.map +1 -0
  50. package/dist/country/codes.js +261 -0
  51. package/dist/country/codes.js.map +1 -0
  52. package/dist/country/countries.d.ts +32 -0
  53. package/dist/country/countries.d.ts.map +1 -0
  54. package/dist/country/countries.js +60 -0
  55. package/dist/country/countries.js.map +1 -0
  56. package/dist/country/index.d.ts +3 -0
  57. package/dist/country/index.d.ts.map +1 -0
  58. package/dist/country/index.js +4 -0
  59. package/dist/credits/CreditsField.d.ts +15 -0
  60. package/dist/credits/CreditsField.d.ts.map +1 -0
  61. package/dist/credits/CreditsField.js +58 -0
  62. package/dist/credits/CreditsField.js.map +1 -0
  63. package/dist/credits/credits.d.ts +18 -0
  64. package/dist/credits/credits.d.ts.map +1 -0
  65. package/dist/credits/credits.js +33 -0
  66. package/dist/credits/credits.js.map +1 -0
  67. package/dist/credits/index.d.ts +5 -0
  68. package/dist/credits/index.d.ts.map +1 -0
  69. package/dist/credits/index.js +3 -0
  70. package/dist/date/DateField.d.ts +1 -1
  71. package/dist/date/DateField.js.map +1 -1
  72. package/dist/date/index.d.ts +1 -1
  73. package/dist/daterange/DateRangeField.css +9 -0
  74. package/dist/daterange/DateRangeField.d.ts +31 -0
  75. package/dist/daterange/DateRangeField.d.ts.map +1 -0
  76. package/dist/daterange/DateRangeField.js +372 -0
  77. package/dist/daterange/DateRangeField.js.map +1 -0
  78. package/dist/daterange/DateRangeField.module.js +12 -0
  79. package/dist/daterange/DateRangeField.module.js.map +1 -0
  80. package/dist/daterange/index.d.ts +3 -0
  81. package/dist/daterange/index.d.ts.map +1 -0
  82. package/dist/daterange/index.js +3 -0
  83. package/dist/daterange/range.d.ts +61 -0
  84. package/dist/daterange/range.d.ts.map +1 -0
  85. package/dist/daterange/range.js +119 -0
  86. package/dist/daterange/range.js.map +1 -0
  87. package/dist/datetime/DateTimeField.d.ts +1 -1
  88. package/dist/datetime/DateTimeField.js +107 -20
  89. package/dist/datetime/DateTimeField.js.map +1 -1
  90. package/dist/datetime/index.d.ts +1 -1
  91. package/dist/duration/DurationField.css +11 -0
  92. package/dist/duration/DurationField.d.ts +67 -0
  93. package/dist/duration/DurationField.d.ts.map +1 -0
  94. package/dist/duration/DurationField.js +260 -0
  95. package/dist/duration/DurationField.js.map +1 -0
  96. package/dist/duration/DurationField.module.js +12 -0
  97. package/dist/duration/DurationField.module.js.map +1 -0
  98. package/dist/duration/index.d.ts +2 -0
  99. package/dist/duration/index.d.ts.map +1 -0
  100. package/dist/duration/index.js +1 -0
  101. package/dist/email/EmailField.d.ts +2 -2
  102. package/dist/email/EmailField.js.map +1 -1
  103. package/dist/email/index.d.ts +1 -1
  104. package/dist/embed/EmbedField.css +60 -0
  105. package/dist/embed/EmbedField.d.ts +29 -0
  106. package/dist/embed/EmbedField.d.ts.map +1 -0
  107. package/dist/embed/EmbedField.js +309 -0
  108. package/dist/embed/EmbedField.js.map +1 -0
  109. package/dist/embed/EmbedField.module.js +22 -0
  110. package/dist/embed/EmbedField.module.js.map +1 -0
  111. package/dist/embed/index.d.ts +3 -0
  112. package/dist/embed/index.d.ts.map +1 -0
  113. package/dist/embed/index.js +3 -0
  114. package/dist/file/FileField.css +54 -0
  115. package/dist/file/FileField.d.ts +50 -0
  116. package/dist/file/FileField.d.ts.map +1 -0
  117. package/dist/file/FileField.js +288 -0
  118. package/dist/file/FileField.js.map +1 -0
  119. package/dist/file/FileField.module.js +22 -0
  120. package/dist/file/FileField.module.js.map +1 -0
  121. package/dist/file/index.d.ts +3 -0
  122. package/dist/file/index.d.ts.map +1 -0
  123. package/dist/file/index.js +1 -0
  124. package/dist/group/GroupField.css +20 -3
  125. package/dist/group/GroupField.d.ts +10 -4
  126. package/dist/group/GroupField.d.ts.map +1 -1
  127. package/dist/group/GroupField.js +71 -66
  128. package/dist/group/GroupField.js.map +1 -1
  129. package/dist/group/GroupField.module.js +10 -2
  130. package/dist/group/GroupField.module.js.map +1 -1
  131. package/dist/group/index.d.ts +1 -1
  132. package/dist/index.d.ts +21 -7
  133. package/dist/index.d.ts.map +1 -1
  134. package/dist/index.js +14 -2
  135. package/dist/json/JsonField.css +7 -0
  136. package/dist/json/JsonField.d.ts +22 -0
  137. package/dist/json/JsonField.d.ts.map +1 -0
  138. package/dist/json/JsonField.js +207 -0
  139. package/dist/json/JsonField.js.map +1 -0
  140. package/dist/json/JsonField.module.js +8 -0
  141. package/dist/json/JsonField.module.js.map +1 -0
  142. package/dist/json/index.d.ts +2 -0
  143. package/dist/json/index.d.ts.map +1 -0
  144. package/dist/json/index.js +1 -0
  145. package/dist/link/LinkField.css +12 -0
  146. package/dist/link/LinkField.d.ts +38 -0
  147. package/dist/link/LinkField.d.ts.map +1 -0
  148. package/dist/link/LinkField.js +742 -0
  149. package/dist/link/LinkField.js.map +1 -0
  150. package/dist/link/LinkField.module.js +8 -0
  151. package/dist/link/LinkField.module.js.map +1 -0
  152. package/dist/link/index.d.ts +3 -0
  153. package/dist/link/index.d.ts.map +1 -0
  154. package/dist/link/index.js +3 -0
  155. package/dist/link/link.d.ts +30 -0
  156. package/dist/link/link.d.ts.map +1 -0
  157. package/dist/link/link.js +63 -0
  158. package/dist/link/link.js.map +1 -0
  159. package/dist/link/pages.d.ts +17 -0
  160. package/dist/link/pages.d.ts.map +1 -0
  161. package/dist/link/pages.js +104 -0
  162. package/dist/link/pages.js.map +1 -0
  163. package/dist/locales/index.js.map +1 -1
  164. package/dist/localized/LocalizedField.css +27 -6
  165. package/dist/localized/LocalizedField.d.ts +19 -8
  166. package/dist/localized/LocalizedField.d.ts.map +1 -1
  167. package/dist/localized/LocalizedField.js +238 -105
  168. package/dist/localized/LocalizedField.js.map +1 -1
  169. package/dist/localized/LocalizedField.module.js +10 -4
  170. package/dist/localized/LocalizedField.module.js.map +1 -1
  171. package/dist/localized/index.d.ts +1 -1
  172. package/dist/location/LocationField.css +54 -0
  173. package/dist/location/LocationField.d.ts +31 -0
  174. package/dist/location/LocationField.d.ts.map +1 -0
  175. package/dist/location/LocationField.js +487 -0
  176. package/dist/location/LocationField.js.map +1 -0
  177. package/dist/location/LocationField.module.js +22 -0
  178. package/dist/location/LocationField.module.js.map +1 -0
  179. package/dist/location/LocationMap.d.ts +25 -0
  180. package/dist/location/LocationMap.d.ts.map +1 -0
  181. package/dist/location/LocationMap.js +205 -0
  182. package/dist/location/LocationMap.js.map +1 -0
  183. package/dist/location/index.d.ts +5 -0
  184. package/dist/location/index.d.ts.map +1 -0
  185. package/dist/location/index.js +4 -0
  186. package/dist/location/leafletCss.d.ts +2 -0
  187. package/dist/location/leafletCss.d.ts.map +1 -0
  188. package/dist/location/leafletCss.js +6 -0
  189. package/dist/location/leafletCss.js.map +1 -0
  190. package/dist/location/nominatim.d.ts +23 -0
  191. package/dist/location/nominatim.d.ts.map +1 -0
  192. package/dist/location/nominatim.js +79 -0
  193. package/dist/location/nominatim.js.map +1 -0
  194. package/dist/location/search.d.ts +10 -0
  195. package/dist/location/search.d.ts.map +1 -0
  196. package/dist/location/search.js +83 -0
  197. package/dist/location/search.js.map +1 -0
  198. package/dist/location/types.d.ts +46 -0
  199. package/dist/location/types.d.ts.map +1 -0
  200. package/dist/missing/MissingField.d.ts +4 -3
  201. package/dist/missing/MissingField.d.ts.map +1 -1
  202. package/dist/missing/MissingField.js +3 -2
  203. package/dist/missing/MissingField.js.map +1 -1
  204. package/dist/money/MoneyField.d.ts +28 -0
  205. package/dist/money/MoneyField.d.ts.map +1 -0
  206. package/dist/money/MoneyField.js +269 -0
  207. package/dist/money/MoneyField.js.map +1 -0
  208. package/dist/money/index.d.ts +3 -0
  209. package/dist/money/index.d.ts.map +1 -0
  210. package/dist/money/index.js +3 -0
  211. package/dist/money/money.d.ts +27 -0
  212. package/dist/money/money.d.ts.map +1 -0
  213. package/dist/money/money.js +56 -0
  214. package/dist/money/money.js.map +1 -0
  215. package/dist/number/NumberField.d.ts +1 -1
  216. package/dist/number/NumberField.js.map +1 -1
  217. package/dist/number/index.d.ts +1 -1
  218. package/dist/range/RangeField.d.ts +22 -0
  219. package/dist/range/RangeField.d.ts.map +1 -0
  220. package/dist/range/RangeField.js +203 -0
  221. package/dist/range/RangeField.js.map +1 -0
  222. package/dist/range/index.d.ts +2 -0
  223. package/dist/range/index.d.ts.map +1 -0
  224. package/dist/range/index.js +1 -0
  225. package/dist/region/RegionField.d.ts +23 -0
  226. package/dist/region/RegionField.d.ts.map +1 -0
  227. package/dist/region/RegionField.js +174 -0
  228. package/dist/region/RegionField.js.map +1 -0
  229. package/dist/region/RegionFlag.css +9 -0
  230. package/dist/region/RegionFlag.d.ts +20 -0
  231. package/dist/region/RegionFlag.d.ts.map +1 -0
  232. package/dist/region/RegionFlag.js +61 -0
  233. package/dist/region/RegionFlag.js.map +1 -0
  234. package/dist/region/RegionFlag.module.js +8 -0
  235. package/dist/region/RegionFlag.module.js.map +1 -0
  236. package/dist/region/data.d.ts +5 -0
  237. package/dist/region/data.d.ts.map +1 -0
  238. package/dist/region/data.js +513 -0
  239. package/dist/region/data.js.map +1 -0
  240. package/dist/region/flags/CA.d.ts +4 -0
  241. package/dist/region/flags/CA.d.ts.map +1 -0
  242. package/dist/region/flags/CA.js +21 -0
  243. package/dist/region/flags/CA.js.map +1 -0
  244. package/dist/region/flags/US.d.ts +4 -0
  245. package/dist/region/flags/US.d.ts.map +1 -0
  246. package/dist/region/flags/US.js +65 -0
  247. package/dist/region/flags/US.js.map +1 -0
  248. package/dist/region/flags.d.ts +17 -0
  249. package/dist/region/flags.d.ts.map +1 -0
  250. package/dist/region/flags.js +84 -0
  251. package/dist/region/flags.js.map +1 -0
  252. package/dist/region/index.d.ts +5 -0
  253. package/dist/region/index.d.ts.map +1 -0
  254. package/dist/region/index.js +5 -0
  255. package/dist/region/regions.d.ts +15 -0
  256. package/dist/region/regions.d.ts.map +1 -0
  257. package/dist/region/regions.js +29 -0
  258. package/dist/region/regions.js.map +1 -0
  259. package/dist/relation/RelationField.d.ts +2 -2
  260. package/dist/relation/RelationField.d.ts.map +1 -1
  261. package/dist/relation/RelationField.js +511 -171
  262. package/dist/relation/RelationField.js.map +1 -1
  263. package/dist/relation/index.d.ts +2 -2
  264. package/dist/repeater/RepeaterField.d.ts +13 -2
  265. package/dist/repeater/RepeaterField.d.ts.map +1 -1
  266. package/dist/repeater/RepeaterField.js +138 -50
  267. package/dist/repeater/RepeaterField.js.map +1 -1
  268. package/dist/repeater/index.d.ts +1 -1
  269. package/dist/select/SelectField.d.ts +1 -1
  270. package/dist/select/SelectField.js.map +1 -1
  271. package/dist/select/index.d.ts +1 -1
  272. package/dist/sessions/SessionsField.d.ts +15 -0
  273. package/dist/sessions/SessionsField.d.ts.map +1 -0
  274. package/dist/sessions/SessionsField.js +49 -0
  275. package/dist/sessions/SessionsField.js.map +1 -0
  276. package/dist/sessions/index.d.ts +4 -0
  277. package/dist/sessions/index.d.ts.map +1 -0
  278. package/dist/sessions/index.js +1 -0
  279. package/dist/shared/CodeComboBox.d.ts +21 -0
  280. package/dist/shared/CodeComboBox.d.ts.map +1 -0
  281. package/dist/shared/CodeComboBox.js +238 -0
  282. package/dist/shared/CodeComboBox.js.map +1 -0
  283. package/dist/shared/DefinitionField.d.ts +9 -4
  284. package/dist/shared/DefinitionField.d.ts.map +1 -1
  285. package/dist/shared/DefinitionField.js +98 -78
  286. package/dist/shared/DefinitionField.js.map +1 -1
  287. package/dist/shared/builtIn.d.ts +7 -3
  288. package/dist/shared/builtIn.d.ts.map +1 -1
  289. package/dist/shared/builtIn.js +39 -7
  290. package/dist/shared/builtIn.js.map +1 -1
  291. package/dist/shared/check.d.ts +27 -0
  292. package/dist/shared/check.d.ts.map +1 -0
  293. package/dist/shared/check.js +18 -0
  294. package/dist/shared/check.js.map +1 -0
  295. package/dist/shared/context.d.ts +33 -5
  296. package/dist/shared/context.d.ts.map +1 -1
  297. package/dist/shared/context.js +36 -20
  298. package/dist/shared/context.js.map +1 -1
  299. package/dist/shared/cx.js.map +1 -1
  300. package/dist/shared/dates.js +2 -2
  301. package/dist/shared/dates.js.map +1 -1
  302. package/dist/shared/embed.d.ts +19 -0
  303. package/dist/shared/embed.d.ts.map +1 -0
  304. package/dist/shared/embed.js +14 -0
  305. package/dist/shared/embed.js.map +1 -0
  306. package/dist/shared/entry.d.ts +13 -4
  307. package/dist/shared/entry.d.ts.map +1 -1
  308. package/dist/shared/entry.js +24 -7
  309. package/dist/shared/entry.js.map +1 -1
  310. package/dist/shared/flow.d.ts +8 -0
  311. package/dist/shared/flow.d.ts.map +1 -0
  312. package/dist/shared/flow.js +38 -0
  313. package/dist/shared/flow.js.map +1 -0
  314. package/dist/shared/part.d.ts +26 -0
  315. package/dist/shared/part.d.ts.map +1 -0
  316. package/dist/shared/part.js +64 -0
  317. package/dist/shared/part.js.map +1 -0
  318. package/dist/shared/relation.js.map +1 -1
  319. package/dist/shared/reveal.d.ts +16 -0
  320. package/dist/shared/reveal.d.ts.map +1 -0
  321. package/dist/shared/reveal.js +46 -0
  322. package/dist/shared/reveal.js.map +1 -0
  323. package/dist/shared/types.d.ts +12 -0
  324. package/dist/shared/types.d.ts.map +1 -1
  325. package/dist/slug/SlugField.css +18 -0
  326. package/dist/slug/SlugField.d.ts +33 -5
  327. package/dist/slug/SlugField.d.ts.map +1 -1
  328. package/dist/slug/SlugField.js +346 -126
  329. package/dist/slug/SlugField.js.map +1 -1
  330. package/dist/slug/SlugField.module.js +14 -0
  331. package/dist/slug/SlugField.module.js.map +1 -0
  332. package/dist/slug/index.d.ts +1 -1
  333. package/dist/slug/index.d.ts.map +1 -1
  334. package/dist/slug/index.js +1 -1
  335. package/dist/tags/TagsField.d.ts +17 -0
  336. package/dist/tags/TagsField.d.ts.map +1 -0
  337. package/dist/tags/TagsField.js +120 -0
  338. package/dist/tags/TagsField.js.map +1 -0
  339. package/dist/tags/index.d.ts +2 -0
  340. package/dist/tags/index.d.ts.map +1 -0
  341. package/dist/tags/index.js +1 -0
  342. package/dist/tel/TelField.css +25 -0
  343. package/dist/tel/TelField.d.ts +34 -0
  344. package/dist/tel/TelField.d.ts.map +1 -0
  345. package/dist/tel/TelField.js +390 -0
  346. package/dist/tel/TelField.js.map +1 -0
  347. package/dist/tel/TelField.module.js +12 -0
  348. package/dist/tel/TelField.module.js.map +1 -0
  349. package/dist/tel/index.d.ts +3 -0
  350. package/dist/tel/index.d.ts.map +1 -0
  351. package/dist/tel/index.js +3 -0
  352. package/dist/tel/phone.d.ts +59 -0
  353. package/dist/tel/phone.d.ts.map +1 -0
  354. package/dist/tel/phone.js +107 -0
  355. package/dist/tel/phone.js.map +1 -0
  356. package/dist/text/TextField.d.ts +12 -4
  357. package/dist/text/TextField.d.ts.map +1 -1
  358. package/dist/text/TextField.js +104 -60
  359. package/dist/text/TextField.js.map +1 -1
  360. package/dist/text/index.d.ts +1 -1
  361. package/dist/textarea/TextAreaField.d.ts +1 -1
  362. package/dist/textarea/TextAreaField.js.map +1 -1
  363. package/dist/textarea/index.d.ts +1 -1
  364. package/dist/time/TimeField.d.ts +1 -1
  365. package/dist/time/TimeField.js +64 -10
  366. package/dist/time/TimeField.js.map +1 -1
  367. package/dist/time/index.d.ts +1 -1
  368. package/dist/upload/FilePicker.css +24 -0
  369. package/dist/upload/FilePicker.d.ts +14 -0
  370. package/dist/upload/FilePicker.d.ts.map +1 -0
  371. package/dist/upload/FilePicker.js +130 -0
  372. package/dist/upload/FilePicker.js.map +1 -0
  373. package/dist/upload/FilePicker.module.js +12 -0
  374. package/dist/upload/FilePicker.module.js.map +1 -0
  375. package/dist/upload/UploadList.css +93 -0
  376. package/dist/upload/UploadList.d.ts +18 -0
  377. package/dist/upload/UploadList.d.ts.map +1 -0
  378. package/dist/upload/UploadList.js +144 -0
  379. package/dist/upload/UploadList.js.map +1 -0
  380. package/dist/upload/UploadList.module.js +32 -0
  381. package/dist/upload/UploadList.module.js.map +1 -0
  382. package/dist/upload/files.d.ts +5 -0
  383. package/dist/upload/files.d.ts.map +1 -0
  384. package/dist/upload/files.js +26 -0
  385. package/dist/upload/files.js.map +1 -0
  386. package/dist/upload/types.d.ts +58 -0
  387. package/dist/upload/types.d.ts.map +1 -0
  388. package/dist/upload/useRejectionMessage.d.ts +4 -0
  389. package/dist/upload/useRejectionMessage.d.ts.map +1 -0
  390. package/dist/upload/useRejectionMessage.js +25 -0
  391. package/dist/upload/useRejectionMessage.js.map +1 -0
  392. package/dist/upload/useUploads.d.ts +30 -0
  393. package/dist/upload/useUploads.d.ts.map +1 -0
  394. package/dist/upload/useUploads.js +115 -0
  395. package/dist/upload/useUploads.js.map +1 -0
  396. package/dist/uppy/index.d.ts +3 -0
  397. package/dist/uppy/index.d.ts.map +1 -0
  398. package/dist/uppy/index.js +1 -0
  399. package/dist/uppy/uploader.d.ts +44 -0
  400. package/dist/uppy/uploader.d.ts.map +1 -0
  401. package/dist/uppy/uploader.js +139 -0
  402. package/dist/uppy/uploader.js.map +1 -0
  403. package/dist/url/UrlField.d.ts +2 -2
  404. package/dist/url/UrlField.d.ts.map +1 -1
  405. package/dist/url/UrlField.js +69 -14
  406. package/dist/url/UrlField.js.map +1 -1
  407. package/dist/url/index.d.ts +1 -1
  408. package/package.json +110 -7
@@ -0,0 +1,203 @@
1
+ import { getFieldProps, getRuleNumber, getSetting, isNumber, isString } from "../shared/entry.js";
2
+ import { c } from "react/compiler-runtime";
3
+ import { Slider } from "@panneau/ui";
4
+ import { jsx } from "react/jsx-runtime";
5
+ //#region src/range/RangeField.tsx
6
+ /** A number on a slider. It is `null` until the slider is moved. */
7
+ function RangeField(t0) {
8
+ const $ = c(23);
9
+ let disabled;
10
+ let onBlur;
11
+ let onChange;
12
+ let props;
13
+ let readOnly;
14
+ let required;
15
+ let t1;
16
+ let t2;
17
+ let value;
18
+ if ($[0] !== t0) {
19
+ const { value: t3, onChange: t4, onBlur: t5, min: t6, max: t7, disabled: t8, readOnly: t9, required: t10, autoFocus: _autoFocus, id: _id, ...t11 } = t0;
20
+ value = t3;
21
+ onChange = t4;
22
+ onBlur = t5;
23
+ t1 = t6;
24
+ t2 = t7;
25
+ disabled = t8;
26
+ readOnly = t9;
27
+ required = t10;
28
+ props = t11;
29
+ $[0] = t0;
30
+ $[1] = disabled;
31
+ $[2] = onBlur;
32
+ $[3] = onChange;
33
+ $[4] = props;
34
+ $[5] = readOnly;
35
+ $[6] = required;
36
+ $[7] = t1;
37
+ $[8] = t2;
38
+ $[9] = value;
39
+ } else {
40
+ disabled = $[1];
41
+ onBlur = $[2];
42
+ onChange = $[3];
43
+ props = $[4];
44
+ readOnly = $[5];
45
+ required = $[6];
46
+ t1 = $[7];
47
+ t2 = $[8];
48
+ value = $[9];
49
+ }
50
+ const min = t1 === void 0 ? 0 : t1;
51
+ const max = t2 === void 0 ? 100 : t2;
52
+ const t3 = value ?? null;
53
+ let t4;
54
+ if ($[10] !== onChange) {
55
+ t4 = (next) => onChange?.(next);
56
+ $[10] = onChange;
57
+ $[11] = t4;
58
+ } else t4 = $[11];
59
+ let t5;
60
+ if ($[12] !== onBlur) {
61
+ t5 = () => onBlur?.();
62
+ $[12] = onBlur;
63
+ $[13] = t5;
64
+ } else t5 = $[13];
65
+ const t6 = disabled === true || readOnly === true;
66
+ let t7;
67
+ if ($[14] !== max || $[15] !== min || $[16] !== props || $[17] !== required || $[18] !== t3 || $[19] !== t4 || $[20] !== t5 || $[21] !== t6) {
68
+ t7 = /* @__PURE__ */ jsx(Slider, {
69
+ ...props,
70
+ value: t3,
71
+ onChange: t4,
72
+ onChangeEnd: t5,
73
+ minValue: min,
74
+ maxValue: max,
75
+ isDisabled: t6,
76
+ isRequired: required
77
+ });
78
+ $[14] = max;
79
+ $[15] = min;
80
+ $[16] = props;
81
+ $[17] = required;
82
+ $[18] = t3;
83
+ $[19] = t4;
84
+ $[20] = t5;
85
+ $[21] = t6;
86
+ $[22] = t7;
87
+ } else t7 = $[22];
88
+ return t7;
89
+ }
90
+ /**
91
+ * The `range` type: its ends from the `min` and `max` rules (0 and 100 without them), and
92
+ * settings `step`, `decimals` and `suffix`, as for `number`.
93
+ */
94
+ function RangeFieldEntry(props) {
95
+ const $ = c(33);
96
+ const { field } = props;
97
+ let t0;
98
+ if ($[0] !== field) {
99
+ t0 = getRuleNumber(field, "min");
100
+ $[0] = field;
101
+ $[1] = t0;
102
+ } else t0 = $[1];
103
+ const min = t0;
104
+ let t1;
105
+ if ($[2] !== field) {
106
+ t1 = getRuleNumber(field, "max");
107
+ $[2] = field;
108
+ $[3] = t1;
109
+ } else t1 = $[3];
110
+ const max = t1;
111
+ let t2;
112
+ if ($[4] !== field) {
113
+ t2 = getSetting(field, "step", isNumber);
114
+ $[4] = field;
115
+ $[5] = t2;
116
+ } else t2 = $[5];
117
+ const step = t2;
118
+ let t3;
119
+ if ($[6] !== field) {
120
+ t3 = getSetting(field, "decimals", isNumber);
121
+ $[6] = field;
122
+ $[7] = t3;
123
+ } else t3 = $[7];
124
+ const decimals = t3;
125
+ let t4;
126
+ if ($[8] !== field) {
127
+ t4 = getSetting(field, "suffix", isString);
128
+ $[8] = field;
129
+ $[9] = t4;
130
+ } else t4 = $[9];
131
+ const suffix = t4;
132
+ let t5;
133
+ if ($[10] !== props) {
134
+ t5 = getFieldProps(props);
135
+ $[10] = props;
136
+ $[11] = t5;
137
+ } else t5 = $[11];
138
+ let fieldProps;
139
+ if ($[12] !== t5) {
140
+ const { placeholder: _placeholder, ...t6 } = t5;
141
+ fieldProps = t6;
142
+ $[12] = t5;
143
+ $[13] = fieldProps;
144
+ } else fieldProps = $[13];
145
+ const t6 = isNumber(props.value) ? props.value : null;
146
+ let t7;
147
+ if ($[14] !== min) {
148
+ t7 = min !== void 0 ? { min } : {};
149
+ $[14] = min;
150
+ $[15] = t7;
151
+ } else t7 = $[15];
152
+ let t8;
153
+ if ($[16] !== max) {
154
+ t8 = max !== void 0 ? { max } : {};
155
+ $[16] = max;
156
+ $[17] = t8;
157
+ } else t8 = $[17];
158
+ let t9;
159
+ if ($[18] !== step) {
160
+ t9 = step !== void 0 ? { step } : {};
161
+ $[18] = step;
162
+ $[19] = t9;
163
+ } else t9 = $[19];
164
+ let t10;
165
+ if ($[20] !== decimals) {
166
+ t10 = decimals !== void 0 ? { formatOptions: { maximumFractionDigits: decimals } } : {};
167
+ $[20] = decimals;
168
+ $[21] = t10;
169
+ } else t10 = $[21];
170
+ let t11;
171
+ if ($[22] !== suffix) {
172
+ t11 = suffix !== void 0 ? { suffix } : {};
173
+ $[22] = suffix;
174
+ $[23] = t11;
175
+ } else t11 = $[23];
176
+ let t12;
177
+ if ($[24] !== fieldProps || $[25] !== props.onChange || $[26] !== t10 || $[27] !== t11 || $[28] !== t6 || $[29] !== t7 || $[30] !== t8 || $[31] !== t9) {
178
+ t12 = /* @__PURE__ */ jsx(RangeField, {
179
+ ...fieldProps,
180
+ value: t6,
181
+ onChange: props.onChange,
182
+ ...t7,
183
+ ...t8,
184
+ ...t9,
185
+ ...t10,
186
+ ...t11
187
+ });
188
+ $[24] = fieldProps;
189
+ $[25] = props.onChange;
190
+ $[26] = t10;
191
+ $[27] = t11;
192
+ $[28] = t6;
193
+ $[29] = t7;
194
+ $[30] = t8;
195
+ $[31] = t9;
196
+ $[32] = t12;
197
+ } else t12 = $[32];
198
+ return t12;
199
+ }
200
+ //#endregion
201
+ export { RangeField, RangeFieldEntry };
202
+
203
+ //# sourceMappingURL=RangeField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RangeField.js","names":["ReactNode","Slider","getFieldProps","getRuleNumber","getSetting","isNumber","isString","FieldEntryProps","FieldProps","RangeFieldProps","min","max","step","formatOptions","Intl","NumberFormatOptions","suffix","RangeField","t0","$","_c","disabled","onBlur","onChange","props","readOnly","required","t1","t2","value","t3","t4","t5","t6","t7","t8","t9","t10","autoFocus","_autoFocus","id","_id","t11","undefined","next","RangeFieldEntry","field","decimals","fieldProps","placeholder","_placeholder","maximumFractionDigits","t12","_c"],"sources":["../../src/range/RangeField.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\n\nimport { Slider } from '@panneau/ui';\n\nimport { getFieldProps, getRuleNumber, getSetting, isNumber, isString } from '../shared/entry';\nimport type { FieldEntryProps, FieldProps } from '../shared/types';\n\nexport interface RangeFieldProps extends FieldProps<number> {\n /** The start of the slider. Defaults to 0. */\n min?: number;\n /** The end of the slider. Defaults to 100. */\n max?: number;\n /** Step of the slider and of the arrow keys. Defaults to 1. */\n step?: number;\n /** Format of the number shown, for the locale. */\n formatOptions?: Intl.NumberFormatOptions;\n /** Content after the number: a unit. */\n suffix?: ReactNode;\n}\n\n/** A number on a slider. It is `null` until the slider is moved. */\nexport function RangeField({\n value,\n onChange,\n onBlur,\n min = 0,\n max = 100,\n disabled,\n readOnly,\n required,\n autoFocus: _autoFocus,\n id: _id,\n ...props\n}: RangeFieldProps) {\n return (\n <Slider\n {...props}\n value={value ?? null}\n onChange={(next) => onChange?.(next)}\n onChangeEnd={() => onBlur?.()}\n minValue={min}\n maxValue={max}\n isDisabled={disabled === true || readOnly === true}\n isRequired={required}\n />\n );\n}\n\n/**\n * The `range` type: its ends from the `min` and `max` rules (0 and 100 without them), and\n * settings `step`, `decimals` and `suffix`, as for `number`.\n */\nexport function RangeFieldEntry(props: FieldEntryProps) {\n const { field } = props;\n const min = getRuleNumber(field, 'min');\n const max = getRuleNumber(field, 'max');\n const step = getSetting(field, 'step', isNumber);\n const decimals = getSetting(field, 'decimals', isNumber);\n const suffix = getSetting(field, 'suffix', isString);\n const { placeholder: _placeholder, ...fieldProps } = getFieldProps(props);\n return (\n <RangeField\n {...fieldProps}\n value={isNumber(props.value) ? props.value : null}\n onChange={props.onChange}\n {...(min !== undefined ? { min } : {})}\n {...(max !== undefined ? { max } : {})}\n {...(step !== undefined ? { step } : {})}\n {...(decimals !== undefined\n ? { formatOptions: { maximumFractionDigits: decimals } }\n : {})}\n {...(suffix !== undefined ? { suffix } : {})}\n />\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { RangeField, RangeFieldEntry, type RangeFieldProps } from './RangeField.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/range/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1 @@
1
+ export { RangeField, RangeFieldEntry } from "./RangeField.js";
@@ -0,0 +1,23 @@
1
+ import type { Field } from '@panneau/protocol';
2
+ import type { FieldEntryProps, FieldProps } from '../shared/types.js';
3
+ export interface RegionFieldProps extends FieldProps<string> {
4
+ /** The country of the region (`CA`). Without it, or for a country without known regions, a text. */
5
+ country?: string | null;
6
+ placeholder?: string;
7
+ controlClassName?: string;
8
+ }
9
+ /**
10
+ * A state, a province or a territory of a country. For the countries that Panneau knows the
11
+ * regions of, a combo box of their names in the user's locale, whose value is the code of the
12
+ * region without its country (`QC`), with their flags for the countries that have them (Canada and
13
+ * the United States). For the others, the region as typed.
14
+ */
15
+ export declare function RegionField({ country, placeholder, ...props }: RegionFieldProps): import("react").JSX.Element;
16
+ /**
17
+ * The country of a `region` field: the value of the field that `from` names in the same object,
18
+ * or `settings.country`.
19
+ */
20
+ export declare function getRegionCountry(field: Field, parentValue: unknown): string | null;
21
+ /** The `region` type: its country from `from` or `settings.country`. */
22
+ export declare function RegionFieldEntry(props: FieldEntryProps): import("react").JSX.Element;
23
+ //# sourceMappingURL=RegionField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegionField.d.ts","sourceRoot":"","sources":["../../src/region/RegionField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAM/C,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAMnE,MAAM,WAAW,gBAAiB,SAAQ,UAAU,CAAC,MAAM,CAAC;IACxD,oGAAoG;IACpG,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,+BA0B/E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAQlF;AAED,wEAAwE;AACxE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,+BAStD"}
@@ -0,0 +1,174 @@
1
+ import { getFieldProps, getSetting, isString } from "../shared/entry.js";
2
+ import { messages } from "../shared/messages.js";
3
+ import { CodeComboBox } from "../shared/CodeComboBox.js";
4
+ import { TextField } from "../text/TextField.js";
5
+ import { getRegionFlag, useRegionFlags } from "./flags.js";
6
+ import { FlagImage } from "./RegionFlag.js";
7
+ import { getRegions } from "./regions.js";
8
+ import { c } from "react/compiler-runtime";
9
+ import { usePanneauIntl } from "@panneau/ui";
10
+ import { jsx } from "react/jsx-runtime";
11
+ //#region src/region/RegionField.tsx
12
+ /**
13
+ * A state, a province or a territory of a country. For the countries that Panneau knows the
14
+ * regions of, a combo box of their names in the user's locale, whose value is the code of the
15
+ * region without its country (`QC`), with their flags for the countries that have them (Canada and
16
+ * the United States). For the others, the region as typed.
17
+ */
18
+ function RegionField(t0) {
19
+ const $ = c(31);
20
+ let country;
21
+ let placeholder;
22
+ let props;
23
+ if ($[0] !== t0) {
24
+ ({country, placeholder, ...props} = t0);
25
+ $[0] = t0;
26
+ $[1] = country;
27
+ $[2] = placeholder;
28
+ $[3] = props;
29
+ } else {
30
+ country = $[1];
31
+ placeholder = $[2];
32
+ props = $[3];
33
+ }
34
+ const intl = usePanneauIntl();
35
+ const flags = useRegionFlags(country);
36
+ let T0;
37
+ let t1;
38
+ let t2;
39
+ let t3;
40
+ if ($[4] !== country || $[5] !== flags || $[6] !== intl.locale || $[7] !== placeholder || $[8] !== props) {
41
+ t3 = Symbol.for("react.early_return_sentinel");
42
+ bb0: {
43
+ const regions = getRegions(country, intl.locale);
44
+ if (regions === null) {
45
+ let t4;
46
+ if ($[13] !== placeholder) {
47
+ t4 = placeholder !== void 0 ? { placeholder } : {};
48
+ $[13] = placeholder;
49
+ $[14] = t4;
50
+ } else t4 = $[14];
51
+ let t5;
52
+ if ($[15] !== props || $[16] !== t4) {
53
+ t5 = /* @__PURE__ */ jsx(TextField, {
54
+ autoComplete: "address-level1",
55
+ ...props,
56
+ ...t4
57
+ });
58
+ $[15] = props;
59
+ $[16] = t4;
60
+ $[17] = t5;
61
+ } else t5 = $[17];
62
+ t3 = t5;
63
+ break bb0;
64
+ }
65
+ T0 = CodeComboBox;
66
+ t1 = props;
67
+ let t4;
68
+ if ($[18] !== flags) {
69
+ t4 = (region) => {
70
+ const flag = getRegionFlag(flags, region.code);
71
+ return flag !== void 0 ? {
72
+ ...region,
73
+ prefix: /* @__PURE__ */ jsx(FlagImage, { src: flag })
74
+ } : region;
75
+ };
76
+ $[18] = flags;
77
+ $[19] = t4;
78
+ } else t4 = $[19];
79
+ t2 = regions.map(t4);
80
+ }
81
+ $[4] = country;
82
+ $[5] = flags;
83
+ $[6] = intl.locale;
84
+ $[7] = placeholder;
85
+ $[8] = props;
86
+ $[9] = T0;
87
+ $[10] = t1;
88
+ $[11] = t2;
89
+ $[12] = t3;
90
+ } else {
91
+ T0 = $[9];
92
+ t1 = $[10];
93
+ t2 = $[11];
94
+ t3 = $[12];
95
+ }
96
+ if (t3 !== Symbol.for("react.early_return_sentinel")) return t3;
97
+ let t4;
98
+ if ($[20] !== intl || $[21] !== placeholder) {
99
+ t4 = placeholder ?? intl.formatMessage(messages.regionPlaceholder);
100
+ $[20] = intl;
101
+ $[21] = placeholder;
102
+ $[22] = t4;
103
+ } else t4 = $[22];
104
+ let t5;
105
+ if ($[23] !== intl) {
106
+ t5 = intl.formatMessage(messages.noRegions);
107
+ $[23] = intl;
108
+ $[24] = t5;
109
+ } else t5 = $[24];
110
+ let t6;
111
+ if ($[25] !== T0 || $[26] !== t1 || $[27] !== t2 || $[28] !== t4 || $[29] !== t5) {
112
+ t6 = /* @__PURE__ */ jsx(T0, {
113
+ ...t1,
114
+ choices: t2,
115
+ placeholder: t4,
116
+ emptyMessage: t5
117
+ });
118
+ $[25] = T0;
119
+ $[26] = t1;
120
+ $[27] = t2;
121
+ $[28] = t4;
122
+ $[29] = t5;
123
+ $[30] = t6;
124
+ } else t6 = $[30];
125
+ return t6;
126
+ }
127
+ /**
128
+ * The country of a `region` field: the value of the field that `from` names in the same object,
129
+ * or `settings.country`.
130
+ */
131
+ function getRegionCountry(field, parentValue) {
132
+ if (field.from !== void 0 && parentValue !== null && typeof parentValue === "object") {
133
+ const country = parentValue[field.from];
134
+ if (isString(country) && country !== "") return country;
135
+ }
136
+ return getSetting(field, "country", isString) ?? null;
137
+ }
138
+ /** The `region` type: its country from `from` or `settings.country`. */
139
+ function RegionFieldEntry(props) {
140
+ const $ = c(10);
141
+ let t0;
142
+ if ($[0] !== props) {
143
+ t0 = getFieldProps(props);
144
+ $[0] = props;
145
+ $[1] = t0;
146
+ } else t0 = $[1];
147
+ let t1;
148
+ if ($[2] !== props.field || $[3] !== props.parentValue) {
149
+ t1 = getRegionCountry(props.field, props.parentValue);
150
+ $[2] = props.field;
151
+ $[3] = props.parentValue;
152
+ $[4] = t1;
153
+ } else t1 = $[4];
154
+ const t2 = isString(props.value) ? props.value : null;
155
+ let t3;
156
+ if ($[5] !== props.onChange || $[6] !== t0 || $[7] !== t1 || $[8] !== t2) {
157
+ t3 = /* @__PURE__ */ jsx(RegionField, {
158
+ ...t0,
159
+ country: t1,
160
+ value: t2,
161
+ onChange: props.onChange
162
+ });
163
+ $[5] = props.onChange;
164
+ $[6] = t0;
165
+ $[7] = t1;
166
+ $[8] = t2;
167
+ $[9] = t3;
168
+ } else t3 = $[9];
169
+ return t3;
170
+ }
171
+ //#endregion
172
+ export { RegionField, RegionFieldEntry, getRegionCountry };
173
+
174
+ //# sourceMappingURL=RegionField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegionField.js","names":["Field","usePanneauIntl","CodeComboBox","getFieldProps","getSetting","isString","messages","FieldEntryProps","FieldProps","TextField","FlagImage","getRegionFlag","useRegionFlags","getRegions","RegionFieldProps","country","placeholder","controlClassName","RegionField","t0","$","_c","props","intl","flags","T0","t1","t2","t3","locale","Symbol","for","bb0","regions","t4","undefined","t5","region","flag","code","prefix","map","formatMessage","regionPlaceholder","noRegions","t6","getRegionCountry","field","parentValue","from","Record","RegionFieldEntry","value","onChange","_c"],"sources":["../../src/region/RegionField.tsx"],"sourcesContent":["import type { Field } from '@panneau/protocol';\nimport { usePanneauIntl } from '@panneau/ui';\n\nimport { CodeComboBox } from '../shared/CodeComboBox';\nimport { getFieldProps, getSetting, isString } from '../shared/entry';\nimport { messages } from '../shared/messages';\nimport type { FieldEntryProps, FieldProps } from '../shared/types';\nimport { TextField } from '../text/TextField';\nimport { FlagImage } from './RegionFlag';\nimport { getRegionFlag, useRegionFlags } from './flags';\nimport { getRegions } from './regions';\n\nexport interface RegionFieldProps extends FieldProps<string> {\n /** The country of the region (`CA`). Without it, or for a country without known regions, a text. */\n country?: string | null;\n placeholder?: string;\n controlClassName?: string;\n}\n\n/**\n * A state, a province or a territory of a country. For the countries that Panneau knows the\n * regions of, a combo box of their names in the user's locale, whose value is the code of the\n * region without its country (`QC`), with their flags for the countries that have them (Canada and\n * the United States). For the others, the region as typed.\n */\nexport function RegionField({ country, placeholder, ...props }: RegionFieldProps) {\n const intl = usePanneauIntl();\n const flags = useRegionFlags(country);\n const regions = getRegions(country, intl.locale);\n if (regions === null) {\n return (\n <TextField\n autoComplete=\"address-level1\"\n {...props}\n {...(placeholder !== undefined ? { placeholder } : {})}\n />\n );\n }\n return (\n <CodeComboBox\n {...props}\n choices={regions.map((region) => {\n const flag = getRegionFlag(flags, region.code);\n return flag !== undefined\n ? { ...region, prefix: <FlagImage src={flag} /> }\n : region;\n })}\n placeholder={placeholder ?? intl.formatMessage(messages.regionPlaceholder)}\n emptyMessage={intl.formatMessage(messages.noRegions)}\n />\n );\n}\n\n/**\n * The country of a `region` field: the value of the field that `from` names in the same object,\n * or `settings.country`.\n */\nexport function getRegionCountry(field: Field, parentValue: unknown): string | null {\n if (field.from !== undefined && parentValue !== null && typeof parentValue === 'object') {\n const country = (parentValue as Record<string, unknown>)[field.from];\n if (isString(country) && country !== '') {\n return country;\n }\n }\n return getSetting(field, 'country', isString) ?? null;\n}\n\n/** The `region` type: its country from `from` or `settings.country`. */\nexport function RegionFieldEntry(props: FieldEntryProps) {\n return (\n <RegionField\n {...getFieldProps(props)}\n country={getRegionCountry(props.field, props.parentValue)}\n value={isString(props.value) ? props.value : null}\n onChange={props.onChange}\n />\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /* The size of a flag emoji, whatever the shape of the flag: about 4:3 in most emoji fonts. */
2
+ .panneau-region-flag-flag {
3
+ display: inline-block;
4
+ flex: none;
5
+ width: 1.25em;
6
+ height: 0.9375em;
7
+ object-fit: contain;
8
+ vertical-align: -0.125em;
9
+ }
@@ -0,0 +1,20 @@
1
+ /** A decorative image of a flag: the name of its region is next to it. */
2
+ export declare function FlagImage({ src, className }: {
3
+ src: string;
4
+ className?: string | undefined;
5
+ }): import("react").JSX.Element;
6
+ /** Props of `RegionFlag`: the region, by its country and its code. */
7
+ export interface RegionFlagProps {
8
+ /** The country of the region (`CA`). */
9
+ country: string | null | undefined;
10
+ /** The code of the region, without its country (`QC`). */
11
+ code: string;
12
+ /** A class of the image, which has the size of a flag emoji. */
13
+ className?: string;
14
+ }
15
+ /**
16
+ * The flag of a region, as an image with an empty `alt`, for a name next to it. Nothing while the
17
+ * flags of its country load, nor for a region without a flag.
18
+ */
19
+ export declare function RegionFlag({ country, code, className }: RegionFlagProps): import("react").JSX.Element | null;
20
+ //# sourceMappingURL=RegionFlag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegionFlag.d.ts","sourceRoot":"","sources":["../../src/region/RegionFlag.tsx"],"names":[],"mappings":"AAIA,0EAA0E;AAC1E,wBAAgB,SAAS,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,+BAE5F;AAED,sEAAsE;AACtE,MAAM,WAAW,eAAe;IAC5B,wCAAwC;IACxC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACnC,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,eAAe,sCAGvE"}
@@ -0,0 +1,61 @@
1
+ import { cx } from "../shared/cx.js";
2
+ import RegionFlag_module_default from "./RegionFlag.module.js";
3
+ import { getRegionFlag, useRegionFlags } from "./flags.js";
4
+ import { c } from "react/compiler-runtime";
5
+ import { jsx } from "react/jsx-runtime";
6
+ //#region src/region/RegionFlag.tsx
7
+ /** A decorative image of a flag: the name of its region is next to it. */
8
+ function FlagImage(t0) {
9
+ const $ = c(5);
10
+ const { src, className } = t0;
11
+ let t1;
12
+ if ($[0] !== className) {
13
+ t1 = cx(RegionFlag_module_default.flag, className);
14
+ $[0] = className;
15
+ $[1] = t1;
16
+ } else t1 = $[1];
17
+ let t2;
18
+ if ($[2] !== src || $[3] !== t1) {
19
+ t2 = /* @__PURE__ */ jsx("img", {
20
+ src,
21
+ alt: "",
22
+ className: t1
23
+ });
24
+ $[2] = src;
25
+ $[3] = t1;
26
+ $[4] = t2;
27
+ } else t2 = $[4];
28
+ return t2;
29
+ }
30
+ /**
31
+ * The flag of a region, as an image with an empty `alt`, for a name next to it. Nothing while the
32
+ * flags of its country load, nor for a region without a flag.
33
+ */
34
+ function RegionFlag(t0) {
35
+ const $ = c(6);
36
+ const { country, code, className } = t0;
37
+ const t1 = useRegionFlags(country);
38
+ let t2;
39
+ if ($[0] !== code || $[1] !== t1) {
40
+ t2 = getRegionFlag(t1, code);
41
+ $[0] = code;
42
+ $[1] = t1;
43
+ $[2] = t2;
44
+ } else t2 = $[2];
45
+ const src = t2;
46
+ let t3;
47
+ if ($[3] !== className || $[4] !== src) {
48
+ t3 = src !== void 0 ? /* @__PURE__ */ jsx(FlagImage, {
49
+ src,
50
+ className
51
+ }) : null;
52
+ $[3] = className;
53
+ $[4] = src;
54
+ $[5] = t3;
55
+ } else t3 = $[5];
56
+ return t3;
57
+ }
58
+ //#endregion
59
+ export { FlagImage, RegionFlag };
60
+
61
+ //# sourceMappingURL=RegionFlag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegionFlag.js","names":["cx","styles","getRegionFlag","useRegionFlags","FlagImage","t0","$","_c","src","className","t1","flag","t2","RegionFlagProps","country","code","RegionFlag","t3","undefined","_c","styles"],"sources":["../../src/region/RegionFlag.tsx"],"sourcesContent":["import { cx } from '../shared/cx';\nimport styles from './RegionFlag.module.css';\nimport { getRegionFlag, useRegionFlags } from './flags';\n\n/** A decorative image of a flag: the name of its region is next to it. */\nexport function FlagImage({ src, className }: { src: string; className?: string | undefined }) {\n return <img src={src} alt=\"\" className={cx(styles.flag, className)} />;\n}\n\n/** Props of `RegionFlag`: the region, by its country and its code. */\nexport interface RegionFlagProps {\n /** The country of the region (`CA`). */\n country: string | null | undefined;\n /** The code of the region, without its country (`QC`). */\n code: string;\n /** A class of the image, which has the size of a flag emoji. */\n className?: string;\n}\n\n/**\n * The flag of a region, as an image with an empty `alt`, for a name next to it. Nothing while the\n * flags of its country load, nor for a region without a flag.\n */\nexport function RegionFlag({ country, code, className }: RegionFlagProps) {\n const src = getRegionFlag(useRegionFlags(country), code);\n return src !== undefined ? <FlagImage src={src} className={className} /> : null;\n}\n"],"mappings":";;;;;;;AAKA,SAAOI,UAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,CAAA;CAAmB,MAAA,EAAAC,KAAAC,cAAAJ;CAAmE,IAAAK;CAAA,IAAAJ,EAAA,OAAAG,WAAA;EACjDC,KAAAV,GAAGC,0BAAMU,MAAOF,SAAS;EAACH,EAAA,KAAAG;EAAAH,EAAA,KAAAI;CAAA,OAAAA,KAAAJ,EAAA;CAAA,IAAAM;CAAA,IAAAN,EAAA,OAAAE,OAAAF,EAAA,OAAAI,IAAA;EAA3DE,KAAA,oBAAA,OAAA;GAAUJ;GAAS,KAAA;GAAc,WAAAE;EAA0B,CAAA;EAAIJ,EAAA,KAAAE;EAAAF,EAAA,KAAAI;EAAAJ,EAAA,KAAAM;CAAA,OAAAA,KAAAN,EAAA;CAAA,OAA/DM;AAA+D;;;;;AAiB1E,SAAOI,WAAAX,IAAA;CAAA,MAAAC,IAAAC,EAAA,CAAA;CAAoB,MAAA,EAAAO,SAAAC,MAAAN,cAAAJ;CACG,MAAAK,KAAAP,eAAeW,OAAO;CAAC,IAAAF;CAAA,IAAAN,EAAA,OAAAS,QAAAT,EAAA,OAAAI,IAAA;EAArCE,KAAAV,cAAcQ,IAAyBK,IAAI;EAACT,EAAA,KAAAS;EAAAT,EAAA,KAAAI;EAAAJ,EAAA,KAAAM;CAAA,OAAAA,KAAAN,EAAA;CAAxD,MAAAE,MAAYI;CAA6C,IAAAK;CAAA,IAAAX,EAAA,OAAAG,aAAAH,EAAA,OAAAE,KAAA;EAClDS,KAAAT,QAAQU,KAAAA,IAAY,oBAAC,WAAD;GAAgBV;GAAgBC;EAAS,CAAA,IAA7D;EAAwEH,EAAA,KAAAG;EAAAH,EAAA,KAAAE;EAAAF,EAAA,KAAAW;CAAA,OAAAA,KAAAX,EAAA;CAAA,OAAxEW;AAAwE"}
@@ -0,0 +1,8 @@
1
+ import "./RegionFlag.css";
2
+ //#region src/region/RegionFlag.module.css
3
+ var flag = "panneau-region-flag-flag";
4
+ var RegionFlag_module_default = { flag };
5
+ //#endregion
6
+ export { RegionFlag_module_default as default, flag };
7
+
8
+ //# sourceMappingURL=RegionFlag.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegionFlag.module.js","names":[],"sources":["../../src/region/RegionFlag.module.css"],"sourcesContent":["/* The size of a flag emoji, whatever the shape of the flag: about 4:3 in most emoji fonts. */\n.flag {\n display: inline-block;\n flex: none;\n width: 1.25em;\n height: 0.9375em;\n object-fit: contain;\n vertical-align: -0.125em;\n}\n"],"mappings":""}
@@ -0,0 +1,5 @@
1
+ /** A region: its code, its English name, and its French name when it differs. */
2
+ export type RegionEntry = readonly [code: string, en: string, fr?: string];
3
+ /** The regions of the countries that Panneau knows, by country code. */
4
+ export declare const REGIONS: Readonly<Record<string, readonly RegionEntry[]>>;
5
+ //# sourceMappingURL=data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/region/data.ts"],"names":[],"mappings":"AAIA,iFAAiF;AACjF,MAAM,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;AAE3E,wEAAwE;AACxE,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAC,CAsSpE,CAAC"}