@qhealth-design-system/core 1.15.2 → 1.16.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 (53) hide show
  1. package/.storybook/globals.js +28 -4
  2. package/CHANGELOG.md +4 -0
  3. package/package.json +3 -2
  4. package/src/components/_global/css/btn/component.scss +9 -29
  5. package/src/components/_global/css/direction_links/component.scss +121 -176
  6. package/src/components/_global/css/forms/control_inputs/component.scss +331 -339
  7. package/src/components/_global/css/forms/select/component.scss +7 -0
  8. package/src/components/_global/css/link_columns/component.scss +97 -79
  9. package/src/components/_global/css/tags/component.scss +17 -3
  10. package/src/components/_global/css/toggle_and_tool_tip/component.scss +3 -1
  11. package/src/components/basic_search/css/component.scss +8 -3
  12. package/src/components/basic_search/html/component.hbs +5 -3
  13. package/src/components/card_feature/html/component.hbs +1 -1
  14. package/src/components/card_multi_action/css/component.scss +17 -10
  15. package/src/components/card_multi_action/html/component.hbs +1 -1
  16. package/src/components/card_no_action/css/component.scss +7 -6
  17. package/src/components/card_no_action/html/component.hbs +1 -1
  18. package/src/components/card_single_action/html/component.hbs +1 -1
  19. package/src/components/global_alert/html/component.hbs +30 -15
  20. package/src/components/header/css/component.scss +120 -121
  21. package/src/components/header/html/component.hbs +6 -4
  22. package/src/components/horizontal_rule/css/component.scss +2 -1
  23. package/src/components/internal_navigation/css/component.scss +182 -322
  24. package/src/components/internal_navigation/html/component.hbs +1 -1
  25. package/src/components/internal_navigation/js/global.js +35 -0
  26. package/src/components/main_navigation/css/component.scss +8 -4
  27. package/src/components/mega_main_navigation/css/component.scss +12 -14
  28. package/src/components/multi_column/css/component.scss +32 -1
  29. package/src/components/multi_column/html/component.hbs +90 -10
  30. package/src/components/multi_column/js/manifest.json +13 -0
  31. package/src/components/pagination/css/component.scss +88 -41
  32. package/src/components/pagination/html/component.hbs +40 -38
  33. package/src/components/search_box/css/component.scss +54 -46
  34. package/src/components/updated_date/css/component.scss +7 -8
  35. package/src/components/updated_date/html/component.hbs +41 -24
  36. package/src/components/widgets/css/component.scss +34 -0
  37. package/src/data/site.json +952 -854
  38. package/src/html/component-forms.html +104 -18
  39. package/src/html/component-global-elements.html +1754 -1253
  40. package/src/stories/DirectionLinks/DirectionLinks.js +3 -0
  41. package/src/stories/DirectionLinks/DirectionLinks.mdx +37 -0
  42. package/src/stories/DirectionLinks/DirectionLinks.stories.js +106 -0
  43. package/src/stories/LinkColumns/LinkColumns.js +21 -0
  44. package/src/stories/LinkColumns/LinkColumns.mdx +31 -0
  45. package/src/stories/LinkColumns/LinkColumns.stories.js +140 -0
  46. package/src/stories/SelectBox/SelectBox.js +2 -2
  47. package/src/stories/SelectBox/SelectBox.mdx +62 -0
  48. package/src/stories/SelectBox/SelectBox.stories.js +112 -12
  49. package/src/stories/VideoPlayer/VideoPlayer.js +0 -0
  50. package/src/stories/VideoPlayer/VideoPlayer.mdx +51 -0
  51. package/src/stories/VideoPlayer/VideoPlayer.stories.js +203 -0
  52. package/src/styles/imports/mixins.scss +274 -310
  53. package/src/styles/imports/utilities.scss +338 -357
