@web-utils/form-ui 1.0.0-beta0

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.
Files changed (64) hide show
  1. package/base.css +1 -0
  2. package/chunks/B4M_TFeR.mjs +152 -0
  3. package/chunks/B5BIQCcK.mjs +149 -0
  4. package/chunks/BHNKrW1j.mjs +61 -0
  5. package/chunks/BO9jWhBl.mjs +46 -0
  6. package/chunks/BZ8aOa78.mjs +35 -0
  7. package/chunks/Bsz7y4Xp.mjs +73 -0
  8. package/chunks/Bxj372sF.mjs +53 -0
  9. package/chunks/C33EmJN8.mjs +32 -0
  10. package/chunks/C6Li3-l7.mjs +28 -0
  11. package/chunks/CBcdalMX.mjs +35 -0
  12. package/chunks/CdRsyF0n.mjs +43 -0
  13. package/chunks/ClNahmiU.mjs +23 -0
  14. package/chunks/CstztYMu.mjs +28 -0
  15. package/chunks/D61GMx8I.mjs +8 -0
  16. package/chunks/DC9b53M6.mjs +32 -0
  17. package/chunks/DDVAgRED.mjs +36 -0
  18. package/chunks/DpJQABVD.mjs +91 -0
  19. package/chunks/ZsLNWI9x.mjs +46 -0
  20. package/chunks/jn_iQrVZ.mjs +28 -0
  21. package/constants.mjs +4 -0
  22. package/element-dialog/index.mjs +77 -0
  23. package/element-dialog/style.css +1 -0
  24. package/empty-view/index.mjs +46 -0
  25. package/empty-view/style.css +1 -0
  26. package/flex-scroll-area/index.mjs +32 -0
  27. package/flex-scroll-area/style.css +1 -0
  28. package/form-advice/index.mjs +28 -0
  29. package/form-cell/index.mjs +23 -0
  30. package/form-cell/style.css +1 -0
  31. package/form-check-box-group/index.mjs +2 -0
  32. package/form-checkbox/index.mjs +2 -0
  33. package/form-date-picker/index.mjs +2 -0
  34. package/form-holder/index.mjs +2 -0
  35. package/form-holder/style.css +1 -0
  36. package/form-image/index.mjs +2 -0
  37. package/form-input/index.mjs +2 -0
  38. package/form-input-email/index.mjs +2 -0
  39. package/form-input-id-card/index.mjs +2 -0
  40. package/form-input-number/index.mjs +2 -0
  41. package/form-input-phone-number/index.mjs +2 -0
  42. package/form-input-tag/index.mjs +4 -0
  43. package/form-input-time/index.mjs +4 -0
  44. package/form-item-group/index.mjs +78 -0
  45. package/form-item-group/style.css +1 -0
  46. package/form-item-x/index.mjs +2 -0
  47. package/form-radio-group/index.mjs +2 -0
  48. package/form-rate/index.mjs +2 -0
  49. package/form-red-table/index.mjs +64 -0
  50. package/form-red-table/style.css +1 -0
  51. package/form-row/index.mjs +2 -0
  52. package/form-row/style.css +1 -0
  53. package/form-select/index.mjs +2 -0
  54. package/form-slider/index.mjs +2 -0
  55. package/form-switch/index.mjs +2 -0
  56. package/form-text/index.mjs +2 -0
  57. package/form-view/index.mjs +9 -0
  58. package/index.mjs +38 -0
  59. package/input/style.css +1 -0
  60. package/package.json +32 -0
  61. package/table-view/index.mjs +9 -0
  62. package/toolbar/index.mjs +9 -0
  63. package/toolbar-button/index.mjs +9 -0
  64. package/web-types.json +1 -0
