@medialane/ui 0.304.0 → 0.306.0

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 (59) hide show
  1. package/dist/components/account/input-otp.d.cts +2 -2
  2. package/dist/components/account/input-otp.d.ts +2 -2
  3. package/dist/components/account-page.cjs +151 -0
  4. package/dist/components/account-page.cjs.map +1 -0
  5. package/dist/components/account-page.d.cts +15 -0
  6. package/dist/components/account-page.d.ts +15 -0
  7. package/dist/components/account-page.js +117 -0
  8. package/dist/components/account-page.js.map +1 -0
  9. package/dist/components/button.d.cts +2 -2
  10. package/dist/components/button.d.ts +2 -2
  11. package/dist/components/cancel-order-confirm.cjs +48 -0
  12. package/dist/components/cancel-order-confirm.cjs.map +1 -0
  13. package/dist/components/cancel-order-confirm.d.cts +16 -0
  14. package/dist/components/cancel-order-confirm.d.ts +16 -0
  15. package/dist/components/cancel-order-confirm.js +24 -0
  16. package/dist/components/cancel-order-confirm.js.map +1 -0
  17. package/dist/components/creator-page.cjs +47 -68
  18. package/dist/components/creator-page.cjs.map +1 -1
  19. package/dist/components/creator-page.d.cts +2 -3
  20. package/dist/components/creator-page.d.ts +2 -3
  21. package/dist/components/creator-page.js +48 -69
  22. package/dist/components/creator-page.js.map +1 -1
  23. package/dist/components/fast-mint/fast-mint.d.cts +2 -2
  24. package/dist/components/fast-mint/fast-mint.d.ts +2 -2
  25. package/dist/components/launchpad/edition-mint-schema.d.cts +2 -2
  26. package/dist/components/launchpad/edition-mint-schema.d.ts +2 -2
  27. package/dist/components/marketplace-dialog-primitives.cjs +5 -5
  28. package/dist/components/marketplace-dialog-primitives.cjs.map +1 -1
  29. package/dist/components/marketplace-dialog-primitives.d.cts +1 -1
  30. package/dist/components/marketplace-dialog-primitives.d.ts +1 -1
  31. package/dist/components/marketplace-dialog-primitives.js +5 -5
  32. package/dist/components/marketplace-dialog-primitives.js.map +1 -1
  33. package/dist/components/sheet.d.cts +1 -1
  34. package/dist/components/sheet.d.ts +1 -1
  35. package/dist/components/underline-tabs.cjs +62 -0
  36. package/dist/components/underline-tabs.cjs.map +1 -0
  37. package/dist/components/underline-tabs.d.cts +20 -0
  38. package/dist/components/underline-tabs.d.ts +20 -0
  39. package/dist/components/underline-tabs.js +28 -0
  40. package/dist/components/underline-tabs.js.map +1 -0
  41. package/dist/index.cjs +11 -0
  42. package/dist/index.cjs.map +1 -1
  43. package/dist/index.d.cts +5 -1
  44. package/dist/index.d.ts +5 -1
  45. package/dist/index.js +8 -1
  46. package/dist/index.js.map +1 -1
  47. package/dist/utils/query-keys.cjs +1 -0
  48. package/dist/utils/query-keys.cjs.map +1 -1
  49. package/dist/utils/query-keys.d.cts +1 -0
  50. package/dist/utils/query-keys.d.ts +1 -0
  51. package/dist/utils/query-keys.js +1 -0
  52. package/dist/utils/query-keys.js.map +1 -1
  53. package/dist/utils/use-tokens.cjs +23 -0
  54. package/dist/utils/use-tokens.cjs.map +1 -1
  55. package/dist/utils/use-tokens.d.cts +180 -1
  56. package/dist/utils/use-tokens.d.ts +180 -1
  57. package/dist/utils/use-tokens.js +23 -1
  58. package/dist/utils/use-tokens.js.map +1 -1
  59. package/package.json +1 -1
@@ -1,3 +1,4 @@
1
+ import * as swr_infinite from 'swr/infinite';
1
2
  import * as _medialane_sdk from '@medialane/sdk';
2
3
  import * as swr from 'swr';
3
4
  import * as zod from 'zod';
