@web-atoms/web-controls 2.3.109 → 2.3.110

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 (236) hide show
  1. package/dist/animations/Animations.d.ts.map +1 -1
  2. package/dist/animations/Animations.js +34 -8
  3. package/dist/animations/Animations.js.map +1 -1
  4. package/dist/basic/Form.d.ts +29 -73
  5. package/dist/basic/Form.d.ts.map +1 -1
  6. package/dist/basic/Form.js +85 -283
  7. package/dist/basic/Form.js.map +1 -1
  8. package/dist/basic/FormField.d.ts +1 -0
  9. package/dist/basic/FormField.d.ts.map +1 -1
  10. package/dist/basic/FormField.js +3 -14
  11. package/dist/basic/FormField.js.map +1 -1
  12. package/dist/basic/InlinePopup.d.ts +1 -0
  13. package/dist/basic/InlinePopup.d.ts.map +1 -1
  14. package/dist/basic/InlinePopup.js +2 -4
  15. package/dist/basic/InlinePopup.js.map +1 -1
  16. package/dist/basic/ListRepeater.d.ts +1 -0
  17. package/dist/basic/ListRepeater.d.ts.map +1 -1
  18. package/dist/basic/ListRepeater.js +3 -8
  19. package/dist/basic/ListRepeater.js.map +1 -1
  20. package/dist/basic/MaskedInput.d.ts +1 -0
  21. package/dist/basic/MaskedInput.d.ts.map +1 -1
  22. package/dist/basic/MaskedInput.js +3 -8
  23. package/dist/basic/MaskedInput.js.map +1 -1
  24. package/dist/basic/MaskedInputDiv.d.ts +1 -0
  25. package/dist/basic/MaskedInputDiv.d.ts.map +1 -1
  26. package/dist/basic/MaskedInputDiv.js +3 -16
  27. package/dist/basic/MaskedInputDiv.js.map +1 -1
  28. package/dist/basic/OldForm.d.ts +79 -0
  29. package/dist/basic/OldForm.d.ts.map +1 -0
  30. package/dist/basic/OldForm.js +318 -0
  31. package/dist/basic/OldForm.js.map +1 -0
  32. package/dist/basic/PasswordBox.d.ts +1 -0
  33. package/dist/basic/PasswordBox.d.ts.map +1 -1
  34. package/dist/basic/PasswordBox.js +3 -8
  35. package/dist/basic/PasswordBox.js.map +1 -1
  36. package/dist/basic/PinchZoomView.d.ts +1 -0
  37. package/dist/basic/PinchZoomView.d.ts.map +1 -1
  38. package/dist/basic/PinchZoomView.js +3 -13
  39. package/dist/basic/PinchZoomView.js.map +1 -1
  40. package/dist/basic/PopupButton.d.ts +1 -0
  41. package/dist/basic/PopupButton.d.ts.map +1 -1
  42. package/dist/basic/PopupButton.js +3 -13
  43. package/dist/basic/PopupButton.js.map +1 -1
  44. package/dist/basic/RadioButtonList.d.ts +1 -0
  45. package/dist/basic/RadioButtonList.d.ts.map +1 -1
  46. package/dist/basic/RadioButtonList.js +4 -17
  47. package/dist/basic/RadioButtonList.js.map +1 -1
  48. package/dist/basic/Swipe.d.ts +1 -0
  49. package/dist/basic/Swipe.d.ts.map +1 -1
  50. package/dist/basic/Swipe.js +3 -9
  51. package/dist/basic/Swipe.js.map +1 -1
  52. package/dist/basic/Switch.d.ts +4 -0
  53. package/dist/basic/Switch.d.ts.map +1 -1
  54. package/dist/basic/Switch.js +4 -23
  55. package/dist/basic/Switch.js.map +1 -1
  56. package/dist/basic/TableRepeater.d.ts.map +1 -1
  57. package/dist/basic/TableRepeater.js +2 -7
  58. package/dist/basic/TableRepeater.js.map +1 -1
  59. package/dist/basic/TimeEditor.d.ts +1 -0
  60. package/dist/basic/TimeEditor.d.ts.map +1 -1
  61. package/dist/basic/TimeEditor.js +3 -13
  62. package/dist/basic/TimeEditor.js.map +1 -1
  63. package/dist/basic/TitleEditor.d.ts +1 -0
  64. package/dist/basic/TitleEditor.d.ts.map +1 -1
  65. package/dist/basic/TitleEditor.js +3 -8
  66. package/dist/basic/TitleEditor.js.map +1 -1
  67. package/dist/basic/ToggleButtonBar.d.ts +1 -0
  68. package/dist/basic/ToggleButtonBar.d.ts.map +1 -1
  69. package/dist/basic/ToggleButtonBar.js +3 -10
  70. package/dist/basic/ToggleButtonBar.js.map +1 -1
  71. package/dist/basic/Tooltip.d.ts +1 -0
  72. package/dist/basic/Tooltip.d.ts.map +1 -1
  73. package/dist/basic/Tooltip.js +3 -8
  74. package/dist/basic/Tooltip.js.map +1 -1
  75. package/dist/basic/styles/form-field-style.d.ts +2 -0
  76. package/dist/basic/styles/form-field-style.d.ts.map +1 -0
  77. package/dist/basic/styles/form-field-style.js +146 -0
  78. package/dist/basic/styles/form-field-style.js.map +1 -0
  79. package/dist/basic/styles/inline-popup-style.d.ts +2 -0
  80. package/dist/basic/styles/inline-popup-style.d.ts.map +1 -0
  81. package/dist/basic/styles/inline-popup-style.js +28 -0
  82. package/dist/basic/styles/inline-popup-style.js.map +1 -0
  83. package/dist/basic/styles/list-repeater-style.d.ts +2 -0
  84. package/dist/basic/styles/list-repeater-style.d.ts.map +1 -0
  85. package/dist/basic/styles/list-repeater-style.js +36 -0
  86. package/dist/basic/styles/list-repeater-style.js.map +1 -0
  87. package/dist/basic/styles/masked-input-div.d.ts +2 -0
  88. package/dist/basic/styles/masked-input-div.d.ts.map +1 -0
  89. package/dist/basic/styles/masked-input-div.js +52 -0
  90. package/dist/basic/styles/masked-input-div.js.map +1 -0
  91. package/dist/basic/styles/masked-input-style.d.ts +2 -0
  92. package/dist/basic/styles/masked-input-style.d.ts.map +1 -0
  93. package/dist/basic/styles/masked-input-style.js +19 -0
  94. package/dist/basic/styles/masked-input-style.js.map +1 -0
  95. package/dist/basic/styles/password-box-style.d.ts +2 -0
  96. package/dist/basic/styles/password-box-style.d.ts.map +1 -0
  97. package/dist/basic/styles/password-box-style.js +35 -0
  98. package/dist/basic/styles/password-box-style.js.map +1 -0
  99. package/dist/basic/styles/pinch-zoom-view-style.d.ts +2 -0
  100. package/dist/basic/styles/pinch-zoom-view-style.d.ts.map +1 -0
  101. package/dist/basic/styles/pinch-zoom-view-style.js +61 -0
  102. package/dist/basic/styles/pinch-zoom-view-style.js.map +1 -0
  103. package/dist/basic/styles/popup-button-style.d.ts +2 -0
  104. package/dist/basic/styles/popup-button-style.d.ts.map +1 -0
  105. package/dist/basic/styles/popup-button-style.js +40 -0
  106. package/dist/basic/styles/popup-button-style.js.map +1 -0
  107. package/dist/basic/styles/radio-button-list-style.d.ts +2 -0
  108. package/dist/basic/styles/radio-button-list-style.d.ts.map +1 -0
  109. package/dist/basic/styles/radio-button-list-style.js +44 -0
  110. package/dist/basic/styles/radio-button-list-style.js.map +1 -0
  111. package/dist/basic/styles/swipe-style.d.ts +2 -0
  112. package/dist/basic/styles/swipe-style.d.ts.map +1 -0
  113. package/dist/basic/styles/swipe-style.js +32 -0
  114. package/dist/basic/styles/swipe-style.js.map +1 -0
  115. package/dist/basic/styles/switch-style.d.ts +2 -0
  116. package/dist/basic/styles/switch-style.d.ts.map +1 -0
  117. package/dist/basic/styles/switch-style.js +127 -0
  118. package/dist/basic/styles/switch-style.js.map +1 -0
  119. package/dist/basic/styles/time-editor-style.d.ts +2 -0
  120. package/dist/basic/styles/time-editor-style.d.ts.map +1 -0
  121. package/dist/basic/styles/time-editor-style.js +64 -0
  122. package/dist/basic/styles/time-editor-style.js.map +1 -0
  123. package/dist/basic/styles/title-editor-style.d.ts +2 -0
  124. package/dist/basic/styles/title-editor-style.d.ts.map +1 -0
  125. package/dist/basic/styles/title-editor-style.js +45 -0
  126. package/dist/basic/styles/title-editor-style.js.map +1 -0
  127. package/dist/basic/styles/toggle-button-bar-style.d.ts +2 -0
  128. package/dist/basic/styles/toggle-button-bar-style.d.ts.map +1 -0
  129. package/dist/basic/styles/toggle-button-bar-style.js +48 -0
  130. package/dist/basic/styles/toggle-button-bar-style.js.map +1 -0
  131. package/dist/basic/styles/toggle-view-style.d.ts +2 -0
  132. package/dist/basic/styles/toggle-view-style.d.ts.map +1 -0
  133. package/dist/basic/styles/toggle-view-style.js +91 -0
  134. package/dist/basic/styles/toggle-view-style.js.map +1 -0
  135. package/dist/basic/styles/tooltip-style.d.ts +2 -0
  136. package/dist/basic/styles/tooltip-style.d.ts.map +1 -0
  137. package/dist/basic/styles/tooltip-style.js +21 -0
  138. package/dist/basic/styles/tooltip-style.js.map +1 -0
  139. package/dist/html-editor/InlineHtmlEditor.d.ts.map +1 -1
  140. package/dist/html-editor/InlineHtmlEditor.js +29 -7
  141. package/dist/html-editor/InlineHtmlEditor.js.map +1 -1
  142. package/dist/mobile-app/BottomPopup.d.ts.map +1 -1
  143. package/dist/mobile-app/BottomPopup.js +76 -14
  144. package/dist/mobile-app/BottomPopup.js.map +1 -1
  145. package/dist/mobile-app/MobileApp.d.ts.map +1 -1
  146. package/dist/mobile-app/MobileApp.js +226 -26
  147. package/dist/mobile-app/MobileApp.js.map +1 -1
  148. package/dist/player/AtomVideoPlayer.d.ts.map +1 -1
  149. package/dist/player/AtomVideoPlayer.js +160 -13
  150. package/dist/player/AtomVideoPlayer.js.map +1 -1
  151. package/dist/toggle-view/AtomToggleView.d.ts +1 -0
  152. package/dist/toggle-view/AtomToggleView.d.ts.map +1 -1
  153. package/dist/toggle-view/AtomToggleView.js +3 -16
  154. package/dist/toggle-view/AtomToggleView.js.map +1 -1
  155. package/dist/tsconfig.tsbuildinfo +1 -1
  156. package/package.json +2 -2
  157. package/src/animations/Animations.ts +32 -28
  158. package/src/basic/Form.tsx +89 -383
  159. package/src/basic/FormField.tsx +1 -117
  160. package/src/basic/InlinePopup.tsx +1 -16
  161. package/src/basic/ListRepeater.tsx +1 -26
  162. package/src/basic/MaskedInput.tsx +2 -17
  163. package/src/basic/MaskedInputDiv.tsx +2 -41
  164. package/src/basic/OldForm.tsx +424 -0
  165. package/src/basic/PasswordBox.tsx +1 -22
  166. package/src/basic/PinchZoomView.tsx +2 -41
  167. package/src/basic/PopupButton.tsx +1 -19
  168. package/src/basic/RadioButtonList.tsx +1 -17
  169. package/src/basic/Swipe.tsx +1 -21
  170. package/src/basic/Switch.tsx +2 -83
  171. package/src/basic/TableRepeater.tsx +0 -3
  172. package/src/basic/TimeEditor.tsx +2 -40
  173. package/src/basic/TitleEditor.tsx +1 -28
  174. package/src/basic/ToggleButtonBar.tsx +1 -30
  175. package/src/basic/Tooltip.tsx +2 -5
  176. package/src/basic/styles/form-field-style.ts +136 -0
  177. package/src/basic/styles/inline-popup-style.ts +19 -0
  178. package/src/basic/styles/list-repeater-style.ts +25 -0
  179. package/src/basic/styles/masked-input-div.ts +41 -0
  180. package/src/basic/styles/masked-input-style.ts +8 -0
  181. package/src/basic/styles/password-box-style.ts +24 -0
  182. package/src/basic/styles/pinch-zoom-view-style.ts +50 -0
  183. package/src/basic/styles/popup-button-style.ts +30 -0
  184. package/src/basic/styles/radio-button-list-style.ts +34 -0
  185. package/src/basic/styles/swipe-style.ts +22 -0
  186. package/src/basic/styles/switch-style.ts +116 -0
  187. package/src/basic/styles/time-editor-style.ts +53 -0
  188. package/src/basic/styles/title-editor-style.ts +34 -0
  189. package/src/basic/styles/toggle-button-bar-style.ts +37 -0
  190. package/src/basic/styles/toggle-view-style.ts +80 -0
  191. package/src/basic/styles/tooltip-style.ts +10 -0
  192. package/src/html-editor/InlineHtmlEditor.tsx +26 -16
  193. package/src/mobile-app/BottomPopup.tsx +73 -68
  194. package/src/mobile-app/MobileApp.tsx +227 -174
  195. package/src/player/AtomVideoPlayer.tsx +157 -141
  196. package/src/toggle-view/AtomToggleView.tsx +3 -53
  197. package/dist/basic/Form2.d.ts +0 -27
  198. package/dist/basic/Form2.d.ts.map +0 -1
  199. package/dist/basic/Form2.js +0 -120
  200. package/dist/basic/Form2.js.map +0 -1
  201. package/dist/basic/FormDialog.d.ts +0 -4
  202. package/dist/basic/FormDialog.d.ts.map +0 -1
  203. package/dist/basic/FormDialog.js +0 -32
  204. package/dist/basic/FormDialog.js.map +0 -1
  205. package/dist/basic/Input.d.ts +0 -5
  206. package/dist/basic/Input.d.ts.map +0 -1
  207. package/dist/basic/Input.js +0 -30
  208. package/dist/basic/Input.js.map +0 -1
  209. package/dist/basic/Mix.d.ts +0 -10
  210. package/dist/basic/Mix.d.ts.map +0 -1
  211. package/dist/basic/Mix.js +0 -31
  212. package/dist/basic/Mix.js.map +0 -1
  213. package/dist/basic/Panel.d.ts +0 -6
  214. package/dist/basic/Panel.d.ts.map +0 -1
  215. package/dist/basic/Panel.js +0 -37
  216. package/dist/basic/Panel.js.map +0 -1
  217. package/dist/basic/Row.d.ts +0 -15
  218. package/dist/basic/Row.d.ts.map +0 -1
  219. package/dist/basic/Row.js +0 -43
  220. package/dist/basic/Row.js.map +0 -1
  221. package/dist/switch/AtomSwitch.d.ts +0 -7
  222. package/dist/switch/AtomSwitch.d.ts.map +0 -1
  223. package/dist/switch/AtomSwitch.js +0 -42
  224. package/dist/switch/AtomSwitch.js.map +0 -1
  225. package/dist/switch/AtomSwitchStyle.d.ts +0 -8
  226. package/dist/switch/AtomSwitchStyle.d.ts.map +0 -1
  227. package/dist/switch/AtomSwitchStyle.js +0 -80
  228. package/dist/switch/AtomSwitchStyle.js.map +0 -1
  229. package/src/basic/Form2.tsx +0 -121
  230. package/src/basic/FormDialog.tsx +0 -28
  231. package/src/basic/Input.tsx +0 -30
  232. package/src/basic/Mix.tsx +0 -25
  233. package/src/basic/Panel.tsx +0 -43
  234. package/src/basic/Row.tsx +0 -49
  235. package/src/switch/AtomSwitch.tsx +0 -24
  236. package/src/switch/AtomSwitchStyle.ts +0 -71
