@opendesign-plus-test/components 0.0.1-rc.119 → 0.0.1-rc.121

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.
@@ -84,6 +84,11 @@
84
84
  justify-content: space-between;
85
85
  margin-right: var(--o-gap-4);
86
86
  }
87
+ @media (min-width: 1201px) and (max-width: 1680px) {
88
+ .o-events-calendar .collapse-header {
89
+ margin-right: var(--o-gap-3);
90
+ }
91
+ }
87
92
  @media (max-width: 840px) {
88
93
  .o-events-calendar .collapse-header {
89
94
  flex-direction: column;
@@ -257,6 +257,9 @@
257
257
  --tag-color: rgb(var(--o-white));
258
258
  --tag-bg-color: rgba(var(--o-black), 0.25);
259
259
  --tag-padding: var(--o-gap-1) var(--o-gap-3);
260
+ --tag-text-size: 12px;
261
+ --tag-text-height: 18px;
262
+ --tag-height: 24px;
260
263
  border: none;
261
264
  border-radius: var(--events-tag-radius);
262
265
  }
@@ -265,6 +268,13 @@
265
268
  --tag-padding: var(--o-gap-1);
266
269
  }
267
270
  }
271
+ .o-events-list .list-content .o-card .o-card-content .tags-wrapper .o-tag .o-tag-icon {
272
+ height: 16px;
273
+ }
274
+ .o-events-list .list-content .o-card .o-card-content .tags-wrapper .o-tag .o-tag-icon svg {
275
+ width: 16px;
276
+ height: 16px;
277
+ }
268
278
  .o-events-list .list-content .o-card .o-card-content .event-name {
269
279
  font-weight: 500;
270
280
  text-align: center;
@@ -1,12 +1,12 @@
1
- .hover-icon-rotate .o-icon[data-v-49e6ebe6] {
1
+ .hover-icon-rotate .o-icon[data-v-12fab110] {
2
2
  transition: all var(--o-duration-m1) var(--o-easing-standard-in);
3
3
  }
4
4
  @media (hover: hover) {
5
- .hover-icon-rotate:hover .o-icon[data-v-49e6ebe6] {
5
+ .hover-icon-rotate:hover .o-icon[data-v-12fab110] {
6
6
  transform: rotate(-180deg);
7
7
  }
8
8
  }
9
- .o-feedback-doc-wrap[data-v-49e6ebe6] {
9
+ .o-feedback-doc-wrap[data-v-12fab110] {
10
10
  display: inline-flex;
11
11
  align-items: center;
12
12
  justify-content: center;
@@ -14,10 +14,10 @@
14
14
  cursor: pointer;
15
15
  }
16
16
  @media (hover: hover) {
17
- .o-feedback-doc-wrap[data-v-49e6ebe6]:hover {
17
+ .o-feedback-doc-wrap[data-v-12fab110]:hover {
18
18
  color: var(--o-color-primary1);
19
19
  }
20
20
  }
21
- .o-feedback-doc-wrap .o-feedback-icon-smile[data-v-49e6ebe6] {
21
+ .o-feedback-doc-wrap .o-feedback-icon-smile[data-v-12fab110] {
22
22
  font-size: 24px;
23
23
  }
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./OFeedbackDoc.vue2.mjs";
2
2
  import './OFeedbackDoc.css';
3
3
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
4
- const _OFeedbackDoc = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-49e6ebe6"]]);
4
+ const _OFeedbackDoc = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-12fab110"]]);
5
5
  export {
6
6
  _OFeedbackDoc as default
7
7
  };
@@ -43,21 +43,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
43
43
  const completenessRate = useModel(__props, "completeness");
44
44
  const usabilityRate = useModel(__props, "usability");
45
45
  const feedback = useModel(__props, "feedback");
46
- const { lePad } = useScreen();
46
+ const { lePadV } = useScreen();
47
47
  const feedbackRef = ref();
48
48
  const showDlg = ref(false);
49
49
  const showPopup = ref(false);
50
50
  const autoHide = ref(true);
51
51
  let timer;
52
52
  const onMouseEnter = () => {
53
- if (lePad.value) {
53
+ if (lePadV.value) {
54
54
  return;
55
55
  }
56
56
  clearTimeout(timer);
57
57
  showPopup.value = true;
58
58
  };
59
59
  const onMouseLeave = () => {
60
- if (lePad.value) {
60
+ if (lePadV.value) {
61
61
  return;
62
62
  }
63
63
  if (!autoHide.value) {
@@ -82,7 +82,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
82
82
  autoHide.value = false;
83
83
  };
84
84
  const onClick = () => {
85
- if (!lePad.value) {
85
+ if (!lePadV.value) {
86
86
  return;
87
87
  }
88
88
  showDlg.value = true;
@@ -107,7 +107,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
107
107
  _: 1
108
108
  }, 512)
109
109
  ], true),
110
- unref(lePad) ? (openBlock(), createBlock(_sfc_main$1, {
110
+ unref(lePadV) ? (openBlock(), createBlock(_sfc_main$1, {
111
111
  key: 0,
112
112
  visible: showDlg.value,
113
113
  "onUpdate:visible": _cache[0] || (_cache[0] = ($event) => showDlg.value = $event),
@@ -1,17 +1,17 @@
1
- .hover-icon-rotate .o-icon[data-v-8fc5dd70] {
1
+ .hover-icon-rotate .o-icon[data-v-28bdd67f] {
2
2
  transition: all var(--o-duration-m1) var(--o-easing-standard-in);
3
3
  }
4
4
  @media (hover: hover) {
5
- .hover-icon-rotate:hover .o-icon[data-v-8fc5dd70] {
5
+ .hover-icon-rotate:hover .o-icon[data-v-28bdd67f] {
6
6
  transform: rotate(-180deg);
7
7
  }
8
8
  }
9
- .o-feedback-doc[data-v-8fc5dd70] {
9
+ .o-feedback-doc[data-v-28bdd67f] {
10
10
  position: relative;
11
11
  color: var(--o-color-info1);
12
12
  text-align: center;
13
13
  }
14
- .o-feedback-doc .o-feedback-icon-close[data-v-8fc5dd70] {
14
+ .o-feedback-doc .o-feedback-icon-close[data-v-28bdd67f] {
15
15
  position: absolute;
16
16
  top: -8px;
17
17
  right: -6px;
@@ -21,70 +21,70 @@
21
21
  transition: all var(--o-duration-m1) var(--o-easing-standard-in);
22
22
  }
23
23
  @media (hover: hover) {
24
- .o-feedback-doc .o-feedback-icon-close[data-v-8fc5dd70]:hover {
24
+ .o-feedback-doc .o-feedback-icon-close[data-v-28bdd67f]:hover {
25
25
  transform: rotate(180deg);
26
26
  color: var(--o-color-primary1);
27
27
  }
28
28
  }
29
- .o-feedback-doc .o-feedback-title[data-v-8fc5dd70] {
29
+ .o-feedback-doc .o-feedback-title[data-v-28bdd67f] {
30
30
  font-size: 14px;
31
31
  line-height: 22px;
32
32
  font-weight: 600;
33
33
  margin-bottom: 12px;
34
34
  }
35
- @media (max-width: 1200px) {
36
- .o-feedback-doc .o-feedback-title[data-v-8fc5dd70] {
35
+ @media (max-width: 840px) {
36
+ .o-feedback-doc .o-feedback-title[data-v-28bdd67f] {
37
37
  font-size: 18px;
38
38
  line-height: 26px;
39
39
  }
40
40
  }
41
- .o-feedback-doc .o-feedback-star-wrap[data-v-8fc5dd70] {
41
+ .o-feedback-doc .o-feedback-star-wrap[data-v-28bdd67f] {
42
42
  padding: 0 16px;
43
43
  }
44
- @media (max-width: 1200px) {
45
- .o-feedback-doc .o-feedback-star-wrap[data-v-8fc5dd70] {
44
+ @media (max-width: 840px) {
45
+ .o-feedback-doc .o-feedback-star-wrap[data-v-28bdd67f] {
46
46
  padding: 0 24px;
47
47
  }
48
48
  }
49
- .o-feedback-doc .o-feedback-doc-title[data-v-8fc5dd70] {
49
+ .o-feedback-doc .o-feedback-doc-title[data-v-28bdd67f] {
50
50
  margin-right: 16px;
51
51
  font-size: 12px;
52
52
  line-height: 18px;
53
53
  color: var(--o-color-info2);
54
54
  text-align: left;
55
55
  }
56
- @media (max-width: 1200px) {
57
- .o-feedback-doc .o-feedback-doc-title[data-v-8fc5dd70] {
56
+ @media (max-width: 840px) {
57
+ .o-feedback-doc .o-feedback-doc-title[data-v-28bdd67f] {
58
58
  font-size: 14px;
59
59
  line-height: 22px;
60
60
  }
61
61
  }
62
- .o-feedback-doc .o-feedback-star-line[data-v-8fc5dd70] {
62
+ .o-feedback-doc .o-feedback-star-line[data-v-28bdd67f] {
63
63
  display: flex;
64
64
  align-items: center;
65
65
  justify-content: space-between;
66
66
  margin-top: 12px;
67
67
  }
68
- .o-feedback-doc .o-feedback-doc-rate[data-v-8fc5dd70] {
68
+ .o-feedback-doc .o-feedback-doc-rate[data-v-28bdd67f] {
69
69
  --rate-size: 16px;
70
70
  }
71
- @media (max-width: 1200px) {
72
- .o-feedback-doc .o-feedback-doc-rate[data-v-8fc5dd70] {
71
+ @media (max-width: 840px) {
72
+ .o-feedback-doc .o-feedback-doc-rate[data-v-28bdd67f] {
73
73
  --rate-size: 32px;
74
74
  }
75
75
  }
76
- .o-feedback-doc .o-feedback-input-wrap[data-v-8fc5dd70] {
76
+ .o-feedback-doc .o-feedback-input-wrap[data-v-28bdd67f] {
77
77
  margin-top: 12px;
78
78
  }
79
- @media (max-width: 1200px) {
80
- .o-feedback-doc .o-feedback-input-wrap[data-v-8fc5dd70] {
79
+ @media (max-width: 840px) {
80
+ .o-feedback-doc .o-feedback-input-wrap[data-v-28bdd67f] {
81
81
  padding: 0 8px;
82
82
  }
83
83
  }
84
- .o-feedback-doc .o-feedback-input[data-v-8fc5dd70] {
84
+ .o-feedback-doc .o-feedback-input[data-v-28bdd67f] {
85
85
  width: 100%;
86
86
  }
87
- .o-feedback-doc .o-feedback-doc-submit[data-v-8fc5dd70] {
87
+ .o-feedback-doc .o-feedback-doc-submit[data-v-28bdd67f] {
88
88
  display: flex;
89
89
  justify-content: center;
90
90
  align-items: center;
@@ -94,13 +94,13 @@
94
94
  font-size: 14px;
95
95
  line-height: 22px;
96
96
  }
97
- .o-feedback-doc-btn-box[data-v-8fc5dd70] {
97
+ .o-feedback-doc-btn-box[data-v-28bdd67f] {
98
98
  display: flex;
99
99
  align-items: center;
100
100
  justify-content: space-around;
101
101
  margin-top: 16px;
102
102
  }
103
- .o-feedback-doc-btn-box .o-btn[data-v-8fc5dd70] {
103
+ .o-feedback-doc-btn-box .o-btn[data-v-28bdd67f] {
104
104
  flex: 1;
105
105
  padding: 2px 0;
106
106
  font-size: 16px;
@@ -110,6 +110,6 @@
110
110
  --btn-padding: 0 50px;
111
111
  --btn-color: var(--o-color-info1);
112
112
  }
113
- .o-feedback-doc-btn-box .divider-btn[data-v-8fc5dd70] {
113
+ .o-feedback-doc-btn-box .divider-btn[data-v-28bdd67f] {
114
114
  height: 24px;
115
115
  }
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./OFeedbackDocContent.vue2.mjs";
2
2
  import './OFeedbackDocContent.css';
3
3
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
4
- const _OFeedbackDocContent = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-8fc5dd70"]]);
4
+ const _OFeedbackDocContent = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-28bdd67f"]]);
5
5
  export {
6
6
  _OFeedbackDocContent as default
7
7
  };
@@ -51,7 +51,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
51
51
  emits: /* @__PURE__ */ mergeModels(["change", "close", "submit"], ["update:efficiency", "update:accuracy", "update:completeness", "update:usability", "update:feedback"]),
52
52
  setup(__props, { emit: __emit }) {
53
53
  const message = useMessage(null);
54
- const { lePad } = useScreen();
54
+ const { lePadV } = useScreen();
55
55
  const { locale, t } = useI18n();
56
56
  const props = __props;
57
57
  const efficiencyRate = useModel(__props, "efficiency");
@@ -184,7 +184,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
184
184
  modelValue: item.value,
185
185
  "onUpdate:modelValue": ($event) => item.value = $event,
186
186
  class: "o-feedback-doc-rate",
187
- size: unref(lePad) ? "large" : "medium",
187
+ size: unref(lePadV) ? "large" : "medium",
188
188
  count: 5,
189
189
  color: "primary",
190
190
  onChange: ($event) => onRateChange(item)
@@ -202,7 +202,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
202
202
  placeholder: unref(t)("feedback.placeholder")
203
203
  }, null, 8, ["modelValue", "placeholder"])
204
204
  ])) : createCommentVNode("", true),
205
- unref(lePad) ? (openBlock(), createElementBlock("div", _hoisted_6, [
205
+ unref(lePadV) ? (openBlock(), createElementBlock("div", _hoisted_6, [
206
206
  showInput.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
207
207
  createVNode(unref(OButton), {
208
208
  color: "normal",
@@ -1,12 +1,12 @@
1
- .hover-icon-rotate .o-icon[data-v-6209ad5c] {
1
+ .hover-icon-rotate .o-icon[data-v-a8461f7a] {
2
2
  transition: all var(--o-duration-m1) var(--o-easing-standard-in);
3
3
  }
4
4
  @media (hover: hover) {
5
- .hover-icon-rotate:hover .o-icon[data-v-6209ad5c] {
5
+ .hover-icon-rotate:hover .o-icon[data-v-a8461f7a] {
6
6
  transform: rotate(-180deg);
7
7
  }
8
8
  }
9
- .o-theme-switcher-common[data-v-6209ad5c] {
9
+ .o-theme-switcher-common[data-v-a8461f7a] {
10
10
  display: flex;
11
11
  align-items: center;
12
12
  width: var(--o-icon_size-m);
@@ -14,35 +14,35 @@
14
14
  font-size: var(--o-icon_size-m);
15
15
  }
16
16
  @media (min-width: 841px) and (max-width: 1200px) {
17
- .o-theme-switcher-common[data-v-6209ad5c] {
17
+ .o-theme-switcher-common[data-v-a8461f7a] {
18
18
  width: var(--o-icon_size-s);
19
19
  height: var(--o-icon_size-s);
20
20
  font-size: var(--o-icon_size-s);
21
21
  }
22
22
  }
23
- .o-theme-switcher-common[data-v-6209ad5c]:not(.disabled) {
23
+ .o-theme-switcher-common[data-v-a8461f7a]:not(.disabled) {
24
24
  cursor: pointer;
25
25
  }
26
- .o-theme-switcher-common:not(.disabled) .o-theme-icon[data-v-6209ad5c] {
26
+ .o-theme-switcher-common:not(.disabled) .o-theme-icon[data-v-a8461f7a] {
27
27
  color: var(--o-color-info2);
28
28
  }
29
29
  @media (hover: hover) {
30
- .o-theme-switcher-common:not(.disabled) .o-theme-icon[data-v-6209ad5c]:hover {
30
+ .o-theme-switcher-common:not(.disabled) .o-theme-icon[data-v-a8461f7a]:hover {
31
31
  color: var(--o-color-primary2);
32
32
  background-color: var(--o-color-control2-light);
33
33
  border-radius: var(--o-radius-xs);
34
34
  }
35
35
  }
36
- .o-theme-switcher-common:not(.disabled) .o-theme-icon[data-v-6209ad5c]:active {
36
+ .o-theme-switcher-common:not(.disabled) .o-theme-icon[data-v-a8461f7a]:active {
37
37
  color: var(--o-color-primary3);
38
38
  }
39
- .o-theme-switcher-common.disabled[data-v-6209ad5c] {
39
+ .o-theme-switcher-common.disabled[data-v-a8461f7a] {
40
40
  cursor: not-allowed;
41
41
  }
42
- .o-theme-switcher-common.disabled .o-theme-icon[data-v-6209ad5c] {
42
+ .o-theme-switcher-common.disabled .o-theme-icon[data-v-a8461f7a] {
43
43
  color: var(--o-color-info4);
44
44
  }
45
- .o-theme-switcher-mobile .o-theme-switch[data-v-6209ad5c] {
45
+ .o-theme-switcher-mobile .o-theme-switch[data-v-a8461f7a] {
46
46
  --switch-handler-color: var(--o-color-white);
47
47
  --switch-color: var(--o-color-info4);
48
48
  }
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./OHeaderTheme.vue2.mjs";
2
2
  import './OHeaderTheme.css';
3
3
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
4
- const _OHeaderTheme = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-6209ad5c"]]);
4
+ const _OHeaderTheme = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-a8461f7a"]]);
5
5
  export {
6
6
  _OHeaderTheme as default
7
7
  };
@@ -21,7 +21,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
21
21
  setup(__props, { emit: __emit }) {
22
22
  const props = __props;
23
23
  const emit = __emit;
24
- const { gtPhone } = useScreen();
24
+ const { lePadV } = useScreen();
25
25
  const switchVal = computed({
26
26
  get() {
27
27
  return props.theme;
@@ -32,7 +32,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
32
32
  }
33
33
  });
34
34
  const isCommon = computed(() => {
35
- return props.type === "common" || props.type === "auto" && gtPhone.value;
35
+ return props.type === "common" || props.type === "auto" && !lePadV.value;
36
36
  });
37
37
  const toggleTheme = () => {
38
38
  if (props.disabled) {
@@ -149,6 +149,9 @@
149
149
  .o-sig-meeting-calendar .meeting-card-header .o-tab .o-tab-nav {
150
150
  padding-bottom: var(--o-gap-3);
151
151
  }
152
+ .o-sig-meeting-calendar .meeting-card-header .o-tab .o-tab-nav .o-icon svg path {
153
+ fill: currentColor;
154
+ }
152
155
  .o-sig-meeting-calendar .el-input__prefix {
153
156
  display: none;
154
157
  }
@@ -1,3 +1,4 @@
1
+ import { nextTick, ComponentPublicInstance } from 'vue';
1
2
  type __VLS_Props = {
2
3
  data: any[];
3
4
  current: number;
@@ -12,5 +13,178 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {
12
13
  }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
13
14
  "onClick-date"?: ((...args: any[]) => any) | undefined;
14
15
  "onChange-month"?: ((...args: any[]) => any) | undefined;
15
- }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
16
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
17
+ scrollerRef: ({
18
+ $: import('vue').ComponentInternalInstance;
19
+ $data: {};
20
+ $props: Partial<{
21
+ size: "medium" | "small";
22
+ duration: number;
23
+ disabledX: boolean;
24
+ disabledY: boolean;
25
+ showType: "auto" | "always" | "never" | "hover";
26
+ autoUpdateOnScrollSize: boolean;
27
+ }> & Omit<{
28
+ readonly size: "small" | "medium";
29
+ readonly duration: number;
30
+ readonly disabledX: boolean;
31
+ readonly disabledY: boolean;
32
+ readonly showType: "auto" | "hover" | "always" | "never";
33
+ readonly autoUpdateOnScrollSize: boolean;
34
+ readonly wrapClass?: string | {
35
+ [k: string]: boolean;
36
+ } | (string | {
37
+ [k: string]: boolean;
38
+ })[] | undefined;
39
+ readonly barClass?: string | {
40
+ [k: string]: boolean;
41
+ } | (string | {
42
+ [k: string]: boolean;
43
+ })[] | undefined;
44
+ readonly onScroll?: ((event: Event) => any) | undefined | undefined;
45
+ } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "size" | "duration" | "disabledX" | "disabledY" | "showType" | "autoUpdateOnScrollSize">;
46
+ $attrs: import('vue').Attrs;
47
+ $refs: {
48
+ [x: string]: unknown;
49
+ } & {
50
+ targetRef: HTMLDivElement;
51
+ };
52
+ $slots: Readonly<{
53
+ [name: string]: import('vue').Slot<any> | undefined;
54
+ }>;
55
+ $root: ComponentPublicInstance | null;
56
+ $parent: ComponentPublicInstance | null;
57
+ $host: Element | null;
58
+ $emit: (event: "scroll", event: Event) => void;
59
+ $el: HTMLDivElement;
60
+ $options: import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
61
+ wrapClass: {
62
+ type: import('vue').PropType<string | {
63
+ [k: string]: boolean;
64
+ } | Array<{
65
+ [k: string]: boolean;
66
+ } | string>>;
67
+ };
68
+ disabledX: {
69
+ type: BooleanConstructor;
70
+ required: false;
71
+ };
72
+ disabledY: {
73
+ type: BooleanConstructor;
74
+ };
75
+ duration: {
76
+ type: NumberConstructor;
77
+ default: number;
78
+ };
79
+ showType: {
80
+ type: import('vue').PropType<"auto" | "always" | "hover" | "never">;
81
+ default: string;
82
+ };
83
+ size: {
84
+ type: import('vue').PropType<import('@opensig/opendesign').ScrollerSizeT>;
85
+ default: string;
86
+ };
87
+ autoUpdateOnScrollSize: {
88
+ type: BooleanConstructor;
89
+ };
90
+ barClass: {
91
+ type: import('vue').PropType<string | {
92
+ [k: string]: boolean;
93
+ } | Array<{
94
+ [k: string]: boolean;
95
+ } | string>>;
96
+ };
97
+ }>> & Readonly<{
98
+ onScroll?: ((event: Event) => any) | undefined;
99
+ }>, {
100
+ scrollTo: (options?: ScrollToOptions | undefined) => void;
101
+ scrollBy: (options?: ScrollToOptions | undefined) => void;
102
+ getContainerEl(): HTMLElement | null;
103
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
104
+ scroll: (event: Event) => any;
105
+ }, string, {
106
+ size: "medium" | "small";
107
+ duration: number;
108
+ disabledX: boolean;
109
+ disabledY: boolean;
110
+ showType: "auto" | "always" | "never" | "hover";
111
+ autoUpdateOnScrollSize: boolean;
112
+ }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
113
+ beforeCreate?: (() => void) | (() => void)[];
114
+ created?: (() => void) | (() => void)[];
115
+ beforeMount?: (() => void) | (() => void)[];
116
+ mounted?: (() => void) | (() => void)[];
117
+ beforeUpdate?: (() => void) | (() => void)[];
118
+ updated?: (() => void) | (() => void)[];
119
+ activated?: (() => void) | (() => void)[];
120
+ deactivated?: (() => void) | (() => void)[];
121
+ beforeDestroy?: (() => void) | (() => void)[];
122
+ beforeUnmount?: (() => void) | (() => void)[];
123
+ destroyed?: (() => void) | (() => void)[];
124
+ unmounted?: (() => void) | (() => void)[];
125
+ renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
126
+ renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
127
+ errorCaptured?: ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void)[];
128
+ };
129
+ $forceUpdate: () => void;
130
+ $nextTick: typeof nextTick;
131
+ $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
132
+ } & Readonly<{
133
+ size: "medium" | "small";
134
+ duration: number;
135
+ disabledX: boolean;
136
+ disabledY: boolean;
137
+ showType: "auto" | "always" | "never" | "hover";
138
+ autoUpdateOnScrollSize: boolean;
139
+ }> & Omit<Readonly<import('vue').ExtractPropTypes<{
140
+ wrapClass: {
141
+ type: import('vue').PropType<string | {
142
+ [k: string]: boolean;
143
+ } | Array<{
144
+ [k: string]: boolean;
145
+ } | string>>;
146
+ };
147
+ disabledX: {
148
+ type: BooleanConstructor;
149
+ required: false;
150
+ };
151
+ disabledY: {
152
+ type: BooleanConstructor;
153
+ };
154
+ duration: {
155
+ type: NumberConstructor;
156
+ default: number;
157
+ };
158
+ showType: {
159
+ type: import('vue').PropType<"auto" | "always" | "hover" | "never">;
160
+ default: string;
161
+ };
162
+ size: {
163
+ type: import('vue').PropType<import('@opensig/opendesign').ScrollerSizeT>;
164
+ default: string;
165
+ };
166
+ autoUpdateOnScrollSize: {
167
+ type: BooleanConstructor;
168
+ };
169
+ barClass: {
170
+ type: import('vue').PropType<string | {
171
+ [k: string]: boolean;
172
+ } | Array<{
173
+ [k: string]: boolean;
174
+ } | string>>;
175
+ };
176
+ }>> & Readonly<{
177
+ onScroll?: ((event: Event) => any) | undefined;
178
+ }>, "size" | "duration" | "disabledX" | "disabledY" | "showType" | "autoUpdateOnScrollSize" | "scrollTo" | "scrollBy" | "getContainerEl"> & {
179
+ scrollTo: (options?: ScrollToOptions | undefined) => void;
180
+ scrollBy: (options?: ScrollToOptions | undefined) => void;
181
+ getContainerEl: () => HTMLElement | null;
182
+ } & {} & import('vue').ComponentCustomProperties & {} & {
183
+ $slots: {
184
+ default?(_: {}): any;
185
+ thumb?(_: {}): any;
186
+ track?(_: {}): any;
187
+ };
188
+ }) | null;
189
+ }, HTMLDivElement>;
16
190
  export default _default;
@@ -1,4 +1,4 @@
1
- import { defineComponent, openBlock, createElementBlock, createVNode, unref, withCtx, Fragment, renderList, createElementVNode, toDisplayString, normalizeClass, createBlock, normalizeStyle, resolveDynamicComponent, createCommentVNode } from "vue";
1
+ import { defineComponent, ref, watch, nextTick, openBlock, createElementBlock, createVNode, unref, withCtx, Fragment, renderList, createElementVNode, toDisplayString, normalizeClass, createBlock, normalizeStyle, resolveDynamicComponent, createCommentVNode } from "vue";
2
2
  import { OScroller, OIcon, OIconArrowLeft, OIconArrowRight } from "@opensig/opendesign";
3
3
  import { useMeetingConfig } from "../composables/useMeetingConfig.mjs";
4
4
  import { CalendarDataType } from "../types.mjs";
@@ -32,9 +32,40 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
32
32
  if (props.current + step >= props.total || props.current + step < 0) return;
33
33
  emits("change-month", step);
34
34
  };
35
+ const scrollerRef = ref(null);
36
+ const scrollToActiveTop = () => {
37
+ var _a, _b;
38
+ const containerEl = ((_b = (_a = scrollerRef.value) == null ? void 0 : _a.getContainerEl) == null ? void 0 : _b.call(_a)) ?? null;
39
+ if (!containerEl) return false;
40
+ const activeEl = containerEl.querySelector(".day-item.active");
41
+ if (!activeEl) return false;
42
+ const containerRect = containerEl.getBoundingClientRect();
43
+ const activeRect = activeEl.getBoundingClientRect();
44
+ containerEl.scrollTop += activeRect.top - containerRect.top;
45
+ return true;
46
+ };
47
+ let scrolled = false;
48
+ const stopActiveWatch = watch(
49
+ [() => props.active, () => props.data],
50
+ () => {
51
+ if (scrolled || !props.active) {
52
+ return;
53
+ }
54
+ nextTick(() => {
55
+ if (scrolled) return;
56
+ if (scrollToActiveTop()) {
57
+ scrolled = true;
58
+ stopActiveWatch();
59
+ }
60
+ });
61
+ },
62
+ { immediate: true, flush: "post" }
63
+ );
35
64
  return (_ctx, _cache) => {
36
65
  return openBlock(), createElementBlock("div", _hoisted_1, [
37
66
  createVNode(unref(OScroller), {
67
+ ref_key: "scrollerRef",
68
+ ref: scrollerRef,
38
69
  class: "month-wrapper",
39
70
  "show-type": "hover",
40
71
  size: "small"
@@ -91,7 +122,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
91
122
  }), 128))
92
123
  ]),
93
124
  _: 1
94
- }),
125
+ }, 512),
95
126
  createElementVNode("div", _hoisted_7, [
96
127
  createVNode(unref(OIcon), {
97
128
  onClick: _cache[0] || (_cache[0] = ($event) => changeMonth(0 - STEP)),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opendesign-plus-test/components",
3
- "version": "0.0.1-rc.119",
3
+ "version": "0.0.1-rc.121",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public",
@@ -45,8 +45,8 @@
45
45
  "vue-dompurify-html": "^3.1.2",
46
46
  "vue": "^3.5.13",
47
47
  "element-plus": "2.13.1",
48
- "@opendesign-plus/styles": "0.0.1-rc.2",
49
- "@opendesign-plus/composables": "0.0.1-rc.10"
48
+ "@opendesign-plus/composables": "0.0.1-rc.10",
49
+ "@opendesign-plus/styles": "0.0.1-rc.2"
50
50
  },
51
51
  "devDependencies": {
52
52
  "@vitejs/plugin-vue": "^5.2.1",