eco-vue-js 0.16.7 → 0.17.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.
@@ -1 +1 @@
1
- {"version":3,"file":"WButtonGroup.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/Button/WButtonGroup.vue"],"names":[],"mappings":"AAiGA;AAuJA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAW7C,QAAA,MAAM,YAAY,GAAK,KAAK,SAAS,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,SAAS;IAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAA;CAAC,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,SAAS,EAC1L,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,gBAAgB,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAClE;WA2PO,OAAO,KAAK,EAAE,WAAW,GAAG,mBAAmB,CAAC;;KAAmC,CAAC,GAAG,CAAC,OAAO,UAAU,SAAS;QAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAC5J,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI;WACtB,GAAG;;gBAZC,CAAC,KAAK,IAAgB,KAAK,GAAG;;mBAC3B,CAAC,KAAK,IAAiB,KAAK,GAAG;;iBACjC,CAAC,KAAK;;;SAAiB,KAAK,GAAG;;iBAC/B,CAAC,KAAK;;;SAAiB,KAAK,GAAG;;gBAChC,CAAC,KAAK,IAAiB,KAAK,GAAG;;cAvOrC,oBAAoB,SAAS,KAAK,KAAG,IAAI;EAmP3C,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAA;CAAI,CAAC;wBACpE,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,CAAC,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"WButtonGroup.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/Button/WButtonGroup.vue"],"names":[],"mappings":"AA+HA;AAgMA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAY7C,QAAA,MAAM,YAAY,GAAK,KAAK,SAAS,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,SAAS;IAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAA;CAAC,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,SAAS,EAC1L,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,gBAAgB,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAClE;WAsXO,OAAO,KAAK,EAAE,WAAW,GAAG,mBAAmB,CAAC;;KAAmC,CAAC,GAAG,CAAC,OAAO,UAAU,SAAS;QAAE,oBAAoB,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YAC5J,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI;WACtB,GAAG;;gBAZC,CAAC,KAAK,IAAgB,KAAK,GAAG;;mBAC3B,CAAC,KAAK,IAAiB,KAAK,GAAG;;iBACjC,CAAC,KAAK;;;SAAiB,KAAK,GAAG;;iBAC/B,CAAC,KAAK;;;SAAiB,KAAK,GAAG;;gBAChC,CAAC,KAAK,IAAiB,KAAK,GAAG;;cA9VrC,oBAAoB,SAAS,KAAK,KAAG,IAAI;EA0W3C,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAA;CAAI,CAAC;wBACpE,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,CAAC,GAAG,EAAE,CAAC"}
@@ -1,10 +1,16 @@
1
- import { SemanticType } from "../../utils/SemanticType.js";
1
+ import WSkeleton_default from "../Skeleton/WSkeleton.vue.js";
2
+ import { SemanticType, useSemanticTypeBackgroundMap, useSemanticTypeButtonBackgroundMap } from "../../utils/SemanticType.js";
3
+ import WSpinner_default from "../Spinner/WSpinner.vue.js";
2
4
  import { useComponentStates } from "../../utils/useComponentStates.js";
3
- import WButton_default from "./WButton.vue.js";
4
5
  import WFieldWrapper_default from "../FieldWrapper/WFieldWrapper.vue.js";
5
- import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createTextVNode, defineComponent, mergeProps, normalizeClass, openBlock, ref, renderList, renderSlot, resolveDynamicComponent, toDisplayString, unref, withCtx } from "vue";
6
+ import { Fragment, Transition, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createTextVNode, createVNode, defineComponent, mergeProps, normalizeClass, openBlock, ref, renderList, renderSlot, resolveDynamicComponent, toDisplayString, unref, withCtx } from "vue";
6
7
  //#region src/components/Button/WButtonGroup.vue?vue&type=script&setup=true&lang.ts
7
8
  var _hoisted_1 = { class: "flex gap-1" };
9
+ var _hoisted_2 = [
10
+ "aria-pressed",
11
+ "disabled",
12
+ "onClick"
13
+ ];
8
14
  var WButtonGroup_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
9
15
  inheritAttrs: false,
10
16
  __name: "WButtonGroup",
@@ -15,7 +21,8 @@ var WButtonGroup_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
15
21
  modelValue: {},
16
22
  wrap: { type: Boolean },
17
23
  col: { type: Boolean },
18
- semanticType: {},
24
+ semanticType: { default: SemanticType.PRIMARY },
25
+ loading: { type: Boolean },
19
26
  stretch: { type: Boolean },
20
27
  allowClear: { type: Boolean },
21
28
  title: {},
@@ -52,18 +59,13 @@ var WButtonGroup_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
52
59
  topText: { type: Boolean },
