@lifesg/react-design-system 3.4.0-canary.4 → 3.4.0-canary.6

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 (147) hide show
  1. package/badge/badge.style.d.ts +3 -3
  2. package/badge/badge.style.js +8 -8
  3. package/badge/badge.style.js.map +1 -1
  4. package/badge/types.d.ts +1 -1
  5. package/cjs/badge/badge.style.js +11 -11
  6. package/cjs/badge/badge.style.js.map +1 -1
  7. package/cjs/date-input/date-input.js +1 -1
  8. package/cjs/date-input/date-input.js.map +1 -1
  9. package/cjs/error-display/error-display-data.js +1 -1
  10. package/cjs/error-display/error-display-data.js.map +1 -1
  11. package/cjs/filter/filter-badge.js +2 -0
  12. package/cjs/filter/filter-badge.js.map +1 -0
  13. package/cjs/filter/filter-modal.js +1 -1
  14. package/cjs/filter/filter-modal.js.map +1 -1
  15. package/cjs/filter/filter-modal.styles.js +20 -12
  16. package/cjs/filter/filter-modal.styles.js.map +1 -1
  17. package/cjs/filter/filter-sidebar.js +1 -1
  18. package/cjs/filter/filter-sidebar.js.map +1 -1
  19. package/cjs/filter/filter-sidebar.styles.js +19 -14
  20. package/cjs/filter/filter-sidebar.styles.js.map +1 -1
  21. package/cjs/form/form-wrapper.js +1 -1
  22. package/cjs/form/form-wrapper.js.map +1 -1
  23. package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.js +1 -1
  24. package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.js.map +1 -1
  25. package/cjs/index.js +1 -1
  26. package/cjs/modal/modal.js +1 -1
  27. package/cjs/modal/modal.js.map +1 -1
  28. package/cjs/modal/modal.styles.js +4 -5
  29. package/cjs/modal/modal.styles.js.map +1 -1
  30. package/cjs/modal-v2/modal-v2.js +1 -1
  31. package/cjs/modal-v2/modal-v2.js.map +1 -1
  32. package/cjs/modal-v2/modal-v2.styles.js +10 -10
  33. package/cjs/modal-v2/modal-v2.styles.js.map +1 -1
  34. package/cjs/shared/hooks/useViewport.js +1 -1
  35. package/cjs/shared/hooks/useViewport.js.map +1 -1
  36. package/cjs/shared/standalone-date-input/standalone-date-input.js +1 -1
  37. package/cjs/shared/standalone-date-input/standalone-date-input.js.map +1 -1
  38. package/cjs/shared/standalone-date-input/standalone-date-input.style.js +19 -16
  39. package/cjs/shared/standalone-date-input/standalone-date-input.style.js.map +1 -1
  40. package/cjs/theme/colour-primitive/specs/careercompass-colour-set.js +2 -0
  41. package/cjs/theme/colour-primitive/specs/careercompass-colour-set.js.map +1 -0
  42. package/cjs/theme/colour-primitive/theme-helper.js +1 -1
  43. package/cjs/theme/colour-primitive/theme-helper.js.map +1 -1
  44. package/cjs/theme/colour-semantic/specs/a11yplayground-semantic-tokens.js +1 -1
  45. package/cjs/theme/colour-semantic/specs/a11yplayground-semantic-tokens.js.map +1 -1
  46. package/cjs/theme/colour-semantic/specs/lifesg-semantic-tokens.js +1 -1
  47. package/cjs/theme/colour-semantic/specs/lifesg-semantic-tokens.js.map +1 -1
  48. package/cjs/theme/colour-semantic/specs/pa-semantic-tokens.js +1 -1
  49. package/cjs/theme/colour-semantic/specs/pa-semantic-tokens.js.map +1 -1
  50. package/cjs/theme/colour-semantic/specs/sgwdigitallobby-tokens.js +1 -1
  51. package/cjs/theme/colour-semantic/specs/sgwdigitallobby-tokens.js.map +1 -1
  52. package/cjs/theme/colour-semantic/theme-helper.js +1 -1
  53. package/cjs/theme/colour-semantic/theme-helper.js.map +1 -1
  54. package/cjs/theme/font/theme-helper.js +1 -1
  55. package/cjs/theme/font/theme-helper.js.map +1 -1
  56. package/cjs/theme/font-spec/theme-helper.js +1 -1
  57. package/cjs/theme/font-spec/theme-helper.js.map +1 -1
  58. package/cjs/theme/index.js +1 -1
  59. package/cjs/theme/index.js.map +1 -1
  60. package/cjs/timepicker/timepicker.js +1 -1
  61. package/cjs/timepicker/timepicker.js.map +1 -1
  62. package/cjs/timepicker/timepicker.styles.js +4 -3
  63. package/cjs/timepicker/timepicker.styles.js.map +1 -1
  64. package/date-input/date-input.js +1 -1
  65. package/date-input/date-input.js.map +1 -1
  66. package/error-display/error-display-data.js +1 -1
  67. package/error-display/error-display-data.js.map +1 -1
  68. package/filter/filter-badge.d.ts +5 -0
  69. package/filter/filter-badge.js +2 -0
  70. package/filter/filter-badge.js.map +1 -0
  71. package/filter/filter-modal.d.ts +1 -1
  72. package/filter/filter-modal.js +1 -1
  73. package/filter/filter-modal.js.map +1 -1
  74. package/filter/filter-modal.styles.d.ts +2 -0
  75. package/filter/filter-modal.styles.js +24 -16
  76. package/filter/filter-modal.styles.js.map +1 -1
  77. package/filter/filter-sidebar.d.ts +1 -1
  78. package/filter/filter-sidebar.js +1 -1
  79. package/filter/filter-sidebar.js.map +1 -1
  80. package/filter/filter-sidebar.styles.d.ts +1 -0
  81. package/filter/filter-sidebar.styles.js +19 -14
  82. package/filter/filter-sidebar.styles.js.map +1 -1
  83. package/filter/filter.d.ts +2 -2
  84. package/filter/types.d.ts +1 -0
  85. package/form/form-wrapper.js +1 -1
  86. package/form/form-wrapper.js.map +1 -1
  87. package/fullscreen-image-carousel/fullscreen-image-carousel.js +1 -1
  88. package/fullscreen-image-carousel/fullscreen-image-carousel.js.map +1 -1
  89. package/index.js +1 -1
  90. package/modal/modal.js +1 -1
  91. package/modal/modal.js.map +1 -1
  92. package/modal/modal.styles.d.ts +1 -1
  93. package/modal/modal.styles.js +4 -5
  94. package/modal/modal.styles.js.map +1 -1
  95. package/modal-v2/modal-v2.js +1 -1
  96. package/modal-v2/modal-v2.js.map +1 -1
  97. package/modal-v2/modal-v2.styles.d.ts +0 -2
  98. package/modal-v2/modal-v2.styles.js +9 -9
  99. package/modal-v2/modal-v2.styles.js.map +1 -1
  100. package/package.json +1 -1
  101. package/shared/hooks/useViewport.d.ts +7 -2
  102. package/shared/hooks/useViewport.js +1 -1
  103. package/shared/hooks/useViewport.js.map +1 -1
  104. package/shared/standalone-date-input/standalone-date-input.js +1 -1
  105. package/shared/standalone-date-input/standalone-date-input.js.map +1 -1
  106. package/shared/standalone-date-input/standalone-date-input.style.d.ts +2 -1
  107. package/shared/standalone-date-input/standalone-date-input.style.js +20 -17
  108. package/shared/standalone-date-input/standalone-date-input.style.js.map +1 -1
  109. package/theme/colour-primitive/specs/careercompass-colour-set.d.ts +3 -0
  110. package/theme/colour-primitive/specs/careercompass-colour-set.js +2 -0
  111. package/theme/colour-primitive/specs/careercompass-colour-set.js.map +1 -0
  112. package/theme/colour-primitive/theme-helper.js +1 -1
  113. package/theme/colour-primitive/theme-helper.js.map +1 -1
  114. package/theme/colour-semantic/specs/a11yplayground-semantic-tokens.js +1 -1
  115. package/theme/colour-semantic/specs/a11yplayground-semantic-tokens.js.map +1 -1
  116. package/theme/colour-semantic/specs/lifesg-semantic-tokens.js +1 -1
  117. package/theme/colour-semantic/specs/lifesg-semantic-tokens.js.map +1 -1
  118. package/theme/colour-semantic/specs/pa-semantic-tokens.js +1 -1
  119. package/theme/colour-semantic/specs/pa-semantic-tokens.js.map +1 -1
  120. package/theme/colour-semantic/specs/sgwdigitallobby-tokens.js +1 -1
  121. package/theme/colour-semantic/specs/sgwdigitallobby-tokens.js.map +1 -1
  122. package/theme/colour-semantic/theme-helper.js +1 -1
  123. package/theme/colour-semantic/theme-helper.js.map +1 -1
  124. package/theme/colour-semantic/types.d.ts +8 -0
  125. package/theme/font/theme-helper.js +1 -1
  126. package/theme/font/theme-helper.js.map +1 -1
  127. package/theme/font-spec/theme-helper.js +1 -1
  128. package/theme/font-spec/theme-helper.js.map +1 -1
  129. package/theme/index.d.ts +27 -0
  130. package/theme/index.js +1 -1
  131. package/theme/index.js.map +1 -1
  132. package/theme/types.d.ts +3 -3
  133. package/timepicker/timepicker.js +1 -1
  134. package/timepicker/timepicker.js.map +1 -1
  135. package/timepicker/timepicker.styles.d.ts +6 -2
  136. package/timepicker/timepicker.styles.js +3 -2
  137. package/timepicker/timepicker.styles.js.map +1 -1
  138. package/cjs/theme/font/specs/smgs-font-set.js +0 -2
  139. package/cjs/theme/font/specs/smgs-font-set.js.map +0 -1
  140. package/cjs/theme/font-spec/specs/smgs-font-spec-set.js +0 -2
  141. package/cjs/theme/font-spec/specs/smgs-font-spec-set.js.map +0 -1
  142. package/theme/font/specs/smgs-font-set.d.ts +0 -2
  143. package/theme/font/specs/smgs-font-set.js +0 -2
  144. package/theme/font/specs/smgs-font-set.js.map +0 -1
  145. package/theme/font-spec/specs/smgs-font-spec-set.d.ts +0 -2
  146. package/theme/font-spec/specs/smgs-font-spec-set.js +0 -2
  147. package/theme/font-spec/specs/smgs-font-spec-set.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"error-display-data.js","sources":["../../../src/error-display/error-display-data.tsx"],"sourcesContent":["import { ResourceScheme, ThemeSpec } from \"../theme/types\";\nimport { renderDescriptionWithProps } from \"./error-display-helper-comp\";\nimport { ErrorDisplayHelper } from \"./helper\";\nimport {\n ErrorDisplayType,\n InactivityAdditionalAttributes,\n MaintenanceAdditionalAttributes,\n} from \"./types\";\n\nconst { imgAttributeHelper } = ErrorDisplayHelper;\n\n// =============================================================================\n// IMAGE PATHS\n// =============================================================================\n\nconst ImgPaths: Record<string, ErrorDisplayHelper.ImagePathAttributes> = {\n \"400\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/400.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/400@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/400@3x.png\",\n width: 400,\n height: 280,\n },\n \"403\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/403.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/403@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/403@3x.png\",\n width: 400,\n height: 280,\n },\n \"404\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/404.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/404@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/404@3x.png\",\n width: 400,\n height: 280,\n },\n \"408\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/408.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/408@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/408@3x.png\",\n width: 400,\n height: 280,\n },\n \"500\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error@3x.png\",\n width: 400,\n height: 280,\n },\n \"502\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/502.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/502@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/502@3x.png\",\n width: 400,\n height: 280,\n },\n \"503\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/503.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/503@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/503@3x.png\",\n width: 400,\n height: 280,\n },\n \"504\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/504.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/504@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/504@3x.png\",\n width: 400,\n height: 280,\n },\n confirmation: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/confirmation.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/confirmation@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/confirmation@3x.png\",\n width: 400,\n height: 280,\n },\n \"insufficient-credits\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/insuffcient-credit.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/insuffcient-credit@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/insuffcient-credit@3x.png\",\n width: 400,\n height: 280,\n },\n inactivity: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/inactivity.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/inactivity@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/inactivity@3x.png\",\n width: 400,\n height: 280,\n },\n \"link-error\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/link-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/link-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/link-error@3x.png\",\n width: 400,\n height: 280,\n },\n logout: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/logout.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/logout@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/logout@3x.png\",\n width: 400,\n height: 280,\n },\n \"no-item-found\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/no-item-found.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/no-item-found@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/no-item-found@3x.png\",\n width: 400,\n height: 280,\n },\n \"payment-unsuccessful\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/payment-unsuccessful.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/payment-unsuccessful@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/payment-unsuccessful@3x.png\",\n width: 400,\n height: 281,\n },\n \"transfer-unsuccessful\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/transfer-unsuccessful.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/transfer-unsuccessful@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/transfer-unsuccessful@3x.png\",\n width: 400,\n height: 280,\n },\n \"unsupported-browser\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error@3x.png\",\n width: 400,\n height: 280,\n },\n warning: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/warning.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/warning@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/warning@3x.png\",\n width: 400,\n height: 280,\n },\n};\n\nconst BsgImgPaths: Record<string, ErrorDisplayHelper.ImagePathAttributes> = {\n \"400\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/400.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/400@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/400@3x.png\",\n width: 400,\n height: 215,\n },\n \"403\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/403.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/403@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/403@3x.png\",\n width: 400,\n height: 254,\n },\n \"404\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/404.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/404@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/404@3x.png\",\n width: 400,\n height: 319,\n },\n \"408\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/408.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/408@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/408@3x.png\",\n width: 400,\n height: 330,\n },\n \"500\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error@3x.png\",\n width: 400,\n height: 232,\n },\n \"502\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/502.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/502@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/502@3x.png\",\n width: 400,\n height: 215,\n },\n \"503\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/503.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/503@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/503@3x.png\",\n width: 400,\n height: 191,\n },\n \"504\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/504.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/504@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/504@3x.png\",\n width: 400,\n height: 261,\n },\n confirmation: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/confirmation.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/confirmation@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/confirmation@3x.png\",\n width: 400,\n height: 280,\n },\n \"insufficient-credits\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/insuffcient-credit.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/insuffcient-credit@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/insuffcient-credit@3x.png\",\n width: 400,\n height: 280,\n },\n inactivity: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/inactivity.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/inactivity@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/inactivity@3x.png\",\n width: 400,\n height: 276,\n },\n \"link-error\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/link-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/link-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/link-error@3x.png\",\n width: 400,\n height: 280,\n },\n logout: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/logout.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/logout@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/logout@3x.png\",\n width: 400,\n height: 280,\n },\n \"no-item-found\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/no-item-found.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/no-item-found@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/no-item-found@3x.png\",\n width: 400,\n height: 290,\n },\n \"payment-unsuccessful\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/payment-unsuccessful.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/payment-unsuccessful@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/payment-unsuccessful@3x.png\",\n width: 400,\n height: 280,\n },\n \"transfer-unsuccessful\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/transfer-unsuccessful.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/transfer-unsuccessful@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/transfer-unsuccessful@3x.png\",\n width: 400,\n height: 280,\n },\n \"unsupported-browser\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error@3x.png\",\n width: 400,\n height: 232,\n },\n warning: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/warning.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/warning@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/warning@3x.png\",\n width: 400,\n height: 280,\n },\n};\n\nconst CCubeImgPaths: Record<string, ErrorDisplayHelper.ImagePathAttributes> = {\n ...ImgPaths,\n \"400\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/400.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/400@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/400@3x.png\",\n width: 400,\n height: 280,\n },\n \"404\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found@3x.png\",\n width: 400,\n height: 280,\n },\n \"500\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error@3x.png\",\n width: 400,\n height: 280,\n },\n confirmation: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/confirmation.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/confirmation@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/confirmation@3x.png\",\n width: 400,\n height: 280,\n },\n \"no-item-found\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found@3x.png\",\n width: 400,\n height: 280,\n },\n \"unsupported-browser\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error@3x.png\",\n width: 400,\n height: 280,\n },\n warning: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/warning.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/warning@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/warning@3x.png\",\n width: 400,\n height: 280,\n },\n};\n\nconst MyLegacyImgPaths: Record<string, ErrorDisplayHelper.ImagePathAttributes> =\n {\n ...ImgPaths,\n \"400\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/400.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/400@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/400@3x.png\",\n width: 400,\n height: 280,\n },\n \"403\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/403.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/403@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/403@3x.png\",\n width: 400,\n height: 280,\n },\n \"404\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/404.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/404@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/404@3x.png\",\n width: 400,\n height: 280,\n },\n \"408\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/408.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/408@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/408@3x.png\",\n width: 400,\n height: 280,\n },\n \"500\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/generic-error@3x.png\",\n width: 400,\n height: 280,\n },\n \"502\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/502.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/502@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/502@3x.png\",\n width: 400,\n height: 280,\n },\n \"503\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/503.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/503@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/503@3x.png\",\n width: 400,\n height: 280,\n },\n \"504\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/504.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/504@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/504@3x.png\",\n width: 400,\n height: 280,\n },\n confirmation: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/confirmation.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/confirmation@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/confirmation@3x.png\",\n width: 400,\n height: 280,\n },\n inactivity: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/inactivity.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/inactivity@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/inactivity@3x.png\",\n width: 400,\n height: 280,\n },\n \"link-error\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/link-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/link-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/link-error@3x.png\",\n width: 400,\n height: 280,\n },\n logout: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/logout.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/logout@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/logout@3x.png\",\n width: 400,\n height: 280,\n },\n warning: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/warning.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/warning@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/warning@3x.png\",\n width: 400,\n height: 280,\n },\n \"payment-unsuccessful\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/payment-unsuccessful.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/payment-unsuccessful@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/payment-unsuccessful@3x.png\",\n width: 400,\n height: 280,\n },\n \"no-item-found\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/no-item-found.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/no-item-found@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/no-item-found@3x.png\",\n width: 400,\n height: 280,\n },\n };\n\n// =============================================================================\n// ERROR DISPLAY ATTRIBUTES\n// =============================================================================\n\ninterface ErrorDisplayDataAttrs {\n img?: React.ImgHTMLAttributes<HTMLImageElement> | undefined;\n imgSrc?: string | undefined;\n title?: string | undefined;\n description?: string | JSX.Element | undefined;\n renderDescription?: (\n attrs?: MaintenanceAdditionalAttributes | InactivityAdditionalAttributes\n ) => JSX.Element | string | undefined;\n}\n\nexport const generateErrorDisplayData = (\n ImgPathsObject: Record<string, ErrorDisplayHelper.ImagePathAttributes>,\n theme?: ThemeSpec\n) =>\n new Map<ErrorDisplayType, ErrorDisplayDataAttrs>([\n [\n \"400\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"400\"], theme),\n title: \"Something went wrong\",\n description:\n \"This could be a temporary problem, so please refresh the page or try again later.\",\n },\n ],\n [\n \"403\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"403\"], theme),\n title: \"Error loading page\",\n description:\n \"You may not have permission to view this page. If someone gave you this link, let them know about this error.\",\n },\n ],\n [\n \"404\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"404\"], theme),\n title: \"Page not found\",\n description:\n \"If you entered or pasted the URL, check that it’s correct. If someone gave you this link, let them know about this error.\",\n },\n ],\n [\n \"408\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"408\"], theme),\n title: \"Something went wrong\",\n description:\n \"This could be a temporary problem, so please refresh the page or try again later.\",\n },\n ],\n [\n \"500\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"500\"], theme),\n title: \"Something went wrong\",\n description:\n \"We're working on a fix for the problem. Please try again later.\",\n },\n ],\n [\n \"502\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"502\"], theme),\n title: \"Something went wrong\",\n description:\n \"This could be a temporary problem, so please refresh the page or try again later.\",\n },\n ],\n [\n \"503\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"503\"], theme),\n title: \"Service under maintenance\",\n description:\n \"This service is currently unavailable. Please try again later.\",\n },\n ],\n [\n \"504\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"504\"], theme),\n title: \"Something went wrong\",\n description:\n \"This could be a temporary problem, so please refresh the page or try again later.\",\n },\n ],\n [\n \"confirmation\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"confirmation\"], theme),\n title: \"Leave and lose changes?\",\n description:\n \"You have unsaved changes. If you leave this page, you will lose the changes you’ve made.\",\n },\n ],\n [\n \"link-error\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"link-error\"], theme),\n title: \"Link has expired\",\n description:\n \"If you entered or pasted the URL, check that it’s correct. If someone gave you this link, let them know it has expired.\",\n },\n ],\n [\n \"logout\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"logout\"], theme),\n title: \"You’ve been logged out\",\n description:\n \"It looks like you’ve left, so we logged you out to protect your privacy.\",\n },\n ],\n [\n \"insufficient-credits\",\n {\n img: imgAttributeHelper(\n ImgPathsObject[\"insufficient-credits\"],\n theme\n ),\n title: \"Insufficient credits\",\n description:\n \"You do not have enough credits to make this transaction.\",\n },\n ],\n [\n \"inactivity\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"inactivity\"], theme),\n title: \"Are you still there?\",\n description:\n \"You’ve been inactive for a while. To protect your privacy, you’ll be logged out soon.\\n\\nIf you wish to stay on this page, let us know now.\",\n renderDescription: renderDescriptionWithProps(\"inactivity\"),\n },\n ],\n [\n \"maintenance\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"503\"], theme),\n title: \"Service under maintenance\",\n description:\n \"This service is currently unavailable. Please try again later.\",\n renderDescription: renderDescriptionWithProps(\"maintenance\"),\n },\n ],\n [\n \"no-item-found\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"no-item-found\"], theme),\n title: \"No results found\",\n description:\n \"Try adjusting your search or filters to find what you’re looking for.\",\n },\n ],\n [\n \"payment-unsuccessful\",\n {\n img: imgAttributeHelper(\n ImgPathsObject[\"payment-unsuccessful\"],\n theme\n ),\n title: \"Unsuccessful payment\",\n description: \"Your payment was unsuccessful. Please try again.\",\n },\n ],\n [\n \"transfer-unsuccessful\",\n {\n img: imgAttributeHelper(\n ImgPathsObject[\"transfer-unsuccessful\"],\n theme\n ),\n title: \"Unsuccessful transfer\",\n description:\n \"Your transfer was unsuccessful. Please try again.\",\n },\n ],\n [\n \"unsupported-browser\",\n {\n img: imgAttributeHelper(\n ImgPathsObject[\"unsupported-browser\"],\n theme\n ),\n title: \"Browser not supported\",\n description:\n \"Download the latest version of Chrome, Edge, Firefox or Safari.\",\n },\n ],\n [\n \"partially-supported-browser\",\n {\n img: imgAttributeHelper(\n ImgPathsObject[\"unsupported-browser\"],\n theme\n ),\n title: \"Browser version not supported\",\n description:\n \"Update to the latest version of Chrome, Edge, Firefox or Safari.\",\n },\n ],\n [\n \"warning\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"warning\"], theme),\n title: \"Are you sure?\",\n description: \"You will lose your progress.\",\n },\n ],\n ]);\n\nexport const getErrorDisplayData = (\n type: ErrorDisplayType,\n resourceScheme: ResourceScheme,\n theme?: ThemeSpec\n) => {\n switch (resourceScheme) {\n case \"bookingsg\":\n return generateErrorDisplayData(BsgImgPaths, theme).get(type);\n case \"ccube\":\n return generateErrorDisplayData(CCubeImgPaths, theme).get(type);\n case \"mylegacy\":\n return generateErrorDisplayData(MyLegacyImgPaths, theme).get(type);\n default:\n return generateErrorDisplayData(ImgPaths, theme).get(type);\n }\n};\n"],"names":["imgAttributeHelper","ErrorDisplayHelper","ImgPaths","base","md","lg","width","height","confirmation","inactivity","logout","warning","BsgImgPaths","CCubeImgPaths","Object","assign","MyLegacyImgPaths","generateErrorDisplayData","ImgPathsObject","theme","Map","img","title","description","renderDescription","renderDescriptionWithProps","type","resourceScheme","get"],"mappings":"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"}
