@helpwave/hightide 0.1.22 → 0.1.23

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 (102) hide show
  1. package/README.md +5 -0
  2. package/dist/components/branding/HelpwaveBadge.js +8 -5
  3. package/dist/components/branding/HelpwaveBadge.js.map +1 -1
  4. package/dist/components/branding/HelpwaveBadge.mjs +8 -5
  5. package/dist/components/branding/HelpwaveBadge.mjs.map +1 -1
  6. package/dist/components/icons-and-geometry/Avatar.js +2912 -33
  7. package/dist/components/icons-and-geometry/Avatar.js.map +1 -1
  8. package/dist/components/icons-and-geometry/Avatar.mjs +2941 -33
  9. package/dist/components/icons-and-geometry/Avatar.mjs.map +1 -1
  10. package/dist/components/icons-and-geometry/Tag.js +2912 -1
  11. package/dist/components/icons-and-geometry/Tag.js.map +1 -1
  12. package/dist/components/icons-and-geometry/Tag.mjs +2931 -1
  13. package/dist/components/icons-and-geometry/Tag.mjs.map +1 -1
  14. package/dist/components/layout-and-navigation/BreadCrumb.d.mts +2 -1
  15. package/dist/components/layout-and-navigation/BreadCrumb.d.ts +2 -1
  16. package/dist/components/layout-and-navigation/BreadCrumb.js +15 -11
  17. package/dist/components/layout-and-navigation/BreadCrumb.js.map +1 -1
  18. package/dist/components/layout-and-navigation/BreadCrumb.mjs +15 -11
  19. package/dist/components/layout-and-navigation/BreadCrumb.mjs.map +1 -1
  20. package/dist/components/layout-and-navigation/Chip.js +2 -2
  21. package/dist/components/layout-and-navigation/Chip.js.map +1 -1
  22. package/dist/components/layout-and-navigation/Chip.mjs +2 -2
  23. package/dist/components/layout-and-navigation/Chip.mjs.map +1 -1
  24. package/dist/components/layout-and-navigation/Tile.d.mts +9 -10
  25. package/dist/components/layout-and-navigation/Tile.d.ts +9 -10
  26. package/dist/components/layout-and-navigation/Tile.js +21 -4
  27. package/dist/components/layout-and-navigation/Tile.js.map +1 -1
  28. package/dist/components/layout-and-navigation/Tile.mjs +20 -4
  29. package/dist/components/layout-and-navigation/Tile.mjs.map +1 -1
  30. package/dist/components/loading-states/LoadingAndErrorComponent.js +1 -1
  31. package/dist/components/loading-states/LoadingAndErrorComponent.js.map +1 -1
  32. package/dist/components/loading-states/LoadingAndErrorComponent.mjs +1 -1
  33. package/dist/components/loading-states/LoadingAndErrorComponent.mjs.map +1 -1
  34. package/dist/components/modals/LanguageModal.js +21 -22
  35. package/dist/components/modals/LanguageModal.js.map +1 -1
  36. package/dist/components/modals/LanguageModal.mjs +21 -22
  37. package/dist/components/modals/LanguageModal.mjs.map +1 -1
  38. package/dist/components/modals/ThemeModal.js +21 -22
  39. package/dist/components/modals/ThemeModal.js.map +1 -1
  40. package/dist/components/modals/ThemeModal.mjs +21 -22
  41. package/dist/components/modals/ThemeModal.mjs.map +1 -1
  42. package/dist/components/properties/CheckboxProperty.js +1 -1
  43. package/dist/components/properties/CheckboxProperty.js.map +1 -1
  44. package/dist/components/properties/CheckboxProperty.mjs +1 -1
  45. package/dist/components/properties/CheckboxProperty.mjs.map +1 -1
  46. package/dist/components/properties/DateProperty.js +1 -1
  47. package/dist/components/properties/DateProperty.js.map +1 -1
  48. package/dist/components/properties/DateProperty.mjs +1 -1
  49. package/dist/components/properties/DateProperty.mjs.map +1 -1
  50. package/dist/components/properties/MultiSelectProperty.d.mts +0 -1
  51. package/dist/components/properties/MultiSelectProperty.d.ts +0 -1
  52. package/dist/components/properties/MultiSelectProperty.js +745 -740
  53. package/dist/components/properties/MultiSelectProperty.js.map +1 -1
  54. package/dist/components/properties/MultiSelectProperty.mjs +752 -747
  55. package/dist/components/properties/MultiSelectProperty.mjs.map +1 -1
  56. package/dist/components/properties/NumberProperty.js +1 -1
  57. package/dist/components/properties/NumberProperty.js.map +1 -1
  58. package/dist/components/properties/NumberProperty.mjs +1 -1
  59. package/dist/components/properties/NumberProperty.mjs.map +1 -1
  60. package/dist/components/properties/PropertyBase.js +1 -1
  61. package/dist/components/properties/PropertyBase.js.map +1 -1
  62. package/dist/components/properties/PropertyBase.mjs +1 -1
  63. package/dist/components/properties/PropertyBase.mjs.map +1 -1
  64. package/dist/components/properties/SelectProperty.d.mts +0 -1
  65. package/dist/components/properties/SelectProperty.d.ts +0 -1
  66. package/dist/components/properties/SelectProperty.js +24 -25
  67. package/dist/components/properties/SelectProperty.js.map +1 -1
  68. package/dist/components/properties/SelectProperty.mjs +24 -25
  69. package/dist/components/properties/SelectProperty.mjs.map +1 -1
  70. package/dist/components/properties/TextProperty.js +1 -1
  71. package/dist/components/properties/TextProperty.js.map +1 -1
  72. package/dist/components/properties/TextProperty.mjs +1 -1
  73. package/dist/components/properties/TextProperty.mjs.map +1 -1
  74. package/dist/components/user-action/MultiSelect.d.mts +0 -1
  75. package/dist/components/user-action/MultiSelect.d.ts +0 -1
  76. package/dist/components/user-action/MultiSelect.js +617 -612
  77. package/dist/components/user-action/MultiSelect.js.map +1 -1
  78. package/dist/components/user-action/MultiSelect.mjs +635 -630
  79. package/dist/components/user-action/MultiSelect.mjs.map +1 -1
  80. package/dist/components/user-action/ScrollPicker.js +1 -1
  81. package/dist/components/user-action/ScrollPicker.js.map +1 -1
  82. package/dist/components/user-action/ScrollPicker.mjs +1 -1
  83. package/dist/components/user-action/ScrollPicker.mjs.map +1 -1
  84. package/dist/components/user-action/Select.d.mts +1 -4
  85. package/dist/components/user-action/Select.d.ts +1 -4
  86. package/dist/components/user-action/Select.js +21 -24
  87. package/dist/components/user-action/Select.js.map +1 -1
  88. package/dist/components/user-action/Select.mjs +21 -23
  89. package/dist/components/user-action/Select.mjs.map +1 -1
  90. package/dist/css/globals.css +175 -179
  91. package/dist/css/uncompiled/globals.css +3 -3
  92. package/dist/css/uncompiled/textstyles.css +5 -5
  93. package/dist/css/uncompiled/theme/colors-basic.css +13 -5
  94. package/dist/css/uncompiled/theme/colors-component.css +56 -41
  95. package/dist/css/uncompiled/theme/colors-semantic.css +76 -83
  96. package/dist/index.d.mts +2 -2
  97. package/dist/index.d.ts +2 -2
  98. package/dist/index.js +3158 -371
  99. package/dist/index.js.map +1 -1
  100. package/dist/index.mjs +3030 -243
  101. package/dist/index.mjs.map +1 -1
  102. package/package.json +1 -1
@@ -1,34 +1,2938 @@
1
- // src/components/icons-and-geometry/Avatar.tsx
2
- import clsx from "clsx";
3
-
4
- // src/hooks/useLogOnce.ts
5
- import { useEffect, useState } from "react";
6
- var useLogOnce = ({
7
- message,
8
- condition,
9
- type = "warning"
10
- }) => {
11
- const [hasLogged, setHasLogged] = useState(false);
12
- useEffect(() => {
13
- if (!hasLogged && condition) {
14
- switch (type) {
15
- case "info":
16
- console.info(message);
17
- break;
18
- case "error":
19
- console.error(message);
20
- break;
21
- case "warning":
22
- console.warn(message);
23
- break;
24
- }
25
- setHasLogged(true);
26
- }
27
- }, [condition]);
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
8
+ get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
9
+ }) : x)(function(x) {
10
+ if (typeof require !== "undefined") return require.apply(this, arguments);
11
+ throw Error('Dynamic require of "' + x + '" is not supported');
12
+ });
13
+ var __commonJS = (cb, mod) => function __require2() {
14
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
28
15
  };
