@xenknight/framework7-vue 0.0.2

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 (199) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +33 -0
  3. package/components/accordion-content.d.ts +46 -0
  4. package/components/accordion-content.js +22 -0
  5. package/components/accordion-item.d.ts +51 -0
  6. package/components/accordion-item.js +77 -0
  7. package/components/accordion-toggle.d.ts +46 -0
  8. package/components/accordion-toggle.js +22 -0
  9. package/components/accordion.d.ts +50 -0
  10. package/components/accordion.js +23 -0
  11. package/components/actions-button.d.ts +56 -0
  12. package/components/actions-button.js +58 -0
  13. package/components/actions-group.d.ts +46 -0
  14. package/components/actions-group.js +22 -0
  15. package/components/actions-label.d.ts +51 -0
  16. package/components/actions-label.js +36 -0
  17. package/components/actions.d.ts +109 -0
  18. package/components/actions.js +157 -0
  19. package/components/app.d.ts +310 -0
  20. package/components/app.js +267 -0
  21. package/components/area-chart.d.ts +88 -0
  22. package/components/area-chart.js +364 -0
  23. package/components/badge.d.ts +54 -0
  24. package/components/badge.js +29 -0
  25. package/components/block-footer.d.ts +46 -0
  26. package/components/block-footer.js +22 -0
  27. package/components/block-header.d.ts +46 -0
  28. package/components/block-header.js +22 -0
  29. package/components/block-title.d.ts +54 -0
  30. package/components/block-title.js +35 -0
  31. package/components/block.d.ts +163 -0
  32. package/components/block.js +123 -0
  33. package/components/breadcrumbs-collapsed.d.ts +19 -0
  34. package/components/breadcrumbs-collapsed.js +21 -0
  35. package/components/breadcrumbs-item.d.ts +22 -0
  36. package/components/breadcrumbs-item.js +24 -0
  37. package/components/breadcrumbs-separator.d.ts +19 -0
  38. package/components/breadcrumbs-separator.js +20 -0
  39. package/components/breadcrumbs.d.ts +19 -0
  40. package/components/breadcrumbs.js +20 -0
  41. package/components/button.d.ts +371 -0
  42. package/components/button.js +182 -0
  43. package/components/card-content.d.ts +51 -0
  44. package/components/card-content.js +28 -0
  45. package/components/card-footer.d.ts +46 -0
  46. package/components/card-footer.js +22 -0
  47. package/components/card-header.d.ts +46 -0
  48. package/components/card-header.js +22 -0
  49. package/components/card.d.ts +145 -0
  50. package/components/card.js +192 -0
  51. package/components/checkbox.d.ts +72 -0
  52. package/components/checkbox.js +70 -0
  53. package/components/chip.d.ts +107 -0
  54. package/components/chip.js +81 -0
  55. package/components/fab-backdrop.d.ts +46 -0
  56. package/components/fab-backdrop.js +22 -0
  57. package/components/fab-button.d.ts +67 -0
  58. package/components/fab-button.js +52 -0
  59. package/components/fab-buttons.d.ts +51 -0
  60. package/components/fab-buttons.js +26 -0
  61. package/components/fab.d.ts +76 -0
  62. package/components/fab.js +78 -0
  63. package/components/gauge.d.ts +91 -0
  64. package/components/gauge.js +151 -0
  65. package/components/icon.d.ts +78 -0
  66. package/components/icon.js +100 -0
  67. package/components/input.d.ts +226 -0
  68. package/components/input.js +409 -0
  69. package/components/link.d.ts +287 -0
  70. package/components/link.js +129 -0
  71. package/components/list-button.d.ts +239 -0
  72. package/components/list-button.js +71 -0
  73. package/components/list-group.d.ts +71 -0
  74. package/components/list-group.js +53 -0
  75. package/components/list-index.d.ts +81 -0
  76. package/components/list-index.js +96 -0
  77. package/components/list-input.d.ts +245 -0
  78. package/components/list-input.js +415 -0
  79. package/components/list-item.d.ts +370 -0
  80. package/components/list-item.js +451 -0
  81. package/components/list.d.ts +236 -0
  82. package/components/list.js +222 -0
  83. package/components/login-screen-title.d.ts +46 -0
  84. package/components/login-screen-title.js +22 -0
  85. package/components/login-screen.d.ts +61 -0
  86. package/components/login-screen.js +104 -0
  87. package/components/message.d.ts +116 -0
  88. package/components/message.js +169 -0
  89. package/components/messagebar-attachment.d.ts +56 -0
  90. package/components/messagebar-attachment.js +52 -0
  91. package/components/messagebar-attachments.d.ts +46 -0
  92. package/components/messagebar-attachments.js +22 -0
  93. package/components/messagebar-sheet-image.d.ts +55 -0
  94. package/components/messagebar-sheet-image.js +48 -0
  95. package/components/messagebar-sheet-item.d.ts +46 -0
  96. package/components/messagebar-sheet-item.js +22 -0
  97. package/components/messagebar-sheet.d.ts +46 -0
  98. package/components/messagebar-sheet.js +22 -0
  99. package/components/messagebar.d.ts +117 -0
  100. package/components/messagebar.js +193 -0
  101. package/components/messages-title.d.ts +46 -0
  102. package/components/messages-title.js +22 -0
  103. package/components/messages.d.ts +116 -0
  104. package/components/messages.js +134 -0
  105. package/components/nav-left.d.ts +68 -0
  106. package/components/nav-left.js +66 -0
  107. package/components/nav-right.d.ts +50 -0
  108. package/components/nav-right.js +25 -0
  109. package/components/nav-title-large.d.ts +46 -0
  110. package/components/nav-title-large.js +25 -0
  111. package/components/nav-title.d.ts +58 -0
  112. package/components/nav-title.js +31 -0
  113. package/components/navbar.d.ts +110 -0
  114. package/components/navbar.js +248 -0
  115. package/components/page-content.d.ts +113 -0
  116. package/components/page-content.js +147 -0
  117. package/components/page.d.ts +150 -0
  118. package/components/page.js +331 -0
  119. package/components/panel.d.ts +139 -0
  120. package/components/panel.js +198 -0
  121. package/components/photo-browser.d.ts +164 -0
  122. package/components/photo-browser.js +181 -0
  123. package/components/pie-chart.d.ts +37 -0
  124. package/components/pie-chart.js +172 -0
  125. package/components/popover.d.ts +101 -0
  126. package/components/popover.js +157 -0
  127. package/components/popup.d.ts +99 -0
  128. package/components/popup.js +161 -0
  129. package/components/preloader.d.ts +50 -0
  130. package/components/preloader.js +65 -0
  131. package/components/progressbar.d.ts +54 -0
  132. package/components/progressbar.js +44 -0
  133. package/components/radio.d.ts +68 -0
  134. package/components/radio.js +59 -0
  135. package/components/range.d.ts +141 -0
  136. package/components/range.js +139 -0
  137. package/components/routable-modals.d.ts +19 -0
  138. package/components/routable-modals.js +58 -0
  139. package/components/searchbar.d.ts +182 -0
  140. package/components/searchbar.js +285 -0
  141. package/components/segmented.d.ts +87 -0
  142. package/components/segmented.js +53 -0
  143. package/components/sheet.d.ts +132 -0
  144. package/components/sheet.js +213 -0
  145. package/components/skeleton-avatar.d.ts +6 -0
  146. package/components/skeleton-avatar.js +3 -0
  147. package/components/skeleton-block.d.ts +6 -0
  148. package/components/skeleton-block.js +3 -0
  149. package/components/skeleton-image.d.ts +6 -0
  150. package/components/skeleton-image.js +3 -0
  151. package/components/skeleton-text.d.ts +6 -0
  152. package/components/skeleton-text.js +3 -0
  153. package/components/stepper.d.ts +197 -0
  154. package/components/stepper.js +230 -0
  155. package/components/subnavbar.d.ts +59 -0
  156. package/components/subnavbar.js +40 -0
  157. package/components/swipeout-actions.d.ts +58 -0
  158. package/components/swipeout-actions.js +33 -0
  159. package/components/swipeout-button.d.ts +75 -0
  160. package/components/swipeout-button.js +48 -0
  161. package/components/tab.d.ts +51 -0
  162. package/components/tab.js +128 -0
  163. package/components/tabs.d.ts +63 -0
  164. package/components/tabs.js +59 -0
  165. package/components/text-editor.d.ts +95 -0
  166. package/components/text-editor.js +147 -0
  167. package/components/toggle.d.ts +80 -0
  168. package/components/toggle.js +89 -0
  169. package/components/toolbar.d.ts +108 -0
  170. package/components/toolbar.js +135 -0
  171. package/components/treeview-item.d.ts +265 -0
  172. package/components/treeview-item.js +140 -0
  173. package/components/treeview.d.ts +46 -0
  174. package/components/treeview.js +22 -0
  175. package/components/use-icon.d.ts +19 -0
  176. package/components/use-icon.js +27 -0
  177. package/components/view.d.ts +296 -0
  178. package/components/view.js +373 -0
  179. package/components/views.d.ts +50 -0
  180. package/components/views.js +25 -0
  181. package/framework7-vue-bundle.js +190 -0
  182. package/framework7-vue.d.ts +121 -0
  183. package/framework7-vue.js +108 -0
  184. package/package.json +65 -0
  185. package/shared/components-router.js +203 -0
  186. package/shared/f7.js +71 -0
  187. package/shared/get-router-initial-component.js +35 -0
  188. package/shared/mixins.js +233 -0
  189. package/shared/modal-state-classes.js +10 -0
  190. package/shared/plugin.js +37 -0
  191. package/shared/router-open-in.js +105 -0
  192. package/shared/use-icon.js +37 -0
  193. package/shared/use-route-props.js +18 -0
  194. package/shared/use-smart-select.js +24 -0
  195. package/shared/use-store.js +24 -0
  196. package/shared/use-tab.js +24 -0
  197. package/shared/use-theme.js +11 -0
  198. package/shared/use-tooltip.js +43 -0
  199. package/shared/utils.js +110 -0