1
+ {"version":3,"file":"error-display-data.js","sources":["../../../src/error-display/error-display-data.tsx"],"sourcesContent":["import { ResourceScheme, ThemeSpec } from \"../theme/types\";\nimport { renderDescriptionWithProps } from \"./error-display-helper-comp\";\nimport { ErrorDisplayHelper } from \"./helper\";\nimport {\n ErrorDisplayType,\n InactivityAdditionalAttributes,\n MaintenanceAdditionalAttributes,\n} from \"./types\";\n\nconst { imgAttributeHelper } = ErrorDisplayHelper;\n\n// =============================================================================\n// IMAGE PATHS\n// =============================================================================\n\nconst ImgPaths: Record<string, ErrorDisplayHelper.ImagePathAttributes> = {\n \"400\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/400.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/400@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/400@3x.png\",\n width: 400,\n height: 280,\n },\n \"403\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/403.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/403@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/403@3x.png\",\n width: 400,\n height: 280,\n },\n \"404\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/404.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/404@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/404@3x.png\",\n width: 400,\n height: 280,\n },\n \"408\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/408.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/408@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/408@3x.png\",\n width: 400,\n height: 280,\n },\n \"500\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error@3x.png\",\n width: 400,\n height: 280,\n },\n \"502\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/502.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/502@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/502@3x.png\",\n width: 400,\n height: 280,\n },\n \"503\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/503.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/503@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/503@3x.png\",\n width: 400,\n height: 280,\n },\n \"504\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/504.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/504@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/504@3x.png\",\n width: 400,\n height: 280,\n },\n confirmation: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/confirmation.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/confirmation@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/confirmation@3x.png\",\n width: 400,\n height: 280,\n },\n \"insufficient-credits\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/insuffcient-credit.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/insuffcient-credit@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/insuffcient-credit@3x.png\",\n width: 400,\n height: 280,\n },\n inactivity: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/inactivity.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/inactivity@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/inactivity@3x.png\",\n width: 400,\n height: 280,\n },\n \"link-error\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/link-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/link-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/link-error@3x.png\",\n width: 400,\n height: 280,\n },\n logout: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/logout.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/logout@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/logout@3x.png\",\n width: 400,\n height: 280,\n },\n \"no-item-found\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/no-item-found.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/no-item-found@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/no-item-found@3x.png\",\n width: 400,\n height: 280,\n },\n \"payment-unsuccessful\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/payment-unsuccessful.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/payment-unsuccessful@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/payment-unsuccessful@3x.png\",\n width: 400,\n height: 281,\n },\n \"transfer-unsuccessful\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/transfer-unsuccessful.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/transfer-unsuccessful@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/transfer-unsuccessful@3x.png\",\n width: 400,\n height: 280,\n },\n \"unsupported-browser\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/generic-error@3x.png\",\n width: 400,\n height: 280,\n },\n warning: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/warning.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/warning@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/warning@3x.png\",\n width: 400,\n height: 280,\n },\n};\n\nconst BsgImgPaths: Record<string, ErrorDisplayHelper.ImagePathAttributes> = {\n \"400\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/400.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/400@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/400@3x.png\",\n width: 400,\n height: 215,\n },\n \"403\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/403.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/403@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/403@3x.png\",\n width: 400,\n height: 254,\n },\n \"404\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/404.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/404@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/404@3x.png\",\n width: 400,\n height: 319,\n },\n \"408\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/408.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/408@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/408@3x.png\",\n width: 400,\n height: 330,\n },\n \"500\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error@3x.png\",\n width: 400,\n height: 232,\n },\n \"502\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/502.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/502@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/502@3x.png\",\n width: 400,\n height: 215,\n },\n \"503\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/503.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/503@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/503@3x.png\",\n width: 400,\n height: 191,\n },\n \"504\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/504.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/504@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/504@3x.png\",\n width: 400,\n height: 261,\n },\n confirmation: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/confirmation.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/confirmation@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/confirmation@3x.png\",\n width: 400,\n height: 280,\n },\n \"insufficient-credits\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/insuffcient-credit.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/insuffcient-credit@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/insuffcient-credit@3x.png\",\n width: 400,\n height: 280,\n },\n inactivity: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/inactivity.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/inactivity@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/inactivity@3x.png\",\n width: 400,\n height: 276,\n },\n \"link-error\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/link-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/link-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/link-error@3x.png\",\n width: 400,\n height: 280,\n },\n logout: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/logout.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/logout@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/logout@3x.png\",\n width: 400,\n height: 280,\n },\n \"no-item-found\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/no-item-found.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/no-item-found@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/no-item-found@3x.png\",\n width: 400,\n height: 290,\n },\n \"payment-unsuccessful\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/payment-unsuccessful.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/payment-unsuccessful@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/payment-unsuccessful@3x.png\",\n width: 400,\n height: 280,\n },\n \"transfer-unsuccessful\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/transfer-unsuccessful.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/transfer-unsuccessful@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/transfer-unsuccessful@3x.png\",\n width: 400,\n height: 280,\n },\n \"unsupported-browser\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/generic-error@3x.png\",\n width: 400,\n height: 232,\n },\n warning: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/warning.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/warning@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/bsg/warning@3x.png\",\n width: 400,\n height: 280,\n },\n};\n\nconst CCubeImgPaths: Record<string, ErrorDisplayHelper.ImagePathAttributes> = {\n ...ImgPaths,\n \"400\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/400.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/400@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/400@3x.png\",\n width: 400,\n height: 280,\n },\n \"404\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found@3x.png\",\n width: 400,\n height: 280,\n },\n \"500\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error@3x.png\",\n width: 400,\n height: 280,\n },\n confirmation: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/confirmation.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/confirmation@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/confirmation@3x.png\",\n width: 400,\n height: 280,\n },\n \"no-item-found\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/no-item-found@3x.png\",\n width: 400,\n height: 280,\n },\n \"unsupported-browser\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/generic-error@3x.png\",\n width: 400,\n height: 280,\n },\n warning: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/warning.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/warning@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/ccube/warning@3x.png\",\n width: 400,\n height: 280,\n },\n};\n\nconst MyLegacyImgPaths: Record<string, ErrorDisplayHelper.ImagePathAttributes> =\n {\n ...ImgPaths,\n \"400\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/400.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/400@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/400@3x.png\",\n width: 400,\n height: 280,\n },\n \"403\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/403.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/403@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/403@3x.png\",\n width: 400,\n height: 280,\n },\n \"404\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/404.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/404@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/404@3x.png\",\n width: 400,\n height: 280,\n },\n \"408\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/408.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/408@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/408@3x.png\",\n width: 400,\n height: 280,\n },\n \"500\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/generic-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/generic-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/generic-error@3x.png\",\n width: 400,\n height: 280,\n },\n \"502\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/502.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/502@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/502@3x.png\",\n width: 400,\n height: 280,\n },\n \"503\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/503.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/503@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/503@3x.png\",\n width: 400,\n height: 280,\n },\n \"504\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/504.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/504@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/504@3x.png\",\n width: 400,\n height: 280,\n },\n confirmation: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/confirmation.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/confirmation@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/confirmation@3x.png\",\n width: 400,\n height: 280,\n },\n inactivity: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/inactivity.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/inactivity@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/inactivity@3x.png\",\n width: 400,\n height: 280,\n },\n \"link-error\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/link-error.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/link-error@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/link-error@3x.png\",\n width: 400,\n height: 280,\n },\n logout: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/logout.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/logout@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/logout@3x.png\",\n width: 400,\n height: 280,\n },\n warning: {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/warning.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/warning@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/warning@3x.png\",\n width: 400,\n height: 280,\n },\n \"payment-unsuccessful\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/payment-unsuccessful.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/payment-unsuccessful@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/payment-unsuccessful@3x.png\",\n width: 400,\n height: 280,\n },\n \"no-item-found\": {\n base: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/no-item-found.png\",\n md: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/no-item-found@2x.png\",\n lg: \"https://assets.life.gov.sg/react-design-system/img/error/mylegacy/no-item-found@3x.png\",\n width: 400,\n height: 280,\n },\n };\n\n// =============================================================================\n// ERROR DISPLAY ATTRIBUTES\n// =============================================================================\n\ninterface ErrorDisplayDataAttrs {\n img?: React.ImgHTMLAttributes<HTMLImageElement> | undefined;\n imgSrc?: string | undefined;\n title?: string | undefined;\n description?: string | JSX.Element | undefined;\n renderDescription?: (\n attrs?: MaintenanceAdditionalAttributes | InactivityAdditionalAttributes\n ) => JSX.Element | string | undefined;\n}\n\nexport const generateErrorDisplayData = (\n ImgPathsObject: Record<string, ErrorDisplayHelper.ImagePathAttributes>,\n theme?: ThemeSpec\n) =>\n new Map<ErrorDisplayType, ErrorDisplayDataAttrs>([\n [\n \"400\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"400\"], theme),\n title: \"Something went wrong\",\n description:\n \"This could be a temporary problem, so please refresh the page or try again later.\",\n },\n ],\n [\n \"403\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"403\"], theme),\n title: \"Error loading page\",\n description:\n \"You may not have permission to view this page. If someone gave you this link, let them know about this error.\",\n },\n ],\n [\n \"404\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"404\"], theme),\n title: \"Page not found\",\n description:\n \"If you entered or pasted the URL, check that it’s correct. If someone gave you this link, let them know about this error.\",\n },\n ],\n [\n \"408\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"408\"], theme),\n title: \"Something went wrong\",\n description:\n \"This could be a temporary problem, so please refresh the page or try again later.\",\n },\n ],\n [\n \"500\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"500\"], theme),\n title: \"Something went wrong\",\n description:\n \"We're working on a fix for the problem. Please try again later.\",\n },\n ],\n [\n \"502\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"502\"], theme),\n title: \"Something went wrong\",\n description:\n \"This could be a temporary problem, so please refresh the page or try again later.\",\n },\n ],\n [\n \"503\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"503\"], theme),\n title: \"Service under maintenance\",\n description:\n \"This service is currently unavailable. Please try again later.\",\n },\n ],\n [\n \"504\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"504\"], theme),\n title: \"Something went wrong\",\n description:\n \"This could be a temporary problem, so please refresh the page or try again later.\",\n },\n ],\n [\n \"confirmation\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"confirmation\"], theme),\n title: \"Leave and lose changes?\",\n description:\n \"You have unsaved changes. If you leave this page, you will lose the changes you’ve made.\",\n },\n ],\n [\n \"link-error\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"link-error\"], theme),\n title: \"Link has expired\",\n description:\n \"If you entered or pasted the URL, check that it’s correct. If someone gave you this link, let them know it has expired.\",\n },\n ],\n [\n \"logout\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"logout\"], theme),\n title: \"You’ve been logged out\",\n description:\n \"It looks like you’ve left, so we logged you out to protect your privacy.\",\n },\n ],\n [\n \"insufficient-credits\",\n {\n img: imgAttributeHelper(\n ImgPathsObject[\"insufficient-credits\"],\n theme\n ),\n title: \"Insufficient credits\",\n description:\n \"You do not have enough credits to make this transaction.\",\n },\n ],\n [\n \"inactivity\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"inactivity\"], theme),\n title: \"Are you still there?\",\n description:\n \"You’ve been inactive for a while. To protect your privacy, you’ll be logged out soon.\\n\\nIf you wish to stay on this page, let us know now.\",\n renderDescription: renderDescriptionWithProps(\"inactivity\"),\n },\n ],\n [\n \"maintenance\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"503\"], theme),\n title: \"Service under maintenance\",\n description:\n \"This service is currently unavailable. Please try again later.\",\n renderDescription: renderDescriptionWithProps(\"maintenance\"),\n },\n ],\n [\n \"no-item-found\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"no-item-found\"], theme),\n title: \"No results found\",\n description:\n \"Try adjusting your search or filters to find what you’re looking for.\",\n },\n ],\n [\n \"payment-unsuccessful\",\n {\n img: imgAttributeHelper(\n ImgPathsObject[\"payment-unsuccessful\"],\n theme\n ),\n title: \"Unsuccessful payment\",\n description: \"Your payment was unsuccessful. Please try again.\",\n },\n ],\n [\n \"transfer-unsuccessful\",\n {\n img: imgAttributeHelper(\n ImgPathsObject[\"transfer-unsuccessful\"],\n theme\n ),\n title: \"Unsuccessful transfer\",\n description:\n \"Your transfer was unsuccessful. Please try again.\",\n },\n ],\n [\n \"unsupported-browser\",\n {\n img: imgAttributeHelper(\n ImgPathsObject[\"unsupported-browser\"],\n theme\n ),\n title: \"Browser not supported\",\n description:\n \"Download the latest version of Chrome, Edge, Firefox or Safari.\",\n },\n ],\n [\n \"partially-supported-browser\",\n {\n img: imgAttributeHelper(\n ImgPathsObject[\"unsupported-browser\"],\n theme\n ),\n title: \"Browser version not supported\",\n description:\n \"Update to the latest version of Chrome, Edge, Firefox or Safari.\",\n },\n ],\n [\n \"warning\",\n {\n img: imgAttributeHelper(ImgPathsObject[\"warning\"], theme),\n title: \"Are you sure?\",\n description: \"You will lose your progress.\",\n },\n ],\n ]);\n\nexport const getErrorDisplayData = (\n type: ErrorDisplayType,\n resourceScheme: ResourceScheme,\n theme?: ThemeSpec\n) => {\n switch (resourceScheme) {\n case \"bookingsg\":\n return generateErrorDisplayData(BsgImgPaths, theme).get(type);\n case \"ccube\":\n return generateErrorDisplayData(CCubeImgPaths, theme).get(type);\n case \"mylegacy\":\n case \"smgs\":\n return generateErrorDisplayData(MyLegacyImgPaths, theme).get(type);\n default:\n return generateErrorDisplayData(ImgPaths, theme).get(type);\n }\n};\n"],"names":["imgAttributeHelper","ErrorDisplayHelper","ImgPaths","base","md","lg","width","height","confirmation","inactivity","logout","warning","BsgImgPaths","CCubeImgPaths","Object","assign","MyLegacyImgPaths","generateErrorDisplayData","ImgPathsObject","theme","Map","img","title","description","renderDescription","renderDescriptionWithProps","type","resourceScheme","get"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";var e=require("react/jsx-runtime"),r=require("../badge/badge.js");exports.FilterBadge=({count:a})=>void 0!==a&&a>0?e.jsx(r.Badge,{count:a,variant:"square-number","aria-label":`${a} selected`}):null;
2
+ //# sourceMappingURL=filter-badge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-badge.js","sources":["../../../src/filter/filter-badge.tsx"],"sourcesContent":["import { Badge } from \"../badge\";\n\ninterface FilterBadgeProps {\n count?: number;\n}\n\nexport const FilterBadge = ({ count }: FilterBadgeProps) =>\n count !== undefined && count > 0 ? (\n <Badge\n count={count}\n variant=\"square-number\"\n aria-label={`${count} selected`}\n />\n ) : null;\n"],"names":["count","undefined","_jsx","Badge","variant"],"mappings":"mGAM2B,EAAGA,gBAChBC,IAAVD,GAAuBA,EAAQ,EAC3BE,EAAAA,IAACC,EAAAA,MAAK,CACFH,MAAOA,EACPI,QAAQ,6BACI,GAAGJ,eAEnB"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("../_virtual/_tslib.js"),t=require("react/jsx-runtime"),l=require("@floating-ui/react"),i=require("@lifesg/react-icons"),r=require("react"),o=require("../overlay/overlay.js"),n=require("../shared/accessibility/index.js"),s=require("./filter-context.js"),a=require("./filter-modal.styles.js"),d=require("./filter.styles.js");const u=u=>{var{customLabels:c,onClear:b,onDone:h,onDismiss:g,onModalOpen:j,toggleFilterButtonStyle:x="light",clearButtonDisabled:F=!1,insets:v,children:f,toggleFilterButtonLabel:y,headerTitle:B,doneButtonLabel:m}=u,p=e.__rest(u,["customLabels","onClear","onDone","onDismiss","onModalOpen","toggleFilterButtonStyle","clearButtonDisabled","insets","children","toggleFilterButtonLabel","headerTitle","doneButtonLabel"]);const{context:C,refs:q}=l.useFloating(),L=r.useRef(null),[D,T]=r.useState(!1),M={toggle:(null==c?void 0:c.toggleFilterButtonLabel)||y||"Filters",title:(null==c?void 0:c.headerTitle)||B||"Filters",done:(null==c?void 0:c.doneButtonLabel)||m||"Done",clear:(null==c?void 0:c.clearButtonLabel)||"Clear"};return r.useEffect((()=>{var e;D&&(null===(e=L.current)||void 0===e||e.focus())}),[D]),t.jsxs(s.FilterContext.Provider,{value:{mode:"mobile",rootNode:L},children:[t.jsx("div",Object.assign({},p,{children:t.jsx(a.FilterButton,{"data-testid":"filter-show-button",styleType:x,onClick:()=>{T(!0),null==j||j()},type:"button",icon:t.jsx(i.FilterIcon,{}),children:M.toggle})})),t.jsx(o.Overlay,{show:D,disableTransition:!0,children:t.jsx(a.FloatingWrapper,{inert:n.inertValue(!D),children:t.jsx(l.FloatingFocusManager,{context:C,disabled:!D,children:t.jsx(a.MobileOverlayContainer,{"data-id":"filter-mobile","data-testid":"filter-mobile",ref:q.setFloating,children:t.jsxs(a.MobileContainer,{ref:L,tabIndex:0,children:[t.jsxs(a.FilterHeader,{$insetTop:null==v?void 0:v.top,children:[t.jsx(d.FilterHeaderButton,{onClick:()=>{T(!1),null==g||g()},focusOutline:"browser",focusHighlight:!1,"aria-label":`close ${M.title}`,children:t.jsx(i.CrossIcon,{})}),t.jsx(a.FilterTitle,{children:M.title}),t.jsx(a.FilterClearButton,{styleType:"link",type:"button",onClick:()=>null==b?void 0:b(),disabled:F,"aria-label":`clear ${M.title}`,children:M.clear})]}),t.jsx(d.FilterBody,{children:f}),t.jsx(d.FilterFooter,{$insetBottom:null==v?void 0:v.bottom,children:t.jsx(d.FilterDoneButton,{onClick:()=>{T(!1),null==h||h()},children:M.done})})]})})})})})]})};u.displayName="Filter.Modal",exports.FilterModal=u;
1
+ "use strict";var e=require("../_virtual/_tslib.js"),t=require("react/jsx-runtime"),l=require("@floating-ui/react"),i=require("@lifesg/react-icons"),r=require("react"),o=require("../overlay/overlay.js"),n=require("../shared/accessibility/index.js"),s=require("./filter-badge.js"),a=require("./filter-context.js"),d=require("./filter-modal.styles.js"),u=require("./filter.styles.js");const c=c=>{var{customLabels:b,onClear:j,onDone:g,onDismiss:x,onModalOpen:h,toggleFilterButtonStyle:F="light",clearButtonDisabled:v=!1,insets:B,count:f,children:y,toggleFilterButtonLabel:p,headerTitle:m,doneButtonLabel:C}=c,q=e.__rest(c,["customLabels","onClear","onDone","onDismiss","onModalOpen","toggleFilterButtonStyle","clearButtonDisabled","insets","count","children","toggleFilterButtonLabel","headerTitle","doneButtonLabel"]);const{context:T,refs:L}=l.useFloating(),D=r.useRef(null),[M,O]=r.useState(!1),k={toggle:(null==b?void 0:b.toggleFilterButtonLabel)||p||"Filters",title:(null==b?void 0:b.headerTitle)||m||"Filters",done:(null==b?void 0:b.doneButtonLabel)||C||"Done",clear:(null==b?void 0:b.clearButtonLabel)||"Clear"};return r.useEffect((()=>{var e;M&&(null===(e=D.current)||void 0===e||e.focus())}),[M]),t.jsxs(a.FilterContext.Provider,{value:{mode:"mobile",rootNode:D},children:[t.jsx("div",Object.assign({},q,{children:t.jsx(d.FilterButton,{"data-testid":"filter-show-button",styleType:F,onClick:()=>{O(!0),null==h||h()},type:"button",icon:t.jsx(i.FilterIcon,{}),children:t.jsxs(d.FilterToggleContent,{children:[t.jsx("span",{children:k.toggle}),t.jsx(s.FilterBadge,{count:f})]})})})),t.jsx(o.Overlay,{show:M,disableTransition:!0,children:t.jsx(d.FloatingWrapper,{inert:n.inertValue(!M),children:t.jsx(l.FloatingFocusManager,{context:T,disabled:!M,children:t.jsx(d.MobileOverlayContainer,{"data-id":"filter-mobile","data-testid":"filter-mobile",ref:L.setFloating,children:t.jsxs(d.MobileContainer,{ref:D,tabIndex:0,children:[t.jsxs(d.FilterHeader,{$insetTop:null==B?void 0:B.top,children:[t.jsx(u.FilterHeaderButton,{onClick:()=>{O(!1),null==x||x()},focusOutline:"browser",focusHighlight:!1,"aria-label":`close ${k.title}`,children:t.jsx(i.CrossIcon,{})}),t.jsxs(d.FilterTitleGroup,{children:[t.jsx(d.FilterTitle,{children:k.title}),t.jsx(s.FilterBadge,{count:f})]}),t.jsx(d.FilterClearButton,{styleType:"link",type:"button",onClick:()=>null==j?void 0:j(),disabled:v,"aria-label":`clear ${k.title}`,children:k.clear})]}),t.jsx(u.FilterBody,{children:y}),t.jsx(u.FilterFooter,{$insetBottom:null==B?void 0:B.bottom,children:t.jsx(u.FilterDoneButton,{onClick:()=>{O(!1),null==g||g()},children:k.done})})]})})})})})]})};c.displayName="Filter.Modal",exports.FilterModal=c;
2
2
  //# sourceMappingURL=filter-modal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter-modal.js","sources":["../../../src/filter/filter-modal.tsx"],"sourcesContent":["import { FloatingFocusManager, useFloating } from \"@floating-ui/react\";\nimport { CrossIcon, FilterIcon } from \"@lifesg/react-icons\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { Overlay } from \"src/overlay\";\nimport { inertValue } from \"src/shared/accessibility\";\nimport { FilterContext } from \"./filter-context\";\nimport {\n FilterButton,\n FilterClearButton,\n FilterHeader,\n FilterTitle,\n FloatingWrapper,\n MobileContainer,\n MobileOverlayContainer,\n} from \"./filter-modal.styles\";\nimport { FilterModalProps } from \"./types\";\nimport {\n FilterBody,\n FilterDoneButton,\n FilterFooter,\n FilterHeaderButton,\n} from \"./filter.styles\";\n\nexport const FilterModal = ({\n customLabels,\n onClear,\n onDone,\n onDismiss,\n onModalOpen,\n toggleFilterButtonStyle = \"light\",\n clearButtonDisabled = false,\n insets,\n children,\n toggleFilterButtonLabel: _toggleFilterButtonLabel,\n headerTitle: _headerTitle,\n doneButtonLabel: _doneButtonLabel,\n ...otherProps\n}: FilterModalProps) => {\n const { context, refs } = useFloating();\n const nodeRef = useRef<HTMLDivElement>(null);\n\n const [visible, setVisible] = useState(false);\n\n const handleShow = () => setVisible(true);\n const handleDismiss = () => {\n setVisible(false);\n onDismiss?.();\n };\n const handleDone = () => {\n setVisible(false);\n onDone?.();\n };\n\n const handleShowFilter = () => {\n handleShow();\n onModalOpen?.();\n };\n\n const labels = {\n toggle:\n customLabels?.toggleFilterButtonLabel ||\n _toggleFilterButtonLabel ||\n \"Filters\",\n title: customLabels?.headerTitle || _headerTitle || \"Filters\",\n done: customLabels?.doneButtonLabel || _doneButtonLabel || \"Done\",\n clear: customLabels?.clearButtonLabel || \"Clear\",\n };\n\n useEffect(() => {\n if (visible) {\n nodeRef.current?.focus();\n }\n }, [visible]);\n\n return (\n <FilterContext.Provider value={{ mode: \"mobile\", rootNode: nodeRef }}>\n <div {...otherProps}>\n <FilterButton\n data-testid=\"filter-show-button\"\n styleType={toggleFilterButtonStyle}\n onClick={handleShowFilter}\n type=\"button\"\n icon={<FilterIcon />}\n >\n {labels.toggle}\n </FilterButton>\n </div>\n <Overlay show={visible} disableTransition>\n <FloatingWrapper inert={inertValue(!visible)}>\n <FloatingFocusManager context={context} disabled={!visible}>\n <MobileOverlayContainer\n data-id=\"filter-mobile\"\n data-testid=\"filter-mobile\"\n ref={refs.setFloating}\n >\n <MobileContainer ref={nodeRef} tabIndex={0}>\n <FilterHeader $insetTop={insets?.top}>\n <FilterHeaderButton\n onClick={handleDismiss}\n focusOutline=\"browser\"\n focusHighlight={false}\n aria-label={`close ${labels.title}`}\n >\n <CrossIcon />\n </FilterHeaderButton>\n <FilterTitle>{labels.title}</FilterTitle>\n <FilterClearButton\n styleType=\"link\"\n type=\"button\"\n onClick={() => onClear?.()}\n disabled={clearButtonDisabled}\n aria-label={`clear ${labels.title}`}\n >\n {labels.clear}\n </FilterClearButton>\n </FilterHeader>\n <FilterBody>{children}</FilterBody>\n <FilterFooter $insetBottom={insets?.bottom}>\n <FilterDoneButton onClick={handleDone}>\n {labels.done}\n </FilterDoneButton>\n </FilterFooter>\n </MobileContainer>\n </MobileOverlayContainer>\n </FloatingFocusManager>\n </FloatingWrapper>\n </Overlay>\n </FilterContext.Provider>\n );\n};\n\nFilterModal.displayName = \"Filter.Modal\";\n"],"names":["FilterModal","_a","customLabels","onClear","onDone","onDismiss","onModalOpen","toggleFilterButtonStyle","clearButtonDisabled","insets","children","toggleFilterButtonLabel","_toggleFilterButtonLabel","headerTitle","_headerTitle","doneButtonLabel","_doneButtonLabel","otherProps","__rest","context","refs","useFloating","nodeRef","useRef","visible","setVisible","useState","labels","toggle","title","done","clear","clearButtonLabel","useEffect","current","focus","_jsxs","FilterContext","Provider","value","mode","rootNode","_jsx","Object","assign","FilterButton","styleType","onClick","type","icon","FilterIcon","Overlay","show","disableTransition","FloatingWrapper","inert","inertValue","FloatingFocusManager","disabled","MobileOverlayContainer","ref","setFloating","MobileContainer","tabIndex","FilterHeader","$insetTop","top","FilterHeaderButton","focusOutline","focusHighlight","CrossIcon","FilterTitle","FilterClearButton","FilterBody","FilterFooter","$insetBottom","bottom","FilterDoneButton","displayName"],"mappings":"+VAuBO,MAAMA,EAAeC,IAAA,IAAAC,aACxBA,EAAYC,QACZA,EAAOC,OACPA,EAAMC,UACNA,EAASC,YACTA,EAAWC,wBACXA,EAA0B,QAAOC,oBACjCA,GAAsB,EAAKC,OAC3BA,EAAMC,SACNA,EACAC,wBAAyBC,EACzBC,YAAaC,EACbC,gBAAiBC,GAAgBf,EAC9BgB,EAAUC,SAAAjB,EAbW,6LAexB,MAAMkB,QAAEA,EAAOC,KAAEA,GAASC,gBACpBC,EAAUC,EAAAA,OAAuB,OAEhCC,EAASC,GAAcC,EAAAA,UAAS,GAiBjCC,EAAS,CACXC,QACI1B,aAAY,EAAZA,EAAcS,0BACdC,GACA,UACJiB,OAAO3B,aAAY,EAAZA,EAAcW,cAAeC,GAAgB,UACpDgB,MAAM5B,aAAY,EAAZA,EAAca,kBAAmBC,GAAoB,OAC3De,OAAO7B,eAAAA,EAAc8B,mBAAoB,SAS7C,OANAC,EAAAA,WAAU,WACFT,IACe,QAAfvB,EAAAqB,EAAQY,eAAO,IAAAjC,GAAAA,EAAEkC,QACrB,GACD,CAACX,IAGAY,EAAAA,KAACC,gBAAcC,UAASC,MAAO,CAAEC,KAAM,SAAUC,SAAUnB,GAASZ,SAAA,CAChEgC,EAAAA,IAAA,MAAAC,OAAAC,OAAA,GAAS3B,EAAU,CAAAP,SACfgC,EAAAA,IAACG,eAAY,CAAA,cACG,qBACZC,UAAWvC,EACXwC,QA3BS,KAVAtB,GAAW,GAYhCnB,SAAAA,GAAe,EA0BH0C,KAAK,SACLC,KAAMP,EAAAA,IAACQ,EAAAA,WAAU,CAAA,GAAGxC,SAEnBiB,EAAOC,YAGhBc,MAACS,EAAAA,QAAO,CAACC,KAAM5B,EAAS6B,mBAAiB,EAAA3C,SACrCgC,EAAAA,IAACY,kBAAe,CAACC,MAAOC,cAAYhC,YAChCkB,EAAAA,IAACe,EAAAA,qBAAoB,CAACtC,QAASA,EAASuC,UAAWlC,EAAOd,SACtDgC,EAAAA,IAACiB,oCACW,gBAAe,cACX,gBACZC,IAAKxC,EAAKyC,YAAWnD,SAErB0B,EAAAA,KAAC0B,EAAAA,gBAAe,CAACF,IAAKtC,EAASyC,SAAU,EAACrD,SAAA,CACtC0B,EAAAA,KAAC4B,eAAY,CAAAC,UAAYxD,aAAM,EAANA,EAAQyD,IAAGxD,SAAA,CAChCgC,EAAAA,IAACyB,EAAAA,mBAAkB,CACfpB,QAtDd,KAClBtB,GAAW,GACXpB,SAAAA,GAAa,EAqDmB+D,aAAa,UACbC,gBAAgB,EAAK,aACT,SAAS1C,EAAOE,QAAOnB,SAEnCgC,EAAAA,IAAC4B,YAAS,CAAA,KAEd5B,EAAAA,IAAC6B,EAAAA,YAAW,CAAA7D,SAAEiB,EAAOE,QACrBa,EAAAA,IAAC8B,oBAAiB,CACd1B,UAAU,OACVE,KAAK,SACLD,QAAS,IAAM5C,eAAAA,IACfuD,SAAUlD,eACE,SAASmB,EAAOE,QAAOnB,SAElCiB,EAAOI,WAGhBW,MAAC+B,EAAAA,WAAU,CAAA/D,SAAEA,IACbgC,EAAAA,IAACgC,EAAAA,aAAY,CAAAC,aAAelE,aAAM,EAANA,EAAQmE,gBAChClC,EAAAA,IAACmC,EAAAA,iBAAgB,CAAC9B,QAtE/B,KACftB,GAAW,GACXrB,SAAAA,GAAU,WAqEuBuB,EAAOG,sBAQf,EAIjC9B,EAAY8E,YAAc"}
1
+ {"version":3,"file":"filter-modal.js","sources":["../../../src/filter/filter-modal.tsx"],"sourcesContent":["import { FloatingFocusManager, useFloating } from \"@floating-ui/react\";\nimport { CrossIcon, FilterIcon } from \"@lifesg/react-icons\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { Overlay } from \"src/overlay\";\nimport { inertValue } from \"src/shared/accessibility\";\nimport { FilterBadge } from \"./filter-badge\";\nimport { FilterContext } from \"./filter-context\";\nimport {\n FilterButton,\n FilterClearButton,\n FilterHeader,\n FilterTitle,\n FilterTitleGroup,\n FilterToggleContent,\n FloatingWrapper,\n MobileContainer,\n MobileOverlayContainer,\n} from \"./filter-modal.styles\";\nimport { FilterModalProps } from \"./types\";\nimport {\n FilterBody,\n FilterDoneButton,\n FilterFooter,\n FilterHeaderButton,\n} from \"./filter.styles\";\n\nexport const FilterModal = ({\n customLabels,\n onClear,\n onDone,\n onDismiss,\n onModalOpen,\n toggleFilterButtonStyle = \"light\",\n clearButtonDisabled = false,\n insets,\n count,\n children,\n toggleFilterButtonLabel: _toggleFilterButtonLabel,\n headerTitle: _headerTitle,\n doneButtonLabel: _doneButtonLabel,\n ...otherProps\n}: FilterModalProps) => {\n const { context, refs } = useFloating();\n const nodeRef = useRef<HTMLDivElement>(null);\n\n const [visible, setVisible] = useState(false);\n\n const handleShow = () => setVisible(true);\n const handleDismiss = () => {\n setVisible(false);\n onDismiss?.();\n };\n const handleDone = () => {\n setVisible(false);\n onDone?.();\n };\n\n const handleShowFilter = () => {\n handleShow();\n onModalOpen?.();\n };\n\n const labels = {\n toggle:\n customLabels?.toggleFilterButtonLabel ||\n _toggleFilterButtonLabel ||\n \"Filters\",\n title: customLabels?.headerTitle || _headerTitle || \"Filters\",\n done: customLabels?.doneButtonLabel || _doneButtonLabel || \"Done\",\n clear: customLabels?.clearButtonLabel || \"Clear\",\n };\n\n useEffect(() => {\n if (visible) {\n nodeRef.current?.focus();\n }\n }, [visible]);\n\n return (\n <FilterContext.Provider value={{ mode: \"mobile\", rootNode: nodeRef }}>\n <div {...otherProps}>\n <FilterButton\n data-testid=\"filter-show-button\"\n styleType={toggleFilterButtonStyle}\n onClick={handleShowFilter}\n type=\"button\"\n icon={<FilterIcon />}\n >\n <FilterToggleContent>\n <span>{labels.toggle}</span>\n <FilterBadge count={count} />\n </FilterToggleContent>\n </FilterButton>\n </div>\n <Overlay show={visible} disableTransition>\n <FloatingWrapper inert={inertValue(!visible)}>\n <FloatingFocusManager context={context} disabled={!visible}>\n <MobileOverlayContainer\n data-id=\"filter-mobile\"\n data-testid=\"filter-mobile\"\n ref={refs.setFloating}\n >\n <MobileContainer ref={nodeRef} tabIndex={0}>\n <FilterHeader $insetTop={insets?.top}>\n <FilterHeaderButton\n onClick={handleDismiss}\n focusOutline=\"browser\"\n focusHighlight={false}\n aria-label={`close ${labels.title}`}\n >\n <CrossIcon />\n </FilterHeaderButton>\n <FilterTitleGroup>\n <FilterTitle>\n {labels.title}\n </FilterTitle>\n <FilterBadge count={count} />\n </FilterTitleGroup>\n <FilterClearButton\n styleType=\"link\"\n type=\"button\"\n onClick={() => onClear?.()}\n disabled={clearButtonDisabled}\n aria-label={`clear ${labels.title}`}\n >\n {labels.clear}\n </FilterClearButton>\n </FilterHeader>\n <FilterBody>{children}</FilterBody>\n <FilterFooter $insetBottom={insets?.bottom}>\n <FilterDoneButton onClick={handleDone}>\n {labels.done}\n </FilterDoneButton>\n </FilterFooter>\n </MobileContainer>\n </MobileOverlayContainer>\n </FloatingFocusManager>\n </FloatingWrapper>\n </Overlay>\n </FilterContext.Provider>\n );\n};\n\nFilterModal.displayName = \"Filter.Modal\";\n"],"names":["FilterModal","_a","customLabels","onClear","onDone","onDismiss","onModalOpen","toggleFilterButtonStyle","clearButtonDisabled","insets","count","children","toggleFilterButtonLabel","_toggleFilterButtonLabel","headerTitle","_headerTitle","doneButtonLabel","_doneButtonLabel","otherProps","__rest","context","refs","useFloating","nodeRef","useRef","visible","setVisible","useState","labels","toggle","title","done","clear","clearButtonLabel","useEffect","current","focus","_jsxs","FilterContext","Provider","value","mode","rootNode","_jsx","Object","assign","FilterButton","styleType","onClick","type","icon","FilterIcon","FilterToggleContent","FilterBadge","Overlay","show","disableTransition","FloatingWrapper","inert","inertValue","FloatingFocusManager","disabled","MobileOverlayContainer","ref","setFloating","MobileContainer","tabIndex","FilterHeader","$insetTop","top","FilterHeaderButton","focusOutline","focusHighlight","CrossIcon","FilterTitleGroup","FilterTitle","FilterClearButton","FilterBody","FilterFooter","$insetBottom","bottom","FilterDoneButton","displayName"],"mappings":"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"}
@@ -1,30 +1,38 @@
1
- "use strict";var t=require("styled-components"),e=require("../button/button.js"),o=require("../button-with-icon/button-with-icon.js"),i=require("../theme/index.js");function n(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var r=n(t);const a=r.default.div`
2
- background-color: ${i.Colour["bg-strong"]};
1
+ "use strict";var t=require("styled-components"),e=require("../button/button.js"),i=require("../button-with-icon/button-with-icon.js"),n=require("../theme/index.js");function o(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var r=o(t);const a=r.default.div`
2
+ background-color: ${n.Colour["bg-strong"]};
3
3
  height: 100%;
4
4
  width: 100%;
5
5
  display: flex;
6
6
  flex-direction: column;
7
7
  `,l=r.default.div`
8
- background-color: ${i.Colour.bg};
8
+ background-color: ${n.Colour.bg};
9
9
  height: 100%;
10
10
  width: 100%;
11
- `,u=r.default.div`
11
+ `,p=r.default.div`
12
12
  height: 100%;
13
13
  `,d=r.default.div`
14
14
  display: flex;
15
15
  align-items: center;
16
- background-color: ${i.Colour.bg};
16
+ background-color: ${n.Colour.bg};
17
17
  ${t=>t.$insetTop&&`padding-top: ${t.$insetTop}px;`}
18
- `,s=r.default.h2`
19
- ${i.Font["heading-xs-semibold"]}
18
+ `,s=r.default.div`
20
19
  flex: 1;
21
- text-align: center;
22
- margin: ${i.Spacing["spacing-24"]} 0;
20
+ display: flex;
21
+ align-items: center;
22
+ justify-content: center;
23
+ gap: ${n.Spacing["spacing-8"]};
24
+ margin: ${n.Spacing["spacing-24"]} 0;
25
+ `,u=r.default.h2`
26
+ ${n.Font["heading-xs-semibold"]}
27
+ `,g=r.default.span`
28
+ display: inline-flex;
29
+ align-items: center;
30
+ gap: ${n.Spacing["spacing-8"]};
23
31
  `,c=r.default(e.Button.Small)`
24
32
  background-color: transparent;
25
33
  height: 100%;
26
- padding: ${i.Spacing["spacing-24"]} ${i.Spacing["spacing-20"]};
27
- `,p=r.default(o.ButtonWithIcon.Default)`
34
+ padding: ${n.Spacing["spacing-24"]} ${n.Spacing["spacing-20"]};
35
+ `,f=r.default(i.ButtonWithIcon.Default)`
28
36
  width: 100%;
29
- `;exports.FilterButton=p,exports.FilterClearButton=c,exports.FilterHeader=d,exports.FilterTitle=s,exports.FloatingWrapper=u,exports.MobileContainer=a,exports.MobileOverlayContainer=l;
37
+ `;exports.FilterButton=f,exports.FilterClearButton=c,exports.FilterHeader=d,exports.FilterTitle=u,exports.FilterTitleGroup=s,exports.FilterToggleContent=g,exports.FloatingWrapper=p,exports.MobileContainer=a,exports.MobileOverlayContainer=l;
30
38
  //# sourceMappingURL=filter-modal.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter-modal.styles.js","sources":["../../../src/filter/filter-modal.styles.tsx"],"sourcesContent":["import styled from \"styled-components\";\nimport { Button } from \"../button\";\nimport { ButtonWithIcon } from \"../button-with-icon\";\nimport { Colour, Font, Spacing } from \"../theme\";\n\n// =============================================================================\n// STYLE INTERFACES\n// =============================================================================\ntype FilterHeaderProps = {\n $insetTop?: number | undefined;\n};\n\n// =============================================================================\n// CONTAINER STYLES\n// =============================================================================\n\nexport const MobileContainer = styled.div`\n background-color: ${Colour[\"bg-strong\"]};\n height: 100%;\n width: 100%;\n display: flex;\n flex-direction: column;\n`;\n\nexport const MobileOverlayContainer = styled.div`\n background-color: ${Colour[\"bg\"]};\n height: 100%;\n width: 100%;\n`;\n\nexport const FloatingWrapper = styled.div`\n height: 100%;\n`;\n\n// =============================================================================\n// HEADER STYLES\n// =============================================================================\n\nexport const FilterHeader = styled.div<FilterHeaderProps>`\n display: flex;\n align-items: center;\n background-color: ${Colour[\"bg\"]};\n ${(props) => props.$insetTop && `padding-top: ${props.$insetTop}px;`}\n`;\n\nexport const FilterTitle = styled.h2`\n ${Font[\"heading-xs-semibold\"]}\n flex: 1;\n text-align: center;\n margin: ${Spacing[\"spacing-24\"]} 0;\n`;\n\nexport const FilterClearButton = styled(Button.Small)`\n background-color: transparent;\n height: 100%;\n padding: ${Spacing[\"spacing-24\"]} ${Spacing[\"spacing-20\"]};\n`;\n\n// =============================================================================\n// COMPONENT STYLES\n// =============================================================================\n\nexport const FilterButton = styled(ButtonWithIcon.Default)`\n width: 100%;\n`;\n"],"names":["MobileContainer","styled","div","Colour","MobileOverlayContainer","FloatingWrapper","FilterHeader","props","$insetTop","FilterTitle","h2","Font","Spacing","FilterClearButton","Button","Small","FilterButton","ButtonWithIcon","Default"],"mappings":"wPAgBO,MAAMA,EAAkBC,EAAAA,QAAOC,GAAG;wBACjBC,EAAAA,OAAO;;;;;EAOlBC,EAAyBH,EAAAA,QAAOC,GAAG;wBACxBC,EAAAA,OAAW;;;EAKtBE,EAAkBJ,EAAAA,QAAOC,GAAG;;EAQ5BI,EAAeL,EAAAA,QAAOC,GAAsB;;;wBAGjCC,EAAAA,OAAW;MAC5BI,GAAUA,EAAMC,WAAa,gBAAgBD,EAAMC;EAG7CC,EAAcR,EAAAA,QAAOS,EAAE;MAC9BC,EAAAA,KAAK;;;cAGGC,EAAAA,QAAQ;EAGTC,EAAoBZ,EAAAA,QAAOa,SAAOC,MAAM;;;eAGtCH,EAAAA,QAAQ,iBAAiBA,EAAAA,QAAQ;EAOnCI,EAAef,EAAAA,QAAOgB,iBAAeC,QAAQ;;"}
1
+ {"version":3,"file":"filter-modal.styles.js","sources":["../../../src/filter/filter-modal.styles.tsx"],"sourcesContent":["import styled from \"styled-components\";\nimport { Button } from \"../button\";\nimport { ButtonWithIcon } from \"../button-with-icon\";\nimport { Colour, Font, Spacing } from \"../theme\";\n\n// =============================================================================\n// STYLE INTERFACES\n// =============================================================================\ntype FilterHeaderProps = {\n $insetTop?: number | undefined;\n};\n\n// =============================================================================\n// CONTAINER STYLES\n// =============================================================================\n\nexport const MobileContainer = styled.div`\n background-color: ${Colour[\"bg-strong\"]};\n height: 100%;\n width: 100%;\n display: flex;\n flex-direction: column;\n`;\n\nexport const MobileOverlayContainer = styled.div`\n background-color: ${Colour[\"bg\"]};\n height: 100%;\n width: 100%;\n`;\n\nexport const FloatingWrapper = styled.div`\n height: 100%;\n`;\n\n// =============================================================================\n// HEADER STYLES\n// =============================================================================\n\nexport const FilterHeader = styled.div<FilterHeaderProps>`\n display: flex;\n align-items: center;\n background-color: ${Colour[\"bg\"]};\n ${(props) => props.$insetTop && `padding-top: ${props.$insetTop}px;`}\n`;\n\nexport const FilterTitleGroup = styled.div`\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: ${Spacing[\"spacing-8\"]};\n margin: ${Spacing[\"spacing-24\"]} 0;\n`;\n\nexport const FilterTitle = styled.h2`\n ${Font[\"heading-xs-semibold\"]}\n`;\n\nexport const FilterToggleContent = styled.span`\n display: inline-flex;\n align-items: center;\n gap: ${Spacing[\"spacing-8\"]};\n`;\n\nexport const FilterClearButton = styled(Button.Small)`\n background-color: transparent;\n height: 100%;\n padding: ${Spacing[\"spacing-24\"]} ${Spacing[\"spacing-20\"]};\n`;\n\n// =============================================================================\n// COMPONENT STYLES\n// =============================================================================\n\nexport const FilterButton = styled(ButtonWithIcon.Default)`\n width: 100%;\n`;\n"],"names":["MobileContainer","styled","div","Colour","MobileOverlayContainer","FloatingWrapper","FilterHeader","props","$insetTop","FilterTitleGroup","Spacing","FilterTitle","h2","Font","FilterToggleContent","span","FilterClearButton","Button","Small","FilterButton","ButtonWithIcon","Default"],"mappings":"wPAgBO,MAAMA,EAAkBC,EAAAA,QAAOC,GAAG;wBACjBC,EAAAA,OAAO;;;;;EAOlBC,EAAyBH,EAAAA,QAAOC,GAAG;wBACxBC,EAAAA,OAAW;;;EAKtBE,EAAkBJ,EAAAA,QAAOC,GAAG;;EAQ5BI,EAAeL,EAAAA,QAAOC,GAAsB;;;wBAGjCC,EAAAA,OAAW;MAC5BI,GAAUA,EAAMC,WAAa,gBAAgBD,EAAMC;EAG7CC,EAAmBR,EAAAA,QAAOC,GAAG;;;;;WAK/BQ,EAAAA,QAAQ;cACLA,EAAAA,QAAQ;EAGTC,EAAcV,EAAAA,QAAOW,EAAE;MAC9BC,EAAAA,KAAK;EAGEC,EAAsBb,EAAAA,QAAOc,IAAI;;;WAGnCL,EAAAA,QAAQ;EAGNM,EAAoBf,EAAAA,QAAOgB,SAAOC,MAAM;;;eAGtCR,EAAAA,QAAQ,iBAAiBA,EAAAA,QAAQ;EAOnCS,EAAelB,EAAAA,QAAOmB,iBAAeC,QAAQ;;"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("../_virtual/_tslib.js"),r=require("react/jsx-runtime"),t=require("react"),l=require("./filter-context.js"),i=require("./filter-sidebar.styles.js"),s=require("./filter.styles.js");const a=a=>{var{customLabels:d,onClear:n,clearButtonDisabled:o=!1,children:c,headerTitle:u}=a,b=e.__rest(a,["customLabels","onClear","clearButtonDisabled","children","headerTitle"]);const j=t.useRef(null),h={title:(null==d?void 0:d.headerTitle)||u||"Filters",clear:(null==d?void 0:d.clearButtonLabel)||"Clear"};return r.jsx(l.FilterContext.Provider,{value:{mode:"default",rootNode:j},children:r.jsxs(i.DesktopContainer,Object.assign({"data-id":"filter-desktop","data-testid":"filter-desktop",ref:j},b,{children:[r.jsxs(i.FilterHeader,{children:[r.jsx(i.FilterTitle,{children:h.title}),r.jsx(i.FilterClearButton,{styleType:"link",type:"button",onClick:()=>null==n?void 0:n(),disabled:o,"aria-label":`clear ${h.title}`,children:h.clear})]}),r.jsx(s.FilterBody,{children:c})]}))})};a.displayName="Filter.Sidebar",exports.FilterSidebar=a;
1
+ "use strict";var e=require("../_virtual/_tslib.js"),r=require("react/jsx-runtime"),t=require("react"),l=require("./filter-badge.js"),i=require("./filter-context.js"),s=require("./filter-sidebar.styles.js"),a=require("./filter.styles.js");const d=d=>{var{customLabels:n,onClear:o,clearButtonDisabled:u=!1,count:c,children:j,headerTitle:b}=d,h=e.__rest(d,["customLabels","onClear","clearButtonDisabled","count","children","headerTitle"]);const x=t.useRef(null),F={title:(null==n?void 0:n.headerTitle)||b||"Filters",clear:(null==n?void 0:n.clearButtonLabel)||"Clear"};return r.jsx(i.FilterContext.Provider,{value:{mode:"default",rootNode:x},children:r.jsxs(s.DesktopContainer,Object.assign({"data-id":"filter-desktop","data-testid":"filter-desktop",ref:x},h,{children:[r.jsxs(s.FilterHeader,{children:[r.jsxs(s.FilterTitleGroup,{children:[r.jsx(s.FilterTitle,{children:F.title}),r.jsx(l.FilterBadge,{count:c})]}),r.jsx(s.FilterClearButton,{styleType:"link",type:"button",onClick:()=>null==o?void 0:o(),disabled:u,"aria-label":`clear ${F.title}`,children:F.clear})]}),r.jsx(a.FilterBody,{children:j})]}))})};d.displayName="Filter.Sidebar",exports.FilterSidebar=d;
2
2
  //# sourceMappingURL=filter-sidebar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter-sidebar.js","sources":["../../../src/filter/filter-sidebar.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { FilterContext } from \"./filter-context\";\nimport {\n DesktopContainer,\n FilterClearButton,\n FilterHeader,\n FilterTitle,\n} from \"./filter-sidebar.styles\";\nimport { FilterSidebarProps } from \"./types\";\nimport { FilterBody } from \"./filter.styles\";\n\nexport const FilterSidebar = ({\n customLabels,\n onClear,\n clearButtonDisabled = false,\n children,\n headerTitle: _headerTitle,\n ...otherProps\n}: FilterSidebarProps) => {\n const nodeRef = useRef<HTMLDivElement>(null);\n\n const labels = {\n title: customLabels?.headerTitle || _headerTitle || \"Filters\",\n clear: customLabels?.clearButtonLabel || \"Clear\",\n };\n\n return (\n <FilterContext.Provider value={{ mode: \"default\", rootNode: nodeRef }}>\n <DesktopContainer\n data-id=\"filter-desktop\"\n data-testid=\"filter-desktop\"\n ref={nodeRef}\n {...otherProps}\n >\n <FilterHeader>\n <FilterTitle>{labels.title}</FilterTitle>\n <FilterClearButton\n styleType=\"link\"\n type=\"button\"\n onClick={() => onClear?.()}\n disabled={clearButtonDisabled}\n aria-label={`clear ${labels.title}`}\n >\n {labels.clear}\n </FilterClearButton>\n </FilterHeader>\n <FilterBody>{children}</FilterBody>\n </DesktopContainer>\n </FilterContext.Provider>\n );\n};\n\nFilterSidebar.displayName = \"Filter.Sidebar\";\n"],"names":["FilterSidebar","_a","customLabels","onClear","clearButtonDisabled","children","headerTitle","_headerTitle","otherProps","__rest","nodeRef","useRef","labels","title","clear","clearButtonLabel","_jsx","FilterContext","Provider","value","mode","rootNode","_jsxs","DesktopContainer","Object","assign","ref","FilterHeader","FilterTitle","FilterClearButton","styleType","type","onClick","disabled","FilterBody","displayName"],"mappings":"+MAWO,MAAMA,EAAiBC,IAAA,IAAAC,aAC1BA,EAAYC,QACZA,EAAOC,oBACPA,GAAsB,EAAKC,SAC3BA,EACAC,YAAaC,GAAYN,EACtBO,EAAUC,EAAAA,OAAAR,EANa,2EAQ1B,MAAMS,EAAUC,EAAAA,OAAuB,MAEjCC,EAAS,CACXC,OAAOX,aAAY,EAAZA,EAAcI,cAAeC,GAAgB,UACpDO,OAAOZ,eAAAA,EAAca,mBAAoB,SAG7C,OACIC,EAAAA,IAACC,EAAAA,cAAcC,SAAQ,CAACC,MAAO,CAAEC,KAAM,UAAWC,SAAUX,GAASL,SACjEiB,OAACC,EAAAA,iBAAgBC,OAAAC,OAAA,CAAA,UACL,iBAAgB,cACZ,iBACZC,IAAKhB,GACDF,EAAU,CAAAH,SAAA,CAEdiB,EAAAA,KAACK,EAAAA,aAAY,CAAAtB,SAAA,CACTW,MAACY,EAAAA,YAAW,CAAAvB,SAAEO,EAAOC,QACrBG,EAAAA,IAACa,EAAAA,kBAAiB,CACdC,UAAU,OACVC,KAAK,SACLC,QAAS,IAAM7B,eAAAA,IACf8B,SAAU7B,EAAmB,aACjB,SAASQ,EAAOC,QAAOR,SAElCO,EAAOE,WAGhBE,EAAAA,IAACkB,EAAAA,WAAU,CAAA7B,SAAEA,SAEI,EAIjCL,EAAcmC,YAAc"}
1
+ {"version":3,"file":"filter-sidebar.js","sources":["../../../src/filter/filter-sidebar.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { FilterBadge } from \"./filter-badge\";\nimport { FilterContext } from \"./filter-context\";\nimport {\n DesktopContainer,\n FilterClearButton,\n FilterHeader,\n FilterTitle,\n FilterTitleGroup,\n} from \"./filter-sidebar.styles\";\nimport { FilterSidebarProps } from \"./types\";\nimport { FilterBody } from \"./filter.styles\";\n\nexport const FilterSidebar = ({\n customLabels,\n onClear,\n clearButtonDisabled = false,\n count,\n children,\n headerTitle: _headerTitle,\n ...otherProps\n}: FilterSidebarProps) => {\n const nodeRef = useRef<HTMLDivElement>(null);\n\n const labels = {\n title: customLabels?.headerTitle || _headerTitle || \"Filters\",\n clear: customLabels?.clearButtonLabel || \"Clear\",\n };\n\n return (\n <FilterContext.Provider value={{ mode: \"default\", rootNode: nodeRef }}>\n <DesktopContainer\n data-id=\"filter-desktop\"\n data-testid=\"filter-desktop\"\n ref={nodeRef}\n {...otherProps}\n >\n <FilterHeader>\n <FilterTitleGroup>\n <FilterTitle>{labels.title}</FilterTitle>\n <FilterBadge count={count} />\n </FilterTitleGroup>\n <FilterClearButton\n styleType=\"link\"\n type=\"button\"\n onClick={() => onClear?.()}\n disabled={clearButtonDisabled}\n aria-label={`clear ${labels.title}`}\n >\n {labels.clear}\n </FilterClearButton>\n </FilterHeader>\n <FilterBody>{children}</FilterBody>\n </DesktopContainer>\n </FilterContext.Provider>\n );\n};\n\nFilterSidebar.displayName = \"Filter.Sidebar\";\n"],"names":["FilterSidebar","_a","customLabels","onClear","clearButtonDisabled","count","children","headerTitle","_headerTitle","otherProps","__rest","nodeRef","useRef","labels","title","clear","clearButtonLabel","_jsx","FilterContext","Provider","value","mode","rootNode","_jsxs","DesktopContainer","Object","assign","ref","FilterHeader","FilterTitleGroup","FilterTitle","FilterBadge","FilterClearButton","styleType","type","onClick","disabled","FilterBody","displayName"],"mappings":"8OAaO,MAAMA,EAAiBC,QAAAC,aAC1BA,EAAYC,QACZA,EAAOC,oBACPA,GAAsB,EAAKC,MAC3BA,EAAKC,SACLA,EACAC,YAAaC,GAAYP,EACtBQ,EAAUC,EAAAA,OAAAT,EAPa,mFAS1B,MAAMU,EAAUC,EAAAA,OAAuB,MAEjCC,EAAS,CACXC,OAAOZ,aAAY,EAAZA,EAAcK,cAAeC,GAAgB,UACpDO,OAAOb,eAAAA,EAAcc,mBAAoB,SAG7C,OACIC,EAAAA,IAACC,EAAAA,cAAcC,SAAQ,CAACC,MAAO,CAAEC,KAAM,UAAWC,SAAUX,YACxDY,EAAAA,KAACC,EAAAA,iBAAgBC,OAAAC,OAAA,CAAA,UACL,iBAAgB,cACZ,iBACZC,IAAKhB,GACDF,aAEJc,EAAAA,KAACK,EAAAA,aAAY,CAAAtB,SAAA,CACTiB,EAAAA,KAACM,EAAAA,iBAAgB,CAAAvB,SAAA,CACbW,EAAAA,IAACa,EAAAA,YAAW,CAAAxB,SAAEO,EAAOC,QACrBG,EAAAA,IAACc,EAAAA,YAAW,CAAC1B,MAAOA,OAExBY,MAACe,EAAAA,mBACGC,UAAU,OACVC,KAAK,SACLC,QAAS,IAAMhC,aAAO,EAAPA,IACfiC,SAAUhC,EAAmB,aACjB,SAASS,EAAOC,QAAOR,SAElCO,EAAOE,WAGhBE,EAAAA,IAACoB,EAAAA,WAAU,CAAA/B,SAAEA,SAEI,EAIjCN,EAAcsC,YAAc"}
@@ -1,23 +1,28 @@
1
- "use strict";var e=require("styled-components"),r=require("../button/button.js"),t=require("../theme/index.js");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var i=o(e);const n=i.default.div`
2
- background-color: ${t.Colour.bg};
3
- border: ${t.Border["width-010"]} ${t.Border.solid} ${t.Colour.border};
4
- border-radius: ${t.Radius.md};
1
+ "use strict";var e=require("styled-components"),t=require("../button/button.js"),r=require("../theme/index.js");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=i(e);const n=o.default.div`
2
+ background-color: ${r.Colour.bg};
3
+ border: ${r.Border["width-010"]} ${r.Border.solid} ${r.Colour.border};
4
+ border-radius: ${r.Radius.md};
5
5
  overflow: hidden;
6
6
  width: 100%;
7
- `,a=i.default.div`
7
+ `,a=o.default.div`
8
8
  display: flex;
9
9
  align-items: center;
10
10
 
11
- background-color: ${t.Colour.bg};
12
- `,d=i.default.h2`
13
- ${t.Font["heading-xs-semibold"]}
11
+ background-color: ${r.Colour.bg};
12
+ `,d=o.default.div`
14
13
  flex: 1;
15
- margin: ${t.Spacing["spacing-24"]} 0 ${t.Spacing["spacing-24"]}
16
- ${t.Spacing["spacing-20"]};
17
- `,l=i.default(r.Button.Small)`
14
+ display: flex;
15
+ align-items: center;
16
+ justify-content: flex-start;
17
+ gap: ${r.Spacing["spacing-8"]};
18
+ margin: ${r.Spacing["spacing-24"]} 0 ${r.Spacing["spacing-24"]}
19
+ ${r.Spacing["spacing-20"]};
20
+ `,l=o.default.h2`
21
+ ${r.Font["heading-xs-semibold"]}
22
+ `,s=o.default(t.Button.Small)`
18
23
  background-color: transparent;
19
- padding-right: ${t.Spacing["spacing-20"]};
20
- padding-left: ${t.Spacing["spacing-20"]};
24
+ padding-right: ${r.Spacing["spacing-20"]};
25
+ padding-left: ${r.Spacing["spacing-20"]};
21
26
  height: 100%;
22
- `;exports.DesktopContainer=n,exports.FilterClearButton=l,exports.FilterHeader=a,exports.FilterTitle=d;
27
+ `;exports.DesktopContainer=n,exports.FilterClearButton=s,exports.FilterHeader=a,exports.FilterTitle=l,exports.FilterTitleGroup=d;
23
28
  //# sourceMappingURL=filter-sidebar.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter-sidebar.styles.js","sources":["../../../src/filter/filter-sidebar.styles.tsx"],"sourcesContent":["import styled from \"styled-components\";\nimport { Button } from \"../button\";\nimport { Border, Colour, Font, Radius, Spacing } from \"../theme\";\n\n// =============================================================================\n// CONTAINER STYLES\n// =============================================================================\n\nexport const DesktopContainer = styled.div`\n background-color: ${Colour[\"bg\"]};\n border: ${Border[\"width-010\"]} ${Border[\"solid\"]} ${Colour[\"border\"]};\n border-radius: ${Radius[\"md\"]};\n overflow: hidden;\n width: 100%;\n`;\n\n// =============================================================================\n// HEADER STYLES\n// =============================================================================\n\nexport const FilterHeader = styled.div`\n display: flex;\n align-items: center;\n\n background-color: ${Colour[\"bg\"]};\n`;\n\nexport const FilterTitle = styled.h2`\n ${Font[\"heading-xs-semibold\"]}\n flex: 1;\n margin: ${Spacing[\"spacing-24\"]} 0 ${Spacing[\"spacing-24\"]}\n ${Spacing[\"spacing-20\"]};\n`;\n\nexport const FilterClearButton = styled(Button.Small)`\n background-color: transparent;\n padding-right: ${Spacing[\"spacing-20\"]};\n padding-left: ${Spacing[\"spacing-20\"]};\n height: 100%;\n`;\n"],"names":["DesktopContainer","styled","div","Colour","Border","Radius","FilterHeader","FilterTitle","h2","Font","Spacing","FilterClearButton","Button","Small"],"mappings":"mMAQO,MAAMA,EAAmBC,EAAAA,QAAOC,GAAG;wBAClBC,EAAAA,OAAW;cACrBC,EAAAA,OAAO,gBAAgBA,EAAAA,OAAc,SAAKD,SAAe;qBAClDE,EAAAA,OAAW;;;EASnBC,EAAeL,EAAAA,QAAOC,GAAG;;;;wBAIdC,EAAAA,OAAW;EAGtBI,EAAcN,EAAAA,QAAOO,EAAE;MAC9BC,EAAAA,KAAK;;cAEGC,EAAAA,QAAQ,mBAAmBA,EAAAA,QAAQ;UACvCA,EAAAA,QAAQ;EAGLC,EAAoBV,EAAAA,QAAOW,SAAOC,MAAM;;qBAEhCH,EAAAA,QAAQ;oBACTA,EAAAA,QAAQ;;"}
1
+ {"version":3,"file":"filter-sidebar.styles.js","sources":["../../../src/filter/filter-sidebar.styles.tsx"],"sourcesContent":["import styled from \"styled-components\";\nimport { Button } from \"../button\";\nimport { Border, Colour, Font, Radius, Spacing } from \"../theme\";\n\n// =============================================================================\n// CONTAINER STYLES\n// =============================================================================\n\nexport const DesktopContainer = styled.div`\n background-color: ${Colour[\"bg\"]};\n border: ${Border[\"width-010\"]} ${Border[\"solid\"]} ${Colour[\"border\"]};\n border-radius: ${Radius[\"md\"]};\n overflow: hidden;\n width: 100%;\n`;\n\n// =============================================================================\n// HEADER STYLES\n// =============================================================================\n\nexport const FilterHeader = styled.div`\n display: flex;\n align-items: center;\n\n background-color: ${Colour[\"bg\"]};\n`;\n\nexport const FilterTitleGroup = styled.div`\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: ${Spacing[\"spacing-8\"]};\n margin: ${Spacing[\"spacing-24\"]} 0 ${Spacing[\"spacing-24\"]}\n ${Spacing[\"spacing-20\"]};\n`;\n\nexport const FilterTitle = styled.h2`\n ${Font[\"heading-xs-semibold\"]}\n`;\n\nexport const FilterClearButton = styled(Button.Small)`\n background-color: transparent;\n padding-right: ${Spacing[\"spacing-20\"]};\n padding-left: ${Spacing[\"spacing-20\"]};\n height: 100%;\n`;\n"],"names":["DesktopContainer","styled","div","Colour","Border","Radius","FilterHeader","FilterTitleGroup","Spacing","FilterTitle","h2","Font","FilterClearButton","Button","Small"],"mappings":"mMAQO,MAAMA,EAAmBC,EAAAA,QAAOC,GAAG;wBAClBC,EAAAA,OAAW;cACrBC,EAAAA,OAAO,gBAAgBA,EAAAA,OAAc,SAAKD,SAAe;qBAClDE,EAAAA,OAAW;;;EASnBC,EAAeL,EAAAA,QAAOC,GAAG;;;;wBAIdC,EAAAA,OAAW;EAGtBI,EAAmBN,EAAAA,QAAOC,GAAG;;;;;WAK/BM,EAAAA,QAAQ;cACLA,EAAAA,QAAQ,mBAAmBA,EAAAA,QAAQ;UACvCA,EAAAA,QAAQ;EAGLC,EAAcR,EAAAA,QAAOS,EAAE;MAC9BC,EAAAA,KAAK;EAGEC,EAAoBX,EAAAA,QAAOY,SAAOC,MAAM;;qBAEhCN,EAAAA,QAAQ;oBACTA,EAAAA,QAAQ;;"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react");require("../util/calendar-helper.js"),require("../util/date-helper.js"),require("../util/date-input-helper.js");var l=require("../util/simple-id-generator.js");require("../util/string-helper.js"),require("@react-aria/live-announcer");var s=require("./form-label.js"),i=require("./form-label.style.js"),t=require("./form-wrapper.style.js");exports.FormWrapper=({label:a,errorMessage:o,id:d,disabled:n,children:u,layoutType:b,mobileCols:c,tabletCols:C,desktopCols:m,xxsCols:x,xsCols:g,smCols:j,mdCols:p,lgCols:h,xlCols:v,xxlCols:f,"data-testid":q,"data-error-testid":y})=>{const $=!b&&(c||C||m)?"v2-grid":!b&&(x||g||j||p||h||v||f)?"grid":b||"flex",F="string"==typeof o?o.trim():o,E=l.useId(),w=`${null!=d?d:E}-label`,I=`${null!=d?d:E}-label-subtitle`,M=`${null!=d?d:E}-error-message`;const k=(e=>{switch(e){case"v2-grid":return t.V2_ColDivContainer;case"grid":return t.ColDivContainer;case"flex":return t.Container}})($);return e.jsxs(k,Object.assign({"data-testid":q},(e=>{switch(e){case"v2-grid":return{mobileCols:c,tabletCols:C,desktopCols:m};case"grid":return{xxsCols:x,xsCols:g,smCols:j,mdCols:p,lgCols:h,xlCols:v,xxlCols:f};case"flex":return}})($),{children:[a&&("string"==typeof a?e.jsx(s.FormLabel,{htmlFor:`${d}-base`,"data-testid":d?`${d}-label`:"form-label",id:w,disabled:n,children:a}):e.jsx(s.FormLabel,Object.assign({htmlFor:`${d}-base`,"data-testid":d?`${d}-label`:"form-label",id:w,disabled:n},a))),(()=>{const e={"aria-invalid":!!o,"aria-describedby":[F?M:void 0,"object"==typeof a&&(null==a?void 0:a.subtitle)?I:void 0].filter(Boolean).join(" ")||void 0,"aria-labelledby":a?w:void 0};return r.Children.map(u,(l=>r.cloneElement(l,e)))})(),F&&e.jsxs(i.ErrorMessageContainer,{children:[e.jsx(i.ErrorIcon,{"aria-hidden":!0}),e.jsx(i.ErrorMessage,{id:M,tabIndex:0,"data-testid":null!=y?y:d?`${d}-error-message`:"error-message",children:F})]})]}))};
1
+ "use strict";var e=require("react/jsx-runtime"),r=require("react");require("../util/calendar-helper.js"),require("../util/date-helper.js"),require("../util/date-input-helper.js");var l=require("../util/simple-id-generator.js");require("../util/string-helper.js"),require("@react-aria/live-announcer");var s=require("./form-label.js"),i=require("./form-label.style.js"),t=require("./form-wrapper.style.js");exports.FormWrapper=({label:a,errorMessage:o,id:d,disabled:n,children:u,layoutType:b,mobileCols:c,tabletCols:m,desktopCols:C,xxsCols:x,xsCols:g,smCols:j,mdCols:p,lgCols:h,xlCols:v,xxlCols:f,"data-testid":q,"data-error-testid":y})=>{const $=!b&&(c||m||C)?"v2-grid":!b&&(x||g||j||p||h||v||f)?"grid":b||"flex",E="string"==typeof o?o.trim():o,F=l.useId(),w=`${null!=d?d:F}-label`,I=`${null!=d?d:F}-label-subtitle`,M=`${null!=d?d:F}-error-message`;const k=(e=>{switch(e){case"v2-grid":return t.V2_ColDivContainer;case"grid":return t.ColDivContainer;case"flex":return t.Container}})($);return e.jsxs(k,Object.assign({"data-testid":q},(e=>{switch(e){case"v2-grid":return{mobileCols:c,tabletCols:m,desktopCols:C};case"grid":return{xxsCols:x,xsCols:g,smCols:j,mdCols:p,lgCols:h,xlCols:v,xxlCols:f};case"flex":return}})($),{children:[a&&("string"==typeof a?e.jsx(s.FormLabel,{htmlFor:`${d}-base`,"data-testid":d?`${d}-label`:"form-label",id:w,disabled:n,children:a}):e.jsx(s.FormLabel,Object.assign({htmlFor:`${d}-base`,"data-testid":d?`${d}-label`:"form-label",id:w,disabled:n},a))),(()=>{const e={"aria-invalid":!!o,"aria-describedby":[E?M:void 0,"object"==typeof a&&(null==a?void 0:a.subtitle)?I:void 0].filter(Boolean).join(" ")||void 0,"aria-labelledby":a?w:void 0};return r.Children.map(u,(l=>r.isValidElement(l)&&l.type===r.Fragment?r.cloneElement(l):r.cloneElement(l,e)))})(),E&&e.jsxs(i.ErrorMessageContainer,{children:[e.jsx(i.ErrorIcon,{"aria-hidden":!0}),e.jsx(i.ErrorMessage,{id:M,tabIndex:0,"data-testid":null!=y?y:d?`${d}-error-message`:"error-message",children:E})]})]}))};
2
2
  //# sourceMappingURL=form-wrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-wrapper.js","sources":["../../../src/form/form-wrapper.tsx"],"sourcesContent":["/**\n * This is a SUPPORTING component\n * (Do not include in the main export)\n *\n */\n\nimport { Children, ComponentType, cloneElement } from \"react\";\nimport { useId } from \"../util\";\nimport { FormLabel } from \"./form-label\";\nimport {\n ErrorIcon,\n ErrorMessage,\n ErrorMessageContainer,\n} from \"./form-label.style\";\nimport {\n ColDivContainer,\n Container,\n V2_ColDivContainer,\n} from \"./form-wrapper.style\";\nimport { FormElementLayoutType, FormWrapperProps } from \"./types\";\n\nexport const FormWrapper = ({\n label,\n errorMessage: eRaw,\n id,\n disabled,\n children,\n layoutType,\n mobileCols,\n tabletCols,\n desktopCols,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n \"data-testid\": testId,\n \"data-error-testid\": errorTestId,\n}: FormWrapperProps): JSX.Element => {\n // =============================================================================\n // CONST, STATE, REFS\n // =============================================================================\n const updatedLayoutType = getLayoutType();\n const errorMessage = typeof eRaw === \"string\" ? eRaw.trim() : eRaw;\n const internalId = useId();\n const labelId = `${id ?? internalId}-label`; // matches FormLabel\n const subtitleId = `${id ?? internalId}-label-subtitle`; // matches FormLabel\n const errorMessageId = `${id ?? internalId}-error-message`;\n\n // =============================================================================\n // HELPER FUNCTIONS\n // =============================================================================\n\n const isInvalidState = (): boolean => {\n return !!eRaw;\n };\n\n const hasSubtitleLabel = (): boolean => {\n return typeof label === \"object\" && !!label?.subtitle;\n };\n\n const getAriaDescribedBy = (): string | undefined => {\n return (\n [\n errorMessage ? errorMessageId : undefined,\n hasSubtitleLabel() ? subtitleId : undefined,\n ]\n .filter(Boolean)\n .join(\" \") || undefined\n );\n };\n\n function getLayoutType(): FormElementLayoutType {\n if (!layoutType && (mobileCols || tabletCols || desktopCols)) {\n return \"v2-grid\";\n } else if (\n !layoutType &&\n (xxsCols ||\n xsCols ||\n smCols ||\n mdCols ||\n lgCols ||\n xlCols ||\n xxlCols)\n ) {\n return \"grid\";\n } else if (!layoutType) {\n return \"flex\";\n } else {\n return layoutType;\n }\n }\n\n const getContainerLayoutProps = (layoutType: FormElementLayoutType) => {\n switch (layoutType) {\n case \"v2-grid\":\n return {\n mobileCols,\n tabletCols,\n desktopCols,\n };\n case \"grid\":\n return {\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n };\n case \"flex\":\n return undefined;\n }\n };\n\n const getContainerComponent = (\n layoutType: FormElementLayoutType\n ): ComponentType => {\n switch (layoutType) {\n case \"v2-grid\":\n return V2_ColDivContainer;\n case \"grid\":\n return ColDivContainer;\n case \"flex\":\n return Container;\n }\n };\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n\n const renderFormLabel = (): JSX.Element => {\n if (typeof label === \"string\") {\n return (\n <FormLabel\n htmlFor={`${id}-base`}\n // FIXME: kept for backwards-compatibility\n // in most cases data-testid should be separate from id\n data-testid={id ? `${id}-label` : \"form-label\"}\n id={labelId}\n disabled={disabled}\n >\n {label}\n </FormLabel>\n );\n }\n return (\n <FormLabel\n htmlFor={`${id}-base`}\n data-testid={id ? `${id}-label` : \"form-label\"}\n id={labelId}\n disabled={disabled}\n {...label}\n />\n );\n };\n\n const renderChildren = (): JSX.Element | JSX.Element[] => {\n const ariaState = {\n \"aria-invalid\": isInvalidState(),\n \"aria-describedby\": getAriaDescribedBy(),\n \"aria-labelledby\": label ? labelId : undefined,\n };\n return Children.map(children, (child) =>\n cloneElement(child, ariaState)\n );\n };\n\n const ContainerComponent = getContainerComponent(updatedLayoutType);\n\n return (\n <ContainerComponent\n data-testid={testId}\n {...getContainerLayoutProps(updatedLayoutType)}\n >\n {label && renderFormLabel()}\n {renderChildren()}\n {errorMessage && (\n <ErrorMessageContainer>\n <ErrorIcon aria-hidden />\n <ErrorMessage\n id={errorMessageId}\n tabIndex={0}\n data-testid={\n errorTestId ??\n // FIXME: kept for backwards-compatibility\n // in most cases data-testid should be separate from id\n (id ? `${id}-error-message` : \"error-message\")\n }\n >\n {errorMessage}\n </ErrorMessage>\n </ErrorMessageContainer>\n )}\n </ContainerComponent>\n );\n};\n"],"names":["label","errorMessage","eRaw","id","disabled","children","layoutType","mobileCols","tabletCols","desktopCols","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","testId","errorTestId","updatedLayoutType","trim","internalId","useId","labelId","subtitleId","errorMessageId","ContainerComponent","V2_ColDivContainer","ColDivContainer","Container","getContainerComponent","_jsxs","Object","assign","getContainerLayoutProps","_jsx","FormLabel","htmlFor","ariaState","undefined","subtitle","filter","Boolean","join","Children","map","child","cloneElement","renderChildren","ErrorMessageContainer","ErrorIcon","ErrorMessage","tabIndex"],"mappings":"0aAqB2B,EACvBA,QACAC,aAAcC,EACdC,KACAC,WACAC,WACAC,aACAC,aACAC,aACAC,cACAC,UACAC,SACAC,SACAC,SACAC,SACAC,SACAC,UACA,cAAeC,EACf,oBAAqBC,MAKrB,MAAMC,GA+BGb,IAAeC,GAAcC,GAAcC,GACrC,WAENH,IACAI,GACGC,GACAC,GACAC,GACAC,GACAC,GACAC,GAEG,OACCV,GACD,OA5CTL,EAA+B,iBAATC,EAAoBA,EAAKkB,OAASlB,EACxDmB,EAAaC,EAAAA,QACbC,EAAU,GAAGpB,QAAAA,EAAMkB,UACnBG,EAAa,GAAGrB,QAAAA,EAAMkB,mBACtBI,EAAiB,GAAGtB,QAAAA,EAAMkB,kBA8ChC,MA6EMK,EAtDwB,CAC1BpB,IAEA,OAAQA,GACJ,IAAK,UACD,OAAOqB,EAAAA,mBACX,IAAK,OACD,OAAOC,EAAAA,gBACX,IAAK,OACD,OAAOC,EAAAA,YA6CQC,CAAsBX,GAEjD,OACIY,EAAAA,KAACL,EAAkBM,OAAAC,OAAA,CAAA,cACFhB,GAjFW,CAACX,IAC7B,OAAQA,GACJ,IAAK,UACD,MAAO,CACHC,aACAC,aACAC,eAER,IAAK,OACD,MAAO,CACHC,UACAC,SACAC,SACAC,SACAC,SACAC,SACAC,WAER,IAAK,OACD,SA+DAkB,CAAwBf,cAE3BnB,IA3CgB,iBAAVA,EAEHmC,EAAAA,IAACC,YAAS,CACNC,QAAS,GAAGlC,SAAS,cAGRA,EAAK,GAAGA,UAAa,aAClCA,GAAIoB,EACJnB,SAAUA,EAAQC,SAEjBL,IAKTmC,EAAAA,IAACC,YAASJ,OAAAC,OAAA,CACNI,QAAS,GAAGlC,SAAS,cACRA,EAAK,GAAGA,UAAa,aAClCA,GAAIoB,EACJnB,SAAUA,GACNJ,KAKO,MACnB,MAAMsC,EAAY,CACd,iBA3GKpC,EA4GL,mBAnGA,CACID,EAAewB,OAAiBc,EANhB,iBAAVvC,IAAwBA,aAAK,EAALA,EAAOwC,UAOhBhB,OAAae,GAEjCE,OAAOC,SACPC,KAAK,WAAQJ,EA+FlB,kBAAmBvC,EAAQuB,OAAUgB,GAEzC,OAAOK,EAAAA,SAASC,IAAIxC,GAAWyC,GAC3BC,eAAaD,EAAOR,IACvB,EAWIU,GACA/C,GACG8B,EAAAA,KAACkB,EAAAA,sBAAqB,CAAA5C,SAAA,CAClB8B,EAAAA,IAACe,EAAAA,UAAS,CAAA,eAAA,IACVf,EAAAA,IAACgB,gBACGhD,GAAIsB,EACJ2B,SAAU,EAAC,cAEPlC,QAAAA,EAGCf,EAAK,GAAGA,kBAAqB,yBAGjCF,UAII"}
1
+ {"version":3,"file":"form-wrapper.js","sources":["../../../src/form/form-wrapper.tsx"],"sourcesContent":["/**\n * This is a SUPPORTING component\n * (Do not include in the main export)\n *\n */\n\nimport {\n Children,\n ComponentType,\n Fragment,\n cloneElement,\n isValidElement,\n} from \"react\";\nimport { useId } from \"../util\";\nimport { FormLabel } from \"./form-label\";\nimport {\n ErrorIcon,\n ErrorMessage,\n ErrorMessageContainer,\n} from \"./form-label.style\";\nimport {\n ColDivContainer,\n Container,\n V2_ColDivContainer,\n} from \"./form-wrapper.style\";\nimport { FormElementLayoutType, FormWrapperProps } from \"./types\";\n\nexport const FormWrapper = ({\n label,\n errorMessage: eRaw,\n id,\n disabled,\n children,\n layoutType,\n mobileCols,\n tabletCols,\n desktopCols,\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n \"data-testid\": testId,\n \"data-error-testid\": errorTestId,\n}: FormWrapperProps): JSX.Element => {\n // =============================================================================\n // CONST, STATE, REFS\n // =============================================================================\n const updatedLayoutType = getLayoutType();\n const errorMessage = typeof eRaw === \"string\" ? eRaw.trim() : eRaw;\n const internalId = useId();\n const labelId = `${id ?? internalId}-label`; // matches FormLabel\n const subtitleId = `${id ?? internalId}-label-subtitle`; // matches FormLabel\n const errorMessageId = `${id ?? internalId}-error-message`;\n\n // =============================================================================\n // HELPER FUNCTIONS\n // =============================================================================\n\n const isInvalidState = (): boolean => {\n return !!eRaw;\n };\n\n const hasSubtitleLabel = (): boolean => {\n return typeof label === \"object\" && !!label?.subtitle;\n };\n\n const getAriaDescribedBy = (): string | undefined => {\n return (\n [\n errorMessage ? errorMessageId : undefined,\n hasSubtitleLabel() ? subtitleId : undefined,\n ]\n .filter(Boolean)\n .join(\" \") || undefined\n );\n };\n\n function getLayoutType(): FormElementLayoutType {\n if (!layoutType && (mobileCols || tabletCols || desktopCols)) {\n return \"v2-grid\";\n } else if (\n !layoutType &&\n (xxsCols ||\n xsCols ||\n smCols ||\n mdCols ||\n lgCols ||\n xlCols ||\n xxlCols)\n ) {\n return \"grid\";\n } else if (!layoutType) {\n return \"flex\";\n } else {\n return layoutType;\n }\n }\n\n const getContainerLayoutProps = (layoutType: FormElementLayoutType) => {\n switch (layoutType) {\n case \"v2-grid\":\n return {\n mobileCols,\n tabletCols,\n desktopCols,\n };\n case \"grid\":\n return {\n xxsCols,\n xsCols,\n smCols,\n mdCols,\n lgCols,\n xlCols,\n xxlCols,\n };\n case \"flex\":\n return undefined;\n }\n };\n\n const getContainerComponent = (\n layoutType: FormElementLayoutType\n ): ComponentType => {\n switch (layoutType) {\n case \"v2-grid\":\n return V2_ColDivContainer;\n case \"grid\":\n return ColDivContainer;\n case \"flex\":\n return Container;\n }\n };\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n\n const renderFormLabel = (): JSX.Element => {\n if (typeof label === \"string\") {\n return (\n <FormLabel\n htmlFor={`${id}-base`}\n // FIXME: kept for backwards-compatibility\n // in most cases data-testid should be separate from id\n data-testid={id ? `${id}-label` : \"form-label\"}\n id={labelId}\n disabled={disabled}\n >\n {label}\n </FormLabel>\n );\n }\n return (\n <FormLabel\n htmlFor={`${id}-base`}\n data-testid={id ? `${id}-label` : \"form-label\"}\n id={labelId}\n disabled={disabled}\n {...label}\n />\n );\n };\n\n const renderChildren = (): JSX.Element | JSX.Element[] => {\n const ariaState = {\n \"aria-invalid\": isInvalidState(),\n \"aria-describedby\": getAriaDescribedBy(),\n \"aria-labelledby\": label ? labelId : undefined,\n };\n return Children.map(children, (child) => {\n if (isValidElement(child) && child.type === Fragment) {\n return cloneElement(child);\n }\n return cloneElement(child, ariaState);\n });\n };\n\n const ContainerComponent = getContainerComponent(updatedLayoutType);\n\n return (\n <ContainerComponent\n data-testid={testId}\n {...getContainerLayoutProps(updatedLayoutType)}\n >\n {label && renderFormLabel()}\n {renderChildren()}\n {errorMessage && (\n <ErrorMessageContainer>\n <ErrorIcon aria-hidden />\n <ErrorMessage\n id={errorMessageId}\n tabIndex={0}\n data-testid={\n errorTestId ??\n // FIXME: kept for backwards-compatibility\n // in most cases data-testid should be separate from id\n (id ? `${id}-error-message` : \"error-message\")\n }\n >\n {errorMessage}\n </ErrorMessage>\n </ErrorMessageContainer>\n )}\n </ContainerComponent>\n );\n};\n"],"names":["label","errorMessage","eRaw","id","disabled","children","layoutType","mobileCols","tabletCols","desktopCols","xxsCols","xsCols","smCols","mdCols","lgCols","xlCols","xxlCols","testId","errorTestId","updatedLayoutType","trim","internalId","useId","labelId","subtitleId","errorMessageId","ContainerComponent","V2_ColDivContainer","ColDivContainer","Container","getContainerComponent","_jsxs","Object","assign","getContainerLayoutProps","_jsx","FormLabel","htmlFor","ariaState","undefined","subtitle","filter","Boolean","join","Children","map","child","isValidElement","type","Fragment","cloneElement","renderChildren","ErrorMessageContainer","ErrorIcon","ErrorMessage","tabIndex"],"mappings":"0aA2B2B,EACvBA,QACAC,aAAcC,EACdC,KACAC,WACAC,WACAC,aACAC,aACAC,aACAC,cACAC,UACAC,SACAC,SACAC,SACAC,SACAC,SACAC,UACA,cAAeC,EACf,oBAAqBC,MAKrB,MAAMC,GA+BGb,IAAeC,GAAcC,GAAcC,GACrC,WAENH,IACAI,GACGC,GACAC,GACAC,GACAC,GACAC,GACAC,GAEG,OACCV,GACD,OA5CTL,EAA+B,iBAATC,EAAoBA,EAAKkB,OAASlB,EACxDmB,EAAaC,EAAAA,QACbC,EAAU,GAAGpB,QAAAA,EAAMkB,UACnBG,EAAa,GAAGrB,QAAAA,EAAMkB,mBACtBI,EAAiB,GAAGtB,QAAAA,EAAMkB,kBA8ChC,MAgFMK,EAzDwB,CAC1BpB,IAEA,OAAQA,GACJ,IAAK,UACD,OAAOqB,EAAAA,mBACX,IAAK,OACD,OAAOC,EAAAA,gBACX,IAAK,OACD,OAAOC,EAAAA,YAgDQC,CAAsBX,GAEjD,OACIY,EAAAA,KAACL,EAAkBM,OAAAC,OAAA,CAAA,cACFhB,GApFW,CAACX,IAC7B,OAAQA,GACJ,IAAK,UACD,MAAO,CACHC,aACAC,aACAC,eAER,IAAK,OACD,MAAO,CACHC,UACAC,SACAC,SACAC,SACAC,SACAC,SACAC,WAER,IAAK,OACD,SAkEAkB,CAAwBf,cAE3BnB,IA9CgB,iBAAVA,EAEHmC,EAAAA,IAACC,YAAS,CACNC,QAAS,GAAGlC,SAAS,cAGRA,EAAK,GAAGA,UAAa,aAClCA,GAAIoB,EACJnB,SAAUA,EAAQC,SAEjBL,IAKTmC,EAAAA,IAACC,YAASJ,OAAAC,OAAA,CACNI,QAAS,GAAGlC,SAAS,cACRA,EAAK,GAAGA,UAAa,aAClCA,GAAIoB,EACJnB,SAAUA,GACNJ,KAKO,MACnB,MAAMsC,EAAY,CACd,iBA3GKpC,EA4GL,mBAnGA,CACID,EAAewB,OAAiBc,EANhB,iBAAVvC,IAAwBA,aAAK,EAALA,EAAOwC,UAOhBhB,OAAae,GAEjCE,OAAOC,SACPC,KAAK,WAAQJ,EA+FlB,kBAAmBvC,EAAQuB,OAAUgB,GAEzC,OAAOK,WAASC,IAAIxC,GAAWyC,GACvBC,EAAAA,eAAeD,IAAUA,EAAME,OAASC,EAAAA,SACjCC,EAAAA,aAAaJ,GAEjBI,EAAAA,aAAaJ,EAAOR,IAC7B,EAWGa,GACAlD,GACG8B,EAAAA,KAACqB,EAAAA,sBAAqB,CAAA/C,SAAA,CAClB8B,EAAAA,IAACkB,EAAAA,UAAS,CAAA,eAAA,IACVlB,EAAAA,IAACmB,gBACGnD,GAAIsB,EACJ8B,SAAU,EAAC,cAEPrC,QAAAA,EAGCf,EAAK,GAAGA,kBAAqB,yBAGjCF,UAII"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("../_virtual/_tslib.js"),i=require("react/jsx-runtime"),t=require("@lifesg/react-icons"),n=require("@lifesg/react-icons/bin"),r=require("@react-aria/live-announcer"),l=require("react"),a=require("react-zoom-pan-pinch"),o=require("../modal-v2/index.js");require("../external/lodash/_root.js"),require("../external/lodash/_baseGetTag.js");var s=require("../shared/hooks/use-state-callback.js");require("../util/calendar-helper.js"),require("../util/date-helper.js"),require("../util/date-input-helper.js"),require("../util/simple-id-generator.js"),require("../util/string-helper.js");var u=require("../util/use-event-listener.js"),d=require("./fullscreen-image-carousel.style.js");const c=e=>!!e&&"custom"===e.type,h=(h,m)=>{var v,{items:f,initialActiveItemIndex:g,hideThumbnail:j=!1,hideNavigation:x=!1,hideCounter:b=!1,hideMagnifier:p=!1,onDelete:I,onClose:C,insets:$,show:T}=h,S=e.__rest(h,["items","initialActiveItemIndex","hideThumbnail","hideNavigation","hideCounter","hideMagnifier","onDelete","onClose","insets","show"]);const[w,q]=s.useStateCallback(null!=g?g:0),[k,y]=l.useState({}),[M,R]=l.useState(1),[F,A]=l.useState(),[B,L]=l.useState(),N=l.useRef(null),W=l.useRef([]),D=l.useRef([]),E=l.useRef(null),G=F&&B?F-B:0,P=f[w],_=f.some((e=>{var i;return c(e)&&!!(null===(i=e.itemLabel)||void 0===i?void 0:i.trim())})),z=_?"item":"image",Z=l.useMemo((()=>f.some((e=>{var i,t;return(null===(i=e.fileName)||void 0===i?void 0:i.trim())||(null===(t=e.fileSize)||void 0===t?void 0:t.trim())}))),[f]),O=l.useCallback((e=>{var i,t;const n=f[e],r=_?"Item":"Image",l=c(n)?(null===(i=n.itemLabel)||void 0===i?void 0:i.trim())||"":(null===(t=n.alt)||void 0===t?void 0:t.trim())||"",a=`${r} ${e+1} of ${f.length}.`;return l?`${l}. ${a}`:a}),[f,_]);l.useImperativeHandle(m,(()=>({currentItemIndex:w,setCurrentItem:Q,goToPrevItem:J,goToNextItem:K}))),u.useEventListener("keydown",(function(e){"ArrowRight"===e.key?K():"ArrowLeft"===e.key?J():"Escape"===e.key&&(null==C||C())}),"document"),l.useEffect((()=>{var e;T&&(null===(e=E.current)||void 0===e||e.focus())}),[T]),l.useEffect((()=>{0!==f.length?w>f.length-1&&q(f.length-1):q(0)}),[w,f.length,q]),l.useEffect((()=>{var e,i;null===(i=null===(e=W.current)||void 0===e?void 0:e[w])||void 0===i||i.scrollIntoView({behavior:"smooth",inline:"center"}),R(1)}),[w]);const V=e=>{R(e.state.scale)};const X=({src:e,height:i,width:t})=>{y((n=>Object.assign(Object.assign({},n),{[e]:{height:i,width:t}})))},H=()=>{if(!P||c(P))return;const e=k[P.src];if(N.current&&e){const{clientHeight:i,clientWidth:t}=N.current,{width:n,height:r}=e,l=r/n<i/t;return n<t&&r<i?l?t/n:i/r:l?i/(r/(n/t)):t/(n/(r/i))}},J=()=>{var e,i;null===(i=null===(e=D.current)||void 0===e?void 0:e[w])||void 0===i||i.resetTransform(),q((e=>0===e?f.length-1:e-1),(e=>{r.clearAnnouncer("polite"),r.announce(O(e),"polite")}))},K=()=>{var e,i;null===(i=null===(e=D.current)||void 0===e?void 0:e[w])||void 0===i||i.resetTransform(),q((e=>e===f.length-1?0:e+1),(e=>{r.clearAnnouncer("polite"),r.announce(O(e),"polite")}))},Q=e=>{var i,t;null===(t=null===(i=D.current)||void 0===i?void 0:i[w])||void 0===t||t.resetTransform(),q(e)};return i.jsx(o.ModalV2,Object.assign({},S,{"data-testid":"image-carousel-modal","aria-label":_?"Carousel":"Image carousel",show:T,disableInitialFocus:!0,children:i.jsxs(d.CarouselModalContent,{children:[i.jsxs(d.ImageGalleryContainer,{children:[i.jsxs(d.ImageGalleryWrapper,{children:[i.jsx(d.ImageGallerySwipe,{ref:N,onTouchStart:e=>{M<=1&&A(e.touches[0].clientX)},onTouchMove:e=>{!F||M>1||L(e.touches[0].clientX)},onTouchEnd:()=>{N.current&&(Math.abs(G)>N.current.offsetWidth/3&&(G>0?K():J()),A(void 0),L(void 0))},children:i.jsx(d.ImageGallerySlides,{style:{transform:`translateX(calc(${100*-w}% - ${G}px))`},children:f.map(((e,t)=>{const n=t===w,r=Math.abs(t-w)<=1||0===w&&t===f.length-1||w===f.length-1&&0===t;return i.jsx(d.ImageGallerySlide,{"data-testid":"slide-item",children:i.jsx(d.FocusableImageRegion,{ref:n?E:null,tabIndex:n?0:-1,children:c(e)?r?e.renderContent():i.jsx(d.SlidePlaceholderImage,{}):i.jsx(a.TransformWrapper,{ref:e=>D.current[t]=e,panning:{disabled:M<=1},initialScale:1,onZoom:V,onZoomStop:V,onWheel:V,children:i.jsx(a.TransformComponent,{children:i.jsx(d.SlideImage,{src:e.src,alt:O(t),placeholder:i.jsx(d.SlidePlaceholderImage,{}),fit:"scale-down",retrieveImageDimension:!0,setDimension:X})})})})},t)}))})}),!x&&i.jsxs(i.Fragment,{children:[i.jsx(d.ArrowButton,{"aria-label":`Previous ${z}`,"data-testid":"prev-btn",$position:"left",onClick:J,$insetLeft:null==$?void 0:$.left,$insetRight:null==$?void 0:$.right,children:i.jsx(t.ChevronLeftIcon,{"aria-hidden":!0})}),i.jsx(d.ArrowButton,{"aria-label":`Next ${z}`,"data-testid":"forward-btn",$position:"right",onClick:K,$insetLeft:null==$?void 0:$.left,$insetRight:null==$?void 0:$.right,children:i.jsx(t.ChevronRightIcon,{"aria-hidden":!0})})]}),!b&&i.jsx(d.BoxChip,{"aria-hidden":"true",children:i.jsx(d.Chip,{weight:"semibold",children:`${w+1}/${f.length}`})})]}),!j&&i.jsx(d.ThumbnailContainer,{$insetBottom:null==$?void 0:$.bottom,"aria-hidden":"true",children:i.jsx(d.ThumbnailWrapper,{children:f.map(((e,t)=>{var n;const r=c(e)?e.thumbnailSrc:null!==(n=e.thumbnailSrc)&&void 0!==n?n:e.src;return i.jsx(d.ThumbnailItemContainer,{children:i.jsx(d.ThumbnailItem,{"data-testid":"thumbnail-item",$active:t===w,onClick:()=>Q(t),ref:e=>W.current[t]=e,children:r?i.jsx(d.ThumbnailImage,{src:r,alt:`Thumbnail ${t+1}`,fit:"cover"}):i.jsx(d.SlidePlaceholderImage,{})})},t)}))})})]}),i.jsxs(d.TopActionButtons,{$hasFileInfo:Z,$insetTop:null==$?void 0:$.top,$insetLeft:null==$?void 0:$.left,$insetRight:null==$?void 0:$.right,children:[Z&&(()=>{const{fileName:e,fileSize:t}=null!=P?P:{},n=null==e?void 0:e.trim(),r=null==t?void 0:t.trim();return i.jsxs(d.FileInfoTextWrapper,{$centerContent:!r,"aria-live":"polite","aria-atomic":"true","data-testid":"file-info-bar",children:[n&&i.jsx(d.FileInfoFileName,{weight:"semibold","data-testid":"file-info-name",children:n}),r&&i.jsx(d.FileInfoFileSize,{"data-testid":"file-info-size",children:r})]})})(),!p&&!c(P)&&i.jsx(d.MagnifierButton,{"aria-label":1===M?"Zoom in":"Zoom out",onClick:()=>{var e,i,t,n;if(1===M){const t=H();null===(i=null===(e=D.current)||void 0===e?void 0:e[w])||void 0===i||i.centerView(t),R(null!=t?t:1)}else R(1),null===(n=null===(t=D.current)||void 0===t?void 0:t[w])||void 0===n||n.resetTransform()},children:1===M?i.jsx(t.MagnifierPlusIcon,{"aria-hidden":!0}):i.jsx(t.MagnifierMinusIcon,{"aria-hidden":!0})}),I&&i.jsx(d.DeleteButton,{"aria-label":`Delete ${c(P)&&(null===(v=P.itemLabel)||void 0===v?void 0:v.trim())||"image"}`,"data-testid":"delete-btn",onClick:()=>{P&&I&&I(P,w)},children:i.jsx(n.BinIcon,{"aria-hidden":!0})}),i.jsx(d.CloseButton,{"aria-label":_?"Close carousel":"Close image carousel",onClick:C,children:i.jsx(t.CrossIcon,{"aria-hidden":!0})})]})]})}))},m=l.forwardRef(h);exports.Component=h,exports.FullscreenImageCarousel=m;
1
+ "use strict";var e=require("../_virtual/_tslib.js"),i=require("react/jsx-runtime"),t=require("@lifesg/react-icons"),n=require("@lifesg/react-icons/bin"),r=require("@react-aria/live-announcer"),l=require("react"),a=require("react-zoom-pan-pinch"),o=require("../modal-v2/index.js"),s=require("../shared/hooks/use-state-callback.js");require("../util/calendar-helper.js"),require("../util/date-helper.js"),require("../util/date-input-helper.js"),require("../util/simple-id-generator.js"),require("../util/string-helper.js");var u=require("../util/use-event-listener.js"),d=require("./fullscreen-image-carousel.style.js");const c=e=>!!e&&"custom"===e.type,h=(h,m)=>{var v,{items:f,initialActiveItemIndex:g,hideThumbnail:j=!1,hideNavigation:x=!1,hideCounter:p=!1,hideMagnifier:b=!1,onDelete:I,onClose:C,insets:$,show:T}=h,S=e.__rest(h,["items","initialActiveItemIndex","hideThumbnail","hideNavigation","hideCounter","hideMagnifier","onDelete","onClose","insets","show"]);const[w,q]=s.useStateCallback(null!=g?g:0),[k,y]=l.useState({}),[M,R]=l.useState(1),[F,A]=l.useState(),[B,L]=l.useState(),N=l.useRef(null),W=l.useRef([]),D=l.useRef([]),E=l.useRef(null),P=F&&B?F-B:0,z=f[w],G=f.some((e=>{var i;return c(e)&&!!(null===(i=e.itemLabel)||void 0===i?void 0:i.trim())})),Z=G?"item":"image",_=l.useMemo((()=>f.some((e=>{var i,t;return(null===(i=e.fileName)||void 0===i?void 0:i.trim())||(null===(t=e.fileSize)||void 0===t?void 0:t.trim())}))),[f]),O=l.useCallback((e=>{var i,t;const n=f[e],r=G?"Item":"Image",l=c(n)?(null===(i=n.itemLabel)||void 0===i?void 0:i.trim())||"":(null===(t=n.alt)||void 0===t?void 0:t.trim())||"",a=`${r} ${e+1} of ${f.length}.`;return l?`${l}. ${a}`:a}),[f,G]);l.useImperativeHandle(m,(()=>({currentItemIndex:w,setCurrentItem:Q,goToPrevItem:J,goToNextItem:K}))),u.useEventListener("keydown",(function(e){"ArrowRight"===e.key?K():"ArrowLeft"===e.key?J():"Escape"===e.key&&(null==C||C())}),"document"),l.useEffect((()=>{var e;T&&(null===(e=E.current)||void 0===e||e.focus())}),[T]),l.useEffect((()=>{0!==f.length?w>f.length-1&&q(f.length-1):q(0)}),[w,f.length,q]),l.useEffect((()=>{var e,i;null===(i=null===(e=W.current)||void 0===e?void 0:e[w])||void 0===i||i.scrollIntoView({behavior:"smooth",inline:"center"}),R(1)}),[w]);const V=e=>{R(e.state.scale)};const X=({src:e,height:i,width:t})=>{y((n=>Object.assign(Object.assign({},n),{[e]:{height:i,width:t}})))},H=()=>{if(!z||c(z))return;const e=k[z.src];if(N.current&&e){const{clientHeight:i,clientWidth:t}=N.current,{width:n,height:r}=e,l=r/n<i/t;return n<t&&r<i?l?t/n:i/r:l?i/(r/(n/t)):t/(n/(r/i))}},J=()=>{var e,i;null===(i=null===(e=D.current)||void 0===e?void 0:e[w])||void 0===i||i.resetTransform(),q((e=>0===e?f.length-1:e-1),(e=>{r.clearAnnouncer("polite"),r.announce(O(e),"polite")}))},K=()=>{var e,i;null===(i=null===(e=D.current)||void 0===e?void 0:e[w])||void 0===i||i.resetTransform(),q((e=>e===f.length-1?0:e+1),(e=>{r.clearAnnouncer("polite"),r.announce(O(e),"polite")}))},Q=e=>{var i,t;null===(t=null===(i=D.current)||void 0===i?void 0:i[w])||void 0===t||t.resetTransform(),q(e)};return i.jsx(o.ModalV2,Object.assign({},S,{"data-testid":"image-carousel-modal","aria-label":G?"Carousel":"Image carousel",show:T,disableInitialFocus:!0,children:i.jsxs(d.CarouselModalContent,{children:[i.jsxs(d.ImageGalleryContainer,{children:[i.jsxs(d.ImageGalleryWrapper,{children:[i.jsx(d.ImageGallerySwipe,{ref:N,onTouchStart:e=>{M<=1&&A(e.touches[0].clientX)},onTouchMove:e=>{!F||M>1||L(e.touches[0].clientX)},onTouchEnd:()=>{N.current&&(Math.abs(P)>N.current.offsetWidth/3&&(P>0?K():J()),A(void 0),L(void 0))},children:i.jsx(d.ImageGallerySlides,{style:{transform:`translateX(calc(${100*-w}% - ${P}px))`},children:f.map(((e,t)=>{const n=t===w,r=Math.abs(t-w)<=1||0===w&&t===f.length-1||w===f.length-1&&0===t;return i.jsx(d.ImageGallerySlide,{"data-testid":"slide-item",children:i.jsx(d.FocusableImageRegion,{ref:n?E:null,tabIndex:n?0:-1,children:c(e)?r?e.renderContent():i.jsx(d.SlidePlaceholderImage,{}):i.jsx(a.TransformWrapper,{ref:e=>D.current[t]=e,panning:{disabled:M<=1},initialScale:1,onZoom:V,onZoomStop:V,onWheel:V,children:i.jsx(a.TransformComponent,{children:i.jsx(d.SlideImage,{src:e.src,alt:O(t),placeholder:i.jsx(d.SlidePlaceholderImage,{}),fit:"scale-down",retrieveImageDimension:!0,setDimension:X})})})})},t)}))})}),!x&&i.jsxs(i.Fragment,{children:[i.jsx(d.ArrowButton,{"aria-label":`Previous ${Z}`,"data-testid":"prev-btn",$position:"left",onClick:J,$insetLeft:null==$?void 0:$.left,$insetRight:null==$?void 0:$.right,children:i.jsx(t.ChevronLeftIcon,{"aria-hidden":!0})}),i.jsx(d.ArrowButton,{"aria-label":`Next ${Z}`,"data-testid":"forward-btn",$position:"right",onClick:K,$insetLeft:null==$?void 0:$.left,$insetRight:null==$?void 0:$.right,children:i.jsx(t.ChevronRightIcon,{"aria-hidden":!0})})]}),!p&&i.jsx(d.BoxChip,{"aria-hidden":"true",children:i.jsx(d.Chip,{weight:"semibold",children:`${w+1}/${f.length}`})})]}),!j&&i.jsx(d.ThumbnailContainer,{$insetBottom:null==$?void 0:$.bottom,"aria-hidden":"true",children:i.jsx(d.ThumbnailWrapper,{children:f.map(((e,t)=>{var n;const r=c(e)?e.thumbnailSrc:null!==(n=e.thumbnailSrc)&&void 0!==n?n:e.src;return i.jsx(d.ThumbnailItemContainer,{children:i.jsx(d.ThumbnailItem,{"data-testid":"thumbnail-item",$active:t===w,onClick:()=>Q(t),ref:e=>W.current[t]=e,children:r?i.jsx(d.ThumbnailImage,{src:r,alt:`Thumbnail ${t+1}`,fit:"cover"}):i.jsx(d.SlidePlaceholderImage,{})})},t)}))})})]}),i.jsxs(d.TopActionButtons,{$hasFileInfo:_,$insetTop:null==$?void 0:$.top,$insetLeft:null==$?void 0:$.left,$insetRight:null==$?void 0:$.right,children:[_&&(()=>{const{fileName:e,fileSize:t}=null!=z?z:{},n=null==e?void 0:e.trim(),r=null==t?void 0:t.trim();return i.jsxs(d.FileInfoTextWrapper,{$centerContent:!r,"aria-live":"polite","aria-atomic":"true","data-testid":"file-info-bar",children:[n&&i.jsx(d.FileInfoFileName,{weight:"semibold","data-testid":"file-info-name",children:n}),r&&i.jsx(d.FileInfoFileSize,{"data-testid":"file-info-size",children:r})]})})(),!b&&!c(z)&&i.jsx(d.MagnifierButton,{"aria-label":1===M?"Zoom in":"Zoom out",onClick:()=>{var e,i,t,n;if(1===M){const t=H();null===(i=null===(e=D.current)||void 0===e?void 0:e[w])||void 0===i||i.centerView(t),R(null!=t?t:1)}else R(1),null===(n=null===(t=D.current)||void 0===t?void 0:t[w])||void 0===n||n.resetTransform()},children:1===M?i.jsx(t.MagnifierPlusIcon,{"aria-hidden":!0}):i.jsx(t.MagnifierMinusIcon,{"aria-hidden":!0})}),I&&i.jsx(d.DeleteButton,{"aria-label":`Delete ${c(z)&&(null===(v=z.itemLabel)||void 0===v?void 0:v.trim())||"image"}`,"data-testid":"delete-btn",onClick:()=>{z&&I&&I(z,w)},children:i.jsx(n.BinIcon,{"aria-hidden":!0})}),i.jsx(d.CloseButton,{"aria-label":G?"Close carousel":"Close image carousel",onClick:C,children:i.jsx(t.CrossIcon,{"aria-hidden":!0})})]})]})}))},m=l.forwardRef(h);exports.Component=h,exports.FullscreenImageCarousel=m;
2
2
  //# sourceMappingURL=fullscreen-image-carousel.js.map