@@ -3,13 +3,22 @@ export const viewports = {
3
3
  small: { name: "Small", styles: { width: "400px", height: "800px" } },
4
4
  medium: { name: "Medium", styles: { width: "699px", height: "800px" } },
5
5
  large: { name: "Large", styles: { width: "992px", height: "800px" } },
6
- xlarge: { name: "Extra large", styles: { width: "1312px", height: "1000px" } },
7
- xxlarge: { name: "Extra extra large", styles: { width: "1599px", height: "1000px" } },
8
- mainNavBreakpoint: { name: "Main nav breakpoint", styles: { width: "992px", height: "800px" } },
6
+ xlarge: {
7
+ name: "Extra large",
8
+ styles: { width: "1312px", height: "1000px" },
9
+ },
10
+ xxlarge: {
11
+ name: "Extra extra large",
12
+ styles: { width: "1599px", height: "1000px" },
13
+ },
14
+ mainNavBreakpoint: {
15
+ name: "Main nav breakpoint",
16
+ styles: { width: "992px", height: "800px" },
17
+ },
9
18
  };
10
19
 
11
20
  export const themes = {
12
- white: "qld__body",
21
+ white: "qld__body qld__grid",
13
22
  light: "qld__body qld__body--light qld__light",
14
23
  "light alt": "qld__body qld__body--alt qld__light-alt",
15
24
  dark: "qld__body qld__body--dark qld__dark",
@@ -43,4 +52,19 @@ export const figmaLinks = {
43
52
  file: "https://www.figma.com/design/qKsxl3ogIlBp7dafgxXuCA/QGDS-UI-kit?node-id=23167-395571&t=nEqRcloGJuj1X51X-0",
44
53
  ds: "https://www.designsystem.qld.gov.au/components/input-fields-select-box",
45
54
  },
55
+ videoPlayer: {
56
+ design: "https://www.figma.com/design/twruQlAG4NzIQl1hgjK8HS/QH-QGDS-185--Video-Component-Update?node-id=2074-8711&p=f&t=7NFZrbjBSzKMVAcZ-0",
57
+ file: "https://www.figma.com/design/twruQlAG4NzIQl1hgjK8HS/QH-QGDS-185--Video-Component-Update?node-id=2074-8711&p=f&t=7NFZrbjBSzKMVAcZ-0",
58
+ ds: "https://www.designsystem.qld.gov.au/components",
59
+ },
60
+ directionLinks: {
61
+ design: "https://www.figma.com/design/qKsxl3ogIlBp7dafgxXuCA/QGDS-UI-kit?node-id=11056-321363&p=f",
62
+ file: "https://www.figma.com/design/qKsxl3ogIlBp7dafgxXuCA/QGDS-UI-kit?node-id=23167-395560",
63
+ ds: "https://www.designsystem.qld.gov.au/components/direction-links",
64
+ },
65
+ linkColumns: {
66
+ design: "https://www.figma.com/design/qKsxl3ogIlBp7dafgxXuCA/QGDS-UI-kit?node-id=11056-321574&p=f",
67
+ file: "https://www.figma.com/design/qKsxl3ogIlBp7dafgxXuCA/QGDS-UI-kit?node-id=23167-395563",
68
+ ds: "https://www.designsystem.qld.gov.au/components/link-columns-link-list",
69
+ },
46
70
  };
package/CHANGELOG.md CHANGED
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## Unreleased
9
9
 
10
+ ## 1.16.0 - 2025-07-10
11
+
12
+ ## 1.15.3 - 2025-05-29
13
+
10
14
  ## 1.15.2 - 2025-05-22
11
15
 
12
16
  ## 1.15.1 - 2025-05-22
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qhealth-design-system/core",
3
- "version": "1.15.2",
3
+ "version": "1.16.0",
4
4
  "description": "",
5
5
  "licence": "MIT",
6
6
  "main": "index.js",
@@ -14,7 +14,8 @@
14
14
  "lint:styles": "stylelint \"./src/**/*.css\" \"./src/**/*.scss\" \"!./src/**/*.min.css\"",
15
15
  "lint": "npm run lint:js && npm run lint:styles",
16
16
  "build-storybook": "node .storybook/prepare-storybook.js && storybook build",
