sugarcss 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. checksums.yaml +7 -0
  2. data/lib/sugarcss.rb +30 -0
  3. data/stylesheets/_sugar.scss +4 -0
  4. data/stylesheets/sugar/_BEM.scss +101 -0
  5. data/stylesheets/sugar/_animations.scss +101 -0
  6. data/stylesheets/sugar/_clearfix.scss +56 -0
  7. data/stylesheets/sugar/_colors.scss +126 -0
  8. data/stylesheets/sugar/_effects.scss +65 -0
  9. data/stylesheets/sugar/_filters.scss +67 -0
  10. data/stylesheets/sugar/_forms.scss +13 -0
  11. data/stylesheets/sugar/_functions.scss +328 -0
  12. data/stylesheets/sugar/_helper-classes.scss +109 -0
  13. data/stylesheets/sugar/_helper-functions.scss +56 -0
  14. data/stylesheets/sugar/_helper-mixins.scss +383 -0
  15. data/stylesheets/sugar/_icons.scss +21 -0
  16. data/stylesheets/sugar/_images.scss +150 -0
  17. data/stylesheets/sugar/_lists.scss +148 -0
  18. data/stylesheets/sugar/_medias.scss +141 -0
  19. data/stylesheets/sugar/_reset.scss +38 -0
  20. data/stylesheets/sugar/_shapes.scss +528 -0
  21. data/stylesheets/sugar/_sugar.scss +606 -0
  22. data/stylesheets/sugar/_typo.scss +849 -0
  23. data/stylesheets/sugar/_units.scss +120 -0
  24. data/stylesheets/sugar/tools/_arrow.scss +70 -0
  25. data/stylesheets/sugar/tools/_blank.scss +0 -0
  26. data/stylesheets/sugar/tools/_list.scss +103 -0
  27. data/stylesheets/sugar/tools/_map.scss +93 -0
  28. data/stylesheets/sugar/tools/_math.scss +196 -0
  29. data/stylesheets/sugar/tools/_string.scss +65 -0
  30. data/stylesheets/sugar/vendors/animatecss/_animate.scss +1474 -0
  31. data/stylesheets/sugar/vendors/animatecss/_base.scss +31 -0
  32. data/stylesheets/sugar/vendors/animatecss/attention_seekers/_bounce.scss +26 -0
  33. data/stylesheets/sugar/vendors/animatecss/attention_seekers/_flash.scss +14 -0
  34. data/stylesheets/sugar/vendors/animatecss/attention_seekers/_jello.scss +34 -0
  35. data/stylesheets/sugar/vendors/animatecss/attention_seekers/_pulse.scss +20 -0
  36. data/stylesheets/sugar/vendors/animatecss/attention_seekers/_rubberBand.scss +34 -0
  37. data/stylesheets/sugar/vendors/animatecss/attention_seekers/_shake.scss +18 -0
  38. data/stylesheets/sugar/vendors/animatecss/attention_seekers/_swing.scss +27 -0
  39. data/stylesheets/sugar/vendors/animatecss/attention_seekers/_tada.scss +26 -0
  40. data/stylesheets/sugar/vendors/animatecss/attention_seekers/_wobble.scss +36 -0
  41. data/stylesheets/sugar/vendors/animatecss/bouncing_entrances/_bounceIn.scss +37 -0
  42. data/stylesheets/sugar/vendors/animatecss/bouncing_entrances/_bounceInDown.scss +32 -0
  43. data/stylesheets/sugar/vendors/animatecss/bouncing_entrances/_bounceInLeft.scss +32 -0
  44. data/stylesheets/sugar/vendors/animatecss/bouncing_entrances/_bounceInRight.scss +32 -0
  45. data/stylesheets/sugar/vendors/animatecss/bouncing_entrances/_bounceInUp.scss +32 -0
  46. data/stylesheets/sugar/vendors/animatecss/bouncing_exits/_bounceOut.scss +20 -0
  47. data/stylesheets/sugar/vendors/animatecss/bouncing_exits/_bounceOutDown.scss +20 -0
  48. data/stylesheets/sugar/vendors/animatecss/bouncing_exits/_bounceOutLeft.scss +16 -0
  49. data/stylesheets/sugar/vendors/animatecss/bouncing_exits/_bounceOutRight.scss +16 -0
  50. data/stylesheets/sugar/vendors/animatecss/bouncing_exits/_bounceOutUp.scss +20 -0
  51. data/stylesheets/sugar/vendors/animatecss/fading_entrances/_fadeIn.scss +9 -0
  52. data/stylesheets/sugar/vendors/animatecss/fading_entrances/_fadeInDown.scss +16 -0
  53. data/stylesheets/sugar/vendors/animatecss/fading_entrances/_fadeInDownBig.scss +16 -0
  54. data/stylesheets/sugar/vendors/animatecss/fading_entrances/_fadeInLeft.scss +16 -0
  55. data/stylesheets/sugar/vendors/animatecss/fading_entrances/_fadeInLeftBig.scss +16 -0
  56. data/stylesheets/sugar/vendors/animatecss/fading_entrances/_fadeInRight.scss +16 -0
  57. data/stylesheets/sugar/vendors/animatecss/fading_entrances/_fadeInRightBig.scss +16 -0
  58. data/stylesheets/sugar/vendors/animatecss/fading_entrances/_fadeInUp.scss +16 -0
  59. data/stylesheets/sugar/vendors/animatecss/fading_entrances/_fadeInUpBig.scss +16 -0
  60. data/stylesheets/sugar/vendors/animatecss/fading_exits/_fadeOut.scss +9 -0
  61. data/stylesheets/sugar/vendors/animatecss/fading_exits/_fadeOutDown.scss +15 -0
  62. data/stylesheets/sugar/vendors/animatecss/fading_exits/_fadeOutDownBig.scss +15 -0
  63. data/stylesheets/sugar/vendors/animatecss/fading_exits/_fadeOutLeft.scss +15 -0
  64. data/stylesheets/sugar/vendors/animatecss/fading_exits/_fadeOutLeftBig.scss +15 -0
  65. data/stylesheets/sugar/vendors/animatecss/fading_exits/_fadeOutRight.scss +15 -0
  66. data/stylesheets/sugar/vendors/animatecss/fading_exits/_fadeOutRightBig.scss +15 -0
  67. data/stylesheets/sugar/vendors/animatecss/fading_exits/_fadeOutUp.scss +15 -0
  68. data/stylesheets/sugar/vendors/animatecss/fading_exits/_fadeOutUpBig.scss +15 -0
  69. data/stylesheets/sugar/vendors/animatecss/flippers/_flip.scss +32 -0
  70. data/stylesheets/sugar/vendors/animatecss/flippers/_flipInX.scss +31 -0
  71. data/stylesheets/sugar/vendors/animatecss/flippers/_flipInY.scss +31 -0
  72. data/stylesheets/sugar/vendors/animatecss/flippers/_flipOutX.scss +21 -0
  73. data/stylesheets/sugar/vendors/animatecss/flippers/_flipOutY.scss +21 -0
  74. data/stylesheets/sugar/vendors/animatecss/lightspeed/_lightSpeedIn.scss +27 -0
  75. data/stylesheets/sugar/vendors/animatecss/lightspeed/_lightSpeedOut.scss +16 -0
  76. data/stylesheets/sugar/vendors/animatecss/rotating_entrances/_rotateIn.scss +18 -0
  77. data/stylesheets/sugar/vendors/animatecss/rotating_entrances/_rotateInDownLeft.scss +18 -0
  78. data/stylesheets/sugar/vendors/animatecss/rotating_entrances/_rotateInDownRight.scss +18 -0
  79. data/stylesheets/sugar/vendors/animatecss/rotating_entrances/_rotateInUpLeft.scss +18 -0
  80. data/stylesheets/sugar/vendors/animatecss/rotating_entrances/_rotateInUpRight.scss +18 -0
  81. data/stylesheets/sugar/vendors/animatecss/rotating_exits/_rotateOut.scss +17 -0
  82. data/stylesheets/sugar/vendors/animatecss/rotating_exits/_rotateOutDownLeft.scss +17 -0
  83. data/stylesheets/sugar/vendors/animatecss/rotating_exits/_rotateOutDownRight.scss +17 -0
  84. data/stylesheets/sugar/vendors/animatecss/rotating_exits/_rotateOutUpLeft.scss +17 -0
  85. data/stylesheets/sugar/vendors/animatecss/rotating_exits/_rotateOutUpRight.scss +17 -0
  86. data/stylesheets/sugar/vendors/animatecss/sliding_entrances/_slideInDown.scss +15 -0
  87. data/stylesheets/sugar/vendors/animatecss/sliding_entrances/_slideInLeft.scss +15 -0
  88. data/stylesheets/sugar/vendors/animatecss/sliding_entrances/_slideInRight.scss +15 -0
  89. data/stylesheets/sugar/vendors/animatecss/sliding_entrances/_slideInUp.scss +15 -0
  90. data/stylesheets/sugar/vendors/animatecss/sliding_exits/_slideOutDown.scss +15 -0
  91. data/stylesheets/sugar/vendors/animatecss/sliding_exits/_slideOutLeft.scss +15 -0
  92. data/stylesheets/sugar/vendors/animatecss/sliding_exits/_slideOutRight.scss +15 -0
  93. data/stylesheets/sugar/vendors/animatecss/sliding_exits/_slideOutUp.scss +15 -0
  94. data/stylesheets/sugar/vendors/animatecss/specials/_hinge.scss +29 -0
  95. data/stylesheets/sugar/vendors/animatecss/specials/_rollIn.scss +18 -0
  96. data/stylesheets/sugar/vendors/animatecss/specials/_rollOut.scss +17 -0
  97. data/stylesheets/sugar/vendors/animatecss/zooming_entrances/_zoomIn.scss +15 -0
  98. data/stylesheets/sugar/vendors/animatecss/zooming_entrances/_zoomInDown.scss +18 -0
  99. data/stylesheets/sugar/vendors/animatecss/zooming_entrances/_zoomInLeft.scss +18 -0
  100. data/stylesheets/sugar/vendors/animatecss/zooming_entrances/_zoomInRight.scss +18 -0
  101. data/stylesheets/sugar/vendors/animatecss/zooming_entrances/_zoomInUp.scss +18 -0
  102. data/stylesheets/sugar/vendors/animatecss/zooming_exits/_zoomOut.scss +19 -0
  103. data/stylesheets/sugar/vendors/animatecss/zooming_exits/_zoomOutDown.scss +19 -0
  104. data/stylesheets/sugar/vendors/animatecss/zooming_exits/_zoomOutLeft.scss +17 -0
  105. data/stylesheets/sugar/vendors/animatecss/zooming_exits/_zoomOutRight.scss +17 -0
  106. data/stylesheets/sugar/vendors/animatecss/zooming_exits/_zoomOutUp.scss +19 -0
  107. data/stylesheets/sugar/vendors/cssgram/_1977.scss +16 -0
  108. data/stylesheets/sugar/vendors/cssgram/_aden.scss +18 -0
  109. data/stylesheets/sugar/vendors/cssgram/_brooklyn.scss +17 -0
  110. data/stylesheets/sugar/vendors/cssgram/_cssgram.scss +18 -0
  111. data/stylesheets/sugar/vendors/cssgram/_earlybird.scss +17 -0
  112. data/stylesheets/sugar/vendors/cssgram/_gingham.scss +17 -0
  113. data/stylesheets/sugar/vendors/cssgram/_hudson.scss +18 -0
  114. data/stylesheets/sugar/vendors/cssgram/_inkwell.scss +11 -0
  115. data/stylesheets/sugar/vendors/cssgram/_lark.scss +21 -0
  116. data/stylesheets/sugar/vendors/cssgram/_lofi.scss +16 -0
  117. data/stylesheets/sugar/vendors/cssgram/_mayfair.scss +18 -0
  118. data/stylesheets/sugar/vendors/cssgram/_moon.scss +21 -0
  119. data/stylesheets/sugar/vendors/cssgram/_nashville.scss +22 -0
  120. data/stylesheets/sugar/vendors/cssgram/_perpetua.scss +17 -0
  121. data/stylesheets/sugar/vendors/cssgram/_reyes.scss +18 -0
  122. data/stylesheets/sugar/vendors/cssgram/_shared.scss +29 -0
  123. data/stylesheets/sugar/vendors/cssgram/_toaster.scss +17 -0
  124. data/stylesheets/sugar/vendors/cssgram/_walden.scss +18 -0
  125. data/stylesheets/sugar/vendors/cssgram/_xpro2.scss +17 -0
  126. data/stylesheets/sugar/vendors/fontawesome/_font-awesome.scss +2019 -0
  127. data/stylesheets/sugar/vendors/modularscale/_modular-scale-tests.scss +74 -0
  128. data/stylesheets/sugar/vendors/modularscale/_modular-scale.scss +18 -0
  129. data/stylesheets/sugar/vendors/modularscale/modular-scale/_calc.scss +17 -0
  130. data/stylesheets/sugar/vendors/modularscale/modular-scale/_function-list.scss +68 -0
  131. data/stylesheets/sugar/vendors/modularscale/modular-scale/_function.scss +55 -0
  132. data/stylesheets/sugar/vendors/modularscale/modular-scale/_generate-list.scss +103 -0
  133. data/stylesheets/sugar/vendors/modularscale/modular-scale/_pow.scss +40 -0
  134. data/stylesheets/sugar/vendors/modularscale/modular-scale/_ratios.scss +20 -0
  135. data/stylesheets/sugar/vendors/modularscale/modular-scale/_respond.scss +49 -0
  136. data/stylesheets/sugar/vendors/modularscale/modular-scale/_round-px.scss +6 -0
  137. data/stylesheets/sugar/vendors/modularscale/modular-scale/_sort-list.scss +93 -0
  138. data/stylesheets/sugar/vendors/modularscale/modular-scale/_tests.scss +22 -0
  139. data/stylesheets/sugar/vendors/sassdash/_sassdash.scss +6 -0
  140. data/stylesheets/sugar/vendors/sassdash/api/_add.scss +43 -0
  141. data/stylesheets/sugar/vendors/sassdash/api/_after.scss +66 -0
  142. data/stylesheets/sugar/vendors/sassdash/api/_ary.scss +43 -0
  143. data/stylesheets/sugar/vendors/sassdash/api/_assign.scss +113 -0
  144. data/stylesheets/sugar/vendors/sassdash/api/_at.scss +50 -0
  145. data/stylesheets/sugar/vendors/sassdash/api/_before.scss +64 -0
  146. data/stylesheets/sugar/vendors/sassdash/api/_bind.scss +46 -0
  147. data/stylesheets/sugar/vendors/sassdash/api/_call.scss +0 -0
  148. data/stylesheets/sugar/vendors/sassdash/api/_callback.scss +167 -0
  149. data/stylesheets/sugar/vendors/sassdash/api/_case.scss +179 -0
  150. data/stylesheets/sugar/vendors/sassdash/api/_chunk.scss +44 -0
  151. data/stylesheets/sugar/vendors/sassdash/api/_compact.scss +32 -0
  152. data/stylesheets/sugar/vendors/sassdash/api/_compare.scss +180 -0
  153. data/stylesheets/sugar/vendors/sassdash/api/_concat.scss +62 -0
  154. data/stylesheets/sugar/vendors/sassdash/api/_constant.scss +32 -0
  155. data/stylesheets/sugar/vendors/sassdash/api/_context.scss +51 -0
  156. data/stylesheets/sugar/vendors/sassdash/api/_count-by.scss +51 -0
  157. data/stylesheets/sugar/vendors/sassdash/api/_create.scss +78 -0
  158. data/stylesheets/sugar/vendors/sassdash/api/_debug.scss +26 -0
  159. data/stylesheets/sugar/vendors/sassdash/api/_declare.scss +46 -0
  160. data/stylesheets/sugar/vendors/sassdash/api/_defaults.scss +41 -0
  161. data/stylesheets/sugar/vendors/sassdash/api/_difference.scss +50 -0
  162. data/stylesheets/sugar/vendors/sassdash/api/_drop.scss +226 -0
  163. data/stylesheets/sugar/vendors/sassdash/api/_either.scss +42 -0
  164. data/stylesheets/sugar/vendors/sassdash/api/_encode.scss +42 -0
  165. data/stylesheets/sugar/vendors/sassdash/api/_ends-with.scss +76 -0
  166. data/stylesheets/sugar/vendors/sassdash/api/_escape.scss +39 -0
  167. data/stylesheets/sugar/vendors/sassdash/api/_every.scss +106 -0
  168. data/stylesheets/sugar/vendors/sassdash/api/_exec.scss +31 -0
  169. data/stylesheets/sugar/vendors/sassdash/api/_extrema.scss +224 -0
  170. data/stylesheets/sugar/vendors/sassdash/api/_fill.scss +74 -0
  171. data/stylesheets/sugar/vendors/sassdash/api/_filter.scss +112 -0
  172. data/stylesheets/sugar/vendors/sassdash/api/_find.scss +448 -0
  173. data/stylesheets/sugar/vendors/sassdash/api/_first.scss +29 -0
  174. data/stylesheets/sugar/vendors/sassdash/api/_flatten.scss +88 -0
  175. data/stylesheets/sugar/vendors/sassdash/api/_flow.scss +145 -0
  176. data/stylesheets/sugar/vendors/sassdash/api/_for.scss +325 -0
  177. data/stylesheets/sugar/vendors/sassdash/api/_functions.scss +42 -0
  178. data/stylesheets/sugar/vendors/sassdash/api/_group-by.scss +90 -0
  179. data/stylesheets/sugar/vendors/sassdash/api/_has.scss +30 -0
  180. data/stylesheets/sugar/vendors/sassdash/api/_identity.scss +20 -0
  181. data/stylesheets/sugar/vendors/sassdash/api/_includes.scss +76 -0
  182. data/stylesheets/sugar/vendors/sassdash/api/_index-by.scss +43 -0
  183. data/stylesheets/sugar/vendors/sassdash/api/_index-of.scss +154 -0
  184. data/stylesheets/sugar/vendors/sassdash/api/_initial.scss +19 -0
  185. data/stylesheets/sugar/vendors/sassdash/api/_intersection.scss +59 -0
  186. data/stylesheets/sugar/vendors/sassdash/api/_invert.scss +48 -0
  187. data/stylesheets/sugar/vendors/sassdash/api/_invoke.scss +74 -0
  188. data/stylesheets/sugar/vendors/sassdash/api/_is-empty.scss +48 -0
  189. data/stylesheets/sugar/vendors/sassdash/api/_is-equal.scss +175 -0
  190. data/stylesheets/sugar/vendors/sassdash/api/_is-match.scss +116 -0
  191. data/stylesheets/sugar/vendors/sassdash/api/_is-type.scss +479 -0
  192. data/stylesheets/sugar/vendors/sassdash/api/_join.scss +47 -0
  193. data/stylesheets/sugar/vendors/sassdash/api/_keys.scss +48 -0
  194. data/stylesheets/sugar/vendors/sassdash/api/_last.scss +21 -0
  195. data/stylesheets/sugar/vendors/sassdash/api/_map.scss +265 -0
  196. data/stylesheets/sugar/vendors/sassdash/api/_matches.scss +85 -0
  197. data/stylesheets/sugar/vendors/sassdash/api/_memoize.scss +105 -0
  198. data/stylesheets/sugar/vendors/sassdash/api/_merge.scss +148 -0
  199. data/stylesheets/sugar/vendors/sassdash/api/_modify.scss +17 -0
  200. data/stylesheets/sugar/vendors/sassdash/api/_module.scss +111 -0
  201. data/stylesheets/sugar/vendors/sassdash/api/_negate.scss +42 -0
  202. data/stylesheets/sugar/vendors/sassdash/api/_noop.scss +19 -0
  203. data/stylesheets/sugar/vendors/sassdash/api/_omit.scss +52 -0
  204. data/stylesheets/sugar/vendors/sassdash/api/_once.scss +27 -0
  205. data/stylesheets/sugar/vendors/sassdash/api/_pad.scss +121 -0
  206. data/stylesheets/sugar/vendors/sassdash/api/_pairs.scss +26 -0
  207. data/stylesheets/sugar/vendors/sassdash/api/_parse-int.scss +69 -0
  208. data/stylesheets/sugar/vendors/sassdash/api/_partial.scss +91 -0
  209. data/stylesheets/sugar/vendors/sassdash/api/_partition.scss +53 -0
  210. data/stylesheets/sugar/vendors/sassdash/api/_pick.scss +80 -0
  211. data/stylesheets/sugar/vendors/sassdash/api/_pluck.scss +27 -0
  212. data/stylesheets/sugar/vendors/sassdash/api/_property.scss +91 -0
  213. data/stylesheets/sugar/vendors/sassdash/api/_pull.scss +43 -0
  214. data/stylesheets/sugar/vendors/sassdash/api/_push.scss +27 -0
  215. data/stylesheets/sugar/vendors/sassdash/api/_rand.scss +79 -0
  216. data/stylesheets/sugar/vendors/sassdash/api/_range.scss +59 -0
  217. data/stylesheets/sugar/vendors/sassdash/api/_reduce.scss +146 -0
  218. data/stylesheets/sugar/vendors/sassdash/api/_reject.scss +68 -0
  219. data/stylesheets/sugar/vendors/sassdash/api/_repeat.scss +33 -0
  220. data/stylesheets/sugar/vendors/sassdash/api/_replace.scss +40 -0
  221. data/stylesheets/sugar/vendors/sassdash/api/_rest.scss +26 -0
  222. data/stylesheets/sugar/vendors/sassdash/api/_result.scss +48 -0
  223. data/stylesheets/sugar/vendors/sassdash/api/_reverse.scss +64 -0
  224. data/stylesheets/sugar/vendors/sassdash/api/_rules.scss +55 -0
  225. data/stylesheets/sugar/vendors/sassdash/api/_sample.scss +33 -0
  226. data/stylesheets/sugar/vendors/sassdash/api/_shuffle.scss +37 -0
  227. data/stylesheets/sugar/vendors/sassdash/api/_size.scss +37 -0
  228. data/stylesheets/sugar/vendors/sassdash/api/_slice.scss +60 -0
  229. data/stylesheets/sugar/vendors/sassdash/api/_some.scss +110 -0
  230. data/stylesheets/sugar/vendors/sassdash/api/_sort.scss +335 -0
  231. data/stylesheets/sugar/vendors/sassdash/api/_sorted-index.scss +135 -0
  232. data/stylesheets/sugar/vendors/sassdash/api/_splice.scss +45 -0
  233. data/stylesheets/sugar/vendors/sassdash/api/_split.scss +43 -0
  234. data/stylesheets/sugar/vendors/sassdash/api/_starts-with.scss +78 -0
  235. data/stylesheets/sugar/vendors/sassdash/api/_sum.scss +44 -0
  236. data/stylesheets/sugar/vendors/sassdash/api/_take.scss +211 -0
  237. data/stylesheets/sugar/vendors/sassdash/api/_times.scss +33 -0
  238. data/stylesheets/sugar/vendors/sassdash/api/_to-list.scss +52 -0
  239. data/stylesheets/sugar/vendors/sassdash/api/_to-string.scss +35 -0
  240. data/stylesheets/sugar/vendors/sassdash/api/_trim.scss +138 -0
  241. data/stylesheets/sugar/vendors/sassdash/api/_trunc.scss +92 -0
  242. data/stylesheets/sugar/vendors/sassdash/api/_unescape.scss +48 -0
  243. data/stylesheets/sugar/vendors/sassdash/api/_union.scss +19 -0
  244. data/stylesheets/sugar/vendors/sassdash/api/_uniq.scss +86 -0
  245. data/stylesheets/sugar/vendors/sassdash/api/_unique-id.scss +27 -0
  246. data/stylesheets/sugar/vendors/sassdash/api/_unzip.scss +77 -0
  247. data/stylesheets/sugar/vendors/sassdash/api/_values.scss +54 -0
  248. data/stylesheets/sugar/vendors/sassdash/api/_where.scss +28 -0
  249. data/stylesheets/sugar/vendors/sassdash/api/_without.scss +26 -0
  250. data/stylesheets/sugar/vendors/sassdash/api/_words.scss +50 -0
  251. data/stylesheets/sugar/vendors/sassdash/api/_xor.scss +35 -0
  252. data/stylesheets/sugar/vendors/sassdash/api/_zip.scss +80 -0
  253. data/stylesheets/sugar/vendors/sassdash/constants/_char.scss +97 -0
  254. data/stylesheets/sugar/vendors/sassdash/constants/_constructor.scss +1 -0
  255. data/stylesheets/sugar/vendors/sassdash/constants/_escapes.scss +26 -0
  256. data/stylesheets/sugar/vendors/sassdash/constants/_flags.scss +9 -0
  257. data/stylesheets/sugar/vendors/sassdash/constants/_global.scss +11 -0
  258. data/stylesheets/sugar/vendors/sassdash/constants/_module.scss +9 -0
  259. data/stylesheets/sugar/vendors/sassdash/constants/_native.scss +80 -0
  260. data/stylesheets/sugar/vendors/sassdash/constants/_number.scss +26 -0
  261. data/stylesheets/sugar/vendors/sassdash/constants/_trunc.scss +2 -0
  262. data/stylesheets/sugar/vendors/sassdash/constants/_units.scss +10 -0
  263. data/stylesheets/sugar/vendors/sassdash/helpers/_aggregator.scss +47 -0
  264. data/stylesheets/sugar/vendors/sassdash/helpers/_call.scss +77 -0
  265. data/stylesheets/sugar/vendors/sassdash/helpers/_chain.scss +37 -0
  266. data/stylesheets/sugar/vendors/sassdash/helpers/_char.scss +115 -0
  267. data/stylesheets/sugar/vendors/sassdash/helpers/_coercion.scss +90 -0
  268. data/stylesheets/sugar/vendors/sassdash/helpers/_compounder.scss +25 -0
  269. data/stylesheets/sugar/vendors/sassdash/helpers/_module.scss +8 -0
  270. data/stylesheets/sugar/vendors/sassdash/helpers/_number.scss +165 -0
  271. data/stylesheets/sugar/vendors/sassdash/helpers/_scope.scss +43 -0
  272. data/stylesheets/sugar/vendors/sassdash/static/_local.scss +268 -0
  273. data/stylesheets/sugar/vendors/sassdash/static/_module.scss +2 -0
  274. data/stylesheets/sugar/vendors/sassdash/static/_static.scss +84 -0
  275. metadata +334 -0