53
60
  allowDropFile: { type: Boolean },
54
61
  hideTitle: { type: Boolean },
55
- embedded: { type: Boolean },
56
- loading: { type: Boolean },
57
- download: {},
58
- autofocus: { type: Boolean },
59
- outline: { type: Boolean },
60
- borderComponent: {},
61
- noBorderComponent: { type: Boolean },
62
- to: {}
62
+ embedded: { type: Boolean }
63
63
  },
64
64
  emits: ["update:model-value"],
65
65
  setup(__props, { emit: __emit }) {
66
66
  const props = __props;
67
+ const semanticTypeBackgroundMap = useSemanticTypeBackgroundMap();
68
+ const semanticTypeButtonBackgroundMap = useSemanticTypeButtonBackgroundMap();
67
69
  const emit = __emit;
68
70
  const { isDisabled, isReadonly } = useComponentStates(props);
69
71
  const loadingItem = ref(void 0);
@@ -71,12 +73,16 @@ var WButtonGroup_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
71
73
  if (props.valueGetter && typeof item === "object") return props.valueGetter(item);
72
74
  else return item;
73
75
  };
76
+ const isItemDisabled = (item) => {
77
+ return !!(isDisabled.value || isReadonly.value || props.loading && getValue(item) !== loadingItem.value);
78
+ };
74
79
  const modelValueItem = computed(() => props.list.find((item) => getValue(item) === props.modelValue));
75
80
  const emitUpdateModelValue = (value) => {
76
81
  loadingItem.value = value;
77
82
  emit("update:model-value", value);
78
83
  };
79
84
  const updateModelValue = (value) => {
85
+ if (props.loading) return;
80
86
  if (value !== props.modelValue) emitUpdateModelValue(value);
81
87
  else if (props.allowClear) emitUpdateModelValue(null);
82
88
  };
@@ -105,34 +111,53 @@ var WButtonGroup_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
105
111
  key: "2"
106
112
  } : {
107
113
  name: "field",
108
- fn: withCtx(() => [createElementVNode("div", { class: normalizeClass(["flex", {
109
- "flex-wrap gap-2": __props.wrap,
110
- "flex-col gap-2": __props.col,
111
- "items-start": __props.col && !__props.stretch
112
- }]) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.list, (item, index) => {
113
- return openBlock(), createBlock(WButton_default, mergeProps({ key: index }, { ref_for: true }, {
114
- ...props,
115
- semanticType: getValue(item) === __props.modelValue ? __props.semanticType ?? unref(SemanticType).PRIMARY : unref(SemanticType).SECONDARY,
116
- noBorderComponent: getValue(item) !== __props.modelValue,
117
- loading: __props.loading && getValue(item) === loadingItem.value,
118
- disabled: unref(isDisabled) || unref(isReadonly) || __props.loading && getValue(item) !== loadingItem.value,
119
- join: !__props.wrap && !__props.col,
120
- tooltipText: void 0
121
- }, {
122
- class: { "flex-1": __props.stretch },
114
+ fn: withCtx(() => [__props.skeleton ? (openBlock(), createBlock(WSkeleton_default, {
115
+ key: 0,
116
+ class: "w-skeleton-h---w-input-height w-skeleton-rounded-[0.625rem]"
117
+ })) : (openBlock(), createElementBlock("div", {
118
+ key: 1,
119
+ role: "group",
120
+ class: normalizeClass(["flex max-w-full gap-0.5 rounded-[0.625rem] p-0.75 bg-gray-100 dark:bg-gray-800", {
121
+ "flex-wrap": __props.wrap,
122
+ "flex-col": __props.col,
123
+ "w-fit": !__props.stretch
124
+ }])
125
+ }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.list, (item, index) => {
126
+ return openBlock(), createElementBlock("button", {
127
+ key: index,
128
+ type: "button",
129
+ "aria-pressed": getValue(item) === __props.modelValue,
130
+ class: normalizeClass(["relative isolate flex h-[calc(var(--w-input-height,2.75rem)-0.375rem)] bg-size-[200%] bg-position-[100%] items-center justify-center gap-2 rounded-lg px-3 font-medium whitespace-nowrap outline-none select-none", {
131
+ [unref(semanticTypeButtonBackgroundMap)[__props.semanticType] ?? unref(semanticTypeBackgroundMap)[__props.semanticType]]: getValue(item) === __props.modelValue,
132
+ "shadow-sm": getValue(item) === __props.modelValue,
133
+ "text-black-default dark:text-gray-200 bg-transparent": getValue(item) !== __props.modelValue,
134
+ "w-ripple cursor-pointer w-ripple-hover": !__props.loading && !isItemDisabled(item),
135
+ "cursor-progress": __props.loading && getValue(item) === loadingItem.value,
136
+ "cursor-not-allowed opacity-70": isItemDisabled(item),
137
+ "flex-1": __props.stretch
138
+ }]),
139
+ disabled: isItemDisabled(item),
123
140
  onClick: ($event) => updateModelValue(getValue(item))
124
- }), {
125
- default: withCtx(() => [renderSlot(_ctx.$slots, "option", {
126
- option: item,
127
- selected: getValue(item) === __props.modelValue
128
- }, () => [__props.optionComponent ? (openBlock(), createBlock(resolveDynamicComponent(__props.optionComponent), {
141
+ }, [createElementVNode("div", { class: normalizeClass(["z-10 flex items-center justify-center gap-2", { "opacity-0": __props.loading && getValue(item) === loadingItem.value }]) }, [renderSlot(_ctx.$slots, "option", {
142
+ option: item,
143
+ selected: getValue(item) === __props.modelValue
144
+ }, () => [__props.optionComponent ? (openBlock(), createBlock(resolveDynamicComponent(__props.optionComponent), {
145
+ key: 0,
146
+ option: item,
147
+ selected: getValue(item) === __props.modelValue
148
+ }, null, 8, ["option", "selected"])) : createCommentVNode("", true)])], 2), createVNode(Transition, {
149
+ "enter-active-class": "transition-opacity",
150
+ "leave-active-class": "transition-opacity",
151
+ "enter-from-class": "opacity-0",
152
+ "leave-to-class": "opacity-0"
153
+ }, {
154
+ default: withCtx(() => [__props.loading && getValue(item) === loadingItem.value ? (openBlock(), createBlock(WSpinner_default, {
129
155
  key: 0,
130
- option: item,
131
- selected: getValue(item) === __props.modelValue
132
- }, null, 8, ["option", "selected"])) : createCommentVNode("", true)])]),
156
+ class: "absolute z-10 w-spinner-size-(--w-button-spinner-size,1.25em)"
157
+ })) : createCommentVNode("", true)]),
133
158
  _: 2
134
- }, 1040, ["class", "onClick"]);
135
- }), 128))], 2)]),
159
+ }, 1024)], 10, _hoisted_2);
160
+ }), 128))], 2))]),
136
161
  key: "3"
