From bce557cc2dc767628bed6aac87301a1be7c5431b Mon Sep 17 00:00:00 2001 From: rxliuli Date: Tue, 4 Nov 2025 05:03:50 +0800 Subject: init commit --- .../jet/item/AccessibilityFeaturesItem.svelte | 159 +++++++++ .../jet/item/AccessibilityParagraphItem.svelte | 22 ++ .../jet/item/Annotation/AnnotationItem.svelte | 17 + .../Annotation/LegacyAnnotationRenderer.svelte | 146 ++++++++ .../Annotation/ModernAnnotationItemRenderer.svelte | 114 ++++++ src/components/jet/item/AppEventItem.svelte | 176 +++++++++ src/components/jet/item/ArcadeFooterItem.svelte | 83 +++++ src/components/jet/item/BannerItem.svelte | 37 ++ src/components/jet/item/BrickItem.svelte | 300 ++++++++++++++++ src/components/jet/item/ContentModal.svelte | 39 ++ src/components/jet/item/EditorialCardItem.svelte | 41 +++ src/components/jet/item/FooterLockupItem.svelte | 93 +++++ src/components/jet/item/HeroCarouselItem.svelte | 60 ++++ src/components/jet/item/InAppPurchaseLockup.svelte | 74 ++++ src/components/jet/item/LargeBrickItem.svelte | 106 ++++++ .../jet/item/LargeHeroBreakoutItem.svelte | 268 ++++++++++++++ .../jet/item/LargeImageLockupItem.svelte | 130 +++++++ src/components/jet/item/LargeLockupItem.svelte | 121 +++++++ src/components/jet/item/LargeStoryCardItem.svelte | 38 ++ src/components/jet/item/LinkableTextItem.svelte | 88 +++++ .../jet/item/MediumImageLockupItem.svelte | 118 +++++++ src/components/jet/item/MediumLockupItem.svelte | 96 +++++ .../MediumStoryCard/EditorialStoryCardItem.svelte | 304 ++++++++++++++++ src/components/jet/item/MediumStoryCardItem.svelte | 27 ++ .../jet/item/MixedMediaLockupItem.svelte | 39 ++ src/components/jet/item/ParagraphShelfItem.svelte | 21 ++ src/components/jet/item/PosterLockupItem.svelte | 121 +++++++ src/components/jet/item/PrivacyHeaderItem.svelte | 41 +++ src/components/jet/item/PrivacyTypeItem.svelte | 193 ++++++++++ src/components/jet/item/ProductBadgeItem.svelte | 188 ++++++++++ .../jet/item/ProductCapabilityItem.svelte | 84 +++++ .../item/ProductMedia/ProductMediaMacItem.svelte | 31 ++ .../item/ProductMedia/ProductMediaPadItem.svelte | 89 +++++ .../item/ProductMedia/ProductMediaPhoneItem.svelte | 142 ++++++++ .../item/ProductMedia/ProductMediaTVItem.svelte | 34 ++ .../ProductMedia/ProductMediaVisionItem.svelte | 38 ++ .../item/ProductMedia/ProductMediaWatchItem.svelte | 50 +++ src/components/jet/item/ProductPageLinkItem.svelte | 68 ++++ src/components/jet/item/ProductRatingsItem.svelte | 37 ++ .../ProductReview/EditorsChoiceReviewItem.svelte | 99 ++++++ .../jet/item/ProductReview/UserReviewItem.svelte | 25 ++ src/components/jet/item/ReviewItem.svelte | 237 +++++++++++++ src/components/jet/item/SearchLinkItem.svelte | 47 +++ .../item/SearchResult/AppSearchResultItem.svelte | 392 +++++++++++++++++++++ src/components/jet/item/SmallBreakoutItem.svelte | 187 ++++++++++ src/components/jet/item/SmallLockupItem.svelte | 110 ++++++ .../jet/item/SmallLockupWithOrdinalItem.svelte | 176 +++++++++ .../SmallStoryCardMediaBrandedSingleApp.svelte | 69 ++++ .../jet/item/SmallStoryCardWithArtworkItem.svelte | 87 +++++ .../jet/item/SmallStoryCardWithMediaAppIcon.svelte | 156 ++++++++ .../jet/item/SmallStoryCardWithMediaItem.svelte | 104 ++++++ .../jet/item/SmallStoryCardWithMediaRiver.svelte | 118 +++++++ src/components/jet/item/TitledParagraphItem.svelte | 175 +++++++++ src/components/jet/item/TrailersLockupItem.svelte | 51 +++ 54 files changed, 5866 insertions(+) create mode 100644 src/components/jet/item/AccessibilityFeaturesItem.svelte create mode 100644 src/components/jet/item/AccessibilityParagraphItem.svelte create mode 100644 src/components/jet/item/Annotation/AnnotationItem.svelte create mode 100644 src/components/jet/item/Annotation/LegacyAnnotationRenderer.svelte create mode 100644 src/components/jet/item/Annotation/ModernAnnotationItemRenderer.svelte create mode 100644 src/components/jet/item/AppEventItem.svelte create mode 100644 src/components/jet/item/ArcadeFooterItem.svelte create mode 100644 src/components/jet/item/BannerItem.svelte create mode 100644 src/components/jet/item/BrickItem.svelte create mode 100644 src/components/jet/item/ContentModal.svelte create mode 100644 src/components/jet/item/EditorialCardItem.svelte create mode 100644 src/components/jet/item/FooterLockupItem.svelte create mode 100644 src/components/jet/item/HeroCarouselItem.svelte create mode 100644 src/components/jet/item/InAppPurchaseLockup.svelte create mode 100644 src/components/jet/item/LargeBrickItem.svelte create mode 100644 src/components/jet/item/LargeHeroBreakoutItem.svelte create mode 100644 src/components/jet/item/LargeImageLockupItem.svelte create mode 100644 src/components/jet/item/LargeLockupItem.svelte create mode 100644 src/components/jet/item/LargeStoryCardItem.svelte create mode 100644 src/components/jet/item/LinkableTextItem.svelte create mode 100644 src/components/jet/item/MediumImageLockupItem.svelte create mode 100644 src/components/jet/item/MediumLockupItem.svelte create mode 100644 src/components/jet/item/MediumStoryCard/EditorialStoryCardItem.svelte create mode 100644 src/components/jet/item/MediumStoryCardItem.svelte create mode 100644 src/components/jet/item/MixedMediaLockupItem.svelte create mode 100644 src/components/jet/item/ParagraphShelfItem.svelte create mode 100644 src/components/jet/item/PosterLockupItem.svelte create mode 100644 src/components/jet/item/PrivacyHeaderItem.svelte create mode 100644 src/components/jet/item/PrivacyTypeItem.svelte create mode 100644 src/components/jet/item/ProductBadgeItem.svelte create mode 100644 src/components/jet/item/ProductCapabilityItem.svelte create mode 100644 src/components/jet/item/ProductMedia/ProductMediaMacItem.svelte create mode 100644 src/components/jet/item/ProductMedia/ProductMediaPadItem.svelte create mode 100644 src/components/jet/item/ProductMedia/ProductMediaPhoneItem.svelte create mode 100644 src/components/jet/item/ProductMedia/ProductMediaTVItem.svelte create mode 100644 src/components/jet/item/ProductMedia/ProductMediaVisionItem.svelte create mode 100644 src/components/jet/item/ProductMedia/ProductMediaWatchItem.svelte create mode 100644 src/components/jet/item/ProductPageLinkItem.svelte create mode 100644 src/components/jet/item/ProductRatingsItem.svelte create mode 100644 src/components/jet/item/ProductReview/EditorsChoiceReviewItem.svelte create mode 100644 src/components/jet/item/ProductReview/UserReviewItem.svelte create mode 100644 src/components/jet/item/ReviewItem.svelte create mode 100644 src/components/jet/item/SearchLinkItem.svelte create mode 100644 src/components/jet/item/SearchResult/AppSearchResultItem.svelte create mode 100644 src/components/jet/item/SmallBreakoutItem.svelte create mode 100644 src/components/jet/item/SmallLockupItem.svelte create mode 100644 src/components/jet/item/SmallLockupWithOrdinalItem.svelte create mode 100644 src/components/jet/item/SmallStoryCardMediaBrandedSingleApp.svelte create mode 100644 src/components/jet/item/SmallStoryCardWithArtworkItem.svelte create mode 100644 src/components/jet/item/SmallStoryCardWithMediaAppIcon.svelte create mode 100644 src/components/jet/item/SmallStoryCardWithMediaItem.svelte create mode 100644 src/components/jet/item/SmallStoryCardWithMediaRiver.svelte create mode 100644 src/components/jet/item/TitledParagraphItem.svelte create mode 100644 src/components/jet/item/TrailersLockupItem.svelte (limited to 'src/components/jet/item') diff --git a/src/components/jet/item/AccessibilityFeaturesItem.svelte b/src/components/jet/item/AccessibilityFeaturesItem.svelte new file mode 100644 index 0000000..bcbeb6c --- /dev/null +++ b/src/components/jet/item/AccessibilityFeaturesItem.svelte @@ -0,0 +1,159 @@ + + +
+ {#if !isDetailView} + {#if item.artwork && isSystemImageArtwork(item.artwork)} + + {/if} +

{item.title}

+ {/if} + + +
+ + diff --git a/src/components/jet/item/AccessibilityParagraphItem.svelte b/src/components/jet/item/AccessibilityParagraphItem.svelte new file mode 100644 index 0000000..836b52f --- /dev/null +++ b/src/components/jet/item/AccessibilityParagraphItem.svelte @@ -0,0 +1,22 @@ + + +
+

+ +

+
+ + diff --git a/src/components/jet/item/Annotation/AnnotationItem.svelte b/src/components/jet/item/Annotation/AnnotationItem.svelte new file mode 100644 index 0000000..38bb269 --- /dev/null +++ b/src/components/jet/item/Annotation/AnnotationItem.svelte @@ -0,0 +1,17 @@ + + +{#if shouldRenderModernAnnotation} + +{:else} + +{/if} diff --git a/src/components/jet/item/Annotation/LegacyAnnotationRenderer.svelte b/src/components/jet/item/Annotation/LegacyAnnotationRenderer.svelte new file mode 100644 index 0000000..fc6586f --- /dev/null +++ b/src/components/jet/item/Annotation/LegacyAnnotationRenderer.svelte @@ -0,0 +1,146 @@ + + +{#if shouldRenderAsDefinitionList(items)} +
+ {#each items as annotationItem} +
{annotationItem.heading}
+
{annotationItem.text}
+ {/each} +
+{:else if shouldRenderAsOrderedList(items)} +
    + {#each items as annotationItem} + {#if annotationItem.textPairs} + {#each annotationItem.textPairs as [text, subtext]} +
  1. + {text} + {subtext} +
  2. + {/each} + {:else} +
  3. {annotationItem.text}
  4. + {/if} + {/each} +
+{:else if shouldRenderAsUnorderedList(items)} +
    + {#each items as annotationItem} +
  • + + {annotationItem.text} + +
  • + {/each} +
+{:else if shouldRenderAsDefinitionListWithHeading(items)} + {@const [heading, ...remainingItems] = items} +
+

{heading.text}

+ +
+ {#each remainingItems as annotationItem} +
{annotationItem.heading}
+
{annotationItem.text}
+ {/each} +
+
+{:else} +
+
    + {#each items as annotationItem} +
  • {annotationItem.text}
  • + {/each} +
+ {#if isSome(linkAction) && isFlowAction(linkAction)} + + {linkAction.title} + + {/if} +
+{/if} + + diff --git a/src/components/jet/item/Annotation/ModernAnnotationItemRenderer.svelte b/src/components/jet/item/Annotation/ModernAnnotationItemRenderer.svelte new file mode 100644 index 0000000..20611d3 --- /dev/null +++ b/src/components/jet/item/Annotation/ModernAnnotationItemRenderer.svelte @@ -0,0 +1,114 @@ + + +
    + {#each items as annotationItem} +
  • + {#if annotationItem.$kind === 'textEncapsulation'} +
    + {annotationItem.text} +
    + {:else if annotationItem.$kind === 'linkableText'} +
    + {@html sanitizeHtml( + formatStyledText( + annotationItem.linkableText.styledText.rawText, + ), + )} +
    + {:else if annotationItem.$kind === 'artwork'} + {#if isSystemImageArtwork(annotationItem.artwork)} +
    + +
    + {/if} + {:else if annotationItem.$kind === 'textPair'} +
    + {annotationItem.leadingText} + + {annotationItem.trailingText} + +
    + {:else if annotationItem.$kind === 'button'} +
    + + {annotationItem.action.title} + +
    + {:else if annotationItem.$kind === 'spacer'} +
    + {/if} +
  • + {/each} +
+ + diff --git a/src/components/jet/item/AppEventItem.svelte b/src/components/jet/item/AppEventItem.svelte new file mode 100644 index 0000000..c1e5e5a --- /dev/null +++ b/src/components/jet/item/AppEventItem.svelte @@ -0,0 +1,176 @@ + + +
+ + + + +
+ + +
+ {#if video} +
+
+ {:else if artwork} +
+ +
+ {/if} + +
+ +
+ +
+

{item.kind}

+ +

{item.title}

+ + +

{item.detail}

+
+
+
+
+
+ + {#if item.lockup && shouldShowLockup} +
+ +
+ {/if} +
+
+ + diff --git a/src/components/jet/item/ArcadeFooterItem.svelte b/src/components/jet/item/ArcadeFooterItem.svelte new file mode 100644 index 0000000..94fe61d --- /dev/null +++ b/src/components/jet/item/ArcadeFooterItem.svelte @@ -0,0 +1,83 @@ + + + +
+ {#if icons.length} + + {/if} + + +
+
+ + diff --git a/src/components/jet/item/BannerItem.svelte b/src/components/jet/item/BannerItem.svelte new file mode 100644 index 0000000..819f621 --- /dev/null +++ b/src/components/jet/item/BannerItem.svelte @@ -0,0 +1,37 @@ + + + + + diff --git a/src/components/jet/item/BrickItem.svelte b/src/components/jet/item/BrickItem.svelte new file mode 100644 index 0000000..a9e6319 --- /dev/null +++ b/src/components/jet/item/BrickItem.svelte @@ -0,0 +1,300 @@ + + + +
+ + {#if artwork} + + {:else if backgroundGradientCssVars} +
+ {/if} + + {#if item.title} + + {/if} + +
+ + + {#if !artwork && collectionIcons} +
    + {#each collectionIcons?.slice(0, 8) as collectionIcon} +
  • + +
  • + {/each} +
+ {/if} +
+ + + {#if item.shortEditorialDescription} +

+ {item.shortEditorialDescription} +

+ {/if} +
+ + + diff --git a/src/components/jet/item/ContentModal.svelte b/src/components/jet/item/ContentModal.svelte new file mode 100644 index 0000000..486937d --- /dev/null +++ b/src/components/jet/item/ContentModal.svelte @@ -0,0 +1,39 @@ + + + + + diff --git a/src/components/jet/item/EditorialCardItem.svelte b/src/components/jet/item/EditorialCardItem.svelte new file mode 100644 index 0000000..2998b05 --- /dev/null +++ b/src/components/jet/item/EditorialCardItem.svelte @@ -0,0 +1,41 @@ + + + + + {#if item.appEventFormattedDates} + + {:else} + {item.caption} + {/if} + + + + {#if item.lockup} + + {/if} + + diff --git a/src/components/jet/item/FooterLockupItem.svelte b/src/components/jet/item/FooterLockupItem.svelte new file mode 100644 index 0000000..848885d --- /dev/null +++ b/src/components/jet/item/FooterLockupItem.svelte @@ -0,0 +1,93 @@ + + + + + diff --git a/src/components/jet/item/HeroCarouselItem.svelte b/src/components/jet/item/HeroCarouselItem.svelte new file mode 100644 index 0000000..295aa8a --- /dev/null +++ b/src/components/jet/item/HeroCarouselItem.svelte @@ -0,0 +1,60 @@ + + + + + + {#if overlayLockup && overlayType === 'singleModule'} + + {:else if callToActionText && !isPortraitLayout} +
+ + {callToActionText} + +
+ {/if} +
+
+ + diff --git a/src/components/jet/item/InAppPurchaseLockup.svelte b/src/components/jet/item/InAppPurchaseLockup.svelte new file mode 100644 index 0000000..29b7196 --- /dev/null +++ b/src/components/jet/item/InAppPurchaseLockup.svelte @@ -0,0 +1,74 @@ + + +
+
+
+ + +
+ + diff --git a/src/components/jet/item/LargeBrickItem.svelte b/src/components/jet/item/LargeBrickItem.svelte new file mode 100644 index 0000000..5ce9974 --- /dev/null +++ b/src/components/jet/item/LargeBrickItem.svelte @@ -0,0 +1,106 @@ + + + + + {#if artwork} +
+ +
+ {:else} +
+ {/if} + +
+ +
+ + + + + + diff --git a/src/components/jet/item/LargeHeroBreakoutItem.svelte b/src/components/jet/item/LargeHeroBreakoutItem.svelte new file mode 100644 index 0000000..d07eec8 --- /dev/null +++ b/src/components/jet/item/LargeHeroBreakoutItem.svelte @@ -0,0 +1,268 @@ + + + + +
+ {#if video && $mediaQueries !== 'xsmall' && !canUseRTLArtwork} +
+ +
+ +
+ {#if item.details?.badge} + +

{item.details.badge}

+
+ {/if} + + {#if item.details.title} + +

{@html sanitizeHtml(item.details.title)}

+
+ {/if} + + {#if item.details.description} + +

{@html sanitizeHtml(item.details.description)}

+
+ {/if} + + {#if isSome(action) && isFlowAction(action)} + + {action.title} + + + {/if} + + {#if shouldShowCollectionIcons} +
    + {#each collectionIcons.slice(0, 6) as collectionIcon} +
  • + +
  • + {/each} +
+ {/if} +
+ + + + diff --git a/src/components/jet/item/LargeImageLockupItem.svelte b/src/components/jet/item/LargeImageLockupItem.svelte new file mode 100644 index 0000000..1df51c2 --- /dev/null +++ b/src/components/jet/item/LargeImageLockupItem.svelte @@ -0,0 +1,130 @@ + + + + +
+
+ +
+ + {#if item.lockup} +
+ {#if item.lockup.icon} +
+ +
+ {/if} + + +
+ {/if} + +
+ +
+
+
+
+ + diff --git a/src/components/jet/item/LargeLockupItem.svelte b/src/components/jet/item/LargeLockupItem.svelte new file mode 100644 index 0000000..93adc6e --- /dev/null +++ b/src/components/jet/item/LargeLockupItem.svelte @@ -0,0 +1,121 @@ + + + +
+
+ +
+ + + + {#if destination} +
+ + {$i18n.t('ASE.Web.AppStore.View')} + +
+ {/if} +
+
+ + diff --git a/src/components/jet/item/LargeStoryCardItem.svelte b/src/components/jet/item/LargeStoryCardItem.svelte new file mode 100644 index 0000000..66079c2 --- /dev/null +++ b/src/components/jet/item/LargeStoryCardItem.svelte @@ -0,0 +1,38 @@ + + + diff --git a/src/components/jet/item/LinkableTextItem.svelte b/src/components/jet/item/LinkableTextItem.svelte new file mode 100644 index 0000000..a5a3e74 --- /dev/null +++ b/src/components/jet/item/LinkableTextItem.svelte @@ -0,0 +1,88 @@ + + +{#each fragments as fragment} + {#if fragment.action} + + {fragment.text} + + {:else if fragment.isTrailingPunctuation} + {fragment.text} + {:else} + {@html sanitizeHtml(fragment.text)} + {/if} +{/each} + + diff --git a/src/components/jet/item/MediumImageLockupItem.svelte b/src/components/jet/item/MediumImageLockupItem.svelte new file mode 100644 index 0000000..8b93453 --- /dev/null +++ b/src/components/jet/item/MediumImageLockupItem.svelte @@ -0,0 +1,118 @@ + + + +
+ +
+ +
+ + {#if item.lockup} +
+ {#if item.lockup.icon} +
+ +
+ {/if} + + +
+ {/if} + + +
+
+
+ + diff --git a/src/components/jet/item/MediumLockupItem.svelte b/src/components/jet/item/MediumLockupItem.svelte new file mode 100644 index 0000000..be70acb --- /dev/null +++ b/src/components/jet/item/MediumLockupItem.svelte @@ -0,0 +1,96 @@ + + + +
+
+ +
+ + +
+
+ + diff --git a/src/components/jet/item/MediumStoryCard/EditorialStoryCardItem.svelte b/src/components/jet/item/MediumStoryCard/EditorialStoryCardItem.svelte new file mode 100644 index 0000000..7b7807c --- /dev/null +++ b/src/components/jet/item/MediumStoryCard/EditorialStoryCardItem.svelte @@ -0,0 +1,304 @@ + + + +
+ {#if item.artwork} +
+ + + +
+ {/if} +
+
+ {#if item.badge} +

{item.badge.title}

+ {/if} + + {#if item.title} +

{@html sanitizeHtml(item.title)}

+ {/if} + + {#if item.description} +

{@html sanitizeHtml(item.description)}

+ {/if} +
+ + {#if collectionIcons && !item.editorialDisplayOptions.suppressLockup} +
+
    + {#each collectionIcons as collectionIcon} +
  • + +
  • + {/each} +
+ + {#if !hasMultipleCollectionIcons} + + + {#if destination} +
+ + {$i18n.t('ASE.Web.AppStore.View')} + +
+ {/if} + {/if} +
+ {/if} +
+
+
+
+ + diff --git a/src/components/jet/item/MediumStoryCardItem.svelte b/src/components/jet/item/MediumStoryCardItem.svelte new file mode 100644 index 0000000..80ead7d --- /dev/null +++ b/src/components/jet/item/MediumStoryCardItem.svelte @@ -0,0 +1,27 @@ + + + + +{#if isEditorialStoryCard(item)} + +{:else if isSmallStoryCardWithMediaItem(item)} + +{/if} diff --git a/src/components/jet/item/MixedMediaLockupItem.svelte b/src/components/jet/item/MixedMediaLockupItem.svelte new file mode 100644 index 0000000..4874419 --- /dev/null +++ b/src/components/jet/item/MixedMediaLockupItem.svelte @@ -0,0 +1,39 @@ + + +
+
+ {#if video} +
+ +
+ + diff --git a/src/components/jet/item/ParagraphShelfItem.svelte b/src/components/jet/item/ParagraphShelfItem.svelte new file mode 100644 index 0000000..9adf09c --- /dev/null +++ b/src/components/jet/item/ParagraphShelfItem.svelte @@ -0,0 +1,21 @@ + + +

+ {@html he.decode(item.text)} +

+ + diff --git a/src/components/jet/item/PosterLockupItem.svelte b/src/components/jet/item/PosterLockupItem.svelte new file mode 100644 index 0000000..08b34e2 --- /dev/null +++ b/src/components/jet/item/PosterLockupItem.svelte @@ -0,0 +1,121 @@ + + + + +
+
+ {#if item.epicHeading} +
+ +
+ {/if} + + {#if item.posterVideo} +
+
+ {:else if item.posterArtwork} +
+ +
+ {/if} +
+ +
+
+ +
+ + + {item.footerText} + {#if item.tertiaryTitle} + | {item.tertiaryTitle} + {/if} + +
+
+
+
+ + diff --git a/src/components/jet/item/PrivacyHeaderItem.svelte b/src/components/jet/item/PrivacyHeaderItem.svelte new file mode 100644 index 0000000..f9611a6 --- /dev/null +++ b/src/components/jet/item/PrivacyHeaderItem.svelte @@ -0,0 +1,41 @@ + + +
+

+ +

+ + {#if item.supplementaryItems.length} +
+ {#each item.supplementaryItems as supItem} +

+ +

+ {/each} +
+ {/if} +
+ + diff --git a/src/components/jet/item/PrivacyTypeItem.svelte b/src/components/jet/item/PrivacyTypeItem.svelte new file mode 100644 index 0000000..5e63966 --- /dev/null +++ b/src/components/jet/item/PrivacyTypeItem.svelte @@ -0,0 +1,193 @@ + + +
+ {#if item.artwork && isSystemImageArtwork(item.artwork)} + + {/if} + +

{item.title}

+

{item.detail}

+ +
    1 && !isDetailView}> + {#each item.categories as category} +
  • + {#if isSystemImageArtwork(category.artwork)} + + {/if} + {category.title} +
  • + {/each} +
+ + {#each item.purposes as purpose} +
+

{purpose.title}

+ + {#each purpose.categories as category} +
  • + {#if isSystemImageArtwork(category.artwork)} + + {/if} + + {category.title} + +
      + {#each category.dataTypes as type} +
    • {type}
    • + {/each} +
    +
  • + {/each} +
    + {/each} +
    + + diff --git a/src/components/jet/item/ProductBadgeItem.svelte b/src/components/jet/item/ProductBadgeItem.svelte new file mode 100644 index 0000000..fa32e6f --- /dev/null +++ b/src/components/jet/item/ProductBadgeItem.svelte @@ -0,0 +1,188 @@ + + + +
    +
    +
    + + {item.heading} + +
    + +
    + {#if isContentRatingBadge(item)} + + {:else if isParagraph} + {content.paragraphText} + {:else if isRating && !content.rating} + + {content.ratingFormatted} + + {:else if isEditorsChoice} + + + + + + {item.accessibilityTitle} + + + + + + {:else if artwork && hasImageArtwork} + + {:else if artwork && isSystemImageArtwork(artwork)} + + {:else if isController} + + {/if} + + {#if isRating && content.rating} + + + {:else} + {item.caption} + {/if} +
    +
    +
    +
    + + diff --git a/src/components/jet/item/ProductCapabilityItem.svelte b/src/components/jet/item/ProductCapabilityItem.svelte new file mode 100644 index 0000000..21e97cd --- /dev/null +++ b/src/components/jet/item/ProductCapabilityItem.svelte @@ -0,0 +1,84 @@ + + +
    +
    + +
    + + +
    + + diff --git a/src/components/jet/item/ProductMedia/ProductMediaMacItem.svelte b/src/components/jet/item/ProductMedia/ProductMediaMacItem.svelte new file mode 100644 index 0000000..516ed32 --- /dev/null +++ b/src/components/jet/item/ProductMedia/ProductMediaMacItem.svelte @@ -0,0 +1,31 @@ + + +{#if item.screenshot} +
    + +
    +{:else if item.video} +
    +
    +{/if} + + diff --git a/src/components/jet/item/ProductMedia/ProductMediaPadItem.svelte b/src/components/jet/item/ProductMedia/ProductMediaPadItem.svelte new file mode 100644 index 0000000..6b9886c --- /dev/null +++ b/src/components/jet/item/ProductMedia/ProductMediaPadItem.svelte @@ -0,0 +1,89 @@ + + +{#if item.screenshot || item.video} +
    +
    + {#if item.screenshot} + + {:else if item.video} +
    +
    +{/if} + + diff --git a/src/components/jet/item/ProductMedia/ProductMediaPhoneItem.svelte b/src/components/jet/item/ProductMedia/ProductMediaPhoneItem.svelte new file mode 100644 index 0000000..255b663 --- /dev/null +++ b/src/components/jet/item/ProductMedia/ProductMediaPhoneItem.svelte @@ -0,0 +1,142 @@ + + +{#if item.screenshot || item.video} +
    +
    + {#if item.screenshot} + + {:else if item.video} +
    +
    +{/if} + + diff --git a/src/components/jet/item/ProductMedia/ProductMediaTVItem.svelte b/src/components/jet/item/ProductMedia/ProductMediaTVItem.svelte new file mode 100644 index 0000000..7f7fd7a --- /dev/null +++ b/src/components/jet/item/ProductMedia/ProductMediaTVItem.svelte @@ -0,0 +1,34 @@ + + +{#if item.screenshot || item.video} +
    +
    + {#if item.screenshot} + + {:else if item.video} +
    +
    +{/if} + + diff --git a/src/components/jet/item/ProductMedia/ProductMediaVisionItem.svelte b/src/components/jet/item/ProductMedia/ProductMediaVisionItem.svelte new file mode 100644 index 0000000..e893dd6 --- /dev/null +++ b/src/components/jet/item/ProductMedia/ProductMediaVisionItem.svelte @@ -0,0 +1,38 @@ + + +{#if item.screenshot || item.video} +
    +
    + {#if item.screenshot} + + {:else if item.video} +
    +
    +{/if} + + diff --git a/src/components/jet/item/ProductMedia/ProductMediaWatchItem.svelte b/src/components/jet/item/ProductMedia/ProductMediaWatchItem.svelte new file mode 100644 index 0000000..0a4b50e --- /dev/null +++ b/src/components/jet/item/ProductMedia/ProductMediaWatchItem.svelte @@ -0,0 +1,50 @@ + + +{#if item.screenshot} +
    +
    + +
    +
    +{/if} + + diff --git a/src/components/jet/item/ProductPageLinkItem.svelte b/src/components/jet/item/ProductPageLinkItem.svelte new file mode 100644 index 0000000..be4bb16 --- /dev/null +++ b/src/components/jet/item/ProductPageLinkItem.svelte @@ -0,0 +1,68 @@ + + +{#if canRenderContainer} + +{/if} + + diff --git a/src/components/jet/item/ProductRatingsItem.svelte b/src/components/jet/item/ProductRatingsItem.svelte new file mode 100644 index 0000000..0345993 --- /dev/null +++ b/src/components/jet/item/ProductRatingsItem.svelte @@ -0,0 +1,37 @@ + + +
    + {#if item.totalNumberOfRatings === 0} + {item.status} + {:else} + + {/if} +
    + + diff --git a/src/components/jet/item/ProductReview/EditorsChoiceReviewItem.svelte b/src/components/jet/item/ProductReview/EditorsChoiceReviewItem.svelte new file mode 100644 index 0000000..2bb6a06 --- /dev/null +++ b/src/components/jet/item/ProductReview/EditorsChoiceReviewItem.svelte @@ -0,0 +1,99 @@ + + + + +
    + + + {#if isDetailView} +

    {item.review.notes}

    + {:else} + + {/if} +
    + +{#if !isDetailView} + + + + + + + +{/if} + + diff --git a/src/components/jet/item/ProductReview/UserReviewItem.svelte b/src/components/jet/item/ProductReview/UserReviewItem.svelte new file mode 100644 index 0000000..472dd1f --- /dev/null +++ b/src/components/jet/item/ProductReview/UserReviewItem.svelte @@ -0,0 +1,25 @@ + + + + + diff --git a/src/components/jet/item/ReviewItem.svelte b/src/components/jet/item/ReviewItem.svelte new file mode 100644 index 0000000..7f406c8 --- /dev/null +++ b/src/components/jet/item/ReviewItem.svelte @@ -0,0 +1,237 @@ + + +
    +
    +
    + {#if !isDetailView} +

    + + {title} + +

    + {/if} + + +
    + +
    + + + +

    + {reviewerName} +

    +
    +
    +
    + + {#if isDetailView} +

    + {@html sanitizeHtml(reviewContents, { + allowedTags: [''], + keepChildrenWhenRemovingParent: true, + })} + + {#if response} +

    +
    + + {$i18n.t( + 'ASE.Web.AppStore.Review.DeveloperResponse', + )} + + + +
    + + {@html sanitizeHtml(responseContents, { + allowedTags: [''], + keepChildrenWhenRemovingParent: true, + })} +
    + {/if} +

    + {:else} +
    + + + {#if item.response} +
    + + {$i18n.t('ASE.Web.AppStore.Review.DeveloperResponse')} + + +
    + {/if} +
    + {/if} +
    + +{#if !isDetailView} + + + + + + + +{/if} + + diff --git a/src/components/jet/item/SearchLinkItem.svelte b/src/components/jet/item/SearchLinkItem.svelte new file mode 100644 index 0000000..cd60512 --- /dev/null +++ b/src/components/jet/item/SearchLinkItem.svelte @@ -0,0 +1,47 @@ + + +{#if isFlowAction(item.clickAction)} + +{/if} + + diff --git a/src/components/jet/item/SearchResult/AppSearchResultItem.svelte b/src/components/jet/item/SearchResult/AppSearchResultItem.svelte new file mode 100644 index 0000000..c36e5fc --- /dev/null +++ b/src/components/jet/item/SearchResult/AppSearchResultItem.svelte @@ -0,0 +1,392 @@ + + + + + +
    +
    + {#if item.lockup.icon} +
    + +
    + {/if} + + + +
    + + {$i18n.t('ASE.Web.AppStore.View')} + +
    +
    + +
    + {#each media as mediaItem} + {#if 'videoUrl' in mediaItem} +
    +
    + {:else} + + {/if} + {/each} +
    +
    +
    + + diff --git a/src/components/jet/item/SmallBreakoutItem.svelte b/src/components/jet/item/SmallBreakoutItem.svelte new file mode 100644 index 0000000..311fbef --- /dev/null +++ b/src/components/jet/item/SmallBreakoutItem.svelte @@ -0,0 +1,187 @@ + + + + +
    + {#if iconArtwork} +
    + +
    + {/if} + +
    + {#if item.details?.badge} + +

    {item.details.badge}

    +
    + {/if} + + {#if item.details.title} + +

    {item.details.title}

    +
    + {/if} + + {#if item.details.description} + +

    {item.details.description}

    +
    + {/if} + + {#if isSome(action) && isFlowAction(action)} + + {action.title} + + + {/if} +
    +
    +
    +
    + + diff --git a/src/components/jet/item/SmallLockupItem.svelte b/src/components/jet/item/SmallLockupItem.svelte new file mode 100644 index 0000000..b235652 --- /dev/null +++ b/src/components/jet/item/SmallLockupItem.svelte @@ -0,0 +1,110 @@ + + +
    + + {#if item.icon} +
    + +
    + {/if} + + + + +
    +
    + + diff --git a/src/components/jet/item/SmallLockupWithOrdinalItem.svelte b/src/components/jet/item/SmallLockupWithOrdinalItem.svelte new file mode 100644 index 0000000..9fb796c --- /dev/null +++ b/src/components/jet/item/SmallLockupWithOrdinalItem.svelte @@ -0,0 +1,176 @@ + + + + + +
    + {#if item.ordinal} +
    + {item.ordinal} +
    + {/if} + + {#if item.icon} +
    + +
    + {/if} + + +
    + + {$i18n.t('ASE.Web.AppStore.View')} + +
    +
    +
    + + diff --git a/src/components/jet/item/SmallStoryCardMediaBrandedSingleApp.svelte b/src/components/jet/item/SmallStoryCardMediaBrandedSingleApp.svelte new file mode 100644 index 0000000..ce7784b --- /dev/null +++ b/src/components/jet/item/SmallStoryCardMediaBrandedSingleApp.svelte @@ -0,0 +1,69 @@ + + + + +
    + + + + + +
    +

    {item.heading}

    +

    {item.title}

    +

    {item.inlineDescription}

    +
    +
    +
    + + diff --git a/src/components/jet/item/SmallStoryCardWithArtworkItem.svelte b/src/components/jet/item/SmallStoryCardWithArtworkItem.svelte new file mode 100644 index 0000000..bcd7333 --- /dev/null +++ b/src/components/jet/item/SmallStoryCardWithArtworkItem.svelte @@ -0,0 +1,87 @@ + + + + +
    + + + + + + +
    + {#if item.badge?.title} +

    {item.badge.title}

    + {/if} + + {#if item.title} +

    {@html sanitizeHtml(item.title)}

    + {/if} +
    +
    +
    +
    + + diff --git a/src/components/jet/item/SmallStoryCardWithMediaAppIcon.svelte b/src/components/jet/item/SmallStoryCardWithMediaAppIcon.svelte new file mode 100644 index 0000000..5b20e1c --- /dev/null +++ b/src/components/jet/item/SmallStoryCardWithMediaAppIcon.svelte @@ -0,0 +1,156 @@ + + + + + + +
    +
    + + {#if artwork} + + {:else} +
    +
    + +
    + +
    + +
    +
    + {/if} +
    + + +
    +

    {item.heading}

    +

    {item.title}

    +
    + + + diff --git a/src/components/jet/item/SmallStoryCardWithMediaItem.svelte b/src/components/jet/item/SmallStoryCardWithMediaItem.svelte new file mode 100644 index 0000000..4901744 --- /dev/null +++ b/src/components/jet/item/SmallStoryCardWithMediaItem.svelte @@ -0,0 +1,104 @@ + + + + +
    + + + {#if artwork} +
    + +
    + {/if} +
    + +
    +

    {item.heading}

    + +

    {item.title}

    +
    + + {#if item.inlineDescription} + +

    {item.inlineDescription}

    +
    + {/if} +
    +
    +
    + + diff --git a/src/components/jet/item/SmallStoryCardWithMediaRiver.svelte b/src/components/jet/item/SmallStoryCardWithMediaRiver.svelte new file mode 100644 index 0000000..038f504 --- /dev/null +++ b/src/components/jet/item/SmallStoryCardWithMediaRiver.svelte @@ -0,0 +1,118 @@ + + + + + + +
    + +
    +
    + +
    + {#if eyebrow} +

    {eyebrow}

    + {/if} + + {#if title} +

    {title}

    + {/if} +
    +
    + + diff --git a/src/components/jet/item/TitledParagraphItem.svelte b/src/components/jet/item/TitledParagraphItem.svelte new file mode 100644 index 0000000..ad8e4bc --- /dev/null +++ b/src/components/jet/item/TitledParagraphItem.svelte @@ -0,0 +1,175 @@ + + + + +
    +
    +

    + {#if item.text} + {#if !isTruncated || isDetailView} + {item.text} + {:else} + + (isTruncated = detail.truncated)} + > + {@html sanitizeHtml(item.text)} + + + {#if isTruncated} + + {/if} + {/if} + {/if} +

    + + +
    +
    + + diff --git a/src/components/jet/item/TrailersLockupItem.svelte b/src/components/jet/item/TrailersLockupItem.svelte new file mode 100644 index 0000000..6b2ee42 --- /dev/null +++ b/src/components/jet/item/TrailersLockupItem.svelte @@ -0,0 +1,51 @@ + + +
    + {#if video} +
    +
    + {/if} + + +
    + + -- cgit v1.2.3