@@ -0,0 +1,43 @@
1
+ import { a as e, n as t, t as n } from "./B4M_TFeR.mjs";
2
+ import { ElInputNumber as r } from "element-plus/es";
3
+ import { createVNode as i } from "vue";
4
+ //#endregion
5
+ //#region src/components/form/FormInputNumber.vue
6
+ var a = {
7
+ name: "FormInputNumber",
8
+ inheritAttrs: !1,
9
+ props: {
10
+ ...t,
11
+ modelValue: Number,
12
+ controls: Boolean,
13
+ align: {
14
+ type: String,
15
+ default: "left"
16
+ },
17
+ prefix: String,
18
+ suffix: String
19
+ },
20
+ emits: [...n],
21
+ setup(t, { emit: n, slots: a }) {
22
+ let { emitInput: o, render: s, placeholder: c, disabled: l } = e(t, {
23
+ emit: n,
24
+ slots: a
25
+ });
26
+ return () => s({ vNodes: i(r, {
27
+ style: "width: 100%",
28
+ align: t.align,
29
+ modelValue: t.modelValue,
30
+ disabled: l.value,
31
+ controls: t.controls,
32
+ "onUpdate:modelValue": o,
33
+ placeholder: c.value
34
+ }, {
35
+ prefix: a.prefix || t.prefix ? () => t.prefix : null,
36
+ suffix: a.suffix || t.suffix ? () => t.suffix : null,
37
+ "decrease-icon": a["decrease-icon"],
38
+ "increase-icon": a["increase-icon"]
39
+ }) });
40
+ }
41
+ };
42
+ //#endregion
43
+ export { a as t };
@@ -0,0 +1,23 @@
1
+ import { n as e, r as t, s as n } from "./B4M_TFeR.mjs";
2
+ import { ElText as r } from "element-plus/es";
3
+ import { createVNode as i } from "vue";
4
+ //#endregion
5
+ //#region src/components/form/FormText.vue
6
+ var a = {
7
+ name: "FormText",
8
+ inheritAttrs: !1,
9
+ props: {
10
+ ...e,
11
+ text: String
12
+ },
13
+ setup(e, { slots: a }) {
14
+ let o = n(e);
15
+ return () => t(e, {
16
+ vNodes: i(r, null, { default: a.default || (() => e.text) }),
17
+ formItemProps: o,
18
+ slots: a
19
+ });
20
+ }
21
+ };
22
+ //#endregion
23
+ export { a as t };
@@ -0,0 +1,28 @@
1
+ import { i as e, n as t, t as n } from "./B4M_TFeR.mjs";
2
+ import { t as r } from "./BHNKrW1j.mjs";
3
+ import { createVNode as i, isVNode as a, mergeProps as o } from "vue";
4
+ //#region src/components/form/FormInputIdCard.vue?vue&type=script&lang.jsx
5
+ function s(e) {
6
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !a(e);
7
+ }
8
+ //#endregion
9
+ //#region src/components/form/FormInputIdCard.vue
10
+ var c = {
11
+ name: "FormInputIdCard",
12
+ inheritAttrs: !1,
13
+ props: {
14
+ ...t,
15
+ modelValue: String
16
+ },
17
+ emits: [...n],
18
+ setup(t, { emit: n, slots: a }) {
19
+ let c = (t) => e(n, t);
20
+ return () => i(r, o(t, {
21
+ modelValue: t.modelValue,
22
+ type: "idcard",
23
+ "onUpdate:modelValue": c
24
+ }), s(a) ? a : { default: () => [a] });
25
+ }
26
+ };
27
+ //#endregion
28
+ export { c as t };
@@ -0,0 +1,8 @@
1
+ //#region \0plugin-vue:export-helper
2
+ var e = (e, t) => {
3
+ let n = e.__vccOpts || e;
4
+ for (let [e, r] of t) n[e] = r;
5
+ return n;
6
+ };
7
+ //#endregion
8
+ export { e as t };
@@ -0,0 +1,32 @@
1
+ import { a as e, n as t, t as n } from "./B4M_TFeR.mjs";
2
+ import { ElRate as r } from "element-plus/es";
3
+ import { createVNode as i, isVNode as a } from "vue";
4
+ //#region src/components/form/FormRate.vue?vue&type=script&lang.jsx
5
+ function o(e) {
6
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !a(e);
7
+ }
8
+ //#endregion
9
+ //#region src/components/form/FormRate.vue
10
+ var s = {
11
+ name: "FormRate",
12
+ inheritAttrs: !1,
13
+ props: {
14
+ ...t,
15
+ modelValue: Number
16
+ },
17
+ emits: [...n],
18
+ setup(t, { emit: n, slots: a }) {
19
+ let { emitInput: s, render: c, disabled: l } = e(t, {
20
+ emit: n,
21
+ slots: a
22
+ });
23
+ return () => c({ vNodes: i(r, {
24
+ modelValue: t.modelValue,
25
+ clearable: !0,
26
+ disabled: l.value,
27
+ "onUpdate:modelValue": s
28
+ }, o(a) ? a : { default: () => [a] }) });
29
+ }
30
+ };
31
+ //#endregion
32
+ export { s as t };
@@ -0,0 +1,36 @@
1
+ import { a as e, n as t, t as n } from "./B4M_TFeR.mjs";
2
+ import { ElSwitch as r } from "element-plus/es";
3
+ import { createVNode as i, isVNode as a } from "vue";
4
+ //#region src/components/form/FormSwitch.vue?vue&type=script&lang.jsx
5
+ function o(e) {
6
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !a(e);
7
+ }
8
+ //#endregion
9
+ //#region src/components/form/FormSwitch.vue
10
+ var s = {
11
+ name: "FormSwitch",
12
+ inheritAttrs: !1,
13
+ props: {
14
+ ...t,
15
+ modelValue: [
16
+ Boolean,
17
+ String,
18
+ Number
19
+ ]
20
+ },
21
+ emits: [...n],
22
+ setup(t, { emit: n, slots: a }) {
23
+ let { emitInput: s, render: c, disabled: l } = e(t, {
24
+ emit: n,
25
+ slots: a
26
+ });
27
+ return () => c({ vNodes: i(r, {
28
+ modelValue: t.modelValue,
29
+ clearable: !0,
30
+ disabled: l.value,
31
+ "onUpdate:modelValue": s
32
+ }, o(a) ? a : { default: () => [a] }) });
33
+ }
34
+ };
35
+ //#endregion
36
+ export { s as t };
@@ -0,0 +1,91 @@
1
+ import e from "../form-cell/index.mjs";
2
+ import { ElTooltip as t } from "element-plus/es";
3
+ import { Comment as n, Fragment as r, Text as i, createVNode as a, inject as o, isVNode as s } from "vue";
4
+ import { camelize as c, isDef as l, isString as u } from "@web-utils/core";
5
+ //#region src/components/red-form/FormRow.vue?vue&type=script&lang.jsx
6
+ function d(e) {
7
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !s(e);
8
+ }
9
+ var f = (e) => {
10
+ let t = Object.keys({});
11
+ for (let n in e) t[c(n)] = e[n];
12
+ return t;
13
+ }, p = (e, { columnSize: o }) => {
14
+ if (!e || !e.length) return null;
15
+ e = e.filter((e) => e.type !== n);
16
+ let s = [], c = e.length === 1;
17
+ for (let n = 0; n < e.length; n++) {
18
+ let g = e[n], { name: _ } = g.type;
19
+ if (g.type === i) s.push({
20
+ tag: _,
21
+ type: "text",
22
+ content: g,
23
+ colspan: c ? o : 0
24
+ });
25
+ else if (g.type === r) s.push(...p(g.children, { columnSize: o }));
26
+ else if (u(g.type) && g.type === "td") s.push({
27
+ tag: g.type,
28
+ type: "td",
29
+ content: g
30
+ });
31
+ else if (_ === "FormCell") s.push({
32
+ tag: _,
33
+ type: "FormCell",
34
+ content: g
35
+ });
36
+ else if (typeof g.type == "object") {
37
+ let { label: e, hideLabel: n, labelColspan: r, inputColspan: i, labelRowspan: u, inputRowspan: p, tipsAfterLabel: v, tips: y } = f(g.props);
38
+ if (!l(n)) {
39
+ var d, m, h;
40
+ let n = (d = g.children) == null ? void 0 : d.tips, i = n || y ? a(t, {
41
+ effect: "light",
42
+ content: y,
43
+ offset: 4
44
+ }, {
45
+ default: () => a("i", { class: "el-icon-info form-item-input-info" }, null),
46
+ content: n || null
47
+ }) : null;
48
+ s.push({
49
+ tag: _,
50
+ type: "label",
51
+ colspan: r,
52
+ rowspan: u,
53
+ content: [((m = g.children) == null || (h = m.label) == null ? void 0 : h.call(m)) || e, v === "" ? i : null]
54
+ });
55
+ }
56
+ let b;
57
+ b = c && l(n) ? o : l(i) ? i : c ? o - 1 : 0, s.push({
58
+ tag: _,
59
+ type: "input",
60
+ colspan: b,
61
+ rowspan: p,
62
+ content: g
63
+ });
64
+ } else console.error("未知节点");
65
+ }
66
+ return s;
67
+ }, m = {
68
+ name: "FormRow",
69
+ props: {
70
+ isLabel: Boolean,
71
+ alignCenter: Boolean
72
+ },
73
+ setup(t, { slots: n }) {
74
+ let r = o("setColumnSize", null), i = o("columnSize", null);
75
+ return () => {
76
+ var o;
77
+ let s = (o = n.default) == null ? void 0 : o.call(n), c = [];
78
+ return c.push(...p(s, { columnSize: (i == null ? void 0 : i.value) ?? 0 })), ((i == null ? void 0 : i.value) ?? 0) < c.length && (r == null || r(c.length)), a("tr", null, [c.map(({ tag: n, type: r, colspan: i, rowspan: o, content: s }) => n === "td" || r === "FormCell" ? s : r === "text" ? a(e, {
79
+ isLabel: t.isLabel,
80
+ alignCenter: t.alignCenter,
81
+ colspan: i
82
+ }, d(s) ? s : { default: () => [s] }) : a("td", {
83
+ class: r,
84
+ colspan: i,
85
+ rowspan: o
86
+ }, [s]))]);
87
+ };
88
+ }
89
+ };
90
+ //#endregion
91
+ export { m as t };
@@ -0,0 +1,46 @@
1
+ import { a as e, n as t, t as n } from "./B4M_TFeR.mjs";
2
+ import { ElOption as r, ElSelect as i } from "element-plus/es";
3
+ import { createVNode as a } from "vue";
4
+ //#endregion
5
+ //#region src/components/form/FormSelect.vue
6
+ var o = {
7
+ name: "FormSelect",
8
+ inheritAttrs: !1,
9
+ props: {
10
+ ...t,
11
+ modelValue: String,
12
+ options: [
13
+ String,
14
+ Number,
15
+ Boolean,
16
+ Object,
17
+ Array
18
+ ]
19
+ },
20
+ emits: [...n],
21
+ setup(t, { emit: n, slots: o }) {
22
+ let { emitInput: s, render: c, placeholder: l, disabled: u } = e(t, {
23
+ emit: n,
24
+ slots: o
25
+ });
26
+ return () => c({ vNodes: a(i, {
27
+ modelValue: t.modelValue,
28
+ clearable: !0,
29
+ disabled: u.value,
30
+ "onUpdate:modelValue": s,
31
+ placeholder: l.value
32
+ }, {
33
+ ...o,
34
+ default: o.default || (() => {
35
+ var e;
36
+ return (e = t.options) == null ? void 0 : e.map(({ value: e, label: t }) => a(r, {
37
+ key: e,
38
+ label: t,
39
+ value: e
40
+ }, null));
41
+ })
42
+ }) });
43
+ }
44
+ };
45
+ //#endregion
46
+ export { o as t };
@@ -0,0 +1,28 @@
1
+ import { i as e, n as t, t as n } from "./B4M_TFeR.mjs";
2
+ import { t as r } from "./BHNKrW1j.mjs";
3
+ import { createVNode as i, isVNode as a, mergeProps as o } from "vue";
4
+ //#region src/components/form/FormInputPhoneNumber.vue?vue&type=script&lang.jsx
5
+ function s(e) {
6
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !a(e);
7
+ }
8
+ //#endregion
9
+ //#region src/components/form/FormInputPhoneNumber.vue
10
+ var c = {
11
+ name: "FormInputPhoneNumber",
12
+ inheritAttrs: !1,
13
+ props: {
14
+ ...t,
15
+ modelValue: String
16
+ },
17
+ emits: [...n],
18
+ setup(t, { emit: n, slots: a }) {
19
+ let c = (t) => e(n, t);
20
+ return () => i(r, o(t, {
21
+ modelValue: t.modelValue,
22
+ type: "phone",
23
+ "onUpdate:modelValue": c
24
+ }), s(a) ? a : { default: () => [a] });
25
+ }
26
+ };
27
+ //#endregion
28
+ export { c as t };
package/constants.mjs ADDED
@@ -0,0 +1,4 @@
1
+ //#region src/components/constants.js
2
+ var e = Symbol("formHolder");
3
+ //#endregion
4
+ export { e as formHolderKey };
@@ -0,0 +1,77 @@
1
+ import { ElDialog as e } from "element-plus/es";
2
+ import { computed as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createSlots as o, mergeModels as s, normalizeClass as c, openBlock as l, ref as u, renderSlot as d, toDisplayString as f, unref as p, useCssVars as m, useModel as h, useTemplateRef as g, withCtx as _, withModifiers as v } from "vue";
3
+ //#region src/components/ElementDialog.vue
4
+ var y = { class: "dialog-title" }, b = { class: "dialog-header-buttons" }, x = {
5
+ __name: "ElementDialog",
6
+ props: /* @__PURE__ */ s({
7
+ height: String,
8
+ width: String,
9
+ title: String,
10
+ showClose: Boolean,
11
+ overflow: Boolean,
12
+ closeOnClickModal: Boolean,
13
+ destroyOnClose: Boolean,
14
+ draggable: {
15
+ type: Boolean,
16
+ default: !0
17
+ },
18
+ showFullscreen: Boolean,
19
+ alignCenter: Boolean
20
+ }, {
21
+ modelValue: { type: Boolean },
22
+ modelModifiers: {}
23
+ }),
24
+ emits: ["update:modelValue"],
25
+ setup(s) {
26
+ m((e) => ({ v3443e0e2: p(T) }));
27
+ let x = h(s, "modelValue"), S = s, C = g("dialog"), w = u(!1), T = t(() => w.value ? "100%" : S.height), E = () => {
28
+ C.value.handleClose();
29
+ };
30
+ return (t, u) => {
31
+ let m = e;
32
+ return l(), n(m, {
33
+ ref: "dialog",
34
+ modelValue: x.value,
35
+ "onUpdate:modelValue": u[1] || (u[1] = (e) => x.value = e),
36
+ fullscreen: p(w),
37
+ "show-close": s.showClose,
38
+ "destroy-on-close": s.destroyOnClose,
39
+ draggable: s.draggable,
40
+ overflow: s.overflow,
41
+ "align-center": s.alignCenter,
42
+ width: s.width,
43
+ "close-on-click-modal": s.closeOnClickModal
44
+ }, o({
45
+ header: _(() => [a("div", y, f(s.title), 1), a("div", b, [s.showFullscreen ? (l(), i("i", {
46
+ key: 0,
47
+ class: c(["dialog-header-button", {
48
+ "el-icon-full-screen": !p(w),
49
+ "el-icon-copy-document": p(w)
50
+ }]),
51
+ onClick: u[0] || (u[0] = v((e) => w.value = !p(w), ["stop"]))
52
+ }, null, 2)) : r("v-if", !0), a("i", {
53
+ class: "dialog-header-button el-icon-close",
54
+ onClick: v(E, ["stop"])
55
+ })])]),
56
+ default: _(() => [d(t.$slots, "default")]),
57
+ _: 2
58
+ }, [t.$slots.footer ? {
59
+ name: "footer",
60
+ fn: _(() => [d(t.$slots, "footer", { close: E })]),
61
+ key: "0"
62
+ } : void 0]), 1032, [
63
+ "modelValue",
64
+ "fullscreen",
65
+ "show-close",
66
+ "destroy-on-close",
67
+ "draggable",
68
+ "overflow",
69
+ "align-center",
70
+ "width",
71
+ "close-on-click-modal"
72
+ ]);
73
+ };
74
+ }
75
+ };
76
+ //#endregion
77
+ export { x as default };
@@ -0,0 +1 @@
1
+ .el-dialog{border-radius:4px 4px 0 0;flex-direction:column;padding:0;display:flex}.el-dialog .dialog-title{min-height:20px}.el-dialog .el-dialog__header{color:#fff;background-color:#025cde;border-radius:4px 4px 0 0;justify-content:center;align-items:center;padding:6px 10px;display:flex;position:relative}.el-dialog .dialog-header-buttons{display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.el-dialog .dialog-header-button{cursor:pointer;padding:2px;font-size:14px}.el-dialog .dialog-header-button+.dialog-header-button{margin-left:10px}.el-dialog .dialog-header-button:hover{background-color:#0000004d;border-radius:2px}.el-dialog .dialog-header-button.el-icon-close:hover{background-color:#e34e55;border-radius:2px}.el-dialog .el-dialog__body{height:var(--v3443e0e2);flex:auto;min-height:40vh;padding:10px}.el-dialog .el-dialog__footer{border-top:1px solid #dddee3;padding:10px}
@@ -0,0 +1,46 @@
1
+ import { createCommentVNode as e, createElementBlock as t, createElementVNode as n, normalizeClass as r, normalizeStyle as i, openBlock as a, renderSlot as o, toDisplayString as s } from "vue";
2
+ //#region src/components/EmptyView.vue
3
+ var c = { class: "flex-column horizon-center" }, l = {
4
+ __name: "EmptyView",
5
+ props: {
6
+ emptyTips: {
7
+ type: String,
8
+ default: "暂无数据"
9
+ },
10
+ fontSize: {
11
+ type: String,
12
+ default: "20px"
13
+ },
14
+ icon: {
15
+ type: String,
16
+ default: "fa fa-dropbox"
17
+ },
18
+ iconSize: {
19
+ type: String,
20
+ default: "20px"
21
+ },
22
+ showIcon: {
23
+ type: Boolean,
24
+ default: !1
25
+ },
26
+ height: {
27
+ type: String,
28
+ default: "100%"
29
+ }
30
+ },
31
+ setup(l) {
32
+ return (u, d) => (a(), t("div", {
33
+ class: "empty-view",
34
+ style: i({
35
+ fontSize: l.fontSize,
36
+ height: l.height
37
+ })
38
+ }, [o(u.$slots, "default", {}, () => [n("div", c, [l.showIcon ? (a(), t("i", {
39
+ key: 0,
40
+ class: r(l.icon),
41
+ style: i({ fontSize: l.iconSize })
42
+ }, null, 6)) : e("v-if", !0), n("p", null, s(l.emptyTips), 1)])])], 4));
43
+ }
44
+ };
45
+ //#endregion
46
+ export { l as default };
@@ -0,0 +1 @@
1
+ .empty-view{color:#909399;background-color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-size:20px;display:flex;position:relative}.empty-view .flex-column{flex-direction:column;display:flex}.empty-view .flex-column.vertical-center{justify-content:center}.empty-view .flex-column.horizon-center{align-items:center}
@@ -0,0 +1,32 @@
1
+ import { createElementBlock as e, createElementVNode as t, onMounted as n, onUnmounted as r, openBlock as i, renderSlot as a, useTemplateRef as o } from "vue";
2
+ //#region src/components/FlexScrollArea.vue
3
+ var s = { class: "flex-item-relative" }, c = {
4
+ __name: "FlexScrollArea",
5
+ emits: ["scrollbar", "scroll"],
6
+ setup(c, { expose: l, emit: u }) {
7
+ let d = u, f = (e) => e.scrollHeight > e.clientHeight, p = o("scroller"), m = () => {
8
+ d("scrollbar", f(p.value));
9
+ }, h = (e) => {
10
+ d("scroll", {
11
+ e,
12
+ scrollTop: e.target.scrollTop,
13
+ scrollLeft: e.target.scrollLeft
14
+ });
15
+ };
16
+ return n(() => {
17
+ window.addEventListener("resize", m), m();
18
+ }), r(() => {
19
+ window.removeEventListener("resize", m);
20
+ }), l({
21
+ scroller: p,
22
+ computeScrollbar: m
23
+ }), (n, r) => (i(), e("div", s, [t("div", {
24
+ ref_key: "scroller",
25
+ ref: p,
26
+ class: "flex-scroller",
27
+ onScroll: h
28
+ }, [a(n.$slots, "default")], 544)]));
29
+ }
30
+ };
31
+ //#endregion
32
+ export { c as default };
@@ -0,0 +1 @@
1
+ .flex-item-relative{flex:1;position:relative;overflow:hidden}.flex-scroller{position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}
@@ -0,0 +1,28 @@
1
+ import { Fragment as e, computed as t, createCommentVNode as n, createElementBlock as r, createElementVNode as i, createTextVNode as a, inject as o, openBlock as s, renderList as c, toDisplayString as l, unref as u } from "vue";
2
+ //#region src/components/red-form/FormAdvice.vue
3
+ var d = ["colspan"], f = ["colspan"], p = { style: { "text-align": "right" } }, m = { style: { "margin-left": "20px" } }, h = {
4
+ __name: "FormAdvice",
5
+ props: {
6
+ valueColspan: Number,
7
+ labelColspan: Number
8
+ },
9
+ setup(h) {
10
+ let g = h, _ = o("columnSize", 0), v = o("flowContext", null), y = t(() => g.labelColspan && g.valueColspan || g.labelColspan && !g.valueColspan ? g.labelColspan : !g.labelColspan && g.valueColspan && _.value ? _.value - g.valueColspan : 0), b = t(() => g.labelColspan && g.valueColspan ? g.valueColspan : g.labelColspan && !g.valueColspan ? _.value ? _.value - g.labelColspan : 0 : !g.labelColspan && g.valueColspan ? g.valueColspan : _.value ? _.value - 1 : 0);
11
+ return (t, o) => {
12
+ var h;
13
+ return s(), r("tbody", null, [(s(!0), r(e, null, c((h = u(v)) == null ? void 0 : h.formComments, (t) => (s(), r(e, null, [t.comments.length ? (s(), r("tr", { key: t.id }, [i("td", {
14
+ class: "label",
15
+ style: {
16
+ height: "100px",
17
+ "line-height": "24px"
18
+ },
19
+ colspan: y.value
20
+ }, l(t.name), 9, d), i("td", {
21
+ class: "input",
22
+ colspan: b.value
23
+ }, [i("ul", null, [(s(!0), r(e, null, c(t.comments, (e) => (s(), r("li", { key: e.id }, [i("p", null, l(e.message), 1), i("p", p, [a(l(e.personalName) + " ", 1), i("span", m, l(e.time.substring(0, 10)), 1)])]))), 128))])], 8, f)])) : n("v-if", !0)], 64))), 256))]);
24
+ };
25
+ }
26
+ };
27
+ //#endregion
28
+ export { h as default };
@@ -0,0 +1,23 @@
1
+ import { createElementBlock as e, normalizeClass as t, openBlock as n, renderSlot as r } from "vue";
2
+ //#region src/components/red-form/FormCell.vue
3
+ var i = ["colspan", "rowspan"], a = /* @__PURE__ */ Object.assign({ name: "FormCell" }, {
4
+ __name: "FormCell",
5
+ props: {
6
+ colspan: [String, Number],
7
+ rowspan: [String, Number],
8
+ isLabel: Boolean,
9
+ alignCenter: Boolean
10
+ },
11
+ setup(a) {
12
+ return (o, s) => (n(), e("td", {
13
+ colspan: a.colspan,
14
+ rowspan: a.rowspan,
15
+ class: t({
16
+ "red-form-cell-label": a.isLabel,
17
+ "red-form-cell-align-center": a.alignCenter
18
+ })
19
+ }, [r(o.$slots, "default")], 10, i));
20
+ }
21
+ });
22
+ //#endregion
23
+ export { a as default };
@@ -0,0 +1 @@
1
+ .red-form-cell-label{width:20%;color:var(--table-form-color);letter-spacing:1.5px;font-size:16px}.red-form-cell-align-center{text-align:center}
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../chunks/Bxj372sF.mjs";
2
+ export { e as default };
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../chunks/CBcdalMX.mjs";
2
+ export { e as default };
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../chunks/Bsz7y4Xp.mjs";
2
+ export { e as default };
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../chunks/B5BIQCcK.mjs";
2
+ export { e as default };
@@ -0,0 +1 @@
1
+ @keyframes breathe{0%{box-shadow:0 0 #ff7a7a}to{box-shadow:0 0 10px 1px #ff7a7a}}.breathe-animation{border-radius:4px;animation-name:breathe;animation-duration:.3s;animation-timing-function:ease-in-out;animation-iteration-count:6;animation-direction:alternate;animation-delay:.1s}
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../chunks/BZ8aOa78.mjs";
2
+ export { e as default };
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../chunks/BHNKrW1j.mjs";
2
+ export { e as default };
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../chunks/C6Li3-l7.mjs";
2
+ export { e as default };
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../chunks/CstztYMu.mjs";
2
+ export { e as default };
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../chunks/CdRsyF0n.mjs";
2
+ export { e as default };
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../chunks/jn_iQrVZ.mjs";
2
+ export { e as default };
@@ -0,0 +1,4 @@
1
+ //#region src/components/form/FormInputTag.vue
2
+ var e = { name: "FormInputTag" };
3
+ //#endregion
4
+ export { e as default };
@@ -0,0 +1,4 @@
1
+ //#region src/components/form/FormInputTime.vue
2
+ var e = { name: "FormInputTime" };
3
+ //#endregion
4
+ export { e as default };