flint-gs 2.0.9 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/lib/flint/version.rb +1 -1
  3. data/stylesheets/flint/functions/helpers/_helpers.scss +14 -0
  4. data/stylesheets/flint/mixins/lib/_main.scss +39 -26
  5. data/tests/bootcamp/CHANGELOG.md +70 -0
  6. data/tests/bootcamp/CONTRIBUTING.md +72 -0
  7. data/tests/bootcamp/Gruntfile.coffee +34 -0
  8. data/tests/bootcamp/LICENSE.md +7 -0
  9. data/tests/bootcamp/README.md +52 -0
  10. data/tests/bootcamp/bower.json +15 -0
  11. data/tests/bootcamp/{_bootcamp.scss → dist/_bootcamp.scss} +0 -0
  12. data/tests/bootcamp/{bootcamp.coffee → dist/bootcamp.coffee} +0 -0
  13. data/tests/bootcamp/{core → dist/core}/functions/_actual.scss +0 -0
  14. data/tests/bootcamp/{core → dist/core}/functions/_error.scss +0 -0
  15. data/tests/bootcamp/{core → dist/core}/functions/_expect.scss +0 -0
  16. data/tests/bootcamp/{core → dist/core}/functions/_not-to.scss +0 -0
  17. data/tests/bootcamp/{core → dist/core}/functions/_should.scss +0 -0
  18. data/tests/bootcamp/{core → dist/core}/functions/_to.scss +0 -0
  19. data/tests/bootcamp/{core → dist/core}/mixins/_describe.scss +0 -0
  20. data/tests/bootcamp/{core → dist/core}/mixins/_it.scss +0 -0
  21. data/tests/bootcamp/{core → dist/core}/mixins/_runner.scss +0 -0
  22. data/tests/bootcamp/{core → dist/core}/mixins/_should.scss +0 -0
  23. data/tests/bootcamp/{core → dist/core}/mixins/_xdescribe.scss +0 -0
  24. data/tests/bootcamp/{core → dist/core}/mixins/_xit.scss +0 -0
  25. data/tests/bootcamp/{core → dist/core}/variables/_helpers.scss +0 -0
  26. data/tests/bootcamp/{core → dist/core}/variables/_settings.scss +0 -0
  27. data/tests/bootcamp/{core → dist/core}/variables/_should.scss +0 -0
  28. data/tests/bootcamp/{core → dist/core}/variables/_trackers.scss +0 -0
  29. data/tests/bootcamp/{lib → dist/lib}/_sassyjson.scss +0 -0
  30. data/tests/bootcamp/{matchers → dist/matchers}/_be.scss +0 -0
  31. data/tests/bootcamp/{matchers → dist/matchers}/_equal.scss +0 -0
  32. data/tests/bootcamp/{matchers → dist/matchers}/lists/_be-empty.scss +0 -0
  33. data/tests/bootcamp/{matchers → dist/matchers}/lists/_be-longer-than.scss +0 -0
  34. data/tests/bootcamp/{matchers → dist/matchers}/lists/_be-shorter-than.scss +0 -0
  35. data/tests/bootcamp/{matchers → dist/matchers}/lists/_contain.scss +0 -0
  36. data/tests/bootcamp/{matchers → dist/matchers}/lists/_deep-contain.scss +0 -0
  37. data/tests/bootcamp/{matchers → dist/matchers}/lists/_deep-equal.scss +0 -0
  38. data/tests/bootcamp/{matchers → dist/matchers}/lists/_have-length-of.scss +0 -0
  39. data/tests/bootcamp/{matchers → dist/matchers}/numbers/_be-close-to.scss +0 -0
  40. data/tests/bootcamp/{matchers → dist/matchers}/numbers/_be-greater-than.scss +0 -0
  41. data/tests/bootcamp/{matchers → dist/matchers}/numbers/_be-less-than.scss +0 -0
  42. data/tests/bootcamp/{matchers → dist/matchers}/types/_be-falsy.scss +0 -0
  43. data/tests/bootcamp/{matchers → dist/matchers}/types/_be-null.scss +0 -0
  44. data/tests/bootcamp/{matchers → dist/matchers}/types/_be-truthy.scss +0 -0
  45. data/tests/bootcamp/{matchers → dist/matchers}/types/_have-type-of.scss +0 -0
  46. data/tests/bootcamp/{utils → dist/utils}/_contain.scss +0 -0
  47. data/tests/bootcamp/{utils → dist/utils}/_equal.scss +0 -0
  48. data/tests/bootcamp/{utils → dist/utils}/_list-join.scss +0 -0
  49. data/tests/bootcamp/{utils → dist/utils}/_power.scss +0 -0
  50. data/tests/bootcamp/package.json +63 -0
  51. data/tests/bootcamp/tasks/bootcamp.coffee +83 -0
  52. data/tests/bootcamp/test/core/functions/_actual.scss +10 -0
  53. data/tests/bootcamp/test/core/functions/_expect.scss +6 -0
  54. data/tests/bootcamp/test/core/functions/_not-to.scss +5 -0
  55. data/tests/bootcamp/test/core/functions/_should.scss +10 -0
  56. data/tests/bootcamp/test/core/functions/_to.scss +5 -0
  57. data/tests/bootcamp/test/core/mixins/_describe.scss +11 -0
  58. data/tests/bootcamp/test/core/mixins/_it.scss +5 -0
  59. data/tests/bootcamp/test/core/mixins/_should.scss +5 -0
  60. data/tests/bootcamp/test/core/mixins/_xdescribe.scss +28 -0
  61. data/tests/bootcamp/test/core/mixins/_xit.scss +12 -0
  62. data/tests/bootcamp/test/matchers/_be.scss +90 -0
  63. data/tests/bootcamp/test/matchers/_equal.scss +33 -0
  64. data/tests/bootcamp/test/matchers/lists/_be-empty.scss +12 -0
  65. data/tests/bootcamp/test/matchers/lists/_be-longer-than.scss +29 -0
  66. data/tests/bootcamp/test/matchers/lists/_be-shorter-than.scss +29 -0
  67. data/tests/bootcamp/test/matchers/lists/_contain.scss +39 -0
  68. data/tests/bootcamp/test/matchers/lists/_deep-contain.scss +51 -0
  69. data/tests/bootcamp/test/matchers/lists/_deep-equal.scss +151 -0
  70. data/tests/bootcamp/test/matchers/lists/_have-length-of.scss +31 -0
  71. data/tests/bootcamp/test/matchers/numbers/_be-close-to.scss +24 -0
  72. data/tests/bootcamp/test/matchers/numbers/_be-greater-than.scss +16 -0
  73. data/tests/bootcamp/test/matchers/numbers/_be-less-than.scss +16 -0
  74. data/tests/bootcamp/test/matchers/types/_be-falsy.scss +14 -0
  75. data/tests/bootcamp/test/matchers/types/_be-null.scss +13 -0
  76. data/tests/bootcamp/test/matchers/types/_be-truthy.scss +13 -0
  77. data/tests/bootcamp/test/matchers/types/_have-type-of.scss +17 -0
  78. data/tests/bootcamp/test/specs.scss +45 -0
  79. data/tests/bootcamp/test/utils/_contain.scss +41 -0
  80. data/tests/bootcamp/test/utils/_equal.scss +79 -0
  81. data/tests/bootcamp/test/utils/_list-join.scss +39 -0
  82. data/tests/bootcamp/test/utils/_power.scss +13 -0
  83. data/tests/input/functions/helpers/_helpers.scss +21 -0
  84. data/tests/input/output.scss +8 -7
  85. data/tests/output/output.css +4 -4
  86. metadata +158 -80
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2ff75d19ed91efb3b3547b703bed3475066e24a3
4
- data.tar.gz: e6103e6116eda13164e4352360fcb6af7217c83c
3
+ metadata.gz: 03781faba88bfe2e61e7f5fb5d17b86a758c6b39
4
+ data.tar.gz: 84444ad27c980342d2d032b9cbc607c0ec87c5a0
5
5
  SHA512:
