SiteOrigin CSS - Version 1.2.0

Version Description

  • 6 June 2018 =
  • Updated CSS library.
  • UI changes to make it more obvious when viewing revision.
  • Ensure revisions are sorted in descending time order.
  • Don't link to revision currently being displayed.
  • Add search functionality to editor.
  • Enable persistent search and JumpToLine.
Download this release

Release Info

Developer gpriday
Plugin Icon 128x128 SiteOrigin CSS
Version 1.2.0
Comparing to
See all releases

Code changes from version 1.1.5 to 1.2.0

css/admin.css CHANGED
@@ -1,645 +1,645 @@
1
- #siteorigin-custom-css {
2
- color: #333;
3
- margin: 0 0 0 -20px;
4
- }
5
- #siteorigin-custom-css h2 {
6
- background: #f8f8f8;
7
- padding: 20px;
8
- border-bottom: 1px solid #d0d0d0;
9
- margin-bottom: 20px;
10
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.035);
11
- }
12
- #siteorigin-custom-css h2 .icon {
13
- width: 40px;
14
- height: auto;
15
- margin: -8px 10px -8px 0;
16
- }
17
- #siteorigin-custom-css .updated {
18
- margin: 0 20px 20px 20px ;
19
- }
20
- #siteorigin-custom-css #poststuff {
21
- padding: 0 20px;
22
- }
23
- #siteorigin-custom-css #poststuff .postbox {
24
- border: 1px solid #D0D0D0;
25
- }
26
- #siteorigin-custom-css #poststuff .postbox h3.hndle {
27
- cursor: default;
28
- border-bottom: 1px solid #D0D0D0;
29
- background: #efefef;
30
- position: relative;
31
- }
32
- #siteorigin-custom-css #poststuff .postbox h3.hndle .hide {
33
- position: absolute;
34
- top: 50%;
35
- line-height: 1em;
36
- margin-top: -0.5em;
37
- right: 12px;
38
- }
39
- #siteorigin-custom-css #poststuff #so-custom-css-getting-started .inside {
40
- padding: 0 6px 6px 6px;
41
- }
42
- #siteorigin-custom-css #poststuff #so-custom-css-getting-started .inside img {
43
- display: block;
44
- width: 100%;
45
- height: auto;
46
- }
47
- #so-custom-css-form {
48
- margin-right: 340px;
49
- }
50
- #so-custom-css-info {
51
- width: 315px;
52
- float: right;
53
- }
54
- #so-custom-css-info *:first-child {
55
- margin-top: 0;
56
- }
57
- #so-custom-css-info *:last-child {
58
- margin-bottom: 0;
59
- }
60
- #so-custom-css-revisions ol {
61
- list-style: none;
62
- margin: 0;
63
- }
64
- #so-custom-css-revisions ol li {
65
- margin: 0;
66
- line-height: 2.2em;
67
- }
68
- #so-custom-css-form .custom-css-preview iframe,
69
- #so-custom-css-form .custom-css-preview #preview-navigator {
70
- display: none;
71
- }
72
- #so-custom-css-form .custom-css-toolbar {
73
- border: 1px solid #D0D0D0;
74
- border-bottom: none;
75
- background: #efefef;
76
- padding: 8px 10px;
77
- overflow: auto;
78
- }
79
- #so-custom-css-form .custom-css-toolbar .toolbar-function-buttons {
80
- float: left;
81
- }
82
- #so-custom-css-form .custom-css-toolbar .toolbar-function-buttons .toolbar-functions-dropdown {
83
- display: none;
84
- }
85
- #so-custom-css-form .custom-css-toolbar .toolbar-function-buttons ul.toolbar-buttons {
86
- margin: 0;
87
- }
88
- #so-custom-css-form .custom-css-toolbar .toolbar-function-buttons ul.toolbar-buttons li {
89
- display: inline-block;
90
- margin: 0;
91
- padding: 0;
92
- }
93
- #so-custom-css-form .custom-css-toolbar .toolbar-action-buttons {
94
- float: right;
95
- }
96
- #so-custom-css-form .custom-css-toolbar .toolbar-action-buttons a.active {
97
- border-color: #b4c4cf;
98
- background-color: #e9f9ff;
99
- color: #596872;
100
- }
101
- #so-custom-css-form .custom-css-toolbar .toolbar-action-buttons .editor-expand {
102
- float: right;
103
- text-decoration: none;
104
- color: #666;
105
- }
106
- #so-custom-css-form .custom-css-toolbar .toolbar-action-buttons .editor-expand .fa-compress {
107
- display: none;
108
- }
109
- #so-custom-css-form .custom-css-toolbar .fa {
110
- font-size: 14px;
111
- }
112
- #so-custom-css-form .custom-css-container {
113
- border: 1px solid #D0D0D0;
114
- background: #f7f7f7;
115
- cursor: text;
116
- overflow: hidden;
117
- }
118
- #so-custom-css-form .custom-css-container .CodeMirror {
119
- height: auto;
120
- }
121
- #so-custom-css-form .custom-css-container .CodeMirror-scroll {
122
- min-height: 300px;
123
- }
124
- #so-custom-css-form .custom-css-container .CodeMirror-lines {
125
- padding: 8px 0 8px 0;
126
- }
127
- #so-custom-css-form .custom-css-container textarea {
128
- border: 0;
129
- padding: 8px 0 8px 4px;
130
- width: 100%;
131
- min-height: 300px;
132
- display: block;
133
- font-family: monospace;
134
- font-size: 13px;
135
- line-height: 1.4em;
136
- border-left: 1px solid #ddd;
137
- margin-left: 16px;
138
- }
139
- #so-custom-css-form .decoration {
140
- display: none;
141
- }
142
- #so-custom-css-form.expanded {
143
- z-index: 100000;
144
- position: fixed;
145
- top: 0;
146
- left: 0;
147
- bottom: 0;
148
- width: 340px;
149
- }
150
- #so-custom-css-form.expanded .custom-css-toolbar .editor-expand .fa-expand {
151
- display: none;
152
- }
153
- #so-custom-css-form.expanded .custom-css-toolbar .editor-expand .fa-compress {
154
- display: inline-block;
155
- }
156
- #so-custom-css-form.expanded .decoration {
157
- display: block;
158
- position: absolute;
159
- top: 0;
160
- bottom: 0;
161
- left: 339px;
162
- width: 2px;
163
- background: rgba(0, 0, 0, 0.1);
164
- }
165
- #so-custom-css-form.expanded .description {
166
- display: none;
167
- }
168
- #so-custom-css-form.expanded .submit {
169
- display: none;
170
- }
171
- #so-custom-css-form.expanded .custom-css-preview {
172
- position: fixed;
173
- display: block;
174
- top: 40px;
175
- right: 0;
176
- bottom: 0;
177
- left: 340px;
178
- background: #ffffff;
179
- }
180
- #so-custom-css-form.expanded .custom-css-preview #preview-navigator {
181
- display: block;
182
- -ms-box-sizing: border-box;
183
- -moz-box-sizing: border-box;
184
- -webkit-box-sizing: border-box;
185
- box-sizing: border-box;
186
- padding: 6px 10px;
187
- position: absolute;
188
- width: 100%;
189
- height: 40px;
190
- top: -40px;
191
- background: #bbb;
192
- background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #bbb), color-stop(1, #eee));
193
- background: -ms-linear-gradient(bottom, #bbb, #eee);
194
- background: -moz-linear-gradient(center bottom, #bbb 0%, #eee 100%);
195
- background: -o-linear-gradient(#eee, #bbb);
196
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eee', endColorstr='#bbb', GradientType=0);
197
- border-bottom: 1px solid #888;
198
- }
199
- #so-custom-css-form.expanded .custom-css-preview #preview-navigator input {
200
- width: 100%;
201
- border: 1px solid #888;
202
- border-radius: 2px;
203
- color: #444;
204
- -webkit-box-shadow: inset 2px 2px 2px rgba( 0,0,0,0.1 );
205
- -moz-box-shadow: inset 2px 2px 2px rgba( 0,0,0,0.1 );
206
- box-shadow: inset 2px 2px 2px rgba( 0,0,0,0.1 );
207
- }
208
- #so-custom-css-form.expanded .custom-css-preview #preview-iframe {
209
- display: block;
210
- width: 100%;
211
- height: 100%;
212
- overflow-x: hidden;
213
- }
214
- #so-custom-css-properties {
215
- display: none;
216
- position: fixed;
217
- top: 0;
218
- left: -338px;
219
- bottom: 0;
220
- width: 338px;
221
- background: #ffffff;
222
- border: 1px solid #D0D0D0;
223
- overflow-y: auto;
224
- z-index: 100000;
225
- }
226
- #so-custom-css-properties .toolbar {
227
- display: block;
228
- padding: 7px 10px;
229
- border-bottom: 1px solid #aaa;
230
- background: #F6F6F6;
231
- text-align: left;
232
- }
233
- #so-custom-css-properties .toolbar select {
234
- line-height: 1;
235
- font-size: 13px;
236
- max-width: 265px;
237
- -webkit-transition: all 0.5s ease;
238
- -moz-transition: all 0.5s ease;
239
- -o-transition: all 0.5s ease;
240
- transition: all 0.5s ease;
241
- }
242
- #so-custom-css-properties .toolbar select.highlighted {
243
- background: #daeaf7;
244
- }
245
- #so-custom-css-properties .toolbar .close {
246
- float: right;
247
- margin: 2px 4px 0 0;
248
- }
249
- #so-custom-css-properties .section-tabs {
250
- list-style: none;
251
- height: auto;
252
- margin: 0;
253
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
254
- }
255
- #so-custom-css-properties .section-tabs li {
256
- box-sizing: border-box;
257
- float: left;
258
- width: 33.333%;
259
- padding: 10px 7px;
260
- border: 1px solid #aaa;
261
- background: #F6F6F6;
262
- font-weight: bold;
263
- border-top: 0;
264
- border-left: 0;
265
- font-size: 13px;
266
- line-height: 1em;
267
- cursor: pointer;
268
- white-space: nowrap;
269
- overflow: hidden;
270
- color: #666;
271
- }
272
- #so-custom-css-properties .section-tabs li:hover {
273
- background: #fff;
274
- }
275
- #so-custom-css-properties .section-tabs li .fa {
276
- float: left;
277
- display: block;
278
- margin: -1px 6px -1px 0;
279
- font-size: 15px;
280
- color: #666;
281
- }
282
- #so-custom-css-properties .section-tabs li:last-child {
283
- border-right: 0;
284
- }
285
- #so-custom-css-properties .section-tabs li.active {
286
- color: #444;
287
- background: #e8e8e8;
288
- }
289
- #so-custom-css-properties .section-tabs li.active .fa {
290
- color: #333;
291
- }
292
- #so-custom-css-properties .sections .section {
293
- display: none;
294
- padding: 10px;
295
- }
296
- #so-custom-css-properties .sections .fields-table {
297
- width: 100%;
298
- padding-top: 5px;
299
- }
300
- #so-custom-css-properties .sections .fields-table th,
301
- #so-custom-css-properties .sections .fields-table td {
302
- position: relative;
303
- zoom: 1;
304
- }
305
- #so-custom-css-properties .sections .fields-table th:before,
306
- #so-custom-css-properties .sections .fields-table td:before {
307
- content: '';
308
- display: block;
309
- }
310
- #so-custom-css-properties .sections .fields-table th:after,
311
- #so-custom-css-properties .sections .fields-table td:after {
312
- content: '';
313
- display: table;
314
- clear: both;
315
- }
316
- #so-custom-css-properties .sections .fields-table th[scope="row"] {
317
- font-weight: bold;
318
- font-size: 12px;
319
- padding-right: 10px;
320
- text-align: left;
321
- width: 36%;
322
- vertical-align: top;
323
- }
324
- #so-custom-css-properties .sections .fields-table td {
325
- padding: 0 0 12px 0 ;
326
- }
327
- #so-custom-css-properties .sections .fields-table input,
328
- #so-custom-css-properties .sections .fields-table select {
329
- display: block;
330
- margin: 0 25px 0 0;
331
- border: 1px solid #c0c0c0;
332
- width: 175px;
333
- box-sizing: border-box;
334
- border-radius: 0;
335
- font-size: 12px;
336
- padding: 5px 8px;
337
- }
338
- #so-custom-css-properties .sections .fields-table .minicolors input {
339
- box-sizing: border-box;
340
- height: 30px;
341
- padding: 5px 0 5px 30px;
342
- }
343
- #so-custom-css-properties .sections .fields-table .select {
344
- display: block;
345
- position: absolute;
346
- top: 0px;
347
- right: 1px;
348
- padding: 5px;
349
- cursor: pointer;
350
- font-size: 15px;
351
- }
352
- #so-custom-css-properties .sections .fields-table .select-tabs {
353
- margin: 0;
354
- height: 40px;
355
- }
356
- #so-custom-css-properties .sections .fields-table .select-tabs .select-tab {
357
- cursor: pointer;
358
- float: left;
359
- -webkit-box-sizing: border-box;
360
- -moz-box-sizing: border-box;
361
- box-sizing: border-box;
362
- text-align: center;
363
- border: 1px solid #c0c0c0;
364
- padding: 4px 2px;
365
- border-right-width: 0;
366
- background: #f7f7f7;
367
- }
368
- #so-custom-css-properties .sections .fields-table .select-tabs .select-tab .fa {
369
- line-height: 14px;
370
- font-size: 14px;
371
- color: #777;
372
- }
373
- #so-custom-css-properties .sections .fields-table .select-tabs .select-tab:last-child {
374
- border-right-width: 1px;
375
- }
376
- #so-custom-css-properties .sections .fields-table .select-tabs .select-tab:hover,
377
- #so-custom-css-properties .sections .fields-table .select-tabs .select-tab.active {
378
- background: #e9e9e9;
379
- }
380
- #so-custom-css-properties .sections .fields-table .select-tabs .select-tab:hover .fa,
381
- #so-custom-css-properties .sections .fields-table .select-tabs .select-tab.active .fa {
382
- color: #333;
383
- }
384
- #so-custom-css-properties .sections .fields-table .side-tabs {
385
- height: 26px;
386
- }
387
- #so-custom-css-properties .sections .fields-table .side-tabs .side-tab {
388
- width: 20%;
389
- text-align: center;
390
- padding: 5px;
391
- line-height: 0;
392
- }
393
- #so-custom-css-properties .sections .fields-table .side-tabs .side-tab div {
394
- display: inline-block;
395
- width: 10px;
396
- height: 10px;
397
- border: 2px solid #aaa;
398
- }
399
- #so-custom-css-properties .sections .fields-table .side-tabs .side-tab .spacing-all {
400
- border-color: #12609b;
401
- }
402
- #so-custom-css-properties .sections .fields-table .side-tabs .side-tab .spacing-top {
403
- border-top-color: #12609b;
404
- }
405
- #so-custom-css-properties .sections .fields-table .side-tabs .side-tab .spacing-left {
406
- border-left-color: #12609b;
407
- }
408
- #so-custom-css-properties .sections .fields-table .side-tabs .side-tab .spacing-bottom {
409
- border-bottom-color: #12609b;
410
- }
411
- #so-custom-css-properties .sections .fields-table .side-tabs .side-tab .spacing-right {
412
- border-right-color: #12609b;
413
- }
414
- #so-custom-css-properties .sections .fields-table .sides .side > div {
415
- margin-bottom: 5px;
416
- }
417
- #so-custom-css-properties .sections .fields-table .sides .side > div:last-child {
418
- margin-bottom: 0;
419
- }
420
- .css-editor-snippet-browser {
421
- display: none;
422
- }
423
- .css-editor-snippet-browser .snippet-browser-overlay {
424
- position: fixed;
425
- z-index: 100000;
426
- top: 0;
427
- left: 0;
428
- right: 0;
429
- bottom: 0;
430
- background: rgba(0, 0, 0, 0.8);
431
- }
432
- .css-editor-snippet-browser .snippet-browser-dialog > div {
433
- position: fixed;
434
- z-index: 100001;
435
- background: #fff;
436
- box-sizing: border-box;
437
- }
438
- .css-editor-snippet-browser .snippet-browser-dialog .toolbar {
439
- top: 40px;
440
- left: 40px;
441
- right: 40px;
442
- height: 50px;
443
- background: #FCFCFC;
444
- border-bottom: 1px solid #dddddd;
445
- overflow: hidden;
446
- }
447
- .css-editor-snippet-browser .snippet-browser-dialog .toolbar h1 {
448
- padding: 0 16px;
449
- font-size: 22px;
450
- line-height: 50px;
451
- margin: 0;
452
- color: #444;
453
- }
454
- .css-editor-snippet-browser .snippet-browser-dialog .toolbar .close {
455
- cursor: pointer;
456
- color: #777;
457
- background-color: transparent;
458
- height: 50px;
459
- width: 50px;
460
- padding: 15px 0 0 0;
461
- position: absolute;
462
- text-align: center;
463
- border: 0;
464
- border-left: 1px solid #ddd;
465
- top: 0;
466
- right: 0;
467
- text-decoration: none;
468
- box-sizing: border-box;
469
- }
470
- .css-editor-snippet-browser .snippet-browser-dialog .toolbar .close:hover {
471
- background: #dddddd;
472
- }
473
- .css-editor-snippet-browser .snippet-browser-dialog .toolbar .close .icon:before {
474
- content: '\f158';
475
- font: normal 20px/1 'dashicons';
476
- vertical-align: middle;
477
- -webkit-font-smoothing: antialiased;
478
- -moz-osx-font-smoothing: grayscale;
479
- color: #666;
480
- }
481
- .css-editor-snippet-browser .snippet-browser-dialog .sidebar {
482
- top: 90px;
483
- left: 40px;
484
- bottom: 90px;
485
- width: 300px;
486
- background: #f3f3f3;
487
- border-right: 1px solid #dddddd;
488
- padding: 16px;
489
- overflow: auto;
490
- }
491
- .css-editor-snippet-browser .snippet-browser-dialog .sidebar .snippet-search {
492
- width: 100%;
493
- margin-bottom: 20px;
494
- padding: 8px;
495
- }
496
- .css-editor-snippet-browser .snippet-browser-dialog .sidebar .snippets {
497
- margin: 0;
498
- }
499
- .css-editor-snippet-browser .snippet-browser-dialog .sidebar .snippets .snippet {
500
- cursor: pointer;
501
- font-size: 1.1em;
502
- line-height: 1.35em;
503
- margin-bottom: 20px;
504
- }
505
- .css-editor-snippet-browser .snippet-browser-dialog .sidebar .snippets .snippet.active {
506
- font-weight: bold;
507
- }
508
- .css-editor-snippet-browser .snippet-browser-dialog .main {
509
- top: 90px;
510
- left: 340px;
511
- right: 40px;
512
- bottom: 90px;
513
- background: #fff;
514
- overflow: auto;
515
- }
516
- .css-editor-snippet-browser .snippet-browser-dialog .main .snippet-view {
517
- padding: 20px;
518
- }
519
- .css-editor-snippet-browser .snippet-browser-dialog .main .snippet-view .snippet-title {
520
- margin: 0 0 0.75em 0;
521
- padding: 0;
522
- }
523
- .css-editor-snippet-browser .snippet-browser-dialog .main .snippet-view .snippet-description {
524
- font-size: 1.1em;
525
- color: #666;
526
- margin-bottom: 2em;
527
- }
528
- .css-editor-snippet-browser .snippet-browser-dialog .main .snippet-view .snippet-code {
529
- padding: 20px;
530
- border: 1px solid #d0d0d0;
531
- background: #f8f8f8;
532
- }
533
- .css-editor-snippet-browser .snippet-browser-dialog .buttons {
534
- bottom: 40px;
535
- left: 40px;
536
- right: 40px;
537
- height: 50px;
538
- background: #FCFCFC;
539
- border-top: 1px solid #dddddd;
540
- text-align: right;
541
- padding: 10px 20px;
542
- overflow: hidden;
543
- }
544
- .socss-field-measurement {
545
- position: relative;
546
- }
547
- .socss-field-measurement input.socss-field-input {
548
- min-height: 1.5em;
549
- padding-right: 50px;
550
- width: 120px !important;
551
- box-sizing: border-box;
552
- }
553
- .socss-field-measurement .dashicons-arrow-down {
554
- position: absolute;
555
- top: 4px;
556
- left: 97px;
557
- cursor: pointer;
558
- }
559
- .socss-field-measurement .dropdown {
560
- display: none;
561
- background: #F5F5F5;
562
- border: 1px solid #c0c0c0;
563
- position: absolute;
564
- top: 27px;
565
- left: 71px;
566
- width: 50px;
567
- z-index: 2;
568
- margin: 0;
569
- box-sizing: border-box;
570
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
571
- }
572
- .socss-field-measurement .dropdown li {
573
- padding: 5px 0;
574
- text-align: center;
575
- line-height: 1.1em;
576
- font-size: 11px;
577
- margin: 0;
578
- }
579
- .socss-field-measurement .dropdown li:hover,
580
- .socss-field-measurement .dropdown li.active {
581
- background: #e8e8e8;
582
- cursor: pointer;
583
- }
584
- .socss-field-measurement .units {
585
- position: absolute;
586
- top: 5px;
587
- left: 12px;
588
- color: #bbb;
589
- pointer-events: none;
590
- }
591
- .socss-diw {
592
- position: absolute;
593
- top: 0px;
594
- left: 124px;
595
- }
596
- .socss-diw .inc-button,
597
- .socss-diw .dec-button {
598
- cursor: pointer;
599
- box-sizing: border-box;
600
- float: left;
601
- padding: 8px;
602
- user-select: none;
603
- text-align: center;
604
- margin: 0;
605
- width: 27px;
606
- height: 27px;
607
- font-size: 10px;
608
- }
609
- .socss-diw .inc-button {
610
- border-left: 0;
611
- }
612
- .socss-button {
613
- cursor: pointer;
614
- line-height: 1em;
615
- display: inline-block;
616
- border: 1px solid #c0c0c0;
617
- background: #f7f7f7;
618
- text-decoration: none;
619
- padding: 6px;
620
- font-weight: bold;
621
- color: #555;
622
- font-size: 0.95em;
623
- margin-left: 5px;
624
- -webkit-user-select: none;
625
- -moz-user-select: none;
626
- -ms-user-select: none;
627
- -o-user-select: none;
628
- user-select: none;
629
- }
630
- .socss-button:hover {
631
- border-color: #b0b0b0;
632
- background: #fff;
633
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
634
- }
635
- .socss-button:hover .fa {
636
- color: #333;
637
- }
638
- .socss-button .fa {
639
- color: #555;
640
- }
641
- .CodeMirror-lint-tooltip,
642
- .CodeMirror-hints {
643
- /* This is above the editor in full-screen mode */
644
- z-index: 100002;
645
- }
1
+ #siteorigin-custom-css {
2
+ color: #333;
3
+ margin: 0 0 0 -20px;
4
+ }
5
+ #siteorigin-custom-css h2 {
6
+ background: #f8f8f8;
7
+ padding: 20px;
8
+ border-bottom: 1px solid #d0d0d0;
9
+ margin-bottom: 20px;
10
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.035);
11
+ }
12
+ #siteorigin-custom-css h2 .icon {
13
+ width: 40px;
14
+ height: auto;
15
+ margin: -8px 10px -8px 0;
16
+ }
17
+ #siteorigin-custom-css .notice {
18
+ margin: 0 20px 20px 20px;
19
+ }
20
+ #siteorigin-custom-css #poststuff {
21
+ padding: 0 20px;
22
+ }
23
+ #siteorigin-custom-css #poststuff .postbox {
24
+ border: 1px solid #D0D0D0;
25
+ }
26
+ #siteorigin-custom-css #poststuff .postbox h3.hndle {
27
+ cursor: default;
28
+ border-bottom: 1px solid #D0D0D0;
29
+ background: #efefef;
30
+ position: relative;
31
+ }
32
+ #siteorigin-custom-css #poststuff .postbox h3.hndle .hide {
33
+ position: absolute;
34
+ top: 50%;
35
+ line-height: 1em;
36
+ margin-top: -0.5em;
37
+ right: 12px;
38
+ }
39
+ #siteorigin-custom-css #poststuff #so-custom-css-getting-started .inside {
40
+ padding: 0 6px 6px 6px;
41
+ }
42
+ #siteorigin-custom-css #poststuff #so-custom-css-getting-started .inside img {
43
+ display: block;
44
+ width: 100%;
45
+ height: auto;
46
+ }
47
+ #so-custom-css-form {
48
+ margin-right: 340px;
49
+ }
50
+ #so-custom-css-info {
51
+ width: 315px;
52
+ float: right;
53
+ }
54
+ #so-custom-css-info *:first-child {
55
+ margin-top: 0;
56
+ }
57
+ #so-custom-css-info *:last-child {
58
+ margin-bottom: 0;
59
+ }
60
+ #so-custom-css-revisions ol {
61
+ list-style: none;
62
+ margin: 0;
63
+ }
64
+ #so-custom-css-revisions ol li {
65
+ margin: 0;
66
+ line-height: 2.2em;
67
+ }
68
+ #so-custom-css-form .custom-css-preview iframe,
69
+ #so-custom-css-form .custom-css-preview #preview-navigator {
70
+ display: none;
71
+ }
72
+ #so-custom-css-form .custom-css-toolbar {
73
+ border: 1px solid #D0D0D0;
74
+ border-bottom: none;
75
+ background: #efefef;
76
+ padding: 8px 10px;
77
+ overflow: auto;
78
+ }
79
+ #so-custom-css-form .custom-css-toolbar .toolbar-function-buttons {
80
+ float: left;
81
+ }
82
+ #so-custom-css-form .custom-css-toolbar .toolbar-function-buttons .toolbar-functions-dropdown {
83
+ display: none;
84
+ }
85
+ #so-custom-css-form .custom-css-toolbar .toolbar-function-buttons ul.toolbar-buttons {
86
+ margin: 0;
87
+ }
88
+ #so-custom-css-form .custom-css-toolbar .toolbar-function-buttons ul.toolbar-buttons li {
89
+ display: inline-block;
90
+ margin: 0;
91
+ padding: 0;
92
+ }
93
+ #so-custom-css-form .custom-css-toolbar .toolbar-action-buttons {
94
+ float: right;
95
+ }
96
+ #so-custom-css-form .custom-css-toolbar .toolbar-action-buttons a.active {
97
+ border-color: #b4c4cf;
98
+ background-color: #e9f9ff;
99
+ color: #596872;
100
+ }
101
+ #so-custom-css-form .custom-css-toolbar .toolbar-action-buttons .editor-expand {
102
+ float: right;
103
+ text-decoration: none;
104
+ color: #666;
105
+ }
106
+ #so-custom-css-form .custom-css-toolbar .toolbar-action-buttons .editor-expand .fa-compress {
107
+ display: none;
108
+ }
109
+ #so-custom-css-form .custom-css-toolbar .fa {
110
+ font-size: 14px;
111
+ }
112
+ #so-custom-css-form .custom-css-container {
113
+ border: 1px solid #D0D0D0;
114
+ background: #f7f7f7;
115
+ cursor: text;
116
+ overflow: hidden;
117
+ }
118
+ #so-custom-css-form .custom-css-container .CodeMirror {
119
+ height: auto;
120
+ }
121
+ #so-custom-css-form .custom-css-container .CodeMirror-scroll {
122
+ min-height: 300px;
123
+ }
124
+ #so-custom-css-form .custom-css-container .CodeMirror-lines {
125
+ padding: 8px 0 8px 0;
126
+ }
127
+ #so-custom-css-form .custom-css-container textarea {
128
+ border: 0;
129
+ padding: 8px 0 8px 4px;
130
+ width: 100%;
131
+ min-height: 300px;
132
+ display: block;
133
+ font-family: monospace;
134
+ font-size: 13px;
135
+ line-height: 1.4em;
136
+ border-left: 1px solid #ddd;
137
+ margin-left: 16px;
138
+ }
139
+ #so-custom-css-form .decoration {
140
+ display: none;
141
+ }
142
+ #so-custom-css-form.expanded {
143
+ z-index: 100000;
144
+ position: fixed;
145
+ top: 0;
146
+ left: 0;
147
+ bottom: 0;
148
+ width: 340px;
149
+ }
150
+ #so-custom-css-form.expanded .custom-css-toolbar .editor-expand .fa-expand {
151
+ display: none;
152
+ }
153
+ #so-custom-css-form.expanded .custom-css-toolbar .editor-expand .fa-compress {
154
+ display: inline-block;
155
+ }
156
+ #so-custom-css-form.expanded .decoration {
157
+ display: block;
158
+ position: absolute;
159
+ top: 0;
160
+ bottom: 0;
161
+ left: 339px;
162
+ width: 2px;
163
+ background: rgba(0, 0, 0, 0.1);
164
+ }
165
+ #so-custom-css-form.expanded .description {
166
+ display: none;
167
+ }
168
+ #so-custom-css-form.expanded .submit {
169
+ display: none;
170
+ }
171
+ #so-custom-css-form.expanded .custom-css-preview {
172
+ position: fixed;
173
+ display: block;
174
+ top: 40px;
175
+ right: 0;
176
+ bottom: 0;
177
+ left: 340px;
178
+ background: #ffffff;
179
+ }
180
+ #so-custom-css-form.expanded .custom-css-preview #preview-navigator {
181
+ display: block;
182
+ -ms-box-sizing: border-box;
183
+ -moz-box-sizing: border-box;
184
+ -webkit-box-sizing: border-box;
185
+ box-sizing: border-box;
186
+ padding: 6px 10px;
187
+ position: absolute;
188
+ width: 100%;
189
+ height: 40px;
190
+ top: -40px;
191
+ background: #bbb;
192
+ background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #bbb), color-stop(1, #eee));
193
+ background: -ms-linear-gradient(bottom, #bbb, #eee);
194
+ background: -moz-linear-gradient(center bottom, #bbb 0%, #eee 100%);
195
+ background: -o-linear-gradient(#eee, #bbb);
196
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eee', endColorstr='#bbb', GradientType=0);
197
+ border-bottom: 1px solid #888;
198
+ }
199
+ #so-custom-css-form.expanded .custom-css-preview #preview-navigator input {
200
+ width: 100%;
201
+ border: 1px solid #888;
202
+ border-radius: 2px;
203
+ color: #444;
204
+ -webkit-box-shadow: inset 2px 2px 2px rgba( 0,0,0,0.1 );
205
+ -moz-box-shadow: inset 2px 2px 2px rgba( 0,0,0,0.1 );
206
+ box-shadow: inset 2px 2px 2px rgba( 0,0,0,0.1 );
207
+ }
208
+ #so-custom-css-form.expanded .custom-css-preview #preview-iframe {
209
+ display: block;
210
+ width: 100%;
211
+ height: 100%;
212
+ overflow-x: hidden;
213
+ }
214
+ #so-custom-css-properties {
215
+ display: none;
216
+ position: fixed;
217
+ top: 0;
218
+ left: -338px;
219
+ bottom: 0;
220
+ width: 338px;
221
+ background: #ffffff;
222
+ border: 1px solid #D0D0D0;
223
+ overflow-y: auto;
224
+ z-index: 100000;
225
+ }
226
+ #so-custom-css-properties .toolbar {
227
+ display: block;
228
+ padding: 7px 10px;
229
+ border-bottom: 1px solid #aaa;
230
+ background: #F6F6F6;
231
+ text-align: left;
232
+ }
233
+ #so-custom-css-properties .toolbar select {
234
+ line-height: 1;
235
+ font-size: 13px;
236
+ max-width: 265px;
237
+ -webkit-transition: all 0.5s ease;
238
+ -moz-transition: all 0.5s ease;
239
+ -o-transition: all 0.5s ease;
240
+ transition: all 0.5s ease;
241
+ }
242
+ #so-custom-css-properties .toolbar select.highlighted {
243
+ background: #daeaf7;
244
+ }
245
+ #so-custom-css-properties .toolbar .close {
246
+ float: right;
247
+ margin: 2px 4px 0 0;
248
+ }
249
+ #so-custom-css-properties .section-tabs {
250
+ list-style: none;
251
+ height: auto;
252
+ margin: 0;
253
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
254
+ }
255
+ #so-custom-css-properties .section-tabs li {
256
+ box-sizing: border-box;
257
+ float: left;
258
+ width: 33.333%;
259
+ padding: 10px 7px;
260
+ border: 1px solid #aaa;
261
+ background: #F6F6F6;
262
+ font-weight: bold;
263
+ border-top: 0;
264
+ border-left: 0;
265
+ font-size: 13px;
266
+ line-height: 1em;
267
+ cursor: pointer;
268
+ white-space: nowrap;
269
+ overflow: hidden;
270
+ color: #666;
271
+ }
272
+ #so-custom-css-properties .section-tabs li:hover {
273
+ background: #fff;
274
+ }
275
+ #so-custom-css-properties .section-tabs li .fa {
276
+ float: left;
277
+ display: block;
278
+ margin: -1px 6px -1px 0;
279
+ font-size: 15px;
280
+ color: #666;
281
+ }
282
+ #so-custom-css-properties .section-tabs li:last-child {
283
+ border-right: 0;
284
+ }
285
+ #so-custom-css-properties .section-tabs li.active {
286
+ color: #444;
287
+ background: #e8e8e8;
288
+ }
289
+ #so-custom-css-properties .section-tabs li.active .fa {
290
+ color: #333;
291
+ }
292
+ #so-custom-css-properties .sections .section {
293
+ display: none;
294
+ padding: 10px;
295
+ }
296
+ #so-custom-css-properties .sections .fields-table {
297
+ width: 100%;
298
+ padding-top: 5px;
299
+ }
300
+ #so-custom-css-properties .sections .fields-table th,
301
+ #so-custom-css-properties .sections .fields-table td {
302
+ position: relative;
303
+ zoom: 1;
304
+ }
305
+ #so-custom-css-properties .sections .fields-table th:before,
306
+ #so-custom-css-properties .sections .fields-table td:before {
307
+ content: '';
308
+ display: block;
309
+ }
310
+ #so-custom-css-properties .sections .fields-table th:after,
311
+ #so-custom-css-properties .sections .fields-table td:after {
312
+ content: '';
313
+ display: table;
314
+ clear: both;
315
+ }
316
+ #so-custom-css-properties .sections .fields-table th[scope="row"] {
317
+ font-weight: bold;
318
+ font-size: 12px;
319
+ padding-right: 10px;
320
+ text-align: left;
321
+ width: 36%;
322
+ vertical-align: top;
323
+ }
324
+ #so-custom-css-properties .sections .fields-table td {
325
+ padding: 0 0 12px 0 ;
326
+ }
327
+ #so-custom-css-properties .sections .fields-table input,
328
+ #so-custom-css-properties .sections .fields-table select {
329
+ display: block;
330
+ margin: 0 25px 0 0;
331
+ border: 1px solid #c0c0c0;
332
+ width: 175px;
333
+ box-sizing: border-box;
334
+ border-radius: 0;
335
+ font-size: 12px;
336
+ padding: 5px 8px;
337
+ }
338
+ #so-custom-css-properties .sections .fields-table .minicolors input {
339
+ box-sizing: border-box;
340
+ height: 30px;
341
+ padding: 5px 0 5px 30px;
342
+ }
343
+ #so-custom-css-properties .sections .fields-table .select {
344
+ display: block;
345
+ position: absolute;
346
+ top: 0px;
347
+ right: 1px;
348
+ padding: 5px;
349
+ cursor: pointer;
350
+ font-size: 15px;
351
+ }
352
+ #so-custom-css-properties .sections .fields-table .select-tabs {
353
+ margin: 0;
354
+ height: 40px;
355
+ }
356
+ #so-custom-css-properties .sections .fields-table .select-tabs .select-tab {
357
+ cursor: pointer;
358
+ float: left;
359
+ -webkit-box-sizing: border-box;
360
+ -moz-box-sizing: border-box;
361
+ box-sizing: border-box;
362
+ text-align: center;
363
+ border: 1px solid #c0c0c0;
364
+ padding: 4px 2px;
365
+ border-right-width: 0;
366
+ background: #f7f7f7;
367
+ }
368
+ #so-custom-css-properties .sections .fields-table .select-tabs .select-tab .fa {
369
+ line-height: 14px;
370
+ font-size: 14px;
371
+ color: #777;
372
+ }
373
+ #so-custom-css-properties .sections .fields-table .select-tabs .select-tab:last-child {
374
+ border-right-width: 1px;
375
+ }
376
+ #so-custom-css-properties .sections .fields-table .select-tabs .select-tab:hover,
377
+ #so-custom-css-properties .sections .fields-table .select-tabs .select-tab.active {
378
+ background: #e9e9e9;
379
+ }
380
+ #so-custom-css-properties .sections .fields-table .select-tabs .select-tab:hover .fa,
381
+ #so-custom-css-properties .sections .fields-table .select-tabs .select-tab.active .fa {
382
+ color: #333;
383
+ }
384
+ #so-custom-css-properties .sections .fields-table .side-tabs {
385
+ height: 26px;
386
+ }
387
+ #so-custom-css-properties .sections .fields-table .side-tabs .side-tab {
388
+ width: 20%;
389
+ text-align: center;
390
+ padding: 5px;
391
+ line-height: 0;
392
+ }
393
+ #so-custom-css-properties .sections .fields-table .side-tabs .side-tab div {
394
+ display: inline-block;
395
+ width: 10px;
396
+ height: 10px;
397
+ border: 2px solid #aaa;
398
+ }
399
+ #so-custom-css-properties .sections .fields-table .side-tabs .side-tab .spacing-all {
400
+ border-color: #12609b;
401
+ }
402
+ #so-custom-css-properties .sections .fields-table .side-tabs .side-tab .spacing-top {
403
+ border-top-color: #12609b;
404
+ }
405
+ #so-custom-css-properties .sections .fields-table .side-tabs .side-tab .spacing-left {
406
+ border-left-color: #12609b;
407
+ }
408
+ #so-custom-css-properties .sections .fields-table .side-tabs .side-tab .spacing-bottom {
409
+ border-bottom-color: #12609b;
410
+ }
411
+ #so-custom-css-properties .sections .fields-table .side-tabs .side-tab .spacing-right {
412
+ border-right-color: #12609b;
413
+ }
414
+ #so-custom-css-properties .sections .fields-table .sides .side > div {
415
+ margin-bottom: 5px;
416
+ }
417
+ #so-custom-css-properties .sections .fields-table .sides .side > div:last-child {
418
+ margin-bottom: 0;
419
+ }
420
+ .css-editor-snippet-browser {
421
+ display: none;
422
+ }
423
+ .css-editor-snippet-browser .snippet-browser-overlay {
424
+ position: fixed;
425
+ z-index: 100000;
426
+ top: 0;
427
+ left: 0;
428
+ right: 0;
429
+ bottom: 0;
430
+ background: rgba(0, 0, 0, 0.8);
431
+ }
432
+ .css-editor-snippet-browser .snippet-browser-dialog > div {
433
+ position: fixed;
434
+ z-index: 100001;
435
+ background: #fff;
436
+ box-sizing: border-box;
437
+ }
438
+ .css-editor-snippet-browser .snippet-browser-dialog .toolbar {
439
+ top: 40px;
440
+ left: 40px;
441
+ right: 40px;
442
+ height: 50px;
443
+ background: #FCFCFC;
444
+ border-bottom: 1px solid #dddddd;
445
+ overflow: hidden;
446
+ }
447
+ .css-editor-snippet-browser .snippet-browser-dialog .toolbar h1 {
448
+ padding: 0 16px;
449
+ font-size: 22px;
450
+ line-height: 50px;
451
+ margin: 0;
452
+ color: #444;
453
+ }
454
+ .css-editor-snippet-browser .snippet-browser-dialog .toolbar .close {
455
+ cursor: pointer;
456
+ color: #777;
457
+ background-color: transparent;
458
+ height: 50px;
459
+ width: 50px;
460
+ padding: 15px 0 0 0;
461
+ position: absolute;
462
+ text-align: center;
463
+ border: 0;
464
+ border-left: 1px solid #ddd;
465
+ top: 0;
466
+ right: 0;
467
+ text-decoration: none;
468
+ box-sizing: border-box;
469
+ }
470
+ .css-editor-snippet-browser .snippet-browser-dialog .toolbar .close:hover {
471
+ background: #dddddd;
472
+ }
473
+ .css-editor-snippet-browser .snippet-browser-dialog .toolbar .close .icon:before {
474
+ content: '\f158';
475
+ font: normal 20px/1 'dashicons';
476
+ vertical-align: middle;
477
+ -webkit-font-smoothing: antialiased;
478
+ -moz-osx-font-smoothing: grayscale;
479
+ color: #666;
480
+ }
481
+ .css-editor-snippet-browser .snippet-browser-dialog .sidebar {
482
+ top: 90px;
483
+ left: 40px;
484
+ bottom: 90px;
485
+ width: 300px;
486
+ background: #f3f3f3;
487
+ border-right: 1px solid #dddddd;
488
+ padding: 16px;
489
+ overflow: auto;
490
+ }
491
+ .css-editor-snippet-browser .snippet-browser-dialog .sidebar .snippet-search {
492
+ width: 100%;
493
+ margin-bottom: 20px;
494
+ padding: 8px;
495
+ }
496
+ .css-editor-snippet-browser .snippet-browser-dialog .sidebar .snippets {
497
+ margin: 0;
498
+ }
499
+ .css-editor-snippet-browser .snippet-browser-dialog .sidebar .snippets .snippet {
500
+ cursor: pointer;
501
+ font-size: 1.1em;
502
+ line-height: 1.35em;
503
+ margin-bottom: 20px;
504
+ }
505
+ .css-editor-snippet-browser .snippet-browser-dialog .sidebar .snippets .snippet.active {
506
+ font-weight: bold;
507
+ }
508
+ .css-editor-snippet-browser .snippet-browser-dialog .main {
509
+ top: 90px;
510
+ left: 340px;
511
+ right: 40px;
512
+ bottom: 90px;
513
+ background: #fff;
514
+ overflow: auto;
515
+ }
516
+ .css-editor-snippet-browser .snippet-browser-dialog .main .snippet-view {
517
+ padding: 20px;
518
+ }
519
+ .css-editor-snippet-browser .snippet-browser-dialog .main .snippet-view .snippet-title {
520
+ margin: 0 0 0.75em 0;
521
+ padding: 0;
522
+ }
523
+ .css-editor-snippet-browser .snippet-browser-dialog .main .snippet-view .snippet-description {
524
+ font-size: 1.1em;
525
+ color: #666;
526
+ margin-bottom: 2em;
527
+ }
528
+ .css-editor-snippet-browser .snippet-browser-dialog .main .snippet-view .snippet-code {
529
+ padding: 20px;
530
+ border: 1px solid #d0d0d0;
531
+ background: #f8f8f8;
532
+ }
533
+ .css-editor-snippet-browser .snippet-browser-dialog .buttons {
534
+ bottom: 40px;
535
+ left: 40px;
536
+ right: 40px;
537
+ height: 50px;
538
+ background: #FCFCFC;
539
+ border-top: 1px solid #dddddd;
540
+ text-align: right;
541
+ padding: 10px 20px;
542
+ overflow: hidden;
543
+ }
544
+ .socss-field-measurement {
545
+ position: relative;
546
+ }
547
+ .socss-field-measurement input.socss-field-input {
548
+ min-height: 1.5em;
549
+ padding-right: 50px;
550
+ width: 120px !important;
551
+ box-sizing: border-box;
552
+ }
553
+ .socss-field-measurement .dashicons-arrow-down {
554
+ position: absolute;
555
+ top: 4px;
556
+ left: 97px;
557
+ cursor: pointer;
558
+ }
559
+ .socss-field-measurement .dropdown {
560
+ display: none;
561
+ background: #F5F5F5;
562
+ border: 1px solid #c0c0c0;
563
+ position: absolute;
564
+ top: 27px;
565
+ left: 71px;
566
+ width: 50px;
567
+ z-index: 2;
568
+ margin: 0;
569
+ box-sizing: border-box;
570
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
571
+ }
572
+ .socss-field-measurement .dropdown li {
573
+ padding: 5px 0;
574
+ text-align: center;
575
+ line-height: 1.1em;
576
+ font-size: 11px;
577
+ margin: 0;
578
+ }
579
+ .socss-field-measurement .dropdown li:hover,
580
+ .socss-field-measurement .dropdown li.active {
581
+ background: #e8e8e8;
582
+ cursor: pointer;
583
+ }
584
+ .socss-field-measurement .units {
585
+ position: absolute;
586
+ top: 5px;
587
+ left: 12px;
588
+ color: #bbb;
589
+ pointer-events: none;
590
+ }
591
+ .socss-diw {
592
+ position: absolute;
593
+ top: 0px;
594
+ left: 124px;
595
+ }
596
+ .socss-diw .inc-button,
597
+ .socss-diw .dec-button {
598
+ cursor: pointer;
599
+ box-sizing: border-box;
600
+ float: left;
601
+ padding: 8px;
602
+ user-select: none;
603
+ text-align: center;
604
+ margin: 0;
605
+ width: 27px;
606
+ height: 27px;
607
+ font-size: 10px;
608
+ }
609
+ .socss-diw .inc-button {
610
+ border-left: 0;
611
+ }
612
+ .socss-button {
613
+ cursor: pointer;
614
+ line-height: 1em;
615
+ display: inline-block;
616
+ border: 1px solid #c0c0c0;
617
+ background: #f7f7f7;
618
+ text-decoration: none;
619
+ padding: 6px;
620
+ font-weight: bold;
621
+ color: #555;
622
+ font-size: 0.95em;
623
+ margin-left: 5px;
624
+ -webkit-user-select: none;
625
+ -moz-user-select: none;
626
+ -ms-user-select: none;
627
+ -o-user-select: none;
628
+ user-select: none;
629
+ }
630
+ .socss-button:hover {
631
+ border-color: #b0b0b0;
632
+ background: #fff;
633
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
634
+ }
635
+ .socss-button:hover .fa {
636
+ color: #333;
637
+ }
638
+ .socss-button .fa {
639
+ color: #555;
640
+ }
641
+ .CodeMirror-lint-tooltip,
642
+ .CodeMirror-hints {
643
+ /* This is above the editor in full-screen mode */
644
+ z-index: 100002;
645
+ }
js/css.js CHANGED
@@ -399,6 +399,10 @@ process.off = noop;
399
  process.removeListener = noop;
