@opentiny/tiny-robot 0.3.0-alpha.2 → 0.3.0-alpha.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/dist/index3.js CHANGED
@@ -1,307 +1,146 @@
1
- import { A as B, s as C, d as k, a as _, p as $, b as A, c as O, f as D } from "./index6.js";
2
- import { createElementBlock as w, openBlock as f, createElementVNode as r, resolveComponent as I, mergeProps as j, createBlock as h, createCommentVNode as T, renderSlot as E, resolveDynamicComponent as L, normalizeClass as M, toDisplayString as U } from "vue";
3
- const z = ({ emit: e, props: t, state: n, designConfig: o }) => (u) => {
4
- var s, l;
5
- const i = B.filterUrl(t.href), d = 1e3;
6
- let a = d;
7
- t.resetTime !== d ? a = t.resetTime : a = (l = (s = o == null ? void 0 : o.props) == null ? void 0 : s.resetTime) != null ? l : t.resetTime, i ? location.href = i : t.nativeType === "button" && a > 0 && (n.disabled = !0, n.timer = window.setTimeout(() => {
8
- n.disabled = !1;
9
- }, a)), e("click", u);
10
- }, F = (e) => () => clearTimeout(e.timer), N = ["state", "handleClick"], G = (e, { computed: t, onBeforeUnmount: n, reactive: o, watch: u, inject: s }, { emit: l, parent: i, designConfig: d }) => {
11
- i.tinyForm = i.tinyForm || s("form", null);
12
- const a = o({
13
- timer: 0,
14
- disabled: e.disabled,
15
- plain: t(() => e.plain || (i.buttonGroup || {}).plain),
16
- round: t(() => {
17
- var c, y, g;
18
- return (g = (y = e.round) != null ? y : (c = d == null ? void 0 : d.props) == null ? void 0 : c.round) != null ? g : !1;
19
- }),
20
- formDisabled: t(() => (i.tinyForm || {}).disabled),
21
- buttonDisabled: t(
22
- () => e.disabled || a.disabled || (i.buttonGroup || {}).disabled || a.formDisabled
23
- )
1
+ import { nextTick as h, h as R, defineComponent as x, render as b, onBeforeUnmount as j, Teleport as Z, computed as g, createBlock as S, openBlock as _, Transition as q, normalizeProps as G, guardReactiveProps as J, withCtx as K, createElementBlock as L, createCommentVNode as Q, renderSlot as X, useSlots as Y, ref as ee, watch as te, useAttrs as oe, reactive as se, resolveDynamicComponent as re, unref as B, mergeProps as T, createVNode as ne } from "vue";
2
+ import { d as E, f as ae, c as le } from "./index2.js";
3
+ import { t as p } from "./utils.js";
4
+ import { _ as $ } from "./_plugin-vue_export-helper.js";
5
+ import { u as pe } from "./useSlotRefs.js";
6
+ const ce = x({
7
+ setup: (r) => () => R(Z, r.teleportProps, r.vnodeFactory()),
8
+ props: ["teleportProps", "vnodeFactory"]
9
+ });
10
+ function ie(r, n) {
11
+ let e = null, o = null, c = !1;
12
+ h(() => {
13
+ c || (o = document.createElement("div"), e = R(ce, { teleportProps: r, vnodeFactory: n }), b(e, o));
14
+ }), j(() => {
15
+ c = !0, h(() => {
16
+ o && (b(null, o), o.remove(), e = null, o = null);
17
+ });
24
18
  });
25
- u(
26
- () => e.disabled,
27
- (c) => {
28
- a.disabled = c;
29
- },
30
- { immediate: !0 }
31
- );
32
- const b = {
33
- state: a,
34
- clearTimer: F(a),
35
- handleClick: z({ emit: l, props: e, state: a, designConfig: d })
36
- };
37
- return n(b.clearTimer), b;
38
- };
39
- var H = {
40
- xmlns: "http://www.w3.org/2000/svg",
41
- viewBox: "0 0 32 32"
42
- }, V = /* @__PURE__ */ r(
43
- "defs",
44
- {
45
- fill: "none"
46
- },
47
- [/* @__PURE__ */ r("linearGradient", {
48
- id: "loading-shadow_svg__a",
49
- x1: "-1285.88",
50
- y1: "25.63",
51
- x2: "-1286.89",
52
- y2: "25.13",
53
- gradientTransform: "matrix(29.6 0 0 29.6 38096.4 -732.8)",
54
- gradientUnits: "userSpaceOnUse"
55
- }, [/* @__PURE__ */ r("stop", {
56
- offset: "0",
57
- "stop-color": "#191919",
58
- "stop-opacity": "0"
59
- }), /* @__PURE__ */ r("stop", {
60
- offset: "1",
61
- "stop-color": "#191919"
62
- })])],
63
- -1
64
- /* HOISTED */
65
- ), P = /* @__PURE__ */ r(
66
- "mask",
67
- {
68
- fill: "none",
69
- id: "loading-shadow_svg__b",
70
- "mask-type": "alpha",
71
- maskUnits: "userSpaceOnUse",
72
- x: "0",
73
- y: "0"
74
- },
75
- [/* @__PURE__ */ r("path", {
76
- fill: "url(#loading-shadow_svg__a)",
77
- d: "M16 1.2c1 0 1.8.8 1.8 1.8S17 4.8 16 4.8C9.8 4.8 4.8 9.8 4.8 16s5 11.2 11.2 11.2 11.2-5 11.2-11.2c0-1 .8-1.8 1.8-1.8s1.8.8 1.8 1.8c0 8.2-6.6 14.8-14.8 14.8S1.2 24.2 1.2 16 7.8 1.2 16 1.2Z"
78
- }, [/* @__PURE__ */ r("animateTransform", {
79
- attributeName: "transform",
80
- attributeType: "XML",
81
- type: "rotate",
82
- from: "0 16 16",
83
- to: "360 16 16",
84
- dur: "1s",
85
- repeatCount: "indefinite"
86
- })])],
87
- -1
88
- /* HOISTED */
89
- ), Z = /* @__PURE__ */ r(
90
- "g",
91
- {
92
- mask: "url(#loading-shadow_svg__b)"
93
- },
94
- [/* @__PURE__ */ r("path", {
95
- d: "M-.1 32H32V-.11H-.1V32Z",
96
- "fill-rule": "evenodd"
97
- })],
98
- -1
99
- /* HOISTED */
100
- ), R = [V, P, Z];
101
- function X(e, t) {
102
- return f(), w("svg", H, [].concat(R));
103
- }
104
- var Y = {
105
- render: X
106
- }, q = function() {
107
- return C({
108
- name: "IconLoadingShadow",
109
- component: Y
110
- })();
111
- };
112
- function J(e, t) {
113
- var n = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
114
- if (n) return (n = n.call(e)).next.bind(n);
115
- if (Array.isArray(e) || (n = K(e)) || t) {
116
- n && (e = n);
117
- var o = 0;
118
- return function() {
119
- return o >= e.length ? { done: !0 } : { done: !1, value: e[o++] };
120
- };
121
- }
122
- throw new TypeError(`Invalid attempt to iterate non-iterable instance.
123
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
124
19
  }
125
- function K(e, t) {
126
- if (e) {
127
- if (typeof e == "string") return S(e, t);
128
- var n = {}.toString.call(e).slice(8, -1);
129
- return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? S(e, t) : void 0;
130
- }
131
- }
132
- function S(e, t) {
133
- (t == null || t > e.length) && (t = e.length);
134
- for (var n = 0, o = Array(t); n < t; n++) o[n] = e[n];
135
- return o;
20
+ function ue(r, n) {
21
+ return g(() => {
22
+ var f;
23
+ const e = E(r), o = (f = e == null ? void 0 : e.getRootNode) == null ? void 0 : f.call(e);
24
+ return o instanceof ShadowRoot ? o : document.body;
25
+ });
136
26
  }
137
- var Q = function(t, n) {
138
- for (var o = t.__vccOpts || t, u = J(n), s; !(s = u()).done; ) {
139
- var l = s.value, i = l[0], d = l[1];
140
- o[i] = d;
27
+ const fe = {
28
+ key: 0,
29
+ class: "tr-base-popper"
30
+ }, de = /* @__PURE__ */ x({
31
+ __name: "Popper",
32
+ props: {
33
+ show: { type: Boolean },
34
+ transitionProps: {}
35
+ },
36
+ setup(r) {
37
+ return (n, e) => (_(), S(q, G(J(n.transitionProps)), {
38
+ default: K(() => [
39
+ n.show ? (_(), L("div", fe, [
40
+ X(n.$slots, "default", {}, void 0, !0)
41
+ ])) : Q("", !0)
42
+ ]),
43
+ _: 3
44
+ }, 16));
141
45
  }
142
- return o;
143
- }, W = k({
144
- emits: ["click"],
145
- props: [].concat($, ["type", "text", "size", "icon", "resetTime", "nativeType", "loading", "disabled", "plain", "autofocus", "round", "circle", "tabindex", "customClass", "ghost"]),
146
- components: {
147
- IconLoading: q()
148
- },
149
- setup: function(t, n) {
150
- return _({
151
- props: t,
152
- context: n,
153
- renderless: G,
154
- api: N
46
+ }), me = /* @__PURE__ */ $(de, [["__scopeId", "data-v-082a686e"]]), ve = /* @__PURE__ */ x({
47
+ inheritAttrs: !1,
48
+ __name: "index",
49
+ props: {
50
+ appendTo: {},
51
+ offset: {},
52
+ placement: {
53
+ default: "top-center"
54
+ },
55
+ preventOverflow: {
56
+ type: Boolean
57
+ },
58
+ show: {
59
+ type: Boolean
60
+ },
61
+ transitionProps: {},
62
+ triggerEvents: {}
63
+ },
64
+ setup(r, {
65
+ expose: n
66
+ }) {
67
+ const e = r, o = Y(), {
68
+ vnodes: c,
69
+ ref: u,
70
+ setRef: f
71
+ } = pe(o.trigger), k = (t = {}) => {
72
+ const s = {};
73
+ for (const [l, a] of Object.entries(t))
74
+ /^on[A-Z]/.test(l) && typeof a == "function" && (s[l] = a);
75
+ return s;
76
+ }, d = ee(null), C = async (t) => {
77
+ await h();
78
+ const s = E(t);
79
+ s instanceof Element ? d.value = s : d.value = null;
80
+ }, i = g(() => {
81
+ var t, s;
82
+ return typeof e.offset == "number" ? {
83
+ mainAxis: e.offset,
84
+ crossAxis: 0
85
+ } : {
86
+ mainAxis: ((t = e.offset) == null ? void 0 : t.mainAxis) ?? 0,
87
+ crossAxis: ((s = e.offset) == null ? void 0 : s.crossAxis) ?? 0
88
+ };
89
+ }), {
90
+ top: O,
91
+ bottom: N,
92
+ left: w,
93
+ right: V,
94
+ width: z,
95
+ update: D
96
+ } = ae(u), {
97
+ width: P,
98
+ height: v
99
+ } = le(d, void 0, {
100
+ box: "border-box"
101
+ }), F = g(() => {
102
+ const {
103
+ placement: t,
104
+ preventOverflow: s
105
+ } = e, l = {}, a = (m, y) => {
106
+ if (!s) {
107
+ l[m] = y;
108
+ return;
109
+ }
110
+ const A = m === "top" || m === "bottom", M = A ? "100dvh" : "100dvw", W = p(A ? v.value : P.value);
111
+ l[m] = `clamp(0px, ${y}, calc(${M} - ${W}))`;
112
+ };
113
+ return t.includes("top") && a("top", p(O.value - v.value - i.value.mainAxis)), t.includes("bottom") && a("bottom", `calc(100% - ${p(N.value + v.value + i.value.mainAxis)})`), t.includes("left") && a("left", p(w.value + i.value.crossAxis)), t.includes("right") && a("right", `calc(100% - ${p(V.value + i.value.crossAxis)})`), t.includes("center") && a("left", p(w.value + z.value / 2 - P.value / 2 + i.value.crossAxis)), l;
155
114
  });
156
- }
157
- }), x = ["disabled", "autofocus", "type", "tabindex"];
158
- function ee(e, t, n, o, u, s) {
159
- var l = I("icon-loading");
160
- return f(), w("button", j({
161
- class: ["tiny-button", [e.type ? "tiny-button--" + e.type : "", e.size ? "tiny-button--" + e.size : "", {
162
- "is-disabled": e.state.buttonDisabled,
163
- "is-loading": e.loading,
164
- "is-plain": e.state.plain,
165
- "is-ghost": e.ghost,
166
- "is-round": e.state.round,
167
- "is-circle": e.circle,
168
- "is-icon": e.icon && !e.loading && (e.text || e.slots.default),
169
- "is-only-icon": e.icon && !e.loading && !(e.text || e.slots.default)
170
- }]],
171
- onClick: t[0] || (t[0] = function() {
172
- return e.handleClick && e.handleClick.apply(e, arguments);
173
- }),
174
- disabled: e.state.buttonDisabled || e.loading,
175
- autofocus: e.autofocus,
176
- type: e.nativeType,
177
- tabindex: e.tabindex
178
- }, e.a(e.$attrs, ["class", "style", "title", "id"], !0)), [e.loading ? (f(), h(l, {
179
- key: 0,
180
- class: "tiny-icon-loading tiny-svg-size"
181
- })) : T("v-if", !0), e.icon && !e.loading ? (f(), h(L(e.icon), {
182
- key: 1,
183
- class: M({
184
- "is-text": e.text || e.slots.default
185
- })
186
- }, null, 8, ["class"])) : T("v-if", !0), E(e.$slots, "default", {}, function() {
187
- return [r(
188
- "span",
189
- null,
190
- U(e.text),
191
- 1
192
- /* TEXT */
193
- )];
194
- })], 16, x);
195
- }
196
- var m = /* @__PURE__ */ Q(W, [["render", ee]]);
197
- function v() {
198
- return v = Object.assign ? Object.assign.bind() : function(e) {
199
- for (var t = 1; t < arguments.length; t++) {
200
- var n = arguments[t];
201
- for (var o in n) ({}).hasOwnProperty.call(n, o) && (e[o] = n[o]);
202
- }
203
- return e;
204
- }, v.apply(null, arguments);
205
- }
206
- var te = function(t) {
207
- var n, o = typeof process == "object" ? (n = process.env) == null ? void 0 : n.TINY_MODE : null;
208
- return m;
209
- }, ne = v({}, D, {
210
- /** 展示按钮不同的状态,设置为text则展示为文本按钮。可取值为:'default' | 'primary' | 'success' | 'warning' | 'danger' | 'info' | 'text' */
211
- type: {
212
- type: String,
213
- default: "default"
214
- },
215
- /** 设置原生的tabindex属性 */
216
- tabindex: {
217
- type: String,
218
- default: "0"
219
- },
220
- /** 按钮左侧展示的图标,接收为Icon组件 */
221
- icon: {
222
- type: [Object, String],
223
- default: ""
224
- },
225
- /** 按钮显示的文本 */
226
- text: {
227
- type: String,
228
- default: ""
229
- },
230
- /** 设置按钮禁用时间,防止重复提交,单位毫秒 */
231
- resetTime: {
232
- type: Number,
233
- default: 1e3
234
- },
235
- /** 对应按钮原生 type 属性 */
236
- nativeType: {
237
- type: String,
238
- default: "button"
239
- },
240
- /** 当配置href后,点击按钮则更新 location.href 进行页面跳转 */
241
- href: {
242
- type: String,
243
- default: ""
244
- },
245
- /** 定义按钮尺寸 */
246
- size: {
247
- type: String,
248
- default: "",
249
- validator: function(t) {
250
- return ["large", "medium", "small", "mini", ""].includes(t);
251
- }
252
- },
253
- /** 是否圆角按钮 */
254
- round: {
255
- type: Boolean,
256
- default: void 0
257
- },
258
- /** 是否朴素按钮 */
259
- plain: Boolean,
260
- /** 是否圆形按钮 */
261
- circle: Boolean,
262
- /** 是否加载中状态 */
263
- loading: Boolean,
264
- /** 是否被禁用按钮 */
265
- disabled: Boolean,
266
- /** 是否默认聚焦 */
267
- autofocus: Boolean,
268
- /** 自定义类名, 仅 mobile-first 模板时有效 */
269
- customClass: {
270
- type: String,
271
- default: ""
272
- },
273
- /** 设置通栏按钮,宽度充满水平方向, 仅 mobile-first 模板时有效 */
274
- banner: {
275
- type: Boolean,
276
- default: !1
277
- },
278
- /** 是否幽灵按钮 */
279
- ghost: Boolean,
280
- /** 点击事件 */
281
- onClick: {
282
- type: Function
283
- }
284
- }), p = k({
285
- name: O + "Button",
286
- inject: {
287
- buttonGroup: {
288
- default: ""
289
- }
290
- },
291
- props: ne,
292
- slots: Object,
293
- setup: function(t, n) {
294
- return A({
295
- props: t,
296
- context: n,
297
- template: te
115
+ te(() => e.show, (t) => {
116
+ t && D();
117
+ }, {
118
+ flush: "post"
298
119
  });
120
+ const U = ue(u), H = oe(), I = se({
121
+ to: e.appendTo || U.value
122
+ });
123
+ return ie(I, () => ne(me, T({
124
+ ref: C,
125
+ show: e.show,
126
+ transitionProps: e.transitionProps,
127
+ style: F.value
128
+ }, H), {
129
+ default: () => {
130
+ var t;
131
+ return [(t = o.content) == null ? void 0 : t.call(o)];
132
+ }
133
+ })), n({
134
+ triggerRef: u,
135
+ popperRef: d
136
+ }), (t, s) => (_(), S(re(B(c)[0]), T({
137
+ ref: B(f)
138
+ }, k(e.triggerEvents)), null, 16));
299
139
  }
300
- }), oe = "3.undefined";
301
- p.install = function(e) {
302
- e.component(p.name, p);
303
- };
304
- p.version = oe;
140
+ }), he = /* @__PURE__ */ $(ve, [["__scopeId", "data-v-aa8afcd1"]]);
141
+ he.name = "TrBasePopper";
305
142
  export {
306
- p as B
143
+ he as B,
144
+ ie as c,
145
+ ue as u
307
146
  };