17
- "storybook": "storybook dev -p 6006"
17
+ "storybook": "storybook dev -p 6006",
18
+ "add-story": "bash scripts/add_story.sh"
18
19
  },
19
20
  "keywords": [],
20
21
  "author": "",
@@ -526,21 +526,17 @@
526
526
  @include QLD-space(padding, 0.75unit 1.5unit);
527
527
  }
528
528
 
529
- &:active:focus {
530
- .qld__btn__icon {
531
- background-color: var(--QLD-color-light__heading);
532
- }
533
- }
534
-
535
529
  .qld__btn__icon {
536
530
  display: block;
537
- @include QLD-space(width, 1.25unit);
538
- @include QLD-space(height, 1.25unit);
531
+ @include QLD-space(width, 1.5unit);
532
+ @include QLD-space(height, 1.5unit);
539
533
  transition: transform 0.25s ease-in;
540
- mask-image: QLD-svguri($QLD-icon-search);
541
- mask-repeat: no-repeat;
542
- mask-position: center;
543
- background-color: var(--QLD-color-light__link--on-action);
534
+
535
+ svg.qld__icon {
536
+ vertical-align: baseline;
537
+ height: 100%;
538
+ width: 100%;
539
+ }
544
540
 
545
541
  @include QLD-media(lg) {
546
542
  display: none;
@@ -564,24 +560,8 @@
564
560
  }
565
561
  }
566
562
  }
567
-
568
- &.qld__body--dark,
569
- &.qld__body--dark-alt,
570
- &.qld__banner--dark,
571
- &.qld__banner--dark-alt,
572
- &.qld__header__main--dark,
573
- &.qld__header__main--dark-alt,
574
- &.qld__footer--dark,
575
- &.qld__footer--dark-alt {
576
- .qld__btn.qld__btn--search,
577
- a.qld__btn.qld__btn--search,
578
- a.qld__btn.qld__btn--search:visited {
579
- .qld__btn__icon {
580
- background-color: var(--QLD-color-dark__link--on-action);
581
- }
582
- }
583
- }
584
563
  }
564
+
585
565
  /**
586
566
  * Close Button
587
567
  */
@@ -2,184 +2,129 @@
2
2
  // Direction Links
3
3
  //--------------------------------------------------------------------------------------------------------------------------------------------------------------
4
4
 