16
+ var __copyProps = (to, from, except, desc) => {
17
+ if (from && typeof from === "object" || typeof from === "function") {
18
+ for (let key of __getOwnPropNames(from))
19
+ if (!__hasOwnProp.call(to, key) && key !== except)
20
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
30
+ mod
31
+ ));
32
+
33
+ // node_modules/@swc/helpers/cjs/_interop_require_default.cjs
34
+ var require_interop_require_default = __commonJS({
35
+ "node_modules/@swc/helpers/cjs/_interop_require_default.cjs"(exports) {
36
+ "use strict";
37
+ function _interop_require_default(obj) {
38
+ return obj && obj.__esModule ? obj : { default: obj };
39
+ }
40
+ exports._ = _interop_require_default;
41
+ }
42
+ });
43
+
44
+ // node_modules/next/dist/shared/lib/utils/warn-once.js
45
+ var require_warn_once = __commonJS({
46
+ "node_modules/next/dist/shared/lib/utils/warn-once.js"(exports) {
47
+ "use strict";
48
+ Object.defineProperty(exports, "__esModule", {
49
+ value: true
50
+ });
51
+ Object.defineProperty(exports, "warnOnce", {
52
+ enumerable: true,
53
+ get: function() {
54
+ return warnOnce;
55
+ }
56
+ });
57
+ var warnOnce = (_) => {
58
+ };
59
+ if (process.env.NODE_ENV !== "production") {
60
+ const warnings = /* @__PURE__ */ new Set();
61
+ warnOnce = (msg) => {
62
+ if (!warnings.has(msg)) {
63
+ console.warn(msg);
64
+ }
65
+ warnings.add(msg);
66
+ };
67
+ }
68
+ }
69
+ });
70
+
71
+ // node_modules/next/dist/shared/lib/image-blur-svg.js
72
+ var require_image_blur_svg = __commonJS({
73
+ "node_modules/next/dist/shared/lib/image-blur-svg.js"(exports) {
74
+ "use strict";
75
+ Object.defineProperty(exports, "__esModule", {
76
+ value: true
77
+ });
78
+ Object.defineProperty(exports, "getImageBlurSvg", {
79
+ enumerable: true,
80
+ get: function() {
81
+ return getImageBlurSvg;
82
+ }
83
+ });
84
+ function getImageBlurSvg(param) {
85
+ let { widthInt, heightInt, blurWidth, blurHeight, blurDataURL, objectFit } = param;
86
+ const std = 20;
87
+ const svgWidth = blurWidth ? blurWidth * 40 : widthInt;
88
+ const svgHeight = blurHeight ? blurHeight * 40 : heightInt;
89
+ const viewBox = svgWidth && svgHeight ? "viewBox='0 0 " + svgWidth + " " + svgHeight + "'" : "";
90
+ const preserveAspectRatio = viewBox ? "none" : objectFit === "contain" ? "xMidYMid" : objectFit === "cover" ? "xMidYMid slice" : "none";
91
+ 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";
92
+ }
93
+ }
94
+ });
95
+
96
+ // node_modules/next/dist/shared/lib/image-config.js
97
+ var require_image_config = __commonJS({
98
+ "node_modules/next/dist/shared/lib/image-config.js"(exports) {
99
+ "use strict";
100
+ Object.defineProperty(exports, "__esModule", {
101
+ value: true
102
+ });
103
+ function _export(target, all) {
104
+ for (var name in all) Object.defineProperty(target, name, {
105
+ enumerable: true,
106
+ get: all[name]
107
+ });
108
+ }
109
+ _export(exports, {
110
+ VALID_LOADERS: function() {
111
+ return VALID_LOADERS;
112
+ },
113
+ imageConfigDefault: function() {
114
+ return imageConfigDefault;
115
+ }
116
+ });
117
+ var VALID_LOADERS = [
118
+ "default",
119
+ "imgix",
120
+ "cloudinary",
121
+ "akamai",
122
+ "custom"
123
+ ];
124
+ var imageConfigDefault = {
125
+ deviceSizes: [
126
+ 640,
127
+ 750,
128
+ 828,
129
+ 1080,
130
+ 1200,
131
+ 1920,
132
+ 2048,
133
+ 3840
134
+ ],
135
+ imageSizes: [
136
+ 16,
137
+ 32,
138
+ 48,
139
+ 64,
140
+ 96,
141
+ 128,
142
+ 256,
143
+ 384
144
+ ],
145
+ path: "/_next/image",
146
+ loader: "default",
147
+ loaderFile: "",
148
+ domains: [],
149
+ disableStaticImages: false,
150
+ minimumCacheTTL: 60,
151
+ formats: [
152
+ "image/webp"
153
+ ],
154
+ dangerouslyAllowSVG: false,
155
+ contentSecurityPolicy: "script-src 'none'; frame-src 'none'; sandbox;",
156
+ contentDispositionType: "attachment",
157
+ localPatterns: void 0,
158
+ remotePatterns: [],
159
+ qualities: void 0,
160
+ unoptimized: false
161
+ };
162
+ }
163
+ });
164
+
165
+ // node_modules/next/dist/shared/lib/get-img-props.js
166
+ var require_get_img_props = __commonJS({
167
+ "node_modules/next/dist/shared/lib/get-img-props.js"(exports) {
168
+ "use strict";
169
+ Object.defineProperty(exports, "__esModule", {
170
+ value: true
171
+ });
172
+ Object.defineProperty(exports, "getImgProps", {
173
+ enumerable: true,
174
+ get: function() {
175
+ return getImgProps;
176
+ }
177
+ });
178
+ var _warnonce = require_warn_once();
179
+ var _imageblursvg = require_image_blur_svg();
180
+ var _imageconfig = require_image_config();
181
+ var VALID_LOADING_VALUES = [
182
+ "lazy",
183
+ "eager",
184
+ void 0
185
+ ];
186
+ var INVALID_BACKGROUND_SIZE_VALUES = [
187
+ "-moz-initial",
188
+ "fill",
189
+ "none",
190
+ "scale-down",
191
+ void 0
192
+ ];
193
+ function isStaticRequire(src) {
194
+ return src.default !== void 0;
195
+ }
196
+ function isStaticImageData(src) {
197
+ return src.src !== void 0;
198
+ }
199
+ function isStaticImport(src) {
200
+ return !!src && typeof src === "object" && (isStaticRequire(src) || isStaticImageData(src));
201
+ }
202
+ var allImgs = /* @__PURE__ */ new Map();
203
+ var perfObserver;
204
+ function getInt(x) {
205
+ if (typeof x === "undefined") {
206
+ return x;
207
+ }
208
+ if (typeof x === "number") {
209
+ return Number.isFinite(x) ? x : NaN;
210
+ }
211
+ if (typeof x === "string" && /^[0-9]+$/.test(x)) {
212
+ return parseInt(x, 10);
213
+ }
214
+ return NaN;
215
+ }
216
+ function getWidths(param, width, sizes) {
217
+ let { deviceSizes, allSizes } = param;
218
+ if (sizes) {
219
+ const viewportWidthRe = /(^|\s)(1?\d?\d)vw/g;
220
+ const percentSizes = [];
221
+ for (let match; match = viewportWidthRe.exec(sizes); match) {
222
+ percentSizes.push(parseInt(match[2]));
223
+ }
224
+ if (percentSizes.length) {
225
+ const smallestRatio = Math.min(...percentSizes) * 0.01;
226
+ return {
227
+ widths: allSizes.filter((s) => s >= deviceSizes[0] * smallestRatio),
228
+ kind: "w"
229
+ };
230
+ }
231
+ return {
232
+ widths: allSizes,
233
+ kind: "w"
234
+ };
235
+ }
236
+ if (typeof width !== "number") {
237
+ return {
238
+ widths: deviceSizes,
239
+ kind: "w"
240
+ };
241
+ }
242
+ const widths = [
243
+ ...new Set(
244
+ // > This means that most OLED screens that say they are 3x resolution,
245
+ // > are actually 3x in the green color, but only 1.5x in the red and
246
+ // > blue colors. Showing a 3x resolution image in the app vs a 2x
247
+ // > resolution image will be visually the same, though the 3x image
248
+ // > takes significantly more data. Even true 3x resolution screens are
249
+ // > wasteful as the human eye cannot see that level of detail without
250
+ // > something like a magnifying glass.
251
+ // https://blog.twitter.com/engineering/en_us/topics/infrastructure/2019/capping-image-fidelity-on-ultra-high-resolution-devices.html
252
+ [
253
+ width,
254
+ width * 2
255
+ /*, width * 3*/
256
+ ].map((w) => allSizes.find((p) => p >= w) || allSizes[allSizes.length - 1])
257
+ )
258
+ ];
259
+ return {
260
+ widths,
261
+ kind: "x"
262
+ };
263
+ }
264
+ function generateImgAttrs(param) {
265
+ let { config, src, unoptimized, width, quality, sizes, loader } = param;
266
+ if (unoptimized) {
267
+ return {
268
+ src,
269
+ srcSet: void 0,
270
+ sizes: void 0
271
+ };
272
+ }
273
+ const { widths, kind } = getWidths(config, width, sizes);
274
+ const last = widths.length - 1;
275
+ return {
276
+ sizes: !sizes && kind === "w" ? "100vw" : sizes,
277
+ srcSet: widths.map((w, i) => loader({
278
+ config,
279
+ src,
280
+ quality,
281
+ width: w
282
+ }) + " " + (kind === "w" ? w : i + 1) + kind).join(", "),
283
+ // It's intended to keep `src` the last attribute because React updates
284
+ // attributes in order. If we keep `src` the first one, Safari will
285
+ // immediately start to fetch `src`, before `sizes` and `srcSet` are even
286
+ // updated by React. That causes multiple unnecessary requests if `srcSet`
287
+ // and `sizes` are defined.
288
+ // This bug cannot be reproduced in Chrome or Firefox.
289
+ src: loader({
290
+ config,
291
+ src,
292
+ quality,
293
+ width: widths[last]
294
+ })
295
+ };
296
+ }
297
+ function getImgProps(param, _state) {
298
+ 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;
299
+ const { imgConf, showAltText, blurComplete, defaultLoader } = _state;
300
+ let config;
301
+ let c = imgConf || _imageconfig.imageConfigDefault;
302
+ if ("allSizes" in c) {
303
+ config = c;
304
+ } else {
305
+ var _c_qualities;
306
+ const allSizes = [
307
+ ...c.deviceSizes,
308
+ ...c.imageSizes
309
+ ].sort((a, b) => a - b);
310
+ const deviceSizes = c.deviceSizes.sort((a, b) => a - b);
311
+ const qualities = (_c_qualities = c.qualities) == null ? void 0 : _c_qualities.sort((a, b) => a - b);
312
+ config = {
313
+ ...c,
314
+ allSizes,
315
+ deviceSizes,
316
+ qualities
317
+ };
318
+ }
319
+ if (typeof defaultLoader === "undefined") {
320
+ 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", {
321
+ value: "E163",
322
+ enumerable: false,
323
+ configurable: true
324
+ });
325
+ }
326
+ let loader = rest.loader || defaultLoader;
327
+ delete rest.loader;
328
+ delete rest.srcSet;
329
+ const isDefaultLoader = "__next_img_default" in loader;
330
+ if (isDefaultLoader) {
331
+ if (config.loader === "custom") {
332
+ 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", {
333
+ value: "E252",
334
+ enumerable: false,
335
+ configurable: true
336
+ });
337
+ }
338
+ } else {
339
+ const customImageLoader = loader;
340
+ loader = (obj) => {
341
+ const { config: _, ...opts } = obj;
342
+ return customImageLoader(opts);
343
+ };
344
+ }
345
+ if (layout) {
346
+ if (layout === "fill") {
347
+ fill = true;
348
+ }
349
+ const layoutToStyle = {
350
+ intrinsic: {
351
+ maxWidth: "100%",
352
+ height: "auto"
353
+ },
354
+ responsive: {
355
+ width: "100%",
356
+ height: "auto"
357
+ }
358
+ };
359
+ const layoutToSizes = {
360
+ responsive: "100vw",
361
+ fill: "100vw"
362
+ };
363
+ const layoutStyle = layoutToStyle[layout];
364
+ if (layoutStyle) {
365
+ style = {
366
+ ...style,
367
+ ...layoutStyle
368
+ };
369
+ }
370
+ const layoutSizes = layoutToSizes[layout];
371
+ if (layoutSizes && !sizes) {
372
+ sizes = layoutSizes;
373
+ }
374
+ }
375
+ let staticSrc = "";
376
+ let widthInt = getInt(width);
377
+ let heightInt = getInt(height);
378
+ let blurWidth;
379
+ let blurHeight;
380
+ if (isStaticImport(src)) {
381
+ const staticImageData = isStaticRequire(src) ? src.default : src;
382
+ if (!staticImageData.src) {
383
+ 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", {
384
+ value: "E460",
385
+ enumerable: false,
386
+ configurable: true
387
+ });
388
+ }
389
+ if (!staticImageData.height || !staticImageData.width) {
390
+ 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", {
391
+ value: "E48",
392
+ enumerable: false,
393
+ configurable: true
394
+ });
395
+ }
396
+ blurWidth = staticImageData.blurWidth;
397
+ blurHeight = staticImageData.blurHeight;
398
+ blurDataURL = blurDataURL || staticImageData.blurDataURL;
399
+ staticSrc = staticImageData.src;
400
+ if (!fill) {
401
+ if (!widthInt && !heightInt) {
402
+ widthInt = staticImageData.width;
403
+ heightInt = staticImageData.height;
404
+ } else if (widthInt && !heightInt) {
405
+ const ratio = widthInt / staticImageData.width;
406
+ heightInt = Math.round(staticImageData.height * ratio);
407
+ } else if (!widthInt && heightInt) {
408
+ const ratio = heightInt / staticImageData.height;
409
+ widthInt = Math.round(staticImageData.width * ratio);
410
+ }
411
+ }
412
+ }
413
+ src = typeof src === "string" ? src : staticSrc;
414
+ let isLazy = !priority && (loading === "lazy" || typeof loading === "undefined");
415
+ if (!src || src.startsWith("data:") || src.startsWith("blob:")) {
416
+ unoptimized = true;
417
+ isLazy = false;
418
+ }
419
+ if (config.unoptimized) {
420
+ unoptimized = true;
421
+ }
422
+ if (isDefaultLoader && !config.dangerouslyAllowSVG && src.split("?", 1)[0].endsWith(".svg")) {
423
+ unoptimized = true;
424
+ }
425
+ const qualityInt = getInt(quality);
426
+ if (process.env.NODE_ENV !== "production") {
427
+ if (config.output === "export" && isDefaultLoader && !unoptimized) {
428
+ 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", {
429
+ value: "E500",
430
+ enumerable: false,
431
+ configurable: true
432
+ });
433
+ }
434
+ if (!src) {
435
+ unoptimized = true;
436
+ } else {
437
+ if (fill) {
438
+ if (width) {
439
+ throw Object.defineProperty(new Error('Image with src "' + src + '" has both "width" and "fill" properties. Only one should be used.'), "__NEXT_ERROR_CODE", {
440
+ value: "E96",
441
+ enumerable: false,
442
+ configurable: true
443
+ });
444
+ }
445
+ if (height) {
446
+ throw Object.defineProperty(new Error('Image with src "' + src + '" has both "height" and "fill" properties. Only one should be used.'), "__NEXT_ERROR_CODE", {
447
+ value: "E115",
448
+ enumerable: false,
449
+ configurable: true
450
+ });
451
+ }
452
+ if ((style == null ? void 0 : style.position) && style.position !== "absolute") {
453
+ 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", {
454
+ value: "E216",
455
+ enumerable: false,
456
+ configurable: true
457
+ });
458
+ }
459
+ if ((style == null ? void 0 : style.width) && style.width !== "100%") {
460
+ 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", {
461
+ value: "E73",
462
+ enumerable: false,
463
+ configurable: true
464
+ });
465
+ }
466
+ if ((style == null ? void 0 : style.height) && style.height !== "100%") {
467
+ 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", {
468
+ value: "E404",
469
+ enumerable: false,
470
+ configurable: true
471
+ });
472
+ }
473
+ } else {
474
+ if (typeof widthInt === "undefined") {
475
+ throw Object.defineProperty(new Error('Image with src "' + src + '" is missing required "width" property.'), "__NEXT_ERROR_CODE", {
476
+ value: "E451",
477
+ enumerable: false,
478
+ configurable: true
479
+ });
480
+ } else if (isNaN(widthInt)) {
481
+ 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", {
482
+ value: "E66",
483
+ enumerable: false,
484
+ configurable: true
485
+ });
486
+ }
487
+ if (typeof heightInt === "undefined") {
488
+ throw Object.defineProperty(new Error('Image with src "' + src + '" is missing required "height" property.'), "__NEXT_ERROR_CODE", {
489
+ value: "E397",
490
+ enumerable: false,
491
+ configurable: true
492
+ });
493
+ } else if (isNaN(heightInt)) {
494
+ 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", {
495
+ value: "E444",
496
+ enumerable: false,
497
+ configurable: true
498
+ });
499
+ }
500
+ if (/^[\x00-\x20]/.test(src)) {
501
+ 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", {
502
+ value: "E176",
503
+ enumerable: false,
504
+ configurable: true
505
+ });
506
+ }
507
+ if (/[\x00-\x20]$/.test(src)) {
508
+ 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", {
509
+ value: "E21",
510
+ enumerable: false,
511
+ configurable: true
512
+ });
513
+ }
514
+ }
515
+ }
516
+ if (!VALID_LOADING_VALUES.includes(loading)) {
517
+ 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", {
518
+ value: "E357",
519
+ enumerable: false,
520
+ configurable: true
521
+ });
522
+ }
523
+ if (priority && loading === "lazy") {
524
+ throw Object.defineProperty(new Error('Image with src "' + src + `" has both "priority" and "loading='lazy'" properties. Only one should be used.`), "__NEXT_ERROR_CODE", {
525
+ value: "E218",
526
+ enumerable: false,
527
+ configurable: true
528
+ });
529
+ }
530
+ if (placeholder !== "empty" && placeholder !== "blur" && !placeholder.startsWith("data:image/")) {
531
+ throw Object.defineProperty(new Error('Image with src "' + src + '" has invalid "placeholder" property "' + placeholder + '".'), "__NEXT_ERROR_CODE", {
532
+ value: "E431",
533
+ enumerable: false,
534
+ configurable: true
535
+ });
536
+ }
537
+ if (placeholder !== "empty") {
538
+ if (widthInt && heightInt && widthInt * heightInt < 1600) {
539
+ (0, _warnonce.warnOnce)('Image with src "' + src + '" is smaller than 40x40. Consider removing the "placeholder" property to improve performance.');
540
+ }
541
+ }
542
+ if (placeholder === "blur" && !blurDataURL) {
543
+ const VALID_BLUR_EXT = [
544
+ "jpeg",
545
+ "png",
546
+ "webp",
547
+ "avif"
548
+ ];
549
+ throw Object.defineProperty(new Error('Image with src "' + src + `" has "placeholder='blur'" property but is missing the "blurDataURL" property.
550
+ Possible solutions:
551
+ - Add a "blurDataURL" property, the contents should be a small Data URL to represent the image
552
+ - 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", {
553
+ value: "E371",
554
+ enumerable: false,
555
+ configurable: true
556
+ });
557
+ }
558
+ if ("ref" in rest) {
559
+ (0, _warnonce.warnOnce)('Image with src "' + src + '" is using unsupported "ref" property. Consider using the "onLoad" property instead.');
560
+ }
561
+ if (!unoptimized && !isDefaultLoader) {
562
+ const urlStr = loader({
563
+ config,
564
+ src,
565
+ width: widthInt || 400,
566
+ quality: qualityInt || 75
567
+ });
568
+ let url;
569
+ try {
570
+ url = new URL(urlStr);
571
+ } catch (err) {
572
+ }
573
+ if (urlStr === src || url && url.pathname === src && !url.search) {
574
+ (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');
575
+ }
576
+ }
577
+ if (onLoadingComplete) {
578
+ (0, _warnonce.warnOnce)('Image with src "' + src + '" is using deprecated "onLoadingComplete" property. Please use the "onLoad" property instead.');
579
+ }
580
+ for (const [legacyKey, legacyValue] of Object.entries({
581
+ layout,
582
+ objectFit,
583
+ objectPosition,
584
+ lazyBoundary,
585
+ lazyRoot
586
+ })) {
587
+ if (legacyValue) {
588
+ (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');
589
+ }
590
+ }
591
+ if (typeof window !== "undefined" && !perfObserver && window.PerformanceObserver) {
592
+ perfObserver = new PerformanceObserver((entryList) => {
593
+ for (const entry of entryList.getEntries()) {
594
+ var _entry_element;
595
+ const imgSrc = (entry == null ? void 0 : (_entry_element = entry.element) == null ? void 0 : _entry_element.src) || "";
596
+ const lcpImage = allImgs.get(imgSrc);
597
+ if (lcpImage && !lcpImage.priority && lcpImage.placeholder === "empty" && !lcpImage.src.startsWith("data:") && !lcpImage.src.startsWith("blob:")) {
598
+ (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');
599
+ }
600
+ }
601
+ });
602
+ try {
603
+ perfObserver.observe({
604
+ type: "largest-contentful-paint",
605
+ buffered: true
606
+ });
607
+ } catch (err) {
608
+ console.error(err);
609
+ }
610
+ }
611
+ }
612
+ const imgStyle = Object.assign(fill ? {
613
+ position: "absolute",
614
+ height: "100%",
615
+ width: "100%",
616
+ left: 0,
617
+ top: 0,
618
+ right: 0,
619
+ bottom: 0,
620
+ objectFit,
621
+ objectPosition
622
+ } : {}, showAltText ? {} : {
623
+ color: "transparent"
624
+ }, style);
625
+ const backgroundImage = !blurComplete && placeholder !== "empty" ? placeholder === "blur" ? 'url("data:image/svg+xml;charset=utf-8,' + (0, _imageblursvg.getImageBlurSvg)({
626
+ widthInt,
627
+ heightInt,
628
+ blurWidth,
629
+ blurHeight,
630
+ blurDataURL: blurDataURL || "",
631
+ objectFit: imgStyle.objectFit
632
+ }) + '")' : 'url("' + placeholder + '")' : null;
633
+ const backgroundSize = !INVALID_BACKGROUND_SIZE_VALUES.includes(imgStyle.objectFit) ? imgStyle.objectFit : imgStyle.objectFit === "fill" ? "100% 100%" : "cover";
634
+ let placeholderStyle = backgroundImage ? {
635
+ backgroundSize,
636
+ backgroundPosition: imgStyle.objectPosition || "50% 50%",
637
+ backgroundRepeat: "no-repeat",
638
+ backgroundImage
639
+ } : {};
640
+ if (process.env.NODE_ENV === "development") {
641
+ if (placeholderStyle.backgroundImage && placeholder === "blur" && (blurDataURL == null ? void 0 : blurDataURL.startsWith("/"))) {
642
+ placeholderStyle.backgroundImage = 'url("' + blurDataURL + '")';
643
+ }
644
+ }
645
+ const imgAttributes = generateImgAttrs({
646
+ config,
647
+ src,
648
+ unoptimized,
649
+ width: widthInt,
650
+ quality: qualityInt,
651
+ sizes,
652
+ loader
653
+ });
654
+ if (process.env.NODE_ENV !== "production") {
655
+ if (typeof window !== "undefined") {
656
+ let fullUrl;
657
+ try {
658
+ fullUrl = new URL(imgAttributes.src);
659
+ } catch (e) {
660
+ fullUrl = new URL(imgAttributes.src, window.location.href);
661
+ }
662
+ allImgs.set(fullUrl.href, {
663
+ src,
664
+ priority,
665
+ placeholder
666
+ });
667
+ }
668
+ }
669
+ const props = {
670
+ ...rest,
671
+ loading: isLazy ? "lazy" : loading,
672
+ fetchPriority,
673
+ width: widthInt,
674
+ height: heightInt,
675
+ decoding,
676
+ className,
677
+ style: {
678
+ ...imgStyle,
679
+ ...placeholderStyle
680
+ },
681
+ sizes: imgAttributes.sizes,
682
+ srcSet: imgAttributes.srcSet,
683
+ src: overrideSrc || imgAttributes.src
684
+ };
685
+ const meta = {
686
+ unoptimized,
687
+ priority,
688
+ placeholder,
689
+ fill
690
+ };
691
+ return {
692
+ props,
693
+ meta
694
+ };
695
+ }
696
+ }
697
+ });
698
+
699
+ // node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs
700
+ var require_interop_require_wildcard = __commonJS({
701
+ "node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs"(exports) {
702
+ "use strict";
703
+ function _getRequireWildcardCache(nodeInterop) {
704
+ if (typeof WeakMap !== "function") return null;
705
+ var cacheBabelInterop = /* @__PURE__ */ new WeakMap();
706
+ var cacheNodeInterop = /* @__PURE__ */ new WeakMap();
707
+ return (_getRequireWildcardCache = function(nodeInterop2) {
708
+ return nodeInterop2 ? cacheNodeInterop : cacheBabelInterop;
709
+ })(nodeInterop);
710
+ }
711
+ function _interop_require_wildcard(obj, nodeInterop) {
712
+ if (!nodeInterop && obj && obj.__esModule) return obj;
713
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") return { default: obj };
714
+ var cache = _getRequireWildcardCache(nodeInterop);
715
+ if (cache && cache.has(obj)) return cache.get(obj);
716
+ var newObj = { __proto__: null };
717
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
718
+ for (var key in obj) {
719
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
720
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
721
+ if (desc && (desc.get || desc.set)) Object.defineProperty(newObj, key, desc);
722
+ else newObj[key] = obj[key];
723
+ }
724
+ }
725
+ newObj.default = obj;
726
+ if (cache) cache.set(obj, newObj);
727
+ return newObj;
728
+ }
729
+ exports._ = _interop_require_wildcard;
730
+ }
731
+ });
732
+
733
+ // node_modules/next/dist/shared/lib/side-effect.js
734
+ var require_side_effect = __commonJS({
735
+ "node_modules/next/dist/shared/lib/side-effect.js"(exports) {
736
+ "use strict";
737
+ Object.defineProperty(exports, "__esModule", {
738
+ value: true
739
+ });
740
+ Object.defineProperty(exports, "default", {
741
+ enumerable: true,
742
+ get: function() {
743
+ return SideEffect;
744
+ }
745
+ });
746
+ var _react = __require("react");
747
+ var isServer = typeof window === "undefined";
748
+ var useClientOnlyLayoutEffect = isServer ? () => {
749
+ } : _react.useLayoutEffect;
750
+ var useClientOnlyEffect = isServer ? () => {
751
+ } : _react.useEffect;
752
+ function SideEffect(props) {
753
+ const { headManager, reduceComponentsToState } = props;
754
+ function emitChange() {
755
+ if (headManager && headManager.mountedInstances) {
756
+ const headElements = _react.Children.toArray(Array.from(headManager.mountedInstances).filter(Boolean));
757
+ headManager.updateHead(reduceComponentsToState(headElements, props));
758
+ }
759
+ }
760
+ if (isServer) {
761
+ var _headManager_mountedInstances;
762
+ headManager == null ? void 0 : (_headManager_mountedInstances = headManager.mountedInstances) == null ? void 0 : _headManager_mountedInstances.add(props.children);
763
+ emitChange();
764
+ }
765
+ useClientOnlyLayoutEffect(() => {
766
+ var _headManager_mountedInstances2;
767
+ headManager == null ? void 0 : (_headManager_mountedInstances2 = headManager.mountedInstances) == null ? void 0 : _headManager_mountedInstances2.add(props.children);
768
+ return () => {
769
+ var _headManager_mountedInstances3;
770
+ headManager == null ? void 0 : (_headManager_mountedInstances3 = headManager.mountedInstances) == null ? void 0 : _headManager_mountedInstances3.delete(props.children);
771
+ };
772
+ });
773
+ useClientOnlyLayoutEffect(() => {
774
+ if (headManager) {
775
+ headManager._pendingUpdate = emitChange;
776
+ }
777
+ return () => {
778
+ if (headManager) {
779
+ headManager._pendingUpdate = emitChange;
780
+ }
781
+ };
782
+ });
783
+ useClientOnlyEffect(() => {
784
+ if (headManager && headManager._pendingUpdate) {
785
+ headManager._pendingUpdate();
786
+ headManager._pendingUpdate = null;
787
+ }
788
+ return () => {
789
+ if (headManager && headManager._pendingUpdate) {
790
+ headManager._pendingUpdate();
791
+ headManager._pendingUpdate = null;
792
+ }
793
+ };
794
+ });
795
+ return null;
796
+ }
797
+ }
798
+ });
799
+
800
+ // node_modules/next/dist/shared/lib/amp-context.shared-runtime.js
801
+ var require_amp_context_shared_runtime = __commonJS({
802
+ "node_modules/next/dist/shared/lib/amp-context.shared-runtime.js"(exports) {
803
+ "use strict";
804
+ Object.defineProperty(exports, "__esModule", {
805
+ value: true
806
+ });
807
+ Object.defineProperty(exports, "AmpStateContext", {
808
+ enumerable: true,
809
+ get: function() {
810
+ return AmpStateContext;
811
+ }
812
+ });
813
+ var _interop_require_default = require_interop_require_default();
814
+ var _react = /* @__PURE__ */ _interop_require_default._(__require("react"));
815
+ var AmpStateContext = _react.default.createContext({});
816
+ if (process.env.NODE_ENV !== "production") {
817
+ AmpStateContext.displayName = "AmpStateContext";
818
+ }
819
+ }
820
+ });
821
+
822
+ // node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.js
823
+ var require_head_manager_context_shared_runtime = __commonJS({
824
+ "node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.js"(exports) {
825
+ "use strict";
826
+ Object.defineProperty(exports, "__esModule", {
827
+ value: true
828
+ });
829
+ Object.defineProperty(exports, "HeadManagerContext", {
830
+ enumerable: true,
831
+ get: function() {
832
+ return HeadManagerContext;
833
+ }
834
+ });
835
+ var _interop_require_default = require_interop_require_default();
836
+ var _react = /* @__PURE__ */ _interop_require_default._(__require("react"));
837
+ var HeadManagerContext = _react.default.createContext({});
838
+ if (process.env.NODE_ENV !== "production") {
839
+ HeadManagerContext.displayName = "HeadManagerContext";
840
+ }
841
+ }
842
+ });
843
+
844
+ // node_modules/next/dist/shared/lib/amp-mode.js
845
+ var require_amp_mode = __commonJS({
846
+ "node_modules/next/dist/shared/lib/amp-mode.js"(exports) {
847
+ "use strict";
848
+ Object.defineProperty(exports, "__esModule", {
849
+ value: true
850
+ });
851
+ Object.defineProperty(exports, "isInAmpMode", {
852
+ enumerable: true,
853
+ get: function() {
854
+ return isInAmpMode;
855
+ }
856
+ });
857
+ function isInAmpMode(param) {
858
+ let { ampFirst = false, hybrid = false, hasQuery = false } = param === void 0 ? {} : param;
859
+ return ampFirst || hybrid && hasQuery;
860
+ }
861
+ }
862
+ });
863
+
864
+ // node_modules/next/dist/shared/lib/head.js
865
+ var require_head = __commonJS({
866
+ "node_modules/next/dist/shared/lib/head.js"(exports, module) {
867
+ "use client";
868
+ "use strict";
869
+ Object.defineProperty(exports, "__esModule", {
870
+ value: true
871
+ });
872
+ function _export(target, all) {
873
+ for (var name in all) Object.defineProperty(target, name, {
874
+ enumerable: true,
875
+ get: all[name]
876
+ });
877
+ }
878
+ _export(exports, {
879
+ default: function() {
880
+ return _default;
881
+ },
882
+ defaultHead: function() {
883
+ return defaultHead;
884
+ }
885
+ });
886
+ var _interop_require_default = require_interop_require_default();
887
+ var _interop_require_wildcard = require_interop_require_wildcard();
888
+ var _jsxruntime = __require("react/jsx-runtime");
889
+ var _react = /* @__PURE__ */ _interop_require_wildcard._(__require("react"));
890
+ var _sideeffect = /* @__PURE__ */ _interop_require_default._(require_side_effect());
891
+ var _ampcontextsharedruntime = require_amp_context_shared_runtime();
892
+ var _headmanagercontextsharedruntime = require_head_manager_context_shared_runtime();
893
+ var _ampmode = require_amp_mode();
894
+ var _warnonce = require_warn_once();
895
+ function defaultHead(inAmpMode) {
896
+ if (inAmpMode === void 0) inAmpMode = false;
897
+ const head = [
898
+ /* @__PURE__ */ (0, _jsxruntime.jsx)("meta", {
899
+ charSet: "utf-8"
900
+ }, "charset")
901
+ ];
902
+ if (!inAmpMode) {
903
+ head.push(/* @__PURE__ */ (0, _jsxruntime.jsx)("meta", {
904
+ name: "viewport",
905
+ content: "width=device-width"
906
+ }, "viewport"));
907
+ }
908
+ return head;
909
+ }
910
+ function onlyReactElement(list, child) {
911
+ if (typeof child === "string" || typeof child === "number") {
912
+ return list;
913
+ }
914
+ if (child.type === _react.default.Fragment) {
915
+ return list.concat(
916
+ // @ts-expect-error @types/react does not remove fragments but this could also return ReactPortal[]
917
+ _react.default.Children.toArray(child.props.children).reduce(
918
+ // @ts-expect-error @types/react does not remove fragments but this could also return ReactPortal[]
919
+ (fragmentList, fragmentChild) => {
920
+ if (typeof fragmentChild === "string" || typeof fragmentChild === "number") {
921
+ return fragmentList;
922
+ }
923
+ return fragmentList.concat(fragmentChild);
924
+ },
925
+ []
926
+ )
927
+ );
928
+ }
929
+ return list.concat(child);
930
+ }
931
+ var METATYPES = [
932
+ "name",
933
+ "httpEquiv",
934
+ "charSet",
935
+ "itemProp"
936
+ ];
937
+ function unique() {
938
+ const keys = /* @__PURE__ */ new Set();
939
+ const tags = /* @__PURE__ */ new Set();
940
+ const metaTypes = /* @__PURE__ */ new Set();
941
+ const metaCategories = {};
942
+ return (h) => {
943
+ let isUnique = true;
944
+ let hasKey = false;
945
+ if (h.key && typeof h.key !== "number" && h.key.indexOf("$") > 0) {
946
+ hasKey = true;
947
+ const key = h.key.slice(h.key.indexOf("$") + 1);
948
+ if (keys.has(key)) {
949
+ isUnique = false;
950
+ } else {
951
+ keys.add(key);
952
+ }
953
+ }
954
+ switch (h.type) {
955
+ case "title":
956
+ case "base":
957
+ if (tags.has(h.type)) {
958
+ isUnique = false;
959
+ } else {
960
+ tags.add(h.type);
961
+ }
962
+ break;
963
+ case "meta":
964
+ for (let i = 0, len = METATYPES.length; i < len; i++) {
965
+ const metatype = METATYPES[i];
966
+ if (!h.props.hasOwnProperty(metatype)) continue;
967
+ if (metatype === "charSet") {
968
+ if (metaTypes.has(metatype)) {
969
+ isUnique = false;
970
+ } else {
971
+ metaTypes.add(metatype);
972
+ }
973
+ } else {
974
+ const category = h.props[metatype];
975
+ const categories = metaCategories[metatype] || /* @__PURE__ */ new Set();
976
+ if ((metatype !== "name" || !hasKey) && categories.has(category)) {
977
+ isUnique = false;
978
+ } else {
979
+ categories.add(category);
980
+ metaCategories[metatype] = categories;
981
+ }
982
+ }
983
+ }
984
+ break;
985
+ }
986
+ return isUnique;
987
+ };
988
+ }
989
+ function reduceComponents(headChildrenElements, props) {
990
+ const { inAmpMode } = props;
991
+ return headChildrenElements.reduce(onlyReactElement, []).reverse().concat(defaultHead(inAmpMode).reverse()).filter(unique()).reverse().map((c, i) => {
992
+ const key = c.key || i;
993
+ if (process.env.NODE_ENV !== "development" && process.env.__NEXT_OPTIMIZE_FONTS && !inAmpMode) {
994
+ if (c.type === "link" && c.props["href"] && // TODO(prateekbh@): Replace this with const from `constants` when the tree shaking works.
995
+ [
996
+ "https://fonts.googleapis.com/css",
997
+ "https://use.typekit.net/"
998
+ ].some((url) => c.props["href"].startsWith(url))) {
999
+ const newProps = {
1000
+ ...c.props || {}
1001
+ };
1002
+ newProps["data-href"] = newProps["href"];
1003
+ newProps["href"] = void 0;
1004
+ newProps["data-optimized-fonts"] = true;
1005
+ return /* @__PURE__ */ _react.default.cloneElement(c, newProps);
1006
+ }
1007
+ }
1008
+ if (process.env.NODE_ENV === "development") {
1009
+ if (c.type === "script" && c.props["type"] !== "application/ld+json") {
1010
+ const srcMessage = c.props["src"] ? '<script> tag with src="' + c.props["src"] + '"' : "inline <script>";
1011
+ (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");
1012
+ } else if (c.type === "link" && c.props["rel"] === "stylesheet") {
1013
+ (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');
1014
+ }
1015
+ }
1016
+ return /* @__PURE__ */ _react.default.cloneElement(c, {
1017
+ key
1018
+ });
1019
+ });
1020
+ }
1021
+ function Head(param) {
1022
+ let { children } = param;
1023
+ const ampState = (0, _react.useContext)(_ampcontextsharedruntime.AmpStateContext);
1024
+ const headManager = (0, _react.useContext)(_headmanagercontextsharedruntime.HeadManagerContext);
1025
+ return /* @__PURE__ */ (0, _jsxruntime.jsx)(_sideeffect.default, {
1026
+ reduceComponentsToState: reduceComponents,
1027
+ headManager,
1028
+ inAmpMode: (0, _ampmode.isInAmpMode)(ampState),
1029
+ children
1030
+ });
1031
+ }
1032
+ var _default = Head;
1033
+ if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
1034
+ Object.defineProperty(exports.default, "__esModule", { value: true });
1035
+ Object.assign(exports.default, exports);
1036
+ module.exports = exports.default;
1037
+ }
1038
+ }
1039
+ });
1040
+
1041
+ // node_modules/next/dist/shared/lib/image-config-context.shared-runtime.js
1042
+ var require_image_config_context_shared_runtime = __commonJS({
1043
+ "node_modules/next/dist/shared/lib/image-config-context.shared-runtime.js"(exports) {
1044
+ "use strict";
1045
+ Object.defineProperty(exports, "__esModule", {
1046
+ value: true
1047
+ });
1048
+ Object.defineProperty(exports, "ImageConfigContext", {
1049
+ enumerable: true,
1050
+ get: function() {
1051
+ return ImageConfigContext;
1052
+ }
1053
+ });
1054
+ var _interop_require_default = require_interop_require_default();
1055
+ var _react = /* @__PURE__ */ _interop_require_default._(__require("react"));
1056
+ var _imageconfig = require_image_config();
1057
+ var ImageConfigContext = _react.default.createContext(_imageconfig.imageConfigDefault);
1058
+ if (process.env.NODE_ENV !== "production") {
1059
+ ImageConfigContext.displayName = "ImageConfigContext";
1060
+ }
1061
+ }
1062
+ });
1063
+
1064
+ // node_modules/next/dist/shared/lib/router-context.shared-runtime.js
1065
+ var require_router_context_shared_runtime = __commonJS({
1066
+ "node_modules/next/dist/shared/lib/router-context.shared-runtime.js"(exports) {
1067
+ "use strict";
1068
+ Object.defineProperty(exports, "__esModule", {
1069
+ value: true
1070
+ });
1071
+ Object.defineProperty(exports, "RouterContext", {
1072
+ enumerable: true,
1073
+ get: function() {
1074
+ return RouterContext;
1075
+ }
1076
+ });
1077
+ var _interop_require_default = require_interop_require_default();
1078
+ var _react = /* @__PURE__ */ _interop_require_default._(__require("react"));
1079
+ var RouterContext = _react.default.createContext(null);
1080
+ if (process.env.NODE_ENV !== "production") {
1081
+ RouterContext.displayName = "RouterContext";
1082
+ }
1083
+ }
1084
+ });
1085
+
1086
+ // node_modules/next/dist/compiled/picomatch/index.js
1087
+ var require_picomatch = __commonJS({
1088
+ "node_modules/next/dist/compiled/picomatch/index.js"(exports, module) {
1089
+ (() => {
1090
+ "use strict";
1091
+ var t = { 170: (t2, e2, u2) => {
1092
+ const n = u2(510);
1093
+ const isWindows = () => {
1094
+ if (typeof navigator !== "undefined" && navigator.platform) {
1095
+ const t3 = navigator.platform.toLowerCase();
1096
+ return t3 === "win32" || t3 === "windows";
1097
+ }
1098
+ if (typeof process !== "undefined" && process.platform) {
1099
+ return process.platform === "win32";
1100
+ }
1101
+ return false;
1102
+ };
1103
+ function picomatch(t3, e3, u3 = false) {
1104
+ if (e3 && (e3.windows === null || e3.windows === void 0)) {
1105
+ e3 = { ...e3, windows: isWindows() };
1106
+ }
1107
+ return n(t3, e3, u3);
1108
+ }
1109
+ Object.assign(picomatch, n);
1110
+ t2.exports = picomatch;
1111
+ }, 154: (t2) => {
1112
+ const e2 = "\\\\/";
1113
+ const u2 = `[^${e2}]`;
1114
+ const n = "\\.";
1115
+ const o = "\\+";
1116
+ const s = "\\?";
1117
+ const r = "\\/";
1118
+ const a = "(?=.)";
1119
+ const i = "[^/]";
1120
+ const c = `(?:${r}|$)`;
1121
+ const p = `(?:^|${r})`;
1122
+ const l = `${n}{1,2}${c}`;
1123
+ const f = `(?!${n})`;
1124
+ const A = `(?!${p}${l})`;
1125
+ const _ = `(?!${n}{0,1}${c})`;
1126
+ const R = `(?!${l})`;
1127
+ const E = `[^.${r}]`;
1128
+ const h = `${i}*?`;
1129
+ const g = "/";
1130
+ const b = { DOT_LITERAL: n, PLUS_LITERAL: o, QMARK_LITERAL: s, SLASH_LITERAL: r, ONE_CHAR: a, QMARK: i, END_ANCHOR: c, DOTS_SLASH: l, NO_DOT: f, NO_DOTS: A, NO_DOT_SLASH: _, NO_DOTS_SLASH: R, QMARK_NO_DOT: E, STAR: h, START_ANCHOR: p, SEP: g };
1131
+ const C = { ...b, SLASH_LITERAL: `[${e2}]`, QMARK: u2, STAR: `${u2}*?`, DOTS_SLASH: `${n}{1,2}(?:[${e2}]|$)`, NO_DOT: `(?!${n})`, NO_DOTS: `(?!(?:^|[${e2}])${n}{1,2}(?:[${e2}]|$))`, NO_DOT_SLASH: `(?!${n}{0,1}(?:[${e2}]|$))`, NO_DOTS_SLASH: `(?!${n}{1,2}(?:[${e2}]|$))`, QMARK_NO_DOT: `[^.${e2}]`, START_ANCHOR: `(?:^|[${e2}])`, END_ANCHOR: `(?:[${e2}]|$)`, SEP: "\\" };
1132
+ const y = { alnum: "a-zA-Z0-9", alpha: "a-zA-Z", ascii: "\\x00-\\x7F", blank: " \\t", cntrl: "\\x00-\\x1F\\x7F", digit: "0-9", graph: "\\x21-\\x7E", lower: "a-z", print: "\\x20-\\x7E ", punct: "\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~", space: " \\t\\r\\n\\v\\f", upper: "A-Z", word: "A-Za-z0-9_", xdigit: "A-Fa-f0-9" };
1133
+ t2.exports = { MAX_LENGTH: 1024 * 64, POSIX_REGEX_SOURCE: y, REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g, REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/, REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/, REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g, REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g, REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g, REPLACEMENTS: { "***": "*", "**/**": "**", "**/**/**": "**" }, CHAR_0: 48, CHAR_9: 57, CHAR_UPPERCASE_A: 65, CHAR_LOWERCASE_A: 97, CHAR_UPPERCASE_Z: 90, CHAR_LOWERCASE_Z: 122, CHAR_LEFT_PARENTHESES: 40, CHAR_RIGHT_PARENTHESES: 41, CHAR_ASTERISK: 42, CHAR_AMPERSAND: 38, CHAR_AT: 64, CHAR_BACKWARD_SLASH: 92, CHAR_CARRIAGE_RETURN: 13, CHAR_CIRCUMFLEX_ACCENT: 94, CHAR_COLON: 58, CHAR_COMMA: 44, CHAR_DOT: 46, CHAR_DOUBLE_QUOTE: 34, CHAR_EQUAL: 61, CHAR_EXCLAMATION_MARK: 33, CHAR_FORM_FEED: 12, CHAR_FORWARD_SLASH: 47, CHAR_GRAVE_ACCENT: 96, CHAR_HASH: 35, CHAR_HYPHEN_MINUS: 45, CHAR_LEFT_ANGLE_BRACKET: 60, CHAR_LEFT_CURLY_BRACE: 123, CHAR_LEFT_SQUARE_BRACKET: 91, CHAR_LINE_FEED: 10, CHAR_NO_BREAK_SPACE: 160, CHAR_PERCENT: 37, CHAR_PLUS: 43, CHAR_QUESTION_MARK: 63, CHAR_RIGHT_ANGLE_BRACKET: 62, CHAR_RIGHT_CURLY_BRACE: 125, CHAR_RIGHT_SQUARE_BRACKET: 93, CHAR_SEMICOLON: 59, CHAR_SINGLE_QUOTE: 39, CHAR_SPACE: 32, CHAR_TAB: 9, CHAR_UNDERSCORE: 95, CHAR_VERTICAL_LINE: 124, CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, extglobChars(t3) {
1134
+ return { "!": { type: "negate", open: "(?:(?!(?:", close: `))${t3.STAR})` }, "?": { type: "qmark", open: "(?:", close: ")?" }, "+": { type: "plus", open: "(?:", close: ")+" }, "*": { type: "star", open: "(?:", close: ")*" }, "@": { type: "at", open: "(?:", close: ")" } };
1135
+ }, globChars(t3) {
1136
+ return t3 === true ? C : b;
1137
+ } };
1138
+ }, 697: (t2, e2, u2) => {
1139
+ const n = u2(154);
1140
+ const o = u2(96);
1141
+ const { MAX_LENGTH: s, POSIX_REGEX_SOURCE: r, REGEX_NON_SPECIAL_CHARS: a, REGEX_SPECIAL_CHARS_BACKREF: i, REPLACEMENTS: c } = n;
1142
+ const expandRange = (t3, e3) => {
1143
+ if (typeof e3.expandRange === "function") {
1144
+ return e3.expandRange(...t3, e3);
1145
+ }
1146
+ t3.sort();
1147
+ const u3 = `[${t3.join("-")}]`;
1148
+ try {
1149
+ new RegExp(u3);
1150
+ } catch (e4) {
1151
+ return t3.map((t4) => o.escapeRegex(t4)).join("..");
1152
+ }
1153
+ return u3;
1154
+ };
1155
+ const syntaxError = (t3, e3) => `Missing ${t3}: "${e3}" - use "\\\\${e3}" to match literal characters`;
1156
+ const parse = (t3, e3) => {
1157
+ if (typeof t3 !== "string") {
1158
+ throw new TypeError("Expected a string");
1159
+ }
1160
+ t3 = c[t3] || t3;
1161
+ const u3 = { ...e3 };
1162
+ const p = typeof u3.maxLength === "number" ? Math.min(s, u3.maxLength) : s;
1163
+ let l = t3.length;
1164
+ if (l > p) {
1165
+ throw new SyntaxError(`Input length: ${l}, exceeds maximum allowed length: ${p}`);
1166
+ }
1167
+ const f = { type: "bos", value: "", output: u3.prepend || "" };
1168
+ const A = [f];
1169
+ const _ = u3.capture ? "" : "?:";
1170
+ const R = n.globChars(u3.windows);
1171
+ const E = n.extglobChars(R);
1172
+ const { DOT_LITERAL: h, PLUS_LITERAL: g, SLASH_LITERAL: b, ONE_CHAR: C, DOTS_SLASH: y, NO_DOT: $, NO_DOT_SLASH: x, NO_DOTS_SLASH: S, QMARK: H, QMARK_NO_DOT: v, STAR: d, START_ANCHOR: L } = R;
1173
+ const globstar = (t4) => `(${_}(?:(?!${L}${t4.dot ? y : h}).)*?)`;
1174
+ const T = u3.dot ? "" : $;
1175
+ const O = u3.dot ? H : v;
1176
+ let k = u3.bash === true ? globstar(u3) : d;
1177
+ if (u3.capture) {
1178
+ k = `(${k})`;
1179
+ }
1180
+ if (typeof u3.noext === "boolean") {
1181
+ u3.noextglob = u3.noext;
1182
+ }
1183
+ const m = { input: t3, index: -1, start: 0, dot: u3.dot === true, consumed: "", output: "", prefix: "", backtrack: false, negated: false, brackets: 0, braces: 0, parens: 0, quotes: 0, globstar: false, tokens: A };
1184
+ t3 = o.removePrefix(t3, m);
1185
+ l = t3.length;
1186
+ const w = [];
1187
+ const N = [];
1188
+ const I = [];
1189
+ let B = f;
1190
+ let G;
1191
+ const eos = () => m.index === l - 1;
1192
+ const D = m.peek = (e4 = 1) => t3[m.index + e4];
1193
+ const M = m.advance = () => t3[++m.index] || "";
1194
+ const remaining = () => t3.slice(m.index + 1);
1195
+ const consume = (t4 = "", e4 = 0) => {
1196
+ m.consumed += t4;
1197
+ m.index += e4;
1198
+ };
1199
+ const append = (t4) => {
1200
+ m.output += t4.output != null ? t4.output : t4.value;
1201
+ consume(t4.value);
1202
+ };
1203
+ const negate = () => {
1204
+ let t4 = 1;
1205
+ while (D() === "!" && (D(2) !== "(" || D(3) === "?")) {
1206
+ M();
1207
+ m.start++;
1208
+ t4++;
1209
+ }
1210
+ if (t4 % 2 === 0) {
1211
+ return false;
1212
+ }
1213
+ m.negated = true;
1214
+ m.start++;
1215
+ return true;
1216
+ };
1217
+ const increment = (t4) => {
1218
+ m[t4]++;
1219
+ I.push(t4);
1220
+ };
1221
+ const decrement = (t4) => {
1222
+ m[t4]--;
1223
+ I.pop();
1224
+ };
1225
+ const push = (t4) => {
1226
+ if (B.type === "globstar") {
1227
+ const e4 = m.braces > 0 && (t4.type === "comma" || t4.type === "brace");
1228
+ const u4 = t4.extglob === true || w.length && (t4.type === "pipe" || t4.type === "paren");
1229
+ if (t4.type !== "slash" && t4.type !== "paren" && !e4 && !u4) {
1230
+ m.output = m.output.slice(0, -B.output.length);
1231
+ B.type = "star";
1232
+ B.value = "*";
1233
+ B.output = k;
1234
+ m.output += B.output;
1235
+ }
1236
+ }
1237
+ if (w.length && t4.type !== "paren") {
1238
+ w[w.length - 1].inner += t4.value;
1239
+ }
1240
+ if (t4.value || t4.output) append(t4);
1241
+ if (B && B.type === "text" && t4.type === "text") {
1242
+ B.output = (B.output || B.value) + t4.value;
1243
+ B.value += t4.value;
1244
+ return;
1245
+ }
1246
+ t4.prev = B;
1247
+ A.push(t4);
1248
+ B = t4;
1249
+ };
1250
+ const extglobOpen = (t4, e4) => {
1251
+ const n2 = { ...E[e4], conditions: 1, inner: "" };
1252
+ n2.prev = B;
1253
+ n2.parens = m.parens;
1254
+ n2.output = m.output;
1255
+ const o2 = (u3.capture ? "(" : "") + n2.open;
1256
+ increment("parens");
1257
+ push({ type: t4, value: e4, output: m.output ? "" : C });
1258
+ push({ type: "paren", extglob: true, value: M(), output: o2 });
1259
+ w.push(n2);
1260
+ };
1261
+ const extglobClose = (t4) => {
1262
+ let n2 = t4.close + (u3.capture ? ")" : "");
1263
+ let o2;
1264
+ if (t4.type === "negate") {
1265
+ let s2 = k;
1266
+ if (t4.inner && t4.inner.length > 1 && t4.inner.includes("/")) {
1267
+ s2 = globstar(u3);
1268
+ }
1269
+ if (s2 !== k || eos() || /^\)+$/.test(remaining())) {
1270
+ n2 = t4.close = `)$))${s2}`;
1271
+ }
1272
+ if (t4.inner.includes("*") && (o2 = remaining()) && /^\.[^\\/.]+$/.test(o2)) {
1273
+ const u4 = parse(o2, { ...e3, fastpaths: false }).output;
1274
+ n2 = t4.close = `)${u4})${s2})`;
1275
+ }
1276
+ if (t4.prev.type === "bos") {
1277
+ m.negatedExtglob = true;
1278
+ }
1279
+ }
1280
+ push({ type: "paren", extglob: true, value: G, output: n2 });
1281
+ decrement("parens");
1282
+ };
1283
+ if (u3.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(t3)) {
1284
+ let n2 = false;
1285
+ let s2 = t3.replace(i, (t4, e4, u4, o2, s3, r2) => {
1286
+ if (o2 === "\\") {
1287
+ n2 = true;
1288
+ return t4;
1289
+ }
1290
+ if (o2 === "?") {
1291
+ if (e4) {
1292
+ return e4 + o2 + (s3 ? H.repeat(s3.length) : "");
1293
+ }
1294
+ if (r2 === 0) {
1295
+ return O + (s3 ? H.repeat(s3.length) : "");
1296
+ }
1297
+ return H.repeat(u4.length);
1298
+ }
1299
+ if (o2 === ".") {
1300
+ return h.repeat(u4.length);
1301
+ }
1302
+ if (o2 === "*") {
1303
+ if (e4) {
1304
+ return e4 + o2 + (s3 ? k : "");
1305
+ }
1306
+ return k;
1307
+ }
1308
+ return e4 ? t4 : `\\${t4}`;
1309
+ });
1310
+ if (n2 === true) {
1311
+ if (u3.unescape === true) {
1312
+ s2 = s2.replace(/\\/g, "");
1313
+ } else {
1314
+ s2 = s2.replace(/\\+/g, (t4) => t4.length % 2 === 0 ? "\\\\" : t4 ? "\\" : "");
1315
+ }
1316
+ }
1317
+ if (s2 === t3 && u3.contains === true) {
1318
+ m.output = t3;
1319
+ return m;
1320
+ }
1321
+ m.output = o.wrapOutput(s2, m, e3);
1322
+ return m;
1323
+ }
1324
+ while (!eos()) {
1325
+ G = M();
1326
+ if (G === "\0") {
1327
+ continue;
1328
+ }
1329
+ if (G === "\\") {
1330
+ const t4 = D();
1331
+ if (t4 === "/" && u3.bash !== true) {
1332
+ continue;
1333
+ }
1334
+ if (t4 === "." || t4 === ";") {
1335
+ continue;
1336
+ }
1337
+ if (!t4) {
1338
+ G += "\\";
1339
+ push({ type: "text", value: G });
1340
+ continue;
1341
+ }
1342
+ const e5 = /^\\+/.exec(remaining());
1343
+ let n3 = 0;
1344
+ if (e5 && e5[0].length > 2) {
1345
+ n3 = e5[0].length;
1346
+ m.index += n3;
1347
+ if (n3 % 2 !== 0) {
1348
+ G += "\\";
1349
+ }
1350
+ }
1351
+ if (u3.unescape === true) {
1352
+ G = M();
1353
+ } else {
1354
+ G += M();
1355
+ }
1356
+ if (m.brackets === 0) {
1357
+ push({ type: "text", value: G });
1358
+ continue;
1359
+ }
1360
+ }
1361
+ if (m.brackets > 0 && (G !== "]" || B.value === "[" || B.value === "[^")) {
1362
+ if (u3.posix !== false && G === ":") {
1363
+ const t4 = B.value.slice(1);
1364
+ if (t4.includes("[")) {
1365
+ B.posix = true;
1366
+ if (t4.includes(":")) {
1367
+ const t5 = B.value.lastIndexOf("[");
1368
+ const e5 = B.value.slice(0, t5);
1369
+ const u4 = B.value.slice(t5 + 2);
1370
+ const n3 = r[u4];
1371
+ if (n3) {
1372
+ B.value = e5 + n3;
1373
+ m.backtrack = true;
1374
+ M();
1375
+ if (!f.output && A.indexOf(B) === 1) {
1376
+ f.output = C;
1377
+ }
1378
+ continue;
1379
+ }
1380
+ }
1381
+ }
1382
+ }
1383
+ if (G === "[" && D() !== ":" || G === "-" && D() === "]") {
1384
+ G = `\\${G}`;
1385
+ }
1386
+ if (G === "]" && (B.value === "[" || B.value === "[^")) {
1387
+ G = `\\${G}`;
1388
+ }
1389
+ if (u3.posix === true && G === "!" && B.value === "[") {
1390
+ G = "^";
1391
+ }
1392
+ B.value += G;
1393
+ append({ value: G });
1394
+ continue;
1395
+ }
1396
+ if (m.quotes === 1 && G !== '"') {
1397
+ G = o.escapeRegex(G);
1398
+ B.value += G;
1399
+ append({ value: G });
1400
+ continue;
1401
+ }
1402
+ if (G === '"') {
1403
+ m.quotes = m.quotes === 1 ? 0 : 1;
1404
+ if (u3.keepQuotes === true) {
1405
+ push({ type: "text", value: G });
1406
+ }
1407
+ continue;
1408
+ }
1409
+ if (G === "(") {
1410
+ increment("parens");
1411
+ push({ type: "paren", value: G });
1412
+ continue;
1413
+ }
1414
+ if (G === ")") {
1415
+ if (m.parens === 0 && u3.strictBrackets === true) {
1416
+ throw new SyntaxError(syntaxError("opening", "("));
1417
+ }
1418
+ const t4 = w[w.length - 1];
1419
+ if (t4 && m.parens === t4.parens + 1) {
1420
+ extglobClose(w.pop());
1421
+ continue;
1422
+ }
1423
+ push({ type: "paren", value: G, output: m.parens ? ")" : "\\)" });
1424
+ decrement("parens");
1425
+ continue;
1426
+ }
1427
+ if (G === "[") {
1428
+ if (u3.nobracket === true || !remaining().includes("]")) {
1429
+ if (u3.nobracket !== true && u3.strictBrackets === true) {
1430
+ throw new SyntaxError(syntaxError("closing", "]"));
1431
+ }
1432
+ G = `\\${G}`;
1433
+ } else {
1434
+ increment("brackets");
1435
+ }
1436
+ push({ type: "bracket", value: G });
1437
+ continue;
1438
+ }
1439
+ if (G === "]") {
1440
+ if (u3.nobracket === true || B && B.type === "bracket" && B.value.length === 1) {
1441
+ push({ type: "text", value: G, output: `\\${G}` });
1442
+ continue;
1443
+ }
1444
+ if (m.brackets === 0) {
1445
+ if (u3.strictBrackets === true) {
1446
+ throw new SyntaxError(syntaxError("opening", "["));
1447
+ }
1448
+ push({ type: "text", value: G, output: `\\${G}` });
1449
+ continue;
1450
+ }
1451
+ decrement("brackets");
1452
+ const t4 = B.value.slice(1);
1453
+ if (B.posix !== true && t4[0] === "^" && !t4.includes("/")) {
1454
+ G = `/${G}`;
1455
+ }
1456
+ B.value += G;
1457
+ append({ value: G });
1458
+ if (u3.literalBrackets === false || o.hasRegexChars(t4)) {
1459
+ continue;
1460
+ }
1461
+ const e5 = o.escapeRegex(B.value);
1462
+ m.output = m.output.slice(0, -B.value.length);
1463
+ if (u3.literalBrackets === true) {
1464
+ m.output += e5;
1465
+ B.value = e5;
1466
+ continue;
1467
+ }
1468
+ B.value = `(${_}${e5}|${B.value})`;
1469
+ m.output += B.value;
1470
+ continue;
1471
+ }
1472
+ if (G === "{" && u3.nobrace !== true) {
1473
+ increment("braces");
1474
+ const t4 = { type: "brace", value: G, output: "(", outputIndex: m.output.length, tokensIndex: m.tokens.length };
1475
+ N.push(t4);
1476
+ push(t4);
1477
+ continue;
1478
+ }
1479
+ if (G === "}") {
1480
+ const t4 = N[N.length - 1];
1481
+ if (u3.nobrace === true || !t4) {
1482
+ push({ type: "text", value: G, output: G });
1483
+ continue;
1484
+ }
1485
+ let e5 = ")";
1486
+ if (t4.dots === true) {
1487
+ const t5 = A.slice();
1488
+ const n3 = [];
1489
+ for (let e6 = t5.length - 1; e6 >= 0; e6--) {
1490
+ A.pop();
1491
+ if (t5[e6].type === "brace") {
1492
+ break;
1493
+ }
1494
+ if (t5[e6].type !== "dots") {
1495
+ n3.unshift(t5[e6].value);
1496
+ }
1497
+ }
1498
+ e5 = expandRange(n3, u3);
1499
+ m.backtrack = true;
1500
+ }
1501
+ if (t4.comma !== true && t4.dots !== true) {
1502
+ const u4 = m.output.slice(0, t4.outputIndex);
1503
+ const n3 = m.tokens.slice(t4.tokensIndex);
1504
+ t4.value = t4.output = "\\{";
1505
+ G = e5 = "\\}";
1506
+ m.output = u4;
1507
+ for (const t5 of n3) {
1508
+ m.output += t5.output || t5.value;
1509
+ }
1510
+ }
1511
+ push({ type: "brace", value: G, output: e5 });
1512
+ decrement("braces");
1513
+ N.pop();
1514
+ continue;
1515
+ }
1516
+ if (G === "|") {
1517
+ if (w.length > 0) {
1518
+ w[w.length - 1].conditions++;
1519
+ }
1520
+ push({ type: "text", value: G });
1521
+ continue;
1522
+ }
1523
+ if (G === ",") {
1524
+ let t4 = G;
1525
+ const e5 = N[N.length - 1];
1526
+ if (e5 && I[I.length - 1] === "braces") {
1527
+ e5.comma = true;
1528
+ t4 = "|";
1529
+ }
1530
+ push({ type: "comma", value: G, output: t4 });
1531
+ continue;
1532
+ }
1533
+ if (G === "/") {
1534
+ if (B.type === "dot" && m.index === m.start + 1) {
1535
+ m.start = m.index + 1;
1536
+ m.consumed = "";
1537
+ m.output = "";
1538
+ A.pop();
1539
+ B = f;
1540
+ continue;
1541
+ }
1542
+ push({ type: "slash", value: G, output: b });
1543
+ continue;
1544
+ }
1545
+ if (G === ".") {
1546
+ if (m.braces > 0 && B.type === "dot") {
1547
+ if (B.value === ".") B.output = h;
1548
+ const t4 = N[N.length - 1];
1549
+ B.type = "dots";
1550
+ B.output += G;
1551
+ B.value += G;
1552
+ t4.dots = true;
1553
+ continue;
1554
+ }
1555
+ if (m.braces + m.parens === 0 && B.type !== "bos" && B.type !== "slash") {
1556
+ push({ type: "text", value: G, output: h });
1557
+ continue;
1558
+ }
1559
+ push({ type: "dot", value: G, output: h });
1560
+ continue;
1561
+ }
1562
+ if (G === "?") {
1563
+ const t4 = B && B.value === "(";
1564
+ if (!t4 && u3.noextglob !== true && D() === "(" && D(2) !== "?") {
1565
+ extglobOpen("qmark", G);
1566
+ continue;
1567
+ }
1568
+ if (B && B.type === "paren") {
1569
+ const t5 = D();
1570
+ let e5 = G;
1571
+ if (B.value === "(" && !/[!=<:]/.test(t5) || t5 === "<" && !/<([!=]|\w+>)/.test(remaining())) {
1572
+ e5 = `\\${G}`;
1573
+ }
1574
+ push({ type: "text", value: G, output: e5 });
1575
+ continue;
1576
+ }
1577
+ if (u3.dot !== true && (B.type === "slash" || B.type === "bos")) {
1578
+ push({ type: "qmark", value: G, output: v });
1579
+ continue;
1580
+ }
1581
+ push({ type: "qmark", value: G, output: H });
1582
+ continue;
1583
+ }
1584
+ if (G === "!") {
1585
+ if (u3.noextglob !== true && D() === "(") {
1586
+ if (D(2) !== "?" || !/[!=<:]/.test(D(3))) {
1587
+ extglobOpen("negate", G);
1588
+ continue;
1589
+ }
1590
+ }
1591
+ if (u3.nonegate !== true && m.index === 0) {
1592
+ negate();
1593
+ continue;
1594
+ }
1595
+ }
1596
+ if (G === "+") {
1597
+ if (u3.noextglob !== true && D() === "(" && D(2) !== "?") {
1598
+ extglobOpen("plus", G);
1599
+ continue;
1600
+ }
1601
+ if (B && B.value === "(" || u3.regex === false) {
1602
+ push({ type: "plus", value: G, output: g });
1603
+ continue;
1604
+ }
1605
+ if (B && (B.type === "bracket" || B.type === "paren" || B.type === "brace") || m.parens > 0) {
1606
+ push({ type: "plus", value: G });
1607
+ continue;
1608
+ }
1609
+ push({ type: "plus", value: g });
1610
+ continue;
1611
+ }
1612
+ if (G === "@") {
1613
+ if (u3.noextglob !== true && D() === "(" && D(2) !== "?") {
1614
+ push({ type: "at", extglob: true, value: G, output: "" });
1615
+ continue;
1616
+ }
1617
+ push({ type: "text", value: G });
1618
+ continue;
1619
+ }
1620
+ if (G !== "*") {
1621
+ if (G === "$" || G === "^") {
1622
+ G = `\\${G}`;
1623
+ }
1624
+ const t4 = a.exec(remaining());
1625
+ if (t4) {
1626
+ G += t4[0];
1627
+ m.index += t4[0].length;
1628
+ }
1629
+ push({ type: "text", value: G });
1630
+ continue;
1631
+ }
1632
+ if (B && (B.type === "globstar" || B.star === true)) {
1633
+ B.type = "star";
1634
+ B.star = true;
1635
+ B.value += G;
1636
+ B.output = k;
1637
+ m.backtrack = true;
1638
+ m.globstar = true;
1639
+ consume(G);
1640
+ continue;
1641
+ }
1642
+ let e4 = remaining();
1643
+ if (u3.noextglob !== true && /^\([^?]/.test(e4)) {
1644
+ extglobOpen("star", G);
1645
+ continue;
1646
+ }
1647
+ if (B.type === "star") {
1648
+ if (u3.noglobstar === true) {
1649
+ consume(G);
1650
+ continue;
1651
+ }
1652
+ const n3 = B.prev;
1653
+ const o2 = n3.prev;
1654
+ const s2 = n3.type === "slash" || n3.type === "bos";
1655
+ const r2 = o2 && (o2.type === "star" || o2.type === "globstar");
1656
+ if (u3.bash === true && (!s2 || e4[0] && e4[0] !== "/")) {
1657
+ push({ type: "star", value: G, output: "" });
1658
+ continue;
1659
+ }
1660
+ const a2 = m.braces > 0 && (n3.type === "comma" || n3.type === "brace");
1661
+ const i2 = w.length && (n3.type === "pipe" || n3.type === "paren");
1662
+ if (!s2 && n3.type !== "paren" && !a2 && !i2) {
1663
+ push({ type: "star", value: G, output: "" });
1664
+ continue;
1665
+ }
1666
+ while (e4.slice(0, 3) === "/**") {
1667
+ const u4 = t3[m.index + 4];
1668
+ if (u4 && u4 !== "/") {
1669
+ break;
1670
+ }
1671
+ e4 = e4.slice(3);
1672
+ consume("/**", 3);
1673
+ }
1674
+ if (n3.type === "bos" && eos()) {
1675
+ B.type = "globstar";
1676
+ B.value += G;
1677
+ B.output = globstar(u3);
1678
+ m.output = B.output;
1679
+ m.globstar = true;
1680
+ consume(G);
1681
+ continue;
1682
+ }
1683
+ if (n3.type === "slash" && n3.prev.type !== "bos" && !r2 && eos()) {
1684
+ m.output = m.output.slice(0, -(n3.output + B.output).length);
1685
+ n3.output = `(?:${n3.output}`;
1686
+ B.type = "globstar";
1687
+ B.output = globstar(u3) + (u3.strictSlashes ? ")" : "|$)");
1688
+ B.value += G;
1689
+ m.globstar = true;
1690
+ m.output += n3.output + B.output;
1691
+ consume(G);
1692
+ continue;
1693
+ }
1694
+ if (n3.type === "slash" && n3.prev.type !== "bos" && e4[0] === "/") {
1695
+ const t4 = e4[1] !== void 0 ? "|$" : "";
1696
+ m.output = m.output.slice(0, -(n3.output + B.output).length);
1697
+ n3.output = `(?:${n3.output}`;
1698
+ B.type = "globstar";
1699
+ B.output = `${globstar(u3)}${b}|${b}${t4})`;
1700
+ B.value += G;
1701
+ m.output += n3.output + B.output;
1702
+ m.globstar = true;
1703
+ consume(G + M());
1704
+ push({ type: "slash", value: "/", output: "" });
1705
+ continue;
1706
+ }
1707
+ if (n3.type === "bos" && e4[0] === "/") {
1708
+ B.type = "globstar";
1709
+ B.value += G;
1710
+ B.output = `(?:^|${b}|${globstar(u3)}${b})`;
1711
+ m.output = B.output;
1712
+ m.globstar = true;
1713
+ consume(G + M());
1714
+ push({ type: "slash", value: "/", output: "" });
1715
+ continue;
1716
+ }
1717
+ m.output = m.output.slice(0, -B.output.length);
1718
+ B.type = "globstar";
1719
+ B.output = globstar(u3);
1720
+ B.value += G;
1721
+ m.output += B.output;
1722
+ m.globstar = true;
1723
+ consume(G);
1724
+ continue;
1725
+ }
1726
+ const n2 = { type: "star", value: G, output: k };
1727
+ if (u3.bash === true) {
1728
+ n2.output = ".*?";
1729
+ if (B.type === "bos" || B.type === "slash") {
1730
+ n2.output = T + n2.output;
1731
+ }
1732
+ push(n2);
1733
+ continue;
1734
+ }
1735
+ if (B && (B.type === "bracket" || B.type === "paren") && u3.regex === true) {
1736
+ n2.output = G;
1737
+ push(n2);
1738
+ continue;
1739
+ }
1740
+ if (m.index === m.start || B.type === "slash" || B.type === "dot") {
1741
+ if (B.type === "dot") {
1742
+ m.output += x;
1743
+ B.output += x;
1744
+ } else if (u3.dot === true) {
1745
+ m.output += S;
1746
+ B.output += S;
1747
+ } else {
1748
+ m.output += T;
1749
+ B.output += T;
1750
+ }
1751
+ if (D() !== "*") {
1752
+ m.output += C;
1753
+ B.output += C;
1754
+ }
1755
+ }
1756
+ push(n2);
1757
+ }
1758
+ while (m.brackets > 0) {
1759
+ if (u3.strictBrackets === true) throw new SyntaxError(syntaxError("closing", "]"));
1760
+ m.output = o.escapeLast(m.output, "[");
1761
+ decrement("brackets");
1762
+ }
1763
+ while (m.parens > 0) {
1764
+ if (u3.strictBrackets === true) throw new SyntaxError(syntaxError("closing", ")"));
1765
+ m.output = o.escapeLast(m.output, "(");
1766
+ decrement("parens");
1767
+ }
1768
+ while (m.braces > 0) {
1769
+ if (u3.strictBrackets === true) throw new SyntaxError(syntaxError("closing", "}"));
1770
+ m.output = o.escapeLast(m.output, "{");
1771
+ decrement("braces");
1772
+ }
1773
+ if (u3.strictSlashes !== true && (B.type === "star" || B.type === "bracket")) {
1774
+ push({ type: "maybe_slash", value: "", output: `${b}?` });
1775
+ }
1776
+ if (m.backtrack === true) {
1777
+ m.output = "";
1778
+ for (const t4 of m.tokens) {
1779
+ m.output += t4.output != null ? t4.output : t4.value;
1780
+ if (t4.suffix) {
1781
+ m.output += t4.suffix;
1782
+ }
1783
+ }
1784
+ }
1785
+ return m;
1786
+ };
1787
+ parse.fastpaths = (t3, e3) => {
1788
+ const u3 = { ...e3 };
1789
+ const r2 = typeof u3.maxLength === "number" ? Math.min(s, u3.maxLength) : s;
1790
+ const a2 = t3.length;
1791
+ if (a2 > r2) {
1792
+ throw new SyntaxError(`Input length: ${a2}, exceeds maximum allowed length: ${r2}`);
1793
+ }
1794
+ t3 = c[t3] || t3;
1795
+ const { DOT_LITERAL: i2, SLASH_LITERAL: p, ONE_CHAR: l, DOTS_SLASH: f, NO_DOT: A, NO_DOTS: _, NO_DOTS_SLASH: R, STAR: E, START_ANCHOR: h } = n.globChars(u3.windows);
1796
+ const g = u3.dot ? _ : A;
1797
+ const b = u3.dot ? R : A;
1798
+ const C = u3.capture ? "" : "?:";
1799
+ const y = { negated: false, prefix: "" };
1800
+ let $ = u3.bash === true ? ".*?" : E;
1801
+ if (u3.capture) {
1802
+ $ = `(${$})`;
1803
+ }
1804
+ const globstar = (t4) => {
1805
+ if (t4.noglobstar === true) return $;
1806
+ return `(${C}(?:(?!${h}${t4.dot ? f : i2}).)*?)`;
1807
+ };
1808
+ const create = (t4) => {
1809
+ switch (t4) {
1810
+ case "*":
1811
+ return `${g}${l}${$}`;
1812
+ case ".*":
1813
+ return `${i2}${l}${$}`;
1814
+ case "*.*":
1815
+ return `${g}${$}${i2}${l}${$}`;
1816
+ case "*/*":
1817
+ return `${g}${$}${p}${l}${b}${$}`;
1818
+ case "**":
1819
+ return g + globstar(u3);
1820
+ case "**/*":
1821
+ return `(?:${g}${globstar(u3)}${p})?${b}${l}${$}`;
1822
+ case "**/*.*":
1823
+ return `(?:${g}${globstar(u3)}${p})?${b}${$}${i2}${l}${$}`;
1824
+ case "**/.*":
1825
+ return `(?:${g}${globstar(u3)}${p})?${i2}${l}${$}`;
1826
+ default: {
1827
+ const e4 = /^(.*?)\.(\w+)$/.exec(t4);
1828
+ if (!e4) return;
1829
+ const u4 = create(e4[1]);
1830
+ if (!u4) return;
1831
+ return u4 + i2 + e4[2];
1832
+ }
1833
+ }
1834
+ };
1835
+ const x = o.removePrefix(t3, y);
1836
+ let S = create(x);
1837
+ if (S && u3.strictSlashes !== true) {
1838
+ S += `${p}?`;
1839
+ }
1840
+ return S;
1841
+ };
1842
+ t2.exports = parse;
1843
+ }, 510: (t2, e2, u2) => {
1844
+ const n = u2(716);
1845
+ const o = u2(697);
1846
+ const s = u2(96);
1847
+ const r = u2(154);
1848
+ const isObject = (t3) => t3 && typeof t3 === "object" && !Array.isArray(t3);
1849
+ const picomatch = (t3, e3, u3 = false) => {
1850
+ if (Array.isArray(t3)) {
1851
+ const n3 = t3.map((t4) => picomatch(t4, e3, u3));
1852
+ const arrayMatcher = (t4) => {
1853
+ for (const e4 of n3) {
1854
+ const u4 = e4(t4);
1855
+ if (u4) return u4;
1856
+ }
1857
+ return false;
1858
+ };
1859
+ return arrayMatcher;
1860
+ }
1861
+ const n2 = isObject(t3) && t3.tokens && t3.input;
1862
+ if (t3 === "" || typeof t3 !== "string" && !n2) {
1863
+ throw new TypeError("Expected pattern to be a non-empty string");
1864
+ }
1865
+ const o2 = e3 || {};
1866
+ const s2 = o2.windows;
1867
+ const r2 = n2 ? picomatch.compileRe(t3, e3) : picomatch.makeRe(t3, e3, false, true);
1868
+ const a = r2.state;
1869
+ delete r2.state;
1870
+ let isIgnored = () => false;
1871
+ if (o2.ignore) {
1872
+ const t4 = { ...e3, ignore: null, onMatch: null, onResult: null };
1873
+ isIgnored = picomatch(o2.ignore, t4, u3);
1874
+ }
1875
+ const matcher = (u4, n3 = false) => {
1876
+ const { isMatch: i, match: c, output: p } = picomatch.test(u4, r2, e3, { glob: t3, posix: s2 });
1877
+ const l = { glob: t3, state: a, regex: r2, posix: s2, input: u4, output: p, match: c, isMatch: i };
1878
+ if (typeof o2.onResult === "function") {
1879
+ o2.onResult(l);
1880
+ }
1881
+ if (i === false) {
1882
+ l.isMatch = false;
1883
+ return n3 ? l : false;
1884
+ }
1885
+ if (isIgnored(u4)) {
1886
+ if (typeof o2.onIgnore === "function") {
1887
+ o2.onIgnore(l);
1888
+ }
1889
+ l.isMatch = false;
1890
+ return n3 ? l : false;
1891
+ }
1892
+ if (typeof o2.onMatch === "function") {
1893
+ o2.onMatch(l);
1894
+ }
1895
+ return n3 ? l : true;
1896
+ };
1897
+ if (u3) {
1898
+ matcher.state = a;
1899
+ }
1900
+ return matcher;
1901
+ };
1902
+ picomatch.test = (t3, e3, u3, { glob: n2, posix: o2 } = {}) => {
1903
+ if (typeof t3 !== "string") {
1904
+ throw new TypeError("Expected input to be a string");
1905
+ }
1906
+ if (t3 === "") {
1907
+ return { isMatch: false, output: "" };
1908
+ }
1909
+ const r2 = u3 || {};
1910
+ const a = r2.format || (o2 ? s.toPosixSlashes : null);
1911
+ let i = t3 === n2;
1912
+ let c = i && a ? a(t3) : t3;
1913
+ if (i === false) {
1914
+ c = a ? a(t3) : t3;
1915
+ i = c === n2;
1916
+ }
1917
+ if (i === false || r2.capture === true) {
1918
+ if (r2.matchBase === true || r2.basename === true) {
1919
+ i = picomatch.matchBase(t3, e3, u3, o2);
1920
+ } else {
1921
+ i = e3.exec(c);
1922
+ }
1923
+ }
1924
+ return { isMatch: Boolean(i), match: i, output: c };
1925
+ };
1926
+ picomatch.matchBase = (t3, e3, u3) => {
1927
+ const n2 = e3 instanceof RegExp ? e3 : picomatch.makeRe(e3, u3);
1928
+ return n2.test(s.basename(t3));
1929
+ };
1930
+ picomatch.isMatch = (t3, e3, u3) => picomatch(e3, u3)(t3);
1931
+ picomatch.parse = (t3, e3) => {
1932
+ if (Array.isArray(t3)) return t3.map((t4) => picomatch.parse(t4, e3));
1933
+ return o(t3, { ...e3, fastpaths: false });
1934
+ };
1935
+ picomatch.scan = (t3, e3) => n(t3, e3);
1936
+ picomatch.compileRe = (t3, e3, u3 = false, n2 = false) => {
1937
+ if (u3 === true) {
1938
+ return t3.output;
1939
+ }
1940
+ const o2 = e3 || {};
1941
+ const s2 = o2.contains ? "" : "^";
1942
+ const r2 = o2.contains ? "" : "$";
1943
+ let a = `${s2}(?:${t3.output})${r2}`;
1944
+ if (t3 && t3.negated === true) {
1945
+ a = `^(?!${a}).*$`;
1946
+ }
1947
+ const i = picomatch.toRegex(a, e3);
1948
+ if (n2 === true) {
1949
+ i.state = t3;
1950
+ }
1951
+ return i;
1952
+ };
1953
+ picomatch.makeRe = (t3, e3 = {}, u3 = false, n2 = false) => {
1954
+ if (!t3 || typeof t3 !== "string") {
1955
+ throw new TypeError("Expected a non-empty string");
1956
+ }
1957
+ let s2 = { negated: false, fastpaths: true };
1958
+ if (e3.fastpaths !== false && (t3[0] === "." || t3[0] === "*")) {
1959
+ s2.output = o.fastpaths(t3, e3);
1960
+ }
1961
+ if (!s2.output) {
1962
+ s2 = o(t3, e3);
1963
+ }
1964
+ return picomatch.compileRe(s2, e3, u3, n2);
1965
+ };
1966
+ picomatch.toRegex = (t3, e3) => {
1967
+ try {
1968
+ const u3 = e3 || {};
1969
+ return new RegExp(t3, u3.flags || (u3.nocase ? "i" : ""));
1970
+ } catch (t4) {
1971
+ if (e3 && e3.debug === true) throw t4;
1972
+ return /$^/;
1973
+ }
1974
+ };
1975
+ picomatch.constants = r;
1976
+ t2.exports = picomatch;
1977
+ }, 716: (t2, e2, u2) => {
1978
+ const n = u2(96);
1979
+ const { CHAR_ASTERISK: o, CHAR_AT: s, CHAR_BACKWARD_SLASH: r, CHAR_COMMA: a, CHAR_DOT: i, CHAR_EXCLAMATION_MARK: c, CHAR_FORWARD_SLASH: p, CHAR_LEFT_CURLY_BRACE: l, CHAR_LEFT_PARENTHESES: f, CHAR_LEFT_SQUARE_BRACKET: A, CHAR_PLUS: _, CHAR_QUESTION_MARK: R, CHAR_RIGHT_CURLY_BRACE: E, CHAR_RIGHT_PARENTHESES: h, CHAR_RIGHT_SQUARE_BRACKET: g } = u2(154);
1980
+ const isPathSeparator = (t3) => t3 === p || t3 === r;
1981
+ const depth = (t3) => {
1982
+ if (t3.isPrefix !== true) {
1983
+ t3.depth = t3.isGlobstar ? Infinity : 1;
1984
+ }
1985
+ };
1986
+ const scan = (t3, e3) => {
1987
+ const u3 = e3 || {};
1988
+ const b = t3.length - 1;
1989
+ const C = u3.parts === true || u3.scanToEnd === true;
1990
+ const y = [];
1991
+ const $ = [];
1992
+ const x = [];
1993
+ let S = t3;
1994
+ let H = -1;
1995
+ let v = 0;
1996
+ let d = 0;
1997
+ let L = false;
1998
+ let T = false;
1999
+ let O = false;
2000
+ let k = false;
2001
+ let m = false;
2002
+ let w = false;
2003
+ let N = false;
2004
+ let I = false;
2005
+ let B = false;
2006
+ let G = false;
2007
+ let D = 0;
2008
+ let M;
2009
+ let P;
2010
+ let K = { value: "", depth: 0, isGlob: false };
2011
+ const eos = () => H >= b;
2012
+ const peek = () => S.charCodeAt(H + 1);
2013
+ const advance = () => {
2014
+ M = P;
2015
+ return S.charCodeAt(++H);
2016
+ };
2017
+ while (H < b) {
2018
+ P = advance();
2019
+ let t4;
2020
+ if (P === r) {
2021
+ N = K.backslashes = true;
2022
+ P = advance();
2023
+ if (P === l) {
2024
+ w = true;
2025
+ }
2026
+ continue;
2027
+ }
2028
+ if (w === true || P === l) {
2029
+ D++;
2030
+ while (eos() !== true && (P = advance())) {
2031
+ if (P === r) {
2032
+ N = K.backslashes = true;
2033
+ advance();
2034
+ continue;
2035
+ }
2036
+ if (P === l) {
2037
+ D++;
2038
+ continue;
2039
+ }
2040
+ if (w !== true && P === i && (P = advance()) === i) {
2041
+ L = K.isBrace = true;
2042
+ O = K.isGlob = true;
2043
+ G = true;
2044
+ if (C === true) {
2045
+ continue;
2046
+ }
2047
+ break;
2048
+ }
2049
+ if (w !== true && P === a) {
2050
+ L = K.isBrace = true;
2051
+ O = K.isGlob = true;
2052
+ G = true;
2053
+ if (C === true) {
2054
+ continue;
2055
+ }
2056
+ break;
2057
+ }
2058
+ if (P === E) {
2059
+ D--;
2060
+ if (D === 0) {
2061
+ w = false;
2062
+ L = K.isBrace = true;
2063
+ G = true;
2064
+ break;
2065
+ }
2066
+ }
2067
+ }
2068
+ if (C === true) {
2069
+ continue;
2070
+ }
2071
+ break;
2072
+ }
2073
+ if (P === p) {
2074
+ y.push(H);
2075
+ $.push(K);
2076
+ K = { value: "", depth: 0, isGlob: false };
2077
+ if (G === true) continue;
2078
+ if (M === i && H === v + 1) {
2079
+ v += 2;
2080
+ continue;
2081
+ }
2082
+ d = H + 1;
2083
+ continue;
2084
+ }
2085
+ if (u3.noext !== true) {
2086
+ const t5 = P === _ || P === s || P === o || P === R || P === c;
2087
+ if (t5 === true && peek() === f) {
2088
+ O = K.isGlob = true;
2089
+ k = K.isExtglob = true;
2090
+ G = true;
2091
+ if (P === c && H === v) {
2092
+ B = true;
2093
+ }
2094
+ if (C === true) {
2095
+ while (eos() !== true && (P = advance())) {
2096
+ if (P === r) {
2097
+ N = K.backslashes = true;
2098
+ P = advance();
2099
+ continue;
2100
+ }
2101
+ if (P === h) {
2102
+ O = K.isGlob = true;
2103
+ G = true;
2104
+ break;
2105
+ }
2106
+ }
2107
+ continue;
2108
+ }
2109
+ break;
2110
+ }
2111
+ }
2112
+ if (P === o) {
2113
+ if (M === o) m = K.isGlobstar = true;
2114
+ O = K.isGlob = true;
2115
+ G = true;
2116
+ if (C === true) {
2117
+ continue;
2118
+ }
2119
+ break;
2120
+ }
2121
+ if (P === R) {
2122
+ O = K.isGlob = true;
2123
+ G = true;
2124
+ if (C === true) {
2125
+ continue;
2126
+ }
2127
+ break;
2128
+ }
2129
+ if (P === A) {
2130
+ while (eos() !== true && (t4 = advance())) {
2131
+ if (t4 === r) {
2132
+ N = K.backslashes = true;
2133
+ advance();
2134
+ continue;
2135
+ }
2136
+ if (t4 === g) {
2137
+ T = K.isBracket = true;
2138
+ O = K.isGlob = true;
2139
+ G = true;
2140
+ break;
2141
+ }
2142
+ }
2143
+ if (C === true) {
2144
+ continue;
2145
+ }
2146
+ break;
2147
+ }
2148
+ if (u3.nonegate !== true && P === c && H === v) {
2149
+ I = K.negated = true;
2150
+ v++;
2151
+ continue;
2152
+ }
2153
+ if (u3.noparen !== true && P === f) {
2154
+ O = K.isGlob = true;
2155
+ if (C === true) {
2156
+ while (eos() !== true && (P = advance())) {
2157
+ if (P === f) {
2158
+ N = K.backslashes = true;
2159
+ P = advance();
2160
+ continue;
2161
+ }
2162
+ if (P === h) {
2163
+ G = true;
2164
+ break;
2165
+ }
2166
+ }
2167
+ continue;
2168
+ }
2169
+ break;
2170
+ }
2171
+ if (O === true) {
2172
+ G = true;
2173
+ if (C === true) {
2174
+ continue;
2175
+ }
2176
+ break;
2177
+ }
2178
+ }
2179
+ if (u3.noext === true) {
2180
+ k = false;
2181
+ O = false;
2182
+ }
2183
+ let U = S;
2184
+ let X = "";
2185
+ let F = "";
2186
+ if (v > 0) {
2187
+ X = S.slice(0, v);
2188
+ S = S.slice(v);
2189
+ d -= v;
2190
+ }
2191
+ if (U && O === true && d > 0) {
2192
+ U = S.slice(0, d);
2193
+ F = S.slice(d);
2194
+ } else if (O === true) {
2195
+ U = "";
2196
+ F = S;
2197
+ } else {
2198
+ U = S;
2199
+ }
2200
+ if (U && U !== "" && U !== "/" && U !== S) {
2201
+ if (isPathSeparator(U.charCodeAt(U.length - 1))) {
2202
+ U = U.slice(0, -1);
2203
+ }
2204
+ }
2205
+ if (u3.unescape === true) {
2206
+ if (F) F = n.removeBackslashes(F);
2207
+ if (U && N === true) {
2208
+ U = n.removeBackslashes(U);
2209
+ }
2210
+ }
2211
+ const Q = { prefix: X, input: t3, start: v, base: U, glob: F, isBrace: L, isBracket: T, isGlob: O, isExtglob: k, isGlobstar: m, negated: I, negatedExtglob: B };
2212
+ if (u3.tokens === true) {
2213
+ Q.maxDepth = 0;
2214
+ if (!isPathSeparator(P)) {
2215
+ $.push(K);
2216
+ }
2217
+ Q.tokens = $;
2218
+ }
2219
+ if (u3.parts === true || u3.tokens === true) {
2220
+ let e4;
2221
+ for (let n2 = 0; n2 < y.length; n2++) {
2222
+ const o2 = e4 ? e4 + 1 : v;
2223
+ const s2 = y[n2];
2224
+ const r2 = t3.slice(o2, s2);
2225
+ if (u3.tokens) {
2226
+ if (n2 === 0 && v !== 0) {
2227
+ $[n2].isPrefix = true;
2228
+ $[n2].value = X;
2229
+ } else {
2230
+ $[n2].value = r2;
2231
+ }
2232
+ depth($[n2]);
2233
+ Q.maxDepth += $[n2].depth;
2234
+ }
2235
+ if (n2 !== 0 || r2 !== "") {
2236
+ x.push(r2);
2237
+ }
2238
+ e4 = s2;
2239
+ }
2240
+ if (e4 && e4 + 1 < t3.length) {
2241
+ const n2 = t3.slice(e4 + 1);
2242
+ x.push(n2);
2243
+ if (u3.tokens) {
2244
+ $[$.length - 1].value = n2;
2245
+ depth($[$.length - 1]);
2246
+ Q.maxDepth += $[$.length - 1].depth;
2247
+ }
2248
+ }
2249
+ Q.slashes = y;
2250
+ Q.parts = x;
2251
+ }
2252
+ return Q;
2253
+ };
2254
+ t2.exports = scan;
2255
+ }, 96: (t2, e2, u2) => {
2256
+ const { REGEX_BACKSLASH: n, REGEX_REMOVE_BACKSLASH: o, REGEX_SPECIAL_CHARS: s, REGEX_SPECIAL_CHARS_GLOBAL: r } = u2(154);
2257
+ e2.isObject = (t3) => t3 !== null && typeof t3 === "object" && !Array.isArray(t3);
2258
+ e2.hasRegexChars = (t3) => s.test(t3);
2259
+ e2.isRegexChar = (t3) => t3.length === 1 && e2.hasRegexChars(t3);
2260
+ e2.escapeRegex = (t3) => t3.replace(r, "\\$1");
2261
+ e2.toPosixSlashes = (t3) => t3.replace(n, "/");
2262
+ e2.removeBackslashes = (t3) => t3.replace(o, (t4) => t4 === "\\" ? "" : t4);
2263
+ e2.escapeLast = (t3, u3, n2) => {
2264
+ const o2 = t3.lastIndexOf(u3, n2);
2265
+ if (o2 === -1) return t3;
2266
+ if (t3[o2 - 1] === "\\") return e2.escapeLast(t3, u3, o2 - 1);
2267
+ return `${t3.slice(0, o2)}\\${t3.slice(o2)}`;
2268
+ };
2269
+ e2.removePrefix = (t3, e3 = {}) => {
2270
+ let u3 = t3;
2271
+ if (u3.startsWith("./")) {
2272
+ u3 = u3.slice(2);
2273
+ e3.prefix = "./";
2274
+ }
2275
+ return u3;
2276
+ };
2277
+ e2.wrapOutput = (t3, e3 = {}, u3 = {}) => {
2278
+ const n2 = u3.contains ? "" : "^";
2279
+ const o2 = u3.contains ? "" : "$";
2280
+ let s2 = `${n2}(?:${t3})${o2}`;
2281
+ if (e3.negated === true) {
2282
+ s2 = `(?:^(?!${s2}).*$)`;
2283
+ }
2284
+ return s2;
2285
+ };
2286
+ e2.basename = (t3, { windows: e3 } = {}) => {
2287
+ const u3 = t3.split(e3 ? /[\\/]/ : "/");
2288
+ const n2 = u3[u3.length - 1];
2289
+ if (n2 === "") {
2290
+ return u3[u3.length - 2];
2291
+ }
2292
+ return n2;
2293
+ };
2294
+ } };
2295
+ var e = {};
2296
+ function __nccwpck_require__(u2) {
2297
+ var n = e[u2];
2298
+ if (n !== void 0) {
2299
+ return n.exports;
2300
+ }
2301
+ var o = e[u2] = { exports: {} };
2302
+ var s = true;
2303
+ try {
2304
+ t[u2](o, o.exports, __nccwpck_require__);
2305
+ s = false;
2306
+ } finally {
2307
+ if (s) delete e[u2];
2308
+ }
2309
+ return o.exports;
2310
+ }
2311
+ if (typeof __nccwpck_require__ !== "undefined") __nccwpck_require__.ab = __dirname + "/";
2312
+ var u = __nccwpck_require__(170);
2313
+ module.exports = u;
2314
+ })();
2315
+ }
2316
+ });
2317
+
2318
+ // node_modules/next/dist/shared/lib/match-local-pattern.js
2319
+ var require_match_local_pattern = __commonJS({
2320
+ "node_modules/next/dist/shared/lib/match-local-pattern.js"(exports) {
2321
+ "use strict";
2322
+ Object.defineProperty(exports, "__esModule", {
2323
+ value: true
2324
+ });
2325
+ function _export(target, all) {
2326
+ for (var name in all) Object.defineProperty(target, name, {
2327
+ enumerable: true,
2328
+ get: all[name]
2329
+ });
2330
+ }
2331
+ _export(exports, {
2332
+ hasLocalMatch: function() {
2333
+ return hasLocalMatch;
2334
+ },
2335
+ matchLocalPattern: function() {
2336
+ return matchLocalPattern;
2337
+ }
2338
+ });
2339
+ var _picomatch = require_picomatch();
2340
+ function matchLocalPattern(pattern, url) {
2341
+ if (pattern.search !== void 0) {
2342
+ if (pattern.search !== url.search) {
2343
+ return false;
2344
+ }
2345
+ }
2346
+ var _pattern_pathname;
2347
+ if (!(0, _picomatch.makeRe)((_pattern_pathname = pattern.pathname) != null ? _pattern_pathname : "**", {
2348
+ dot: true
2349
+ }).test(url.pathname)) {
2350
+ return false;
2351
+ }
2352
+ return true;
2353
+ }
2354
+ function hasLocalMatch(localPatterns, urlPathAndQuery) {
2355
+ if (!localPatterns) {
2356
+ return true;
2357
+ }
2358
+ const url = new URL(urlPathAndQuery, "http://n");
2359
+ return localPatterns.some((p) => matchLocalPattern(p, url));
2360
+ }
2361
+ }
2362
+ });
2363
+
2364
+ // node_modules/next/dist/shared/lib/match-remote-pattern.js
2365
+ var require_match_remote_pattern = __commonJS({
2366
+ "node_modules/next/dist/shared/lib/match-remote-pattern.js"(exports) {
2367
+ "use strict";
2368
+ Object.defineProperty(exports, "__esModule", {
2369
+ value: true
2370
+ });
2371
+ function _export(target, all) {
2372
+ for (var name in all) Object.defineProperty(target, name, {
2373
+ enumerable: true,
2374
+ get: all[name]
2375
+ });
2376
+ }
2377
+ _export(exports, {
2378
+ hasRemoteMatch: function() {
2379
+ return hasRemoteMatch;
2380
+ },
2381
+ matchRemotePattern: function() {
2382
+ return matchRemotePattern;
2383
+ }
2384
+ });
2385
+ var _picomatch = require_picomatch();
2386
+ function matchRemotePattern(pattern, url) {
2387
+ if (pattern.protocol !== void 0) {
2388
+ if (pattern.protocol.replace(/:$/, "") !== url.protocol.replace(/:$/, "")) {
2389
+ return false;
2390
+ }
2391
+ }
2392
+ if (pattern.port !== void 0) {
2393
+ if (pattern.port !== url.port) {
2394
+ return false;
2395
+ }
2396
+ }
2397
+ if (pattern.hostname === void 0) {
2398
+ throw Object.defineProperty(new Error("Pattern should define hostname but found\n" + JSON.stringify(pattern)), "__NEXT_ERROR_CODE", {
2399
+ value: "E410",
2400
+ enumerable: false,
2401
+ configurable: true
2402
+ });
2403
+ } else {
2404
+ if (!(0, _picomatch.makeRe)(pattern.hostname).test(url.hostname)) {
2405
+ return false;
2406
+ }
2407
+ }
2408
+ if (pattern.search !== void 0) {
2409
+ if (pattern.search !== url.search) {
2410
+ return false;
2411
+ }
2412
+ }
2413
+ var _pattern_pathname;
2414
+ if (!(0, _picomatch.makeRe)((_pattern_pathname = pattern.pathname) != null ? _pattern_pathname : "**", {
2415
+ dot: true
2416
+ }).test(url.pathname)) {
2417
+ return false;
2418
+ }
2419
+ return true;
2420
+ }
2421
+ function hasRemoteMatch(domains, remotePatterns, url) {
2422
+ return domains.some((domain) => url.hostname === domain) || remotePatterns.some((p) => matchRemotePattern(p, url));
2423
+ }
2424
+ }
2425
+ });
2426
+
2427
+ // node_modules/next/dist/shared/lib/image-loader.js
2428
+ var require_image_loader = __commonJS({
2429
+ "node_modules/next/dist/shared/lib/image-loader.js"(exports) {
2430
+ "use strict";
2431
+ Object.defineProperty(exports, "__esModule", {
2432
+ value: true
2433
+ });
2434
+ Object.defineProperty(exports, "default", {
2435
+ enumerable: true,
2436
+ get: function() {
2437
+ return _default;
2438
+ }
2439
+ });
2440
+ var DEFAULT_Q = 75;
2441
+ function defaultLoader(param) {
2442
+ let { config, src, width, quality } = param;
2443
+ var _config_qualities;
2444
+ if (process.env.NODE_ENV !== "production") {
2445
+ const missingValues = [];
2446
+ if (!src) missingValues.push("src");
2447
+ if (!width) missingValues.push("width");
2448
+ if (missingValues.length > 0) {
2449
+ 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({
2450
+ src,
2451
+ width,
2452
+ quality
2453
+ })), "__NEXT_ERROR_CODE", {
2454
+ value: "E188",
2455
+ enumerable: false,
2456
+ configurable: true
2457
+ });
2458
+ }
2459
+ if (src.startsWith("//")) {
2460
+ 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", {
2461
+ value: "E360",
2462
+ enumerable: false,
2463
+ configurable: true
2464
+ });
2465
+ }
2466
+ if (src.startsWith("/") && config.localPatterns) {
2467
+ if (process.env.NODE_ENV !== "test" && // micromatch isn't compatible with edge runtime
2468
+ process.env.NEXT_RUNTIME !== "edge") {
2469
+ const { hasLocalMatch } = require_match_local_pattern();
2470
+ if (!hasLocalMatch(config.localPatterns, src)) {
2471
+ 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", {
2472
+ value: "E426",
2473
+ enumerable: false,
2474
+ configurable: true
2475
+ });
2476
+ }
2477
+ }
2478
+ }
2479
+ if (!src.startsWith("/") && (config.domains || config.remotePatterns)) {
2480
+ let parsedSrc;
2481
+ try {
2482
+ parsedSrc = new URL(src);
2483
+ } catch (err) {
2484
+ console.error(err);
2485
+ 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", {
2486
+ value: "E63",
2487
+ enumerable: false,
2488
+ configurable: true
2489
+ });
2490
+ }
2491
+ if (process.env.NODE_ENV !== "test" && // micromatch isn't compatible with edge runtime
2492
+ process.env.NEXT_RUNTIME !== "edge") {
2493
+ const { hasRemoteMatch } = require_match_remote_pattern();
2494
+ if (!hasRemoteMatch(config.domains, config.remotePatterns, parsedSrc)) {
2495
+ 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", {
2496
+ value: "E231",
2497
+ enumerable: false,
2498
+ configurable: true
2499
+ });
2500
+ }
2501
+ }
2502
+ }
2503
+ if (quality && config.qualities && !config.qualities.includes(quality)) {
2504
+ 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", {
2505
+ value: "E623",
2506
+ enumerable: false,
2507
+ configurable: true
2508
+ });
2509
+ }
2510
+ }
2511
+ 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;
2512
+ 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 : "");
2513
+ }
2514
+ defaultLoader.__next_img_default = true;
2515
+ var _default = defaultLoader;
2516
+ }
2517
+ });
2518
+
2519
+ // node_modules/next/dist/client/use-merged-ref.js
2520
+ var require_use_merged_ref = __commonJS({
2521
+ "node_modules/next/dist/client/use-merged-ref.js"(exports, module) {
2522
+ "use strict";
2523
+ Object.defineProperty(exports, "__esModule", {
2524
+ value: true
2525
+ });
2526
+ Object.defineProperty(exports, "useMergedRef", {
2527
+ enumerable: true,
2528
+ get: function() {
2529
+ return useMergedRef;
2530
+ }
2531
+ });
2532
+ var _react = __require("react");
2533
+ function useMergedRef(refA, refB) {
2534
+ const cleanupA = (0, _react.useRef)(null);
2535
+ const cleanupB = (0, _react.useRef)(null);
2536
+ return (0, _react.useCallback)((current) => {
2537
+ if (current === null) {
2538
+ const cleanupFnA = cleanupA.current;
2539
+ if (cleanupFnA) {
2540
+ cleanupA.current = null;
2541
+ cleanupFnA();
2542
+ }
2543
+ const cleanupFnB = cleanupB.current;
2544
+ if (cleanupFnB) {
2545
+ cleanupB.current = null;
2546
+ cleanupFnB();
2547
+ }
2548
+ } else {
2549
+ if (refA) {
2550
+ cleanupA.current = applyRef(refA, current);
2551
+ }
2552
+ if (refB) {
2553
+ cleanupB.current = applyRef(refB, current);
2554
+ }
2555
+ }
2556
+ }, [
2557
+ refA,
2558
+ refB
2559
+ ]);
2560
+ }
2561
+ function applyRef(refA, current) {
2562
+ if (typeof refA === "function") {
2563
+ const cleanup = refA(current);
2564
+ if (typeof cleanup === "function") {
2565
+ return cleanup;
2566
+ } else {
2567
+ return () => refA(null);
2568
+ }
2569
+ } else {
2570
+ refA.current = current;
2571
+ return () => {
2572
+ refA.current = null;
2573
+ };
2574
+ }
2575
+ }
2576
+ if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
2577
+ Object.defineProperty(exports.default, "__esModule", { value: true });
2578
+ Object.assign(exports.default, exports);
2579
+ module.exports = exports.default;
2580
+ }
2581
+ }
2582
+ });
2583
+
2584
+ // node_modules/next/dist/client/image-component.js
2585
+ var require_image_component = __commonJS({
2586
+ "node_modules/next/dist/client/image-component.js"(exports, module) {
2587
+ "use client";
2588
+ "use strict";
2589
+ Object.defineProperty(exports, "__esModule", {
2590
+ value: true
2591
+ });
2592
+ Object.defineProperty(exports, "Image", {
2593
+ enumerable: true,
2594
+ get: function() {
2595
+ return Image2;
2596
+ }
2597
+ });
2598
+ var _interop_require_default = require_interop_require_default();
2599
+ var _interop_require_wildcard = require_interop_require_wildcard();
2600
+ var _jsxruntime = __require("react/jsx-runtime");
2601
+ var _react = /* @__PURE__ */ _interop_require_wildcard._(__require("react"));
2602
+ var _reactdom = /* @__PURE__ */ _interop_require_default._(__require("react-dom"));
2603
+ var _head = /* @__PURE__ */ _interop_require_default._(require_head());
2604
+ var _getimgprops = require_get_img_props();
2605
+ var _imageconfig = require_image_config();
2606
+ var _imageconfigcontextsharedruntime = require_image_config_context_shared_runtime();
2607
+ var _warnonce = require_warn_once();
2608
+ var _routercontextsharedruntime = require_router_context_shared_runtime();
2609
+ var _imageloader = /* @__PURE__ */ _interop_require_default._(require_image_loader());
2610
+ var _usemergedref = require_use_merged_ref();
2611
+ var configEnv = process.env.__NEXT_IMAGE_OPTS;
2612
+ if (typeof window === "undefined") {
2613
+ ;
2614
+ globalThis.__NEXT_IMAGE_IMPORTED = true;
2615
+ }
2616
+ function handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput) {
2617
+ const src = img == null ? void 0 : img.src;
2618
+ if (!img || img["data-loaded-src"] === src) {
2619
+ return;
2620
+ }
2621
+ img["data-loaded-src"] = src;
2622
+ const p = "decode" in img ? img.decode() : Promise.resolve();
2623
+ p.catch(() => {
2624
+ }).then(() => {
2625
+ if (!img.parentElement || !img.isConnected) {
2626
+ return;
2627
+ }
2628
+ if (placeholder !== "empty") {
2629
+ setBlurComplete(true);
2630
+ }
2631
+ if (onLoadRef == null ? void 0 : onLoadRef.current) {
2632
+ const event = new Event("load");
2633
+ Object.defineProperty(event, "target", {
2634
+ writable: false,
2635
+ value: img
2636
+ });
2637
+ let prevented = false;
2638
+ let stopped = false;
2639
+ onLoadRef.current({
2640
+ ...event,
2641
+ nativeEvent: event,
2642
+ currentTarget: img,
2643
+ target: img,
2644
+ isDefaultPrevented: () => prevented,
2645
+ isPropagationStopped: () => stopped,
2646
+ persist: () => {
2647
+ },
2648
+ preventDefault: () => {
2649
+ prevented = true;
2650
+ event.preventDefault();
2651
+ },
2652
+ stopPropagation: () => {
2653
+ stopped = true;
2654
+ event.stopPropagation();
2655
+ }
2656
+ });
2657
+ }
2658
+ if (onLoadingCompleteRef == null ? void 0 : onLoadingCompleteRef.current) {
2659
+ onLoadingCompleteRef.current(img);
2660
+ }
2661
+ if (process.env.NODE_ENV !== "production") {
2662
+ const origSrc = new URL(src, "http://n").searchParams.get("url") || src;
2663
+ if (img.getAttribute("data-nimg") === "fill") {
2664
+ if (!unoptimized && (!sizesInput || sizesInput === "100vw")) {
2665
+ let widthViewportRatio = img.getBoundingClientRect().width / window.innerWidth;
2666
+ if (widthViewportRatio < 0.6) {
2667
+ if (sizesInput === "100vw") {
2668
+ (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');
2669
+ } else {
2670
+ (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');
2671
+ }
2672
+ }
2673
+ }
2674
+ if (img.parentElement) {
2675
+ const { position } = window.getComputedStyle(img.parentElement);
2676
+ const valid = [
2677
+ "absolute",
2678
+ "fixed",
2679
+ "relative"
2680
+ ];
2681
+ if (!valid.includes(position)) {
2682
+ (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(",") + ".");
2683
+ }
2684
+ }
2685
+ if (img.height === 0) {
2686
+ (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.');
2687
+ }
2688
+ }
2689
+ const heightModified = img.height.toString() !== img.getAttribute("height");
2690
+ const widthModified = img.width.toString() !== img.getAttribute("width");
2691
+ if (heightModified && !widthModified || !heightModified && widthModified) {
2692
+ (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.`);
2693
+ }
2694
+ }
2695
+ });
2696
+ }
2697
+ function getDynamicProps(fetchPriority) {
2698
+ if (Boolean(_react.use)) {
2699
+ return {
2700
+ fetchPriority
2701
+ };
2702
+ }
2703
+ return {
2704
+ fetchpriority: fetchPriority
2705
+ };
2706
+ }
2707
+ var ImageElement = /* @__PURE__ */ (0, _react.forwardRef)((param, forwardedRef) => {
2708
+ let { src, srcSet, sizes, height, width, decoding, className, style, fetchPriority, placeholder, loading, unoptimized, fill, onLoadRef, onLoadingCompleteRef, setBlurComplete, setShowAltText, sizesInput, onLoad, onError, ...rest } = param;
2709
+ const ownRef = (0, _react.useCallback)((img) => {
2710
+ if (!img) {
2711
+ return;
2712
+ }
2713
+ if (onError) {
2714
+ img.src = img.src;
2715
+ }
2716
+ if (process.env.NODE_ENV !== "production") {
2717
+ if (!src) {
2718
+ console.error('Image is missing required "src" property:', img);
2719
+ }
2720
+ if (img.getAttribute("alt") === null) {
2721
+ console.error('Image is missing required "alt" property. Please add Alternative Text to describe the image for screen readers and search engines.');
2722
+ }
2723
+ }
2724
+ if (img.complete) {
2725
+ handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);
2726
+ }
2727
+ }, [
2728
+ src,
2729
+ placeholder,
2730
+ onLoadRef,
2731
+ onLoadingCompleteRef,
2732
+ setBlurComplete,
2733
+ onError,
2734
+ unoptimized,
2735
+ sizesInput
2736
+ ]);
2737
+ const ref = (0, _usemergedref.useMergedRef)(forwardedRef, ownRef);
2738
+ return /* @__PURE__ */ (0, _jsxruntime.jsx)("img", {
2739
+ ...rest,
2740
+ ...getDynamicProps(fetchPriority),
2741
+ // It's intended to keep `loading` before `src` because React updates
2742
+ // props in order which causes Safari/Firefox to not lazy load properly.
2743
+ // See https://github.com/facebook/react/issues/25883
2744
+ loading,
2745
+ width,
2746
+ height,
2747
+ decoding,
2748
+ "data-nimg": fill ? "fill" : "1",
2749
+ className,
2750
+ style,
2751
+ // It's intended to keep `src` the last attribute because React updates
2752
+ // attributes in order. If we keep `src` the first one, Safari will
2753
+ // immediately start to fetch `src`, before `sizes` and `srcSet` are even
2754
+ // updated by React. That causes multiple unnecessary requests if `srcSet`
2755
+ // and `sizes` are defined.
2756
+ // This bug cannot be reproduced in Chrome or Firefox.
2757
+ sizes,
2758
+ srcSet,
2759
+ src,
2760
+ ref,
2761
+ onLoad: (event) => {
2762
+ const img = event.currentTarget;
2763
+ handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);
2764
+ },
2765
+ onError: (event) => {
2766
+ setShowAltText(true);
2767
+ if (placeholder !== "empty") {
2768
+ setBlurComplete(true);
2769
+ }
2770
+ if (onError) {
2771
+ onError(event);
2772
+ }
2773
+ }
2774
+ });
2775
+ });
2776
+ function ImagePreload(param) {
2777
+ let { isAppRouter, imgAttributes } = param;
2778
+ const opts = {
2779
+ as: "image",
2780
+ imageSrcSet: imgAttributes.srcSet,
2781
+ imageSizes: imgAttributes.sizes,
2782
+ crossOrigin: imgAttributes.crossOrigin,
2783
+ referrerPolicy: imgAttributes.referrerPolicy,
2784
+ ...getDynamicProps(imgAttributes.fetchPriority)
2785
+ };
2786
+ if (isAppRouter && _reactdom.default.preload) {
2787
+ _reactdom.default.preload(
2788
+ imgAttributes.src,
2789
+ // @ts-expect-error TODO: upgrade to `@types/react-dom@18.3.x`
2790
+ opts
2791
+ );
2792
+ return null;
2793
+ }
2794
+ return /* @__PURE__ */ (0, _jsxruntime.jsx)(_head.default, {
2795
+ children: /* @__PURE__ */ (0, _jsxruntime.jsx)("link", {
2796
+ rel: "preload",
2797
+ // Note how we omit the `href` attribute, as it would only be relevant
2798
+ // for browsers that do not support `imagesrcset`, and in those cases
2799
+ // it would cause the incorrect image to be preloaded.
2800
+ //
2801
+ // https://html.spec.whatwg.org/multipage/semantics.html#attr-link-imagesrcset
2802
+ href: imgAttributes.srcSet ? void 0 : imgAttributes.src,
2803
+ ...opts
2804
+ }, "__nimg-" + imgAttributes.src + imgAttributes.srcSet + imgAttributes.sizes)
2805
+ });
2806
+ }
2807
+ var Image2 = /* @__PURE__ */ (0, _react.forwardRef)((props, forwardedRef) => {
2808
+ const pagesRouter = (0, _react.useContext)(_routercontextsharedruntime.RouterContext);
2809
+ const isAppRouter = !pagesRouter;
2810
+ const configContext = (0, _react.useContext)(_imageconfigcontextsharedruntime.ImageConfigContext);
2811
+ const config = (0, _react.useMemo)(() => {
2812
+ var _c_qualities;
2813
+ const c = configEnv || configContext || _imageconfig.imageConfigDefault;
2814
+ const allSizes = [
2815
+ ...c.deviceSizes,
2816
+ ...c.imageSizes
2817
+ ].sort((a, b) => a - b);
2818
+ const deviceSizes = c.deviceSizes.sort((a, b) => a - b);
2819
+ const qualities = (_c_qualities = c.qualities) == null ? void 0 : _c_qualities.sort((a, b) => a - b);
2820
+ return {
2821
+ ...c,
2822
+ allSizes,
2823
+ deviceSizes,
2824
+ qualities
2825
+ };
2826
+ }, [
2827
+ configContext
2828
+ ]);
2829
+ const { onLoad, onLoadingComplete } = props;
2830
+ const onLoadRef = (0, _react.useRef)(onLoad);
2831
+ (0, _react.useEffect)(() => {
2832
+ onLoadRef.current = onLoad;
2833
+ }, [
2834
+ onLoad
2835
+ ]);
2836
+ const onLoadingCompleteRef = (0, _react.useRef)(onLoadingComplete);
2837
+ (0, _react.useEffect)(() => {
2838
+ onLoadingCompleteRef.current = onLoadingComplete;
2839
+ }, [
2840
+ onLoadingComplete
2841
+ ]);
2842
+ const [blurComplete, setBlurComplete] = (0, _react.useState)(false);
2843
+ const [showAltText, setShowAltText] = (0, _react.useState)(false);
2844
+ const { props: imgAttributes, meta: imgMeta } = (0, _getimgprops.getImgProps)(props, {
2845
+ defaultLoader: _imageloader.default,
2846
+ imgConf: config,
2847
+ blurComplete,
2848
+ showAltText
2849
+ });
2850
+ return /* @__PURE__ */ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {
2851
+ children: [
2852
+ /* @__PURE__ */ (0, _jsxruntime.jsx)(ImageElement, {
2853
+ ...imgAttributes,
2854
+ unoptimized: imgMeta.unoptimized,
2855
+ placeholder: imgMeta.placeholder,
2856
+ fill: imgMeta.fill,
2857
+ onLoadRef,
2858
+ onLoadingCompleteRef,
2859
+ setBlurComplete,
2860
+ setShowAltText,
2861
+ sizesInput: props.sizes,
2862
+ ref: forwardedRef
2863
+ }),
2864
+ imgMeta.priority ? /* @__PURE__ */ (0, _jsxruntime.jsx)(ImagePreload, {
2865
+ isAppRouter,
2866
+ imgAttributes
2867
+ }) : null
2868
+ ]
2869
+ });
2870
+ });
2871
+ if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
2872
+ Object.defineProperty(exports.default, "__esModule", { value: true });
2873
+ Object.assign(exports.default, exports);
2874
+ module.exports = exports.default;
2875
+ }
2876
+ }
2877
+ });
2878
+
2879
+ // node_modules/next/dist/shared/lib/image-external.js
2880
+ var require_image_external = __commonJS({
2881
+ "node_modules/next/dist/shared/lib/image-external.js"(exports) {
2882
+ "use strict";
2883
+ Object.defineProperty(exports, "__esModule", {
2884
+ value: true
2885
+ });
2886
+ function _export(target, all) {
2887
+ for (var name in all) Object.defineProperty(target, name, {
2888
+ enumerable: true,
2889
+ get: all[name]
2890
+ });
2891
+ }
2892
+ _export(exports, {
2893
+ default: function() {
2894
+ return _default;
2895
+ },
2896
+ getImageProps: function() {
2897
+ return getImageProps;
2898
+ }
2899
+ });
2900
+ var _interop_require_default = require_interop_require_default();
2901
+ var _getimgprops = require_get_img_props();
2902
+ var _imagecomponent = require_image_component();
2903
+ var _imageloader = /* @__PURE__ */ _interop_require_default._(require_image_loader());
2904
+ function getImageProps(imgProps) {
2905
+ const { props } = (0, _getimgprops.getImgProps)(imgProps, {
2906
+ defaultLoader: _imageloader.default,
2907
+ // This is replaced by webpack define plugin
2908
+ imgConf: process.env.__NEXT_IMAGE_OPTS
2909
+ });
2910
+ for (const [key, value] of Object.entries(props)) {
2911
+ if (value === void 0) {
2912
+ delete props[key];
2913
+ }
2914
+ }
2915
+ return {
2916
+ props
2917
+ };
2918
+ }
2919
+ var _default = _imagecomponent.Image;
2920
+ }
2921
+ });
2922
+
2923
+ // node_modules/next/image.js
2924
+ var require_image = __commonJS({
2925
+ "node_modules/next/image.js"(exports, module) {
2926
+ module.exports = require_image_external();
2927
+ }
2928
+ });
29
2929
 