137
162
  },
138
163
  _ctx.$slots.right ? {
@@ -24,11 +24,12 @@ export interface ButtonProps extends Partial<LinkProps> {
24
24
  noBorderComponent?: boolean;
25
25
  }
26
26
  export type ButtonGroupOptionComponent<Option> = Component<SelectOptionProps<Option>>;
27
- interface ButtonGroupPropsBase<Model extends number | string | null | boolean> extends Omit<FieldWrapperProps, 'modelValue'>, Omit<ButtonProps, 'tag' | 'type' | 'replace' | 'href' | 'target' | 'rel' | 'join'> {
27
+ interface ButtonGroupPropsBase<Model extends number | string | null | boolean> extends Omit<FieldWrapperProps, 'modelValue'> {
28
28
  modelValue: Model;
29
29
  wrap?: boolean;
30
30
  col?: boolean;
31
31
  semanticType?: SemanticType;
32
+ loading?: boolean;
32
33
  stretch?: boolean;
33
34
  allowClear?: boolean;
34
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/Button/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/Button/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAA;AACtD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,iCAAiC,CAAA;AACtE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,iCAAiC,CAAA;AACtE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAC,SAAS,EAAE,KAAK,EAAC,MAAM,KAAK,CAAA;AAEzC,MAAM,WAAW,WAAY,SAAQ,OAAO,CAAC,SAAS,CAAC;IACrD,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,qBAAqB,CAAA;IACjC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAA;IAChD,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,eAAe,CAAC,EAAE,KAAK,CAAA;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,MAAM,0BAA0B,CAAC,MAAM,IAAI,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAA;AAErF,UAAU,oBAAoB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,CAC3E,SAAQ,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC;IAC7C,UAAU,EAAE,KAAK,CAAA;IACjB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,UAAU,wBAAwB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,SAAS;IAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAA;CAAC,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,SAAS,CACrM,SAAQ,oBAAoB,CAAC,KAAK,CAAC;IACnC,IAAI,EAAE,SAAS,KAAK,EAAE,CAAA;IACtB,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IACrC,eAAe,CAAC,EAAE,0BAA0B,CAAC,KAAK,CAAC,CAAA;CACpD;AAED,UAAU,yBAAyB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,SAAS;IAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAA;CAAC,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,SAAS,CACtM,SAAQ,oBAAoB,CAAC,KAAK,CAAC;IACnC,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,WAAW,EAAE,WAAW,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC,CAAA;IACrD,eAAe,CAAC,EAAE,0BAA0B,CAAC,MAAM,CAAC,CAAA;CACrD;AAED,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,SAAS;IAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAA;CAAC,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,SAAS,IAAI,yBAAyB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,GAAG,wBAAwB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;AAEjT,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,aAAa,GAAG,YAAY,GAAG,iBAAiB,CAAC,EAC/H,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;IACnD,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"WTabs.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/Tabs/WTabs.vue"],"names":[],"mappings":"AAsIA;AAkcA,OAAO,KAAK,EAAgB,SAAS,EAAC,MAAM,SAAS,CAAA;AAErD,OAAO,EAA0D,KAAK,KAAK,EAAkH,MAAM,KAAK,CAAA;AAgCxM,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,KAAK,EAAE,CAAA;CACvB,CAAC;AAinBF,QAAA,MAAM,UAAU;2BAphBc,MAAM;yBAIR,MAAM;gCAiCG,OAAO,CAAC,IAAI,CAAC;oBAY7B,IAAI;iBAIL,MAAM,UAAU,OAAO;;;;;;;;;;;;;;;;;;;kFAmezC,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"WTabs.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/Tabs/WTabs.vue"],"names":[],"mappings":"AAqIA;AAicA,OAAO,KAAK,EAAgB,SAAS,EAAC,MAAM,SAAS,CAAA;AAErD,OAAO,EAA0D,KAAK,KAAK,EAAkH,MAAM,KAAK,CAAA;AAgCxM,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,KAAK,EAAE,CAAA;CACvB,CAAC;AA+mBF,QAAA,MAAM,UAAU;2BAlhBc,MAAM;yBAIR,MAAM;gCAiCG,OAAO,CAAC,IAAI,CAAC;oBAY7B,IAAI;iBAIL,MAAM,UAAU,OAAO;;;;;;;;;;;;;;;;;;;kFAiezC,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -263,7 +263,6 @@ var WTabs_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComp
263
263
  "sm-not:snap-start grid grid-cols-[1fr_auto]": __props.side,
264
264
  "no-scrollbar sm-not:pl---inner-margin mb-4 flex overflow-x-auto overscroll-x-contain": !__props.side,
265
265
  "flex-wrap": !__props.side && __props.wrap,
266
- "pr-[50%]": !__props.side && !__props.wrap,
267
266
  [__props.headerClass ?? ""]: true
268
267
  }])