@@ -356,10 +357,188 @@ declare function useTokensByOwner(address: string | null, page?: number, limit?:
356
357
  supply?: string | undefined;
357
358
  }[]>>;
358
359
  };
360
+ declare function useOwnedTokens(address: string | null, limit?: number): {
361
+ tokens: {
362
+ chain: string;
363
+ tokenId: string;
364
+ owner: string | null;
365
+ tokenUri: string | null;
366
+ contractAddress: string;
367
+ id: string;
368
+ createdAt: string;
369
+ updatedAt: string;
370
+ metadataStatus: "PENDING" | "FETCHING" | "FETCHED" | "FAILED";
371
+ standard: "ERC721" | "ERC1155" | null;
372
+ metadata: {
373
+ name: string | null;
374
+ description: string | null;
375
+ image: string | null;
376
+ author: string | null;
377
+ animationUrl: string | null;
378
+ attributes: zod.objectOutputType<{
379
+ trait_type: zod.ZodString;
380
+ value: zod.ZodUnion<[zod.ZodString, zod.ZodNumber, zod.ZodBoolean]>;
381
+ display_type: zod.ZodOptional<zod.ZodString>;
382
+ }, zod.ZodTypeAny, "passthrough">[] | null;
383
+ ipType: string | null;
384
+ licenseType: string | null;
385
+ commercialUse: boolean | null;
386
+ externalUrl: string | null;
387
+ };
388
+ balances: {
389
+ amount: string;
390
+ owner: string;
391
+ }[] | null;
392
+ activeOrders: {
393
+ status: "ACTIVE" | "FULFILLED" | "CANCELLED" | "EXPIRED";
394
+ chain: string;
395
+ offerer: string;
396
+ nftContract: string | null;
397
+ price: {
398
+ currency: string | null;
399
+ raw: string | null;
400
+ formatted: string | null;
401
+ decimals: number;
402
+ };
403
+ endTime: string;
404
+ fulfiller: string | null;
405
+ orderHash: string;
406
+ startTime: string;
407
+ txHash: {
408
+ created: string | null;
409
+ fulfilled: string | null;
410
+ cancelled: string | null;
411
+ };
412
+ token: {
413
+ name: string | null;
414
+ description: string | null;
415
+ image: string | null;
416
+ animationUrl: string | null;
417
+ } | null;
418
+ offer: {
419
+ token: string;
420
+ itemType: string;
421
+ identifier: string;
422
+ startAmount: string;
423
+ endAmount: string;
424
+ };
425
+ id: string;
426
+ consideration: {
427
+ recipient: string;
428
+ token: string;
429
+ itemType: string;
430
+ identifier: string;
431
+ startAmount: string;
432
+ endAmount: string;
433
+ };
434
+ nftTokenId: string | null;
435
+ createdBlockNumber: string;
436
+ remainingAmount: string | null;
437
+ createdAt: string;
438
+ updatedAt: string;
439
+ parentOrderHash?: string | null | undefined;
440
+ counterOfferMessage?: string | null | undefined;
441
+ hasActiveCounterOffer?: boolean | undefined;
442
+ }[];
443
+ holderCount?: number | undefined;
444
+ supply?: string | undefined;
445
+ }[];
446
+ total: number | null;
447
+ isLoading: boolean;
448
+ isLoadingMore: boolean;
449
+ hasMore: boolean;
450
+ loadMore: () => undefined;
451
+ error: any;
452
+ mutate: swr_infinite.SWRInfiniteKeyedMutator<_medialane_sdk.ApiResponse<{
453
+ chain: string;
454
+ tokenId: string;
455
+ owner: string | null;
456
+ tokenUri: string | null;
457
+ contractAddress: string;
458
+ id: string;
459
+ createdAt: string;
460
+ updatedAt: string;
461
+ metadataStatus: "PENDING" | "FETCHING" | "FETCHED" | "FAILED";
462
+ standard: "ERC721" | "ERC1155" | null;
463
+ metadata: {
464
+ name: string | null;
465
+ description: string | null;
466
+ image: string | null;
467
+ author: string | null;
468
+ animationUrl: string | null;
469
+ attributes: zod.objectOutputType<{
470
+ trait_type: zod.ZodString;
471
+ value: zod.ZodUnion<[zod.ZodString, zod.ZodNumber, zod.ZodBoolean]>;
472
+ display_type: zod.ZodOptional<zod.ZodString>;
473
+ }, zod.ZodTypeAny, "passthrough">[] | null;
474
+ ipType: string | null;
475
+ licenseType: string | null;
476
+ commercialUse: boolean | null;
477
+ externalUrl: string | null;
478
+ };
479
+ balances: {
480
+ amount: string;
481
+ owner: string;
482
+ }[] | null;
483
+ activeOrders: {
484
+ status: "ACTIVE" | "FULFILLED" | "CANCELLED" | "EXPIRED";
485
+ chain: string;
486
+ offerer: string;
487
+ nftContract: string | null;
488
+ price: {
489
+ currency: string | null;
490
+ raw: string | null;
491
+ formatted: string | null;
492
+ decimals: number;
493
+ };
494
+ endTime: string;
495
+ fulfiller: string | null;
496
+ orderHash: string;
497
+ startTime: string;
498
+ txHash: {
499
+ created: string | null;
500
+ fulfilled: string | null;
501
+ cancelled: string | null;
502
+ };
503
+ token: {
504
+ name: string | null;
505
+ description: string | null;
506
+ image: string | null;
507
+ animationUrl: string | null;
508
+ } | null;
509
+ offer: {
510
+ token: string;
511
+ itemType: string;
512
+ identifier: string;
513
+ startAmount: string;
514
+ endAmount: string;
515
+ };
516
+ id: string;
517
+ consideration: {
518
+ recipient: string;
519
+ token: string;
520
+ itemType: string;
521
+ identifier: string;
522
+ startAmount: string;
523
+ endAmount: string;
524
+ };
525
+ nftTokenId: string | null;
526
+ createdBlockNumber: string;
527
+ remainingAmount: string | null;
528
+ createdAt: string;
529
+ updatedAt: string;
530
+ parentOrderHash?: string | null | undefined;
531
+ counterOfferMessage?: string | null | undefined;
532
+ hasActiveCounterOffer?: boolean | undefined;
533
+ }[];
534
+ holderCount?: number | undefined;
535
+ supply?: string | undefined;
536
+ }[]>[]>;
537
+ };
359
538
  declare function useTokenHistory(contract: string | null, tokenId: string | null): {
360
539
  history: _medialane_sdk.ApiActivity[];
361
540
  isLoading: boolean;
362
541
  error: any;
363
542
  };
