alchemy-chimera 0.5.4 → 1.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 (128) hide show
  1. package/CHANGELOG.md +39 -4
  2. package/assets/scripts/chimera/chimera.js +13 -288
  3. package/assets/stylesheets/chimera/chimera.scss +451 -0
  4. package/bootstrap.js +6 -302
  5. package/config/routes.js +53 -5
  6. package/controller/00-chimera_controller.js +16 -0
  7. package/controller/chimera_editor_controller.js +159 -614
  8. package/controller/chimera_static_controller.js +102 -9
  9. package/lib/chimera_config.js +138 -163
  10. package/model/model.js +1 -1
  11. package/package.json +8 -12
  12. package/view/chimera/dashboard.hwk +8 -0
  13. package/view/chimera/editor/index.hwk +20 -0
  14. package/view/chimera/sidebar.hwk +4 -0
  15. package/view/chimera/widgets.hwk +8 -0
  16. package/view/layouts/chimera_base.hwk +15 -0
  17. package/view/layouts/chimera_basics.hwk +15 -0
  18. package/view/layouts/chimera_body.hwk +24 -0
  19. package/assets/scripts/chimera/assoc_field.js +0 -311
  20. package/assets/scripts/chimera/boolean_field.js +0 -53
  21. package/assets/scripts/chimera/chimera_field.js +0 -622
  22. package/assets/scripts/chimera/chimera_field_wrapper.js +0 -558
  23. package/assets/scripts/chimera/date_field.js +0 -170
  24. package/assets/scripts/chimera/geopoint_field.js +0 -147
  25. package/assets/scripts/chimera/medium-button.js +0 -6
  26. package/assets/scripts/chimera/object_field.js +0 -51
  27. package/assets/scripts/chimera/page-editor.js +0 -3
  28. package/assets/scripts/chimera/password_field.js +0 -73
  29. package/assets/scripts/chimera/schema_field.js +0 -300
  30. package/assets/scripts/chimera/text_field.js +0 -119
  31. package/assets/scripts/rome/rome.js +0 -4978
  32. package/assets/scripts/vex/vex.dialog.js +0 -151
  33. package/assets/scripts/vex/vex.js +0 -193
  34. package/assets/stylesheets/chimera/chimera.less +0 -1075
  35. package/assets/stylesheets/chimera_old/chimera.less +0 -351
  36. package/assets/stylesheets/chimera_old/core.less +0 -315
  37. package/assets/stylesheets/chimera_old/font.less +0 -38
  38. package/assets/stylesheets/chimera_old/mixins.less +0 -35
  39. package/assets/stylesheets/chimera_old/page-editor.less +0 -23
  40. package/assets/stylesheets/rome/rome.less +0 -130
  41. package/assets/stylesheets/vex/vex-theme-bottom-right-corner.less +0 -613
  42. package/assets/stylesheets/vex/vex.default.less +0 -501
  43. package/assets/stylesheets/vex/vex.flat.less +0 -443
  44. package/assets/stylesheets/vex/vex.less +0 -320
  45. package/controller/chimera_page_controller.js +0 -14
  46. package/controller/chimera_settings_controller.js +0 -129
  47. package/controller/tasks_chimera_controller.js +0 -106
  48. package/helper/chimera_helper.js +0 -202
  49. package/lib/chimera_action_fields.js +0 -292
  50. package/lib/chimera_field/belongsto_chimera_field.js +0 -160
  51. package/lib/chimera_field/boolean_chimera_field.js +0 -19
  52. package/lib/chimera_field/date_chimera_field.js +0 -20
  53. package/lib/chimera_field/datetime_chimera_field.js +0 -20
  54. package/lib/chimera_field/enum_chimera_field.js +0 -131
  55. package/lib/chimera_field/geopoint_chimera_field.js +0 -20
  56. package/lib/chimera_field/habtm_chimera_field.js +0 -55
  57. package/lib/chimera_field/hasoneparent_chimera_field.js +0 -18
  58. package/lib/chimera_field/html_chimera_field.js +0 -20
  59. package/lib/chimera_field/object_chimera_field.js +0 -18
  60. package/lib/chimera_field/password_chimera_field.js +0 -18
  61. package/lib/chimera_field/schema_chimera_field.js +0 -149
  62. package/lib/chimera_field/text_chimera_field.js +0 -20
  63. package/lib/chimera_field/time_chimera_field.js +0 -18
  64. package/lib/chimera_field.js +0 -208
  65. package/model/setting_model.js +0 -51
  66. package/public/chimera/codedor.svg +0 -28
  67. package/view/chimera/dashboard.ejs +0 -5
  68. package/view/chimera/editor/add.ejs +0 -32
  69. package/view/chimera/editor/edit.ejs +0 -33
  70. package/view/chimera/editor/index.ejs +0 -87
  71. package/view/chimera/editor/remove.ejs +0 -23
  72. package/view/chimera/editor/view.ejs +0 -54
  73. package/view/chimera/elements/editor_actions.ejs +0 -4
  74. package/view/chimera/elements/empty +0 -0
  75. package/view/chimera/field_wrappers/_entries.ejs +0 -91
  76. package/view/chimera/field_wrappers/_wrapper.ejs +0 -82
  77. package/view/chimera/field_wrappers/date_edit.ejs +0 -23
  78. package/view/chimera/field_wrappers/date_list.ejs +0 -3
  79. package/view/chimera/field_wrappers/date_view.ejs +0 -16
  80. package/view/chimera/field_wrappers/default_edit.ejs +0 -22
  81. package/view/chimera/field_wrappers/default_list.ejs +0 -3
  82. package/view/chimera/field_wrappers/default_peek.ejs +0 -3
  83. package/view/chimera/field_wrappers/default_view.ejs +0 -14
  84. package/view/chimera/field_wrappers/geopoint_edit.ejs +0 -25
  85. package/view/chimera/field_wrappers/geopoint_list.ejs +0 -5
  86. package/view/chimera/field_wrappers/geopoint_view.ejs +0 -18
  87. package/view/chimera/field_wrappers/schema_edit.ejs +0 -19
  88. package/view/chimera/field_wrappers/text_edit.ejs +0 -22
  89. package/view/chimera/field_wrappers/text_list.ejs +0 -1
  90. package/view/chimera/fields/belongsto_edit.ejs +0 -4
  91. package/view/chimera/fields/belongsto_list.ejs +0 -1
  92. package/view/chimera/fields/belongsto_peek.ejs +0 -1
  93. package/view/chimera/fields/boolean_edit.ejs +0 -17
  94. package/view/chimera/fields/boolean_list.ejs +0 -3
  95. package/view/chimera/fields/boolean_view.ejs +0 -3
  96. package/view/chimera/fields/date_edit.ejs +0 -14
  97. package/view/chimera/fields/date_list.ejs +0 -9
  98. package/view/chimera/fields/date_peek.ejs +0 -9
  99. package/view/chimera/fields/date_view.ejs +0 -9
  100. package/view/chimera/fields/datetime_edit.ejs +0 -24
  101. package/view/chimera/fields/datetime_list.ejs +0 -9
  102. package/view/chimera/fields/datetime_view.ejs +0 -10
  103. package/view/chimera/fields/default_edit.ejs +0 -10
  104. package/view/chimera/fields/default_list.ejs +0 -15
  105. package/view/chimera/fields/default_view.ejs +0 -1
  106. package/view/chimera/fields/enum_edit.ejs +0 -10
  107. package/view/chimera/fields/geopoint_edit.ejs +0 -10
  108. package/view/chimera/fields/geopoint_list.ejs +0 -9
  109. package/view/chimera/fields/geopoint_view.ejs +0 -9
  110. package/view/chimera/fields/habtm_edit.ejs +0 -5
  111. package/view/chimera/fields/hasoneparent_edit.ejs +0 -6
  112. package/view/chimera/fields/hasoneparent_list.ejs +0 -1
  113. package/view/chimera/fields/object_edit.ejs +0 -8
  114. package/view/chimera/fields/password_edit.ejs +0 -12
  115. package/view/chimera/fields/schema_edit.ejs +0 -14
  116. package/view/chimera/fields/text_edit.ejs +0 -5
  117. package/view/chimera/fields/text_list.ejs +0 -9
  118. package/view/chimera/fields/text_view.ejs +0 -3
  119. package/view/chimera/fields/time_edit.ejs +0 -15
  120. package/view/chimera/fields/time_list.ejs +0 -9
  121. package/view/chimera/fields/time_view.ejs +0 -9
  122. package/view/chimera/page/edit.ejs +0 -18
  123. package/view/chimera/page_editor.ejs +0 -5
  124. package/view/chimera/sidebar.ejs +0 -40
  125. package/view/chimera/tasks/index.ejs +0 -114
  126. package/view/layouts/chimera.ejs +0 -12
  127. package/view/layouts/chimera_base.ejs +0 -11
  128. package/view/layouts/chimera_body.ejs +0 -43
