@citizenplane/pimp 18.9.31 → 18.9.33

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": "@citizenplane/pimp",
3
- "version": "18.9.31",
3
+ "version": "18.9.33",
4
4
  "scripts": {
5
5
  "dev": "storybook dev -p 8081",
6
6
  "build-storybook": "storybook build --output-dir ./docs",
@@ -39,9 +39,12 @@
39
39
  @hide="onHide"
40
40
  >
41
41
  <div class="cpMenu__drawerToolbar">
42
+ <div class="cpMenu__drawerToolbarTitle">
43
+ <slot name="title" />
44
+ </div>
42
45
  <cp-button
43
46
  ref="closeButton"
44
- appearance="tertiary"
47
+ appearance="secondary"
45
48
  aria-label="Close drawer"
46
49
  color="neutral"
47
50
  is-square
@@ -78,6 +81,7 @@ export type CpMenuPlacement = 'start' | 'end'
78
81
 
79
82
  export interface Props {
80
83
  class?: string
84
+ drawerClass?: string
81
85
  forcePopover?: boolean
82
86
  isFullHeightDrawer?: boolean
83
87
  items?: MenuItem[]
@@ -87,6 +91,7 @@ export interface Props {
87
91
 
88
92
  const props = withDefaults(defineProps<Props>(), {
89
93
  class: undefined,
94
+ drawerClass: undefined,
90
95
  isFullHeightDrawer: false,
91
96
  items: undefined,
92
97
  keepOpenOnClick: false,
@@ -121,10 +126,23 @@ const drawerOverlayDynamicClass = computed(() => ({
121
126
  }))
122
127
 
123
128
  const drawerPt = {
124
- root: { class: ['cpMenu__drawer', { 'cpMenu__drawer--isFullHeight': props.isFullHeightDrawer }] },
125
- content: { class: 'cpMenu__drawerContent' },
126
- header: { class: 'cpMenu__drawerHeader' },
127
- transition: { name: 'drawer', duration: 300 },
129
+ root: {
130
+ class: [
131
+ 'cpMenu__drawer',
132
+ { 'cpMenu__drawer--isFullHeight': props.isFullHeightDrawer },
133
+ props.drawerClass,
134
+ ],
135
+ },
136
+ content: {
137
+ class: 'cpMenu__drawerContent'
138
+ },
139
+ header: {
140
+ class: 'cpMenu__drawerHeader'
141
+ },
142
+ transition: {
143
+ name: 'drawer',
144
+ duration: 300
145
+ },
128
146
  }
129
147
 
130
148
  const isPopoverPlacementEnd = computed(() => props.placement === 'end')
@@ -275,8 +293,16 @@ defineExpose({ show, hide, toggle })
275
293
 
276
294
  &__drawerToolbar {
277
295
  display: flex;
278
- justify-content: flex-end;
296
+ align-items: center;
297
+ justify-content: space-between;
279
298
  padding: var(--cp-spacing-md) var(--cp-spacing-xl);
280
299
  }
300
+
301
+ &__drawerToolbarTitle {
302
+ color: var(--cp-text-secondary);
303
+ font-size: var(--cp-text-size-lg);
304
+ font-weight: 500;
305
+ line-height: var(--cp-line-height-lg);
306
+ }
281
307
  }
282
308
  </style>
@@ -190,13 +190,15 @@ const dynamicClasses = computed(() => {
190
190
  }
191
191
 
192
192
  &--xs {
193
+ $radius: fn.px-to-rem(5);
194
+
193
195
  --cp-selectable-border-padding: var(--cp-spacing-xs);
194
196
  --cp-selectable-border-radius: var(--cp-radius-md);
195
197
  --cp-selectable-font-size: var(--cp-text-size-sm);
196
198
  --cp-selectable-line-height: var(--cp-line-height-sm);
197
199
  --cp-selectable-body-padding: var(--cp-spacing-xs) var(--cp-spacing-sm);
198
200
  --cp-selectable-body-gap: var(--cp-spacing-sm);
199
- --cp-selectable-body-border-radius: fn.px-to-rem(5);
201
+ --cp-selectable-body-border-radius: #{$radius};
200
202
  --cp-selectable-icon-size: var(--cp-dimensions-4);
201
203
  }
202
204
 
@@ -260,7 +262,7 @@ const dynamicClasses = computed(() => {
260
262
  --cp-selectable-border-color: var(--cp-border-soft);
261
263
  --cp-selectable-border-color-hover: var(--cp-border-soft-hover);
262
264
  --cp-selectable-text-color: var(--cp-foreground-primary);
263
- --cp-selectable-text-color-hover: var(--cp-foreground-primary-hover);
265
+ --cp-selectable-text-color-hover: var(--cp-foreground-primary);
264
266
  --cp-selectable-background-color: var(--cp-background-primary);
265
267
  --cp-selectable-background-color-hover: var(--cp-background-primary-hover);
266
268
  --cp-selectable-body-background-color: transparent;
@@ -166,6 +166,9 @@ export const FullHeightDrawer: Story = {
166
166
  <template #trigger>
167
167
  <CpButton size="xs" appearance="secondary">Open drawer</CpButton>
168
168
  </template>
169
+ <template #title>
170
+ <CpHeading heading-level="h4">Title</CpHeading>
171
+ </template>
169
172
  </CpMenu>
170
173
  `,
171
174
  }),