@bethinkpl/design-system 25.0.2 → 25.0.4

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/docs/project.json CHANGED
@@ -1 +1 @@
1
- {"generatedAt":1725275423820,"builder":{"name":"webpack5"},"hasCustomBabel":false,"hasCustomWebpack":true,"hasStaticDirs":false,"hasStorybookEslint":true,"refCount":0,"metaFramework":{"name":"vue-cli","packageName":"@vue/cli-service","version":"5.0.8"},"packageManager":{"type":"yarn","version":"1.22.22"},"storybookVersion":"6.5.13","language":"typescript","storybookPackages":{"@storybook/builder-webpack5":{"version":"6.5.13"},"@storybook/manager-webpack5":{"version":"6.5.13"},"@storybook/vue3":{"version":"6.5.13"},"eslint-plugin-storybook":{"version":"0.6.6"}},"framework":{"name":"vue3"},"addons":{"@storybook/addon-actions":{"version":"6.5.16"},"@storybook/addon-docs":{"version":"6.5.15"},"@storybook/addon-controls":{"version":"6.5.15"},"@storybook/addon-storysource":{"version":"6.5.15"},"@storybook/addon-viewport":{"version":"6.5.15"},"storybook-addon-designs":{"version":"6.3.1"}}}
1
+ {"generatedAt":1725357978526,"builder":{"name":"webpack5"},"hasCustomBabel":false,"hasCustomWebpack":true,"hasStaticDirs":false,"hasStorybookEslint":true,"refCount":0,"metaFramework":{"name":"vue-cli","packageName":"@vue/cli-service","version":"5.0.8"},"packageManager":{"type":"yarn","version":"1.22.22"},"storybookVersion":"6.5.13","language":"typescript","storybookPackages":{"@storybook/builder-webpack5":{"version":"6.5.13"},"@storybook/manager-webpack5":{"version":"6.5.13"},"@storybook/vue3":{"version":"6.5.13"},"eslint-plugin-storybook":{"version":"0.6.6"}},"framework":{"name":"vue3"},"addons":{"@storybook/addon-actions":{"version":"6.5.16"},"@storybook/addon-docs":{"version":"6.5.15"},"@storybook/addon-controls":{"version":"6.5.15"},"@storybook/addon-storysource":{"version":"6.5.15"},"@storybook/addon-viewport":{"version":"6.5.15"},"storybook-addon-designs":{"version":"6.3.1"}}}
@@ -2,7 +2,6 @@ import OverlayHeader from './OverlayHeader.vue';
2
2
 
3
3
  import { Args, ArgTypes, Meta, StoryFn } from '@storybook/vue3';
4
4
  import { OVERLAY_HEADER_BORDER_COLORS, OVERLAY_HEADER_STATES } from './OverlayHeader.consts';
5
- import { BUTTON_STATES } from '../../Buttons/Button';
6
5
 
