@redseed/redseed-ui-vue3 10.4.0 → 10.5.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redseed/redseed-ui-vue3",
3
- "version": "10.4.0",
3
+ "version": "10.5.0",
4
4
  "description": "RedSeed UI Vue 3 components",
5
5
  "main": "index.js",
6
6
  "repository": "https://github.com/redseedtraining/redseed-ui",
@@ -33,6 +33,9 @@ const props = defineProps({
33
33
  },
34
34
  })
35
35
 
36
+ // A percentage height sizes the chart from its wrapper, so the wrapper grows to give it one.
37
+ const isFill = computed(() => typeof props.height === 'string' && props.height.endsWith('%'))
38
+
36
39
  const root = ref(null)
37
40
  const mounted = ref(false)
38
41
  const theme = ref(resolveTheme(null))
@@ -56,7 +59,10 @@ const chartOptions = computed(() =>
56
59
  )
57
60
  </script>
58
61
  <template>
59
- <div ref="root" class="rsui-chart">
62
+ <div
63
+ ref="root"
64
+ :class="['rsui-chart', { 'rsui-chart--fill': isFill }]"
65
+ >
60
66
  <VueApexCharts
61
67
  v-if="mounted"
62
68
  type="bar"
@@ -8,6 +8,11 @@ const props = defineProps({
8
8
  type: Boolean,
9
9
  required: false,
10
10
  },
11
+ // Grow each column's content to the row's height, so side-by-side cards end level.
12
+ stretch: {
13
+ type: Boolean,
14
+ default: false,
15
+ },
11
16
  })
12
17
  </script>
13
18
  <template>
@@ -18,6 +23,7 @@ const props = defineProps({
18
23
  {
19
24
  'rsui-two-column-layout__container--top-aside': topAside,
20
25
  'rsui-two-column-layout__container--left-aside': leftAside,
26
+ 'rsui-two-column-layout__container--stretch': stretch,
21
27
  }
22
28
  ]"
23
29
  >
@@ -28,7 +28,12 @@ const props = defineProps({
28
28
  showGap: {
29
29
  type: Boolean,
30
30
  default: true,
31
- }
31
+ },
32
+ // Let the content region grow into spare height, e.g. in a stretched TwoColumnLayout row.
33
+ fill: {
34
+ type: Boolean,
35
+ default: false,
36
+ },
32
37
  })
33
38
 
34
39
  const showGapDelayed = ref(props.showGap)
@@ -52,6 +57,7 @@ const variantClass = computed(() => [
52
57
  'rsui-section--padded': props.padded,
53
58
  'rsui-section--header-padded': props.headerPadded,
54
59
  'rsui-section--content-padded': props.contentPadded,
60
+ 'rsui-section--fill': props.fill,
55
61
  'rsui-section--show-gap': showGapDelayed.value,
56
62
  'rsui-section--primary': props.variant === 'primary',
57
63
  'rsui-section--secondary': props.variant === 'secondary',
@@ -238,6 +238,10 @@ const titleTag = computed(() => HEADING_LEVELS.includes(String(props.headingLeve
238
238
  <div :class="[
239
239
  'rsui-section-header__title',
240
240
  { 'rsui-section-header__title--stacked': !responsiveWidth.specific && !inlineBadge },
241
+ // --stacked gives the title text `basis-full`, which takes the whole row and
242
+ // strands the trigger on the line above it. Same class of defect CardHeader
243
+ // had, and it carries the same modifier name.
244
+ { 'rsui-section-header__title--with-trigger': rendersTrigger() },
241
245
  ]">
242
246
  <!--
243
247
  First child of the TITLE row, not a sibling of the whole text block