@eturnity/eturnity_reusable_components 8.31.6-EPDM-13620.1 → 8.31.6-dev-03-elisee-8.37.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/dist/main.es25.js CHANGED
@@ -1,26 +1,252 @@
1
- import styled from "./main.es7.js";
2
1
  import "./main.es3.js";
3
- import _export_sfc from "./main.es11.js";
4
- import { resolveComponent, openBlock, createBlock, withCtx, createTextVNode } from "./main.es6.js";
5
- const StarElement = styled.span`
2
+ import styled from "./main.es7.js";
3
+ import { fetchIcon } from "./main.es27.js";
4
+ import { reactive } from "./main.es16.js";
5
+ import { computed, onMounted, watch, openBlock, createBlock, withCtx, createVNode, createElementVNode as createBaseVNode, createTextVNode, createCommentVNode } from "./main.es6.js";
6
+ import { toDisplayString } from "./main.es24.js";
7
+ const _hoisted_1 = ["innerHTML"];
8
+ const _sfc_main = {
9
+ __name: "index",
10
+ props: {
11
+ disabled: {
12
+ required: false,
13
+ default: false,
14
+ type: Boolean
15
+ },
16
+ name: {
17
+ required: true,
18
+ type: String
19
+ },
20
+ color: {
21
+ required: false,
22
+ default: null,
23
+ type: String
24
+ },
25
+ hoveredColor: {
26
+ required: false,
27
+ default: null,
28
+ type: String
29
+ },
30
+ size: {
31
+ required: false,
32
+ default: "30px",
33
+ type: String
34
+ },
35
+ width: {
36
+ type: String,
37
+ required: false,
38
+ default: ""
39
+ },
40
+ height: {
41
+ type: String,
42
+ required: false,
43
+ default: ""
44
+ },
45
+ cursor: {
46
+ required: false,
47
+ default: null,
48
+ type: String
49
+ },
50
+ isStriked: {
51
+ required: false,
52
+ default: false,
53
+ type: Boolean
54
+ },
55
+ backgroundColor: {
56
+ required: false,
57
+ default: null,
58
+ type: String
59
+ },
60
+ count: {
61
+ required: false,
62
+ default: 0,
63
+ type: Number
64
+ },
65
+ animation: {
66
+ required: false,
67
+ default: "none",
68
+ type: String
69
+ },
70
+ fillType: {
71
+ required: false,
72
+ default: "fill",
73
+ type: String
74
+ },
75
+ disableHover: {
76
+ type: Boolean,
77
+ default: false
78
+ },
79
+ showCount: {
80
+ type: Boolean,
81
+ default: false
82
+ }
83
+ },
84
+ setup(__props) {
85
+ const props = __props;
86
+ const Wrapper = styled("div", {
87
+ height: String,
88
+ width: String,
89
+ disabled: Boolean,
90
+ cursor: String
91
+ })`
92
+ display: flex;
93
+ position: relative;
94
+ align-content: center;
95
+ justify-content: center;
96
+ width: ${(props2) => props2.width};
97
+ height: ${(props2) => props2.height};
98
+ min-width: ${(props2) => props2.width};
99
+ min-height: ${(props2) => props2.height};
100
+ cursor: ${(props2) => props2.disabled ? "not-allowed" : props2.cursor};
101
+ line-height: 0;
102
+ `;
103
+ const CountWrapper = styled("div")`
104
+ position: absolute;
105
+ top: -7px;
106
+ right: -7px;
107
+ background-color: ${({
108
+ theme
109
+ }) => theme.colors.red};
6
110
  color: ${({
7
- theme
8
- }) => theme.colors.red};
111
+ theme
112
+ }) => theme.colors.white};
113
+ border-radius: 100%;
114
+ width: 15px;
115
+ height: 15px;
116
+ display: flex;
117
+ justify-content: center;
118
+ align-items: center;
119
+ font-size: 10px;
9
120
  `;
10
- const _sfc_main = {
11
- name: "IsRequiredLabelStar",
12
- components: {
13
- StarElement
121
+ const StrikedLine = styled("div", {
122
+ color: String
123
+ })`
124
+ display: flex;
125
+ position: absolute;
126
+ bottom: 0;
127
+ left: 0;
128
+ align-content: center;
129
+ justify-content: center;
130
+ width: 143%;
131
+ height: 8%;
132
+ background-color: ${({
133
+ theme,
134
+ color
135
+ }) => theme.colors[color] || color};
136
+ min-height: 0;
137
+ line-height: 0;
138
+ transform-origin: 0% 100%;
139
+ transform: rotate(-45deg);
140
+ `;
141
+ const IconImageAttrs = {
142
+ color: String,
143
+ backgroundColor: String,
144
+ hoveredColor: String,
145
+ animation: String,
146
+ fillType: String,
147
+ disableHover: Boolean,
148
+ showCount: Boolean
149
+ };
150
+ const IconImage = styled("div", IconImageAttrs)`
151
+ animation: ${(props2) => props2.animation};
152
+ width: 100%;
153
+ svg {
154
+ width: 100%;
155
+ height: 100%;
156
+ background-color: ${(props2) => props2.backgroundColor ? props2.backgroundColor : "transparent"};
157
+ padding: ${(props2) => props2.backgroundColor ? "3px" : "0"};
158
+ border-radius: ${(props2) => props2.showCount ? "8px 0 0 8px" : props2.backgroundColor ? "8px" : "0"};
159
+ }
160
+ svg path:not(.fix, .isStrokePath) {
161
+ ${({
162
+ theme,
163
+ color,
164
+ fillType
165
+ }) => color && `${fillType}: ${theme.colors[color] || color};`}
166
+ }
167
+ svg .isStroke {
168
+ ${({
169
+ theme,
170
+ color
171
+ }) => color && `stroke: ${theme.colors[color] || color};`}
172
+ }
173
+ svg .isFill {
174
+ ${({
175
+ theme,
176
+ color
177
+ }) => color && `fill: ${theme.colors[color] || color};`}
178
+ }
179
+ svg .isStrokePath:not(.fix) {
180
+ ${({
181
+ theme,
182
+ color
183
+ }) => color && `stroke: ${theme.colors[color] || color};`}
184
+ }
185
+ ${(props2) => !props2.disableHover && `
186
+ &:hover svg path:not(.fix, .isStrokePath) {
187
+ ${`${props2.fillType}: ${props2.theme.colors[props2.hoveredColor] || props2.color};`}
188
+ &:hover svg isStrokePath:not(.fix) {
189
+ ${`stroke: ${props2.theme.colors[props2.hoveredColor] || props2.color};`}
190
+ }
191
+ &:hover + div {
192
+ background-color: ${props2.hoveredColor};
193
+ }
194
+ `}
195
+
196
+ @keyframes fade {
197
+ 50% {
198
+ opacity: 0.3;
199
+ }
200
+ }
201
+ `;
202
+ const icon = reactive({
203
+ html: ""
204
+ });
205
+ const loadSvg = async () => {
206
+ icon.html = await fetchIcon(props.name.toLowerCase());
207
+ };
208
+ const counter = computed(() => props.count > 9 ? "9+" : props.count.toString());
209
+ onMounted(() => loadSvg());
210
+ watch(() => props.name, loadSvg);
211
+ return (_ctx, _cache) => {
212
+ return openBlock(), createBlock(Wrapper, {
213
+ cursor: __props.cursor,
214
+ "data-test-id": "icon_wrapper",
215
+ disabled: __props.disabled,
216
+ height: __props.height ? __props.height : __props.size,
217
+ width: __props.width ? __props.width : __props.size
218
+ }, {
219
+ default: withCtx(() => [createVNode(IconImage, {
220
+ animation: __props.animation,
221
+ "background-color": __props.backgroundColor,
222
+ color: __props.color,
223
+ "data-test-id": "icon_image",
224
+ "disable-hover": __props.disableHover,
225
+ "fill-type": __props.fillType,
226
+ "hovered-color": __props.hoveredColor,
227
+ "show-count": __props.showCount
228
+ }, {
229
+ default: withCtx(() => [createBaseVNode("i", {
230
+ "data-test-id": "icon_svg",
231
+ innerHTML: icon.html
232
+ }, null, 8, _hoisted_1)]),
233
+ _: 1
234
+ }, 8, ["animation", "background-color", "color", "disable-hover", "fill-type", "hovered-color", "show-count"]), createTextVNode(), __props.isStriked ? (openBlock(), createBlock(StrikedLine, {
235
+ key: 0,
236
+ color: __props.color,
237
+ "data-test-id": "icon_striked_line"
238
+ }, null, 8, ["color"])) : createCommentVNode("", true), createTextVNode(), __props.count > 0 ? (openBlock(), createBlock(CountWrapper, {
239
+ key: 1,
240
+ "data-test-id": "icon_count"
241
+ }, {
242
+ default: withCtx(() => [createTextVNode(toDisplayString(counter.value), 1)]),
243
+ _: 1
244
+ })) : createCommentVNode("", true)]),
245
+ _: 1
246
+ }, 8, ["cursor", "disabled", "height", "width"]);
247
+ };
14
248
  }
15
249
  };
16
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
17
- const _component_StarElement = resolveComponent("StarElement");
18
- return openBlock(), createBlock(_component_StarElement, null, {
19
- default: withCtx(() => [createTextVNode("*")]),
20
- _: 1
21
- });
22
- }
23
- const IsRequiredLabelStar = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
24
250
  export {
25
- IsRequiredLabelStar as default
251
+ _sfc_main as default
26
252
  };
@@ -1,5 +1,5 @@
1
1
  import styled from "./main.es7.js";
2
- import _sfc_main$1 from "./main.es15.js";
2
+ import _sfc_main$1 from "./main.es25.js";
3
3
  import theme from "./main.es8.js";
4
4
  import "./main.es3.js";
5
5
  import _export_sfc from "./main.es11.js";
package/dist/main.es5.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { isRuntimeOnly, warn, createRenderer, callWithAsyncErrorHandling } from "./main.es6.js";
2
2
  import { Comment, Fragment, Static, Teleport, Text, callWithErrorHandling, cloneVNode, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createStaticVNode, createTextVNode, createVNode, defineComponent, devtools, getCurrentInstance, guardReactiveProps, h, handleError, initCustomFormatter, inject, isVNode, mergeProps, nextTick, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onRenderTracked, onRenderTriggered, onServerPrefetch, onUnmounted, onUpdated, openBlock, provide, queuePostFlushCb, renderList, renderSlot, resolveComponent, resolveDynamicComponent, setBlockTracking, setDevtoolsHook, ssrContextKey, useSSRContext, version, watch, watchEffect, withCtx, withDirectives } from "./main.es6.js";
3
3
  import { isFunction, isHTMLTag, isSVGTag, isString, looseToNumber, isArray, invokeArrayFns, hyphenate, extend, isOn, isModelListener, capitalize, isSpecialBooleanAttr, includeBooleanAttr } from "./main.es26.js";
4
- import { camelize } from "./main.es16.js";
5
- import { capitalize as capitalize2, normalizeClass, normalizeStyle, toDisplayString, toHandlerKey } from "./main.es16.js";
4
+ import { camelize } from "./main.es24.js";
5
+ import { capitalize as capitalize2, normalizeClass, normalizeStyle, toDisplayString, toHandlerKey } from "./main.es24.js";
6
6
  const svgNS = "http://www.w3.org/2000/svg";
7
7
  const doc = typeof document !== "undefined" ? document : null;
8
8
  const templateContainer = doc && /* @__PURE__ */ doc.createElement("template");
package/dist/main.es6.js CHANGED
@@ -1,7 +1,7 @@
1
- import { isRef, toRaw, getCurrentScope, isShallow as isShallow$1, isReactive, ReactiveEffect, isProxy, computed as computed$1, pauseTracking, resetTracking, isReadonly, track, proxyRefs, markRaw, shallowReadonly, EffectScope, reactive, shallowReactive, trigger } from "./main.es18.js";
2
- import { readonly, ref, shallowRef, unref } from "./main.es18.js";
3
- import { isString, isFunction, getGlobalThis, isArray, NOOP, EMPTY_OBJ, normalizeClass, isObject, extend, normalizeStyle, isOn, isPromise, hasChanged, remove, isSet, isMap, isPlainObject, camelize, capitalize, toHandlerKey, hasOwn, EMPTY_ARR, NO, isBuiltInDirective, isReservedProp, invokeArrayFns, makeMap, looseToNumber, hyphenate, def, toRawType, isModelListener } from "./main.es16.js";
4
- import { toDisplayString } from "./main.es16.js";
1
+ import { isRef, toRaw, getCurrentScope, isShallow as isShallow$1, isReactive, ReactiveEffect, isProxy, computed as computed$1, pauseTracking, resetTracking, isReadonly, track, proxyRefs, markRaw, shallowReadonly, EffectScope, reactive, shallowReactive, trigger } from "./main.es16.js";
2
+ import { readonly, ref, shallowRef, unref } from "./main.es16.js";
3
+ import { isString, isFunction, getGlobalThis, isArray, NOOP, EMPTY_OBJ, normalizeClass, isObject, extend, normalizeStyle, isOn, isPromise, hasChanged, remove, isSet, isMap, isPlainObject, camelize, capitalize, toHandlerKey, hasOwn, EMPTY_ARR, NO, isBuiltInDirective, isReservedProp, invokeArrayFns, makeMap, looseToNumber, hyphenate, def, toRawType, isModelListener } from "./main.es24.js";
4
+ import { toDisplayString } from "./main.es24.js";
5
5
  const stack = [];
6
6
  function pushWarningContext(vnode) {
7
7
  stack.push(vnode);
package/dist/main.es9.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import styled from "./main.es7.js";
2
- import _sfc_main$1 from "./main.es15.js";
2
+ import _sfc_main$1 from "./main.es25.js";
3
3
  import theme from "./main.es8.js";
4
4
  import "./main.es3.js";
5
5
  import _export_sfc from "./main.es11.js";
6
6
  import { resolveComponent, openBlock, createBlock, withCtx, createVNode, createTextVNode } from "./main.es6.js";
7
- import { toDisplayString } from "./main.es16.js";
7
+ import { toDisplayString } from "./main.es24.js";
8
8
  const TagContainer = styled.div`
