boreal-ui 0.0.38 → 0.0.40

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 (463) hide show
  1. package/dist/core/{Badge-DOn6E2bS.cjs → Badge-CyGz8K5W.cjs} +4 -1
  2. package/dist/core/Badge-CyGz8K5W.cjs.map +1 -0
  3. package/dist/core/{Badge-Dpjq6lUF.js → Badge-DnE8lt7-.js} +4 -1
  4. package/dist/core/Badge-DnE8lt7-.js.map +1 -0
  5. package/dist/core/Badge.cjs.js +1 -1
  6. package/dist/core/Badge.js +1 -1
  7. package/dist/core/{Card-Bp8OvH80.cjs → Card-CmyXglyZ.cjs} +9 -6
  8. package/dist/core/Card-CmyXglyZ.cjs.map +1 -0
  9. package/dist/core/{Card-B7Hjcknf.js → Card-v8Cu1hJe.js} +9 -6
  10. package/dist/core/Card-v8Cu1hJe.js.map +1 -0
  11. package/dist/core/Card.cjs.js +1 -1
  12. package/dist/core/Card.js +1 -1
  13. package/dist/core/{Chip-D4vbSudX.js → Chip-BjbtoFKm.js} +2 -2
  14. package/dist/core/{Chip-D4vbSudX.js.map → Chip-BjbtoFKm.js.map} +1 -1
  15. package/dist/core/{Chip-CWsfLyyU.cjs → Chip-c2mN7R-R.cjs} +2 -2
  16. package/dist/core/{Chip-CWsfLyyU.cjs.map → Chip-c2mN7R-R.cjs.map} +1 -1
  17. package/dist/core/Chip.cjs.js +1 -1
  18. package/dist/core/Chip.js +1 -1
  19. package/dist/core/{CommandPalette-CXKBDCbP.cjs → CommandPalette-CPhVbQAc.cjs} +2 -2
  20. package/dist/core/{CommandPalette-CXKBDCbP.cjs.map → CommandPalette-CPhVbQAc.cjs.map} +1 -1
  21. package/dist/core/{CommandPalette-N556smLj.js → CommandPalette-Df69KRv4.js} +2 -2
  22. package/dist/core/{CommandPalette-N556smLj.js.map → CommandPalette-Df69KRv4.js.map} +1 -1
  23. package/dist/core/CommandPalette.cjs.js +1 -1
  24. package/dist/core/CommandPalette.js +1 -1
  25. package/dist/core/{Dropdown-CwofYHjq.js → Dropdown-CR3xr5K-.js} +2 -2
  26. package/dist/core/{Dropdown-CwofYHjq.js.map → Dropdown-CR3xr5K-.js.map} +1 -1
  27. package/dist/core/{Dropdown-DvwHouyC.cjs → Dropdown-CjPfU1K-.cjs} +2 -2
  28. package/dist/core/{Dropdown-DvwHouyC.cjs.map → Dropdown-CjPfU1K-.cjs.map} +1 -1
  29. package/dist/core/Dropdown.cjs.js +1 -1
  30. package/dist/core/Dropdown.js +1 -1
  31. package/dist/core/{FileUpload-Du7vDDdf.cjs → FileUpload-BJ3RJxT3.cjs} +3 -3
  32. package/dist/core/{FileUpload-Du7vDDdf.cjs.map → FileUpload-BJ3RJxT3.cjs.map} +1 -1
  33. package/dist/core/{FileUpload-Q8aDsaFs.js → FileUpload-C0eHx1h8.js} +3 -3
  34. package/dist/core/{FileUpload-Q8aDsaFs.js.map → FileUpload-C0eHx1h8.js.map} +1 -1
  35. package/dist/core/FileUpload.cjs.js +1 -1
  36. package/dist/core/FileUpload.js +1 -1
  37. package/dist/core/{Footer-DMOA1W7N.cjs → Footer-CYIUIgV1.cjs} +3 -3
  38. package/dist/core/Footer-CYIUIgV1.cjs.map +1 -0
  39. package/dist/core/{Footer-zO4RGjCl.js → Footer-D9RimHx9.js} +3 -3
  40. package/dist/core/Footer-D9RimHx9.js.map +1 -0
  41. package/dist/core/Footer.cjs.js +1 -1
  42. package/dist/core/Footer.js +1 -1
  43. package/dist/core/{FormGroup-C2TWC17P.cjs → FormGroup-Cit_2_Wo.cjs} +5 -8
  44. package/dist/core/FormGroup-Cit_2_Wo.cjs.map +1 -0
  45. package/dist/core/{FormGroup-tSK_NN0-.js → FormGroup-DDZ1D_CI.js} +5 -8
  46. package/dist/core/FormGroup-DDZ1D_CI.js.map +1 -0
  47. package/dist/core/FormGroup.cjs.js +1 -1
  48. package/dist/core/FormGroup.js +1 -1
  49. package/dist/core/{IconButton-_lxTppua.js → IconButton-BMZhwYXB.js} +2 -2
  50. package/dist/core/IconButton-BMZhwYXB.js.map +1 -0
  51. package/dist/core/{IconButton-CR9bTZoJ.cjs → IconButton-Bio6Azm-.cjs} +2 -2
  52. package/dist/core/IconButton-Bio6Azm-.cjs.map +1 -0
  53. package/dist/core/IconButton.cjs.js +1 -1
  54. package/dist/core/IconButton.js +1 -1
  55. package/dist/core/{MarkdownRenderer-LUXCa_a8.cjs → MarkdownRenderer-Bn6vcfSd.cjs} +3 -2
  56. package/dist/core/MarkdownRenderer-Bn6vcfSd.cjs.map +1 -0
  57. package/dist/core/{MarkdownRenderer-B1LmmpZm.js → MarkdownRenderer-Co787hku.js} +3 -2
  58. package/dist/core/MarkdownRenderer-Co787hku.js.map +1 -0
  59. package/dist/core/MarkdownRenderer.cjs.js +1 -1
  60. package/dist/core/MarkdownRenderer.js +1 -1
  61. package/dist/core/MessagePopUp.cjs.js +1 -1
  62. package/dist/core/MessagePopUp.js +1 -1
  63. package/dist/core/{MessagePopup-BlbPMecd.js → MessagePopup-B3lEfar7.js} +2 -2
  64. package/dist/core/{MessagePopup-BlbPMecd.js.map → MessagePopup-B3lEfar7.js.map} +1 -1
  65. package/dist/core/{MessagePopup-hxloT7aK.cjs → MessagePopup-CtdpuRFv.cjs} +2 -2
  66. package/dist/core/{MessagePopup-hxloT7aK.cjs.map → MessagePopup-CtdpuRFv.cjs.map} +1 -1
  67. package/dist/core/{MetricBox-Dh911MS2.js → MetricBox-CPug-nxo.js} +11 -2
  68. package/dist/core/MetricBox-CPug-nxo.js.map +1 -0
  69. package/dist/core/{MetricBox-BcOdQM-l.cjs → MetricBox-DVo4UUQv.cjs} +11 -2
  70. package/dist/core/MetricBox-DVo4UUQv.cjs.map +1 -0
  71. package/dist/core/MetricBox.cjs.js +1 -1
  72. package/dist/core/MetricBox.js +1 -1
  73. package/dist/core/{Modal-D1G1Csp9.js → Modal-DFhYDYb9.js} +2 -2
  74. package/dist/core/{Modal-D1G1Csp9.js.map → Modal-DFhYDYb9.js.map} +1 -1
  75. package/dist/core/{Modal-D-ZoA_xx.cjs → Modal-FB4mTmQW.cjs} +2 -2
  76. package/dist/core/{Modal-D-ZoA_xx.cjs.map → Modal-FB4mTmQW.cjs.map} +1 -1
  77. package/dist/core/Modal.cjs.js +1 -1
  78. package/dist/core/Modal.js +1 -1
  79. package/dist/core/{NotificationCenter-BrUNpJAx.js → NotificationCenter-DLCzWNve.js} +2 -2
  80. package/dist/core/{NotificationCenter-BrUNpJAx.js.map → NotificationCenter-DLCzWNve.js.map} +1 -1
  81. package/dist/core/{NotificationCenter-Dqwu2Z6s.cjs → NotificationCenter-DfOOEt9N.cjs} +2 -2
  82. package/dist/core/{NotificationCenter-Dqwu2Z6s.cjs.map → NotificationCenter-DfOOEt9N.cjs.map} +1 -1
  83. package/dist/core/NotificationCenter.cjs.js +1 -1
  84. package/dist/core/NotificationCenter.js +1 -1
  85. package/dist/core/{Pager-CZF6O7rq.js → Pager-DBHI7yRW.js} +2 -2
  86. package/dist/core/{Pager-CZF6O7rq.js.map → Pager-DBHI7yRW.js.map} +1 -1
  87. package/dist/core/{Pager-C_SG4CIc.cjs → Pager-Dv6D3kXa.cjs} +2 -2
  88. package/dist/core/{Pager-C_SG4CIc.cjs.map → Pager-Dv6D3kXa.cjs.map} +1 -1
  89. package/dist/core/Pager.cjs.js +1 -1
  90. package/dist/core/Pager.js +1 -1
  91. package/dist/core/{Skeleton-Cwn3_gc7.js → Skeleton-BjpQHG5i.js} +2 -2
  92. package/dist/core/{Skeleton-Cwn3_gc7.js.map → Skeleton-BjpQHG5i.js.map} +1 -1
  93. package/dist/core/{Skeleton-BLVD5mDI.cjs → Skeleton-tetAZCSl.cjs} +2 -2
  94. package/dist/core/{Skeleton-BLVD5mDI.cjs.map → Skeleton-tetAZCSl.cjs.map} +1 -1
  95. package/dist/core/Skeleton.cjs.js +1 -1
  96. package/dist/core/Skeleton.js +1 -1
  97. package/dist/core/{Spinner-D81UG24n.js → Spinner-D1CHbKYU.js} +2 -2
  98. package/dist/core/Spinner-D1CHbKYU.js.map +1 -0
  99. package/dist/core/{Spinner-CEIk_hpT.cjs → Spinner-JTcQ_d4T.cjs} +2 -2
  100. package/dist/core/Spinner-JTcQ_d4T.cjs.map +1 -0
  101. package/dist/core/Spinner.cjs.js +1 -1
  102. package/dist/core/Spinner.js +1 -1
  103. package/dist/core/{Stepper-Cjb7ckXo.js → Stepper-C6xjvhZJ.js} +2 -2
  104. package/dist/core/{Stepper-Cjb7ckXo.js.map → Stepper-C6xjvhZJ.js.map} +1 -1
  105. package/dist/core/{Stepper-BuCLqbtQ.cjs → Stepper-JNVBVHc3.cjs} +2 -2
  106. package/dist/core/{Stepper-BuCLqbtQ.cjs.map → Stepper-JNVBVHc3.cjs.map} +1 -1
  107. package/dist/core/Stepper.cjs.js +1 -1
  108. package/dist/core/Stepper.js +1 -1
  109. package/dist/core/TagInput.cjs.js +1 -1
  110. package/dist/core/TagInput.js +1 -1
  111. package/dist/core/{Taginput-DgbxDttA.cjs → Taginput-BXCxdLf0.cjs} +3 -3
  112. package/dist/core/{Taginput-DgbxDttA.cjs.map → Taginput-BXCxdLf0.cjs.map} +1 -1
  113. package/dist/core/{Taginput-CKekAR72.js → Taginput-CoxxwLXg.js} +3 -3
  114. package/dist/core/{Taginput-CKekAR72.js.map → Taginput-CoxxwLXg.js.map} +1 -1
  115. package/dist/core/{TextInput-DFOjxri2.cjs → TextInput-DYALlUc_.cjs} +2 -2
  116. package/dist/core/{TextInput-DFOjxri2.cjs.map → TextInput-DYALlUc_.cjs.map} +1 -1
  117. package/dist/core/{TextInput-7kV66ccj.js → TextInput-qw-jAx_3.js} +2 -2
  118. package/dist/core/{TextInput-7kV66ccj.js.map → TextInput-qw-jAx_3.js.map} +1 -1
  119. package/dist/core/TextInput.cjs.js +1 -1
  120. package/dist/core/TextInput.js +1 -1
  121. package/dist/core/{style.css → boreal-ui.css} +6976 -6974
  122. package/dist/core/index.cjs.js +20 -20
  123. package/dist/core/index.js +20 -20
  124. package/dist/next/{Accordion-DKNh8FaP.cjs → Accordion-BPWTEHym.cjs} +50 -50
  125. package/dist/next/{Accordion-DKNh8FaP.cjs.map → Accordion-BPWTEHym.cjs.map} +1 -1
  126. package/dist/next/{Accordion-BkiAI6vY.js → Accordion-DY243Bq9.js} +50 -50
  127. package/dist/next/{Accordion-BkiAI6vY.js.map → Accordion-DY243Bq9.js.map} +1 -1
  128. package/dist/next/Accordion.cjs.js +1 -1
  129. package/dist/next/Accordion.js +1 -1
  130. package/dist/next/{Avatar-ijMVfQpY.js → Avatar-B-Ws4Ueo.js} +42 -42
  131. package/dist/next/{Avatar-ijMVfQpY.js.map → Avatar-B-Ws4Ueo.js.map} +1 -1
  132. package/dist/next/{Avatar-Ctm74prt.cjs → Avatar-B9sMyRWr.cjs} +42 -42
  133. package/dist/next/{Avatar-Ctm74prt.cjs.map → Avatar-B9sMyRWr.cjs.map} +1 -1
  134. package/dist/next/Avatar.cjs.js +1 -1
  135. package/dist/next/Avatar.js +1 -1
  136. package/dist/next/{Badge-k6Dk5S_p.js → Badge-BZNYm0IU.js} +34 -31
  137. package/dist/next/Badge-BZNYm0IU.js.map +1 -0
  138. package/dist/next/{Badge-DbmM5wGc.cjs → Badge-dTyh833r.cjs} +34 -31
  139. package/dist/next/Badge-dTyh833r.cjs.map +1 -0
  140. package/dist/next/Badge.cjs.js +1 -1
  141. package/dist/next/Badge.js +1 -1
  142. package/dist/next/{Breadcrumbs-CWv3TrV_.js → Breadcrumbs-BPWmV24h.js} +39 -39
  143. package/dist/next/{Breadcrumbs-CWv3TrV_.js.map → Breadcrumbs-BPWmV24h.js.map} +1 -1
  144. package/dist/next/{Breadcrumbs-BrH6_8Kt.cjs → Breadcrumbs-BcXj2PgR.cjs} +39 -39
  145. package/dist/next/{Breadcrumbs-BrH6_8Kt.cjs.map → Breadcrumbs-BcXj2PgR.cjs.map} +1 -1
  146. package/dist/next/Breadcrumbs.cjs.js +1 -1
  147. package/dist/next/Breadcrumbs.js +1 -1
  148. package/dist/next/{Button-D8Kff8sN.cjs → Button-B1Fh4G0_.cjs} +47 -47
  149. package/dist/next/{Button-D8Kff8sN.cjs.map → Button-B1Fh4G0_.cjs.map} +1 -1
  150. package/dist/next/{Button-BjY7f3mw.js → Button-uZ3xTOOt.js} +47 -47
  151. package/dist/next/{Button-BjY7f3mw.js.map → Button-uZ3xTOOt.js.map} +1 -1
  152. package/dist/next/Button.cjs.js +1 -1
  153. package/dist/next/Button.js +1 -1
  154. package/dist/next/{Card-9Uf34mPf.cjs → Card-BOu9cws1.cjs} +71 -68
  155. package/dist/next/Card-BOu9cws1.cjs.map +1 -0
  156. package/dist/next/{Card-CL8WOI8g.js → Card-CZu4-xEt.js} +71 -68
  157. package/dist/next/Card-CZu4-xEt.js.map +1 -0
  158. package/dist/next/Card.cjs.js +1 -1
  159. package/dist/next/Card.js +1 -1
  160. package/dist/next/CheckBox.cjs.js +1 -1
  161. package/dist/next/CheckBox.js +1 -1
  162. package/dist/next/{Checkbox-DVr6H6mN.js → Checkbox-BJ0rBZLF.js} +44 -44
  163. package/dist/next/{Checkbox-DVr6H6mN.js.map → Checkbox-BJ0rBZLF.js.map} +1 -1
  164. package/dist/next/{Checkbox-B-y0lEjJ.cjs → Checkbox-Ch7osD3y.cjs} +44 -44
  165. package/dist/next/{Checkbox-B-y0lEjJ.cjs.map → Checkbox-Ch7osD3y.cjs.map} +1 -1
  166. package/dist/next/{Chip-C8ayWG9-.js → Chip-BB3Awc2g.js} +51 -51
  167. package/dist/next/{Chip-C8ayWG9-.js.map → Chip-BB3Awc2g.js.map} +1 -1
  168. package/dist/next/{Chip-C4-KUcHh.cjs → Chip-DzFaUPed.cjs} +51 -51
  169. package/dist/next/{Chip-C4-KUcHh.cjs.map → Chip-DzFaUPed.cjs.map} +1 -1
  170. package/dist/next/Chip.cjs.js +1 -1
  171. package/dist/next/Chip.js +1 -1
  172. package/dist/next/{CircularProgress-Cz9G0WeQ.js → CircularProgress-BUqdguII.js} +37 -37
  173. package/dist/next/{CircularProgress-Cz9G0WeQ.js.map → CircularProgress-BUqdguII.js.map} +1 -1
  174. package/dist/next/{CircularProgress-UhpLA94q.cjs → CircularProgress-Cp2pGFmc.cjs} +37 -37
  175. package/dist/next/{CircularProgress-UhpLA94q.cjs.map → CircularProgress-Cp2pGFmc.cjs.map} +1 -1
  176. package/dist/next/CircularProgress.cjs.js +1 -1
  177. package/dist/next/CircularProgress.js +1 -1
  178. package/dist/next/{ColorPicker-DvgeIT_p.cjs → ColorPicker-BHtO2mbU.cjs} +38 -38
  179. package/dist/next/{ColorPicker-DvgeIT_p.cjs.map → ColorPicker-BHtO2mbU.cjs.map} +1 -1
  180. package/dist/next/{ColorPicker-1naDOGhp.js → ColorPicker-ChWOekWP.js} +38 -38
  181. package/dist/next/{ColorPicker-1naDOGhp.js.map → ColorPicker-ChWOekWP.js.map} +1 -1
  182. package/dist/next/ColorPicker.cjs.js +1 -1
  183. package/dist/next/ColorPicker.js +1 -1
  184. package/dist/next/{CommandPalette-ypXbi8zW.cjs → CommandPalette-BT9X_yL0.cjs} +42 -42
  185. package/dist/next/{CommandPalette-ypXbi8zW.cjs.map → CommandPalette-BT9X_yL0.cjs.map} +1 -1
  186. package/dist/next/{CommandPalette-XP4v5FE6.js → CommandPalette-DEf12Et3.js} +42 -42
  187. package/dist/next/{CommandPalette-XP4v5FE6.js.map → CommandPalette-DEf12Et3.js.map} +1 -1
  188. package/dist/next/CommandPalette.cjs.js +1 -1
  189. package/dist/next/CommandPalette.js +1 -1
  190. package/dist/next/{DataTable-jUelgv2H.js → DataTable-CnvOkZrU.js} +40 -40
  191. package/dist/next/{DataTable-jUelgv2H.js.map → DataTable-CnvOkZrU.js.map} +1 -1
  192. package/dist/next/{DataTable-jq0suGoA.cjs → DataTable-DQ1QRyZw.cjs} +40 -40
  193. package/dist/next/{DataTable-jq0suGoA.cjs.map → DataTable-DQ1QRyZw.cjs.map} +1 -1
  194. package/dist/next/DataTable.cjs.js +1 -1
  195. package/dist/next/DataTable.js +1 -1
  196. package/dist/next/{DateTimePicker-D5gEfxvd.cjs → DateTimePicker-2M4AJJXm.cjs} +46 -46
  197. package/dist/next/{DateTimePicker-D5gEfxvd.cjs.map → DateTimePicker-2M4AJJXm.cjs.map} +1 -1
  198. package/dist/next/{DateTimePicker-BTm6T3-E.js → DateTimePicker-IvBWNgkK.js} +46 -46
  199. package/dist/next/{DateTimePicker-BTm6T3-E.js.map → DateTimePicker-IvBWNgkK.js.map} +1 -1
  200. package/dist/next/DateTimePicker.cjs.js +1 -1
  201. package/dist/next/DateTimePicker.js +1 -1
  202. package/dist/next/{Divider-BYKFFi3a.js → Divider-BCCzNbAE.js} +28 -28
  203. package/dist/next/{Divider-BYKFFi3a.js.map → Divider-BCCzNbAE.js.map} +1 -1
  204. package/dist/next/{Divider-CczNc7mx.cjs → Divider-ByDYa4v6.cjs} +28 -28
  205. package/dist/next/{Divider-CczNc7mx.cjs.map → Divider-ByDYa4v6.cjs.map} +1 -1
  206. package/dist/next/Divider.cjs.js +1 -1
  207. package/dist/next/Divider.js +1 -1
  208. package/dist/next/{Dropdown-yaMx19im.cjs → Dropdown-DEdk2QjS.cjs} +22 -22
  209. package/dist/next/{Dropdown-yaMx19im.cjs.map → Dropdown-DEdk2QjS.cjs.map} +1 -1
  210. package/dist/next/{Dropdown-CJGb6wyQ.js → Dropdown-qdxH-NQR.js} +22 -22
  211. package/dist/next/{Dropdown-CJGb6wyQ.js.map → Dropdown-qdxH-NQR.js.map} +1 -1
  212. package/dist/next/Dropdown.cjs.js +1 -1
  213. package/dist/next/Dropdown.js +1 -1
  214. package/dist/next/{EmptyState-DIymA2cZ.js → EmptyState-BNzFHAk3.js} +31 -31
  215. package/dist/next/{EmptyState-DIymA2cZ.js.map → EmptyState-BNzFHAk3.js.map} +1 -1
  216. package/dist/next/{EmptyState-CGPIGpz2.cjs → EmptyState-CXyx1WlG.cjs} +31 -31
  217. package/dist/next/{EmptyState-CGPIGpz2.cjs.map → EmptyState-CXyx1WlG.cjs.map} +1 -1
  218. package/dist/next/EmptyState.cjs.js +1 -1
  219. package/dist/next/EmptyState.js +1 -1
  220. package/dist/next/{FileUpload-CIued3w1.js → FileUpload-DBSXPL55.js} +52 -52
  221. package/dist/next/{FileUpload-CIued3w1.js.map → FileUpload-DBSXPL55.js.map} +1 -1
  222. package/dist/next/{FileUpload-MVXOV0j9.cjs → FileUpload-DwlqapHn.cjs} +52 -52
  223. package/dist/next/{FileUpload-MVXOV0j9.cjs.map → FileUpload-DwlqapHn.cjs.map} +1 -1
  224. package/dist/next/FileUpload.cjs.js +1 -1
  225. package/dist/next/FileUpload.js +1 -1
  226. package/dist/next/{Footer-DAZLz11H.cjs → Footer-BxrsmJyY.cjs} +45 -45
  227. package/dist/next/Footer-BxrsmJyY.cjs.map +1 -0
  228. package/dist/next/{Footer-BSEbf6CL.js → Footer-CP_PaLon.js} +45 -45
  229. package/dist/next/Footer-CP_PaLon.js.map +1 -0
  230. package/dist/next/Footer.cjs.js +1 -1
  231. package/dist/next/Footer.js +1 -1
  232. package/dist/next/{FormGroup-DbUqgg_b.js → FormGroup-QfUhtyhx.js} +34 -37
  233. package/dist/next/FormGroup-QfUhtyhx.js.map +1 -0
  234. package/dist/next/{FormGroup-6Ss6pNqV.cjs → FormGroup-U3EwnB0M.cjs} +34 -37
  235. package/dist/next/FormGroup-U3EwnB0M.cjs.map +1 -0
  236. package/dist/next/FormGroup.cjs.js +1 -1
  237. package/dist/next/FormGroup.js +1 -1
  238. package/dist/next/{IconButton-VSz8qAIg.cjs → IconButton-2l-_HOMB.cjs} +31 -31
  239. package/dist/next/IconButton-2l-_HOMB.cjs.map +1 -0
  240. package/dist/next/{IconButton-qQljwBB2.js → IconButton-BTUFKRZt.js} +31 -31
  241. package/dist/next/IconButton-BTUFKRZt.js.map +1 -0
  242. package/dist/next/IconButton.cjs.js +1 -1
  243. package/dist/next/IconButton.js +1 -1
  244. package/dist/next/{MarkdownRenderer-B7lwemDw.js → MarkdownRenderer-B8_D0j7d.js} +14 -13
  245. package/dist/next/{MarkdownRenderer-B7lwemDw.js.map → MarkdownRenderer-B8_D0j7d.js.map} +1 -1
  246. package/dist/next/{MarkdownRenderer-BvfBDz9X.cjs → MarkdownRenderer-l6hdKOt0.cjs} +14 -13
  247. package/dist/next/{MarkdownRenderer-BvfBDz9X.cjs.map → MarkdownRenderer-l6hdKOt0.cjs.map} +1 -1
  248. package/dist/next/MarkdownRenderer.cjs.js +1 -1
  249. package/dist/next/MarkdownRenderer.js +1 -1
  250. package/dist/next/MessagePopUp.cjs.js +1 -1
  251. package/dist/next/MessagePopUp.js +1 -1
  252. package/dist/next/{MessagePopup-B5OaSUBr.js → MessagePopup-N2n3NvgX.js} +19 -19
  253. package/dist/next/{MessagePopup-B5OaSUBr.js.map → MessagePopup-N2n3NvgX.js.map} +1 -1
  254. package/dist/next/{MessagePopup-BQ4OFvwo.cjs → MessagePopup-PB3e2lTg.cjs} +19 -19
  255. package/dist/next/{MessagePopup-BQ4OFvwo.cjs.map → MessagePopup-PB3e2lTg.cjs.map} +1 -1
  256. package/dist/next/{MetricBox-Dl3iruBZ.js → MetricBox-BjdAzOrZ.js} +57 -48
  257. package/dist/next/MetricBox-BjdAzOrZ.js.map +1 -0
  258. package/dist/next/{MetricBox-BylPOvoO.cjs → MetricBox-C3B6Bkcb.cjs} +57 -48
  259. package/dist/next/MetricBox-C3B6Bkcb.cjs.map +1 -0
  260. package/dist/next/MetricBox.cjs.js +1 -1
  261. package/dist/next/MetricBox.js +1 -1
  262. package/dist/next/{Modal-CevpqeOy.cjs → Modal-DHTrvNfc.cjs} +17 -17
  263. package/dist/next/{Modal-CevpqeOy.cjs.map → Modal-DHTrvNfc.cjs.map} +1 -1
  264. package/dist/next/{Modal-BARibygG.js → Modal-QTq5IcKa.js} +17 -17
  265. package/dist/next/{Modal-BARibygG.js.map → Modal-QTq5IcKa.js.map} +1 -1
  266. package/dist/next/Modal.cjs.js +1 -1
  267. package/dist/next/Modal.js +1 -1
  268. package/dist/next/{NavBar-C5FBdZT6.cjs → NavBar-Ds_02bAe.cjs} +40 -40
  269. package/dist/next/{NavBar-C5FBdZT6.cjs.map → NavBar-Ds_02bAe.cjs.map} +1 -1
  270. package/dist/next/{NavBar-Bucpo8_3.js → NavBar-v_ckzQIo.js} +40 -40
  271. package/dist/next/{NavBar-Bucpo8_3.js.map → NavBar-v_ckzQIo.js.map} +1 -1
  272. package/dist/next/NavBar.cjs.js +1 -1
  273. package/dist/next/NavBar.js +1 -1
  274. package/dist/next/{NotificationCenter-BD58bbOZ.cjs → NotificationCenter-DbYxpoy6.cjs} +43 -43
  275. package/dist/next/{NotificationCenter-BD58bbOZ.cjs.map → NotificationCenter-DbYxpoy6.cjs.map} +1 -1
  276. package/dist/next/{NotificationCenter-CSwbscYh.js → NotificationCenter-DxK09uJd.js} +43 -43
  277. package/dist/next/{NotificationCenter-CSwbscYh.js.map → NotificationCenter-DxK09uJd.js.map} +1 -1
  278. package/dist/next/NotificationCenter.cjs.js +1 -1
  279. package/dist/next/NotificationCenter.js +1 -1
  280. package/dist/next/{Pager-B-xaM28_.cjs → Pager-BU5RjNwR.cjs} +7 -7
  281. package/dist/next/{Pager-B-xaM28_.cjs.map → Pager-BU5RjNwR.cjs.map} +1 -1
  282. package/dist/next/{Pager-DWzCtb2Q.js → Pager-CtzyTqIl.js} +7 -7
  283. package/dist/next/{Pager-DWzCtb2Q.js.map → Pager-CtzyTqIl.js.map} +1 -1
  284. package/dist/next/Pager.cjs.js +1 -1
  285. package/dist/next/Pager.js +1 -1
  286. package/dist/next/{PopOver-QAYHaYcd.js → PopOver-CmPp9PkL.js} +40 -40
  287. package/dist/next/{PopOver-QAYHaYcd.js.map → PopOver-CmPp9PkL.js.map} +1 -1
  288. package/dist/next/{PopOver-Dp4eqN8G.cjs → PopOver-ixERZLpM.cjs} +40 -40
  289. package/dist/next/{PopOver-Dp4eqN8G.cjs.map → PopOver-ixERZLpM.cjs.map} +1 -1
  290. package/dist/next/PopOver.cjs.js +1 -1
  291. package/dist/next/PopOver.js +1 -1
  292. package/dist/next/{ProgressBar-BrO0fvaM.js → ProgressBar-BoU2HJv3.js} +42 -42
  293. package/dist/next/{ProgressBar-BrO0fvaM.js.map → ProgressBar-BoU2HJv3.js.map} +1 -1
  294. package/dist/next/{ProgressBar-DfXSlpKX.cjs → ProgressBar-C6zKbiq5.cjs} +42 -42
  295. package/dist/next/{ProgressBar-DfXSlpKX.cjs.map → ProgressBar-C6zKbiq5.cjs.map} +1 -1
  296. package/dist/next/ProgressBar.cjs.js +1 -1
  297. package/dist/next/ProgressBar.js +1 -1
  298. package/dist/next/{RadioButton-6cb-ZRjy.cjs → RadioButton-BCu934Uo.cjs} +38 -38
  299. package/dist/next/{RadioButton-6cb-ZRjy.cjs.map → RadioButton-BCu934Uo.cjs.map} +1 -1
  300. package/dist/next/{RadioButton-Dz_e0WUT.js → RadioButton-C14Rsx9o.js} +38 -38
  301. package/dist/next/{RadioButton-Dz_e0WUT.js.map → RadioButton-C14Rsx9o.js.map} +1 -1
  302. package/dist/next/RadioButton.cjs.js +1 -1
  303. package/dist/next/RadioButton.js +1 -1
  304. package/dist/next/{Rating-C4pqzKNQ.cjs → Rating-C9BgQANc.cjs} +34 -34
  305. package/dist/next/{Rating-C4pqzKNQ.cjs.map → Rating-C9BgQANc.cjs.map} +1 -1
  306. package/dist/next/{Rating-DbQ61tMY.js → Rating-aheV3uZJ.js} +34 -34
  307. package/dist/next/{Rating-DbQ61tMY.js.map → Rating-aheV3uZJ.js.map} +1 -1
  308. package/dist/next/Rating.cjs.js +1 -1
  309. package/dist/next/Rating.js +1 -1
  310. package/dist/next/{STT-CCzJFcVP.js → STT-CFFr1_Ls.js} +14 -14
  311. package/dist/next/{STT-CCzJFcVP.js.map → STT-CFFr1_Ls.js.map} +1 -1
  312. package/dist/next/{STT-C6kV0zwW.cjs → STT-GyAuX3-m.cjs} +14 -14
  313. package/dist/next/{STT-C6kV0zwW.cjs.map → STT-GyAuX3-m.cjs.map} +1 -1
  314. package/dist/next/ScrollToTop.cjs.js +1 -1
  315. package/dist/next/ScrollToTop.js +1 -1
  316. package/dist/next/{Select-CZivQIlV.js → Select-CPwU0IV9.js} +32 -32
  317. package/dist/next/{Select-CZivQIlV.js.map → Select-CPwU0IV9.js.map} +1 -1
  318. package/dist/next/{Select-CSAN6B98.cjs → Select-Dgcy2vVe.cjs} +32 -32
  319. package/dist/next/{Select-CSAN6B98.cjs.map → Select-Dgcy2vVe.cjs.map} +1 -1
  320. package/dist/next/Select.cjs.js +1 -1
  321. package/dist/next/Select.js +1 -1
  322. package/dist/next/{Sidebar-BVeRWv61.js → Sidebar-CJ4VrQIW.js} +38 -38
  323. package/dist/next/{Sidebar-BVeRWv61.js.map → Sidebar-CJ4VrQIW.js.map} +1 -1
  324. package/dist/next/{Sidebar-DcDJjNrK.cjs → Sidebar-DajVSn82.cjs} +38 -38
  325. package/dist/next/{Sidebar-DcDJjNrK.cjs.map → Sidebar-DajVSn82.cjs.map} +1 -1
  326. package/dist/next/Sidebar.cjs.js +1 -1
  327. package/dist/next/Sidebar.js +1 -1
  328. package/dist/next/{Skeleton-rSW1X4hk.js → Skeleton-D8C29p3K.js} +27 -27
  329. package/dist/next/{Skeleton-rSW1X4hk.js.map → Skeleton-D8C29p3K.js.map} +1 -1
  330. package/dist/next/{Skeleton-JgU17y-3.cjs → Skeleton-Dmz7m0dj.cjs} +27 -27
  331. package/dist/next/{Skeleton-JgU17y-3.cjs.map → Skeleton-Dmz7m0dj.cjs.map} +1 -1
  332. package/dist/next/Skeleton.cjs.js +1 -1
  333. package/dist/next/Skeleton.js +1 -1
  334. package/dist/next/{Slider-CdSPPw1x.js → Slider-BOAgWYkH.js} +43 -43
  335. package/dist/next/{Slider-CdSPPw1x.js.map → Slider-BOAgWYkH.js.map} +1 -1
  336. package/dist/next/{Slider-B8e96nMm.cjs → Slider-DQM9nV1P.cjs} +43 -43
  337. package/dist/next/{Slider-B8e96nMm.cjs.map → Slider-DQM9nV1P.cjs.map} +1 -1
  338. package/dist/next/Slider.cjs.js +1 -1
  339. package/dist/next/Slider.js +1 -1
  340. package/dist/next/{Spinner-B89FhxVt.cjs → Spinner-0GZngKjG.cjs} +38 -38
  341. package/dist/next/Spinner-0GZngKjG.cjs.map +1 -0
  342. package/dist/next/{Spinner-ChiOXzru.js → Spinner-BFAOf4tt.js} +38 -38
  343. package/dist/next/Spinner-BFAOf4tt.js.map +1 -0
  344. package/dist/next/Spinner.cjs.js +1 -1
  345. package/dist/next/Spinner.js +1 -1
  346. package/dist/next/{Stepper-9uHSgp7y.js → Stepper-B03bz8wT.js} +40 -40
  347. package/dist/next/{Stepper-9uHSgp7y.js.map → Stepper-B03bz8wT.js.map} +1 -1
  348. package/dist/next/{Stepper-UwSloxRf.cjs → Stepper-XZSIlydV.cjs} +40 -40
  349. package/dist/next/{Stepper-UwSloxRf.cjs.map → Stepper-XZSIlydV.cjs.map} +1 -1
  350. package/dist/next/Stepper.cjs.js +1 -1
  351. package/dist/next/Stepper.js +1 -1
  352. package/dist/next/{Tabs-D2jqRrxR.cjs → Tabs-D8Efg8wn.cjs} +44 -44
  353. package/dist/next/{Tabs-D2jqRrxR.cjs.map → Tabs-D8Efg8wn.cjs.map} +1 -1
  354. package/dist/next/{Tabs-CvYx2xtH.js → Tabs-DmrS_FUa.js} +44 -44
  355. package/dist/next/{Tabs-CvYx2xtH.js.map → Tabs-DmrS_FUa.js.map} +1 -1
  356. package/dist/next/Tabs.cjs.js +1 -1
  357. package/dist/next/Tabs.js +1 -1
  358. package/dist/next/{TagInput-Dym0BPK1.cjs → TagInput-Bfjg9pZQ.cjs} +48 -48
  359. package/dist/next/{TagInput-Dym0BPK1.cjs.map → TagInput-Bfjg9pZQ.cjs.map} +1 -1
  360. package/dist/next/{TagInput-DUWgLslk.js → TagInput-CtYKwhEi.js} +48 -48
  361. package/dist/next/{TagInput-DUWgLslk.js.map → TagInput-CtYKwhEi.js.map} +1 -1
  362. package/dist/next/TagInput.cjs.js +1 -1
  363. package/dist/next/TagInput.js +1 -1
  364. package/dist/next/{TextArea-xg4t0Lzo.js → TextArea-n9HgwyJE.js} +25 -25
  365. package/dist/next/{TextArea-xg4t0Lzo.js.map → TextArea-n9HgwyJE.js.map} +1 -1
  366. package/dist/next/{TextArea-9AvILSCY.cjs → TextArea-rwkjK4Rf.cjs} +25 -25
  367. package/dist/next/{TextArea-9AvILSCY.cjs.map → TextArea-rwkjK4Rf.cjs.map} +1 -1
  368. package/dist/next/TextArea.cjs.js +1 -1
  369. package/dist/next/TextArea.js +1 -1
  370. package/dist/next/{TextInput-D9dzooMU.js → TextInput-ChmIMzj2.js} +26 -26
  371. package/dist/next/{TextInput-D9dzooMU.js.map → TextInput-ChmIMzj2.js.map} +1 -1
  372. package/dist/next/{TextInput-Cr0WjibW.cjs → TextInput-Z2izAjJj.cjs} +26 -26
  373. package/dist/next/{TextInput-Cr0WjibW.cjs.map → TextInput-Z2izAjJj.cjs.map} +1 -1
  374. package/dist/next/TextInput.cjs.js +1 -1
  375. package/dist/next/TextInput.js +1 -1
  376. package/dist/next/{Timeline-DXSXZumg.cjs → Timeline-3bNOgI6C.cjs} +28 -28
  377. package/dist/next/{Timeline-DXSXZumg.cjs.map → Timeline-3bNOgI6C.cjs.map} +1 -1
  378. package/dist/next/{Timeline-Cg0FWWVc.js → Timeline-9947mxJO.js} +28 -28
  379. package/dist/next/{Timeline-Cg0FWWVc.js.map → Timeline-9947mxJO.js.map} +1 -1
  380. package/dist/next/Timeline.cjs.js +1 -1
  381. package/dist/next/Timeline.js +1 -1
  382. package/dist/next/{Toggle-CnpONDwl.js → Toggle-C60HtU15.js} +30 -30
  383. package/dist/next/{Toggle-CnpONDwl.js.map → Toggle-C60HtU15.js.map} +1 -1
  384. package/dist/next/{Toggle-BNK7uC_N.cjs → Toggle-XcxNC4zl.cjs} +30 -30
  385. package/dist/next/{Toggle-BNK7uC_N.cjs.map → Toggle-XcxNC4zl.cjs.map} +1 -1
  386. package/dist/next/Toggle.cjs.js +1 -1
  387. package/dist/next/Toggle.js +1 -1
  388. package/dist/next/{Toolbar-DHUozW08.cjs → Toolbar-C45B_I44.cjs} +35 -35
  389. package/dist/next/{Toolbar-DHUozW08.cjs.map → Toolbar-C45B_I44.cjs.map} +1 -1
  390. package/dist/next/{Toolbar-007Q19jl.js → Toolbar-Dq1qqx4P.js} +35 -35
  391. package/dist/next/{Toolbar-007Q19jl.js.map → Toolbar-Dq1qqx4P.js.map} +1 -1
  392. package/dist/next/Toolbar.cjs.js +1 -1
  393. package/dist/next/Toolbar.js +1 -1
  394. package/dist/next/{Tooltip-2XEuDIAw.js → Tooltip-BHIA1zE1.js} +39 -39
  395. package/dist/next/{Tooltip-2XEuDIAw.js.map → Tooltip-BHIA1zE1.js.map} +1 -1
  396. package/dist/next/{Tooltip-FCqrcC7D.cjs → Tooltip-BXd5FXXv.cjs} +39 -39
  397. package/dist/next/{Tooltip-FCqrcC7D.cjs.map → Tooltip-BXd5FXXv.cjs.map} +1 -1
  398. package/dist/next/Tooltip.cjs.js +1 -1
  399. package/dist/next/Tooltip.js +1 -1
  400. package/dist/next/{style.css → boreal-ui.css} +9636 -9636
  401. package/dist/next/{image-VX9Ty9NQ.cjs → image-A4nTeRaX.cjs} +1079 -1025
  402. package/dist/next/image-A4nTeRaX.cjs.map +1 -0
  403. package/dist/next/{image-CEz9QtOW.js → image-BBS8QO15.js} +1083 -1029
  404. package/dist/next/image-BBS8QO15.js.map +1 -0
  405. package/dist/next/index.cjs.js +69 -69
  406. package/dist/next/index.js +69 -69
  407. package/dist/next/link-CxWP3aXr.js +3829 -0
  408. package/dist/next/link-CxWP3aXr.js.map +1 -0
  409. package/dist/next/link-lNk_lOdS.cjs +3828 -0
  410. package/dist/next/link-lNk_lOdS.cjs.map +1 -0
  411. package/dist/next/navigation-CZU71Pmb.cjs +2443 -0
  412. package/dist/next/navigation-CZU71Pmb.cjs.map +1 -0
  413. package/dist/next/navigation-DxXFNXZM.js +2444 -0
  414. package/dist/next/navigation-DxXFNXZM.js.map +1 -0
  415. package/dist/tsconfig.build.tsbuildinfo +1 -1
  416. package/dist/types/components/Badge/BadgeBase.d.ts.map +1 -1
  417. package/dist/types/components/Card/Card.types.d.ts +2 -0
  418. package/dist/types/components/Card/Card.types.d.ts.map +1 -1
  419. package/dist/types/components/Card/CardBase.d.ts.map +1 -1
  420. package/dist/types/components/FormGroup/FormGroupBase.d.ts.map +1 -1
  421. package/dist/types/components/MarkdownRenderer/MarkdownRendererBase.d.ts.map +1 -1
  422. package/dist/types/components/MetricBox/MetricBoxBase.d.ts.map +1 -1
  423. package/package.json +12 -11
  424. package/dist/core/Badge-DOn6E2bS.cjs.map +0 -1
  425. package/dist/core/Badge-Dpjq6lUF.js.map +0 -1
  426. package/dist/core/Card-B7Hjcknf.js.map +0 -1
  427. package/dist/core/Card-Bp8OvH80.cjs.map +0 -1
  428. package/dist/core/Footer-DMOA1W7N.cjs.map +0 -1
  429. package/dist/core/Footer-zO4RGjCl.js.map +0 -1
  430. package/dist/core/FormGroup-C2TWC17P.cjs.map +0 -1
  431. package/dist/core/FormGroup-tSK_NN0-.js.map +0 -1
  432. package/dist/core/IconButton-CR9bTZoJ.cjs.map +0 -1
  433. package/dist/core/IconButton-_lxTppua.js.map +0 -1
  434. package/dist/core/MarkdownRenderer-B1LmmpZm.js.map +0 -1
  435. package/dist/core/MarkdownRenderer-LUXCa_a8.cjs.map +0 -1
  436. package/dist/core/MetricBox-BcOdQM-l.cjs.map +0 -1
  437. package/dist/core/MetricBox-Dh911MS2.js.map +0 -1
  438. package/dist/core/Spinner-CEIk_hpT.cjs.map +0 -1
  439. package/dist/core/Spinner-D81UG24n.js.map +0 -1
  440. package/dist/next/Badge-DbmM5wGc.cjs.map +0 -1
  441. package/dist/next/Badge-k6Dk5S_p.js.map +0 -1
  442. package/dist/next/Card-9Uf34mPf.cjs.map +0 -1
  443. package/dist/next/Card-CL8WOI8g.js.map +0 -1
  444. package/dist/next/Footer-BSEbf6CL.js.map +0 -1
  445. package/dist/next/Footer-DAZLz11H.cjs.map +0 -1
  446. package/dist/next/FormGroup-6Ss6pNqV.cjs.map +0 -1
  447. package/dist/next/FormGroup-DbUqgg_b.js.map +0 -1
  448. package/dist/next/IconButton-VSz8qAIg.cjs.map +0 -1
  449. package/dist/next/IconButton-qQljwBB2.js.map +0 -1
  450. package/dist/next/MetricBox-BylPOvoO.cjs.map +0 -1
  451. package/dist/next/MetricBox-Dl3iruBZ.js.map +0 -1
  452. package/dist/next/Spinner-B89FhxVt.cjs.map +0 -1
  453. package/dist/next/Spinner-ChiOXzru.js.map +0 -1
  454. package/dist/next/image-CEz9QtOW.js.map +0 -1
  455. package/dist/next/image-VX9Ty9NQ.cjs.map +0 -1
  456. package/dist/next/link-Bik5xH00.js +0 -2878
  457. package/dist/next/link-Bik5xH00.js.map +0 -1
  458. package/dist/next/link-hxAaLm0Q.cjs +0 -2877
  459. package/dist/next/link-hxAaLm0Q.cjs.map +0 -1
  460. package/dist/next/navigation-DTwYCgCL.js +0 -1991
  461. package/dist/next/navigation-DTwYCgCL.js.map +0 -1
  462. package/dist/next/navigation-m012syo9.cjs +0 -1990
  463. package/dist/next/navigation-m012syo9.cjs.map +0 -1
