barbican-reset 3.36.0 → 3.40.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/components/BrAlert.vue +2 -2
  2. package/components/BrButton.vue +11 -3
  3. package/components/BrCard.vue +1 -1
  4. package/components/BrCardTearoff.vue +1 -1
  5. package/components/BrCollapse/Button.vue +1 -1
  6. package/components/BrConfirmDone.vue +6 -6
  7. package/components/BrConfirmEmail.vue +6 -6
  8. package/components/BrDetails.vue +5 -1
  9. package/components/BrFormCheckbox.vue +3 -3
  10. package/components/BrFormCheckboxGroup.vue +1 -1
  11. package/components/BrFormDate.vue +1 -1
  12. package/components/BrFormEdit.vue +2 -2
  13. package/components/BrFormEmail.vue +1 -1
  14. package/components/BrFormInput.vue +18 -1
  15. package/components/BrFormPassword.vue +2 -2
  16. package/components/BrFormRadio.vue +3 -3
  17. package/components/BrFormRadioGroup.vue +2 -2
  18. package/components/BrFormRow.vue +2 -2
  19. package/components/BrFormSelect.vue +3 -57
  20. package/components/BrFormSelectItem.vue +1 -7
  21. package/components/BrFormTel.vue +1 -1
  22. package/components/BrFormTextarea.vue +1 -1
  23. package/components/BrFormToggle.vue +6 -9
  24. package/components/BrFormUpdate.vue +1 -1
  25. package/components/BrFormVisible.vue +3 -3
  26. package/components/BrLink.vue +20 -5
  27. package/components/BrLoader.vue +1 -1
  28. package/components/BrOverlay.vue +57 -23
  29. package/components/BrQrCode.vue +21 -0
  30. package/icons/{city_of_london_lockup.vue → CityOfLondonLockup.vue} +5 -12
  31. package/icons/Dropdown.vue +6 -0
  32. package/icons/Renew.vue +5 -0
  33. package/icons/dots.vue +50 -0
  34. package/icons/index.js +18 -18
  35. package/index.js +52 -102
  36. package/package.json +8 -14
  37. package/scss/_atomic.scss +1 -1
  38. package/scss/_br-button.scss +13 -19
  39. package/scss/_br-form-select.scss +52 -0
  40. package/scss/_br-form-toggle.scss +27 -24
  41. package/scss/_br-overlay.scss +29 -4
  42. package/scss/_br-qr-code.scss +3 -0
  43. package/scss/_br-table-row.scss +1 -1
  44. package/scss/_input.scss +1 -1
  45. package/scss/_variables.scss +176 -22
  46. package/scss/card/_membership-new.scss +10 -23
  47. package/scss/index.scss +2 -1
  48. package/scss/mixins/_br-alert.scss +1 -1
  49. package/scss/mixins/_br-card.scss +1 -1
  50. package/scss/mixins/_br-form-radio.scss +1 -1
  51. package/scss/mixins/_content.scss +1 -1
  52. package/scss/mixins/_focus.scss +1 -1
  53. package/scss/mixins/_font-size.scss +3 -3
  54. package/scss/mixins/buttons/_custom.scss +12 -85
  55. package/scss/mixins/buttons/_outline.scss +8 -12
  56. package/scss/mixins/buttons/_setup.scss +3 -7
  57. package/scss/mixins/buttons/custom/_edit-input.scss +22 -0
  58. package/scss/mixins/buttons/custom/_exit-overlay-bg.scss +12 -0
  59. package/scss/mixins/buttons/custom/_exit-overlay.scss +3 -19
  60. package/scss/mixins/buttons/custom/_exit.scss +11 -0
  61. package/scss/mixins/buttons/custom/_invisible.scss +2 -2
  62. package/scss/mixins/buttons/custom/_link.scss +19 -0
  63. package/scss/mixins/buttons/custom/_manage-order.scss +4 -4
  64. package/scss/mixins/buttons/custom/_outline-secondary.scss +1 -5
  65. package/scss/mixins/buttons/custom/_renew-membership.scss +3 -3
  66. package/scss/mixins/buttons/custom/_select-form.scss +15 -5
  67. package/scss/mixins/buttons/custom/_voucher-amount.scss +18 -0
  68. package/scss/mixins/card/_membership.scss +10 -49
  69. package/scss/mixins/card/_qrcode.scss +60 -3
  70. package/scss/mixins/input/_checkbox.scss +1 -1
  71. package/scss/mixins/input/_generic.scss +1 -1
  72. package/scss/mixins/input/_select.scss +1 -1
  73. package/scss/mixins/input/_text.scss +1 -1
  74. package/scss/mixins/table/_details.scss +1 -1
  75. package/scss/mixins/table/_etickets.scss +1 -1
  76. package/scss/mixins/table/_gifts.scss +1 -1
  77. package/scss/mixins/table/_orders.scss +1 -1
  78. package/scss/mixins/table/_preferences.scss +1 -1
  79. package/scss/mixins/table/_tickets.scss +1 -1
  80. package/scss/reset.scss +4 -0
  81. package/utils/datetimes.js +162 -0
  82. package/utils/numbers.js +23 -0
  83. package/utils.js +6 -0
  84. package/components/BrAnchor.vue +0 -34
  85. package/components/BrButton/dot_typing.vue +0 -60
  86. package/components/BrButton/remove_ticket.vue +0 -46
  87. package/icons/account/index.js +0 -20
  88. package/icons/confirm/index.js +0 -4
  89. package/icons/password/index.js +0 -4
  90. package/icons/qr_code.vue +0 -5
  91. package/icons/stream/airplay.vue +0 -15
  92. package/icons/stream/cast.vue +0 -13
  93. package/icons/stream/chat.vue +0 -15
  94. package/icons/stream/cog.vue +0 -13
  95. package/icons/stream/index.js +0 -15
  96. package/icons/stream/live.vue +0 -12
  97. package/icons/stream/volume.vue +0 -13
  98. package/icons/wheelchair.vue +0 -18
  99. package/logos/arts-council-england.svg +0 -1
  100. package/logos/barbican.svg +0 -1
  101. package/logos/city-of-london.svg +0 -1
  102. package/logos/lso.svg +0 -1
  103. package/scripts/helpers.js +0 -6
  104. package/scss/_br-form-select-link.scss +0 -15
  105. /package/{scripts/animations → animations}/confirm.js +0 -0
  106. /package/icons/{account/contact.vue → AccountContact.vue} +0 -0
  107. /package/icons/{account/edit.vue → AccountEdit.vue} +0 -0
  108. /package/icons/{account/membership.vue → AccountMembership.vue} +0 -0
  109. /package/icons/{account/orders.vue → AccountOrders.vue} +0 -0
  110. /package/icons/{account/payment.vue → AccountPayment.vue} +0 -0
  111. /package/icons/{person.vue → AccountPerson.vue} +0 -0
  112. /package/icons/{account/personal.vue → AccountPersonal.vue} +0 -0
  113. /package/icons/{account/ticket.vue → AccountTicket.vue} +0 -0
  114. /package/icons/{back_arrow.vue → BackArrow.vue} +0 -0
  115. /package/icons/{city_of_london.vue → CityOfLondon.vue} +0 -0
  116. /package/icons/{information.vue → Info.vue} +0 -0
  117. /package/{scripts/helpers → utils}/compareArrays.js +0 -0
  118. /package/{scripts/helpers → utils}/constrainTabbing.js +0 -0
  119. /package/{scripts/helpers → utils}/formatKebabCase.js +0 -0
  120. /package/{scripts/helpers → utils}/logObject.js +0 -0
