From bce557cc2dc767628bed6aac87301a1be7c5431b Mon Sep 17 00:00:00 2001 From: rxliuli Date: Tue, 4 Nov 2025 05:03:50 +0800 Subject: init commit --- .../shelf/AccessibilityDeveloperLinkShelf.svelte | 36 +++ .../jet/shelf/AccessibilityFeaturesShelf.svelte | 35 +++ .../jet/shelf/AccessibilityHeaderShelf.svelte | 182 ++++++++++++ src/components/jet/shelf/ActionShelf.svelte | 80 ++++++ src/components/jet/shelf/AnnotationShelf.svelte | 49 ++++ .../jet/shelf/AppEventDetailShelf.svelte | 290 +++++++++++++++++++ src/components/jet/shelf/AppPromotionShelf.svelte | 47 +++ src/components/jet/shelf/AppShowcaseShelf.svelte | 29 ++ .../jet/shelf/AppTrailerLockupShelf.svelte | 48 ++++ src/components/jet/shelf/ArcadeFooterShelf.svelte | 32 +++ src/components/jet/shelf/BannerShelf.svelte | 35 +++ src/components/jet/shelf/BrickShelf.svelte | 31 ++ src/components/jet/shelf/CategoryBrickShelf.svelte | 28 ++ src/components/jet/shelf/EditorialCardShelf.svelte | 32 +++ src/components/jet/shelf/EditorialLinkShelf.svelte | 122 ++++++++ src/components/jet/shelf/FallbackShelf.svelte | 39 +++ src/components/jet/shelf/FramedArtworkShelf.svelte | 98 +++++++ src/components/jet/shelf/FramedVideoShelf.svelte | 78 +++++ src/components/jet/shelf/HeroCarouselShelf.svelte | 38 +++ .../jet/shelf/HorizontalRuleShelf.svelte | 54 ++++ src/components/jet/shelf/HorizontalShelf.svelte | 53 ++++ .../jet/shelf/InAppPurchaseLockupShelf.svelte | 31 ++ src/components/jet/shelf/LargeBrickShelf.svelte | 26 ++ .../jet/shelf/LargeHeroBreakoutShelf.svelte | 31 ++ .../jet/shelf/LargeImageLockupShelf.svelte | 30 ++ src/components/jet/shelf/LargeLockupShelf.svelte | 28 ++ .../jet/shelf/LargeStoryCardShelf.svelte | 32 +++ src/components/jet/shelf/LinkableTextShelf.svelte | 43 +++ src/components/jet/shelf/MarkerShelf.svelte | 36 +++ .../jet/shelf/MediumImageLockupShelf.svelte | 28 ++ src/components/jet/shelf/MediumLockupShelf.svelte | 31 ++ .../jet/shelf/MediumStoryCardShelf.svelte | 31 ++ src/components/jet/shelf/PageHeaderShelf.svelte | 34 +++ src/components/jet/shelf/ParagraphShelf.svelte | 52 ++++ src/components/jet/shelf/PosterLockupShelf.svelte | 31 ++ src/components/jet/shelf/PrivacyFooterShelf.svelte | 40 +++ src/components/jet/shelf/PrivacyHeaderShelf.svelte | 145 ++++++++++ src/components/jet/shelf/PrivacyTypeShelf.svelte | 29 ++ src/components/jet/shelf/ProductBadgeShelf.svelte | 59 ++++ .../jet/shelf/ProductCapabilityShelf.svelte | 31 ++ .../jet/shelf/ProductDescriptionShelf.svelte | 95 ++++++ src/components/jet/shelf/ProductMediaShelf.svelte | 269 +++++++++++++++++ .../jet/shelf/ProductPageLinkShelf.svelte | 59 ++++ .../jet/shelf/ProductRatingsShelf.svelte | 29 ++ src/components/jet/shelf/ProductReviewShelf.svelte | 38 +++ src/components/jet/shelf/QuoteShelf.svelte | 80 ++++++ .../jet/shelf/ReviewsContainerShelf.svelte | 84 ++++++ src/components/jet/shelf/ReviewsShelf.svelte | 28 ++ src/components/jet/shelf/RibbonBarShelf.svelte | 135 +++++++++ src/components/jet/shelf/SearchLinkShelf.svelte | 26 ++ src/components/jet/shelf/SearchResultShelf.svelte | 49 ++++ src/components/jet/shelf/Shelf.svelte | 320 +++++++++++++++++++++ src/components/jet/shelf/SmallBreakoutShelf.svelte | 32 +++ src/components/jet/shelf/SmallBrickShelf.svelte | 26 ++ src/components/jet/shelf/SmallLockupShelf.svelte | 54 ++++ .../jet/shelf/SmallStoryCardShelf.svelte | 66 +++++ .../jet/shelf/TitledParagraphShelf.svelte | 118 ++++++++ src/components/jet/shelf/TodayCardShelf.svelte | 187 ++++++++++++ src/components/jet/shelf/UberShelf.svelte | 40 +++ 59 files changed, 3939 insertions(+) create mode 100644 src/components/jet/shelf/AccessibilityDeveloperLinkShelf.svelte create mode 100644 src/components/jet/shelf/AccessibilityFeaturesShelf.svelte create mode 100644 src/components/jet/shelf/AccessibilityHeaderShelf.svelte create mode 100644 src/components/jet/shelf/ActionShelf.svelte create mode 100644 src/components/jet/shelf/AnnotationShelf.svelte create mode 100644 src/components/jet/shelf/AppEventDetailShelf.svelte create mode 100644 src/components/jet/shelf/AppPromotionShelf.svelte create mode 100644 src/components/jet/shelf/AppShowcaseShelf.svelte create mode 100644 src/components/jet/shelf/AppTrailerLockupShelf.svelte create mode 100644 src/components/jet/shelf/ArcadeFooterShelf.svelte create mode 100644 src/components/jet/shelf/BannerShelf.svelte create mode 100644 src/components/jet/shelf/BrickShelf.svelte create mode 100644 src/components/jet/shelf/CategoryBrickShelf.svelte create mode 100644 src/components/jet/shelf/EditorialCardShelf.svelte create mode 100644 src/components/jet/shelf/EditorialLinkShelf.svelte create mode 100644 src/components/jet/shelf/FallbackShelf.svelte create mode 100644 src/components/jet/shelf/FramedArtworkShelf.svelte create mode 100644 src/components/jet/shelf/FramedVideoShelf.svelte create mode 100644 src/components/jet/shelf/HeroCarouselShelf.svelte create mode 100644 src/components/jet/shelf/HorizontalRuleShelf.svelte create mode 100644 src/components/jet/shelf/HorizontalShelf.svelte create mode 100644 src/components/jet/shelf/InAppPurchaseLockupShelf.svelte create mode 100644 src/components/jet/shelf/LargeBrickShelf.svelte create mode 100644 src/components/jet/shelf/LargeHeroBreakoutShelf.svelte create mode 100644 src/components/jet/shelf/LargeImageLockupShelf.svelte create mode 100644 src/components/jet/shelf/LargeLockupShelf.svelte create mode 100644 src/components/jet/shelf/LargeStoryCardShelf.svelte create mode 100644 src/components/jet/shelf/LinkableTextShelf.svelte create mode 100644 src/components/jet/shelf/MarkerShelf.svelte create mode 100644 src/components/jet/shelf/MediumImageLockupShelf.svelte create mode 100644 src/components/jet/shelf/MediumLockupShelf.svelte create mode 100644 src/components/jet/shelf/MediumStoryCardShelf.svelte create mode 100644 src/components/jet/shelf/PageHeaderShelf.svelte create mode 100644 src/components/jet/shelf/ParagraphShelf.svelte create mode 100644 src/components/jet/shelf/PosterLockupShelf.svelte create mode 100644 src/components/jet/shelf/PrivacyFooterShelf.svelte create mode 100644 src/components/jet/shelf/PrivacyHeaderShelf.svelte create mode 100644 src/components/jet/shelf/PrivacyTypeShelf.svelte create mode 100644 src/components/jet/shelf/ProductBadgeShelf.svelte create mode 100644 src/components/jet/shelf/ProductCapabilityShelf.svelte create mode 100644 src/components/jet/shelf/ProductDescriptionShelf.svelte create mode 100644 src/components/jet/shelf/ProductMediaShelf.svelte create mode 100644 src/components/jet/shelf/ProductPageLinkShelf.svelte create mode 100644 src/components/jet/shelf/ProductRatingsShelf.svelte create mode 100644 src/components/jet/shelf/ProductReviewShelf.svelte create mode 100644 src/components/jet/shelf/QuoteShelf.svelte create mode 100644 src/components/jet/shelf/ReviewsContainerShelf.svelte create mode 100644 src/components/jet/shelf/ReviewsShelf.svelte create mode 100644 src/components/jet/shelf/RibbonBarShelf.svelte create mode 100644 src/components/jet/shelf/SearchLinkShelf.svelte create mode 100644 src/components/jet/shelf/SearchResultShelf.svelte create mode 100644 src/components/jet/shelf/Shelf.svelte create mode 100644 src/components/jet/shelf/SmallBreakoutShelf.svelte create mode 100644 src/components/jet/shelf/SmallBrickShelf.svelte create mode 100644 src/components/jet/shelf/SmallLockupShelf.svelte create mode 100644 src/components/jet/shelf/SmallStoryCardShelf.svelte create mode 100644 src/components/jet/shelf/TitledParagraphShelf.svelte create mode 100644 src/components/jet/shelf/TodayCardShelf.svelte create mode 100644 src/components/jet/shelf/UberShelf.svelte (limited to 'src/components/jet/shelf') diff --git a/src/components/jet/shelf/AccessibilityDeveloperLinkShelf.svelte b/src/components/jet/shelf/AccessibilityDeveloperLinkShelf.svelte new file mode 100644 index 0000000..c1e7b2e --- /dev/null +++ b/src/components/jet/shelf/AccessibilityDeveloperLinkShelf.svelte @@ -0,0 +1,36 @@ + + + + + + + diff --git a/src/components/jet/shelf/AccessibilityFeaturesShelf.svelte b/src/components/jet/shelf/AccessibilityFeaturesShelf.svelte new file mode 100644 index 0000000..cb2fed8 --- /dev/null +++ b/src/components/jet/shelf/AccessibilityFeaturesShelf.svelte @@ -0,0 +1,35 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/AccessibilityHeaderShelf.svelte b/src/components/jet/shelf/AccessibilityHeaderShelf.svelte new file mode 100644 index 0000000..990c507 --- /dev/null +++ b/src/components/jet/shelf/AccessibilityHeaderShelf.svelte @@ -0,0 +1,182 @@ + + + + + +
+ {#if shelf.title} + {#if destination} + + {:else} + + {/if} + {/if} + + {#if pageData} + + + + + + + + {/if} +
+ +
+
+ +
+
+
+ + diff --git a/src/components/jet/shelf/ActionShelf.svelte b/src/components/jet/shelf/ActionShelf.svelte new file mode 100644 index 0000000..847438f --- /dev/null +++ b/src/components/jet/shelf/ActionShelf.svelte @@ -0,0 +1,80 @@ + + + + + + + {@const action = item} + {@const artwork = item.artwork} + {@const title = item.title} + +
+ + {#if artwork} + + {/if} + {title} + +
+
+
+ + diff --git a/src/components/jet/shelf/AnnotationShelf.svelte b/src/components/jet/shelf/AnnotationShelf.svelte new file mode 100644 index 0000000..e11de72 --- /dev/null +++ b/src/components/jet/shelf/AnnotationShelf.svelte @@ -0,0 +1,49 @@ + + + + + +
+ +
{item.title}
+ + {#if item.summary} + + + {item.summary} + + + + + {:else} + + {/if} +
+
+
+ + diff --git a/src/components/jet/shelf/AppEventDetailShelf.svelte b/src/components/jet/shelf/AppEventDetailShelf.svelte new file mode 100644 index 0000000..2ae84eb --- /dev/null +++ b/src/components/jet/shelf/AppEventDetailShelf.svelte @@ -0,0 +1,290 @@ + + + + + +
+ {#if video} +
+
+ {:else if artwork} +
+ +
+ {/if} + + {#if isXSmallViewport} +
+ +
+ {:else} +
+ {/if} + +
+ +
+ +
+
+

{appEvent.kind}

+

{appEvent.title}

+

+ {appEvent.detail} +

+ {#if requirements} + {requirements} + {/if} +
+ + {#if lockup} +
+ + + {#if urlToLaunchNatively} + + {/if} + + +
+ {/if} +
+
+ + + diff --git a/src/components/jet/shelf/AppPromotionShelf.svelte b/src/components/jet/shelf/AppPromotionShelf.svelte new file mode 100644 index 0000000..48590cb --- /dev/null +++ b/src/components/jet/shelf/AppPromotionShelf.svelte @@ -0,0 +1,47 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/AppShowcaseShelf.svelte b/src/components/jet/shelf/AppShowcaseShelf.svelte new file mode 100644 index 0000000..095acf2 --- /dev/null +++ b/src/components/jet/shelf/AppShowcaseShelf.svelte @@ -0,0 +1,29 @@ + + + + + + + diff --git a/src/components/jet/shelf/AppTrailerLockupShelf.svelte b/src/components/jet/shelf/AppTrailerLockupShelf.svelte new file mode 100644 index 0000000..f516074 --- /dev/null +++ b/src/components/jet/shelf/AppTrailerLockupShelf.svelte @@ -0,0 +1,48 @@ + + + + + + + {#if isMixedMediaLockup(item)} + + {:else} + + {/if} + + diff --git a/src/components/jet/shelf/ArcadeFooterShelf.svelte b/src/components/jet/shelf/ArcadeFooterShelf.svelte new file mode 100644 index 0000000..dc46740 --- /dev/null +++ b/src/components/jet/shelf/ArcadeFooterShelf.svelte @@ -0,0 +1,32 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/BannerShelf.svelte b/src/components/jet/shelf/BannerShelf.svelte new file mode 100644 index 0000000..84289c9 --- /dev/null +++ b/src/components/jet/shelf/BannerShelf.svelte @@ -0,0 +1,35 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/BrickShelf.svelte b/src/components/jet/shelf/BrickShelf.svelte new file mode 100644 index 0000000..4bd55e5 --- /dev/null +++ b/src/components/jet/shelf/BrickShelf.svelte @@ -0,0 +1,31 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/CategoryBrickShelf.svelte b/src/components/jet/shelf/CategoryBrickShelf.svelte new file mode 100644 index 0000000..22ca86b --- /dev/null +++ b/src/components/jet/shelf/CategoryBrickShelf.svelte @@ -0,0 +1,28 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/EditorialCardShelf.svelte b/src/components/jet/shelf/EditorialCardShelf.svelte new file mode 100644 index 0000000..efbd71d --- /dev/null +++ b/src/components/jet/shelf/EditorialCardShelf.svelte @@ -0,0 +1,32 @@ + + + + + + + diff --git a/src/components/jet/shelf/EditorialLinkShelf.svelte b/src/components/jet/shelf/EditorialLinkShelf.svelte new file mode 100644 index 0000000..0946462 --- /dev/null +++ b/src/components/jet/shelf/EditorialLinkShelf.svelte @@ -0,0 +1,122 @@ + + + + + +
+ + +
+ {descriptionText} + {summaryText} +
+ + +
+
+
+
+ + diff --git a/src/components/jet/shelf/FallbackShelf.svelte b/src/components/jet/shelf/FallbackShelf.svelte new file mode 100644 index 0000000..c7e4200 --- /dev/null +++ b/src/components/jet/shelf/FallbackShelf.svelte @@ -0,0 +1,39 @@ + + + + + + +
+ {isPlaceholder + ? `🔄 Placeholder for ${shelf.placeholderContentType}` + : `🚧 ${shelf.contentType}`} +
+
+
+ + diff --git a/src/components/jet/shelf/FramedArtworkShelf.svelte b/src/components/jet/shelf/FramedArtworkShelf.svelte new file mode 100644 index 0000000..16f7c48 --- /dev/null +++ b/src/components/jet/shelf/FramedArtworkShelf.svelte @@ -0,0 +1,98 @@ + + + + + +
+
+ +
+ + {#if caption} +
+ {@html sanitizeHtml(caption)} +
+ {/if} +
+
+ + diff --git a/src/components/jet/shelf/FramedVideoShelf.svelte b/src/components/jet/shelf/FramedVideoShelf.svelte new file mode 100644 index 0000000..a685d39 --- /dev/null +++ b/src/components/jet/shelf/FramedVideoShelf.svelte @@ -0,0 +1,78 @@ + + + + + +
+
+
+ + {#if caption} +
+ {@html sanitizeHtml(caption)} +
+ {/if} +
+
+ + diff --git a/src/components/jet/shelf/HeroCarouselShelf.svelte b/src/components/jet/shelf/HeroCarouselShelf.svelte new file mode 100644 index 0000000..31a0287 --- /dev/null +++ b/src/components/jet/shelf/HeroCarouselShelf.svelte @@ -0,0 +1,38 @@ + + + + + + + diff --git a/src/components/jet/shelf/HorizontalRuleShelf.svelte b/src/components/jet/shelf/HorizontalRuleShelf.svelte new file mode 100644 index 0000000..3313ff2 --- /dev/null +++ b/src/components/jet/shelf/HorizontalRuleShelf.svelte @@ -0,0 +1,54 @@ + + + + + +
+
+ + diff --git a/src/components/jet/shelf/HorizontalShelf.svelte b/src/components/jet/shelf/HorizontalShelf.svelte new file mode 100644 index 0000000..1addb31 --- /dev/null +++ b/src/components/jet/shelf/HorizontalShelf.svelte @@ -0,0 +1,53 @@ + + +
+ + + + + +
+ + diff --git a/src/components/jet/shelf/InAppPurchaseLockupShelf.svelte b/src/components/jet/shelf/InAppPurchaseLockupShelf.svelte new file mode 100644 index 0000000..bf2e75e --- /dev/null +++ b/src/components/jet/shelf/InAppPurchaseLockupShelf.svelte @@ -0,0 +1,31 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/LargeBrickShelf.svelte b/src/components/jet/shelf/LargeBrickShelf.svelte new file mode 100644 index 0000000..eea1044 --- /dev/null +++ b/src/components/jet/shelf/LargeBrickShelf.svelte @@ -0,0 +1,26 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/LargeHeroBreakoutShelf.svelte b/src/components/jet/shelf/LargeHeroBreakoutShelf.svelte new file mode 100644 index 0000000..a0dfe9c --- /dev/null +++ b/src/components/jet/shelf/LargeHeroBreakoutShelf.svelte @@ -0,0 +1,31 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/LargeImageLockupShelf.svelte b/src/components/jet/shelf/LargeImageLockupShelf.svelte new file mode 100644 index 0000000..fd192fb --- /dev/null +++ b/src/components/jet/shelf/LargeImageLockupShelf.svelte @@ -0,0 +1,30 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/LargeLockupShelf.svelte b/src/components/jet/shelf/LargeLockupShelf.svelte new file mode 100644 index 0000000..dedd1fe --- /dev/null +++ b/src/components/jet/shelf/LargeLockupShelf.svelte @@ -0,0 +1,28 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/LargeStoryCardShelf.svelte b/src/components/jet/shelf/LargeStoryCardShelf.svelte new file mode 100644 index 0000000..c1a1e57 --- /dev/null +++ b/src/components/jet/shelf/LargeStoryCardShelf.svelte @@ -0,0 +1,32 @@ + + + + + + + diff --git a/src/components/jet/shelf/LinkableTextShelf.svelte b/src/components/jet/shelf/LinkableTextShelf.svelte new file mode 100644 index 0000000..dcfde36 --- /dev/null +++ b/src/components/jet/shelf/LinkableTextShelf.svelte @@ -0,0 +1,43 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/MarkerShelf.svelte b/src/components/jet/shelf/MarkerShelf.svelte new file mode 100644 index 0000000..c719235 --- /dev/null +++ b/src/components/jet/shelf/MarkerShelf.svelte @@ -0,0 +1,36 @@ + + + + +{#if shelf.marker === 'productTopLockup'} + +{/if} diff --git a/src/components/jet/shelf/MediumImageLockupShelf.svelte b/src/components/jet/shelf/MediumImageLockupShelf.svelte new file mode 100644 index 0000000..f7b1316 --- /dev/null +++ b/src/components/jet/shelf/MediumImageLockupShelf.svelte @@ -0,0 +1,28 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/MediumLockupShelf.svelte b/src/components/jet/shelf/MediumLockupShelf.svelte new file mode 100644 index 0000000..186acb2 --- /dev/null +++ b/src/components/jet/shelf/MediumLockupShelf.svelte @@ -0,0 +1,31 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/MediumStoryCardShelf.svelte b/src/components/jet/shelf/MediumStoryCardShelf.svelte new file mode 100644 index 0000000..35c3ec3 --- /dev/null +++ b/src/components/jet/shelf/MediumStoryCardShelf.svelte @@ -0,0 +1,31 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/PageHeaderShelf.svelte b/src/components/jet/shelf/PageHeaderShelf.svelte new file mode 100644 index 0000000..59c99b2 --- /dev/null +++ b/src/components/jet/shelf/PageHeaderShelf.svelte @@ -0,0 +1,34 @@ + + + + + +
+ +
+
+ + diff --git a/src/components/jet/shelf/ParagraphShelf.svelte b/src/components/jet/shelf/ParagraphShelf.svelte new file mode 100644 index 0000000..777338e --- /dev/null +++ b/src/components/jet/shelf/ParagraphShelf.svelte @@ -0,0 +1,52 @@ + + + + + +
+ {#if shelf.title} +

{shelf.title}

+ {/if} +
+ +
+ {#each shelf.items as item} + + {/each} +
+
+ + diff --git a/src/components/jet/shelf/PosterLockupShelf.svelte b/src/components/jet/shelf/PosterLockupShelf.svelte new file mode 100644 index 0000000..101c1d6 --- /dev/null +++ b/src/components/jet/shelf/PosterLockupShelf.svelte @@ -0,0 +1,31 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/PrivacyFooterShelf.svelte b/src/components/jet/shelf/PrivacyFooterShelf.svelte new file mode 100644 index 0000000..dccade6 --- /dev/null +++ b/src/components/jet/shelf/PrivacyFooterShelf.svelte @@ -0,0 +1,40 @@ + + + + + +

+ +

+
+ + diff --git a/src/components/jet/shelf/PrivacyHeaderShelf.svelte b/src/components/jet/shelf/PrivacyHeaderShelf.svelte new file mode 100644 index 0000000..5ace666 --- /dev/null +++ b/src/components/jet/shelf/PrivacyHeaderShelf.svelte @@ -0,0 +1,145 @@ + + + + + +
+ {#if shelf.title} + + {/if} + + {#if pageData} + + + + + + + + {/if} +
+ +
+
+ +
+
+
+ + diff --git a/src/components/jet/shelf/PrivacyTypeShelf.svelte b/src/components/jet/shelf/PrivacyTypeShelf.svelte new file mode 100644 index 0000000..3817251 --- /dev/null +++ b/src/components/jet/shelf/PrivacyTypeShelf.svelte @@ -0,0 +1,29 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/ProductBadgeShelf.svelte b/src/components/jet/shelf/ProductBadgeShelf.svelte new file mode 100644 index 0000000..cded0b7 --- /dev/null +++ b/src/components/jet/shelf/ProductBadgeShelf.svelte @@ -0,0 +1,59 @@ + + + + + +
+ + + +
+
+ + diff --git a/src/components/jet/shelf/ProductCapabilityShelf.svelte b/src/components/jet/shelf/ProductCapabilityShelf.svelte new file mode 100644 index 0000000..6a4307a --- /dev/null +++ b/src/components/jet/shelf/ProductCapabilityShelf.svelte @@ -0,0 +1,31 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/ProductDescriptionShelf.svelte b/src/components/jet/shelf/ProductDescriptionShelf.svelte new file mode 100644 index 0000000..7cddcee --- /dev/null +++ b/src/components/jet/shelf/ProductDescriptionShelf.svelte @@ -0,0 +1,95 @@ + + + + + +
+

+ {#if isOpen} + {@html sanitizeHtml(description)} + {:else} + + {@html sanitizeHtml(description)} + + {/if} + + {#if !isOpen} + + {/if} +

+
+
+ + diff --git a/src/components/jet/shelf/ProductMediaShelf.svelte b/src/components/jet/shelf/ProductMediaShelf.svelte new file mode 100644 index 0000000..f57fee7 --- /dev/null +++ b/src/components/jet/shelf/ProductMediaShelf.svelte @@ -0,0 +1,269 @@ + + + + + + {#if appPlatform === 'vision'} + + + + {:else if appPlatform === 'phone' || appPlatform === 'messages'} + + + + {:else if appPlatform === 'pad'} + + + + {:else if appPlatform === 'mac'} + + + + {:else if appPlatform === 'tv'} + + + + {:else if appPlatform === 'watch'} + + + + {:else} + + + + {/if} + + {#if appPlatform && shouldShowPlatform} +
+ +
+ {$i18n.t(platformToDescriptionMap[appPlatform])} +
+
+ {/if} +
+ +{#if shelf.expandedMedia && allPlatforms && allPlatforms.length > 1} +
+ {#if !shouldDisplayExpandedMedia} + + {/if} + {#if shouldDisplayExpandedMedia} +
+ {#each shelf.expandedMedia as expandedMediaShelf} + + {/each} +
+ {/if} +
+{/if} + +{#if !isExpandedMedia} +
+{/if} + + diff --git a/src/components/jet/shelf/ProductPageLinkShelf.svelte b/src/components/jet/shelf/ProductPageLinkShelf.svelte new file mode 100644 index 0000000..7b41e80 --- /dev/null +++ b/src/components/jet/shelf/ProductPageLinkShelf.svelte @@ -0,0 +1,59 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/ProductRatingsShelf.svelte b/src/components/jet/shelf/ProductRatingsShelf.svelte new file mode 100644 index 0000000..8f09ab5 --- /dev/null +++ b/src/components/jet/shelf/ProductRatingsShelf.svelte @@ -0,0 +1,29 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/ProductReviewShelf.svelte b/src/components/jet/shelf/ProductReviewShelf.svelte new file mode 100644 index 0000000..6bc4ecb --- /dev/null +++ b/src/components/jet/shelf/ProductReviewShelf.svelte @@ -0,0 +1,38 @@ + + + + + + + {#if isUserReviewItem(item)} + + {:else if isEditorsChoiceReviewItem(item)} + + {/if} + + diff --git a/src/components/jet/shelf/QuoteShelf.svelte b/src/components/jet/shelf/QuoteShelf.svelte new file mode 100644 index 0000000..3a14f4f --- /dev/null +++ b/src/components/jet/shelf/QuoteShelf.svelte @@ -0,0 +1,80 @@ + + + + + +
+
+
+ {item.text} +
+ {item.credit} +
+
+
+ + diff --git a/src/components/jet/shelf/ReviewsContainerShelf.svelte b/src/components/jet/shelf/ReviewsContainerShelf.svelte new file mode 100644 index 0000000..a55fe40 --- /dev/null +++ b/src/components/jet/shelf/ReviewsContainerShelf.svelte @@ -0,0 +1,84 @@ + + + + + +
+ {#if productAction} +
+ + {productAction.title} + +
+ {/if} + + + + +
+ +
+
+
+
+ + diff --git a/src/components/jet/shelf/ReviewsShelf.svelte b/src/components/jet/shelf/ReviewsShelf.svelte new file mode 100644 index 0000000..8304444 --- /dev/null +++ b/src/components/jet/shelf/ReviewsShelf.svelte @@ -0,0 +1,28 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/RibbonBarShelf.svelte b/src/components/jet/shelf/RibbonBarShelf.svelte new file mode 100644 index 0000000..44a8ae9 --- /dev/null +++ b/src/components/jet/shelf/RibbonBarShelf.svelte @@ -0,0 +1,135 @@ + + + + + +
+
    + {#each shelf.items as ribbonBarItem} + {@const action = ribbonBarItem.clickAction} + {@const artwork = ribbonBarItem.artwork} + {@const title = ribbonBarItem.title} +
  • + + {#if artwork} +
    + {#if isSystemImageArtwork(artwork)} + + {:else} + + {/if} +
    + {/if} + {title} +
    +
  • + {/each} +
+
+
+ + diff --git a/src/components/jet/shelf/SearchLinkShelf.svelte b/src/components/jet/shelf/SearchLinkShelf.svelte new file mode 100644 index 0000000..6b29780 --- /dev/null +++ b/src/components/jet/shelf/SearchLinkShelf.svelte @@ -0,0 +1,26 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/SearchResultShelf.svelte b/src/components/jet/shelf/SearchResultShelf.svelte new file mode 100644 index 0000000..9c15d3e --- /dev/null +++ b/src/components/jet/shelf/SearchResultShelf.svelte @@ -0,0 +1,49 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/Shelf.svelte b/src/components/jet/shelf/Shelf.svelte new file mode 100644 index 0000000..6cbb0f6 --- /dev/null +++ b/src/components/jet/shelf/Shelf.svelte @@ -0,0 +1,320 @@ + + + + +{#if isAccessibilityHeaderShelf(shelf)} + +{:else if isAccessibilityFeaturesShelf(shelf)} + +{:else if isAccessibilityDeveloperLinkShelf(shelf)} + +{:else if isActionShelf(shelf)} + +{:else if isAnnotationShelf(shelf)} + +{:else if isAppEventDetailShelf(shelf)} + +{:else if isAppPromotionShelf(shelf)} + +{:else if isAppShowcaseShelf(shelf)} + +{:else if isAppTrailerLockupShelf(shelf)} + +{:else if isArcadeFooterShelf(shelf)} + +{:else if isBannerShelf(shelf)} + + +{:else if isBrickShelf(shelf)} + +{:else if isCategoryBrickShelf(shelf)} + +{:else if isEditorialCardShelf(shelf)} + +{:else if isEditorialLinkShelf(shelf)} + +{:else if isFramedArtworkShelf(shelf)} + +{:else if isFramedVideoShelf(shelf)} + +{:else if isHeroCarouselShelf(shelf)} + +{:else if isHorizontalRuleShelf(shelf)} + +{:else if isInAppPurchaseLockupShelf(shelf)} + +{:else if isLargeHeroBreakoutShelf(shelf)} + +{:else if isLargeBrickShelf(shelf)} + +{:else if isLargeImageLockupShelf(shelf)} + +{:else if isLargeLockupShelf(shelf)} + +{:else if isLargeStoryCardShelf(shelf)} + +{:else if isLinkableTextShelf(shelf)} + +{:else if isProductDescriptionShelf(shelf)} + +{:else if isMediumImageLockupShelf(shelf)} + +{:else if isMediumLockupShelf(shelf)} + +{:else if isMediumStoryCardShelf(shelf)} + +{:else if isPosterLockupShelf(shelf)} + +{:else if isProductBadgeShelf(shelf)} + +{:else if isPageHeaderShelf(shelf)} + +{:else if isParagraphShelf(shelf)} + +{:else if isPrivacyHeaderShelf(shelf)} + +{:else if isPrivacyFooterShelf(shelf)} + +{:else if isPrivacyTypeShelf(shelf)} + +{:else if isProductMediaShelf(shelf)} + +{:else if isProductRatingsShelf(shelf)} + +{:else if isProductReviewShelf(shelf)} + +{:else if isRibbonBarShelf(shelf)} + +{:else if isSearchLinkShelf(shelf)} + +{:else if isSearchResultShelf(shelf)} + +{:else if isSmallBreakoutShelf(shelf)} + +{:else if isSmallBrickShelf(shelf)} + +{:else if isSmallStoryCardShelf(shelf)} + +{:else if isSmallLockupShelf(shelf)} + +{:else if isProductCapabilityShelf(shelf)} + +{:else if isProductPageLinkShelf(shelf)} + +{:else if isQuoteShelf(shelf)} + +{:else if isReviewsContainerShelf(shelf)} + +{:else if isReviewsShelf(shelf)} + +{:else if isTodayCardShelf(shelf)} + +{:else if isTitledParagraphShelf(shelf)} + +{:else if isUberShelf(shelf)} + +{:else if isMarkerShelf(shelf)} + +{:else if isFallbackShelf(shelf)} + +{/if} diff --git a/src/components/jet/shelf/SmallBreakoutShelf.svelte b/src/components/jet/shelf/SmallBreakoutShelf.svelte new file mode 100644 index 0000000..095cf7f --- /dev/null +++ b/src/components/jet/shelf/SmallBreakoutShelf.svelte @@ -0,0 +1,32 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/SmallBrickShelf.svelte b/src/components/jet/shelf/SmallBrickShelf.svelte new file mode 100644 index 0000000..34426cf --- /dev/null +++ b/src/components/jet/shelf/SmallBrickShelf.svelte @@ -0,0 +1,26 @@ + + + + + + + + + diff --git a/src/components/jet/shelf/SmallLockupShelf.svelte b/src/components/jet/shelf/SmallLockupShelf.svelte new file mode 100644 index 0000000..e286671 --- /dev/null +++ b/src/components/jet/shelf/SmallLockupShelf.svelte @@ -0,0 +1,54 @@ + + + + + + + {#if isSmallLockupWithOrdinalItem(item)} + + {:else} + + {/if} + + diff --git a/src/components/jet/shelf/SmallStoryCardShelf.svelte b/src/components/jet/shelf/SmallStoryCardShelf.svelte new file mode 100644 index 0000000..c1a85ad --- /dev/null +++ b/src/components/jet/shelf/SmallStoryCardShelf.svelte @@ -0,0 +1,66 @@ + + + + + + + {#if isSmallStoryCardWithMediaRiver(item)} + + {:else if isSmallStoryCardWithMediaAppIcon(item)} + + {:else if isSmallStoryCardMediaBrandedSingleApp(item)} + + {:else if isSmallStoryCardWithMediaItem(item)} + + {:else if isSmallStoryCardWithArtworkItem(item)} + + {/if} + + diff --git a/src/components/jet/shelf/TitledParagraphShelf.svelte b/src/components/jet/shelf/TitledParagraphShelf.svelte new file mode 100644 index 0000000..41c1d74 --- /dev/null +++ b/src/components/jet/shelf/TitledParagraphShelf.svelte @@ -0,0 +1,118 @@ + + + + + +
+ {#if shelf.title} + + {/if} + + {#if pageData} + + + +
    + {#each pageData.shelves as shelf} + {#each shelf.items || [] as item} + {#if isTitledParagraphItem(item)} +
  • + +
  • + {/if} + {/each} + {/each} +
+
+
+
+ {/if} +
+ + {#each shelf.items as item} + + {/each} +
+ + diff --git a/src/components/jet/shelf/TodayCardShelf.svelte b/src/components/jet/shelf/TodayCardShelf.svelte new file mode 100644 index 0000000..e872112 --- /dev/null +++ b/src/components/jet/shelf/TodayCardShelf.svelte @@ -0,0 +1,187 @@ + + + + + +
+
= 2} + class:today-card-row__stretch-first-nowrap={shouldStretchFirstCardNoWrap && + shelf.items.length >= 2} + class:today-card-row__stretch-last-wrap={!shouldStretchFirstCardWrap && + shelf.items.length >= 2} + class:today-card-row__stretch-last-nowrap={!shouldStretchFirstCardNoWrap && + shelf.items.length >= 2} + class:today-card-row__1-card={shelf.items.length == 1} + class:today-card-row__2-card={shelf.items.length == 2} + class:today-card-row__3-card={shelf.items.length == 3} + class:today-card-row__4-card={shelf.items.length >= 4} + > + {#each shelf.items.slice(0, 4) as card} +
+ +
+ {/each} +
+
+
+ + diff --git a/src/components/jet/shelf/UberShelf.svelte b/src/components/jet/shelf/UberShelf.svelte new file mode 100644 index 0000000..6cdf004 --- /dev/null +++ b/src/components/jet/shelf/UberShelf.svelte @@ -0,0 +1,40 @@ + + + + +{#if artwork} + +
+ +
+
+{/if} + + -- cgit v1.2.3