@kiva/kv-components 3.107.0 → 3.107.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/components/.storybook/main.js +85 -0
  3. package/dist/components/.storybook/package.json +3 -0
  4. package/dist/components/.storybook/preview.js +61 -0
  5. package/dist/components/.storybook/tailwind.css +5 -0
  6. package/dist/components/KvAccordionItem.vue +130 -0
  7. package/dist/components/KvActivityRow.vue +33 -0
  8. package/dist/components/KvBorrowerImage.vue +179 -0
  9. package/dist/components/KvButton.vue +287 -0
  10. package/dist/components/KvCarousel.vue +297 -0
  11. package/dist/components/KvCartModal.vue +365 -0
  12. package/dist/components/KvCheckbox.vue +203 -0
  13. package/dist/components/KvChip.vue +54 -0
  14. package/dist/components/KvClassicLoanCard.vue +527 -0
  15. package/dist/components/KvCommentsAdd.vue +135 -0
  16. package/dist/components/KvCommentsContainer.vue +84 -0
  17. package/dist/components/KvCommentsHeartButton.vue +70 -0
  18. package/dist/components/KvCommentsList.vue +68 -0
  19. package/dist/components/KvCommentsListItem.vue +241 -0
  20. package/dist/components/KvCommentsReplyButton.vue +52 -0
  21. package/dist/components/KvContentfulImg.vue +273 -0
  22. package/dist/components/KvCountdownTimer.vue +59 -0
  23. package/dist/components/KvExpandable.vue +84 -0
  24. package/dist/components/KvExpandableQuestion.vue +120 -0
  25. package/dist/components/KvFlag.vue +120 -0
  26. package/dist/components/KvGrid.vue +28 -0
  27. package/dist/components/KvImpactDashboardHeader.vue +40 -0
  28. package/dist/components/KvInlineActivityCard.vue +55 -0
  29. package/dist/components/KvInlineActivityFeed.vue +38 -0
  30. package/dist/components/KvIntroductionLoanCard.vue +446 -0
  31. package/dist/components/KvLendAmountButton.vue +65 -0
  32. package/dist/components/KvLendCta.vue +451 -0
  33. package/dist/components/KvLightbox.vue +334 -0
  34. package/dist/components/KvLineGraph.vue +128 -0
  35. package/dist/components/KvLoadingPlaceholder.vue +38 -0
  36. package/dist/components/KvLoadingSpinner.vue +81 -0
  37. package/dist/components/KvLoanActivities.vue +268 -0
  38. package/dist/components/KvLoanBookmark.vue +39 -0
  39. package/dist/components/KvLoanCallouts.vue +53 -0
  40. package/dist/components/KvLoanProgressGroup.vue +76 -0
  41. package/dist/components/KvLoanTag.vue +88 -0
  42. package/dist/components/KvLoanTeamPick.vue +44 -0
  43. package/dist/components/KvLoanUse.vue +92 -0
  44. package/dist/components/KvMap.vue +599 -0
  45. package/dist/components/KvMaterialIcon.vue +47 -0
  46. package/dist/components/KvPageContainer.vue +15 -0
  47. package/dist/components/KvPagination.vue +198 -0
  48. package/dist/components/KvPieChart.vue +257 -0
  49. package/dist/components/KvPopper.vue +178 -0
  50. package/dist/components/KvProgressBar.vue +149 -0
  51. package/dist/components/KvRadio.vue +198 -0
  52. package/dist/components/KvSelect.vue +114 -0
  53. package/dist/components/KvSideSheet.vue +134 -0
  54. package/dist/components/KvSwitch.vue +143 -0
  55. package/dist/components/KvTab.vue +90 -0
  56. package/dist/components/KvTabPanel.vue +64 -0
  57. package/dist/components/KvTabs.vue +182 -0
  58. package/dist/components/KvTextInput.vue +247 -0
  59. package/dist/components/KvTextLink.vue +138 -0
  60. package/dist/components/KvThemeProvider.vue +122 -0
  61. package/dist/components/KvToast.vue +221 -0
  62. package/dist/components/KvTooltip.vue +168 -0
  63. package/dist/components/KvTreeMapChart.vue +229 -0
  64. package/dist/components/KvUserAvatar.vue +132 -0
  65. package/dist/components/KvVerticalCarousel.vue +156 -0
  66. package/dist/components/KvVotingCard.vue +160 -0
  67. package/dist/components/KvVotingCardV2.vue +154 -0
  68. package/dist/components/KvWideLoanCard.vue +432 -0
  69. package/dist/components/stories/Forms.stories.js +62 -0
  70. package/dist/components/stories/KvAccordionItem.stories.js +24 -0
  71. package/dist/components/stories/KvActivityRow.stories.js +25 -0
  72. package/dist/components/stories/KvBorrowerImage.stories.js +68 -0
  73. package/dist/components/stories/KvButton.stories.js +144 -0
  74. package/dist/components/stories/KvCarousel.stories.js +426 -0
  75. package/dist/components/stories/KvCartModal.stories.js +54 -0
  76. package/dist/components/stories/KvCheckbox.stories.js +163 -0
  77. package/dist/components/stories/KvChip.stories.js +43 -0
  78. package/dist/components/stories/KvClassicLoanCard.stories.js +480 -0
  79. package/dist/components/stories/KvCommentsAdd.stories.js +32 -0
  80. package/dist/components/stories/KvCommentsContainer.stories.js +42 -0
  81. package/dist/components/stories/KvCommentsHeartButton.stories.js +25 -0
  82. package/dist/components/stories/KvCommentsList.stories.js +39 -0
  83. package/dist/components/stories/KvCommentsListItem.stories.js +45 -0
  84. package/dist/components/stories/KvCommentsReplyButton.stories.js +21 -0
  85. package/dist/components/stories/KvContentfulImg.stories.js +196 -0
  86. package/dist/components/stories/KvCountdownTimer.stories.js +30 -0
  87. package/dist/components/stories/KvExpandableQuestion.stories.js +129 -0
  88. package/dist/components/stories/KvFlag.stories.js +36 -0
  89. package/dist/components/stories/KvGrid.stories.js +97 -0
  90. package/dist/components/stories/KvImpactDashboardHeader.stories.js +22 -0
  91. package/dist/components/stories/KvInlineActivityCard.stories.js +69 -0
  92. package/dist/components/stories/KvInlineActivityFeed.stories.js +76 -0
  93. package/dist/components/stories/KvIntroductionLoanCard.stories.js +208 -0
  94. package/dist/components/stories/KvLendAmountButton.stories.js +31 -0
  95. package/dist/components/stories/KvLendCta.stories.js +177 -0
  96. package/dist/components/stories/KvLightbox.stories.js +304 -0
  97. package/dist/components/stories/KvLineGraph.stories.js +52 -0
  98. package/dist/components/stories/KvLoadingPlaceholder.stories.js +17 -0
  99. package/dist/components/stories/KvLoadingSpinner.stories.js +52 -0
  100. package/dist/components/stories/KvLoanActivities.stories.js +104 -0
  101. package/dist/components/stories/KvLoanBookmark.stories.js +22 -0
  102. package/dist/components/stories/KvLoanCallouts.stories.js +22 -0
  103. package/dist/components/stories/KvLoanProgressGroup.stories.js +29 -0
  104. package/dist/components/stories/KvLoanTag.stories.js +61 -0
  105. package/dist/components/stories/KvLoanTeamPick.stories.js +20 -0
  106. package/dist/components/stories/KvLoanUse.stories.js +60 -0
  107. package/dist/components/stories/KvMap.stories.js +121 -0
  108. package/dist/components/stories/KvMaterialIcon.stories.js +201 -0
  109. package/dist/components/stories/KvPageContainer.stories.js +50 -0
  110. package/dist/components/stories/KvPagination.stories.js +70 -0
  111. package/dist/components/stories/KvPieChart.stories.js +47 -0
  112. package/dist/components/stories/KvProgressBar.stories.js +53 -0
  113. package/dist/components/stories/KvRadio.stories.js +140 -0
  114. package/dist/components/stories/KvSelect.stories.js +125 -0
  115. package/dist/components/stories/KvSideSheet.stories.js +50 -0
  116. package/dist/components/stories/KvSwitch.stories.js +66 -0
  117. package/dist/components/stories/KvTabs.stories.js +106 -0
  118. package/dist/components/stories/KvTextInput.stories.js +194 -0
  119. package/dist/components/stories/KvTextLink.stories.js +55 -0
  120. package/dist/components/stories/KvThemeProvider.stories.js +178 -0
  121. package/dist/components/stories/KvToast.stories.js +117 -0
  122. package/dist/components/stories/KvTooltip.stories.js +26 -0
  123. package/dist/components/stories/KvTreeMapChart.stories.js +42 -0
  124. package/dist/components/stories/KvUserAvatar.stories.js +47 -0
  125. package/dist/components/stories/KvVerticalCarousel.stories.js +168 -0
  126. package/dist/components/stories/KvVotingCard.stories.js +33 -0
  127. package/dist/components/stories/KvVotingCardV2.stories.js +89 -0
  128. package/dist/components/stories/KvWideLoanCard.stories.js +292 -0
  129. package/dist/components/stories/StyleguidePrimitives.stories.js +499 -0
  130. package/dist/components/stories/StyleguideProse.stories.js +215 -0
  131. package/dist/data/countries-borders.json +1 -0
  132. package/dist/data/ne_110m_admin_0_countries.json +1 -0
  133. package/dist/utils/Alea.js +9 -0
  134. package/dist/utils/attrs.js +7 -0
  135. package/dist/utils/carousels.js +8 -0
  136. package/dist/{attrs.js → utils/chunk-3HK4G4NT.js} +1 -0
  137. package/dist/{loanCard.js → utils/chunk-55HF2ORX.js} +1 -0
  138. package/dist/{expander.js → utils/chunk-AY3PR5S4.js} +3 -2
  139. package/dist/{carousels.js → utils/chunk-AZPWOFD5.js} +1 -0
  140. package/dist/{printing.js → utils/chunk-B5J5WLAH.js} +1 -0
  141. package/dist/{Alea.js → utils/chunk-GPSH6OPA.js} +2 -1
  142. package/dist/{scrollLock.js → utils/chunk-HIY5IW65.js} +2 -1
  143. package/dist/{treemap.js → utils/chunk-MSMZIN54.js} +1 -0
  144. package/dist/{imageUtils.js → utils/chunk-OXJCCNNW.js} +1 -0
  145. package/dist/{touchEvents.js → utils/chunk-S3MABILA.js} +3 -2
  146. package/dist/{mapUtils.js → utils/chunk-VIGEMAKO.js} +5 -4
  147. package/dist/utils/chunk-YCNMJ4YV.js +37 -0
  148. package/dist/{loanUtils.js → utils/chunk-YFEC5ODJ.js} +7 -6
  149. package/dist/utils/expander.js +9 -0
  150. package/dist/utils/imageUtils.js +9 -0
  151. package/dist/utils/index.cjs +1118 -0
  152. package/dist/utils/index.js +166 -0
  153. package/dist/utils/loanCard.js +9 -0
  154. package/dist/utils/loanUtils.js +23 -0
  155. package/dist/utils/mapUtils.js +15 -0
  156. package/dist/utils/printing.js +9 -0
  157. package/dist/utils/scrollLock.js +13 -0
  158. package/dist/{throttle.js → utils/throttle.js} +1 -0
  159. package/dist/utils/touchEvents.js +11 -0
  160. package/dist/utils/treemap.js +7 -0
  161. package/package.json +11 -7
  162. package/utils/index.js +14 -0
  163. package/index.js +0 -3
  164. /package/dist/{Alea.cjs → utils/Alea.cjs} +0 -0
  165. /package/dist/{attrs.cjs → utils/attrs.cjs} +0 -0
  166. /package/dist/{carousels.cjs → utils/carousels.cjs} +0 -0
  167. /package/dist/{chunk-HV3AUBFT.js → utils/chunk-HV3AUBFT.js} +0 -0
  168. /package/dist/{expander.cjs → utils/expander.cjs} +0 -0
  169. /package/dist/{imageUtils.cjs → utils/imageUtils.cjs} +0 -0
  170. /package/dist/{loanCard.cjs → utils/loanCard.cjs} +0 -0
  171. /package/dist/{loanUtils.cjs → utils/loanUtils.cjs} +0 -0
  172. /package/dist/{mapUtils.cjs → utils/mapUtils.cjs} +0 -0
  173. /package/dist/{printing.cjs → utils/printing.cjs} +0 -0
  174. /package/dist/{scrollLock.cjs → utils/scrollLock.cjs} +0 -0
  175. /package/dist/{throttle.cjs → utils/throttle.cjs} +0 -0
  176. /package/dist/{touchEvents.cjs → utils/touchEvents.cjs} +0 -0
  177. /package/dist/{treemap.cjs → utils/treemap.cjs} +0 -0