@@ -16,32 +16,47 @@ import PopupService, { IDialogOptions, IPopup, PopupControl, PopupWindow } from
16
16
  import CSS from "@web-atoms/core/dist/web/styles/CSS";
17
17
  import PageNavigator from "../PageNavigator";
18
18
  import { StringHelper } from "@web-atoms/core/dist/core/StringHelper";
19
-
20
- CSS(StyleRule()
21
- .absolutePosition({ left: 0, top: 0, right: 0, bottom: 0})
22
- .padding(5)
23
- .overflow("hidden")
24
- .child(StyleRule("[data-container]")
25
- .absolutePosition({ left: 0, top: 0, bottom: 0, width: "100%"})
26
- .overflow("hidden")
27
- .transition("left 0.3s ease-out")
28
- )
29
- .and(StyleRule("[data-drawer=visible]")
30
- .child(StyleRule("[data-container]")
31
- .left("80%")
32
- )
33
- .child(StyleRule("[data-drawer-page]")
34
- .left(0)
35
- )
36
- )
37
- .nested(StyleRule("div[data-drawer-page=drawer-page]")
38
- .absolutePosition({ left: "-80%", top: 0 })
39
- .width("80%")
40
- .height("100%")
41
- .overflow("hidden")
42
- .transition("left 0.3s ease-out")
43
- )
44
- , "div[data-page-app=page-app]");
19
+ import styled from "@web-atoms/core/dist/style/styled";
20
+
21
+ styled.css `
22
+
23
+ position: absolute;
24
+ top: 0px;
25
+ left: 0px;
26
+ right: 0px;
27
+ bottom: 0px;
28
+ padding: 5px;
29
+ overflow: hidden;
30
+
31
+ & > [data-container] {
32
+ position: absolute;
33
+ top: 0px;
34
+ left: 0px;
35
+ width: 100%;
36
+ bottom: 0px;
37
+ overflow: hidden;
38
+ transition: left 0.3s ease-out;
39
+ }
40
+
41
+ &[data-drawer=visible] {
42
+ & > [data-container] {
43
+ left: 80%;
44
+ }
45
+ & > [data-drawer-page] {
46
+ left: 0px;
47
+ }
48
+ }
49
+
50
+ & div[data-drawer-page=drawer-page] {
51
+ position: absolute;
52
+ top: 0px;
53
+ left: -80%;
54
+ width: 80%;
55
+ height: 100%;
56
+ overflow: hidden;
57
+ transition: left 0.3s ease-out;
58
+ }
59
+ `.installGlobal("[data-page-app=page-app]");
45
60
 