5
- .qld__direction-link,
6
- a.qld__direction-link{
7
-
8
- &--left{
9
- &:before {
10
- @include QLD-space( width, 1unit );
11
- @include QLD-space( height, 1.5unit );
12
- @include QLD-space( margin, 0 0.5unit 0 0.25unit );
13
- content: '';
14
- color: var(--QLD-color-light__action--secondary);
15
- display: inline-block;
16
- // background-repeat: no-repeat;
17
- // background-size: contain;
18
- // background-position: center;
19
- vertical-align: text-top;
20
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-left, var(--QLD-color-light__action--secondary));
21
- mask-image: QLD-svguri($QLD-icon-arrow-left);
22
- mask-repeat: no-repeat;
23
- mask-position: center;
24
- background-color: var(--QLD-color-light__action--secondary);
25
- }
26
-
27
- &:disabled,
28
- &[disabled] {
29
- background-color: transparent;
30
- border-color: transparent;
31
- color: var(--QLD-color-light__text--lighter);
32
- &::before{
33
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-left, var(--QLD-color-light__text--lighter));
34
- background-color: var(--QLD-color-light__text--lighter);
35
- }
36
- }
37
- }
38
-
39
- &--right{
40
- &:after {
41
- @include QLD-space( width, 1unit );
42
- @include QLD-space( height, 1.5unit );
43
- @include QLD-space( margin, 0 0.25unit 0 0.5unit );
44
- content: '';
45
- color: var(--QLD-color-light__action--secondary);
46
- display: inline-block;
47
- // background-repeat: no-repeat;
48
- // background-size: contain;
49
- // background-position: center;
50
- vertical-align: text-top;
51
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-right, var(--QLD-color-light__action--secondary));
52
- mask-image: QLD-svguri($QLD-icon-arrow-right);
53
- mask-repeat: no-repeat;
54
- mask-position: center;
55
- background-color: var(--QLD-color-light__action--secondary);
56
-
57
- }
58
-
59
- &:disabled,
60
- &[disabled] {
61
- background-color: transparent;
62
- border-color: transparent;
63
- color: var(--QLD-color-light__text--lighter);
64
- &::after{
65
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-left, var(--QLD-color-light__text--lighter));
66
- background-color: var(--QLD-color-light__text--lighter);
67
- }
68
- }
69
- }
70
-
71
- &--up{
72
- &:after {
73
- @include QLD-space( width, 1unit );
74
- @include QLD-space( height, 1.5unit );
75
- @include QLD-space( margin, 0 0.25unit 0 0.5unit );
76
- content: '';
77
- color: var(--QLD-color-light__action--secondary);
78
- display: inline-block;
79
- // background-repeat: no-repeat;
80
- // background-size: contain;
81
- // background-position: center;
82
- vertical-align: text-top;
83
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-up, var(--QLD-color-light__action--secondary));
84
- mask-image: QLD-svguri($QLD-icon-arrow-up);
85
- mask-repeat: no-repeat;
86
- mask-position: center;
87
- background-color: var(--QLD-color-light__action--secondary);
88
- }
89
-
90
- &:disabled,
91
- &[disabled] {
92
- background-color: transparent;
93
- border-color: transparent;
94
- color: var(--QLD-color-light__text--lighter);
95
- &::after{
96
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-left, var(--QLD-color-light__text--lighter));
97
- background-color: var(--QLD-color-light__text--lighter);
98
- }
99
- }
100
- }
101
-
102
- &--down{
103
- &:after {
104
- @include QLD-space( width, 1unit );
105
- @include QLD-space( height, 1.5unit );
106
- @include QLD-space( margin, 0 0.25unit 0 0.5unit );
107
- content: '';
108
- color: var(--QLD-color-light__action--secondary);
109
- display: inline-block;
110
- // background-repeat: no-repeat;
111
- // background-size: contain;
112
- // background-position: center;
113
- vertical-align: text-top;
114
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-down, var(--QLD-color-light__action--secondary));
115
- mask-image: QLD-svguri($QLD-icon-arrow-down);
116
- mask-repeat: no-repeat;
117
- mask-position: center;
118
- background-color: var(--QLD-color-light__action--secondary);
119
- }
120
-
121
- &:disabled,
122
- &[disabled] {
123
- background-color: transparent;
124
- border-color: transparent;
125
- color: var(--QLD-color-light__text--lighter);
126
-
127
- &::after{
128
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-down, var(--QLD-color-light__text--lighter));
129
- background-color: var(--QLD-color-light__text--lighter);
130
- }
131
- }
132
- }
133
-
134
- .qld__body--dark &,
135
- .qld__body--dark-alt &{
136
- &--left{
137
- &:before {
138
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-left, var(--QLD-color-dark__action--secondary));
139
- background-color: var(--QLD-color-dark__action--secondary);
140
- }
141
- }
142
- &--right{
143
- &:after {
144
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-right, var(--QLD-color-dark__action--secondary));
145
- background-color: var(--QLD-color-dark__action--secondary);
146
- }
147
- }
148
- &--up{
149
- &:after {
150
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-up, var(--QLD-color-dark__action--secondary));
151
- background-color: var(--QLD-color-dark__action--secondary);
152
- }
153
- }
154
- &--down{
155
- &:after {
156
- // background-image: QLD-svg-with-fill($QLD-icon-arrow-down, var(--QLD-color-dark__action--secondary));
157
- background-color: var(--QLD-color-dark__action--secondary);
158
- }
159
- }
160
- }
161
-
5
+ $icon-scale: 1;
6
+ $icon-arrow-head-width: 0.6rem;
7
+ $icon-arrow-stroke-width: 0.125rem;
8
+ $icon-arrow-body-length: 1rem;
9
+ $icon-gap-from-text: 1.75rem;
10
+
11
+ a.qld__direction-link {
12
+ &--right,
13
+ &--left,
14
+ &--up,
15
+ &--down {
16
+ position: relative;
17
+ display: inline-block;
18
+ border-radius: $QLD-border-radius-xs;
19
+
20
+ &::before {
21
+ width: $icon-arrow-body-length;
22
+ }
23
+
24
+ &::after {
25
+ width: $icon-arrow-head-width;
26
+ height: $icon-arrow-head-width;
27
+ border-right: $icon-arrow-stroke-width solid;
28
+ }
29
+
30
+ &::before,
31
+ &::after {
32
+ content: "";
33
+ position: absolute;
34
+ display: inline-block;
35
+ box-sizing: border-box;
36
+ border-bottom: $icon-arrow-stroke-width solid;
37
+ transition: border-color 0.3s ease;
38
+ border-color: var(--QLD-color-light__action--secondary);
39
+
40
+ .qld__body--dark &,
41
+ .qld__body--dark-alt & {
42
+ border-color: var(--QLD-color-dark__action--secondary);
43
+ }
44
+ }
45
+ }
46
+
47
+ &--right {
48
+ padding-right: $icon-gap-from-text;
49
+
50
+ &::before {
51
+ top: 50%;
52
+ right: 0.3rem;
53
+ transform: scale($icon-scale);
54
+ }
55
+
56
+ &::after {
57
+ transform: rotate(315deg) scale($icon-scale);
58
+ top: 0.5rem;
59
+ right: 0.3rem;
60
+ }
61
+ }
62
+
63
+ &--left {
64
+ padding-left: $icon-gap-from-text;
65
+
66
+ &::before {
67
+ top: 50%;
68
+ left: 0.3rem;
69
+ transform: scale($icon-scale);
70
+ }
71
+
72
+ &::after {
73
+ top: 0.5rem;
74
+ left: 0.3rem;
75
+ transform: rotate(135deg) scale($icon-scale);
76
+ }
77
+ }
78
+
79
+ &--up {
80
+ padding-right: $icon-gap-from-text;
81
+
82
+ &::before {
83
+ top: 13px;
84
+ right: 5px;
85
+ transform: rotate(90deg) scale($icon-scale);
86
+ }
87
+
88
+ &::after {
89
+ top: 6px;
90
+ right: 8.25px;
91
+ transform: rotate(225deg) scale($icon-scale);
92
+ }
93
+ }
94
+
95
+ &--down {
96
+ padding-right: $icon-gap-from-text;
97
+
98
+ &::before {
99
+ top: 11.5px;
100
+ right: 5px;
101
+ transform: rotate(90deg) scale($icon-scale);
102
+ }
103
+
104
+ &::after {
105
+ top: 11px;
106
+ right: 8.45px;
107
+ transform: rotate(45deg) scale($icon-scale);
108
+ }
109
+ }
162
110
  }
163
111
 
164
112
  // Print styles
165
113
  @media print {
166
- .qld__direction-link {
167
- color: #000 !important;
168
- }
169
-
170
- .qld__direction-link__arrow--right:after {
171
- content: '→' !important;
172
- }
173
-
174
- .qld__direction-link__arrow--left:before {
175
- content: '←' !important;
176
- }
177
-
178
- .qld__direction-link__arrow--up:after {
179
- content: '↑' !important;
180
- }
181
-
182
- .qld__direction-link__arrow--down:after {
183
- content: '↓' !important;
184
- }
114
+ a.qld__direction-link,
115
+ .qld__body--dark a.qld__direction-link,
116
+ .qld__body--dark-alt a.qld__direction-link {
117
+ color: $QLD-color-neutral--black;
118
+ text-decoration-color: $QLD-color-neutral--black;
119
+
120
+ &--right,
121
+ &--left,
122
+ &--up,
123
+ &--down {
124
+ &::before,
125
+ &::after {
126
+ border-color: $QLD-color-neutral--black;
127
+ }
128
+ }
129
+ }
185
130
  }