7
6
  export default {
8
7
  title: 'Components/Headers/OverlayHeader',
@@ -14,9 +13,14 @@ const StoryTemplate: StoryFn<typeof OverlayHeader> = (args) => ({
14
13
  setup() {
15
14
  return { args };
16
15
  },
16
+ methods: {
17
+ onClose() {
18
+ console.log('OverlayHeader emitted close event');
19
+ },
20
+ },
17
21
  template: `
18
22
  <div style="height: 300px">
19
- <overlay-header v-bind=args>
23
+ <overlay-header v-bind=args @close="onClose">
20
24
  <template v-if="args.accessorySlot" #accessory>
21
25
  <div style="background: var(--raw-gray-300); height: 100%">{{ args.accessorySlot }}</div>
22
26
  </template>
@@ -327,6 +327,7 @@ import {
327
327
  import { ICONS } from '../../Icons/Icon';
328
328
  import { OVERLAY_HEADER_BORDER_COLORS, OVERLAY_HEADER_STATES } from './OverlayHeader.consts';
329
329
  import { Value } from '../../../utils/type.utils';
330
+ import { isElementEditable } from '../../../utils/shortcut-keys';
330
331
 
331
332
  export default {
332
333
  name: 'OverlayHeader',
@@ -391,9 +392,13 @@ export default {
391
392
  window.addEventListener('keydown', this.onKeydown);
392
393
  },
393
394
  methods: {
394
- onKeydown(e) {
395
- switch (e.keyCode) {
396
- case 81: // "Q" key
395
+ onKeydown(e: KeyboardEvent) {
396
+ if (isElementEditable(e.target as HTMLElement | null)) {
397
+ return;
398
+ }
399
+ switch (e.key) {
400
+ case 'q':
401
+ case 'Q':
397
402
  e.stopPropagation();
398
403
  this.$emit('close');
399
404
  break;
@@ -19,9 +19,9 @@ const StoryTemplate: StoryFn<typeof PopOver> = (args) => ({
19
19
  return { ...args };
20
20
  },
21
21
  template:
22
- '<div style="display: flex; align-items: center; justify-content: center; height: 800px">' +
22
+ '<div style="display: flex; align-items: center; justify-content: center; height: 800px; background: var(--raw-gray-50);">' +
23
23
  '<pop-over :placement="placement" :color="color" :trigger-action="triggerAction" :title-text="titleText" :subtitle-text="subtitleText" :button-text="buttonText" :force-show="forceShow" :header-image-url="headerImageUrl" :size="size" :max-height="maxHeight" :is-pointer-visible="isPointerVisible">' +
24
- '<template #reference><span>click me!</span></template>' +
24
+ '<template #reference><span style="background: var(--theme-100); border-radius: 4px; padding: 4px 8px;">click me!</span></template>' +
25
25
  '<div>{{ definitionSlot }}</div>' +
26
26
  '</pop-over>' +
27
27
  '</div>',
@@ -21,6 +21,7 @@
21
21
  '-ds-color-neutral': color === POP_OVER_COLORS.NEUTRAL,
22
22
  '-ds-small': size === POP_OVER_SIZES.SMALL,
23
23
  '-ds-medium': size === POP_OVER_SIZES.MEDIUM,
24
+ '-ds-visible-arrow': isPointerVisible,
24
25
  }"
25
26
  >
26
27
  <img v-if="headerImageUrl" class="ds-popOver__image" :src="headerImageUrl" alt="" />
@@ -102,7 +103,11 @@
102
103
  }
103
104
 
104
105
  &[x-placement^='bottom'] {
105
- margin-top: $space-s;
106
+ margin-top: $space-4xs;
107
+
108
+ &.-ds-visible-arrow {
109
+ margin-top: $space-s + $space-4xs;
110
+ }
106
111
 
107
112
  /* stylelint-disable-next-line selector-class-pattern */
108
113
  :deep(.popper__arrow) {
@@ -116,7 +121,11 @@
116
121
  }
117
122
 
118
123
  &[x-placement^='top'] {
119
- margin-bottom: $space-s;
124
+ margin-bottom: $space-4xs;
125
+
126
+ &.-ds-visible-arrow {
127
+ margin-bottom: $space-s + $space-4xs;
128
+ }
120
129
 
121
130
  /* stylelint-disable-next-line selector-class-pattern */
122
131
  :deep(.popper__arrow) {
@@ -130,7 +139,11 @@
130
139
  }
131
140
 
132
141
  &[x-placement^='right'] {
133
- margin-left: $space-s;
142
+ margin-left: $space-4xs;
143
+
144
+ &.-ds-visible-arrow {
145
+ margin-left: $space-s + $space-4xs;
146
+ }
134
147
 
135
148
  /* stylelint-disable-next-line selector-class-pattern */
136
149
  :deep(.popper__arrow) {
@@ -144,7 +157,11 @@
144
157
  }
145
158
 
146
159
  &[x-placement^='left'] {
147
- margin-right: $space-s;
160
+ margin-right: $space-4xs;
161
+
162
+ &.-ds-visible-arrow {
163
+ margin-right: $space-s + $space-4xs;
164
+ }
148
165
 
149
166
  /* stylelint-disable-next-line selector-class-pattern */
150
167
  :deep(.popper__arrow) {
@@ -0,0 +1,8 @@
1
+ export const isElementEditable = (element: HTMLElement | null): boolean => {
2
+ return (
3
+ element?.tagName === 'INPUT' ||
4
+ element?.tagName === 'SELECT' ||
5
+ element?.tagName === 'TEXTAREA' ||
6
+ !!element?.isContentEditable
7
+ );
8
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bethinkpl/design-system",
3
- "version": "25.0.2",
3
+ "version": "25.0.4",
4
4
  "description": "Bethink universe design-system",
5
5
  "repository": {
6
6
  "type": "git",