@explorer-1/vue 0.3.8 → 1.0.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.
- package/CHANGELOG.md +18 -0
- package/package.json +2 -2
- package/src/assets/fonts/helvetica-now/.gitkeep +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Bd It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Black.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Blk It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Bold.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Hair It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Hairline.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Light.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Lt It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Md It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Medium.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Th It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display Thin.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display XBd It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display XBlack.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display XBlk It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display XBold.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display XLight.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display XLt It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Display.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro Bd It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro Bold.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro ExtraBold.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro ExtraLight.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro Light.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro Lt It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro Md It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro Medium.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro XBd It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro XLt It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Micro.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text Bd It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text Black.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text Blk It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text Bold.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text ExtraBold.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text ExtraLight.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text Light.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text Lt It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text Md It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text Medium.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text Th It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text Thin.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text XBd It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text XLt It.otf +0 -0
- package/src/assets/fonts/helvetica-now/Monotype - Helvetica Now Text.otf +0 -0
- package/src/components/AboutTheAuthor/AboutTheAuthor.vue +2 -2
- package/src/components/AsteroidWatchWidget/AsteroidWatchWidget.vue +8 -6
- package/src/components/BaseAccordionItem/BaseAccordionItem.vue +1 -1
- package/src/components/BaseAudio/BaseAudio.vue +1 -1
- package/src/components/BaseButton/BaseButton.stories.ts +0 -6
- package/src/components/BaseButton/BaseButton.vue +1 -1
- package/src/components/BaseCheckboxGroup/BaseCheckboxGroup.vue +3 -3
- package/src/components/BaseImageCaption/BaseImageCaption.vue +1 -1
- package/src/components/BaseLink/BaseLink.vue +44 -36
- package/src/components/BasePill/BasePill.vue +4 -4
- package/src/components/BaseRadioGroup/BaseRadioGroup.vue +4 -5
- package/src/components/BaseTimer/BaseTimer.vue +2 -1
- package/src/components/BlockCardGridItem/BlockCardGridItemElement.vue +2 -2
- package/src/components/BlockCsrTable/BlockCsrTable.vue +2 -2
- package/src/components/BlockCsrTable/CsrAttachment.vue +16 -4
- package/src/components/BlockCta/BlockCta.vue +2 -2
- package/src/components/BlockImageCarousel/BlockImageCarousel.vue +2 -2
- package/src/components/BlockKeyPoints/BlockKeyPoints.vue +1 -1
- package/src/components/BlockLinkCard/BlockLinkCard.stories.js +3 -1
- package/src/components/BlockLinkCard/BlockLinkCard.vue +6 -6
- package/src/components/BlockLinkCard/BlockLinkCardCollectionLg.vue +1 -1
- package/src/components/BlockLinkTile/BlockLinkTile.vue +2 -2
- package/src/components/BlockNewsletterSignup/BlockNewsletterSignup.vue +3 -3
- package/src/components/BlockRichTable/BlockRichTable.vue +2 -2
- package/src/components/BlockTeaser/BlockTeaser.vue +1 -1
- package/src/components/CalendarChip/CalendarChip.vue +2 -2
- package/src/components/DetailHeadline/DetailHeadline.vue +3 -3
- package/src/components/HeroLarge/HeroLarge.vue +3 -4
- package/src/components/HeroMedium/HeroMedium.vue +1 -1
- package/src/components/HomepageCarousel/HomepageCarousel.vue +1 -1
- package/src/components/HomepageCarouselItem/HomepageCarouselItem.vue +2 -2
- package/src/components/HomepageEmbedBlock/HomepageEmbedBlock.vue +1 -1
- package/src/components/HomepageMissionsCarousel/HomepageMissionsCarousel.vue +1 -1
- package/src/components/HomepageMissionsCarousel/HomepageMissionsCarouselItem.vue +3 -3
- package/src/components/HomepageStats/HomepageStats.vue +1 -1
- package/src/components/HomepageTeaserBlock/HomepageTeaserBlock.vue +1 -1
- package/src/components/ImageDetailContextImage/ImageDetailContextImage.vue +1 -1
- package/src/components/MetaPanel/MetaPanel.vue +4 -4
- package/src/components/MetaPanelAccordion/MetaPanelAccordion.vue +3 -3
- package/src/components/MetadataEduResource/MetadataEduResource.vue +1 -1
- package/src/components/MetadataEvent/MetadataEvent.vue +1 -1
- package/src/components/MissionDetailAbout/MissionDetailAbout.vue +1 -1
- package/src/components/MissionDetailHero/MissionDetailHero.vue +5 -3
- package/src/components/MissionDetailHighlights/MissionDetailHighlights.vue +1 -1
- package/src/components/MissionDetailHighlights/MissionDetailHighlightsCarouselItem.vue +2 -2
- package/src/components/MissionDetailStats/MissionDetailStatsMini.vue +2 -2
- package/src/components/MixinCarousel/MixinCarousel.vue +3 -3
- package/src/components/MixinFancybox/MixinFancybox.vue +1 -1
- package/src/components/MixinFancybox/MixinFancyboxOpenButton.vue +1 -1
- package/src/components/NavDesktop/NavDesktopDropdown.vue +1 -1
- package/src/components/NavDesktop/NavDesktopDropdownContent.vue +3 -3
- package/src/components/NavDesktop/NavDesktopDropdownMore.vue +1 -1
- package/src/components/NavDesktopEdu/NavDesktopEdu.vue +8 -8
- package/src/components/NavHeading/NavHeading.vue +2 -2
- package/src/components/NavHighlight/NavHighlight.vue +6 -1
- package/src/components/NavJumpMenu/NavJumpMenuContent.vue +1 -1
- package/src/components/NavLinkList/NavLinkList.vue +1 -1
- package/src/components/NavMobile/NavMobile.stories.js +1 -0
- package/src/components/NavMobile/NavMobile.vue +6 -6
- package/src/components/NavMobile/NavMobileDropdown.vue +1 -1
- package/src/components/NavMobile/NavMobileLink.vue +1 -1
- package/src/components/NavSecondary/NavSecondary.vue +2 -2
- package/src/components/NavSecondary/NavSecondaryDropdown.vue +3 -3
- package/src/components/NavSecondary/NavSecondaryDropdownContent.vue +6 -6
- package/src/components/NavSecondary/NavSecondaryLink.vue +3 -3
- package/src/components/NavSocial/NavSocial.vue +3 -2
- package/src/components/PodcastSeriesCarousel/PodcastSeriesCarousel.vue +1 -5
- package/src/components/SearchFilterGroup/SearchFilterGroup.vue +3 -3
- package/src/components/SearchInput/SearchInput.vue +7 -6
- package/src/components/SearchPagination/SearchPagination.vue +2 -0
- package/src/components/SearchResultGridItem/SearchResultGridItem.vue +1 -1
- package/src/components/SearchSelectMenu/SearchSelectMenu.vue +1 -1
- package/src/components/ShareButtons/ShareButtons.vue +4 -4
- package/src/components/ShareButtonsEdu/ShareButtonsEdu.vue +1 -1
- package/src/components/SwimlaneCTA/SwimlaneCTA.vue +4 -6
- package/src/components/TheFooter/TheFooter.vue +3 -3
- package/src/components/TimelineDialog/TimelineDialog.vue +7 -7
- package/src/components/TopicDetailMissionCarouselItem/TopicDetailMissionCarouselItem.vue +2 -2
- package/src/components/TopicDetailMissionSpotlight/TopicDetailMissionSpotlight.vue +2 -4
- package/src/components/TopicDetailMore/TopicDetailMore.vue +1 -5
- package/src/docs/foundation/FontVariants.vue +49 -27
- package/src/docs/foundation/color.docs.mdx +544 -115
- package/src/docs/foundation/colorsemantic.docs.mdx +395 -0
- package/src/docs/foundation/typography.docs.mdx +10 -5
- package/src/docs/utils/ColorRow.jsx +138 -0
- package/src/templates/PageEventDetail/PageEventDetail.vue +1 -1
- package/src/templates/PageImageDetail/PageImageDetail.vue +6 -10
- package/src/templates/PageNewsDetail/PageNewsDetail.vue +1 -1
- package/src/templates/edu/PageEduEventDetail/PageEduEventDetail.vue +2 -2
- package/src/templates/edu/PageEduHome/PageEduHome.vue +1 -1
- package/src/templates/edu/PageEduMultimediaDetail/PageEduMultimediaDetail.vue +1 -1
- package/src/templates/edu/PageEduNewsDetail/PageEduNewsDetail.vue +1 -1
- package/src/templates/www/PageCuratedGallery/PageCuratedGallery.vue +1 -1
- package/src/templates/www/PageInfographicDetail/PageInfographicDetail.vue +1 -1
- package/src/templates/www/PageMaintenanceMode/PageMaintenanceMode.vue +1 -1
- package/src/templates/www/PagePodcast/PagePodcast.vue +1 -1
- package/src/templates/www/PagePodcastSeason/PagePodcastSeason.vue +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @explorer-1/vue
|
|
2
2
|
|
|
3
|
+
## 1.0.0
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- 27c013c: Updating Explorer-1 with JPL's new branding colors and typefaces.
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- 27c013c: Documentation updates, Storybook improvements.
|
|
12
|
+
- Updated dependencies [27c013c]
|
|
13
|
+
- @explorer-1/common@2.0.0
|
|
14
|
+
|
|
15
|
+
## 0.3.9
|
|
16
|
+
|
|
17
|
+
### Patch Changes
|
|
18
|
+
|
|
19
|
+
- 604b717: Fixing url handling in BlockCsrTable, adding option to disable trailing slash in BaseLink.
|
|
20
|
+
|
|
3
21
|
## 0.3.8
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@explorer-1/vue",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"vue-bind-once": "^0.2.1",
|
|
32
32
|
"vue3-compare-image": "^1.2.5",
|
|
33
33
|
"vue3-observe-visibility": "^1.0.1",
|
|
34
|
-
"@explorer-1/common": "
|
|
34
|
+
"@explorer-1/common": "2.0.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@vitejs/plugin-vue": "^5.0.4",
|
|
File without changes
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -63,13 +63,13 @@ const headingString = computed(() => {
|
|
|
63
63
|
<div class="mb-4">
|
|
64
64
|
<h3
|
|
65
65
|
v-if="author.author.name"
|
|
66
|
-
class="!
|
|
66
|
+
class="!text-lg mb-1"
|
|
67
67
|
>
|
|
68
68
|
{{ author.author.name }}
|
|
69
69
|
</h3>
|
|
70
70
|
<p
|
|
71
71
|
v-if="author.author.jobTitle || author.author.organization"
|
|
72
|
-
class="text-lg"
|
|
72
|
+
class="font-display text-lg"
|
|
73
73
|
>
|
|
74
74
|
{{
|
|
75
75
|
(author.author.jobTitle ? author.author.jobTitle : '') +
|
|
@@ -78,9 +78,9 @@
|
|
|
78
78
|
:href="item.externalLink"
|
|
79
79
|
external-target-blank
|
|
80
80
|
>
|
|
81
|
-
<span class="flex flex-nowrap items-center">
|
|
81
|
+
<span class="font-secondary text-base flex flex-nowrap items-center">
|
|
82
82
|
<span>{{ item.name }}</span>
|
|
83
|
-
<IconExternal class="text-jpl-red ml-3 text-
|
|
83
|
+
<IconExternal class="text-jpl-red ml-3 text-base" />
|
|
84
84
|
</span>
|
|
85
85
|
</BaseLink>
|
|
86
86
|
</div>
|
|
@@ -89,10 +89,12 @@
|
|
|
89
89
|
class="lg:col-span-4 col-span-full"
|
|
90
90
|
>
|
|
91
91
|
<p class="label text-subtitle text-jpl-red">Date</p>
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
92
|
+
<div class="font-secondary text-base">
|
|
93
|
+
{{
|
|
94
|
+
// @ts-ignore
|
|
95
|
+
$filters.displayDate(item.date)
|
|
96
|
+
}}
|
|
97
|
+
</div>
|
|
96
98
|
</div>
|
|
97
99
|
</div>
|
|
98
100
|
</div>
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
</div>
|
|
28
28
|
<div class="flex flex-col w-full z-20">
|
|
29
29
|
<div
|
|
30
|
-
class="BaseAudio__playback-time-wrapper cursor-pointer relative inline-block w-full border-t border-jpl-red bg-gray-mid
|
|
30
|
+
class="BaseAudio__playback-time-wrapper cursor-pointer relative inline-block w-full border-t border-jpl-red bg-gray-mid bg-opacity-25 h-2"
|
|
31
31
|
title="Playback Position"
|
|
32
32
|
@click="setPosition"
|
|
33
33
|
>
|
|
@@ -125,7 +125,7 @@ export default defineComponent({
|
|
|
125
125
|
<template>
|
|
126
126
|
<component
|
|
127
127
|
:is="tag"
|
|
128
|
-
class="BaseButton text-contrast-none print:border print:!border-gray-dark print:text-center"
|
|
128
|
+
class="BaseButton text-sm text-contrast-none print:border print:!border-gray-dark print:text-center"
|
|
129
129
|
:class="variantClass"
|
|
130
130
|
:aria-label="ariaLabel"
|
|
131
131
|
:disabled="disabled"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<div class="BaseCheckboxGroup">
|
|
3
3
|
<label
|
|
4
4
|
v-if="heading"
|
|
5
|
-
class="text-lg font-
|
|
5
|
+
class="text-lg font-bold text-gray-900"
|
|
6
6
|
>{{ heading }}</label
|
|
7
7
|
>
|
|
8
8
|
<p
|
|
@@ -41,11 +41,11 @@
|
|
|
41
41
|
<div class="mb-1">
|
|
42
42
|
<label
|
|
43
43
|
:for="`${group}_${option.id}`"
|
|
44
|
-
class="ml-3 block text-md text-gray-
|
|
44
|
+
class="ml-3 block text-md text-gray-mid-dark"
|
|
45
45
|
>
|
|
46
46
|
<span
|
|
47
47
|
v-if="option.title"
|
|
48
|
-
class="font-
|
|
48
|
+
class="font-bold"
|
|
49
49
|
>{{ option.title }}</span
|
|
50
50
|
>
|
|
51
51
|
<span v-if="option.text"> - </span>
|
|
@@ -50,6 +50,11 @@ export default defineComponent({
|
|
|
50
50
|
type: String,
|
|
51
51
|
default: undefined
|
|
52
52
|
},
|
|
53
|
+
/** Links are normalized to add a trailing slash (handles links to files, query params etc.). Set to false to disable. */
|
|
54
|
+
addSlash: {
|
|
55
|
+
type: Boolean,
|
|
56
|
+
default: true
|
|
57
|
+
},
|
|
53
58
|
title: {
|
|
54
59
|
type: String,
|
|
55
60
|
default: undefined
|
|
@@ -196,46 +201,49 @@ export default defineComponent({
|
|
|
196
201
|
eventBus.emit('linkClicked')
|
|
197
202
|
},
|
|
198
203
|
addTrailingSlash(path: string) {
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
const
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
const isQueryPath = path.includes('?')
|
|
209
|
-
const isAnchorPath = path.includes('#')
|
|
210
|
-
if (
|
|
211
|
-
!isQueryPath &&
|
|
212
|
-
!isAnchorPath &&
|
|
213
|
-
!isFilePath() &&
|
|
214
|
-
path !== '/' &&
|
|
215
|
-
!path.endsWith('/') &&
|
|
216
|
-
!path.startsWith('/preview')
|
|
217
|
-
) {
|
|
218
|
-
// add a trailing slash if there isn't one
|
|
219
|
-
filteredPath += '/'
|
|
220
|
-
} else if (isQueryPath) {
|
|
221
|
-
if (!path.includes('/?')) {
|
|
222
|
-
// also add a trailing slash to paths with query params
|
|
223
|
-
const urlParts = filteredPath.split('?')
|
|
224
|
-
const pathWithSlash = `${urlParts[0]}/`
|
|
225
|
-
const queryParams = urlParts[1]
|
|
226
|
-
filteredPath = pathWithSlash + '?' + queryParams
|
|
204
|
+
if (this.addSlash) {
|
|
205
|
+
let filteredPath = path
|
|
206
|
+
if (path && typeof path === 'string') {
|
|
207
|
+
const isFilePath = () => {
|
|
208
|
+
const afterLastSlash = path.split('/').pop()
|
|
209
|
+
if (afterLastSlash && afterLastSlash.includes('.')) {
|
|
210
|
+
return true
|
|
211
|
+
}
|
|
212
|
+
return false
|
|
227
213
|
}
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
214
|
+
const isQueryPath = path.includes('?')
|
|
215
|
+
const isAnchorPath = path.includes('#')
|
|
216
|
+
if (
|
|
217
|
+
!isQueryPath &&
|
|
218
|
+
!isAnchorPath &&
|
|
219
|
+
!isFilePath() &&
|
|
220
|
+
path !== '/' &&
|
|
221
|
+
!path.endsWith('/') &&
|
|
222
|
+
!path.startsWith('/preview')
|
|
223
|
+
) {
|
|
224
|
+
// add a trailing slash if there isn't one
|
|
225
|
+
filteredPath += '/'
|
|
226
|
+
} else if (isQueryPath) {
|
|
227
|
+
if (!path.includes('/?')) {
|
|
228
|
+
// also add a trailing slash to paths with query params
|
|
229
|
+
const urlParts = filteredPath.split('?')
|
|
230
|
+
const pathWithSlash = `${urlParts[0]}/`
|
|
231
|
+
const queryParams = urlParts[1]
|
|
232
|
+
filteredPath = pathWithSlash + '?' + queryParams
|
|
233
|
+
}
|
|
234
|
+
} else if (isAnchorPath) {
|
|
235
|
+
if (!path.includes('/#')) {
|
|
236
|
+
// also add a trailing slash to paths with anchors
|
|
237
|
+
const urlParts = filteredPath.split('#')
|
|
238
|
+
const pathWithSlash = `${urlParts[0]}/`
|
|
239
|
+
const anchor = urlParts[1]
|
|
240
|
+
filteredPath = pathWithSlash + '#' + anchor
|
|
241
|
+
}
|
|
235
242
|
}
|
|
236
243
|
}
|
|
244
|
+
return filteredPath
|
|
237
245
|
}
|
|
238
|
-
return
|
|
246
|
+
return path
|
|
239
247
|
}
|
|
240
248
|
}
|
|
241
249
|
})
|
|
@@ -13,9 +13,9 @@ const variantMap = {
|
|
|
13
13
|
type VariantMapKey = keyof typeof variantMap
|
|
14
14
|
|
|
15
15
|
const sizeMap = {
|
|
16
|
-
sm: 'text-
|
|
17
|
-
md: 'text-
|
|
18
|
-
lg: 'text-
|
|
16
|
+
sm: 'text-subtitle border-t-2 py-1 px-2.5',
|
|
17
|
+
md: 'text-subtitle lg:text-base border-t py-1.5 px-3.5',
|
|
18
|
+
lg: 'text-subtitle lg:text-lg border-t py-1.5 px-5'
|
|
19
19
|
} as const
|
|
20
20
|
type SizeMapKey = keyof typeof sizeMap
|
|
21
21
|
|
|
@@ -69,7 +69,7 @@ const theText = computed(() => {
|
|
|
69
69
|
<template>
|
|
70
70
|
<p
|
|
71
71
|
:class="`${variantMap[metadataAttrs.variant || props.variant]} ${sizeMap[props.size]}`"
|
|
72
|
-
class="ThemeVariantLight text-contrast-none inline-block text-white font-bold
|
|
72
|
+
class="ThemeVariantLight text-contrast-none inline-block text-white !font-bold rounded-full leading-tight m-0 uppercase print:border-none print:px-0"
|
|
73
73
|
>
|
|
74
74
|
{{ theText }}
|
|
75
75
|
<span class="sr-only">.</span>
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
<div class="BaseRadioGroup">
|
|
3
3
|
<label
|
|
4
4
|
v-if="heading"
|
|
5
|
-
class="text-lg font-
|
|
5
|
+
class="font-display text-lg font-bold text-gray-900"
|
|
6
6
|
>{{ heading }}</label
|
|
7
7
|
>
|
|
8
8
|
<p
|
|
9
9
|
v-if="subHeading"
|
|
10
|
-
class="text-
|
|
10
|
+
class="text-body-md pt-4 pb-2 pr-4"
|
|
11
11
|
>
|
|
12
12
|
{{ subHeading }}
|
|
13
13
|
</p>
|
|
@@ -39,18 +39,17 @@
|
|
|
39
39
|
/>
|
|
40
40
|
<label
|
|
41
41
|
:for="`${group}_${option.id}`"
|
|
42
|
-
class="ml-3 block text-md text-gray-
|
|
42
|
+
class="ml-3 block text-md text-gray-mid-dark"
|
|
43
43
|
>
|
|
44
44
|
<span
|
|
45
45
|
v-if="option.title"
|
|
46
|
-
:class="option.text ? 'font-
|
|
46
|
+
:class="option.text ? 'font-medium' : ''"
|
|
47
47
|
>{{ option.title }}</span
|
|
48
48
|
>
|
|
49
49
|
<span v-if="option.text"> - </span>
|
|
50
50
|
<span
|
|
51
51
|
v-if="option.text"
|
|
52
52
|
:id="`${group}_${option.id}_description`"
|
|
53
|
-
class="font-light"
|
|
54
53
|
>{{ option.text }}</span
|
|
55
54
|
>
|
|
56
55
|
</label>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
3
|
class="shadow-jpl relative h-full bg-white"
|
|
4
|
-
:class="{ 'flex items-
|
|
4
|
+
:class="{ 'flex items-start min-h-32': !image }"
|
|
5
5
|
>
|
|
6
6
|
<div
|
|
7
7
|
v-if="image"
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
/>
|
|
25
25
|
</BaseImagePlaceholder>
|
|
26
26
|
</div>
|
|
27
|
-
<div class="px-6 py-6 ThemeVariantLight">
|
|
27
|
+
<div class="px-6 py-6 w-full ThemeVariantLight">
|
|
28
28
|
<template v-if="label">
|
|
29
29
|
<div class="text-primary text-subtitle internal:text-black">
|
|
30
30
|
{{ label }}
|
|
@@ -76,7 +76,7 @@ const theme = themeMaterial.withParams({
|
|
|
76
76
|
})
|
|
77
77
|
|
|
78
78
|
const headerClass = [
|
|
79
|
-
'min-w-[6rem] bg-jpl-blue-darker edu:bg-jpl-violet-darker
|
|
79
|
+
'min-w-[6rem] bg-jpl-blue-darker edu:bg-jpl-violet-darker font-display text-white text-sm border-gray-light-mid lg:p-5 p-3 border-b text-left'
|
|
80
80
|
]
|
|
81
81
|
const defaultcolDef = {
|
|
82
82
|
flex: 1,
|
|
@@ -245,7 +245,7 @@ const onFilterTextBoxChanged = () => {
|
|
|
245
245
|
>
|
|
246
246
|
</p>
|
|
247
247
|
</div>
|
|
248
|
-
<h2 class="text-lg
|
|
248
|
+
<h2 class="text-lg mb-3">Test Limits</h2>
|
|
249
249
|
<CsrTestLimitsTable :data="modalData.ExportPackageRates" />
|
|
250
250
|
</div>
|
|
251
251
|
</BaseModalDialog>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
-
import {
|
|
2
|
+
import { computed, onMounted } from 'vue'
|
|
3
3
|
import BaseLink from './../BaseLink/BaseLink.vue'
|
|
4
4
|
|
|
5
5
|
interface CsrAttachmentProps {
|
|
@@ -15,14 +15,26 @@ interface CsrAttachmentProps {
|
|
|
15
15
|
const props = withDefaults(defineProps<CsrAttachmentProps>(), {
|
|
16
16
|
params: undefined
|
|
17
17
|
})
|
|
18
|
-
|
|
18
|
+
|
|
19
|
+
const encodedAttachmentUrl = computed(() => {
|
|
20
|
+
let url = ''
|
|
21
|
+
if (props.params.data?.Attachment && props.params.attachmentPrefix) {
|
|
22
|
+
url = props.params.attachmentPrefix + props.params.data.Attachment
|
|
23
|
+
}
|
|
24
|
+
return encodeURI(url)
|
|
25
|
+
})
|
|
26
|
+
|
|
27
|
+
onMounted(() => {
|
|
28
|
+
console.log(encodedAttachmentUrl.value)
|
|
29
|
+
})
|
|
19
30
|
</script>
|
|
20
31
|
<template>
|
|
21
32
|
<BaseLink
|
|
22
|
-
v-if="params?.data?.Attachment"
|
|
23
|
-
:href="
|
|
33
|
+
v-if="props.params?.data?.Attachment"
|
|
34
|
+
:href="encodedAttachmentUrl"
|
|
24
35
|
variant="default"
|
|
25
36
|
target="_blank"
|
|
37
|
+
:add-slash="false"
|
|
26
38
|
>Download</BaseLink
|
|
27
39
|
>
|
|
28
40
|
</template>
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
|
-
class="bg-gray-light edu:bg-stars edu:bg-primary md:mx-0 sm:py-8 md:py-10 md:px-0 sm:mx-20 px-6 py-6 text-center"
|
|
3
|
+
class="bg-gray-light edu:bg-stars edu:bg-primary-dark md:mx-0 sm:py-8 md:py-10 md:px-0 sm:mx-20 px-6 py-6 text-center"
|
|
4
4
|
>
|
|
5
5
|
<div class="md:mx-16 xl:mx-24">
|
|
6
|
-
<p class="text-h6 edu:text-white
|
|
6
|
+
<p class="text-h6 edu:text-white">{{ data.heading }}</p>
|
|
7
7
|
</div>
|
|
8
8
|
<BaseButton
|
|
9
9
|
v-if="data.page"
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
<div class="absolute inset-0">
|
|
25
25
|
<div class="absolute bottom-0 right-0 z-10 flex">
|
|
26
26
|
<BaseButton
|
|
27
|
-
class="swiper-prev xl
|
|
27
|
+
class="swiper-prev !text-lg xl:!text-xl border-collapse"
|
|
28
28
|
aria-label="Previous slide"
|
|
29
29
|
>
|
|
30
30
|
<template #icon>
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
</template>
|
|
33
33
|
</BaseButton>
|
|
34
34
|
<BaseButton
|
|
35
|
-
class="swiper-next xl
|
|
35
|
+
class="swiper-next !text-lg xl:!text-xl border-collapse"
|
|
36
36
|
aria-label="Next slide"
|
|
37
37
|
>
|
|
38
38
|
<template #icon>
|
|
@@ -41,7 +41,8 @@ export const BaseStory = {
|
|
|
41
41
|
})
|
|
42
42
|
],
|
|
43
43
|
args: {
|
|
44
|
-
...BlockLinkCardData
|
|
44
|
+
...BlockLinkCardData,
|
|
45
|
+
size: 'md'
|
|
45
46
|
}
|
|
46
47
|
}
|
|
47
48
|
|
|
@@ -343,6 +344,7 @@ export const EduNewsItem = {
|
|
|
343
344
|
}
|
|
344
345
|
|
|
345
346
|
export const ExternalLink = {
|
|
347
|
+
globals: { theme: 'defaultTheme' },
|
|
346
348
|
decorators: [
|
|
347
349
|
() => ({
|
|
348
350
|
template: `<div id="storyRoot" class="relative grid grid-cols-2 gap-3"><story/></div>`
|