@topvisor/ui 0.0.34 → 0.0.36

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 (57) hide show
  1. package/.chunks/datepicker-1e725859.amd.js +234 -0
  2. package/.chunks/datepicker-1e725859.amd.js.map +1 -0
  3. package/.chunks/datepicker-ad465c48.es.js +275 -0
  4. package/.chunks/datepicker-ad465c48.es.js.map +1 -0
  5. package/.chunks/{forms-02202302.amd.js → forms-2891e074.amd.js} +3 -3
  6. package/.chunks/forms-2891e074.amd.js.map +1 -0
  7. package/.chunks/{forms-eb00d0c1.es.js → forms-db4cb24d.es.js} +27 -27
  8. package/.chunks/forms-db4cb24d.es.js.map +1 -0
  9. package/.chunks/{popup-6f73b4b2.es.js → popup-0f540839.es.js} +383 -383
  10. package/.chunks/popup-0f540839.es.js.map +1 -0
  11. package/.chunks/popup-e49a9bab.amd.js +341 -0
  12. package/.chunks/popup-e49a9bab.amd.js.map +1 -0
  13. package/README.md +62 -62
  14. package/core/core.amd.js +1 -1
  15. package/core/core.js +1 -1
  16. package/core.css +1 -1
  17. package/forms/forms.amd.js +1 -1
  18. package/forms/forms.js +1 -1
  19. package/forms/helpers.amd.js.map +1 -1
  20. package/forms/helpers.js.map +1 -1
  21. package/forms.css +1 -1
  22. package/formsExt/formsExt.amd.js +2 -2
  23. package/formsExt/formsExt.amd.js.map +1 -1
  24. package/formsExt/formsExt.js +107 -52
  25. package/formsExt/formsExt.js.map +1 -1
  26. package/formsExt.css +1 -1
  27. package/icomoon/demo-files/demo.css +161 -161
  28. package/icomoon/demo-files/demo.js +30 -30
  29. package/icomoon/demo.html +2945 -2945
  30. package/icomoon/fonts/Topvisor-2.svg +232 -232
  31. package/icomoon/style.css +647 -647
  32. package/package.json +19 -19
  33. package/popup/popup.amd.js +1 -1
  34. package/popup/popup.amd.js.map +1 -1
  35. package/popup/popup.js +1 -1
  36. package/popup/popup.js.map +1 -1
  37. package/popup/worker.amd.js +1 -1
  38. package/popup/worker.amd.js.map +1 -1
  39. package/popup/worker.js +2 -2
  40. package/popup/worker.js.map +1 -1
  41. package/tabs/tabs.amd.js +1 -1
  42. package/tabs/tabs.js +1 -1
  43. package/utils/date.amd.js +1 -1
  44. package/utils/date.js +1 -1
  45. package/utils/device.amd.js +1 -1
  46. package/utils/device.js +1 -1
  47. package/utils/dom.amd.js.map +1 -1
  48. package/utils/dom.js.map +1 -1
  49. package/.chunks/datepicker-0b648b9f.es.js +0 -275
  50. package/.chunks/datepicker-0b648b9f.es.js.map +0 -1
  51. package/.chunks/datepicker-0e9a0541.amd.js +0 -234
  52. package/.chunks/datepicker-0e9a0541.amd.js.map +0 -1
  53. package/.chunks/forms-02202302.amd.js.map +0 -1
  54. package/.chunks/forms-eb00d0c1.es.js.map +0 -1
  55. package/.chunks/popup-6f73b4b2.es.js.map +0 -1
  56. package/.chunks/popup-e1f34511.amd.js +0 -341
  57. package/.chunks/popup-e1f34511.amd.js.map +0 -1
