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]}
+ -
+ {text}
+ {subtext}
+
+ {/each}
+ {:else}
+ - {annotationItem.text}
+ {/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 @@
+
+
+
+
+ {item.message}
+ {#if isSome(item.action) && isFlowAction(item.action)}
+
+ {item.action.title}
+
+ {/if}
+
+
+
+
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}
+
+ {:else if artwork}
+
+ {/if}
+
+
+
+
+
+ {#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 @@
+
+
+
+
+
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}
+
+ {content.ratingFormatted}
+
+
+ {: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}
+
+
+{/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}
+
+
+{/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}
+
+
+{/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}
+
+
+{/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 isFlowAction(clickAction)}
+
+ {item.text}
+
+ {:else if isExternalUrlAction(clickAction)}
+
+ {item.text}
+
+ {/if}
+
+{/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}
+
+ {@html sanitizeHtml(reviewContents, {
+ allowedTags: [''],
+ keepChildrenWhenRemovingParent: true,
+ })}
+
+ {#if response}
+
+
+
+ {@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)}
+
+
+
+ {item.title}
+
+
+{/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')}
+
+
+
+
+
+
+
+
+
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}
+
+
+
+
+ {#if shouldShowLaunchNativeButton && $$slots['launch-native-button']}
+
+ {:else}
+
+ {$i18n.t('ASE.Web.AppStore.View')}
+
+ {/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}
+
+
+
+
{item.primarySubtitle}
+
+
+
+
+
+
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