datafolder 1.0.0

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 (182) hide show
  1. package/README.md +169 -0
  2. package/index.js +3 -0
  3. package/package.json +27 -0
  4. package/sample.js +37 -0
  5. package/scripts/airbnb.js +73 -0
  6. package/scripts/airbnb2.js +74 -0
  7. package/scripts/airbnb2_queries.js +231 -0
  8. package/scripts/airbnb_queries.js +264 -0
  9. package/scripts/downloadFile.js +42 -0
  10. package/scripts/express.js +46 -0
  11. package/scripts/fastify.js +79 -0
  12. package/scripts/flights.js +75 -0
  13. package/scripts/flights2.js +81 -0
  14. package/scripts/flights2_queries.js +453 -0
  15. package/scripts/flights_queries.js +403 -0
  16. package/src/QyAcl.js +252 -0
  17. package/src/QyAclSaver.js +14 -0
  18. package/src/QyAclSaver_Worker.js +29 -0
  19. package/src/QyAclWriter.js +19 -0
  20. package/src/QyBatch.js +501 -0
  21. package/src/QyBinWriter.js +140 -0
  22. package/src/QyCD.js +61 -0
  23. package/src/QyCache.js +212 -0
  24. package/src/QyCompressor.js +60 -0
  25. package/src/QyCompressor_Worker.js +13 -0
  26. package/src/QyDB.js +122 -0
  27. package/src/QyDefaultOptions.js +59 -0
  28. package/src/QyDir.js +192 -0
  29. package/src/QyFetch.js +38 -0
  30. package/src/QyFile.js +124 -0
  31. package/src/QyFileContentUtils.js +175 -0
  32. package/src/QyFileLogger.js +58 -0
  33. package/src/QyIndex.js +237 -0
  34. package/src/QyIndexPropTree.js +92 -0
  35. package/src/QyIntersectNode.js +48 -0
  36. package/src/QyItem.js +105 -0
  37. package/src/QyJsonSaver.js +20 -0
  38. package/src/QyKVData.js +289 -0
  39. package/src/QyKVDataCleaner.js +17 -0
  40. package/src/QyKVDataCleaner_Worker.js +94 -0
  41. package/src/QyKVDataLoader.js +65 -0
  42. package/src/QyKVDataSaver.js +17 -0
  43. package/src/QyKVDataSaver_Worker.js +81 -0
  44. package/src/QyLogFileSaver.js +14 -0
  45. package/src/QyLogFileSaver_Worker.js +26 -0
  46. package/src/QyLogger.js +76 -0
  47. package/src/QyMessageWorker.js +41 -0
  48. package/src/QyMessager.js +84 -0
  49. package/src/QyMessager_Run.js +13 -0
  50. package/src/QyMod.js +15 -0
  51. package/src/QyOpRunner.js +73 -0
  52. package/src/QyQueue.js +60 -0
  53. package/src/QySaver.js +83 -0
  54. package/src/QySnapshotCompactor.js +17 -0
  55. package/src/QySnapshotCompactor_Worker.js +151 -0
  56. package/src/QySnapshotSaver.js +17 -0
  57. package/src/QySnapshotSaver_Worker.js +164 -0
  58. package/src/QySnapshots.js +354 -0
  59. package/src/QyStructure.js +50 -0
  60. package/src/QyTrigger.js +133 -0
  61. package/src/QyUnionNode.js +105 -0
  62. package/src/QyUtils.js +250 -0
  63. package/src/QyWorker.js +33 -0
  64. package/src/hackernews.js +93 -0
  65. package/src/rpc/evalCode.js +9 -0
  66. package/src/rpc/getFileContent.js +16 -0
  67. package/src/rpc/getSubItems.js +32 -0
  68. package/src/rpc/queryFiles.js +33 -0
  69. package/src/rpc/reloadRpc.js +1 -0
  70. package/src/simulate.js +114 -0
  71. package/src/simulate2.js +110 -0
  72. package/src/soc_pokec.js +43 -0
  73. package/static/bootstrap-5.3.8-dist/css/bootstrap.min.css +6 -0
  74. package/static/bootstrap-5.3.8-dist/js/bootstrap.bundle.js +6312 -0
  75. package/static/datafolderui/QyStyledElement.js +30 -0
  76. package/static/datafolderui/QyUIFolderTree.js +203 -0
  77. package/static/datafolderui/QyUIUtils.js +42 -0
  78. package/static/datafolderui/display-tree.js +108 -0
  79. package/static/datafolderui/explore-tree.js +122 -0
  80. package/static/datafolderui/folder-tree.js +5 -0
  81. package/static/datafolderui/hscrpt.js +25 -0
  82. package/static/datafolderui/index.css +6 -0
  83. package/static/datafolderui/index.html +20 -0
  84. package/static/datafolderui/json-view.js +74 -0
  85. package/static/datafolderui/kv-input.js +66 -0
  86. package/static/datafolderui/list-input.js +52 -0
  87. package/static/datafolderui/main-page.js +98 -0
  88. package/static/datafolderui/num-input.js +27 -0
  89. package/static/datafolderui/query-editor.js +229 -0
  90. package/static/datafolderui/querySelectorShadowRoot.js +24 -0
  91. package/static/datafolderui/resizable-input.js +67 -0
  92. package/static/favicon.ico +0 -0
  93. package/static/icons-1.13.1/font/bootstrap-icons.min.css +5 -0
  94. package/static/icons-1.13.1/font/fonts/bootstrap-icons.woff +0 -0
  95. package/static/icons-1.13.1/font/fonts/bootstrap-icons.woff2 +0 -0
  96. package/static/json-view/dist/jsonview.js +433 -0
  97. package/static/tree.js/tree.css +106 -0
  98. package/static/tree.js/tree.js +374 -0
  99. package/static/w2ui/dist/w2ui.min.css +2 -0
  100. package/static/w2ui/src/less/icons/icons.json +1 -0
  101. package/static/w2ui/src/less/icons/preview.html +33 -0
  102. package/static/w2ui/src/less/icons/readme.md +15 -0
  103. package/static/w2ui/src/less/icons/svg/box.svg +3 -0
  104. package/static/w2ui/src/less/icons/svg/check.svg +3 -0
  105. package/static/w2ui/src/less/icons/svg/colors.svg +3 -0
  106. package/static/w2ui/src/less/icons/svg/columns.svg +5 -0
  107. package/static/w2ui/src/less/icons/svg/cross.svg +4 -0
  108. package/static/w2ui/src/less/icons/svg/drop.svg +6 -0
  109. package/static/w2ui/src/less/icons/svg/empty.svg +3 -0
  110. package/static/w2ui/src/less/icons/svg/eye-dropper.svg +4 -0
  111. package/static/w2ui/src/less/icons/svg/info.svg +8 -0
  112. package/static/w2ui/src/less/icons/svg/paste.svg +4 -0
  113. package/static/w2ui/src/less/icons/svg/pencil.svg +5 -0
  114. package/static/w2ui/src/less/icons/svg/plus.svg +3 -0
  115. package/static/w2ui/src/less/icons/svg/reload.svg +5 -0
  116. package/static/w2ui/src/less/icons/svg/search.svg +3 -0
  117. package/static/w2ui/src/less/icons/svg/settings.svg +8 -0
  118. package/static/w2ui/src/less/icons/w2ui-font.css +36 -0
  119. package/static/w2ui/src/less/icons/w2ui-font.woff +0 -0
  120. package/static/w2ui/src/less/src/buttons.less +184 -0
  121. package/static/w2ui/src/less/src/common.less +541 -0
  122. package/static/w2ui/src/less/src/fields.less +302 -0
  123. package/static/w2ui/src/less/src/form.less +319 -0
  124. package/static/w2ui/src/less/src/grid.less +1057 -0
  125. package/static/w2ui/src/less/src/icons.less +37 -0
  126. package/static/w2ui/src/less/src/layout.less +86 -0
  127. package/static/w2ui/src/less/src/mixins.less +87 -0
  128. package/static/w2ui/src/less/src/popup.less +277 -0
  129. package/static/w2ui/src/less/src/sidebar.less +343 -0
  130. package/static/w2ui/src/less/src/tabs.less +145 -0
  131. package/static/w2ui/src/less/src/toolbar.less +219 -0
  132. package/static/w2ui/src/less/src/tooltip.less +948 -0
  133. package/static/w2ui/src/less/w2ui.less +196 -0
  134. package/static/w2ui/src/locale/az-az.json +114 -0
  135. package/static/w2ui/src/locale/ba-ba.json +114 -0
  136. package/static/w2ui/src/locale/bg-bg.json +114 -0
  137. package/static/w2ui/src/locale/ca-es.json +114 -0
  138. package/static/w2ui/src/locale/da-dk.json +114 -0
  139. package/static/w2ui/src/locale/de-de.json +114 -0
  140. package/static/w2ui/src/locale/en-gb.json +17 -0
  141. package/static/w2ui/src/locale/en-us.json +17 -0
  142. package/static/w2ui/src/locale/es-ar.json +115 -0
  143. package/static/w2ui/src/locale/es-cr.json +119 -0
  144. package/static/w2ui/src/locale/es-es.json +114 -0
  145. package/static/w2ui/src/locale/es-mx.json +114 -0
  146. package/static/w2ui/src/locale/fr-fr.json +114 -0
  147. package/static/w2ui/src/locale/gl-es.json +114 -0
  148. package/static/w2ui/src/locale/hr-hr.json +114 -0
  149. package/static/w2ui/src/locale/hu-hu.json +114 -0
  150. package/static/w2ui/src/locale/id-id.json +114 -0
  151. package/static/w2ui/src/locale/it-it.json +114 -0
  152. package/static/w2ui/src/locale/ja-jp.json +114 -0
  153. package/static/w2ui/src/locale/kk-kz.json +116 -0
  154. package/static/w2ui/src/locale/ko-kr.json +114 -0
  155. package/static/w2ui/src/locale/lt-lt.json +114 -0
  156. package/static/w2ui/src/locale/nl-nl.json +114 -0
  157. package/static/w2ui/src/locale/no-no.json +114 -0
  158. package/static/w2ui/src/locale/pl-pl.json +114 -0
  159. package/static/w2ui/src/locale/pt-br.json +114 -0
  160. package/static/w2ui/src/locale/ru-ru.json +116 -0
  161. package/static/w2ui/src/locale/sk-sk.json +114 -0
  162. package/static/w2ui/src/locale/sl-si.json +116 -0
  163. package/static/w2ui/src/locale/sr-rs.json +114 -0
  164. package/static/w2ui/src/locale/tr-tr.json +114 -0
  165. package/static/w2ui/src/locale/uk-ua.json +114 -0
  166. package/static/w2ui/src/locale/zh-cn.json +114 -0
  167. package/static/w2ui/src/locale/zh-tw.json +114 -0
  168. package/static/w2ui/src/query.js +583 -0
  169. package/static/w2ui/src/readme.md +11 -0
  170. package/static/w2ui/src/w2base.js +311 -0
  171. package/static/w2ui/src/w2compat.js +207 -0
  172. package/static/w2ui/src/w2field.js +1854 -0
  173. package/static/w2ui/src/w2form.js +2411 -0
  174. package/static/w2ui/src/w2grid.js +8916 -0
  175. package/static/w2ui/src/w2layout.js +1194 -0
  176. package/static/w2ui/src/w2locale.js +129 -0
  177. package/static/w2ui/src/w2popup.js +909 -0
  178. package/static/w2ui/src/w2sidebar.js +1769 -0
  179. package/static/w2ui/src/w2tabs.js +669 -0
  180. package/static/w2ui/src/w2toolbar.js +1180 -0
  181. package/static/w2ui/src/w2tooltip.js +3134 -0
  182. package/static/w2ui/src/w2utils.js +2457 -0