@@ -0,0 +1,157 @@
1
+ import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass } from "vue";
2
+ const _hoisted_1 = {
3
+ key: 0,
4
+ class: "popover-arrow"
5
+ };
6
+ const _hoisted_2 = {
7
+ class: "popover-inner"
8
+ };
9
+ function render(_ctx, _cache) {
10
+ return _openBlock(), _createElementBlock("div", {
11
+ ref: "elRef",
12
+ class: _normalizeClass(_ctx.classes)
13
+ }, [_ctx.arrow !== false ? (_openBlock(), _createElementBlock("div", _hoisted_1)) : _createCommentVNode("", true), _createElementVNode("div", _hoisted_2, [_renderSlot(_ctx.$slots, "default")])], 2);
14
+ }
15
+ import { computed, ref, watch, onMounted, onBeforeUnmount } from 'vue';
16
+ import { classNames } from '../shared/utils.js';
17
+ import { colorClasses, colorProps } from '../shared/mixins.js';
18
+ import { f7ready, f7 } from '../shared/f7.js';
19
+ import { modalStateClasses } from '../shared/modal-state-classes.js';
20
+ export default {
21
+ name: 'f7-popover',
22
+ render,
23
+ props: {
24
+ opened: Boolean,
25
+ animate: {
26
+ type: Boolean,
27
+ default: undefined
28
+ },
29
+ targetEl: {
30
+ type: [String, Object],
31
+ default: undefined
32
+ },
33
+ arrow: {
34
+ type: Boolean,
35
+ default: undefined
36
+ },
37
+ backdrop: {
38
+ type: Boolean,
39
+ default: undefined
40
+ },
41
+ backdropEl: {
42
+ type: [String, Object],
43
+ default: undefined
44
+ },
45
+ closeByBackdropClick: {
46
+ type: Boolean,
47
+ default: undefined
48
+ },
49
+ closeByOutsideClick: {
50
+ type: Boolean,
51
+ default: undefined
52
+ },
53
+ closeOnEscape: {
54
+ type: Boolean,
55
+ default: undefined
56
+ },
57
+ containerEl: {
58
+ type: [String, Object],
59
+ default: undefined
60
+ },
61
+ verticalPosition: {
62
+ type: String,
63
+ default: undefined
64
+ },
65
+ ...colorProps
66
+ },
67
+ emits: ['popover:open', 'popover:opened', 'popover:close', 'popover:closed', 'update:opened'],
68
+ setup(props, _ref) {
69
+ let {
70
+ emit
71
+ } = _ref;
72
+ const f7Popover = ref(null);
73
+ // eslint-disable-next-line
74
+ let isOpened = props.opened;
75
+ let isClosing = false;
76
+ const elRef = ref(null);
77
+ const onOpen = instance => {
78
+ isOpened = true;
79
+ isClosing = false;
80
+ emit('popover:open', instance);
81
+ emit('update:opened', true);
82
+ };
83
+ const onOpened = instance => {
84
+ emit('popover:opened', instance);
85
+ };
86
+ const onClose = instance => {
87
+ isOpened = false;
88
+ isClosing = true;
89
+ emit('popover:close', instance);
90
+ };
91
+ const onClosed = instance => {
92
+ isClosing = false;
93
+ emit('popover:closed', instance);
94
+ emit('update:opened', false);
95
+ };
96
+ watch(() => props.opened, value => {
97
+ if (!f7Popover.value) return;
98
+ if (value) {
99
+ f7Popover.value.open();
100
+ } else {
101
+ f7Popover.value.close();
102
+ }
103
+ });
104
+ onMounted(() => {
105
+ if (!elRef.value) return;
106
+ const popoverParams = {
107
+ el: elRef.value,
108
+ on: {
109
+ open: onOpen,
110
+ opened: onOpened,
111
+ close: onClose,
112
+ closed: onClosed
113
+ }
114
+ };
115
+ const {
116
+ targetEl,
117
+ closeByBackdropClick,
118
+ closeByOutsideClick,
119
+ closeOnEscape,
120
+ arrow,
121
+ backdrop,
122
+ backdropEl,
123
+ containerEl,
124
+ verticalPosition
125
+ } = props;
126
+ if (typeof targetEl !== 'undefined') popoverParams.targetEl = targetEl;
127
+ if (typeof closeByBackdropClick !== 'undefined') popoverParams.closeByBackdropClick = closeByBackdropClick;
128
+ if (typeof closeByOutsideClick !== 'undefined') popoverParams.closeByOutsideClick = closeByOutsideClick;
129
+ if (typeof closeOnEscape !== 'undefined') popoverParams.closeOnEscape = closeOnEscape;
130
+ if (typeof arrow !== 'undefined') popoverParams.arrow = arrow;
131
+ if (typeof backdrop !== 'undefined') popoverParams.backdrop = backdrop;
132
+ if (typeof backdropEl !== 'undefined') popoverParams.backdropEl = backdropEl;
133
+ if (typeof containerEl !== 'undefined') popoverParams.containerEl = containerEl;
134
+ if (typeof verticalPosition !== 'undefined') popoverParams.verticalPosition = verticalPosition;
135
+ f7ready(() => {
136
+ f7Popover.value = f7.popover.create(popoverParams);
137
+ if (props.opened) {
138
+ f7Popover.value.open(targetEl, false);
139
+ }
140
+ });
141
+ });
142
+ onBeforeUnmount(() => {
143
+ if (f7Popover.value) {
144
+ f7Popover.value.destroy();
145
+ }
146
+ f7Popover.value = null;
147
+ });
148
+ const classes = computed(() => classNames('popover', modalStateClasses({
149
+ isOpened,
150
+ isClosing
151
+ }), colorClasses(props)));
152
+ return {
153
+ elRef,
154
+ classes
155
+ };
156
+ }
157
+ };
@@ -0,0 +1,99 @@
1
+
2
+ import { ComponentOptionsMixin, DefineComponent, PropType } from 'vue';
3
+
4
+
5
+ declare const Popup: DefineComponent<
6
+ {
7
+
8
+ tabletFullscreen: {
9
+ type: BooleanConstructor;
10
+ },
11
+
12
+ opened: {
13
+ type: BooleanConstructor;
14
+ },
15
+
16
+ push: {
17
+ type: BooleanConstructor;
18
+ },
19
+
20
+ animate: {
21
+ type: BooleanConstructor;
22
+ default: undefined;
23
+ },
24
+
25
+ backdrop: {
26
+ type: BooleanConstructor;
27
+ default: undefined;
28
+ },
29
+
30
+ backdropEl: {
31
+ type: StringConstructor | ObjectConstructor;
32
+ default: undefined;
33
+ },
34
+
35
+ closeByBackdropClick: {
36
+ type: BooleanConstructor;
37
+ default: undefined;
38
+ },
39
+
40
+ closeOnEscape: {
41
+ type: BooleanConstructor;
42
+ default: undefined;
43
+ },
44
+
45
+ swipeToClose: {
46
+ type: BooleanConstructor | StringConstructor;
47
+ default: boolean;
48
+ },
49
+
50
+ swipeHandler: {
51
+ type: StringConstructor | ObjectConstructor;
52
+ default: undefined;
53
+ },
54
+
55
+ containerEl: {
56
+ type: StringConstructor | ObjectConstructor;
57
+ default: undefined;
58
+ },
59
+
60
+ color: {
61
+ type: StringConstructor;
62
+ },
63
+
64
+ colorTheme: {
65
+ type: StringConstructor;
66
+ },
67
+
68
+ textColor: {
69
+ type: StringConstructor;
70
+ },
71
+
72
+ bgColor: {
73
+ type: StringConstructor;
74
+ },
75
+
76
+ borderColor: {
77
+ type: StringConstructor;
78
+ },
79
+
80
+ rippleColor: {
81
+ type: StringConstructor;
82
+ },
83
+
84
+ dark: {
85
+ type: BooleanConstructor;
86
+ }
87
+ },
88
+ () => JSX.Element,
89
+ unknown,
90
+ {},
91
+ {},
92
+ ComponentOptionsMixin,
93
+ ComponentOptionsMixin,
94
+ ("popup:swipestart" | "popup:swipemove" | "popup:swipeend" | "popup:swipeclose" | "popup:open" | "popup:opened" | "popup:close" | "popup:closed" | "update:opened")[],
95
+ "popup:swipestart" | "popup:swipemove" | "popup:swipeend" | "popup:swipeclose" | "popup:open" | "popup:opened" | "popup:close" | "popup:closed" | "update:opened"
96
+ >;
97
+
98
+ export default Popup;
99
+
@@ -0,0 +1,161 @@
1
+ import { renderSlot as _renderSlot, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
2
+ function render(_ctx, _cache) {
3
+ return _openBlock(), _createElementBlock("div", {
4
+ ref: "elRef",
5
+ class: _normalizeClass(_ctx.classes)
6
+ }, [_renderSlot(_ctx.$slots, "default")], 2);
7
+ }
8
+ import { computed, ref, watch, onMounted, onBeforeUnmount } from 'vue';
9
+ import { classNames } from '../shared/utils.js';
10
+ import { colorClasses, colorProps } from '../shared/mixins.js';
11
+ import { f7ready, f7 } from '../shared/f7.js';
12
+ import { modalStateClasses } from '../shared/modal-state-classes.js';
13
+ export default {
14
+ name: 'f7-popup',
15
+ render,
16
+ props: {
17
+ tabletFullscreen: Boolean,
18
+ opened: Boolean,
19
+ animate: {
20
+ type: Boolean,
21
+ default: undefined
22
+ },
23
+ backdrop: {
24
+ type: Boolean,
25
+ default: undefined
26
+ },
27
+ backdropEl: {
28
+ type: [String, Object],
29
+ default: undefined
30
+ },
31
+ closeByBackdropClick: {
32
+ type: Boolean,
33
+ default: undefined
34
+ },
35
+ closeOnEscape: {
36
+ type: Boolean,
37
+ default: undefined
38
+ },
39
+ swipeToClose: {
40
+ type: [Boolean, String],
41
+ default: false
42
+ },
43
+ swipeHandler: {
44
+ type: [String, Object],
45
+ default: undefined
46
+ },
47
+ push: Boolean,
48
+ containerEl: {
49
+ type: [String, Object],
50
+ default: undefined
51
+ },
52
+ ...colorProps
53
+ },
54
+ emits: ['popup:swipestart', 'popup:swipemove', 'popup:swipeend', 'popup:swipeclose', 'popup:open', 'popup:opened', 'popup:close', 'popup:closed', 'update:opened'],
55
+ setup(props, _ref) {
56
+ let {
57
+ emit
58
+ } = _ref;
59
+ const f7Popup = ref(null);
60
+ // eslint-disable-next-line
61
+ let isOpened = props.opened;
62
+ let isClosing = false;
63
+ const elRef = ref(null);
64
+ const onSwipeStart = instance => {
65
+ emit('popup:swipestart', instance);
66
+ };
67
+ const onSwipeMove = instance => {
68
+ emit('popup:swipemove', instance);
69
+ };
70
+ const onSwipeEnd = instance => {
71
+ emit('popup:swipeend', instance);
72
+ };
73
+ const onSwipeClose = instance => {
74
+ emit('popup:swipeclose', instance);
75
+ };
76
+ const onOpen = instance => {
77
+ isOpened = true;
78
+ isClosing = false;
79
+ emit('popup:open', instance);
80
+ emit('update:opened', true);
81
+ };
82
+ const onOpened = instance => {
83
+ emit('popup:opened', instance);
84
+ };
85
+ const onClose = instance => {
86
+ isOpened = false;
87
+ isClosing = true;
88
+ emit('popup:close', instance);
89
+ };
90
+ const onClosed = instance => {
91
+ isClosing = false;
92
+ emit('popup:closed', instance);
93
+ emit('update:opened', false);
94
+ };
95
+ watch(() => props.opened, value => {
96
+ if (!f7Popup.value) return;
97
+ if (value) {
98
+ f7Popup.value.open();
99
+ } else {
100
+ f7Popup.value.close();
101
+ }
102
+ });
103
+ onMounted(() => {
104
+ if (!elRef.value) return;
105
+ const popupParams = {
106
+ el: elRef.value,
107
+ on: {
108
+ swipeStart: onSwipeStart,
109
+ swipeMove: onSwipeMove,
110
+ swipeEnd: onSwipeEnd,
111
+ swipeClose: onSwipeClose,
112
+ open: onOpen,
113
+ opened: onOpened,
114
+ close: onClose,
115
+ closed: onClosed
116
+ }
117
+ };
118
+ const {
119
+ closeByBackdropClick,
120
+ closeOnEscape,
121
+ animate,
122
+ backdrop,
123
+ backdropEl,
124
+ swipeToClose,
125
+ swipeHandler,
126
+ containerEl
127
+ } = props;
128
+ if (typeof closeByBackdropClick !== 'undefined') popupParams.closeByBackdropClick = closeByBackdropClick;
129
+ if (typeof closeOnEscape !== 'undefined') popupParams.closeOnEscape = closeOnEscape;
130
+ if (typeof animate !== 'undefined') popupParams.animate = animate;
131
+ if (typeof backdrop !== 'undefined') popupParams.backdrop = backdrop;
132
+ if (typeof backdropEl !== 'undefined') popupParams.backdropEl = backdropEl;
133
+ if (typeof swipeToClose !== 'undefined') popupParams.swipeToClose = swipeToClose;
134
+ if (typeof swipeHandler !== 'undefined') popupParams.swipeHandler = swipeHandler;
135
+ if (typeof containerEl !== 'undefined') popupParams.containerEl = containerEl;
136
+ f7ready(() => {
137
+ f7Popup.value = f7.popup.create(popupParams);
138
+ if (props.opened) {
139
+ f7Popup.value.open(false, true);
140
+ }
141
+ });
142
+ });
143
+ onBeforeUnmount(() => {
144
+ if (f7Popup.value) {
145
+ f7Popup.value.destroy();
146
+ }
147
+ f7Popup.value = null;
148
+ });
149
+ const classes = computed(() => classNames('popup', {
150
+ 'popup-tablet-fullscreen': props.tabletFullscreen,
151
+ 'popup-push': props.push
152
+ }, modalStateClasses({
153
+ isOpened,
154
+ isClosing
155
+ }), colorClasses(props)));
156
+ return {
157
+ elRef,
158
+ classes
159
+ };
160
+ }
161
+ };
@@ -0,0 +1,50 @@
1
+
2
+ import { ComponentOptionsMixin, DefineComponent, PropType } from 'vue';
3
+
4
+
5
+ declare const Preloader: DefineComponent<
6
+ {
7
+
8
+ size: {
9
+ type: NumberConstructor | StringConstructor;
10
+ },
11
+
12
+ color: {
13
+ type: StringConstructor;
14
+ },
15
+
16
+ colorTheme: {
17
+ type: StringConstructor;
18
+ },
19
+
20
+ textColor: {
21
+ type: StringConstructor;
22
+ },
23
+
24
+ bgColor: {
25
+ type: StringConstructor;
26
+ },
27
+
28
+ borderColor: {
29
+ type: StringConstructor;
30
+ },
31
+
32
+ rippleColor: {
33
+ type: StringConstructor;
34
+ },
35
+
36
+ dark: {
37
+ type: BooleanConstructor;
38
+ }
39
+ },
40
+ () => JSX.Element,
41
+ unknown,
42
+ {},
43
+ {},
44
+ ComponentOptionsMixin,
45
+ ComponentOptionsMixin,
46
+
47
+ >;
48
+
49
+ export default Preloader;
50
+
@@ -0,0 +1,65 @@
1
+ import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, normalizeClass as _normalizeClass, normalizeStyle as _normalizeStyle, createStaticVNode as _createStaticVNode } from "vue";
2
+ const _hoisted_1 = {
3
+ key: 0,
4
+ class: "preloader-inner"
5
+ };
6
+ const _hoisted_2 = /*#__PURE__*/_createElementVNode("svg", {
7
+ viewBox: "0 0 36 36"
8
+ }, [/*#__PURE__*/_createElementVNode("circle", {
9
+ cx: "18",
10
+ cy: "18",
11
+ r: "16"
12
+ })], -1);
13
+ const _hoisted_3 = [_hoisted_2];
14
+ const _hoisted_4 = {
15
+ key: 1,
16
+ class: "preloader-inner"
17
+ };
18
+ const _hoisted_5 = /*#__PURE__*/_createStaticVNode("<span class=\"preloader-inner-line\"></span><span class=\"preloader-inner-line\"></span><span class=\"preloader-inner-line\"></span><span class=\"preloader-inner-line\"></span><span class=\"preloader-inner-line\"></span><span class=\"preloader-inner-line\"></span><span class=\"preloader-inner-line\"></span><span class=\"preloader-inner-line\"></span>", 8);
19
+ const _hoisted_13 = [_hoisted_5];
20
+ const _hoisted_14 = {
21
+ key: 2,
22
+ class: "preloader-inner"
23
+ };
24
+ function render(_ctx, _cache) {
25
+ return _openBlock(), _createElementBlock("div", {
26
+ class: _normalizeClass(_ctx.classes),
27
+ style: _normalizeStyle(_ctx.style)
28
+ }, [_ctx.theme && _ctx.theme.md ? (_openBlock(), _createElementBlock("span", _hoisted_1, _hoisted_3)) : _ctx.theme && _ctx.theme.ios ? (_openBlock(), _createElementBlock("span", _hoisted_4, _hoisted_13)) : !_ctx.theme ? (_openBlock(), _createElementBlock("span", _hoisted_14)) : _createCommentVNode("", true)], 6);
29
+ }
30
+ import { computed } from 'vue';
31
+ import { classNames } from '../shared/utils.js';
32
+ import { colorClasses, colorProps } from '../shared/mixins.js';
33
+ import { useTheme } from '../shared/use-theme.js';
34
+ export default {
35
+ name: 'f7-preloader',
36
+ render,
37
+ props: {
38
+ size: [Number, String],
39
+ ...colorProps
40
+ },
41
+ setup(props) {
42
+ const theme = useTheme();
43
+ const classes = computed(() => classNames('preloader', {
44
+ preloader: true
45
+ }, colorClasses(props)));
46
+ const style = computed(() => {
47
+ const preloaderStyle = {};
48
+ let sizeComputed = props.size;
49
+ if (sizeComputed && typeof sizeComputed === 'string' && sizeComputed.indexOf('px') >= 0) {
50
+ sizeComputed = sizeComputed.replace('px', '');
51
+ }
52
+ if (sizeComputed) {
53
+ preloaderStyle.width = `${sizeComputed}px`;
54
+ preloaderStyle.height = `${sizeComputed}px`;
55
+ preloaderStyle['--f7-preloader-size'] = `${sizeComputed}px`;
56
+ }
57
+ return preloaderStyle;
58
+ });
59
+ return {
60
+ classes,
61
+ style,
62
+ theme
63
+ };
64
+ }
65
+ };
@@ -0,0 +1,54 @@
1
+
2
+ import { ComponentOptionsMixin, DefineComponent, PropType } from 'vue';
3
+
4
+
5
+ declare const Progressbar: DefineComponent<
6
+ {
7
+
8
+ progress: {
9
+ type: NumberConstructor;
10
+ },
11
+
12
+ infinite: {
13
+ type: BooleanConstructor;
14
+ },
15
+
16
+ color: {
17
+ type: StringConstructor;
18
+ },
19
+
20
+ colorTheme: {
21
+ type: StringConstructor;
22
+ },
23
+
24
+ textColor: {
25
+ type: StringConstructor;
26
+ },
27
+
28
+ bgColor: {
29
+ type: StringConstructor;
30
+ },
31
+
32
+ borderColor: {
33
+ type: StringConstructor;
34
+ },
35
+
36
+ rippleColor: {
37
+ type: StringConstructor;
38
+ },
39
+
40
+ dark: {
41
+ type: BooleanConstructor;
42
+ }
43
+ },
44
+ () => JSX.Element,
45
+ unknown,
46
+ {},
47
+ {},
48
+ ComponentOptionsMixin,
49
+ ComponentOptionsMixin,
50
+
51
+ >;
52
+
53
+ export default Progressbar;
54
+
@@ -0,0 +1,44 @@
1
+ import { normalizeStyle as _normalizeStyle, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
2
+ const _hoisted_1 = ["data-progress"];
3
+ function render(_ctx, _cache) {
4
+ return _openBlock(), _createElementBlock("span", {
5
+ ref: "elRef",
6
+ class: _normalizeClass(_ctx.classes),
7
+ "data-progress": _ctx.progress
8
+ }, [_createElementVNode("span", {
9
+ style: _normalizeStyle(_ctx.transformStyle)
10
+ }, null, 4)], 10, _hoisted_1);
11
+ }
12
+ import { computed, ref } from 'vue';
13
+ import { classNames } from '../shared/utils.js';
14
+ import { colorClasses, colorProps } from '../shared/mixins.js';
15
+ import { f7 } from '../shared/f7.js';
16
+ export default {
17
+ name: 'f7-progressbar',
18
+ render,
19
+ props: {
20
+ progress: Number,
21
+ infinite: Boolean,
22
+ ...colorProps
23
+ },
24
+ setup(props) {
25
+ const elRef = ref(null);
26
+ const set = (newProgress, speed) => {
27
+ if (!f7) return;
28
+ f7.progressbar.set(elRef.value, newProgress, speed);
29
+ };
30
+ const transformStyle = computed(() => ({
31
+ transform: props.progress ? `translate3d(${-100 + props.progress}%, 0, 0)` : '',
32
+ WebkitTransform: props.progress ? `translate3d(${-100 + props.progress}%, 0, 0)` : ''
33
+ }));
34
+ const classes = computed(() => classNames('progressbar', {
35
+ 'progressbar-infinite': props.infinite
36
+ }, colorClasses(props)));
37
+ return {
38
+ classes,
39
+ set,
40
+ transformStyle,
41
+ elRef
42
+ };
43
+ }
44
+ };
@@ -0,0 +1,68 @@
1
+
2
+ import { ComponentOptionsMixin, DefineComponent, PropType } from 'vue';
3
+
4
+
5
+ declare const Radio: DefineComponent<
6
+ {
7
+
8
+ checked: {
9
+ type: BooleanConstructor;
10
+ },
11
+
12
+ name: {
13
+ type: NumberConstructor | StringConstructor;
14
+ },
15
+
16
+ disabled: {
17
+ type: BooleanConstructor;
18
+ },
19
+
20
+ readonly: {
21
+ type: BooleanConstructor;
22
+ },
23
+
24
+ value: {
25
+ type: NumberConstructor | StringConstructor | BooleanConstructor;
26
+ default: undefined;
27
+ },
28
+
29
+ color: {
30
+ type: StringConstructor;
31
+ },
32
+
33
+ colorTheme: {
34
+ type: StringConstructor;
35
+ },
36
+
37
+ textColor: {
38
+ type: StringConstructor;
39
+ },
40
+
41
+ bgColor: {
42
+ type: StringConstructor;
43
+ },
44
+
45
+ borderColor: {
46
+ type: StringConstructor;
47
+ },
48
+
49
+ rippleColor: {
50
+ type: StringConstructor;
51
+ },
52
+
53
+ dark: {
54
+ type: BooleanConstructor;
55
+ }
56
+ },
57
+ () => JSX.Element,
58
+ unknown,
59
+ {},
60
+ {},
61
+ ComponentOptionsMixin,
62
+ ComponentOptionsMixin,
63
+ ("update:checked" | "change")[],
64
+ "update:checked" | "change"
65
+ >;
66
+
67
+ export default Radio;
68
+