@@ -1,1075 +0,0 @@
1
- @import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800,800italic);
2
- @import "topsoil/less/topsoil.less";
3
-
4
- @color-one: #F4F4F4;
5
- @color-two: #191919;
6
- @color-three: #313131;
7
- @color-four: #9A9A9A;
8
- @color-five: #7B7B7B;
9
- @color-six: #222222;
10
-
11
- @color-dark: @color-two;
12
- @color-light: @color-one;
13
-
14
- @color-success: #47C37B;
15
- @color-info: #70B9EB;
16
- @color-warning: #F3B760;
17
- @color-primary: #5C90D2;
18
- @color-danger: #D26A5C;
19
- @color-default: @color-one;
20
-
21
- @color-background: @color-one;
22
- @color-background-frame: @color-two;
23
- @color-background-title: @color-background;
24
- @color-menu-text: @color-four;
25
-
26
- @shadow-cage: inset 0.1rem 0.1rem 0.2rem rgba(0,0,0,0), inset 0.15rem 0.15rem 0.15rem rgba(0,0,0,0.1);
27
-
28
- @height-topbar: 3.5rem;
29
- @width-sidebar: 18rem;
30
-
31
- @nav-border-top: 1px solid @color-six;
32
- @nav-border-bottom: 1px solid #0A0C0E;
33
- @nav-background-hover: @color-six;
34
- @nav-background-child: #202020;
35
-
36
- html {
37
- font-family: 'Open Sans', sans-serif;
38
-
39
- -webkit-font-smoothing: antialiased !important;
40
- -webkit-tap-highlight-color: transparent;
41
- text-rendering: optimizeLegibility;
42
-
43
- // Set rem basis
44
- font-size: 14px;
45
- }
46
-
47
- body {
48
- background-color: @color-background;
49
- }
50
-
51
- body,
52
- .enclosure {
53
- height: 100vh;
54
- }
55
-
56
- x-hawkejs {
57
- display: block;
58
- }
59
-
60
- .chimera-brand-anchor {
61
- text-decoration: none;
62
- display: inline-block;
63
- color: @color-menu-text;
64
- margin-left: 1rem;
65
-
66
- h1 {
67
- font-size: 1.5rem;
68
- font-weight: normal;
69
- }
70
- }
71
-
72
- .enclosure {
73
- .flexParent(column, space-between, nowrap);
74
-
75
- .page-topbar {
76
- .flexChild(0 0 @height-topbar);
77
- .flexParent();
78
- background-color: @color-background-frame;
79
-
80
- // Vertically center objects
81
- align-items: center;
82
-
83
- // Float them to the left
84
- justify-content: flex-start;
85
- }
86
-
87
- .chimera-brand {
88
- display: inline-block;
89
- width: @width-sidebar;
90
- }
91
-
92
- .chimera-title {
93
-
94
- // Title can expand, but box should always be visible
95
- min-width: 15rem;
96
-
97
- // The height needs to be a bit higher than the topbar,
98
- // so the shadow is hidden
99
- height: (@height-topbar + 0.5rem);
100
-
101
- // The background color should be the same as the body bg
102
- background-color: @color-background-title;
103
-
104
- // The text color is the same as the frame bg
105
- color: @color-background-frame;
106
-
107
- // Layer the title over the cage
108
- z-index: 3;
109
-
110
- // Use the same inset shadow as the cage
111
- box-shadow: @shadow-cage;
112
-
113
- // Turn it into a flex item, so we can vertically center
114
- .flexParent();
115
-
116
- // Center the content vertically
117
- align-items: center;
118
-
119
- // Regular styling
120
- text-shadow: 0.15rem 0.15rem rgba(100,100,100,0.1);
121
- padding: 0 1rem;
122
- font-size: 2rem;
123
- }
124
-
125
- .page-container {
126
- .flexChild(1 0 auto);
127
- .flexParent(row, space-between, nowrap);
128
- }
129
-
130
- .chimera-sidenav {
131
- .flexChild(0 0 @width-sidebar);
132
- background-color: @color-background-frame;
133
- }
134
-
135
- .chimera-cage {
136
- .flexChild(1);
137
- box-shadow: @shadow-cage;
138
- padding: 1rem;
139
- }
140
- }
141
-
142
- .side-nav {
143
-
144
- >.side-nav-collection {
145
- // Border colors are meant to be reversed here,
146
- // the top is actually the bottom of the last entry
147
- border-top: @nav-border-bottom;
148
- border-bottom: @nav-border-top;
149
- }
150
-
151
- .side-nav-collection {
152
- padding: 0;
153
- margin: 0;
154
-
155
- &.is-child {
156
- display: none;
157
-
158
- .side-nav-link {
159
- padding-left: 2rem;
160
- background-color: @nav-background-child;
161
-
162
- // Sub item icons should be a bit smaller
163
- .link-icon {
164
- width: 1.1rem;
165
- font-size: 1.5rem;
166
- }
167
-
168
- &:hover {
169
- background-color: @nav-background-hover;
170
- }
171
- }
172
- }
173
- }
174
-
175
- .is-parent.is-active {
176
-
177
- // Highlight
178
- >.side-nav-link {
179
- font-weight: bold;
180
- background-color: @nav-background-hover;
181
- }
182
-
183
- // Show the possible children items
184
- .is-child {
185
- display: initial;
186
- }
187
- }
188
-
189
- // The 'li' item in an ul
190
- &-entry {
191
- display: block;
192
- }
193
-
194
- &-link {
195
- padding-left: 1rem;
196
- min-height: 3rem;
197
- text-decoration: none;
198
- color: @color-menu-text;
199
-
200
- .flexParent();
201
- align-items: center;
202
- justify-content: flex-start;
203
-
204
- border-top: @nav-border-top;
205
- border-bottom: @nav-border-bottom;
206
-
207
- &:hover {
208
- background-color: @nav-background-hover;
209
- }
210
- }
211
-
212
- .link-icon {
213
- display: inline-flex;
214
- justify-content: center;
215
- width: 1.5rem;
216
- margin-right: 0.6rem;
217
- font-size: 2rem;
218
- line-height: 0.5;
219
- }
220
- }
221
-
222
-
223
- // Side navigation component
224
- .side-nav-old {
225
- flex: 1 0 auto;
226
- .active {
227
- background-color: #009900;
228
- }
229
-
230
- &-collection {
231
-
232
- .flexParent(column, space-between, nowrap);
233
-
234
-
235
- &.is-child {
236
- // First anchor of a nested ul does not need a border top
237
- >.side-nav-link > .side-nav-text {
238
- border-top: none;
239
- }
240
-
241
- .side-nav-link > .side-nav-text {
242
- padding-left: 3.9rem;
243
- text-transform: none;
244
- }
245
- }
246
-
247
- &.hidden {
248
- display: none;
249
- }
250
- }
251
-
252
- // LI element
253
- &-link {
254
- flex: none;
255
- position: relative;
256
-
257
- // @todo: Why is this not inheriting from html?
258
- box-sizing: border-box;
259
-
260
- &:first-child {
261
-
262
- .side-nav-text {
263
- border-top: 1px solid #505050;
264
- }
265
- }
266
-
267
- &.is-parent {
268
- >.side-nav-text::after {
269
- content: attr(data-after);
270
- .fontStyle(small, normal);
271
- position: absolute;
272
- right: 1.4rem;
273
- }
274
- }
275
- }
276
-
277
- // Mostly a span or anchor
278
- &-text {
279
- display: block;
280
- width: 100%;
281
- height: 2.91rem;
282
- border-bottom: 1px solid #505050;
283
- // Animate transitions
284
- transition: all 0.1s ease-in 0.01s;
285
-
286
- .fontStyle(large, normal, normal);
287
- text-decoration: none;
288
- text-transform: uppercase;
289
- color: white;
290
- letter-spacing: -0.06rem;
291
- line-height: ~"calc(3rem - 1px)"; // Let the browser handle calc, not less
292
- padding-left: 1.652rem;
293
- line-height: 2.91rem;
294
-
295
- &:hover {
296
- background-color: #003000;
297
- }
298
-
299
- &.section {
300
- font-weight: 400;
301
- }
302
- }
303
- }
304
-
305
- .side-nav svg,
306
- .page-topbar svg {
307
- fill: @color-menu-text;
308
- }
309
-
310
- .side-nav x-svg {
311
- height: 1.7rem;
312
- }
313
-
314
- .page-topbar {
315
- .list-info {
316
- font-size: 0.9rem;
317
- padding: 0 0.5rem;
318
- margin: 0;
319
-
320
- .info-icon {
321
- transform: scale(0.9);
322
- }
323
- }
324
- }
325
-
326
- x-panel {
327
- background-color: #FFFFFF;
328
- color: #646464;
329
- fill: #646464;
330
-
331
- &-header, &-actions {
332
- background-color: #EFEFEF;
333
- }
334
-
335
- &-actions {
336
- .flexChild(1 1 auto);
337
- .flexParent(row, flex-end);
338
- padding: 1rem 1.1rem 1rem 0;
339
- align-items: center;
340
- }
341
-
342
- &-header {
343
- .flexChild(1 0 auto);
344
- text-transform: uppercase;
345
- padding: 1rem 0 1rem 1.1rem;
346
- font-size: 1.5rem;
347
- }
348
-
349
- &-action,
350
- &-body {
351
- .table {
352
- margin-bottom: 0;
353
- }
354
- }
355
-
356
- &[tabs] {
357
- x-panel-tabs,
358
- x-panel-action {
359
- background-color: transparent;
360
- border-bottom: 1px solid #e9e9e9;
361
- min-height: 3rem;
362
- }
363
- }
364
-
365
- &-action {
366
- .btn {
367
- opacity: 0.6;
368
- padding: 0 1rem;
369
-
370
- &:hover {
371
- opacity: 1;
372
- }
373
- }
374
- }
375
-
376
- &-tabs {
377
- padding: 0 !important;
378
- .flexParent(row, flex-start);
379
-
380
- a {
381
- text-decoration: none;
382
- margin-right: 0;
383
- padding: 0 0.86rem;
384
- min-height: inherit;
385
- display: flex;
386
- align-items: center;
387
- color: #646464;
388
- font-weight: 600;
389
- border: 0;
390
- .flexChild(0 0 auto);
391
- -webkit-transition: all .15s ease-out;
392
- transition: all .15s ease-out;
393
-
394
- &:hover,
395
- &.active {
396
- -webkit-box-shadow: 0 2px #5c90d2;
397
- box-shadow: 0 2px #5c90d2;
398
- }
399
- }
400
- }
401
- }
402
-
403
- .panel-third {
404
- max-width: 33%;
405
- }
406
-
407
- .al-switch-checkbox+.al-switch-span {
408
- background-color: @color-danger;
409
- }
410
-
411
- .al-switch-checkbox:checked+.al-switch-span {
412
- background-color: @color-success;
413
- }
414
-
415
- .list-info {
416
- // Remove list styling
417
- .list-unstyled;
418
-
419
- &.list-horizontal {
420
- .flexParent(row, space-around);
421
-
422
- li:not(:last-child) {
423
- margin-right: 1rem;
424
- }
425
- }
426
-
427
- &:not(.list-horizontal) > li {
428
- margin-bottom: 2rem;
429
- }
430
-
431
- &.has-icons {
432
- > li {
433
- .flexParent(column, space-between);
434
- position: relative;
435
- padding-left: 3.5rem;
436
- }
437
-
438
- .info-icon {
439
- .flexChild(1 0 100%);
440
- position: absolute;
441
- top: 0;
442
- right: 0;
443
- bottom: 0;
444
- left: 0;
445
- max-width: 3rem;
446
-
447
- x-svg {
448
- width: 100%;
449
- height: 100%;
450
- }
451
- }
452
- }
453
-
454
- .info-title,
455
- .info-value {
456
- margin: 0;
457
- }
458
-
459
- .info-title {
460
- text-transform: uppercase;
461
- color: #999;
462
- }
463
-
464
- .info-value {
465
- color: #646464;
466
- }
467
- }
468
-
469
- // Tables
470
- .table {
471
- width: 100%;
472
- max-width: 100%;
473
- margin-bottom: 1.5rem;
474
- background-color: transparent;
475
-
476
- th.text-center {
477
- text-align: center;
478
- }
479
-
480
- tr > th {
481
- padding: 1.1rem 0.7rem 0.9rem;
482
- font-size: 1rem;
483
- font-weight: 600;
484
- text-transform: uppercase;
485
- vertical-align: bottom;
486
- text-align: left;
487
-
488
- a {
489
- text-decoration: none;
490
- color: inherit;
491
- }
492
- }
493
-
494
- > thead > tr,
495
- > tbody > tr,
496
- > tfoot > tr {
497
- > th, > td {
498
- padding: 0.9rem 0.7rem;
499
- border-top: 1px solid #f0f0f0;
500
- }
501
- }
502
-
503
- > thead > tr > th {
504
- border-top: 0;
505
- border-bottom: 1px solid #ddd;
506
- }
507
-
508
- &-bordered {
509
- border: 1px solid #e9e9e9;
510
-
511
- &>thead>tr>th,
512
- &>thead>tr>td {
513
- border-bottom-width: 1px;
514
- border-bottom-color: #e9e9e9;
515
- }
516
-
517
- &>thead>tr>th, &>tbody>tr>th, &>tfoot>tr>th, &>thead>tr>td, &>tbody>tr>td, &>tfoot>tr>td {
518
- border: 1px solid #f0f0f0;
519
- }
520
- }
521
-
522
- &-striped > tbody > tr:nth-of-type(odd) {
523
- background-color: #f9f9f9;
524
- }
525
-
526
- &-hover > tbody > tr:hover {
527
- background-color: #f5f5f5;
528
- }
529
- }
530
-
531
- // Create a color style
532
- .colorStyle(@bg: @color-default, @dark-text: @color-dark, @light-text: @color-light) {
533
- background-color: @bg;
534
- border-color: darken(@bg, 10%);
535
- color: contrast(@bg, @dark-text, @light-text);
536
- fill: contrast(@bg, @dark-text, @light-text);
537
- }
538
-
539
- // Create a style for buttons
540
- .buttonStyle(@bg: @color-default, @dark-text: @color-dark, @light-text: @color-light) {
541
- .colorStyle(@bg, @dark-text, @light-text);
542
-
543
- &:hover,
544
- &:focus {
545
- background-color: darken(@bg, 10%);
546
- border-color: darken(@bg, 20%);
547
- }
548
-
549
- &.selected,
550
- &:active {
551
- background-color: darken(@bg, 20%);
552
- border-color: darken(@bg, 30%);
553
- }
554
- }
555
-
556
- // Butons
557
- .btn {
558
- display: inline-block;
559
- padding: 0.5rem 1rem;
560
- margin-bottom: 0;
561
- font-size: 1rem;
562
- line-height: 1.42857143;
563
- text-align: center;
564
- white-space: nowrap;
565
- vertical-align: middle;
566
- -ms-touch-action: manipulation;
567
- touch-action: manipulation;
568
- cursor: pointer;
569
- -webkit-user-select: none;
570
- -moz-user-select: none;
571
- -ms-user-select: none;
572
- user-select: none;
573
- background-image: none;
574
- border: 0.1rem solid transparent;
575
- border-radius: 0.29rem;
576
-
577
- font-weight: 600;
578
- -webkit-transition: all .15s ease-out;
579
- transition: all .15s ease-out;
580
-
581
- i {
582
- margin-right: 0.2rem;
583
- vertical-align: middle;
584
- display: inline-flex;
585
- height: 1.1rem;
586
- width: 1.1rem;
587
-
588
- x-svg {
589
- height: 100%;
590
- }
591
- }
592
-
593
- &:active,
594
- &:focus {
595
- outline: 0;
596
- }
597
-
598
- &-default {
599
- .buttonStyle();
600
- }
601
-
602
- &-success {
603
- .buttonStyle(@color-success);
604
- }
605
-
606
- &-warning {
607
- .buttonStyle(@color-warning);
608
- }
609
-
610
- &-info {
611
- .buttonStyle(@color-info);
612
- }
613
-
614
- &-danger {
615
- .buttonStyle(@color-danger);
616
- }
617
-
618
- &-primary {
619
- .buttonStyle(@color-primary);
620
- }
621
-
622
- x-svg {
623
- display: inline-flex;
624
- justify-content: center;
625
- width: 1rem;
626
- height: 1rem;
627
- margin-right: .1rem;
628
- vertical-align: middle;
629
- }
630
- }
631
-
632
- // Form controls
633
- .al-input-wrapper {
634
- position: relative;
635
- display: -webkit-flex;
636
- display: flex;
637
- border-collapse: separate;
638
- margin-bottom: 1rem;
639
-
640
- .al-input {
641
- display: table-cell;
642
- position: relative;
643
- z-index: 2;
644
- float: left;
645
- width: 100%;
646
- margin-bottom: 0;
647
- }
648
- }
649
-
650
- select[value=""] {
651
- font-weight: bold;
652
- }
653
-
654
- .al-input {
655
- display: block;
656
- height: 2.4rem;
657
- padding: 0.4rem 0.85rem;
658
- line-height: 1.42857143;
659
- color: #646464;
660
- background-color: #fff;
661
- background-image: none;
662
- border: 1px solid #e6e6e6;
663
- border-radius: 0.29rem;
664
- -webkit-transition: all .15s ease-out;
665
- transition: all .15s ease-out;
666
- }
667
-
668
- .al-prepend,
669
- .al-append {
670
- padding: 0.45rem 0.9rem;
671
- font-size: 1rem;
672
- font-weight: 400;
673
- color: #646464;
674
- text-align: center;
675
- background-color: @color-default;
676
- border: 0.08rem solid #e6e6e6;
677
- border-radius: 0.21rem;
678
-
679
- white-space: nowrap;
680
- vertical-align: middle;
681
- }
682
-
683
- .al-append ~ .al-input {
684
- border-bottom-right-radius: 0;
685
- border-top-right-radius: 0;
686
- }
687
-
688
- .al-prepend {
689
- border-right: 0;
690
- border-bottom-right-radius: 0;
691
- border-top-right-radius: 0;
692
- }
693
-
694
- .al-prepend + .al-input {
695
- border-bottom-left-radius: 0;
696
- border-top-left-radius: 0;
697
- }
698
-
699
- .al-append {
700
- border-left: 0;
701
- border-bottom-left-radius: 0;
702
- border-top-left-radius: 0;
703
- }
704
-
705
- [data-template="client/chimera_edit"] {
706
- .flexParent();
707
- align-items: flex-start;
708
-
709
- [data-template="elements/client_capability_panel"] {
710
- .flexChild(0 0 32%);
711
- }
712
- }
713
-
714
- // Style non-vertical button groups
715
- x-button-group:not([vertical]) > .btn {
716
- &:not(:first-child):not(:last-child):not(.dropdown-toggle) {
717
- border-radius: 0;
718
- }
719
-
720
- &:first-child:not(:last-child):not(.dropdown-toggle) {
721
- border-top-right-radius: 0;
722
- border-bottom-right-radius: 0;
723
- }
724
-
725
- &:last-child:not(:first-child), .btn-group>.dropdown-toggle:not(:first-child) {
726
- border-top-left-radius: 0;
727
- border-bottom-left-radius: 0;
728
- }
729
- }
730
-
731
- // Style the split button dropdown
732
- x-button-dropdown[split] {
733
- >button:first-child {
734
- border-top-right-radius: 0;
735
- border-bottom-right-radius: 0;
736
- }
737
-
738
- >button.x-dropdown-toggle {
739
- border-top-left-radius: 0;
740
- border-bottom-left-radius: 0;
741
- }
742
- }
743
-
744
- .x-dropdown-wrapper {
745
- button {
746
- border: none;
747
- background: white;
748
- padding: 0.3rem;
749
-
750
- &:hover {
751
- background: #f0f0f0;
752
- }
753
- }
754
- }
755
-
756
- .btn-group >.btn {
757
-
758
- &:hover {
759
- z-index: 2;
760
- }
761
-
762
- &+.btn {
763
- margin-left: -1px;
764
- }
765
-
766
- &:not(:first-child) {
767
- // border-left: 0;
768
- }
769
-
770
- &:not(:first-child):not(:last-child):not(.dropdown-toggle) {
771
- border-radius: 0;
772
- }
773
-
774
- &:first-child:not(:last-child):not(.dropdown-toggle) {
775
- border-top-right-radius: 0;
776
- border-bottom-right-radius: 0;
777
- }
778
-
779
- &:last-child:not(:first-child), .btn-group>.dropdown-toggle:not(:first-child) {
780
- border-top-left-radius: 0;
781
- border-bottom-left-radius: 0;
782
- }
783
- }
784
-
785
- .btn-group,
786
- .btn-group-vertical {
787
- position: relative;
788
- display: inline-block;
789
- vertical-align: middle;
790
-
791
- >.btn {
792
- position: relative;
793
- float: left;
794
-
795
- &:first-child {
796
- margin-left: 0;
797
- }
798
- }
799
- }
800
-
801
- // Checkboxes
802
- .cbx-label {
803
- margin: 0;
804
- cursor: pointer;
805
- position: relative;
806
-
807
- input {
808
- position: absolute;
809
- opacity: 0;
810
- }
811
-
812
- input+span {
813
- width: 1.43rem;
814
- height: 1.43rem;
815
- background-color: #fff;
816
- border: 1px solid #ddd;
817
- -webkit-transition: background-color .2s;
818
- transition: background-color .2s;
819
- display: inline-block;
820
- position: relative;
821
- color: transparent;
822
- vertical-align: middle;
823
-
824
-
825
- &::after {
826
- top: 0;
827
- right: 0;
828
- bottom: 0;
829
- left: 0;
830
- font-size: 0.8rem;
831
- line-height: 1.25rem;
832
- content: "✔";
833
- text-align: center;
834
- position: absolute;
835
- }
836
- }
837
-
838
- // Default style
839
- input:checked + span {
840
- .colorStyle();
841
- }
842
-
843
- &-success input:checked + span {
844
- .colorStyle(@color-success);
845
- }
846
-
847
- &-warning input:checked + span {
848
- .colorStyle(@color-warning);
849
- }
850
-
851
- &-info input:checked + span {
852
- .colorStyle(@color-info);
853
- }
854
-
855
- &-danger input:checked + span {
856
- .colorStyle(@color-danger);
857
- }
858
-
859
- &-primary input:checked + span {
860
- .colorStyle(@color-primary);
861
- }
862
- }
863
-
864
- .model-list,
865
- .model-list-panel {
866
- .btn-inline x-svg {
867
- width: 1.5rem;
868
- height: 1.5rem;
869
- }
870
- }
871
-
872
- // Model list table
873
- .model-list {
874
-
875
- .model-list-checkbox {
876
- text-align: center;
877
- width: 5rem;
878
- }
879
-
880
- .record-actions {
881
- text-align: right;
882
- max-width: 14rem;
883
- }
884
-
885
- .btn-inline:last-child {
886
- padding-right: 0;
887
- }
888
- }
889
-
890
- .model-list-panel {
891
- x-panel-footer {
892
- display: flex;
893
- justify-content: space-between;
894
-
895
- .al-p-info,
896
- nav.al-pagination {
897
- flex: 0 0 auto;
898
- }
899
- }
900
- }
901
-
902
- // Pagination
903
- .al-pagination {
904
-
905
- a {
906
- text-decoration: none;
907
- color: inherit;
908
- }
909
-
910
- .al-p-link {
911
- display: inline-block;
912
- margin: 0 0 0.35rem 0.35rem;
913
- min-width: 1.71rem;
914
- padding: 0.43rem 0.86rem;
915
- }
916
-
917
- .al-p-active,
918
- .al-p-link:not(.al-p-inactive-arrow):not(.al-p-inactive):hover {
919
- background-color: #f9f9f9;
920
- box-shadow: 0 2px #5c90d2;
921
- color: #5c90d2;
922
- }
923
- }
924
-
925
- .al-p-inactive-arrow {
926
- cursor: not-allowed;
927
- }
928
-
929
- .model-list-record {
930
- .chimeraField-intake {
931
- float: none;
932
- width: auto;
933
- }
934
- }
935
-
936
- .chimeraField {
937
-
938
- &-container {
939
-
940
- }
941
-
942
- &-label {
943
- font-weight: bold;
944
- }
945
-
946
- &-prime.selectize-control {
947
- width: 100%;
948
- }
949
-
950
- &-row {
951
- .clearfix();
952
- margin-bottom: 1rem;
953
- }
954
-
955
- &-left {
956
- float: left;
957
- width: 9rem;
958
- text-align: right;
959
- margin-right: 1rem;
960
- padding-top: 0.375rem;
961
- }
962
-
963
- &-intake {
964
- float: left;
965
- width: ~"calc(100% - 10rem)";
966
- }
967
-
968
- &-entry {
969
- display: flex;
970
-
971
- .chimera-schema-field {
972
- -webkit-flex: 1 0 auto;
973
- flex: 1 0 auto;
974
- }
975
- }
976
-
977
- &-string {
978
- padding: 0.375rem 0.75rem;
979
- border: none;
980
- height: 2rem;
981
- width: 100%;
982
- margin-bottom:0.375rem;
983
-
984
- color: #646464;
985
- border: 1px solid #e6e6e6;
986
- border-radius: 3px;
987
- -webkit-box-shadow: none;
988
- box-shadow: none;
989
- -webkit-transition: all .15s ease-out;
990
- transition: all .15s ease-out;
991
- }
992
-
993
- &-wysiwyg {
994
- .clearfix();
995
- padding: 0.375rem 0.75rem;
996
- min-height: 10rem;
997
- background-color: white;
998
- width: 100%;
999
- border: 1px solid #e6e6e6;
1000
- border-radius: 3px;
1001
-
1002
- p{
1003
- margin-bottom: 10px;
1004
- }
1005
- ul{
1006
- padding-left: 17px;
1007
- }
1008
- }
1009
- }
1010
-
1011
-
1012
- // .chimeraEditor should not be used for fields anymore, those go in .chimeraField
1013
- .chimeraEditor {
1014
- margin-top: 2.3rem;
1015
-
1016
- &-header {
1017
- align-items: flex-end;
1018
- margin-bottom: 1rem;
1019
- }
1020
-
1021
- &-fieldGroup {
1022
- .clearfix();
1023
- margin-bottom: 1rem;
1024
- }
1025
-
1026
- &-fieldLabel {
1027
- float: left;
1028
- width: 9rem;
1029
- text-align: right;
1030
- margin-right: 1rem;
1031
- padding-top: 0.375rem;
1032
- font-weight: bold;
1033
- }
1034
-
1035
- &-fieldWrap {
1036
- float: left;
1037
- width: ~"calc(100% - 10rem)";
1038
- }
1039
-
1040
- &-input {
1041
- padding: 0.375rem 0.75rem;
1042
- border: none;
1043
- height: 2rem;
1044
- width: 100%;
1045
- }
1046
-
1047
- &-boolean {
1048
- width: 3rem;
1049
- text-align: center;
1050
- color: white;
1051
- text-transform: uppercase;
1052
- font-size: 0.9rem;
1053
- }
1054
-
1055
- &-footer {
1056
- align-items: flex-end;
1057
- margin-top: 1rem;
1058
- }
1059
- }
1060
-
1061
- .chimeraEditor-subschema {
1062
- .clearfix();
1063
- }
1064
-
1065
- tr.filters {
1066
- input {
1067
- width: 100%;
1068
- }
1069
- }
1070
-
1071
- .hide-translate-buttons {
1072
- .chimeraField-prefix-buttons {
1073
- display: none;
1074
- }
1075
- }