30
2930
  // src/components/icons-and-geometry/Avatar.tsx
2931
+ var import_image = __toESM(require_image());
2932
+ import clsx from "clsx";
2933
+ import { useState } from "react";
31
2934
  import { useMemo } from "react";
2935
+ import { UserIcon } from "lucide-react";
32
2936
  import { jsx, jsxs } from "react/jsx-runtime";
33
2937
  var avtarSizeList = ["sm", "md", "lg", "xl"];
34
2938
  var avatarSizeMapping = {
@@ -49,6 +2953,7 @@ var AvatarUtil = {
49
2953
  };
50
2954
  var Avatar = ({ image, name, size = "md", fullyRounded, className = "" }) => {
51
2955
  const pixels = avatarSizeMapping[size];
2956
+ const [hasImageError, setHasImageError] = useState(false);
52
2957
  const sizeStyle = {
53
2958
  minWidth: pixels,
54
2959
  maxWidth: pixels,
@@ -56,7 +2961,6 @@ var Avatar = ({ image, name, size = "md", fullyRounded, className = "" }) => {
56
2961
  maxHeight: pixels
57
2962
  };
58
2963
  const textClassName = textClassNameMapping[size];
59
- useLogOnce({ message: "Either set image or name in Avatar", condition: !image && !name, type: "warning" });
60
2964
  const displayName = useMemo(() => {
61
2965
  const maxLetters = size === "sm" ? 1 : 2;
62
2966
  return (name ?? "").split(" ").filter((_, index) => index < maxLetters).map((value) => value[0]).join("").toUpperCase();
@@ -76,17 +2980,21 @@ var Avatar = ({ image, name, size = "md", fullyRounded, className = "" }) => {
76
2980
  ),
77
2981
  style: sizeStyle,
78
2982
  children: [
79
- name && !image && /* @__PURE__ */ jsx("span", { className: clsx(textClassName, "absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2"), children: displayName }),
80
- image && /* @__PURE__ */ jsx(
81
- "img",
2983
+ name && (!image || hasImageError) && /* @__PURE__ */ jsx("span", { className: clsx(textClassName, "absolute z-[1] left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2"), children: displayName }),
2984
+ !name && /* @__PURE__ */ jsx("div", { className: clsx("absolute z-[1] left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2"), children: /* @__PURE__ */ jsx(UserIcon, { size: Math.round(pixels * 3 / 4) }) }),
2985
+ image && !hasImageError && /* @__PURE__ */ jsx(
2986
+ import_image.default,
82
2987
  {
83
2988
  className: clsx(
84
- "absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2",
2989
+ "absolute z-[2] left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2",
85
2990
  rounding
86
2991
  ),
87
2992
  src: image.avatarUrl,
88
2993
  alt: image.alt,
89
- style: sizeStyle
2994
+ style: sizeStyle,
2995
+ width: pixels,
2996
+ height: pixels,
2997
+ onError: () => setHasImageError(true)
90
2998
  }
91
2999
  )
92
3000
  ]