@transferwise/components 0.0.0-experimental-bf3b43b → 0.0.0-experimental-cbc00a7

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 (73) hide show
  1. package/build/Snackbar/Snackbar.js +107 -105
  2. package/build/Snackbar/Snackbar.js.map +1 -1
  3. package/build/Snackbar/Snackbar.mjs +109 -104
  4. package/build/Snackbar/Snackbar.mjs.map +1 -1
  5. package/build/Snackbar/SnackbarContext.js.map +1 -1
  6. package/build/Snackbar/SnackbarContext.mjs.map +1 -1
  7. package/build/Snackbar/SnackbarPortal.js +12 -0
  8. package/build/Snackbar/SnackbarPortal.js.map +1 -0
  9. package/build/Snackbar/SnackbarPortal.mjs +8 -0
  10. package/build/Snackbar/SnackbarPortal.mjs.map +1 -0
  11. package/build/Snackbar/SnackbarProvider.js +23 -27
  12. package/build/Snackbar/SnackbarProvider.js.map +1 -1
  13. package/build/Snackbar/SnackbarProvider.mjs +24 -28
  14. package/build/Snackbar/SnackbarProvider.mjs.map +1 -1
  15. package/build/Snackbar/constants.js +8 -0
  16. package/build/Snackbar/constants.js.map +1 -0
  17. package/build/Snackbar/constants.mjs +5 -0
  18. package/build/Snackbar/constants.mjs.map +1 -0
  19. package/build/Snackbar/useSnackbarManager.js +119 -0
  20. package/build/Snackbar/useSnackbarManager.js.map +1 -0
  21. package/build/Snackbar/useSnackbarManager.mjs +115 -0
  22. package/build/Snackbar/useSnackbarManager.mjs.map +1 -0
  23. package/build/i18n/th.json +1 -1
  24. package/build/i18n/th.json.js +1 -1
  25. package/build/i18n/th.json.mjs +1 -1
  26. package/build/i18n/zh-CN.json +0 -1
  27. package/build/i18n/zh-CN.json.js +0 -1
  28. package/build/i18n/zh-CN.json.js.map +1 -1
  29. package/build/i18n/zh-CN.json.mjs +0 -1
  30. package/build/i18n/zh-CN.json.mjs.map +1 -1
  31. package/build/main.css +113 -61
  32. package/build/styles/Snackbar/Snackbar.css +116 -64
  33. package/build/styles/main.css +113 -61
  34. package/build/types/Body/Body.d.ts +2 -2
  35. package/build/types/IconButton/IconButton.d.ts +1 -1
  36. package/build/types/MoneyInput/MoneyInput.d.ts +1 -1
  37. package/build/types/MoneyInput/MoneyInput.d.ts.map +1 -1
  38. package/build/types/Snackbar/Snackbar.d.ts +10 -8
  39. package/build/types/Snackbar/Snackbar.d.ts.map +1 -1
  40. package/build/types/Snackbar/Snackbar.types.d.ts +19 -0
  41. package/build/types/Snackbar/Snackbar.types.d.ts.map +1 -0
  42. package/build/types/Snackbar/SnackbarContext.d.ts +2 -2
  43. package/build/types/Snackbar/SnackbarContext.d.ts.map +1 -1
  44. package/build/types/Snackbar/SnackbarPortal.d.ts +4 -0
  45. package/build/types/Snackbar/SnackbarPortal.d.ts.map +1 -0
  46. package/build/types/Snackbar/SnackbarProvider.d.ts.map +1 -1
  47. package/build/types/Snackbar/constants.d.ts +3 -0
  48. package/build/types/Snackbar/constants.d.ts.map +1 -0
  49. package/build/types/Snackbar/useSnackbar.d.ts +1 -1
  50. package/build/types/Snackbar/useSnackbar.d.ts.map +1 -1
  51. package/build/types/Snackbar/useSnackbarManager.d.ts +16 -0
  52. package/build/types/Snackbar/useSnackbarManager.d.ts.map +1 -0
  53. package/build/types/Title/Title.d.ts +2 -2
  54. package/build/types/Upload/Steps/UploadImageStep/UploadImageStep.d.ts +1 -1
  55. package/build/types/UploadInput/UploadItem/UploadItemLink.d.ts +1 -1
  56. package/package.json +3 -3
  57. package/src/Snackbar/Snackbar.css +116 -64
  58. package/src/Snackbar/Snackbar.less +121 -60
  59. package/src/Snackbar/Snackbar.test.tsx +122 -133
  60. package/src/Snackbar/Snackbar.tsx +95 -96
  61. package/src/Snackbar/Snackbar.types.ts +21 -0
  62. package/src/Snackbar/SnackbarContext.ts +2 -2
  63. package/src/Snackbar/SnackbarPortal.tsx +8 -0
  64. package/src/Snackbar/SnackbarProvider.test.tsx +289 -0
  65. package/src/Snackbar/SnackbarProvider.tsx +19 -18
  66. package/src/Snackbar/_stories/Snackbar.rtl.test.story.tsx +16 -6
  67. package/src/Snackbar/_stories/Snackbar.story.tsx +62 -1
  68. package/src/Snackbar/_stories/Snackbar.test.story.tsx +26 -5
  69. package/src/Snackbar/constants.ts +2 -0
  70. package/src/Snackbar/useSnackbarManager.ts +122 -0
  71. package/src/i18n/th.json +1 -1
  72. package/src/i18n/zh-CN.json +0 -1
  73. package/src/main.css +113 -61