@@ -1,10 +1,9 @@
1
1
  <template>
2
2
  <a
3
- class="city-of-london-lockup"
4
3
  href="//www.cityoflondon.gov.uk"
5
- target="_blank"
6
- >
7
- <city-of-london-logo />
4
+ class="city-of-london-lockup"
5
+ target="_blank">
6
+ <city-of-london />
8
7
  <small>
9
8
  The City of London<br />Corporation is the founder<br />and principal
10
9
  funder of<br />the Barbican Centre
@@ -12,12 +11,6 @@
12
11
  </a>
13
12
  </template>
14
13
 
15
- <script>
16
- import CityOfLondonLogo from "#icons/city_of_london.vue";
17
-
18
- export default {
19
- components: {
20
- CityOfLondonLogo,
21
- },
22
- };
14
+ <script setup>
15
+ import CityOfLondon from './CityOfLondon.vue'
23
16
  </script>
@@ -0,0 +1,6 @@
1
+ <template>
2
+ <svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="M9 0C4.032 0 0 4.032 0 9C0 13.968 4.032 18 9 18C13.968 18 18 13.968 18 9C18 4.032 13.968 0 9 0ZM9 16.8C4.704 16.8 1.2 13.296 1.2 9C1.2 4.704 4.704 1.2 9 1.2C13.296 1.2 16.8 4.704 16.8 9C16.8 13.296 13.296 16.8 9 16.8Z" />
4
+ <path d="M12.012 6.696L8.99999 10.2L5.98799 6.696C5.71199 6.372 5.21999 6.336 4.88399 6.612C4.55999 6.88801 4.52399 7.38 4.79999 7.716L8.39999 11.916C8.54399 12.084 8.75999 12.192 8.98799 12.192C9.21599 12.192 9.43199 12.096 9.57599 11.916L13.176 7.716C13.452 7.392 13.416 6.90001 13.092 6.612C12.768 6.336 12.276 6.372 11.988 6.696H12.012Z" />
5
+ </svg>
6
+ </template>
@@ -0,0 +1,5 @@
1
+ <template>
2
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="M0.000563321 5.32832V1.76813C0.000563321 1.27861 0.40054 0.878085 0.8894 0.878085C1.37826 0.878085 1.77824 1.27861 1.77824 1.76813V2.9252C3.04927 1.40321 4.85361 0.352956 6.86238 0.0770416C9.00448 -0.216674 11.1288 0.335155 12.8531 1.63463C14.5775 2.943 15.6885 4.8388 15.9907 6.98381C16.0618 7.47334 15.7152 7.91836 15.2352 7.98957C15.1908 7.98957 15.1552 7.98957 15.1108 7.98957C14.6753 7.98957 14.2931 7.66915 14.2308 7.22413C13.9997 5.55084 13.1287 4.07336 11.7865 3.0498C10.4444 2.03515 8.78227 1.59902 7.11126 1.83044C5.38692 2.07075 3.84923 3.032 2.85373 4.42938H4.44475C4.93361 4.42938 5.33358 4.8299 5.33358 5.31942C5.33358 5.80895 4.93361 6.20947 4.44475 6.20947H0.8894C0.40054 6.20947 0.000563321 5.80895 0.000563321 5.31942V5.32832ZM15.1108 9.77856H11.5554C11.0666 9.77856 10.6666 10.1791 10.6666 10.6686C10.6666 11.1581 11.0666 11.5587 11.5554 11.5587H13.1465C12.151 12.956 10.6133 13.9173 8.88893 14.1576C5.44913 14.6382 2.24932 12.2173 1.76935 8.76391C1.69824 8.27438 1.25382 7.93617 0.764963 8.00737C0.276103 8.07857 -0.0616553 8.5236 0.00945168 9.01312C0.569419 13.0628 4.04477 16 8.01787 16C8.39118 16 8.75561 15.9733 9.13781 15.9199C11.1466 15.644 12.9509 14.5937 14.222 13.0717V14.2288C14.222 14.7183 14.6219 15.1189 15.1108 15.1189C15.5997 15.1189 15.9996 14.7183 15.9996 14.2288V10.6686C15.9996 10.1791 15.5997 9.77856 15.1108 9.77856Z" />
4
+ </svg>
5
+ </template>
package/icons/dots.vue ADDED
@@ -0,0 +1,50 @@
1
+ <template>
2
+ <div ref="dots">
3
+ <svg
4
+ xmlns="http://www.w3.org/2000/svg"
5
+ viewBox="0 0 14 14"
6
+ height="14"
7
+ width="14">
8
+ <path d="M12,7c0,2.8-2.2,5-5,5S2,9.8,2,7s2.2-5,5-5S12,4.2,12,7z" />
9
+ </svg>
10
+
11
+ <svg
12
+ xmlns="http://www.w3.org/2000/svg"
13
+ viewBox="0 0 14 14"
14
+ height="14"
15
+ width="14">
16
+ <path d="M12,7c0,2.8-2.2,5-5,5S2,9.8,2,7s2.2-5,5-5S12,4.2,12,7z" />
17
+ </svg>
18
+
19
+ <svg
20
+ xmlns="http://www.w3.org/2000/svg"
21
+ viewBox="0 0 14 14"
22
+ height="14"
23
+ width="14">
24
+ <path d="M12,7c0,2.8-2.2,5-5,5S2,9.8,2,7s2.2-5,5-5S12,4.2,12,7z" />
25
+ </svg>
26
+ </div>
27
+ </template>
28
+
29
+ <script setup>
30
+ import { gsap } from 'gsap'
31
+ import { onMounted, useTemplateRef } from 'vue'
32
+
33
+ const dots = useTemplateRef('dots')
34
+
35
+ onMounted(() => {
36
+ const tl = gsap.timeline({ repeat: 9 })
37
+
38
+ const duration = 0.3
39
+
40
+ const keyframes = [
41
+ { y: -8, duration },
42
+ { y: 0, duration },
43
+ ]
44
+
45
+ tl.to(dots.value.children, {
46
+ stagger: duration,
47
+ keyframes,
48
+ })
49
+ })
50
+ </script>
package/icons/index.js CHANGED
@@ -1,19 +1,19 @@
1
- import BackArrow from "#icons/back_arrow.vue";
2
- import BarbicanLogo from "#icons/barbican.vue";
3
- import CartIcon from "#icons/cart.vue";
4
- import CityOfLondonLogo from "#icons/city_of_london.vue";
5
- import CityOfLondonLockup from "#icons/city_of_london_lockup.vue";
6
- import CloseIcon from "#icons/close.vue";
7
- import InformationIcon from "#icons/information.vue";
8
- import QrCode from "#icons/qr_code.vue";
1
+ import BrBackArrow from './BackArrow.vue'
2
+ import BrBarbicanLogo from './Barbican.vue'
3
+ import BrCartIcon from './Cart.vue'
4
+ import BrCityOfLondonLockup from './CityOfLondonLockup.vue'
5
+ import BrCloseIcon from './Close.vue'
6
+ import BrInfoIcon from './Info.vue'
7
+ import BrRenewIcon from './Renew.vue'
8
+ import BrDropdownIcon from './Dropdown.vue'
9
9
 