@@ -0,0 +1,268 @@
1
+ <template>
2
+ <div
3
+ v-if="combinedActivities.length > 0"
4
+ class="loan-activity"
5
+ >
6
+ <div class="tw-flex tw-justify-center lg:tw-px-0">
7
+ <KvActivityRow
8
+ :activity="singleActivity"
9
+ />
10
+ </div>
11
+ <div class="tw-flex tw-justify-center tw-mt-1 tw-text-small">
12
+ <span v-if="lendersNumber && amountLent">
13
+ {{ lendersNumber }} lenders lent {{ amountLent }}. &nbsp;
14
+ </span>
15
+ <button
16
+ class="tw-text-action hover:tw-underline"
17
+ @click="showActivityModal"
18
+ >
19
+ See all activity
20
+ </button>
21
+ </div>
22
+ <KvLightbox
23
+ title="Activity Feed Modal"
24
+ :visible="lightboxOpen"
25
+ @lightbox-closed="closeLightbox"
26
+ >
27
+ <template #header>
28
+ <h2 class="tw-text-h3 tw-flex-1 data-hj-suppress">
29
+ {{ modalTitle }}
30
+ </h2>
31
+ </template>
32
+ <div class="tw-overflow-x-hidden tw-px-2 tw-pb-1">
33
+ <div
34
+ v-for="activity in combinedActivities"
35
+ :key="activity.key"
36
+ class="md:tw-px-8 lg:tw-px-14 tw-mt-4"
37
+ >
38
+ <h4 class="tw-text-center tw-text-h4">
39
+ {{ formattedDate(activity.key) }}
40
+ </h4>
41
+ <div class="tw-flex tw-flex-col tw-gap-y-1">
42
+ <KvActivityRow
43
+ v-for="(act, index) in activity.data"
44
+ :key="index"
45
+ :activity="act"
46
+ />
47
+ </div>
48
+ </div>
49
+ </div>
50
+ <div>
51
+ <p
52
+ v-if="errorMsg"
53
+ class="tw-mt-1 tw-text-small tw-text-danger"
54
+ >
55
+ {{ errorMsg }}
56
+ </p>
57
+ <div class="tw-flex tw-justify-end tw-mt-4 tw-pb-2.5 md:tw-pb-4">
58
+ <KvLendCta
59
+ :loan="loan"
60
+ :is-loading="false"
61
+ :kv-track-function="kvTrackFunction"
62
+ :get-cookie="getCookie"
63
+ :set-cookie="setCookie"
64
+ :user-balance="userBalance"
65
+ :basket-items="basketItems"
66
+ :route="route"
67
+ :is-adding="isAdding"
68
+ :enable-huge-amount="enableHugeAmount"
69
+ :is-visitor="isVisitor"
70
+ :enable-five-dollars-notes="enableFiveDollarsNotes"
71
+ @add-to-basket="$emit('add-to-basket', $event)"
72
+ />
73
+ </div>
74
+ </div>
75
+ </KvLightbox>
76
+ </div>
77
+ </template>
78
+
79
+ <script>
80
+ import { computed, ref, toRefs } from 'vue-demi';
81
+ import numeral from 'numeral';
82
+ import { format } from 'date-fns';
83
+ import KvActivityRow from './KvActivityRow.vue';
84
+ import KvLightbox from './KvLightbox.vue';
85
+ import KvLendCta from './KvLendCta.vue';
86
+
87
+ export default {
88
+ name: 'KvLoanActivities',
89
+ components: {
90
+ KvActivityRow,
91
+ KvLightbox,
92
+ KvLendCta,
93
+ },
94
+ props: {
95
+ /**
96
+ * loan object coming from parent component
97
+ */
98
+ loan: {
99
+ type: Object,
100
+ default: () => ({}),
101
+ },
102
+ /**
103
+ * loan combined activities coming from parent component
104
+ */
105
+ combinedActivities: {
106
+ type: Array,
107
+ default: () => ([]),
108
+ },
109
+ /**
110
+ * isAdding flag coming from parent add to basket method
111
+ */
112
+ isAdding: {
113
+ type: Boolean,
114
+ default: false,
115
+ },
116
+ /**
117
+ * basketItems array coming from parent component
118
+ */
119
+ basketItems: {
120
+ type: Array,
121
+ default: () => ([]),
122
+ },
123
+ /**
124
+ * userBalance string coming from parent component
125
+ */
126
+ userBalance: {
127
+ type: String,
128
+ default: undefined,
129
+ },
130
+ /**
131
+ * errorMsg string coming from parent add to basket method
132
+ */
133
+ errorMsg: {
134
+ type: String,
135
+ default: undefined,
136
+ },
137
+ /**
138
+ * kvTrackFunction function to track events from LendCta component
139
+ */
140
+ kvTrackFunction: {
141
+ type: Function,
142
+ required: true,
143
+ },
144
+ /**
145
+ * getCookie function for LendCta component
146
+ */
147
+ getCookie: {
148
+ type: Function,
149
+ default: undefined,
150
+ },
151
+ /**
152
+ * setCookie function for LendCta component
153
+ */
154
+ setCookie: {
155
+ type: Function,
156
+ default: undefined,
157
+ },
158
+ /**
159
+ * route object for LendCta component
160
+ */
161
+ route: {
162
+ type: Object,
163
+ default: undefined,
164
+ },
165
+ enableFiveDollarsNotes: {
166
+ type: Boolean,
167
+ default: false,
168
+ },
169
+ enableHugeAmount: {
170
+ type: Boolean,
171
+ default: false,
172
+ },
173
+ isVisitor: {
174
+ type: Boolean,
175
+ default: true,
176
+ },
177
+ },
178
+ emits: [
179
+ 'add-to-basket',
180
+ ],
181
+ setup(props) {
182
+ const {
183
+ loan,
184
+ combinedActivities,
185
+ kvTrackFunction,
186
+ } = toRefs(props);
187
+
188
+ const lightboxOpen = ref(false);
189
+
190
+ const modalTitle = computed(() => `Activity for ${loan.value?.name}`);
191
+
192
+ const lendersNumber = computed(() => loan.value?.lenders?.totalCount ?? 0);
193
+
194
+ const amountLent = computed(() => {
195
+ const amount = loan.value?.loanFundraisingInfo?.fundedAmount ?? 0;
196
+ return numeral(parseFloat(amount)).format('$0,0');
197
+ });
198
+
199
+ const singleActivity = computed(() => {
200
+ const singleAct = combinedActivities.value.find((activity) => {
201
+ return activity.data.some((element) => {
202
+ return element.type === 'LendingAction';
203
+ });
204
+ });
205
+
206
+ return singleAct?.data[0] ?? {};
207
+ });
208
+
209
+ const formattedDate = (date) => {
210
+ const dateObj = new Date(date);
211
+ return format(dateObj, 'MMM d, yyyy');
212
+ };
213
+ const showActivityModal = () => {
214
+ kvTrackFunction.value('loan-card', 'click', 'see-all-activity');
215
+ lightboxOpen.value = true;
216
+ };
217
+ const closeLightbox = () => {
218
+ lightboxOpen.value = false;
219
+ };
220
+
221
+ return {
222
+ lightboxOpen,
223
+ modalTitle,
224
+ formattedDate,
225
+ showActivityModal,
226
+ closeLightbox,
227
+ singleActivity,
228
+ lendersNumber,
229
+ amountLent,
230
+ };
231
+ },
232
+ };
233
+ </script>
234
+
235
+ <style scoped lang="postcss">
236
+ .loan-activity >>> #kvLightboxBody {
237
+ @apply tw-flex tw-flex-col tw-px-0 tw-pb-0;
238
+ }
239
+
240
+ .loan-activity >>> div > div > div > div > div:first-child {
241
+ box-shadow: var(--kiva-box-shadow);
242
+ }
243
+
244
+ .loan-activity >>> div > div > div > div > div:first-child > div,
245
+ .loan-activity >>> #kvLightboxBody div {
246
+ box-shadow: none;
247
+ }
248
+
249
+ .loan-activity >>> #kvLightboxBody > div:first-child {
250
+ @apply tw-px-4;
251
+ }
252
+
253
+ .loan-activity >>> [role=dialog] {
254
+ min-width: 840px;
255
+ max-width: 840px !important;
256
+
257
+ @media (max-width: calc(840px + 2rem)) {
258
+ min-width: 100%;
259
+ max-width: 100% !important;
260
+ }
261
+ }
262
+
263
+ .loan-activity >>> #kvLightboxBody > div:nth-child(2) {
264
+ @apply tw-px-4;
265
+
266
+ box-shadow: var(--kiva-negative-box-shadow);
267
+ }
268
+ </style>
@@ -0,0 +1,39 @@
1
+ <template>
2
+ <div>
3
+ <button
4
+ style="border-radius: 8px; padding: 3px;"
5
+ class="tw-cursor-pointer tw-font-medium tw-bg-white tw-flex tw-justify-center"
6
+ @click="$emit('toggle-bookmark')"
7
+ >
8
+ <kv-material-icon
9
+ class="tw-w-3"
10
+ :class="{ 'tw-text-black': !isBookmarked, 'tw-text-marigold': isBookmarked }"
11
+ :icon="`${!isBookmarked ? mdiBookmarkOutline : mdiBookmark}`"
12
+ />
13
+ </button>
14
+ </div>
15
+ </template>
16
+
17
+ <script>
18
+ import { mdiBookmarkOutline, mdiBookmark } from '@mdi/js';
19
+ import KvMaterialIcon from './KvMaterialIcon.vue';
20
+
21
+ export default {
22
+ name: 'KvLoanBookmark',
23
+ components: {
24
+ KvMaterialIcon,
25
+ },
26
+ props: {
27
+ isBookmarked: {
28
+ type: Boolean,
29
+ default: false,
30
+ },
31
+ },
32
+ data() {
33
+ return {
34
+ mdiBookmarkOutline,
35
+ mdiBookmark,
36
+ };
37
+ },
38
+ };
39
+ </script>
@@ -0,0 +1,53 @@
1
+ <template>
2
+ <div
3
+ class="tw-overflow-hidden"
4
+ style="width: inherit;"
5
+ >
6
+ <div
7
+ class="
8
+ tw-flex
9
+ tw-whitespace-nowrap
10
+ tw-w-full
11
+ tw-h-4
12
+ "
13
+ >
14
+ <span
15
+ v-for="tag in callouts"
16
+ :key="tag.label"
17
+ :title="tag.label"
18
+ class="
19
+ loan-callout
20
+ tw-text-ellipsis
21
+ tw-overflow-hidden
22
+ tw-rounded-full
23
+ tw-font-medium
24
+ tw-py-0.5
25
+ tw-px-1
26
+ tw-mr-0.5
27
+ tw-mb-0.5
28
+ tw-text-small
29
+ "
30
+ >
31
+ {{ tag.label }}
32
+ </span>
33
+ </div>
34
+ </div>
35
+ </template>
36
+
37
+ <script>
38
+ export default {
39
+ name: 'KvLoanCallouts',
40
+ props: {
41
+ callouts: {
42
+ type: Array,
43
+ required: true,
44
+ },
45
+ },
46
+ };
47
+ </script>
48
+
49
+ <style scoped>
50
+ .loan-callout {
51
+ background: #f1f1f1;
52
+ }
53
+ </style>
@@ -0,0 +1,76 @@
1
+ <template>
2
+ <figure>
3
+ <div :class="{'tw-flex tw-justify-between': amountGoal}">
4
+ <h4
5
+ class="tw-lowercase tw-mb-0.5"
6
+ :class="{ 'progress-group-amount-low': amountLow}"
7
+ >
8
+ {{ fundingText }}
9
+ </h4>
10
+ <h4
11
+ v-if="amountGoal"
12
+ class="tw-lowercase tw-mb-0.5"
13
+ >
14
+ {{ goalText }}
15
+ </h4>
16
+ </div>
17
+ <kv-progress-bar
18
+ aria-label="Percent the loan has funded"
19
+ :value="progressPercent * 100"
20
+ />
21
+ </figure>
22
+ </template>
23
+
24
+ <script>
25
+ import numeral from 'numeral';
26
+ import KvProgressBar from './KvProgressBar.vue';
27
+
28
+ export default {
29
+ name: 'KvLoanProgressGroup',
30
+ components: {
31
+ KvProgressBar,
32
+ },
33
+ props: {
34
+ moneyLeft: {
35
+ type: String,
36
+ default: '0.00',
37
+ },
38
+ progressPercent: {
39
+ type: Number,
40
+ default: 0,
41
+ },
42
+ amountGoal: {
43
+ type: String,
44
+ default: '',
45
+ },
46
+ },
47
+ computed: {
48
+ numeralLeft() {
49
+ return numeral(this.moneyLeft);
50
+ },
51
+ amountLow() {
52
+ return this.numeralLeft.value() < 100;
53
+ },
54
+ fundingText() {
55
+ if (!this.numeralLeft.value()) return 'funded!';
56
+ const formattedMoneyLeft = this.numeralLeft.format('$0,0[.]00');
57
+ const exclamationMark = this.amountLow ? '!' : '';
58
+ return `${formattedMoneyLeft} to go${exclamationMark}`;
59
+ },
60
+ numeralGoal() {
61
+ return numeral(this.amountGoal);
62
+ },
63
+ goalText() {
64
+ if (!this.numeralGoal.value()) return '';
65
+ const formattedGoal = this.numeralGoal.format('$0,0[.]00');
66
+ return `${formattedGoal} goal`;
67
+ },
68
+ },
69
+ };
70
+ </script>
71
+
72
+ <style scoped>
73
+ .progress-group-amount-low {
74
+ color: #CE4A00;
75
+ }
76
+ </style>
@@ -0,0 +1,88 @@
1
+ <template>
2
+ <div
3
+ v-if="!!variation"
4
+ class="tw-text-small tw-font-medium tw-pt-0.5 tw-line-clamp-1"
5
+ :style="{ color: tagColor }"
6
+ >
7
+ {{ tagText }}
8
+ <kv-countdown-timer
9
+ v-if="variation === 'ending-soon'"
10
+ :ms-left="msLeft"
11
+ />
12
+ </div>
13
+ </template>
14
+
15
+ <script>
16
+ import { differenceInDays, parseISO } from 'date-fns';
17
+ import numeral from 'numeral';
18
+ import KvCountdownTimer from './KvCountdownTimer.vue';
19
+
20
+ const LSE_LOAN_KEY = 'N/A';
21
+
22
+ export default {
23
+ name: 'KvLoanTag',
24
+ components: {
25
+ KvCountdownTimer,
26
+ },
27
+ props: {
28
+ loan: {
29
+ type: Object,
30
+ required: true,
31
+ },
32
+ useExpandedStyles: {
33
+ type: Boolean,
34
+ default: false,
35
+ },
36
+ },
37
+ data() {
38
+ return {
39
+ interval: null,
40
+ msLeft: parseISO(this.loan?.plannedExpirationDate).getTime() - new Date().getTime(),
41
+ };
42
+ },
43
+ computed: {
44
+ isLseLoan() {
45
+ return this.loan?.partnerName?.toUpperCase().includes(LSE_LOAN_KEY) ?? false;
46
+ },
47
+ amountLeft() {
48
+ const loanFundraisingInfo = this.loan?.loanFundraisingInfo ?? { fundedAmount: 0, reservedAmount: 0 };
49
+ const { fundedAmount, reservedAmount } = loanFundraisingInfo;
50
+ return numeral(this.loan?.loanAmount).subtract(fundedAmount).subtract(reservedAmount).value();
51
+ },
52
+ variation() {
53
+ if (this.loan?.matchingText) {
54
+ return 'matched-loan';
55
+ } if (this.isLseLoan) {
56
+ return 'lse-loan';
57
+ } if (differenceInDays(parseISO(this.loan?.plannedExpirationDate), Date.now()) <= 3) {
58
+ return 'ending-soon';
59
+ } if (this.amountLeft < 100 && this.amountLeft >= 0) {
60
+ return 'almost-funded';
61
+ }
62
+ return null;
63
+ },
64
+ tagText() {
65
+ switch (this.variation) {
66
+ case 'lse-loan': return `${this.useExpandedStyles ? '⚡ ' : ''}High community impact`;
67
+ case 'almost-funded': return `${this.useExpandedStyles ? '💸 ' : ''}Almost funded`;
68
+ // eslint-disable-next-line max-len
69
+ case 'matched-loan': return `${this.useExpandedStyles ? '🤝 ' : ''}${this.matchRatio + 1}x matching by ${this.loan?.matchingText}`;
70
+ default: return `${this.useExpandedStyles ? '⏰ ' : ''}Ending soon: `;
71
+ }
72
+ },
73
+ tagColor() {
74
+ if (this.useExpandedStyles) {
75
+ switch (this.variation) {
76
+ case 'almost-funded': return '#AF741C';
77
+ case 'ending-soon': return '#CE2626';
78
+ default: return '#2B7C5F';
79
+ }
80
+ }
81
+ return '#CE4A00';
82
+ },
83
+ matchRatio() {
84
+ return this.loan?.matchRatio;
85
+ },
86
+ },
87
+ };
88
+ </script>
@@ -0,0 +1,44 @@
1
+ <template>
2
+ <div
3
+ class="tw-bg-white tw-rounded tw-px-1 tw-right-6 tw-flex tw-items-center tw-gap-0.5 tw-py-0.5
4
+ tw-text-h5 tw-font-medium"
5
+ >
6
+ <svg
7
+ width="20"
8
+ height="20"
9
+ viewBox="0 0 20 20"
10
+ fill="none"
11
+ xmlns="http://www.w3.org/2000/svg"
12
+ xmlns:xlink="http://www.w3.org/1999/xlink"
13
+ >
14
+ <rect
15
+ width="20"
16
+ height="20"
17
+ fill="url(#pattern0)"
18
+ />
19
+ <defs>
20
+ <pattern
21
+ id="pattern0"
22
+ patternContentUnits="objectBoundingBox"
23
+ width="1"
24
+ height="1"
25
+ >
26
+ <use
27
+ xlink:href="#image0_3145_236"
28
+ transform="scale(0.00347222)"
29
+ />
30
+ </pattern>
31
+ <!-- eslint-disable -->
32
+ <image
33
+ id="image0_3145_236"
34
+ width="288"
35
+ height="288"
36
+ xlink:href="data:image/png;base64,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"
37
+ />
38
+ <!-- eslint-enable -->
39
+ </defs>
40
+ </svg>
41
+
42
+ Team pick
43
+ </div>
44
+ </template>