9
9
  display: inline-flex;
10
10
  align-items: baseline;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eturnity/eturnity_reusable_components",
3
- "version": "8.31.6-EPDM-13620.1",
3
+ "version": "8.31.6-dev-03-elisee-8.37.0",
4
4
  "files": [
5
5
  "dist",
6
6
  "src"
@@ -16,6 +16,9 @@
16
16
  :width="width"
17
17
  >
18
18
  <LabelComponent :has-icon="Boolean(icon)">
19
+ <FlexSpinner v-if="isLoading">
20
+ <RCSpinner size="tiny" />
21
+ </FlexSpinner>
19
22
  <Icon
20
23
  v-if="icon"
21
24
  :color="getIconColor"
@@ -44,6 +47,7 @@
44
47
  // />
45
48
 
46
49
  import styled from 'vue3-styled-components'
50
+ import RCSpinner from '../../spinner'
47
51
  import Icon from '../../icon'
48
52
  import theme from '../../../assets/theme'
49
53
 
@@ -171,6 +175,10 @@
171
175
  transform: rotate(20deg);
172
176
  cursor: ${(props) => (props.isDisabled ? 'not-allowed' : 'pointer')};
173
177
  `
178
+ const FlexSpinner = styled('div')`
179
+ flex: 0;
180
+ margin-right: 8px;
181
+ `
174
182
 
175
183
  export default {
176
184
  name: 'MainButton',
@@ -180,6 +188,8 @@
180
188
  PageContainer,
181
189
  ButtonContainer,
182
190
  BetaTag,
191
+ RCSpinner,
192
+ FlexSpinner,
183
193
  },
184
194
  props: {
185
195
  type: {
@@ -277,6 +287,10 @@
277
287
  type: Boolean,
278
288
  default: false,
279
289
  },
290
+ isLoading: {
291
+ type: Boolean,
292
+ default: false,
293
+ },
280
294
  },
281
295
  computed: {
282
296
  theme() {
@@ -59,6 +59,8 @@
59
59
 
60
60
  const getSpinnerSize = (size) => {
61
61
  switch (size) {
62
+ case 'tiny':
63
+ return '16px'
62
64
  case 'small':
63
65
  return '24px'
64
66
  case 'large':