@@ -1,9 +1,9 @@
1
- import { defineComponent as B, ref as y, watch as k, toRef as C, computed as I, openBlock as u, createElementBlock as V, normalizeClass as T, toDisplayString as c, createCommentVNode as v, createElementVNode as K, createVNode as b, withKeys as p, withModifiers as f, createBlock as E, withCtx as A, createTextVNode as $, mergeProps as w, renderSlot as M } from "vue";
2
- import { T as H, B as h, _ as g, I as N } from "../.chunks/forms-eb00d0c1.es.js";
3
- const _ = {
1
+ import { defineComponent as T, ref as b, watch as g, toRef as w, computed as k, openBlock as d, createElementBlock as i, normalizeClass as y, toDisplayString as m, createCommentVNode as v, createElementVNode as K, createVNode as f, withKeys as V, withModifiers as h, createBlock as C, withCtx as A, createTextVNode as _, mergeProps as G, renderSlot as E, Fragment as I, renderList as H } from "vue";
2
+ import { T as M, B as $, _ as B, I as z } from "../.chunks/forms-db4cb24d.es.js";
3
+ const N = {
4
4
  key: 0,
5
5
  class: "top-editArea_title"
6
- }, S = { class: "top-editArea_footer" }, U = /* @__PURE__ */ B({
6
+ }, P = { class: "top-editArea_footer" }, X = /* @__PURE__ */ T({
7
7
  __name: "editArea",
8
8
  props: {
9
9
  modelValue: {},
@@ -22,33 +22,33 @@ const _ = {
22
22
  hint: {}
23
23
  },
24
24
  emits: ["update:modelValue", "cancel"],
25
- setup(m, { emit: i }) {
26
- const l = m, t = y(""), o = y(l.modelValue);
27
- k(C(l, "modelValue"), () => {
28
- o.value = l.modelValue;
25
+ setup(p, { emit: n }) {
26
+ const r = p, t = b(""), o = b(r.modelValue);
27
+ g(w(r, "modelValue"), () => {
28
+ o.value = r.modelValue;
29
29
  });
30
- const d = I(() => o.value !== l.modelValue), r = (e) => {
31
- i("update:modelValue", e);
32
- }, n = () => {
33
- i("cancel"), o.value = l.modelValue;
30
+ const s = k(() => o.value !== r.modelValue), a = (e) => {
31
+ n("update:modelValue", e);
32
+ }, u = () => {
33
+ n("cancel"), o.value = r.modelValue;
34
34
  };
35
- return (e, a) => (u(), V("div", {
36
- class: T({
35
+ return (e, l) => (d(), i("div", {
36
+ class: y({
37
37
  "top-editArea": !0,
38
38
  "top-editArea-attachedToKeyboard": e.attachToKeyboard
39
39
  })
40
40
  }, [
41
- e.title ? (u(), V("div", _, c(e.title), 1)) : v("", !0),
41
+ e.title ? (d(), i("div", N, m(e.title), 1)) : v("", !0),
42
42
  K("div", {
43
- class: T({
43
+ class: y({
44
44
  "top-editArea_form": !0,
45
45
  "top-error": e.isError,
46
46
  "top-focus": t.value == "focus"
47
47
  })
48
48
  }, [
49
- b(H, {
49
+ f(M, {
50
50
  modelValue: o.value,
51
- "onUpdate:modelValue": a[0] || (a[0] = (s) => o.value = s),
51
+ "onUpdate:modelValue": l[0] || (l[0] = (c) => o.value = c),
52
52
  name: e.name,
53
53
  placeholder: e.placeholder,
54
54
  rows: e.rows,
@@ -59,33 +59,33 @@ const _ = {
59
59
  isError: e.isError,
60
60
  hint: e.hint,
61
61
  class: "top-editArea_element",
62
- onFocus: a[1] || (a[1] = (s) => t.value = "focus"),
63
- onBlur: a[2] || (a[2] = (s) => t.value = ""),
62
+ onFocus: l[1] || (l[1] = (c) => t.value = "focus"),
63
+ onBlur: l[2] || (l[2] = (c) => t.value = ""),
64
64
  onKeyup: [
65
- p(n, ["esc"]),
66
- a[3] || (a[3] = p(f((s) => r(o.value), ["ctrl"]), ["enter"]))
65
+ V(u, ["esc"]),
66
+ l[3] || (l[3] = V(h((c) => a(o.value), ["ctrl"]), ["enter"]))
67
67
  ]
68
68
  }, null, 8, ["modelValue", "name", "placeholder", "rows", "minHeight", "expandable", "disabled", "readonly", "isError", "hint", "onKeyup"]),
69
- K("div", S, [
70
- d.value && (!e.attachToKeyboard || e.modelValue) ? (u(), E(h, {
69
+ K("div", P, [
70
+ s.value && (!e.attachToKeyboard || e.modelValue) ? (d(), C($, {
71
71
  key: 0,
72
72
  class: "top-editArea_button",
73
73
  color: "theme",
74
74
  icon: e.attachToKeyboard ? "" : "",
75
- onClick: n
75
+ onClick: u
76
76
  }, {
77
77
  default: A(() => [
78
- $(c(e.attachToKeyboard ? "" : e.cancelText), 1)
78
+ _(m(e.attachToKeyboard ? "" : e.cancelText), 1)
79
79
  ]),
80
80
  _: 1
81
81
  }, 8, ["icon"])) : v("", !0),
82
- b(h, {
82
+ f($, {
83
83
  class: "top-editArea_button",
84
84
  icon: e.attachToKeyboard ? "" : "",
85
- onClick: a[4] || (a[4] = (s) => r(o.value))
85
+ onClick: l[4] || (l[4] = (c) => a(o.value))
86
86
  }, {
87
87
  default: A(() => [
88
- $(c(e.attachToKeyboard ? "" : e.submitText), 1)
88
+ _(m(e.attachToKeyboard ? "" : e.submitText), 1)
89
89
  ]),
90
90
  _: 1
91
91
  }, 8, ["icon"])
@@ -93,7 +93,7 @@ const _ = {
93
93
  ], 2)
94
94
  ], 2));
95
95
  }
96
- }), z = {
96
+ }), F = {
97
97
  "top-editArea": "top-editArea",
98
98
  "top-editArea_title": "top-editArea_title",
99
99
  "top-editArea_form": "top-editArea_form",
@@ -102,9 +102,9 @@ const _ = {
102
102
  "top-textarea_textarea": "top-textarea_textarea",
103
103
  "top-editArea_footer": "top-editArea_footer",
104
104
  "top-editArea-attachedToKeyboard": "top-editArea-attachedToKeyboard"
105
- }, D = {
106
- $style: z
107
- }, J = /* @__PURE__ */ g(U, [["__cssModules", D]]), F = { class: "top-editInput" }, P = /* @__PURE__ */ B({
105
+ }, R = {
106
+ $style: F
107
+ }, Z = /* @__PURE__ */ B(X, [["__cssModules", R]]), S = { class: "top-editInput" }, U = /* @__PURE__ */ T({
108
108
  __name: "editInput",
109
109
  props: {
110
110
  modelValue: {},
@@ -112,41 +112,96 @@ const _ = {
112
112
  button: {}
113
113
  },
114
114
  emits: ["update:modelValue"],
115
- setup(m, { emit: i }) {
116
- const l = m, t = y(l.modelValue);
117
- k(C(l.modelValue), () => {
118
- t.value = l.modelValue;
115
+ setup(p, { emit: n }) {
116
+ const r = p, t = b(r.modelValue);
117
+ g(w(r.modelValue), () => {
118
+ t.value = r.modelValue;
119
119
  });
120
120
  const o = () => {
121
- i("update:modelValue", t.value);
121
+ n("update:modelValue", t.value);
122
122
  };
123
- return (d, r) => (u(), V("div", F, [
124
- b(N, w(d.input, {
125
- onKeydownCapture: r[0] || (r[0] = p(f((n) => t.value = d.modelValue, ["stop"]), ["esc"])),
126
- onKeydown: p(f(o, ["stop"]), ["enter"]),
123
+ return (s, a) => (d(), i("div", S, [
124
+ f(z, G(s.input, {
125
+ onKeydownCapture: a[0] || (a[0] = V(h((u) => t.value = s.modelValue, ["stop"]), ["esc"])),
126
+ onKeydown: V(h(o, ["stop"]), ["enter"]),
127
127
  modelValue: t.value,
128
- "onUpdate:modelValue": r[1] || (r[1] = (n) => t.value = n)
128
+ "onUpdate:modelValue": a[1] || (a[1] = (u) => t.value = u)
129
129
  }), null, 16, ["onKeydown", "modelValue"]),
130
- t.value !== d.modelValue ? (u(), E(h, w({
130
+ t.value !== s.modelValue ? (d(), C($, G({
131
131
  key: 0,
132
132
  icon: "",
133
133
  styling: "soft"
134
- }, d.button, { onClick: o }), {
134
+ }, s.button, { onClick: o }), {
135
135
  default: A(() => [
136
- M(d.$slots, "default")
136
+ E(s.$slots, "default")
137
137
  ]),
138
138
  _: 3
139
139
  }, 16)) : v("", !0)
140
140
  ]));
141
141
  }
142
- }), R = {
142
+ }), D = {
143
143
  "top-editInput": "top-editInput",
144
144
  "top-input": "top-input"
145
- }, j = {
146
- $style: R
147
- }, L = /* @__PURE__ */ g(P, [["__cssModules", j]]);
145
+ }, L = {
146
+ $style: D
147
+ }, x = /* @__PURE__ */ B(U, [["__cssModules", L]]), j = ["data-top-icon", "onClick"], q = {
148
+ key: 0,
149
+ class: "top-radioGroup_circle"
150
+ }, J = /* @__PURE__ */ T({
151
+ __name: "radioGroup",
152
+ props: {
153
+ modelValue: {},
154
+ radiosProps: {},
155
+ showIndicator: { type: Boolean },
156
+ size: { default: "s" },
157
+ isError: { type: Boolean }
158
+ },
159
+ emits: ["update:modelValue"],
160
+ setup(p, { emit: n }) {
161
+ const r = p, t = k({
162
+ get() {
163
+ return r.modelValue;
164
+ },
165
+ set(o) {
166
+ n("update:modelValue", o);
167
+ }
168
+ });
169
+ return (o, s) => (d(), i("div", {
170
+ class: y({
171
+ "top-radioGroup": !0,
172
+ "top-scrollBarXHidding": !0,
173
+ ["top-size_" + o.size]: !!o.size,
174
+ "top-error": o.isError
175
+ })
176
+ }, [
177
+ (d(!0), i(I, null, H(o.radiosProps, (a) => (d(), i("div", {
178
+ class: y({
179
+ "top-radioGroup_item-selected": a.value === t.value,
180
+ "top-radioGroup_item": !0,
181
+ "top-disabled": a.disabled
182
+ }),
183
+ "data-top-icon": a.icon,
184
+ onClick: (u) => t.value = a.value
185
+ }, [
186
+ _(m(a.title) + " ", 1),
187
+ o.showIndicator ? (d(), i("span", q)) : v("", !0)
188
+ ], 10, j))), 256))
189
+ ], 2));
190
+ }
191
+ }), O = {
192
+ "top-scrollBarXHidding": "top-scrollBarXHidding",
193
+ "top-radioGroup": "top-radioGroup",
194
+ "top-radioGroup_item": "top-radioGroup_item",
195
+ "top-radioGroup_item-selected": "top-radioGroup_item-selected",
196
+ "top-radioGroup_circle": "top-radioGroup_circle",
197
+ "top-disabled": "top-disabled",
198
+ "top-error": "top-error"
199
+ }, Q = {
200
+ $style: O
201
+ }, ee = /* @__PURE__ */ B(J, [["__cssModules", Q]]);
148
202
  export {
149
- J as EditArea,
150
- L as EditInput
203
+ Z as EditArea,
204
+ x as EditInput,
205
+ ee as RadioGroup
151
206
  };
152
207
  //# sourceMappingURL=formsExt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formsExt.js","sources":["../../src/components/formsExt/editArea/editArea.vue","../../src/components/formsExt/editInput/editInput.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { ref, toRef, watch, computed } from 'vue';\r\nimport Button from '@/components/forms/button/button.vue';\r\nimport type { Props, Emits } from './editArea';\r\nimport Textarea from '@/components/forms/textarea/textarea.vue';\r\n\r\n// TODO: добавить переменную top-forms-fixed-height и использовать ее при добавлении отступов у страницы\r\n\r\nconst props = withDefaults(defineProps<Props>(), {\r\n\tcancelText: 'Отмена',\r\n\tsubmitText: 'Отправить',\r\n\texpandable: true,\r\n});\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst state = ref('');\r\n\r\n/**\r\n * Локальное значение modelValue, будет проброшено вверх только в случае отправки формы\r\n */\r\nconst localValue = ref(props.modelValue);\r\n\r\nwatch(toRef(props, 'modelValue'), () => {\r\n\tlocalValue.value = props.modelValue;\r\n});\r\n\r\nconst isChanged = computed(() => localValue.value !== props.modelValue);\r\n\r\nconst submit = (value: string) => {\r\n\temit('update:modelValue', value);\r\n};\r\n\r\nconst cancel = () => {\r\n\temit('cancel');\r\n\r\n\t// сброс введенного значения\r\n\tlocalValue.value = props.modelValue;\r\n};\r\n</script>\r\n\r\n<template>\r\n\t<div\r\n\t\t:class=\"{\r\n\t\t\t'top-editArea': true,\r\n\t\t\t'top-editArea-attachedToKeyboard': attachToKeyboard,\r\n\t\t}\"\r\n\t>\r\n\t\t<div\r\n\t\t\tv-if=\"title\"\r\n\t\t\tclass=\"top-editArea_title\"\r\n\t\t>\r\n\t\t\t{{ title }}\r\n\t\t</div>\r\n\r\n\t\t<div\r\n\t\t\t:class=\"{\r\n\t\t\t\t'top-editArea_form': true,\r\n\t\t\t\t'top-error': isError,\r\n\t\t\t\t'top-focus': state == 'focus',\r\n\t\t\t}\"\r\n\t\t>\r\n\t\t\t<Textarea\r\n\t\t\t\tv-model=\"localValue\"\r\n\t\t\t\t:name=\"name\"\r\n\t\t\t\t:placeholder=\"placeholder\"\r\n\t\t\t\t:rows=\"rows\"\r\n\t\t\t\t:minHeight=\"minHeight\"\r\n\t\t\t\t:expandable=\"expandable\"\r\n\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t:readonly=\"readonly\"\r\n\t\t\t\t:isError=\"isError\"\r\n\t\t\t\t:hint=\"hint\"\r\n\t\t\t\tclass=\"top-editArea_element\"\r\n\t\t\t\t@focus=\"state = 'focus'\"\r\n\t\t\t\t@blur=\"state = ''\"\r\n\t\t\t\t@keyup.esc=\"cancel\"\r\n\t\t\t\t@keyup.ctrl.enter=\"submit(localValue)\"\r\n\t\t\t/>\r\n\r\n\t\t\t<div class=\"top-editArea_footer\">\r\n\t\t\t\t<Button\r\n\t\t\t\t\tv-if=\"isChanged && (!attachToKeyboard || modelValue)\"\r\n\t\t\t\t\tclass=\"top-editArea_button\"\r\n\t\t\t\t\tcolor=\"theme\"\r\n\t\t\t\t\t:icon=\"attachToKeyboard ? '': ''\"\r\n\t\t\t\t\t@click=\"cancel\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ attachToKeyboard ? '' : cancelText }}\r\n\t\t\t\t</Button>\r\n\r\n\t\t\t\t<Button\r\n\t\t\t\t\tclass=\"top-editArea_button\"\r\n\t\t\t\t\t:icon=\"attachToKeyboard ? '': ''\"\r\n\t\t\t\t\t@click=\"submit(localValue)\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ attachToKeyboard ? '' : submitText }}\r\n\t\t\t\t</Button>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<style module>\r\n.top-editArea {\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tgap: 6px;\r\n}\r\n\r\n.top-editArea_title {\r\n\tfont-size: 12px;\r\n}\r\n\r\n.top-editArea_form {\r\n\tbackground: var(--top-forms-background-color);\r\n\toutline-color: var(--color-theme-75);\r\n\toutline-offset: 0;\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n}\r\n\r\n.top-editArea_form:hover {\r\n\tbackground: var(--top-forms-background-color-hover);\r\n}\r\n\r\n/* textarea в EditArea */\r\n.top-textarea {\r\n\twidth: 100%;\r\n}\r\n\r\n.top-editArea_element.top-textarea_textarea {\r\n\tborder: none;\r\n\toutline: none;\r\n\tanimation: none;\r\n}\r\n\r\n/* footer */\r\n.top-editArea_footer {\r\n\tpadding: var(--top-forms-padding);\r\n\tdisplay: flex;\r\n\tjustify-content: flex-end;\r\n\tgap: var(--top-forms-padding);\r\n}\r\n\r\n/* attachedToKeyboard */\r\n.top-editArea-attachedToKeyboard {\r\n\tbackground: var(--top-forms-background-color);\r\n\tmargin-bottom: env(keyboard-inset-height, 0);\r\n\tposition: fixed;\r\n\tbottom: 0;\r\n\tright: 0;\r\n\tleft: 0;\r\n\tz-index: 2;\r\n\tgap: 0;\r\n}\r\n\r\n.top-editArea-attachedToKeyboard .top-editArea_form {\r\n\tborder-radius: 0;\r\n\tborder: none;\r\n\tborder-top: 1px solid var(--top-forms-border-color);\r\n}\r\n\r\n.top-editArea-attachedToKeyboard .top-editArea_title {\r\n\tborder-top: 1px solid var(--color-line-2-opacity);\r\n\tpadding: var(--top-forms-padding);\r\n}\r\n\r\n.top-editArea-attachedToKeyboard .top-editArea_footer > [data-top-icon] {\r\n\tborder-radius: 100%;\r\n}\r\n</style>","<script setup lang=\"ts\">\r\nimport { ref, toRef, watch } from 'vue';\r\nimport type { Props, Emits } from './editInput';\r\nimport Input from '@/components/forms/input/input.vue';\r\nimport Button from '@/components/forms/button/button.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\nconst intermediateValue = ref(props.modelValue);\r\n\r\nwatch(toRef(props.modelValue), () => {\r\n\tintermediateValue.value = props.modelValue;\r\n});\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst submit = () => {\r\n\temit('update:modelValue', intermediateValue.value);\r\n};\r\n</script>\r\n\r\n<template>\r\n\t<div class=\"top-editInput\">\r\n\t\t<Input\r\n\t\t\t:=\"input\"\r\n\t\t\t@keydown.esc.capture.stop=\"intermediateValue = modelValue\"\r\n\t\t\t@keydown.enter.stop=\"submit\"\r\n\t\t\tv-model=\"intermediateValue\"\r\n\t\t/>\r\n\r\n\t\t<Button\r\n\t\t\tv-if=\"intermediateValue !== modelValue\"\r\n\t\t\ticon=\"\"\r\n\t\t\tstyling=\"soft\"\r\n\t\t\t:=\"button\"\r\n\t\t\t@click=\"submit\"\r\n\t\t>\r\n\t\t\t<!-- @slot Слот Button -->\r\n\t\t\t<slot></slot>\r\n\t\t</Button>\r\n\t</div>\r\n</template>\r\n\r\n<style module>\r\n.top-editInput {\r\n\twidth: 220px;\r\n\tflex-grow: 1;\r\n\tdisplay: flex;\r\n\talign-items: flex-end;\r\n\tgap: var(--top-gap-1);\r\n}\r\n\r\n.top-editInput .top-input {\r\n\twidth: unset;\r\n\tflex-grow: 1;\r\n}\r\n</style>"],"names":["state","ref","localValue","props","watch","toRef","isChanged","computed","submit","value","emit","cancel","intermediateValue"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;iBAgBMA,IAAQC,EAAI,EAAE,GAKdC,IAAaD,EAAIE,EAAM,UAAU;AAEvC,IAAAC,EAAMC,EAAMF,GAAO,YAAY,GAAG,MAAM;AACvC,MAAAD,EAAW,QAAQC,EAAM;AAAA,IAAA,CACzB;AAED,UAAMG,IAAYC,EAAS,MAAML,EAAW,UAAUC,EAAM,UAAU,GAEhEK,IAAS,CAACC,MAAkB;AACjC,MAAAC,EAAK,qBAAqBD,CAAK;AAAA,IAAA,GAG1BE,IAAS,MAAM;AACpB,MAAAD,EAAK,QAAQ,GAGbR,EAAW,QAAQC,EAAM;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBC7BpBS,IAAoBX,EAAIE,EAAM,UAAU;AAE9C,IAAAC,EAAMC,EAAMF,EAAM,UAAU,GAAG,MAAM;AACpC,MAAAS,EAAkB,QAAQT,EAAM;AAAA,IAAA,CAChC;AAID,UAAMK,IAAS,MAAM;AACf,MAAAE,EAAA,qBAAqBE,EAAkB,KAAK;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"formsExt.js","sources":["../../src/components/formsExt/editArea/editArea.vue","../../src/components/formsExt/editInput/editInput.vue","../../src/components/formsExt/radioGroup/radioGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, toRef, watch, computed } from 'vue';\nimport Button from '@/components/forms/button/button.vue';\nimport type { Props, Emits } from './editArea';\nimport Textarea from '@/components/forms/textarea/textarea.vue';\n\n// TODO: добавить переменную top-forms-fixed-height и использовать ее при добавлении отступов у страницы\n\nconst props = withDefaults(defineProps<Props>(), {\n\tcancelText: 'Отмена',\n\tsubmitText: 'Отправить',\n\texpandable: true,\n});\n\nconst emit = defineEmits<Emits>();\n\nconst state = ref('');\n\n/**\n * Локальное значение modelValue, будет проброшено вверх только в случае отправки формы\n */\nconst localValue = ref(props.modelValue);\n\nwatch(toRef(props, 'modelValue'), () => {\n\tlocalValue.value = props.modelValue;\n});\n\nconst isChanged = computed(() => localValue.value !== props.modelValue);\n\nconst submit = (value: string) => {\n\temit('update:modelValue', value);\n};\n\nconst cancel = () => {\n\temit('cancel');\n\n\t// сброс введенного значения\n\tlocalValue.value = props.modelValue;\n};\n</script>\n\n<template>\n\t<div\n\t\t:class=\"{\n\t\t\t'top-editArea': true,\n\t\t\t'top-editArea-attachedToKeyboard': attachToKeyboard,\n\t\t}\"\n\t>\n\t\t<div\n\t\t\tv-if=\"title\"\n\t\t\tclass=\"top-editArea_title\"\n\t\t>\n\t\t\t{{ title }}\n\t\t</div>\n\n\t\t<div\n\t\t\t:class=\"{\n\t\t\t\t'top-editArea_form': true,\n\t\t\t\t'top-error': isError,\n\t\t\t\t'top-focus': state == 'focus',\n\t\t\t}\"\n\t\t>\n\t\t\t<Textarea\n\t\t\t\tv-model=\"localValue\"\n\t\t\t\t:name=\"name\"\n\t\t\t\t:placeholder=\"placeholder\"\n\t\t\t\t:rows=\"rows\"\n\t\t\t\t:minHeight=\"minHeight\"\n\t\t\t\t:expandable=\"expandable\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t:readonly=\"readonly\"\n\t\t\t\t:isError=\"isError\"\n\t\t\t\t:hint=\"hint\"\n\t\t\t\tclass=\"top-editArea_element\"\n\t\t\t\t@focus=\"state = 'focus'\"\n\t\t\t\t@blur=\"state = ''\"\n\t\t\t\t@keyup.esc=\"cancel\"\n\t\t\t\t@keyup.ctrl.enter=\"submit(localValue)\"\n\t\t\t/>\n\n\t\t\t<div class=\"top-editArea_footer\">\n\t\t\t\t<Button\n\t\t\t\t\tv-if=\"isChanged && (!attachToKeyboard || modelValue)\"\n\t\t\t\t\tclass=\"top-editArea_button\"\n\t\t\t\t\tcolor=\"theme\"\n\t\t\t\t\t:icon=\"attachToKeyboard ? '': ''\"\n\t\t\t\t\t@click=\"cancel\"\n\t\t\t\t>\n\t\t\t\t\t{{ attachToKeyboard ? '' : cancelText }}\n\t\t\t\t</Button>\n\n\t\t\t\t<Button\n\t\t\t\t\tclass=\"top-editArea_button\"\n\t\t\t\t\t:icon=\"attachToKeyboard ? '': ''\"\n\t\t\t\t\t@click=\"submit(localValue)\"\n\t\t\t\t>\n\t\t\t\t\t{{ attachToKeyboard ? '' : submitText }}\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n\n<style module>\n.top-editArea {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 6px;\n}\n\n.top-editArea_title {\n\tfont-size: 12px;\n}\n\n.top-editArea_form {\n\tbackground: var(--top-forms-background-color);\n\toutline-color: var(--color-theme-75);\n\toutline-offset: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n}\n\n.top-editArea_form:hover {\n\tbackground: var(--top-forms-background-color-hover);\n}\n\n/* textarea в EditArea */\n.top-textarea {\n\twidth: 100%;\n}\n\n.top-editArea_element.top-textarea_textarea {\n\tborder: none;\n\toutline: none;\n\tanimation: none;\n}\n\n/* footer */\n.top-editArea_footer {\n\tpadding: var(--top-forms-padding);\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\tgap: var(--top-forms-padding);\n}\n\n/* attachedToKeyboard */\n.top-editArea-attachedToKeyboard {\n\tbackground: var(--top-forms-background-color);\n\tmargin-bottom: env(keyboard-inset-height, 0);\n\tposition: fixed;\n\tbottom: 0;\n\tright: 0;\n\tleft: 0;\n\tz-index: 2;\n\tgap: 0;\n}\n\n.top-editArea-attachedToKeyboard .top-editArea_form {\n\tborder-radius: 0;\n\tborder: none;\n\tborder-top: 1px solid var(--top-forms-border-color);\n}\n\n.top-editArea-attachedToKeyboard .top-editArea_title {\n\tborder-top: 1px solid var(--color-line-2-opacity);\n\tpadding: var(--top-forms-padding);\n}\n\n.top-editArea-attachedToKeyboard .top-editArea_footer > [data-top-icon] {\n\tborder-radius: 100%;\n}\n</style>","<script setup lang=\"ts\">\nimport { ref, toRef, watch } from 'vue';\nimport type { Props, Emits } from './editInput';\nimport Input from '@/components/forms/input/input.vue';\nimport Button from '@/components/forms/button/button.vue';\n\nconst props = defineProps<Props>();\n\nconst intermediateValue = ref(props.modelValue);\n\nwatch(toRef(props.modelValue), () => {\n\tintermediateValue.value = props.modelValue;\n});\n\nconst emit = defineEmits<Emits>();\n\nconst submit = () => {\n\temit('update:modelValue', intermediateValue.value);\n};\n</script>\n\n<template>\n\t<div class=\"top-editInput\">\n\t\t<Input\n\t\t\t:=\"input\"\n\t\t\t@keydown.esc.capture.stop=\"intermediateValue = modelValue\"\n\t\t\t@keydown.enter.stop=\"submit\"\n\t\t\tv-model=\"intermediateValue\"\n\t\t/>\n\n\t\t<Button\n\t\t\tv-if=\"intermediateValue !== modelValue\"\n\t\t\ticon=\"\"\n\t\t\tstyling=\"soft\"\n\t\t\t:=\"button\"\n\t\t\t@click=\"submit\"\n\t\t>\n\t\t\t<!-- @slot Слот Button -->\n\t\t\t<slot></slot>\n\t\t</Button>\n\t</div>\n</template>\n\n<style module>\n.top-editInput {\n\twidth: 220px;\n\tflex-grow: 1;\n\tdisplay: flex;\n\talign-items: flex-end;\n\tgap: var(--top-gap-1);\n}\n\n.top-editInput .top-input {\n\twidth: unset;\n\tflex-grow: 1;\n}\n</style>","<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport type { Props, Emits } from './radioGroup';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tsize: 's',\n});\n\nconst emit = defineEmits<Emits>();\n\nconst localValue = computed({\n\tget() {\n\t\treturn props.modelValue;\n\t},\n\n\tset(value) {\n\t\temit('update:modelValue', value);\n\t},\n});\n\n</script>\n\n<template>\n\t<div\n\t\t:class=\"{\n\t\t\t['top-radioGroup']: true,\n\t\t\t['top-scrollBarXHidding']: true,\n\t\t\t['top-size_' + size]: !!size,\n\t\t\t['top-error']: isError,\n\t\t}\"\n\t>\n\t\t<div\n\t\t\tv-for=\"item of radiosProps\"\n\t\t\t:class=\"{\n\t\t\t\t['top-radioGroup_item-selected']: item.value === localValue,\n\t\t\t\t['top-radioGroup_item']: true,\n\t\t\t\t['top-disabled']: item.disabled,\n\t\t\t}\"\n\t\t\t:data-top-icon=\"item.icon\"\n\t\t\t@click=\"localValue = item.value\"\n\t\t>\n\t\t\t{{ item.title }}\n\n\t\t\t<span\n\t\t\t\tv-if=\"showIndicator\"\n\t\t\t\tclass=\"top-radioGroup_circle\"\n\t\t\t></span>\n\t\t</div>\n\t</div>\n</template>\n\n<style module>\n@import \"./styles/top-scrollBar.css\";\n\n.top-radioGroup {\n\tuser-select: none;\n\tbox-sizing: border-box;\n\tborder-radius: 8px;\n\tbackground-color: var(--color-theme-50);\n\theight: var(--top-forms-base-height);\n\tpadding: 2px;\n\tgap: 2px;\n\tdisplay: flex;\n\talign-items: flex-start;\n}\n\n.top-radioGroup_item {\n\tcursor: pointer;\n\tbox-sizing: border-box;\n\tborder-radius: 6px;\n\theight: calc(var(--top-forms-base-height) - 4px);\n\tpadding: 0 16px;\n\tfont-weight: 600;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tflex-grow: 1;\n\tgap: 4px;\n}\n\n.top-radioGroup_item:hover {\n\tbackground-color: var(--color-theme-25);\n\tbox-shadow: 0px 4px 32px 0px rgba(4, 9, 84, 0.10), 0px 0px 4px 0px rgba(4, 9, 84, 0.08);\n}\n\n/* selected */\n.top-radioGroup_item-selected {\n\tpointer-events: none;\n\tbackground-color: var(--color-bg-3);\n\tbox-shadow: 0px 4px 32px 0px rgba(4, 9, 84, 0.10), 0px 0px 4px 0px rgba(4, 9, 84, 0.08);\n}\n\n/* circle */\n.top-radioGroup_circle {\n\tpadding: 3px;\n\tmargin-left: auto;\n\tdisplay: flex;\n}\n\n.top-radioGroup_circle:before {\n\tcontent: \"\";\n\tborder: 1px solid var(--color-line-3-opacity);\n\tborder-radius: 50%;\n\tbox-sizing: border-box;\n\twidth: calc(var(--top-forms-option-height) - 3px * 2);\n\theight: calc(var(--top-forms-option-height) - 3px * 2);\n}\n\n.top-radioGroup_item:hover .top-radioGroup_circle:before {\n\tborder-color: var(--color-primary);\n}\n\n/* circle selected */\n.top-radioGroup_item-selected .top-radioGroup_circle:before {\n\tborder-color: var(--color-primary);\n\tborder-width: 5px;\n}\n\n.top-radioGroup_item-selected:hover .top-radioGroup_circle:before {\n\tborder-color: var(--color-primary-2);\n}\n\n/* top-disabled */\n.top-radioGroup_item.top-disabled {\n\t--top-icon-color: var(--color-text-3);\n\n\tcolor: var(--color-text-3);\n}\n\n.top-radioGroup_item.top-disabled .top-radioGroup_circle:before {\n\tborder-color: var(--color-theme-400);\n\tbackground-color: var(--color-theme-50);\n}\n\n/* top-error */\n.top-radioGroup.top-error .top-radioGroup_item:not(.top-disabled) .top-radioGroup_circle:before {\n\tborder-color: var(--color-negative);\n}\n\n.top-radioGroup.top-error .top-radioGroup_item:hover .top-radioGroup_circle:before {\n\tborder-color: var(--color-negative-2);\n}\n</style>"],"names":["state","ref","localValue","props","watch","toRef","isChanged","computed","submit","value","emit","cancel","intermediateValue"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;iBAgBMA,IAAQC,EAAI,EAAE,GAKdC,IAAaD,EAAIE,EAAM,UAAU;AAEvC,IAAAC,EAAMC,EAAMF,GAAO,YAAY,GAAG,MAAM;AACvC,MAAAD,EAAW,QAAQC,EAAM;AAAA,IAAA,CACzB;AAED,UAAMG,IAAYC,EAAS,MAAML,EAAW,UAAUC,EAAM,UAAU,GAEhEK,IAAS,CAACC,MAAkB;AACjC,MAAAC,EAAK,qBAAqBD,CAAK;AAAA,IAAA,GAG1BE,IAAS,MAAM;AACpB,MAAAD,EAAK,QAAQ,GAGbR,EAAW,QAAQC,EAAM;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBC7BpBS,IAAoBX,EAAIE,EAAM,UAAU;AAE9C,IAAAC,EAAMC,EAAMF,EAAM,UAAU,GAAG,MAAM;AACpC,MAAAS,EAAkB,QAAQT,EAAM;AAAA,IAAA,CAChC;AAID,UAAMK,IAAS,MAAM;AACf,MAAAE,EAAA,qBAAqBE,EAAkB,KAAK;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBCP5CV,IAAaK,EAAS;AAAA,MAC3B,MAAM;AACL,eAAOJ,EAAM;AAAA,MACd;AAAA,MAEA,IAAIM,GAAO;AACV,QAAAC,EAAK,qBAAqBD,CAAK;AAAA,MAChC;AAAA,IAAA,CACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/formsExt.css CHANGED
@@ -1 +1 @@
1
- .top-editArea{display:flex;flex-direction:column;gap:6px}.top-editArea_title{font-size:12px}.top-editArea_form{background:var(--top-forms-background-color);outline-color:var(--color-theme-75);outline-offset:0;display:flex;flex-direction:column}.top-editArea_form:hover{background:var(--top-forms-background-color-hover)}.top-textarea{width:100%}.top-editArea_element.top-textarea_textarea{border:none;outline:none;animation:none}.top-editArea_footer{padding:var(--top-forms-padding);display:flex;justify-content:flex-end;gap:var(--top-forms-padding)}.top-editArea-attachedToKeyboard{background:var(--top-forms-background-color);margin-bottom:env(keyboard-inset-height,0);position:fixed;bottom:0;right:0;left:0;z-index:2;gap:0}.top-editArea-attachedToKeyboard .top-editArea_form{border-radius:0;border:none;border-top:1px solid var(--top-forms-border-color)}.top-editArea-attachedToKeyboard .top-editArea_title{border-top:1px solid var(--color-line-2-opacity);padding:var(--top-forms-padding)}.top-editArea-attachedToKeyboard .top-editArea_footer>[data-top-icon]{border-radius:100%}.top-editInput{width:220px;flex-grow:1;display:flex;align-items:flex-end;gap:var(--top-gap-1)}.top-editInput .top-input{width:unset;flex-grow:1}
1
+ .top-editArea{display:flex;flex-direction:column;gap:6px}.top-editArea_title{font-size:12px}.top-editArea_form{background:var(--top-forms-background-color);outline-color:var(--color-theme-75);outline-offset:0;display:flex;flex-direction:column}.top-editArea_form:hover{background:var(--top-forms-background-color-hover)}.top-textarea{width:100%}.top-editArea_element.top-textarea_textarea{border:none;outline:none;animation:none}.top-editArea_footer{padding:var(--top-forms-padding);display:flex;justify-content:flex-end;gap:var(--top-forms-padding)}.top-editArea-attachedToKeyboard{background:var(--top-forms-background-color);margin-bottom:env(keyboard-inset-height,0);position:fixed;bottom:0;right:0;left:0;z-index:2;gap:0}.top-editArea-attachedToKeyboard .top-editArea_form{border-radius:0;border:none;border-top:1px solid var(--top-forms-border-color)}.top-editArea-attachedToKeyboard .top-editArea_title{border-top:1px solid var(--color-line-2-opacity);padding:var(--top-forms-padding)}.top-editArea-attachedToKeyboard .top-editArea_footer>[data-top-icon]{border-radius:100%}.top-editInput{width:220px;flex-grow:1;display:flex;align-items:flex-end;gap:var(--top-gap-1)}.top-editInput .top-input{width:unset;flex-grow:1}.top-scrollBarXHidding{scrollbar-width:none;overflow-x:auto;overflow-y:hidden}.top-scrollBarXHidding:hover{scrollbar-width:thin}.top-scrollBarXHidding::-webkit-scrollbar{height:6px;display:none}.top-scrollBarXHidding:hover::-webkit-scrollbar{display:block;scrollbar-width:thin}.top-scrollBarXHidding::-webkit-scrollbar-track{background-color:transparent;box-shadow:inset #0000000f 0 0 0 10px}.top-scrollBarXHidding::-webkit-scrollbar-track:hover{box-shadow:inset #00000014 0 0 0 10px}.top-scrollBarXHidding::-webkit-scrollbar-track:active{box-shadow:inset #0000001a 0 0 0 10px}.top-scrollBarXHidding::-webkit-scrollbar-thumb{background-color:var(--color-line-1-opacity)}.top-scrollBarXHidding::-webkit-scrollbar-thumb:hover{background-color:var(--color-line-2-opacity)}.top-scrollBarXHidding::-webkit-scrollbar-thumb:active{background-color:var(--color-line-3-opacity)}.top-scrollBarXHidding::-webkit-scrollbar-button{width:0;height:0}.top-radioGroup{-webkit-user-select:none;user-select:none;box-sizing:border-box;border-radius:8px;background-color:var(--color-theme-50);height:var(--top-forms-base-height);padding:2px;gap:2px;display:flex;align-items:flex-start}.top-radioGroup_item{cursor:pointer;box-sizing:border-box;border-radius:6px;height:calc(var(--top-forms-base-height) - 4px);padding:0 16px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-grow:1;gap:4px}.top-radioGroup_item:hover{background-color:var(--color-theme-25);box-shadow:0 4px 32px #0409541a,0 0 4px #04095414}.top-radioGroup_item-selected{pointer-events:none;background-color:var(--color-bg-3);box-shadow:0 4px 32px #0409541a,0 0 4px #04095414}.top-radioGroup_circle{padding:3px;margin-left:auto;display:flex}.top-radioGroup_circle:before{content:"";border:1px solid var(--color-line-3-opacity);border-radius:50%;box-sizing:border-box;width:calc(var(--top-forms-option-height) - 3px * 2);height:calc(var(--top-forms-option-height) - 3px * 2)}.top-radioGroup_item:hover .top-radioGroup_circle:before{border-color:var(--color-primary)}.top-radioGroup_item-selected .top-radioGroup_circle:before{border-color:var(--color-primary);border-width:5px}.top-radioGroup_item-selected:hover .top-radioGroup_circle:before{border-color:var(--color-primary-2)}.top-radioGroup_item.top-disabled{--top-icon-color: var(--color-text-3);color:var(--color-text-3)}.top-radioGroup_item.top-disabled .top-radioGroup_circle:before{border-color:var(--color-theme-400);background-color:var(--color-theme-50)}.top-radioGroup.top-error .top-radioGroup_item:not(.top-disabled) .top-radioGroup_circle:before{border-color:var(--color-negative)}.top-radioGroup.top-error .top-radioGroup_item:hover .top-radioGroup_circle:before{border-color:var(--color-negative-2)}
@@ -1,161 +1,161 @@
1
- body {
2
- padding: 0;
3
- margin: 0;
4
- font-family: sans-serif;
5
- font-size: 1em;
6
- line-height: 1.5;
7
- color: #555;
8
- background: #fff;
9
- }
10
- h1 {
11
- font-size: 1.5em;
12
- font-weight: normal;
13
- }
14
- small {
15
- font-size: .66666667em;
16
- }
17
- a {
18
- color: #e74c3c;
19
- text-decoration: none;
20
- }
21
- a:hover, a:focus {
22
- box-shadow: 0 1px #e74c3c;
23
- }
24
- .bshadow0, input {
25
- box-shadow: inset 0 -2px #e7e7e7;
26
- }
27
- input:hover {
28
- box-shadow: inset 0 -2px #ccc;
29
- }
30
- input, fieldset {
31
- font-family: sans-serif;
32
- font-size: 1em;
33
- margin: 0;
34
- padding: 0;
35
- border: 0;
36
- }
37
- input {
38
- color: inherit;
39
- line-height: 1.5;
40
- height: 1.5em;
41
- padding: .25em 0;
42
- }
43
- input:focus {
44
- outline: none;
45
- box-shadow: inset 0 -2px #449fdb;
46
- }
47
- .glyph {
48
- font-size: 16px;
49
- width: 15em;
50
- padding-bottom: 1em;
51
- margin-right: 4em;
52
- margin-bottom: 1em;
53
- float: left;
54
- overflow: hidden;
55
- }
56
- .liga {
57
- width: 80%;
58
- width: calc(100% - 2.5em);
59
- }
60
- .talign-right {
61
- text-align: right;
62
- }
63
- .talign-center {
64
- text-align: center;
65
- }
66
- .bgc1 {
67
- background: #f1f1f1;
68
- }
69
- .fgc1 {
70
- color: #999;
71
- }
72
- .fgc0 {
73
- color: #000;
74
- }
75
- p {
76
- margin-top: 1em;
77
- margin-bottom: 1em;
78
- }
79
- .mvm {
80
- margin-top: .75em;
81
- margin-bottom: .75em;
82
- }
83
- .mtn {
84
- margin-top: 0;
85
- }
86
- .mtl, .mal {
87
- margin-top: 1.5em;
88
- }
89
- .mbl, .mal {
90
- margin-bottom: 1.5em;
91
- }
92
- .mal, .mhl {
93
- margin-left: 1.5em;
94
- margin-right: 1.5em;
95
- }
96
- .mhmm {
97
- margin-left: 1em;
98
- margin-right: 1em;
99
- }
100
- .mls {
101
- margin-left: .25em;
102
- }
103
- .ptl {
104
- padding-top: 1.5em;
105
- }
106
- .pbs, .pvs {
107
- padding-bottom: .25em;
108
- }
109
- .pvs, .pts {
110
- padding-top: .25em;
111
- }
112
- .unit {
113
- float: left;
114
- }
115
- .unitRight {
116
- float: right;
117
- }
118
- .size1of2 {
119
- width: 50%;
120
- }
121
- .size1of1 {
122
- width: 100%;
123
- }
124
- .clearfix:before, .clearfix:after {
125
- content: " ";
126
- display: table;
127
- }
128
- .clearfix:after {
129
- clear: both;
130
- }
131
- .hidden-true {
132
- display: none;
133
- }
134
- .textbox0 {
135
- width: 3em;
136
- background: #f1f1f1;
137
- padding: .25em .5em;
138
- line-height: 1.5;
139
- height: 1.5em;
140
- }
141
- #testDrive {
142
- display: block;
143
- padding-top: 24px;
144
- line-height: 1.5;
145
- }
146
- .fs0 {
147
- font-size: 16px;
148
- }
149
- .fs1 {
150
- font-size: 32px;
151
- }
152
- .fs2 {
153
- font-size: 14px;
154
- }
155
- .fs3 {
156
- font-size: 14px;
157
- }
158
- .fs4 {
159
- font-size: 8px;
160
- }
161
-
1
+ body {
2
+ padding: 0;
3
+ margin: 0;
4
+ font-family: sans-serif;
5
+ font-size: 1em;
6
+ line-height: 1.5;
7
+ color: #555;
8
+ background: #fff;
9
+ }
10
+ h1 {
11
+ font-size: 1.5em;
12
+ font-weight: normal;
13
+ }
14
+ small {
15
+ font-size: .66666667em;
16
+ }
17
+ a {
18
+ color: #e74c3c;
19
+ text-decoration: none;
20
+ }
21
+ a:hover, a:focus {
22
+ box-shadow: 0 1px #e74c3c;
23
+ }
24
+ .bshadow0, input {
25
+ box-shadow: inset 0 -2px #e7e7e7;
26
+ }
27
+ input:hover {
28
+ box-shadow: inset 0 -2px #ccc;
29
+ }
30
+ input, fieldset {
31
+ font-family: sans-serif;
32
+ font-size: 1em;
33
+ margin: 0;
34
+ padding: 0;
35
+ border: 0;
36
+ }
37
+ input {
38
+ color: inherit;
39
+ line-height: 1.5;
40
+ height: 1.5em;
41
+ padding: .25em 0;
42
+ }
43
+ input:focus {
44
+ outline: none;
45
+ box-shadow: inset 0 -2px #449fdb;
46
+ }
47
+ .glyph {
48
+ font-size: 16px;
49
+ width: 15em;
50
+ padding-bottom: 1em;
51
+ margin-right: 4em;
52
+ margin-bottom: 1em;
53
+ float: left;
54
+ overflow: hidden;
55
+ }
56
+ .liga {
57
+ width: 80%;
58
+ width: calc(100% - 2.5em);
59
+ }
60
+ .talign-right {
61
+ text-align: right;
62
+ }
63
+ .talign-center {
64
+ text-align: center;
65
+ }
66
+ .bgc1 {
67
+ background: #f1f1f1;
68
+ }
69
+ .fgc1 {
70
+ color: #999;
71
+ }
72
+ .fgc0 {
73
+ color: #000;
74
+ }
75
+ p {
76
+ margin-top: 1em;
77
+ margin-bottom: 1em;
78
+ }
79
+ .mvm {
80
+ margin-top: .75em;
81
+ margin-bottom: .75em;
82
+ }
83
+ .mtn {
84
+ margin-top: 0;
85
+ }
86
+ .mtl, .mal {
87
+ margin-top: 1.5em;
88
+ }
89
+ .mbl, .mal {
90
+ margin-bottom: 1.5em;
91
+ }
92
+ .mal, .mhl {
93
+ margin-left: 1.5em;
94
+ margin-right: 1.5em;
95
+ }
96
+ .mhmm {
97
+ margin-left: 1em;
98
+ margin-right: 1em;
99
+ }
100
+ .mls {
101
+ margin-left: .25em;
102
+ }
103
+ .ptl {
104
+ padding-top: 1.5em;
105
+ }
106
+ .pbs, .pvs {
107
+ padding-bottom: .25em;
108
+ }
109
+ .pvs, .pts {
110
+ padding-top: .25em;
111
+ }
112
+ .unit {
113
+ float: left;
114
+ }
115
+ .unitRight {
116
+ float: right;
117
+ }
118
+ .size1of2 {
119
+ width: 50%;
120
+ }
121
+ .size1of1 {
122
+ width: 100%;
123
+ }
124
+ .clearfix:before, .clearfix:after {
125
+ content: " ";
126
+ display: table;
127
+ }
128
+ .clearfix:after {
129
+ clear: both;
130
+ }
131
+ .hidden-true {
132
+ display: none;
133
+ }
134
+ .textbox0 {
135
+ width: 3em;
136
+ background: #f1f1f1;
137
+ padding: .25em .5em;
138
+ line-height: 1.5;
139
+ height: 1.5em;
140
+ }
141
+ #testDrive {
142
+ display: block;
143
+ padding-top: 24px;
144
+ line-height: 1.5;
145
+ }
146
+ .fs0 {
147
+ font-size: 16px;
148
+ }
149
+ .fs1 {
150
+ font-size: 32px;
151
+ }
152
+ .fs2 {
153
+ font-size: 14px;
154
+ }
155
+ .fs3 {
156
+ font-size: 14px;
157
+ }
158
+ .fs4 {
159
+ font-size: 8px;
160
+ }
161
+