@piu-company/react-toolkit 1.0.3 → 1.0.5

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 (240) hide show
  1. package/dist/AppProvider.d.ts +16 -16
  2. package/dist/animations/QuadSpinner.d.ts +13 -13
  3. package/dist/animations/Ripple.d.ts +15 -15
  4. package/dist/animations/SvgAnimations.d.ts +11 -11
  5. package/dist/animations/index.d.ts +3 -3
  6. package/dist/authentication/AuthenticationProvider.d.ts +11 -11
  7. package/dist/authentication/context.d.ts +5 -5
  8. package/dist/authentication/duck.d.ts +36 -36
  9. package/dist/authentication/index.d.ts +4 -4
  10. package/dist/authentication/types.d.ts +1 -1
  11. package/dist/axios.d.ts +167 -167
  12. package/dist/breadCrumb/BreadCrumbProvider.d.ts +5 -5
  13. package/dist/breadCrumb/context.d.ts +8 -8
  14. package/dist/breadCrumb/index.d.ts +3 -3
  15. package/dist/breadCrumb/types.d.ts +4 -4
  16. package/dist/components/Consumers/NotificationConsumer.d.ts +1 -1
  17. package/dist/components/Consumers/SnackbarsConsumer.d.ts +1 -1
  18. package/dist/components/Consumers/ToolTipConsumer.d.ts +1 -1
  19. package/dist/components/Consumers/index.d.ts +3 -3
  20. package/dist/components/Firebase/FbImage.d.ts +7 -7
  21. package/dist/components/Firebase/index.d.ts +2 -2
  22. package/dist/components/Firebase/types.d.ts +14 -14
  23. package/dist/components/Forms/ChangePassword.d.ts +9 -9
  24. package/dist/components/Forms/index.d.ts +1 -1
  25. package/dist/components/GoogleCalendar/GoogleCalendarProvider.d.ts +6 -6
  26. package/dist/components/GoogleCalendar/context.d.ts +5 -5
  27. package/dist/components/GoogleCalendar/index.d.ts +2 -2
  28. package/dist/components/GoogleCalendar/types.d.ts +10 -10
  29. package/dist/components/GoogleMaps/GMap.d.ts +27 -27
  30. package/dist/components/GoogleMaps/GMapInput.d.ts +17 -15
  31. package/dist/components/GoogleMaps/GoogleMapsProvider.d.ts +6 -6
  32. package/dist/components/GoogleMaps/context.d.ts +5 -5
  33. package/dist/components/GoogleMaps/index.d.ts +4 -4
  34. package/dist/components/Layout/TitledRow.d.ts +14 -14
  35. package/dist/components/Layout/index.d.ts +1 -1
  36. package/dist/components/Level1/A.d.ts +6 -6
  37. package/dist/components/Level1/Button.d.ts +29 -29
  38. package/dist/components/Level1/Container.d.ts +57 -57
  39. package/dist/components/Level1/DropdownButton.d.ts +11 -11
  40. package/dist/components/Level1/FadeInOut.d.ts +7 -7
  41. package/dist/components/Level1/Hr.d.ts +13 -13
  42. package/dist/components/Level1/Icon.d.ts +18 -18
  43. package/dist/components/Level1/Slider.d.ts +19 -19
  44. package/dist/components/Level1/Spacer.d.ts +5 -5
  45. package/dist/components/Level1/Typography.d.ts +37 -37
  46. package/dist/components/Level1/index.d.ts +10 -10
  47. package/dist/components/Level2/Card.d.ts +9 -9
  48. package/dist/components/Level2/Checkbox.d.ts +29 -29
  49. package/dist/components/Level2/Cover.d.ts +10 -10
  50. package/dist/components/Level2/DatePicker/DatePicker.d.ts +17 -17
  51. package/dist/components/Level2/DatePicker/DayPicker.d.ts +43 -43
  52. package/dist/components/Level2/DatePicker/MonthPicker.d.ts +27 -27
  53. package/dist/components/Level2/DatePicker/index.d.ts +4 -4
  54. package/dist/components/Level2/DatePicker/types.d.ts +8 -8
  55. package/dist/components/Level2/FloatingDiv.d.ts +17 -17
  56. package/dist/components/Level2/IconButton.d.ts +23 -23
  57. package/dist/components/Level2/Linker.d.ts +7 -7
  58. package/dist/components/Level2/MultiButtonSelect.d.ts +24 -24
  59. package/dist/components/Level2/Overlay.d.ts +36 -36
  60. package/dist/components/Level2/PanelForm/PanelForm.d.ts +9 -9
  61. package/dist/components/Level2/PanelForm/PanelFormContent.d.ts +5 -5
  62. package/dist/components/Level2/PanelForm/PanelFormSaveSection.d.ts +10 -10
  63. package/dist/components/Level2/PanelForm/PanelFormSection.d.ts +6 -6
  64. package/dist/components/Level2/PanelForm/PanelFormTitleSection.d.ts +6 -6
  65. package/dist/components/Level2/PanelForm/index.d.ts +5 -5
  66. package/dist/components/Level2/PillContainer.d.ts +13 -13
  67. package/dist/components/Level2/RadioButton.d.ts +10 -10
  68. package/dist/components/Level2/SideMenu/SideMenu.d.ts +24 -24
  69. package/dist/components/Level2/SideMenu/SideMenuButton.d.ts +16 -16
  70. package/dist/components/Level2/SideMenu/SideMenuNav.d.ts +12 -12
  71. package/dist/components/Level2/SideMenu/index.d.ts +3 -3
  72. package/dist/components/Level2/SideMenu/types.d.ts +25 -25
  73. package/dist/components/Level2/SocialButtons/FacebookButton.d.ts +12 -12
  74. package/dist/components/Level2/SocialButtons/GoogleButton.d.ts +12 -12
  75. package/dist/components/Level2/SocialButtons/index.d.ts +2 -2
  76. package/dist/components/Level2/Switch.d.ts +11 -11
  77. package/dist/components/Level2/TargetCard.d.ts +43 -43
  78. package/dist/components/Level2/TextField/Masker.d.ts +13 -13
  79. package/dist/components/Level2/TextField/TextField.d.ts +16 -16
  80. package/dist/components/Level2/TextField/TextFieldContainer.d.ts +18 -18
  81. package/dist/components/Level2/TextField/index.d.ts +3 -3
  82. package/dist/components/Level2/ThemeToggle.d.ts +5 -5
  83. package/dist/components/Level2/Tooltip.d.ts +21 -21
  84. package/dist/components/Level2/Uploader/UploadPreview.d.ts +9 -9
  85. package/dist/components/Level2/Uploader/Uploader.d.ts +30 -30
  86. package/dist/components/Level2/Uploader/index.d.ts +3 -3
  87. package/dist/components/Level2/Uploader/types.d.ts +7 -7
  88. package/dist/components/Level2/index.d.ts +20 -20
  89. package/dist/components/Level3/AreaChart.d.ts +29 -29
  90. package/dist/components/Level3/BarChart.d.ts +26 -26
  91. package/dist/components/Level3/BreadCrumb.d.ts +5 -5
  92. package/dist/components/Level3/Chart.d.ts +22 -22
  93. package/dist/components/Level3/ColorPicker.d.ts +9 -9
  94. package/dist/components/Level3/DashboardCard.d.ts +18 -18
  95. package/dist/components/Level3/DashboardCardV2.d.ts +13 -13
  96. package/dist/components/Level3/DashboardSelector/DashboardSelector.d.ts +8 -8
  97. package/dist/components/Level3/DashboardSelector/index.d.ts +2 -2
  98. package/dist/components/Level3/DashboardSelector/types.d.ts +4 -4
  99. package/dist/components/Level3/DateField.d.ts +31 -31
  100. package/dist/components/Level3/FloatingIconButton.d.ts +19 -19
  101. package/dist/components/Level3/FloatingIconButtonList.d.ts +13 -13
  102. package/dist/components/Level3/FullScreenButton.d.ts +2 -2
  103. package/dist/components/Level3/ListEditor.d.ts +12 -12
  104. package/dist/components/Level3/MultiChart.d.ts +27 -27
  105. package/dist/components/Level3/OptionSelector/OptionSelector.d.ts +18 -18
  106. package/dist/components/Level3/OptionSelector/index.d.ts +2 -2
  107. package/dist/components/Level3/OptionSelector/types.d.ts +8 -8
  108. package/dist/components/Level3/OverlayTopBar.d.ts +32 -32
  109. package/dist/components/Level3/PasswordField.d.ts +17 -17
  110. package/dist/components/Level3/PhoneField/PhoneField.d.ts +12 -12
  111. package/dist/components/Level3/PhoneField/PhoneSelection.d.ts +15 -15
  112. package/dist/components/Level3/PhoneField/countryData.d.ts +7 -7
  113. package/dist/components/Level3/PhoneField/flags/index.d.ts +243 -243
  114. package/dist/components/Level3/PhoneField/functions.d.ts +4 -4
  115. package/dist/components/Level3/PhoneField/index.d.ts +6 -6
  116. package/dist/components/Level3/PhoneField/types.d.ts +5 -5
  117. package/dist/components/Level3/PieChart.d.ts +30 -30
  118. package/dist/components/Level3/Popup.d.ts +23 -23
  119. package/dist/components/Level3/ProfileBox.d.ts +27 -27
  120. package/dist/components/Level3/Snackbar.d.ts +16 -16
  121. package/dist/components/Level3/TimeField/TimeField.d.ts +23 -23
  122. package/dist/components/Level3/TimeField/TimePicker.d.ts +23 -23
  123. package/dist/components/Level3/TimeField/index.d.ts +2 -2
  124. package/dist/components/Level3/Topbar.d.ts +36 -36
  125. package/dist/components/Level3/index.d.ts +24 -24
  126. package/dist/components/Level4/ConfirmPopup.d.ts +14 -14
  127. package/dist/components/Level4/index.d.ts +1 -1
  128. package/dist/components/NextJS/NEXTGlobalStyle.d.ts +7 -7
  129. package/dist/components/NextJS/index.d.ts +2 -2
  130. package/dist/components/NextJS/utils.d.ts +1 -1
  131. package/dist/components/Stripe/CardCvc.d.ts +17 -17
  132. package/dist/components/Stripe/CardExpiry.d.ts +17 -17
  133. package/dist/components/Stripe/CardNumber.d.ts +17 -17
  134. package/dist/components/Stripe/StripeProvider.d.ts +9 -9
  135. package/dist/components/Stripe/context.d.ts +6 -6
  136. package/dist/components/Stripe/functions.d.ts +5 -5
  137. package/dist/components/Stripe/index.d.ts +6 -6
  138. package/dist/components/UseDataLayer/Autocomplete/Autocomplete.d.ts +10 -10
  139. package/dist/components/UseDataLayer/Autocomplete/AutocompleteUI.d.ts +21 -21
  140. package/dist/components/UseDataLayer/Autocomplete/OptionDiv.d.ts +12 -12
  141. package/dist/components/UseDataLayer/Autocomplete/Selection.d.ts +13 -13
  142. package/dist/components/UseDataLayer/Autocomplete/index.d.ts +5 -5
  143. package/dist/components/UseDataLayer/Autocomplete/types.d.ts +10 -10
  144. package/dist/components/UseDataLayer/CountrySelection.d.ts +11 -11
  145. package/dist/components/UseDataLayer/EntityList/EntityList.d.ts +10 -10
  146. package/dist/components/UseDataLayer/EntityList/EntityListUI.d.ts +12 -12
  147. package/dist/components/UseDataLayer/EntityList/index.d.ts +3 -3
  148. package/dist/components/UseDataLayer/EntityList/types.d.ts +1 -1
  149. package/dist/components/UseDataLayer/Table/Header.d.ts +24 -24
  150. package/dist/components/UseDataLayer/Table/PaginationControl.d.ts +8 -8
  151. package/dist/components/UseDataLayer/Table/Row.d.ts +22 -22
  152. package/dist/components/UseDataLayer/Table/ShowingControl.d.ts +18 -18
  153. package/dist/components/UseDataLayer/Table/ShowingFooter.d.ts +6 -6
  154. package/dist/components/UseDataLayer/Table/Table.d.ts +10 -10
  155. package/dist/components/UseDataLayer/Table/TableUI.d.ts +24 -24
  156. package/dist/components/UseDataLayer/Table/index.d.ts +8 -8
  157. package/dist/components/UseDataLayer/Table/types.d.ts +13 -13
  158. package/dist/components/UseDataLayer/TownSelection.d.ts +11 -11
  159. package/dist/components/UseDataLayer/index.d.ts +5 -5
  160. package/dist/components/UseRedux/Sidebar/Sidebar.d.ts +48 -48
  161. package/dist/components/UseRedux/Sidebar/SidebarButton.d.ts +25 -25
  162. package/dist/components/UseRedux/Sidebar/SidebarTitle.d.ts +14 -14
  163. package/dist/components/UseRedux/Sidebar/SidebarToggler.d.ts +16 -16
  164. package/dist/components/UseRedux/Sidebar/duck.d.ts +30 -30
  165. package/dist/components/UseRedux/Sidebar/index.d.ts +6 -6
  166. package/dist/components/UseRedux/Sidebar/types.d.ts +13 -13
  167. package/dist/components/UseRedux/index.d.ts +1 -1
  168. package/dist/components/index.d.ts +15 -15
  169. package/dist/components/pages/AuthPage/AuthPage.d.ts +18 -18
  170. package/dist/components/pages/AuthPage/index.d.ts +2 -2
  171. package/dist/components/pages/AuthPage/types.d.ts +14 -14
  172. package/dist/components/pages/AuthPageV2.d.ts +16 -16
  173. package/dist/components/pages/ErrorPage.d.ts +13 -13
  174. package/dist/components/pages/ForbiddenPage.d.ts +15 -15
  175. package/dist/components/pages/ForgotPasswordPage/ForgotPasswordForm.d.ts +5 -5
  176. package/dist/components/pages/ForgotPasswordPage/ForgotPasswordPage.d.ts +4 -4
  177. package/dist/components/pages/ForgotPasswordPage/index.d.ts +2 -2
  178. package/dist/components/pages/LoadingPage.d.ts +14 -14
  179. package/dist/components/pages/LoginPage/LoginForm.d.ts +20 -20
  180. package/dist/components/pages/LoginPage/LoginPage.d.ts +9 -9
  181. package/dist/components/pages/LoginPage/index.d.ts +2 -2
  182. package/dist/components/pages/LogoutPage.d.ts +5 -5
  183. package/dist/components/pages/NotFoundPage.d.ts +6 -6
  184. package/dist/components/pages/UnverifiedUserPage.d.ts +6 -6
  185. package/dist/components/pages/index.d.ts +10 -10
  186. package/dist/contextCheckers.d.ts +4 -4
  187. package/dist/dataEnums.d.ts +370 -370
  188. package/dist/dataLayer/DataContext.d.ts +11 -11
  189. package/dist/dataLayer/DataProvider.d.ts +53 -53
  190. package/dist/dataLayer/duck.d.ts +32 -32
  191. package/dist/dataLayer/index.d.ts +4 -4
  192. package/dist/dataLayer/types.d.ts +17 -17
  193. package/dist/generalTypes.d.ts +48 -48
  194. package/dist/geoUtils.d.ts +35 -35
  195. package/dist/hooks/index.d.ts +8 -8
  196. package/dist/hooks/types.d.ts +3 -3
  197. package/dist/hooks/useClickOutside.d.ts +3 -3
  198. package/dist/hooks/useCombinedRef.d.ts +1 -1
  199. package/dist/hooks/useEnterSubmit.d.ts +2 -2
  200. package/dist/hooks/useFBAuth.d.ts +2 -2
  201. package/dist/hooks/useInterval.d.ts +2 -2
  202. package/dist/hooks/useResize.d.ts +2 -2
  203. package/dist/hooks/useTimeout.d.ts +2 -2
  204. package/dist/index.cjs.js +456 -244
  205. package/dist/index.d.ts +22 -22
  206. package/dist/index.esm.js +456 -244
  207. package/dist/masker.d.ts +15 -15
  208. package/dist/navigation/NavProvider.d.ts +7 -7
  209. package/dist/navigation/context.d.ts +6 -6
  210. package/dist/navigation/index.d.ts +3 -3
  211. package/dist/navigation/types.d.ts +6 -6
  212. package/dist/notification/NotificationProvider.d.ts +21 -21
  213. package/dist/notification/context.d.ts +8 -8
  214. package/dist/notification/duck.d.ts +30 -30
  215. package/dist/notification/index.d.ts +3 -3
  216. package/dist/redux.d.ts +25 -25
  217. package/dist/size/SizeProvider.d.ts +6 -6
  218. package/dist/size/context.d.ts +5 -5
  219. package/dist/size/index.d.ts +3 -3
  220. package/dist/size/types.d.ts +5 -5
  221. package/dist/snackbar/SnackbarProvider.d.ts +5 -5
  222. package/dist/snackbar/context.d.ts +8 -8
  223. package/dist/snackbar/functions.d.ts +14 -14
  224. package/dist/snackbar/index.d.ts +4 -4
  225. package/dist/snackbar/types.d.ts +28 -28
  226. package/dist/styleEnums.d.ts +156 -156
  227. package/dist/theming/ThemeProvider.d.ts +26 -26
  228. package/dist/theming/context.d.ts +11 -11
  229. package/dist/theming/duck.d.ts +23 -23
  230. package/dist/theming/functions.d.ts +2 -2
  231. package/dist/theming/index.d.ts +5 -5
  232. package/dist/theming/types.d.ts +60 -60
  233. package/dist/tooltip/ToolTipProvider.d.ts +5 -5
  234. package/dist/tooltip/context.d.ts +10 -10
  235. package/dist/tooltip/index.d.ts +3 -3
  236. package/dist/tooltip/types.d.ts +8 -8
  237. package/dist/tsconfig.rollup.tsbuildinfo +1 -1
  238. package/dist/utils.d.ts +39 -39
  239. package/package.json +3 -3
  240. package/dist/tsconfig.tsbuildinfo +0 -1