6
- metadata.gz: 851b23551999aadcd0dda308d5bbf5b61f0a8e71fbeaa6c7daec63f5fbb22bda7188f12abe5813fb4c7dbb7b1e3cacca4ed983244e1f21f10f453b4ad3813f71
7
- data.tar.gz: b64913e085a83166cb46bf84cf2780ba270b67d4073e5a02143343cad6705530acd92ce8d9bcabd1b94f33f952bac97fe51a5c11e805a0d5cc4078748b386994
6
+ metadata.gz: b2f465aa3aca94e5389c388b381814f9f0042788b02aeb35fa1188098bdbe8735197f0cc818d741048fdbc9853192f92d8ca8e0342648b4a284a30621ef8f611
7
+ data.tar.gz: 39e5b59ec90e143fc0dd28facba7ec31d491df7da6fc8bc0c422fb0823326ecfd27c54eb3da5a33dfd97f6ef2138e75ed66a5c8757fb5743d932e62c6baf1329
@@ -1,3 +1,3 @@
1
1
  module Flint
2
- VERSION = "2.0.9"
2
+ VERSION = "2.1.0"
3
3
  end
@@ -202,6 +202,20 @@
202
202
  @return ($target / $context) * 1em;
203
203
  }
204
204
 
205
+ //
206
+ /// Convert pixel value to rem
207
+ ///
208
+ /// @access private
209
+ ///
210
+ /// @param {Number} $target - pixel value
211
+ /// @param {Number} $context - context to divide by
212
+ ///
213
+ /// @return {Number} rem value of target relative to context
214
+ ///
215
+ @function flint-to-rem($target, $context: $flint__base-font-size) {
216
+ @return ($target / $context) * 1rem;
217
+ }
218
+
205
219
  ///
