shared/src/main/scala/purecss/generic/PureCssGeneric.scala
changeset 3 dbc25b272bdc
child 4 84cc462b85d4
equal deleted inserted replaced
2:d75548c8d394 3:dbc25b272bdc
       
     1 /*
       
     2  * Copyright 2017 Tomas Zeman <tzeman@volny.cz>
       
     3  *
       
     4  * Licensed under the Apache License, Version 2.0 (the "License");
       
     5  * you may not use this file except in compliance with the License.
       
     6  * You may obtain a copy of the License at
       
     7  *
       
     8  *     http://www.apache.org/licenses/LICENSE-2.0
       
     9  *
       
    10  * Unless required by applicable law or agreed to in writing, software
       
    11  * distributed under the License is distributed on an "AS IS" BASIS,
       
    12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       
    13  * See the License for the specific language governing permissions and
       
    14  * limitations under the License.
       
    15  */
       
    16 package purecss.generic
       
    17 
       
    18 import scala.language.implicitConversions
       
    19 import scalatags.generic.Bundle
       
    20 
       
    21 class PureCssGeneric[Builder, Output <: FragT, FragT](
       
    22   val bun: Bundle[Builder, Output, FragT]) {
       
    23 
       
    24   import bun.all._
       
    25 
       
    26   type C = PureCls[Builder, Output, FragT]
       
    27 
       
    28   implicit val bundle: Bundle[Builder, Output, FragT] = bun
       
    29 
       
    30   implicit def cls2mod(v: C): Modifier = v()
       
    31   //implicit def alert2cls(a: PureAlert.Alert): PureCls = a.toCls
       
    32   //implicit def alert2mod(a: PureAlert.Alert): Modifier = a.toCls.apply()
       
    33 
       
    34   private def pc(c: String): C = PureCls(c)
       
    35 
       
    36   // grid
       
    37   val pure_g: C = pc("pure-g")
       
    38   val pure_u_1: C = pc("pure-u-1")
       
    39 
       
    40   // 5ths-based
       
    41   val pure_u_1_5: C = pc("pure-u-1-5")
       
    42   val pure_u_2_5: C = pc("pure-u-2-5")
       
    43   val pure_u_3_5: C = pc("pure-u-3-5")
       
    44   val pure_u_4_5: C = pc("pure-u-4-5")
       
    45 
       
    46   // 24ths-based
       
    47   val pure_u_1_24: C = pc("pure-u-1-24")
       
    48   val pure_u_1_12: C = pc("pure-u-1-12")
       
    49   val pure_u_2_24: C = pc("pure-u-2-24")
       
    50   val pure_u_3_24: C = pc("pure-u-3-24")
       
    51   val pure_u_1_8: C = pc("pure-u-1-8")
       
    52   val pure_u_4_24: C = pc("pure-u-4-24")
       
    53   val pure_u_1_6: C = pc("pure-u-1-6")
       
    54   val pure_u_5_24: C = pc("pure-u-5-24")
       
    55   val pure_u_1_4: C = pc("pure-u-1-4")
       
    56   val pure_u_6_24: C = pc("pure-u-6-24")
       
    57   val pure_u_7_24: C = pc("pure-u-7-24")
       
    58   val pure_u_1_3: C = pc("pure-u-1-3")
       
    59   val pure_u_8_24: C = pc("pure-u-8-24")
       
    60   val pure_u_3_8: C = pc("pure-u-3-8")
       
    61   val pure_u_9_24: C = pc("pure-u-9-24")
       
    62   val pure_u_5_12: C = pc("pure-u-5-12")
       
    63   val pure_u_10_24: C = pc("pure-u-10-24")
       
    64   val pure_u_11_24: C = pc("pure-u-11-24")
       
    65   val pure_u_1_2: C = pc("pure-u-1-2")
       
    66   val pure_u_13_24: C = pc("pure-u-13-24")
       
    67   val pure_u_7_12: C = pc("pure-u-7-12")
       
    68   val pure_u_14_24: C = pc("pure-u-14-24")
       
    69   val pure_u_5_8: C = pc("pure-u-5-8")
       
    70   val pure_u_15_24: C = pc("pure-u-15-24")
       
    71   val pure_u_2_3: C = pc("pure-u-2-3")
       
    72   val pure_u_16_24: C = pc("pure-u-16-24")
       
    73   val pure_u_17_24: C = pc("pure-u-17-24")
       
    74   val pure_u_3_4: C = pc("pure-u-3-4")
       
    75   val pure_u_18_24: C = pc("pure-u-18-24")
       
    76   val pure_u_19_24: C = pc("pure-u-19-24")
       
    77   val pure_u_5_6: C = pc("pure-u-5-6")
       
    78   val pure_u_20_24: C = pc("pure-u-20-24")
       
    79   val pure_u_7_8: C = pc("pure-u-7-8")
       
    80   val pure_u_21_24: C = pc("pure-u-21-24")
       
    81   val pure_u_11_12: C = pc("pure-u-11-12")
       
    82   val pure_u_22_24: C = pc("pure-u-22-24")
       
    83   val pure_u_23_24: C = pc("pure-u-23-24")
       
    84 
       
    85   // generic
       
    86   val pull_right: C = pc("pull-right")
       
    87 
       
    88   // tables
       
    89   val pure_table: C = pc("pure-table")
       
    90   val pure_table_bordered: C = pc("pure-table-bordered")
       
    91   val pure_table_horizontal: C = pc("pure-table-horizontal")
       
    92   val pure_table_striped: C = pc("pure-table-striped")
       
    93 
       
    94   // alerts
       
    95   val pure_alert: C = pc("pure-alert")
       
    96   val pure_alert_error: C = pc("pure-alert-error")
       
    97   val pure_alert_warning: C = pc("pure-alert-warning")
       
    98   val pure_alert_success: C = pc("pure-alert-success")
       
    99 }