package/src/main.css CHANGED
@@ -26174,83 +26174,135 @@ button.np-link {
26174
26174
  box-shadow: inset 1px 0 0 0 rgba(0,0,0,0.10196);
26175
26175
  box-shadow: inset 1px 0 0 0 var(--color-border-neutral);
26176
26176
  }
26177
- .snackbar {
26178
- text-align: center;
26177
+ .wds-Snackbar {
26178
+ display: flex;
26179
+ justify-content: center;
26180
+ box-sizing: border-box;
26181
+ padding-inline: 16px;
26182
+ padding-inline: var(--size-16);
26183
+ padding-block-end: calc(16px + env(safe-area-inset-bottom));
26184
+ padding-block-end: calc(var(--size-16) + env(safe-area-inset-bottom));
26179
26185
  position: fixed;
26180
26186
  inset-block-end: 0;
26181
- inset-inline-start: 0;
26182
- inset-inline-end: 0;
26187
+ inset-inline: 0;
26183
26188
  z-index: 1060;
26184
26189
  }
26185
- .snackbar__text {
26186
- background: #37517e;
26187
- color: #ffffff;
26188
- display: inline-flex;
26189
- border-radius: 2px;
26190
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
26191
- align-items: center;
26192
- justify-content: space-between;
26190
+ @media (min-width: 600px) {
26191
+ .wds-Snackbar {
26192
+ padding-block-end: 24px;
26193
+ padding-block-end: var(--size-24);
26194
+ }
26195
+ }
26196
+ .wds-Snackbar-container {
26197
+ --Prompt-border-radius: var(--radius-medium);
26198
+ --Prompt-gap: var(--size-8);
26199
+ --Prompt-padding-x: var(--size-12);
26200
+ --Prompt-padding-y: var(--size-12);
26201
+ box-sizing: border-box;
26202
+ max-inline-size: 480px;
26193
26203
  text-align: start;
26194
- font-size: 0.875rem;
26195
- font-size: var(--font-size-14);
26196
- margin-block: 0;
26197
- margin-inline: 16px;
26198
- margin-inline: var(--size-16);
26199
- padding-block: 8px;
26200
- padding-block: var(--size-8);
26201
- padding-inline: 16px;
26202
- padding-inline: var(--size-16);
26203
- inline-size: calc(100% - 32px);
26204
- inline-size: calc(100% - var(--size-32));
26205
- transition: 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
26206
26204
  }
26207
- .np-theme-personal .snackbar__text {
26208
- box-shadow: 0 2px 4px 0 rgba(69, 71, 69, 0.35);
26209
- position: relative;
26210
- background: var(--color-contrast-theme);
26211
- border-radius: 10px;
26212
- border-radius: var(--radius-small);
26213
- color: var(--color-contrast-overlay);
26205
+ .wds-Snackbar-container .wds-prompt__content-wrapper--with-dismiss {
26206
+ grid-template-columns: auto minmax(0, 1fr);
26214
26207
  }
26215
- .np-theme-personal .snackbar__text::after {
26216
- display: block;
26217
- border-radius: inherit;
26218
- block-size: 100%;
26219
- inline-size: 100%;
26220
- content: "";
26221
- position: absolute;
26222
- inset-inline-start: 0;
26223
- inset-block-start: 0;
26224
- z-index: -1;
26225
- background-color: rgba(134,167,189,0.10196);
26226
- background-color: var(--color-background-neutral);
26208
+ @media (min-width: 600px) {
26209
+ .wds-Snackbar-container .wds-prompt__content-wrapper--with-dismiss {
26210
+ grid-template-columns: auto minmax(0, 1fr) auto;
26211
+ }
26227
26212
  }
26228
- .np-theme-personal--dark .snackbar__text,
26229
- .np-theme-personal--forest-green .snackbar__text {
26230
- box-shadow: none;
26213
+ .wds-Snackbar-container .wds-prompt__media-wrapper {
26214
+ display: flex;
26215
+ align-items: center;
26216
+ min-block-size: max(32px, 1lh);
26217
+ min-block-size: max(var(--size-32), 1lh);
26218
+ padding-block-start: 0;
26219
+ color: var(--color-sentiment-content-primary);
26220
+ }
26221
+ .wds-Snackbar-container .wds-prompt__media-wrapper:has(+ .wds-Snackbar__content .wds-Snackbar__action) {
26222
+ min-block-size: max(32px, calc(1lh + 5px * 2));
26223
+ min-block-size: max(var(--size-32), calc(1lh + var(--size-5) * 2));
26224
+ }
26225
+ .wds-Snackbar__media-asset {
26226
+ display: flex;
26227
+ }
26228
+ .wds-Snackbar__media-asset svg {
26229
+ inline-size: 24px;
26230
+ inline-size: var(--size-24);
26231
+ block-size: 24px;
26232
+ block-size: var(--size-24);
26233
+ }
26234
+ .wds-Snackbar-container .wds-prompt__dismiss {
26235
+ display: none;
26236
+ align-self: flex-start;
26237
+ margin-block-start: calc(4px - 1px);
26238
+ margin-block-start: calc(var(--size-4) - 1px);
26231
26239
  }
26232
26240
  @media (min-width: 600px) {
26233
- .snackbar__text {
26234
- inline-size: auto;
26235
- max-inline-size: 600px;
26241
+ .wds-Snackbar-container .wds-prompt__dismiss {
26242
+ display: flex;
26236
26243
  }
26237
26244
  }
26238
- .snackbar__text__action {
26245
+ .wds-Snackbar__action {
26239
26246
  flex-shrink: 0;
26240
- margin-inline-start: 16px;
26241
- margin-inline-start: var(--size-16);
26242
26247
  }
26243
- .snackbar__text-container-enter,
26244
- .snackbar__text-container-exit {
26245
- transform: translateY(calc(100% + 10px));
26248
+ .wds-Snackbar__content {
26249
+ display: flex;
26250
+ align-items: flex-start;
26251
+ gap: 8px;
26252
+ gap: var(--size-8);
26253
+ flex: 1 0 0;
26254
+ min-block-size: 32px;
26255
+ min-block-size: var(--size-32);
26256
+ min-inline-size: 0;
26246
26257
  }
26247
- .snackbar__text-container-enter-active {
26248
- transform: translateY(-16px);
26249
- transform: translateY(calc(-16px - env(safe-area-inset-bottom)));
26258
+ .wds-Snackbar__message {
26259
+ display: flex;
26260
+ flex-direction: column;
26261
+ justify-content: center;
26262
+ inline-size: auto;
26263
+ flex: 1 0 0;
26264
+ min-inline-size: 0;
26265
+ align-self: stretch;
26250
26266
  }
26251
- @media (min-width: 600px) {
26252
- .snackbar__text-container-enter-active {
26253
- transform: translateY(-24px);
26267
+ .wds-Snackbar__body {
26268
+ display: block;
26269
+ font-weight: 500;
26270
+ font-weight: var(--font-weight-medium);
26271
+ }
26272
+ .wds-Snackbar-container-appear,
26273
+ .wds-Snackbar-container-enter {
26274
+ opacity: 0;
26275
+ transform: translateY(80px) scale(0.5);
26276
+ }
26277
+ .wds-Snackbar-container-appear-active,
26278
+ .wds-Snackbar-container-enter-active {
26279
+ opacity: 1;
26280
+ transform: translateY(0) scale(1);
26281
+ transition: opacity 150ms linear, transform var(--Snackbar-enter-duration) cubic-bezier(0, 0, 0, 1);
26282
+ }
26283
+ .wds-Snackbar-container-exit {
26284
+ opacity: 1;
26285
+ transform: translateY(0) scale(1);
26286
+ }
26287
+ .wds-Snackbar-container-exit-active {
26288
+ opacity: 0;
26289
+ transform: translateY(80px) scale(0.5);
26290
+ transition: opacity 50ms linear 50ms, transform var(--Snackbar-exit-duration) cubic-bezier(1, 0, 1, 1);
26291
+ }
26292
+ @media (prefers-reduced-motion: reduce) {
26293
+ .wds-Snackbar-container-appear,
26294
+ .wds-Snackbar-container-appear-active,
26295
+ .wds-Snackbar-container-enter,
26296
+ .wds-Snackbar-container-enter-active,
26297
+ .wds-Snackbar-container-exit {
26298
+ opacity: 1;
26299
+ transform: none;
26300
+ transition: none;
26301
+ }
26302
+ .wds-Snackbar-container-exit-active {
26303
+ opacity: 0;
26304
+ transform: none;
26305
+ transition: none;
26254
26306
  }
26255
26307
  }
26256
26308
  .status-circle.negative,