400
  process.removeAllListeners = noop;
401
  process.emit = noop;
 
 
 
 
402
 
403
  process.binding = function (name) {
404
  throw new Error('process.binding is not supported');
@@ -414,126 +418,431 @@ process.umask = function() { return 0; };
414
  //This is for browserify to build the required CSS module into something we can use in the browser.
415
  window.css = require('css');
416
 
417
- },{"css":5}],5:[function(require,module,exports){
418
- exports.parse = require('./lib/parse');
419
- exports.stringify = require('./lib/stringify');
420
-
421
- },{"./lib/parse":6,"./lib/stringify":10}],6:[function(require,module,exports){
422
- // http://www.w3.org/TR/CSS21/grammar.html
423
- // https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027
424
- var commentre = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g
425
-
426
- module.exports = function(css, options){
427
- options = options || {};
428
-
429
- /**
430
- * Positional.
431
- */
432
-
433
- var lineno = 1;
434
- var column = 1;
435
 
436
- /**
437
- * Update lineno and column based on `str`.
438
- */
439
 
440
- function updatePosition(str) {
441
- var lines = str.match(/\n/g);
442
- if (lines) lineno += lines.length;
443
- var i = str.lastIndexOf('\n');
444
- column = ~i ? str.length - i : column + str.length;
445
- }
 
 
 
 
 
 
 
 
 
 
 
446
 
447
- /**
448
- * Mark position and patch `node.position`.
449
- */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
450
 
451
- function position() {
452
- var start = { line: lineno, column: column };
453
- return function(node){
454
- node.position = new Position(start);
455
- whitespace();
456
- return node;
457
- };
458
- }
459
 
460
- /**
461
- * Store position information for a node
462
- */
 
 
 
 
 
 
 
 
 
 
463
 
464
- function Position(start) {
465
- this.start = start;
466
- this.end = { line: lineno, column: column };
467
- this.source = options.source;
468
- }
469
 
470
- /**
471
- * Non-enumerable source string
472
- */
 
 
 
 
 
 
473
 
474
- Position.prototype.content = css;
 
 
 
475
 
476
- /**
477
- * Error `msg`.
478
- */
 
 
 
 
 
479
 
480
- var errorsList = [];
 
481
 
482
- function error(msg) {
483
- var err = new Error(options.source + ':' + lineno + ':' + column + ': ' + msg);
484
- err.reason = msg;
485
- err.filename = options.source;
486
- err.line = lineno;
487
- err.column = column;
488
- err.source = css;
489
 
490
- if (options.silent) {
491
- errorsList.push(err);
492
- } else {
493
- throw err;
494
- }
495
- }
496
 
497
- /**
498
- * Parse stylesheet.
499
- */
 
 
 
 
 
500
 
501
- function stylesheet() {
502
- var rulesList = rules();
 
 
 
 
 
503
 
504
- return {
505
- type: 'stylesheet',
506
- stylesheet: {
507
- rules: rulesList,
508
- parsingErrors: errorsList
509
- }
510
  };
511
- }
512
 
513
- /**
514
- * Opening brace.
515
- */
 
516
 
517
- function open() {
518
- return match(/^{\s*/);
519
- }
520
 
521
- /**
522
- * Closing brace.
523
- */
 
 
 
 
 
 
 
 
 
 
 
524
 
525
- function close() {
526
- return match(/^}/);
527
- }
 
 
 
 
528
 
529
- /**
530
- * Parse ruleset.
531
- */
 
 
 
 
532
 
533
- function rules() {
534
- var node;
535
- var rules = [];
536
- whitespace();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
537
  comments(rules);
538
  while (css.length && css.charAt(0) != '}' && (node = atrule() || rule())) {
539
  if (node !== false) {
@@ -1022,7 +1331,7 @@ function addParent(obj, parent) {
1022
  return obj;
1023
  }
1024
 
1025
- },{}],7:[function(require,module,exports){
1026
 
1027
  /**
1028
  * Expose `Compiler`.
@@ -1074,7 +1383,7 @@ Compiler.prototype.mapVisit = function(nodes, delim){
1074
  return buf;
1075
  };
1076
 
1077
- },{}],8:[function(require,module,exports){
1078
 
1079
  /**
1080
  * Module dependencies.
@@ -1275,7 +1584,7 @@ Compiler.prototype.declaration = function(node){
1275
  };
1276
 
1277
 
1278
- },{"./compiler":7,"inherits":12}],9:[function(require,module,exports){
1279
 
1280
  /**
1281
  * Module dependencies.
@@ -1531,7 +1840,7 @@ Compiler.prototype.indent = function(level) {
1531
  return Array(this.level).join(this.indentation || ' ');
1532
  };
1533
 
1534
- },{"./compiler":7,"inherits":12}],10:[function(require,module,exports){
1535
 
1536
  /**
1537
  * Module dependencies.
@@ -1580,7 +1889,7 @@ module.exports = function(node, options){
1580
  return code;
1581
  };
1582
 
1583
- },{"./compress":8,"./identity":9,"./source-map-support":11}],11:[function(require,module,exports){
1584
 
1585
  /**
1586
  * Module dependencies.
@@ -1708,7 +2017,7 @@ exports.comment = function(node) {
1708
  return this._comment(node);
1709
  };
1710
 
1711
- },{"fs":1,"path":2,"source-map":16,"source-map-resolve":15,"urix":27}],12:[function(require,module,exports){
1712
  if (typeof Object.create === 'function') {
1713
  // implementation from standard node.js 'util' module
1714
  module.exports = function inherits(ctor, superCtor) {
@@ -1733,7 +2042,7 @@ if (typeof Object.create === 'function') {
1733
  }
1734
  }
1735
 
1736
- },{}],13:[function(require,module,exports){
1737
  // Copyright 2014 Simon Lydell
1738
  // X11 (“MIT”) Licensed. (See LICENSE.)
1739
 
@@ -1782,80 +2091,21 @@ void (function(root, factory) {
1782
 
1783
  }));
1784
 
1785
- },{}],14:[function(require,module,exports){
1786
  // Copyright 2014 Simon Lydell
1787
  // X11 (“MIT”) Licensed. (See LICENSE.)
1788
 
 
 
 
 
1789
  void (function(root, factory) {
1790
  if (typeof define === "function" && define.amd) {
1791
- define(factory)
1792
  } else if (typeof exports === "object") {
1793
- module.exports = factory()
1794
- } else {
1795
- root.sourceMappingURL = factory()
1796
- }
1797
- }(this, function() {
1798
-
1799
- var innerRegex = /[#@] sourceMappingURL=([^\s'"]*)/
1800
-
1801
- var regex = RegExp(
1802
- "(?:" +
1803
- "/\\*" +
1804
- "(?:\\s*\r?\n(?://)?)?" +
1805
- "(?:" + innerRegex.source + ")" +
1806
- "\\s*" +
1807
- "\\*/" +
1808
- "|" +
1809
- "//(?:" + innerRegex.source + ")" +
1810
- ")" +
1811
- "\\s*$"
1812
- )
1813
-
1814
- return {
1815
-
1816
- regex: regex,
1817
- _innerRegex: innerRegex,
1818
-
1819
- getFrom: function(code) {
1820
- var match = code.match(regex)
1821
- return (match ? match[1] || match[2] || "" : null)
1822
- },
1823
-
1824
- existsIn: function(code) {
1825
- return regex.test(code)
1826
- },
1827
-
1828
- removeFrom: function(code) {
1829
- return code.replace(regex, "")
1830
- },
1831
-
1832
- insertBefore: function(code, string) {
1833
- var match = code.match(regex)
1834
- if (match) {
1835
- return code.slice(0, match.index) + string + code.slice(match.index)
1836
- } else {
1837
- return code + string
1838
- }
1839
- }
1840
- }
1841
-
1842
- }));
1843
-
1844
- },{}],15:[function(require,module,exports){
1845
- // Copyright 2014 Simon Lydell
1846
- // X11 (“MIT”) Licensed. (See LICENSE.)
1847
-
1848
- // Note: source-map-resolve.js is generated from source-map-resolve-node.js and
1849
- // source-map-resolve-template.js. Only edit the two latter files, _not_
1850
- // source-map-resolve.js!
1851
-
1852
- void (function(root, factory) {
1853
- if (typeof define === "function" && define.amd) {
1854
- define(["source-map-url", "resolve-url"], factory)
1855
- } else if (typeof exports === "object") {
1856
- var sourceMappingURL = require("source-map-url")
1857
- var resolveUrl = require("resolve-url")
1858
- module.exports = factory(sourceMappingURL, resolveUrl)
1859
  } else {
1860
  root.sourceMapResolve = factory(root.sourceMappingURL, root.resolveUrl)
1861
  }
@@ -2066,7 +2316,66 @@ void (function(root, factory) {
2066
 
2067
  }));
2068
 
2069
- },{"resolve-url":13,"source-map-url":14}],16:[function(require,module,exports){
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2070
  /*
2071
  * Copyright 2009-2011 Mozilla Foundation and contributors
2072
  * Licensed under the New BSD license. See LICENSE.txt or:
@@ -2076,7 +2385,7 @@ exports.SourceMapGenerator = require('./source-map/source-map-generator').Source
2076
  exports.SourceMapConsumer = require('./source-map/source-map-consumer').SourceMapConsumer;
2077
  exports.SourceNode = require('./source-map/source-node').SourceNode;
2078
 
2079
- },{"./source-map/source-map-consumer":22,"./source-map/source-map-generator":23,"./source-map/source-node":24}],17:[function(require,module,exports){
2080
  /* -*- Mode: js; js-indent-level: 2; -*- */
2081
  /*
2082
  * Copyright 2011 Mozilla Foundation and contributors
@@ -2175,7 +2484,7 @@ define(function (require, exports, module) {
2175
 
2176
  });
2177
 
2178
- },{"./util":25,"amdefine":26}],18:[function(require,module,exports){
2179
  /* -*- Mode: js; js-indent-level: 2; -*- */
2180
  /*
2181
  * Copyright 2011 Mozilla Foundation and contributors
@@ -2319,7 +2628,7 @@ define(function (require, exports, module) {
2319
 
2320
  });
2321
 
2322
- },{"./base64":19,"amdefine":26}],19:[function(require,module,exports){
2323
  /* -*- Mode: js; js-indent-level: 2; -*- */
2324
  /*
2325
  * Copyright 2011 Mozilla Foundation and contributors
@@ -2363,7 +2672,7 @@ define(function (require, exports, module) {
2363
 
2364
  });
2365
 
2366
- },{"amdefine":26}],20:[function(require,module,exports){
2367
  /* -*- Mode: js; js-indent-level: 2; -*- */
2368
  /*
2369
  * Copyright 2011 Mozilla Foundation and contributors
@@ -2445,7 +2754,7 @@ define(function (require, exports, module) {
2445
 
2446
  });
2447
 
2448
- },{"amdefine":26}],21:[function(require,module,exports){
2449
  /* -*- Mode: js; js-indent-level: 2; -*- */
2450
  /*
2451
  * Copyright 2014 Mozilla Foundation and contributors
@@ -2533,7 +2842,7 @@ define(function (require, exports, module) {
2533
 
2534
  });
2535
 
2536
- },{"./util":25,"amdefine":26}],22:[function(require,module,exports){
2537
  /* -*- Mode: js; js-indent-level: 2; -*- */
2538
  /*
2539
  * Copyright 2011 Mozilla Foundation and contributors
@@ -3110,7 +3419,7 @@ define(function (require, exports, module) {
3110
 
3111
  });
3112
 
3113
- },{"./array-set":17,"./base64-vlq":18,"./binary-search":20,"./util":25,"amdefine":26}],23:[function(require,module,exports){
3114
  /* -*- Mode: js; js-indent-level: 2; -*- */
3115
  /*
3116
  * Copyright 2011 Mozilla Foundation and contributors
@@ -3512,7 +3821,7 @@ define(function (require, exports, module) {
3512
 
3513
  });
3514
 
3515
- },{"./array-set":17,"./base64-vlq":18,"./mapping-list":21,"./util":25,"amdefine":26}],24:[function(require,module,exports){
3516
  /* -*- Mode: js; js-indent-level: 2; -*- */
3517
  /*
3518
  * Copyright 2011 Mozilla Foundation and contributors
@@ -3928,7 +4237,7 @@ define(function (require, exports, module) {
3928
 
3929
  });
3930
 
3931
- },{"./source-map-generator":23,"./util":25,"amdefine":26}],25:[function(require,module,exports){
3932
  /* -*- Mode: js; js-indent-level: 2; -*- */
3933
  /*
3934
  * Copyright 2011 Mozilla Foundation and contributors
@@ -4249,312 +4558,7 @@ define(function (require, exports, module) {
4249
 
4250
  });
4251
 
4252
- },{"amdefine":26}],26:[function(require,module,exports){
4253
- (function (process,__filename){
4254
- /** vim: et:ts=4:sw=4:sts=4
4255
- * @license amdefine 1.0.1 Copyright (c) 2011-2016, The Dojo Foundation All Rights Reserved.
4256
- * Available via the MIT or new BSD license.
4257
- * see: http://github.com/jrburke/amdefine for details
4258
- */
4259
-
4260
- /*jslint node: true */
4261
- /*global module, process */
4262
- 'use strict';
4263
-
4264
- /**
4265
- * Creates a define for node.
4266
- * @param {Object} module the "module" object that is defined by Node for the
4267
- * current module.
4268
- * @param {Function} [requireFn]. Node's require function for the current module.
4269
- * It only needs to be passed in Node versions before 0.5, when module.require
4270
- * did not exist.
4271
- * @returns {Function} a define function that is usable for the current node
4272
- * module.
4273
- */
4274
- function amdefine(module, requireFn) {
4275
- 'use strict';
4276
- var defineCache = {},
4277
- loaderCache = {},
4278
- alreadyCalled = false,
4279
- path = require('path'),
4280
- makeRequire, stringRequire;
4281
-
4282
- /**
4283
- * Trims the . and .. from an array of path segments.
4284
- * It will keep a leading path segment if a .. will become
4285
- * the first path segment, to help with module name lookups,
4286
- * which act like paths, but can be remapped. But the end result,
4287
- * all paths that use this function should look normalized.
4288
- * NOTE: this method MODIFIES the input array.
4289
- * @param {Array} ary the array of path segments.
4290
- */
4291
- function trimDots(ary) {
4292
- var i, part;
4293
- for (i = 0; ary[i]; i+= 1) {
4294
- part = ary[i];
4295
- if (part === '.') {
4296
- ary.splice(i, 1);
4297
- i -= 1;
4298
- } else if (part === '..') {
4299
- if (i === 1 && (ary[2] === '..' || ary[0] === '..')) {
4300
- //End of the line. Keep at least one non-dot
4301
- //path segment at the front so it can be mapped
4302
- //correctly to disk. Otherwise, there is likely
4303
- //no path mapping for a path starting with '..'.
4304
- //This can still fail, but catches the most reasonable
4305
- //uses of ..
4306
- break;
4307
- } else if (i > 0) {
4308
- ary.splice(i - 1, 2);
4309
- i -= 2;
4310
- }
4311
- }
4312
- }
4313
- }
4314
-
4315
- function normalize(name, baseName) {
4316
- var baseParts;
4317
-
4318
- //Adjust any relative paths.
4319
- if (name && name.charAt(0) === '.') {
4320
- //If have a base name, try to normalize against it,
4321
- //otherwise, assume it is a top-level require that will
4322
- //be relative to baseUrl in the end.
4323
- if (baseName) {
4324
- baseParts = baseName.split('/');
4325
- baseParts = baseParts.slice(0, baseParts.length - 1);
4326
- baseParts = baseParts.concat(name.split('/'));
4327
- trimDots(baseParts);
4328
- name = baseParts.join('/');
4329
- }
4330
- }
4331
-
4332
- return name;
4333
- }
4334
-
4335
- /**
4336
- * Create the normalize() function passed to a loader plugin's
4337
- * normalize method.
4338
- */
4339
- function makeNormalize(relName) {
4340
- return function (name) {
4341
- return normalize(name, relName);
4342
- };
4343
- }
4344
-
4345
- function makeLoad(id) {
4346
- function load(value) {
4347
- loaderCache[id] = value;
4348
- }
4349
-
4350
- load.fromText = function (id, text) {
4351
- //This one is difficult because the text can/probably uses
4352
- //define, and any relative paths and requires should be relative
4353
- //to that id was it would be found on disk. But this would require
4354
- //bootstrapping a module/require fairly deeply from node core.
4355
- //Not sure how best to go about that yet.
4356
- throw new Error('amdefine does not implement load.fromText');
4357
- };
4358
-
4359
- return load;
4360
- }
4361
-
4362
- makeRequire = function (systemRequire, exports, module, relId) {
4363
- function amdRequire(deps, callback) {
4364
- if (typeof deps === 'string') {
4365
- //Synchronous, single module require('')
4366
- return stringRequire(systemRequire, exports, module, deps, relId);
4367
- } else {
4368
- //Array of dependencies with a callback.
4369
-
4370
- //Convert the dependencies to modules.
4371
- deps = deps.map(function (depName) {
4372
- return stringRequire(systemRequire, exports, module, depName, relId);
4373
- });
4374
-
4375
- //Wait for next tick to call back the require call.
4376
- if (callback) {
4377
- process.nextTick(function () {
4378
- callback.apply(null, deps);
4379
- });
4380
- }
4381
- }
4382
- }
4383
-
4384
- amdRequire.toUrl = function (filePath) {
4385
- if (filePath.indexOf('.') === 0) {
4386
- return normalize(filePath, path.dirname(module.filename));
4387
- } else {
4388
- return filePath;
4389
- }
4390
- };
4391
-
4392
- return amdRequire;
4393
- };
4394
-
4395
- //Favor explicit value, passed in if the module wants to support Node 0.4.
4396
- requireFn = requireFn || function req() {
4397
- return module.require.apply(module, arguments);
4398
- };
4399
-
4400
- function runFactory(id, deps, factory) {
4401
- var r, e, m, result;
4402
-
4403
- if (id) {
4404
- e = loaderCache[id] = {};
4405
- m = {
4406
- id: id,
4407
- uri: __filename,
4408
- exports: e
4409
- };
4410
- r = makeRequire(requireFn, e, m, id);
4411
- } else {
4412
- //Only support one define call per file
4413
- if (alreadyCalled) {
4414
- throw new Error('amdefine with no module ID cannot be called more than once per file.');
4415
- }
4416
- alreadyCalled = true;
4417
-
4418
- //Use the real variables from node
4419
- //Use module.exports for exports, since
4420
- //the exports in here is amdefine exports.
4421
- e = module.exports;
4422
- m = module;
4423
- r = makeRequire(requireFn, e, m, module.id);
4424
- }
4425
-
4426
- //If there are dependencies, they are strings, so need
4427
- //to convert them to dependency values.
4428
- if (deps) {
4429
- deps = deps.map(function (depName) {
4430
- return r(depName);
4431
- });
4432
- }
4433
-
4434
- //Call the factory with the right dependencies.
4435
- if (typeof factory === 'function') {
4436
- result = factory.apply(m.exports, deps);
4437
- } else {
4438
- result = factory;
4439
- }
4440
-
4441
- if (result !== undefined) {
4442
- m.exports = result;
4443
- if (id) {
4444
- loaderCache[id] = m.exports;
4445
- }
4446
- }
4447
- }
4448
-
4449
- stringRequire = function (systemRequire, exports, module, id, relId) {
4450
- //Split the ID by a ! so that
4451
- var index = id.indexOf('!'),
4452
- originalId = id,
4453
- prefix, plugin;
4454
-
4455
- if (index === -1) {
4456
- id = normalize(id, relId);
4457
-
4458
- //Straight module lookup. If it is one of the special dependencies,
4459
- //deal with it, otherwise, delegate to node.
4460
- if (id === 'require') {
4461
- return makeRequire(systemRequire, exports, module, relId);
4462
- } else if (id === 'exports') {
4463
- return exports;
4464
- } else if (id === 'module') {
4465
- return module;
4466
- } else if (loaderCache.hasOwnProperty(id)) {
4467
- return loaderCache[id];
4468
- } else if (defineCache[id]) {
4469
- runFactory.apply(null, defineCache[id]);
4470
- return loaderCache[id];
4471
- } else {
4472
- if(systemRequire) {
4473
- return systemRequire(originalId);
4474
- } else {
4475
- throw new Error('No module with ID: ' + id);
4476
- }
4477
- }
4478
- } else {
4479
- //There is a plugin in play.
4480
- prefix = id.substring(0, index);
4481
- id = id.substring(index + 1, id.length);
4482
-
4483
- plugin = stringRequire(systemRequire, exports, module, prefix, relId);
4484
-
4485
- if (plugin.normalize) {
4486
- id = plugin.normalize(id, makeNormalize(relId));
4487
- } else {
4488
- //Normalize the ID normally.
4489
- id = normalize(id, relId);
4490
- }
4491
-
4492
- if (loaderCache[id]) {
4493
- return loaderCache[id];
4494
- } else {
4495
- plugin.load(id, makeRequire(systemRequire, exports, module, relId), makeLoad(id), {});
4496
-
4497
- return loaderCache[id];
4498
- }
4499
- }
4500
- };
4501
-
4502
- //Create a define function specific to the module asking for amdefine.
4503
- function define(id, deps, factory) {
4504
- if (Array.isArray(id)) {
4505
- factory = deps;
4506
- deps = id;
4507
- id = undefined;
4508
- } else if (typeof id !== 'string') {
4509
- factory = id;
4510
- id = deps = undefined;
4511
- }
4512
-
4513
- if (deps && !Array.isArray(deps)) {
4514
- factory = deps;
4515
- deps = undefined;
4516
- }
4517
-
4518
- if (!deps) {
4519
- deps = ['require', 'exports', 'module'];
4520
- }
4521
-
4522
- //Set up properties for this module. If an ID, then use
4523
- //internal cache. If no ID, then use the external variables
4524
- //for this node module.
4525
- if (id) {
4526
- //Put the module in deep freeze until there is a
4527
- //require call for it.
4528
- defineCache[id] = [id, deps, factory];
4529
- } else {
4530
- runFactory(id, deps, factory);
4531
- }
4532
- }
4533
-
4534
- //define.require, which has access to all the values in the
4535
- //cache. Useful for AMD modules that all have IDs in the file,
4536
- //but need to finally export a value to node based on one of those
4537
- //IDs.
4538
- define.require = function (id) {
4539
- if (loaderCache[id]) {
4540
- return loaderCache[id];
4541
- }
4542
-
4543
- if (defineCache[id]) {
4544
- runFactory.apply(null, defineCache[id]);
4545
- return loaderCache[id];
4546
- }
4547
- };
4548
-
4549
- define.amd = {};
4550
-
4551
- return define;
4552
- }
4553
-
4554
- module.exports = amdefine;
4555
-
4556
- }).call(this,require('_process'),"/node_modules/css/node_modules/source-map/node_modules/amdefine/amdefine.js")
4557
- },{"_process":3,"path":2}],27:[function(require,module,exports){
4558
  // Copyright 2014 Simon Lydell
4559
  // X11 (“MIT”) Licensed. (See LICENSE.)
4560
 
399
  process.removeListener = noop;
400
  process.removeAllListeners = noop;
401
  process.emit = noop;
402
+ process.prependListener = noop;
403
+ process.prependOnceListener = noop;
404
+
405
+ process.listeners = function (name) { return [] }
406
 
407
  process.binding = function (name) {
408
  throw new Error('process.binding is not supported');
418
  //This is for browserify to build the required CSS module into something we can use in the browser.
419
  window.css = require('css');
420
 
421
+ },{"css":6}],5:[function(require,module,exports){
422
+ (function (process,__filename){
423
+ /** vim: et:ts=4:sw=4:sts=4
424
+ * @license amdefine 1.0.1 Copyright (c) 2011-2016, The Dojo Foundation All Rights Reserved.
425
+ * Available via the MIT or new BSD license.
426
+ * see: http://github.com/jrburke/amdefine for details
427
+ */
 
 
 
 
 
 
 
 
 
 
 
428
 
429
+ /*jslint node: true */
430
+ /*global module, process */
431
+ 'use strict';
432
 
433
+ /**
434
+ * Creates a define for node.
435
+ * @param {Object} module the "module" object that is defined by Node for the
436
+ * current module.
437
+ * @param {Function} [requireFn]. Node's require function for the current module.
438
+ * It only needs to be passed in Node versions before 0.5, when module.require
439
+ * did not exist.
440
+ * @returns {Function} a define function that is usable for the current node
441
+ * module.
442
+ */
443
+ function amdefine(module, requireFn) {
444
+ 'use strict';
445
+ var defineCache = {},
446
+ loaderCache = {},
447
+ alreadyCalled = false,
448
+ path = require('path'),
449
+ makeRequire, stringRequire;
450
 
451
+ /**
452
+ * Trims the . and .. from an array of path segments.
453
+ * It will keep a leading path segment if a .. will become
454
+ * the first path segment, to help with module name lookups,
455
+ * which act like paths, but can be remapped. But the end result,
456
+ * all paths that use this function should look normalized.
457
+ * NOTE: this method MODIFIES the input array.
458
+ * @param {Array} ary the array of path segments.
459
+ */
460
+ function trimDots(ary) {
461
+ var i, part;
462
+ for (i = 0; ary[i]; i+= 1) {
463
+ part = ary[i];
464
+ if (part === '.') {
465
+ ary.splice(i, 1);
466
+ i -= 1;
467
+ } else if (part === '..') {
468
+ if (i === 1 && (ary[2] === '..' || ary[0] === '..')) {
469
+ //End of the line. Keep at least one non-dot
470
+ //path segment at the front so it can be mapped
471
+ //correctly to disk. Otherwise, there is likely
472
+ //no path mapping for a path starting with '..'.
473
+ //This can still fail, but catches the most reasonable
474
+ //uses of ..
475
+ break;
476
+ } else if (i > 0) {
477
+ ary.splice(i - 1, 2);
478
+ i -= 2;
479
+ }
480
+ }
481
+ }
482
+ }
483
 
484
+ function normalize(name, baseName) {
485
+ var baseParts;
 
 
 
 
 
 
486
 
487
+ //Adjust any relative paths.
488
+ if (name && name.charAt(0) === '.') {
489
+ //If have a base name, try to normalize against it,
490
+ //otherwise, assume it is a top-level require that will
491
+ //be relative to baseUrl in the end.
492
+ if (baseName) {
493
+ baseParts = baseName.split('/');
494
+ baseParts = baseParts.slice(0, baseParts.length - 1);
495
+ baseParts = baseParts.concat(name.split('/'));
496
+ trimDots(baseParts);
497
+ name = baseParts.join('/');
498
+ }
499
+ }
500
 
501
+ return name;
502
+ }
 
 
 
503
 
504
+ /**
505
+ * Create the normalize() function passed to a loader plugin's
506
+ * normalize method.
507
+ */
508
+ function makeNormalize(relName) {
509
+ return function (name) {
510
+ return normalize(name, relName);
511
+ };
512
+ }
513
 
514
+ function makeLoad(id) {
515
+ function load(value) {
516
+ loaderCache[id] = value;
517
+ }
518
 
519
+ load.fromText = function (id, text) {
520
+ //This one is difficult because the text can/probably uses
521
+ //define, and any relative paths and requires should be relative
522
+ //to that id was it would be found on disk. But this would require
523
+ //bootstrapping a module/require fairly deeply from node core.
524
+ //Not sure how best to go about that yet.
525
+ throw new Error('amdefine does not implement load.fromText');
526
+ };
527
 
528
+ return load;
529
+ }
530
 
531
+ makeRequire = function (systemRequire, exports, module, relId) {
532
+ function amdRequire(deps, callback) {
533
+ if (typeof deps === 'string') {
534
+ //Synchronous, single module require('')
535
+ return stringRequire(systemRequire, exports, module, deps, relId);
536
+ } else {
537
+ //Array of dependencies with a callback.
538
 
539
+ //Convert the dependencies to modules.
540
+ deps = deps.map(function (depName) {
541
+ return stringRequire(systemRequire, exports, module, depName, relId);
542
+ });
 
 
543
 
544
+ //Wait for next tick to call back the require call.
545
+ if (callback) {
546
+ process.nextTick(function () {
547
+ callback.apply(null, deps);
548
+ });
549
+ }
550
+ }
551
+ }
552
 
553
+ amdRequire.toUrl = function (filePath) {
554
+ if (filePath.indexOf('.') === 0) {
555
+ return normalize(filePath, path.dirname(module.filename));
556
+ } else {
557
+ return filePath;
558
+ }
559
+ };
560
 
561
+ return amdRequire;
 
 
 
 
 
562
  };
 
563
 
564
+ //Favor explicit value, passed in if the module wants to support Node 0.4.
565
+ requireFn = requireFn || function req() {
566
+ return module.require.apply(module, arguments);
567
+ };
568
 
569
+ function runFactory(id, deps, factory) {
570
+ var r, e, m, result;
 
571
 
572
+ if (id) {
573
+ e = loaderCache[id] = {};
574
+ m = {
575
+ id: id,
576
+ uri: __filename,
577
+ exports: e
578
+ };
579
+ r = makeRequire(requireFn, e, m, id);
580
+ } else {
581
+ //Only support one define call per file
582
+ if (alreadyCalled) {
583
+ throw new Error('amdefine with no module ID cannot be called more than once per file.');
584
+ }
585
+ alreadyCalled = true;
586
 
587
+ //Use the real variables from node
588
+ //Use module.exports for exports, since
589
+ //the exports in here is amdefine exports.
590
+ e = module.exports;
591
+ m = module;
592
+ r = makeRequire(requireFn, e, m, module.id);
593
+ }
594
 
595
+ //If there are dependencies, they are strings, so need
596
+ //to convert them to dependency values.
597
+ if (deps) {
598
+ deps = deps.map(function (depName) {
599
+ return r(depName);
600
+ });
601
+ }
602
 
603
+ //Call the factory with the right dependencies.
604
+ if (typeof factory === 'function') {
605
+ result = factory.apply(m.exports, deps);
606
+ } else {
607
+ result = factory;
608
+ }
609
+
610
+ if (result !== undefined) {
611
+ m.exports = result;
612
+ if (id) {
613
+ loaderCache[id] = m.exports;
614
+ }
615
+ }
616
+ }
617
+
618
+ stringRequire = function (systemRequire, exports, module, id, relId) {
619
+ //Split the ID by a ! so that
620
+ var index = id.indexOf('!'),
621
+ originalId = id,
622
+ prefix, plugin;
623
+
624
+ if (index === -1) {
625
+ id = normalize(id, relId);
626
+
627
+ //Straight module lookup. If it is one of the special dependencies,
628
+ //deal with it, otherwise, delegate to node.
629
+ if (id === 'require') {
630
+ return makeRequire(systemRequire, exports, module, relId);
631
+ } else if (id === 'exports') {
632
+ return exports;
633
+ } else if (id === 'module') {
634
+ return module;
635
+ } else if (loaderCache.hasOwnProperty(id)) {
636
+ return loaderCache[id];
637
+ } else if (defineCache[id]) {
638
+ runFactory.apply(null, defineCache[id]);
639
+ return loaderCache[id];
640
+ } else {
641
+ if(systemRequire) {
642
+ return systemRequire(originalId);
643
+ } else {
644
+ throw new Error('No module with ID: ' + id);
645
+ }
646
+ }
647
+ } else {
648
+ //There is a plugin in play.
649
+ prefix = id.substring(0, index);
650
+ id = id.substring(index + 1, id.length);
651
+
652
+ plugin = stringRequire(systemRequire, exports, module, prefix, relId);
653
+
654
+ if (plugin.normalize) {
655
+ id = plugin.normalize(id, makeNormalize(relId));
656
+ } else {
657
+ //Normalize the ID normally.
658
+ id = normalize(id, relId);
659
+ }
660
+
661
+ if (loaderCache[id]) {
662
+ return loaderCache[id];
663
+ } else {
664
+ plugin.load(id, makeRequire(systemRequire, exports, module, relId), makeLoad(id), {});
665
+
666
+ return loaderCache[id];
667
+ }
668
+ }
669
+ };
670
+
671
+ //Create a define function specific to the module asking for amdefine.
672
+ function define(id, deps, factory) {
673
+ if (Array.isArray(id)) {
674
+ factory = deps;
675
+ deps = id;
676
+ id = undefined;
677
+ } else if (typeof id !== 'string') {
678
+ factory = id;
679
+ id = deps = undefined;
680
+ }
681
+
682
+ if (deps && !Array.isArray(deps)) {
683
+ factory = deps;
684
+ deps = undefined;
685
+ }
686
+
687
+ if (!deps) {
688
+ deps = ['require', 'exports', 'module'];
689
+ }
690
+
691
+ //Set up properties for this module. If an ID, then use
692
+ //internal cache. If no ID, then use the external variables
693
+ //for this node module.
694
+ if (id) {
695
+ //Put the module in deep freeze until there is a
696
+ //require call for it.
697
+ defineCache[id] = [id, deps, factory];
698
+ } else {
699
+ runFactory(id, deps, factory);
700
+ }
701
+ }
702
+
703
+ //define.require, which has access to all the values in the
704
+ //cache. Useful for AMD modules that all have IDs in the file,
705
+ //but need to finally export a value to node based on one of those
706
+ //IDs.
707
+ define.require = function (id) {
708
+ if (loaderCache[id]) {
709
+ return loaderCache[id];
710
+ }
711
+
712
+ if (defineCache[id]) {
713
+ runFactory.apply(null, defineCache[id]);
714
+ return loaderCache[id];
715
+ }
716
+ };
717
+
718
+ define.amd = {};
719
+
720
+ return define;
721
+ }
722
+
723
+ module.exports = amdefine;
724
+
725
+ }).call(this,require('_process'),"/node_modules\\amdefine\\amdefine.js")
726
+ },{"_process":3,"path":2}],6:[function(require,module,exports){
727
+ exports.parse = require('./lib/parse');
728
+ exports.stringify = require('./lib/stringify');
729
+
730
+ },{"./lib/parse":7,"./lib/stringify":11}],7:[function(require,module,exports){
731
+ // http://www.w3.org/TR/CSS21/grammar.html
732
+ // https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027
733
+ var commentre = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g
734
+
735
+ module.exports = function(css, options){
736
+ options = options || {};
737
+
738
+ /**
739
+ * Positional.
740
+ */
741
+
742
+ var lineno = 1;
743
+ var column = 1;
744
+
745
+ /**
746
+ * Update lineno and column based on `str`.
747
+ */
748
+
749
+ function updatePosition(str) {
750
+ var lines = str.match(/\n/g);
751
+ if (lines) lineno += lines.length;
752
+ var i = str.lastIndexOf('\n');
753
+ column = ~i ? str.length - i : column + str.length;
754
+ }
755
+
756
+ /**
757
+ * Mark position and patch `node.position`.
758
+ */
759
+
760
+ function position() {
761
+ var start = { line: lineno, column: column };
762
+ return function(node){
763
+ node.position = new Position(start);
764
+ whitespace();
765
+ return node;
766
+ };
767
+ }
768
+
769
+ /**
770
+ * Store position information for a node
771
+ */
772
+
773
+ function Position(start) {
774
+ this.start = start;
775
+ this.end = { line: lineno, column: column };
776
+ this.source = options.source;
777
+ }
778
+
779
+ /**
780
+ * Non-enumerable source string
781
+ */
782
+
783
+ Position.prototype.content = css;
784
+
785
+ /**
786
+ * Error `msg`.
787
+ */
788
+
789
+ var errorsList = [];
790
+
791
+ function error(msg) {
792
+ var err = new Error(options.source + ':' + lineno + ':' + column + ': ' + msg);
793
+ err.reason = msg;
794
+ err.filename = options.source;
795
+ err.line = lineno;
796
+ err.column = column;
797
+ err.source = css;
798
+
799
+ if (options.silent) {
800
+ errorsList.push(err);
801
+ } else {
802
+ throw err;
803
+ }
804
+ }
805
+
806
+ /**
807
+ * Parse stylesheet.
808
+ */
809
+
810
+ function stylesheet() {
811
+ var rulesList = rules();
812
+
813
+ return {
814
+ type: 'stylesheet',
815
+ stylesheet: {
816
+ rules: rulesList,
817
+ parsingErrors: errorsList
818
+ }
819
+ };
820
+ }
821
+
822
+ /**
823
+ * Opening brace.
824
+ */
825
+
826
+ function open() {
827
+ return match(/^{\s*/);
828
+ }
829
+
830
+ /**
831
+ * Closing brace.
832
+ */
833
+
834
+ function close() {
835
+ return match(/^}/);
836
+ }
837
+
838
+ /**
839
+ * Parse ruleset.
840
+ */
841
+
842
+ function rules() {
843
+ var node;
844
+ var rules = [];
845
+ whitespace();
846
  comments(rules);
847
  while (css.length && css.charAt(0) != '}' && (node = atrule() || rule())) {
848
  if (node !== false) {
1331
  return obj;
1332
  }
1333
 
1334
+ },{}],8:[function(require,module,exports){
1335
 
1336
  /**
1337
  * Expose `Compiler`.
1383
  return buf;
1384
  };
1385
 
1386
+ },{}],9:[function(require,module,exports){
1387
 
1388
  /**
1389
  * Module dependencies.
1584
  };
1585
 
1586
 
1587
+ },{"./compiler":8,"inherits":13}],10:[function(require,module,exports){
1588
 
1589
  /**
1590
  * Module dependencies.
1840
  return Array(this.level).join(this.indentation || ' ');
1841
  };
1842
 
1843
+ },{"./compiler":8,"inherits":13}],11:[function(require,module,exports){
1844
 
1845
  /**
1846
  * Module dependencies.
1889
  return code;
1890
  };
1891
 
1892
+ },{"./compress":9,"./identity":10,"./source-map-support":12}],12:[function(require,module,exports){
1893
 
1894
  /**
1895
  * Module dependencies.
2017
  return this._comment(node);
2018
  };
2019
 
2020
+ },{"fs":1,"path":2,"source-map":17,"source-map-resolve":15,"urix":27}],13:[function(require,module,exports){
2021
  if (typeof Object.create === 'function') {
2022
  // implementation from standard node.js 'util' module
2023
  module.exports = function inherits(ctor, superCtor) {
2042
  }
2043
  }
2044
 
2045
+ },{}],14:[function(require,module,exports){
2046
  // Copyright 2014 Simon Lydell
2047
  // X11 (“MIT”) Licensed. (See LICENSE.)
2048
 
2091
 
2092
  }));
2093
 
2094
+ },{}],15:[function(require,module,exports){
2095
  // Copyright 2014 Simon Lydell
2096
  // X11 (“MIT”) Licensed. (See LICENSE.)
2097
 
2098
+ // Note: source-map-resolve.js is generated from source-map-resolve-node.js and
2099
+ // source-map-resolve-template.js. Only edit the two latter files, _not_
2100
+ // source-map-resolve.js!
2101
+
2102
  void (function(root, factory) {
2103
  if (typeof define === "function" && define.amd) {
2104
+ define(["source-map-url", "resolve-url"], factory)
2105
  } else if (typeof exports === "object") {
2106
+ var sourceMappingURL = require("source-map-url")
2107
+ var resolveUrl = require("resolve-url")
2108
+ module.exports = factory(sourceMappingURL, resolveUrl)