206
220
  /// Use Ruby functions in place of Sass functions where possible
207
221
  /// to speed up performance, especially with string functions
@@ -434,6 +434,19 @@
434
434
  $gutter: null
435
435
  ) {
436
436
 
437
+ //
438
+ // Get unit to modify queries with
439
+ //
440
+ $unit: null;
441
+
442
+ @if flint-get-config-unit() == "rem" {
443
+ $unit: flint-to-rem(1px);
444
+ } @else if flint-get-config-unit() == "em" {
445
+ $unit: flint-to-em(1px);
446
+ } @else {
447
+ $unit: 1;
448
+ }
449
+
437
450
  //
438
451
  // Clearfix
439
452
  //
@@ -447,12 +460,12 @@
447
460
 
448
461
  @if flint-get-value("settings", "grid") == "fluid" {
449
462
  @if flint-is-highest-breakpoint($key) {
450
- @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
463
+ @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + $unit) ) {
451
464
  @include flint-clearfix;
452
465
  @content;
453
466
  }
454
467
  } @else {
455
- @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + if(flint-is-lowest-breakpoint($key), 0, if(flint-get-config-unit() == "em", flint-to-em(1px), 1))) ) and ( max-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) {
468
+ @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + if(flint-is-lowest-breakpoint($key), 0, $unit)) ) and ( max-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) {
456
469
  @include flint-clearfix;
457
470
  @content;
458
471
  }
@@ -464,7 +477,7 @@
464
477
  @content;
465
478
  }