@@ -0,0 +1,80 @@
1
+ @function __pick-by-callback-iteratee($value, $key, $map) {
2
+ $result: __this('result');
3
+ $predicate: __this('predicate');
4
+
5
+ @if __exec($predicate, $value, $key, $map) {
6
+ $_: __this('result', __set($result, $key, $value));
7
+ }
8
+
9
+ @return true;
10
+ }
11
+
12
+
13
+ @function __pick-by-callback($map, $predicate) {
14
+ $result: ();
15
+ $_: __scope((
16
+ 'map': $map,
17
+ 'predicate': $predicate,
18
+ 'result': $result
19
+ ));
20
+ $pick-by-callback-iteratee: __bind('__pick-by-callback-iteratee');
21
+ $_: __base-for-in($map, $pick-by-callback-iteratee);
22
+ $result: __this('result');
23
+ $_: __scope(false);
24
+
25
+ @return $result;
26
+ }
27
+
28
+ @function __pick-by-list($map, $props) {
29
+ $type: type-of($map);
30
+ $map: __to-map($map);
31
+ $result: ();
32
+
33
+ @each $key in $props {
34
+ @if (map-has-key($map, $key)) {
35
+ $result: __set($result, $key, __get($map, $key));
36
+ }
37
+ }
38
+
39
+ @return if($type == 'list', __to-list($result), $result);
40
+ }
41
+
42
+
43
+ @function __pick($map, $predicate: '__identity', $this-arg: null) {
44
+ @if $map == null {
45
+ @return ();
46
+ }
47
+
48
+ $map: __to-map($map);
49
+
50
+ @return if(__function-exists($predicate),
51
+ __pick-by-callback($map, __bind-callback($predicate, $this-arg, 3)),
52
+ __pick-by-list($map, __base-flatten(($map, $predicate, $this-arg), false, false, 1)));
53
+ }
54
+
55
+
56
+ /// Creates a map composed of the picked `$map` properties. Property
57
+ /// names may be specified as individual arguments or as lists of property
58
+ /// names. If `$predicate` is provided it is invoked for each property of `$map`
59
+ /// picking the properties `$predicate` returns truthy for. The predicate is
60
+ /// bound to `$this-arg` and invoked with three arguments; (value, key, map).
61
+ ///
62
+ ///
63
+ /// @access public
64
+ /// @group Map
65
+ /// @param {Map} $map The source map.
66
+ /// @param {Function|String|List(String)} $predicate [_identity] The function invoked per
67
+ /// iteration or property names to pick, specified as individual property
68
+ /// names or lists of property names.
69
+ /// @param {*} $this-arg [null] - The `_this` binding of `$predicate`.
70
+ /// @returns {Map} Returns the new map.
71
+ /// @example scss
72
+ /// $map: ( 'user': 'fred', 'age': 40 );
73
+ /// $foo: _pick($map, 'user');
74
+ /// // => ( 'user': 'fred' )
75
+ /// $foo: _pick($map, _is-string);
76
+ /// // => ( 'user': 'fred' )
77
+
78
+ @function _pick($args...) {
79
+ @return call('__pick', $args...);
80
+ }
@@ -0,0 +1,27 @@
1
+ @function __pluck($collection, $key) {
2
+ @return __map($collection, __property($key));
3
+ }
4
+
5
+
6
+ /// Gets the value of `$key` from all elements in `$collection`.
7
+ ///
8
+ ///
9
+ /// @access public
10
+ /// @group Collection
11
+ /// @param {List|Map|string} $collection The collection to iterate over.
12
+ /// @param {string} $key The key of the property to pluck.
13
+ /// @returns {List} Returns the property values.
14
+ /// @example scss
15
+ /// $users: (
16
+ /// ( 'user': 'barney', 'age': 36 ),
17
+ /// ( 'user': 'fred', 'age': 40 )
18
+ /// );
19
+ /// $foo: _pluck($users, 'user');
20
+ /// // => ('barney', 'fred')
21
+ /// $user-index: _index-by($users, 'user');
22
+ /// $foo: _pluck($user-index, 'age');
23
+ /// // => (36, 40)
24
+
25
+ @function _pluck($args...) {
26
+ @return call('__pluck', $args...);
27
+ }
@@ -0,0 +1,91 @@
1
+ @function __base-property-function($map: null, $args...) {
2
+ $key: __this('key');
3
+
4
+ @if __is-falsey($map) {
5
+ @return null;
6
+ }
7
+
8
+ $map: __to-map($map);
9
+
10
+ @return if($map == null, null, __get($map, $key));
11
+ }
12
+
13
+
14
+ @function __base-property($key) {
15
+ $_: __scope((
16
+ 'key': $key
17
+ ));
18
+ $base-property-function: __bind('__base-property-function');
19
+ $_: __scope(false);
20
+
21
+ @return $base-property-function;
22
+ }
23
+
24
+
25
+ @function __property($key, $args...) {
26
+ @return __base-property($key);
27
+ }
28
+
29
+
30
+ @function __property-of-function($key, $args...) {
31
+ $map: __this('map');
32
+
33
+ @return if($map == null, null, __get($map, $key));
34
+ }
35
+
36
+
37
+ @function __property-of($map, $args...) {
38
+ $_: __scope((
39
+ 'map', $map
40
+ ));
41
+ $property-of-function: __bind('__property-of-function');
42
+ $_: __scope(false);
43
+
44
+ @return $property-of-function;
45
+ }
46
+
47
+
48
+ /// Creates a function which returns the property value of `$key` on a given map.
49
+ ///
50
+ ///
51
+ /// @access public
52
+ /// @group Utility
53
+ /// @param {string} $key The key of the property to get.
54
+ /// @returns {Function} Returns the new function.
55
+ /// @example scss
56
+ /// $users: (
57
+ /// ( 'user': 'fred' ),
58
+ /// ( 'user': 'barney' )
59
+ /// );
60
+ ///
61
+ /// $get-name: _property('user');
62
+ ///
63
+ /// $foo: _map($users, $get-name);
64
+ /// // => ('fred', barney')
65
+ ///
66
+ /// $foo: _pluck(_sort-by($users, $get-name), 'user');
67
+ /// // => ('barney', 'fred')
68
+
69
+ @function _property($args...) {
70
+ @return call('__property', $args...);
71
+ }
72
+
73
+
74
+ /// The inverse of `_property`; this method creates a function which returns
75
+ /// the property value of a given key on `$map`.
76
+ ///
77
+ ///
78
+ /// @access public
79
+ /// @group Utility
80
+ /// @param {Map} $map The map to inspect.
81
+ /// @returns {Function} Returns the new function.
82
+ /// @example scss
83
+ /// $map: ( 'a': 3, 'b': 1, 'c': 2 );
84
+ /// $foo: _map(('a', 'c'), _property-of($map));
85
+ /// // => (3, 2)
86
+ /// $foo: _sort-by(('a', 'b', 'c'), _property-of($map));
87
+ /// // => ('b', 'c', 'a')
88
+
89
+ @function _property-of($args...) {
90
+ @return call('__property-of', $args...);
91
+ }
@@ -0,0 +1,43 @@
1
+ @function __pull($arguments...) {
2
+ $list: nth($arguments, 1);
3
+
4
+ @if not ($list and length($list)) {
5
+ @return $list;
6
+ }
7
+
8
+ $index: 1;
9
+ $length: length($arguments);
10
+
11
+ @while ($index <= $length) {
12
+ $from-index: 1;
13
+ $value: nth($arguments, $index);
14
+
15
+ @while (__index-of($list, $value, $from-index) > -1) {
16
+ $from-index: __index-of($list, $value, $from-index);
17
+ $list: __splice($list, $from-index, 1);
18
+ }
19
+
20
+ $index: $index + 1;
21
+ }
22
+
23
+ @return $list;
24
+ }
25
+
26
+
27
+ /// Removes all provided values from `$list`, and returns a new list
28
+ /// without the provided values. Does not mutate original list.
29
+ ///
30
+ ///
31
+ /// @access public
32
+ /// @group List
33
+ /// @param {List} $list The source list.
34
+ /// @param {Any...} $values... The values to remove.
35
+ /// @returns {List} Returns new `$list` with removed values.
36
+ /// @example scss
37
+ /// $list: (1, 2, 3, 1, 2, 3);
38
+ /// $foo: _pull(list, 2, 3);
39
+ /// // => (1, 1)
40
+
41
+ @function _pull($args...) {
42
+ @return call('__pull', $args...);
43
+ }
@@ -0,0 +1,27 @@
1
+ @function __push($list, $items...) {
2
+ @each $item in $items {
3
+ $list: append($list, $item);
4
+ }
5
+
6
+ @return $list;
7
+
8
+ // @return join($list, $items, $separator: auto);
9
+ }
10
+
11
+ /// Adds one or more elements to the end of a `$list` and
12
+ /// returns a new list with appended items.
13
+ ///
14
+ /// Similar to native Sass `join()`, with the exception that no
15
+ /// `$separator` is specified and arguments after the first one are
16
+ /// treated as elements to be appended to `$list`.
17
+ ///
18
+ /// @access public
19
+ /// @group List
20
+ /// @param {List} $list The target list.
21
+ /// @param {Any...} $items... The items to append to `$list`.
22
+ /// @returns {List} Returns list with appended items.
23
+ /// @example scss
24
+ /// // todo
25
+ @function _push($args...) {
26
+ @return call('__push', $args...);
27
+ }
@@ -0,0 +1,79 @@
1
+ @function __base-rand($min, $max) {
2
+ @return $min + floor(random() * ($max - $min + 1));
3
+ }
4
+
5
+
6
+ @function __rand($min: null, $max: null, $floating: null) {
7
+ $min: __parse-float($min);
8
+ $max: __parse-float($max);
9
+
10
+ @if ($floating and __is-iteratee-call($min, $max, $floating)) {
11
+ $max: null;
12
+ $floating: null;
13
+ }
14
+
15
+ $no-min: ($min == null);
16
+ $no-max: ($max == null);
17
+
18
+ @if ($floating == null) {
19
+ @if $no-max and __is-boolean($min) {
20
+ $floating: $min;
21
+ $min: 1;
22
+ } @else if __is-boolean($max) {
23
+ $floating: $max;
24
+ $no-max: true;
25
+ }
26
+ }
27
+
28
+ @if $no-min and $no-max {
29
+ $max: 1;
30
+ $no-max: false;
31
+ }
32
+
33
+ $min: if($min == true, 1, if(__is-falsey($min), 0, $min));
34
+
35
+ @if ($no-max) {
36
+ $max: $min;
37
+ $min: 0;
38
+ } @else {
39
+ $max: if($max == true, 1, if($max == false, 0, $max));
40
+ }
41
+
42
+ @if ($floating or ($min % 1 > 0) or ($max % 1 > 0)) {
43
+ $rand: random();
44
+
45
+ @return min($min + ($rand * ($max - $min + 1 / (10 * (str-length('#{$rand}') - 1)))), $max);
46
+ }
47
+
48
+ @return __base-rand($min, $max);
49
+ }
50
+
51
+
52
+ /// Produces a random number between `$min` and `$max` (inclusive). If only one
53
+ /// argument is provided a number between `0` and the given number is returned.
54
+ ///
55
+ /// If `floating` is `true`, or either `$min` or `$max` are floats, a floating-point
56
+ /// number is returned instead of an integer.
57
+ ///
58
+ /// NOTE: This is not equivalent to the native Sass `random()` function.
59
+ ///
60
+ ///
61
+ /// @access public
62
+ /// @group Number
63
+ /// @param {number} $min [0] - The minimum possible value.
64
+ /// @param {number} $max [1] - The maximum possible value.
65
+ /// @param {boolean} $floating [false] - Specify returning a floating-point number.
66
+ /// @returns {number} Returns the random number.
67
+ /// @example scss
68
+ /// $foo: _random(0, 5);
69
+ /// // => an integer between 0 and 5
70
+ /// $foo: _random(5);
71
+ /// // => also an integer between 0 and 5
72
+ /// $foo: _random(5, true);
73
+ /// // => a floating-point number between 0 and 5
74
+ /// $foo: _random(1.2, 5.2);
75
+ /// // => a floating-point number between 1.2 and 5.2
76
+
77
+ @function _rand($args...) {
78
+ @return call('__rand', $args...);
79
+ }
@@ -0,0 +1,59 @@
1
+ @function __range($start, $end: null, $step: null) {
2
+ @if ($step and $step != 0 and __is-iteratee-call($start, $end, $step)) {
3
+ $end: null;
4
+ $step: null;
5
+ }
6
+
7
+ $start: if(__is-integer($start), $start, if(__is-truthy($start), 1, 0));
8
+ $step: if($step == null, 1, if(__is-integer($step), $step, if($step, 1, 0)));
9
+
10
+ @if ($end == null) {
11
+ $end: $start;
12
+ $start: 0;
13
+ } @else {
14
+ $end: if(__is-integer($end), $end, if($end, 1, 0));
15
+ }
16
+
17
+ $index: 1;
18
+ $length: max(ceil(($end - $start) / (if($step == 0, 1, $step))), 0);
19
+ $result: ();
20
+
21
+ @while ($index <= $length) {
22
+ $result: append($result, $start);
23
+ $start: $start + $step;
24
+ $index: $index + 1;
25
+ }
26
+
27
+ @return $result;
28
+ }
29
+
30
+
31
+ /// Creates a list of numbers (positive and/or negative) progressing from
32
+ /// `$start` up to, but not including, `$end`. If `$end` is not specified it
33
+ /// defaults to `$start` with `$start` becoming `0`. If `$start` is less than
34
+ /// `$end` a zero-length range is created unless a negative `$step` is specified.
35
+ ///
36
+ ///
37
+ /// @access public
38
+ /// @group Utility
39
+ /// @param {number} $start [0] - The start of the range.
40
+ /// @param {number} $end - The end of the range.
41
+ /// @param {number} $step [1] - The value to increment or decrement by.
42
+ /// @returns {List} Returns the new list of numbers.
43
+ /// @example scss
44
+ /// $foo: _range(4);
45
+ /// // => (0, 1, 2, 3)
46
+ /// $foo: _range(1, 5);
47
+ /// // => (1, 2, 3, 4)
48
+ /// $foo: _range(0, 20, 5);
49
+ /// // => (0, 5, 10, 15)
50
+ /// $foo: _range(0, -4, -1);
51
+ /// // => (0, -1, -2, -3)
52
+ /// $foo: _range(1, 4, 0);
53
+ /// // => (1, 1, 1)
54
+ /// $foo: _range(0);
55
+ /// // => ()
56
+
57
+ @function _range($args...) {
58
+ @return call('__range', $args...);
59
+ }
@@ -0,0 +1,146 @@
1
+ @function __reduce($collection, $iteratee: '__identity', $accumulator: null, $this-arg: null) {
2
+
3
+ $function: if(__is-list($collection) or __is-string($collection),
4
+ '__list-reduce',
5
+ '__base-reduce');
6
+
7
+ @return __exec($function,
8
+ $collection,
9
+ __get-callback($iteratee, $this-arg, 4),
10
+ $accumulator,
11
+ ($accumulator == null and $this-arg == null),
12
+ __base-each);
13
+ }
14
+
15
+ @function __reduce-right($collection, $iteratee: '__identity', $accumulator: null, $this-arg: null) {
16
+ $function: if(__is-list($collection) or __is-string($collection),
17
+ '__list-reduce-right',
18
+ '__base-reduce');
19
+
20
+ @return __exec($function, $collection, __get-callback($iteratee, $this-arg, 4), $accumulator, ($accumulator == null and $this-arg == null), '__base-each-right');
21
+ }
22
+
23
+
24
+ @function __list-reduce($list, $iteratee, $accumulator: null, $init-from-list: true, $args...) {
25
+ $list: __to-list($list);
26
+ $index: 1;
27
+ $length: length($list);
28
+
29
+ @if ($init-from-list and ($length > 0)) {
30
+ $accumulator: nth($list, $index);
31
+ $index: $index + 1;
32
+ }
33
+
34
+ @while ($index <= $length) {
35
+ $value: nth($list, $index);
36
+ $accumulator: __exec($iteratee, $accumulator, $value, $index, $list);
37
+
38
+ $index: $index + 1;
39
+ }
40
+
41
+ @return $accumulator;
42
+ }
43
+
44
+
45
+ @function __list-reduce-right($list, $iteratee, $accumulator: null, $init-from-list: true, $args...) {
46
+ $list: __to-list($list);
47
+ $list: __list-reverse($list);
48
+
49
+ @return __list-reduce($list, $iteratee, $accumulator, $init-from-list);
50
+ }
51
+
52
+
53
+ @function __base-reduce-iteratee($value, $index, $collection: null) {
54
+ $iteratee: __this('iteratee');
55
+ $accumulator: __this('accumulator');
56
+ $init-from-collection: __this('init-from-collection');
57
+
58
+ @if ($init-from-collection) {
59
+ $_: __this('init-from-collection', false);
60
+ $accumulator: $value;
61
+ } @else {
62
+ $accumulator: __exec($iteratee, $accumulator, $value, $index, $collection);
63
+ }
64
+
65
+ $_: __this('accumulator', $accumulator);
66
+
67
+ @return true;
68
+ }
69
+
70
+
71
+ @function __base-reduce($collection, $iteratee, $accumulator, $init-from-collection: false, $each-function: null) {
72
+
73
+ $_: __scope((
74
+ 'iteratee': $iteratee,
75
+ 'accumulator': $accumulator,
76
+ 'init-from-collection': $init-from-collection
77
+ ));
78
+ $iteratee: __bind('__base-reduce-iteratee');
79
+ $_: __exec($each-function, $collection, $iteratee);
80
+ $accumulator: __this('accumulator');
81
+ $_: __scope(false);
82
+
83
+ @return $accumulator;
84
+ }
85
+
86
+
87
+ /// Reduces `$collection` to a value which is the accumulated result of running
88
+ /// each element in `$collection` through `$iteratee`, where each successive
89
+ /// invocation is supplied the return value of the previous. If `$accumulator`
90
+ /// is not provided the first element of `$collection` is used as the initial
91
+ /// value. The `$iteratee` is bound to `$this-arg`and invoked with four arguments;
92
+ /// (accumulator, value, index|key, collection).
93
+ ///
94
+ /// @access public
95
+ /// @group Collection
96
+ /// @param {List|Map|string} $collection The collection to iterate over.
97
+ /// @param {Function} $iteratee [_identity] - The function invoked per iteration.
98
+ /// @param {*} $accumulator [null] The initial value.
99
+ /// @param {*} $this-arg [null] - The `_this` binding of `$iteratee`.
100
+ /// @returns {*} Returns the accumulated value.
101
+ /// @example scss
102
+ /// // todo
103
+
104
+ @function _reduce($args...) {
105
+ @return call('__reduce', $args...);
106
+ }
107
+
108
+
109
+ /// @alias _reduce
110
+
111
+ @function _foldl($args...) {
112
+ @return call('__reduce', $args...);
113
+ }
114
+
115
+
116
+ /// @alias _reduce
117
+
118
+ @function _inject($args...) {
119
+ @return call('__reduce', $args...);
120
+ }
121
+
122
+
123
+ /// This method is like `_reduce` except that it iterates over elements of
124
+ /// `$collection` from right to left.
125
+ ///
126
+ ///
127
+ /// @access public
128
+ /// @group Collection
129
+ /// @param {List|Map|string} $collection The collection to iterate over.
130
+ /// @param {Function} $iteratee [_identity] - The function invoked per iteration.
131
+ /// @param {*} $accumulator [null] - The initial value.
132
+ /// @param {*} $this-arg [null] - The `_this` binding of `$iteratee`.
133
+ /// @returns {*} Returns the accumulated value.
134
+ /// @example scss
135
+ /// // todo
136
+
137
+ @function _reduce-right($args...) {
138
+ @return call('__reduce-right', $args...);
139
+ }
140
+
141
+
142
+ /// @alias _reduce-right
143
+
144
+ @function _foldr($args...) {
145
+ @return call('__reduce-right', $args...);
146
+ }
@@ -0,0 +1,68 @@
1
+ @function __reject-iteratee($value, $index, $collection) {
2
+ $predicate: __this('predicate');
3
+ $test: __exec($predicate, $value, $index, $collection);
4
+ $result: __is-falsey(__exec($predicate, $value, $index, $collection));
5
+
6
+ @return $result;
7
+ }
8
+
9
+
10
+ @function __reject($collection, $predicate: '__identity', $this-arg: null) {
11
+ $function: if(__is-list($collection), '__list-filter', '__base-filter');
12
+ $predicate: __get-callback($predicate, $this-arg, 3);
13
+ $_: __scope((
14
+ 'predicate': $predicate
15
+ ));
16
+ $reject-iteratee: __bind('__reject-iteratee');
17
+ $result: __exec($function, $collection, $reject-iteratee);
18
+ $_: __scope(false);
19
+
20
+ @return $result;
21
+ }
22
+
23
+ ///
24
+ /// The opposite of `_filter`; this method returns the elements of `$collection`
25
+ /// that `$predicate` does **not** return truthy for.
26
+ ///
27
+ /// If a property name is provided for `$predicate` the created `_property`
28
+ /// style callback returns the property value of the given element.
29
+ ///
30
+ /// If a value is also provided for `$this-arg` the created `_matches-property`
31
+ /// style callback returns `true` for elements that have a matching property
32
+ /// value, else `false`.
33
+ ///
34
+ /// If a map is provided for `$predicate` the created `_matches` style
35
+ /// callback returns `true` for elements that have the properties of the given
36
+ /// object, else `false`.
37
+ ///
38
+ ///
39
+ /// @access public
40
+ /// @group Collection
41
+ /// @param {List|Map|string} $collection The collection to iterate over.
42
+ /// @param {Function|Map|string} $predicate [_identity] - The function invoked
43
+ /// per iteration.
44
+ /// @param {*} $this-arg [null] - The `_this` binding of `$predicate`.
45
+ /// @returns {List} Returns the new filtered list.
46
+ /// @example scss
47
+ /// $foo: _reject((1, 2, 3, 4), is-even);
48
+ /// // => (1, 3)
49
+ ///
50
+ /// $users: (
51
+ /// ( 'user': 'barney', 'age': 36, 'active': false ),
52
+ /// ( 'user': 'fred', 'age': 40, 'active': true )
53
+ /// );
54
+ /// // using the `_matches` callback shorthand
55
+ /// $foo: _pluck(_reject($users, ( 'age': 40, 'active': true )), 'user');
56
+ /// // => ('barney')
57
+ ///
58
+ /// // using the `_matches-property` callback shorthand
59
+ /// $foo: _pluck(_reject($users, 'active', false), 'user');
60
+ /// // => ('fred')
61
+ ///
62
+ /// // using the `_property` callback shorthand
63
+ /// $foo: _pluck(_reject($users, 'active'), 'user');
64
+ /// // => ('barney')
65
+
66
+ @function _reject($args...) {
67
+ @return call('__reject', $args...);
68
+ }
@@ -0,0 +1,33 @@
1
+ @function __repeat($string, $value: 0) {
2
+ $value: __parse-int($value);
3
+ $result: '';
4
+
5
+ @if $value >= 1 {
6
+ @for $iteration from 1 through $value {
7
+ $result: $result + $string;
8
+ }
9
+ }
10
+
11
+ @return $result;
12
+ }
13
+
14
+
15
+ /// Repeats the given string `$n` times.
16
+ /// ///
17
+ ///
18
+ /// @access public
19
+ /// @group String
20
+ /// @param {string} $string [''] - The string to repeat.
21
+ /// @param {number} $n [0] - The number of times to repeat the string.
22
+ /// @returns {string} Returns the repeated string.
23
+ /// @example scss
24
+ /// /// _repeat('*', 3);
25
+ /// // => '***'
26
+ /// /// _repeat('abc', 2);
27
+ /// // => 'abcabc'
28
+ /// /// _repeat('abc', 0);
29
+ /// // => ''
30
+
31
+ @function _repeat($args...) {
32
+ @return call('__repeat', $args...);
33
+ }