269
268
  }, [(openBlock(true), createElementBlock(Fragment, null, renderList(defaultSlotsAll.value, (slot, index) => {
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "type": "git",
5
5
  "url": "https://github.com/rsmple/eco-vue-js.git"
6
6
  },
7
- "version": "0.16.7",
7
+ "version": "0.17.0",
8
8
  "dependencies": {
9
9
  "@stylistic/eslint-plugin": "5.10.0",
10
10
  "@tanstack/eslint-plugin-query": "5.102.8",
@@ -92,6 +92,7 @@
92
92
  @utility w-skeleton-h-* {
93
93
  --skeleton-height: --spacing(--value(number));
94
94
  --skeleton-height: --value(--spacing-*, --w-size-*, [*]);
95
+ --skeleton-margin-y: 0px;
95
96
  }
96
97
 
97
98
  @utility w-list-card-w-* {
@@ -104,7 +104,8 @@ const pluginDefault = plugin(function ({addBase, addUtilities, theme}) {
104
104
  'min-height': 'var(--w-option-height)',
105
105
  'border-radius': 'var(--w-option-rounded)',
106
106
 
107
- '--w-skeleton-height': 'var(--w-option-height)',
107
+ '--skeleton-height': 'var(--w-option-height)',
108
+ '--skeleton-margin-y': '0px',
108
109
  '--w-skeleton-rounded': 'var(--w-option-rounded)',
109
110
  },
110
111
  '.w-option-has-bg, *:has(.w-option-has-bg) + .w-option-has-bg-input, .w-option-has-bg + .w-option-has-bg-input': {
@@ -186,6 +187,8 @@ const pluginDefault = plugin(function ({addBase, addUtilities, theme}) {
186
187
  position: 'relative',
187
188
  width: 'var(--skeleton-width,var(--skeleton-width-internal,70%))',
188
189
  height: 'var(--skeleton-height,1em)',
190
+ 'margin-block': 'var(--skeleton-margin-y,calc((1lh - 1em) / 2))',
191
+ 'vertical-align': 'top',
189
192
  'border-radius': 'var(--w-skeleton-rounded,0.5rem)',
190
193
  overflow: 'hidden',
191
194
  cursor: 'progress',