466
479
  } @else {
467
- @media ( min-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) and ( max-width: (flint-calc-breakpoint("prev", $key, flint-get-index($key)) - if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
480
+ @media ( min-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) and ( max-width: (flint-calc-breakpoint("prev", $key, flint-get-index($key)) - $unit) ) {
468
481
  @include flint-clearfix;
469
482
  @content;
470
483
  }
@@ -536,7 +549,7 @@
536
549
 
537
550
  } @else {
538
551
 
539
- @media ( min-width: flint-calc-breakpoint("alias", $calc-key, $i) ) and ( max-width: (flint-calc-breakpoint("prev", $calc-key, $i) - if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
552
+ @media ( min-width: flint-calc-breakpoint("alias", $calc-key, $i) ) and ( max-width: (flint-calc-breakpoint("prev", $calc-key, $i) - $unit) ) {
540
553
  @include flint-container($calc-key, $i) {
541
554
  @content;
542
555
  }
@@ -559,7 +572,7 @@
559
572
 
560
573
  } @else {
561
574
 
562
- @media ( min-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) and ( max-width: (flint-calc-breakpoint("prev", $key, flint-get-index($key)) - if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
575
+ @media ( min-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) and ( max-width: (flint-calc-breakpoint("prev", $key, flint-get-index($key)) - $unit) ) {
563
576
  @include flint-container($key) {
564
577
  @content;
565
578
  }
@@ -569,7 +582,7 @@
569
582
  } @else if flint-exists($flint, $key) and flint-get-value("settings", "grid") == "fluid" {
570
583
  @if flint-is-highest-breakpoint($key) {
571
584
 
572
- @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
585
+ @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + $unit) ) {
573
586
  @include flint-container {
574
587
  @content;
575
588
  }
@@ -577,7 +590,7 @@
577
590
 
578
591
  } @else {
579
592
 
580
- @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + if(flint-is-lowest-breakpoint($key), 0, if(flint-get-config-unit() == "em", flint-to-em(1px), 1))) ) and ( max-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) {
593
+ @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + if(flint-is-lowest-breakpoint($key), 0, $unit)) ) and ( max-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) {
581
594
  @include flint-container {
582
595
  @content;
583
596
  }
@@ -664,7 +677,7 @@
664
677
 
665
678
  @if flint-is-highest-breakpoint($calc-key) {
666
679
 
667
- @media ( min-width: (flint-calc-breakpoint("next", $calc-key, $i) + if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
680
+ @media ( min-width: (flint-calc-breakpoint("next", $calc-key, $i) + $unit) ) {
668
681
  @include flint-calculate($calc-key, $calc-span, $calc-context, $calc-gutter, $i) {
669
682
  @content;
670
683
  }
@@ -672,7 +685,7 @@
672
685
 
673
686
  } @else {
674
687
 
675
- @media ( min-width: (flint-calc-breakpoint("next", $calc-key, $i) + if(flint-is-lowest-breakpoint($calc-key), 0, if(flint-get-config-unit() == "em", flint-to-em(1px), 1))) ) and ( max-width: flint-calc-breakpoint("alias", $calc-key, $i) ) {
688
+ @media ( min-width: (flint-calc-breakpoint("next", $calc-key, $i) + if(flint-is-lowest-breakpoint($calc-key), 0, $unit)) ) and ( max-width: flint-calc-breakpoint("alias", $calc-key, $i) ) {
676
689
  @include flint-calculate($calc-key, $calc-span, $calc-context, $calc-gutter, $i) {
677
690
  @content;
678
691
  }
@@ -692,7 +705,7 @@
692
705
 
693
706
  } @else {
694
707
 
695
- @media ( min-width: flint-calc-breakpoint("alias", $calc-key, $i) ) and ( max-width: (flint-calc-breakpoint("prev", $calc-key, $i) - if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
708
+ @media ( min-width: flint-calc-breakpoint("alias", $calc-key, $i) ) and ( max-width: (flint-calc-breakpoint("prev", $calc-key, $i) - $unit) ) {
696
709
  @include flint-calculate($calc-key, $calc-span, $calc-context, $calc-gutter, $i) {
697
710
  @content;
698
711
  }
@@ -744,7 +757,7 @@
744
757
 
745
758
  @if flint-is-highest-breakpoint($calc-key) {
746
759
 
747
- @media ( min-width: (flint-calc-breakpoint("next", $calc-key, flint-get-index($calc-key)) + if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
760
+ @media ( min-width: (flint-calc-breakpoint("next", $calc-key, flint-get-index($calc-key)) + $unit) ) {
748
761
  @include flint-calculate($calc-key, $calc-span, $calc-context, $calc-gutter) {
749
762
  @content;
750
763
  }
@@ -752,7 +765,7 @@
752
765
 
753
766
  } @else {
754
767
 
755
- @media ( min-width: (flint-calc-breakpoint("next", $calc-key, flint-get-index($calc-key)) + if(flint-is-lowest-breakpoint($calc-key), 0, if(flint-get-config-unit() == "em", flint-to-em(1px), 1))) ) and ( max-width: flint-calc-breakpoint("alias", $calc-key, flint-get-index($calc-key)) ) {
768
+ @media ( min-width: (flint-calc-breakpoint("next", $calc-key, flint-get-index($calc-key)) + if(flint-is-lowest-breakpoint($calc-key), 0, $unit)) ) and ( max-width: flint-calc-breakpoint("alias", $calc-key, flint-get-index($calc-key)) ) {
756
769
  @include flint-calculate($calc-key, $calc-span, $calc-context, $calc-gutter) {
757
770
  @content;
758
771
  }
@@ -772,7 +785,7 @@
772
785
 
773
786
  } @else {
774
787
 
775
- @media ( min-width: flint-calc-breakpoint("alias", $calc-key, flint-get-index($calc-key)) ) and ( max-width: (flint-calc-breakpoint("prev", $calc-key, flint-get-index($calc-key)) - if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
788
+ @media ( min-width: flint-calc-breakpoint("alias", $calc-key, flint-get-index($calc-key)) ) and ( max-width: (flint-calc-breakpoint("prev", $calc-key, flint-get-index($calc-key)) - $unit) ) {
776
789
  @include flint-calculate($calc-key, $calc-span, $calc-context, $calc-gutter) {
777
790
  @content;
778
791
  }
@@ -801,11 +814,11 @@
801
814
 
802
815
  @if flint-get-value("settings", "grid") == "fluid" {
803
816
  @if flint-is-highest-breakpoint($key) {
804
- @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
817
+ @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + $unit) ) {
805
818
  @content;
806
819
  }
807
820
  } @else {
808
- @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + if(flint-is-lowest-breakpoint($key), 0, if(flint-get-config-unit() == "em", flint-to-em(1px), 1))) ) and ( max-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) {
821
+ @media ( min-width: (flint-calc-breakpoint("next", $key, flint-get-index($key)) + if(flint-is-lowest-breakpoint($key), 0, $unit)) ) and ( max-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) {
809
822
  @content;
810
823
  }
811
824
  }
@@ -815,7 +828,7 @@
815
828
  @content;
816
829
  }
817
830
  } @else {
818
- @media ( min-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) and ( max-width: (flint-calc-breakpoint("prev", $key, flint-get-index($key)) - if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
831
+ @media ( min-width: flint-calc-breakpoint("alias", $key, flint-get-index($key)) ) and ( max-width: (flint-calc-breakpoint("prev", $key, flint-get-index($key)) - $unit) ) {
819
832
  @content;
820
833
  }
821
834
  }
@@ -831,7 +844,7 @@
831
844
  } @else if flint-types-in-list($key, "string", 4) and nth($key, 1) == "from" and nth($key, 3) == "to" and nth($key, 4) == "infinity" {
832
845
 
833
846
  @if flint-get-value("settings", "grid") == "fluid" {
834
- @media ( min-width: (flint-calc-breakpoint("next", nth($key, 2), flint-get-index(nth($key, 2))) + if(flint-is-lowest-breakpoint(nth($key, 2)), 0, if(flint-get-config-unit() == "em", flint-to-em(1px), 1))) ) {
847
+ @media ( min-width: (flint-calc-breakpoint("next", nth($key, 2), flint-get-index(nth($key, 2))) + if(flint-is-lowest-breakpoint(nth($key, 2)), 0, $unit)) ) {
835
848
  @content;
836
849
  }
837
850
  } @else if flint-get-value("settings", "grid") == "fixed" {
@@ -850,11 +863,11 @@
850
863
  } @else if flint-types-in-list($key, "string", 4) and nth($key, 1) == "from" and nth($key, 3) == "to" {
851
864
 
852
865
  @if flint-get-value("settings", "grid") == "fluid" {
853
- @media ( min-width: (flint-calc-breakpoint("next", nth($key, 2), flint-get-index(nth($key, 2))) + if(flint-is-lowest-breakpoint(nth($key, 2)), 0, if(flint-get-config-unit() == "em", flint-to-em(1px), 1))) ) and ( max-width: flint-calc-breakpoint("alias", nth($key, 4), flint-get-index(nth($key, 4))) ) {
866
+ @media ( min-width: (flint-calc-breakpoint("next", nth($key, 2), flint-get-index(nth($key, 2))) + if(flint-is-lowest-breakpoint(nth($key, 2)), 0, $unit)) ) and ( max-width: flint-calc-breakpoint("alias", nth($key, 4), flint-get-index(nth($key, 4))) ) {
854
867
  @content;
855
868
  }
856
869
  } @else if flint-get-value("settings", "grid") == "fixed" {
857
- @media ( min-width: flint-calc-breakpoint("alias", nth($key, 2), flint-get-index(nth($key, 2))) ) and ( max-width: (flint-calc-breakpoint("prev", nth($key, 4), flint-get-index(nth($key, 4))) - if(flint-is-highest-breakpoint(nth($key, 4)), 0, if(flint-get-config-unit() == "em", flint-to-em(1px), 1))) ) {
870
+ @media ( min-width: flint-calc-breakpoint("alias", nth($key, 2), flint-get-index(nth($key, 2))) ) and ( max-width: (flint-calc-breakpoint("prev", nth($key, 4), flint-get-index(nth($key, 4))) - if(flint-is-highest-breakpoint(nth($key, 4)), 0, $unit)) ) {
858
871
  @content;
859
872
  }
860
873
  } @else {
@@ -885,7 +898,7 @@
885
898
  } @else if flint-types-in-list($key, "string", 3) and nth($key, 1) == "greater" and nth($key, 2) == "than" {
886
899
 
887
900
  @if flint-get-value("settings", "grid") == "fluid" {
888
- @media ( min-width: (flint-calc-breakpoint("alias", nth($key, 3), flint-get-index(nth($key, 3))) + if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
901
+ @media ( min-width: (flint-calc-breakpoint("alias", nth($key, 3), flint-get-index(nth($key, 3))) + $unit) ) {
889
902
  @content;
890
903
  }
891
904
  } @else if flint-get-value("settings", "grid") == "fixed" {
@@ -904,7 +917,7 @@
904
917
  } @else if flint-types-in-list($key, "string" "string" "number", 3) and nth($key, 1) == "greater" and nth($key, 2) == "than" {
905
918
 
906
919
  @if flint-get-config-unit() == unit(nth($key, 3)) {
907
- @media ( min-width: nth($key, 3) + if(flint-get-config-unit() == "em", flint-to-em(1px), 1) ) {
920
+ @media ( min-width: nth($key, 3) + $unit ) {
908
921
  @content;
909
922
  }
910
923
  } @else {
@@ -938,7 +951,7 @@
938
951
  @content;
939
952
  }
940
953
  } @else if flint-get-value("settings", "grid") == "fixed" {
941
- @media ( max-width: (flint-calc-breakpoint("alias", nth($key, 3), flint-get-index(nth($key, 3))) - if(flint-get-config-unit() == "em", flint-to-em(1px), 1)) ) {
954
+ @media ( max-width: (flint-calc-breakpoint("alias", nth($key, 3), flint-get-index(nth($key, 3))) - $unit) ) {
942
955
  @content;
943
956
  }
944
957
  } @else {
@@ -953,7 +966,7 @@
953
966
  } @else if flint-types-in-list($key, "string" "string" "number", 3) and nth($key, 1) == "less" and nth($key, 2) == "than" {
954
967
 
955
968
  @if flint-get-config-unit() == unit(nth($key, 3)) {
956
- @media ( max-width: nth($key, 3) - if(flint-get-config-unit() == "em", flint-to-em(1px), 1) ) {
969
+ @media ( max-width: nth($key, 3) - $unit ) {
957
970
  @content;
958
971
  }
959
972
  } @else {
@@ -993,15 +1006,15 @@
993
1006
  @if flint-exists($flint, $calc-key) {
994
1007
  @if flint-get-value("settings", "grid") == "fluid" {
995
1008
  @if flint-is-highest-breakpoint($calc-key) {
996
- $query: append($query, unquote('( min-width: #{(flint-calc-breakpoint("next", $calc-key, flint-get-index($calc-key)) + if(flint-get-config-unit() == "em", flint-to-em(1px), 1))} )'), "comma");
1009
+ $query: append($query, unquote('( min-width: #{(flint-calc-breakpoint("next", $calc-key, flint-get-index($calc-key)) + $unit)} )'), "comma");
997
1010
  } @else {
998
- $query: append($query, unquote('( min-width: #{(flint-calc-breakpoint("next", $calc-key, flint-get-index($calc-key)) + if(flint-is-lowest-breakpoint($calc-key), 0, if(flint-get-config-unit() == "em", flint-to-em(1px), 1)))} ) and ( max-width: #{flint-calc-breakpoint("alias", $calc-key, flint-get-index($calc-key))} )'), "comma");
1011
+ $query: append($query, unquote('( min-width: #{(flint-calc-breakpoint("next", $calc-key, flint-get-index($calc-key)) + if(flint-is-lowest-breakpoint($calc-key), 0, $unit))} ) and ( max-width: #{flint-calc-breakpoint("alias", $calc-key, flint-get-index($calc-key))} )'), "comma");
999
1012
  }
1000
1013
  } @else if flint-get-value("settings", "grid") == "fixed" {
1001
1014
  @if flint-is-highest-breakpoint($calc-key) {
1002
1015
  $query: append($query, unquote('( min-width: #{flint-calc-breakpoint("alias", $calc-key, flint-get-index($calc-key))} )'), "comma");
1003
1016
  } @else {
1004
- $query: append($query, unquote('( min-width: #{flint-calc-breakpoint("alias", $calc-key, flint-get-index($calc-key))} ) and ( max-width: #{(flint-calc-breakpoint("prev", $calc-key, flint-get-index($calc-key)) - if(flint-get-config-unit() == "em", flint-to-em(1px), 1))} )'), "comma");
1017
+ $query: append($query, unquote('( min-width: #{flint-calc-breakpoint("alias", $calc-key, flint-get-index($calc-key))} ) and ( max-width: #{(flint-calc-breakpoint("prev", $calc-key, flint-get-index($calc-key)) - $unit)} )'), "comma");
1005
1018
  }
1006
1019
  } @else {
1007
1020
  @if not $flint__development-mode {
@@ -0,0 +1,70 @@
1
+ # Changelog
2
+
3
+ #### 1.1.7 - 2014-8-31
4
+
5
+ - Updated npm dependencies
6
+
7
+ #### 1.1.6 - 2014-6-27
8
+
9
+ - Switch to SassyJson
10
+
11
+ #### 1.1.5 - 2014-3-21
12
+
13
+ - Grunt: Fail instead of warn
14
+
15
+ #### 1.1.4 - 2014-2-24
16
+
17
+ - Updated npm dependencies
18
+
19
+ #### 1.1.2 - 2014-1-12
20
+
21
+ - Fix nested describe naming
22
+ - Add bc-util-list-join utility
23
+ - Fix newline regex on windows
24
+ - Update grunt-contrib-sass
25
+
26
+ #### 1.1.0 - 2013-11-19
27
+
28
+ - Sass 3.3 (breaking change)
29
+
30
+ #### 1.0.0 - 2013-11-16
31
+
32
+ - Add Matcher have-type-of
33
+ - Adds Warnings/Errors
34
+ - Adds leading underscores to scss files
35
+ - Remove be-undefined()
36
+ - Remove be-defined()
37
+ - Add Stringify Util
38
+ - Improve Statement output with stringify util
39
+ - Add Contain Util
40
+ - Add Equal Util
41
+ - Switch meaning of be() and equal()
42
+ - Clean up contain() and deep-contain() with contain util
43
+ - Renames internal variables to make more sense
44
+ - Refactor Grunt Task
45
+
46
+ #### 0.0.5 - 2013-10-20
47
+
48
+ - Better Test Output
49
+
50
+ #### 0.0.4 - 2013-10-19
51
+
52
+ - Restructuring
53
+ - Improved Matchers
54
+ - New List Matchers
55
+
56
+ #### 0.0.3 - 2013-10-13
57
+
58
+ - Restructuring
59
+ - Custom Matchers
60
+ - Grunt Plugin
61
+ - NPM
62
+
63
+ #### 0.0.2 - 2013-10-12
64
+
65
+ - Add Bower
66
+ - Cleanup
67
+
68
+ #### 0.0.1 - 2013-10-09
69
+
70
+ - Initial Release
@@ -0,0 +1,72 @@
1
+ # Contribute to Bootcamp
2
+
3
+ > This document is a work in progress, if you see something weird or just plain stupid. First know that I copied most of it from other projects. Then submit an issue.
4
+
5
+ Please take a moment to review this document in order to make the contribution process easy and effective for everyone involved.
6
+
7
+ Following these guidelines helps to communicate that you respect the time of the developers managing and developing this open source project. In return, they should reciprocate that respect in addressing your issue, assessing changes, and helping you finalize your pull requests.
8
+
9
+ ## Github Issues
10
+
11
+ Github issues for this repository is the preferred medium for bug reports and feature requests.
12
+
13
+ ## Bugs
14
+
15
+ A bug is demonstrable problem caused by the code in this repository, so please take the time to make sure that it is not a bug in your own code. Good bug reports are extremely helpful and are formed by the following guidelines:
16
+
17
+ 1. **Search through existing Github Issues** to make sure that your issue has not already been reported. If an issue already exists then that is the appropriate place for you to contribute.
18
+ 2. **Make sure the bug has not already been fixed** by attempting to reproduce the issue with the latest version of this repository.
19
+ 3. **Isolate the bug** as much as possible, the more code the more difficult it is to fix. Ideally you should create a [reduced test case](http://css-tricks.com/reduced-test-cases/).
20
+ 4. **Submit bug with as much detail as possible**. Just attaching a block of code is not enough, try your best to solve the issue and detail everything you tried.
21
+
22
+ **Example Bug Report:**
23
+
24
+ > ## A Short but Descriptive Title
25
+ >
26
+ > A summary of the bug and the environment in which it occurs (Browser/OS).
27
+ >
28
+ > Please include steps to reproduce the bug.
29
+ > 1. Step One
30
+ > 2. Step Two
31
+ > 3. Step Three
32
+ >
33
+ > A link to a reduced test case `http://url.com/example`
34
+ >
35
+ > Any other information you want to share that you think is applicable to the bug. Please include some code which you believe is causing the problem, or any errors that are occurring in the console.
36
+ >
37
+ > If you think you have a solution please include it here.
38
+
39
+ ## Features
40
+
41
+ Feature requests are welcome. But take a moment to find out whether your idea fits with the scope and aim of this project. It's up to you to make a strong case for any idea you have. Please provide as much detail and context as possible.
42
+
43
+ ## Making Changes
44
+
45
+ First, ensure that you have the latest version of everything installed. (Node.js, npm, grunt-cli)
46
+
47
+ 1. Fork and clone the repo.
48
+ 2. Check out the master or latest version branch
49
+ 3. Run `npm install` to install all Bootcamp dependencies
50
+ 4. Run `grunt` to prepare everything
51
+
52
+ Assuming that you don't see any red, you're ready to go. Just be sure to run `grunt` after making any change, to ensure that nothing has broken.
53
+
54
+ ## Pull Request
55
+
56
+ 1. Create a new branch, never work on the master branch directly. Use a short but descriptive branch name (eg. `add_new_feature`, `fix_certain_bug`, `update_weird_typo`).
57
+ 2. Add failing tests for the change you want to make. Run `grunt` to see the tests fail.
58
+ 3. Make the change.
59
+ 4. Run `grunt` to see if the tests pass. Repeat steps 2-4 until done.
60
+ 5. Update the documentation to reflect any changes.
61
+ 6. Push to your fork and submit a pull request.
62
+
63
+ ## Syntax
64
+
65
+ - Two space indents. Don't use tabs anywhere. Use `\t` if you need a tab character in a string.
66
+ - No trailing whitespace.
67
+ - Don't go overboard with the whitespace.
68
+ - Delimit string with single-quotes `'`, except in any Sass code, use double-quotes `"`.
69
+ - Prefer `if` and `else` to ["clever"](http://programmers.stackexchange.com/questions/25276/why-is-cleverness-considered-harmful-in-programming-by-some-people/25281#25281) uses of `? :` conditional or `||`, `&&` logical operators.
70
+ - Use verbose names (`or`, `and`, `not`, `unless`, etc.) in languages that support them.
71
+ - Comments are great. Just put them _before_ the line of code, _not_ at the _end_ of the line.
72
+ - **When in doubt, follow the conventions you see used in the source already.**
@@ -0,0 +1,34 @@
1
+ # global module: false
2
+ module.exports = (grunt) ->
3
+
4
+ # Modules
5
+ grunt.loadNpmTasks 'grunt-init'
6
+ grunt.loadNpmTasks 'grunt-contrib-sass'
7
+ grunt.loadNpmTasks 'grunt-contrib-watch'
8
+
9
+ # Grunt Tasks
10
+ grunt.initConfig
11
+ pkg: grunt.file.readJSON 'package.json'
12
+ meta: version: '<%= pkg.version %>'
13
+
14
+ # Sass
15
+ sass: test:
16
+ options:
17
+ style: 'expanded'
18
+ loadPath: './dist'
19
+ files: './test/results.css' : './test/specs.scss'
20
+
21
+ # Bootcamp
22
+ bootcamp: dist:
23
+ files: src: ['./test/results.css']
24
+
25
+ # Watch
26
+ watch: dist:
27
+ files: ['./dist/**/*.scss', './test/**/*.scss']
28
+ tasks: ['sass', 'bootcamp']
29
+
30
+ grunt.loadTasks 'tasks'
31
+
32
+ # Tasks
33
+ grunt.registerTask 'default', ['sass', 'bootcamp', 'watch']
34
+ grunt.registerTask 'test', ['sass', 'bootcamp']
@@ -0,0 +1,7 @@
1
+ Copyright (C) 2013 James Kyle
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4
+
5
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.