@@ -1,648 +1,706 @@
1
1
  "use strict";
2
- const link = require("./link-hxAaLm0Q.cjs");
2
+ const link = require("./link-lNk_lOdS.cjs");
3
3
  const require$$2 = require("react/jsx-runtime");
4
4
  const React = require("react");
5
5
  const ReactDOM = require("react-dom");
6
6
  var imageExternal = {};
7
7
  var getImgProps = {};
8
8
  var warnOnce = {};
9
- (function(exports2) {
10
- Object.defineProperty(exports2, "__esModule", {
11
- value: true
12
- });
13
- Object.defineProperty(exports2, "warnOnce", {
14
- enumerable: true,
15
- get: function() {
16
- return warnOnce2;
17
- }
18
- });
19
- let warnOnce2 = (_) => {
20
- };
21
- if (process.env.NODE_ENV !== "production") {
22
- const warnings = /* @__PURE__ */ new Set();
23
- warnOnce2 = (msg) => {
24
- if (!warnings.has(msg)) {
25
- console.warn(msg);
9
+ var hasRequiredWarnOnce;
10
+ function requireWarnOnce() {
11
+ if (hasRequiredWarnOnce) return warnOnce;
12
+ hasRequiredWarnOnce = 1;
13
+ (function(exports$1) {
14
+ Object.defineProperty(exports$1, "__esModule", {
15
+ value: true
16
+ });
17
+ Object.defineProperty(exports$1, "warnOnce", {
18
+ enumerable: true,
19
+ get: function() {
20
+ return warnOnce2;
26
21
  }
27
- warnings.add(msg);
22
+ });
23
+ let warnOnce2 = (_) => {
28
24
  };
29
- }
30
- })(warnOnce);
25
+ if (process.env.NODE_ENV !== "production") {
26
+ const warnings = /* @__PURE__ */ new Set();
27
+ warnOnce2 = (msg) => {
28
+ if (!warnings.has(msg)) {
29
+ console.warn(msg);
30
+ }
31
+ warnings.add(msg);
32
+ };
33
+ }
34
+ })(warnOnce);
35
+ return warnOnce;
36
+ }
31
37
  var imageBlurSvg = {};
32
- (function(exports2) {
33
- Object.defineProperty(exports2, "__esModule", {
34
- value: true
35
- });
36
- Object.defineProperty(exports2, "getImageBlurSvg", {
37
- enumerable: true,
38
- get: function() {
39
- return getImageBlurSvg;
38
+ var hasRequiredImageBlurSvg;
39
+ function requireImageBlurSvg() {
40
+ if (hasRequiredImageBlurSvg) return imageBlurSvg;
41
+ hasRequiredImageBlurSvg = 1;
42
+ (function(exports$1) {
43
+ Object.defineProperty(exports$1, "__esModule", {
44
+ value: true
45
+ });
46
+ Object.defineProperty(exports$1, "getImageBlurSvg", {
47
+ enumerable: true,
48
+ get: function() {
49
+ return getImageBlurSvg;
50
+ }
51
+ });
52
+ function getImageBlurSvg({ widthInt, heightInt, blurWidth, blurHeight, blurDataURL, objectFit }) {
53
+ const std = 20;
54
+ const svgWidth = blurWidth ? blurWidth * 40 : widthInt;
55
+ const svgHeight = blurHeight ? blurHeight * 40 : heightInt;
56
+ const viewBox = svgWidth && svgHeight ? `viewBox='0 0 ${svgWidth} ${svgHeight}'` : "";
57
+ const preserveAspectRatio = viewBox ? "none" : objectFit === "contain" ? "xMidYMid" : objectFit === "cover" ? "xMidYMid slice" : "none";
58
+ return `%3Csvg xmlns='http://www.w3.org/2000/svg' ${viewBox}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='${std}'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='${std}'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${preserveAspectRatio}' style='filter: url(%23b);' href='${blurDataURL}'/%3E%3C/svg%3E`;
40
59
  }
41
- });
42
- function getImageBlurSvg(param) {
43
- let { widthInt, heightInt, blurWidth, blurHeight, blurDataURL, objectFit } = param;
44
- const std = 20;
45
- const svgWidth = blurWidth ? blurWidth * 40 : widthInt;
46
- const svgHeight = blurHeight ? blurHeight * 40 : heightInt;
47
- const viewBox = svgWidth && svgHeight ? "viewBox='0 0 " + svgWidth + " " + svgHeight + "'" : "";
48
- const preserveAspectRatio = viewBox ? "none" : objectFit === "contain" ? "xMidYMid" : objectFit === "cover" ? "xMidYMid slice" : "none";
49
- return "%3Csvg xmlns='http://www.w3.org/2000/svg' " + viewBox + "%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='" + std + "'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='" + std + "'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='" + preserveAspectRatio + "' style='filter: url(%23b);' href='" + blurDataURL + "'/%3E%3C/svg%3E";
50
- }
51
- })(imageBlurSvg);
60
+ })(imageBlurSvg);
61
+ return imageBlurSvg;
62
+ }
52
63
  var imageConfig = {};
53
- (function(exports2) {
54
- Object.defineProperty(exports2, "__esModule", {
55
- value: true
56
- });
57
- function _export(target, all) {
58
- for (var name in all) Object.defineProperty(target, name, {
59
- enumerable: true,
60
- get: all[name]
64
+ var hasRequiredImageConfig;
65
+ function requireImageConfig() {
66
+ if (hasRequiredImageConfig) return imageConfig;
67
+ hasRequiredImageConfig = 1;
68
+ (function(exports$1) {
69
+ Object.defineProperty(exports$1, "__esModule", {
70
+ value: true
61
71
  });
62
- }
63
- _export(exports2, {
64
- VALID_LOADERS: function() {
65
- return VALID_LOADERS;
66
- },
67
- imageConfigDefault: function() {
68
- return imageConfigDefault;
72
+ function _export(target, all) {
73
+ for (var name in all) Object.defineProperty(target, name, {
74
+ enumerable: true,
75
+ get: all[name]
76
+ });
69
77
  }
70
- });
71
- const VALID_LOADERS = [
72
- "default",
73
- "imgix",
74
- "cloudinary",
75
- "akamai",
76
- "custom"
77
- ];
78
- const imageConfigDefault = {
79
- deviceSizes: [
80
- 640,
81
- 750,
82
- 828,
83
- 1080,
84
- 1200,
85
- 1920,
86
- 2048,
87
- 3840
88
- ],
89
- imageSizes: [
90
- 16,
91
- 32,
92
- 48,
93
- 64,
94
- 96,
95
- 128,
96
- 256,
97
- 384
98
- ],
99
- path: "/_next/image",
100
- loader: "default",
101
- loaderFile: "",
102
- domains: [],
103
- disableStaticImages: false,
104
- minimumCacheTTL: 60,
105
- formats: [
106
- "image/webp"
107
- ],
108
- dangerouslyAllowSVG: false,
109
- contentSecurityPolicy: "script-src 'none'; frame-src 'none'; sandbox;",
110
- contentDispositionType: "attachment",
111
- localPatterns: void 0,
112
- remotePatterns: [],
113
- qualities: void 0,
114
- unoptimized: false
115
- };
116
- })(imageConfig);
117
- (function(exports2) {
118
- Object.defineProperty(exports2, "__esModule", {
119
- value: true
120
- });
121
- Object.defineProperty(exports2, "getImgProps", {
122
- enumerable: true,
123
- get: function() {
124
- return getImgProps2;
78
+ _export(exports$1, {
79
+ VALID_LOADERS: function() {
80
+ return VALID_LOADERS;
81
+ },
82
+ imageConfigDefault: function() {
83
+ return imageConfigDefault;
84
+ }
85
+ });
86
+ const VALID_LOADERS = [
87
+ "default",
88
+ "imgix",
89
+ "cloudinary",
90
+ "akamai",
91
+ "custom"
92
+ ];
93
+ const imageConfigDefault = {
94
+ deviceSizes: [
95
+ 640,
96
+ 750,
97
+ 828,
98
+ 1080,
99
+ 1200,
100
+ 1920,
101
+ 2048,
102
+ 3840
103
+ ],
104
+ imageSizes: [
105
+ 32,
106
+ 48,
107
+ 64,
108
+ 96,
109
+ 128,
110
+ 256,
111
+ 384
112
+ ],
113
+ path: "/_next/image",
114
+ loader: "default",
115
+ loaderFile: "",
116
+ /**
117
+ * @deprecated Use `remotePatterns` instead to protect your application from malicious users.
118
+ */
119
+ domains: [],
120
+ disableStaticImages: false,
121
+ minimumCacheTTL: 14400,
122
+ formats: [
123
+ "image/webp"
124
+ ],
125
+ maximumRedirects: 3,
126
+ dangerouslyAllowLocalIP: false,
127
+ dangerouslyAllowSVG: false,
128
+ contentSecurityPolicy: `script-src 'none'; frame-src 'none'; sandbox;`,
129
+ contentDispositionType: "attachment",
130
+ localPatterns: void 0,
131
+ remotePatterns: [],
132
+ qualities: [
133
+ 75
134
+ ],
135
+ unoptimized: false
136
+ };
137
+ })(imageConfig);
138
+ return imageConfig;
139
+ }
140
+ var hasRequiredGetImgProps;
141
+ function requireGetImgProps() {
142
+ if (hasRequiredGetImgProps) return getImgProps;
143
+ hasRequiredGetImgProps = 1;
144
+ (function(exports$1) {
145
+ Object.defineProperty(exports$1, "__esModule", {
146
+ value: true
147
+ });
148
+ Object.defineProperty(exports$1, "getImgProps", {
149
+ enumerable: true,
150
+ get: function() {
151
+ return getImgProps2;
152
+ }
153
+ });
154
+ const _warnonce = requireWarnOnce();
155
+ const _imageblursvg = requireImageBlurSvg();
156
+ const _imageconfig = requireImageConfig();
157
+ const VALID_LOADING_VALUES = [
158
+ "lazy",
159
+ "eager",
160
+ void 0
161
+ ];
162
+ const INVALID_BACKGROUND_SIZE_VALUES = [
163
+ "-moz-initial",
164
+ "fill",
165
+ "none",
166
+ "scale-down",
167
+ void 0
168
+ ];
169
+ function isStaticRequire(src) {
170
+ return src.default !== void 0;
125
171
  }
126
- });
127
- const _warnonce = warnOnce;
128
- const _imageblursvg = imageBlurSvg;
129
- const _imageconfig = imageConfig;
130
- const VALID_LOADING_VALUES = [
131
- "lazy",
132
- "eager",
133
- void 0
134
- ];
135
- const INVALID_BACKGROUND_SIZE_VALUES = [
136
- "-moz-initial",
137
- "fill",
138
- "none",
139
- "scale-down",
140
- void 0
141
- ];
142
- function isStaticRequire(src) {
143
- return src.default !== void 0;
144
- }
145
- function isStaticImageData(src) {
146
- return src.src !== void 0;
147
- }
148
- function isStaticImport(src) {
149
- return !!src && typeof src === "object" && (isStaticRequire(src) || isStaticImageData(src));
150
- }
151
- const allImgs = /* @__PURE__ */ new Map();
152
- let perfObserver;
153
- function getInt(x) {
154
- if (typeof x === "undefined") {
155
- return x;
172
+ function isStaticImageData(src) {
173
+ return src.src !== void 0;
156
174
  }
157
- if (typeof x === "number") {
158
- return Number.isFinite(x) ? x : NaN;
175
+ function isStaticImport(src) {
176
+ return !!src && typeof src === "object" && (isStaticRequire(src) || isStaticImageData(src));
159
177
  }
160
- if (typeof x === "string" && /^[0-9]+$/.test(x)) {
161
- return parseInt(x, 10);
178
+ const allImgs = /* @__PURE__ */ new Map();
179
+ let perfObserver;
180
+ function getInt(x) {
181
+ if (typeof x === "undefined") {
182
+ return x;
183
+ }
184
+ if (typeof x === "number") {
185
+ return Number.isFinite(x) ? x : NaN;
186
+ }
187
+ if (typeof x === "string" && /^[0-9]+$/.test(x)) {
188
+ return parseInt(x, 10);
189
+ }
190
+ return NaN;
162
191
  }
163
- return NaN;
164
- }
165
- function getWidths(param, width, sizes) {
166
- let { deviceSizes, allSizes } = param;
167
- if (sizes) {
168
- const viewportWidthRe = /(^|\s)(1?\d?\d)vw/g;
169
- const percentSizes = [];
170
- for (let match; match = viewportWidthRe.exec(sizes); match) {
171
- percentSizes.push(parseInt(match[2]));
192
+ function getWidths({ deviceSizes, allSizes }, width, sizes) {
193
+ if (sizes) {
194
+ const viewportWidthRe = /(^|\s)(1?\d?\d)vw/g;
195
+ const percentSizes = [];
196
+ for (let match; match = viewportWidthRe.exec(sizes); match) {
197
+ percentSizes.push(parseInt(match[2]));
198
+ }
199
+ if (percentSizes.length) {
200
+ const smallestRatio = Math.min(...percentSizes) * 0.01;
201
+ return {
202
+ widths: allSizes.filter((s) => s >= deviceSizes[0] * smallestRatio),
203
+ kind: "w"
204
+ };
205
+ }
206
+ return {
207
+ widths: allSizes,
208
+ kind: "w"
209
+ };
172
210
  }
173
- if (percentSizes.length) {
174
- const smallestRatio = Math.min(...percentSizes) * 0.01;
211
+ if (typeof width !== "number") {
175
212
  return {
176
- widths: allSizes.filter((s) => s >= deviceSizes[0] * smallestRatio),
213
+ widths: deviceSizes,
177
214
  kind: "w"
178
215
  };
179
216
  }
217
+ const widths = [
218
+ ...new Set(
219
+ // > This means that most OLED screens that say they are 3x resolution,
220
+ // > are actually 3x in the green color, but only 1.5x in the red and
221
+ // > blue colors. Showing a 3x resolution image in the app vs a 2x
222
+ // > resolution image will be visually the same, though the 3x image
223
+ // > takes significantly more data. Even true 3x resolution screens are
224
+ // > wasteful as the human eye cannot see that level of detail without
225
+ // > something like a magnifying glass.
226
+ // https://blog.twitter.com/engineering/en_us/topics/infrastructure/2019/capping-image-fidelity-on-ultra-high-resolution-devices.html
227
+ [
228
+ width,
229
+ width * 2
230
+ /*, width * 3*/
231
+ ].map((w) => allSizes.find((p) => p >= w) || allSizes[allSizes.length - 1])
232
+ )
233
+ ];
180
234
  return {
181
- widths: allSizes,
182
- kind: "w"
183
- };
184
- }
185
- if (typeof width !== "number") {
186
- return {
187
- widths: deviceSizes,
188
- kind: "w"
189
- };
190
- }
191
- const widths = [
192
- ...new Set(
193
- // > This means that most OLED screens that say they are 3x resolution,
194
- // > are actually 3x in the green color, but only 1.5x in the red and
195
- // > blue colors. Showing a 3x resolution image in the app vs a 2x
196
- // > resolution image will be visually the same, though the 3x image
197
- // > takes significantly more data. Even true 3x resolution screens are
198
- // > wasteful as the human eye cannot see that level of detail without
199
- // > something like a magnifying glass.
200
- // https://blog.twitter.com/engineering/en_us/topics/infrastructure/2019/capping-image-fidelity-on-ultra-high-resolution-devices.html
201
- [
202
- width,
203
- width * 2
204
- /*, width * 3*/
205
- ].map((w) => allSizes.find((p) => p >= w) || allSizes[allSizes.length - 1])
206
- )
207
- ];
208
- return {
209
- widths,
210
- kind: "x"
211
- };
212
- }
213
- function generateImgAttrs(param) {
214
- let { config, src, unoptimized, width, quality, sizes, loader } = param;
215
- if (unoptimized) {
216
- return {
217
- src,
218
- srcSet: void 0,
219
- sizes: void 0
220
- };
221
- }
222
- const { widths, kind } = getWidths(config, width, sizes);
223
- const last = widths.length - 1;
224
- return {
225
- sizes: !sizes && kind === "w" ? "100vw" : sizes,
226
- srcSet: widths.map((w, i) => loader({
227
- config,
228
- src,
229
- quality,
230
- width: w
231
- }) + " " + (kind === "w" ? w : i + 1) + kind).join(", "),
232
- // It's intended to keep `src` the last attribute because React updates
233
- // attributes in order. If we keep `src` the first one, Safari will
234
- // immediately start to fetch `src`, before `sizes` and `srcSet` are even
235
- // updated by React. That causes multiple unnecessary requests if `srcSet`
236
- // and `sizes` are defined.
237
- // This bug cannot be reproduced in Chrome or Firefox.
238
- src: loader({
239
- config,
240
- src,
241
- quality,
242
- width: widths[last]
243
- })
244
- };
245
- }
246
- function getImgProps2(param, _state) {
247
- let { src, sizes, unoptimized = false, priority = false, loading, className, quality, width, height, fill = false, style, overrideSrc, onLoad, onLoadingComplete, placeholder = "empty", blurDataURL, fetchPriority, decoding = "async", layout, objectFit, objectPosition, lazyBoundary, lazyRoot, ...rest } = param;
248
- const { imgConf, showAltText, blurComplete, defaultLoader } = _state;
249
- let config;
250
- let c = imgConf || _imageconfig.imageConfigDefault;
251
- if ("allSizes" in c) {
252
- config = c;
253
- } else {
254
- var _c_qualities;
255
- const allSizes = [
256
- ...c.deviceSizes,
257
- ...c.imageSizes
258
- ].sort((a, b) => a - b);
259
- const deviceSizes = c.deviceSizes.sort((a, b) => a - b);
260
- const qualities = (_c_qualities = c.qualities) == null ? void 0 : _c_qualities.sort((a, b) => a - b);
261
- config = {
262
- ...c,
263
- allSizes,
264
- deviceSizes,
265
- qualities
235
+ widths,
236
+ kind: "x"
266
237
  };
267
238
  }
268
- if (typeof defaultLoader === "undefined") {
269
- throw Object.defineProperty(new Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"), "__NEXT_ERROR_CODE", {
270
- value: "E163",
271
- enumerable: false,
272
- configurable: true
273
- });
274
- }
275
- let loader = rest.loader || defaultLoader;
276
- delete rest.loader;
277
- delete rest.srcSet;
278
- const isDefaultLoader = "__next_img_default" in loader;
279
- if (isDefaultLoader) {
280
- if (config.loader === "custom") {
281
- throw Object.defineProperty(new Error('Image with src "' + src + '" is missing "loader" prop.\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader'), "__NEXT_ERROR_CODE", {
282
- value: "E252",
283
- enumerable: false,
284
- configurable: true
285
- });
239
+ function generateImgAttrs({ config, src, unoptimized, width, quality, sizes, loader }) {
240
+ if (unoptimized) {
241
+ return {
242
+ src,
243
+ srcSet: void 0,
244
+ sizes: void 0
245
+ };
286
246
  }
287
- } else {
288
- const customImageLoader = loader;
289
- loader = (obj) => {
290
- const { config: _, ...opts } = obj;
291
- return customImageLoader(opts);
247
+ const { widths, kind } = getWidths(config, width, sizes);
248
+ const last = widths.length - 1;
249
+ return {
250
+ sizes: !sizes && kind === "w" ? "100vw" : sizes,
251
+ srcSet: widths.map((w, i) => `${loader({
252
+ config,
253
+ src,
254
+ quality,
255
+ width: w
256
+ })} ${kind === "w" ? w : i + 1}${kind}`).join(", "),
257
+ // It's intended to keep `src` the last attribute because React updates
258
+ // attributes in order. If we keep `src` the first one, Safari will
259
+ // immediately start to fetch `src`, before `sizes` and `srcSet` are even
260
+ // updated by React. That causes multiple unnecessary requests if `srcSet`
261
+ // and `sizes` are defined.
262
+ // This bug cannot be reproduced in Chrome or Firefox.
263
+ src: loader({
264
+ config,
265
+ src,
266
+ quality,
267
+ width: widths[last]
268
+ })
292
269
  };
293
270
  }
294
- if (layout) {
295
- if (layout === "fill") {
296
- fill = true;
297
- }
298
- const layoutToStyle = {
299
- intrinsic: {
300
- maxWidth: "100%",
301
- height: "auto"
302
- },
303
- responsive: {
304
- width: "100%",
305
- height: "auto"
306
- }
307
- };
308
- const layoutToSizes = {
309
- responsive: "100vw",
310
- fill: "100vw"
311
- };
312
- const layoutStyle = layoutToStyle[layout];
313
- if (layoutStyle) {
314
- style = {
315
- ...style,
316
- ...layoutStyle
271
+ function getImgProps2({ src, sizes, unoptimized = false, priority = false, preload = false, loading, className, quality, width, height, fill = false, style, overrideSrc, onLoad, onLoadingComplete, placeholder = "empty", blurDataURL, fetchPriority, decoding = "async", layout, objectFit, objectPosition, lazyBoundary, lazyRoot, ...rest }, _state) {
272
+ var _a;
273
+ const { imgConf, showAltText, blurComplete, defaultLoader } = _state;
274
+ let config;
275
+ let c = imgConf || _imageconfig.imageConfigDefault;
276
+ if ("allSizes" in c) {
277
+ config = c;
278
+ } else {
279
+ const allSizes = [
280
+ ...c.deviceSizes,
281
+ ...c.imageSizes
282
+ ].sort((a, b) => a - b);
283
+ const deviceSizes = c.deviceSizes.sort((a, b) => a - b);
284
+ const qualities = (_a = c.qualities) == null ? void 0 : _a.sort((a, b) => a - b);
285
+ config = {
286
+ ...c,
287
+ allSizes,
288
+ deviceSizes,
289
+ qualities
317
290
  };
318
291
  }
319
- const layoutSizes = layoutToSizes[layout];
320
- if (layoutSizes && !sizes) {
321
- sizes = layoutSizes;
322
- }
323
- }
324
- let staticSrc = "";
325
- let widthInt = getInt(width);
326
- let heightInt = getInt(height);
327
- let blurWidth;
328
- let blurHeight;
329
- if (isStaticImport(src)) {
330
- const staticImageData = isStaticRequire(src) ? src.default : src;
331
- if (!staticImageData.src) {
332
- throw Object.defineProperty(new Error("An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received " + JSON.stringify(staticImageData)), "__NEXT_ERROR_CODE", {
333
- value: "E460",
334
- enumerable: false,
335
- configurable: true
336
- });
337
- }
338
- if (!staticImageData.height || !staticImageData.width) {
339
- throw Object.defineProperty(new Error("An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received " + JSON.stringify(staticImageData)), "__NEXT_ERROR_CODE", {
340
- value: "E48",
292
+ if (typeof defaultLoader === "undefined") {
293
+ throw Object.defineProperty(new Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"), "__NEXT_ERROR_CODE", {
294
+ value: "E163",
341
295
  enumerable: false,
342
296
  configurable: true
343
297
  });
344
298
  }
345
- blurWidth = staticImageData.blurWidth;
346
- blurHeight = staticImageData.blurHeight;
347
- blurDataURL = blurDataURL || staticImageData.blurDataURL;
348
- staticSrc = staticImageData.src;
349
- if (!fill) {
350
- if (!widthInt && !heightInt) {
351
- widthInt = staticImageData.width;
352
- heightInt = staticImageData.height;
353
- } else if (widthInt && !heightInt) {
354
- const ratio = widthInt / staticImageData.width;
355
- heightInt = Math.round(staticImageData.height * ratio);
356
- } else if (!widthInt && heightInt) {
357
- const ratio = heightInt / staticImageData.height;
358
- widthInt = Math.round(staticImageData.width * ratio);
299
+ let loader = rest.loader || defaultLoader;
300
+ delete rest.loader;
301
+ delete rest.srcSet;
302
+ const isDefaultLoader = "__next_img_default" in loader;
303
+ if (isDefaultLoader) {
304
+ if (config.loader === "custom") {
305
+ throw Object.defineProperty(new Error(`Image with src "${src}" is missing "loader" prop.
306
+ Read more: https://nextjs.org/docs/messages/next-image-missing-loader`), "__NEXT_ERROR_CODE", {
307
+ value: "E252",
308
+ enumerable: false,
309
+ configurable: true
310
+ });
359
311
  }
360
- }
361
- }
362
- src = typeof src === "string" ? src : staticSrc;
363
- let isLazy = !priority && (loading === "lazy" || typeof loading === "undefined");
364
- if (!src || src.startsWith("data:") || src.startsWith("blob:")) {
365
- unoptimized = true;
366
- isLazy = false;
367
- }
368
- if (config.unoptimized) {
369
- unoptimized = true;
370
- }
371
- if (isDefaultLoader && !config.dangerouslyAllowSVG && src.split("?", 1)[0].endsWith(".svg")) {
372
- unoptimized = true;
373
- }
374
- const qualityInt = getInt(quality);
375
- if (process.env.NODE_ENV !== "production") {
376
- if (config.output === "export" && isDefaultLoader && !unoptimized) {
377
- throw Object.defineProperty(new Error("Image Optimization using the default loader is not compatible with `{ output: 'export' }`.\n Possible solutions:\n - Remove `{ output: 'export' }` and run \"next start\" to run server mode including the Image Optimization API.\n - Configure `{ images: { unoptimized: true } }` in `next.config.js` to disable the Image Optimization API.\n Read more: https://nextjs.org/docs/messages/export-image-api"), "__NEXT_ERROR_CODE", {
378
- value: "E500",
379
- enumerable: false,
380
- configurable: true
381
- });
382
- }
383
- if (!src) {
384
- unoptimized = true;
385
312
  } else {
386
- if (fill) {
387
- if (width) {
388
- throw Object.defineProperty(new Error('Image with src "' + src + '" has both "width" and "fill" properties. Only one should be used.'), "__NEXT_ERROR_CODE", {
389
- value: "E96",
390
- enumerable: false,
391
- configurable: true
392
- });
393
- }
394
- if (height) {
395
- throw Object.defineProperty(new Error('Image with src "' + src + '" has both "height" and "fill" properties. Only one should be used.'), "__NEXT_ERROR_CODE", {
396
- value: "E115",
397
- enumerable: false,
398
- configurable: true
399
- });
400
- }
401
- if ((style == null ? void 0 : style.position) && style.position !== "absolute") {
402
- throw Object.defineProperty(new Error('Image with src "' + src + '" has both "fill" and "style.position" properties. Images with "fill" always use position absolute - it cannot be modified.'), "__NEXT_ERROR_CODE", {
403
- value: "E216",
404
- enumerable: false,
405
- configurable: true
406
- });
407
- }
408
- if ((style == null ? void 0 : style.width) && style.width !== "100%") {
409
- throw Object.defineProperty(new Error('Image with src "' + src + '" has both "fill" and "style.width" properties. Images with "fill" always use width 100% - it cannot be modified.'), "__NEXT_ERROR_CODE", {
410
- value: "E73",
411
- enumerable: false,
412
- configurable: true
413
- });
414
- }
415
- if ((style == null ? void 0 : style.height) && style.height !== "100%") {
416
- throw Object.defineProperty(new Error('Image with src "' + src + '" has both "fill" and "style.height" properties. Images with "fill" always use height 100% - it cannot be modified.'), "__NEXT_ERROR_CODE", {
417
- value: "E404",
418
- enumerable: false,
419
- configurable: true
420
- });
421
- }
422
- } else {
423
- if (typeof widthInt === "undefined") {
424
- throw Object.defineProperty(new Error('Image with src "' + src + '" is missing required "width" property.'), "__NEXT_ERROR_CODE", {
425
- value: "E451",
426
- enumerable: false,
427
- configurable: true
428
- });
429
- } else if (isNaN(widthInt)) {
430
- throw Object.defineProperty(new Error('Image with src "' + src + '" has invalid "width" property. Expected a numeric value in pixels but received "' + width + '".'), "__NEXT_ERROR_CODE", {
431
- value: "E66",
432
- enumerable: false,
433
- configurable: true
434
- });
435
- }
436
- if (typeof heightInt === "undefined") {
437
- throw Object.defineProperty(new Error('Image with src "' + src + '" is missing required "height" property.'), "__NEXT_ERROR_CODE", {
438
- value: "E397",
439
- enumerable: false,
440
- configurable: true
441
- });
442
- } else if (isNaN(heightInt)) {
443
- throw Object.defineProperty(new Error('Image with src "' + src + '" has invalid "height" property. Expected a numeric value in pixels but received "' + height + '".'), "__NEXT_ERROR_CODE", {
444
- value: "E444",
445
- enumerable: false,
446
- configurable: true
447
- });
448
- }
449
- if (/^[\x00-\x20]/.test(src)) {
450
- throw Object.defineProperty(new Error('Image with src "' + src + '" cannot start with a space or control character. Use src.trimStart() to remove it or encodeURIComponent(src) to keep it.'), "__NEXT_ERROR_CODE", {
451
- value: "E176",
452
- enumerable: false,
453
- configurable: true
454
- });
313
+ const customImageLoader = loader;
314
+ loader = (obj) => {
315
+ const { config: _, ...opts } = obj;
316
+ return customImageLoader(opts);
317
+ };
318
+ }
319
+ if (layout) {
320
+ if (layout === "fill") {
321
+ fill = true;
322
+ }
323
+ const layoutToStyle = {
324
+ intrinsic: {
325
+ maxWidth: "100%",
326
+ height: "auto"
327
+ },
328
+ responsive: {
329
+ width: "100%",
330
+ height: "auto"
455
331
  }
456
- if (/[\x00-\x20]$/.test(src)) {
457
- throw Object.defineProperty(new Error('Image with src "' + src + '" cannot end with a space or control character. Use src.trimEnd() to remove it or encodeURIComponent(src) to keep it.'), "__NEXT_ERROR_CODE", {
458
- value: "E21",
459
- enumerable: false,
460
- configurable: true
461
- });
332
+ };
333
+ const layoutToSizes = {
334
+ responsive: "100vw",
335
+ fill: "100vw"
336
+ };
337
+ const layoutStyle = layoutToStyle[layout];
338
+ if (layoutStyle) {
339
+ style = {
340
+ ...style,
341
+ ...layoutStyle
342
+ };
343
+ }
344
+ const layoutSizes = layoutToSizes[layout];
345
+ if (layoutSizes && !sizes) {
346
+ sizes = layoutSizes;
347
+ }
348
+ }
349
+ let staticSrc = "";
350
+ let widthInt = getInt(width);
351
+ let heightInt = getInt(height);
352
+ let blurWidth;
353
+ let blurHeight;
354
+ if (isStaticImport(src)) {
355
+ const staticImageData = isStaticRequire(src) ? src.default : src;
356
+ if (!staticImageData.src) {
357
+ throw Object.defineProperty(new Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(staticImageData)}`), "__NEXT_ERROR_CODE", {
358
+ value: "E460",
359
+ enumerable: false,
360
+ configurable: true
361
+ });
362
+ }
363
+ if (!staticImageData.height || !staticImageData.width) {
364
+ throw Object.defineProperty(new Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(staticImageData)}`), "__NEXT_ERROR_CODE", {
365
+ value: "E48",
366
+ enumerable: false,
367
+ configurable: true
368
+ });
369
+ }
370
+ blurWidth = staticImageData.blurWidth;
371
+ blurHeight = staticImageData.blurHeight;
372
+ blurDataURL = blurDataURL || staticImageData.blurDataURL;
373
+ staticSrc = staticImageData.src;
374
+ if (!fill) {
375
+ if (!widthInt && !heightInt) {
376
+ widthInt = staticImageData.width;
377
+ heightInt = staticImageData.height;
378
+ } else if (widthInt && !heightInt) {
379
+ const ratio = widthInt / staticImageData.width;
380
+ heightInt = Math.round(staticImageData.height * ratio);
381
+ } else if (!widthInt && heightInt) {
382
+ const ratio = heightInt / staticImageData.height;
383
+ widthInt = Math.round(staticImageData.width * ratio);
462
384
  }
463
385
  }
464
386
  }
465
- if (!VALID_LOADING_VALUES.includes(loading)) {
466
- throw Object.defineProperty(new Error('Image with src "' + src + '" has invalid "loading" property. Provided "' + loading + '" should be one of ' + VALID_LOADING_VALUES.map(String).join(",") + "."), "__NEXT_ERROR_CODE", {
467
- value: "E357",
468
- enumerable: false,
469
- configurable: true
470
- });
387
+ src = typeof src === "string" ? src : staticSrc;
388
+ let isLazy = !priority && !preload && (loading === "lazy" || typeof loading === "undefined");
389
+ if (!src || src.startsWith("data:") || src.startsWith("blob:")) {
390
+ unoptimized = true;
391
+ isLazy = false;
471
392
  }
472
- if (priority && loading === "lazy") {
473
- throw Object.defineProperty(new Error('Image with src "' + src + `" has both "priority" and "loading='lazy'" properties. Only one should be used.`), "__NEXT_ERROR_CODE", {
474
- value: "E218",
475
- enumerable: false,
476
- configurable: true
477
- });
393
+ if (config.unoptimized) {
394
+ unoptimized = true;
478
395
  }
479
- if (placeholder !== "empty" && placeholder !== "blur" && !placeholder.startsWith("data:image/")) {
480
- throw Object.defineProperty(new Error('Image with src "' + src + '" has invalid "placeholder" property "' + placeholder + '".'), "__NEXT_ERROR_CODE", {
481
- value: "E431",
482
- enumerable: false,
483
- configurable: true
484
- });
396
+ if (isDefaultLoader && !config.dangerouslyAllowSVG && src.split("?", 1)[0].endsWith(".svg")) {
397
+ unoptimized = true;
485
398
  }
486
- if (placeholder !== "empty") {
487
- if (widthInt && heightInt && widthInt * heightInt < 1600) {
488
- (0, _warnonce.warnOnce)('Image with src "' + src + '" is smaller than 40x40. Consider removing the "placeholder" property to improve performance.');
399
+ const qualityInt = getInt(quality);
400
+ if (process.env.NODE_ENV !== "production") {
401
+ if (config.output === "export" && isDefaultLoader && !unoptimized) {
402
+ throw Object.defineProperty(new Error(`Image Optimization using the default loader is not compatible with \`{ output: 'export' }\`.
403
+ Possible solutions:
404
+ - Remove \`{ output: 'export' }\` and run "next start" to run server mode including the Image Optimization API.
405
+ - Configure \`{ images: { unoptimized: true } }\` in \`next.config.js\` to disable the Image Optimization API.
406
+ Read more: https://nextjs.org/docs/messages/export-image-api`), "__NEXT_ERROR_CODE", {
407
+ value: "E500",
408
+ enumerable: false,
409
+ configurable: true
410
+ });
489
411
  }
490
- }
491
- if (placeholder === "blur" && !blurDataURL) {
492
- const VALID_BLUR_EXT = [
493
- "jpeg",
494
- "png",
495
- "webp",
496
- "avif"
497
- ];
498
- throw Object.defineProperty(new Error('Image with src "' + src + `" has "placeholder='blur'" property but is missing the "blurDataURL" property.
412
+ if (!src) {
413
+ unoptimized = true;
414
+ } else {
415
+ if (fill) {
416
+ if (width) {
417
+ throw Object.defineProperty(new Error(`Image with src "${src}" has both "width" and "fill" properties. Only one should be used.`), "__NEXT_ERROR_CODE", {
418
+ value: "E96",
419
+ enumerable: false,
420
+ configurable: true
421
+ });
422
+ }
423
+ if (height) {
424
+ throw Object.defineProperty(new Error(`Image with src "${src}" has both "height" and "fill" properties. Only one should be used.`), "__NEXT_ERROR_CODE", {
425
+ value: "E115",
426
+ enumerable: false,
427
+ configurable: true
428
+ });
429
+ }
430
+ if ((style == null ? void 0 : style.position) && style.position !== "absolute") {
431
+ throw Object.defineProperty(new Error(`Image with src "${src}" has both "fill" and "style.position" properties. Images with "fill" always use position absolute - it cannot be modified.`), "__NEXT_ERROR_CODE", {
432
+ value: "E216",
433
+ enumerable: false,
434
+ configurable: true
435
+ });
436
+ }
437
+ if ((style == null ? void 0 : style.width) && style.width !== "100%") {
438
+ throw Object.defineProperty(new Error(`Image with src "${src}" has both "fill" and "style.width" properties. Images with "fill" always use width 100% - it cannot be modified.`), "__NEXT_ERROR_CODE", {
439
+ value: "E73",
440
+ enumerable: false,
441
+ configurable: true
442
+ });
443
+ }
444
+ if ((style == null ? void 0 : style.height) && style.height !== "100%") {
445
+ throw Object.defineProperty(new Error(`Image with src "${src}" has both "fill" and "style.height" properties. Images with "fill" always use height 100% - it cannot be modified.`), "__NEXT_ERROR_CODE", {
446
+ value: "E404",
447
+ enumerable: false,
448
+ configurable: true
449
+ });
450
+ }
451
+ } else {
452
+ if (typeof widthInt === "undefined") {
453
+ throw Object.defineProperty(new Error(`Image with src "${src}" is missing required "width" property.`), "__NEXT_ERROR_CODE", {
454
+ value: "E451",
455
+ enumerable: false,
456
+ configurable: true
457
+ });
458
+ } else if (isNaN(widthInt)) {
459
+ throw Object.defineProperty(new Error(`Image with src "${src}" has invalid "width" property. Expected a numeric value in pixels but received "${width}".`), "__NEXT_ERROR_CODE", {
460
+ value: "E66",
461
+ enumerable: false,
462
+ configurable: true
463
+ });
464
+ }
465
+ if (typeof heightInt === "undefined") {
466
+ throw Object.defineProperty(new Error(`Image with src "${src}" is missing required "height" property.`), "__NEXT_ERROR_CODE", {
467
+ value: "E397",
468
+ enumerable: false,
469
+ configurable: true
470
+ });
471
+ } else if (isNaN(heightInt)) {
472
+ throw Object.defineProperty(new Error(`Image with src "${src}" has invalid "height" property. Expected a numeric value in pixels but received "${height}".`), "__NEXT_ERROR_CODE", {
473
+ value: "E444",
474
+ enumerable: false,
475
+ configurable: true
476
+ });
477
+ }
478
+ if (/^[\x00-\x20]/.test(src)) {
479
+ throw Object.defineProperty(new Error(`Image with src "${src}" cannot start with a space or control character. Use src.trimStart() to remove it or encodeURIComponent(src) to keep it.`), "__NEXT_ERROR_CODE", {
480
+ value: "E176",
481
+ enumerable: false,
482
+ configurable: true
483
+ });
484
+ }
485
+ if (/[\x00-\x20]$/.test(src)) {
486
+ throw Object.defineProperty(new Error(`Image with src "${src}" cannot end with a space or control character. Use src.trimEnd() to remove it or encodeURIComponent(src) to keep it.`), "__NEXT_ERROR_CODE", {
487
+ value: "E21",
488
+ enumerable: false,
489
+ configurable: true
490
+ });
491
+ }
492
+ }
493
+ }
494
+ if (!VALID_LOADING_VALUES.includes(loading)) {
495
+ throw Object.defineProperty(new Error(`Image with src "${src}" has invalid "loading" property. Provided "${loading}" should be one of ${VALID_LOADING_VALUES.map(String).join(",")}.`), "__NEXT_ERROR_CODE", {
496
+ value: "E357",
497
+ enumerable: false,
498
+ configurable: true
499
+ });
500
+ }
501
+ if (priority && loading === "lazy") {
502
+ throw Object.defineProperty(new Error(`Image with src "${src}" has both "priority" and "loading='lazy'" properties. Only one should be used.`), "__NEXT_ERROR_CODE", {
503
+ value: "E218",
504
+ enumerable: false,
505
+ configurable: true
506
+ });
507
+ }
508
+ if (preload && loading === "lazy") {
509
+ throw Object.defineProperty(new Error(`Image with src "${src}" has both "preload" and "loading='lazy'" properties. Only one should be used.`), "__NEXT_ERROR_CODE", {
510
+ value: "E803",
511
+ enumerable: false,
512
+ configurable: true
513
+ });
514
+ }
515
+ if (preload && priority) {
516
+ throw Object.defineProperty(new Error(`Image with src "${src}" has both "preload" and "priority" properties. Only "preload" should be used.`), "__NEXT_ERROR_CODE", {
517
+ value: "E802",
518
+ enumerable: false,
519
+ configurable: true
520
+ });
521
+ }
522
+ if (placeholder !== "empty" && placeholder !== "blur" && !placeholder.startsWith("data:image/")) {
523
+ throw Object.defineProperty(new Error(`Image with src "${src}" has invalid "placeholder" property "${placeholder}".`), "__NEXT_ERROR_CODE", {
524
+ value: "E431",
525
+ enumerable: false,
526
+ configurable: true
527
+ });
528
+ }
529
+ if (placeholder !== "empty") {
530
+ if (widthInt && heightInt && widthInt * heightInt < 1600) {
531
+ (0, _warnonce.warnOnce)(`Image with src "${src}" is smaller than 40x40. Consider removing the "placeholder" property to improve performance.`);
532
+ }
533
+ }
534
+ if (qualityInt && config.qualities && !config.qualities.includes(qualityInt)) {
535
+ (0, _warnonce.warnOnce)(`Image with src "${src}" is using quality "${qualityInt}" which is not configured in images.qualities [${config.qualities.join(", ")}]. Please update your config to [${[
536
+ ...config.qualities,
537
+ qualityInt
538
+ ].sort().join(", ")}].
539
+ Read more: https://nextjs.org/docs/messages/next-image-unconfigured-qualities`);
540
+ }
541
+ if (placeholder === "blur" && !blurDataURL) {
542
+ const VALID_BLUR_EXT = [
543
+ "jpeg",
544
+ "png",
545
+ "webp",
546
+ "avif"
547
+ ];
548
+ throw Object.defineProperty(new Error(`Image with src "${src}" has "placeholder='blur'" property but is missing the "blurDataURL" property.
499
549
  Possible solutions:
500
550
  - Add a "blurDataURL" property, the contents should be a small Data URL to represent the image
501
- - Change the "src" property to a static import with one of the supported file types: ` + VALID_BLUR_EXT.join(",") + ' (animated images not supported)\n - Remove the "placeholder" property, effectively no blur effect\n Read more: https://nextjs.org/docs/messages/placeholder-blur-data-url'), "__NEXT_ERROR_CODE", {
502
- value: "E371",
503
- enumerable: false,
504
- configurable: true
505
- });
506
- }
507
- if ("ref" in rest) {
508
- (0, _warnonce.warnOnce)('Image with src "' + src + '" is using unsupported "ref" property. Consider using the "onLoad" property instead.');
509
- }
510
- if (!unoptimized && !isDefaultLoader) {
511
- const urlStr = loader({
512
- config,
513
- src,
514
- width: widthInt || 400,
515
- quality: qualityInt || 75
516
- });
517
- let url;
518
- try {
519
- url = new URL(urlStr);
520
- } catch (err) {
551
+ - Change the "src" property to a static import with one of the supported file types: ${VALID_BLUR_EXT.join(",")} (animated images not supported)
552
+ - Remove the "placeholder" property, effectively no blur effect
553
+ Read more: https://nextjs.org/docs/messages/placeholder-blur-data-url`), "__NEXT_ERROR_CODE", {
554
+ value: "E371",
555
+ enumerable: false,
556
+ configurable: true
557
+ });
521
558
  }
522
- if (urlStr === src || url && url.pathname === src && !url.search) {
523
- (0, _warnonce.warnOnce)('Image with src "' + src + '" has a "loader" property that does not implement width. Please implement it or use the "unoptimized" property instead.\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader-width');
559
+ if ("ref" in rest) {
560
+ (0, _warnonce.warnOnce)(`Image with src "${src}" is using unsupported "ref" property. Consider using the "onLoad" property instead.`);
561
+ }
562
+ if (!unoptimized && !isDefaultLoader) {
563
+ const urlStr = loader({
564
+ config,
565
+ src,
566
+ width: widthInt || 400,
567
+ quality: qualityInt || 75
568
+ });
569
+ let url;
570
+ try {
571
+ url = new URL(urlStr);
572
+ } catch (err) {
573
+ }
574
+ if (urlStr === src || url && url.pathname === src && !url.search) {
575
+ (0, _warnonce.warnOnce)(`Image with src "${src}" has a "loader" property that does not implement width. Please implement it or use the "unoptimized" property instead.
576
+ Read more: https://nextjs.org/docs/messages/next-image-missing-loader-width`);
577
+ }
578
+ }
579
+ if (onLoadingComplete) {
580
+ (0, _warnonce.warnOnce)(`Image with src "${src}" is using deprecated "onLoadingComplete" property. Please use the "onLoad" property instead.`);
581
+ }
582
+ for (const [legacyKey, legacyValue] of Object.entries({
583
+ layout,
584
+ objectFit,
585
+ objectPosition,
586
+ lazyBoundary,
587
+ lazyRoot
588
+ })) {
589
+ if (legacyValue) {
590
+ (0, _warnonce.warnOnce)(`Image with src "${src}" has legacy prop "${legacyKey}". Did you forget to run the codemod?
591
+ Read more: https://nextjs.org/docs/messages/next-image-upgrade-to-13`);
592
+ }
593
+ }
594
+ if (typeof window !== "undefined" && !perfObserver && window.PerformanceObserver) {
595
+ perfObserver = new PerformanceObserver((entryList) => {
596
+ var _a2;
597
+ for (const entry of entryList.getEntries()) {
598
+ const imgSrc = ((_a2 = entry == null ? void 0 : entry.element) == null ? void 0 : _a2.src) || "";
599
+ const lcpImage = allImgs.get(imgSrc);
600
+ if (lcpImage && lcpImage.loading === "lazy" && lcpImage.placeholder === "empty" && !lcpImage.src.startsWith("data:") && !lcpImage.src.startsWith("blob:")) {
601
+ (0, _warnonce.warnOnce)(`Image with src "${lcpImage.src}" was detected as the Largest Contentful Paint (LCP). Please add the \`loading="eager"\` property if this image is above the fold.
602
+ Read more: https://nextjs.org/docs/app/api-reference/components/image#loading`);
603
+ }
604
+ }
605
+ });
606
+ try {
607
+ perfObserver.observe({
608
+ type: "largest-contentful-paint",
609
+ buffered: true
610
+ });
611
+ } catch (err) {
612
+ console.error(err);
613
+ }
524
614
  }
525
615
  }
526
- if (onLoadingComplete) {
527
- (0, _warnonce.warnOnce)('Image with src "' + src + '" is using deprecated "onLoadingComplete" property. Please use the "onLoad" property instead.');
528
- }
529
- for (const [legacyKey, legacyValue] of Object.entries({
530
- layout,
616
+ const imgStyle = Object.assign(fill ? {
617
+ position: "absolute",
618
+ height: "100%",
619
+ width: "100%",
620
+ left: 0,
621
+ top: 0,
622
+ right: 0,
623
+ bottom: 0,
531
624
  objectFit,
532
- objectPosition,
533
- lazyBoundary,
534
- lazyRoot
535
- })) {
536
- if (legacyValue) {
537
- (0, _warnonce.warnOnce)('Image with src "' + src + '" has legacy prop "' + legacyKey + '". Did you forget to run the codemod?\nRead more: https://nextjs.org/docs/messages/next-image-upgrade-to-13');
625
+ objectPosition
626
+ } : {}, showAltText ? {} : {
627
+ color: "transparent"
628
+ }, style);
629
+ const backgroundImage = !blurComplete && placeholder !== "empty" ? placeholder === "blur" ? `url("data:image/svg+xml;charset=utf-8,${(0, _imageblursvg.getImageBlurSvg)({
630
+ widthInt,
631
+ heightInt,
632
+ blurWidth,
633
+ blurHeight,
634
+ blurDataURL: blurDataURL || "",
635
+ objectFit: imgStyle.objectFit
636
+ })}")` : `url("${placeholder}")` : null;
637
+ const backgroundSize = !INVALID_BACKGROUND_SIZE_VALUES.includes(imgStyle.objectFit) ? imgStyle.objectFit : imgStyle.objectFit === "fill" ? "100% 100%" : "cover";
638
+ let placeholderStyle = backgroundImage ? {
639
+ backgroundSize,
640
+ backgroundPosition: imgStyle.objectPosition || "50% 50%",
641
+ backgroundRepeat: "no-repeat",
642
+ backgroundImage
643
+ } : {};
644
+ if (process.env.NODE_ENV === "development") {
645
+ if (placeholderStyle.backgroundImage && placeholder === "blur" && (blurDataURL == null ? void 0 : blurDataURL.startsWith("/"))) {
646
+ placeholderStyle.backgroundImage = `url("${blurDataURL}")`;
538
647
  }
539
648
  }
540
- if (typeof window !== "undefined" && !perfObserver && window.PerformanceObserver) {
541
- perfObserver = new PerformanceObserver((entryList) => {
542
- for (const entry of entryList.getEntries()) {
543
- var _entry_element;
544
- const imgSrc = (entry == null ? void 0 : (_entry_element = entry.element) == null ? void 0 : _entry_element.src) || "";
545
- const lcpImage = allImgs.get(imgSrc);
546
- if (lcpImage && !lcpImage.priority && lcpImage.placeholder === "empty" && !lcpImage.src.startsWith("data:") && !lcpImage.src.startsWith("blob:")) {
547
- (0, _warnonce.warnOnce)('Image with src "' + lcpImage.src + '" was detected as the Largest Contentful Paint (LCP). Please add the "priority" property if this image is above the fold.\nRead more: https://nextjs.org/docs/api-reference/next/image#priority');
548
- }
649
+ const imgAttributes = generateImgAttrs({
650
+ config,
651
+ src,
652
+ unoptimized,
653
+ width: widthInt,
654
+ quality: qualityInt,
655
+ sizes,
656
+ loader
657
+ });
658
+ const loadingFinal = isLazy ? "lazy" : loading;
659
+ if (process.env.NODE_ENV !== "production") {
660
+ if (typeof window !== "undefined") {
661
+ let fullUrl;
662
+ try {
663
+ fullUrl = new URL(imgAttributes.src);
664
+ } catch (e) {
665
+ fullUrl = new URL(imgAttributes.src, window.location.href);
549
666
  }
550
- });
551
- try {
552
- perfObserver.observe({
553
- type: "largest-contentful-paint",
554
- buffered: true
667
+ allImgs.set(fullUrl.href, {
668
+ src,
669
+ loading: loadingFinal,
670
+ placeholder
555
671
  });
556
- } catch (err) {
557
- console.error(err);
558
- }
559
- }
560
- }
561
- const imgStyle = Object.assign(fill ? {
562
- position: "absolute",
563
- height: "100%",
564
- width: "100%",
565
- left: 0,
566
- top: 0,
567
- right: 0,
568
- bottom: 0,
569
- objectFit,
570
- objectPosition
571
- } : {}, showAltText ? {} : {
572
- color: "transparent"
573
- }, style);
574
- const backgroundImage = !blurComplete && placeholder !== "empty" ? placeholder === "blur" ? 'url("data:image/svg+xml;charset=utf-8,' + (0, _imageblursvg.getImageBlurSvg)({
575
- widthInt,
576
- heightInt,
577
- blurWidth,
578
- blurHeight,
579
- blurDataURL: blurDataURL || "",
580
- objectFit: imgStyle.objectFit
581
- }) + '")' : 'url("' + placeholder + '")' : null;
582
- const backgroundSize = !INVALID_BACKGROUND_SIZE_VALUES.includes(imgStyle.objectFit) ? imgStyle.objectFit : imgStyle.objectFit === "fill" ? "100% 100%" : "cover";
583
- let placeholderStyle = backgroundImage ? {
584
- backgroundSize,
585
- backgroundPosition: imgStyle.objectPosition || "50% 50%",
586
- backgroundRepeat: "no-repeat",
587
- backgroundImage
588
- } : {};
589
- if (process.env.NODE_ENV === "development") {
590
- if (placeholderStyle.backgroundImage && placeholder === "blur" && (blurDataURL == null ? void 0 : blurDataURL.startsWith("/"))) {
591
- placeholderStyle.backgroundImage = 'url("' + blurDataURL + '")';
592
- }
593
- }
594
- const imgAttributes = generateImgAttrs({
595
- config,
596
- src,
597
- unoptimized,
598
- width: widthInt,
599
- quality: qualityInt,
600
- sizes,
601
- loader
602
- });
603
- if (process.env.NODE_ENV !== "production") {
604
- if (typeof window !== "undefined") {
605
- let fullUrl;
606
- try {
607
- fullUrl = new URL(imgAttributes.src);
608
- } catch (e) {
609
- fullUrl = new URL(imgAttributes.src, window.location.href);
610
672
  }
611
- allImgs.set(fullUrl.href, {
612
- src,
613
- priority,
614
- placeholder
615
- });
616
673
  }
674
+ const props = {
675
+ ...rest,
676
+ loading: loadingFinal,
677
+ fetchPriority,
678
+ width: widthInt,
679
+ height: heightInt,
680
+ decoding,
681
+ className,
682
+ style: {
683
+ ...imgStyle,
684
+ ...placeholderStyle
685
+ },
686
+ sizes: imgAttributes.sizes,
687
+ srcSet: imgAttributes.srcSet,
688
+ src: overrideSrc || imgAttributes.src
689
+ };
690
+ const meta = {
691
+ unoptimized,
692
+ preload: preload || priority,
693
+ placeholder,
694
+ fill
695
+ };
696
+ return {
697
+ props,
698
+ meta
699
+ };
617
700
  }
618
- const props = {
619
- ...rest,
620
- loading: isLazy ? "lazy" : loading,
621
- fetchPriority,
622
- width: widthInt,
623
- height: heightInt,
624
- decoding,
625
- className,
626
- style: {
627
- ...imgStyle,
628
- ...placeholderStyle
629
- },
630
- sizes: imgAttributes.sizes,
631
- srcSet: imgAttributes.srcSet,
632
- src: overrideSrc || imgAttributes.src
633
- };
634
- const meta = {
635
- unoptimized,
636
- priority,
637
- placeholder,
638
- fill
639
- };
640
- return {
641
- props,
642
- meta
643
- };
644
- }
645
- })(getImgProps);
701
+ })(getImgProps);
702
+ return getImgProps;
703
+ }
646
704
  var imageComponent = { exports: {} };
647
705
  var head = { exports: {} };
648
706
  var sideEffect = {};
@@ -650,11 +708,11 @@ var hasRequiredSideEffect;
650
708
  function requireSideEffect() {
651
709
  if (hasRequiredSideEffect) return sideEffect;
652
710
  hasRequiredSideEffect = 1;
653
- (function(exports2) {
654
- Object.defineProperty(exports2, "__esModule", {
711
+ (function(exports$1) {
712
+ Object.defineProperty(exports$1, "__esModule", {
655
713
  value: true
656
714
  });
657
- Object.defineProperty(exports2, "default", {
715
+ Object.defineProperty(exports$1, "default", {
658
716
  enumerable: true,
659
717
  get: function() {
660
718
  return SideEffect;
@@ -667,24 +725,24 @@ function requireSideEffect() {
667
725
  const useClientOnlyEffect = isServer ? () => {
668
726
  } : _react.useEffect;
669
727
  function SideEffect(props) {
728
+ var _a;
670
729
  const { headManager, reduceComponentsToState } = props;
671
730
  function emitChange() {
672
731
  if (headManager && headManager.mountedInstances) {
673
732
  const headElements = _react.Children.toArray(Array.from(headManager.mountedInstances).filter(Boolean));
674
- headManager.updateHead(reduceComponentsToState(headElements, props));
733
+ headManager.updateHead(reduceComponentsToState(headElements));
675
734
  }
676
735
  }
677
736
  if (isServer) {
678
- var _headManager_mountedInstances;
679
- headManager == null ? void 0 : (_headManager_mountedInstances = headManager.mountedInstances) == null ? void 0 : _headManager_mountedInstances.add(props.children);
737
+ (_a = headManager == null ? void 0 : headManager.mountedInstances) == null ? void 0 : _a.add(props.children);
680
738
  emitChange();
681
739
  }
682
740
  useClientOnlyLayoutEffect(() => {
683
- var _headManager_mountedInstances2;
684
- headManager == null ? void 0 : (_headManager_mountedInstances2 = headManager.mountedInstances) == null ? void 0 : _headManager_mountedInstances2.add(props.children);
741
+ var _a2;
742
+ (_a2 = headManager == null ? void 0 : headManager.mountedInstances) == null ? void 0 : _a2.add(props.children);
685
743
  return () => {
686
- var _headManager_mountedInstances3;
687
- headManager == null ? void 0 : (_headManager_mountedInstances3 = headManager.mountedInstances) == null ? void 0 : _headManager_mountedInstances3.delete(props.children);
744
+ var _a3;
745
+ (_a3 = headManager == null ? void 0 : headManager.mountedInstances) == null ? void 0 : _a3.delete(props.children);
688
746
  };
689
747
  });
690
748
  useClientOnlyLayoutEffect(() => {
@@ -714,46 +772,22 @@ function requireSideEffect() {
714
772
  })(sideEffect);
715
773
  return sideEffect;
716
774
  }
717
- var ampContext_sharedRuntime = {};
718
- var hasRequiredAmpContext_sharedRuntime;
719
- function requireAmpContext_sharedRuntime() {
720
- if (hasRequiredAmpContext_sharedRuntime) return ampContext_sharedRuntime;
721
- hasRequiredAmpContext_sharedRuntime = 1;
722
- (function(exports2) {
723
- Object.defineProperty(exports2, "__esModule", {
724
- value: true
725
- });
726
- Object.defineProperty(exports2, "AmpStateContext", {
727
- enumerable: true,
728
- get: function() {
729
- return AmpStateContext;
730
- }
731
- });
732
- const _interop_require_default = link._interop_require_default;
733
- const _react = /* @__PURE__ */ _interop_require_default._(React);
734
- const AmpStateContext = _react.default.createContext({});
735
- if (process.env.NODE_ENV !== "production") {
736
- AmpStateContext.displayName = "AmpStateContext";
737
- }
738
- })(ampContext_sharedRuntime);
739
- return ampContext_sharedRuntime;
740
- }
741
775
  var headManagerContext_sharedRuntime = {};
742
776
  var hasRequiredHeadManagerContext_sharedRuntime;
743
777
  function requireHeadManagerContext_sharedRuntime() {
744
778
  if (hasRequiredHeadManagerContext_sharedRuntime) return headManagerContext_sharedRuntime;
745
779
  hasRequiredHeadManagerContext_sharedRuntime = 1;
746
- (function(exports2) {
747
- Object.defineProperty(exports2, "__esModule", {
780
+ (function(exports$1) {
781
+ Object.defineProperty(exports$1, "__esModule", {
748
782
  value: true
749
783
  });
750
- Object.defineProperty(exports2, "HeadManagerContext", {
784
+ Object.defineProperty(exports$1, "HeadManagerContext", {
751
785
  enumerable: true,
752
786
  get: function() {
753
787
  return HeadManagerContext;
754
788
  }
755
789
  });
756
- const _interop_require_default = link._interop_require_default;
790
+ const _interop_require_default = /* @__PURE__ */ link.require_interop_require_default();
757
791
  const _react = /* @__PURE__ */ _interop_require_default._(React);
758
792
  const HeadManagerContext = _react.default.createContext({});
759
793
  if (process.env.NODE_ENV !== "production") {
@@ -762,35 +796,13 @@ function requireHeadManagerContext_sharedRuntime() {
762
796
  })(headManagerContext_sharedRuntime);
763
797
  return headManagerContext_sharedRuntime;
764
798
  }
765
- var ampMode = {};
766
- var hasRequiredAmpMode;
767
- function requireAmpMode() {
768
- if (hasRequiredAmpMode) return ampMode;
769
- hasRequiredAmpMode = 1;
770
- (function(exports2) {
771
- Object.defineProperty(exports2, "__esModule", {
772
- value: true
773
- });
774
- Object.defineProperty(exports2, "isInAmpMode", {
775
- enumerable: true,
776
- get: function() {
777
- return isInAmpMode;
778
- }
779
- });
780
- function isInAmpMode(param) {
781
- let { ampFirst = false, hybrid = false, hasQuery = false } = param === void 0 ? {} : param;
782
- return ampFirst || hybrid && hasQuery;
783
- }
784
- })(ampMode);
785
- return ampMode;
786
- }
787
799
  var hasRequiredHead;
788
800
  function requireHead() {
789
801
  if (hasRequiredHead) return head.exports;
790
802
  hasRequiredHead = 1;
791
- (function(module2, exports2) {
803
+ (function(module2, exports$1) {
792
804
  "use client";
793
- Object.defineProperty(exports2, "__esModule", {
805
+ Object.defineProperty(exports$1, "__esModule", {
794
806
  value: true
795
807
  });
796
808
  function _export(target, all) {
@@ -799,7 +811,7 @@ function requireHead() {
799
811
  get: all[name]
800
812
  });
801
813
  }
802
- _export(exports2, {
814
+ _export(exports$1, {
803
815
  default: function() {
804
816
  return _default;
805
817
  },
@@ -807,28 +819,23 @@ function requireHead() {
807
819
  return defaultHead;
808
820
  }
809
821
  });
810
- const _interop_require_default = link._interop_require_default;
811
- const _interop_require_wildcard = link._interop_require_wildcard;
822
+ const _interop_require_default = /* @__PURE__ */ link.require_interop_require_default();
823
+ const _interop_require_wildcard = /* @__PURE__ */ link.require_interop_require_wildcard();
812
824
  const _jsxruntime = require$$2;
813
825
  const _react = /* @__PURE__ */ _interop_require_wildcard._(React);
814
826
  const _sideeffect = /* @__PURE__ */ _interop_require_default._(requireSideEffect());
815
- const _ampcontextsharedruntime = requireAmpContext_sharedRuntime();
816
827
  const _headmanagercontextsharedruntime = requireHeadManagerContext_sharedRuntime();
817
- const _ampmode = requireAmpMode();
818
- const _warnonce = warnOnce;
819
- function defaultHead(inAmpMode) {
820
- if (inAmpMode === void 0) inAmpMode = false;
828
+ const _warnonce = requireWarnOnce();
829
+ function defaultHead() {
821
830
  const head2 = [
822
831
  /* @__PURE__ */ (0, _jsxruntime.jsx)("meta", {
823
832
  charSet: "utf-8"
824
- }, "charset")
825
- ];
826
- if (!inAmpMode) {
827
- head2.push(/* @__PURE__ */ (0, _jsxruntime.jsx)("meta", {
833
+ }, "charset"),
834
+ /* @__PURE__ */ (0, _jsxruntime.jsx)("meta", {
828
835
  name: "viewport",
829
836
  content: "width=device-width"
830
- }, "viewport"));
831
- }
837
+ }, "viewport")
838
+ ];
832
839
  return head2;
833
840
  }
834
841
  function onlyReactElement(list, child) {
@@ -910,16 +917,17 @@ function requireHead() {
910
917
  return isUnique;
911
918
  };
912
919
  }
913
- function reduceComponents(headChildrenElements, props) {
914
- const { inAmpMode } = props;
915
- return headChildrenElements.reduce(onlyReactElement, []).reverse().concat(defaultHead(inAmpMode).reverse()).filter(unique()).reverse().map((c, i) => {
920
+ function reduceComponents(headChildrenElements) {
921
+ return headChildrenElements.reduce(onlyReactElement, []).reverse().concat(defaultHead().reverse()).filter(unique()).reverse().map((c, i) => {
916
922
  const key = c.key || i;
917
923
  if (process.env.NODE_ENV === "development") {
918
924
  if (c.type === "script" && c.props["type"] !== "application/ld+json") {
919
- const srcMessage = c.props["src"] ? '<script> tag with src="' + c.props["src"] + '"' : "inline <script>";
920
- (0, _warnonce.warnOnce)("Do not add <script> tags using next/head (see " + srcMessage + "). Use next/script instead. \nSee more info here: https://nextjs.org/docs/messages/no-script-tags-in-head-component");
925
+ const srcMessage = c.props["src"] ? `<script> tag with src="${c.props["src"]}"` : `inline <script>`;
926
+ (0, _warnonce.warnOnce)(`Do not add <script> tags using next/head (see ${srcMessage}). Use next/script instead.
927
+ See more info here: https://nextjs.org/docs/messages/no-script-tags-in-head-component`);
921
928
  } else if (c.type === "link" && c.props["rel"] === "stylesheet") {
922
- (0, _warnonce.warnOnce)('Do not add stylesheets using next/head (see <link rel="stylesheet"> tag with href="' + c.props["href"] + '"). Use Document instead. \nSee more info here: https://nextjs.org/docs/messages/no-stylesheets-in-head-component');
929
+ (0, _warnonce.warnOnce)(`Do not add stylesheets using next/head (see <link rel="stylesheet"> tag with href="${c.props["href"]}"). Use Document instead.
930
+ See more info here: https://nextjs.org/docs/messages/no-stylesheets-in-head-component`);
923
931
  }
924
932
  }
925
933
  return /* @__PURE__ */ _react.default.cloneElement(c, {
@@ -927,22 +935,19 @@ function requireHead() {
927
935
  });
928
936
  });
929
937
  }
930
- function Head(param) {
931
- let { children } = param;
932
- const ampState = (0, _react.useContext)(_ampcontextsharedruntime.AmpStateContext);
938
+ function Head({ children }) {
933
939
  const headManager = (0, _react.useContext)(_headmanagercontextsharedruntime.HeadManagerContext);
934
940
  return /* @__PURE__ */ (0, _jsxruntime.jsx)(_sideeffect.default, {
935
941
  reduceComponentsToState: reduceComponents,
936
942
  headManager,
937
- inAmpMode: (0, _ampmode.isInAmpMode)(ampState),
938
943
  children
939
944
  });
940
945
  }
941
946
  const _default = Head;
942
- if ((typeof exports2.default === "function" || typeof exports2.default === "object" && exports2.default !== null) && typeof exports2.default.__esModule === "undefined") {
943
- Object.defineProperty(exports2.default, "__esModule", { value: true });
944
- Object.assign(exports2.default, exports2);
945
- module2.exports = exports2.default;
947
+ if ((typeof exports$1.default === "function" || typeof exports$1.default === "object" && exports$1.default !== null) && typeof exports$1.default.__esModule === "undefined") {
948
+ Object.defineProperty(exports$1.default, "__esModule", { value: true });
949
+ Object.assign(exports$1.default, exports$1);
950
+ module2.exports = exports$1.default;
946
951
  }
947
952
  })(head, head.exports);
948
953
  return head.exports;
@@ -952,19 +957,19 @@ var hasRequiredImageConfigContext_sharedRuntime;
952
957
  function requireImageConfigContext_sharedRuntime() {
953
958
  if (hasRequiredImageConfigContext_sharedRuntime) return imageConfigContext_sharedRuntime;
954
959
  hasRequiredImageConfigContext_sharedRuntime = 1;
955
- (function(exports2) {
956
- Object.defineProperty(exports2, "__esModule", {
960
+ (function(exports$1) {
961
+ Object.defineProperty(exports$1, "__esModule", {
957
962
  value: true
958
963
  });
959
- Object.defineProperty(exports2, "ImageConfigContext", {
964
+ Object.defineProperty(exports$1, "ImageConfigContext", {
960
965
  enumerable: true,
961
966
  get: function() {
962
967
  return ImageConfigContext;
963
968
  }
964
969
  });
965
- const _interop_require_default = link._interop_require_default;
970
+ const _interop_require_default = /* @__PURE__ */ link.require_interop_require_default();
966
971
  const _react = /* @__PURE__ */ _interop_require_default._(React);
967
- const _imageconfig = imageConfig;
972
+ const _imageconfig = requireImageConfig();
968
973
  const ImageConfigContext = _react.default.createContext(_imageconfig.imageConfigDefault);
969
974
  if (process.env.NODE_ENV !== "production") {
970
975
  ImageConfigContext.displayName = "ImageConfigContext";
@@ -973,6 +978,32 @@ function requireImageConfigContext_sharedRuntime() {
973
978
  return imageConfigContext_sharedRuntime;
974
979
  }
975
980
  var imageLoader = {};
981
+ var findClosestQuality = {};
982
+ var hasRequiredFindClosestQuality;
983
+ function requireFindClosestQuality() {
984
+ if (hasRequiredFindClosestQuality) return findClosestQuality;
985
+ hasRequiredFindClosestQuality = 1;
986
+ (function(exports$1) {
987
+ Object.defineProperty(exports$1, "__esModule", {
988
+ value: true
989
+ });
990
+ Object.defineProperty(exports$1, "findClosestQuality", {
991
+ enumerable: true,
992
+ get: function() {
993
+ return findClosestQuality2;
994
+ }
995
+ });
996
+ function findClosestQuality2(quality, config) {
997
+ var _a;
998
+ const q = quality || 75;
999
+ if (!((_a = config == null ? void 0 : config.qualities) == null ? void 0 : _a.length)) {
1000
+ return q;
1001
+ }
1002
+ return config.qualities.reduce((prev, cur) => Math.abs(cur - q) < Math.abs(prev - q) ? cur : prev, 0);
1003
+ }
1004
+ })(findClosestQuality);
1005
+ return findClosestQuality;
1006
+ }
976
1007
  var matchLocalPattern = {};
977
1008
  var picomatch = { exports: {} };
978
1009
  var hasRequiredPicomatch;
@@ -1040,7 +1071,7 @@ function requirePicomatch() {
1040
1071
  try {
1041
1072
  new RegExp(u3);
1042
1073
  } catch (e4) {
1043
- return t3.map((t4) => o.escapeRegex(t4)).join("..");
1074
+ return t3.map(((t4) => o.escapeRegex(t4))).join("..");
1044
1075
  }
1045
1076
  return u3;
1046
1077
  };
@@ -1174,7 +1205,7 @@ function requirePicomatch() {
1174
1205
  };
1175
1206
  if (u3.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(t3)) {
1176
1207
  let n2 = false;
1177
- let s2 = t3.replace(i, (t4, e4, u4, o2, s3, r2) => {
1208
+ let s2 = t3.replace(i, ((t4, e4, u4, o2, s3, r2) => {
1178
1209
  if (o2 === "\\") {
1179
1210
  n2 = true;
1180
1211
  return t4;
@@ -1198,12 +1229,12 @@ function requirePicomatch() {
1198
1229
  return k;
1199
1230
  }
1200
1231
  return e4 ? t4 : `\\${t4}`;
1201
- });
1232
+ }));
1202
1233
  if (n2 === true) {
1203
1234
  if (u3.unescape === true) {
1204
1235
  s2 = s2.replace(/\\/g, "");
1205
1236
  } else {
1206
- s2 = s2.replace(/\\+/g, (t4) => t4.length % 2 === 0 ? "\\\\" : t4 ? "\\" : "");
1237
+ s2 = s2.replace(/\\+/g, ((t4) => t4.length % 2 === 0 ? "\\\\" : t4 ? "\\" : ""));
1207
1238
  }
1208
1239
  }
1209
1240
  if (s2 === t3 && u3.contains === true) {
@@ -1740,7 +1771,7 @@ function requirePicomatch() {
1740
1771
  const isObject = (t3) => t3 && typeof t3 === "object" && !Array.isArray(t3);
1741
1772
  const picomatch2 = (t3, e3, u3 = false) => {
1742
1773
  if (Array.isArray(t3)) {
1743
- const n3 = t3.map((t4) => picomatch2(t4, e3, u3));
1774
+ const n3 = t3.map(((t4) => picomatch2(t4, e3, u3)));
1744
1775
  const arrayMatcher = (t4) => {
1745
1776
  for (const e4 of n3) {
1746
1777
  const u4 = e4(t4);
@@ -1821,7 +1852,7 @@ function requirePicomatch() {
1821
1852
  };
1822
1853
  picomatch2.isMatch = (t3, e3, u3) => picomatch2(e3, u3)(t3);
1823
1854
  picomatch2.parse = (t3, e3) => {
1824
- if (Array.isArray(t3)) return t3.map((t4) => picomatch2.parse(t4, e3));
1855
+ if (Array.isArray(t3)) return t3.map(((t4) => picomatch2.parse(t4, e3)));
1825
1856
  return o(t3, { ...e3, fastpaths: false });
1826
1857
  };
1827
1858
  picomatch2.scan = (t3, e3) => n(t3, e3);
@@ -2151,7 +2182,7 @@ function requirePicomatch() {
2151
2182
  e2.isRegexChar = (t3) => t3.length === 1 && e2.hasRegexChars(t3);
2152
2183
  e2.escapeRegex = (t3) => t3.replace(r, "\\$1");
2153
2184
  e2.toPosixSlashes = (t3) => t3.replace(n, "/");
2154
- e2.removeBackslashes = (t3) => t3.replace(o, (t4) => t4 === "\\" ? "" : t4);
2185
+ e2.removeBackslashes = (t3) => t3.replace(o, ((t4) => t4 === "\\" ? "" : t4));
2155
2186
  e2.escapeLast = (t3, u3, n2) => {
2156
2187
  const o2 = t3.lastIndexOf(u3, n2);
2157
2188
  if (o2 === -1) return t3;
@@ -2210,8 +2241,8 @@ var hasRequiredMatchLocalPattern;
2210
2241
  function requireMatchLocalPattern() {
2211
2242
  if (hasRequiredMatchLocalPattern) return matchLocalPattern;
2212
2243
  hasRequiredMatchLocalPattern = 1;
2213
- (function(exports2) {
2214
- Object.defineProperty(exports2, "__esModule", {
2244
+ (function(exports$1) {
2245
+ Object.defineProperty(exports$1, "__esModule", {
2215
2246
  value: true
2216
2247
  });
2217
2248
  function _export(target, all) {
@@ -2220,7 +2251,7 @@ function requireMatchLocalPattern() {
2220
2251
  get: all[name]
2221
2252
  });
2222
2253
  }
2223
- _export(exports2, {
2254
+ _export(exports$1, {
2224
2255
  hasLocalMatch: function() {
2225
2256
  return hasLocalMatch;
2226
2257
  },
@@ -2235,8 +2266,7 @@ function requireMatchLocalPattern() {
2235
2266
  return false;
2236
2267
  }
2237
2268
  }
2238
- var _pattern_pathname;
2239
- if (!(0, _picomatch.makeRe)((_pattern_pathname = pattern.pathname) != null ? _pattern_pathname : "**", {
2269
+ if (!(0, _picomatch.makeRe)(pattern.pathname ?? "**", {
2240
2270
  dot: true
2241
2271
  }).test(url.pathname)) {
2242
2272
  return false;
@@ -2258,8 +2288,8 @@ var hasRequiredMatchRemotePattern;
2258
2288
  function requireMatchRemotePattern() {
2259
2289
  if (hasRequiredMatchRemotePattern) return matchRemotePattern;
2260
2290
  hasRequiredMatchRemotePattern = 1;
2261
- (function(exports2) {
2262
- Object.defineProperty(exports2, "__esModule", {
2291
+ (function(exports$1) {
2292
+ Object.defineProperty(exports$1, "__esModule", {
2263
2293
  value: true
2264
2294
  });
2265
2295
  function _export(target, all) {
@@ -2268,7 +2298,7 @@ function requireMatchRemotePattern() {
2268
2298
  get: all[name]
2269
2299
  });
2270
2300
  }
2271
- _export(exports2, {
2301
+ _export(exports$1, {
2272
2302
  hasRemoteMatch: function() {
2273
2303
  return hasRemoteMatch;
2274
2304
  },
@@ -2289,7 +2319,8 @@ function requireMatchRemotePattern() {
2289
2319
  }
2290
2320
  }
2291
2321
  if (pattern.hostname === void 0) {
2292
- throw Object.defineProperty(new Error("Pattern should define hostname but found\n" + JSON.stringify(pattern)), "__NEXT_ERROR_CODE", {
2322
+ throw Object.defineProperty(new Error(`Pattern should define hostname but found
2323
+ ${JSON.stringify(pattern)}`), "__NEXT_ERROR_CODE", {
2293
2324
  value: "E410",
2294
2325
  enumerable: false,
2295
2326
  configurable: true
@@ -2304,8 +2335,7 @@ function requireMatchRemotePattern() {
2304
2335
  return false;
2305
2336
  }
2306
2337
  }
2307
- var _pattern_pathname;
2308
- if (!(0, _picomatch.makeRe)((_pattern_pathname = pattern.pathname) != null ? _pattern_pathname : "**", {
2338
+ if (!(0, _picomatch.makeRe)(pattern.pathname ?? "**", {
2309
2339
  dot: true
2310
2340
  }).test(url.pathname)) {
2311
2341
  return false;
@@ -2322,37 +2352,44 @@ var hasRequiredImageLoader;
2322
2352
  function requireImageLoader() {
2323
2353
  if (hasRequiredImageLoader) return imageLoader;
2324
2354
  hasRequiredImageLoader = 1;
2325
- (function(exports2) {
2326
- Object.defineProperty(exports2, "__esModule", {
2355
+ (function(exports$1) {
2356
+ Object.defineProperty(exports$1, "__esModule", {
2327
2357
  value: true
2328
2358
  });
2329
- Object.defineProperty(exports2, "default", {
2359
+ Object.defineProperty(exports$1, "default", {
2330
2360
  enumerable: true,
2331
2361
  get: function() {
2332
2362
  return _default;
2333
2363
  }
2334
2364
  });
2335
- const DEFAULT_Q = 75;
2336
- function defaultLoader(param) {
2337
- let { config, src, width, quality } = param;
2338
- var _config_qualities;
2365
+ const _findclosestquality = requireFindClosestQuality();
2366
+ function defaultLoader({ config, src, width, quality }) {
2367
+ var _a;
2368
+ if (src.startsWith("/") && src.includes("?") && ((_a = config.localPatterns) == null ? void 0 : _a.length) === 1 && config.localPatterns[0].pathname === "**" && config.localPatterns[0].search === "") {
2369
+ throw Object.defineProperty(new Error(`Image with src "${src}" is using a query string which is not configured in images.localPatterns.
2370
+ Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`), "__NEXT_ERROR_CODE", {
2371
+ value: "E871",
2372
+ enumerable: false,
2373
+ configurable: true
2374
+ });
2375
+ }
2339
2376
  if (process.env.NODE_ENV !== "production") {
2340
2377
  const missingValues = [];
2341
2378
  if (!src) missingValues.push("src");
2342
2379
  if (!width) missingValues.push("width");
2343
2380
  if (missingValues.length > 0) {
2344
- throw Object.defineProperty(new Error("Next Image Optimization requires " + missingValues.join(", ") + " to be provided. Make sure you pass them as props to the `next/image` component. Received: " + JSON.stringify({
2381
+ throw Object.defineProperty(new Error(`Next Image Optimization requires ${missingValues.join(", ")} to be provided. Make sure you pass them as props to the \`next/image\` component. Received: ${JSON.stringify({
2345
2382
  src,
2346
2383
  width,
2347
2384
  quality
2348
- })), "__NEXT_ERROR_CODE", {
2385
+ })}`), "__NEXT_ERROR_CODE", {
2349
2386
  value: "E188",
2350
2387
  enumerable: false,
2351
2388
  configurable: true
2352
2389
  });
2353
2390
  }
2354
2391
  if (src.startsWith("//")) {
2355
- throw Object.defineProperty(new Error('Failed to parse src "' + src + '" on `next/image`, protocol-relative URL (//) must be changed to an absolute URL (http:// or https://)'), "__NEXT_ERROR_CODE", {
2392
+ throw Object.defineProperty(new Error(`Failed to parse src "${src}" on \`next/image\`, protocol-relative URL (//) must be changed to an absolute URL (http:// or https://)`), "__NEXT_ERROR_CODE", {
2356
2393
  value: "E360",
2357
2394
  enumerable: false,
2358
2395
  configurable: true
@@ -2363,7 +2400,8 @@ function requireImageLoader() {
2363
2400
  process.env.NEXT_RUNTIME !== "edge") {
2364
2401
  const { hasLocalMatch } = requireMatchLocalPattern();
2365
2402
  if (!hasLocalMatch(config.localPatterns, src)) {
2366
- throw Object.defineProperty(new Error("Invalid src prop (" + src + ") on `next/image` does not match `images.localPatterns` configured in your `next.config.js`\nSee more info: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns"), "__NEXT_ERROR_CODE", {
2403
+ throw Object.defineProperty(new Error(`Invalid src prop (${src}) on \`next/image\` does not match \`images.localPatterns\` configured in your \`next.config.js\`
2404
+ See more info: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`), "__NEXT_ERROR_CODE", {
2367
2405
  value: "E426",
2368
2406
  enumerable: false,
2369
2407
  configurable: true
@@ -2377,7 +2415,7 @@ function requireImageLoader() {
2377
2415
  parsedSrc = new URL(src);
2378
2416
  } catch (err) {
2379
2417
  console.error(err);
2380
- throw Object.defineProperty(new Error('Failed to parse src "' + src + '" on `next/image`, if using relative image it must start with a leading slash "/" or be an absolute URL (http:// or https://)'), "__NEXT_ERROR_CODE", {
2418
+ throw Object.defineProperty(new Error(`Failed to parse src "${src}" on \`next/image\`, if using relative image it must start with a leading slash "/" or be an absolute URL (http:// or https://)`), "__NEXT_ERROR_CODE", {
2381
2419
  value: "E63",
2382
2420
  enumerable: false,
2383
2421
  configurable: true
@@ -2387,7 +2425,8 @@ function requireImageLoader() {
2387
2425
  process.env.NEXT_RUNTIME !== "edge") {
2388
2426
  const { hasRemoteMatch } = requireMatchRemotePattern();
2389
2427
  if (!hasRemoteMatch(config.domains, config.remotePatterns, parsedSrc)) {
2390
- throw Object.defineProperty(new Error("Invalid src prop (" + src + ') on `next/image`, hostname "' + parsedSrc.hostname + '" is not configured under images in your `next.config.js`\nSee more info: https://nextjs.org/docs/messages/next-image-unconfigured-host'), "__NEXT_ERROR_CODE", {
2428
+ throw Object.defineProperty(new Error(`Invalid src prop (${src}) on \`next/image\`, hostname "${parsedSrc.hostname}" is not configured under images in your \`next.config.js\`
2429
+ See more info: https://nextjs.org/docs/messages/next-image-unconfigured-host`), "__NEXT_ERROR_CODE", {
2391
2430
  value: "E231",
2392
2431
  enumerable: false,
2393
2432
  configurable: true
@@ -2395,348 +2434,363 @@ function requireImageLoader() {
2395
2434
  }
2396
2435
  }
2397
2436
  }
2398
- if (quality && config.qualities && !config.qualities.includes(quality)) {
2399
- throw Object.defineProperty(new Error("Invalid quality prop (" + quality + ") on `next/image` does not match `images.qualities` configured in your `next.config.js`\nSee more info: https://nextjs.org/docs/messages/next-image-unconfigured-qualities"), "__NEXT_ERROR_CODE", {
2400
- value: "E623",
2401
- enumerable: false,
2402
- configurable: true
2403
- });
2404
- }
2405
2437
  }
2406
- const q = quality || ((_config_qualities = config.qualities) == null ? void 0 : _config_qualities.reduce((prev, cur) => Math.abs(cur - DEFAULT_Q) < Math.abs(prev - DEFAULT_Q) ? cur : prev)) || DEFAULT_Q;
2407
- return config.path + "?url=" + encodeURIComponent(src) + "&w=" + width + "&q=" + q + (src.startsWith("/_next/static/media/") && process.env.NEXT_DEPLOYMENT_ID ? "&dpl=" + process.env.NEXT_DEPLOYMENT_ID : "");
2438
+ const q = (0, _findclosestquality.findClosestQuality)(quality, config);
2439
+ return `${config.path}?url=${encodeURIComponent(src)}&w=${width}&q=${q}${src.startsWith("/_next/static/media/") && process.env.NEXT_DEPLOYMENT_ID ? `&dpl=${process.env.NEXT_DEPLOYMENT_ID}` : ""}`;
2408
2440
  }
2409
2441
  defaultLoader.__next_img_default = true;
2410
2442
  const _default = defaultLoader;
2411
2443
  })(imageLoader);
2412
2444
  return imageLoader;
2413
2445
  }
2414
- (function(module2, exports2) {
2415
- "use client";
2416
- Object.defineProperty(exports2, "__esModule", {
2417
- value: true
2418
- });
2419
- Object.defineProperty(exports2, "Image", {
2420
- enumerable: true,
2421
- get: function() {
2422
- return Image2;
2423
- }
2424
- });
2425
- const _interop_require_default = link._interop_require_default;
2426
- const _interop_require_wildcard = link._interop_require_wildcard;
2427
- const _jsxruntime = require$$2;
2428
- const _react = /* @__PURE__ */ _interop_require_wildcard._(React);
2429
- const _reactdom = /* @__PURE__ */ _interop_require_default._(ReactDOM);
2430
- const _head = /* @__PURE__ */ _interop_require_default._(requireHead());
2431
- const _getimgprops = getImgProps;
2432
- const _imageconfig = imageConfig;
2433
- const _imageconfigcontextsharedruntime = requireImageConfigContext_sharedRuntime();
2434
- const _warnonce = warnOnce;
2435
- const _routercontextsharedruntime = link.requireRouterContext_sharedRuntime();
2436
- const _imageloader = /* @__PURE__ */ _interop_require_default._(requireImageLoader());
2437
- const _usemergedref = link.requireUseMergedRef();
2438
- const configEnv = process.env.__NEXT_IMAGE_OPTS;
2439
- if (typeof window === "undefined") {
2440
- globalThis.__NEXT_IMAGE_IMPORTED = true;
2441
- }
2442
- function handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput) {
2443
- const src = img == null ? void 0 : img.src;
2444
- if (!img || img["data-loaded-src"] === src) {
2445
- return;
2446
+ var hasRequiredImageComponent;
2447
+ function requireImageComponent() {
2448
+ if (hasRequiredImageComponent) return imageComponent.exports;
2449
+ hasRequiredImageComponent = 1;
2450
+ (function(module2, exports$1) {
2451
+ "use client";
2452
+ Object.defineProperty(exports$1, "__esModule", {
2453
+ value: true
2454
+ });
2455
+ Object.defineProperty(exports$1, "Image", {
2456
+ enumerable: true,
2457
+ get: function() {
2458
+ return Image2;
2459
+ }
2460
+ });
2461
+ const _interop_require_default = /* @__PURE__ */ link.require_interop_require_default();
2462
+ const _interop_require_wildcard = /* @__PURE__ */ link.require_interop_require_wildcard();
2463
+ const _jsxruntime = require$$2;
2464
+ const _react = /* @__PURE__ */ _interop_require_wildcard._(React);
2465
+ const _reactdom = /* @__PURE__ */ _interop_require_default._(ReactDOM);
2466
+ const _head = /* @__PURE__ */ _interop_require_default._(requireHead());
2467
+ const _getimgprops = requireGetImgProps();
2468
+ const _imageconfig = requireImageConfig();
2469
+ const _imageconfigcontextsharedruntime = requireImageConfigContext_sharedRuntime();
2470
+ const _warnonce = requireWarnOnce();
2471
+ const _routercontextsharedruntime = link.requireRouterContext_sharedRuntime();
2472
+ const _imageloader = /* @__PURE__ */ _interop_require_default._(requireImageLoader());
2473
+ const _usemergedref = link.requireUseMergedRef();
2474
+ const configEnv = process.env.__NEXT_IMAGE_OPTS;
2475
+ if (typeof window === "undefined") {
2476
+ globalThis.__NEXT_IMAGE_IMPORTED = true;
2446
2477
  }
2447
- img["data-loaded-src"] = src;
2448
- const p = "decode" in img ? img.decode() : Promise.resolve();
2449
- p.catch(() => {
2450
- }).then(() => {
2451
- if (!img.parentElement || !img.isConnected) {
2478
+ function handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput) {
2479
+ const src = img == null ? void 0 : img.src;
2480
+ if (!img || img["data-loaded-src"] === src) {
2452
2481
  return;
2453
2482
  }
2454
- if (placeholder !== "empty") {
2455
- setBlurComplete(true);
2456
- }
2457
- if (onLoadRef == null ? void 0 : onLoadRef.current) {
2458
- const event = new Event("load");
2459
- Object.defineProperty(event, "target", {
2460
- writable: false,
2461
- value: img
2462
- });
2463
- let prevented = false;
2464
- let stopped = false;
2465
- onLoadRef.current({
2466
- ...event,
2467
- nativeEvent: event,
2468
- currentTarget: img,
2469
- target: img,
2470
- isDefaultPrevented: () => prevented,
2471
- isPropagationStopped: () => stopped,
2472
- persist: () => {
2473
- },
2474
- preventDefault: () => {
2475
- prevented = true;
2476
- event.preventDefault();
2477
- },
2478
- stopPropagation: () => {
2479
- stopped = true;
2480
- event.stopPropagation();
2481
- }
2482
- });
2483
- }
2484
- if (onLoadingCompleteRef == null ? void 0 : onLoadingCompleteRef.current) {
2485
- onLoadingCompleteRef.current(img);
2486
- }
2487
- if (process.env.NODE_ENV !== "production") {
2488
- const origSrc = new URL(src, "http://n").searchParams.get("url") || src;
2489
- if (img.getAttribute("data-nimg") === "fill") {
2490
- if (!unoptimized && (!sizesInput || sizesInput === "100vw")) {
2491
- let widthViewportRatio = img.getBoundingClientRect().width / window.innerWidth;
2492
- if (widthViewportRatio < 0.6) {
2493
- if (sizesInput === "100vw") {
2494
- (0, _warnonce.warnOnce)('Image with src "' + origSrc + '" has "fill" prop and "sizes" prop of "100vw", but image is not rendered at full viewport width. Please adjust "sizes" to improve page performance. Read more: https://nextjs.org/docs/api-reference/next/image#sizes');
2495
- } else {
2496
- (0, _warnonce.warnOnce)('Image with src "' + origSrc + '" has "fill" but is missing "sizes" prop. Please add it to improve page performance. Read more: https://nextjs.org/docs/api-reference/next/image#sizes');
2483
+ img["data-loaded-src"] = src;
2484
+ const p = "decode" in img ? img.decode() : Promise.resolve();
2485
+ p.catch(() => {
2486
+ }).then(() => {
2487
+ if (!img.parentElement || !img.isConnected) {
2488
+ return;
2489
+ }
2490
+ if (placeholder !== "empty") {
2491
+ setBlurComplete(true);
2492
+ }
2493
+ if (onLoadRef == null ? void 0 : onLoadRef.current) {
2494
+ const event = new Event("load");
2495
+ Object.defineProperty(event, "target", {
2496
+ writable: false,
2497
+ value: img
2498
+ });
2499
+ let prevented = false;
2500
+ let stopped = false;
2501
+ onLoadRef.current({
2502
+ ...event,
2503
+ nativeEvent: event,
2504
+ currentTarget: img,
2505
+ target: img,
2506
+ isDefaultPrevented: () => prevented,
2507
+ isPropagationStopped: () => stopped,
2508
+ persist: () => {
2509
+ },
2510
+ preventDefault: () => {
2511
+ prevented = true;
2512
+ event.preventDefault();
2513
+ },
2514
+ stopPropagation: () => {
2515
+ stopped = true;
2516
+ event.stopPropagation();
2517
+ }
2518
+ });
2519
+ }
2520
+ if (onLoadingCompleteRef == null ? void 0 : onLoadingCompleteRef.current) {
2521
+ onLoadingCompleteRef.current(img);
2522
+ }
2523
+ if (process.env.NODE_ENV !== "production") {
2524
+ const origSrc = new URL(src, "http://n").searchParams.get("url") || src;
2525
+ if (img.getAttribute("data-nimg") === "fill") {
2526
+ if (!unoptimized && (!sizesInput || sizesInput === "100vw")) {
2527
+ let widthViewportRatio = img.getBoundingClientRect().width / window.innerWidth;
2528
+ if (widthViewportRatio < 0.6) {
2529
+ if (sizesInput === "100vw") {
2530
+ (0, _warnonce.warnOnce)(`Image with src "${origSrc}" has "fill" prop and "sizes" prop of "100vw", but image is not rendered at full viewport width. Please adjust "sizes" to improve page performance. Read more: https://nextjs.org/docs/api-reference/next/image#sizes`);
2531
+ } else {
2532
+ (0, _warnonce.warnOnce)(`Image with src "${origSrc}" has "fill" but is missing "sizes" prop. Please add it to improve page performance. Read more: https://nextjs.org/docs/api-reference/next/image#sizes`);
2533
+ }
2497
2534
  }
2498
2535
  }
2499
- }
2500
- if (img.parentElement) {
2501
- const { position } = window.getComputedStyle(img.parentElement);
2502
- const valid = [
2503
- "absolute",
2504
- "fixed",
2505
- "relative"
2506
- ];
2507
- if (!valid.includes(position)) {
2508
- (0, _warnonce.warnOnce)('Image with src "' + origSrc + '" has "fill" and parent element with invalid "position". Provided "' + position + '" should be one of ' + valid.map(String).join(",") + ".");
2536
+ if (img.parentElement) {
2537
+ const { position } = window.getComputedStyle(img.parentElement);
2538
+ const valid = [
2539
+ "absolute",
2540
+ "fixed",
2541
+ "relative"
2542
+ ];
2543
+ if (!valid.includes(position)) {
2544
+ (0, _warnonce.warnOnce)(`Image with src "${origSrc}" has "fill" and parent element with invalid "position". Provided "${position}" should be one of ${valid.map(String).join(",")}.`);
2545
+ }
2546
+ }
2547
+ if (img.height === 0) {
2548
+ (0, _warnonce.warnOnce)(`Image with src "${origSrc}" has "fill" and a height value of 0. This is likely because the parent element of the image has not been styled to have a set height.`);
2509
2549
  }
2510
2550
  }
2511
- if (img.height === 0) {
2512
- (0, _warnonce.warnOnce)('Image with src "' + origSrc + '" has "fill" and a height value of 0. This is likely because the parent element of the image has not been styled to have a set height.');
2551
+ const heightModified = img.height.toString() !== img.getAttribute("height");
2552
+ const widthModified = img.width.toString() !== img.getAttribute("width");
2553
+ if (heightModified && !widthModified || !heightModified && widthModified) {
2554
+ (0, _warnonce.warnOnce)(`Image with src "${origSrc}" has either width or height modified, but not the other. If you use CSS to change the size of your image, also include the styles 'width: "auto"' or 'height: "auto"' to maintain the aspect ratio.`);
2513
2555
  }
2514
2556
  }
2515
- const heightModified = img.height.toString() !== img.getAttribute("height");
2516
- const widthModified = img.width.toString() !== img.getAttribute("width");
2517
- if (heightModified && !widthModified || !heightModified && widthModified) {
2518
- (0, _warnonce.warnOnce)('Image with src "' + origSrc + `" has either width or height modified, but not the other. If you use CSS to change the size of your image, also include the styles 'width: "auto"' or 'height: "auto"' to maintain the aspect ratio.`);
2519
- }
2557
+ });
2558
+ }
2559
+ function getDynamicProps(fetchPriority) {
2560
+ if (Boolean(_react.use)) {
2561
+ return {
2562
+ fetchPriority
2563
+ };
2520
2564
  }
2521
- });
2522
- }
2523
- function getDynamicProps(fetchPriority) {
2524
- if (Boolean(_react.use)) {
2525
2565
  return {
2526
- fetchPriority
2566
+ fetchpriority: fetchPriority
2527
2567
  };
2528
2568
  }
2529
- return {
2530
- fetchpriority: fetchPriority
2531
- };
2532
- }
2533
- const ImageElement = /* @__PURE__ */ (0, _react.forwardRef)((param, forwardedRef) => {
2534
- let { src, srcSet, sizes, height, width, decoding, className, style, fetchPriority, placeholder, loading, unoptimized, fill, onLoadRef, onLoadingCompleteRef, setBlurComplete, setShowAltText, sizesInput, onLoad, onError, ...rest } = param;
2535
- const ownRef = (0, _react.useCallback)((img) => {
2536
- if (!img) {
2537
- return;
2538
- }
2539
- if (onError) {
2540
- img.src = img.src;
2541
- }
2542
- if (process.env.NODE_ENV !== "production") {
2543
- if (!src) {
2544
- console.error('Image is missing required "src" property:', img);
2569
+ const ImageElement = /* @__PURE__ */ (0, _react.forwardRef)(({ src, srcSet, sizes, height, width, decoding, className, style, fetchPriority, placeholder, loading, unoptimized, fill, onLoadRef, onLoadingCompleteRef, setBlurComplete, setShowAltText, sizesInput, onLoad, onError, ...rest }, forwardedRef) => {
2570
+ const ownRef = (0, _react.useCallback)((img) => {
2571
+ if (!img) {
2572
+ return;
2545
2573
  }
2546
- if (img.getAttribute("alt") === null) {
2547
- console.error('Image is missing required "alt" property. Please add Alternative Text to describe the image for screen readers and search engines.');
2574
+ if (onError) {
2575
+ img.src = img.src;
2548
2576
  }
2549
- }
2550
- if (img.complete) {
2551
- handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);
2552
- }
2553
- }, [
2554
- src,
2555
- placeholder,
2556
- onLoadRef,
2557
- onLoadingCompleteRef,
2558
- setBlurComplete,
2559
- onError,
2560
- unoptimized,
2561
- sizesInput
2562
- ]);
2563
- const ref = (0, _usemergedref.useMergedRef)(forwardedRef, ownRef);
2564
- return /* @__PURE__ */ (0, _jsxruntime.jsx)("img", {
2565
- ...rest,
2566
- ...getDynamicProps(fetchPriority),
2567
- // It's intended to keep `loading` before `src` because React updates
2568
- // props in order which causes Safari/Firefox to not lazy load properly.
2569
- // See https://github.com/facebook/react/issues/25883
2570
- loading,
2571
- width,
2572
- height,
2573
- decoding,
2574
- "data-nimg": fill ? "fill" : "1",
2575
- className,
2576
- style,
2577
- // It's intended to keep `src` the last attribute because React updates
2578
- // attributes in order. If we keep `src` the first one, Safari will
2579
- // immediately start to fetch `src`, before `sizes` and `srcSet` are even
2580
- // updated by React. That causes multiple unnecessary requests if `srcSet`
2581
- // and `sizes` are defined.
2582
- // This bug cannot be reproduced in Chrome or Firefox.
2583
- sizes,
2584
- srcSet,
2585
- src,
2586
- ref,
2587
- onLoad: (event) => {
2588
- const img = event.currentTarget;
2589
- handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);
2590
- },
2591
- onError: (event) => {
2592
- setShowAltText(true);
2593
- if (placeholder !== "empty") {
2594
- setBlurComplete(true);
2577
+ if (process.env.NODE_ENV !== "production") {
2578
+ if (!src) {
2579
+ console.error(`Image is missing required "src" property:`, img);
2580
+ }
2581
+ if (img.getAttribute("alt") === null) {
2582
+ console.error(`Image is missing required "alt" property. Please add Alternative Text to describe the image for screen readers and search engines.`);
2583
+ }
2595
2584
  }
2596
- if (onError) {
2597
- onError(event);
2585
+ if (img.complete) {
2586
+ handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);
2598
2587
  }
2599
- }
2600
- });
2601
- });
2602
- function ImagePreload(param) {
2603
- let { isAppRouter, imgAttributes } = param;
2604
- const opts = {
2605
- as: "image",
2606
- imageSrcSet: imgAttributes.srcSet,
2607
- imageSizes: imgAttributes.sizes,
2608
- crossOrigin: imgAttributes.crossOrigin,
2609
- referrerPolicy: imgAttributes.referrerPolicy,
2610
- ...getDynamicProps(imgAttributes.fetchPriority)
2611
- };
2612
- if (isAppRouter && _reactdom.default.preload) {
2613
- _reactdom.default.preload(imgAttributes.src, opts);
2614
- return null;
2615
- }
2616
- return /* @__PURE__ */ (0, _jsxruntime.jsx)(_head.default, {
2617
- children: /* @__PURE__ */ (0, _jsxruntime.jsx)("link", {
2618
- rel: "preload",
2619
- // Note how we omit the `href` attribute, as it would only be relevant
2620
- // for browsers that do not support `imagesrcset`, and in those cases
2621
- // it would cause the incorrect image to be preloaded.
2622
- //
2623
- // https://html.spec.whatwg.org/multipage/semantics.html#attr-link-imagesrcset
2624
- href: imgAttributes.srcSet ? void 0 : imgAttributes.src,
2625
- ...opts
2626
- }, "__nimg-" + imgAttributes.src + imgAttributes.srcSet + imgAttributes.sizes)
2588
+ }, [
2589
+ src,
2590
+ placeholder,
2591
+ onLoadRef,
2592
+ onLoadingCompleteRef,
2593
+ setBlurComplete,
2594
+ onError,
2595
+ unoptimized,
2596
+ sizesInput
2597
+ ]);
2598
+ const ref = (0, _usemergedref.useMergedRef)(forwardedRef, ownRef);
2599
+ return /* @__PURE__ */ (0, _jsxruntime.jsx)("img", {
2600
+ ...rest,
2601
+ ...getDynamicProps(fetchPriority),
2602
+ // It's intended to keep `loading` before `src` because React updates
2603
+ // props in order which causes Safari/Firefox to not lazy load properly.
2604
+ // See https://github.com/facebook/react/issues/25883
2605
+ loading,
2606
+ width,
2607
+ height,
2608
+ decoding,
2609
+ "data-nimg": fill ? "fill" : "1",
2610
+ className,
2611
+ style,
2612
+ // It's intended to keep `src` the last attribute because React updates
2613
+ // attributes in order. If we keep `src` the first one, Safari will
2614
+ // immediately start to fetch `src`, before `sizes` and `srcSet` are even
2615
+ // updated by React. That causes multiple unnecessary requests if `srcSet`
2616
+ // and `sizes` are defined.
2617
+ // This bug cannot be reproduced in Chrome or Firefox.
2618
+ sizes,
2619
+ srcSet,
2620
+ src,
2621
+ ref,
2622
+ onLoad: (event) => {
2623
+ const img = event.currentTarget;
2624
+ handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);
2625
+ },
2626
+ onError: (event) => {
2627
+ setShowAltText(true);
2628
+ if (placeholder !== "empty") {
2629
+ setBlurComplete(true);
2630
+ }
2631
+ if (onError) {
2632
+ onError(event);
2633
+ }
2634
+ }
2635
+ });
2627
2636
  });
2628
- }
2629
- const Image2 = /* @__PURE__ */ (0, _react.forwardRef)((props, forwardedRef) => {
2630
- const pagesRouter = (0, _react.useContext)(_routercontextsharedruntime.RouterContext);
2631
- const isAppRouter = !pagesRouter;
2632
- const configContext = (0, _react.useContext)(_imageconfigcontextsharedruntime.ImageConfigContext);
2633
- const config = (0, _react.useMemo)(() => {
2634
- var _c_qualities;
2635
- const c = configEnv || configContext || _imageconfig.imageConfigDefault;
2636
- const allSizes = [
2637
- ...c.deviceSizes,
2638
- ...c.imageSizes
2639
- ].sort((a, b) => a - b);
2640
- const deviceSizes = c.deviceSizes.sort((a, b) => a - b);
2641
- const qualities = (_c_qualities = c.qualities) == null ? void 0 : _c_qualities.sort((a, b) => a - b);
2642
- return {
2643
- ...c,
2644
- allSizes,
2645
- deviceSizes,
2646
- qualities
2637
+ function ImagePreload({ isAppRouter, imgAttributes }) {
2638
+ const opts = {
2639
+ as: "image",
2640
+ imageSrcSet: imgAttributes.srcSet,
2641
+ imageSizes: imgAttributes.sizes,
2642
+ crossOrigin: imgAttributes.crossOrigin,
2643
+ referrerPolicy: imgAttributes.referrerPolicy,
2644
+ ...getDynamicProps(imgAttributes.fetchPriority)
2647
2645
  };
2648
- }, [
2649
- configContext
2650
- ]);
2651
- const { onLoad, onLoadingComplete } = props;
2652
- const onLoadRef = (0, _react.useRef)(onLoad);
2653
- (0, _react.useEffect)(() => {
2654
- onLoadRef.current = onLoad;
2655
- }, [
2656
- onLoad
2657
- ]);
2658
- const onLoadingCompleteRef = (0, _react.useRef)(onLoadingComplete);
2659
- (0, _react.useEffect)(() => {
2660
- onLoadingCompleteRef.current = onLoadingComplete;
2661
- }, [
2662
- onLoadingComplete
2663
- ]);
2664
- const [blurComplete, setBlurComplete] = (0, _react.useState)(false);
2665
- const [showAltText, setShowAltText] = (0, _react.useState)(false);
2666
- const { props: imgAttributes, meta: imgMeta } = (0, _getimgprops.getImgProps)(props, {
2667
- defaultLoader: _imageloader.default,
2668
- imgConf: config,
2669
- blurComplete,
2670
- showAltText
2671
- });
2672
- return /* @__PURE__ */ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {
2673
- children: [
2674
- /* @__PURE__ */ (0, _jsxruntime.jsx)(ImageElement, {
2675
- ...imgAttributes,
2676
- unoptimized: imgMeta.unoptimized,
2677
- placeholder: imgMeta.placeholder,
2678
- fill: imgMeta.fill,
2679
- onLoadRef,
2680
- onLoadingCompleteRef,
2681
- setBlurComplete,
2682
- setShowAltText,
2683
- sizesInput: props.sizes,
2684
- ref: forwardedRef
2685
- }),
2686
- imgMeta.priority ? /* @__PURE__ */ (0, _jsxruntime.jsx)(ImagePreload, {
2687
- isAppRouter,
2688
- imgAttributes
2689
- }) : null
2690
- ]
2646
+ if (isAppRouter && _reactdom.default.preload) {
2647
+ _reactdom.default.preload(imgAttributes.src, opts);
2648
+ return null;
2649
+ }
2650
+ return /* @__PURE__ */ (0, _jsxruntime.jsx)(_head.default, {
2651
+ children: /* @__PURE__ */ (0, _jsxruntime.jsx)("link", {
2652
+ rel: "preload",
2653
+ // Note how we omit the `href` attribute, as it would only be relevant
2654
+ // for browsers that do not support `imagesrcset`, and in those cases
2655
+ // it would cause the incorrect image to be preloaded.
2656
+ //
2657
+ // https://html.spec.whatwg.org/multipage/semantics.html#attr-link-imagesrcset
2658
+ href: imgAttributes.srcSet ? void 0 : imgAttributes.src,
2659
+ ...opts
2660
+ }, "__nimg-" + imgAttributes.src + imgAttributes.srcSet + imgAttributes.sizes)
2661
+ });
2662
+ }
2663
+ const Image2 = /* @__PURE__ */ (0, _react.forwardRef)((props, forwardedRef) => {
2664
+ const pagesRouter = (0, _react.useContext)(_routercontextsharedruntime.RouterContext);
2665
+ const isAppRouter = !pagesRouter;
2666
+ const configContext = (0, _react.useContext)(_imageconfigcontextsharedruntime.ImageConfigContext);
2667
+ const config = (0, _react.useMemo)(() => {
2668
+ var _a;
2669
+ const c = configEnv || configContext || _imageconfig.imageConfigDefault;
2670
+ const allSizes = [
2671
+ ...c.deviceSizes,
2672
+ ...c.imageSizes
2673
+ ].sort((a, b) => a - b);
2674
+ const deviceSizes = c.deviceSizes.sort((a, b) => a - b);
2675
+ const qualities = (_a = c.qualities) == null ? void 0 : _a.sort((a, b) => a - b);
2676
+ return {
2677
+ ...c,
2678
+ allSizes,
2679
+ deviceSizes,
2680
+ qualities,
2681
+ // During the SSR, configEnv (__NEXT_IMAGE_OPTS) does not include
2682
+ // security sensitive configs like `localPatterns`, which is needed
2683
+ // during the server render to ensure it's validated. Therefore use
2684
+ // configContext, which holds the config from the server for validation.
2685
+ localPatterns: typeof window === "undefined" ? configContext == null ? void 0 : configContext.localPatterns : c.localPatterns
2686
+ };
2687
+ }, [
2688
+ configContext
2689
+ ]);
2690
+ const { onLoad, onLoadingComplete } = props;
2691
+ const onLoadRef = (0, _react.useRef)(onLoad);
2692
+ (0, _react.useEffect)(() => {
2693
+ onLoadRef.current = onLoad;
2694
+ }, [
2695
+ onLoad
2696
+ ]);
2697
+ const onLoadingCompleteRef = (0, _react.useRef)(onLoadingComplete);
2698
+ (0, _react.useEffect)(() => {
2699
+ onLoadingCompleteRef.current = onLoadingComplete;
2700
+ }, [
2701
+ onLoadingComplete
2702
+ ]);
2703
+ const [blurComplete, setBlurComplete] = (0, _react.useState)(false);
2704
+ const [showAltText, setShowAltText] = (0, _react.useState)(false);
2705
+ const { props: imgAttributes, meta: imgMeta } = (0, _getimgprops.getImgProps)(props, {
2706
+ defaultLoader: _imageloader.default,
2707
+ imgConf: config,
2708
+ blurComplete,
2709
+ showAltText
2710
+ });
2711
+ return /* @__PURE__ */ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {
2712
+ children: [
2713
+ /* @__PURE__ */ (0, _jsxruntime.jsx)(ImageElement, {
2714
+ ...imgAttributes,
2715
+ unoptimized: imgMeta.unoptimized,
2716
+ placeholder: imgMeta.placeholder,
2717
+ fill: imgMeta.fill,
2718
+ onLoadRef,
2719
+ onLoadingCompleteRef,
2720
+ setBlurComplete,
2721
+ setShowAltText,
2722
+ sizesInput: props.sizes,
2723
+ ref: forwardedRef
2724
+ }),
2725
+ imgMeta.preload ? /* @__PURE__ */ (0, _jsxruntime.jsx)(ImagePreload, {
2726
+ isAppRouter,
2727
+ imgAttributes
2728
+ }) : null
2729
+ ]
2730
+ });
2691
2731
  });
2692
- });
2693
- if ((typeof exports2.default === "function" || typeof exports2.default === "object" && exports2.default !== null) && typeof exports2.default.__esModule === "undefined") {
2694
- Object.defineProperty(exports2.default, "__esModule", { value: true });
2695
- Object.assign(exports2.default, exports2);
2696
- module2.exports = exports2.default;
2697
- }
2698
- })(imageComponent, imageComponent.exports);
2699
- var imageComponentExports = imageComponent.exports;
2700
- (function(exports2) {
2701
- Object.defineProperty(exports2, "__esModule", {
2702
- value: true
2703
- });
2704
- function _export(target, all) {
2705
- for (var name in all) Object.defineProperty(target, name, {
2706
- enumerable: true,
2707
- get: all[name]
2732
+ if ((typeof exports$1.default === "function" || typeof exports$1.default === "object" && exports$1.default !== null) && typeof exports$1.default.__esModule === "undefined") {
2733
+ Object.defineProperty(exports$1.default, "__esModule", { value: true });
2734
+ Object.assign(exports$1.default, exports$1);
2735
+ module2.exports = exports$1.default;
2736
+ }
2737
+ })(imageComponent, imageComponent.exports);
2738
+ return imageComponent.exports;
2739
+ }
2740
+ var hasRequiredImageExternal;
2741
+ function requireImageExternal() {
2742
+ if (hasRequiredImageExternal) return imageExternal;
2743
+ hasRequiredImageExternal = 1;
2744
+ (function(exports$1) {
2745
+ Object.defineProperty(exports$1, "__esModule", {
2746
+ value: true
2708
2747
  });
2709
- }
2710
- _export(exports2, {
2711
- default: function() {
2712
- return _default;
2713
- },
2714
- getImageProps: function() {
2715
- return getImageProps;
2748
+ function _export(target, all) {
2749
+ for (var name in all) Object.defineProperty(target, name, {
2750
+ enumerable: true,
2751
+ get: all[name]
2752
+ });
2716
2753
  }
2717
- });
2718
- const _interop_require_default = link._interop_require_default;
2719
- const _getimgprops = getImgProps;
2720
- const _imagecomponent = imageComponentExports;
2721
- const _imageloader = /* @__PURE__ */ _interop_require_default._(requireImageLoader());
2722
- function getImageProps(imgProps) {
2723
- const { props } = (0, _getimgprops.getImgProps)(imgProps, {
2724
- defaultLoader: _imageloader.default,
2725
- // This is replaced by webpack define plugin
2726
- imgConf: process.env.__NEXT_IMAGE_OPTS
2754
+ _export(exports$1, {
2755
+ default: function() {
2756
+ return _default;
2757
+ },
2758
+ getImageProps: function() {
2759
+ return getImageProps;
2760
+ }
2727
2761
  });
2728
- for (const [key, value] of Object.entries(props)) {
2729
- if (value === void 0) {
2730
- delete props[key];
2762
+ const _interop_require_default = /* @__PURE__ */ link.require_interop_require_default();
2763
+ const _getimgprops = requireGetImgProps();
2764
+ const _imagecomponent = requireImageComponent();
2765
+ const _imageloader = /* @__PURE__ */ _interop_require_default._(requireImageLoader());
2766
+ function getImageProps(imgProps) {
2767
+ const { props } = (0, _getimgprops.getImgProps)(imgProps, {
2768
+ defaultLoader: _imageloader.default,
2769
+ // This is replaced by webpack define plugin
2770
+ imgConf: process.env.__NEXT_IMAGE_OPTS
2771
+ });
2772
+ for (const [key, value] of Object.entries(props)) {
2773
+ if (value === void 0) {
2774
+ delete props[key];
2775
+ }
2731
2776
  }
2777
+ return {
2778
+ props
2779
+ };
2732
2780
  }
2733
- return {
2734
- props
2735
- };
2736
- }
2737
- const _default = _imagecomponent.Image;
2738
- })(imageExternal);
2739
- var image = imageExternal;
2740
- const Image = /* @__PURE__ */ link.getDefaultExportFromCjs(image);
2781
+ const _default = _imagecomponent.Image;
2782
+ })(imageExternal);
2783
+ return imageExternal;
2784
+ }
2785
+ var image;
2786
+ var hasRequiredImage;
2787
+ function requireImage() {
2788
+ if (hasRequiredImage) return image;
2789
+ hasRequiredImage = 1;
2790
+ image = requireImageExternal();
2791
+ return image;
2792
+ }
2793
+ var imageExports = requireImage();
2794
+ const Image = /* @__PURE__ */ link.getDefaultExportFromCjs(imageExports);
2741
2795
  exports.Image = Image;
2742
- //# sourceMappingURL=image-VX9Ty9NQ.cjs.map
2796
+ //# sourceMappingURL=image-A4nTeRaX.cjs.map