46
61
  // CSS(StyleRule()
47
62
  // .absolutePosition({ left: "-80%", top: 0 })
@@ -51,163 +66,201 @@ CSS(StyleRule()
51
66
  // .transition("left 0.3s ease-out")
52
67
  // , "div[data-drawer-page=drawer-page]");
53
68
 
54
- CSS(StyleRule()
55
- .absolutePosition({ left: 0, top: 0})
56
- .width("100%")
57
- .height("100%")
58
- .overflow("hidden")
59
- .custom("contain", "content")
60
- .transition("transform 0.3s ease-out")
61
- .display("grid")
62
- .gridTemplateRows("auto auto 1fr auto")
63
- .gridTemplateColumns("auto 1fr auto")
64
- .child(StyleRule("[data-icon-button=icon-button]")
65
- .padding(5)
66
- )
67
- .child(StyleRule("[data-page-element=action-bar]")
68
- .zIndex(11)
69
- .gridRowStart("1")
70
- .gridColumnStart("1")
71
- .gridColumnEnd("span 3")
72
- .backgroundColor("var(--accent-color, lightgray)")
73
- )
74
- .child(StyleRule("[data-page-element=icon]")
75
- .fontSize(20)
76
- .zIndex(14)
77
- .padding(10)
78
- // .width(40)
79
- // .height(40)
80
- .textAlign("center")
81
- .alignSelf("center")
82
- .justifySelf("center")
83
- .gridRowStart("1")
84
- .gridColumnStart("1")
85
- .color("var(--accent-text-color, black)")
86
- )
87
- .child(StyleRule("[data-page-element=title]")
88
- .fontSize(20)
89
- .zIndex(14)
90
- .padding(5)
91
- .alignSelf("center")
92
- .justifySelf("stretch")
93
- .gridRowStart("1")
94
- .gridColumnStart("2")
95
- .textEllipsis()
96
- .color("var(--accent-text-color, black)")
97
- )
98
- .child(StyleRule("[data-page-element=action]")
99
- .fontSize(20)
100
- .zIndex(14)
101
- .padding(10)
102
- .gridRowStart("1")
103
- .gridColumnStart("3")
104
- .color("var(--accent-text-color, black)")
105
- .nested(StyleRule("button")
106
- .width(30)
107
- .border("none")
108
- .outline("none")
109
- .background("transparent" as any)
110
- .fontSize("inherit")
111
- )
112
- )
113
- .child(StyleRule("button[data-page-element=action]")
114
- .width(30)
115
- .border("none")
116
- .outline("none")
117
- .background("transparent" as any)
118
- )
119
- .child(StyleRule("[data-page-element=header]")
120
- .zIndex(12)
121
- .padding(5)
122
- .gridRowStart("2")
123
- .gridColumnStart("1")
124
- .gridColumnEnd("span 3")
125
- .backgroundColor(Colors.silver)
126
- )
127
- .child(StyleRule("[data-page-element=pull-to-refresh]")
128
- .gridRowStart("3")
129
- .gridColumnStart("1")
130
- .gridColumnEnd("span 3")
131
- .padding(5)
132
- .margin(10)
133
- .zIndex(9)
134
- .alignSelf("start" as any)
135
- .justifySelf("center")
136
- .nested(StyleRule(".pull-icon")
137
- .transition("all 0.3s ease-out")
138
- )
139
- .and(StyleRule("[data-mode=up] .pull-icon")
140
- .transform("rotate(180deg)" as any)
141
- )
142
- .and(StyleRule("[data-mode=loading] .pull-icon")
143
- .display("none")
144
- )
145
- .and(StyleRule(":not([data-mode=down]) .down")
146
- .display("none")
147
- )
148
- .and(StyleRule(":not([data-mode=up]) .up")
149
- .display("none")
150
- )
151
- .and(StyleRule(":not([data-mode=loading]) .loading")
152
- .display("none")
153
- )
154
- )
155
- .child(StyleRule("[data-page-element=content]")
156
- .gridRowStart("3")
157
- .gridColumnStart("1")
158
- .gridColumnEnd("span 3")
159
- .padding(5)
160
- .position("relative")
161
- .overflowX("hidden")
162
- .overflowY("auto")
163
- .zIndex(10)
164
- .scrollBarWidth("5px")
165
- .scrollBarColor(Colors.orange, "white")
166
- // trick to disable shrinking for flexbox
167
- .child(StyleRule("*")
168
- .flexShrink("0")
169
- )
170
- )
171
- .child(StyleRule("[data-page-element=footer]")
172
- .gridRowStart("4")
173
- .gridColumnStart("1")
174
- .gridColumnEnd("span 3")
175
- .zIndex(11)
176
- .padding(5)
177
- )
178
- .transform("translate(100%,0)" as any)
179
- .and(StyleRule("[data-page-state=ready]")
180
- .transform("translate(0,0)" as any)
181
- )
182
- .and(StyleRule("[data-page-state=hidden]")
183
- .transform("translate(-100%,0)" as any)
184
- )
185
- .and(StyleRule("[data-hide-toolbar=true]")
186
- .child(StyleRule("[data-page-element=icon]")
187
- .display("none")
188
- )
189
- .child(StyleRule("[data-page-element=title]")
190
- .display("none")
191
- )
192
- .child(StyleRule("[data-page-element=action-bar]")
193
- .display("none")
194
- )
195
- .child(StyleRule("[data-page-element=action]")
196
- .display("none")
197
- )
198
- )
199
- , "div[data-base-page=base-page]");
200
69
 
201
70
  // CSS(StyleRule()
202
71
  // .paddingBottom(500)
203
- // , "body[data-keyboard=shown] div[data-base-page=base-page] > [data-page-element=content]");
72
+ // , "body[data-keyboard=shown] & > [data-page-element=content]");
204
73
 
205
74
  // if (/iphone|ios/i.test(window.navigator.userAgent)) {
206
75
  // CSS(StyleRule()
207
76
  // .marginBottom(500)
208
- // , "body[data-keyboard=shown] div[data-page-app=page-app]");
77
+ // , "body[data-keyboard=shown] &");
209
78
  // }
210
79
 
80
+ styled.css `
81
+
82
+ position: absolute;
83
+ top: 0px;
84
+ left: 0px;
85
+ width: 100%;
86
+ height: 100%;
87
+ overflow: hidden;
88
+ contain: content;
89
+ transition: transform 0.3s ease-out;
90
+ display: grid;
91
+ grid-template-rows: auto auto 1fr auto;
92
+ grid-template-columns: auto 1fr auto;
93
+ transform: translate(100%,0);
94
+
95
+ & > [data-icon-button=icon-button] {
96
+ padding: 5px;
97
+ }
98
+
99
+ & > [data-page-element=action-bar] {
100
+ z-index: 11;
101
+ grid-row-start: 1;
102
+ grid-column-start: 1;
103
+ grid-column-end: span 3;
104
+ background-color: var(--accent-color, lightgray);
105
+ }
106
+
107
+ & > [data-page-element=icon] {
108
+ font-size: 20px;
109
+ z-index: 14;
110
+ padding: 10px;
111
+ text-align: center;
112
+ align-self: center;
113
+ justify-self: center;
114
+ grid-row-start: 1;
115
+ grid-column-start: 1;
116
+ color: var(--accent-text-color, black);
117
+ }
118
+
119
+ & > [data-page-element=title] {
120
+ font-size: 20px;
121
+ z-index: 14;
122
+ padding: 5px;
123
+ align-self: center;
124
+ justify-self: stretch;
125
+ grid-row-start: 1;
126
+ grid-column-start: 2;
127
+ overflow: hidden;
128
+ white-space: nowrap;
129
+ text-overflow: ellipsis;
130
+ color: var(--accent-text-color, black);
131
+ }
132
+
133
+ & > [data-page-element=action] {
134
+ font-size: 20px;
135
+ z-index: 14;
136
+ padding: 10px;
137
+ grid-row-start: 1;
138
+ grid-column-start: 3;
139
+ color: var(--accent-text-color, black);
140
+
141
+ & button {
142
+ width: 30px;
143
+ border: none;
144
+ outline: none;
145
+ background: transparent;
146
+ font-size: inherit;
147
+ }
148
+ }
149
+
150
+ & > button[data-page-element=action] {
151
+ width: 30px;
152
+ border: none;
153
+ outline: none;
154
+ background: transparent;
155
+ }
156
+
157
+ & > [data-page-element=header] {
158
+ z-index: 12;
159
+ padding: 5px;
160
+ grid-row-start: 2;
161
+ grid-column-start: 1;
162
+ grid-column-end: span 3;
163
+ background-color: #c0c0c0;
164
+ }
165
+
166
+ & > [data-page-element=pull-to-refresh] {
167
+ grid-row-start: 3;
168
+ grid-column-start: 1;
169
+ grid-column-end: span 3;
170
+ padding: 5px;
171
+ margin: 10px;
172
+ z-index: 9;
173
+ align-self: start;
174
+ justify-self: center;
175
+
176
+ & .pull-icon {
177
+ transition: all 0.3s ease-out;
178
+ }
179
+
180
+ &[data-mode=up] .pull-icon {
181
+ transform: rotate(180deg);
182
+ }
183
+
184
+ &[data-mode=loading] .pull-icon {
185
+ display: none;
186
+ }
187
+
188
+ &:not([data-mode=down]) .down {
189
+ display: none;
190
+ }
191
+
192
+ &:not([data-mode=up]) .up {
193
+ display: none;
194
+ }
195
+
196
+ &:not([data-mode=loading]) .loading {
197
+ display: none;
198
+ }
199
+ }
200
+
201
+ & > [data-page-element=content] {
202
+ grid-row-start: 3;
203
+ grid-column-start: 1;
204
+ grid-column-end: span 3;
205
+ padding: 5px;
206
+ position: relative;
207
+ overflow-x: hidden;
208
+ overflow-y: auto;
209
+ z-index: 10;
210
+ scrollbar-width: 5px;
211
+ scrollbar-color: #ffa500 white;
212
+
213
+ &::-webkit-scrollbar {
214
+ width: 5px;
215
+ }
216
+
217
+ &::-webkit-scrollbar-thumb {
218
+ background-color: white;
219
+ border-radius: 20px;
220
+ border: 3px solid #ffa500;
221
+ }
222
+
223
+ & > * {
224
+ flex-shrink: 0;
225
+ }
226
+ }
227
+
228
+ & > [data-page-element=footer] {
229
+ grid-row-start: 4;
230
+ grid-column-start: 1;
231
+ grid-column-end: span 3;
232
+ z-index: 11;
233
+ padding: 5px;
234
+ }
235
+
236
+ &[data-page-state=ready] {
237
+ transform: translate(0,0);
238
+ }
239
+
240
+ &[data-page-state=hidden] {
241
+ transform: translate(-100%,0);
242
+ }
243
+
244
+ &[data-hide-toolbar=true] {
245
+ & > [data-page-element=icon] {
246
+ display: none;
247
+ }
248
+
249
+ & > [data-page-element=title] {
250
+ display: none;
251
+ }
252
+
253
+ & > [data-page-element=action-bar] {
254
+ display: none;
255
+ }
256
+
257
+ & > [data-page-element=action] {
258
+ display: none;
259
+ }
260
+ }
261
+
262
+ `.installGlobal("[data-base-page=base-page]");
263
+
211
264
  export function PullToRefresh() {
212
265
  return <div>
213
266
  <i class="pull-icon fa-solid fa-down"/>