364
543
 
365
- export { useToken, useTokenBalance, useTokenHistory, useTokensByOwner };
544
+ export { useOwnedTokens, useToken, useTokenBalance, useTokenHistory, useTokensByOwner };
@@ -1,8 +1,9 @@
1
1
  "use client";
2
2
  import { useState } from "react";
3
3
  import useSWR from "swr";
4
+ import useSWRInfinite from "swr/infinite";
4
5
  import { useMedialaneClient } from "./use-medialane-client.js";
5
- import { queryKeys } from "./query-keys.js";
6
+ import { QUERY_PREFIX, queryKeys } from "./query-keys.js";
6
7
  const EMPTY_TOKENS = [];
7
8
  const INDEXING_POLL_MS = 1e4;
8
9
  const INDEXING_WINDOW_MS = 6e4;
@@ -57,6 +58,26 @@ function useTokensByOwner(address, page = 1, limit = 20, refreshMs = 6e4) {
57
58
  mutate
58
59
  };
59
60
  }
61
+ function useOwnedTokens(address, limit = 20) {
62
+ const client = useMedialaneClient();
63
+ const { data, error, isLoading, isValidating, setSize, mutate } = useSWRInfinite(
64
+ (index) => address ? [QUERY_PREFIX.tokensOwnedPages, address, limit, index + 1] : null,
65
+ ([, owner, pageSize, page]) => client.api.tokens.ownedBy(owner, { page, limit: pageSize }),
66
+ { revalidateOnFocus: false, revalidateFirstPage: false }
67
+ );
68
+ const tokens = data ? data.flatMap((page) => page.data) : EMPTY_TOKENS;
69
+ const total = data?.[0]?.meta?.total ?? null;
70
+ return {
71
+ tokens,
72
+ total,
73
+ isLoading,
74
+ isLoadingMore: isValidating,
75
+ hasMore: total !== null && tokens.length < total,
76
+ loadMore: () => void setSize((size) => size + 1),
77
+ error,
78
+ mutate
79
+ };
80
+ }
60
81
  function useTokenHistory(contract, tokenId) {
61
82
  const client = useMedialaneClient();
62
83
  const { data, error, isLoading } = useSWR(
@@ -67,6 +88,7 @@ function useTokenHistory(contract, tokenId) {
67
88
  return { history: data?.data ?? [], isLoading, error };
68
89
  }
69
90
  export {
91
+ useOwnedTokens,
70
92
  useToken,
71
93
  useTokenBalance,
72
94
  useTokenHistory,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/use-tokens.ts"],"sourcesContent":["\"use client\";\n\nimport { useState } from \"react\";\nimport useSWR from \"swr\";\nimport type { ApiToken } from \"@medialane/sdk\";\nimport { useMedialaneClient } from \"./use-medialane-client.js\";\nimport { queryKeys } from \"./query-keys.js\";\n\nconst EMPTY_TOKENS: ApiToken[] = [];\n\nconst INDEXING_POLL_MS = 10_000;\nconst INDEXING_WINDOW_MS = 60_000;\n\nfunction isNotIndexedYet(error: unknown): boolean {\n return Boolean(\n error && typeof error === \"object\" && (error as { status?: unknown }).status === 404,\n );\n}\n\nexport function useToken( contract: string | null, tokenId: string | null) {\n const client = useMedialaneClient();\n const [startedAt] = useState(() => Date.now());\n\n const { data, error, isLoading, mutate } = useSWR(\n contract && tokenId ? queryKeys.token(contract, tokenId) : null,\n () => client.api.tokens.get(contract!, tokenId!),\n {\n revalidateOnFocus: false,\n shouldRetryOnError: false,\n refreshInterval: (latest) =>\n latest || Date.now() - startedAt > INDEXING_WINDOW_MS ? 0 : INDEXING_POLL_MS,\n }\n );\n\n const token = data ?? null;\n const withinWindow = Date.now() - startedAt <= INDEXING_WINDOW_MS;\n\n return {\n token,\n isLoading,\n isIndexing: !token && isNotIndexedYet(error) && withinWindow,\n error: isNotIndexedYet(error) ? undefined : error,\n mutate,\n };\n}\n\nexport function useTokenBalance(\n contract: string | null,\n tokenId: string | null,\n owner: string | null | undefined,\n) {\n const client = useMedialaneClient();\n\n const { data, mutate } = useSWR(\n contract && tokenId && owner ? queryKeys.tokenBalance(contract, tokenId, owner) : null,\n () => client.api.tokens.balance(contract!, tokenId!, owner!),\n { revalidateOnFocus: false }\n );\n\n return { amount: data?.amount ?? null, mutate };\n}\n\nexport function useTokensByOwner(\n address: string | null,\n page = 1,\n limit = 20,\n refreshMs = 60_000,\n) {\n const client = useMedialaneClient();\n\n const { data, error, isLoading, mutate } = useSWR(\n address ? queryKeys.tokensOwned(address, page, limit) : null,\n () => client.api.tokens.ownedBy(address!, { page: page, limit: limit }),\n { revalidateOnFocus: false, refreshInterval: refreshMs, revalidateOnMount: true }\n );\n\n return {\n tokens: data?.data ?? EMPTY_TOKENS,\n meta: data?.meta,\n isLoading,\n error,\n mutate,\n };\n}\n\nexport function useTokenHistory( contract: string | null, tokenId: string | null) {\n const client = useMedialaneClient();\n\n const { data, error, isLoading } = useSWR(\n contract && tokenId ? queryKeys.tokenHistory(contract, tokenId) : null,\n () => client.api.tokens.history(contract!, tokenId!),\n { revalidateOnFocus: false }\n );\n\n return { history: data?.data ?? [], isLoading, error };\n}\n\n"],"mappings":";AAEA,SAAS,gBAAgB;AACzB,OAAO,YAAY;AAEnB,SAAS,0BAA0B;AACnC,SAAS,iBAAiB;AAE1B,MAAM,eAA2B,CAAC;AAElC,MAAM,mBAAmB;AACzB,MAAM,qBAAqB;AAE3B,SAAS,gBAAgB,OAAyB;AAChD,SAAO;AAAA,IACL,SAAS,OAAO,UAAU,YAAa,MAA+B,WAAW;AAAA,EACnF;AACF;AAEO,SAAS,SAAU,UAAyB,SAAwB;AACzE,QAAM,SAAS,mBAAmB;AAClC,QAAM,CAAC,SAAS,IAAI,SAAS,MAAM,KAAK,IAAI,CAAC;AAE7C,QAAM,EAAE,MAAM,OAAO,WAAW,OAAO,IAAI;AAAA,IACzC,YAAY,UAAU,UAAU,MAAM,UAAU,OAAO,IAAI;AAAA,IAC3D,MAAM,OAAO,IAAI,OAAO,IAAI,UAAW,OAAQ;AAAA,IAC/C;AAAA,MACE,mBAAmB;AAAA,MACnB,oBAAoB;AAAA,MACpB,iBAAiB,CAAC,WAChB,UAAU,KAAK,IAAI,IAAI,YAAY,qBAAqB,IAAI;AAAA,IAChE;AAAA,EACF;AAEA,QAAM,QAAQ,QAAQ;AACtB,QAAM,eAAe,KAAK,IAAI,IAAI,aAAa;AAE/C,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,YAAY,CAAC,SAAS,gBAAgB,KAAK,KAAK;AAAA,IAChD,OAAO,gBAAgB,KAAK,IAAI,SAAY;AAAA,IAC5C;AAAA,EACF;AACF;AAEO,SAAS,gBACd,UACA,SACA,OACA;AACA,QAAM,SAAS,mBAAmB;AAElC,QAAM,EAAE,MAAM,OAAO,IAAI;AAAA,IACvB,YAAY,WAAW,QAAQ,UAAU,aAAa,UAAU,SAAS,KAAK,IAAI;AAAA,IAClF,MAAM,OAAO,IAAI,OAAO,QAAQ,UAAW,SAAU,KAAM;AAAA,IAC3D,EAAE,mBAAmB,MAAM;AAAA,EAC7B;AAEA,SAAO,EAAE,QAAQ,MAAM,UAAU,MAAM,OAAO;AAChD;AAEO,SAAS,iBACd,SACA,OAAO,GACP,QAAQ,IACR,YAAY,KACZ;AACA,QAAM,SAAS,mBAAmB;AAElC,QAAM,EAAE,MAAM,OAAO,WAAW,OAAO,IAAI;AAAA,IACzC,UAAU,UAAU,YAAY,SAAS,MAAM,KAAK,IAAI;AAAA,IACxD,MAAM,OAAO,IAAI,OAAO,QAAQ,SAAU,EAAE,MAAY,MAAa,CAAC;AAAA,IACtE,EAAE,mBAAmB,OAAO,iBAAiB,WAAW,mBAAmB,KAAK;AAAA,EAClF;AAEA,SAAO;AAAA,IACL,QAAQ,MAAM,QAAQ;AAAA,IACtB,MAAM,MAAM;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,gBAAiB,UAAyB,SAAwB;AAChF,QAAM,SAAS,mBAAmB;AAElC,QAAM,EAAE,MAAM,OAAO,UAAU,IAAI;AAAA,IACjC,YAAY,UAAU,UAAU,aAAa,UAAU,OAAO,IAAI;AAAA,IAClE,MAAM,OAAO,IAAI,OAAO,QAAQ,UAAW,OAAQ;AAAA,IACnD,EAAE,mBAAmB,MAAM;AAAA,EAC7B;AAEA,SAAO,EAAE,SAAS,MAAM,QAAQ,CAAC,GAAG,WAAW,MAAM;AACvD;","names":[]}
1
+ {"version":3,"sources":["../../src/utils/use-tokens.ts"],"sourcesContent":["\"use client\";\n\nimport { useState } from \"react\";\nimport useSWR from \"swr\";\nimport useSWRInfinite from \"swr/infinite\";\nimport type { ApiToken } from \"@medialane/sdk\";\nimport { useMedialaneClient } from \"./use-medialane-client.js\";\nimport { QUERY_PREFIX, queryKeys } from \"./query-keys.js\";\n\nconst EMPTY_TOKENS: ApiToken[] = [];\n\nconst INDEXING_POLL_MS = 10_000;\nconst INDEXING_WINDOW_MS = 60_000;\n\nfunction isNotIndexedYet(error: unknown): boolean {\n return Boolean(\n error && typeof error === \"object\" && (error as { status?: unknown }).status === 404,\n );\n}\n\nexport function useToken( contract: string | null, tokenId: string | null) {\n const client = useMedialaneClient();\n const [startedAt] = useState(() => Date.now());\n\n const { data, error, isLoading, mutate } = useSWR(\n contract && tokenId ? queryKeys.token(contract, tokenId) : null,\n () => client.api.tokens.get(contract!, tokenId!),\n {\n revalidateOnFocus: false,\n shouldRetryOnError: false,\n refreshInterval: (latest) =>\n latest || Date.now() - startedAt > INDEXING_WINDOW_MS ? 0 : INDEXING_POLL_MS,\n }\n );\n\n const token = data ?? null;\n const withinWindow = Date.now() - startedAt <= INDEXING_WINDOW_MS;\n\n return {\n token,\n isLoading,\n isIndexing: !token && isNotIndexedYet(error) && withinWindow,\n error: isNotIndexedYet(error) ? undefined : error,\n mutate,\n };\n}\n\nexport function useTokenBalance(\n contract: string | null,\n tokenId: string | null,\n owner: string | null | undefined,\n) {\n const client = useMedialaneClient();\n\n const { data, mutate } = useSWR(\n contract && tokenId && owner ? queryKeys.tokenBalance(contract, tokenId, owner) : null,\n () => client.api.tokens.balance(contract!, tokenId!, owner!),\n { revalidateOnFocus: false }\n );\n\n return { amount: data?.amount ?? null, mutate };\n}\n\nexport function useTokensByOwner(\n address: string | null,\n page = 1,\n limit = 20,\n refreshMs = 60_000,\n) {\n const client = useMedialaneClient();\n\n const { data, error, isLoading, mutate } = useSWR(\n address ? queryKeys.tokensOwned(address, page, limit) : null,\n () => client.api.tokens.ownedBy(address!, { page: page, limit: limit }),\n { revalidateOnFocus: false, refreshInterval: refreshMs, revalidateOnMount: true }\n );\n\n return {\n tokens: data?.data ?? EMPTY_TOKENS,\n meta: data?.meta,\n isLoading,\n error,\n mutate,\n };\n}\n\nexport function useOwnedTokens(address: string | null, limit = 20) {\n const client = useMedialaneClient();\n\n const { data, error, isLoading, isValidating, setSize, mutate } = useSWRInfinite(\n (index) => (address ? ([QUERY_PREFIX.tokensOwnedPages, address, limit, index + 1] as const) : null),\n ([, owner, pageSize, page]) => client.api.tokens.ownedBy(owner, { page, limit: pageSize }),\n { revalidateOnFocus: false, revalidateFirstPage: false },\n );\n\n const tokens = data ? data.flatMap((page) => page.data) : EMPTY_TOKENS;\n const total = data?.[0]?.meta?.total ?? null;\n\n return {\n tokens,\n total,\n isLoading,\n isLoadingMore: isValidating,\n hasMore: total !== null && tokens.length < total,\n loadMore: () => void setSize((size) => size + 1),\n error,\n mutate,\n };\n}\n\nexport function useTokenHistory( contract: string | null, tokenId: string | null) {\n const client = useMedialaneClient();\n\n const { data, error, isLoading } = useSWR(\n contract && tokenId ? queryKeys.tokenHistory(contract, tokenId) : null,\n () => client.api.tokens.history(contract!, tokenId!),\n { revalidateOnFocus: false }\n );\n\n return { history: data?.data ?? [], isLoading, error };\n}\n\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medialane/ui",
3
- "version": "0.304.0",
3
+ "version": "0.306.0",
4
4
  "description": "Shared UI components for Medialane apps",
5
5
  "type": "module",
6
6
  "sideEffects": false,