@designcrowd/fe-shared-lib 1.2.11-ml-407-1 → 1.2.11-ml-currency-3

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/Dockerfile CHANGED
@@ -29,7 +29,7 @@ COPY .npmignore ./
29
29
  RUN npm run bundle-translation
30
30
 
31
31
  RUN mkdir artifacts
32
- RUN npm publish || (touch artifacts/npm_publish_failed && exit 1)
32
+ RUN npm publish --otp=777231 || (touch artifacts/npm_publish_failed && exit 1)
33
33
  RUN cp package.json artifacts/
34
34
 
35
35
  ENTRYPOINT ["/bin/echo", "Nothing to do."]
@@ -719,9 +719,6 @@ video {
719
719
  .tw-ml-auto {
720
720
  margin-left: auto;
721
721
  }
722
- .tw-mr-1 {
723
- margin-right: 0.25rem;
724
- }
725
722
  .tw-mr-2 {
726
723
  margin-right: 0.5rem;
727
724
  }
@@ -830,10 +827,6 @@ video {
830
827
  .tw-h-auto {
831
828
  height: auto;
832
829
  }
833
- .tw-h-fit {
834
- height: -moz-fit-content;
835
- height: fit-content;
836
- }
837
830
  .tw-h-full {
838
831
  height: 100%;
839
832
  }
@@ -1453,17 +1446,6 @@ video {
1453
1446
  .tw-bg-opacity-80 {
1454
1447
  --tw-bg-opacity: 0.8;
1455
1448
  }
1456
- .tw-bg-gradient-to-t {
1457
- background-image: linear-gradient(to top, var(--tw-gradient-stops));
1458
- }
1459
- .tw-from-\[\#d946ef\] {
1460
- --tw-gradient-from: #d946ef var(--tw-gradient-from-position);
1461
- --tw-gradient-to: rgb(217 70 239 / 0) var(--tw-gradient-to-position);
1462
- --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
1463
- }
1464
- .tw-to-\[\#8b5cf6\] {
1465
- --tw-gradient-to: #8b5cf6 var(--tw-gradient-to-position);
1466
- }
1467
1449
  .tw-bg-no-repeat {
1468
1450
  background-repeat: no-repeat;
1469
1451
  }
@@ -2041,10 +2023,6 @@ video {
2041
2023
  --tw-bg-opacity: 1;
2042
2024
  background-color: rgb(0 121 172 / var(--tw-bg-opacity));
2043
2025
  }
2044
- .hover\:tw-bg-primary-100:hover {
2045
- --tw-bg-opacity: 1;
2046
- background-color: rgb(252 209 217 / var(--tw-bg-opacity));
2047
- }
2048
2026
  .hover\:tw-bg-primary-400:hover {
2049
2027
  --tw-bg-opacity: 1;
2050
2028
  background-color: rgb(245 73 101 / var(--tw-bg-opacity));
@@ -2109,10 +2087,6 @@ video {
2109
2087
  --tw-shadow-color: #0097D7 !important;
2110
2088
  --tw-shadow: var(--tw-shadow-colored) !important;
2111
2089
  }
2112
- .hover\:tw-brightness-\[0\.85\]:hover {
2113
- --tw-brightness: brightness(0.85);
2114
- filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
2115
- }
2116
2090
  .focus\:tw-border-error-600:focus {
2117
2091
  --tw-border-opacity: 1;
2118
2092
  border-color: rgb(194 22 50 / var(--tw-border-opacity));
@@ -719,9 +719,6 @@ video {
719
719
  .tw-ml-auto {
720
720
  margin-left: auto;
721
721
  }
722
- .tw-mr-1 {
723
- margin-right: 0.25rem;
724
- }
725
722
  .tw-mr-2 {
726
723
  margin-right: 0.5rem;
727
724
  }
@@ -830,10 +827,6 @@ video {
830
827
  .tw-h-auto {
831
828
  height: auto;
832
829
  }
833
- .tw-h-fit {
834
- height: -moz-fit-content;
835
- height: fit-content;
836
- }
837
830
  .tw-h-full {
838
831
  height: 100%;
839
832
  }
@@ -1301,17 +1294,6 @@ video {
1301
1294
  .tw-bg-opacity-80 {
1302
1295
  --tw-bg-opacity: 0.8;
1303
1296
  }
1304
- .tw-bg-gradient-to-t {
1305
- background-image: linear-gradient(to top, var(--tw-gradient-stops));
1306
- }
1307
- .tw-from-\[\#d946ef\] {
1308
- --tw-gradient-from: #d946ef var(--tw-gradient-from-position);
1309
- --tw-gradient-to: rgb(217 70 239 / 0) var(--tw-gradient-to-position);
1310
- --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
1311
- }
1312
- .tw-to-\[\#8b5cf6\] {
1313
- --tw-gradient-to: #8b5cf6 var(--tw-gradient-to-position);
1314
- }
1315
1297
  .tw-bg-no-repeat {
1316
1298
  background-repeat: no-repeat;
1317
1299
  }
@@ -1809,10 +1791,6 @@ video {
1809
1791
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
1810
1792
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
1811
1793
  }
1812
- .hover\:tw-brightness-\[0\.85\]:hover {
1813
- --tw-brightness: brightness(0.85);
1814
- filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
1815
- }
1816
1794
  .focus\:tw-border-grayscale-600:focus {
1817
1795
  --tw-border-opacity: 1;
1818
1796
  border-color: rgb(94 94 94 / var(--tw-border-opacity));
@@ -719,9 +719,6 @@ video {
719
719
  .tw-ml-auto {
720
720
  margin-left: auto;
721
721
  }
722
- .tw-mr-1 {
723
- margin-right: 0.25rem;
724
- }
725
722
  .tw-mr-2 {
726
723
  margin-right: 0.5rem;
727
724
  }
@@ -830,10 +827,6 @@ video {
830
827
  .tw-h-auto {
831
828
  height: auto;
832
829
  }
833
- .tw-h-fit {
834
- height: -moz-fit-content;
835
- height: fit-content;
836
- }
837
830
  .tw-h-full {
838
831
  height: 100%;
839
832
  }
@@ -1453,17 +1446,6 @@ video {
1453
1446
  .tw-bg-opacity-80 {
1454
1447
  --tw-bg-opacity: 0.8;
1455
1448
  }
1456
- .tw-bg-gradient-to-t {
1457
- background-image: linear-gradient(to top, var(--tw-gradient-stops));
1458
- }
1459
- .tw-from-\[\#d946ef\] {
1460
- --tw-gradient-from: #d946ef var(--tw-gradient-from-position);
1461
- --tw-gradient-to: rgb(217 70 239 / 0) var(--tw-gradient-to-position);
1462
- --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
1463
- }
1464
- .tw-to-\[\#8b5cf6\] {
1465
- --tw-gradient-to: #8b5cf6 var(--tw-gradient-to-position);
1466
- }
1467
1449
  .tw-bg-no-repeat {
1468
1450
  background-repeat: no-repeat;
1469
1451
  }
@@ -2041,10 +2023,6 @@ video {
2041
2023
  --tw-bg-opacity: 1;
2042
2024
  background-color: rgb(0 129 191 / var(--tw-bg-opacity));
2043
2025
  }
2044
- .hover\:tw-bg-primary-100:hover {
2045
- --tw-bg-opacity: 1;
2046
- background-color: rgb(226 238 213 / var(--tw-bg-opacity));
2047
- }
2048
2026
  .hover\:tw-bg-primary-400:hover {
2049
2027
  --tw-bg-opacity: 1;
2050
2028
  background-color: rgb(140 189 89 / var(--tw-bg-opacity));
@@ -2109,10 +2087,6 @@ video {
2109
2087
  --tw-shadow-color: #00A1EF !important;
2110
2088
  --tw-shadow: var(--tw-shadow-colored) !important;
2111
2089
  }
2112
- .hover\:tw-brightness-\[0\.85\]:hover {
2113
- --tw-brightness: brightness(0.85);
2114
- filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
2115
- }
2116
2090
  .focus\:tw-border-error-600:focus {
2117
2091
  --tw-border-opacity: 1;
2118
2092
  border-color: rgb(186 24 79 / var(--tw-border-opacity));
@@ -719,9 +719,6 @@ video {
719
719
  .tw-ml-auto {
720
720
  margin-left: auto;
721
721
  }
722
- .tw-mr-1 {
723
- margin-right: 0.25rem;
724
- }
725
722
  .tw-mr-2 {
726
723
  margin-right: 0.5rem;
727
724
  }
@@ -830,10 +827,6 @@ video {
830
827
  .tw-h-auto {
831
828
  height: auto;
832
829
  }
833
- .tw-h-fit {
834
- height: -moz-fit-content;
835
- height: fit-content;
836
- }
837
830
  .tw-h-full {
838
831
  height: 100%;
839
832
  }
@@ -1453,17 +1446,6 @@ video {
1453
1446
  .tw-bg-opacity-80 {
1454
1447
  --tw-bg-opacity: 0.8;
1455
1448
  }
1456
- .tw-bg-gradient-to-t {
1457
- background-image: linear-gradient(to top, var(--tw-gradient-stops));
1458
- }
1459
- .tw-from-\[\#d946ef\] {
1460
- --tw-gradient-from: #d946ef var(--tw-gradient-from-position);
1461
- --tw-gradient-to: rgb(217 70 239 / 0) var(--tw-gradient-to-position);
1462
- --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
1463
- }
1464
- .tw-to-\[\#8b5cf6\] {
1465
- --tw-gradient-to: #8b5cf6 var(--tw-gradient-to-position);
1466
- }
1467
1449
  .tw-bg-no-repeat {
1468
1450
  background-repeat: no-repeat;
1469
1451
  }
@@ -2041,10 +2023,6 @@ video {
2041
2023
  --tw-bg-opacity: 1;
2042
2024
  background-color: rgb(50 71 197 / var(--tw-bg-opacity));
2043
2025
  }
2044
- .hover\:tw-bg-primary-100:hover {
2045
- --tw-bg-opacity: 1;
2046
- background-color: rgb(236 238 254 / var(--tw-bg-opacity));
2047
- }
2048
2026
  .hover\:tw-bg-primary-400:hover {
2049
2027
  --tw-bg-opacity: 1;
2050
2028
  background-color: rgb(121 139 249 / var(--tw-bg-opacity));
@@ -2109,10 +2087,6 @@ video {
2109
2087
  --tw-shadow-color: #3f59f6 !important;
2110
2088
  --tw-shadow: var(--tw-shadow-colored) !important;
2111
2089
  }
2112
- .hover\:tw-brightness-\[0\.85\]:hover {
2113
- --tw-brightness: brightness(0.85);
2114
- filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
2115
- }
2116
2090
  .focus\:tw-border-error-600:focus {
2117
2091
  --tw-border-opacity: 1;
2118
2092
  border-color: rgb(182 58 42 / var(--tw-border-opacity));
@@ -719,9 +719,6 @@ video {
719
719
  .tw-ml-auto {
720
720
  margin-left: auto;
721
721
  }
722
- .tw-mr-1 {
723
- margin-right: 0.25rem;
724
- }
725
722
  .tw-mr-2 {
726
723
  margin-right: 0.5rem;
727
724
  }
@@ -830,10 +827,6 @@ video {
830
827
  .tw-h-auto {
831
828
  height: auto;
832
829
  }
833
- .tw-h-fit {
834
- height: -moz-fit-content;
835
- height: fit-content;
836
- }
837
830
  .tw-h-full {
838
831
  height: 100%;
839
832
  }
@@ -1453,17 +1446,6 @@ video {
1453
1446
  .tw-bg-opacity-80 {
1454
1447
  --tw-bg-opacity: 0.8;
1455
1448
  }
1456
- .tw-bg-gradient-to-t {
1457
- background-image: linear-gradient(to top, var(--tw-gradient-stops));
1458
- }
1459
- .tw-from-\[\#d946ef\] {
1460
- --tw-gradient-from: #d946ef var(--tw-gradient-from-position);
1461
- --tw-gradient-to: rgb(217 70 239 / 0) var(--tw-gradient-to-position);
1462
- --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
1463
- }
1464
- .tw-to-\[\#8b5cf6\] {
1465
- --tw-gradient-to: #8b5cf6 var(--tw-gradient-to-position);
1466
- }
1467
1449
  .tw-bg-no-repeat {
1468
1450
  background-repeat: no-repeat;
1469
1451
  }
@@ -2041,10 +2023,6 @@ video {
2041
2023
  --tw-bg-opacity: 1;
2042
2024
  background-color: rgb(14 121 188 / var(--tw-bg-opacity));
2043
2025
  }
2044
- .hover\:tw-bg-primary-100:hover {
2045
- --tw-bg-opacity: 1;
2046
- background-color: rgb(207 234 251 / var(--tw-bg-opacity));
2047
- }
2048
2026
  .hover\:tw-bg-primary-400:hover {
2049
2027
  --tw-bg-opacity: 1;
2050
2028
  background-color: rgb(65 172 239 / var(--tw-bg-opacity));
@@ -2109,10 +2087,6 @@ video {
2109
2087
  --tw-shadow-color: #1197EB !important;
2110
2088
  --tw-shadow: var(--tw-shadow-colored) !important;
2111
2089
  }
2112
- .hover\:tw-brightness-\[0\.85\]:hover {
2113
- --tw-brightness: brightness(0.85);
2114
- filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
2115
- }
2116
2090
  .focus\:tw-border-error-600:focus {
2117
2091
  --tw-border-opacity: 1;
2118
2092
  border-color: rgb(195 50 48 / var(--tw-border-opacity));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@designcrowd/fe-shared-lib",
3
- "version": "1.2.11-ml-407-1",
3
+ "version": "1.2.11-ml-currency-3",
4
4
  "scripts": {
5
5
  "start": "run-p storybook watch:translation",
6
6
  "build": "npm run build:css --production",
@@ -113,4 +113,4 @@
113
113
  "overrides": {
114
114
  "storybook": "$storybook"
115
115
  }
116
- }
116
+ }
@@ -643,6 +643,10 @@ video {
643
643
  margin-top: 0px;
644
644
  margin-bottom: 0px;
645
645
  }
646
+ .theme-brandCrowd .tw-my-1 {
647
+ margin-top: 0.25rem;
648
+ margin-bottom: 0.25rem;
649
+ }
646
650
  .theme-brandCrowd .tw-my-10 {
647
651
  margin-top: 2.5rem;
648
652
  margin-bottom: 2.5rem;
@@ -849,9 +853,6 @@ video {
849
853
  .theme-brandCrowd .tw-max-h-screen {
850
854
  max-height: 100vh;
851
855
  }
852
- .theme-brandCrowd .tw-w-1\/3 {
853
- width: 33.333333%;
854
- }
855
856
  .theme-brandCrowd .tw-w-10 {
856
857
  width: 2.5rem;
857
858
  }
@@ -1020,6 +1021,9 @@ video {
1020
1021
  .theme-brandCrowd .tw-animate-spin {
1021
1022
  animation: tw-spin 1s linear infinite;
1022
1023
  }
1024
+ .\!tw-cursor-not-allowed {
1025
+ cursor: not-allowed !important;
1026
+ }
1023
1027
  .theme-brandCrowd .tw-cursor-not-allowed {
1024
1028
  cursor: not-allowed;
1025
1029
  }
@@ -2227,6 +2231,9 @@ video {
2227
2231
  .theme-brandCrowd .md\:tw-ml-4 {
2228
2232
  margin-left: 1rem;
2229
2233
  }
2234
+ .theme-brandCrowd .md\:tw-mr-2 {
2235
+ margin-right: 0.5rem;
2236
+ }
2230
2237
  .theme-brandCrowd .md\:tw-mt-0 {
2231
2238
  margin-top: 0px;
2232
2239
  }
@@ -643,6 +643,10 @@ video {
643
643
  margin-top: 0px;
644
644
  margin-bottom: 0px;
645
645
  }
646
+ .theme-brandPage .tw-my-1 {
647
+ margin-top: 0.25rem;
648
+ margin-bottom: 0.25rem;
649
+ }
646
650
  .theme-brandPage .tw-my-10 {
647
651
  margin-top: 2.5rem;
648
652
  margin-bottom: 2.5rem;
@@ -849,9 +853,6 @@ video {
849
853
  .theme-brandPage .tw-max-h-screen {
850
854
  max-height: 100vh;
851
855
  }
852
- .theme-brandPage .tw-w-1\/3 {
853
- width: 33.333333%;
854
- }
855
856
  .theme-brandPage .tw-w-10 {
856
857
  width: 2.5rem;
857
858
  }
@@ -1020,6 +1021,9 @@ video {
1020
1021
  .theme-brandPage .tw-animate-spin {
1021
1022
  animation: tw-spin 1s linear infinite;
1022
1023
  }
1024
+ .\!tw-cursor-not-allowed {
1025
+ cursor: not-allowed !important;
1026
+ }
1023
1027
  .theme-brandPage .tw-cursor-not-allowed {
1024
1028
  cursor: not-allowed;
1025
1029
  }
@@ -1911,6 +1915,9 @@ video {
1911
1915
  .theme-brandPage .md\:tw-ml-4 {
1912
1916
  margin-left: 1rem;
1913
1917
  }
1918
+ .theme-brandPage .md\:tw-mr-2 {
1919
+ margin-right: 0.5rem;
1920
+ }
1914
1921
  .theme-brandPage .md\:tw-mt-0 {
1915
1922
  margin-top: 0px;
1916
1923
  }
@@ -643,6 +643,10 @@ video {
643
643
  margin-top: 0px;
644
644
  margin-bottom: 0px;
645
645
  }
646
+ .theme-crazyDomains .tw-my-1 {
647
+ margin-top: 0.25rem;
648
+ margin-bottom: 0.25rem;
649
+ }
646
650
  .theme-crazyDomains .tw-my-10 {
647
651
  margin-top: 2.5rem;
648
652
  margin-bottom: 2.5rem;
@@ -849,9 +853,6 @@ video {
849
853
  .theme-crazyDomains .tw-max-h-screen {
850
854
  max-height: 100vh;
851
855
  }
852
- .theme-crazyDomains .tw-w-1\/3 {
853
- width: 33.333333%;
854
- }
855
856
  .theme-crazyDomains .tw-w-10 {
856
857
  width: 2.5rem;
857
858
  }
@@ -1020,6 +1021,9 @@ video {
1020
1021
  .theme-crazyDomains .tw-animate-spin {
1021
1022
  animation: tw-spin 1s linear infinite;
1022
1023
  }
1024
+ .\!tw-cursor-not-allowed {
1025
+ cursor: not-allowed !important;
1026
+ }
1023
1027
  .theme-crazyDomains .tw-cursor-not-allowed {
1024
1028
  cursor: not-allowed;
1025
1029
  }
@@ -2227,6 +2231,9 @@ video {
2227
2231
  .theme-crazyDomains .md\:tw-ml-4 {
2228
2232
  margin-left: 1rem;
2229
2233
  }
2234
+ .theme-crazyDomains .md\:tw-mr-2 {
2235
+ margin-right: 0.5rem;
2236
+ }
2230
2237
  .theme-crazyDomains .md\:tw-mt-0 {
2231
2238
  margin-top: 0px;
2232
2239
  }
@@ -643,6 +643,10 @@ video {
643
643
  margin-top: 0px;
644
644
  margin-bottom: 0px;
645
645
  }
646
+ .theme-designCom .tw-my-1 {
647
+ margin-top: 0.25rem;
648
+ margin-bottom: 0.25rem;
649
+ }
646
650
  .theme-designCom .tw-my-10 {
647
651
  margin-top: 2.5rem;
648
652
  margin-bottom: 2.5rem;
@@ -849,9 +853,6 @@ video {
849
853
  .theme-designCom .tw-max-h-screen {
850
854
  max-height: 100vh;
851
855
  }
852
- .theme-designCom .tw-w-1\/3 {
853
- width: 33.333333%;
854
- }
855
856
  .theme-designCom .tw-w-10 {
856
857
  width: 2.5rem;
857
858
  }
@@ -1020,6 +1021,9 @@ video {
1020
1021
  .theme-designCom .tw-animate-spin {
1021
1022
  animation: tw-spin 1s linear infinite;
1022
1023
  }
1024
+ .\!tw-cursor-not-allowed {
1025
+ cursor: not-allowed !important;
1026
+ }
1023
1027
  .theme-designCom .tw-cursor-not-allowed {
1024
1028
  cursor: not-allowed;
1025
1029
  }
@@ -2227,6 +2231,9 @@ video {
2227
2231
  .theme-designCom .md\:tw-ml-4 {
2228
2232
  margin-left: 1rem;
2229
2233
  }
2234
+ .theme-designCom .md\:tw-mr-2 {
2235
+ margin-right: 0.5rem;
2236
+ }
2230
2237
  .theme-designCom .md\:tw-mt-0 {
2231
2238
  margin-top: 0px;
2232
2239
  }
@@ -643,6 +643,10 @@ video {
643
643
  margin-top: 0px;
644
644
  margin-bottom: 0px;
645
645
  }
646
+ .theme-designCrowd .tw-my-1 {
647
+ margin-top: 0.25rem;
648
+ margin-bottom: 0.25rem;
649
+ }
646
650
  .theme-designCrowd .tw-my-10 {
647
651
  margin-top: 2.5rem;
648
652
  margin-bottom: 2.5rem;
@@ -849,9 +853,6 @@ video {
849
853
  .theme-designCrowd .tw-max-h-screen {
850
854
  max-height: 100vh;
851
855
  }
852
- .theme-designCrowd .tw-w-1\/3 {
853
- width: 33.333333%;
854
- }
855
856
  .theme-designCrowd .tw-w-10 {
856
857
  width: 2.5rem;
857
858
  }
@@ -1020,6 +1021,9 @@ video {
1020
1021
  .theme-designCrowd .tw-animate-spin {
1021
1022
  animation: tw-spin 1s linear infinite;
1022
1023
  }
1024
+ .\!tw-cursor-not-allowed {
1025
+ cursor: not-allowed !important;
1026
+ }
1023
1027
  .theme-designCrowd .tw-cursor-not-allowed {
1024
1028
  cursor: not-allowed;
1025
1029
  }
@@ -2227,6 +2231,9 @@ video {
2227
2231
  .theme-designCrowd .md\:tw-ml-4 {
2228
2232
  margin-left: 1rem;
2229
2233
  }
2234
+ .theme-designCrowd .md\:tw-mr-2 {
2235
+ margin-right: 0.5rem;
2236
+ }
2230
2237
  .theme-designCrowd .md\:tw-mt-0 {
2231
2238
  margin-top: 0px;
2232
2239
  }
@@ -14,12 +14,72 @@ export const audCurrency = {
14
14
  abbreviation: 'AU',
15
15
  };
16
16
 
17
+ export const gbpCurrency = {
18
+ id: 3,
19
+ name: 'British Pound',
20
+ iso4127Code: 'GBP',
21
+ symbol: '£',
22
+ abbreviation: 'UK',
23
+ };
24
+
17
25
  export const euroCurrency = {
18
- id: 999,
26
+ id: 4,
19
27
  name: 'Euro',
20
28
  iso4127Code: 'EUR',
21
29
  symbol: '€',
22
30
  abbreviation: 'EU',
23
31
  };
24
32
 
25
- export const currencies = [usdCurrency, audCurrency, euroCurrency];
33
+ export const inrCurrency = {
34
+ id: 5,
35
+ name: 'Indian Rupee',
36
+ iso4127Code: 'INR',
37
+ symbol: '₹',
38
+ abbreviation: 'IN',
39
+ };
40
+
41
+ export const phpCurrency = {
42
+ id: 6,
43
+ name: 'Philippine Peso',
44
+ iso4127Code: 'PHP',
45
+ symbol: '₱',
46
+ abbreviation: 'PH',
47
+ };
48
+
49
+ export const brlCurrency = {
50
+ id: 7,
51
+ name: 'Brazilian Real',
52
+ iso4127Code: 'BRL',
53
+ symbol: 'R$',
54
+ abbreviation: 'R',
55
+ };
56
+
57
+ export const mxnCurrency = {
58
+ id: 8,
59
+ name: 'Mexican Peso',
60
+ iso4127Code: 'MXN',
61
+ symbol: 'MX$',
62
+ abbreviation: 'MX',
63
+ };
64
+
65
+ export const zarCurrency = {
66
+ id: 9,
67
+ name: 'South African Rand',
68
+ iso4127Code: 'ZAR',
69
+ symbol: 'R',
70
+ abbreviation: 'R',
71
+ };
72
+
73
+ export const currencies = [
74
+ usdCurrency,
75
+ audCurrency,
76
+ gbpCurrency,
77
+ euroCurrency,
78
+ inrCurrency,
79
+ phpCurrency,
80
+ brlCurrency,
81
+ mxnCurrency,
82
+ zarCurrency,
83
+ ];
84
+
85
+ export const locales = [ 'en_US', 'fr_FR', 'es_ES', 'pt_PT', 'de-DE']
@@ -1,5 +1,8 @@
1
1
  import Price from './Price.vue';
2
- import { currencies } from './Price.fixtures';
2
+ import { currencies, locales } from './Price.fixtures';
3
+ import {setSharedLibLocaleAsync} from "../../../useSharedLibTranslate";
4
+
5
+ await setSharedLibLocaleAsync();
3
6
 
4
7
  // noinspection JSUnusedGlobalSymbols
5
8
  export default {
@@ -7,6 +10,7 @@ export default {
7
10
  component: Price,
8
11
  args: {
9
12
  currencyName: currencies[0].name,
13
+ locale: locales[0]
10
14
  },
11
15
  argTypes: {
12
16
  amount: {
@@ -16,6 +20,10 @@ export default {
16
20
  control: { type: 'select' },
17
21
  options: currencies.map((x) => x.name),
18
22
  },
23
+ locale: {
24
+ control: { type: 'select' },
25
+ options: locales,
26
+ },
19
27
  },
20
28
  };
21
29
 
@@ -31,12 +39,16 @@ export const Sample = {
31
39
  selectedCurrency() {
32
40
  return currencies.find((x) => x.name === this.args.currencyName);
33
41
  },
42
+ selectedLocale() {
43
+ return locales.find((x) => x === this.args.locale);
44
+ },
34
45
  },
35
46
  template: `
36
47
  <span>
37
48
  <price
38
49
  v-bind="args"
39
50
  :currency="selectedCurrency"
51
+ :locale="selectedLocale"
40
52
  />
41
53
  </span>
42
54
  `,
@@ -59,6 +71,9 @@ export const WithFraction = {
59
71
  selectedCurrency() {
60
72
  return currencies.find((x) => x.name === this.args.currencyName);
61
73
  },
74
+ selectedLocale() {
75
+ return locales.find((x) => x === this.args.locale);
76
+ },
62
77
  },
63
78
  template: `
64
79
  <span>
@@ -66,7 +81,7 @@ export const WithFraction = {
66
81
  v-bind="args"
67
82
  :currency="selectedCurrency"
68
83
  fraction="2"
69
- :show-abbreviation="true"
84
+ :locale="selectedLocale"
70
85
  />
71
86
  </span>
72
87
  `,
@@ -89,6 +104,9 @@ export const AlwaysShowFractionOn = {
89
104
  selectedCurrency() {
90
105
  return currencies.find((x) => x.name === this.args.currencyName);
91
106
  },
107
+ selectedLocale() {
108
+ return locales.find((x) => x === this.args.locale);
109
+ },
92
110
  },
93
111
  template: `
94
112
  <span>
@@ -97,7 +115,7 @@ export const AlwaysShowFractionOn = {
97
115
  :always-show-fraction="true"
98
116
  :currency="selectedCurrency"
99
117
  fraction="2"
100
- :show-abbreviation="true"
118
+ :locale="selectedLocale"
101
119
  />
102
120
  </span>
103
121
  `,
@@ -128,7 +146,7 @@ export const AlwaysShowFractionOff = {
128
146
  :always-show-fraction="false"
129
147
  :currency="selectedCurrency"
130
148
  fraction="2"
131
- :show-abbreviation="true"
149
+ :locale="selectedLocale"
132
150
  />
133
151
  </span>
134
152
  `,
@@ -151,6 +169,9 @@ export const WithSuffix = {
151
169
  selectedCurrency() {
152
170
  return currencies.find((x) => x.name === this.args.currencyName);
153
171
  },
172
+ selectedLocale() {
173
+ return locales.find((x) => x === this.args.locale);
174
+ },
154
175
  },
155
176
  template: `
156
177
  <span>
@@ -159,8 +180,8 @@ export const WithSuffix = {
159
180
  :always-show-fraction="true"
160
181
  :currency="selectedCurrency"
161
182
  fraction="2"
162
- :show-abbreviation="true"
163
183
  :suffix="suffix"
184
+ :locale="selectedLocale"
164
185
  />
165
186
  </span>
166
187
  `,
@@ -171,3 +192,35 @@ export const WithSuffix = {
171
192
  suffix: '/yr',
172
193
  },
173
194
  };
195
+
196
+ export const WithLocale = {
197
+ render: (args, { argTypes }) => {
198
+ return {
199
+ components: { Price },
200
+ props: Object.keys(argTypes),
201
+ setup() {
202
+ return { args };
203
+ },
204
+ computed: {
205
+ selectedCurrency() {
206
+ return currencies.find((x) => x.name === this.args.currencyName);
207
+ },
208
+ selectedLocale() {
209
+ return locales.find((x) => x === this.args.locale);
210
+ },
211
+ },
212
+ template: `
213
+ <span>
214
+ <price
215
+ v-bind="args"
216
+ :currency="selectedCurrency"
217
+ :locale="selectedLocale"
218
+ />
219
+ </span>
220
+ `,
221
+ };
222
+ },
223
+ args: {
224
+ amount: 22.0,
225
+ },
226
+ };
@@ -5,6 +5,9 @@
5
5
  </span>
6
6
  </template>
7
7
  <script>
8
+
9
+ import {formatCurrency} from "../../../useSharedLibTranslate";
10
+
8
11
  export default {
9
12
  props: {
10
13
  amount: {
@@ -22,6 +25,11 @@ export default {
22
25
  required: false,
23
26
  default: null,
24
27
  },
28
+ locale: {
29
+ type: String,
30
+ required: false,
31
+ default: null,
32
+ },
25
33
  fraction: {
26
34
  type: [Number, String],
27
35
  required: false,
@@ -58,6 +66,17 @@ export default {
58
66
  return 'Free';
59
67
  }
60
68
 
69
+ if (this.locale != null)
70
+ {
71
+ return formatCurrency(
72
+ this.amount,
73
+ this.locale,
74
+ this.currency,
75
+ this.fraction,
76
+ this.showAbbreviatiom
77
+ );
78
+ }
79
+
61
80
  const parsedAmount = Number.parseFloat(this.amount);
62
81
 
63
82
  if (Number.isNaN(parsedAmount)) {
@@ -73,10 +92,10 @@ export default {
73
92
  return parsedAmount.toFixed(this.fraction);
74
93
  },
75
94
  currencyAbbreviation() {
76
- return this.showAbbreviation && this.amount > 0 ? this.currency?.abbreviation?.trim() : '';
95
+ return this.showAbbreviation && this.amount && !this.locale > 0 ? this.currency?.abbreviation?.trim() : '';
77
96
  },
78
97
  currencySymbol() {
79
- if (!this.amount || this.amount === 0) {
98
+ if (!this.amount || this.amount === 0 || this.locale) {
80
99
  return '';
81
100
  }
82
101
 
@@ -57,7 +57,7 @@
57
57
  </p>
58
58
  <div class="tw-flex tw-flex-col">
59
59
  <div>
60
- <form id="signin" :action="getSignInAction" method="post" @submit="validate">
60
+ <form id="signin" action="/identity/account/signin" method="post" @submit="validate">
61
61
  <input name="__RequestVerificationToken" type="hidden" :value="antiForgeryToken" />
62
62
  <label for="userName" class="tw-sr-only"> {{ emailLabel }} </label>
63
63
  <input
@@ -170,7 +170,6 @@ import themeMixin from '../../mixins/themeMixin';
170
170
  import { SIGN_IN } from '../../constants/partner-dictionary-constants';
171
171
  import isValidEmail from '../../helpers/email-validator';
172
172
  import SocialSignIn from './SocialSignIn.vue';
173
- import { getCurrentLocale } from '../../../useSharedLibTranslate';
174
173
 
175
174
  export default {
176
175
  components: {
@@ -335,9 +334,6 @@ export default {
335
334
  isLoading() {
336
335
  return this.emailLoading || this.facebookLoading || this.googleLoading;
337
336
  },
338
- currentLocale() {
339
- return getCurrentLocale();
340
- },
341
337
  submissionButtonLabelLowercase() {
342
338
  return this.submissionButtonLabel.toLowerCase();
343
339
  },
@@ -373,11 +369,6 @@ export default {
373
369
  }
374
370
  return this.signUpText;
375
371
  },
376
- getSignInAction() {
377
- const params = new URLSearchParams();
378
- params.set('locale', this.currentLocale);
379
- return `/identity/account/signin?${params.toString()}`;
380
- },
381
372
  },
382
373
  watch: {
383
374
  capturePassword() {
@@ -59,6 +59,42 @@ const getCurrentLocale = () => {
59
59
  return i18next.language || 'en-US';
60
60
  };
61
61
 
62
+ const formatCurrency = (amount, locale, currency, fraction = 0, showAbbreviation = false) => {
63
+ let localeAmount = i18next.t('{{val, currency}}', {
64
+ ns: 'fe-shared-lib',
65
+ val: amount,
66
+ currency: currency.iso4127Code,
67
+ locale: locale,
68
+ maximumFractionDigits: fraction,
69
+ useGrouping: false,
70
+ });
71
+
72
+ // i18next always uses iso code for ZAR, prefer symbol over iso code
73
+ if (localeAmount.includes(currency.iso4127Code)) {
74
+ return localeAmount.replace(currency.iso4127Code, currency.symbol);
75
+ }
76
+
77
+ // show abbreviation locale logic
78
+ // note: showAbbreviaton is only passed as true for symbol = "$"
79
+ if (currency.symbol != '$') {
80
+ return localeAmount;
81
+ }
82
+
83
+ // AUD edge case for en_US
84
+ if (currency.iso4127Code == 'AUD') {
85
+ localeAmount = localeAmount.replace('A$', currency.symbol);
86
+ }
87
+
88
+ if (showAbbreviation && !localeAmount.includes(currency.abbreviation)) {
89
+ return `${currency?.abbreviation}${localeAmount}`;
90
+
91
+ } else if (!showAbbreviation && localeAmount.includes(currency.abbreviation)) {
92
+ return localeAmount.replace(currency.abbreviation, '');
93
+ }
94
+
95
+ return localeAmount;
96
+ }
97
+
62
98
  export {
63
99
  setSharedLibLocaleAsync,
64
100
  getCurrentLocale,
@@ -70,5 +106,6 @@ export {
70
106
  sellDomainNameModalApplicationTr,
71
107
  sellDomainNameListModalTr,
72
108
  sellDomainNameListTr,
109
+ formatCurrency,
73
110
  };
74
111