@@ -0,0 +1,541 @@
1
+ /*************************************************
2
+ * --- Reset (used for all w2ui widgets)
3
+ * --- The reset is needed to coexist with other CSS
4
+ * --- on the same page (for example bootstrap)
5
+ */
6
+
7
+ .w2ui-reset {
8
+ .box-sizing;
9
+ font-family: @main-font-family;
10
+ font-size: 12px;
11
+ * {
12
+ line-height: 100%;
13
+ .box-sizing();
14
+ margin: 0px;
15
+ padding: 0px;
16
+ // do not include any font-* properties
17
+ }
18
+ table {
19
+ max-width: none;
20
+ background-color: transparent;
21
+ border-collapse: separate;
22
+ border-spacing: 0;
23
+ border: none;
24
+ }
25
+ table tr th, table tr td {
26
+ font-family: @main-font-family;
27
+ font-size: 12px;
28
+ }
29
+ input:not([type=button]):not([type=submit]):not([type=checkbox]):not([type=radio]),
30
+ select, textarea {
31
+ display: inline-block;
32
+ width: auto;
33
+ height: auto;
34
+ vertical-align: baseline;
35
+ padding: 6px;
36
+ margin: 0;
37
+ font-size: 12px;
38
+ background-color: @input-background-color;
39
+ border: @input-border;
40
+ &:focus {
41
+ background-color: white;
42
+ }
43
+ }
44
+ select {
45
+ padding: 5px;
46
+ height: 26px;
47
+ font-size: 12px;
48
+ }
49
+ }
50
+
51
+ .w2ui-centered {
52
+ position: absolute;
53
+ left: 0;
54
+ right: 0;
55
+ top: 0;
56
+ bottom: 0;
57
+ display: flex;
58
+ flex-wrap: wrap;
59
+ align-items: center;
60
+ justify-content: center;
61
+ text-align: center;
62
+ padding: 10px;
63
+ }
64
+
65
+ .w2ui-disabled,
66
+ .w2ui-readonly {
67
+ background-color: #f1f1f1;
68
+ color: #777;
69
+ }
70
+
71
+ input.w2ui-focus:not(button),
72
+ textarea.w2ui-focus,
73
+ select.w2ui-focus,
74
+ div[contenteditable].w2ui-focus {
75
+ outline-style: auto;
76
+ outline-color: @input-focus-outline-color;
77
+ }
78
+
79
+
80
+ /*************************************************
81
+ * ---- Input Controls ----
82
+ */
83
+
84
+ input[type=button].w2ui-input {
85
+ .sys-button;
86
+ &:hover { .sys-button-hover; }
87
+ &:active { .sys-button-active; }
88
+ }
89
+
90
+ select.w2ui-input:focus,
91
+ div.w2ui-input:focus {
92
+ outline-color: @input-focus-outline-color;
93
+ }
94
+
95
+ input:not([type=button]):not([type=submit]).w2ui-input,
96
+ textarea.w2ui-input {
97
+ padding: 6px;
98
+ border: @input-border;
99
+ border-radius: 3px;
100
+ color: @input-color;
101
+ background-color: @input-background-color;
102
+ line-height: normal;
103
+ &:focus {
104
+ outline-color: @input-focus-outline-color;
105
+ background-color: white;
106
+ }
107
+ &:disabled, &[readonly] {
108
+ background-color: #f1f1f1;
109
+ color: #777;
110
+ }
111
+ }
112
+
113
+ select.w2ui-input {
114
+ color: @input-color;
115
+ padding: 0px 20px 0px 7px;
116
+ line-height: 1.8;
117
+ border-radius: 3px;
118
+ border: @input-border;
119
+ -webkit-appearance: none;
120
+ background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAALCAQAAACnzwd+AAAAcklEQVR4AcXMsQFBQQDG4P9tAgC0gJYRQJZgKQMwCqCku6vVAAAA+NJHP4KHOk0aV2pRw61n4BBmyOxKQ8I4ehZeuhd3HTx6DQEGZ7sBfr2OOOOj3Yi43kMKs9sZknofOexqZ8npMygwWZTX51CipP+YA1OiZJbYYg9lAAAAAElFTkSuQmCC'),
121
+ linear-gradient(to bottom, #f8f8f8 20%, #f8f8f8 50%, #f8f8f8 52%, #f8f8f8 100%);
122
+ background-size: 17px 6px, 100% 100%;
123
+ background-position: right center, left top;
124
+ background-repeat: no-repeat, no-repeat;
125
+ }
126
+
127
+ .w2ui-icon-expand {
128
+ &:before {
129
+ position: relative;
130
+ top: 1px;
131
+ left: 1px;
132
+ content: ' ';
133
+ width: 5px;
134
+ height: 5px;
135
+ border: 2px solid rgba(150, 150, 150, 0.8);
136
+ border-bottom: 0;
137
+ border-left: 0;
138
+ transform: rotateZ(45deg);
139
+ }
140
+ }
141
+
142
+ .w2ui-icon-collapse {
143
+ &:before {
144
+ position: relative;
145
+ top: -1px;
146
+ left: 3px;
147
+ content: ' ';
148
+ width: 5px;
149
+ height: 5px;
150
+ border: 2px solid rgba(150, 150, 150, 0.8);
151
+ border-bottom: 0;
152
+ border-left: 0;
153
+ transform: rotateZ(135deg);
154
+ }
155
+ }
156
+
157
+ /* On/Off switch */
158
+
159
+ input[type="checkbox"].w2ui-toggle {
160
+ position: absolute;
161
+ opacity: 0;
162
+ width: 46px;
163
+ height: 22px;
164
+ padding: 0px;
165
+ margin: 0px;
166
+ margin-left: 2px;
167
+ &:focus {
168
+ box-shadow: 0px 0px 1px 2px #a8cfff;
169
+ }
170
+ & + div {
171
+ display: inline-block;
172
+ width: 46px;
173
+ height: 22px;
174
+ border: 1px solid #bbb;
175
+ border-radius: 30px;
176
+ background-color: #eee;
177
+ transition-duration: .3s;
178
+ transition-property: background-color, box-shadow;
179
+ box-shadow: inset 0 0 0 0px rgba(0, 0, 0, 0.4);
180
+ margin-left: 2px;
181
+ margin-top: 3px;
182
+ }
183
+ &.w2ui-small {
184
+ width: 30px;
185
+ height: 23px;
186
+ }
187
+ &.w2ui-small + div {
188
+ width: 30px;
189
+ height: 16px;
190
+ margin-top: 5px;
191
+ }
192
+
193
+ &:focus + div {
194
+ box-shadow: 0px 0px 3px 2px #91baed;
195
+ }
196
+
197
+ &:disabled + div {
198
+ opacity: 0.3;
199
+ }
200
+
201
+ /* Knob */
202
+ & + div > div {
203
+ float: left;
204
+ width: 22px;
205
+ height: 22px;
206
+ border-radius: inherit;
207
+ background: #f5f5f5;
208
+ transition-duration: 0.3s;
209
+ transition-property: transform, background-color, box-shadow;
210
+ box-shadow: 0px 0px 1px rgba(50, 50, 50, 1), 0 0 0 1px rgba(200, 200, 200, 0.6);
211
+ pointer-events: none;
212
+ margin-top: -1px;
213
+ margin-left: -1px;
214
+ }
215
+
216
+ &.w2ui-small + div > div {
217
+ width: 16px;
218
+ height: 16px;
219
+ }
220
+
221
+ &:checked + div > div {
222
+ transform: translate3d(24px, 0, 0);
223
+ background-color: #ffffff;
224
+ }
225
+ &.w2ui-small:checked + div > div {
226
+ transform: translate3d(14px, 0, 0);
227
+ }
228
+
229
+ &:focus {
230
+ outline: none;
231
+ }
232
+
233
+ /* Blue */
234
+ &:checked + div {
235
+ border: 1px solid #206FAD;
236
+ box-shadow: inset 0 0 0 12px #35A6EB;
237
+ }
238
+
239
+ &:checked:focus + div {
240
+ box-shadow: 0px 0px 3px 2px #91baed, inset 0 0 0 12px #35A6EB;
241
+ }
242
+
243
+ &:checked + div > div {
244
+ box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3), 0px 0px 0 1px #206FAD;
245
+ }
246
+
247
+ /* Green */
248
+ &.green:checked + div {
249
+ border: 1px solid rgba(0, 162, 63,1);
250
+ box-shadow: inset 0 0 0 12px #54B350;
251
+ }
252
+
253
+ &.green:checked:focus + div {
254
+ box-shadow: 0px 0px 3px 2px #91baed, inset 0 0 0 12px #54B350;
255
+ }
256
+
257
+ &.green:checked + div > div {
258
+ box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(0, 162, 63, 1);
259
+ }
260
+ }
261
+
262
+ input[type=range] {
263
+ height: 5px;
264
+ -webkit-appearance: none;
265
+ margin: 10px 0 0 0;
266
+ width: 120px;
267
+ border: none !important;
268
+ background-color: transparent !important;
269
+ &:focus {
270
+ outline: none !important;
271
+ }
272
+ &::-webkit-slider-runnable-track {
273
+ width: 100%;
274
+ height: 4px;
275
+ cursor: pointer;
276
+ box-shadow: 0px 0px 0px #000000;
277
+ background: #E8E8E8;
278
+ border-radius: 0px;
279
+ border: 0px solid #000000;
280
+ }
281
+ &::-webkit-slider-thumb {
282
+ box-shadow: 0px 0px 0px #000000;
283
+ border: 1px solid #2290D9;
284
+ height: 13px;
285
+ width: 13px;
286
+ border-radius: 25px;
287
+ background: #D0DBF2;
288
+ cursor: pointer;
289
+ -webkit-appearance: none;
290
+ margin-top: -5px;
291
+ }
292
+ &:focus::-webkit-slider-runnable-track {
293
+ background: #E8E8E8;
294
+ }
295
+ &::-moz-range-track {
296
+ width: 100%;
297
+ height: 4px;
298
+ cursor: pointer;
299
+ box-shadow: 0px 0px 0px #000000;
300
+ background: #E8E8E8;
301
+ border-radius: 0px;
302
+ border: 0px solid #000000;
303
+ }
304
+ &::-moz-range-thumb {
305
+ box-shadow: 0px 0px 0px #000000;
306
+ border: 1px solid #2290D9;
307
+ height: 13px;
308
+ width: 13px;
309
+ border-radius: 25px;
310
+ background: #D0DBF2;
311
+ cursor: pointer;
312
+ }
313
+ &::-ms-track {
314
+ width: 100%;
315
+ height: 4px;
316
+ cursor: pointer;
317
+ background: transparent;
318
+ border-color: transparent;
319
+ color: transparent;
320
+ }
321
+ &::-ms-fill-lower {
322
+ background: #E8E8E8;
323
+ border: 0px solid #000000;
324
+ border-radius: 0px;
325
+ box-shadow: 0px 0px 0px #000000;
326
+ }
327
+ &::-ms-fill-upper {
328
+ background: #E8E8E8;
329
+ border: 0px solid #000000;
330
+ border-radius: 0px;
331
+ box-shadow: 0px 0px 0px #000000;
332
+ }
333
+ &::-ms-thumb {
334
+ margin-top: 1px;
335
+ box-shadow: 0px 0px 0px #000000;
336
+ border: 1px solid #2290D9;
337
+ height: 13px;
338
+ width: 13px;
339
+ border-radius: 25px;
340
+ background: #D0DBF2;
341
+ cursor: pointer;
342
+ }
343
+ &:focus::-ms-fill-lower {
344
+ background: #E8E8E8;
345
+ }
346
+ &:focus::-ms-fill-upper {
347
+ background: #E8E8E8;
348
+ }
349
+ }
350
+
351
+ /*************************************************
352
+ * ---- Common Classes ----
353
+ */
354
+
355
+ .w2ui-marker {
356
+ background-color: rgba(214, 161, 252, 50%);
357
+ }
358
+
359
+ .w2ui-spinner {
360
+ display: inline-block;
361
+ background-size: 100%;
362
+ background-repeat: no-repeat;
363
+ background-image: @image-spinner;
364
+ }
365
+
366
+ /* common icons */
367
+
368
+ .w2ui-icon {
369
+ background-repeat: no-repeat;
370
+ height: 16px;
371
+ width: 16px;
372
+ overflow: hidden;
373
+ margin: 2px 2px;
374
+ display: inline-block;
375
+
376
+ &.icon-folder {
377
+ .background-image(@image-folder, no-repeat, center);
378
+ }
379
+
380
+ &.icon-page {
381
+ .background-image(@image-page, no-repeat, center);
382
+ }
383
+ }
384
+
385
+ /*************************************************
386
+ * ---- Locking portion of the screen (in grid, form, layout)
387
+ */
388
+
389
+ .w2ui-lock {
390
+ display: none;
391
+ position: absolute;
392
+ z-index: 1400;
393
+ top: 0;
394
+ left: 0;
395
+ width: 100%;
396
+ height: 100%;
397
+ .opacity(0.15);
398
+ background-color: @lock-background-color;
399
+ }
400
+
401
+ .w2ui-lock-msg {
402
+ display: none;
403
+ position: absolute;
404
+ z-index: 1400;
405
+ top: 50%;
406
+ left: 50%;
407
+ transform: translateX(-50%) translateY(-50%);
408
+ min-width: 100px;
409
+ max-width: 95%;
410
+ padding: 30px;
411
+ white-space: nowrap;
412
+ text-overflow: ellipsis;
413
+ overflow: hidden;
414
+ font-size: 13px;
415
+ font-family: @main-font-family;
416
+ opacity: 0.8;
417
+ background-color: @lock-msg-background-color;
418
+ color: @lock-msg-color;
419
+ text-align: center;
420
+ border-radius: 5px;
421
+ border: @lock-msg-border;
422
+ .w2ui-spinner {
423
+ display: inline-block;
424
+ width: 24px;
425
+ height: 24px;
426
+ margin: -3px 8px -7px -10px;
427
+ }
428
+ }
429
+
430
+ /*************************************************
431
+ * ---- Scroll contet, used in toolbar and tabs ----
432
+ */
433
+
434
+ .w2ui-scroll-wrapper {
435
+ overflow: hidden;
436
+ }
437
+
438
+ .w2ui-scroll-left,
439
+ .w2ui-scroll-right {
440
+ top: 0;
441
+ width: 18px;
442
+ height: 100%;
443
+ cursor: default;
444
+ z-index: 10;
445
+ display: none;
446
+ position: absolute;
447
+
448
+ &:hover {
449
+ background-color: @overflow-hover-background-color;
450
+ }
451
+ }
452
+
453
+ .w2ui-scroll-left {
454
+ left: 0;
455
+ box-shadow: 0px 0px 7px #5F5F5F;
456
+ background: @overflow-background-color @image-less center center no-repeat;
457
+ background-size: 15px 12px;
458
+ }
459
+
460
+ .w2ui-scroll-right {
461
+ right: 0;
462
+ box-shadow: 0px 0px 7px #5F5F5F;
463
+ background: @overflow-background-color @image-more center center no-repeat;
464
+ background-size: 15px 13px;
465
+ }
466
+
467
+ /*************************************
468
+ * ---- Notification message ----
469
+ */
470
+
471
+ #w2ui-notify {
472
+ pointer-events: none; // it should not be blocking events unless it is on the message
473
+ position: absolute;
474
+ display: flex;
475
+ flex-direction: column;
476
+ align-items: center;
477
+ left: 0px;
478
+ right: 0px;
479
+ bottom: 15px;
480
+ z-index: 10000;
481
+ overflow: hidden;
482
+ > div {
483
+ pointer-events: all;
484
+ position: relative;
485
+ background-color: #292828ba;
486
+ color: #ffffff;
487
+ padding: 8px 44px 8px 16px;
488
+ border-radius: 4px;
489
+ box-shadow: 3px 3px 10px #9c9c9c;
490
+ max-height: 76px;
491
+ min-width: 100px;
492
+ max-width: 800px;
493
+ font-size: 16px;
494
+ text-shadow: 1px 0 0 black;
495
+
496
+ a {
497
+ color: #6cd0e8;
498
+ text-decoration: none;
499
+ cursor: pointer;
500
+ }
501
+ a:hover {
502
+ color: #a2f0ff;
503
+ }
504
+ span.w2ui-notify-close {
505
+ padding: 6px 6px;
506
+ border-radius: 3px;
507
+ font-size: 13px;
508
+ color: #c3c3c3;
509
+ position: absolute;
510
+ right: 5px;
511
+ top: 3px;
512
+ &:hover {
513
+ background-color: #807e7e;
514
+ color: #ffffff;
515
+ }
516
+
517
+ }
518
+ &.w2ui-notify-error {
519
+ text-shadow: none;
520
+ background-color: rgba(255, 0, 0, 0.8) ;
521
+ .w2ui-notify-close {
522
+ color: #ffffff ;
523
+ &:hover {
524
+ background-color: #fcadad;
525
+ color: rgba(255, 0, 0, 0.8);
526
+ }
527
+ }
528
+ }
529
+ &.w2ui-notify-success {
530
+ text-shadow: none;
531
+ background-color: rgba(21,192,70,.8) ;
532
+ .w2ui-notify-close {
533
+ color: #ffffff ;
534
+ &:hover {
535
+ background-color: #7ae097;
536
+ color: rgba(21,192,70,.8);
537
+ }
538
+ }
539
+ }
540
+ }
541
+ }