OLD | NEW |
(Empty) | |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. |
| 4 |
| 5 library big_1_test; |
| 6 |
| 7 import 'package:test/test.dart'; |
| 8 import 'testing.dart'; |
| 9 |
| 10 compilePolyfillAndValidate(String input, String generated) { |
| 11 var errors = []; |
| 12 var stylesheet = polyFillCompileCss(input, errors: errors, opts: options); |
| 13 expect(stylesheet != null, true); |
| 14 expect(errors.isEmpty, true, reason: errors.toString()); |
| 15 expect(prettyPrint(stylesheet), generated); |
| 16 } |
| 17 |
| 18 void big_test() { |
| 19 var input = r''' |
| 20 /******************************************************************** |
| 21 * Kennedy colors |
| 22 ********************************************************************/ |
| 23 @kennedy-red: #dd4b39; |
| 24 @kennedy-blue: #4d90fe; |
| 25 @kennedy-green: #3d9400; |
| 26 |
| 27 /******************************************************************** |
| 28 * link colors |
| 29 ********************************************************************/ |
| 30 @link-color-1: #1155cc; |
| 31 @link-color-2: #666666; |
| 32 |
| 33 /******************************************************************** |
| 34 * text and header colors |
| 35 ********************************************************************/ |
| 36 @text-color-emphasized-1: #222222; |
| 37 @text-color-emphasized-2: #333333; |
| 38 @text-color-regular: #666666; |
| 39 @text-color-deemphasized-1: #777777; |
| 40 @text-color-deemphasized-2: #999999; |
| 41 |
| 42 /******************************************************************** |
| 43 * icon colors |
| 44 ********************************************************************/ |
| 45 @zippy-icon-color: #b2b2b2; |
| 46 @zippy-icon-color-hover: #666666; |
| 47 |
| 48 @mutate-icon-color: #b2b2b2; |
| 49 |
| 50 @silhouette-color: #8bb7fe; |
| 51 |
| 52 /******************************************************************** |
| 53 * Panel and Card colors |
| 54 ********************************************************************/ |
| 55 @panel-header-color: #f7f7f7; |
| 56 @panel-body-color: #ffffff; |
| 57 @panel-border-color: #dcdcdc; |
| 58 |
| 59 /******************************************************************** |
| 60 * App area colors |
| 61 ********************************************************************/ |
| 62 @apparea-background-color: #f2f2f2; |
| 63 |
| 64 /******************************************************************** |
| 65 * Table colors |
| 66 ********************************************************************/ |
| 67 @table-row-numbers: #666666; |
| 68 @table-row-item-links: #1155cc; |
| 69 @table-row-item: #666666; |
| 70 |
| 71 /* Borders */ |
| 72 @table-border-color: #dcdcdc; |
| 73 @table-header-border-color: #dcdcdc; |
| 74 @table-row-data-border-color: #eaeaea; |
| 75 |
| 76 /* General column - USED: We are not currently spec'ing different colors |
| 77 * for the currently sorted/unsorted on column. |
| 78 */ |
| 79 @table-header-label-color: #666666; |
| 80 @table-header-background-color: #f8f8f8; |
| 81 @table-column-background-color: #ffffff; |
| 82 |
| 83 |
| 84 /* Sorted column - UNUSED: We are not currently spec'ing different colors |
| 85 * for the currently sorted/unsorted on column. |
| 86 */ |
| 87 @table-sorted-header-label-color: #666666; |
| 88 @table-sorted-header-background-color: #e6e6e6; |
| 89 @table-sorted-column-background-color: #f8f8f8; |
| 90 |
| 91 /* Unsorted column - UNUSED: We are not currently spec'ing different colors |
| 92 * for the currently sorted/unsorted on column. |
| 93 */ |
| 94 @table-unsorted-header-label-color: #999999; |
| 95 @table-unsorted-header-background-color: #f8f8f8; |
| 96 @table-unsorted-column-background-color: #ffffff; |
| 97 |
| 98 @acux-border-color-1: #e5e5e5; |
| 99 @acux-border-color-2: #3b7bea; |
| 100 @acux-link-color: #3b7bea; |
| 101 @acux-shell-background-color: #f2f2f2; |
| 102 |
| 103 /******************************************************************** |
| 104 * Tooltip and popup colors |
| 105 ********************************************************************/ |
| 106 @tooltip-border-color: #333; |
| 107 @tooltip-color: #fff; |
| 108 @popup-border-color: #fff; |
| 109 |
| 110 /* Border radii */ |
| 111 @button-radius: 2px; |
| 112 |
| 113 @mixin button-gradient(@from, @to) { |
| 114 background-color: @from; |
| 115 background-image: -webkit-linear-gradient(top, @from, @to); |
| 116 background-image: linear-gradient(top, @from, @to); |
| 117 } |
| 118 |
| 119 @mixin button-transition(@property, @time) { |
| 120 -webkit-transition: @property @time; |
| 121 transition: @property @time; |
| 122 } |
| 123 |
| 124 @mixin text-not-selectable() { |
| 125 -webkit-user-select: none; |
| 126 user-select: none; |
| 127 } |
| 128 |
| 129 /* |
| 130 * Buttons and their states |
| 131 */ |
| 132 @mixin btn-base { |
| 133 display: inline-block; |
| 134 min-width: 62px; |
| 135 text-align: center; |
| 136 font-size: 11px; |
| 137 font-weight: bold; |
| 138 height: 28px; |
| 139 padding: 0 8px; |
| 140 line-height: 27px; |
| 141 border-radius: @button-radius; |
| 142 cursor: default; |
| 143 |
| 144 color: #444; |
| 145 border: 1px solid rgba(0,0,0,0.1); |
| 146 @include button-transition(all, 0.218s); |
| 147 @include button-gradient(#f5f5f5, #f1f1f1); |
| 148 |
| 149 &:hover { |
| 150 border: 1px solid #C6C6C6; |
| 151 color: #222; |
| 152 box-shadow: 0px 1px 1px rgba(0,0,0,0.1); |
| 153 @include button-transition(all, 0s); |
| 154 @include button-gradient(#f8f8f8, #f1f1f1); |
| 155 } |
| 156 |
| 157 &:active { |
| 158 border: 1px solid #C6C6C6; |
| 159 color: #666; |
| 160 box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1); |
| 161 @include button-gradient(#f6f6f6, #f1f1f1); |
| 162 } |
| 163 |
| 164 &:focus { |
| 165 outline: none; |
| 166 border: 1px solid #4D90FE; |
| 167 z-index: 4 !important; |
| 168 } |
| 169 |
| 170 &.selected, &.popup-open { |
| 171 border: 1px solid #CCC; |
| 172 color: #666; |
| 173 box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1); |
| 174 @include button-gradient(#EEEEEE, #E0E0E0); |
| 175 } |
| 176 |
| 177 &.disabled, &.disabled:hover, &.disabled:active, |
| 178 &[disabled], &[disabled]:hover, &[disabled]:active { |
| 179 background: none; |
| 180 color: #b8b8b8; |
| 181 border: 1px solid rgba(0,0,0,0.05); |
| 182 cursor: default; |
| 183 pointer-events: none; |
| 184 } |
| 185 |
| 186 &.flat { |
| 187 background: none; |
| 188 border-color: transparent; |
| 189 padding: 0; |
| 190 box-shadow: none; |
| 191 } |
| 192 |
| 193 &.invalid { |
| 194 outline: none; |
| 195 border: 1px solid @kennedy-red; |
| 196 box-shadow: inset 0px 1px 2px rgba(0,0,0,0.3); |
| 197 } |
| 198 } |
| 199 |
| 200 .btn-container { |
| 201 padding: 10px; |
| 202 } |
| 203 |
| 204 .btn { |
| 205 @include btn-base; |
| 206 } |
| 207 |
| 208 .btn-small { |
| 209 /* TODO(prsd): Implement using a mix-in. */ |
| 210 min-width: 30px; |
| 211 } |
| 212 |
| 213 .btn-left { |
| 214 @include btn-base; |
| 215 border-radius: @button-radius 0 0 @button-radius; |
| 216 margin-right: 0; |
| 217 padding: 0; |
| 218 min-width: 30px; |
| 219 } |
| 220 |
| 221 .btn-right { |
| 222 @include btn-base; |
| 223 border-radius: 0 @button-radius @button-radius 0; |
| 224 border-left: none; |
| 225 margin-left: 0; |
| 226 padding: 0; |
| 227 min-width: 30px; |
| 228 } |
| 229 |
| 230 .btn + .btn { |
| 231 margin-left: 5px; |
| 232 } |
| 233 |
| 234 /* Primary Button and it's states */ |
| 235 .btn-primary { |
| 236 color: #FFF !important; |
| 237 width: 94px; |
| 238 border-color: #3079ed; |
| 239 @include button-gradient(#4d90fe, #4787ed); |
| 240 |
| 241 &:hover, &:active { |
| 242 border-color: #2f5bb7; |
| 243 @include button-gradient(#4d90fe, #357ae8); |
| 244 } |
| 245 |
| 246 &:focus { |
| 247 border-color: #4D90FE; |
| 248 box-shadow:inset 0 0 0 1px rgba(255,255,255,0.5); |
| 249 } |
| 250 |
| 251 &:focus:hover { |
| 252 box-shadow:inset 0 0 0 1px #fff, 0px 1px 1px rgba(0,0,0,0.1); |
| 253 } |
| 254 |
| 255 &.disabled, &.disabled:hover, &.disabled:active, |
| 256 &[disabled], &[disabled]:hover, &[disabled]:active { |
| 257 border-color:#3079ed; |
| 258 background-color: #4d90fe; |
| 259 opacity: 0.7; |
| 260 } |
| 261 } |
| 262 |
| 263 /* Checkbox displayed as a toggled button |
| 264 * Invisible checkbox followed by a label with 'for' set to checkbox */ |
| 265 input[type="checkbox"].toggle-button { |
| 266 display: none; |
| 267 |
| 268 & + label { |
| 269 @extend .btn; |
| 270 } |
| 271 |
| 272 &:checked + label, |
| 273 & + label.popup-open { |
| 274 border: 1px solid #CCC; |
| 275 color: #666; |
| 276 box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1); |
| 277 @include button-gradient(#EEEEEE, #E0E0E0); |
| 278 } |
| 279 } |
| 280 |
| 281 .txt-input { |
| 282 display:inline-block; |
| 283 *display:inline; |
| 284 *zoom:1; |
| 285 padding:4px 12px; |
| 286 margin-bottom:0; |
| 287 font-size:14px; |
| 288 line-height:20px; |
| 289 vertical-align:middle; |
| 290 color:#333333; |
| 291 border-color:#e6e6e6 #e6e6e6 #bfbfbf; |
| 292 border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); |
| 293 border:1px solid #cccccc; |
| 294 *border:0; |
| 295 border-bottom-color:#b3b3b3; |
| 296 -webkit-border-radius:4px; |
| 297 -moz-border-radius:4px; |
| 298 border-radius:4px; |
| 299 *margin-left:.3em; |
| 300 -webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px |
| 301 rgba(0,0,0,.05); |
| 302 -moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05); |
| 303 box-shadow:inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05); |
| 304 } |
| 305 |
| 306 input[type="text"], input:not([type]), .txt-input { |
| 307 height: 29px; |
| 308 background-color: white; |
| 309 padding: 4px 0 4px 8px; |
| 310 color: 333; |
| 311 border: 1px solid #d9d9d9; |
| 312 border-top: 1px solid #c0c0c0; |
| 313 display: inline-block; |
| 314 vertical-align: top; |
| 315 box-sizing: border-box; |
| 316 border-radius: 1px; |
| 317 |
| 318 &:hover { |
| 319 border: 1px solid #b9b9b9; |
| 320 border-top: 1px solid #a0a0a0; |
| 321 box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1); |
| 322 } |
| 323 |
| 324 &:focus { |
| 325 outline: none; |
| 326 border: 1px solid @kennedy-blue; |
| 327 box-shadow: inset 0px 1px 2px rgba(0,0,0,0.3); |
| 328 } |
| 329 |
| 330 &.disabled, &.disabled:hover, &.disabled:active, &:disabled { |
| 331 background: #fff; |
| 332 border: 1px solid #f3f3f3; |
| 333 border: 1px solid rgba(0,0,0,0.05); |
| 334 color: #b8b8b8; |
| 335 cursor: default; |
| 336 pointer-events: none; |
| 337 } |
| 338 |
| 339 &.invalid, &:focus:invalid, &:required:invalid { |
| 340 outline: none; |
| 341 border: 1px solid @kennedy-red; |
| 342 box-shadow: inset 0px 1px 2px rgba(0,0,0,0.3); |
| 343 } |
| 344 } |
| 345 |
| 346 /* Text area */ |
| 347 textarea { |
| 348 @extend .txt-input; |
| 349 height: 3em; |
| 350 } |
| 351 |
| 352 /* Hide the spin button in datepickers */ |
| 353 input[type="date"]::-webkit-inner-spin-button, |
| 354 input[type="datetime"]::-webkit-inner-spin-button, |
| 355 input[type="datetime-local"]::-webkit-inner-spin-button, |
| 356 input[type="month"]::-webkit-inner-spin-button, |
| 357 input[type="time"]::-webkit-inner-spin-button, |
| 358 input[type="week"]::-webkit-inner-spin-button { |
| 359 display: none; |
| 360 } |
| 361 |
| 362 |
| 363 /* |
| 364 * Selects & Dropdowns |
| 365 */ |
| 366 .dropdown-menu, |
| 367 .popup { |
| 368 width: auto; |
| 369 padding: 0; |
| 370 margin: 0 0 0 1px; |
| 371 background: white; |
| 372 text-align: left; |
| 373 z-index: 1000; |
| 374 outline: 1px solid rgba(0,0,0,0.2); |
| 375 white-space: nowrap; |
| 376 list-style: none; |
| 377 box-shadow: 0px 2px 4px rgba(0,0,0,0.2); |
| 378 @include button-transition(opacity, 0.218s); |
| 379 } |
| 380 |
| 381 .popup { |
| 382 padding: 0 0 6px; |
| 383 } |
| 384 .dropdown-menu, |
| 385 .popup { |
| 386 pointer-events: all; |
| 387 } |
| 388 |
| 389 .popup ul { |
| 390 margin: 0; |
| 391 padding: 0; |
| 392 } |
| 393 .popup li { |
| 394 list-style-type: none; |
| 395 padding: 5px 10px; |
| 396 cursor: default; |
| 397 } |
| 398 .popup .header { |
| 399 padding: 5px 10px; |
| 400 } |
| 401 |
| 402 /* existing styles defined here */ |
| 403 .popup .divider, |
| 404 .dropdown-menu .divider { |
| 405 width:100%; |
| 406 height:1px; |
| 407 padding: 0; |
| 408 overflow:hidden; |
| 409 background-color:#c0c0c0; |
| 410 border-bottom:1px solid @popup-border-color; |
| 411 } |
| 412 |
| 413 .dropdown-menu { |
| 414 max-height: 600px; |
| 415 overflow-x: hidden; |
| 416 overflow-y: auto; |
| 417 } |
| 418 .popup { |
| 419 overflow: hidden; |
| 420 } |
| 421 |
| 422 .dropdown-menuitem, |
| 423 .dropdown-menu > li { |
| 424 display: block; |
| 425 padding: 6px 44px 6px 16px; |
| 426 color: #666; |
| 427 font-size:13px; |
| 428 font-weight: normal; |
| 429 cursor: default; |
| 430 margin: 0; |
| 431 text-decoration: none; |
| 432 @include text-not-selectable(); |
| 433 |
| 434 &.disabled { |
| 435 color: #CCC; |
| 436 background-color: #FFF; |
| 437 } |
| 438 |
| 439 &:hover, &.selected { |
| 440 color: #222; |
| 441 background-color: #F1F1F1; |
| 442 } |
| 443 } |
| 444 |
| 445 .dropdown-menuheader { |
| 446 padding: 6px 44px 6px 16px; |
| 447 color: #666; |
| 448 font-size:11px; |
| 449 font-weight: bold; |
| 450 cursor: default; |
| 451 margin: 0; |
| 452 text-decoration: none; |
| 453 background-color: #F1F1F1; |
| 454 @include text-not-selectable(); |
| 455 } |
| 456 |
| 457 li.dropdown-menudivider { |
| 458 width:100%; |
| 459 height:1px; |
| 460 padding: 0; |
| 461 overflow:hidden; |
| 462 background-color:#D0D0D0; |
| 463 border-bottom:1px solid #ffffff; |
| 464 } |
| 465 |
| 466 .btn-container { |
| 467 padding: 10px; |
| 468 } |
| 469 |
| 470 /* |
| 471 * Modal dialogs |
| 472 */ |
| 473 |
| 474 .modal-frame { |
| 475 position: relative; |
| 476 background-color: white; |
| 477 outline: 1px solid rgba(0, 0, 0, 0.2); |
| 478 padding: 30px 42px; |
| 479 min-width: 480px; |
| 480 z-index: 9000; |
| 481 pointer-events: auto; |
| 482 box-shadow: 0 4px 16px 0 rgba(0,0,0,0.2); |
| 483 |
| 484 @include button-transition(all, 0.218s); |
| 485 |
| 486 &.medium { |
| 487 padding: 28px 32px; |
| 488 min-width: 280px; |
| 489 } |
| 490 |
| 491 &.small { |
| 492 padding: 16px 20px; |
| 493 } |
| 494 |
| 495 } |
| 496 |
| 497 .modal-backdrop { |
| 498 background-color: rgba(0,0,0,0.1); |
| 499 position: fixed; |
| 500 height: 100%; |
| 501 width: 100%; |
| 502 left: 0; |
| 503 right: 0; |
| 504 top: 0; |
| 505 bottom: 0; |
| 506 z-index: 99; |
| 507 margin: 0; |
| 508 |
| 509 display: none; |
| 510 opacity: 0; |
| 511 @include button-transition(all, 0.218s); |
| 512 |
| 513 &.visible { |
| 514 display: -webkit-flex; |
| 515 display: flex; |
| 516 -webkit-align-items: center; |
| 517 align-items: center; |
| 518 -webkit-justify-content: space-around; |
| 519 justify-content: space-around; |
| 520 opacity: 1; |
| 521 } |
| 522 } |
| 523 |
| 524 /* |
| 525 * Scrollbars |
| 526 */ |
| 527 |
| 528 ::-webkit-scrollbar { |
| 529 width: 10px; |
| 530 height: 10px; |
| 531 background: white; |
| 532 } |
| 533 |
| 534 ::-webkit-scrollbar-button { |
| 535 height: 0px; |
| 536 width: 0px; |
| 537 |
| 538 &:start:decrement, |
| 539 &:end:increment { |
| 540 display: block; |
| 541 } |
| 542 |
| 543 &:vertical:start:increment, |
| 544 &:vertical:end:decrement { |
| 545 display: none; |
| 546 } |
| 547 } |
| 548 |
| 549 ::-webkit-scrollbar-thumb { |
| 550 background-color: rgba(0, 0, 0, .2); |
| 551 background-clip: padding-box; |
| 552 border: solid transparent; |
| 553 border-width: 1px 1px 1px 2px; |
| 554 min-height: 28px; |
| 555 padding: 100px 0 0; |
| 556 box-shadow: inset 1px 1px 0 rgba(0, 0, 0, .1), |
| 557 inset 0 -1px 0 rgba(0, 0, 0, .07); |
| 558 |
| 559 &:hover { |
| 560 background-color: rgba(0,0,0,0.4); |
| 561 -webkit-box-shadow: inset 1px 1px 1px rgba(0,0,0,0.25); |
| 562 } |
| 563 |
| 564 &:active { |
| 565 -webkit-box-shadow: inset 1px 1px 3px rgba(0,0,0,0.35); |
| 566 background-color: rgba(0,0,0,0.5); |
| 567 } |
| 568 |
| 569 &:vertical { |
| 570 border-top: 0px solid transparent; |
| 571 border-bottom: 0px solid transparent; |
| 572 border-right: 0px solid transparent; |
| 573 border-left: 1px solid transparent; |
| 574 } |
| 575 |
| 576 &:horizontal { |
| 577 border-top: 1px solid transparent; |
| 578 border-bottom: 0px solid transparent; |
| 579 border-right: 0px solid transparent; |
| 580 border-left: 0px solid transparent; |
| 581 } |
| 582 } |
| 583 |
| 584 ::-webkit-scrollbar-track { |
| 585 background-clip: padding-box; |
| 586 background-color: white; |
| 587 |
| 588 &:hover { |
| 589 background-color: rgba(0,0,0,0.05); |
| 590 -webkit-box-shadow: inset 1px 0px 0px rgba(0,0,0,0.10); |
| 591 } |
| 592 |
| 593 &:active { |
| 594 background-color: rgba(0,0,0,0.05); |
| 595 -webkit-box-shadow: inset 1px 0px 0px rgba(0,0,0,0.14), |
| 596 inset -1px -1px 0px rgba(0,0,0,0.07); |
| 597 } |
| 598 |
| 599 &:vertical { |
| 600 border-right: 0px solid transparent; |
| 601 border-left: 1px solid transparent; |
| 602 } |
| 603 |
| 604 &:horizontal { |
| 605 border-bottom: 0px solid transparent; |
| 606 border-top: 1px solid transparent; |
| 607 } |
| 608 } |
| 609 |
| 610 /* Tooltips */ |
| 611 .tooltip { |
| 612 background: @tooltip-border-color; |
| 613 border-radius: 2px; |
| 614 color: @tooltip-color; |
| 615 padding: 4px 8px; |
| 616 font-size: 10px; |
| 617 } |
| 618 |
| 619 .tooltip a, |
| 620 .tooltip div, |
| 621 .tooltip span { |
| 622 color: @tooltip-color; |
| 623 } |
| 624 '''; |
| 625 |
| 626 var generated = r'''.btn-container { |
| 627 padding: 10px; |
| 628 } |
| 629 .btn, input[type="checkbox"].toggle-button + label { |
| 630 display: inline-block; |
| 631 min-width: 62px; |
| 632 text-align: center; |
| 633 font-size: 11px; |
| 634 font-weight: bold; |
| 635 height: 28px; |
| 636 padding: 0 8px; |
| 637 line-height: 27px; |
| 638 border-radius: 2px; |
| 639 cursor: default; |
| 640 color: #444; |
| 641 border: 1px solid rgba(0, 0, 0, 0.1); |
| 642 -webkit-transition: all 0.218s; |
| 643 transition: all 0.218s; |
| 644 background-color: #f5f5f5; |
| 645 background-image: -webkit-linear-gradient(top, #f5f5f5, #f1f1f1); |
| 646 background-image: linear-gradient(top, #f5f5f5, #f1f1f1); |
| 647 } |
| 648 .btn:hover, input[type="checkbox"].toggle-button + label:hover { |
| 649 border: 1px solid #C6C6C6; |
| 650 color: #222; |
| 651 box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1); |
| 652 -webkit-transition: all 0s; |
| 653 transition: all 0s; |
| 654 background-color: #f8f8f8; |
| 655 background-image: -webkit-linear-gradient(top, #f8f8f8, #f1f1f1); |
| 656 background-image: linear-gradient(top, #f8f8f8, #f1f1f1); |
| 657 } |
| 658 .btn:active, input[type="checkbox"].toggle-button + label:active { |
| 659 border: 1px solid #C6C6C6; |
| 660 color: #666; |
| 661 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1); |
| 662 background-color: #f6f6f6; |
| 663 background-image: -webkit-linear-gradient(top, #f6f6f6, #f1f1f1); |
| 664 background-image: linear-gradient(top, #f6f6f6, #f1f1f1); |
| 665 } |
| 666 .btn:focus, input[type="checkbox"].toggle-button + label:focus { |
| 667 outline: none; |
| 668 border: 1px solid #4D90FE; |
| 669 z-index: 4 !important; |
| 670 } |
| 671 .btn.selected, .btn.popup-open, input[type="checkbox"].toggle-button + label.sel
ected, input[type="checkbox"].toggle-button + label.popup-open { |
| 672 border: 1px solid #CCC; |
| 673 color: #666; |
| 674 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1); |
| 675 background-color: #EEE; |
| 676 background-image: -webkit-linear-gradient(top, #EEE, #E0E0E0); |
| 677 background-image: linear-gradient(top, #EEE, #E0E0E0); |
| 678 } |
| 679 .btn.disabled, .btn.disabled:hover, .btn.disabled:active, .btn[disabled], .btn[d
isabled]:hover, .btn[disabled]:active, input[type="checkbox"].toggle-button + la
bel.disabled, input[type="checkbox"].toggle-button + label.disabled:hover, input
[type="checkbox"].toggle-button + label.disabled:active, input[type="checkbox"].
toggle-button + label[disabled], input[type="checkbox"].toggle-button + label[di
sabled]:hover, input[type="checkbox"].toggle-button + label[disabled]:active { |
| 680 background: none; |
| 681 color: #b8b8b8; |
| 682 border: 1px solid rgba(0, 0, 0, 0.05); |
| 683 cursor: default; |
| 684 pointer-events: none; |
| 685 } |
| 686 .btn.flat, input[type="checkbox"].toggle-button + label.flat { |
| 687 background: none; |
| 688 border-color: transparent; |
| 689 padding: 0; |
| 690 box-shadow: none; |
| 691 } |
| 692 .btn.invalid, input[type="checkbox"].toggle-button + label.invalid { |
| 693 outline: none; |
| 694 border: 1px solid #dd4b39; |
| 695 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.3); |
| 696 } |
| 697 .btn-small { |
| 698 min-width: 30px; |
| 699 } |
| 700 .btn-left { |
| 701 display: inline-block; |
| 702 min-width: 62px; |
| 703 text-align: center; |
| 704 font-size: 11px; |
| 705 font-weight: bold; |
| 706 height: 28px; |
| 707 padding: 0 8px; |
| 708 line-height: 27px; |
| 709 border-radius: 2px; |
| 710 cursor: default; |
| 711 color: #444; |
| 712 border: 1px solid rgba(0, 0, 0, 0.1); |
| 713 -webkit-transition: all 0.218s; |
| 714 transition: all 0.218s; |
| 715 background-color: #f5f5f5; |
| 716 background-image: -webkit-linear-gradient(top, #f5f5f5, #f1f1f1); |
| 717 background-image: linear-gradient(top, #f5f5f5, #f1f1f1); |
| 718 border-radius: 2px 0 0 2px; |
| 719 margin-right: 0; |
| 720 padding: 0; |
| 721 min-width: 30px; |
| 722 } |
| 723 .btn-left:hover { |
| 724 border: 1px solid #C6C6C6; |
| 725 color: #222; |
| 726 box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1); |
| 727 -webkit-transition: all 0s; |
| 728 transition: all 0s; |
| 729 background-color: #f8f8f8; |
| 730 background-image: -webkit-linear-gradient(top, #f8f8f8, #f1f1f1); |
| 731 background-image: linear-gradient(top, #f8f8f8, #f1f1f1); |
| 732 } |
| 733 .btn-left:active { |
| 734 border: 1px solid #C6C6C6; |
| 735 color: #666; |
| 736 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1); |
| 737 background-color: #f6f6f6; |
| 738 background-image: -webkit-linear-gradient(top, #f6f6f6, #f1f1f1); |
| 739 background-image: linear-gradient(top, #f6f6f6, #f1f1f1); |
| 740 } |
| 741 .btn-left:focus { |
| 742 outline: none; |
| 743 border: 1px solid #4D90FE; |
| 744 z-index: 4 !important; |
| 745 } |
| 746 .btn-left.selected, .btn-left.popup-open { |
| 747 border: 1px solid #CCC; |
| 748 color: #666; |
| 749 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1); |
| 750 background-color: #EEE; |
| 751 background-image: -webkit-linear-gradient(top, #EEE, #E0E0E0); |
| 752 background-image: linear-gradient(top, #EEE, #E0E0E0); |
| 753 } |
| 754 .btn-left.disabled, .btn-left.disabled:hover, .btn-left.disabled:active, .btn-le
ft[disabled], .btn-left[disabled]:hover, .btn-left[disabled]:active { |
| 755 background: none; |
| 756 color: #b8b8b8; |
| 757 border: 1px solid rgba(0, 0, 0, 0.05); |
| 758 cursor: default; |
| 759 pointer-events: none; |
| 760 } |
| 761 .btn-left.flat { |
| 762 background: none; |
| 763 border-color: transparent; |
| 764 padding: 0; |
| 765 box-shadow: none; |
| 766 } |
| 767 .btn-left.invalid { |
| 768 outline: none; |
| 769 border: 1px solid #dd4b39; |
| 770 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.3); |
| 771 } |
| 772 .btn-right { |
| 773 display: inline-block; |
| 774 min-width: 62px; |
| 775 text-align: center; |
| 776 font-size: 11px; |
| 777 font-weight: bold; |
| 778 height: 28px; |
| 779 padding: 0 8px; |
| 780 line-height: 27px; |
| 781 border-radius: 2px; |
| 782 cursor: default; |
| 783 color: #444; |
| 784 border: 1px solid rgba(0, 0, 0, 0.1); |
| 785 -webkit-transition: all 0.218s; |
| 786 transition: all 0.218s; |
| 787 background-color: #f5f5f5; |
| 788 background-image: -webkit-linear-gradient(top, #f5f5f5, #f1f1f1); |
| 789 background-image: linear-gradient(top, #f5f5f5, #f1f1f1); |
| 790 border-radius: 0 2px 2px 0; |
| 791 border-left: none; |
| 792 margin-left: 0; |
| 793 padding: 0; |
| 794 min-width: 30px; |
| 795 } |
| 796 .btn-right:hover { |
| 797 border: 1px solid #C6C6C6; |
| 798 color: #222; |
| 799 box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1); |
| 800 -webkit-transition: all 0s; |
| 801 transition: all 0s; |
| 802 background-color: #f8f8f8; |
| 803 background-image: -webkit-linear-gradient(top, #f8f8f8, #f1f1f1); |
| 804 background-image: linear-gradient(top, #f8f8f8, #f1f1f1); |
| 805 } |
| 806 .btn-right:active { |
| 807 border: 1px solid #C6C6C6; |
| 808 color: #666; |
| 809 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1); |
| 810 background-color: #f6f6f6; |
| 811 background-image: -webkit-linear-gradient(top, #f6f6f6, #f1f1f1); |
| 812 background-image: linear-gradient(top, #f6f6f6, #f1f1f1); |
| 813 } |
| 814 .btn-right:focus { |
| 815 outline: none; |
| 816 border: 1px solid #4D90FE; |
| 817 z-index: 4 !important; |
| 818 } |
| 819 .btn-right.selected, .btn-right.popup-open { |
| 820 border: 1px solid #CCC; |
| 821 color: #666; |
| 822 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1); |
| 823 background-color: #EEE; |
| 824 background-image: -webkit-linear-gradient(top, #EEE, #E0E0E0); |
| 825 background-image: linear-gradient(top, #EEE, #E0E0E0); |
| 826 } |
| 827 .btn-right.disabled, .btn-right.disabled:hover, .btn-right.disabled:active, .btn
-right[disabled], .btn-right[disabled]:hover, .btn-right[disabled]:active { |
| 828 background: none; |
| 829 color: #b8b8b8; |
| 830 border: 1px solid rgba(0, 0, 0, 0.05); |
| 831 cursor: default; |
| 832 pointer-events: none; |
| 833 } |
| 834 .btn-right.flat { |
| 835 background: none; |
| 836 border-color: transparent; |
| 837 padding: 0; |
| 838 box-shadow: none; |
| 839 } |
| 840 .btn-right.invalid { |
| 841 outline: none; |
| 842 border: 1px solid #dd4b39; |
| 843 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.3); |
| 844 } |
| 845 .btn + .btn, input[type="checkbox"].toggle-button + label + .btn, .btn + input[t
ype="checkbox"].toggle-button + label, input[type="checkbox"].toggle-button + la
bel + input[type="checkbox"].toggle-button + label, input[type="checkbox"].toggl
e-button + label + input[type="checkbox"].toggle-button + label { |
| 846 margin-left: 5px; |
| 847 } |
| 848 .btn-primary { |
| 849 color: #FFF !important; |
| 850 width: 94px; |
| 851 border-color: #3079ed; |
| 852 background-color: #4d90fe; |
| 853 background-image: -webkit-linear-gradient(top, #4d90fe, #4787ed); |
| 854 background-image: linear-gradient(top, #4d90fe, #4787ed); |
| 855 } |
| 856 .btn-primary:hover, .btn-primary:active { |
| 857 border-color: #2f5bb7; |
| 858 background-color: #4d90fe; |
| 859 background-image: -webkit-linear-gradient(top, #4d90fe, #357ae8); |
| 860 background-image: linear-gradient(top, #4d90fe, #357ae8); |
| 861 } |
| 862 .btn-primary:focus { |
| 863 border-color: #4D90FE; |
| 864 box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.5); |
| 865 } |
| 866 .btn-primary:focus:hover { |
| 867 box-shadow: inset 0 0 0 1px #fff, 0px 1px 1px rgba(0, 0, 0, 0.1); |
| 868 } |
| 869 .btn-primary.disabled, .btn-primary.disabled:hover, .btn-primary.disabled:active
, .btn-primary[disabled], .btn-primary[disabled]:hover, .btn-primary[disabled]:a
ctive { |
| 870 border-color: #3079ed; |
| 871 background-color: #4d90fe; |
| 872 opacity: 0.7; |
| 873 } |
| 874 input[type="checkbox"].toggle-button { |
| 875 display: none; |
| 876 } |
| 877 input[type="checkbox"].toggle-button + label { |
| 878 } |
| 879 input[type="checkbox"].toggle-button:checked + label, input[type="checkbox"].tog
gle-button + label.popup-open { |
| 880 border: 1px solid #CCC; |
| 881 color: #666; |
| 882 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1); |
| 883 background-color: #EEE; |
| 884 background-image: -webkit-linear-gradient(top, #EEE, #E0E0E0); |
| 885 background-image: linear-gradient(top, #EEE, #E0E0E0); |
| 886 } |
| 887 .txt-input, textarea { |
| 888 display: inline-block; |
| 889 *display: inline; |
| 890 *zoom: 1; |
| 891 padding: 4px 12px; |
| 892 margin-bottom: 0; |
| 893 font-size: 14px; |
| 894 line-height: 20px; |
| 895 vertical-align: middle; |
| 896 color: #333; |
| 897 border-color: #e6e6e6 #e6e6e6 #bfbfbf; |
| 898 border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); |
| 899 border: 1px solid #ccc; |
| 900 *border: 0; |
| 901 border-bottom-color: #b3b3b3; |
| 902 -webkit-border-radius: 4px; |
| 903 -moz-border-radius: 4px; |
| 904 border-radius: 4px; |
| 905 *margin-left: .3em; |
| 906 -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0
, 0, .05); |
| 907 -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0
, .05); |
| 908 box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05
); |
| 909 } |
| 910 input[type="text"], input:not([type]), .txt-input, textarea { |
| 911 height: 29px; |
| 912 background-color: #fff; |
| 913 padding: 4px 0 4px 8px; |
| 914 color: 333; |
| 915 border: 1px solid #d9d9d9; |
| 916 border-top: 1px solid #c0c0c0; |
| 917 display: inline-block; |
| 918 vertical-align: top; |
| 919 box-sizing: border-box; |
| 920 border-radius: 1px; |
| 921 } |
| 922 input[type="text"]:hover, input:not([type]):hover, .txt-input:hover, textarea:ho
ver { |
| 923 border: 1px solid #b9b9b9; |
| 924 border-top: 1px solid #a0a0a0; |
| 925 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.1); |
| 926 } |
| 927 input[type="text"]:focus, input:not([type]):focus, .txt-input:focus, textarea:fo
cus { |
| 928 outline: none; |
| 929 border: 1px solid #4d90fe; |
| 930 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.3); |
| 931 } |
| 932 input[type="text"].disabled, input:not([type]).disabled, .txt-input.disabled, in
put[type="text"].disabled:hover, input:not([type]).disabled:hover, .txt-input.di
sabled:hover, input[type="text"].disabled:active, input:not([type]).disabled:act
ive, .txt-input.disabled:active, input[type="text"]:disabled, input:not([type]):
disabled, .txt-input:disabled, textarea.disabled, textarea.disabled:hover, texta
rea.disabled:active, textarea:disabled { |
| 933 background: #fff; |
| 934 border: 1px solid #f3f3f3; |
| 935 border: 1px solid rgba(0, 0, 0, 0.05); |
| 936 color: #b8b8b8; |
| 937 cursor: default; |
| 938 pointer-events: none; |
| 939 } |
| 940 input[type="text"].invalid, input:not([type]).invalid, .txt-input.invalid, input
[type="text"]:focus:invalid, input:not([type]):focus:invalid, .txt-input:focus:i
nvalid, input[type="text"]:required:invalid, input:not([type]):required:invalid,
.txt-input:required:invalid, textarea.invalid, textarea:focus:invalid, textarea
:required:invalid { |
| 941 outline: none; |
| 942 border: 1px solid #dd4b39; |
| 943 box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.3); |
| 944 } |
| 945 textarea { |
| 946 height: 3em; |
| 947 } |
| 948 input[type="date"]::-webkit-inner-spin-button, input[type="datetime"]::-webkit-i
nner-spin-button, input[type="datetime-local"]::-webkit-inner-spin-button, input
[type="month"]::-webkit-inner-spin-button, input[type="time"]::-webkit-inner-spi
n-button, input[type="week"]::-webkit-inner-spin-button { |
| 949 display: none; |
| 950 } |
| 951 .dropdown-menu, .popup { |
| 952 width: auto; |
| 953 padding: 0; |
| 954 margin: 0 0 0 1px; |
| 955 background: #fff; |
| 956 text-align: left; |
| 957 z-index: 1000; |
| 958 outline: 1px solid rgba(0, 0, 0, 0.2); |
| 959 white-space: nowrap; |
| 960 list-style: none; |
| 961 box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2); |
| 962 -webkit-transition: opacity 0.218s; |
| 963 transition: opacity 0.218s; |
| 964 } |
| 965 .popup { |
| 966 padding: 0 0 6px; |
| 967 } |
| 968 .dropdown-menu, .popup { |
| 969 pointer-events: all; |
| 970 } |
| 971 .popup ul { |
| 972 margin: 0; |
| 973 padding: 0; |
| 974 } |
| 975 .popup li { |
| 976 list-style-type: none; |
| 977 padding: 5px 10px; |
| 978 cursor: default; |
| 979 } |
| 980 .popup .header { |
| 981 padding: 5px 10px; |
| 982 } |
| 983 .popup .divider, .dropdown-menu .divider { |
| 984 width: 100%; |
| 985 height: 1px; |
| 986 padding: 0; |
| 987 overflow: hidden; |
| 988 background-color: #c0c0c0; |
| 989 border-bottom: 1px solid #fff; |
| 990 } |
| 991 .dropdown-menu { |
| 992 max-height: 600px; |
| 993 overflow-x: hidden; |
| 994 overflow-y: auto; |
| 995 } |
| 996 .popup { |
| 997 overflow: hidden; |
| 998 } |
| 999 .dropdown-menuitem, .dropdown-menu > li { |
| 1000 display: block; |
| 1001 padding: 6px 44px 6px 16px; |
| 1002 color: #666; |
| 1003 font-size: 13px; |
| 1004 font-weight: normal; |
| 1005 cursor: default; |
| 1006 margin: 0; |
| 1007 text-decoration: none; |
| 1008 -webkit-user-select: none; |
| 1009 user-select: none; |
| 1010 } |
| 1011 .dropdown-menuitem.disabled, .dropdown-menu > li.disabled { |
| 1012 color: #CCC; |
| 1013 background-color: #FFF; |
| 1014 } |
| 1015 .dropdown-menuitem:hover, .dropdown-menu > li:hover, .dropdown-menuitem.selected
, .dropdown-menu > li.selected { |
| 1016 color: #222; |
| 1017 background-color: #F1F1F1; |
| 1018 } |
| 1019 .dropdown-menuheader { |
| 1020 padding: 6px 44px 6px 16px; |
| 1021 color: #666; |
| 1022 font-size: 11px; |
| 1023 font-weight: bold; |
| 1024 cursor: default; |
| 1025 margin: 0; |
| 1026 text-decoration: none; |
| 1027 background-color: #F1F1F1; |
| 1028 -webkit-user-select: none; |
| 1029 user-select: none; |
| 1030 } |
| 1031 li.dropdown-menudivider { |
| 1032 width: 100%; |
| 1033 height: 1px; |
| 1034 padding: 0; |
| 1035 overflow: hidden; |
| 1036 background-color: #D0D0D0; |
| 1037 border-bottom: 1px solid #fff; |
| 1038 } |
| 1039 .btn-container { |
| 1040 padding: 10px; |
| 1041 } |
| 1042 .modal-frame { |
| 1043 position: relative; |
| 1044 background-color: #fff; |
| 1045 outline: 1px solid rgba(0, 0, 0, 0.2); |
| 1046 padding: 30px 42px; |
| 1047 min-width: 480px; |
| 1048 z-index: 9000; |
| 1049 pointer-events: auto; |
| 1050 box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.2); |
| 1051 -webkit-transition: all 0.218s; |
| 1052 transition: all 0.218s; |
| 1053 } |
| 1054 .modal-frame.medium { |
| 1055 padding: 28px 32px; |
| 1056 min-width: 280px; |
| 1057 } |
| 1058 .modal-frame.small { |
| 1059 padding: 16px 20px; |
| 1060 } |
| 1061 .modal-backdrop { |
| 1062 background-color: rgba(0, 0, 0, 0.1); |
| 1063 position: fixed; |
| 1064 height: 100%; |
| 1065 width: 100%; |
| 1066 left: 0; |
| 1067 right: 0; |
| 1068 top: 0; |
| 1069 bottom: 0; |
| 1070 z-index: 99; |
| 1071 margin: 0; |
| 1072 display: none; |
| 1073 opacity: 0; |
| 1074 -webkit-transition: all 0.218s; |
| 1075 transition: all 0.218s; |
| 1076 } |
| 1077 .modal-backdrop.visible { |
| 1078 display: -webkit-flex; |
| 1079 display: flex; |
| 1080 -webkit-align-items: center; |
| 1081 align-items: center; |
| 1082 -webkit-justify-content: space-around; |
| 1083 justify-content: space-around; |
| 1084 opacity: 1; |
| 1085 } |
| 1086 ::-webkit-scrollbar { |
| 1087 width: 10px; |
| 1088 height: 10px; |
| 1089 background: #fff; |
| 1090 } |
| 1091 ::-webkit-scrollbar-button { |
| 1092 height: 0px; |
| 1093 width: 0px; |
| 1094 } |
| 1095 ::-webkit-scrollbar-button:start:decrement, ::-webkit-scrollbar-button:end:incre
ment { |
| 1096 display: block; |
| 1097 } |
| 1098 ::-webkit-scrollbar-button:vertical:start:increment, ::-webkit-scrollbar-button:
vertical:end:decrement { |
| 1099 display: none; |
| 1100 } |
| 1101 ::-webkit-scrollbar-thumb { |
| 1102 background-color: rgba(0, 0, 0, .2); |
| 1103 background-clip: padding-box; |
| 1104 border: solid transparent; |
| 1105 border-width: 1px 1px 1px 2px; |
| 1106 min-height: 28px; |
| 1107 padding: 100px 0 0; |
| 1108 box-shadow: inset 1px 1px 0 rgba(0, 0, 0, .1), inset 0 -1px 0 rgba(0, 0, 0, .0
7); |
| 1109 } |
| 1110 ::-webkit-scrollbar-thumb:hover { |
| 1111 background-color: rgba(0, 0, 0, 0.4); |
| 1112 -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.25); |
| 1113 } |
| 1114 ::-webkit-scrollbar-thumb:active { |
| 1115 -webkit-box-shadow: inset 1px 1px 3px rgba(0, 0, 0, 0.35); |
| 1116 background-color: rgba(0, 0, 0, 0.5); |
| 1117 } |
| 1118 ::-webkit-scrollbar-thumb:vertical { |
| 1119 border-top: 0px solid transparent; |
| 1120 border-bottom: 0px solid transparent; |
| 1121 border-right: 0px solid transparent; |
| 1122 border-left: 1px solid transparent; |
| 1123 } |
| 1124 ::-webkit-scrollbar-thumb:horizontal { |
| 1125 border-top: 1px solid transparent; |
| 1126 border-bottom: 0px solid transparent; |
| 1127 border-right: 0px solid transparent; |
| 1128 border-left: 0px solid transparent; |
| 1129 } |
| 1130 ::-webkit-scrollbar-track { |
| 1131 background-clip: padding-box; |
| 1132 background-color: #fff; |
| 1133 } |
| 1134 ::-webkit-scrollbar-track:hover { |
| 1135 background-color: rgba(0, 0, 0, 0.05); |
| 1136 -webkit-box-shadow: inset 1px 0px 0px rgba(0, 0, 0, 0.10); |
| 1137 } |
| 1138 ::-webkit-scrollbar-track:active { |
| 1139 background-color: rgba(0, 0, 0, 0.05); |
| 1140 -webkit-box-shadow: inset 1px 0px 0px rgba(0, 0, 0, 0.14), inset -1px -1px 0px
rgba(0, 0, 0, 0.07); |
| 1141 } |
| 1142 ::-webkit-scrollbar-track:vertical { |
| 1143 border-right: 0px solid transparent; |
| 1144 border-left: 1px solid transparent; |
| 1145 } |
| 1146 ::-webkit-scrollbar-track:horizontal { |
| 1147 border-bottom: 0px solid transparent; |
| 1148 border-top: 1px solid transparent; |
| 1149 } |
| 1150 .tooltip { |
| 1151 background: #333; |
| 1152 border-radius: 2px; |
| 1153 color: #fff; |
| 1154 padding: 4px 8px; |
| 1155 font-size: 10px; |
| 1156 } |
| 1157 .tooltip a, .tooltip div, .tooltip span { |
| 1158 color: #fff; |
| 1159 }'''; |
| 1160 |
| 1161 compilePolyfillAndValidate(input, generated); |
| 1162 } |
| 1163 |
| 1164 main() { |
| 1165 test('big #1', big_test); |
| 1166 } |
OLD | NEW |