10
- export {
11
- BackArrow,
12
- BarbicanLogo,
13
- CartIcon,
14
- CityOfLondonLogo,
15
- CityOfLondonLockup,
16
- CloseIcon,
17
- InformationIcon,
18
- QrCode,
19
- };
10
+ import BrAccountContactIcon from './AccountContact.vue'
11
+ import BrAccountDetailsIcon from './AccountPerson.vue'
12
+ import BrAccountEditIcon from './AccountEdit.vue'
13
+ import BrAccountMembershipIcon from './AccountMembership.vue'
14
+ import BrAccountOrdersIcon from './AccountOrders.vue'
15
+ import BrAccountPaymentIcon from './AccountPayment.vue'
16
+ import BrAccountTicketIcon from './AccountTicket.vue'
17
+ import BrAccountPersonalIcon from './AccountPersonal.vue'
18
+
19
+ export { BrAccountContactIcon, BrAccountDetailsIcon, BrAccountEditIcon, BrAccountMembershipIcon, BrAccountOrdersIcon, BrAccountPaymentIcon, BrAccountTicketIcon, BrAccountPersonalIcon, BrBackArrow, BrBarbicanLogo, BrCartIcon, BrCityOfLondonLockup, BrCloseIcon, BrDropdownIcon, BrInfoIcon, BrRenewIcon }
package/index.js CHANGED
@@ -1,102 +1,52 @@
1
- import BrAlert from '#components/BrAlert.vue'
2
- import BrAnchor from '#components/BrAnchor.vue'
3
- import BrButton from '#components/BrButton.vue'
4
-
5
- import BrCard from '#components/BrCard.vue'
6
- import BrCardBody from '#components/BrCardBody.vue'
7
- import BrCardText from '#components/BrCardText.vue'
8
- import BrCardTitle from '#components/BrCardTitle.vue'
9
- import BrCardSubtitle from '#components/BrCardSubtitle.vue'
10
- import BrCardTearoff from '#components/BrCardTearoff.vue'
11
-
12
- import BrCollapseButton from '#components/BrCollapse/Button.vue'
13
- import BrCollapseContent from '#components/BrCollapse/Content.vue'
14
-
15
- import BrConfirmDone from '#components/BrConfirmDone.vue'
16
- import BrConfirmEmail from '#components/BrConfirmEmail.vue'
17
-
18
- import BrContainer from '#components/BrContainer.vue'
19
- import BrDetails from '#components/BrDetails.vue'
20
- import BrFooterLower from '#components/BrFooterLower.vue'
21
- import BrFooterUpper from '#components/BrFooterUpper.vue'
22
-
23
- import BrFormBlock from '#components/BrFormBlock.vue'
24
- import BrFormCheckbox from '#components/BrFormCheckbox.vue'
25
- import BrFormCheckboxGroup from '#components/BrFormCheckboxGroup.vue'
26
- import BrFormDate from '#components/BrFormDate.vue'
27
- import BrFormEdit from '#components/BrFormEdit.vue'
28
- import BrFormEmail from '#components/BrFormEmail.vue'
29
- import BrFormFieldset from '#components/BrFormFieldset.vue'
30
- import BrFormInput from '#components/BrFormInput.vue'
31
- import BrFormLabel from '#components/BrFormLabel.vue'
32
- import BrFormPassword from '#components/BrFormPassword.vue'
33
- import BrFormRadio from '#components/BrFormRadio.vue'
34
- import BrFormRadioGroup from '#components/BrFormRadioGroup.vue'
35
- import BrFormRow from '#components/BrFormRow.vue'
36
- import BrFormSelect from '#components/BrFormSelect.vue'
37
- import BrFormSelectItem from '#components/BrFormSelectItem.vue'
38
- import BrFormTel from '#components/BrFormTel.vue'
39
- import BrFormTextarea from '#components/BrFormTextarea.vue'
40
- import BrFormToggle from '#components/BrFormToggle.vue'
41
- import BrFormUpdate from '#components/BrFormUpdate.vue'
42
- import BrFormVisible from '#components/BrFormVisible.vue'
43
- import BrLink from '#components/BrLink.vue'
44
-
45
- import BrOverlay from '#components/BrOverlay.vue'
46
-
47
- import BrLoader from '#components/BrLoader.vue'
48
- import BrSkiplink from '#components/BrSkiplink.vue'
49
- import BrStatusBars from '#components/BrStatusBars.vue'
50
- import BrTableCell from '#components/BrTableCell.vue'
51
- import BrTableHeader from '#components/BrTableHeader.vue'
52
- import BrTableRow from '#components/BrTableRow.vue'
53
- import BrWrap from '#components/BrWrap.vue'
54
-
55
- export {
56
- BrAlert,
57
- BrAnchor,
58
- BrButton,
59
- BrCard,
60
- BrCardBody,
61
- BrCardSubtitle,
62
- BrCardText,
63
- BrCardTitle,
64
- BrCardTearoff,
65
- BrCollapseButton,
66
- BrCollapseContent,
67
- BrConfirmDone,
68
- BrConfirmEmail,
69
- BrContainer,
70
- BrDetails,
71
- BrFormDate,
72
- BrFooterLower,
73
- BrFooterUpper,
74
- BrFormBlock,
75
- BrFormCheckbox,
76
- BrFormCheckboxGroup,
77
- BrFormEdit,
78
- BrFormEmail,
79
- BrFormFieldset,
80
- BrFormInput,
81
- BrFormLabel,
82
- BrFormPassword,
83
- BrFormRadio,
84
- BrFormRadioGroup,
85
- BrFormRow,
86
- BrFormSelect,
87
- BrFormSelectItem,
88
- BrFormTel,
89
- BrFormTextarea,
90
- BrFormToggle,
91
- BrFormUpdate,
92
- BrFormVisible,
93
- BrLink,
94
- BrLoader,
95
- BrOverlay,
96
- BrSkiplink,
97
- BrStatusBars,
98
- BrTableCell,
99
- BrTableHeader,
100
- BrTableRow,
101
- BrWrap,
102
- }
1
+ export { default as BrAlert } from '#components/BrAlert.vue'
2
+ export { default as BrButton } from '#components/BrButton.vue'
3
+
4
+ export { default as BrCard } from '#components/BrCard.vue'
5
+ export { default as BrCardBody } from '#components/BrCardBody.vue'
6
+ export { default as BrCardSubtitle } from '#components/BrCardSubtitle.vue'
7
+ export { default as BrCardText } from '#components/BrCardText.vue'
8
+ export { default as BrCardTearoff } from '#components/BrCardTearoff.vue'
9
+ export { default as BrCardTitle } from '#components/BrCardTitle.vue'
10
+
11
+ export { default as BrCollapseButton } from '#components/BrCollapse/Button.vue'
12
+ export { default as BrCollapseContent } from '#components/BrCollapse/Content.vue'
13
+
14
+ export { default as BrConfirmDone } from '#components/BrConfirmDone.vue'
15
+ export { default as BrConfirmEmail } from '#components/BrConfirmEmail.vue'
16
+
17
+ export { default as BrContainer } from '#components/BrContainer.vue'
18
+ export { default as BrDetails } from '#components/BrDetails.vue'
19
+ export { default as BrFooterLower } from '#components/BrFooterLower.vue'
20
+ export { default as BrFooterUpper } from '#components/BrFooterUpper.vue'
21
+
22
+ export { default as BrFormBlock } from '#components/BrFormBlock.vue'
23
+ export { default as BrFormCheckbox } from '#components/BrFormCheckbox.vue'
24
+ export { default as BrFormCheckboxGroup } from '#components/BrFormCheckboxGroup.vue'
25
+ export { default as BrFormDate } from '#components/BrFormDate.vue'
26
+ export { default as BrFormEdit } from '#components/BrFormEdit.vue'
27
+ export { default as BrFormEmail } from '#components/BrFormEmail.vue'
28
+ export { default as BrFormFieldset } from '#components/BrFormFieldset.vue'
29
+ export { default as BrFormInput } from '#components/BrFormInput.vue'
30
+ export { default as BrFormLabel } from '#components/BrFormLabel.vue'
31
+ export { default as BrFormPassword } from '#components/BrFormPassword.vue'
32
+ export { default as BrFormRadio } from '#components/BrFormRadio.vue'
33
+ export { default as BrFormRadioGroup } from '#components/BrFormRadioGroup.vue'
34
+ export { default as BrFormRow } from '#components/BrFormRow.vue'
35
+ export { default as BrFormSelect } from '#components/BrFormSelect.vue'
36
+ export { default as BrFormSelectItem } from '#components/BrFormSelectItem.vue'
37
+ export { default as BrFormTel } from '#components/BrFormTel.vue'
38
+ export { default as BrFormTextarea } from '#components/BrFormTextarea.vue'
39
+ export { default as BrFormToggle } from '#components/BrFormToggle.vue'
40
+ export { default as BrFormUpdate } from '#components/BrFormUpdate.vue'
41
+ export { default as BrFormVisible } from '#components/BrFormVisible.vue'
42
+
43
+ export { default as BrLink } from '#components/BrLink.vue'
44
+ export { default as BrLoader } from '#components/BrLoader.vue'
45
+ export { default as BrOverlay } from '#components/BrOverlay.vue'
46
+ export { default as BrQrCode } from '#components/BrQrCode.vue'
47
+ export { default as BrSkiplink } from '#components/BrSkiplink.vue'
48
+ export { default as BrStatusBars } from '#components/BrStatusBars.vue'
49
+ export { default as BrTableCell } from '#components/BrTableCell.vue'
50
+ export { default as BrTableHeader } from '#components/BrTableHeader.vue'
51
+ export { default as BrTableRow } from '#components/BrTableRow.vue'
52
+ export { default as BrWrap } from '#components/BrWrap.vue'
package/package.json CHANGED
@@ -1,26 +1,22 @@
1
1
  {
2
2
  "name": "barbican-reset",
3
- "version": "3.36.0",
3
+ "version": "3.40.0",
4
4
  "description": "Shared design system for Barbican projects, providing SCSS utilities, animations, icons, Vue components, and JS helpers for consistent styling and behaviour.",
5
5
  "main": "index.js",
6
6
  "exports": {
7
7
  ".": "./index.js",
8
- "./animations": "./animations/index.js",
9
8
  "./lists": "./scss/lists.scss",
10
9
  "./reset": "./scss/reset.scss",
11
10
  "./supreme": "./scss/supreme.scss",
12
11
  "./typography": "./scss/typography.scss",
13
12
  "./focus-visible": "./focus-visible.min.js",
14
13
  "./icons": "./icons/index.js",
15
- "./icons/account": "./icons/account/index.js",
16
- "./icons/confirm": "./icons/confirm/index.js",
17
- "./icons/stream": "./icons/stream/index.js",
18
14
  "./scss": "./scss/index.scss",
19
15
  "./scss/functions": "./scss/functions/index.scss",
20
16
  "./scss/mixins": "./scss/mixins/index.scss",
21
17
  "./scss/helpers": "./scss/_helpers.scss",
22
- "./scripts/helpers": "./scripts/helpers.js",
23
- "./mixins": "./mixins/inputs.js"
18
+ "./mixins": "./mixins/inputs.js",
19
+ "./utils": "./utils.js"
24
20
  },
25
21
  "imports": {
26
22
  "#animations/*": "./animations/*.js",
@@ -28,8 +24,7 @@
28
24
  "#icons/*": "./icons/*",
29
25
  "#mixins/*": "./mixins/*.js",
30
26
  "#styles/*": "./scss/*.scss",
31
- "#scripts/*": "./scripts/*.js",
32
- "#helpers/*": "./scripts/helpers/*.js"
27
+ "#utils/*": "./utils/*.js"
33
28
  },
34
29
  "scripts": {
35
30
  "build:css": "gulp build:css",
@@ -47,6 +42,7 @@
47
42
  "luxon": "^3.2.1",
48
43
  "nodemon": "^3.1.0",
49
44
  "pug": "^3.0.2",
45
+ "qrcode": "^1.5.3",
50
46
  "serve-favicon": "^2.5.0"
51
47
  },
52
48
  "peerDependencies": {
@@ -55,16 +51,14 @@
55
51
  "files": [
56
52
  "animations/**/*",
57
53
  "components/**/*",
58
- "css/**/*",
59
- "fonts/*",
60
54
  "icons/**/*",
61
55
  "mixins/**/*",
62
56
  "patterns/**/*",
63
- "logos/*",
64
- "scripts/**/*",
57
+ "utils/**/*",
65
58
  "scss/**/*",
66
59
  "focus-visible.min.js",
67
- "index.js"
60
+ "index.js",
61
+ "utils.js"
68
62
  ],
69
63
  "homepage": "https://bitbucket.org/barbicandev/barbican-reset#readme",
70
64
  "license": "MIT",
package/scss/_atomic.scss CHANGED
@@ -12,7 +12,7 @@
12
12
  @use "atomic/widths";
13
13
 
14
14
  .border-radius-lg {
15
- border-radius: var(--border-radius-lg);
15
+ border-radius: var(--border-radius-md);
16
16
  }
17
17
 
18
18
  .list-style-none {
@@ -1,10 +1,6 @@
1
1
  @use "mixins/focus" as *;
2
2
  @use "mixins/buttons" as *;
3
3
 
4
- button.btn:active {
5
- transform: var(--scale-click);
6
- }
7
-
8
4
  /// Button component setup class.
9
5
  /// Used in combination with a button style class
10
6
  /// @group Buttons
@@ -70,14 +66,6 @@ button.btn:active {
70
66
  @include btn-edit-input;
71
67
  }
72
68
 
73
- /// Remove button.
74
- /// Used only by StreamDonation.vue component. Could be deprecated.
75
- /// Defaults to slim solid grey. Borders grey on focus.
76
- /// @group Buttons
77
- .btn.btn-remove {
78
- @include btn-remove;
79
- }
80
-
81
69
  /// Link button.
82
70
  /// Imitates the appearance of an anchor link.
83
71
  /// Defaults to transparent fill. Fills grey on focus.
@@ -86,13 +74,6 @@ button.btn:active {
86
74
  @include btn-link;
87
75
  }
88
76
 
89
- /// Video help button.
90
- /// Apparently no longer used. Could be deprecated.
91
- /// @group Buttons
92
- .btn.btn-video-help {
93
- @include btn-video-help;
94
- }
95
-
96
77
  /// Exit button.
97
78
  /// Circular close button. Used in the BrAlert component.
98
79
  /// @group Buttons
@@ -128,6 +109,11 @@ button.btn:active {
128
109
  @include btn-exit-overlay;
129
110
  }
130
111
 
112
+ /// @group Buttons
113
+ .btn.btn-exit-overlay-bg {
114
+ @include btn-exit-overlay-bg;
115
+ }
116
+
131
117
  .btn {
132
118
  &.btn-video-login {
133
119
  @include btn-video-login;
@@ -241,6 +227,10 @@ button.btn:active {
241
227
  @include btn-slim;
242
228
  }
243
229
 
230
+ &.btn-voucher-amount {
231
+ @include btn-voucher-amount;
232
+ }
233
+
244
234
  // modifyers
245
235
 
246
236
  &.expand {
@@ -250,4 +240,8 @@ button.btn:active {
250
240
  &.expand--mobile {
251
241
  @include btn-expand--mobile;
252
242
  }
243
+
244
+ &.btn-react:not(:disabled):not([aria-busy=true]):active {
245
+ transform: var(--scale-click);
246
+ }
253
247
  }
@@ -0,0 +1,52 @@
1
+ @use "mixins/breakpoints" as *;
2
+
3
+ .br-select-form {
4
+ width: var(--width-select-form);
5
+ position: relative;
6
+ }
7
+
8
+ .br-select-form-button[aria-expanded='false'] + .br-select-form-list {
9
+ visibility: hidden;
10
+ }
11
+
12
+ .br-select-form-button svg {
13
+ @include large-down {
14
+ display: none;
15
+ }
16
+ }
17
+
18
+ .br-select-form-list {
19
+ border-bottom-right-radius: var(--border-radius-lg);
20
+ border-bottom-left-radius: var(--border-radius-lg);
21
+ border-width: var(--border-width-sm);
22
+ color: var(--color-form-select-list);
23
+ border-color: currentColor;
24
+ background-color: white;
25
+ border-style: solid;
26
+ position: absolute;
27
+ margin-bottom: 0;
28
+ list-style: none;
29
+ border-top: none;
30
+ overflow: hidden;
31
+ padding-left: 0;
32
+ margin-top: 0;
33
+ width: 100%;
34
+ z-index: 2;
35
+ }
36
+
37
+ .br-select-form-item:not(:last-of-type) {
38
+ border-bottom: 1px solid currentColor;
39
+ }
40
+
41
+ .br-form-select-link {
42
+ padding: var(--padding-md);
43
+ display: block;
44
+ }
45
+
46
+ .br-form-select-link:focus-visible,
47
+ .br-form-select-link:hover {
48
+ background-color: var(--background-color-form-select-link-focus);
49
+ outline-offset: var(--outline-inset-lg);
50
+ outline-color: inherit;
51
+ outline-style: dashed;
52
+ }
@@ -1,18 +1,12 @@
1
+ @use "sass:map";
1
2
  @use "mixins/input/generic" as *;
2
3
  @use "mixins/breakpoints" as *;
3
4
 
4
- $circleSize: 1.25rem;
5
- $circleMargin: 0.25rem;
6
- $circleTransform: $circleSize;
7
- $toggleHeight: $circleSize + $circleMargin * 2;
8
- $toggleWidth: $circleSize * 2 + $circleMargin * 2;
9
- $toggleRadius: $toggleHeight * 0.5;
10
-
11
5
  .br-form-toggle label {
12
6
  @include generic-input-label;
13
7
 
14
8
  & {
15
- grid-template-columns: auto $toggleWidth;
9
+ grid-template-columns: auto var(--width-toggle);
16
10
  padding-left: var(--padding-md);
17
11
  display: inline-grid;
18
12
  align-items: center;
@@ -35,22 +29,26 @@ $toggleRadius: $toggleHeight * 0.5;
35
29
  }
36
30
 
37
31
  .br-form-toggle input[type=checkbox] {
38
- background-color: var(--color-black-50-lighten);
32
+ background-color: var(--background-color-toggle-unchecked);
33
+ border-color: var(--border-color-toggle-unchecked);
34
+ border-radius: var(--border-radius-toggle);
39
35
  transition-property: background-color;
40
- border-radius: $toggleRadius;
36
+ border-width: var(--border-width-sm);
41
37
  transition-duration: 200ms;
42
- height: $toggleHeight;
43
- width: $toggleWidth;
38
+ height: var(--height-toggle);
39
+ width: var(--width-toggle);
40
+ border-style: solid;
44
41
  position: relative;
45
42
  appearance: none;
46
- cursor: inherit;
43
+ cursor: pointer;
44
+ display: block;
47
45
  color: white;
48
46
  padding: 0;
49
47
  margin: 0;
50
48
 
51
49
  &:hover,
52
50
  &:focus-visible {
53
- outline-color: var(--color-black-50-lighten);
51
+ outline-color: var(--outline-color-toggle-unchecked);
54
52
  outline-offset: var(--border-width-lg);
55
53
  outline-width: var(--border-width-lg);
56
54
  outline-style: solid;
@@ -58,29 +56,34 @@ $toggleRadius: $toggleHeight * 0.5;
58
56
  }
59
57
 
60
58
  .br-form-toggle input[type=checkbox]:before {
59
+ background-color: var(--background-color-toggle-before-unchecked);
61
60
  transition-property: transform;
62
61
  transition-duration: 300ms;
63
- background-color: white;
64
- bottom: $circleMargin;
65
- height: $circleSize;
66
- left: $circleMargin;
67
- width: $circleSize;
62
+ bottom: var(--margin-toggle-before);
63
+ height: var(--width-toggle-before);
64
+ left: var(--margin-toggle-before);
65
+ width: var(--width-toggle-before);
68
66
  border-radius: 50%;
69
67
  position: absolute;
70
68
  content: '';
71
69
  }
72
70
 
73
71
  .br-form-toggle input[type=checkbox]:checked:before {
74
- -webkit-transform: translateX($circleTransform);
75
- -ms-transform: translateX($circleTransform);
76
- transform: translateX($circleTransform);
72
+ -webkit-transform: translateX(var(--width-toggle-before));
73
+ -ms-transform: translateX(var(--width-toggle-before));
74
+ transform: translateX(var(--width-toggle-before));
77
75
  }
78
76
 
79
77
  .br-form-toggle input[type=checkbox]:checked {
80
- background-color: var(--color-status-success);
78
+ border-color: var(--border-color-toggle-checked);
79
+ background-color: var(--background-color-toggle-checked);
81
80
 
82
81
  &:hover,
83
82
  &:focus-visible {
84
- outline-color: var(--color-status-success);
83
+ outline-color: var(--outline-color-toggle-checked);
85
84
  }
85
+ }
86
+
87
+ .br-form-toggle input[type=checkbox]:checked:before {
88
+ background-color: var(--background-color-toggle-before-checked);
86
89
  }
@@ -11,16 +11,41 @@
11
11
  overflow: scroll;
12
12
  position: fixed;
13
13
  display: flex;
14
+ z-index: 999;
14
15
  height: 100%;
15
16
  width: 100%;
16
- z-index: 5;
17
+
18
+ &.fade-enter-active,
19
+ &.fade-leave-active {
20
+ transition: opacity 0.3s ease;
21
+ }
22
+
23
+ &.fade-enter-from,
24
+ &.fade-leave-to {
25
+ opacity: 0;
26
+ }
17
27
  }
18
28
  }
19
29
 
20
30
  .br-overlay-content {
21
- justify-content: center;
31
+ margin-right: auto;
22
32
  position: relative;
23
- display: flex;
24
- width: 100%;
33
+ margin-left: auto;
34
+ z-index: 2;
35
+ }
36
+
37
+ .wrap-overlay-exit-button {
38
+ padding: var(--padding-xxl);
39
+ position: absolute;
25
40
  z-index: 2;
41
+ right: 0;
42
+ }
43
+
44
+ .br-overlay-background {
45
+ @include inset;
46
+
47
+ & {
48
+ position: fixed;
49
+ z-index: 1;
50
+ }
26
51
  }
@@ -0,0 +1,3 @@
1
+ .br-qr-code path:last-child {
2
+ stroke: var(--stroke-qr-code);
3
+ }
@@ -14,7 +14,7 @@
14
14
  }
15
15
 
16
16
  @include medium-down {
17
- border-radius: var(--border-radius-lg);
17
+ border-radius: var(--border-radius-md);
18
18
  padding: var(--padding-sm);
19
19
  }
20
20
  }
package/scss/_input.scss CHANGED
@@ -12,7 +12,7 @@ input[type=radio] {
12
12
 
13
13
  input[type=button],
14
14
  input[type=submit] {
15
- border-radius: var(--border-radius-lg);
15
+ border-radius: var(--border-radius-md);
16
16
  appearance: none;
17
17
  }
18
18