package/dist/index.esm.js CHANGED
@@ -15401,7 +15401,7 @@ var TargetCardType;
15401
15401
  TargetCardType["timepicker"] = "timepicker";
15402
15402
  TargetCardType["profilebox"] = "profilebox";
15403
15403
  })(TargetCardType || (TargetCardType = {}));
15404
- const TargetCard = forwardRef(({ children, open, target, forceDirection, rightOffset, leftOffset, topOffset, bottomOffset, buttonHeight, buttonWidth, targetCardType, ...props }, ref) => {
15404
+ const TargetCard = forwardRef(({ children, open, target, forceDirection, forceHorizontal, rightOffset, leftOffset, topOffset, bottomOffset, buttonHeight, buttonWidth, targetCardType, ...props }, ref) => {
15405
15405
  const { browser } = useContext(NavigationContext);
15406
15406
  const [top, setTop] = useState();
15407
15407
  const [bottom, setBottom] = useState();
@@ -15586,6 +15586,14 @@ const TargetCard = forwardRef(({ children, open, target, forceDirection, rightOf
15586
15586
  }
15587
15587
  }
15588
15588
  }
15589
+ if (size && forceHorizontal === 'right') {
15590
+ tempLeft = size.left;
15591
+ tempRight = null;
15592
+ }
15593
+ else if (size && forceHorizontal === 'left') {
15594
+ tempRight = window.innerWidth - size.right;
15595
+ tempLeft = null;
15596
+ }
15589
15597
  if (topOffset && tempTop) {
15590
15598
  tempTop = tempTop - topOffset;
15591
15599
  }
@@ -15611,7 +15619,8 @@ const TargetCard = forwardRef(({ children, open, target, forceDirection, rightOf
15611
15619
  bottomOffset,
15612
15620
  leftOffset,
15613
15621
  rightOffset,
15614
- forceDirection
15622
+ forceDirection,
15623
+ forceHorizontal
15615
15624
  ]);
15616
15625
  useResize(updatePosition);
15617
15626
  useEffect(() => {
@@ -34365,10 +34374,10 @@ function require_interop_require_default () {
34365
34374
  if (hasRequired_interop_require_default) return _interop_require_default;
34366
34375
  hasRequired_interop_require_default = 1;
34367
34376
 
34368
- _interop_require_default._ = _interop_require_default._interop_require_default = _interop_require_default$1;
34369
34377
  function _interop_require_default$1(obj) {
34370
34378
  return obj && obj.__esModule ? obj : { default: obj };
34371
34379
  }
34380
+ _interop_require_default._ = _interop_require_default$1;
34372
34381
  return _interop_require_default;
34373
34382
  }
34374
34383
 
@@ -34392,7 +34401,7 @@ function requireWarnOnce () {
34392
34401
  }
34393
34402
  });
34394
34403
  let warnOnce = (_)=>{};
34395
- if (process.env.NODE_ENV !== "production") {
34404
+ if (process.env.NODE_ENV !== 'production') {
34396
34405
  const warnings = new Set();
34397
34406
  warnOnce = (msg)=>{
34398
34407
  if (!warnings.has(msg)) {
@@ -34433,8 +34442,8 @@ function requireImageBlurSvg () {
34433
34442
  const std = 20;
34434
34443
  const svgWidth = blurWidth ? blurWidth * 40 : widthInt;
34435
34444
  const svgHeight = blurHeight ? blurHeight * 40 : heightInt;
34436
- const viewBox = svgWidth && svgHeight ? "viewBox='0 0 " + svgWidth + " " + svgHeight + "'" : "";
34437
- const preserveAspectRatio = viewBox ? "none" : objectFit === "contain" ? "xMidYMid" : objectFit === "cover" ? "xMidYMid slice" : "none";
34445
+ const viewBox = svgWidth && svgHeight ? "viewBox='0 0 " + svgWidth + " " + svgHeight + "'" : '';
34446
+ const preserveAspectRatio = viewBox ? 'none' : objectFit === 'contain' ? 'xMidYMid' : objectFit === 'cover' ? 'xMidYMid slice' : 'none';
34438
34447
  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";
34439
34448
  }
34440
34449
 
@@ -34469,11 +34478,11 @@ function requireImageConfig () {
34469
34478
  }
34470
34479
  });
34471
34480
  const VALID_LOADERS = [
34472
- "default",
34473
- "imgix",
34474
- "cloudinary",
34475
- "akamai",
34476
- "custom"
34481
+ 'default',
34482
+ 'imgix',
34483
+ 'cloudinary',
34484
+ 'akamai',
34485
+ 'custom'
34477
34486
  ];
34478
34487
  const imageConfigDefault = {
34479
34488
  deviceSizes: [
@@ -34496,18 +34505,20 @@ function requireImageConfig () {
34496
34505
  256,
34497
34506
  384
34498
34507
  ],
34499
- path: "/_next/image",
34500
- loader: "default",
34501
- loaderFile: "",
34508
+ path: '/_next/image',
34509
+ loader: 'default',
34510
+ loaderFile: '',
34502
34511
  domains: [],
34503
34512
  disableStaticImages: false,
34504
34513
  minimumCacheTTL: 60,
34505
34514
  formats: [
34506
- "image/webp"
34515
+ 'image/webp'
34507
34516
  ],
34517
+ maximumDiskCacheSize: undefined,
34518
+ maximumResponseBody: 50000000,
34508
34519
  dangerouslyAllowSVG: false,
34509
34520
  contentSecurityPolicy: "script-src 'none'; frame-src 'none'; sandbox;",
34510
- contentDispositionType: "inline",
34521
+ contentDispositionType: 'attachment',
34511
34522
  localPatterns: undefined,
34512
34523
  remotePatterns: [],
34513
34524
  qualities: undefined,
@@ -34538,8 +34549,16 @@ function requireGetImgProps () {
34538
34549
  const _imageblursvg = requireImageBlurSvg();
34539
34550
  const _imageconfig = requireImageConfig();
34540
34551
  const VALID_LOADING_VALUES = [
34541
- "lazy",
34542
- "eager",
34552
+ 'lazy',
34553
+ 'eager',
34554
+ undefined
34555
+ ];
34556
+ // Object-fit values that are not valid background-size values
34557
+ const INVALID_BACKGROUND_SIZE_VALUES = [
34558
+ '-moz-initial',
34559
+ 'fill',
34560
+ 'none',
34561
+ 'scale-down',
34543
34562
  undefined
34544
34563
  ];
34545
34564
  function isStaticRequire(src) {
@@ -34549,18 +34568,18 @@ function requireGetImgProps () {
34549
34568
  return src.src !== undefined;
34550
34569
  }
34551
34570
  function isStaticImport(src) {
34552
- return typeof src === "object" && (isStaticRequire(src) || isStaticImageData(src));
34571
+ return !!src && typeof src === 'object' && (isStaticRequire(src) || isStaticImageData(src));
34553
34572
  }
34554
34573
  const allImgs = new Map();
34555
34574
  let perfObserver;
34556
34575
  function getInt(x) {
34557
- if (typeof x === "undefined") {
34576
+ if (typeof x === 'undefined') {
34558
34577
  return x;
34559
34578
  }
34560
- if (typeof x === "number") {
34579
+ if (typeof x === 'number') {
34561
34580
  return Number.isFinite(x) ? x : NaN;
34562
34581
  }
34563
- if (typeof x === "string" && /^[0-9]+$/.test(x)) {
34582
+ if (typeof x === 'string' && /^[0-9]+$/.test(x)) {
34564
34583
  return parseInt(x, 10);
34565
34584
  }
34566
34585
  return NaN;
@@ -34578,18 +34597,18 @@ function requireGetImgProps () {
34578
34597
  const smallestRatio = Math.min(...percentSizes) * 0.01;
34579
34598
  return {
34580
34599
  widths: allSizes.filter((s)=>s >= deviceSizes[0] * smallestRatio),
34581
- kind: "w"
34600
+ kind: 'w'
34582
34601
  };
34583
34602
  }
34584
34603
  return {
34585
34604
  widths: allSizes,
34586
- kind: "w"
34605
+ kind: 'w'
34587
34606
  };
34588
34607
  }
34589
- if (typeof width !== "number") {
34608
+ if (typeof width !== 'number') {
34590
34609
  return {
34591
34610
  widths: deviceSizes,
34592
- kind: "w"
34611
+ kind: 'w'
34593
34612
  };
34594
34613
  }
34595
34614
  const widths = [
@@ -34608,7 +34627,7 @@ function requireGetImgProps () {
34608
34627
  ];
34609
34628
  return {
34610
34629
  widths,
34611
- kind: "x"
34630
+ kind: 'x'
34612
34631
  };
34613
34632
  }
34614
34633
  function generateImgAttrs(param) {
@@ -34623,13 +34642,13 @@ function requireGetImgProps () {
34623
34642
  const { widths, kind } = getWidths(config, width, sizes);
34624
34643
  const last = widths.length - 1;
34625
34644
  return {
34626
- sizes: !sizes && kind === "w" ? "100vw" : sizes,
34645
+ sizes: !sizes && kind === 'w' ? '100vw' : sizes,
34627
34646
  srcSet: widths.map((w, i)=>loader({
34628
34647
  config,
34629
34648
  src,
34630
34649
  quality,
34631
34650
  width: w
34632
- }) + " " + (kind === "w" ? w : i + 1) + kind).join(", "),
34651
+ }) + " " + (kind === 'w' ? w : i + 1) + kind).join(', '),
34633
34652
  // It's intended to keep `src` the last attribute because React updates
34634
34653
  // attributes in order. If we keep `src` the first one, Safari will
34635
34654
  // immediately start to fetch `src`, before `sizes` and `srcSet` are even
@@ -34645,11 +34664,11 @@ function requireGetImgProps () {
34645
34664
  };
34646
34665
  }
34647
34666
  function getImgProps(param, _state) {
34648
- 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;
34667
+ 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;
34649
34668
  const { imgConf, showAltText, blurComplete, defaultLoader } = _state;
34650
34669
  let config;
34651
34670
  let c = imgConf || _imageconfig.imageConfigDefault;
34652
- if ("allSizes" in c) {
34671
+ if ('allSizes' in c) {
34653
34672
  config = c;
34654
34673
  } else {
34655
34674
  var _c_qualities;
@@ -34666,8 +34685,12 @@ function requireGetImgProps () {
34666
34685
  qualities
34667
34686
  };
34668
34687
  }
34669
- if (typeof defaultLoader === "undefined") {
34670
- throw new Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config");
34688
+ if (typeof defaultLoader === 'undefined') {
34689
+ 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", {
34690
+ value: "E163",
34691
+ enumerable: false,
34692
+ configurable: true
34693
+ });
34671
34694
  }
34672
34695
  let loader = rest.loader || defaultLoader;
34673
34696
  // Remove property so it's not spread on <img> element
@@ -34675,10 +34698,14 @@ function requireGetImgProps () {
34675
34698
  delete rest.srcSet;
34676
34699
  // This special value indicates that the user
34677
34700
  // didn't define a "loader" prop or "loader" config.
34678
- const isDefaultLoader = "__next_img_default" in loader;
34701
+ const isDefaultLoader = '__next_img_default' in loader;
34679
34702
  if (isDefaultLoader) {
34680
- if (config.loader === "custom") {
34681
- throw new Error('Image with src "' + src + '" is missing "loader" prop.' + "\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader");
34703
+ if (config.loader === 'custom') {
34704
+ 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", {
34705
+ value: "E252",
34706
+ enumerable: false,
34707
+ configurable: true
34708
+ });
34682
34709
  }
34683
34710
  } else {
34684
34711
  // The user defined a "loader" prop or config.
@@ -34691,22 +34718,22 @@ function requireGetImgProps () {
34691
34718
  };
34692
34719
  }
34693
34720
  if (layout) {
34694
- if (layout === "fill") {
34721
+ if (layout === 'fill') {
34695
34722
  fill = true;
34696
34723
  }
34697
34724
  const layoutToStyle = {
34698
34725
  intrinsic: {
34699
- maxWidth: "100%",
34700
- height: "auto"
34726
+ maxWidth: '100%',
34727
+ height: 'auto'
34701
34728
  },
34702
34729
  responsive: {
34703
- width: "100%",
34704
- height: "auto"
34730
+ width: '100%',
34731
+ height: 'auto'
34705
34732
  }
34706
34733
  };
34707
34734
  const layoutToSizes = {
34708
- responsive: "100vw",
34709
- fill: "100vw"
34735
+ responsive: '100vw',
34736
+ fill: '100vw'
34710
34737
  };
34711
34738
  const layoutStyle = layoutToStyle[layout];
34712
34739
  if (layoutStyle) {
@@ -34720,7 +34747,7 @@ function requireGetImgProps () {
34720
34747
  sizes = layoutSizes;
34721
34748
  }
34722
34749
  }
34723
- let staticSrc = "";
34750
+ let staticSrc = '';
34724
34751
  let widthInt = getInt(width);
34725
34752
  let heightInt = getInt(height);
34726
34753
  let blurWidth;
@@ -34728,10 +34755,18 @@ function requireGetImgProps () {
34728
34755
  if (isStaticImport(src)) {
34729
34756
  const staticImageData = isStaticRequire(src) ? src.default : src;
34730
34757
  if (!staticImageData.src) {
34731
- throw 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));
34758
+ 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", {
34759
+ value: "E460",
34760
+ enumerable: false,
34761
+ configurable: true
34762
+ });
34732
34763
  }
34733
34764
  if (!staticImageData.height || !staticImageData.width) {
34734
- throw 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));
34765
+ 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", {
34766
+ value: "E48",
34767
+ enumerable: false,
34768
+ configurable: true
34769
+ });
34735
34770
  }
34736
34771
  blurWidth = staticImageData.blurWidth;
34737
34772
  blurHeight = staticImageData.blurHeight;
@@ -34750,9 +34785,9 @@ function requireGetImgProps () {
34750
34785
  }
34751
34786
  }
34752
34787
  }
34753
- src = typeof src === "string" ? src : staticSrc;
34754
- let isLazy = !priority && (loading === "lazy" || typeof loading === "undefined");
34755
- if (!src || src.startsWith("data:") || src.startsWith("blob:")) {
34788
+ src = typeof src === 'string' ? src : staticSrc;
34789
+ let isLazy = !priority && (loading === 'lazy' || typeof loading === 'undefined');
34790
+ if (!src || src.startsWith('data:') || src.startsWith('blob:')) {
34756
34791
  // https://developer.mozilla.org/docs/Web/HTTP/Basics_of_HTTP/Data_URIs
34757
34792
  unoptimized = true;
34758
34793
  isLazy = false;
@@ -34760,18 +34795,20 @@ function requireGetImgProps () {
34760
34795
  if (config.unoptimized) {
34761
34796
  unoptimized = true;
34762
34797
  }
34763
- if (isDefaultLoader && src.endsWith(".svg") && !config.dangerouslyAllowSVG) {
34798
+ if (isDefaultLoader && !config.dangerouslyAllowSVG && src.split('?', 1)[0].endsWith('.svg')) {
34764
34799
  // Special case to make svg serve as-is to avoid proxying
34765
34800
  // through the built-in Image Optimization API.
34766
34801
  unoptimized = true;
34767
34802
  }
34768
- if (priority) {
34769
- fetchPriority = "high";
34770
- }
34771
34803
  const qualityInt = getInt(quality);
34772
- if (process.env.NODE_ENV !== "production") {
34773
- if (config.output === "export" && isDefaultLoader && !unoptimized) {
34774
- throw 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");
34804
+ if (process.env.NODE_ENV !== 'production') {
34805
+ var _config_localPatterns;
34806
+ if (config.output === 'export' && isDefaultLoader && !unoptimized) {
34807
+ 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", {
34808
+ value: "E500",
34809
+ enumerable: false,
34810
+ configurable: true
34811
+ });
34775
34812
  }
34776
34813
  if (!src) {
34777
34814
  // React doesn't show the stack trace and there's
@@ -34781,58 +34818,132 @@ function requireGetImgProps () {
34781
34818
  } else {
34782
34819
  if (fill) {
34783
34820
  if (width) {
34784
- throw new Error('Image with src "' + src + '" has both "width" and "fill" properties. Only one should be used.');
34821
+ throw Object.defineProperty(new Error('Image with src "' + src + '" has both "width" and "fill" properties. Only one should be used.'), "__NEXT_ERROR_CODE", {
34822
+ value: "E96",
34823
+ enumerable: false,
34824
+ configurable: true
34825
+ });
34785
34826
  }
34786
34827
  if (height) {
34787
- throw new Error('Image with src "' + src + '" has both "height" and "fill" properties. Only one should be used.');
34828
+ throw Object.defineProperty(new Error('Image with src "' + src + '" has both "height" and "fill" properties. Only one should be used.'), "__NEXT_ERROR_CODE", {
34829
+ value: "E115",
34830
+ enumerable: false,
34831
+ configurable: true
34832
+ });
34788
34833
  }
34789
- if ((style == null ? void 0 : style.position) && style.position !== "absolute") {
34790
- throw new Error('Image with src "' + src + '" has both "fill" and "style.position" properties. Images with "fill" always use position absolute - it cannot be modified.');
34834
+ if ((style == null ? void 0 : style.position) && style.position !== 'absolute') {
34835
+ 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", {
34836
+ value: "E216",
34837
+ enumerable: false,
34838
+ configurable: true
34839
+ });
34791
34840
  }
34792
- if ((style == null ? void 0 : style.width) && style.width !== "100%") {
34793
- throw new Error('Image with src "' + src + '" has both "fill" and "style.width" properties. Images with "fill" always use width 100% - it cannot be modified.');
34841
+ if ((style == null ? void 0 : style.width) && style.width !== '100%') {
34842
+ 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", {
34843
+ value: "E73",
34844
+ enumerable: false,
34845
+ configurable: true
34846
+ });
34794
34847
  }
34795
- if ((style == null ? void 0 : style.height) && style.height !== "100%") {
34796
- throw new Error('Image with src "' + src + '" has both "fill" and "style.height" properties. Images with "fill" always use height 100% - it cannot be modified.');
34848
+ if ((style == null ? void 0 : style.height) && style.height !== '100%') {
34849
+ 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", {
34850
+ value: "E404",
34851
+ enumerable: false,
34852
+ configurable: true
34853
+ });
34797
34854
  }
34798
34855
  } else {
34799
- if (typeof widthInt === "undefined") {
34800
- throw new Error('Image with src "' + src + '" is missing required "width" property.');
34856
+ if (typeof widthInt === 'undefined') {
34857
+ throw Object.defineProperty(new Error('Image with src "' + src + '" is missing required "width" property.'), "__NEXT_ERROR_CODE", {
34858
+ value: "E451",
34859
+ enumerable: false,
34860
+ configurable: true
34861
+ });
34801
34862
  } else if (isNaN(widthInt)) {
34802
- throw new Error('Image with src "' + src + '" has invalid "width" property. Expected a numeric value in pixels but received "' + width + '".');
34863
+ 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", {
34864
+ value: "E66",
34865
+ enumerable: false,
34866
+ configurable: true
34867
+ });
34803
34868
  }
34804
- if (typeof heightInt === "undefined") {
34805
- throw new Error('Image with src "' + src + '" is missing required "height" property.');
34869
+ if (typeof heightInt === 'undefined') {
34870
+ throw Object.defineProperty(new Error('Image with src "' + src + '" is missing required "height" property.'), "__NEXT_ERROR_CODE", {
34871
+ value: "E397",
34872
+ enumerable: false,
34873
+ configurable: true
34874
+ });
34806
34875
  } else if (isNaN(heightInt)) {
34807
- throw new Error('Image with src "' + src + '" has invalid "height" property. Expected a numeric value in pixels but received "' + height + '".');
34876
+ 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", {
34877
+ value: "E444",
34878
+ enumerable: false,
34879
+ configurable: true
34880
+ });
34881
+ }
34882
+ // eslint-disable-next-line no-control-regex
34883
+ if (/^[\x00-\x20]/.test(src)) {
34884
+ 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", {
34885
+ value: "E176",
34886
+ enumerable: false,
34887
+ configurable: true
34888
+ });
34889
+ }
34890
+ // eslint-disable-next-line no-control-regex
34891
+ if (/[\x00-\x20]$/.test(src)) {
34892
+ 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", {
34893
+ value: "E21",
34894
+ enumerable: false,
34895
+ configurable: true
34896
+ });
34808
34897
  }
34809
34898
  }
34810
34899
  }
34811
34900
  if (!VALID_LOADING_VALUES.includes(loading)) {
34812
- throw new Error('Image with src "' + src + '" has invalid "loading" property. Provided "' + loading + '" should be one of ' + VALID_LOADING_VALUES.map(String).join(",") + ".");
34901
+ 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", {
34902
+ value: "E357",
34903
+ enumerable: false,
34904
+ configurable: true
34905
+ });
34813
34906
  }
34814
- if (priority && loading === "lazy") {
34815
- throw new Error('Image with src "' + src + '" has both "priority" and "loading=\'lazy\'" properties. Only one should be used.');
34907
+ if (priority && loading === 'lazy') {
34908
+ throw Object.defineProperty(new Error('Image with src "' + src + '" has both "priority" and "loading=\'lazy\'" properties. Only one should be used.'), "__NEXT_ERROR_CODE", {
34909
+ value: "E218",
34910
+ enumerable: false,
34911
+ configurable: true
34912
+ });
34816
34913
  }
34817
- if (placeholder !== "empty" && placeholder !== "blur" && !placeholder.startsWith("data:image/")) {
34818
- throw new Error('Image with src "' + src + '" has invalid "placeholder" property "' + placeholder + '".');
34914
+ if (placeholder !== 'empty' && placeholder !== 'blur' && !placeholder.startsWith('data:image/')) {
34915
+ throw Object.defineProperty(new Error('Image with src "' + src + '" has invalid "placeholder" property "' + placeholder + '".'), "__NEXT_ERROR_CODE", {
34916
+ value: "E431",
34917
+ enumerable: false,
34918
+ configurable: true
34919
+ });
34819
34920
  }
34820
- if (placeholder !== "empty") {
34921
+ if (placeholder !== 'empty') {
34821
34922
  if (widthInt && heightInt && widthInt * heightInt < 1600) {
34822
34923
  (0, _warnonce.warnOnce)('Image with src "' + src + '" is smaller than 40x40. Consider removing the "placeholder" property to improve performance.');
34823
34924
  }
34824
34925
  }
34825
- if (placeholder === "blur" && !blurDataURL) {
34926
+ if (qualityInt && qualityInt !== 75 && !config.qualities) {
34927
+ (0, _warnonce.warnOnce)('Image with src "' + src + '" is using quality "' + qualityInt + '" which is not configured in images.qualities. This config will be required starting in Next.js 16.' + "\nRead more: https://nextjs.org/docs/messages/next-image-unconfigured-qualities");
34928
+ }
34929
+ if (src.startsWith('/') && src.includes('?') && (!(config == null ? void 0 : (_config_localPatterns = config.localPatterns) == null ? void 0 : _config_localPatterns.length) || config.localPatterns.length === 1 && config.localPatterns[0].pathname === '/_next/static/media/**')) {
34930
+ (0, _warnonce.warnOnce)('Image with src "' + src + '" is using a query string which is not configured in images.localPatterns. This config will be required starting in Next.js 16.' + "\nRead more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns");
34931
+ }
34932
+ if (placeholder === 'blur' && !blurDataURL) {
34826
34933
  const VALID_BLUR_EXT = [
34827
- "jpeg",
34828
- "png",
34829
- "webp",
34830
- "avif"
34934
+ 'jpeg',
34935
+ 'png',
34936
+ 'webp',
34937
+ 'avif'
34831
34938
  ] // should match next-image-loader
34832
34939
  ;
34833
- throw new Error('Image with src "' + src + '" has "placeholder=\'blur\'" property but is missing the "blurDataURL" property.\n Possible solutions:\n - Add a "blurDataURL" property, the contents should be a small Data URL to represent the image\n - 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');
34940
+ throw Object.defineProperty(new Error('Image with src "' + src + '" has "placeholder=\'blur\'" property but is missing the "blurDataURL" property.\n Possible solutions:\n - Add a "blurDataURL" property, the contents should be a small Data URL to represent the image\n - 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", {
34941
+ value: "E371",
34942
+ enumerable: false,
34943
+ configurable: true
34944
+ });
34834
34945
  }
34835
- if ("ref" in rest) {
34946
+ if ('ref' in rest) {
34836
34947
  (0, _warnonce.warnOnce)('Image with src "' + src + '" is using unsupported "ref" property. Consider using the "onLoad" property instead.');
34837
34948
  }
34838
34949
  if (!unoptimized && !isDefaultLoader) {
@@ -34864,14 +34975,14 @@ function requireGetImgProps () {
34864
34975
  (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");
34865
34976
  }
34866
34977
  }
34867
- if (typeof window !== "undefined" && !perfObserver && window.PerformanceObserver) {
34978
+ if (typeof window !== 'undefined' && !perfObserver && window.PerformanceObserver) {
34868
34979
  perfObserver = new PerformanceObserver((entryList)=>{
34869
34980
  for (const entry of entryList.getEntries()){
34870
34981
  var _entry_element;
34871
34982
  // @ts-ignore - missing "LargestContentfulPaint" class with "element" prop
34872
- const imgSrc = (entry == null ? void 0 : (_entry_element = entry.element) == null ? void 0 : _entry_element.src) || "";
34983
+ const imgSrc = (entry == null ? void 0 : (_entry_element = entry.element) == null ? void 0 : _entry_element.src) || '';
34873
34984
  const lcpImage = allImgs.get(imgSrc);
34874
- if (lcpImage && !lcpImage.priority && lcpImage.placeholder === "empty" && !lcpImage.src.startsWith("data:") && !lcpImage.src.startsWith("blob:")) {
34985
+ if (lcpImage && !lcpImage.priority && lcpImage.placeholder === 'empty' && !lcpImage.src.startsWith('data:') && !lcpImage.src.startsWith('blob:')) {
34875
34986
  // https://web.dev/lcp/#measure-lcp-in-javascript
34876
34987
  (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");
34877
34988
  }
@@ -34879,7 +34990,7 @@ function requireGetImgProps () {
34879
34990
  });
34880
34991
  try {
34881
34992
  perfObserver.observe({
34882
- type: "largest-contentful-paint",
34993
+ type: 'largest-contentful-paint',
34883
34994
  buffered: true
34884
34995
  });
34885
34996
  } catch (err) {
@@ -34889,9 +35000,9 @@ function requireGetImgProps () {
34889
35000
  }
34890
35001
  }
34891
35002
  const imgStyle = Object.assign(fill ? {
34892
- position: "absolute",
34893
- height: "100%",
34894
- width: "100%",
35003
+ position: 'absolute',
35004
+ height: '100%',
35005
+ width: '100%',
34895
35006
  left: 0,
34896
35007
  top: 0,
34897
35008
  right: 0,
@@ -34899,25 +35010,27 @@ function requireGetImgProps () {
34899
35010
  objectFit,
34900
35011
  objectPosition
34901
35012
  } : {}, showAltText ? {} : {
34902
- color: "transparent"
35013
+ color: 'transparent'
34903
35014
  }, style);
34904
- const backgroundImage = !blurComplete && placeholder !== "empty" ? placeholder === "blur" ? 'url("data:image/svg+xml;charset=utf-8,' + (0, _imageblursvg.getImageBlurSvg)({
35015
+ const backgroundImage = !blurComplete && placeholder !== 'empty' ? placeholder === 'blur' ? 'url("data:image/svg+xml;charset=utf-8,' + (0, _imageblursvg.getImageBlurSvg)({
34905
35016
  widthInt,
34906
35017
  heightInt,
34907
35018
  blurWidth,
34908
35019
  blurHeight,
34909
- blurDataURL: blurDataURL || "",
35020
+ blurDataURL: blurDataURL || '',
34910
35021
  objectFit: imgStyle.objectFit
34911
35022
  }) + '")' : 'url("' + placeholder + '")' // assume `data:image/`
34912
35023
  : null;
35024
+ const backgroundSize = !INVALID_BACKGROUND_SIZE_VALUES.includes(imgStyle.objectFit) ? imgStyle.objectFit : imgStyle.objectFit === 'fill' ? '100% 100%' // the background-size equivalent of `fill`
35025
+ : 'cover';
34913
35026
  let placeholderStyle = backgroundImage ? {
34914
- backgroundSize: imgStyle.objectFit || "cover",
34915
- backgroundPosition: imgStyle.objectPosition || "50% 50%",
34916
- backgroundRepeat: "no-repeat",
35027
+ backgroundSize,
35028
+ backgroundPosition: imgStyle.objectPosition || '50% 50%',
35029
+ backgroundRepeat: 'no-repeat',
34917
35030
  backgroundImage
34918
35031
  } : {};
34919
- if (process.env.NODE_ENV === "development") {
34920
- if (placeholderStyle.backgroundImage && placeholder === "blur" && (blurDataURL == null ? void 0 : blurDataURL.startsWith("/"))) {
35032
+ if (process.env.NODE_ENV === 'development') {
35033
+ if (placeholderStyle.backgroundImage && placeholder === 'blur' && (blurDataURL == null ? void 0 : blurDataURL.startsWith('/'))) {
34921
35034
  // During `next dev`, we don't want to generate blur placeholders with webpack
34922
35035
  // because it can delay starting the dev server. Instead, `next-image-loader.js`
34923
35036
  // will inline a special url to lazily generate the blur placeholder at request time.
@@ -34933,8 +35046,8 @@ function requireGetImgProps () {
34933
35046
  sizes,
34934
35047
  loader
34935
35048
  });
34936
- if (process.env.NODE_ENV !== "production") {
34937
- if (typeof window !== "undefined") {
35049
+ if (process.env.NODE_ENV !== 'production') {
35050
+ if (typeof window !== 'undefined') {
34938
35051
  let fullUrl;
34939
35052
  try {
34940
35053
  fullUrl = new URL(imgAttributes.src);
@@ -34950,7 +35063,7 @@ function requireGetImgProps () {
34950
35063
  }
34951
35064
  const props = {
34952
35065
  ...rest,
34953
- loading: isLazy ? "lazy" : loading,
35066
+ loading: isLazy ? 'lazy' : loading,
34954
35067
  fetchPriority,
34955
35068
  width: widthInt,
34956
35069
  height: heightInt,
@@ -35001,7 +35114,6 @@ function require_interop_require_wildcard () {
35001
35114
  return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
35002
35115
  })(nodeInterop);
35003
35116
  }
35004
- _interop_require_wildcard._ = _interop_require_wildcard._interop_require_wildcard = _interop_require_wildcard$1;
35005
35117
  function _interop_require_wildcard$1(obj, nodeInterop) {
35006
35118
  if (!nodeInterop && obj && obj.__esModule) return obj;
35007
35119
  if (obj === null || typeof obj !== "object" && typeof obj !== "function") return { default: obj };
@@ -35027,6 +35139,7 @@ function require_interop_require_wildcard () {
35027
35139
 
35028
35140
  return newObj;
35029
35141
  }
35142
+ _interop_require_wildcard._ = _interop_require_wildcard$1;
35030
35143
  return _interop_require_wildcard;
35031
35144
  }
35032
35145
 
@@ -35050,7 +35163,7 @@ function requireSideEffect () {
35050
35163
  }
35051
35164
  });
35052
35165
  const _react = o;
35053
- const isServer = typeof window === "undefined";
35166
+ const isServer = typeof window === 'undefined';
35054
35167
  const useClientOnlyLayoutEffect = isServer ? ()=>{} : _react.useLayoutEffect;
35055
35168
  const useClientOnlyEffect = isServer ? ()=>{} : _react.useEffect;
35056
35169
  function SideEffect(props) {
@@ -35129,8 +35242,8 @@ function requireAmpContext_sharedRuntime () {
35129
35242
  const _interop_require_default = /*@__PURE__*/ require_interop_require_default();
35130
35243
  const _react = /*#__PURE__*/ _interop_require_default._(o);
35131
35244
  const AmpStateContext = _react.default.createContext({});
35132
- if (process.env.NODE_ENV !== "production") {
35133
- AmpStateContext.displayName = "AmpStateContext";
35245
+ if (process.env.NODE_ENV !== 'production') {
35246
+ AmpStateContext.displayName = 'AmpStateContext';
35134
35247
  }
35135
35248
 
35136
35249
 
@@ -35158,8 +35271,8 @@ function requireHeadManagerContext_sharedRuntime () {
35158
35271
  const _interop_require_default = /*@__PURE__*/ require_interop_require_default();
35159
35272
  const _react = /*#__PURE__*/ _interop_require_default._(o);
35160
35273
  const HeadManagerContext = _react.default.createContext({});
35161
- if (process.env.NODE_ENV !== "production") {
35162
- HeadManagerContext.displayName = "HeadManagerContext";
35274
+ if (process.env.NODE_ENV !== 'production') {
35275
+ HeadManagerContext.displayName = 'HeadManagerContext';
35163
35276
  }
35164
35277
 
35165
35278
 
@@ -35200,7 +35313,7 @@ function requireHead () {
35200
35313
  if (hasRequiredHead) return head.exports;
35201
35314
  hasRequiredHead = 1;
35202
35315
  (function (module, exports$1) {
35203
- "use client";
35316
+ 'use client';
35204
35317
  Object.defineProperty(exports$1, "__esModule", {
35205
35318
  value: true
35206
35319
  });
@@ -35232,19 +35345,19 @@ function requireHead () {
35232
35345
  const head = [
35233
35346
  /*#__PURE__*/ (0, _jsxruntime.jsx)("meta", {
35234
35347
  charSet: "utf-8"
35235
- })
35348
+ }, "charset")
35236
35349
  ];
35237
35350
  if (!inAmpMode) {
35238
35351
  head.push(/*#__PURE__*/ (0, _jsxruntime.jsx)("meta", {
35239
35352
  name: "viewport",
35240
35353
  content: "width=device-width"
35241
- }));
35354
+ }, "viewport"));
35242
35355
  }
35243
35356
  return head;
35244
35357
  }
35245
35358
  function onlyReactElement(list, child) {
35246
35359
  // React children can be "string" or "number" in this case we ignore them for backwards compat
35247
- if (typeof child === "string" || typeof child === "number") {
35360
+ if (typeof child === 'string' || typeof child === 'number') {
35248
35361
  return list;
35249
35362
  }
35250
35363
  // Adds support for React.Fragment
@@ -35252,7 +35365,7 @@ function requireHead () {
35252
35365
  return list.concat(// @ts-expect-error @types/react does not remove fragments but this could also return ReactPortal[]
35253
35366
  _react.default.Children.toArray(child.props.children).reduce(// @ts-expect-error @types/react does not remove fragments but this could also return ReactPortal[]
35254
35367
  (fragmentList, fragmentChild)=>{
35255
- if (typeof fragmentChild === "string" || typeof fragmentChild === "number") {
35368
+ if (typeof fragmentChild === 'string' || typeof fragmentChild === 'number') {
35256
35369
  return fragmentList;
35257
35370
  }
35258
35371
  return fragmentList.concat(fragmentChild);
@@ -35261,10 +35374,10 @@ function requireHead () {
35261
35374
  return list.concat(child);
35262
35375
  }
35263
35376
  const METATYPES = [
35264
- "name",
35265
- "httpEquiv",
35266
- "charSet",
35267
- "itemProp"
35377
+ 'name',
35378
+ 'httpEquiv',
35379
+ 'charSet',
35380
+ 'itemProp'
35268
35381
  ];
35269
35382
  /*
35270
35383
  returns a function for filtering head child elements
@@ -35278,9 +35391,9 @@ function requireHead () {
35278
35391
  return (h)=>{
35279
35392
  let isUnique = true;
35280
35393
  let hasKey = false;
35281
- if (h.key && typeof h.key !== "number" && h.key.indexOf("$") > 0) {
35394
+ if (h.key && typeof h.key !== 'number' && h.key.indexOf('$') > 0) {
35282
35395
  hasKey = true;
35283
- const key = h.key.slice(h.key.indexOf("$") + 1);
35396
+ const key = h.key.slice(h.key.indexOf('$') + 1);
35284
35397
  if (keys.has(key)) {
35285
35398
  isUnique = false;
35286
35399
  } else {
@@ -35289,19 +35402,19 @@ function requireHead () {
35289
35402
  }
35290
35403
  // eslint-disable-next-line default-case
35291
35404
  switch(h.type){
35292
- case "title":
35293
- case "base":
35405
+ case 'title':
35406
+ case 'base':
35294
35407
  if (tags.has(h.type)) {
35295
35408
  isUnique = false;
35296
35409
  } else {
35297
35410
  tags.add(h.type);
35298
35411
  }
35299
35412
  break;
35300
- case "meta":
35413
+ case 'meta':
35301
35414
  for(let i = 0, len = METATYPES.length; i < len; i++){
35302
35415
  const metatype = METATYPES[i];
35303
35416
  if (!h.props.hasOwnProperty(metatype)) continue;
35304
- if (metatype === "charSet") {
35417
+ if (metatype === 'charSet') {
35305
35418
  if (metaTypes.has(metatype)) {
35306
35419
  isUnique = false;
35307
35420
  } else {
@@ -35310,7 +35423,7 @@ function requireHead () {
35310
35423
  } else {
35311
35424
  const category = h.props[metatype];
35312
35425
  const categories = metaCategories[metatype] || new Set();
35313
- if ((metatype !== "name" || !hasKey) && categories.has(category)) {
35426
+ if ((metatype !== 'name' || !hasKey) && categories.has(category)) {
35314
35427
  isUnique = false;
35315
35428
  } else {
35316
35429
  categories.add(category);
@@ -35330,29 +35443,13 @@ function requireHead () {
35330
35443
  const { inAmpMode } = props;
35331
35444
  return headChildrenElements.reduce(onlyReactElement, []).reverse().concat(defaultHead(inAmpMode).reverse()).filter(unique()).reverse().map((c, i)=>{
35332
35445
  const key = c.key || i;
35333
- if (process.env.NODE_ENV !== "development" && process.env.__NEXT_OPTIMIZE_FONTS && !inAmpMode) {
35334
- if (c.type === "link" && c.props["href"] && // TODO(prateekbh@): Replace this with const from `constants` when the tree shaking works.
35335
- [
35336
- "https://fonts.googleapis.com/css",
35337
- "https://use.typekit.net/"
35338
- ].some((url)=>c.props["href"].startsWith(url))) {
35339
- const newProps = {
35340
- ...c.props || {}
35341
- };
35342
- newProps["data-href"] = newProps["href"];
35343
- newProps["href"] = undefined;
35344
- // Add this attribute to make it easy to identify optimized tags
35345
- newProps["data-optimized-fonts"] = true;
35346
- return /*#__PURE__*/ _react.default.cloneElement(c, newProps);
35347
- }
35348
- }
35349
- if (process.env.NODE_ENV === "development") {
35446
+ if (process.env.NODE_ENV === 'development') {
35350
35447
  // omit JSON-LD structured data snippets from the warning
35351
- if (c.type === "script" && c.props["type"] !== "application/ld+json") {
35352
- const srcMessage = c.props["src"] ? '<script> tag with src="' + c.props["src"] + '"' : "inline <script>";
35448
+ if (c.type === 'script' && c.props['type'] !== 'application/ld+json') {
35449
+ const srcMessage = c.props['src'] ? '<script> tag with src="' + c.props['src'] + '"' : "inline <script>";
35353
35450
  (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");
35354
- } else if (c.type === "link" && c.props["rel"] === "stylesheet") {
35355
- (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');
35451
+ } else if (c.type === 'link' && c.props['rel'] === 'stylesheet') {
35452
+ (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');
35356
35453
  }
35357
35454
  }
35358
35455
  return /*#__PURE__*/ _react.default.cloneElement(c, {
@@ -35408,8 +35505,8 @@ function requireImageConfigContext_sharedRuntime () {
35408
35505
  const _react = /*#__PURE__*/ _interop_require_default._(o);
35409
35506
  const _imageconfig = requireImageConfig();
35410
35507
  const ImageConfigContext = _react.default.createContext(_imageconfig.imageConfigDefault);
35411
- if (process.env.NODE_ENV !== "production") {
35412
- ImageConfigContext.displayName = "ImageConfigContext";
35508
+ if (process.env.NODE_ENV !== 'production') {
35509
+ ImageConfigContext.displayName = 'ImageConfigContext';
35413
35510
  }
35414
35511
 
35415
35512
 
@@ -35437,8 +35534,8 @@ function requireRouterContext_sharedRuntime () {
35437
35534
  const _interop_require_default = /*@__PURE__*/ require_interop_require_default();
35438
35535
  const _react = /*#__PURE__*/ _interop_require_default._(o);
35439
35536
  const RouterContext = _react.default.createContext(null);
35440
- if (process.env.NODE_ENV !== "production") {
35441
- RouterContext.displayName = "RouterContext";
35537
+ if (process.env.NODE_ENV !== 'production') {
35538
+ RouterContext.displayName = 'RouterContext';
35442
35539
  }
35443
35540
 
35444
35541
 
@@ -35492,7 +35589,7 @@ function requireMatchLocalPattern () {
35492
35589
  }
35493
35590
  }
35494
35591
  var _pattern_pathname;
35495
- if (!(0, _picomatch.makeRe)((_pattern_pathname = pattern.pathname) != null ? _pattern_pathname : "**", {
35592
+ if (!(0, _picomatch.makeRe)((_pattern_pathname = pattern.pathname) != null ? _pattern_pathname : '**', {
35496
35593
  dot: true
35497
35594
  }).test(url.pathname)) {
35498
35595
  return false;
@@ -35504,7 +35601,7 @@ function requireMatchLocalPattern () {
35504
35601
  // if the user didn't define "localPatterns", we allow all local images
35505
35602
  return true;
35506
35603
  }
35507
- const url = new URL(urlPathAndQuery, "http://n");
35604
+ const url = new URL(urlPathAndQuery, 'http://n');
35508
35605
  return localPatterns.some((p)=>matchLocalPattern(p, url));
35509
35606
  }
35510
35607
 
@@ -35541,8 +35638,7 @@ function requireMatchRemotePattern () {
35541
35638
  const _picomatch = requirePicomatch();
35542
35639
  function matchRemotePattern(pattern, url) {
35543
35640
  if (pattern.protocol !== undefined) {
35544
- const actualProto = url.protocol.slice(0, -1);
35545
- if (pattern.protocol !== actualProto) {
35641
+ if (pattern.protocol.replace(/:$/, '') !== url.protocol.replace(/:$/, '')) {
35546
35642
  return false;
35547
35643
  }
35548
35644
  }
@@ -35552,7 +35648,11 @@ function requireMatchRemotePattern () {
35552
35648
  }
35553
35649
  }
35554
35650
  if (pattern.hostname === undefined) {
35555
- throw new Error("Pattern should define hostname but found\n" + JSON.stringify(pattern));
35651
+ throw Object.defineProperty(new Error("Pattern should define hostname but found\n" + JSON.stringify(pattern)), "__NEXT_ERROR_CODE", {
35652
+ value: "E410",
35653
+ enumerable: false,
35654
+ configurable: true
35655
+ });
35556
35656
  } else {
35557
35657
  if (!(0, _picomatch.makeRe)(pattern.hostname).test(url.hostname)) {
35558
35658
  return false;
@@ -35565,7 +35665,7 @@ function requireMatchRemotePattern () {
35565
35665
  }
35566
35666
  var _pattern_pathname;
35567
35667
  // Should be the same as writeImagesManifest()
35568
- if (!(0, _picomatch.makeRe)((_pattern_pathname = pattern.pathname) != null ? _pattern_pathname : "**", {
35668
+ if (!(0, _picomatch.makeRe)((_pattern_pathname = pattern.pathname) != null ? _pattern_pathname : '**', {
35569
35669
  dot: true
35570
35670
  }).test(url.pathname)) {
35571
35671
  return false;
@@ -35600,54 +35700,78 @@ function requireImageLoader () {
35600
35700
  function defaultLoader(param) {
35601
35701
  let { config, src, width, quality } = param;
35602
35702
  var _config_qualities;
35603
- if (process.env.NODE_ENV !== "production") {
35703
+ if (process.env.NODE_ENV !== 'production') {
35604
35704
  const missingValues = [];
35605
35705
  // these should always be provided but make sure they are
35606
- if (!src) missingValues.push("src");
35607
- if (!width) missingValues.push("width");
35706
+ if (!src) missingValues.push('src');
35707
+ if (!width) missingValues.push('width');
35608
35708
  if (missingValues.length > 0) {
35609
- throw 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({
35709
+ 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({
35610
35710
  src,
35611
35711
  width,
35612
35712
  quality
35613
- }));
35713
+ })), "__NEXT_ERROR_CODE", {
35714
+ value: "E188",
35715
+ enumerable: false,
35716
+ configurable: true
35717
+ });
35614
35718
  }
35615
- if (src.startsWith("//")) {
35616
- throw new Error('Failed to parse src "' + src + '" on `next/image`, protocol-relative URL (//) must be changed to an absolute URL (http:// or https://)');
35719
+ if (src.startsWith('//')) {
35720
+ 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", {
35721
+ value: "E360",
35722
+ enumerable: false,
35723
+ configurable: true
35724
+ });
35617
35725
  }
35618
- if (src.startsWith("/") && config.localPatterns) {
35619
- if (process.env.NODE_ENV !== "test" && // micromatch isn't compatible with edge runtime
35620
- process.env.NEXT_RUNTIME !== "edge") {
35726
+ if (src.startsWith('/') && config.localPatterns) {
35727
+ if (process.env.NODE_ENV !== 'test' && // micromatch isn't compatible with edge runtime
35728
+ process.env.NEXT_RUNTIME !== 'edge') {
35621
35729
  // We use dynamic require because this should only error in development
35622
35730
  const { hasLocalMatch } = requireMatchLocalPattern();
35623
35731
  if (!hasLocalMatch(config.localPatterns, src)) {
35624
- throw new Error("Invalid src prop (" + src + ") on `next/image` does not match `images.localPatterns` configured in your `next.config.js`\n" + "See more info: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns");
35732
+ throw Object.defineProperty(new Error("Invalid src prop (" + src + ") on `next/image` does not match `images.localPatterns` configured in your `next.config.js`\n" + "See more info: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns"), "__NEXT_ERROR_CODE", {
35733
+ value: "E426",
35734
+ enumerable: false,
35735
+ configurable: true
35736
+ });
35625
35737
  }
35626
35738
  }
35627
35739
  }
35628
- if (!src.startsWith("/") && (config.domains || config.remotePatterns)) {
35740
+ if (!src.startsWith('/') && (config.domains || config.remotePatterns)) {
35629
35741
  let parsedSrc;
35630
35742
  try {
35631
35743
  parsedSrc = new URL(src);
35632
35744
  } catch (err) {
35633
35745
  console.error(err);
35634
- throw 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://)');
35746
+ 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", {
35747
+ value: "E63",
35748
+ enumerable: false,
35749
+ configurable: true
35750
+ });
35635
35751
  }
35636
- if (process.env.NODE_ENV !== "test" && // micromatch isn't compatible with edge runtime
35637
- process.env.NEXT_RUNTIME !== "edge") {
35752
+ if (process.env.NODE_ENV !== 'test' && // micromatch isn't compatible with edge runtime
35753
+ process.env.NEXT_RUNTIME !== 'edge') {
35638
35754
  // We use dynamic require because this should only error in development
35639
35755
  const { hasRemoteMatch } = requireMatchRemotePattern();
35640
35756
  if (!hasRemoteMatch(config.domains, config.remotePatterns, parsedSrc)) {
35641
- throw new Error("Invalid src prop (" + src + ') on `next/image`, hostname "' + parsedSrc.hostname + '" is not configured under images in your `next.config.js`\n' + "See more info: https://nextjs.org/docs/messages/next-image-unconfigured-host");
35757
+ 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`\n' + "See more info: https://nextjs.org/docs/messages/next-image-unconfigured-host"), "__NEXT_ERROR_CODE", {
35758
+ value: "E231",
35759
+ enumerable: false,
35760
+ configurable: true
35761
+ });
35642
35762
  }
35643
35763
  }
35644
35764
  }
35645
35765
  if (quality && config.qualities && !config.qualities.includes(quality)) {
35646
- throw new Error("Invalid quality prop (" + quality + ") on `next/image` does not match `images.qualities` configured in your `next.config.js`\n" + "See more info: https://nextjs.org/docs/messages/next-image-unconfigured-qualities");
35766
+ throw Object.defineProperty(new Error("Invalid quality prop (" + quality + ") on `next/image` does not match `images.qualities` configured in your `next.config.js`\n" + "See more info: https://nextjs.org/docs/messages/next-image-unconfigured-qualities"), "__NEXT_ERROR_CODE", {
35767
+ value: "E623",
35768
+ enumerable: false,
35769
+ configurable: true
35770
+ });
35647
35771
  }
35648
35772
  }
35649
35773
  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;
35650
- return config.path + "?url=" + encodeURIComponent(src) + "&w=" + width + "&q=" + q + (process.env.NEXT_DEPLOYMENT_ID ? "&dpl=" + process.env.NEXT_DEPLOYMENT_ID : "");
35774
+ 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 : '');
35651
35775
  }
35652
35776
  // We use this to determine if the import is the default loader
35653
35777
  // or a custom loader defined by the user in next.config.js
@@ -35659,13 +35783,93 @@ function requireImageLoader () {
35659
35783
  return imageLoader;
35660
35784
  }
35661
35785
 
35786
+ var useMergedRef = {exports: {}};
35787
+
35788
+ var hasRequiredUseMergedRef;
35789
+
35790
+ function requireUseMergedRef () {
35791
+ if (hasRequiredUseMergedRef) return useMergedRef.exports;
35792
+ hasRequiredUseMergedRef = 1;
35793
+ (function (module, exports$1) {
35794
+ Object.defineProperty(exports$1, "__esModule", {
35795
+ value: true
35796
+ });
35797
+ Object.defineProperty(exports$1, "useMergedRef", {
35798
+ enumerable: true,
35799
+ get: function() {
35800
+ return useMergedRef;
35801
+ }
35802
+ });
35803
+ const _react = o;
35804
+ function useMergedRef(refA, refB) {
35805
+ const cleanupA = (0, _react.useRef)(null);
35806
+ const cleanupB = (0, _react.useRef)(null);
35807
+ // NOTE: In theory, we could skip the wrapping if only one of the refs is non-null.
35808
+ // (this happens often if the user doesn't pass a ref to Link/Form/Image)
35809
+ // But this can cause us to leak a cleanup-ref into user code (e.g. via `<Link legacyBehavior>`),
35810
+ // and the user might pass that ref into ref-merging library that doesn't support cleanup refs
35811
+ // (because it hasn't been updated for React 19)
35812
+ // which can then cause things to blow up, because a cleanup-returning ref gets called with `null`.
35813
+ // So in practice, it's safer to be defensive and always wrap the ref, even on React 19.
35814
+ return (0, _react.useCallback)((current)=>{
35815
+ if (current === null) {
35816
+ const cleanupFnA = cleanupA.current;
35817
+ if (cleanupFnA) {
35818
+ cleanupA.current = null;
35819
+ cleanupFnA();
35820
+ }
35821
+ const cleanupFnB = cleanupB.current;
35822
+ if (cleanupFnB) {
35823
+ cleanupB.current = null;
35824
+ cleanupFnB();
35825
+ }
35826
+ } else {
35827
+ if (refA) {
35828
+ cleanupA.current = applyRef(refA, current);
35829
+ }
35830
+ if (refB) {
35831
+ cleanupB.current = applyRef(refB, current);
35832
+ }
35833
+ }
35834
+ }, [
35835
+ refA,
35836
+ refB
35837
+ ]);
35838
+ }
35839
+ function applyRef(refA, current) {
35840
+ if (typeof refA === 'function') {
35841
+ const cleanup = refA(current);
35842
+ if (typeof cleanup === 'function') {
35843
+ return cleanup;
35844
+ } else {
35845
+ return ()=>refA(null);
35846
+ }
35847
+ } else {
35848
+ refA.current = current;
35849
+ return ()=>{
35850
+ refA.current = null;
35851
+ };
35852
+ }
35853
+ }
35854
+
35855
+ if ((typeof exports$1.default === 'function' || (typeof exports$1.default === 'object' && exports$1.default !== null)) && typeof exports$1.default.__esModule === 'undefined') {
35856
+ Object.defineProperty(exports$1.default, '__esModule', { value: true });
35857
+ Object.assign(exports$1.default, exports$1);
35858
+ module.exports = exports$1.default;
35859
+ }
35860
+
35861
+
35862
+ } (useMergedRef, useMergedRef.exports));
35863
+ return useMergedRef.exports;
35864
+ }
35865
+
35662
35866
  var hasRequiredImageComponent;
35663
35867
 
35664
35868
  function requireImageComponent () {
35665
35869
  if (hasRequiredImageComponent) return imageComponent.exports;
35666
35870
  hasRequiredImageComponent = 1;
35667
35871
  (function (module, exports$1) {
35668
- "use client";
35872
+ 'use client';
35669
35873
  Object.defineProperty(exports$1, "__esModule", {
35670
35874
  value: true
35671
35875
  });
@@ -35687,20 +35891,21 @@ function requireImageComponent () {
35687
35891
  const _warnonce = requireWarnOnce();
35688
35892
  const _routercontextsharedruntime = requireRouterContext_sharedRuntime();
35689
35893
  const _imageloader = /*#__PURE__*/ _interop_require_default._(requireImageLoader());
35894
+ const _usemergedref = requireUseMergedRef();
35690
35895
  // This is replaced by webpack define plugin
35691
35896
  const configEnv = process.env.__NEXT_IMAGE_OPTS;
35692
- if (typeof window === "undefined") {
35897
+ if (typeof window === 'undefined') {
35693
35898
  globalThis.__NEXT_IMAGE_IMPORTED = true;
35694
35899
  }
35695
35900
  // See https://stackoverflow.com/q/39777833/266535 for why we use this ref
35696
35901
  // handler instead of the img's onLoad attribute.
35697
35902
  function handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput) {
35698
35903
  const src = img == null ? void 0 : img.src;
35699
- if (!img || img["data-loaded-src"] === src) {
35904
+ if (!img || img['data-loaded-src'] === src) {
35700
35905
  return;
35701
35906
  }
35702
- img["data-loaded-src"] = src;
35703
- const p = "decode" in img ? img.decode() : Promise.resolve();
35907
+ img['data-loaded-src'] = src;
35908
+ const p = 'decode' in img ? img.decode() : Promise.resolve();
35704
35909
  p.catch(()=>{}).then(()=>{
35705
35910
  if (!img.parentElement || !img.isConnected) {
35706
35911
  // Exit early in case of race condition:
@@ -35710,15 +35915,15 @@ function requireImageComponent () {
35710
35915
  // - decode() completes
35711
35916
  return;
35712
35917
  }
35713
- if (placeholder !== "empty") {
35918
+ if (placeholder !== 'empty') {
35714
35919
  setBlurComplete(true);
35715
35920
  }
35716
35921
  if (onLoadRef == null ? void 0 : onLoadRef.current) {
35717
35922
  // Since we don't have the SyntheticEvent here,
35718
35923
  // we must create one with the same shape.
35719
35924
  // See https://reactjs.org/docs/events.html
35720
- const event = new Event("load");
35721
- Object.defineProperty(event, "target", {
35925
+ const event = new Event('load');
35926
+ Object.defineProperty(event, 'target', {
35722
35927
  writable: false,
35723
35928
  value: img
35724
35929
  });
@@ -35745,13 +35950,13 @@ function requireImageComponent () {
35745
35950
  if (onLoadingCompleteRef == null ? void 0 : onLoadingCompleteRef.current) {
35746
35951
  onLoadingCompleteRef.current(img);
35747
35952
  }
35748
- if (process.env.NODE_ENV !== "production") {
35749
- const origSrc = new URL(src, "http://n").searchParams.get("url") || src;
35750
- if (img.getAttribute("data-nimg") === "fill") {
35751
- if (!unoptimized && (!sizesInput || sizesInput === "100vw")) {
35953
+ if (process.env.NODE_ENV !== 'production') {
35954
+ const origSrc = new URL(src, 'http://n').searchParams.get('url') || src;
35955
+ if (img.getAttribute('data-nimg') === 'fill') {
35956
+ if (!unoptimized && (!sizesInput || sizesInput === '100vw')) {
35752
35957
  let widthViewportRatio = img.getBoundingClientRect().width / window.innerWidth;
35753
35958
  if (widthViewportRatio < 0.6) {
35754
- if (sizesInput === "100vw") {
35959
+ if (sizesInput === '100vw') {
35755
35960
  (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');
35756
35961
  } else {
35757
35962
  (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');
@@ -35761,20 +35966,20 @@ function requireImageComponent () {
35761
35966
  if (img.parentElement) {
35762
35967
  const { position } = window.getComputedStyle(img.parentElement);
35763
35968
  const valid = [
35764
- "absolute",
35765
- "fixed",
35766
- "relative"
35969
+ 'absolute',
35970
+ 'fixed',
35971
+ 'relative'
35767
35972
  ];
35768
35973
  if (!valid.includes(position)) {
35769
- (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(",") + ".");
35974
+ (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(',') + ".");
35770
35975
  }
35771
35976
  }
35772
35977
  if (img.height === 0) {
35773
35978
  (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.');
35774
35979
  }
35775
35980
  }
35776
- const heightModified = img.height.toString() !== img.getAttribute("height");
35777
- const widthModified = img.width.toString() !== img.getAttribute("width");
35981
+ const heightModified = img.height.toString() !== img.getAttribute('height');
35982
+ const widthModified = img.width.toString() !== img.getAttribute('width');
35778
35983
  if (heightModified && !widthModified || !heightModified && widthModified) {
35779
35984
  (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.');
35780
35985
  }
@@ -35798,6 +36003,39 @@ function requireImageComponent () {
35798
36003
  }
35799
36004
  const ImageElement = /*#__PURE__*/ (0, _react.forwardRef)((param, forwardedRef)=>{
35800
36005
  let { src, srcSet, sizes, height, width, decoding, className, style, fetchPriority, placeholder, loading, unoptimized, fill, onLoadRef, onLoadingCompleteRef, setBlurComplete, setShowAltText, sizesInput, onLoad, onError, ...rest } = param;
36006
+ const ownRef = (0, _react.useCallback)((img)=>{
36007
+ if (!img) {
36008
+ return;
36009
+ }
36010
+ if (onError) {
36011
+ // If the image has an error before react hydrates, then the error is lost.
36012
+ // The workaround is to wait until the image is mounted which is after hydration,
36013
+ // then we set the src again to trigger the error handler (if there was an error).
36014
+ // eslint-disable-next-line no-self-assign
36015
+ img.src = img.src;
36016
+ }
36017
+ if (process.env.NODE_ENV !== 'production') {
36018
+ if (!src) {
36019
+ console.error('Image is missing required "src" property:', img);
36020
+ }
36021
+ if (img.getAttribute('alt') === null) {
36022
+ console.error('Image is missing required "alt" property. Please add Alternative Text to describe the image for screen readers and search engines.');
36023
+ }
36024
+ }
36025
+ if (img.complete) {
36026
+ handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);
36027
+ }
36028
+ }, [
36029
+ src,
36030
+ placeholder,
36031
+ onLoadRef,
36032
+ onLoadingCompleteRef,
36033
+ setBlurComplete,
36034
+ onError,
36035
+ unoptimized,
36036
+ sizesInput
36037
+ ]);
36038
+ const ref = (0, _usemergedref.useMergedRef)(forwardedRef, ownRef);
35801
36039
  return /*#__PURE__*/ (0, _jsxruntime.jsx)("img", {
35802
36040
  ...rest,
35803
36041
  ...getDynamicProps(fetchPriority),
@@ -35808,7 +36046,7 @@ function requireImageComponent () {
35808
36046
  width: width,
35809
36047
  height: height,
35810
36048
  decoding: decoding,
35811
- "data-nimg": fill ? "fill" : "1",
36049
+ "data-nimg": fill ? 'fill' : '1',
35812
36050
  className: className,
35813
36051
  style: style,
35814
36052
  // It's intended to keep `src` the last attribute because React updates
@@ -35820,46 +36058,7 @@ function requireImageComponent () {
35820
36058
  sizes: sizes,
35821
36059
  srcSet: srcSet,
35822
36060
  src: src,
35823
- ref: (0, _react.useCallback)((img)=>{
35824
- if (forwardedRef) {
35825
- if (typeof forwardedRef === "function") forwardedRef(img);
35826
- else if (typeof forwardedRef === "object") {
35827
- // @ts-ignore - .current is read only it's usually assigned by react internally
35828
- forwardedRef.current = img;
35829
- }
35830
- }
35831
- if (!img) {
35832
- return;
35833
- }
35834
- if (onError) {
35835
- // If the image has an error before react hydrates, then the error is lost.
35836
- // The workaround is to wait until the image is mounted which is after hydration,
35837
- // then we set the src again to trigger the error handler (if there was an error).
35838
- // eslint-disable-next-line no-self-assign
35839
- img.src = img.src;
35840
- }
35841
- if (process.env.NODE_ENV !== "production") {
35842
- if (!src) {
35843
- console.error('Image is missing required "src" property:', img);
35844
- }
35845
- if (img.getAttribute("alt") === null) {
35846
- console.error('Image is missing required "alt" property. Please add Alternative Text to describe the image for screen readers and search engines.');
35847
- }
35848
- }
35849
- if (img.complete) {
35850
- handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);
35851
- }
35852
- }, [
35853
- src,
35854
- placeholder,
35855
- onLoadRef,
35856
- onLoadingCompleteRef,
35857
- setBlurComplete,
35858
- onError,
35859
- unoptimized,
35860
- sizesInput,
35861
- forwardedRef
35862
- ]),
36061
+ ref: ref,
35863
36062
  onLoad: (event)=>{
35864
36063
  const img = event.currentTarget;
35865
36064
  handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);
@@ -35867,7 +36066,7 @@ function requireImageComponent () {
35867
36066
  onError: (event)=>{
35868
36067
  // if the real image fails to load, this will ensure "alt" is visible
35869
36068
  setShowAltText(true);
35870
- if (placeholder !== "empty") {
36069
+ if (placeholder !== 'empty') {
35871
36070
  // If the real image fails to load, this will still remove the placeholder.
35872
36071
  setBlurComplete(true);
35873
36072
  }
@@ -35880,7 +36079,7 @@ function requireImageComponent () {
35880
36079
  function ImagePreload(param) {
35881
36080
  let { isAppRouter, imgAttributes } = param;
35882
36081
  const opts = {
35883
- as: "image",
36082
+ as: 'image',
35884
36083
  imageSrcSet: imgAttributes.srcSet,
35885
36084
  imageSizes: imgAttributes.sizes,
35886
36085
  crossOrigin: imgAttributes.crossOrigin,
@@ -35888,9 +36087,7 @@ function requireImageComponent () {
35888
36087
  ...getDynamicProps(imgAttributes.fetchPriority)
35889
36088
  };
35890
36089
  if (isAppRouter && _reactdom.default.preload) {
35891
- // See https://github.com/facebook/react/pull/26940
35892
- _reactdom.default.preload(imgAttributes.src, // @ts-expect-error TODO: upgrade to `@types/react-dom@18.3.x`
35893
- opts);
36090
+ _reactdom.default.preload(imgAttributes.src, opts);
35894
36091
  return null;
35895
36092
  }
35896
36093
  return /*#__PURE__*/ (0, _jsxruntime.jsx)(_head.default, {
@@ -35903,7 +36100,7 @@ function requireImageComponent () {
35903
36100
  // https://html.spec.whatwg.org/multipage/semantics.html#attr-link-imagesrcset
35904
36101
  href: imgAttributes.srcSet ? undefined : imgAttributes.src,
35905
36102
  ...opts
35906
- }, "__nimg-" + imgAttributes.src + imgAttributes.srcSet + imgAttributes.sizes)
36103
+ }, '__nimg-' + imgAttributes.src + imgAttributes.srcSet + imgAttributes.sizes)
35907
36104
  });
35908
36105
  }
35909
36106
  const Image = /*#__PURE__*/ (0, _react.forwardRef)((props, forwardedRef)=>{
@@ -52774,7 +52971,19 @@ const GMapInput = ({ setAddress, setMarkerPos, ...props }) => {
52774
52971
  const googleContext = useContext(GoogleMapContext);
52775
52972
  const [lat, setLat] = useState(props.markerPos?.lat?.toString() || '');
52776
52973
  const [lng, setLng] = useState(props.markerPos?.lng?.toString() || '');
52974
+ const [defaultCenter, setDefaultCenter] = useState(undefined);
52777
52975
  const ref = useRef(null);
52976
+ useEffect(() => {
52977
+ if (!props.markerPos && navigator.geolocation) {
52978
+ navigator.geolocation.getCurrentPosition((pos) => {
52979
+ setDefaultCenter({
52980
+ lat: pos.coords.latitude,
52981
+ lng: pos.coords.longitude
52982
+ });
52983
+ }, () => { } // permission denied or unavailable — fall back to GMap default center
52984
+ );
52985
+ }
52986
+ }, []);
52778
52987
  const runGeoCode = useCallback(async (coords) => {
52779
52988
  if (window.google) {
52780
52989
  const service = new window.google.maps.Geocoder();
@@ -52880,10 +53089,13 @@ const GMapInput = ({ setAddress, setMarkerPos, ...props }) => {
52880
53089
  if (window.google) {
52881
53090
  const service = new window.google.maps.places.AutocompleteService();
52882
53091
  if (service && value) {
52883
- const result = await service.getPlacePredictions({
52884
- input: value,
52885
- componentRestrictions: { country: 'mt' }
52886
- });
53092
+ const request = {
53093
+ input: value
53094
+ };
53095
+ if (props.country) {
53096
+ request.componentRestrictions = { country: props.country };
53097
+ }
53098
+ const result = await service.getPlacePredictions(request);
52887
53099
  return result.predictions;
52888
53100
  }
52889
53101
  else {
@@ -52893,7 +53105,7 @@ const GMapInput = ({ setAddress, setMarkerPos, ...props }) => {
52893
53105
  else {
52894
53106
  return [];
52895
53107
  }
52896
- }, []);
53108
+ }, [props.country]);
52897
53109
  const autocompleteCall = useCallback(async (option) => {
52898
53110
  if (option !== null) {
52899
53111
  if (!Array.isArray(option)) {
@@ -52959,7 +53171,7 @@ const GMapInput = ({ setAddress, setMarkerPos, ...props }) => {
52959
53171
  };
52960
53172
  return option;
52961
53173
  });
52962
- }, label: "Address", footer: jsxRuntimeExports.jsx(Container, { padding: "5px", crossAxis: Alignment.flexEnd, children: jsxRuntimeExports.jsx(Image, { src: img, width: 100, height: 30, alt: "googleMap", style: { objectFit: 'contain' } }) }), value: props.address, targetCardType: props.targetCardType })] })) : (jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {})), jsxRuntimeExports.jsx(Spacer, {}), props.error ? (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx(Typography, { variant: TextVariants.small, color: Colors.error, children: props.error }), jsxRuntimeExports.jsx(Spacer, {})] })) : (jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {})), jsxRuntimeExports.jsx(GMap, { ...props, setMarkerPos: changeMarkerPosition })] })) : (jsxRuntimeExports.jsx(QuadSpinner, {}));
53174
+ }, label: "Address", footer: jsxRuntimeExports.jsx(Container, { padding: "5px", crossAxis: Alignment.flexEnd, children: jsxRuntimeExports.jsx(Image, { src: img, width: 100, height: 30, alt: "googleMap", style: { objectFit: 'contain' } }) }), value: props.address, targetCardType: props.targetCardType })] })) : (jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {})), jsxRuntimeExports.jsx(Spacer, {}), props.error ? (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx(Typography, { variant: TextVariants.small, color: Colors.error, children: props.error }), jsxRuntimeExports.jsx(Spacer, {})] })) : (jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {})), jsxRuntimeExports.jsx(GMap, { ...props, center: defaultCenter || props.center, setMarkerPos: changeMarkerPosition })] })) : (jsxRuntimeExports.jsx(QuadSpinner, {}));
52963
53175
  };
52964
53176
 
52965
53177
  const GoogleMapProvider = (props) => {