diff --git a/.Rbuildignore b/.Rbuildignore index 14a6d3c..e60b238 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -12,3 +12,4 @@ ^CODE_OF_CONDUCT\.md$ ^\.github$ ^codecov\.yml$ +^README\.Rmd$ diff --git a/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md similarity index 81% rename from CODE_OF_CONDUCT.md rename to .github/CODE_OF_CONDUCT.md index b36903f..3ac34c8 100644 --- a/CODE_OF_CONDUCT.md +++ b/.github/CODE_OF_CONDUCT.md @@ -6,8 +6,8 @@ We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, -nationality, personal appearance, race, religion, or sexual identity and -orientation. +nationality, personal appearance, race, caste, color, religion, or sexual +identity and orientation. We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community. @@ -21,25 +21,25 @@ community include: * Being respectful of differing opinions, viewpoints, and experiences * Giving and gracefully accepting constructive feedback * Accepting responsibility and apologizing to those affected by our mistakes, -and learning from the experience + and learning from the experience * Focusing on what is best not just for us as individuals, but for the overall -community + community Examples of unacceptable behavior include: -* The use of sexualized language or imagery, and sexual attention or -advances of any kind +* The use of sexualized language or imagery, and sexual attention or advances of + any kind * Trolling, insulting or derogatory comments, and personal or political attacks * Public or private harassment -* Publishing others' private information, such as a physical or email -address, without their explicit permission +* Publishing others' private information, such as a physical or email address, + without their explicit permission * Other conduct which could reasonably be considered inappropriate in a -professional setting + professional setting ## Enforcement Responsibilities -Community leaders are responsible for clarifying and enforcing our standards -of acceptable behavior and will take appropriate and fair corrective action in +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful. @@ -50,17 +50,17 @@ decisions when appropriate. ## Scope -This Code of Conduct applies within all community spaces, and also applies -when an individual is officially representing the community in public spaces. -Examples of representing our community include using an official e-mail -address, posting via an official social media account, or acting as an appointed +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed representative at an online or offline event. ## Enforcement Instances of abusive, harassing, or otherwise unacceptable behavior may be -reported to the community leaders responsible for enforcement at [INSERT CONTACT -METHOD]. All complaints will be reviewed and investigated promptly and fairly. +reported to the community leaders responsible for enforcement at codeofconduct@posit.co. +All complaints will be reviewed and investigated promptly and fairly. All community leaders are obligated to respect the privacy and security of the reporter of any incident. @@ -114,15 +114,13 @@ community. ## Attribution This Code of Conduct is adapted from the [Contributor Covenant][homepage], -version 2.0, -available at https://www.contributor-covenant.org/version/2/0/ -code_of_conduct.html. +version 2.1, available at +. -Community Impact Guidelines were inspired by [Mozilla's code of conduct -enforcement ladder](https://github.com/mozilla/diversity). - -[homepage]: https://www.contributor-covenant.org +Community Impact Guidelines were inspired by +[Mozilla's code of conduct enforcement ladder][https://github.com/mozilla/inclusion]. For answers to common questions about this code of conduct, see the FAQ at -https://www.contributor-covenant.org/faq. Translations are available at https:// -www.contributor-covenant.org/translations. +. Translations are available at . + +[homepage]: https://www.contributor-covenant.org diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 9e72d78..ee65ccb 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -22,23 +22,27 @@ jobs: fail-fast: false matrix: config: - - {os: macOS-latest, r: 'release'} + - {os: macos-latest, r: 'release'} - {os: windows-latest, r: 'release'} # Use 3.6 to trigger usage of RTools35 - {os: windows-latest, r: '3.6'} + # use 4.1 to check with rtools40's older compiler + - {os: windows-latest, r: '4.1'} - # Use older ubuntu to maximise backward compatibility - - {os: ubuntu-18.04, r: 'devel', http-user-agent: 'release'} - - {os: ubuntu-18.04, r: 'release'} - - {os: ubuntu-18.04, r: 'oldrel-1'} + - {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'} + - {os: ubuntu-latest, r: 'release'} + - {os: ubuntu-latest, r: 'oldrel-1'} + - {os: ubuntu-latest, r: 'oldrel-2'} + - {os: ubuntu-latest, r: 'oldrel-3'} + - {os: ubuntu-latest, r: 'oldrel-4'} env: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} R_KEEP_PKG_SOURCE: yes steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: r-lib/actions/setup-pandoc@v2 diff --git a/.github/workflows/pkgdown.yaml b/.github/workflows/pkgdown.yaml index 0b26021..bfc9f4d 100644 --- a/.github/workflows/pkgdown.yaml +++ b/.github/workflows/pkgdown.yaml @@ -4,12 +4,13 @@ on: push: branches: [main, master] pull_request: - branches: [main, master] release: types: [published] workflow_dispatch: -name: pkgdown +name: pkgdown.yaml + +permissions: read-all jobs: pkgdown: @@ -19,8 +20,10 @@ jobs: group: pkgdown-${{ github.event_name != 'pull_request' || github.run_id }} env: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + permissions: + contents: write steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - uses: r-lib/actions/setup-pandoc@v2 @@ -39,7 +42,7 @@ jobs: - name: Deploy to GitHub pages 🚀 if: github.event_name != 'pull_request' - uses: JamesIves/github-pages-deploy-action@4.1.4 + uses: JamesIves/github-pages-deploy-action@v4.5.0 with: clean: false branch: gh-pages diff --git a/.github/workflows/pr-commands.yaml b/.github/workflows/pr-commands.yaml index 97271eb..2edd93f 100644 --- a/.github/workflows/pr-commands.yaml +++ b/.github/workflows/pr-commands.yaml @@ -4,7 +4,9 @@ on: issue_comment: types: [created] -name: Commands +name: pr-commands.yaml + +permissions: read-all jobs: document: @@ -13,8 +15,10 @@ jobs: runs-on: ubuntu-latest env: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + permissions: + contents: write steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - uses: r-lib/actions/pr-fetch@v2 with: @@ -50,8 +54,10 @@ jobs: runs-on: ubuntu-latest env: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + permissions: + contents: write steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - uses: r-lib/actions/pr-fetch@v2 with: diff --git a/.github/workflows/test-coverage.yaml b/.github/workflows/test-coverage.yaml index 4b65418..0ab748d 100644 --- a/.github/workflows/test-coverage.yaml +++ b/.github/workflows/test-coverage.yaml @@ -4,9 +4,10 @@ on: push: branches: [main, master] pull_request: - branches: [main, master] -name: test-coverage +name: test-coverage.yaml + +permissions: read-all jobs: test-coverage: @@ -15,7 +16,7 @@ jobs: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - uses: r-lib/actions/setup-r@v2 with: @@ -23,9 +24,39 @@ jobs: - uses: r-lib/actions/setup-r-dependencies@v2 with: - extra-packages: any::covr + extra-packages: any::covr, any::xml2 needs: coverage - name: Test coverage - run: covr::codecov(quiet = FALSE) + run: | + cov <- covr::package_coverage( + quiet = FALSE, + clean = FALSE, + install_path = file.path(normalizePath(Sys.getenv("RUNNER_TEMP"), winslash = "/"), "package") + ) + print(cov) + covr::to_cobertura(cov) shell: Rscript {0} + + - uses: codecov/codecov-action@v5 + with: + # Fail if error if not on PR, or if on PR and token is given + fail_ci_if_error: ${{ github.event_name != 'pull_request' || secrets.CODECOV_TOKEN }} + files: ./cobertura.xml + plugins: noop + disable_search: true + token: ${{ secrets.CODECOV_TOKEN }} + + - name: Show testthat output + if: always() + run: | + ## -------------------------------------------------------------------- + find '${{ runner.temp }}/package' -name 'testthat.Rout*' -exec cat '{}' \; || true + shell: bash + + - name: Upload test results + if: failure() + uses: actions/upload-artifact@v4 + with: + name: coverage-test-failures + path: ${{ runner.temp }}/package diff --git a/.gitignore b/.gitignore index 66b86ae..a385dea 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ .Rproj.user .DS_Store inst/doc +docs diff --git a/DESCRIPTION b/DESCRIPTION index f6d0c07..d74046c 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -3,8 +3,8 @@ Title: A Compilation of Applicability Domain Methods Version: 0.0.1.1 Authors@R: c( person("Marly", "Gotti", , "marlygotti@gmail.com", role = c("aut", "cre")), - person("Max", "Kuhn", , "max@rstudio.com", role = "aut"), - person("RStudio", role = "cph") + person("Max", "Kuhn", , "max@posit.co", role = "aut"), + person("Posit Software, PBC", role = c("cph", "fnd")) ) Description: A modeling package compiling applicability domain methods in R. It combines different methods to measure the amount of @@ -16,16 +16,16 @@ URL: https://github.com/tidymodels/applicable, https://applicable.tidymodels.org BugReports: https://github.com/tidymodels/applicable/issues Depends: - ggplot2, - R (>= 3.4) + ggplot2 (>= 4.0.2), + R (>= 3.6) Imports: dplyr, glue, - hardhat (>= 0.1.2), + hardhat (>= 1.3.0), Matrix, proxyC, purrr, - rlang, + rlang (>= 1.1.1), stats, tibble, tidyr, @@ -35,17 +35,17 @@ Suggests: covr, knitr, modeldata, - recipes (>= 0.1.7), + recipes (>= 1.0.8), rmarkdown, spelling, - testthat (>= 3.0.0), + testthat (>= 3.2.0), xml2 VignetteBuilder: knitr +Config/Needs/website: tidyverse/tidytemplate +Config/testthat/edition: 3 Encoding: UTF-8 Language: en-US LazyData: true Roxygen: list(markdown = TRUE) -RoxygenNote: 7.1.2 -Config/Needs/website: tidyverse/tidytemplate -Config/testthat/edition: 3 +RoxygenNote: 7.3.3 diff --git a/LICENSE b/LICENSE index 770d208..dd20521 100644 --- a/LICENSE +++ b/LICENSE @@ -1,2 +1,2 @@ -YEAR: 2020 -COPYRIGHT HOLDER: RStudio PBC +YEAR: 2023 +COPYRIGHT HOLDER: applicable authors diff --git a/LICENSE.md b/LICENSE.md index 2135807..72fe06d 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -1,6 +1,6 @@ # MIT License -Copyright (c) 2020 RStudio PBC +Copyright (c) 2023 applicable authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/NAMESPACE b/NAMESPACE index 391f9ad..6cc910e 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -31,6 +31,7 @@ export(autoplot.apd_pca) export(autoplot.apd_similarity) export(score) export(score.default) +import(rlang) importFrom(Matrix,Matrix) importFrom(Matrix,colSums) importFrom(dplyr,"%>%") @@ -59,9 +60,6 @@ importFrom(hardhat,validate_prediction_size) importFrom(proxyC,simil) importFrom(purrr,map2_dfc) importFrom(purrr,map_dfc) -importFrom(rlang,abort) -importFrom(rlang,arg_match) -importFrom(rlang,enquos) importFrom(stats,approx) importFrom(stats,ecdf) importFrom(stats,prcomp) diff --git a/R/0.R b/R/0.R deleted file mode 100644 index 2c8adba..0000000 --- a/R/0.R +++ /dev/null @@ -1,47 +0,0 @@ -#' @importFrom dplyr %>% -#' @importFrom dplyr select -#' @importFrom dplyr slice -#' @importFrom dplyr matches -#' @importFrom dplyr starts_with -#' @importFrom dplyr rename_all -#' @importFrom dplyr mutate -#' @importFrom dplyr mutate_all -#' @importFrom dplyr group_by -#' @importFrom dplyr ungroup -#' @importFrom dplyr count -#' @importFrom dplyr sample_n -#' @importFrom glue glue -#' @importFrom tibble as_tibble -#' @importFrom tibble tibble -#' @importFrom purrr map_dfc -#' @importFrom purrr map2_dfc -#' @importFrom rlang abort -#' @importFrom rlang enquos -#' @importFrom rlang arg_match -#' @importFrom stats predict -#' @importFrom stats prcomp -#' @importFrom stats approx -#' @importFrom stats quantile -#' @importFrom stats ecdf -#' @importFrom stats setNames -#' @importFrom hardhat validate_prediction_size -#' @importFrom hardhat forge -#' @importFrom hardhat mold -#' @importFrom hardhat new_model -#' @importFrom ggplot2 ggplot geom_step xlab ylab aes autoplot -#' @importFrom Matrix Matrix colSums -#' @importFrom tidyselect vars_select -#' @importFrom tidyr gather -#' @importFrom proxyC simil - -# ------------------------------------------------------------------------------ -# nocov - -# Reduce false positives when R CMD check runs its "no visible binding for -# global variable" check -#' @importFrom utils globalVariables -utils::globalVariables( - c("cumulative", "n", "sim", "percentile", "component", "value") -) - -# nocov end diff --git a/R/applicable-package.R b/R/applicable-package.R index b30bbda..ff213e8 100644 --- a/R/applicable-package.R +++ b/R/applicable-package.R @@ -1,8 +1,50 @@ #' @keywords internal "_PACKAGE" -# The following block is used by usethis to automatically manage -# roxygen namespace tags. Modify with care! ## usethis namespace: start + +#' @import rlang +#' @importFrom dplyr %>% +#' @importFrom dplyr count +#' @importFrom dplyr group_by +#' @importFrom dplyr matches +#' @importFrom dplyr mutate +#' @importFrom dplyr mutate_all +#' @importFrom dplyr rename_all +#' @importFrom dplyr sample_n +#' @importFrom dplyr select +#' @importFrom dplyr slice +#' @importFrom dplyr starts_with +#' @importFrom dplyr ungroup +#' @importFrom ggplot2 ggplot geom_step xlab ylab aes autoplot +#' @importFrom glue glue +#' @importFrom hardhat forge +#' @importFrom hardhat mold +#' @importFrom hardhat new_model +#' @importFrom hardhat validate_prediction_size +#' @importFrom Matrix Matrix colSums +#' @importFrom proxyC simil +#' @importFrom purrr map_dfc +#' @importFrom purrr map2_dfc +#' @importFrom stats approx +#' @importFrom stats ecdf +#' @importFrom stats prcomp +#' @importFrom stats predict +#' @importFrom stats quantile +#' @importFrom stats setNames +#' @importFrom tibble as_tibble +#' @importFrom tibble tibble +#' @importFrom tidyr gather +#' @importFrom tidyselect vars_select +#' @importFrom utils globalVariables ## usethis namespace: end + +# ------------------------------------------------------------------------------ +# global variable" check +# nocov +# nocov end +# Reduce false positives when R CMD check runs its "no visible binding for +utils::globalVariables( + c("cumulative", "n", "sim", "percentile", "component", "value") +) NULL diff --git a/R/data.R b/R/data.R index 0c5bcee..a530a3c 100644 --- a/R/data.R +++ b/R/data.R @@ -30,7 +30,7 @@ NULL #' @return \item{okc_binary_train,okc_binary_test}{data frame frames with 61 columns} #' #' @source -#' Kim (2015), "OkCupid Data for Introductory Statistics and Data Science Courses", _Journal of Statistics Education_, Volume 23, Number 2. \url{https://www.tandfonline.com/doi/abs/10.1080/10691898.2015.11889737} +#' Kim (2015), "OkCupid Data for Introductory Statistics and Data Science Courses", _Journal of Statistics Education_, Volume 23, Number 2. \doi{10.1080/10691898.2015.11889737} #' #' Kuhn and Johnson (2020), _Feature Engineering and Selection_, Chapman and Hall/CRC . \url{https://bookdown.org/max/FES/} and \url{https://github.com/topepo/FES} #' @@ -60,7 +60,7 @@ NULL #' Data as an End of Semester Regression Project," \emph{Journal of Statistics #' Education}, Volume 19, Number 3. #' -#' \url{https://www.cityofames.org/government/departments-divisions-a-h/city-assessor} +#' `https://www.cityofames.org/government/departments-divisions-a-h/city-assessor` #' #' \url{http://jse.amstat.org/v19n3/decock/DataDocumentation.txt} #' diff --git a/R/print.R b/R/print.R index 259eaf4..2cd14d8 100644 --- a/R/print.R +++ b/R/print.R @@ -74,7 +74,7 @@ print.apd_hat_values <- function(x, ...) { #' tr_x <- matrix( #' sample(0:1, size = 20 * 50, prob = rep(.5, 2), replace = TRUE), #' ncol = 20 -#' ) +#' ) #' model <- apd_similarity(tr_x) #' print(model) #' @export diff --git a/README.Rmd b/README.Rmd index d5aa8f1..ddaa0f3 100644 --- a/README.Rmd +++ b/README.Rmd @@ -15,16 +15,16 @@ knitr::opts_chunk$set( ) options(rlang__backtrace_on_error = "reminder") - ``` # applicable [![R-CMD-check](https://github.com/tidymodels/applicable/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/tidymodels/applicable/actions/workflows/R-CMD-check.yaml) -[![Codecov test coverage](https://codecov.io/gh/tidymodels/applicable/branch/main/graph/badge.svg)](https://app.codecov.io/gh/tidymodels/applicable?branch=main) +[![Codecov test coverage](https://codecov.io/gh/tidymodels/applicable/graph/badge.svg)](https://app.codecov.io/gh/tidymodels/applicable) [![Lifecycle:experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html) [![CRAN status](https://www.r-pkg.org/badges/version/applicable)](https://cran.r-project.org/package=applicable) + ## Introduction @@ -42,8 +42,8 @@ install.packages("applicable") Install the development version of applicable from [GitHub](https://github.com/) with: ``` r -# install.packages("devtools") -devtools::install_github("tidymodels/applicable") +# install.packages("pak") +pak::pak("tidymodels/applicable") ``` ## Vignettes @@ -58,7 +58,7 @@ To learn about how to use applicable, check out the vignettes: This project is released with a [Contributor Code of Conduct](https://contributor-covenant.org/version/2/0/CODE_OF_CONDUCT.html). By contributing to this project, you agree to abide by its terms. -- For questions and discussions about tidymodels packages, modeling, and machine learning, please [post on RStudio Community](https://community.rstudio.com/new-topic?category_id=15&tags=tidymodels,question). +- For questions and discussions about tidymodels packages, modeling, and machine learning, please [post on Posit Community](https://community.rstudio.com/new-topic?category_id=15&tags=tidymodels,question). - If you think you have encountered a bug, please [submit an issue](https://github.com/tidymodels/applicable/issues). diff --git a/README.md b/README.md index 8b506d1..7a3e2b4 100644 --- a/README.md +++ b/README.md @@ -7,10 +7,11 @@ [![R-CMD-check](https://github.com/tidymodels/applicable/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/tidymodels/applicable/actions/workflows/R-CMD-check.yaml) [![Codecov test -coverage](https://codecov.io/gh/tidymodels/applicable/branch/main/graph/badge.svg)](https://app.codecov.io/gh/tidymodels/applicable?branch=main) +coverage](https://codecov.io/gh/tidymodels/applicable/graph/badge.svg)](https://app.codecov.io/gh/tidymodels/applicable) [![Lifecycle:experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html) [![CRAN status](https://www.r-pkg.org/badges/version/applicable)](https://cran.r-project.org/package=applicable) + ## Introduction @@ -36,19 +37,19 @@ Install the development version of applicable from [GitHub](https://github.com/) with: ``` r -# install.packages("devtools") -devtools::install_github("tidymodels/applicable") +# install.packages("pak") +pak::pak("tidymodels/applicable") ``` ## Vignettes To learn about how to use applicable, check out the vignettes: -- `vignette("binary-data", "applicable")`: Learn different methods to - analyze binary data. +- `vignette("binary-data", "applicable")`: Learn different methods to + analyze binary data. -- `vignette("continuous-data", "applicable")`: Learn different methods - to analyze continuous data. +- `vignette("continuous-data", "applicable")`: Learn different methods + to analyze continuous data. ## Contributing @@ -56,18 +57,18 @@ This project is released with a [Contributor Code of Conduct](https://contributor-covenant.org/version/2/0/CODE_OF_CONDUCT.html). By contributing to this project, you agree to abide by its terms. -- For questions and discussions about tidymodels packages, modeling, - and machine learning, please [post on RStudio - Community](https://community.rstudio.com/new-topic?category_id=15&tags=tidymodels,question). +- For questions and discussions about tidymodels packages, modeling, and + machine learning, please [post on Posit + Community](https://community.rstudio.com/new-topic?category_id=15&tags=tidymodels,question). -- If you think you have encountered a bug, please [submit an - issue](https://github.com/tidymodels/applicable/issues). +- If you think you have encountered a bug, please [submit an + issue](https://github.com/tidymodels/applicable/issues). -- Either way, learn how to create and share a - [reprex](https://reprex.tidyverse.org/articles/articles/learn-reprex.html) - (a minimal, reproducible example), to clearly communicate about your - code. +- Either way, learn how to create and share a + [reprex](https://reprex.tidyverse.org/articles/articles/learn-reprex.html) + (a minimal, reproducible example), to clearly communicate about your + code. -- Check out further details on [contributing guidelines for tidymodels - packages](https://www.tidymodels.org/contribute/) and [how to get - help](https://www.tidymodels.org/help/). +- Check out further details on [contributing guidelines for tidymodels + packages](https://www.tidymodels.org/contribute/) and [how to get + help](https://www.tidymodels.org/help/). diff --git a/_pkgdown.yml b/_pkgdown.yml index 0028876..b7a660d 100644 --- a/_pkgdown.yml +++ b/_pkgdown.yml @@ -1,17 +1,15 @@ -url: https://applicable.tidymodels.org - +url: https://applicable.tidymodels.org/ template: package: tidytemplate - params: - part_of: tidymodels - footer: applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy. - -# https://github.com/tidyverse/tidytemplate for css - + bootstrap: 5 + bslib: + primary: '#CA225E' + includes: + in_header: | + development: mode: auto - - figures: fig.width: 8 fig.height: 5.75 + diff --git a/docs/404.html b/docs/404.html deleted file mode 100644 index 89b69a2..0000000 --- a/docs/404.html +++ /dev/null @@ -1,168 +0,0 @@ - - - - - - - - -Page not found (404) • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - -
- -
-
- - -Content not found. Please use links in the navbar. - -
- - - -
- - - -
-
-

applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

-
- -
-

- Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

-
- -
-
- - - - - - - - diff --git a/docs/LICENSE-text.html b/docs/LICENSE-text.html deleted file mode 100644 index cfe91ec..0000000 --- a/docs/LICENSE-text.html +++ /dev/null @@ -1,170 +0,0 @@ - - - - - - - - -License • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - -
- -
-
- - -
YEAR: 2020
-COPYRIGHT HOLDER: RStudio PBC
-
- -
- - - -
- - - -
-
-

applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

-
- -
-

- Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

-
- -
-
- - - - - - - - diff --git a/docs/LICENSE.html b/docs/LICENSE.html deleted file mode 100644 index d671fa2..0000000 --- a/docs/LICENSE.html +++ /dev/null @@ -1,174 +0,0 @@ - - - - - - - - -MIT License • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - -
- -
-
- - -
- -

Copyright (c) 2020 RStudio PBC

-

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:

-

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

-

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.

-
- -
- - - -
- - - -
-
-

applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

-
- -
-

- Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

-
- -
-
- - - - - - - - diff --git a/docs/apple-touch-icon-120x120.png b/docs/apple-touch-icon-120x120.png deleted file mode 100644 index c2e180c..0000000 Binary files a/docs/apple-touch-icon-120x120.png and /dev/null differ diff --git a/docs/apple-touch-icon-60x60.png b/docs/apple-touch-icon-60x60.png deleted file mode 100644 index a9ae768..0000000 Binary files a/docs/apple-touch-icon-60x60.png and /dev/null differ diff --git a/docs/apple-touch-icon-76x76.png b/docs/apple-touch-icon-76x76.png deleted file mode 100644 index 4eea6a1..0000000 Binary files a/docs/apple-touch-icon-76x76.png and /dev/null differ diff --git a/docs/apple-touch-icon.png b/docs/apple-touch-icon.png deleted file mode 100644 index 8be7e32..0000000 Binary files a/docs/apple-touch-icon.png and /dev/null differ diff --git a/docs/articles/binary-data.html b/docs/articles/binary-data.html deleted file mode 100644 index 0bbf075..0000000 --- a/docs/articles/binary-data.html +++ /dev/null @@ -1,178 +0,0 @@ - - - - - - - -Applicability domain methods for binary data • applicable - - - - - - - - - - - - - - - - - - -
-
- - - - -
-
- - - - -
-

-Introduction

-
library(applicable)
-

Similarity statistics can be used to compare data sets where all of the predictors are binary. One of the most common measures is the Jaccard index.

-

For a training set of size n, there are n similarity statistics for each new sample. These can be summarized via the mean statistic or a quantile. In general, we want similarity to be low within the training set (i.e., a diverse training set) and high for new samples to be predicted.

-

To analyze the Jaccard metric, applicable provides the following methods:

-
    -
  • apd_similarity: analyzes samples in terms of similarity scores. For a training set of n samples, a new sample is compared to each, resulting in n similarity scores. These can be summarized into the median similarity.

  • -
  • autoplot: shows the cumulative probability versus the unique similarity values in the training set.

  • -
  • score: scores new samples using similarity methods. In particular, it calculates the similarity scores and if add_percentile = TRUE, it also estimates the percentile of the similarity scores.

  • -
-
-
-

-Example

-

The example data is from two QSAR data sets where binary fingerprints are used as predictors.

-
data(qsar_binary)
-

Let us construct the model:

-
jacc_sim <- apd_similarity(binary_tr)
-jacc_sim
-#> Applicability domain via similarity
-#> Reference data were 67 variables collected on 4330 data points.
-#> New data summarized using the mean.
-

As we can see below, this is a fairly diverse training set:

-
library(ggplot2)
-
-# Plot the empirical cumulative distribution function for the training set
-autoplot(jacc_sim)
-

-

We can compare the similarity between new samples and the training set:

-
# Summarize across all training set similarities
-mean_sim <- score(jacc_sim, new_data = binary_unk)
-mean_sim
-#> # A tibble: 5 x 2
-#>   similarity similarity_pctl
-#>        <dbl>           <dbl>
-#> 1     0.376            49.8 
-#> 2     0.284            13.5 
-#> 3     0.218             6.46
-#> 4     0.452           100   
-#> 5     0.0971            5.59
-

Samples 3 and 5 are definitely extrapolations based on these predictors. In other words, the new samples are not similar to the training set and so predictions on them may not be very reliable.

-
-
- - - -
- - - -
-

applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

-
- -
-

- Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

-
- -
-
- - - - - - diff --git a/docs/articles/binary-data_files/figure-html/jac-plot-1.png b/docs/articles/binary-data_files/figure-html/jac-plot-1.png deleted file mode 100644 index e40fe98..0000000 Binary files a/docs/articles/binary-data_files/figure-html/jac-plot-1.png and /dev/null differ diff --git a/docs/articles/binary-data_files/figure-html/unnamed-chunk-6-1.png b/docs/articles/binary-data_files/figure-html/unnamed-chunk-6-1.png deleted file mode 100644 index b898f65..0000000 --- a/docs/articles/binary-data_files/figure-html/unnamed-chunk-6-1.png +++ /dev/null @@ -1,373 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/articles/binary-data_files/header-attrs-2.1/header-attrs.js b/docs/articles/binary-data_files/header-attrs-2.1/header-attrs.js deleted file mode 100644 index dd57d92..0000000 --- a/docs/articles/binary-data_files/header-attrs-2.1/header-attrs.js +++ /dev/null @@ -1,12 +0,0 @@ -// Pandoc 2.9 adds attributes on both header and div. We remove the former (to -// be compatible with the behavior of Pandoc < 2.8). -document.addEventListener('DOMContentLoaded', function(e) { - var hs = document.querySelectorAll("div.section[class*='level'] > :first-child"); - var i, h, a; - for (i = 0; i < hs.length; i++) { - h = hs[i]; - if (!/^h[1-6]$/i.test(h.tagName)) continue; // it should be a header h1-h6 - a = h.attributes; - while (a.length > 0) h.removeAttribute(a[0].name); - } -}); diff --git a/docs/articles/continuous-data.html b/docs/articles/continuous-data.html deleted file mode 100644 index be3f33a..0000000 --- a/docs/articles/continuous-data.html +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - -Applicability domain methods for continuous data • applicable - - - - - - - - - - - - - - - - - - -
-
- - - - -
-
- - - - -
-

-Introduction

-
library(applicable)
-

applicable provides the following methods to analyze the applicability domain of your model:

-
    -
  • Principal component analysis
  • -
  • Hat values statistics
  • -
-
-
-

-Example

-

We will use the Ames IA housing data for our example.

-
library(AmesHousing)
-ames <- make_ames()
-

There are 2,930 properties in the data.

-

The Sale Price was recorded along with 81 predictors, including:

-
    -
  • Location (e.g. neighborhood) and lot information.
  • -
  • House components (garage, fireplace, pool, porch, etc.).
  • -
  • General assessments such as overall quality and condition.
  • -
  • Number of bedrooms, baths, and so on.
  • -
-

More details can be found in De Cock (2011, Journal of Statistics Education).

-

The raw data are at http://bit.ly/2whgsQM but we will use a processed version found in the AmesHousing package. applicable also contains an update for these data for three new properties (although fewer fields were collected on these).

-

To pre-process the training set, we will use the recipes package. We first tell the recipes that there is an additional value for the neighborhood in these data, then direct it to create dummy variables for all categorical predictors. In cases where there are no levels observed for a factor, we eliminate predictors with a single unique value, then estimate a transformation that will make the predictor distributions more symmetric. After these, the data are centered and scaled. These same transformations will be applied to the new data points using the statistics estimated from the training set.

-
library(recipes)
-#> Warning: package 'recipes' was built under R version 3.6.2
-library(dplyr)
-
-ames_cols <- names(ames_new)
-
-training_data <-
-  ames %>%
-  # For consistency, only analyze the data on new properties
-  dplyr::select(one_of(ames_cols)) %>%
-  mutate(
-    # There is a new neighborhood in ames_new
-    Neighborhood = as.character(Neighborhood),
-    Neighborhood = factor(Neighborhood, levels = levels(ames_new$Neighborhood))
-  )
-
-
-training_recipe <-
-  recipe( ~ ., data = training_data) %>%
-  step_dummy(all_nominal()) %>%
-  # Remove variables that have the same value for every data point.
-  step_zv(all_predictors()) %>%
-  # Transform variables to be distributed as Gaussian-like as possible.
-  step_YeoJohnson(all_numeric()) %>%
-  # Normalize numeric data to have a mean of zero and
-  # standard deviation of one.
-  step_normalize(all_numeric())
-
-

-Principal Component Analysis

-

The following functions in applicable are used for principal component analysis:

-
    -
  • -apd_pca: computes the principal components that account for up to either 95% or the provided threshold of variability. It also computes the percentiles of the principal components and the mean of each principal component.
  • -
  • -autoplot: plots the distribution function for pcas. You can also provide an optional set of dplyr selectors, such as dplyr::matches() or dplyr::starts_with(), for selecting which variables should be shown in the plot.
  • -
  • -score: calculates the principal components of the new data and their percentiles as compared to the training data. The number of principal components computed depends on the threshold given at fit time. It also computes the multivariate distance between each principal component and its mean.
  • -
-

Let us apply apd_pca modeling function to our data:

-
ames_pca <- apd_pca(training_recipe, training_data)
-ames_pca
-#> # Predictors:
-#>    50
-#> # Principal Components:
-#>    118 components were needed
-#>    to capture at least 95% of the
-#>    total variation in the predictors.
-

Since no threshold was provided, the function computed the number of principal components that accounted for at most 95% of the total variance.

-

For illustration, setting threshold = 0.25 or 25%, we now need only 10 principal components:

-
ames_pca <- apd_pca(training_recipe, training_data, threshold = 0.25)
-ames_pca
-#> # Predictors:
-#>    50
-#> # Principal Components:
-#>    10 components were needed
-#>    to capture at least 25% of the
-#>    total variation in the predictors.
-

Plotting the distribution function for the PCA scores is also helpful:

-
-library(ggplot2)
-autoplot(ames_pca)
-

-

You can use regular expressions to plot a smaller subset of the pca statistics:

-

-

The score function compares the training data to new samples. Let’s go back to the case where we capture 95% of the variation in the predictors and score the new samples. Since we used the recipe interface, we can give the score function the original data:

-
ames_pca <- apd_pca(training_recipe, training_data)
-pca_score <- score(ames_pca, ames_new)
-pca_score %>% select(matches("PC00[1-3]"), contains("distance"))
-#> # A tibble: 3 x 8
-#>   PC001 PC002  PC003 PC001_pctl PC002_pctl PC003_pctl distance distance_pctl
-#>   <dbl> <dbl>  <dbl>      <dbl>      <dbl>      <dbl>    <dbl>         <dbl>
-#> 1 -4.86 0.870 -0.457       87.0       17.7       26.1     6.33          1.85
-#> 2 -2.85 0.913  0.360       51.7       19.0       21.0     7.64         17.9 
-#> 3 -4.63 0.572 -1.21        84.8       11.7       56.5     7.58         17.1
-

Notice how the samples, displayed in red, are fairly dissimilar to the training set in the first component:

-

-

What is driving the first component? We can look at which predictors have the largest values in the rotation matrix (i.e. the values that define the linear combinations in the PC scores). The top five are:

-
# `ames_pca$pcs` is the output of `prcomp()`
-comp_one <- ames_pca$pcs$rotation[, 1]
-comp_one[order(abs(comp_one), decreasing = TRUE)] %>% head(5)
-#>       Year_Built      Garage_Cars Foundation_PConc   Year_Remod_Add      Garage_Area 
-#>       -0.2537606       -0.2176448       -0.2100323       -0.2050218       -0.2019180
-

These three houses are extreme in the most influential variable (year built) since they were new homes. The also tend to have fairly large garages:

-

-

This may be what is driving the first component.

-

However, the overall distance values are relatively small, which indicates that, overall, these new houses are not outside the mainstream of the data.

-
-
-

-Hat Values

-

The Hat or leverage values are based on the numerics of linear regression. The measure the distance of a data point to the center of the training set distribution. For example, if the numeric training set matrix was \(X_{n \times p}\), the hat matrix for the training set would be computed using

-

\[H = X'(X'X)^{-1}X\]

-

The corresponding hat values for the training would be the diagonals of \(H\). These values can be computed using stats::hatvalues(lm_model) but only for an lm model object. Also, it cannot compute the values for new samples.

-

Suppose that we had a new, unknown sample (as a \(p \times 1\) data vector \(u\)). The hat value for this sample would be

-

\[h = u^\intercal(X^\intercal X)^{-1}u\].

-

The following functions in applicable are used to compute the hat values of your model:

-
    -
  • -apd_hat_values: computes the matrix \((X^\intercal X)^{-1}\).
  • -
  • -score: calculates the hat values of new samples and their percentiles.
  • -
-

Two caveats for using the hat values:

-
    -
  1. The numerical methods are less tolerant than PCA. For example, extremely correlated predictors will degrade the ability of the hat values to be effectively used. Also, since an inverse is used, there cannot be an linear dependencies within \(X\). To resolve this the former example, the recipe step recipes::step_corr() can be used to reduce correlation. For the latter issue, recipes::step_lincomp() will identify and remove linear dependencies in the data (as shown below).

  2. -
  3. When using a linear or logistic model, the model adds an intercept columns of ones to \(X\). For equivalent computations, you should add a vector or ones to the data or use recipes::step_intercept().

  4. -
-

Let us apply apd_hat_values modeling function to our data (while ensuring that there are no linear dependencies):

-
non_singular_recipe <-
-  training_recipe %>%
-  step_lincomb(all_predictors())
-
-# Recipe interface
-ames_hat <- apd_hat_values(non_singular_recipe, training_data)
-
-
-
- - - -
- - - -
-

applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

-
- -
-

- Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

-
- -
-
- - - - - - diff --git a/docs/articles/continuous-data_files/figure-html/autoplot-1.png b/docs/articles/continuous-data_files/figure-html/autoplot-1.png deleted file mode 100644 index d2ea324..0000000 Binary files a/docs/articles/continuous-data_files/figure-html/autoplot-1.png and /dev/null differ diff --git a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-5-1.png b/docs/articles/continuous-data_files/figure-html/unnamed-chunk-5-1.png deleted file mode 100644 index 23378d3..0000000 Binary files a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-5-1.png and /dev/null differ diff --git a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-5-2.png b/docs/articles/continuous-data_files/figure-html/unnamed-chunk-5-2.png deleted file mode 100644 index 0503716..0000000 Binary files a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-5-2.png and /dev/null differ diff --git a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-6-1.png b/docs/articles/continuous-data_files/figure-html/unnamed-chunk-6-1.png deleted file mode 100644 index cbc4f3e..0000000 Binary files a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-6-1.png and /dev/null differ diff --git a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-6-2.png b/docs/articles/continuous-data_files/figure-html/unnamed-chunk-6-2.png deleted file mode 100644 index 0503716..0000000 Binary files a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-6-2.png and /dev/null differ diff --git a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-7-1.png b/docs/articles/continuous-data_files/figure-html/unnamed-chunk-7-1.png deleted file mode 100644 index cbc4f3e..0000000 Binary files a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-7-1.png and /dev/null differ diff --git a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-8-1.png b/docs/articles/continuous-data_files/figure-html/unnamed-chunk-8-1.png deleted file mode 100644 index cee3a96..0000000 Binary files a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-8-1.png and /dev/null differ diff --git a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-9-1.png b/docs/articles/continuous-data_files/figure-html/unnamed-chunk-9-1.png deleted file mode 100644 index cee3a96..0000000 Binary files a/docs/articles/continuous-data_files/figure-html/unnamed-chunk-9-1.png and /dev/null differ diff --git a/docs/articles/continuous-data_files/header-attrs-2.1/header-attrs.js b/docs/articles/continuous-data_files/header-attrs-2.1/header-attrs.js deleted file mode 100644 index dd57d92..0000000 --- a/docs/articles/continuous-data_files/header-attrs-2.1/header-attrs.js +++ /dev/null @@ -1,12 +0,0 @@ -// Pandoc 2.9 adds attributes on both header and div. We remove the former (to -// be compatible with the behavior of Pandoc < 2.8). -document.addEventListener('DOMContentLoaded', function(e) { - var hs = document.querySelectorAll("div.section[class*='level'] > :first-child"); - var i, h, a; - for (i = 0; i < hs.length; i++) { - h = hs[i]; - if (!/^h[1-6]$/i.test(h.tagName)) continue; // it should be a header h1-h6 - a = h.attributes; - while (a.length > 0) h.removeAttribute(a[0].name); - } -}); diff --git a/docs/articles/index.html b/docs/articles/index.html deleted file mode 100644 index dbebf94..0000000 --- a/docs/articles/index.html +++ /dev/null @@ -1,169 +0,0 @@ - - - - - - - - -Articles • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - -
- - - - -
-
-

applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

-
- -
-

- Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

-
- -
-
- - - - - - - - diff --git a/docs/authors.html b/docs/authors.html deleted file mode 100644 index f9909a8..0000000 --- a/docs/authors.html +++ /dev/null @@ -1,175 +0,0 @@ - - - - - - - - -Authors • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - -
- -
-
- - -
    -
  • -

    Marly Gotti. Author, maintainer. -

    -
  • -
  • -

    Max Kuhn. Author. -

    -
  • -
  • -

    RStudio. Copyright holder. -

    -
  • -
- -
- -
- - - -
-
-

applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

-
- -
-

- Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

-
- -
-
- - - - - - - - diff --git a/docs/bootstrap-toc.css b/docs/bootstrap-toc.css deleted file mode 100644 index 5a85941..0000000 --- a/docs/bootstrap-toc.css +++ /dev/null @@ -1,60 +0,0 @@ -/*! - * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/) - * Copyright 2015 Aidan Feldman - * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */ - -/* modified from https://github.com/twbs/bootstrap/blob/94b4076dd2efba9af71f0b18d4ee4b163aa9e0dd/docs/assets/css/src/docs.css#L548-L601 */ - -/* All levels of nav */ -nav[data-toggle='toc'] .nav > li > a { - display: block; - padding: 4px 20px; - font-size: 13px; - font-weight: 500; - color: #767676; -} -nav[data-toggle='toc'] .nav > li > a:hover, -nav[data-toggle='toc'] .nav > li > a:focus { - padding-left: 19px; - color: #563d7c; - text-decoration: none; - background-color: transparent; - border-left: 1px solid #563d7c; -} -nav[data-toggle='toc'] .nav > .active > a, -nav[data-toggle='toc'] .nav > .active:hover > a, -nav[data-toggle='toc'] .nav > .active:focus > a { - padding-left: 18px; - font-weight: bold; - color: #563d7c; - background-color: transparent; - border-left: 2px solid #563d7c; -} - -/* Nav: second level (shown on .active) */ -nav[data-toggle='toc'] .nav .nav { - display: none; /* Hide by default, but at >768px, show it */ - padding-bottom: 10px; -} -nav[data-toggle='toc'] .nav .nav > li > a { - padding-top: 1px; - padding-bottom: 1px; - padding-left: 30px; - font-size: 12px; - font-weight: normal; -} -nav[data-toggle='toc'] .nav .nav > li > a:hover, -nav[data-toggle='toc'] .nav .nav > li > a:focus { - padding-left: 29px; -} -nav[data-toggle='toc'] .nav .nav > .active > a, -nav[data-toggle='toc'] .nav .nav > .active:hover > a, -nav[data-toggle='toc'] .nav .nav > .active:focus > a { - padding-left: 28px; - font-weight: 500; -} - -/* from https://github.com/twbs/bootstrap/blob/e38f066d8c203c3e032da0ff23cd2d6098ee2dd6/docs/assets/css/src/docs.css#L631-L634 */ -nav[data-toggle='toc'] .nav > .active > ul { - display: block; -} diff --git a/docs/bootstrap-toc.js b/docs/bootstrap-toc.js deleted file mode 100644 index 1cdd573..0000000 --- a/docs/bootstrap-toc.js +++ /dev/null @@ -1,159 +0,0 @@ -/*! - * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/) - * Copyright 2015 Aidan Feldman - * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */ -(function() { - 'use strict'; - - window.Toc = { - helpers: { - // return all matching elements in the set, or their descendants - findOrFilter: function($el, selector) { - // http://danielnouri.org/notes/2011/03/14/a-jquery-find-that-also-finds-the-root-element/ - // http://stackoverflow.com/a/12731439/358804 - var $descendants = $el.find(selector); - return $el.filter(selector).add($descendants).filter(':not([data-toc-skip])'); - }, - - generateUniqueIdBase: function(el) { - var text = $(el).text(); - var anchor = text.trim().toLowerCase().replace(/[^A-Za-z0-9]+/g, '-'); - return anchor || el.tagName.toLowerCase(); - }, - - generateUniqueId: function(el) { - var anchorBase = this.generateUniqueIdBase(el); - for (var i = 0; ; i++) { - var anchor = anchorBase; - if (i > 0) { - // add suffix - anchor += '-' + i; - } - // check if ID already exists - if (!document.getElementById(anchor)) { - return anchor; - } - } - }, - - generateAnchor: function(el) { - if (el.id) { - return el.id; - } else { - var anchor = this.generateUniqueId(el); - el.id = anchor; - return anchor; - } - }, - - createNavList: function() { - return $(''); - }, - - createChildNavList: function($parent) { - var $childList = this.createNavList(); - $parent.append($childList); - return $childList; - }, - - generateNavEl: function(anchor, text) { - var $a = $(''); - $a.attr('href', '#' + anchor); - $a.text(text); - var $li = $('
  • '); - $li.append($a); - return $li; - }, - - generateNavItem: function(headingEl) { - var anchor = this.generateAnchor(headingEl); - var $heading = $(headingEl); - var text = $heading.data('toc-text') || $heading.text(); - return this.generateNavEl(anchor, text); - }, - - // Find the first heading level (`

    `, then `

    `, etc.) that has more than one element. Defaults to 1 (for `

    `). - getTopLevel: function($scope) { - for (var i = 1; i <= 6; i++) { - var $headings = this.findOrFilter($scope, 'h' + i); - if ($headings.length > 1) { - return i; - } - } - - return 1; - }, - - // returns the elements for the top level, and the next below it - getHeadings: function($scope, topLevel) { - var topSelector = 'h' + topLevel; - - var secondaryLevel = topLevel + 1; - var secondarySelector = 'h' + secondaryLevel; - - return this.findOrFilter($scope, topSelector + ',' + secondarySelector); - }, - - getNavLevel: function(el) { - return parseInt(el.tagName.charAt(1), 10); - }, - - populateNav: function($topContext, topLevel, $headings) { - var $context = $topContext; - var $prevNav; - - var helpers = this; - $headings.each(function(i, el) { - var $newNav = helpers.generateNavItem(el); - var navLevel = helpers.getNavLevel(el); - - // determine the proper $context - if (navLevel === topLevel) { - // use top level - $context = $topContext; - } else if ($prevNav && $context === $topContext) { - // create a new level of the tree and switch to it - $context = helpers.createChildNavList($prevNav); - } // else use the current $context - - $context.append($newNav); - - $prevNav = $newNav; - }); - }, - - parseOps: function(arg) { - var opts; - if (arg.jquery) { - opts = { - $nav: arg - }; - } else { - opts = arg; - } - opts.$scope = opts.$scope || $(document.body); - return opts; - } - }, - - // accepts a jQuery object, or an options object - init: function(opts) { - opts = this.helpers.parseOps(opts); - - // ensure that the data attribute is in place for styling - opts.$nav.attr('data-toggle', 'toc'); - - var $topContext = this.helpers.createChildNavList(opts.$nav); - var topLevel = this.helpers.getTopLevel(opts.$scope); - var $headings = this.helpers.getHeadings(opts.$scope, topLevel); - this.helpers.populateNav($topContext, topLevel, $headings); - } - }; - - $(function() { - $('nav[data-toggle="toc"]').each(function(i, el) { - var $nav = $(el); - Toc.init($nav); - }); - }); -})(); diff --git a/docs/docsearch.css b/docs/docsearch.css deleted file mode 100644 index e5f1fe1..0000000 --- a/docs/docsearch.css +++ /dev/null @@ -1,148 +0,0 @@ -/* Docsearch -------------------------------------------------------------- */ -/* - Source: https://github.com/algolia/docsearch/ - License: MIT -*/ - -.algolia-autocomplete { - display: block; - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1 -} - -.algolia-autocomplete .ds-dropdown-menu { - width: 100%; - min-width: none; - max-width: none; - padding: .75rem 0; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, .1); - box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .175); -} - -@media (min-width:768px) { - .algolia-autocomplete .ds-dropdown-menu { - width: 175% - } -} - -.algolia-autocomplete .ds-dropdown-menu::before { - display: none -} - -.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-] { - padding: 0; - background-color: rgb(255,255,255); - border: 0; - max-height: 80vh; -} - -.algolia-autocomplete .ds-dropdown-menu .ds-suggestions { - margin-top: 0 -} - -.algolia-autocomplete .algolia-docsearch-suggestion { - padding: 0; - overflow: visible -} - -.algolia-autocomplete .algolia-docsearch-suggestion--category-header { - padding: .125rem 1rem; - margin-top: 0; - font-size: 1.3em; - font-weight: 500; - color: #00008B; - border-bottom: 0 -} - -.algolia-autocomplete .algolia-docsearch-suggestion--wrapper { - float: none; - padding-top: 0 -} - -.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column { - float: none; - width: auto; - padding: 0; - text-align: left -} - -.algolia-autocomplete .algolia-docsearch-suggestion--content { - float: none; - width: auto; - padding: 0 -} - -.algolia-autocomplete .algolia-docsearch-suggestion--content::before { - display: none -} - -.algolia-autocomplete .ds-suggestion:not(:first-child) .algolia-docsearch-suggestion--category-header { - padding-top: .75rem; - margin-top: .75rem; - border-top: 1px solid rgba(0, 0, 0, .1) -} - -.algolia-autocomplete .ds-suggestion .algolia-docsearch-suggestion--subcategory-column { - display: block; - padding: .1rem 1rem; - margin-bottom: 0.1; - font-size: 1.0em; - font-weight: 400 - /* display: none */ -} - -.algolia-autocomplete .algolia-docsearch-suggestion--title { - display: block; - padding: .25rem 1rem; - margin-bottom: 0; - font-size: 0.9em; - font-weight: 400 -} - -.algolia-autocomplete .algolia-docsearch-suggestion--text { - padding: 0 1rem .5rem; - margin-top: -.25rem; - font-size: 0.8em; - font-weight: 400; - line-height: 1.25 -} - -.algolia-autocomplete .algolia-docsearch-footer { - width: 110px; - height: 20px; - z-index: 3; - margin-top: 10.66667px; - float: right; - font-size: 0; - line-height: 0; -} - -.algolia-autocomplete .algolia-docsearch-footer--logo { - background-image: url("data:image/svg+xml;utf8,"); - background-repeat: no-repeat; - background-position: 50%; - background-size: 100%; - overflow: hidden; - text-indent: -9000px; - width: 100%; - height: 100%; - display: block; - transform: translate(-8px); -} - -.algolia-autocomplete .algolia-docsearch-suggestion--highlight { - color: #FF8C00; - background: rgba(232, 189, 54, 0.1) -} - - -.algolia-autocomplete .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight { - box-shadow: inset 0 -2px 0 0 rgba(105, 105, 105, .5) -} - -.algolia-autocomplete .ds-suggestion.ds-cursor .algolia-docsearch-suggestion--content { - background-color: rgba(192, 192, 192, .15) -} diff --git a/docs/docsearch.js b/docs/docsearch.js deleted file mode 100644 index b35504c..0000000 --- a/docs/docsearch.js +++ /dev/null @@ -1,85 +0,0 @@ -$(function() { - - // register a handler to move the focus to the search bar - // upon pressing shift + "/" (i.e. "?") - $(document).on('keydown', function(e) { - if (e.shiftKey && e.keyCode == 191) { - e.preventDefault(); - $("#search-input").focus(); - } - }); - - $(document).ready(function() { - // do keyword highlighting - /* modified from https://jsfiddle.net/julmot/bL6bb5oo/ */ - var mark = function() { - - var referrer = document.URL ; - var paramKey = "q" ; - - if (referrer.indexOf("?") !== -1) { - var qs = referrer.substr(referrer.indexOf('?') + 1); - var qs_noanchor = qs.split('#')[0]; - var qsa = qs_noanchor.split('&'); - var keyword = ""; - - for (var i = 0; i < qsa.length; i++) { - var currentParam = qsa[i].split('='); - - if (currentParam.length !== 2) { - continue; - } - - if (currentParam[0] == paramKey) { - keyword = decodeURIComponent(currentParam[1].replace(/\+/g, "%20")); - } - } - - if (keyword !== "") { - $(".contents").unmark({ - done: function() { - $(".contents").mark(keyword); - } - }); - } - } - }; - - mark(); - }); -}); - -/* Search term highlighting ------------------------------*/ - -function matchedWords(hit) { - var words = []; - - var hierarchy = hit._highlightResult.hierarchy; - // loop to fetch from lvl0, lvl1, etc. - for (var idx in hierarchy) { - words = words.concat(hierarchy[idx].matchedWords); - } - - var content = hit._highlightResult.content; - if (content) { - words = words.concat(content.matchedWords); - } - - // return unique words - var words_uniq = [...new Set(words)]; - return words_uniq; -} - -function updateHitURL(hit) { - - var words = matchedWords(hit); - var url = ""; - - if (hit.anchor) { - url = hit.url_without_anchor + '?q=' + escape(words.join(" ")) + '#' + hit.anchor; - } else { - url = hit.url + '?q=' + escape(words.join(" ")); - } - - return url; -} diff --git a/docs/favicon-16x16.png b/docs/favicon-16x16.png deleted file mode 100644 index b85f94d..0000000 Binary files a/docs/favicon-16x16.png and /dev/null differ diff --git a/docs/favicon-32x32.png b/docs/favicon-32x32.png deleted file mode 100644 index bcb6976..0000000 Binary files a/docs/favicon-32x32.png and /dev/null differ diff --git a/docs/favicon.ico b/docs/favicon.ico deleted file mode 100644 index 56024c5..0000000 Binary files a/docs/favicon.ico and /dev/null differ diff --git a/docs/index.html b/docs/index.html deleted file mode 100644 index f125ff1..0000000 --- a/docs/index.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - - -A Compilation of Applicability Domain Methods • applicable - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    -
    -
    - - - -
    -

    -Introduction

    -

    There are times when a model’s prediction should be taken with some skepticism. For example, if a new data point is substantially different from the training set, its predicted value may be suspect. In chemistry, it is not uncommon to create an “applicability domain” model that measures the amount of potential extrapolation new samples have from the training set. applicable contains different methods to measure how much a new data point is an extrapolation from the original data (if at all).

    -
    -
    -

    -Installation

    -

    You can install the development version of applicable from GitHub with:

    -
    # install.packages("devtools")
    -devtools::install_github("tidymodels/applicable")
    -
    -
    -

    -Vignettes

    -

    To learn about how to use applicable, check out the vignettes:

    - -
    -
    -
    - - -
    - - -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - diff --git a/docs/link.svg b/docs/link.svg deleted file mode 100644 index 88ad827..0000000 --- a/docs/link.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - diff --git a/docs/logo.png b/docs/logo.png deleted file mode 100644 index d754ea4..0000000 Binary files a/docs/logo.png and /dev/null differ diff --git a/docs/pkgdown.css b/docs/pkgdown.css deleted file mode 100644 index c01e592..0000000 --- a/docs/pkgdown.css +++ /dev/null @@ -1,367 +0,0 @@ -/* Sticky footer */ - -/** - * Basic idea: https://philipwalton.github.io/solved-by-flexbox/demos/sticky-footer/ - * Details: https://github.com/philipwalton/solved-by-flexbox/blob/master/assets/css/components/site.css - * - * .Site -> body > .container - * .Site-content -> body > .container .row - * .footer -> footer - * - * Key idea seems to be to ensure that .container and __all its parents__ - * have height set to 100% - * - */ - -html, body { - height: 100%; -} - -body { - position: relative; -} - -body > .container { - display: flex; - height: 100%; - flex-direction: column; -} - -body > .container .row { - flex: 1 0 auto; -} - -footer { - margin-top: 45px; - padding: 35px 0 36px; - border-top: 1px solid #e5e5e5; - color: #666; - display: flex; - flex-shrink: 0; -} -footer p { - margin-bottom: 0; -} -footer div { - flex: 1; -} -footer .pkgdown { - text-align: right; -} -footer p { - margin-bottom: 0; -} - -img.icon { - float: right; -} - -img { - max-width: 100%; -} - -/* Fix bug in bootstrap (only seen in firefox) */ -summary { - display: list-item; -} - -/* Typographic tweaking ---------------------------------*/ - -.contents .page-header { - margin-top: calc(-60px + 1em); -} - -dd { - margin-left: 3em; -} - -/* Section anchors ---------------------------------*/ - -a.anchor { - margin-left: -30px; - display:inline-block; - width: 30px; - height: 30px; - visibility: hidden; - - background-image: url(./link.svg); - background-repeat: no-repeat; - background-size: 20px 20px; - background-position: center center; -} - -.hasAnchor:hover a.anchor { - visibility: visible; -} - -@media (max-width: 767px) { - .hasAnchor:hover a.anchor { - visibility: hidden; - } -} - - -/* Fixes for fixed navbar --------------------------*/ - -.contents h1, .contents h2, .contents h3, .contents h4 { - padding-top: 60px; - margin-top: -40px; -} - -/* Navbar submenu --------------------------*/ - -.dropdown-submenu { - position: relative; -} - -.dropdown-submenu>.dropdown-menu { - top: 0; - left: 100%; - margin-top: -6px; - margin-left: -1px; - border-radius: 0 6px 6px 6px; -} - -.dropdown-submenu:hover>.dropdown-menu { - display: block; -} - -.dropdown-submenu>a:after { - display: block; - content: " "; - float: right; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; - border-width: 5px 0 5px 5px; - border-left-color: #cccccc; - margin-top: 5px; - margin-right: -10px; -} - -.dropdown-submenu:hover>a:after { - border-left-color: #ffffff; -} - -.dropdown-submenu.pull-left { - float: none; -} - -.dropdown-submenu.pull-left>.dropdown-menu { - left: -100%; - margin-left: 10px; - border-radius: 6px 0 6px 6px; -} - -/* Sidebar --------------------------*/ - -#pkgdown-sidebar { - margin-top: 30px; - position: -webkit-sticky; - position: sticky; - top: 70px; -} - -#pkgdown-sidebar h2 { - font-size: 1.5em; - margin-top: 1em; -} - -#pkgdown-sidebar h2:first-child { - margin-top: 0; -} - -#pkgdown-sidebar .list-unstyled li { - margin-bottom: 0.5em; -} - -/* bootstrap-toc tweaks ------------------------------------------------------*/ - -/* All levels of nav */ - -nav[data-toggle='toc'] .nav > li > a { - padding: 4px 20px 4px 6px; - font-size: 1.5rem; - font-weight: 400; - color: inherit; -} - -nav[data-toggle='toc'] .nav > li > a:hover, -nav[data-toggle='toc'] .nav > li > a:focus { - padding-left: 5px; - color: inherit; - border-left: 1px solid #878787; -} - -nav[data-toggle='toc'] .nav > .active > a, -nav[data-toggle='toc'] .nav > .active:hover > a, -nav[data-toggle='toc'] .nav > .active:focus > a { - padding-left: 5px; - font-size: 1.5rem; - font-weight: 400; - color: inherit; - border-left: 2px solid #878787; -} - -/* Nav: second level (shown on .active) */ - -nav[data-toggle='toc'] .nav .nav { - display: none; /* Hide by default, but at >768px, show it */ - padding-bottom: 10px; -} - -nav[data-toggle='toc'] .nav .nav > li > a { - padding-left: 16px; - font-size: 1.35rem; -} - -nav[data-toggle='toc'] .nav .nav > li > a:hover, -nav[data-toggle='toc'] .nav .nav > li > a:focus { - padding-left: 15px; -} - -nav[data-toggle='toc'] .nav .nav > .active > a, -nav[data-toggle='toc'] .nav .nav > .active:hover > a, -nav[data-toggle='toc'] .nav .nav > .active:focus > a { - padding-left: 15px; - font-weight: 500; - font-size: 1.35rem; -} - -/* orcid ------------------------------------------------------------------- */ - -.orcid { - font-size: 16px; - color: #A6CE39; - /* margins are required by official ORCID trademark and display guidelines */ - margin-left:4px; - margin-right:4px; - vertical-align: middle; -} - -/* Reference index & topics ----------------------------------------------- */ - -.ref-index th {font-weight: normal;} - -.ref-index td {vertical-align: top;} -.ref-index .icon {width: 40px;} -.ref-index .alias {width: 40%;} -.ref-index-icons .alias {width: calc(40% - 40px);} -.ref-index .title {width: 60%;} - -.ref-arguments th {text-align: right; padding-right: 10px;} -.ref-arguments th, .ref-arguments td {vertical-align: top;} -.ref-arguments .name {width: 20%;} -.ref-arguments .desc {width: 80%;} - -/* Nice scrolling for wide elements --------------------------------------- */ - -table { - display: block; - overflow: auto; -} - -/* Syntax highlighting ---------------------------------------------------- */ - -pre { - word-wrap: normal; - word-break: normal; - border: 1px solid #eee; -} - -pre, code { - background-color: #f8f8f8; - color: #333; -} - -pre code { - overflow: auto; - word-wrap: normal; - white-space: pre; -} - -pre .img { - margin: 5px 0; -} - -pre .img img { - background-color: #fff; - display: block; - height: auto; -} - -code a, pre a { - color: #375f84; -} - -a.sourceLine:hover { - text-decoration: none; -} - -.fl {color: #1514b5;} -.fu {color: #000000;} /* function */ -.ch,.st {color: #036a07;} /* string */ -.kw {color: #264D66;} /* keyword */ -.co {color: #888888;} /* comment */ - -.message { color: black; font-weight: bolder;} -.error { color: orange; font-weight: bolder;} -.warning { color: #6A0366; font-weight: bolder;} - -/* Clipboard --------------------------*/ - -.hasCopyButton { - position: relative; -} - -.btn-copy-ex { - position: absolute; - right: 0; - top: 0; - visibility: hidden; -} - -.hasCopyButton:hover button.btn-copy-ex { - visibility: visible; -} - -/* headroom.js ------------------------ */ - -.headroom { - will-change: transform; - transition: transform 200ms linear; -} -.headroom--pinned { - transform: translateY(0%); -} -.headroom--unpinned { - transform: translateY(-100%); -} - -/* mark.js ----------------------------*/ - -mark { - background-color: rgba(255, 255, 51, 0.5); - border-bottom: 2px solid rgba(255, 153, 51, 0.3); - padding: 1px; -} - -/* vertical spacing after htmlwidgets */ -.html-widget { - margin-bottom: 10px; -} - -/* fontawesome ------------------------ */ - -.fab { - font-family: "Font Awesome 5 Brands" !important; -} - -/* don't display links in code chunks when printing */ -/* source: https://stackoverflow.com/a/10781533 */ -@media print { - code a:link:after, code a:visited:after { - content: ""; - } -} diff --git a/docs/pkgdown.js b/docs/pkgdown.js deleted file mode 100644 index 7e7048f..0000000 --- a/docs/pkgdown.js +++ /dev/null @@ -1,108 +0,0 @@ -/* http://gregfranko.com/blog/jquery-best-practices/ */ -(function($) { - $(function() { - - $('.navbar-fixed-top').headroom(); - - $('body').css('padding-top', $('.navbar').height() + 10); - $(window).resize(function(){ - $('body').css('padding-top', $('.navbar').height() + 10); - }); - - $('[data-toggle="tooltip"]').tooltip(); - - var cur_path = paths(location.pathname); - var links = $("#navbar ul li a"); - var max_length = -1; - var pos = -1; - for (var i = 0; i < links.length; i++) { - if (links[i].getAttribute("href") === "#") - continue; - // Ignore external links - if (links[i].host !== location.host) - continue; - - var nav_path = paths(links[i].pathname); - - var length = prefix_length(nav_path, cur_path); - if (length > max_length) { - max_length = length; - pos = i; - } - } - - // Add class to parent
  • , and enclosing
  • if in dropdown - if (pos >= 0) { - var menu_anchor = $(links[pos]); - menu_anchor.parent().addClass("active"); - menu_anchor.closest("li.dropdown").addClass("active"); - } - }); - - function paths(pathname) { - var pieces = pathname.split("/"); - pieces.shift(); // always starts with / - - var end = pieces[pieces.length - 1]; - if (end === "index.html" || end === "") - pieces.pop(); - return(pieces); - } - - // Returns -1 if not found - function prefix_length(needle, haystack) { - if (needle.length > haystack.length) - return(-1); - - // Special case for length-0 haystack, since for loop won't run - if (haystack.length === 0) { - return(needle.length === 0 ? 0 : -1); - } - - for (var i = 0; i < haystack.length; i++) { - if (needle[i] != haystack[i]) - return(i); - } - - return(haystack.length); - } - - /* Clipboard --------------------------*/ - - function changeTooltipMessage(element, msg) { - var tooltipOriginalTitle=element.getAttribute('data-original-title'); - element.setAttribute('data-original-title', msg); - $(element).tooltip('show'); - element.setAttribute('data-original-title', tooltipOriginalTitle); - } - - if(ClipboardJS.isSupported()) { - $(document).ready(function() { - var copyButton = ""; - - $(".examples, div.sourceCode").addClass("hasCopyButton"); - - // Insert copy buttons: - $(copyButton).prependTo(".hasCopyButton"); - - // Initialize tooltips: - $('.btn-copy-ex').tooltip({container: 'body'}); - - // Initialize clipboard: - var clipboardBtnCopies = new ClipboardJS('[data-clipboard-copy]', { - text: function(trigger) { - return trigger.parentNode.textContent; - } - }); - - clipboardBtnCopies.on('success', function(e) { - changeTooltipMessage(e.trigger, 'Copied!'); - e.clearSelection(); - }); - - clipboardBtnCopies.on('error', function() { - changeTooltipMessage(e.trigger,'Press Ctrl+C or Command+C to copy'); - }); - }); - } -})(window.jQuery || window.$) diff --git a/docs/pkgdown.yml b/docs/pkgdown.yml deleted file mode 100644 index 88de4c4..0000000 --- a/docs/pkgdown.yml +++ /dev/null @@ -1,11 +0,0 @@ -pandoc: 2.9.2.1 -pkgdown: 1.5.1 -pkgdown_sha: ~ -articles: - binary-data: binary-data.html - continuous-data: continuous-data.html -last_built: 2020-05-12T18:53Z -urls: - reference: https://applicable.tidymodels.org/reference - article: https://applicable.tidymodels.org/articles - diff --git a/docs/reference/ames_new.html b/docs/reference/ames_new.html deleted file mode 100644 index 2d63db8..0000000 --- a/docs/reference/ames_new.html +++ /dev/null @@ -1,194 +0,0 @@ - - - - - - - - -Recent Ames Iowa Houses — ames_new • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    More data related to the set described by De Cock (2011) where data where -data were recorded for 2,930 properties in Ames IA.

    -
    - - - -

    Source

    - -

    De Cock, D. (2011). "Ames, Iowa: Alternative to the Boston Housing -Data as an End of Semester Regression Project," Journal of Statistics -Education, Volume 19, Number 3.

    -

    https://www.cityofames.org/government/departments-divisions-a-h/city-assessor

    -

    https://ww2.amstat.org/publications/jse/v19n3/decock/DataDocumentation.txt

    -

    http://ww2.amstat.org/publications/jse/v19n3/decock.pdf

    -

    Value

    - - - -
    ames_new

    a tibble

    - -

    Details

    - -

    This data sets includes three more properties added since the original -reference. There are less fields in this data set; only those that could be -transcribed from the assessor's office were included.

    - -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/apd_hat_values.html b/docs/reference/apd_hat_values.html deleted file mode 100644 index 1ceac9e..0000000 --- a/docs/reference/apd_hat_values.html +++ /dev/null @@ -1,241 +0,0 @@ - - - - - - - - -Fit a <code>apd_hat_values</code> — apd_hat_values • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    apd_hat_values() fits a model.

    -
    - -
    apd_hat_values(x, ...)
    -
    -# S3 method for default
    -apd_hat_values(x, ...)
    -
    -# S3 method for data.frame
    -apd_hat_values(x, ...)
    -
    -# S3 method for matrix
    -apd_hat_values(x, ...)
    -
    -# S3 method for formula
    -apd_hat_values(formula, data, ...)
    -
    -# S3 method for recipe
    -apd_hat_values(x, data, ...)
    - -

    Arguments

    - - - - - - - - - - - - - - - - - - -
    x

    Depending on the context:

      -
    • A data frame of predictors.

    • -
    • A matrix of predictors.

    • -
    • A recipe specifying a set of preprocessing steps -created from recipes::recipe().

    • -
    ...

    Not currently used, but required for extensibility.

    formula

    A formula specifying the predictor terms on the right-hand -side. No outcome should be specified.

    data

    When a recipe or formula is used, data is specified as:

      -
    • A data frame containing the predictors.

    • -
    - -

    Value

    - -

    A apd_hat_values object.

    - -

    Examples

    -
    predictors <- mtcars[, -1] - -# Data frame interface -mod <- apd_hat_values(predictors) - -# Formula interface -mod2 <- apd_hat_values(mpg ~ ., mtcars) - -# Recipes interface -library(recipes)
    #> Warning: package ‘recipes’ was built under R version 3.6.2
    #> Loading required package: dplyr
    #> -#> Attaching package: ‘dplyr’
    #> The following objects are masked from ‘package:stats’: -#> -#> filter, lag
    #> The following objects are masked from ‘package:base’: -#> -#> intersect, setdiff, setequal, union
    #> -#> Attaching package: ‘recipes’
    #> The following object is masked from ‘package:stats’: -#> -#> step
    rec <- recipe(mpg ~ ., mtcars) -rec <- step_log(rec, disp) -mod3 <- apd_hat_values(rec, mtcars)
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/apd_pca.html b/docs/reference/apd_pca.html deleted file mode 100644 index 590c44b..0000000 --- a/docs/reference/apd_pca.html +++ /dev/null @@ -1,246 +0,0 @@ - - - - - - - - -Fit a <code>apd_pca</code> — apd_pca • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    apd_pca() fits a model.

    -
    - -
    apd_pca(x, ...)
    -
    -# S3 method for default
    -apd_pca(x, ...)
    -
    -# S3 method for data.frame
    -apd_pca(x, threshold = 0.95, ...)
    -
    -# S3 method for matrix
    -apd_pca(x, threshold = 0.95, ...)
    -
    -# S3 method for formula
    -apd_pca(formula, data, threshold = 0.95, ...)
    -
    -# S3 method for recipe
    -apd_pca(x, data, threshold = 0.95, ...)
    - -

    Arguments

    - - - - - - - - - - - - - - - - - - - - - - -
    x

    Depending on the context:

      -
    • A data frame of predictors.

    • -
    • A matrix of predictors.

    • -
    • A recipe specifying a set of preprocessing steps -created from recipes::recipe().

    • -
    ...

    Not currently used, but required for extensibility.

    threshold

    A number indicating the percentage of variance desired from -the principal components. It must be a number greater than 0 and less or -equal than 1.

    formula

    A formula specifying the predictor terms on the right-hand -side. No outcome should be specified.

    data

    When a recipe or formula is used, data is specified as:

      -
    • A data frame containing the predictors.

    • -
    - -

    Value

    - -

    A apd_pca object.

    -

    Details

    - -

    The function computes the principal components that account for -up to either 95% or the provided threshold of variability. It also -computes the percentiles of the absolute value of the principal components. -Additionally, it calculates the mean of each principal component.

    - -

    Examples

    -
    predictors <- mtcars[, -1] - -# Data frame interface -mod <- apd_pca(predictors) - -# Formula interface -mod2 <- apd_pca(mpg ~ ., mtcars) - -# Recipes interface -library(recipes) -rec <- recipe(mpg ~ ., mtcars) -rec <- step_log(rec, disp) -mod3 <- apd_pca(rec, mtcars)
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/apd_similarity-1.png b/docs/reference/apd_similarity-1.png deleted file mode 100644 index 7f06379..0000000 Binary files a/docs/reference/apd_similarity-1.png and /dev/null differ diff --git a/docs/reference/apd_similarity.html b/docs/reference/apd_similarity.html deleted file mode 100644 index 5ddd94f..0000000 --- a/docs/reference/apd_similarity.html +++ /dev/null @@ -1,290 +0,0 @@ - - - - - - - - -Applicability domain methods using binary similarity analysis — apd_similarity • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    apd_similarity() is used to analyze samples in terms of similarity scores -for binary data. All features in the data should be binary (i.e. zero or -one).

    -
    - -
    apd_similarity(x, ...)
    -
    -# S3 method for default
    -apd_similarity(x, quantile = NA_real_, ...)
    -
    -# S3 method for data.frame
    -apd_similarity(x, quantile = NA_real_, ...)
    -
    -# S3 method for matrix
    -apd_similarity(x, quantile = NA_real_, ...)
    -
    -# S3 method for formula
    -apd_similarity(formula, data, quantile = NA_real_, ...)
    -
    -# S3 method for recipe
    -apd_similarity(x, data, quantile = NA_real_, ...)
    - -

    Arguments

    - - - - - - - - - - - - - - - - - - - - - - -
    x

    Depending on the context:

      -
    • A data frame of binary predictors.

    • -
    • A matrix of binary predictors.

    • -
    • A recipe specifying a set of preprocessing steps -created from recipes::recipe().

    • -
    ...

    Options to pass to proxyC::simil(), such as method. If no -options are specified, method = "jaccard" is used.

    quantile

    A real number between 0 and 1 or NA for how the similarity -values for each sample versus the training set should be summarized. A value -of NA specifies that the mean similarity is computed. Otherwise, the -appropriate quantile is computed.

    formula

    A formula specifying the predictor terms on the right-hand -side. No outcome should be specified.

    data

    When a recipe or formula is used, data is specified as:

      -
    • A data frame containing the binary predictors. Any predictors with -no 1's will be removed (with a warning).

    • -
    - -

    Value

    - -

    A apd_similarity object.

    -

    Details

    - -

    The function computes measures of similarity for different samples -points. For example, suppose samples A and B both contain p binary -variables. First, a 2x2 table is constructed between A and B across -their elements. The table will contain p entries across the four cells -(see the example below). From this, different measures of likeness are -computed.

    -

    For a training set of n samples, a new sample is compared to each, -resulting in n similarity scores. These can be summarized into a single -value; the median similarity is used by default by the scoring function.

    -

    For this method, the computational methods are fairly taxing for large data -sets. The training set must be stored (albeit in a sparse matrix format) so -object sizes may become large.

    -

    By default, the computations are run in parallel using all possible -cores. To change this, call the setThreadOptions function in the -RcppParallel package.

    -

    References

    - -

    Leach, A. and Gillet V. (2007). An Introduction to -Chemoinformatics. Springer, New York

    - -

    Examples

    -
    # \donttest{ -data(qsar_binary) - -jacc_sim <- apd_similarity(binary_tr) -jacc_sim
    #> Applicability domain via similarity -#> Reference data were 67 variables collected on 4330 data points. -#> New data summarized using the mean.
    -# plot the empirical cumulative distribution function (ECDF) for the training set: -library(ggplot2) -autoplot(jacc_sim)
    -# Example calculations for two samples: -A <- as.matrix(binary_tr[1,]) -B <- as.matrix(binary_tr[2,]) -xtab <- table(A, B) -xtab
    #> B -#> A 0 1 -#> 0 62 0 -#> 1 1 4
    -# Jaccard statistic -xtab[2, 2] / (xtab[1, 2] + xtab[2, 1] + xtab[2, 2])
    #> [1] 0.8
    -# Hamman statistic -( ( xtab[1, 1] + xtab[2, 2] ) - ( xtab[1, 2] + xtab[2, 1] ) ) / sum(xtab)
    #> [1] 0.9701493
    -# Faith statistic -( xtab[1, 1] + xtab[2, 2]/2 ) / sum(xtab)
    #> [1] 0.9552239
    -# Summarize across all training set similarities -mean_sim <- score(jacc_sim, new_data = binary_unk) -mean_sim
    #> # A tibble: 5 x 2 -#> similarity similarity_pctl -#> <dbl> <dbl> -#> 1 0.376 49.8 -#> 2 0.284 13.5 -#> 3 0.218 6.46 -#> 4 0.452 100 -#> 5 0.0971 5.59
    # } -
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/applicable-package.html b/docs/reference/applicable-package.html deleted file mode 100644 index 9a6867c..0000000 --- a/docs/reference/applicable-package.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - -applicable: A Compilation of Applicability Domain Methods — applicable-package • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    logo

    -

    A modeling package compiling applicability domain methods in R. - It combines different methods to measure the amount of extrapolation new - samples can have from the training set. See Netzeva et al (2005) - <doi:10.1177/026119290503300209> for an overview of applicability domains.

    -
    - - - -

    See also

    - - - -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/autoplot.apd_pca-1.png b/docs/reference/autoplot.apd_pca-1.png deleted file mode 100644 index bfd0f7b..0000000 Binary files a/docs/reference/autoplot.apd_pca-1.png and /dev/null differ diff --git a/docs/reference/autoplot.apd_pca-2.png b/docs/reference/autoplot.apd_pca-2.png deleted file mode 100644 index 69fd239..0000000 Binary files a/docs/reference/autoplot.apd_pca-2.png and /dev/null differ diff --git a/docs/reference/autoplot.apd_pca-3.png b/docs/reference/autoplot.apd_pca-3.png deleted file mode 100644 index 6046215..0000000 Binary files a/docs/reference/autoplot.apd_pca-3.png and /dev/null differ diff --git a/docs/reference/autoplot.apd_pca.html b/docs/reference/autoplot.apd_pca.html deleted file mode 100644 index 7d52dfe..0000000 --- a/docs/reference/autoplot.apd_pca.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - - - -Plot the distribution function for pcas — autoplot.apd_pca • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    Plot the distribution function for pcas

    -
    - -
    # S3 method for apd_pca
    -autoplot(object, ...)
    - -

    Arguments

    - - - - - - - - - - -
    object

    An object produced by apd_pca.

    ...

    An optional set of dplyr selectors, such as dplyr::matches() or -dplyr::starts_with() for selecting which variables should be shown in the -plot.

    - -

    Value

    - -

    A ggplot object that shows the distribution function for each -principal component.

    - -

    Examples

    -
    library(ggplot2) -library(dplyr) -library(modeldata) -data(biomass) - -biomass_ad <- apd_pca(biomass[, 3:8]) - -autoplot(biomass_ad)
    # Using selectors in `...` -autoplot(biomass_ad, distance) + scale_x_log10()
    autoplot(biomass_ad, matches("PC[1-2]"))
    -
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/autoplot.apd_similarity.html b/docs/reference/autoplot.apd_similarity.html deleted file mode 100644 index b5068a5..0000000 --- a/docs/reference/autoplot.apd_similarity.html +++ /dev/null @@ -1,202 +0,0 @@ - - - - - - - - -Plot the cumulative distribution function for similarity metrics — autoplot.apd_similarity • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    Plot the cumulative distribution function for similarity metrics

    -
    - -
    # S3 method for apd_similarity
    -autoplot(object, ...)
    - -

    Arguments

    - - - - - - - - - - -
    object

    An object produced by apd_similarity.

    ...

    Not currently used.

    - -

    Value

    - -

    A ggplot object that shows the cumulative probability versus the -unique similarity values in the training set. Not that for large samples, -this is an approximation based on a random sample of 5,000 training set -points.

    - -

    Examples

    -
    set.seed(535) -tr_x <- matrix(sample(0:1, size = 20 * 50, prob = rep(.5, 2), - replace = TRUE), ncol = 20) -model <- apd_similarity(tr_x)
    #> Warning: The `x` argument of `as_tibble.matrix()` must have column names if `.name_repair` is omitted as of tibble 2.0.0. -#> Using compatibility `.name_repair`. -#> This warning is displayed once every 8 hours. -#> Call `lifecycle::last_warnings()` to see where this warning was generated.
    -
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/binary.html b/docs/reference/binary.html deleted file mode 100644 index 1eaa4a4..0000000 --- a/docs/reference/binary.html +++ /dev/null @@ -1,256 +0,0 @@ - - - - - - - - -Binary QSAR Data — binary • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    Binary QSAR Data

    -
    - - - -

    Value

    - - - -
    binary_tr,binary_ukn

    data frame frames with 67 columns

    - -

    Details

    - -

    These data are from two different sources on quantitative -structure-activity relationship (QSAR) modeling and contain 67 predictors -that are either 0 or 1. The training set contains 4,330 samples and there -are five unknown samples (both from the Mutagen data in the QSARdata -package).

    - -

    Examples

    -
    data(qsar_binary) -str(binary_tr)
    #> 'data.frame': 4330 obs. of 67 variables: -#> $ predictor01: num 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor02: num 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor03: num 1 1 1 1 1 1 1 1 1 1 ... -#> $ predictor04: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor05: num 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor06: num 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor07: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor08: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor09: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor10: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor11: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor12: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor13: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor14: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor15: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor16: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor17: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor18: int 0 0 0 1 0 0 0 0 0 0 ... -#> $ predictor19: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor20: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor21: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor22: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor23: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor24: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor25: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor26: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor27: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor28: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor29: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor30: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor31: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor32: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor33: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor34: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor35: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor36: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor37: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor38: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor39: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor40: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor41: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor42: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor43: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor44: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor45: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor46: num 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor47: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor48: num 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor49: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor50: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor51: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor52: int 1 1 1 0 1 0 1 1 0 0 ... -#> $ predictor53: int 0 0 1 0 1 0 0 0 0 0 ... -#> $ predictor54: int 0 0 1 0 1 0 1 1 0 0 ... -#> $ predictor55: int 0 0 1 0 0 0 0 0 0 0 ... -#> $ predictor56: int 0 0 1 0 1 0 1 0 0 0 ... -#> $ predictor57: int 0 0 1 0 1 0 0 0 0 0 ... -#> $ predictor58: int 0 0 1 0 1 0 1 0 0 0 ... -#> $ predictor59: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor60: int 0 0 1 0 1 0 1 0 0 0 ... -#> $ predictor61: int 0 0 1 0 1 0 0 0 0 0 ... -#> $ predictor62: int 1 0 1 0 1 0 0 1 0 0 ... -#> $ predictor63: int 0 0 0 0 0 0 0 0 0 0 ... -#> $ predictor64: int 1 1 1 0 1 0 1 1 0 0 ... -#> $ predictor65: int 0 0 1 0 1 0 0 0 0 0 ... -#> $ predictor66: int 1 1 1 0 1 0 1 1 0 0 ... -#> $ predictor67: int 0 0 1 0 1 0 0 1 0 0 ...
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/figures/logo.png b/docs/reference/figures/logo.png deleted file mode 100644 index d754ea4..0000000 Binary files a/docs/reference/figures/logo.png and /dev/null differ diff --git a/docs/reference/index.html b/docs/reference/index.html deleted file mode 100644 index cdac149..0000000 --- a/docs/reference/index.html +++ /dev/null @@ -1,277 +0,0 @@ - - - - - - - - -Function reference • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -

    All functions

    -

    -
    -

    ames_new

    -

    Recent Ames Iowa Houses

    -

    apd_hat_values()

    -

    Fit a apd_hat_values

    -

    apd_pca()

    -

    Fit a apd_pca

    -

    apd_similarity()

    -

    Applicability domain methods using binary similarity analysis

    -

    autoplot(<apd_pca>)

    -

    Plot the distribution function for pcas

    -

    autoplot(<apd_similarity>)

    -

    Plot the cumulative distribution function for similarity metrics

    -

    binary

    -

    Binary QSAR Data

    -

    okc_binary

    -

    OkCupid Binary Predictors

    -

    print(<apd_hat_values>)

    -

    Print number of predictors and principal components used.

    -

    print(<apd_pca>)

    -

    Print number of predictors and principal components used.

    -

    print(<apd_similarity>)

    -

    Print number of predictors and principal components used.

    -

    score()

    -

    A scoring function

    -

    score(<apd_hat_values>)

    -

    Score new samples using hat values

    -

    score(<apd_pca>)

    -

    Predict from a apd_pca

    -

    score(<apd_similarity>)

    -

    Score new samples using similarity methods

    -
    - - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/okc_binary.html b/docs/reference/okc_binary.html deleted file mode 100644 index 1cf88d5..0000000 --- a/docs/reference/okc_binary.html +++ /dev/null @@ -1,252 +0,0 @@ - - - - - - - - -OkCupid Binary Predictors — okc_binary • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    OkCupid Binary Predictors

    -
    - - - -

    Source

    - -

    Kim (2015), "OkCupid Data for Introductory Statistics and Data Science Courses", Journal of Statistics Education, Volume 23, Number 2. http://www.amstat.org/publications/jse/contents_2015.html

    -

    Kuhn and Johnson (2020), Feature Engineering and Selection, Chapman and Hall/CRC . https://bookdown.org/max/FES/ and https://github.com/topepo/FES

    -

    Value

    - - - -
    okc_binary_train,okc_binary_test

    data frame frames with 61 columns

    - -

    Details

    - -

    Data originally from Kim (2015) includes a training and test set -consistent with Kuhn and Johnson (2020). Predictors include ethnicity -indicators and a set of keywords derived from text essay data.

    - -

    Examples

    -
    data(okc_binary) -str(okc_binary_train)
    #> tibble [38,809 × 61] (S3: tbl_df/tbl/data.frame) -#> $ software : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ engineer : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ startup : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ tech : num [1:38809] 0 0 0 0 1 0 0 0 0 1 ... -#> $ computers : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ engineering : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ computer : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ internet : num [1:38809] 0 0 0 0 1 0 0 0 0 0 ... -#> $ technology : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ science : num [1:38809] 0 0 0 0 1 0 0 0 0 0 ... -#> $ programming : num [1:38809] 0 0 0 0 0 0 0 0 0 1 ... -#> $ technical : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ web : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ developer : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ im : num [1:38809] 1 0 1 0 1 1 0 1 1 0 ... -#> $ programmer : num [1:38809] 0 0 0 0 0 0 0 0 0 1 ... -#> $ scientist : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ code : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ stephenson : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ geek : num [1:38809] 0 0 0 0 0 0 0 0 0 1 ... -#> $ nerd : num [1:38809] 0 0 0 0 0 0 0 0 0 1 ... -#> $ lol : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ biotech : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ matrix : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ coding : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ geeky : num [1:38809] 0 0 0 0 0 0 0 0 0 1 ... -#> $ solving : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ problems : num [1:38809] 0 0 1 0 1 0 0 0 0 0 ... -#> $ data : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ fixing : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ teacher : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ student : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ silicon : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ law : num [1:38809] 0 0 0 0 0 0 0 1 0 0 ... -#> $ mechanical : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ electronic : num [1:38809] 0 0 0 0 0 0 0 0 0 1 ... -#> $ pratchett : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ wikipedia : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ neal : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ mobile : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ math : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ lab : num [1:38809] 0 0 0 0 0 0 0 0 0 1 ... -#> $ systems : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ electronics : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ futurama : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ alot : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ solve : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ websites : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ firefly : num [1:38809] 0 0 0 0 0 0 0 0 0 1 ... -#> $ valley : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ apps : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ lawyer : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ asian : num [1:38809] 1 0 0 0 0 0 0 0 0 0 ... -#> $ black : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ hispanic_latin : num [1:38809] 0 0 0 0 0 0 0 1 0 0 ... -#> $ indian : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ middle_eastern : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ native_american : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ other : num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ pacific_islander: num [1:38809] 0 0 0 0 0 0 0 0 0 0 ... -#> $ white : num [1:38809] 1 1 1 1 1 1 1 1 1 1 ...
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/print.apd_hat_values.html b/docs/reference/print.apd_hat_values.html deleted file mode 100644 index b7f1861..0000000 --- a/docs/reference/print.apd_hat_values.html +++ /dev/null @@ -1,196 +0,0 @@ - - - - - - - - -Print number of predictors and principal components used. — print.apd_hat_values • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    Print number of predictors and principal components used.

    -
    - -
    # S3 method for apd_hat_values
    -print(x, ...)
    - -

    Arguments

    - - - - - - - - - - -
    x

    A apd_hat_values object.

    ...

    Not currently used, but required for extensibility.

    - -

    Value

    - -

    None

    - -

    Examples

    -
    -model <- apd_hat_values(~ Sepal.Length + Sepal.Width, iris) -print(model)
    #> # Predictors: -#> 2
    -
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/print.apd_pca.html b/docs/reference/print.apd_pca.html deleted file mode 100644 index b5c76e6..0000000 --- a/docs/reference/print.apd_pca.html +++ /dev/null @@ -1,200 +0,0 @@ - - - - - - - - -Print number of predictors and principal components used. — print.apd_pca • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    Print number of predictors and principal components used.

    -
    - -
    # S3 method for apd_pca
    -print(x, ...)
    - -

    Arguments

    - - - - - - - - - - -
    x

    A apd_pca object.

    ...

    Not currently used, but required for extensibility.

    - -

    Value

    - -

    None

    - -

    Examples

    -
    -model <- apd_pca(~ Sepal.Length + Sepal.Width, iris) -print(model)
    #> # Predictors: -#> 2 -#> # Principal Components: -#> 2 components were needed -#> to capture at least 95% of the -#> total variation in the predictors.
    -
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/print.apd_similarity.html b/docs/reference/print.apd_similarity.html deleted file mode 100644 index 30932bf..0000000 --- a/docs/reference/print.apd_similarity.html +++ /dev/null @@ -1,200 +0,0 @@ - - - - - - - - -Print number of predictors and principal components used. — print.apd_similarity • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    Print number of predictors and principal components used.

    -
    - -
    # S3 method for apd_similarity
    -print(x, ...)
    - -

    Arguments

    - - - - - - - - - - -
    x

    A apd_similarity object.

    ...

    Not currently used, but required for extensibility.

    - -

    Value

    - -

    None

    - -

    Examples

    -
    -set.seed(535) -tr_x <- matrix(sample(0:1, size = 20 * 50, prob = rep(.5, 2), - replace = TRUE), ncol = 20) -model <- apd_similarity(tr_x) -print(model)
    #> Applicability domain via similarity -#> Reference data were 20 variables collected on 50 data points. -#> New data summarized using the mean.
    -
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/score.apd_hat_values.html b/docs/reference/score.apd_hat_values.html deleted file mode 100644 index e96da95..0000000 --- a/docs/reference/score.apd_hat_values.html +++ /dev/null @@ -1,230 +0,0 @@ - - - - - - - - -Score new samples using hat values — score.apd_hat_values • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    Score new samples using hat values

    -
    - -
    # S3 method for apd_hat_values
    -score(object, new_data, type = "numeric", ...)
    - -

    Arguments

    - - - - - - - - - - - - - - - - - - -
    object

    A apd_hat_values object.

    new_data

    A data frame or matrix of new predictors.

    type

    A single character. The type of predictions to generate. -Valid options are:

      -
    • "numeric" for a numeric value that summarizes the hat values for -each sample across the training set.

    • -
    ...

    Not used, but required for extensibility.

    - -

    Value

    - -

    A tibble of predictions. The number of rows in the tibble is guaranteed -to be the same as the number of rows in new_data. For type = "numeric", -the tibble contains two columns hat_values and hat_values_pctls. The -column hat_values_pctls is in percent units so that a value of 11.5 -indicates that, in the training set, 11.5 percent of the training set -samples had smaller values than the sample being scored.

    - -

    Examples

    -
    train_data <- mtcars[1:20,] -test_data <- mtcars[21:32,] - -hat_values_model <- apd_hat_values(train_data) - -hat_values_scoring <- score(hat_values_model, new_data = test_data) -hat_values_scoring
    #> # A tibble: 12 x 2 -#> hat_values hat_values_pctls -#> <dbl> <dbl> -#> 1 1.45 1 -#> 2 0.852 90.0 -#> 3 1.13 1 -#> 4 1.19 1 -#> 5 0.901 93.2 -#> 6 0.335 6.34 -#> 7 5.41 1 -#> 8 5.91 1 -#> 9 8.19 1 -#> 10 5.11 1 -#> 11 12.4 1 -#> 12 0.960 1
    -
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/score.apd_pca.html b/docs/reference/score.apd_pca.html deleted file mode 100644 index d0c6a93..0000000 --- a/docs/reference/score.apd_pca.html +++ /dev/null @@ -1,233 +0,0 @@ - - - - - - - - -Predict from a <code>apd_pca</code> — score.apd_pca • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    Predict from a apd_pca

    -
    - -
    # S3 method for apd_pca
    -score(object, new_data, type = "numeric", ...)
    - -

    Arguments

    - - - - - - - - - - - - - - - - - - -
    object

    A apd_pca object.

    new_data

    A data frame or matrix of new samples.

    type

    A single character. The type of predictions to generate. -Valid options are:

      -
    • "numeric" for numeric predictions.

    • -
    ...

    Not used, but required for extensibility.

    - -

    Value

    - -

    A tibble of predictions. The number of rows in the tibble is guaranteed -to be the same as the number of rows in new_data.

    -

    Details

    - -

    The function computes the principal components of the new data and -their percentiles as compared to the training data. The number of principal -components computed depends on the threshold given at fit time. It also -computes the multivariate distance between each principal component and its -mean.

    - -

    Examples

    -
    train <- mtcars[1:20,] -test <- mtcars[21:32, -1] - -# Fit -mod <- apd_pca(mpg ~ cyl + log(drat), train) - -# Predict, with preprocessing -score(mod, test)
    #> Warning: collapsing to unique 'x' values
    #> Warning: collapsing to unique 'x' values
    #> Warning: collapsing to unique 'x' values
    #> # A tibble: 12 x 6 -#> PC1 PC2 distance PC1_pctl PC2_pctl distance_pctl -#> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> -#> 1 -1.16 0.664 1.34 42.9 87.6 43.0 -#> 2 1.84 0.345 1.87 95.3 42.2 95.4 -#> 3 1.23 -0.259 1.26 47.3 36.7 36.8 -#> 4 0.461 -1.03 1.13 0 98.5 25.5 -#> 5 1.34 -0.157 1.35 52.5 27.4 44.7 -#> 6 -1.61 0.217 1.62 89.2 31.7 89.3 -#> 7 -1.98 -0.159 1.99 96.4 27.5 96.2 -#> 8 -1.25 0.579 1.37 48.0 82.0 59.1 -#> 9 -0.103 -1.60 1.60 0 1 87.3 -#> 10 -0.231 -0.0655 0.241 0 6.76 0 -#> 11 0.700 -0.793 1.06 22.4 96.0 24.4 -#> 12 -1.64 0.184 1.65 90.6 29.2 90.6
    -
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/score.apd_similarity.html b/docs/reference/score.apd_similarity.html deleted file mode 100644 index 5270b58..0000000 --- a/docs/reference/score.apd_similarity.html +++ /dev/null @@ -1,229 +0,0 @@ - - - - - - - - -Score new samples using similarity methods — score.apd_similarity • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    Score new samples using similarity methods

    -
    - -
    # S3 method for apd_similarity
    -score(object, new_data, type = "numeric", add_percentile = TRUE, ...)
    - -

    Arguments

    - - - - - - - - - - - - - - - - - - - - - - -
    object

    A apd_similarity object.

    new_data

    A data frame or matrix of new predictors.

    type

    A single character. The type of predictions to generate. -Valid options are:

      -
    • "numeric" for a numeric value that summarizes the similarity values for -each sample across the training set.

    • -
    add_percentile

    A single logical; should the percentile of the -similarity score relative to the training set values by computed?

    ...

    Not used, but required for extensibility.

    - -

    Value

    - -

    A tibble of predictions. The number of rows in the tibble is guaranteed -to be the same as the number of rows in new_data. For type = "numeric", -the tibble contains a column called "similarity". If add_percentile = TRUE, -an additional column called similarity_pctl will be added. These values are -in percent units so that a value of 11.5 indicates that, in the training set, -11.5 percent of the training set samples had smaller values than the sample -being scored.

    - -

    Examples

    -
    # \donttest{ -data(qsar_binary) - -jacc_sim <- apd_similarity(binary_tr) - -mean_sim <- score(jacc_sim, new_data = binary_unk) -mean_sim
    #> # A tibble: 5 x 2 -#> similarity similarity_pctl -#> <dbl> <dbl> -#> 1 0.376 49.8 -#> 2 0.284 13.5 -#> 3 0.218 6.46 -#> 4 0.452 100 -#> 5 0.0971 5.59
    # } -
    -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/reference/score.html b/docs/reference/score.html deleted file mode 100644 index 1157efd..0000000 --- a/docs/reference/score.html +++ /dev/null @@ -1,197 +0,0 @@ - - - - - - - - -A scoring function — score • applicable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - -
    - -
    -
    - - -
    -

    A scoring function

    -
    - -
    score(object, ...)
    -
    -# S3 method for default
    -score(object, ...)
    - -

    Arguments

    - - - - - - - - - - -
    object

    Depending on the context:

      -
    • A data frame of predictors.

    • -
    • A matrix of predictors.

    • -
    • A recipe specifying a set of preprocessing steps -created from recipes::recipe().

    • -
    ...

    Not currently used, but required for extensibility.

    - -

    Value

    - -

    A tibble of predictions.

    - -
    - -
    - - -
    -
    -

    applicable is a part of the tidymodels ecosystem, a collection of modeling packages designed with common APIs and a shared philosophy.

    -
    - -
    -

    - Developed by Marly Gotti, Max Kuhn. - Site built by pkgdown. -

    -
    - -
    -
    - - - - - - - - diff --git a/docs/sitemap.xml b/docs/sitemap.xml deleted file mode 100644 index cb2e9db..0000000 --- a/docs/sitemap.xml +++ /dev/null @@ -1,60 +0,0 @@ - - - - https://applicable.tidymodels.org/index.html - - - https://applicable.tidymodels.org/reference/ames_new.html - - - https://applicable.tidymodels.org/reference/apd_hat_values.html - - - https://applicable.tidymodels.org/reference/apd_pca.html - - - https://applicable.tidymodels.org/reference/apd_similarity.html - - - https://applicable.tidymodels.org/reference/applicable-package.html - - - https://applicable.tidymodels.org/reference/autoplot.apd_pca.html - - - https://applicable.tidymodels.org/reference/autoplot.apd_similarity.html - - - https://applicable.tidymodels.org/reference/binary.html - - - https://applicable.tidymodels.org/reference/okc_binary.html - - - https://applicable.tidymodels.org/reference/print.apd_hat_values.html - - - https://applicable.tidymodels.org/reference/print.apd_pca.html - - - https://applicable.tidymodels.org/reference/print.apd_similarity.html - - - https://applicable.tidymodels.org/reference/score.html - - - https://applicable.tidymodels.org/reference/score.apd_hat_values.html - - - https://applicable.tidymodels.org/reference/score.apd_pca.html - - - https://applicable.tidymodels.org/reference/score.apd_similarity.html - - - https://applicable.tidymodels.org/articles/binary-data.html - - - https://applicable.tidymodels.org/articles/continuous-data.html - - diff --git a/docs/tidyverse-2.css b/docs/tidyverse-2.css deleted file mode 100644 index 4eff999..0000000 --- a/docs/tidyverse-2.css +++ /dev/null @@ -1,127 +0,0 @@ -body {font-size: 16px;} -h1 {font-size: 40px;} -h2 {font-size: 30px;} -h3 {font-size: 23px;} - -.contents .page-header { - margin-top: 10px; -} - -/* reduce h3 margin for proper nesting under h2 */ -.contents h3 {margin-top: -60px} - -.ref-arguments th {vertical-align: top;} - -/* navbar ----------------------------------------------- */ - -.navbar .info { - float: left; - height: 50px; - width: 140px; - font-size: 80%; - position: relative; - margin-left: 5px; -} -.navbar .info .partof { - position: absolute; - top: 0; -} -.navbar .info .version { - position: absolute; - bottom: 0; -} -.navbar .info .version-danger { - font-weight: bold; - color: orange; -} - -.navbar-form { - margin-top: 3px; - margin-bottom: 0; -} - -.navbar-toggle { - margin-top: 8px; - margin-bottom: 5px; -} - -.navbar-nav li a { - padding-bottom: 10px; -} -.navbar-default .navbar-nav > .active > a, -.navbar-default .navbar-nav > .active > a:hover, -.navbar-default .navbar-nav > .active > a:focus { - background-color: #eee; - border-radius: 3px; -} - -/* footer ------------------------------------------------ */ - -footer { - margin-top: 45px; - padding: 35px 0 36px; - border-top: 1px solid #e5e5e5; - - display: flex; - color: #666; -} -footer p { - margin-bottom: 0; -} -footer .tidyverse { - flex: 1; - margin-right: 1em; -} -footer .author { - flex: 1; - text-align: right; - margin-left: 1em; -} - -/* sidebar ------------------------------------------------ */ - -#sidebar h2 { - font-size: 1.6em; - margin-top: 1em; - margin-bottom: 0.25em; -} - -#sidebar .list-unstyled li { - margin-bottom: 0.5em; - line-height: 1.4; -} - -#sidebar small { - color: #777; -} - -#sidebar .nav { - padding-left: 0px; - list-style-type: none; - color: #5a9ddb; -} - -#sidebar .nav > li { - padding: 10px 0 0px 20px; - display: list-item; - line-height: 20px; - background-image: url(./tocBullet.svg); - background-repeat: no-repeat; - background-size: 16px 280px; - background-position: left 0px; -} - -#sidebar .nav > li.active { - background-position: left -240px; -} - -#sidebar a { - padding: 0px; - color: #5a9ddb; - background-color: transparent; -} - -#sidebar a:hover { - background-color: transparent; - text-decoration: underline; -} diff --git a/docs/tidyverse.css b/docs/tidyverse.css deleted file mode 100644 index 0a23eba..0000000 --- a/docs/tidyverse.css +++ /dev/null @@ -1,6531 +0,0 @@ -@charset "UTF-8"; -/*! - * Bootstrap v3.3.7 (http://getbootstrap.com) - * Copyright 2011-2016 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ -@import url("https://fonts.googleapis.com/css?family=Source+Code+Pro:300,400,700|Source+Sans+Pro:300,400,700"); -html { - font-family: sans-serif; - -ms-text-size-adjust: 100%; - -webkit-text-size-adjust: 100%; } - -body { - margin: 0; } - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; } - -audio, -canvas, -progress, -video { - display: inline-block; - vertical-align: baseline; } - -audio:not([controls]) { - display: none; - height: 0; } - -[hidden], -template { - display: none; } - -a { - background-color: transparent; } - -a:active, -a:hover { - outline: 0; } - -abbr[title] { - border-bottom: 1px dotted; } - -b, -strong { - font-weight: bold; } - -dfn { - font-style: italic; } - -h1 { - font-size: 2em; - margin: 0.67em 0; } - -mark { - background: #ff0; - color: #000; } - -small { - font-size: 80%; } - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; } - -sup { - top: -0.5em; } - -sub { - bottom: -0.25em; } - -img { - border: 0; } - -svg:not(:root) { - overflow: hidden; } - -figure { - margin: 1em 40px; } - -hr { - box-sizing: content-box; - height: 0; } - -pre { - overflow: auto; } - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; } - -button, -input, -optgroup, -select, -textarea { - color: inherit; - font: inherit; - margin: 0; } - -button { - overflow: visible; } - -button, -select { - text-transform: none; } - -button, -html input[type="button"], -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; - cursor: pointer; } - -button[disabled], -html input[disabled] { - cursor: default; } - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; } - -input { - line-height: normal; } - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; - padding: 0; } - -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; } - -input[type="search"] { - -webkit-appearance: textfield; - box-sizing: content-box; } - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; } - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; } - -legend { - border: 0; - padding: 0; } - -textarea { - overflow: auto; } - -optgroup { - font-weight: bold; } - -table { - border-collapse: collapse; - border-spacing: 0; } - -td, -th { - padding: 0; } - -/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ -@media print { - *, - *:before, - *:after { - background: transparent !important; - color: #000 !important; - box-shadow: none !important; - text-shadow: none !important; } - a, - a:visited { - text-decoration: underline; } - a[href]:after { - content: " (" attr(href) ")"; } - abbr[title]:after { - content: " (" attr(title) ")"; } - a[href^="#"]:after, - a[href^="javascript:"]:after { - content: ""; } - pre, - blockquote { - border: 1px solid #999; - page-break-inside: avoid; } - thead { - display: table-header-group; } - tr, - img { - page-break-inside: avoid; } - img { - max-width: 100% !important; } - p, - h2, - h3 { - orphans: 3; - widows: 3; } - h2, - h3 { - page-break-after: avoid; } - .navbar { - display: none; } - .btn > .caret, - .dropup > .btn > .caret { - border-top-color: #000 !important; } - .label { - border: 1px solid #000; } - .table { - border-collapse: collapse !important; } - .table td, - .table th { - background-color: #fff !important; } - .table-bordered th, - .table-bordered td { - border: 1px solid #ddd !important; } } - -@font-face { - font-family: 'Glyphicons Halflings'; - src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot"); - src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); } - -.glyphicon { - position: relative; - top: 1px; - display: inline-block; - font-family: 'Glyphicons Halflings'; - font-style: normal; - font-weight: normal; - line-height: 1; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; } - -.glyphicon-asterisk:before { - content: "\002a"; } - -.glyphicon-plus:before { - content: "\002b"; } - -.glyphicon-euro:before, -.glyphicon-eur:before { - content: "\20ac"; } - -.glyphicon-minus:before { - content: "\2212"; } - -.glyphicon-cloud:before { - content: "\2601"; } - -.glyphicon-envelope:before { - content: "\2709"; } - -.glyphicon-pencil:before { - content: "\270f"; } - -.glyphicon-glass:before { - content: "\e001"; } - -.glyphicon-music:before { - content: "\e002"; } - -.glyphicon-search:before { - content: "\e003"; } - -.glyphicon-heart:before { - content: "\e005"; } - -.glyphicon-star:before { - content: "\e006"; } - -.glyphicon-star-empty:before { - content: "\e007"; } - -.glyphicon-user:before { - content: "\e008"; } - -.glyphicon-film:before { - content: "\e009"; } - -.glyphicon-th-large:before { - content: "\e010"; } - -.glyphicon-th:before { - content: "\e011"; } - -.glyphicon-th-list:before { - content: "\e012"; } - -.glyphicon-ok:before { - content: "\e013"; } - -.glyphicon-remove:before { - content: "\e014"; } - -.glyphicon-zoom-in:before { - content: "\e015"; } - -.glyphicon-zoom-out:before { - content: "\e016"; } - -.glyphicon-off:before { - content: "\e017"; } - -.glyphicon-signal:before { - content: "\e018"; } - -.glyphicon-cog:before { - content: "\e019"; } - -.glyphicon-trash:before { - content: "\e020"; } - -.glyphicon-home:before { - content: "\e021"; } - -.glyphicon-file:before { - content: "\e022"; } - -.glyphicon-time:before { - content: "\e023"; } - -.glyphicon-road:before { - content: "\e024"; } - -.glyphicon-download-alt:before { - content: "\e025"; } - -.glyphicon-download:before { - content: "\e026"; } - -.glyphicon-upload:before { - content: "\e027"; } - -.glyphicon-inbox:before { - content: "\e028"; } - -.glyphicon-play-circle:before { - content: "\e029"; } - -.glyphicon-repeat:before { - content: "\e030"; } - -.glyphicon-refresh:before { - content: "\e031"; } - -.glyphicon-list-alt:before { - content: "\e032"; } - -.glyphicon-lock:before { - content: "\e033"; } - -.glyphicon-flag:before { - content: "\e034"; } - -.glyphicon-headphones:before { - content: "\e035"; } - -.glyphicon-volume-off:before { - content: "\e036"; } - -.glyphicon-volume-down:before { - content: "\e037"; } - -.glyphicon-volume-up:before { - content: "\e038"; } - -.glyphicon-qrcode:before { - content: "\e039"; } - -.glyphicon-barcode:before { - content: "\e040"; } - -.glyphicon-tag:before { - content: "\e041"; } - -.glyphicon-tags:before { - content: "\e042"; } - -.glyphicon-book:before { - content: "\e043"; } - -.glyphicon-bookmark:before { - content: "\e044"; } - -.glyphicon-print:before { - content: "\e045"; } - -.glyphicon-camera:before { - content: "\e046"; } - -.glyphicon-font:before { - content: "\e047"; } - -.glyphicon-bold:before { - content: "\e048"; } - -.glyphicon-italic:before { - content: "\e049"; } - -.glyphicon-text-height:before { - content: "\e050"; } - -.glyphicon-text-width:before { - content: "\e051"; } - -.glyphicon-align-left:before { - content: "\e052"; } - -.glyphicon-align-center:before { - content: "\e053"; } - -.glyphicon-align-right:before { - content: "\e054"; } - -.glyphicon-align-justify:before { - content: "\e055"; } - -.glyphicon-list:before { - content: "\e056"; } - -.glyphicon-indent-left:before { - content: "\e057"; } - -.glyphicon-indent-right:before { - content: "\e058"; } - -.glyphicon-facetime-video:before { - content: "\e059"; } - -.glyphicon-picture:before { - content: "\e060"; } - -.glyphicon-map-marker:before { - content: "\e062"; } - -.glyphicon-adjust:before { - content: "\e063"; } - -.glyphicon-tint:before { - content: "\e064"; } - -.glyphicon-edit:before { - content: "\e065"; } - -.glyphicon-share:before { - content: "\e066"; } - -.glyphicon-check:before { - content: "\e067"; } - -.glyphicon-move:before { - content: "\e068"; } - -.glyphicon-step-backward:before { - content: "\e069"; } - -.glyphicon-fast-backward:before { - content: "\e070"; } - -.glyphicon-backward:before { - content: "\e071"; } - -.glyphicon-play:before { - content: "\e072"; } - -.glyphicon-pause:before { - content: "\e073"; } - -.glyphicon-stop:before { - content: "\e074"; } - -.glyphicon-forward:before { - content: "\e075"; } - -.glyphicon-fast-forward:before { - content: "\e076"; } - -.glyphicon-step-forward:before { - content: "\e077"; } - -.glyphicon-eject:before { - content: "\e078"; } - -.glyphicon-chevron-left:before { - content: "\e079"; } - -.glyphicon-chevron-right:before { - content: "\e080"; } - -.glyphicon-plus-sign:before { - content: "\e081"; } - -.glyphicon-minus-sign:before { - content: "\e082"; } - -.glyphicon-remove-sign:before { - content: "\e083"; } - -.glyphicon-ok-sign:before { - content: "\e084"; } - -.glyphicon-question-sign:before { - content: "\e085"; } - -.glyphicon-info-sign:before { - content: "\e086"; } - -.glyphicon-screenshot:before { - content: "\e087"; } - -.glyphicon-remove-circle:before { - content: "\e088"; } - -.glyphicon-ok-circle:before { - content: "\e089"; } - -.glyphicon-ban-circle:before { - content: "\e090"; } - -.glyphicon-arrow-left:before { - content: "\e091"; } - -.glyphicon-arrow-right:before { - content: "\e092"; } - -.glyphicon-arrow-up:before { - content: "\e093"; } - -.glyphicon-arrow-down:before { - content: "\e094"; } - -.glyphicon-share-alt:before { - content: "\e095"; } - -.glyphicon-resize-full:before { - content: "\e096"; } - -.glyphicon-resize-small:before { - content: "\e097"; } - -.glyphicon-exclamation-sign:before { - content: "\e101"; } - -.glyphicon-gift:before { - content: "\e102"; } - -.glyphicon-leaf:before { - content: "\e103"; } - -.glyphicon-fire:before { - content: "\e104"; } - -.glyphicon-eye-open:before { - content: "\e105"; } - -.glyphicon-eye-close:before { - content: "\e106"; } - -.glyphicon-warning-sign:before { - content: "\e107"; } - -.glyphicon-plane:before { - content: "\e108"; } - -.glyphicon-calendar:before { - content: "\e109"; } - -.glyphicon-random:before { - content: "\e110"; } - -.glyphicon-comment:before { - content: "\e111"; } - -.glyphicon-magnet:before { - content: "\e112"; } - -.glyphicon-chevron-up:before { - content: "\e113"; } - -.glyphicon-chevron-down:before { - content: "\e114"; } - -.glyphicon-retweet:before { - content: "\e115"; } - -.glyphicon-shopping-cart:before { - content: "\e116"; } - -.glyphicon-folder-close:before { - content: "\e117"; } - -.glyphicon-folder-open:before { - content: "\e118"; } - -.glyphicon-resize-vertical:before { - content: "\e119"; } - -.glyphicon-resize-horizontal:before { - content: "\e120"; } - -.glyphicon-hdd:before { - content: "\e121"; } - -.glyphicon-bullhorn:before { - content: "\e122"; } - -.glyphicon-bell:before { - content: "\e123"; } - -.glyphicon-certificate:before { - content: "\e124"; } - -.glyphicon-thumbs-up:before { - content: "\e125"; } - -.glyphicon-thumbs-down:before { - content: "\e126"; } - -.glyphicon-hand-right:before { - content: "\e127"; } - -.glyphicon-hand-left:before { - content: "\e128"; } - -.glyphicon-hand-up:before { - content: "\e129"; } - -.glyphicon-hand-down:before { - content: "\e130"; } - -.glyphicon-circle-arrow-right:before { - content: "\e131"; } - -.glyphicon-circle-arrow-left:before { - content: "\e132"; } - -.glyphicon-circle-arrow-up:before { - content: "\e133"; } - -.glyphicon-circle-arrow-down:before { - content: "\e134"; } - -.glyphicon-globe:before { - content: "\e135"; } - -.glyphicon-wrench:before { - content: "\e136"; } - -.glyphicon-tasks:before { - content: "\e137"; } - -.glyphicon-filter:before { - content: "\e138"; } - -.glyphicon-briefcase:before { - content: "\e139"; } - -.glyphicon-fullscreen:before { - content: "\e140"; } - -.glyphicon-dashboard:before { - content: "\e141"; } - -.glyphicon-paperclip:before { - content: "\e142"; } - -.glyphicon-heart-empty:before { - content: "\e143"; } - -.glyphicon-link:before { - content: "\e144"; } - -.glyphicon-phone:before { - content: "\e145"; } - -.glyphicon-pushpin:before { - content: "\e146"; } - -.glyphicon-usd:before { - content: "\e148"; } - -.glyphicon-gbp:before { - content: "\e149"; } - -.glyphicon-sort:before { - content: "\e150"; } - -.glyphicon-sort-by-alphabet:before { - content: "\e151"; } - -.glyphicon-sort-by-alphabet-alt:before { - content: "\e152"; } - -.glyphicon-sort-by-order:before { - content: "\e153"; } - -.glyphicon-sort-by-order-alt:before { - content: "\e154"; } - -.glyphicon-sort-by-attributes:before { - content: "\e155"; } - -.glyphicon-sort-by-attributes-alt:before { - content: "\e156"; } - -.glyphicon-unchecked:before { - content: "\e157"; } - -.glyphicon-expand:before { - content: "\e158"; } - -.glyphicon-collapse-down:before { - content: "\e159"; } - -.glyphicon-collapse-up:before { - content: "\e160"; } - -.glyphicon-log-in:before { - content: "\e161"; } - -.glyphicon-flash:before { - content: "\e162"; } - -.glyphicon-log-out:before { - content: "\e163"; } - -.glyphicon-new-window:before { - content: "\e164"; } - -.glyphicon-record:before { - content: "\e165"; } - -.glyphicon-save:before { - content: "\e166"; } - -.glyphicon-open:before { - content: "\e167"; } - -.glyphicon-saved:before { - content: "\e168"; } - -.glyphicon-import:before { - content: "\e169"; } - -.glyphicon-export:before { - content: "\e170"; } - -.glyphicon-send:before { - content: "\e171"; } - -.glyphicon-floppy-disk:before { - content: "\e172"; } - -.glyphicon-floppy-saved:before { - content: "\e173"; } - -.glyphicon-floppy-remove:before { - content: "\e174"; } - -.glyphicon-floppy-save:before { - content: "\e175"; } - -.glyphicon-floppy-open:before { - content: "\e176"; } - -.glyphicon-credit-card:before { - content: "\e177"; } - -.glyphicon-transfer:before { - content: "\e178"; } - -.glyphicon-cutlery:before { - content: "\e179"; } - -.glyphicon-header:before { - content: "\e180"; } - -.glyphicon-compressed:before { - content: "\e181"; } - -.glyphicon-earphone:before { - content: "\e182"; } - -.glyphicon-phone-alt:before { - content: "\e183"; } - -.glyphicon-tower:before { - content: "\e184"; } - -.glyphicon-stats:before { - content: "\e185"; } - -.glyphicon-sd-video:before { - content: "\e186"; } - -.glyphicon-hd-video:before { - content: "\e187"; } - -.glyphicon-subtitles:before { - content: "\e188"; } - -.glyphicon-sound-stereo:before { - content: "\e189"; } - -.glyphicon-sound-dolby:before { - content: "\e190"; } - -.glyphicon-sound-5-1:before { - content: "\e191"; } - -.glyphicon-sound-6-1:before { - content: "\e192"; } - -.glyphicon-sound-7-1:before { - content: "\e193"; } - -.glyphicon-copyright-mark:before { - content: "\e194"; } - -.glyphicon-registration-mark:before { - content: "\e195"; } - -.glyphicon-cloud-download:before { - content: "\e197"; } - -.glyphicon-cloud-upload:before { - content: "\e198"; } - -.glyphicon-tree-conifer:before { - content: "\e199"; } - -.glyphicon-tree-deciduous:before { - content: "\e200"; } - -.glyphicon-cd:before { - content: "\e201"; } - -.glyphicon-save-file:before { - content: "\e202"; } - -.glyphicon-open-file:before { - content: "\e203"; } - -.glyphicon-level-up:before { - content: "\e204"; } - -.glyphicon-copy:before { - content: "\e205"; } - -.glyphicon-paste:before { - content: "\e206"; } - -.glyphicon-alert:before { - content: "\e209"; } - -.glyphicon-equalizer:before { - content: "\e210"; } - -.glyphicon-king:before { - content: "\e211"; } - -.glyphicon-queen:before { - content: "\e212"; } - -.glyphicon-pawn:before { - content: "\e213"; } - -.glyphicon-bishop:before { - content: "\e214"; } - -.glyphicon-knight:before { - content: "\e215"; } - -.glyphicon-baby-formula:before { - content: "\e216"; } - -.glyphicon-tent:before { - content: "\26fa"; } - -.glyphicon-blackboard:before { - content: "\e218"; } - -.glyphicon-bed:before { - content: "\e219"; } - -.glyphicon-apple:before { - content: "\f8ff"; } - -.glyphicon-erase:before { - content: "\e221"; } - -.glyphicon-hourglass:before { - content: "\231b"; } - -.glyphicon-lamp:before { - content: "\e223"; } - -.glyphicon-duplicate:before { - content: "\e224"; } - -.glyphicon-piggy-bank:before { - content: "\e225"; } - -.glyphicon-scissors:before { - content: "\e226"; } - -.glyphicon-bitcoin:before { - content: "\e227"; } - -.glyphicon-btc:before { - content: "\e227"; } - -.glyphicon-xbt:before { - content: "\e227"; } - -.glyphicon-yen:before { - content: "\00a5"; } - -.glyphicon-jpy:before { - content: "\00a5"; } - -.glyphicon-ruble:before { - content: "\20bd"; } - -.glyphicon-rub:before { - content: "\20bd"; } - -.glyphicon-scale:before { - content: "\e230"; } - -.glyphicon-ice-lolly:before { - content: "\e231"; } - -.glyphicon-ice-lolly-tasted:before { - content: "\e232"; } - -.glyphicon-education:before { - content: "\e233"; } - -.glyphicon-option-horizontal:before { - content: "\e234"; } - -.glyphicon-option-vertical:before { - content: "\e235"; } - -.glyphicon-menu-hamburger:before { - content: "\e236"; } - -.glyphicon-modal-window:before { - content: "\e237"; } - -.glyphicon-oil:before { - content: "\e238"; } - -.glyphicon-grain:before { - content: "\e239"; } - -.glyphicon-sunglasses:before { - content: "\e240"; } - -.glyphicon-text-size:before { - content: "\e241"; } - -.glyphicon-text-color:before { - content: "\e242"; } - -.glyphicon-text-background:before { - content: "\e243"; } - -.glyphicon-object-align-top:before { - content: "\e244"; } - -.glyphicon-object-align-bottom:before { - content: "\e245"; } - -.glyphicon-object-align-horizontal:before { - content: "\e246"; } - -.glyphicon-object-align-left:before { - content: "\e247"; } - -.glyphicon-object-align-vertical:before { - content: "\e248"; } - -.glyphicon-object-align-right:before { - content: "\e249"; } - -.glyphicon-triangle-right:before { - content: "\e250"; } - -.glyphicon-triangle-left:before { - content: "\e251"; } - -.glyphicon-triangle-bottom:before { - content: "\e252"; } - -.glyphicon-triangle-top:before { - content: "\e253"; } - -.glyphicon-console:before { - content: "\e254"; } - -.glyphicon-superscript:before { - content: "\e255"; } - -.glyphicon-subscript:before { - content: "\e256"; } - -.glyphicon-menu-left:before { - content: "\e257"; } - -.glyphicon-menu-right:before { - content: "\e258"; } - -.glyphicon-menu-down:before { - content: "\e259"; } - -.glyphicon-menu-up:before { - content: "\e260"; } - -* { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; } - -*:before, -*:after { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; } - -html { - font-size: 10px; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } - -body { - font-family: "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 15px; - line-height: 1.846; - color: #444; - background-color: #fff; } - -input, -button, -select, -textarea { - font-family: inherit; - font-size: inherit; - line-height: inherit; } - -a { - color: #5a9ddb; - text-decoration: none; } - a:hover, a:focus { - color: #2a77bf; - text-decoration: underline; } - a:focus { - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; } - -figure { - margin: 0; } - -img { - vertical-align: middle; } - -.img-responsive { - display: block; - max-width: 100%; - height: auto; } - -.img-rounded { - border-radius: 3px; } - -.img-thumbnail { - padding: 4px; - line-height: 1.846; - background-color: #fff; - border: 1px solid #ddd; - border-radius: 3px; - -webkit-transition: all 0.2s ease-in-out; - -o-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; - display: inline-block; - max-width: 100%; - height: auto; } - -.img-circle { - border-radius: 50%; } - -hr { - margin-top: 27px; - margin-bottom: 27px; - border: 0; - border-top: 1px solid #eeeeee; } - -.sr-only { - position: absolute; - width: 1px; - height: 1px; - margin: -1px; - padding: 0; - overflow: hidden; - clip: rect(0, 0, 0, 0); - border: 0; } - -.sr-only-focusable:active, .sr-only-focusable:focus { - position: static; - width: auto; - height: auto; - margin: 0; - overflow: visible; - clip: auto; } - -[role="button"] { - cursor: pointer; } - -h1, h2, h3, h4, h5, h6, -.h1, .h2, .h3, .h4, .h5, .h6 { - font-family: inherit; - font-weight: 300; - line-height: 1.1; - color: #444; } - h1 small, - h1 .small, h2 small, - h2 .small, h3 small, - h3 .small, h4 small, - h4 .small, h5 small, - h5 .small, h6 small, - h6 .small, - .h1 small, - .h1 .small, .h2 small, - .h2 .small, .h3 small, - .h3 .small, .h4 small, - .h4 .small, .h5 small, - .h5 .small, .h6 small, - .h6 .small { - font-weight: normal; - line-height: 1; - color: #bbb; } - -h1, .h1, -h2, .h2, -h3, .h3 { - margin-top: 27px; - margin-bottom: 13.5px; } - h1 small, - h1 .small, .h1 small, - .h1 .small, - h2 small, - h2 .small, .h2 small, - .h2 .small, - h3 small, - h3 .small, .h3 small, - .h3 .small { - font-size: 65%; } - -h4, .h4, -h5, .h5, -h6, .h6 { - margin-top: 13.5px; - margin-bottom: 13.5px; } - h4 small, - h4 .small, .h4 small, - .h4 .small, - h5 small, - h5 .small, .h5 small, - .h5 .small, - h6 small, - h6 .small, .h6 small, - .h6 .small { - font-size: 75%; } - -h1, .h1 { - font-size: 48px; } - -h2, .h2 { - font-size: 40px; } - -h3, .h3 { - font-size: 32px; } - -h4, .h4 { - font-size: 24px; } - -h5, .h5 { - font-size: 20px; } - -h6, .h6 { - font-size: 14px; } - -p { - margin: 0 0 13.5px; } - -.lead { - margin-bottom: 27px; - font-size: 17px; - font-weight: 300; - line-height: 1.4; } - @media (min-width: 768px) { - .lead { - font-size: 22.5px; } } - -small, -.small { - font-size: 86%; } - -mark, -.mark { - background-color: #ffe0b2; - padding: .2em; } - -.text-left { - text-align: left; } - -.text-right { - text-align: right; } - -.text-center { - text-align: center; } - -.text-justify { - text-align: justify; } - -.text-nowrap { - white-space: nowrap; } - -.text-lowercase { - text-transform: lowercase; } - -.text-uppercase, .initialism { - text-transform: uppercase; } - -.text-capitalize { - text-transform: capitalize; } - -.text-muted { - color: #bbb; } - -.text-primary { - color: #5a9ddb; } - -a.text-primary:hover, -a.text-primary:focus { - color: #3084d2; } - -.text-success { - color: #4CAF50; } - -a.text-success:hover, -a.text-success:focus { - color: #3d8b40; } - -.text-info { - color: #9C27B0; } - -a.text-info:hover, -a.text-info:focus { - color: #771e86; } - -.text-warning { - color: #ff9800; } - -a.text-warning:hover, -a.text-warning:focus { - color: #cc7a00; } - -.text-danger { - color: #e51c23; } - -a.text-danger:hover, -a.text-danger:focus { - color: #b9151b; } - -.bg-primary { - color: #fff; } - -.bg-primary { - background-color: #5a9ddb; } - -a.bg-primary:hover, -a.bg-primary:focus { - background-color: #3084d2; } - -.bg-success { - background-color: #dff0d8; } - -a.bg-success:hover, -a.bg-success:focus { - background-color: #c1e2b3; } - -.bg-info { - background-color: #e1bee7; } - -a.bg-info:hover, -a.bg-info:focus { - background-color: #d099d9; } - -.bg-warning { - background-color: #ffe0b2; } - -a.bg-warning:hover, -a.bg-warning:focus { - background-color: #ffcb7f; } - -.bg-danger { - background-color: #f9bdbb; } - -a.bg-danger:hover, -a.bg-danger:focus { - background-color: #f5908c; } - -.page-header { - padding-bottom: 12.5px; - margin: 54px 0 27px; - border-bottom: 1px solid #eeeeee; } - -ul, -ol { - margin-top: 0; - margin-bottom: 13.5px; } - ul ul, - ul ol, - ol ul, - ol ol { - margin-bottom: 0; } - -.list-unstyled { - padding-left: 0; - list-style: none; } - -.list-inline { - padding-left: 0; - list-style: none; - margin-left: -5px; } - .list-inline > li { - display: inline-block; - padding-left: 5px; - padding-right: 5px; } - -dl { - margin-top: 0; - margin-bottom: 27px; } - -dt, -dd { - line-height: 1.846; } - -dt { - font-weight: bold; } - -dd { - margin-left: 0; } - -.dl-horizontal dd:before, .dl-horizontal dd:after { - content: " "; - display: table; } - -.dl-horizontal dd:after { - clear: both; } - -@media (min-width: 768px) { - .dl-horizontal dt { - float: left; - width: 160px; - clear: left; - text-align: right; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; } - .dl-horizontal dd { - margin-left: 180px; } } - -abbr[title], -abbr[data-original-title] { - cursor: help; - border-bottom: 1px dotted #bbb; } - -.initialism { - font-size: 90%; } - -blockquote { - padding: 13.5px 27px; - margin: 0 0 27px; - font-size: 18.75px; - border-left: 5px solid #eeeeee; } - blockquote p:last-child, - blockquote ul:last-child, - blockquote ol:last-child { - margin-bottom: 0; } - blockquote footer, - blockquote small, - blockquote .small { - display: block; - font-size: 80%; - line-height: 1.846; - color: #bbb; } - blockquote footer:before, - blockquote small:before, - blockquote .small:before { - content: '\2014 \00A0'; } - -.blockquote-reverse, -blockquote.pull-right { - padding-right: 15px; - padding-left: 0; - border-right: 5px solid #eeeeee; - border-left: 0; - text-align: right; } - .blockquote-reverse footer:before, - .blockquote-reverse small:before, - .blockquote-reverse .small:before, - blockquote.pull-right footer:before, - blockquote.pull-right small:before, - blockquote.pull-right .small:before { - content: ''; } - .blockquote-reverse footer:after, - .blockquote-reverse small:after, - .blockquote-reverse .small:after, - blockquote.pull-right footer:after, - blockquote.pull-right small:after, - blockquote.pull-right .small:after { - content: '\00A0 \2014'; } - -address { - margin-bottom: 27px; - font-style: normal; - line-height: 1.846; } - -code, -kbd, -pre, -samp { - font-family: "Source Code Pro", Menlo, Monaco, Consolas, "Courier New", monospace; } - -code { - padding: 2px 4px; - font-size: 90%; - color: #444; - background-color: #f2f2f2; - border-radius: 3px; } - -kbd { - padding: 2px 4px; - font-size: 90%; - color: #fff; - background-color: #333; - border-radius: 3px; - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); } - kbd kbd { - padding: 0; - font-size: 100%; - font-weight: bold; - box-shadow: none; } - -pre { - display: block; - padding: 13px; - margin: 0 0 13.5px; - font-size: 14px; - line-height: 1.846; - word-break: break-all; - word-wrap: break-word; - color: #212121; - background-color: #f5f5f5; - border: 1px solid #ccc; - border-radius: 3px; } - pre code { - padding: 0; - font-size: inherit; - color: inherit; - white-space: pre-wrap; - background-color: transparent; - border-radius: 0; } - -.pre-scrollable { - max-height: 340px; - overflow-y: scroll; } - -.container { - margin-right: auto; - margin-left: auto; - padding-left: 15px; - padding-right: 15px; } - .container:before, .container:after { - content: " "; - display: table; } - .container:after { - clear: both; } - @media (min-width: 768px) { - .container { - width: 750px; } } - @media (min-width: 992px) { - .container { - width: 970px; } } - @media (min-width: 1200px) { - .container { - width: 1170px; } } - -.container-fluid { - margin-right: auto; - margin-left: auto; - padding-left: 15px; - padding-right: 15px; } - .container-fluid:before, .container-fluid:after { - content: " "; - display: table; } - .container-fluid:after { - clear: both; } - -.row { - margin-left: -15px; - margin-right: -15px; } - .row:before, .row:after { - content: " "; - display: table; } - .row:after { - clear: both; } - -.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { - position: relative; - min-height: 1px; - padding-left: 15px; - padding-right: 15px; } - -.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { - float: left; } - -.col-xs-1 { - width: 8.33333%; } - -.col-xs-2 { - width: 16.66667%; } - -.col-xs-3 { - width: 25%; } - -.col-xs-4 { - width: 33.33333%; } - -.col-xs-5 { - width: 41.66667%; } - -.col-xs-6 { - width: 50%; } - -.col-xs-7 { - width: 58.33333%; } - -.col-xs-8 { - width: 66.66667%; } - -.col-xs-9 { - width: 75%; } - -.col-xs-10 { - width: 83.33333%; } - -.col-xs-11 { - width: 91.66667%; } - -.col-xs-12 { - width: 100%; } - -.col-xs-pull-0 { - right: auto; } - -.col-xs-pull-1 { - right: 8.33333%; } - -.col-xs-pull-2 { - right: 16.66667%; } - -.col-xs-pull-3 { - right: 25%; } - -.col-xs-pull-4 { - right: 33.33333%; } - -.col-xs-pull-5 { - right: 41.66667%; } - -.col-xs-pull-6 { - right: 50%; } - -.col-xs-pull-7 { - right: 58.33333%; } - -.col-xs-pull-8 { - right: 66.66667%; } - -.col-xs-pull-9 { - right: 75%; } - -.col-xs-pull-10 { - right: 83.33333%; } - -.col-xs-pull-11 { - right: 91.66667%; } - -.col-xs-pull-12 { - right: 100%; } - -.col-xs-push-0 { - left: auto; } - -.col-xs-push-1 { - left: 8.33333%; } - -.col-xs-push-2 { - left: 16.66667%; } - -.col-xs-push-3 { - left: 25%; } - -.col-xs-push-4 { - left: 33.33333%; } - -.col-xs-push-5 { - left: 41.66667%; } - -.col-xs-push-6 { - left: 50%; } - -.col-xs-push-7 { - left: 58.33333%; } - -.col-xs-push-8 { - left: 66.66667%; } - -.col-xs-push-9 { - left: 75%; } - -.col-xs-push-10 { - left: 83.33333%; } - -.col-xs-push-11 { - left: 91.66667%; } - -.col-xs-push-12 { - left: 100%; } - -.col-xs-offset-0 { - margin-left: 0%; } - -.col-xs-offset-1 { - margin-left: 8.33333%; } - -.col-xs-offset-2 { - margin-left: 16.66667%; } - -.col-xs-offset-3 { - margin-left: 25%; } - -.col-xs-offset-4 { - margin-left: 33.33333%; } - -.col-xs-offset-5 { - margin-left: 41.66667%; } - -.col-xs-offset-6 { - margin-left: 50%; } - -.col-xs-offset-7 { - margin-left: 58.33333%; } - -.col-xs-offset-8 { - margin-left: 66.66667%; } - -.col-xs-offset-9 { - margin-left: 75%; } - -.col-xs-offset-10 { - margin-left: 83.33333%; } - -.col-xs-offset-11 { - margin-left: 91.66667%; } - -.col-xs-offset-12 { - margin-left: 100%; } - -@media (min-width: 768px) { - .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { - float: left; } - .col-sm-1 { - width: 8.33333%; } - .col-sm-2 { - width: 16.66667%; } - .col-sm-3 { - width: 25%; } - .col-sm-4 { - width: 33.33333%; } - .col-sm-5 { - width: 41.66667%; } - .col-sm-6 { - width: 50%; } - .col-sm-7 { - width: 58.33333%; } - .col-sm-8 { - width: 66.66667%; } - .col-sm-9 { - width: 75%; } - .col-sm-10 { - width: 83.33333%; } - .col-sm-11 { - width: 91.66667%; } - .col-sm-12 { - width: 100%; } - .col-sm-pull-0 { - right: auto; } - .col-sm-pull-1 { - right: 8.33333%; } - .col-sm-pull-2 { - right: 16.66667%; } - .col-sm-pull-3 { - right: 25%; } - .col-sm-pull-4 { - right: 33.33333%; } - .col-sm-pull-5 { - right: 41.66667%; } - .col-sm-pull-6 { - right: 50%; } - .col-sm-pull-7 { - right: 58.33333%; } - .col-sm-pull-8 { - right: 66.66667%; } - .col-sm-pull-9 { - right: 75%; } - .col-sm-pull-10 { - right: 83.33333%; } - .col-sm-pull-11 { - right: 91.66667%; } - .col-sm-pull-12 { - right: 100%; } - .col-sm-push-0 { - left: auto; } - .col-sm-push-1 { - left: 8.33333%; } - .col-sm-push-2 { - left: 16.66667%; } - .col-sm-push-3 { - left: 25%; } - .col-sm-push-4 { - left: 33.33333%; } - .col-sm-push-5 { - left: 41.66667%; } - .col-sm-push-6 { - left: 50%; } - .col-sm-push-7 { - left: 58.33333%; } - .col-sm-push-8 { - left: 66.66667%; } - .col-sm-push-9 { - left: 75%; } - .col-sm-push-10 { - left: 83.33333%; } - .col-sm-push-11 { - left: 91.66667%; } - .col-sm-push-12 { - left: 100%; } - .col-sm-offset-0 { - margin-left: 0%; } - .col-sm-offset-1 { - margin-left: 8.33333%; } - .col-sm-offset-2 { - margin-left: 16.66667%; } - .col-sm-offset-3 { - margin-left: 25%; } - .col-sm-offset-4 { - margin-left: 33.33333%; } - .col-sm-offset-5 { - margin-left: 41.66667%; } - .col-sm-offset-6 { - margin-left: 50%; } - .col-sm-offset-7 { - margin-left: 58.33333%; } - .col-sm-offset-8 { - margin-left: 66.66667%; } - .col-sm-offset-9 { - margin-left: 75%; } - .col-sm-offset-10 { - margin-left: 83.33333%; } - .col-sm-offset-11 { - margin-left: 91.66667%; } - .col-sm-offset-12 { - margin-left: 100%; } } - -@media (min-width: 992px) { - .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { - float: left; } - .col-md-1 { - width: 8.33333%; } - .col-md-2 { - width: 16.66667%; } - .col-md-3 { - width: 25%; } - .col-md-4 { - width: 33.33333%; } - .col-md-5 { - width: 41.66667%; } - .col-md-6 { - width: 50%; } - .col-md-7 { - width: 58.33333%; } - .col-md-8 { - width: 66.66667%; } - .col-md-9 { - width: 75%; } - .col-md-10 { - width: 83.33333%; } - .col-md-11 { - width: 91.66667%; } - .col-md-12 { - width: 100%; } - .col-md-pull-0 { - right: auto; } - .col-md-pull-1 { - right: 8.33333%; } - .col-md-pull-2 { - right: 16.66667%; } - .col-md-pull-3 { - right: 25%; } - .col-md-pull-4 { - right: 33.33333%; } - .col-md-pull-5 { - right: 41.66667%; } - .col-md-pull-6 { - right: 50%; } - .col-md-pull-7 { - right: 58.33333%; } - .col-md-pull-8 { - right: 66.66667%; } - .col-md-pull-9 { - right: 75%; } - .col-md-pull-10 { - right: 83.33333%; } - .col-md-pull-11 { - right: 91.66667%; } - .col-md-pull-12 { - right: 100%; } - .col-md-push-0 { - left: auto; } - .col-md-push-1 { - left: 8.33333%; } - .col-md-push-2 { - left: 16.66667%; } - .col-md-push-3 { - left: 25%; } - .col-md-push-4 { - left: 33.33333%; } - .col-md-push-5 { - left: 41.66667%; } - .col-md-push-6 { - left: 50%; } - .col-md-push-7 { - left: 58.33333%; } - .col-md-push-8 { - left: 66.66667%; } - .col-md-push-9 { - left: 75%; } - .col-md-push-10 { - left: 83.33333%; } - .col-md-push-11 { - left: 91.66667%; } - .col-md-push-12 { - left: 100%; } - .col-md-offset-0 { - margin-left: 0%; } - .col-md-offset-1 { - margin-left: 8.33333%; } - .col-md-offset-2 { - margin-left: 16.66667%; } - .col-md-offset-3 { - margin-left: 25%; } - .col-md-offset-4 { - margin-left: 33.33333%; } - .col-md-offset-5 { - margin-left: 41.66667%; } - .col-md-offset-6 { - margin-left: 50%; } - .col-md-offset-7 { - margin-left: 58.33333%; } - .col-md-offset-8 { - margin-left: 66.66667%; } - .col-md-offset-9 { - margin-left: 75%; } - .col-md-offset-10 { - margin-left: 83.33333%; } - .col-md-offset-11 { - margin-left: 91.66667%; } - .col-md-offset-12 { - margin-left: 100%; } } - -@media (min-width: 1200px) { - .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { - float: left; } - .col-lg-1 { - width: 8.33333%; } - .col-lg-2 { - width: 16.66667%; } - .col-lg-3 { - width: 25%; } - .col-lg-4 { - width: 33.33333%; } - .col-lg-5 { - width: 41.66667%; } - .col-lg-6 { - width: 50%; } - .col-lg-7 { - width: 58.33333%; } - .col-lg-8 { - width: 66.66667%; } - .col-lg-9 { - width: 75%; } - .col-lg-10 { - width: 83.33333%; } - .col-lg-11 { - width: 91.66667%; } - .col-lg-12 { - width: 100%; } - .col-lg-pull-0 { - right: auto; } - .col-lg-pull-1 { - right: 8.33333%; } - .col-lg-pull-2 { - right: 16.66667%; } - .col-lg-pull-3 { - right: 25%; } - .col-lg-pull-4 { - right: 33.33333%; } - .col-lg-pull-5 { - right: 41.66667%; } - .col-lg-pull-6 { - right: 50%; } - .col-lg-pull-7 { - right: 58.33333%; } - .col-lg-pull-8 { - right: 66.66667%; } - .col-lg-pull-9 { - right: 75%; } - .col-lg-pull-10 { - right: 83.33333%; } - .col-lg-pull-11 { - right: 91.66667%; } - .col-lg-pull-12 { - right: 100%; } - .col-lg-push-0 { - left: auto; } - .col-lg-push-1 { - left: 8.33333%; } - .col-lg-push-2 { - left: 16.66667%; } - .col-lg-push-3 { - left: 25%; } - .col-lg-push-4 { - left: 33.33333%; } - .col-lg-push-5 { - left: 41.66667%; } - .col-lg-push-6 { - left: 50%; } - .col-lg-push-7 { - left: 58.33333%; } - .col-lg-push-8 { - left: 66.66667%; } - .col-lg-push-9 { - left: 75%; } - .col-lg-push-10 { - left: 83.33333%; } - .col-lg-push-11 { - left: 91.66667%; } - .col-lg-push-12 { - left: 100%; } - .col-lg-offset-0 { - margin-left: 0%; } - .col-lg-offset-1 { - margin-left: 8.33333%; } - .col-lg-offset-2 { - margin-left: 16.66667%; } - .col-lg-offset-3 { - margin-left: 25%; } - .col-lg-offset-4 { - margin-left: 33.33333%; } - .col-lg-offset-5 { - margin-left: 41.66667%; } - .col-lg-offset-6 { - margin-left: 50%; } - .col-lg-offset-7 { - margin-left: 58.33333%; } - .col-lg-offset-8 { - margin-left: 66.66667%; } - .col-lg-offset-9 { - margin-left: 75%; } - .col-lg-offset-10 { - margin-left: 83.33333%; } - .col-lg-offset-11 { - margin-left: 91.66667%; } - .col-lg-offset-12 { - margin-left: 100%; } } - -table { - background-color: transparent; } - -caption { - padding-top: 8px; - padding-bottom: 8px; - color: #bbb; - text-align: left; } - -th { - text-align: left; } - -.table { - width: 100%; - max-width: 100%; - margin-bottom: 27px; } - .table > thead > tr > th, - .table > thead > tr > td, - .table > tbody > tr > th, - .table > tbody > tr > td, - .table > tfoot > tr > th, - .table > tfoot > tr > td { - padding: 8px; - line-height: 1.846; - vertical-align: top; - border-top: 1px solid #ddd; } - .table > thead > tr > th { - vertical-align: bottom; - border-bottom: 2px solid #ddd; } - .table > caption + thead > tr:first-child > th, - .table > caption + thead > tr:first-child > td, - .table > colgroup + thead > tr:first-child > th, - .table > colgroup + thead > tr:first-child > td, - .table > thead:first-child > tr:first-child > th, - .table > thead:first-child > tr:first-child > td { - border-top: 0; } - .table > tbody + tbody { - border-top: 2px solid #ddd; } - .table .table { - background-color: #fff; } - -.table-condensed > thead > tr > th, -.table-condensed > thead > tr > td, -.table-condensed > tbody > tr > th, -.table-condensed > tbody > tr > td, -.table-condensed > tfoot > tr > th, -.table-condensed > tfoot > tr > td { - padding: 5px; } - -.table-bordered { - border: 1px solid #ddd; } - .table-bordered > thead > tr > th, - .table-bordered > thead > tr > td, - .table-bordered > tbody > tr > th, - .table-bordered > tbody > tr > td, - .table-bordered > tfoot > tr > th, - .table-bordered > tfoot > tr > td { - border: 1px solid #ddd; } - .table-bordered > thead > tr > th, - .table-bordered > thead > tr > td { - border-bottom-width: 2px; } - -.table-striped > tbody > tr:nth-of-type(odd) { - background-color: #f9f9f9; } - -.table-hover > tbody > tr:hover { - background-color: #f5f5f5; } - -table col[class*="col-"] { - position: static; - float: none; - display: table-column; } - -table td[class*="col-"], -table th[class*="col-"] { - position: static; - float: none; - display: table-cell; } - -.table > thead > tr > td.active, -.table > thead > tr > th.active, -.table > thead > tr.active > td, -.table > thead > tr.active > th, -.table > tbody > tr > td.active, -.table > tbody > tr > th.active, -.table > tbody > tr.active > td, -.table > tbody > tr.active > th, -.table > tfoot > tr > td.active, -.table > tfoot > tr > th.active, -.table > tfoot > tr.active > td, -.table > tfoot > tr.active > th { - background-color: #f5f5f5; } - -.table-hover > tbody > tr > td.active:hover, -.table-hover > tbody > tr > th.active:hover, -.table-hover > tbody > tr.active:hover > td, -.table-hover > tbody > tr:hover > .active, -.table-hover > tbody > tr.active:hover > th { - background-color: #e8e8e8; } - -.table > thead > tr > td.success, -.table > thead > tr > th.success, -.table > thead > tr.success > td, -.table > thead > tr.success > th, -.table > tbody > tr > td.success, -.table > tbody > tr > th.success, -.table > tbody > tr.success > td, -.table > tbody > tr.success > th, -.table > tfoot > tr > td.success, -.table > tfoot > tr > th.success, -.table > tfoot > tr.success > td, -.table > tfoot > tr.success > th { - background-color: #dff0d8; } - -.table-hover > tbody > tr > td.success:hover, -.table-hover > tbody > tr > th.success:hover, -.table-hover > tbody > tr.success:hover > td, -.table-hover > tbody > tr:hover > .success, -.table-hover > tbody > tr.success:hover > th { - background-color: #d0e9c6; } - -.table > thead > tr > td.info, -.table > thead > tr > th.info, -.table > thead > tr.info > td, -.table > thead > tr.info > th, -.table > tbody > tr > td.info, -.table > tbody > tr > th.info, -.table > tbody > tr.info > td, -.table > tbody > tr.info > th, -.table > tfoot > tr > td.info, -.table > tfoot > tr > th.info, -.table > tfoot > tr.info > td, -.table > tfoot > tr.info > th { - background-color: #e1bee7; } - -.table-hover > tbody > tr > td.info:hover, -.table-hover > tbody > tr > th.info:hover, -.table-hover > tbody > tr.info:hover > td, -.table-hover > tbody > tr:hover > .info, -.table-hover > tbody > tr.info:hover > th { - background-color: #d8abe0; } - -.table > thead > tr > td.warning, -.table > thead > tr > th.warning, -.table > thead > tr.warning > td, -.table > thead > tr.warning > th, -.table > tbody > tr > td.warning, -.table > tbody > tr > th.warning, -.table > tbody > tr.warning > td, -.table > tbody > tr.warning > th, -.table > tfoot > tr > td.warning, -.table > tfoot > tr > th.warning, -.table > tfoot > tr.warning > td, -.table > tfoot > tr.warning > th { - background-color: #ffe0b2; } - -.table-hover > tbody > tr > td.warning:hover, -.table-hover > tbody > tr > th.warning:hover, -.table-hover > tbody > tr.warning:hover > td, -.table-hover > tbody > tr:hover > .warning, -.table-hover > tbody > tr.warning:hover > th { - background-color: #ffd699; } - -.table > thead > tr > td.danger, -.table > thead > tr > th.danger, -.table > thead > tr.danger > td, -.table > thead > tr.danger > th, -.table > tbody > tr > td.danger, -.table > tbody > tr > th.danger, -.table > tbody > tr.danger > td, -.table > tbody > tr.danger > th, -.table > tfoot > tr > td.danger, -.table > tfoot > tr > th.danger, -.table > tfoot > tr.danger > td, -.table > tfoot > tr.danger > th { - background-color: #f9bdbb; } - -.table-hover > tbody > tr > td.danger:hover, -.table-hover > tbody > tr > th.danger:hover, -.table-hover > tbody > tr.danger:hover > td, -.table-hover > tbody > tr:hover > .danger, -.table-hover > tbody > tr.danger:hover > th { - background-color: #f7a6a4; } - -.table-responsive { - overflow-x: auto; - min-height: 0.01%; } - @media screen and (max-width: 767px) { - .table-responsive { - width: 100%; - margin-bottom: 20.25px; - overflow-y: hidden; - -ms-overflow-style: -ms-autohiding-scrollbar; - border: 1px solid #ddd; } - .table-responsive > .table { - margin-bottom: 0; } - .table-responsive > .table > thead > tr > th, - .table-responsive > .table > thead > tr > td, - .table-responsive > .table > tbody > tr > th, - .table-responsive > .table > tbody > tr > td, - .table-responsive > .table > tfoot > tr > th, - .table-responsive > .table > tfoot > tr > td { - white-space: nowrap; } - .table-responsive > .table-bordered { - border: 0; } - .table-responsive > .table-bordered > thead > tr > th:first-child, - .table-responsive > .table-bordered > thead > tr > td:first-child, - .table-responsive > .table-bordered > tbody > tr > th:first-child, - .table-responsive > .table-bordered > tbody > tr > td:first-child, - .table-responsive > .table-bordered > tfoot > tr > th:first-child, - .table-responsive > .table-bordered > tfoot > tr > td:first-child { - border-left: 0; } - .table-responsive > .table-bordered > thead > tr > th:last-child, - .table-responsive > .table-bordered > thead > tr > td:last-child, - .table-responsive > .table-bordered > tbody > tr > th:last-child, - .table-responsive > .table-bordered > tbody > tr > td:last-child, - .table-responsive > .table-bordered > tfoot > tr > th:last-child, - .table-responsive > .table-bordered > tfoot > tr > td:last-child { - border-right: 0; } - .table-responsive > .table-bordered > tbody > tr:last-child > th, - .table-responsive > .table-bordered > tbody > tr:last-child > td, - .table-responsive > .table-bordered > tfoot > tr:last-child > th, - .table-responsive > .table-bordered > tfoot > tr:last-child > td { - border-bottom: 0; } } - -fieldset { - padding: 0; - margin: 0; - border: 0; - min-width: 0; } - -legend { - display: block; - width: 100%; - padding: 0; - margin-bottom: 27px; - font-size: 22.5px; - line-height: inherit; - color: #212121; - border: 0; - border-bottom: 1px solid #e5e5e5; } - -label { - display: inline-block; - max-width: 100%; - margin-bottom: 5px; - font-weight: bold; } - -input[type="search"] { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; } - -input[type="radio"], -input[type="checkbox"] { - margin: 4px 0 0; - margin-top: 1px \9; - line-height: normal; } - -input[type="file"] { - display: block; } - -input[type="range"] { - display: block; - width: 100%; } - -select[multiple], -select[size] { - height: auto; } - -input[type="file"]:focus, -input[type="radio"]:focus, -input[type="checkbox"]:focus { - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; } - -output { - display: block; - padding-top: 7px; - font-size: 15px; - line-height: 1.846; - color: #666; } - -.form-control { - display: block; - width: 100%; - height: 41px; - padding: 6px 16px; - font-size: 15px; - line-height: 1.846; - color: #666; - background-color: transparent; - background-image: none; - border: 1px solid transparent; - border-radius: 3px; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; - -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; - transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; } - .form-control:focus { - border-color: #66afe9; - outline: 0; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); } - .form-control::-moz-placeholder { - color: #bbb; - opacity: 1; } - .form-control:-ms-input-placeholder { - color: #bbb; } - .form-control::-webkit-input-placeholder { - color: #bbb; } - .form-control::-ms-expand { - border: 0; - background-color: transparent; } - .form-control[disabled], .form-control[readonly], - fieldset[disabled] .form-control { - background-color: transparent; - opacity: 1; } - .form-control[disabled], - fieldset[disabled] .form-control { - cursor: not-allowed; } - -textarea.form-control { - height: auto; } - -input[type="search"] { - -webkit-appearance: none; } - -@media screen and (-webkit-min-device-pixel-ratio: 0) { - input[type="date"].form-control, - input[type="time"].form-control, - input[type="datetime-local"].form-control, - input[type="month"].form-control { - line-height: 41px; } - input[type="date"].input-sm, .input-group-sm > input.form-control[type="date"], - .input-group-sm > input.input-group-addon[type="date"], - .input-group-sm > .input-group-btn > input.btn[type="date"], - .input-group-sm input[type="date"], - input[type="time"].input-sm, - .input-group-sm > input.form-control[type="time"], - .input-group-sm > input.input-group-addon[type="time"], - .input-group-sm > .input-group-btn > input.btn[type="time"], - .input-group-sm - input[type="time"], - input[type="datetime-local"].input-sm, - .input-group-sm > input.form-control[type="datetime-local"], - .input-group-sm > input.input-group-addon[type="datetime-local"], - .input-group-sm > .input-group-btn > input.btn[type="datetime-local"], - .input-group-sm - input[type="datetime-local"], - input[type="month"].input-sm, - .input-group-sm > input.form-control[type="month"], - .input-group-sm > input.input-group-addon[type="month"], - .input-group-sm > .input-group-btn > input.btn[type="month"], - .input-group-sm - input[type="month"] { - line-height: 31px; } - input[type="date"].input-lg, .input-group-lg > input.form-control[type="date"], - .input-group-lg > input.input-group-addon[type="date"], - .input-group-lg > .input-group-btn > input.btn[type="date"], - .input-group-lg input[type="date"], - input[type="time"].input-lg, - .input-group-lg > input.form-control[type="time"], - .input-group-lg > input.input-group-addon[type="time"], - .input-group-lg > .input-group-btn > input.btn[type="time"], - .input-group-lg - input[type="time"], - input[type="datetime-local"].input-lg, - .input-group-lg > input.form-control[type="datetime-local"], - .input-group-lg > input.input-group-addon[type="datetime-local"], - .input-group-lg > .input-group-btn > input.btn[type="datetime-local"], - .input-group-lg - input[type="datetime-local"], - input[type="month"].input-lg, - .input-group-lg > input.form-control[type="month"], - .input-group-lg > input.input-group-addon[type="month"], - .input-group-lg > .input-group-btn > input.btn[type="month"], - .input-group-lg - input[type="month"] { - line-height: 48px; } } - -.form-group { - margin-bottom: 15px; } - -.radio, -.checkbox { - position: relative; - display: block; - margin-top: 10px; - margin-bottom: 10px; } - .radio label, - .checkbox label { - min-height: 27px; - padding-left: 20px; - margin-bottom: 0; - font-weight: normal; - cursor: pointer; } - -.radio input[type="radio"], -.radio-inline input[type="radio"], -.checkbox input[type="checkbox"], -.checkbox-inline input[type="checkbox"] { - position: absolute; - margin-left: -20px; - margin-top: 4px \9; } - -.radio + .radio, -.checkbox + .checkbox { - margin-top: -5px; } - -.radio-inline, -.checkbox-inline { - position: relative; - display: inline-block; - padding-left: 20px; - margin-bottom: 0; - vertical-align: middle; - font-weight: normal; - cursor: pointer; } - -.radio-inline + .radio-inline, -.checkbox-inline + .checkbox-inline { - margin-top: 0; - margin-left: 10px; } - -input[type="radio"][disabled], input[type="radio"].disabled, -fieldset[disabled] input[type="radio"], -input[type="checkbox"][disabled], -input[type="checkbox"].disabled, -fieldset[disabled] -input[type="checkbox"] { - cursor: not-allowed; } - -.radio-inline.disabled, -fieldset[disabled] .radio-inline, -.checkbox-inline.disabled, -fieldset[disabled] -.checkbox-inline { - cursor: not-allowed; } - -.radio.disabled label, -fieldset[disabled] .radio label, -.checkbox.disabled label, -fieldset[disabled] -.checkbox label { - cursor: not-allowed; } - -.form-control-static { - padding-top: 7px; - padding-bottom: 7px; - margin-bottom: 0; - min-height: 42px; } - .form-control-static.input-lg, .input-group-lg > .form-control-static.form-control, - .input-group-lg > .form-control-static.input-group-addon, - .input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control, - .input-group-sm > .form-control-static.input-group-addon, - .input-group-sm > .input-group-btn > .form-control-static.btn { - padding-left: 0; - padding-right: 0; } - -.input-sm, .input-group-sm > .form-control, -.input-group-sm > .input-group-addon, -.input-group-sm > .input-group-btn > .btn { - height: 31px; - padding: 5px 10px; - font-size: 13px; - line-height: 1.5; - border-radius: 3px; } - -select.input-sm, .input-group-sm > select.form-control, -.input-group-sm > select.input-group-addon, -.input-group-sm > .input-group-btn > select.btn { - height: 31px; - line-height: 31px; } - -textarea.input-sm, .input-group-sm > textarea.form-control, -.input-group-sm > textarea.input-group-addon, -.input-group-sm > .input-group-btn > textarea.btn, -select[multiple].input-sm, -.input-group-sm > select.form-control[multiple], -.input-group-sm > select.input-group-addon[multiple], -.input-group-sm > .input-group-btn > select.btn[multiple] { - height: auto; } - -.form-group-sm .form-control { - height: 31px; - padding: 5px 10px; - font-size: 13px; - line-height: 1.5; - border-radius: 3px; } - -.form-group-sm select.form-control { - height: 31px; - line-height: 31px; } - -.form-group-sm textarea.form-control, -.form-group-sm select[multiple].form-control { - height: auto; } - -.form-group-sm .form-control-static { - height: 31px; - min-height: 40px; - padding: 6px 10px; - font-size: 13px; - line-height: 1.5; } - -.input-lg, .input-group-lg > .form-control, -.input-group-lg > .input-group-addon, -.input-group-lg > .input-group-btn > .btn { - height: 48px; - padding: 10px 16px; - font-size: 19px; - line-height: 1.33333; - border-radius: 3px; } - -select.input-lg, .input-group-lg > select.form-control, -.input-group-lg > select.input-group-addon, -.input-group-lg > .input-group-btn > select.btn { - height: 48px; - line-height: 48px; } - -textarea.input-lg, .input-group-lg > textarea.form-control, -.input-group-lg > textarea.input-group-addon, -.input-group-lg > .input-group-btn > textarea.btn, -select[multiple].input-lg, -.input-group-lg > select.form-control[multiple], -.input-group-lg > select.input-group-addon[multiple], -.input-group-lg > .input-group-btn > select.btn[multiple] { - height: auto; } - -.form-group-lg .form-control { - height: 48px; - padding: 10px 16px; - font-size: 19px; - line-height: 1.33333; - border-radius: 3px; } - -.form-group-lg select.form-control { - height: 48px; - line-height: 48px; } - -.form-group-lg textarea.form-control, -.form-group-lg select[multiple].form-control { - height: auto; } - -.form-group-lg .form-control-static { - height: 48px; - min-height: 46px; - padding: 11px 16px; - font-size: 19px; - line-height: 1.33333; } - -.has-feedback { - position: relative; } - .has-feedback .form-control { - padding-right: 51.25px; } - -.form-control-feedback { - position: absolute; - top: 0; - right: 0; - z-index: 2; - display: block; - width: 41px; - height: 41px; - line-height: 41px; - text-align: center; - pointer-events: none; } - -.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback, .input-group-lg > .input-group-addon + .form-control-feedback, .input-group-lg > .input-group-btn > .btn + .form-control-feedback, -.input-group-lg + .form-control-feedback, -.form-group-lg .form-control + .form-control-feedback { - width: 48px; - height: 48px; - line-height: 48px; } - -.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback, .input-group-sm > .input-group-addon + .form-control-feedback, .input-group-sm > .input-group-btn > .btn + .form-control-feedback, -.input-group-sm + .form-control-feedback, -.form-group-sm .form-control + .form-control-feedback { - width: 31px; - height: 31px; - line-height: 31px; } - -.has-success .help-block, -.has-success .control-label, -.has-success .radio, -.has-success .checkbox, -.has-success .radio-inline, -.has-success .checkbox-inline, -.has-success.radio label, -.has-success.checkbox label, -.has-success.radio-inline label, -.has-success.checkbox-inline label { - color: #4CAF50; } - -.has-success .form-control { - border-color: #4CAF50; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); } - .has-success .form-control:focus { - border-color: #3d8b40; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #92cf94; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #92cf94; } - -.has-success .input-group-addon { - color: #4CAF50; - border-color: #4CAF50; - background-color: #dff0d8; } - -.has-success .form-control-feedback { - color: #4CAF50; } - -.has-warning .help-block, -.has-warning .control-label, -.has-warning .radio, -.has-warning .checkbox, -.has-warning .radio-inline, -.has-warning .checkbox-inline, -.has-warning.radio label, -.has-warning.checkbox label, -.has-warning.radio-inline label, -.has-warning.checkbox-inline label { - color: #ff9800; } - -.has-warning .form-control { - border-color: #ff9800; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); } - .has-warning .form-control:focus { - border-color: #cc7a00; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ffc166; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ffc166; } - -.has-warning .input-group-addon { - color: #ff9800; - border-color: #ff9800; - background-color: #ffe0b2; } - -.has-warning .form-control-feedback { - color: #ff9800; } - -.has-error .help-block, -.has-error .control-label, -.has-error .radio, -.has-error .checkbox, -.has-error .radio-inline, -.has-error .checkbox-inline, -.has-error.radio label, -.has-error.checkbox label, -.has-error.radio-inline label, -.has-error.checkbox-inline label { - color: #e51c23; } - -.has-error .form-control { - border-color: #e51c23; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); } - .has-error .form-control:focus { - border-color: #b9151b; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ef787c; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ef787c; } - -.has-error .input-group-addon { - color: #e51c23; - border-color: #e51c23; - background-color: #f9bdbb; } - -.has-error .form-control-feedback { - color: #e51c23; } - -.has-feedback label ~ .form-control-feedback { - top: 32px; } - -.has-feedback label.sr-only ~ .form-control-feedback { - top: 0; } - -.help-block { - display: block; - margin-top: 5px; - margin-bottom: 10px; - color: #848484; } - -@media (min-width: 768px) { - .form-inline .form-group { - display: inline-block; - margin-bottom: 0; - vertical-align: middle; } - .form-inline .form-control { - display: inline-block; - width: auto; - vertical-align: middle; } - .form-inline .form-control-static { - display: inline-block; } - .form-inline .input-group { - display: inline-table; - vertical-align: middle; } - .form-inline .input-group .input-group-addon, - .form-inline .input-group .input-group-btn, - .form-inline .input-group .form-control { - width: auto; } - .form-inline .input-group > .form-control { - width: 100%; } - .form-inline .control-label { - margin-bottom: 0; - vertical-align: middle; } - .form-inline .radio, - .form-inline .checkbox { - display: inline-block; - margin-top: 0; - margin-bottom: 0; - vertical-align: middle; } - .form-inline .radio label, - .form-inline .checkbox label { - padding-left: 0; } - .form-inline .radio input[type="radio"], - .form-inline .checkbox input[type="checkbox"] { - position: relative; - margin-left: 0; } - .form-inline .has-feedback .form-control-feedback { - top: 0; } } - -.form-horizontal .radio, -.form-horizontal .checkbox, -.form-horizontal .radio-inline, -.form-horizontal .checkbox-inline { - margin-top: 0; - margin-bottom: 0; - padding-top: 7px; } - -.form-horizontal .radio, -.form-horizontal .checkbox { - min-height: 34px; } - -.form-horizontal .form-group { - margin-left: -15px; - margin-right: -15px; } - .form-horizontal .form-group:before, .form-horizontal .form-group:after { - content: " "; - display: table; } - .form-horizontal .form-group:after { - clear: both; } - -@media (min-width: 768px) { - .form-horizontal .control-label { - text-align: right; - margin-bottom: 0; - padding-top: 7px; } } - -.form-horizontal .has-feedback .form-control-feedback { - right: 15px; } - -@media (min-width: 768px) { - .form-horizontal .form-group-lg .control-label { - padding-top: 11px; - font-size: 19px; } } - -@media (min-width: 768px) { - .form-horizontal .form-group-sm .control-label { - padding-top: 6px; - font-size: 13px; } } - -.btn { - display: inline-block; - margin-bottom: 0; - font-weight: normal; - text-align: center; - vertical-align: middle; - touch-action: manipulation; - cursor: pointer; - background-image: none; - border: 1px solid transparent; - white-space: nowrap; - padding: 6px 16px; - font-size: 15px; - line-height: 1.846; - border-radius: 3px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; } - .btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus { - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; } - .btn:hover, .btn:focus, .btn.focus { - color: #444; - text-decoration: none; } - .btn:active, .btn.active { - outline: 0; - background-image: none; - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); } - .btn.disabled, .btn[disabled], - fieldset[disabled] .btn { - cursor: not-allowed; - opacity: 0.65; - filter: alpha(opacity=65); - -webkit-box-shadow: none; - box-shadow: none; } - -a.btn.disabled, -fieldset[disabled] a.btn { - pointer-events: none; } - -.btn-default { - color: #444; - background-color: #fff; - border-color: transparent; } - .btn-default:focus, .btn-default.focus { - color: #444; - background-color: #e6e6e6; - border-color: rgba(0, 0, 0, 0); } - .btn-default:hover { - color: #444; - background-color: #e6e6e6; - border-color: rgba(0, 0, 0, 0); } - .btn-default:active, .btn-default.active, - .open > .btn-default.dropdown-toggle { - color: #444; - background-color: #e6e6e6; - border-color: rgba(0, 0, 0, 0); } - .btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus, - .open > .btn-default.dropdown-toggle:hover, - .open > .btn-default.dropdown-toggle:focus, - .open > .btn-default.dropdown-toggle.focus { - color: #444; - background-color: #d4d4d4; - border-color: rgba(0, 0, 0, 0); } - .btn-default:active, .btn-default.active, - .open > .btn-default.dropdown-toggle { - background-image: none; } - .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, - fieldset[disabled] .btn-default:hover, - fieldset[disabled] .btn-default:focus, - fieldset[disabled] .btn-default.focus { - background-color: #fff; - border-color: transparent; } - .btn-default .badge { - color: #fff; - background-color: #444; } - -.btn-primary { - color: #fff; - background-color: #5a9ddb; - border-color: transparent; } - .btn-primary:focus, .btn-primary.focus { - color: #fff; - background-color: #3084d2; - border-color: rgba(0, 0, 0, 0); } - .btn-primary:hover { - color: #fff; - background-color: #3084d2; - border-color: rgba(0, 0, 0, 0); } - .btn-primary:active, .btn-primary.active, - .open > .btn-primary.dropdown-toggle { - color: #fff; - background-color: #3084d2; - border-color: rgba(0, 0, 0, 0); } - .btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus, - .open > .btn-primary.dropdown-toggle:hover, - .open > .btn-primary.dropdown-toggle:focus, - .open > .btn-primary.dropdown-toggle.focus { - color: #fff; - background-color: #2872b6; - border-color: rgba(0, 0, 0, 0); } - .btn-primary:active, .btn-primary.active, - .open > .btn-primary.dropdown-toggle { - background-image: none; } - .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, - fieldset[disabled] .btn-primary:hover, - fieldset[disabled] .btn-primary:focus, - fieldset[disabled] .btn-primary.focus { - background-color: #5a9ddb; - border-color: transparent; } - .btn-primary .badge { - color: #5a9ddb; - background-color: #fff; } - -.btn-success { - color: #fff; - background-color: #4CAF50; - border-color: transparent; } - .btn-success:focus, .btn-success.focus { - color: #fff; - background-color: #3d8b40; - border-color: rgba(0, 0, 0, 0); } - .btn-success:hover { - color: #fff; - background-color: #3d8b40; - border-color: rgba(0, 0, 0, 0); } - .btn-success:active, .btn-success.active, - .open > .btn-success.dropdown-toggle { - color: #fff; - background-color: #3d8b40; - border-color: rgba(0, 0, 0, 0); } - .btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus, - .open > .btn-success.dropdown-toggle:hover, - .open > .btn-success.dropdown-toggle:focus, - .open > .btn-success.dropdown-toggle.focus { - color: #fff; - background-color: #327334; - border-color: rgba(0, 0, 0, 0); } - .btn-success:active, .btn-success.active, - .open > .btn-success.dropdown-toggle { - background-image: none; } - .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, - fieldset[disabled] .btn-success:hover, - fieldset[disabled] .btn-success:focus, - fieldset[disabled] .btn-success.focus { - background-color: #4CAF50; - border-color: transparent; } - .btn-success .badge { - color: #4CAF50; - background-color: #fff; } - -.btn-info { - color: #fff; - background-color: #9C27B0; - border-color: transparent; } - .btn-info:focus, .btn-info.focus { - color: #fff; - background-color: #771e86; - border-color: rgba(0, 0, 0, 0); } - .btn-info:hover { - color: #fff; - background-color: #771e86; - border-color: rgba(0, 0, 0, 0); } - .btn-info:active, .btn-info.active, - .open > .btn-info.dropdown-toggle { - color: #fff; - background-color: #771e86; - border-color: rgba(0, 0, 0, 0); } - .btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus, - .open > .btn-info.dropdown-toggle:hover, - .open > .btn-info.dropdown-toggle:focus, - .open > .btn-info.dropdown-toggle.focus { - color: #fff; - background-color: #5d1769; - border-color: rgba(0, 0, 0, 0); } - .btn-info:active, .btn-info.active, - .open > .btn-info.dropdown-toggle { - background-image: none; } - .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus, - fieldset[disabled] .btn-info:hover, - fieldset[disabled] .btn-info:focus, - fieldset[disabled] .btn-info.focus { - background-color: #9C27B0; - border-color: transparent; } - .btn-info .badge { - color: #9C27B0; - background-color: #fff; } - -.btn-warning { - color: #fff; - background-color: #ff9800; - border-color: transparent; } - .btn-warning:focus, .btn-warning.focus { - color: #fff; - background-color: #cc7a00; - border-color: rgba(0, 0, 0, 0); } - .btn-warning:hover { - color: #fff; - background-color: #cc7a00; - border-color: rgba(0, 0, 0, 0); } - .btn-warning:active, .btn-warning.active, - .open > .btn-warning.dropdown-toggle { - color: #fff; - background-color: #cc7a00; - border-color: rgba(0, 0, 0, 0); } - .btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus, - .open > .btn-warning.dropdown-toggle:hover, - .open > .btn-warning.dropdown-toggle:focus, - .open > .btn-warning.dropdown-toggle.focus { - color: #fff; - background-color: #a86400; - border-color: rgba(0, 0, 0, 0); } - .btn-warning:active, .btn-warning.active, - .open > .btn-warning.dropdown-toggle { - background-image: none; } - .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus, - fieldset[disabled] .btn-warning:hover, - fieldset[disabled] .btn-warning:focus, - fieldset[disabled] .btn-warning.focus { - background-color: #ff9800; - border-color: transparent; } - .btn-warning .badge { - color: #ff9800; - background-color: #fff; } - -.btn-danger { - color: #fff; - background-color: #e51c23; - border-color: transparent; } - .btn-danger:focus, .btn-danger.focus { - color: #fff; - background-color: #b9151b; - border-color: rgba(0, 0, 0, 0); } - .btn-danger:hover { - color: #fff; - background-color: #b9151b; - border-color: rgba(0, 0, 0, 0); } - .btn-danger:active, .btn-danger.active, - .open > .btn-danger.dropdown-toggle { - color: #fff; - background-color: #b9151b; - border-color: rgba(0, 0, 0, 0); } - .btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus, - .open > .btn-danger.dropdown-toggle:hover, - .open > .btn-danger.dropdown-toggle:focus, - .open > .btn-danger.dropdown-toggle.focus { - color: #fff; - background-color: #991216; - border-color: rgba(0, 0, 0, 0); } - .btn-danger:active, .btn-danger.active, - .open > .btn-danger.dropdown-toggle { - background-image: none; } - .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus, - fieldset[disabled] .btn-danger:hover, - fieldset[disabled] .btn-danger:focus, - fieldset[disabled] .btn-danger.focus { - background-color: #e51c23; - border-color: transparent; } - .btn-danger .badge { - color: #e51c23; - background-color: #fff; } - -.btn-link { - color: #5a9ddb; - font-weight: normal; - border-radius: 0; } - .btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled], - fieldset[disabled] .btn-link { - background-color: transparent; - -webkit-box-shadow: none; - box-shadow: none; } - .btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active { - border-color: transparent; } - .btn-link:hover, .btn-link:focus { - color: #2a77bf; - text-decoration: underline; - background-color: transparent; } - .btn-link[disabled]:hover, .btn-link[disabled]:focus, - fieldset[disabled] .btn-link:hover, - fieldset[disabled] .btn-link:focus { - color: #bbb; - text-decoration: none; } - -.btn-lg, .btn-group-lg > .btn { - padding: 10px 16px; - font-size: 19px; - line-height: 1.33333; - border-radius: 3px; } - -.btn-sm, .btn-group-sm > .btn { - padding: 5px 10px; - font-size: 13px; - line-height: 1.5; - border-radius: 3px; } - -.btn-xs, .btn-group-xs > .btn { - padding: 1px 5px; - font-size: 13px; - line-height: 1.5; - border-radius: 3px; } - -.btn-block { - display: block; - width: 100%; } - -.btn-block + .btn-block { - margin-top: 5px; } - -input[type="submit"].btn-block, -input[type="reset"].btn-block, -input[type="button"].btn-block { - width: 100%; } - -.fade { - opacity: 0; - -webkit-transition: opacity 0.15s linear; - -o-transition: opacity 0.15s linear; - transition: opacity 0.15s linear; } - .fade.in { - opacity: 1; } - -.collapse { - display: none; } - .collapse.in { - display: block; } - -tr.collapse.in { - display: table-row; } - -tbody.collapse.in { - display: table-row-group; } - -.collapsing { - position: relative; - height: 0; - overflow: hidden; - -webkit-transition-property: height, visibility; - transition-property: height, visibility; - -webkit-transition-duration: 0.35s; - transition-duration: 0.35s; - -webkit-transition-timing-function: ease; - transition-timing-function: ease; } - -.caret { - display: inline-block; - width: 0; - height: 0; - margin-left: 2px; - vertical-align: middle; - border-top: 4px dashed; - border-top: 4px solid \9; - border-right: 4px solid transparent; - border-left: 4px solid transparent; } - -.dropup, -.dropdown { - position: relative; } - -.dropdown-toggle:focus { - outline: 0; } - -.dropdown-menu { - position: absolute; - top: 100%; - left: 0; - z-index: 1000; - display: none; - float: left; - min-width: 160px; - padding: 5px 0; - margin: 2px 0 0; - list-style: none; - font-size: 15px; - text-align: left; - background-color: #fff; - border: 1px solid #ccc; - border: 1px solid rgba(0, 0, 0, 0.15); - border-radius: 3px; - -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); - box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); - background-clip: padding-box; } - .dropdown-menu.pull-right { - right: 0; - left: auto; } - .dropdown-menu .divider { - height: 1px; - margin: 12.5px 0; - overflow: hidden; - background-color: #e5e5e5; } - .dropdown-menu > li > a { - display: block; - padding: 3px 20px; - clear: both; - font-weight: normal; - line-height: 1.846; - color: #444; - white-space: nowrap; } - -.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus { - text-decoration: none; - color: #141414; - background-color: #eeeeee; } - -.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus { - color: #fff; - text-decoration: none; - outline: 0; - background-color: #5a9ddb; } - -.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus { - color: #bbb; } - -.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus { - text-decoration: none; - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - cursor: not-allowed; } - -.open > .dropdown-menu { - display: block; } - -.open > a { - outline: 0; } - -.dropdown-menu-right { - left: auto; - right: 0; } - -.dropdown-menu-left { - left: 0; - right: auto; } - -.dropdown-header { - display: block; - padding: 3px 20px; - font-size: 13px; - line-height: 1.846; - color: #bbb; - white-space: nowrap; } - -.dropdown-backdrop { - position: fixed; - left: 0; - right: 0; - bottom: 0; - top: 0; - z-index: 990; } - -.pull-right > .dropdown-menu { - right: 0; - left: auto; } - -.dropup .caret, -.navbar-fixed-bottom .dropdown .caret { - border-top: 0; - border-bottom: 4px dashed; - border-bottom: 4px solid \9; - content: ""; } - -.dropup .dropdown-menu, -.navbar-fixed-bottom .dropdown .dropdown-menu { - top: auto; - bottom: 100%; - margin-bottom: 2px; } - -@media (min-width: 768px) { - .navbar-right .dropdown-menu { - right: 0; - left: auto; } - .navbar-right .dropdown-menu-left { - left: 0; - right: auto; } } - -.btn-group, -.btn-group-vertical { - position: relative; - display: inline-block; - vertical-align: middle; } - .btn-group > .btn, - .btn-group-vertical > .btn { - position: relative; - float: left; } - .btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active, - .btn-group-vertical > .btn:hover, - .btn-group-vertical > .btn:focus, - .btn-group-vertical > .btn:active, - .btn-group-vertical > .btn.active { - z-index: 2; } - -.btn-group .btn + .btn, -.btn-group .btn + .btn-group, -.btn-group .btn-group + .btn, -.btn-group .btn-group + .btn-group { - margin-left: -1px; } - -.btn-toolbar { - margin-left: -5px; } - .btn-toolbar:before, .btn-toolbar:after { - content: " "; - display: table; } - .btn-toolbar:after { - clear: both; } - .btn-toolbar .btn, - .btn-toolbar .btn-group, - .btn-toolbar .input-group { - float: left; } - .btn-toolbar > .btn, - .btn-toolbar > .btn-group, - .btn-toolbar > .input-group { - margin-left: 5px; } - -.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { - border-radius: 0; } - -.btn-group > .btn:first-child { - margin-left: 0; } - .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { - border-bottom-right-radius: 0; - border-top-right-radius: 0; } - -.btn-group > .btn:last-child:not(:first-child), -.btn-group > .dropdown-toggle:not(:first-child) { - border-bottom-left-radius: 0; - border-top-left-radius: 0; } - -.btn-group > .btn-group { - float: left; } - -.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { - border-radius: 0; } - -.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, -.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { - border-bottom-right-radius: 0; - border-top-right-radius: 0; } - -.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { - border-bottom-left-radius: 0; - border-top-left-radius: 0; } - -.btn-group .dropdown-toggle:active, -.btn-group.open .dropdown-toggle { - outline: 0; } - -.btn-group > .btn + .dropdown-toggle { - padding-left: 8px; - padding-right: 8px; } - -.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle { - padding-left: 12px; - padding-right: 12px; } - -.btn-group.open .dropdown-toggle { - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); } - .btn-group.open .dropdown-toggle.btn-link { - -webkit-box-shadow: none; - box-shadow: none; } - -.btn .caret { - margin-left: 0; } - -.btn-lg .caret, .btn-group-lg > .btn .caret { - border-width: 5px 5px 0; - border-bottom-width: 0; } - -.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret { - border-width: 0 5px 5px; } - -.btn-group-vertical > .btn, -.btn-group-vertical > .btn-group, -.btn-group-vertical > .btn-group > .btn { - display: block; - float: none; - width: 100%; - max-width: 100%; } - -.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after { - content: " "; - display: table; } - -.btn-group-vertical > .btn-group:after { - clear: both; } - -.btn-group-vertical > .btn-group > .btn { - float: none; } - -.btn-group-vertical > .btn + .btn, -.btn-group-vertical > .btn + .btn-group, -.btn-group-vertical > .btn-group + .btn, -.btn-group-vertical > .btn-group + .btn-group { - margin-top: -1px; - margin-left: 0; } - -.btn-group-vertical > .btn:not(:first-child):not(:last-child) { - border-radius: 0; } - -.btn-group-vertical > .btn:first-child:not(:last-child) { - border-top-right-radius: 3px; - border-top-left-radius: 3px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; } - -.btn-group-vertical > .btn:last-child:not(:first-child) { - border-top-right-radius: 0; - border-top-left-radius: 0; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; } - -.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { - border-radius: 0; } - -.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, -.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; } - -.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { - border-top-right-radius: 0; - border-top-left-radius: 0; } - -.btn-group-justified { - display: table; - width: 100%; - table-layout: fixed; - border-collapse: separate; } - .btn-group-justified > .btn, - .btn-group-justified > .btn-group { - float: none; - display: table-cell; - width: 1%; } - .btn-group-justified > .btn-group .btn { - width: 100%; } - .btn-group-justified > .btn-group .dropdown-menu { - left: auto; } - -[data-toggle="buttons"] > .btn input[type="radio"], -[data-toggle="buttons"] > .btn input[type="checkbox"], -[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], -[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { - position: absolute; - clip: rect(0, 0, 0, 0); - pointer-events: none; } - -.input-group { - position: relative; - display: table; - border-collapse: separate; } - .input-group[class*="col-"] { - float: none; - padding-left: 0; - padding-right: 0; } - .input-group .form-control { - position: relative; - z-index: 2; - float: left; - width: 100%; - margin-bottom: 0; } - .input-group .form-control:focus { - z-index: 3; } - -.input-group-addon, -.input-group-btn, -.input-group .form-control { - display: table-cell; } - .input-group-addon:not(:first-child):not(:last-child), - .input-group-btn:not(:first-child):not(:last-child), - .input-group .form-control:not(:first-child):not(:last-child) { - border-radius: 0; } - -.input-group-addon, -.input-group-btn { - width: 1%; - white-space: nowrap; - vertical-align: middle; } - -.input-group-addon { - padding: 6px 16px; - font-size: 15px; - font-weight: normal; - line-height: 1; - color: #666; - text-align: center; - background-color: transparent; - border: 1px solid transparent; - border-radius: 3px; } - .input-group-addon.input-sm, - .input-group-sm > .input-group-addon, - .input-group-sm > .input-group-btn > .input-group-addon.btn { - padding: 5px 10px; - font-size: 13px; - border-radius: 3px; } - .input-group-addon.input-lg, - .input-group-lg > .input-group-addon, - .input-group-lg > .input-group-btn > .input-group-addon.btn { - padding: 10px 16px; - font-size: 19px; - border-radius: 3px; } - .input-group-addon input[type="radio"], - .input-group-addon input[type="checkbox"] { - margin-top: 0; } - -.input-group .form-control:first-child, -.input-group-addon:first-child, -.input-group-btn:first-child > .btn, -.input-group-btn:first-child > .btn-group > .btn, -.input-group-btn:first-child > .dropdown-toggle, -.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), -.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { - border-bottom-right-radius: 0; - border-top-right-radius: 0; } - -.input-group-addon:first-child { - border-right: 0; } - -.input-group .form-control:last-child, -.input-group-addon:last-child, -.input-group-btn:last-child > .btn, -.input-group-btn:last-child > .btn-group > .btn, -.input-group-btn:last-child > .dropdown-toggle, -.input-group-btn:first-child > .btn:not(:first-child), -.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { - border-bottom-left-radius: 0; - border-top-left-radius: 0; } - -.input-group-addon:last-child { - border-left: 0; } - -.input-group-btn { - position: relative; - font-size: 0; - white-space: nowrap; } - .input-group-btn > .btn { - position: relative; } - .input-group-btn > .btn + .btn { - margin-left: -1px; } - .input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active { - z-index: 2; } - .input-group-btn:first-child > .btn, - .input-group-btn:first-child > .btn-group { - margin-right: -1px; } - .input-group-btn:last-child > .btn, - .input-group-btn:last-child > .btn-group { - z-index: 2; - margin-left: -1px; } - -.nav { - margin-bottom: 0; - padding-left: 0; - list-style: none; } - .nav:before, .nav:after { - content: " "; - display: table; } - .nav:after { - clear: both; } - .nav > li { - position: relative; - display: block; } - .nav > li > a { - position: relative; - display: block; - padding: 10px 15px; } - .nav > li > a:hover, .nav > li > a:focus { - text-decoration: none; - background-color: #eeeeee; } - .nav > li.disabled > a { - color: #bbb; } - .nav > li.disabled > a:hover, .nav > li.disabled > a:focus { - color: #bbb; - text-decoration: none; - background-color: transparent; - cursor: not-allowed; } - .nav .open > a, .nav .open > a:hover, .nav .open > a:focus { - background-color: #eeeeee; - border-color: #5a9ddb; } - .nav .nav-divider { - height: 1px; - margin: 12.5px 0; - overflow: hidden; - background-color: #e5e5e5; } - .nav > li > a > img { - max-width: none; } - -.nav-tabs { - border-bottom: 1px solid transparent; } - .nav-tabs > li { - float: left; - margin-bottom: -1px; } - .nav-tabs > li > a { - margin-right: 2px; - line-height: 1.846; - border: 1px solid transparent; - border-radius: 3px 3px 0 0; } - .nav-tabs > li > a:hover { - border-color: #eeeeee #eeeeee transparent; } - .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus { - color: #666; - background-color: transparent; - border: 1px solid transparent; - border-bottom-color: transparent; - cursor: default; } - -.nav-pills > li { - float: left; } - .nav-pills > li > a { - border-radius: 3px; } - .nav-pills > li + li { - margin-left: 2px; } - .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus { - color: #fff; - background-color: #5a9ddb; } - -.nav-stacked > li { - float: none; } - .nav-stacked > li + li { - margin-top: 2px; - margin-left: 0; } - -.nav-justified, .nav-tabs.nav-justified { - width: 100%; } - .nav-justified > li, .nav-tabs.nav-justified > li { - float: none; } - .nav-justified > li > a, .nav-tabs.nav-justified > li > a { - text-align: center; - margin-bottom: 5px; } - .nav-justified > .dropdown .dropdown-menu { - top: auto; - left: auto; } - @media (min-width: 768px) { - .nav-justified > li, .nav-tabs.nav-justified > li { - display: table-cell; - width: 1%; } - .nav-justified > li > a, .nav-tabs.nav-justified > li > a { - margin-bottom: 0; } } - -.nav-tabs-justified, .nav-tabs.nav-justified { - border-bottom: 0; } - .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a { - margin-right: 0; - border-radius: 3px; } - .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a, - .nav-tabs-justified > .active > a:hover, - .nav-tabs.nav-justified > .active > a:hover, - .nav-tabs-justified > .active > a:focus, - .nav-tabs.nav-justified > .active > a:focus { - border: 1px solid transparent; } - @media (min-width: 768px) { - .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a { - border-bottom: 1px solid transparent; - border-radius: 3px 3px 0 0; } - .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a, - .nav-tabs-justified > .active > a:hover, - .nav-tabs.nav-justified > .active > a:hover, - .nav-tabs-justified > .active > a:focus, - .nav-tabs.nav-justified > .active > a:focus { - border-bottom-color: #fff; } } - -.tab-content > .tab-pane { - display: none; } - -.tab-content > .active { - display: block; } - -.nav-tabs .dropdown-menu { - margin-top: -1px; - border-top-right-radius: 0; - border-top-left-radius: 0; } - -.navbar { - position: relative; - min-height: 110px; - margin-bottom: 27px; - border: 1px solid transparent; } - .navbar:before, .navbar:after { - content: " "; - display: table; } - .navbar:after { - clear: both; } - @media (min-width: 768px) { - .navbar { - border-radius: 3px; } } - -.navbar-header:before, .navbar-header:after { - content: " "; - display: table; } - -.navbar-header:after { - clear: both; } - -@media (min-width: 768px) { - .navbar-header { - float: left; } } - -.navbar-collapse { - overflow-x: visible; - padding-right: 15px; - padding-left: 15px; - border-top: 1px solid transparent; - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); - -webkit-overflow-scrolling: touch; } - .navbar-collapse:before, .navbar-collapse:after { - content: " "; - display: table; } - .navbar-collapse:after { - clear: both; } - .navbar-collapse.in { - overflow-y: auto; } - @media (min-width: 768px) { - .navbar-collapse { - width: auto; - border-top: 0; - box-shadow: none; } - .navbar-collapse.collapse { - display: block !important; - height: auto !important; - padding-bottom: 0; - overflow: visible !important; } - .navbar-collapse.in { - overflow-y: visible; } - .navbar-fixed-top .navbar-collapse, - .navbar-static-top .navbar-collapse, - .navbar-fixed-bottom .navbar-collapse { - padding-left: 0; - padding-right: 0; } } - -.navbar-fixed-top .navbar-collapse, -.navbar-fixed-bottom .navbar-collapse { - max-height: 340px; } - @media (max-device-width: 480px) and (orientation: landscape) { - .navbar-fixed-top .navbar-collapse, - .navbar-fixed-bottom .navbar-collapse { - max-height: 200px; } } - -.container > .navbar-header, -.container > .navbar-collapse, -.container-fluid > .navbar-header, -.container-fluid > .navbar-collapse { - margin-right: -15px; - margin-left: -15px; } - @media (min-width: 768px) { - .container > .navbar-header, - .container > .navbar-collapse, - .container-fluid > .navbar-header, - .container-fluid > .navbar-collapse { - margin-right: 0; - margin-left: 0; } } - -.navbar-static-top { - z-index: 1000; - border-width: 0 0 1px; } - @media (min-width: 768px) { - .navbar-static-top { - border-radius: 0; } } - -.navbar-fixed-top, -.navbar-fixed-bottom { - position: fixed; - right: 0; - left: 0; - z-index: 1030; } - @media (min-width: 768px) { - .navbar-fixed-top, - .navbar-fixed-bottom { - border-radius: 0; } } - -.navbar-fixed-top { - top: 0; - border-width: 0 0 1px; } - -.navbar-fixed-bottom { - bottom: 0; - margin-bottom: 0; - border-width: 1px 0 0; } - -.navbar-brand { - float: left; - padding: 41.5px 15px; - font-size: 19px; - line-height: 27px; - height: 110px; } - .navbar-brand:hover, .navbar-brand:focus { - text-decoration: none; } - .navbar-brand > img { - display: block; } - @media (min-width: 768px) { - .navbar > .container .navbar-brand, - .navbar > .container-fluid .navbar-brand { - margin-left: -15px; } } - -.navbar-toggle { - position: relative; - float: right; - margin-right: 15px; - padding: 9px 10px; - margin-top: 38px; - margin-bottom: 38px; - background-color: transparent; - background-image: none; - border: 1px solid transparent; - border-radius: 3px; } - .navbar-toggle:focus { - outline: 0; } - .navbar-toggle .icon-bar { - display: block; - width: 22px; - height: 2px; - border-radius: 1px; } - .navbar-toggle .icon-bar + .icon-bar { - margin-top: 4px; } - @media (min-width: 768px) { - .navbar-toggle { - display: none; } } - -.navbar-nav { - margin: 20.75px -15px; } - .navbar-nav > li > a { - padding-top: 10px; - padding-bottom: 10px; - line-height: 27px; } - @media (max-width: 767px) { - .navbar-nav .open .dropdown-menu { - position: static; - float: none; - width: auto; - margin-top: 0; - background-color: transparent; - border: 0; - box-shadow: none; } - .navbar-nav .open .dropdown-menu > li > a, - .navbar-nav .open .dropdown-menu .dropdown-header { - padding: 5px 15px 5px 25px; } - .navbar-nav .open .dropdown-menu > li > a { - line-height: 27px; } - .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus { - background-image: none; } } - @media (min-width: 768px) { - .navbar-nav { - float: left; - margin: 0; } - .navbar-nav > li { - float: left; } - .navbar-nav > li > a { - padding-top: 41.5px; - padding-bottom: 41.5px; } } - -.navbar-form { - margin-left: -15px; - margin-right: -15px; - padding: 10px 15px; - border-top: 1px solid transparent; - border-bottom: 1px solid transparent; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); - margin-top: 34.5px; - margin-bottom: 34.5px; } - @media (min-width: 768px) { - .navbar-form .form-group { - display: inline-block; - margin-bottom: 0; - vertical-align: middle; } - .navbar-form .form-control { - display: inline-block; - width: auto; - vertical-align: middle; } - .navbar-form .form-control-static { - display: inline-block; } - .navbar-form .input-group { - display: inline-table; - vertical-align: middle; } - .navbar-form .input-group .input-group-addon, - .navbar-form .input-group .input-group-btn, - .navbar-form .input-group .form-control { - width: auto; } - .navbar-form .input-group > .form-control { - width: 100%; } - .navbar-form .control-label { - margin-bottom: 0; - vertical-align: middle; } - .navbar-form .radio, - .navbar-form .checkbox { - display: inline-block; - margin-top: 0; - margin-bottom: 0; - vertical-align: middle; } - .navbar-form .radio label, - .navbar-form .checkbox label { - padding-left: 0; } - .navbar-form .radio input[type="radio"], - .navbar-form .checkbox input[type="checkbox"] { - position: relative; - margin-left: 0; } - .navbar-form .has-feedback .form-control-feedback { - top: 0; } } - @media (max-width: 767px) { - .navbar-form .form-group { - margin-bottom: 5px; } - .navbar-form .form-group:last-child { - margin-bottom: 0; } } - @media (min-width: 768px) { - .navbar-form { - width: auto; - border: 0; - margin-left: 0; - margin-right: 0; - padding-top: 0; - padding-bottom: 0; - -webkit-box-shadow: none; - box-shadow: none; } } - -.navbar-nav > li > .dropdown-menu { - margin-top: 0; - border-top-right-radius: 0; - border-top-left-radius: 0; } - -.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { - margin-bottom: 0; - border-top-right-radius: 3px; - border-top-left-radius: 3px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; } - -.navbar-btn { - margin-top: 34.5px; - margin-bottom: 34.5px; } - .navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn { - margin-top: 39.5px; - margin-bottom: 39.5px; } - .navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn { - margin-top: 44px; - margin-bottom: 44px; } - -.navbar-text { - margin-top: 41.5px; - margin-bottom: 41.5px; } - @media (min-width: 768px) { - .navbar-text { - float: left; - margin-left: 15px; - margin-right: 15px; } } - -@media (min-width: 768px) { - .navbar-left { - float: left !important; } - .navbar-right { - float: right !important; - margin-right: -15px; } - .navbar-right ~ .navbar-right { - margin-right: 0; } } - -.navbar-default { - background-color: #fff; - border-color: transparent; } - .navbar-default .navbar-brand { - color: #444; } - .navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus { - color: #222; - background-color: transparent; } - .navbar-default .navbar-text { - color: #bbb; } - .navbar-default .navbar-nav > li > a { - color: #444; } - .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus { - color: #222; - background-color: transparent; } - .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus { - color: #212121; - background-color: #fcfcfc; } - .navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus { - color: #ccc; - background-color: transparent; } - .navbar-default .navbar-toggle { - border-color: transparent; } - .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus { - background-color: transparent; } - .navbar-default .navbar-toggle .icon-bar { - background-color: rgba(0, 0, 0, 0.5); } - .navbar-default .navbar-collapse, - .navbar-default .navbar-form { - border-color: transparent; } - .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus { - background-color: #fcfcfc; - color: #212121; } - @media (max-width: 767px) { - .navbar-default .navbar-nav .open .dropdown-menu > li > a { - color: #444; } - .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { - color: #222; - background-color: transparent; } - .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #212121; - background-color: #fcfcfc; } - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { - color: #ccc; - background-color: transparent; } } - .navbar-default .navbar-link { - color: #444; } - .navbar-default .navbar-link:hover { - color: #222; } - .navbar-default .btn-link { - color: #444; } - .navbar-default .btn-link:hover, .navbar-default .btn-link:focus { - color: #222; } - .navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus, - fieldset[disabled] .navbar-default .btn-link:hover, - fieldset[disabled] .navbar-default .btn-link:focus { - color: #ccc; } - -.navbar-inverse { - background-color: #5a9ddb; - border-color: transparent; } - .navbar-inverse .navbar-brand { - color: #d8e8f6; } - .navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus { - color: #fff; - background-color: transparent; } - .navbar-inverse .navbar-text { - color: #bbb; } - .navbar-inverse .navbar-nav > li > a { - color: #d8e8f6; } - .navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus { - color: #fff; - background-color: transparent; } - .navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus { - color: #fff; - background-color: #3084d2; } - .navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus { - color: #444; - background-color: transparent; } - .navbar-inverse .navbar-toggle { - border-color: transparent; } - .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus { - background-color: transparent; } - .navbar-inverse .navbar-toggle .icon-bar { - background-color: rgba(0, 0, 0, 0.5); } - .navbar-inverse .navbar-collapse, - .navbar-inverse .navbar-form { - border-color: #3d8cd5; } - .navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus { - background-color: #3084d2; - color: #fff; } - @media (max-width: 767px) { - .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { - border-color: transparent; } - .navbar-inverse .navbar-nav .open .dropdown-menu .divider { - background-color: transparent; } - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { - color: #d8e8f6; } - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { - color: #fff; - background-color: transparent; } - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #fff; - background-color: #3084d2; } - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { - color: #444; - background-color: transparent; } } - .navbar-inverse .navbar-link { - color: #d8e8f6; } - .navbar-inverse .navbar-link:hover { - color: #fff; } - .navbar-inverse .btn-link { - color: #d8e8f6; } - .navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus { - color: #fff; } - .navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus, - fieldset[disabled] .navbar-inverse .btn-link:hover, - fieldset[disabled] .navbar-inverse .btn-link:focus { - color: #444; } - -.breadcrumb { - padding: 8px 15px; - margin-bottom: 27px; - list-style: none; - background-color: #f5f5f5; - border-radius: 3px; } - .breadcrumb > li { - display: inline-block; } - .breadcrumb > li + li:before { - content: "/ "; - padding: 0 5px; - color: #ccc; } - .breadcrumb > .active { - color: #bbb; } - -.pagination { - display: inline-block; - padding-left: 0; - margin: 27px 0; - border-radius: 3px; } - .pagination > li { - display: inline; } - .pagination > li > a, - .pagination > li > span { - position: relative; - float: left; - padding: 6px 16px; - line-height: 1.846; - text-decoration: none; - color: #5a9ddb; - background-color: #fff; - border: 1px solid #ddd; - margin-left: -1px; } - .pagination > li:first-child > a, - .pagination > li:first-child > span { - margin-left: 0; - border-bottom-left-radius: 3px; - border-top-left-radius: 3px; } - .pagination > li:last-child > a, - .pagination > li:last-child > span { - border-bottom-right-radius: 3px; - border-top-right-radius: 3px; } - .pagination > li > a:hover, .pagination > li > a:focus, - .pagination > li > span:hover, - .pagination > li > span:focus { - z-index: 2; - color: #2a77bf; - background-color: #eeeeee; - border-color: #ddd; } - .pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus, - .pagination > .active > span, - .pagination > .active > span:hover, - .pagination > .active > span:focus { - z-index: 3; - color: #fff; - background-color: #5a9ddb; - border-color: #5a9ddb; - cursor: default; } - .pagination > .disabled > span, - .pagination > .disabled > span:hover, - .pagination > .disabled > span:focus, - .pagination > .disabled > a, - .pagination > .disabled > a:hover, - .pagination > .disabled > a:focus { - color: #bbb; - background-color: #fff; - border-color: #ddd; - cursor: not-allowed; } - -.pagination-lg > li > a, -.pagination-lg > li > span { - padding: 10px 16px; - font-size: 19px; - line-height: 1.33333; } - -.pagination-lg > li:first-child > a, -.pagination-lg > li:first-child > span { - border-bottom-left-radius: 3px; - border-top-left-radius: 3px; } - -.pagination-lg > li:last-child > a, -.pagination-lg > li:last-child > span { - border-bottom-right-radius: 3px; - border-top-right-radius: 3px; } - -.pagination-sm > li > a, -.pagination-sm > li > span { - padding: 5px 10px; - font-size: 13px; - line-height: 1.5; } - -.pagination-sm > li:first-child > a, -.pagination-sm > li:first-child > span { - border-bottom-left-radius: 3px; - border-top-left-radius: 3px; } - -.pagination-sm > li:last-child > a, -.pagination-sm > li:last-child > span { - border-bottom-right-radius: 3px; - border-top-right-radius: 3px; } - -.pager { - padding-left: 0; - margin: 27px 0; - list-style: none; - text-align: center; } - .pager:before, .pager:after { - content: " "; - display: table; } - .pager:after { - clear: both; } - .pager li { - display: inline; } - .pager li > a, - .pager li > span { - display: inline-block; - padding: 5px 14px; - background-color: #fff; - border: 1px solid #ddd; - border-radius: 15px; } - .pager li > a:hover, - .pager li > a:focus { - text-decoration: none; - background-color: #eeeeee; } - .pager .next > a, - .pager .next > span { - float: right; } - .pager .previous > a, - .pager .previous > span { - float: left; } - .pager .disabled > a, - .pager .disabled > a:hover, - .pager .disabled > a:focus, - .pager .disabled > span { - color: #bbb; - background-color: #fff; - cursor: not-allowed; } - -.label { - display: inline; - padding: .2em .6em .3em; - font-size: 75%; - font-weight: bold; - line-height: 1; - color: #fff; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: .25em; } - .label:empty { - display: none; } - .btn .label { - position: relative; - top: -1px; } - -a.label:hover, a.label:focus { - color: #fff; - text-decoration: none; - cursor: pointer; } - -.label-default { - background-color: #bbb; } - .label-default[href]:hover, .label-default[href]:focus { - background-color: #a2a2a2; } - -.label-primary { - background-color: #5a9ddb; } - .label-primary[href]:hover, .label-primary[href]:focus { - background-color: #3084d2; } - -.label-success { - background-color: #4CAF50; } - .label-success[href]:hover, .label-success[href]:focus { - background-color: #3d8b40; } - -.label-info { - background-color: #9C27B0; } - .label-info[href]:hover, .label-info[href]:focus { - background-color: #771e86; } - -.label-warning { - background-color: #ff9800; } - .label-warning[href]:hover, .label-warning[href]:focus { - background-color: #cc7a00; } - -.label-danger { - background-color: #e51c23; } - .label-danger[href]:hover, .label-danger[href]:focus { - background-color: #b9151b; } - -.badge { - display: inline-block; - min-width: 10px; - padding: 3px 7px; - font-size: 13px; - font-weight: normal; - color: #fff; - line-height: 1; - vertical-align: middle; - white-space: nowrap; - text-align: center; - background-color: #bbb; - border-radius: 10px; } - .badge:empty { - display: none; } - .btn .badge { - position: relative; - top: -1px; } - .btn-xs .badge, .btn-group-xs > .btn .badge, - .btn-group-xs > .btn .badge { - top: 0; - padding: 1px 5px; } - .list-group-item.active > .badge, - .nav-pills > .active > a > .badge { - color: #5a9ddb; - background-color: #fff; } - .list-group-item > .badge { - float: right; } - .list-group-item > .badge + .badge { - margin-right: 5px; } - .nav-pills > li > a > .badge { - margin-left: 3px; } - -a.badge:hover, a.badge:focus { - color: #fff; - text-decoration: none; - cursor: pointer; } - -.jumbotron { - padding-top: 30px; - padding-bottom: 30px; - margin-bottom: 30px; - color: inherit; - background-color: #f5f5f5; } - .jumbotron h1, - .jumbotron .h1 { - color: #444; } - .jumbotron p { - margin-bottom: 15px; - font-size: 23px; - font-weight: 200; } - .jumbotron > hr { - border-top-color: gainsboro; } - .container .jumbotron, - .container-fluid .jumbotron { - border-radius: 3px; - padding-left: 15px; - padding-right: 15px; } - .jumbotron .container { - max-width: 100%; } - @media screen and (min-width: 768px) { - .jumbotron { - padding-top: 48px; - padding-bottom: 48px; } - .container .jumbotron, - .container-fluid .jumbotron { - padding-left: 60px; - padding-right: 60px; } - .jumbotron h1, - .jumbotron .h1 { - font-size: 68px; } } - -.thumbnail { - display: block; - padding: 4px; - margin-bottom: 27px; - line-height: 1.846; - background-color: #fff; - border: 1px solid #ddd; - border-radius: 3px; - -webkit-transition: border 0.2s ease-in-out; - -o-transition: border 0.2s ease-in-out; - transition: border 0.2s ease-in-out; } - .thumbnail > img, - .thumbnail a > img { - display: block; - max-width: 100%; - height: auto; - margin-left: auto; - margin-right: auto; } - .thumbnail .caption { - padding: 9px; - color: #444; } - -a.thumbnail:hover, -a.thumbnail:focus, -a.thumbnail.active { - border-color: #5a9ddb; } - -.alert { - padding: 15px; - margin-bottom: 27px; - border: 1px solid transparent; - border-radius: 3px; } - .alert h4 { - margin-top: 0; - color: inherit; } - .alert .alert-link { - font-weight: bold; } - .alert > p, - .alert > ul { - margin-bottom: 0; } - .alert > p + p { - margin-top: 5px; } - -.alert-dismissable, -.alert-dismissible { - padding-right: 35px; } - .alert-dismissable .close, - .alert-dismissible .close { - position: relative; - top: -2px; - right: -21px; - color: inherit; } - -.alert-success { - background-color: #dff0d8; - border-color: #d6e9c6; - color: #4CAF50; } - .alert-success hr { - border-top-color: #c9e2b3; } - .alert-success .alert-link { - color: #3d8b40; } - -.alert-info { - background-color: #e1bee7; - border-color: #cba4dd; - color: #9C27B0; } - .alert-info hr { - border-top-color: #c191d6; } - .alert-info .alert-link { - color: #771e86; } - -.alert-warning { - background-color: #ffe0b2; - border-color: #ffc599; - color: #ff9800; } - .alert-warning hr { - border-top-color: #ffb67f; } - .alert-warning .alert-link { - color: #cc7a00; } - -.alert-danger { - background-color: #f9bdbb; - border-color: #f7a4af; - color: #e51c23; } - .alert-danger hr { - border-top-color: #f58c9a; } - .alert-danger .alert-link { - color: #b9151b; } - -@-webkit-keyframes progress-bar-stripes { - from { - background-position: 40px 0; } - to { - background-position: 0 0; } } - -@keyframes progress-bar-stripes { - from { - background-position: 40px 0; } - to { - background-position: 0 0; } } - -.progress { - overflow: hidden; - height: 27px; - margin-bottom: 27px; - background-color: #f5f5f5; - border-radius: 3px; - -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); - box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); } - -.progress-bar { - float: left; - width: 0%; - height: 100%; - font-size: 13px; - line-height: 27px; - color: #fff; - text-align: center; - background-color: #5a9ddb; - -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); - -webkit-transition: width 0.6s ease; - -o-transition: width 0.6s ease; - transition: width 0.6s ease; } - -.progress-striped .progress-bar, -.progress-bar-striped { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-size: 40px 40px; } - -.progress.active .progress-bar, -.progress-bar.active { - -webkit-animation: progress-bar-stripes 2s linear infinite; - -o-animation: progress-bar-stripes 2s linear infinite; - animation: progress-bar-stripes 2s linear infinite; } - -.progress-bar-success { - background-color: #4CAF50; } - .progress-striped .progress-bar-success { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } - -.progress-bar-info { - background-color: #9C27B0; } - .progress-striped .progress-bar-info { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } - -.progress-bar-warning { - background-color: #ff9800; } - .progress-striped .progress-bar-warning { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } - -.progress-bar-danger { - background-color: #e51c23; } - .progress-striped .progress-bar-danger { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } - -.media { - margin-top: 15px; } - .media:first-child { - margin-top: 0; } - -.media, -.media-body { - zoom: 1; - overflow: hidden; } - -.media-body { - width: 10000px; } - -.media-object { - display: block; } - .media-object.img-thumbnail { - max-width: none; } - -.media-right, -.media > .pull-right { - padding-left: 10px; } - -.media-left, -.media > .pull-left { - padding-right: 10px; } - -.media-left, -.media-right, -.media-body { - display: table-cell; - vertical-align: top; } - -.media-middle { - vertical-align: middle; } - -.media-bottom { - vertical-align: bottom; } - -.media-heading { - margin-top: 0; - margin-bottom: 5px; } - -.media-list { - padding-left: 0; - list-style: none; } - -.list-group { - margin-bottom: 20px; - padding-left: 0; } - -.list-group-item { - position: relative; - display: block; - padding: 10px 15px; - margin-bottom: -1px; - background-color: #fff; - border: 1px solid #ddd; } - .list-group-item:first-child { - border-top-right-radius: 3px; - border-top-left-radius: 3px; } - .list-group-item:last-child { - margin-bottom: 0; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; } - -a.list-group-item, -button.list-group-item { - color: #555; } - a.list-group-item .list-group-item-heading, - button.list-group-item .list-group-item-heading { - color: #333; } - a.list-group-item:hover, a.list-group-item:focus, - button.list-group-item:hover, - button.list-group-item:focus { - text-decoration: none; - color: #555; - background-color: #f5f5f5; } - -button.list-group-item { - width: 100%; - text-align: left; } - -.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus { - background-color: #eeeeee; - color: #bbb; - cursor: not-allowed; } - .list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading { - color: inherit; } - .list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text { - color: #bbb; } - -.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus { - z-index: 2; - color: #fff; - background-color: #5a9ddb; - border-color: #5a9ddb; } - .list-group-item.active .list-group-item-heading, - .list-group-item.active .list-group-item-heading > small, - .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading, - .list-group-item.active:hover .list-group-item-heading > small, - .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading, - .list-group-item.active:focus .list-group-item-heading > small, - .list-group-item.active:focus .list-group-item-heading > .small { - color: inherit; } - .list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text { - color: white; } - -.list-group-item-success { - color: #4CAF50; - background-color: #dff0d8; } - -a.list-group-item-success, -button.list-group-item-success { - color: #4CAF50; } - a.list-group-item-success .list-group-item-heading, - button.list-group-item-success .list-group-item-heading { - color: inherit; } - a.list-group-item-success:hover, a.list-group-item-success:focus, - button.list-group-item-success:hover, - button.list-group-item-success:focus { - color: #4CAF50; - background-color: #d0e9c6; } - a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus, - button.list-group-item-success.active, - button.list-group-item-success.active:hover, - button.list-group-item-success.active:focus { - color: #fff; - background-color: #4CAF50; - border-color: #4CAF50; } - -.list-group-item-info { - color: #9C27B0; - background-color: #e1bee7; } - -a.list-group-item-info, -button.list-group-item-info { - color: #9C27B0; } - a.list-group-item-info .list-group-item-heading, - button.list-group-item-info .list-group-item-heading { - color: inherit; } - a.list-group-item-info:hover, a.list-group-item-info:focus, - button.list-group-item-info:hover, - button.list-group-item-info:focus { - color: #9C27B0; - background-color: #d8abe0; } - a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus, - button.list-group-item-info.active, - button.list-group-item-info.active:hover, - button.list-group-item-info.active:focus { - color: #fff; - background-color: #9C27B0; - border-color: #9C27B0; } - -.list-group-item-warning { - color: #ff9800; - background-color: #ffe0b2; } - -a.list-group-item-warning, -button.list-group-item-warning { - color: #ff9800; } - a.list-group-item-warning .list-group-item-heading, - button.list-group-item-warning .list-group-item-heading { - color: inherit; } - a.list-group-item-warning:hover, a.list-group-item-warning:focus, - button.list-group-item-warning:hover, - button.list-group-item-warning:focus { - color: #ff9800; - background-color: #ffd699; } - a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus, - button.list-group-item-warning.active, - button.list-group-item-warning.active:hover, - button.list-group-item-warning.active:focus { - color: #fff; - background-color: #ff9800; - border-color: #ff9800; } - -.list-group-item-danger { - color: #e51c23; - background-color: #f9bdbb; } - -a.list-group-item-danger, -button.list-group-item-danger { - color: #e51c23; } - a.list-group-item-danger .list-group-item-heading, - button.list-group-item-danger .list-group-item-heading { - color: inherit; } - a.list-group-item-danger:hover, a.list-group-item-danger:focus, - button.list-group-item-danger:hover, - button.list-group-item-danger:focus { - color: #e51c23; - background-color: #f7a6a4; } - a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus, - button.list-group-item-danger.active, - button.list-group-item-danger.active:hover, - button.list-group-item-danger.active:focus { - color: #fff; - background-color: #e51c23; - border-color: #e51c23; } - -.list-group-item-heading { - margin-top: 0; - margin-bottom: 5px; } - -.list-group-item-text { - margin-bottom: 0; - line-height: 1.3; } - -.panel { - margin-bottom: 27px; - background-color: #fff; - border: 1px solid transparent; - border-radius: 3px; - -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); } - -.panel-body { - padding: 15px; } - .panel-body:before, .panel-body:after { - content: " "; - display: table; } - .panel-body:after { - clear: both; } - -.panel-heading { - padding: 10px 15px; - border-bottom: 1px solid transparent; - border-top-right-radius: 2px; - border-top-left-radius: 2px; } - .panel-heading > .dropdown .dropdown-toggle { - color: inherit; } - -.panel-title { - margin-top: 0; - margin-bottom: 0; - font-size: 17px; - color: inherit; } - .panel-title > a, - .panel-title > small, - .panel-title > .small, - .panel-title > small > a, - .panel-title > .small > a { - color: inherit; } - -.panel-footer { - padding: 10px 15px; - background-color: #f5f5f5; - border-top: 1px solid #ddd; - border-bottom-right-radius: 2px; - border-bottom-left-radius: 2px; } - -.panel > .list-group, -.panel > .panel-collapse > .list-group { - margin-bottom: 0; } - .panel > .list-group .list-group-item, - .panel > .panel-collapse > .list-group .list-group-item { - border-width: 1px 0; - border-radius: 0; } - .panel > .list-group:first-child .list-group-item:first-child, - .panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { - border-top: 0; - border-top-right-radius: 2px; - border-top-left-radius: 2px; } - .panel > .list-group:last-child .list-group-item:last-child, - .panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { - border-bottom: 0; - border-bottom-right-radius: 2px; - border-bottom-left-radius: 2px; } - -.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { - border-top-right-radius: 0; - border-top-left-radius: 0; } - -.panel-heading + .list-group .list-group-item:first-child { - border-top-width: 0; } - -.list-group + .panel-footer { - border-top-width: 0; } - -.panel > .table, -.panel > .table-responsive > .table, -.panel > .panel-collapse > .table { - margin-bottom: 0; } - .panel > .table caption, - .panel > .table-responsive > .table caption, - .panel > .panel-collapse > .table caption { - padding-left: 15px; - padding-right: 15px; } - -.panel > .table:first-child, -.panel > .table-responsive:first-child > .table:first-child { - border-top-right-radius: 2px; - border-top-left-radius: 2px; } - .panel > .table:first-child > thead:first-child > tr:first-child, - .panel > .table:first-child > tbody:first-child > tr:first-child, - .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, - .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { - border-top-left-radius: 2px; - border-top-right-radius: 2px; } - .panel > .table:first-child > thead:first-child > tr:first-child td:first-child, - .panel > .table:first-child > thead:first-child > tr:first-child th:first-child, - .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, - .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, - .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, - .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, - .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, - .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { - border-top-left-radius: 2px; } - .panel > .table:first-child > thead:first-child > tr:first-child td:last-child, - .panel > .table:first-child > thead:first-child > tr:first-child th:last-child, - .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, - .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, - .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, - .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, - .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, - .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { - border-top-right-radius: 2px; } - -.panel > .table:last-child, -.panel > .table-responsive:last-child > .table:last-child { - border-bottom-right-radius: 2px; - border-bottom-left-radius: 2px; } - .panel > .table:last-child > tbody:last-child > tr:last-child, - .panel > .table:last-child > tfoot:last-child > tr:last-child, - .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, - .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { - border-bottom-left-radius: 2px; - border-bottom-right-radius: 2px; } - .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, - .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, - .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, - .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, - .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, - .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, - .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, - .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { - border-bottom-left-radius: 2px; } - .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, - .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, - .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, - .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, - .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, - .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, - .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, - .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { - border-bottom-right-radius: 2px; } - -.panel > .panel-body + .table, -.panel > .panel-body + .table-responsive, -.panel > .table + .panel-body, -.panel > .table-responsive + .panel-body { - border-top: 1px solid #ddd; } - -.panel > .table > tbody:first-child > tr:first-child th, -.panel > .table > tbody:first-child > tr:first-child td { - border-top: 0; } - -.panel > .table-bordered, -.panel > .table-responsive > .table-bordered { - border: 0; } - .panel > .table-bordered > thead > tr > th:first-child, - .panel > .table-bordered > thead > tr > td:first-child, - .panel > .table-bordered > tbody > tr > th:first-child, - .panel > .table-bordered > tbody > tr > td:first-child, - .panel > .table-bordered > tfoot > tr > th:first-child, - .panel > .table-bordered > tfoot > tr > td:first-child, - .panel > .table-responsive > .table-bordered > thead > tr > th:first-child, - .panel > .table-responsive > .table-bordered > thead > tr > td:first-child, - .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, - .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, - .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, - .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { - border-left: 0; } - .panel > .table-bordered > thead > tr > th:last-child, - .panel > .table-bordered > thead > tr > td:last-child, - .panel > .table-bordered > tbody > tr > th:last-child, - .panel > .table-bordered > tbody > tr > td:last-child, - .panel > .table-bordered > tfoot > tr > th:last-child, - .panel > .table-bordered > tfoot > tr > td:last-child, - .panel > .table-responsive > .table-bordered > thead > tr > th:last-child, - .panel > .table-responsive > .table-bordered > thead > tr > td:last-child, - .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, - .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, - .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, - .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { - border-right: 0; } - .panel > .table-bordered > thead > tr:first-child > td, - .panel > .table-bordered > thead > tr:first-child > th, - .panel > .table-bordered > tbody > tr:first-child > td, - .panel > .table-bordered > tbody > tr:first-child > th, - .panel > .table-responsive > .table-bordered > thead > tr:first-child > td, - .panel > .table-responsive > .table-bordered > thead > tr:first-child > th, - .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, - .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { - border-bottom: 0; } - .panel > .table-bordered > tbody > tr:last-child > td, - .panel > .table-bordered > tbody > tr:last-child > th, - .panel > .table-bordered > tfoot > tr:last-child > td, - .panel > .table-bordered > tfoot > tr:last-child > th, - .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, - .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, - .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, - .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { - border-bottom: 0; } - -.panel > .table-responsive { - border: 0; - margin-bottom: 0; } - -.panel-group { - margin-bottom: 27px; } - .panel-group .panel { - margin-bottom: 0; - border-radius: 3px; } - .panel-group .panel + .panel { - margin-top: 5px; } - .panel-group .panel-heading { - border-bottom: 0; } - .panel-group .panel-heading + .panel-collapse > .panel-body, - .panel-group .panel-heading + .panel-collapse > .list-group { - border-top: 1px solid #ddd; } - .panel-group .panel-footer { - border-top: 0; } - .panel-group .panel-footer + .panel-collapse .panel-body { - border-bottom: 1px solid #ddd; } - -.panel-default { - border-color: #ddd; } - .panel-default > .panel-heading { - color: #212121; - background-color: #f5f5f5; - border-color: #ddd; } - .panel-default > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #ddd; } - .panel-default > .panel-heading .badge { - color: #f5f5f5; - background-color: #212121; } - .panel-default > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #ddd; } - -.panel-primary { - border-color: #5a9ddb; } - .panel-primary > .panel-heading { - color: #fff; - background-color: #5a9ddb; - border-color: #5a9ddb; } - .panel-primary > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #5a9ddb; } - .panel-primary > .panel-heading .badge { - color: #5a9ddb; - background-color: #fff; } - .panel-primary > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #5a9ddb; } - -.panel-success { - border-color: #d6e9c6; } - .panel-success > .panel-heading { - color: #fff; - background-color: #4CAF50; - border-color: #d6e9c6; } - .panel-success > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #d6e9c6; } - .panel-success > .panel-heading .badge { - color: #4CAF50; - background-color: #fff; } - .panel-success > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #d6e9c6; } - -.panel-info { - border-color: #cba4dd; } - .panel-info > .panel-heading { - color: #fff; - background-color: #9C27B0; - border-color: #cba4dd; } - .panel-info > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #cba4dd; } - .panel-info > .panel-heading .badge { - color: #9C27B0; - background-color: #fff; } - .panel-info > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #cba4dd; } - -.panel-warning { - border-color: #ffc599; } - .panel-warning > .panel-heading { - color: #fff; - background-color: #ff9800; - border-color: #ffc599; } - .panel-warning > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #ffc599; } - .panel-warning > .panel-heading .badge { - color: #ff9800; - background-color: #fff; } - .panel-warning > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #ffc599; } - -.panel-danger { - border-color: #f7a4af; } - .panel-danger > .panel-heading { - color: #fff; - background-color: #e51c23; - border-color: #f7a4af; } - .panel-danger > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #f7a4af; } - .panel-danger > .panel-heading .badge { - color: #e51c23; - background-color: #fff; } - .panel-danger > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #f7a4af; } - -.embed-responsive { - position: relative; - display: block; - height: 0; - padding: 0; - overflow: hidden; } - .embed-responsive .embed-responsive-item, - .embed-responsive iframe, - .embed-responsive embed, - .embed-responsive object, - .embed-responsive video { - position: absolute; - top: 0; - left: 0; - bottom: 0; - height: 100%; - width: 100%; - border: 0; } - -.embed-responsive-16by9 { - padding-bottom: 56.25%; } - -.embed-responsive-4by3 { - padding-bottom: 75%; } - -.well { - min-height: 20px; - padding: 19px; - margin-bottom: 20px; - background-color: #f5f5f5; - border: 1px solid transparent; - border-radius: 3px; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); } - .well blockquote { - border-color: #ddd; - border-color: rgba(0, 0, 0, 0.15); } - -.well-lg { - padding: 24px; - border-radius: 3px; } - -.well-sm { - padding: 9px; - border-radius: 3px; } - -.close { - float: right; - font-size: 22.5px; - font-weight: normal; - line-height: 1; - color: #000; - text-shadow: none; - opacity: 0.2; - filter: alpha(opacity=20); } - .close:hover, .close:focus { - color: #000; - text-decoration: none; - cursor: pointer; - opacity: 0.5; - filter: alpha(opacity=50); } - -button.close { - padding: 0; - cursor: pointer; - background: transparent; - border: 0; - -webkit-appearance: none; } - -.modal-open { - overflow: hidden; } - -.modal { - display: none; - overflow: hidden; - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1050; - -webkit-overflow-scrolling: touch; - outline: 0; } - .modal.fade .modal-dialog { - -webkit-transform: translate(0, -25%); - -ms-transform: translate(0, -25%); - -o-transform: translate(0, -25%); - transform: translate(0, -25%); - -webkit-transition: -webkit-transform 0.3s ease-out; - -moz-transition: -moz-transform 0.3s ease-out; - -o-transition: -o-transform 0.3s ease-out; - transition: transform 0.3s ease-out; } - .modal.in .modal-dialog { - -webkit-transform: translate(0, 0); - -ms-transform: translate(0, 0); - -o-transform: translate(0, 0); - transform: translate(0, 0); } - -.modal-open .modal { - overflow-x: hidden; - overflow-y: auto; } - -.modal-dialog { - position: relative; - width: auto; - margin: 10px; } - -.modal-content { - position: relative; - background-color: #fff; - border: 1px solid #999; - border: 1px solid transparent; - border-radius: 3px; - -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); - box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); - background-clip: padding-box; - outline: 0; } - -.modal-backdrop { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1040; - background-color: #000; } - .modal-backdrop.fade { - opacity: 0; - filter: alpha(opacity=0); } - .modal-backdrop.in { - opacity: 0.5; - filter: alpha(opacity=50); } - -.modal-header { - padding: 15px; - border-bottom: 1px solid transparent; } - .modal-header:before, .modal-header:after { - content: " "; - display: table; } - .modal-header:after { - clear: both; } - -.modal-header .close { - margin-top: -2px; } - -.modal-title { - margin: 0; - line-height: 1.846; } - -.modal-body { - position: relative; - padding: 15px; } - -.modal-footer { - padding: 15px; - text-align: right; - border-top: 1px solid transparent; } - .modal-footer:before, .modal-footer:after { - content: " "; - display: table; } - .modal-footer:after { - clear: both; } - .modal-footer .btn + .btn { - margin-left: 5px; - margin-bottom: 0; } - .modal-footer .btn-group .btn + .btn { - margin-left: -1px; } - .modal-footer .btn-block + .btn-block { - margin-left: 0; } - -.modal-scrollbar-measure { - position: absolute; - top: -9999px; - width: 50px; - height: 50px; - overflow: scroll; } - -@media (min-width: 768px) { - .modal-dialog { - width: 600px; - margin: 30px auto; } - .modal-content { - -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); - box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); } - .modal-sm { - width: 300px; } } - -@media (min-width: 992px) { - .modal-lg { - width: 900px; } } - -.tooltip { - position: absolute; - z-index: 1070; - display: block; - font-family: "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif; - font-style: normal; - font-weight: normal; - letter-spacing: normal; - line-break: auto; - line-height: 1.846; - text-align: left; - text-align: start; - text-decoration: none; - text-shadow: none; - text-transform: none; - white-space: normal; - word-break: normal; - word-spacing: normal; - word-wrap: normal; - font-size: 13px; - opacity: 0; - filter: alpha(opacity=0); } - .tooltip.in { - opacity: 0.9; - filter: alpha(opacity=90); } - .tooltip.top { - margin-top: -3px; - padding: 5px 0; } - .tooltip.right { - margin-left: 3px; - padding: 0 5px; } - .tooltip.bottom { - margin-top: 3px; - padding: 5px 0; } - .tooltip.left { - margin-left: -3px; - padding: 0 5px; } - -.tooltip-inner { - max-width: 200px; - padding: 3px 8px; - color: #fff; - text-align: center; - background-color: #727272; - border-radius: 3px; } - -.tooltip-arrow { - position: absolute; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; } - -.tooltip.top .tooltip-arrow { - bottom: 0; - left: 50%; - margin-left: -5px; - border-width: 5px 5px 0; - border-top-color: #727272; } - -.tooltip.top-left .tooltip-arrow { - bottom: 0; - right: 5px; - margin-bottom: -5px; - border-width: 5px 5px 0; - border-top-color: #727272; } - -.tooltip.top-right .tooltip-arrow { - bottom: 0; - left: 5px; - margin-bottom: -5px; - border-width: 5px 5px 0; - border-top-color: #727272; } - -.tooltip.right .tooltip-arrow { - top: 50%; - left: 0; - margin-top: -5px; - border-width: 5px 5px 5px 0; - border-right-color: #727272; } - -.tooltip.left .tooltip-arrow { - top: 50%; - right: 0; - margin-top: -5px; - border-width: 5px 0 5px 5px; - border-left-color: #727272; } - -.tooltip.bottom .tooltip-arrow { - top: 0; - left: 50%; - margin-left: -5px; - border-width: 0 5px 5px; - border-bottom-color: #727272; } - -.tooltip.bottom-left .tooltip-arrow { - top: 0; - right: 5px; - margin-top: -5px; - border-width: 0 5px 5px; - border-bottom-color: #727272; } - -.tooltip.bottom-right .tooltip-arrow { - top: 0; - left: 5px; - margin-top: -5px; - border-width: 0 5px 5px; - border-bottom-color: #727272; } - -.popover { - position: absolute; - top: 0; - left: 0; - z-index: 1060; - display: none; - max-width: 276px; - padding: 1px; - font-family: "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif; - font-style: normal; - font-weight: normal; - letter-spacing: normal; - line-break: auto; - line-height: 1.846; - text-align: left; - text-align: start; - text-decoration: none; - text-shadow: none; - text-transform: none; - white-space: normal; - word-break: normal; - word-spacing: normal; - word-wrap: normal; - font-size: 15px; - background-color: #fff; - background-clip: padding-box; - border: 1px solid transparent; - border: 1px solid transparent; - border-radius: 3px; - -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); - box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); } - .popover.top { - margin-top: -10px; } - .popover.right { - margin-left: 10px; } - .popover.bottom { - margin-top: 10px; } - .popover.left { - margin-left: -10px; } - -.popover-title { - margin: 0; - padding: 8px 14px; - font-size: 15px; - background-color: #f7f7f7; - border-bottom: 1px solid #ebebeb; - border-radius: 2px 2px 0 0; } - -.popover-content { - padding: 9px 14px; } - -.popover > .arrow, .popover > .arrow:after { - position: absolute; - display: block; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; } - -.popover > .arrow { - border-width: 11px; } - -.popover > .arrow:after { - border-width: 10px; - content: ""; } - -.popover.top > .arrow { - left: 50%; - margin-left: -11px; - border-bottom-width: 0; - border-top-color: rgba(0, 0, 0, 0); - border-top-color: fadein(transparent, 12%); - bottom: -11px; } - .popover.top > .arrow:after { - content: " "; - bottom: 1px; - margin-left: -10px; - border-bottom-width: 0; - border-top-color: #fff; } - -.popover.right > .arrow { - top: 50%; - left: -11px; - margin-top: -11px; - border-left-width: 0; - border-right-color: rgba(0, 0, 0, 0); - border-right-color: fadein(transparent, 12%); } - .popover.right > .arrow:after { - content: " "; - left: 1px; - bottom: -10px; - border-left-width: 0; - border-right-color: #fff; } - -.popover.bottom > .arrow { - left: 50%; - margin-left: -11px; - border-top-width: 0; - border-bottom-color: rgba(0, 0, 0, 0); - border-bottom-color: fadein(transparent, 12%); - top: -11px; } - .popover.bottom > .arrow:after { - content: " "; - top: 1px; - margin-left: -10px; - border-top-width: 0; - border-bottom-color: #fff; } - -.popover.left > .arrow { - top: 50%; - right: -11px; - margin-top: -11px; - border-right-width: 0; - border-left-color: rgba(0, 0, 0, 0); - border-left-color: fadein(transparent, 12%); } - .popover.left > .arrow:after { - content: " "; - right: 1px; - border-right-width: 0; - border-left-color: #fff; - bottom: -10px; } - -.carousel { - position: relative; } - -.carousel-inner { - position: relative; - overflow: hidden; - width: 100%; } - .carousel-inner > .item { - display: none; - position: relative; - -webkit-transition: 0.6s ease-in-out left; - -o-transition: 0.6s ease-in-out left; - transition: 0.6s ease-in-out left; } - .carousel-inner > .item > img, - .carousel-inner > .item > a > img { - display: block; - max-width: 100%; - height: auto; - line-height: 1; } - @media all and (transform-3d), (-webkit-transform-3d) { - .carousel-inner > .item { - -webkit-transition: -webkit-transform 0.6s ease-in-out; - -moz-transition: -moz-transform 0.6s ease-in-out; - -o-transition: -o-transform 0.6s ease-in-out; - transition: transform 0.6s ease-in-out; - -webkit-backface-visibility: hidden; - -moz-backface-visibility: hidden; - backface-visibility: hidden; - -webkit-perspective: 1000px; - -moz-perspective: 1000px; - perspective: 1000px; } - .carousel-inner > .item.next, .carousel-inner > .item.active.right { - -webkit-transform: translate3d(100%, 0, 0); - transform: translate3d(100%, 0, 0); - left: 0; } - .carousel-inner > .item.prev, .carousel-inner > .item.active.left { - -webkit-transform: translate3d(-100%, 0, 0); - transform: translate3d(-100%, 0, 0); - left: 0; } - .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active { - -webkit-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); - left: 0; } } - .carousel-inner > .active, - .carousel-inner > .next, - .carousel-inner > .prev { - display: block; } - .carousel-inner > .active { - left: 0; } - .carousel-inner > .next, - .carousel-inner > .prev { - position: absolute; - top: 0; - width: 100%; } - .carousel-inner > .next { - left: 100%; } - .carousel-inner > .prev { - left: -100%; } - .carousel-inner > .next.left, - .carousel-inner > .prev.right { - left: 0; } - .carousel-inner > .active.left { - left: -100%; } - .carousel-inner > .active.right { - left: 100%; } - -.carousel-control { - position: absolute; - top: 0; - left: 0; - bottom: 0; - width: 15%; - opacity: 0.5; - filter: alpha(opacity=50); - font-size: 20px; - color: #fff; - text-align: center; - text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); - background-color: rgba(0, 0, 0, 0); } - .carousel-control.left { - background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); - background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); - background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); } - .carousel-control.right { - left: auto; - right: 0; - background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); - background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); - background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); } - .carousel-control:hover, .carousel-control:focus { - outline: 0; - color: #fff; - text-decoration: none; - opacity: 0.9; - filter: alpha(opacity=90); } - .carousel-control .icon-prev, - .carousel-control .icon-next, - .carousel-control .glyphicon-chevron-left, - .carousel-control .glyphicon-chevron-right { - position: absolute; - top: 50%; - margin-top: -10px; - z-index: 5; - display: inline-block; } - .carousel-control .icon-prev, - .carousel-control .glyphicon-chevron-left { - left: 50%; - margin-left: -10px; } - .carousel-control .icon-next, - .carousel-control .glyphicon-chevron-right { - right: 50%; - margin-right: -10px; } - .carousel-control .icon-prev, - .carousel-control .icon-next { - width: 20px; - height: 20px; - line-height: 1; - font-family: serif; } - .carousel-control .icon-prev:before { - content: '\2039'; } - .carousel-control .icon-next:before { - content: '\203a'; } - -.carousel-indicators { - position: absolute; - bottom: 10px; - left: 50%; - z-index: 15; - width: 60%; - margin-left: -30%; - padding-left: 0; - list-style: none; - text-align: center; } - .carousel-indicators li { - display: inline-block; - width: 10px; - height: 10px; - margin: 1px; - text-indent: -999px; - border: 1px solid #fff; - border-radius: 10px; - cursor: pointer; - background-color: #000 \9; - background-color: rgba(0, 0, 0, 0); } - .carousel-indicators .active { - margin: 0; - width: 12px; - height: 12px; - background-color: #fff; } - -.carousel-caption { - position: absolute; - left: 15%; - right: 15%; - bottom: 20px; - z-index: 10; - padding-top: 20px; - padding-bottom: 20px; - color: #fff; - text-align: center; - text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); } - .carousel-caption .btn { - text-shadow: none; } - -@media screen and (min-width: 768px) { - .carousel-control .glyphicon-chevron-left, - .carousel-control .glyphicon-chevron-right, - .carousel-control .icon-prev, - .carousel-control .icon-next { - width: 30px; - height: 30px; - margin-top: -10px; - font-size: 30px; } - .carousel-control .glyphicon-chevron-left, - .carousel-control .icon-prev { - margin-left: -10px; } - .carousel-control .glyphicon-chevron-right, - .carousel-control .icon-next { - margin-right: -10px; } - .carousel-caption { - left: 20%; - right: 20%; - padding-bottom: 30px; } - .carousel-indicators { - bottom: 20px; } } - -.clearfix:before, .clearfix:after { - content: " "; - display: table; } - -.clearfix:after { - clear: both; } - -.center-block { - display: block; - margin-left: auto; - margin-right: auto; } - -.pull-right { - float: right !important; } - -.pull-left { - float: left !important; } - -.hide { - display: none !important; } - -.show { - display: block !important; } - -.invisible { - visibility: hidden; } - -.text-hide { - font: 0/0 a; - color: transparent; - text-shadow: none; - background-color: transparent; - border: 0; } - -.hidden { - display: none !important; } - -.affix { - position: fixed; } - -@-ms-viewport { - width: device-width; } - -.visible-xs { - display: none !important; } - -.visible-sm { - display: none !important; } - -.visible-md { - display: none !important; } - -.visible-lg { - display: none !important; } - -.visible-xs-block, -.visible-xs-inline, -.visible-xs-inline-block, -.visible-sm-block, -.visible-sm-inline, -.visible-sm-inline-block, -.visible-md-block, -.visible-md-inline, -.visible-md-inline-block, -.visible-lg-block, -.visible-lg-inline, -.visible-lg-inline-block { - display: none !important; } - -@media (max-width: 767px) { - .visible-xs { - display: block !important; } - table.visible-xs { - display: table !important; } - tr.visible-xs { - display: table-row !important; } - th.visible-xs, - td.visible-xs { - display: table-cell !important; } } - -@media (max-width: 767px) { - .visible-xs-block { - display: block !important; } } - -@media (max-width: 767px) { - .visible-xs-inline { - display: inline !important; } } - -@media (max-width: 767px) { - .visible-xs-inline-block { - display: inline-block !important; } } - -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm { - display: block !important; } - table.visible-sm { - display: table !important; } - tr.visible-sm { - display: table-row !important; } - th.visible-sm, - td.visible-sm { - display: table-cell !important; } } - -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm-block { - display: block !important; } } - -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm-inline { - display: inline !important; } } - -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm-inline-block { - display: inline-block !important; } } - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md { - display: block !important; } - table.visible-md { - display: table !important; } - tr.visible-md { - display: table-row !important; } - th.visible-md, - td.visible-md { - display: table-cell !important; } } - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md-block { - display: block !important; } } - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md-inline { - display: inline !important; } } - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md-inline-block { - display: inline-block !important; } } - -@media (min-width: 1200px) { - .visible-lg { - display: block !important; } - table.visible-lg { - display: table !important; } - tr.visible-lg { - display: table-row !important; } - th.visible-lg, - td.visible-lg { - display: table-cell !important; } } - -@media (min-width: 1200px) { - .visible-lg-block { - display: block !important; } } - -@media (min-width: 1200px) { - .visible-lg-inline { - display: inline !important; } } - -@media (min-width: 1200px) { - .visible-lg-inline-block { - display: inline-block !important; } } - -@media (max-width: 767px) { - .hidden-xs { - display: none !important; } } - -@media (min-width: 768px) and (max-width: 991px) { - .hidden-sm { - display: none !important; } } - -@media (min-width: 992px) and (max-width: 1199px) { - .hidden-md { - display: none !important; } } - -@media (min-width: 1200px) { - .hidden-lg { - display: none !important; } } - -.visible-print { - display: none !important; } - -@media print { - .visible-print { - display: block !important; } - table.visible-print { - display: table !important; } - tr.visible-print { - display: table-row !important; } - th.visible-print, - td.visible-print { - display: table-cell !important; } } - -.visible-print-block { - display: none !important; } - @media print { - .visible-print-block { - display: block !important; } } - -.visible-print-inline { - display: none !important; } - @media print { - .visible-print-inline { - display: inline !important; } } - -.visible-print-inline-block { - display: none !important; } - @media print { - .visible-print-inline-block { - display: inline-block !important; } } - -@media print { - .hidden-print { - display: none !important; } } - -/*! - * tidyverse theme - * Copyright 2016 RStudio, Inc. - */ -.navbar { - border: none; - -webkit-box-shadow: 0 3px 15px 0px rgba(0, 0, 0, 0.1); - box-shadow: 0 3px 15px 0px rgba(0, 0, 0, 0.1); - min-height: 50px; - padding: 5px 0; } - .navbar-brand { - font-family: "Source Code Pro", Menlo, Monaco, Consolas, "Courier New", monospace; - font-weight: normal; - font-size: 32px; - padding: 0 0 0 54px; - height: 50px; - line-height: 50px; - background-image: url(logo.png); - background-size: 32px auto; - background-repeat: no-repeat; - background-position: 15px center; } - .navbar-nav li a { - padding-top: 10px; - padding-bottom: 0; - line-height: inherit; } - .navbar-inverse .navbar-form input[type=text], - .navbar-inverse .navbar-form input[type=password] { - color: #fff; - -webkit-box-shadow: inset 0 -1px 0 #d8e8f6; - box-shadow: inset 0 -1px 0 #d8e8f6; } - .navbar-inverse .navbar-form input[type=text]::-moz-placeholder, - .navbar-inverse .navbar-form input[type=password]::-moz-placeholder { - color: #d8e8f6; - opacity: 1; } - .navbar-inverse .navbar-form input[type=text]:-ms-input-placeholder, - .navbar-inverse .navbar-form input[type=password]:-ms-input-placeholder { - color: #d8e8f6; } - .navbar-inverse .navbar-form input[type=text]::-webkit-input-placeholder, - .navbar-inverse .navbar-form input[type=password]::-webkit-input-placeholder { - color: #d8e8f6; } - .navbar-inverse .navbar-form input[type=text]:focus, - .navbar-inverse .navbar-form input[type=password]:focus { - -webkit-box-shadow: inset 0 -2px 0 #fff; - box-shadow: inset 0 -2px 0 #fff; } - -.btn-default:focus { - background-color: #fff; } - -.btn-default:hover, .btn-default:active:hover { - background-color: #f0f0f0; } - -.btn-default:active { - -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); - box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); } - -.btn-primary:focus { - background-color: #5a9ddb; } - -.btn-primary:hover, .btn-primary:active:hover { - background-color: #418ed6; } - -.btn-primary:active { - -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); - box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); } - -.btn-success:focus { - background-color: #4CAF50; } - -.btn-success:hover, .btn-success:active:hover { - background-color: #439a46; } - -.btn-success:active { - -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); - box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); } - -.btn-info:focus { - background-color: #9C27B0; } - -.btn-info:hover, .btn-info:active:hover { - background-color: #862197; } - -.btn-info:active { - -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); - box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); } - -.btn-warning:focus { - background-color: #ff9800; } - -.btn-warning:hover, .btn-warning:active:hover { - background-color: #e08600; } - -.btn-warning:active { - -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); - box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); } - -.btn-danger:focus { - background-color: #e51c23; } - -.btn-danger:hover, .btn-danger:active:hover { - background-color: #cb171e; } - -.btn-danger:active { - -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); - box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); } - -.btn-link:focus { - background-color: #fff; } - -.btn-link:hover, .btn-link:active:hover { - background-color: #f0f0f0; } - -.btn-link:active { - -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); - box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); } - -.btn { - text-transform: uppercase; - border: none; - -webkit-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4); - box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4); - -webkit-transition: all 0.4s; - -o-transition: all 0.4s; - transition: all 0.4s; - position: relative; } - .btn:after { - content: ""; - display: block; - position: absolute; - width: 100%; - height: 100%; - top: 0; - left: 0; - background-image: -webkit-radial-gradient(circle, #000 10%, transparent 10.01%); - background-image: radial-gradient(circle, #000 10%, transparent 10.01%); - background-repeat: no-repeat; - background-size: 1000% 1000%; - background-position: 50%; - opacity: 0; - pointer-events: none; - transition: background .5s, opacity 1s; } - .btn:active:after { - background-size: 0% 0%; - opacity: .2; - transition: 0s; } - .btn-link { - border-radius: 3px; - -webkit-box-shadow: none; - box-shadow: none; - color: #444; } - .btn-link:hover, .btn-link:focus { - -webkit-box-shadow: none; - box-shadow: none; - color: #444; - text-decoration: none; } - .btn-default.disabled { - background-color: rgba(0, 0, 0, 0.1); - color: rgba(0, 0, 0, 0.4); - opacity: 1; } - -.btn-group .btn + .btn, -.btn-group .btn + .btn-group, -.btn-group .btn-group + .btn, -.btn-group .btn-group + .btn-group { - margin-left: 0; } - -.btn-group-vertical > .btn + .btn, -.btn-group-vertical > .btn + .btn-group, -.btn-group-vertical > .btn-group + .btn, -.btn-group-vertical > .btn-group + .btn-group { - margin-top: 0; } - -body { - -webkit-font-smoothing: antialiased; - letter-spacing: .1px; } - -p { - margin: 0 0 1em; } - -input, -button { - -webkit-font-smoothing: antialiased; - letter-spacing: .1px; } - -a { - -webkit-transition: all 0.25s; - -o-transition: all 0.25s; - transition: all 0.25s; } - -.table-hover > tbody > tr, -.table-hover > tbody > tr > th, -.table-hover > tbody > tr > td { - -webkit-transition: all 0.2s; - -o-transition: all 0.2s; - transition: all 0.2s; } - -label { - font-weight: normal; } - -textarea, -textarea.form-control, -input.form-control, -input[type=text], -input[type=password], -input[type=email], -input[type=number], -[type=text].form-control, -[type=password].form-control, -[type=email].form-control, -[type=tel].form-control, -[contenteditable].form-control { - padding: 0; - border: none; - border-radius: 0; - -webkit-appearance: none; - -webkit-box-shadow: inset 0 -1px 0 #ddd; - box-shadow: inset 0 -1px 0 #ddd; - font-size: 16px; } - textarea:focus, - textarea.form-control:focus, - input.form-control:focus, - input[type=text]:focus, - input[type=password]:focus, - input[type=email]:focus, - input[type=number]:focus, - [type=text].form-control:focus, - [type=password].form-control:focus, - [type=email].form-control:focus, - [type=tel].form-control:focus, - [contenteditable].form-control:focus { - -webkit-box-shadow: inset 0 -2px 0 #5a9ddb; - box-shadow: inset 0 -2px 0 #5a9ddb; } - textarea[disabled], textarea[readonly], - textarea.form-control[disabled], - textarea.form-control[readonly], - input.form-control[disabled], - input.form-control[readonly], - input[type=text][disabled], - input[type=text][readonly], - input[type=password][disabled], - input[type=password][readonly], - input[type=email][disabled], - input[type=email][readonly], - input[type=number][disabled], - input[type=number][readonly], - [type=text].form-control[disabled], - [type=text].form-control[readonly], - [type=password].form-control[disabled], - [type=password].form-control[readonly], - [type=email].form-control[disabled], - [type=email].form-control[readonly], - [type=tel].form-control[disabled], - [type=tel].form-control[readonly], - [contenteditable].form-control[disabled], - [contenteditable].form-control[readonly] { - -webkit-box-shadow: none; - box-shadow: none; - border-bottom: 1px dotted #ddd; } - textarea.input-sm, .input-group-sm > textarea.form-control, - .input-group-sm > textarea.input-group-addon, - .input-group-sm > .input-group-btn > textarea.btn, - textarea.form-control.input-sm, - .input-group-sm > textarea.form-control, - .input-group-sm > .input-group-btn > textarea.form-control.btn, - input.form-control.input-sm, - .input-group-sm > input.form-control, - .input-group-sm > .input-group-btn > input.form-control.btn, - input[type=text].input-sm, - .input-group-sm > input.form-control[type=text], - .input-group-sm > input.input-group-addon[type=text], - .input-group-sm > .input-group-btn > input.btn[type=text], - input[type=password].input-sm, - .input-group-sm > input.form-control[type=password], - .input-group-sm > input.input-group-addon[type=password], - .input-group-sm > .input-group-btn > input.btn[type=password], - input[type=email].input-sm, - .input-group-sm > input.form-control[type=email], - .input-group-sm > input.input-group-addon[type=email], - .input-group-sm > .input-group-btn > input.btn[type=email], - input[type=number].input-sm, - .input-group-sm > input.form-control[type=number], - .input-group-sm > input.input-group-addon[type=number], - .input-group-sm > .input-group-btn > input.btn[type=number], - [type=text].form-control.input-sm, - .input-group-sm > [type=text].form-control, - .input-group-sm > .input-group-btn > .btn[type=text].form-control, - [type=password].form-control.input-sm, - .input-group-sm > [type=password].form-control, - .input-group-sm > .input-group-btn > .btn[type=password].form-control, - [type=email].form-control.input-sm, - .input-group-sm > [type=email].form-control, - .input-group-sm > .input-group-btn > .btn[type=email].form-control, - [type=tel].form-control.input-sm, - .input-group-sm > [type=tel].form-control, - .input-group-sm > .input-group-btn > .btn[type=tel].form-control, - [contenteditable].form-control.input-sm, - .input-group-sm > [contenteditable].form-control, - .input-group-sm > .input-group-btn > .btn[contenteditable].form-control { - font-size: 13px; } - textarea.input-lg, .input-group-lg > textarea.form-control, - .input-group-lg > textarea.input-group-addon, - .input-group-lg > .input-group-btn > textarea.btn, - textarea.form-control.input-lg, - .input-group-lg > textarea.form-control, - .input-group-lg > .input-group-btn > textarea.form-control.btn, - input.form-control.input-lg, - .input-group-lg > input.form-control, - .input-group-lg > .input-group-btn > input.form-control.btn, - input[type=text].input-lg, - .input-group-lg > input.form-control[type=text], - .input-group-lg > input.input-group-addon[type=text], - .input-group-lg > .input-group-btn > input.btn[type=text], - input[type=password].input-lg, - .input-group-lg > input.form-control[type=password], - .input-group-lg > input.input-group-addon[type=password], - .input-group-lg > .input-group-btn > input.btn[type=password], - input[type=email].input-lg, - .input-group-lg > input.form-control[type=email], - .input-group-lg > input.input-group-addon[type=email], - .input-group-lg > .input-group-btn > input.btn[type=email], - input[type=number].input-lg, - .input-group-lg > input.form-control[type=number], - .input-group-lg > input.input-group-addon[type=number], - .input-group-lg > .input-group-btn > input.btn[type=number], - [type=text].form-control.input-lg, - .input-group-lg > [type=text].form-control, - .input-group-lg > .input-group-btn > .btn[type=text].form-control, - [type=password].form-control.input-lg, - .input-group-lg > [type=password].form-control, - .input-group-lg > .input-group-btn > .btn[type=password].form-control, - [type=email].form-control.input-lg, - .input-group-lg > [type=email].form-control, - .input-group-lg > .input-group-btn > .btn[type=email].form-control, - [type=tel].form-control.input-lg, - .input-group-lg > [type=tel].form-control, - .input-group-lg > .input-group-btn > .btn[type=tel].form-control, - [contenteditable].form-control.input-lg, - .input-group-lg > [contenteditable].form-control, - .input-group-lg > .input-group-btn > .btn[contenteditable].form-control { - font-size: 19px; } - -select, -select.form-control { - border: 0; - border-radius: 0; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - padding-left: 0; - padding-right: 0\9; - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAMAAACelLz8AAAAJ1BMVEVmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmaP/QSjAAAADHRSTlMAAgMJC0uWpKa6wMxMdjkoAAAANUlEQVR4AeXJyQEAERAAsNl7Hf3X6xt0QL6JpZWq30pdvdadme+0PMdzvHm8YThHcT1H7K0BtOMDniZhWOgAAAAASUVORK5CYII=); - background-size: 13px; - background-repeat: no-repeat; - background-position: right center; - -webkit-box-shadow: inset 0 -1px 0 #ddd; - box-shadow: inset 0 -1px 0 #ddd; - font-size: 16px; - line-height: 1.5; } - select::-ms-expand, - select.form-control::-ms-expand { - display: none; } - select.input-sm, .input-group-sm > select.form-control, - .input-group-sm > select.input-group-addon, - .input-group-sm > .input-group-btn > select.btn, - select.form-control.input-sm, - .input-group-sm > select.form-control, - .input-group-sm > .input-group-btn > select.form-control.btn { - font-size: 13px; } - select.input-lg, .input-group-lg > select.form-control, - .input-group-lg > select.input-group-addon, - .input-group-lg > .input-group-btn > select.btn, - select.form-control.input-lg, - .input-group-lg > select.form-control, - .input-group-lg > .input-group-btn > select.form-control.btn { - font-size: 19px; } - select:focus, - select.form-control:focus { - -webkit-box-shadow: inset 0 -2px 0 #5a9ddb; - box-shadow: inset 0 -2px 0 #5a9ddb; - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAMAAACelLz8AAAAJ1BMVEUhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISF8S9ewAAAADHRSTlMAAgMJC0uWpKa6wMxMdjkoAAAANUlEQVR4AeXJyQEAERAAsNl7Hf3X6xt0QL6JpZWq30pdvdadme+0PMdzvHm8YThHcT1H7K0BtOMDniZhWOgAAAAASUVORK5CYII=); } - select[multiple], - select.form-control[multiple] { - background: none; } - -.radio label, -.radio-inline label, -.checkbox label, -.checkbox-inline label { - padding-left: 25px; } - -.radio input[type="radio"], -.radio input[type="checkbox"], -.radio-inline input[type="radio"], -.radio-inline input[type="checkbox"], -.checkbox input[type="radio"], -.checkbox input[type="checkbox"], -.checkbox-inline input[type="radio"], -.checkbox-inline input[type="checkbox"] { - margin-left: -25px; } - -input[type="radio"], -.radio input[type="radio"], -.radio-inline input[type="radio"] { - position: relative; - margin-top: 6px; - margin-right: 4px; - vertical-align: top; - border: none; - background-color: transparent; - -webkit-appearance: none; - appearance: none; - cursor: pointer; } - input[type="radio"]:focus, - .radio input[type="radio"]:focus, - .radio-inline input[type="radio"]:focus { - outline: none; } - input[type="radio"]:before, input[type="radio"]:after, - .radio input[type="radio"]:before, - .radio input[type="radio"]:after, - .radio-inline input[type="radio"]:before, - .radio-inline input[type="radio"]:after { - content: ""; - display: block; - width: 18px; - height: 18px; - border-radius: 50%; - -webkit-transition: 240ms; - -o-transition: 240ms; - transition: 240ms; } - input[type="radio"]:before, - .radio input[type="radio"]:before, - .radio-inline input[type="radio"]:before { - position: absolute; - left: 0; - top: -3px; - background-color: #5a9ddb; - -webkit-transform: scale(0); - -ms-transform: scale(0); - -o-transform: scale(0); - transform: scale(0); } - input[type="radio"]:after, - .radio input[type="radio"]:after, - .radio-inline input[type="radio"]:after { - position: relative; - top: -3px; - border: 2px solid #666; } - input[type="radio"]:checked:before, - .radio input[type="radio"]:checked:before, - .radio-inline input[type="radio"]:checked:before { - -webkit-transform: scale(0.5); - -ms-transform: scale(0.5); - -o-transform: scale(0.5); - transform: scale(0.5); } - input[type="radio"]:disabled:checked:before, - .radio input[type="radio"]:disabled:checked:before, - .radio-inline input[type="radio"]:disabled:checked:before { - background-color: #bbb; } - input[type="radio"]:checked:after, - .radio input[type="radio"]:checked:after, - .radio-inline input[type="radio"]:checked:after { - border-color: #5a9ddb; } - input[type="radio"]:disabled:after, input[type="radio"]:disabled:checked:after, - .radio input[type="radio"]:disabled:after, - .radio input[type="radio"]:disabled:checked:after, - .radio-inline input[type="radio"]:disabled:after, - .radio-inline input[type="radio"]:disabled:checked:after { - border-color: #bbb; } - -input[type="checkbox"], -.checkbox input[type="checkbox"], -.checkbox-inline input[type="checkbox"] { - position: relative; - border: none; - margin-bottom: -4px; - -webkit-appearance: none; - appearance: none; - cursor: pointer; } - input[type="checkbox"]:focus, - .checkbox input[type="checkbox"]:focus, - .checkbox-inline input[type="checkbox"]:focus { - outline: none; } - input[type="checkbox"]:focus:after, - .checkbox input[type="checkbox"]:focus:after, - .checkbox-inline input[type="checkbox"]:focus:after { - border-color: #5a9ddb; } - input[type="checkbox"]:after, - .checkbox input[type="checkbox"]:after, - .checkbox-inline input[type="checkbox"]:after { - content: ""; - display: block; - width: 18px; - height: 18px; - margin-top: -2px; - margin-right: 5px; - border: 2px solid #666; - border-radius: 2px; - -webkit-transition: 240ms; - -o-transition: 240ms; - transition: 240ms; } - input[type="checkbox"]:checked:before, - .checkbox input[type="checkbox"]:checked:before, - .checkbox-inline input[type="checkbox"]:checked:before { - content: ""; - position: absolute; - top: 0; - left: 6px; - display: table; - width: 6px; - height: 12px; - border: 2px solid #fff; - border-top-width: 0; - border-left-width: 0; - -webkit-transform: rotate(45deg); - -ms-transform: rotate(45deg); - -o-transform: rotate(45deg); - transform: rotate(45deg); } - input[type="checkbox"]:checked:after, - .checkbox input[type="checkbox"]:checked:after, - .checkbox-inline input[type="checkbox"]:checked:after { - background-color: #5a9ddb; - border-color: #5a9ddb; } - input[type="checkbox"]:disabled:after, - .checkbox input[type="checkbox"]:disabled:after, - .checkbox-inline input[type="checkbox"]:disabled:after { - border-color: #bbb; } - input[type="checkbox"]:disabled:checked:after, - .checkbox input[type="checkbox"]:disabled:checked:after, - .checkbox-inline input[type="checkbox"]:disabled:checked:after { - background-color: #bbb; - border-color: transparent; } - -.has-warning input:not([type=checkbox]), -.has-warning .form-control, -.has-warning input.form-control[readonly], -.has-warning input[type=text][readonly], -.has-warning [type=text].form-control[readonly], -.has-warning input:not([type=checkbox]):focus, -.has-warning .form-control:focus { - border-bottom: none; - -webkit-box-shadow: inset 0 -2px 0 #ff9800; - box-shadow: inset 0 -2px 0 #ff9800; } - -.has-error input:not([type=checkbox]), -.has-error .form-control, -.has-error input.form-control[readonly], -.has-error input[type=text][readonly], -.has-error [type=text].form-control[readonly], -.has-error input:not([type=checkbox]):focus, -.has-error .form-control:focus { - border-bottom: none; - -webkit-box-shadow: inset 0 -2px 0 #e51c23; - box-shadow: inset 0 -2px 0 #e51c23; } - -.has-success input:not([type=checkbox]), -.has-success .form-control, -.has-success input.form-control[readonly], -.has-success input[type=text][readonly], -.has-success [type=text].form-control[readonly], -.has-success input:not([type=checkbox]):focus, -.has-success .form-control:focus { - border-bottom: none; - -webkit-box-shadow: inset 0 -2px 0 #4CAF50; - box-shadow: inset 0 -2px 0 #4CAF50; } - -.has-warning .input-group-addon, .has-error .input-group-addon, .has-success .input-group-addon { - color: #666; - border-color: transparent; - background-color: transparent; } - -.form-group-lg select, -.form-group-lg select.form-control { - line-height: 1.5; } - -.nav-tabs > li > a, -.nav-tabs > li > a:focus { - margin-right: 0; - background-color: transparent; - border: none; - color: #444; - -webkit-box-shadow: inset 0 -1px 0 #ddd; - box-shadow: inset 0 -1px 0 #ddd; - -webkit-transition: all 0.2s; - -o-transition: all 0.2s; - transition: all 0.2s; } - .nav-tabs > li > a:hover, - .nav-tabs > li > a:focus:hover { - background-color: transparent; - -webkit-box-shadow: inset 0 -2px 0 #5a9ddb; - box-shadow: inset 0 -2px 0 #5a9ddb; - color: #5a9ddb; } - -.nav-tabs > li.active > a, -.nav-tabs > li.active > a:focus { - border: none; - -webkit-box-shadow: inset 0 -2px 0 #5a9ddb; - box-shadow: inset 0 -2px 0 #5a9ddb; - color: #5a9ddb; } - .nav-tabs > li.active > a:hover, - .nav-tabs > li.active > a:focus:hover { - border: none; - color: #5a9ddb; } - -.nav-tabs > li.disabled > a { - -webkit-box-shadow: inset 0 -1px 0 #ddd; - box-shadow: inset 0 -1px 0 #ddd; } - -.nav-tabs.nav-justified > li > a, -.nav-tabs.nav-justified > li > a:hover, -.nav-tabs.nav-justified > li > a:focus, -.nav-tabs.nav-justified > .active > a, -.nav-tabs.nav-justified > .active > a:hover, -.nav-tabs.nav-justified > .active > a:focus { - border: none; } - -.nav-tabs .dropdown-menu { - margin-top: 0; } - -.dropdown-menu { - margin-top: 0; - border: none; - -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); - box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); } - -.alert { - border: none; - color: #fff; } - .alert-success { - background-color: #4CAF50; } - .alert-info { - background-color: #9C27B0; } - .alert-warning { - background-color: #ff9800; } - .alert-danger { - background-color: #e51c23; } - .alert a:not(.close):not(.btn), - .alert .alert-link { - color: #fff; - font-weight: bold; } - .alert .close { - color: #fff; } - -.badge { - padding: 4px 6px 4px; } - -.progress { - position: relative; - z-index: 1; - height: 6px; - border-radius: 0; - -webkit-box-shadow: none; - box-shadow: none; } - .progress-bar { - -webkit-box-shadow: none; - box-shadow: none; } - .progress-bar:last-child { - border-radius: 0 3px 3px 0; } - .progress-bar:last-child:before { - display: block; - content: ""; - position: absolute; - width: 100%; - height: 100%; - left: 0; - right: 0; - z-index: -1; - background-color: #edf4fb; } - .progress-bar-success:last-child.progress-bar:before { - background-color: #c7e7c8; } - .progress-bar-info:last-child.progress-bar:before { - background-color: #edc9f3; } - .progress-bar-warning:last-child.progress-bar:before { - background-color: #ffe0b3; } - .progress-bar-danger:last-child.progress-bar:before { - background-color: #f28e92; } - -.close { - font-size: 34px; - font-weight: 300; - line-height: 24px; - opacity: 0.6; - -webkit-transition: all 0.2s; - -o-transition: all 0.2s; - transition: all 0.2s; } - .close:hover { - opacity: 1; } - -.list-group-item { - padding: 15px; } - -.list-group-item-text { - color: #bbb; } - -.well { - border-radius: 0; - -webkit-box-shadow: none; - box-shadow: none; } - -.panel { - border: none; - border-radius: 2px; - -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); - box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); } - .panel-heading { - border-bottom: none; } - .panel-footer { - border-top: none; } - -.popover { - border: none; - -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); - box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); } - -.carousel-caption h1, .carousel-caption h2, .carousel-caption h3, .carousel-caption h4, .carousel-caption h5, .carousel-caption h6 { - color: inherit; } - diff --git a/docs/tocBullet.svg b/docs/tocBullet.svg deleted file mode 100644 index 29abb51..0000000 --- a/docs/tocBullet.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - diff --git a/inst/WORDLIST b/inst/WORDLIST index fa3b318..a0cc3cd 100644 --- a/inst/WORDLIST +++ b/inst/WORDLIST @@ -1,24 +1,27 @@ -al Ames -Chemoinformatics +CMD CRC +Chemoinformatics +Codecov De -doi -et -extensibility Gillet Jaccard Lifecycle Netzeva OkCupid -pca -pcas -pre +PBC QSAR Springer -tibble X'X +al +doi +et +extensibility +funder intercal -CMD +pca +pcas +pre reprex +tibble tidymodels diff --git a/man/ames_new.Rd b/man/ames_new.Rd index bf239a1..0124f25 100644 --- a/man/ames_new.Rd +++ b/man/ames_new.Rd @@ -9,7 +9,7 @@ De Cock, D. (2011). "Ames, Iowa: Alternative to the Boston Housing Data as an End of Semester Regression Project," \emph{Journal of Statistics Education}, Volume 19, Number 3. -\url{https://www.cityofames.org/government/departments-divisions-a-h/city-assessor} +\verb{https://www.cityofames.org/government/departments-divisions-a-h/city-assessor} \url{http://jse.amstat.org/v19n3/decock/DataDocumentation.txt} diff --git a/man/applicable-package.Rd b/man/applicable-package.Rd index c8f140b..168664e 100644 --- a/man/applicable-package.Rd +++ b/man/applicable-package.Rd @@ -6,9 +6,9 @@ \alias{applicable-package} \title{applicable: A Compilation of Applicability Domain Methods} \description{ -\if{html}{\figure{logo.png}{options: align='right' alt='logo' width='120'}} +\if{html}{\figure{logo.png}{options: style='float: right' alt='logo' width='120'}} -A modeling package compiling applicability domain methods in R. It combines different methods to measure the amount of extrapolation new samples can have from the training set. See Netzeva et al (2005) for an overview of applicability domains. +A modeling package compiling applicability domain methods in R. It combines different methods to measure the amount of extrapolation new samples can have from the training set. See Netzeva et al (2005) \doi{10.1177/026119290503300209} for an overview of applicability domains. } \seealso{ Useful links: @@ -24,12 +24,12 @@ Useful links: Authors: \itemize{ - \item Max Kuhn \email{max@rstudio.com} + \item Max Kuhn \email{max@posit.co} } Other contributors: \itemize{ - \item RStudio [copyright holder] + \item Posit Software, PBC [copyright holder, funder] } } diff --git a/man/figures/logo.png b/man/figures/logo.png index d754ea4..06f7657 100644 Binary files a/man/figures/logo.png and b/man/figures/logo.png differ diff --git a/man/okc_binary.Rd b/man/okc_binary.Rd index dce9dce..35ad4c7 100644 --- a/man/okc_binary.Rd +++ b/man/okc_binary.Rd @@ -7,7 +7,7 @@ \alias{okc_binary_test} \title{OkCupid Binary Predictors} \source{ -Kim (2015), "OkCupid Data for Introductory Statistics and Data Science Courses", \emph{Journal of Statistics Education}, Volume 23, Number 2. \url{https://www.tandfonline.com/doi/abs/10.1080/10691898.2015.11889737} +Kim (2015), "OkCupid Data for Introductory Statistics and Data Science Courses", \emph{Journal of Statistics Education}, Volume 23, Number 2. \doi{10.1080/10691898.2015.11889737} Kuhn and Johnson (2020), \emph{Feature Engineering and Selection}, Chapman and Hall/CRC . \url{https://bookdown.org/max/FES/} and \url{https://github.com/topepo/FES} } diff --git a/man/print.apd_similarity.Rd b/man/print.apd_similarity.Rd index 5b95bd4..31f782b 100644 --- a/man/print.apd_similarity.Rd +++ b/man/print.apd_similarity.Rd @@ -23,7 +23,7 @@ set.seed(535) tr_x <- matrix( sample(0:1, size = 20 * 50, prob = rep(.5, 2), replace = TRUE), ncol = 20 - ) +) model <- apd_similarity(tr_x) print(model) } diff --git a/tests/testthat/_snaps/hat_values-fit.md b/tests/testthat/_snaps/hat_values-fit.md index 779501b..5cd8d25 100644 --- a/tests/testthat/_snaps/hat_values-fit.md +++ b/tests/testthat/_snaps/hat_values-fit.md @@ -2,29 +2,33 @@ Code new_apd_hat_values(blueprint = hardhat::default_xy_blueprint()) - Error - argument "XtX_inv" is missing, with no default + Condition + Error in `new_apd_hat_values()`: + ! argument "XtX_inv" is missing, with no default # `new_apd_hat_values` fails when blueprint is numeric Code new_apd_hat_values(XtX_inv = 1, blueprint = 1) - Error - blueprint should be a blueprint, not a numeric. + Condition + Error in `hardhat::new_model()`: + ! `blueprint` must be a , not the number 1. # `apd_hat_values` fails when matrix has more predictors than samples Code apd_hat_values(bad_data) - Error - The number of columns must be less than the number of rows. + Condition + Error in `apd_hat_values_bridge()`: + ! The number of columns must be less than the number of rows. # `apd_hat_values` fails when the matrix X^tX is singular Code apd_hat_values(bad_data) - Error - Unable to compute the hat values of the matrix X of + Condition + Error in `get_inv()`: + ! Unable to compute the hat values of the matrix X of predictors because the matrix resulting from multiplying the transpose of X by X is singular. diff --git a/tests/testthat/_snaps/hat_values-score.md b/tests/testthat/_snaps/hat_values-score.md index b3cbc4d..f941127 100644 --- a/tests/testthat/_snaps/hat_values-score.md +++ b/tests/testthat/_snaps/hat_values-score.md @@ -2,22 +2,25 @@ Code score_apd_hat_values_numeric(mtcars, mtcars) - Error - The model must contain an XtX_inv argument. + Condition + Error in `score_apd_hat_values_numeric()`: + ! The model must contain an XtX_inv argument. # `score` fails when predictors only contain factors Code score(model, iris$Species) - Error - The class of `new_data`, 'factor', is not recognized. + Condition + Error in `hardhat::forge()`: + ! No `forge()` method provided for a object. # `score` fails when predictors are vectors Code score(object) - Error - `object` is not of a recognized type. + Condition + Error in `score()`: + ! `object` is not of a recognized type. Only data.frame, matrix, recipe, and formula objects are allowed. A data.frame was specified. diff --git a/tests/testthat/_snaps/misc.md b/tests/testthat/_snaps/misc.md index 68860d0..247bf44 100644 --- a/tests/testthat/_snaps/misc.md +++ b/tests/testthat/_snaps/misc.md @@ -2,6 +2,7 @@ Code names0(num) - Error - `num` should be > 0 + Condition + Error in `names0()`: + ! `num` should be > 0 diff --git a/tests/testthat/_snaps/pca-fit.md b/tests/testthat/_snaps/pca-fit.md index d66228e..2ef90b2 100644 --- a/tests/testthat/_snaps/pca-fit.md +++ b/tests/testthat/_snaps/pca-fit.md @@ -2,13 +2,15 @@ Code new_apd_pca(blueprint = hardhat::default_xy_blueprint()) - Error - argument "pcs" is missing, with no default + Condition + Error in `new_apd_pca()`: + ! argument "pcs" is missing, with no default # `new_apd_pca` fails when blueprint is numeric Code new_apd_pca(pcs = 1, blueprint = 1) - Error - blueprint should be a blueprint, not a numeric. + Condition + Error in `hardhat::new_model()`: + ! `blueprint` must be a , not the number 1. diff --git a/tests/testthat/_snaps/pca-score.md b/tests/testthat/_snaps/pca-score.md index 30ac29f..b1d00d9 100644 --- a/tests/testthat/_snaps/pca-score.md +++ b/tests/testthat/_snaps/pca-score.md @@ -2,22 +2,25 @@ Code score_apd_pca_numeric(mtcars, mtcars) - Error - The model must contain a pcs argument. + Condition + Error in `score_apd_pca_numeric()`: + ! The model must contain a pcs argument. # `score` fails when predictors only contain factors Code score(model, iris$Species) - Error - The class of `new_data`, 'factor', is not recognized. + Condition + Error in `hardhat::forge()`: + ! No `forge()` method provided for a object. # `score` fails when predictors are vectors Code score(object) - Error - `object` is not of a recognized type. + Condition + Error in `score()`: + ! `object` is not of a recognized type. Only data.frame, matrix, recipe, and formula objects are allowed. A data.frame was specified. diff --git a/tests/testthat/_snaps/similarity.md b/tests/testthat/_snaps/similarity.md index abb0705..afde47b 100644 --- a/tests/testthat/_snaps/similarity.md +++ b/tests/testthat/_snaps/similarity.md @@ -2,15 +2,17 @@ Code apd_similarity(tr_x, quantile = 2) - Error - The `quantile` argument should be NA or a single numeric value in [0, 1]. + Condition + Error in `apd_similarity_bridge()`: + ! The `quantile` argument should be NA or a single numeric value in [0, 1]. --- Code apd_similarity(tr_x_sp) - Error - `x` is not of a recognized type. + Condition + Error in `apd_similarity()`: + ! `x` is not of a recognized type. Only data.frame, matrix, recipe, and formula objects are allowed. A dgCMatrix was specified. @@ -54,28 +56,32 @@ Code apd_similarity(tr_x, quantile = -1) - Error - The `quantile` argument should be NA or a single numeric value in [0, 1]. + Condition + Error in `apd_similarity_bridge()`: + ! The `quantile` argument should be NA or a single numeric value in [0, 1]. --- Code apd_similarity(tr_x, quantile = 3) - Error - The `quantile` argument should be NA or a single numeric value in [0, 1]. + Condition + Error in `apd_similarity_bridge()`: + ! The `quantile` argument should be NA or a single numeric value in [0, 1]. --- Code apd_similarity(tr_x, quantile = "la") - Error - The `quantile` argument should be NA or a single numeric value in [0, 1]. + Condition + Error in `apd_similarity_bridge()`: + ! The `quantile` argument should be NA or a single numeric value in [0, 1]. # apd_similarity outputs warning with zero variance variables Code apd_similarity(bad_data) - Warning + Condition + Warning: The following variables had zero variance and were removed: a, b, and d Output Applicability domain via similarity @@ -86,13 +92,15 @@ Code apd_similarity(bad_data) - Error - All variables have a single unique value. + Condition + Error in `apd_similarity_bridge()`: + ! All variables have a single unique value. # apd_similarity fails data is not binary Code apd_similarity(bad_data) - Error - The following variables are not binary: b, and d + Condition + Error in `apd_similarity_bridge()`: + ! The following variables are not binary: b, and d diff --git a/tests/testthat/test-hat_values-fit.R b/tests/testthat/test-hat_values-fit.R index 5837809..bd8cfc0 100644 --- a/tests/testthat/test-hat_values-fit.R +++ b/tests/testthat/test-hat_values-fit.R @@ -12,13 +12,15 @@ test_that("`new_apd_hat_values` arguments are assigned correctly", { }) test_that("XtX_inv is provided", { - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, new_apd_hat_values(blueprint = hardhat::default_xy_blueprint()) ) }) test_that("`new_apd_hat_values` fails when blueprint is numeric", { - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, new_apd_hat_values(XtX_inv = 1, blueprint = 1) ) }) @@ -108,7 +110,8 @@ test_that("`apd_hat_values` fails when matrix has more predictors than samples", bad_data <- mtcars %>% slice(1:5) - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, apd_hat_values(bad_data) ) }) @@ -120,7 +123,8 @@ test_that("`apd_hat_values` fails when the matrix X^tX is singular", { ) colnames(bad_data) <- c("A", "B") - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, apd_hat_values(bad_data) ) }) diff --git a/tests/testthat/test-hat_values-score.R b/tests/testthat/test-hat_values-score.R index 84c0ed2..dacfd89 100644 --- a/tests/testthat/test-hat_values-score.R +++ b/tests/testthat/test-hat_values-score.R @@ -1,12 +1,14 @@ test_that("`score_apd_hat_values_numeric` fails when model has no pcs argument", { - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, score_apd_hat_values_numeric(mtcars, mtcars) ) }) test_that("`score` fails when predictors only contain factors", { model <- apd_hat_values(~., iris) - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, score(model, iris$Species) ) }) @@ -14,7 +16,8 @@ test_that("`score` fails when predictors only contain factors", { test_that("`score` fails when predictors are vectors", { object <- iris - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, score(object) ) }) @@ -30,7 +33,8 @@ test_that("`score` calculated hat_values are correct", { actual_output <- actual_output$hat_values # Data frame method - expect_equal(ignore_attr = TRUE, + expect_equal( + ignore_attr = TRUE, actual_output, expected ) diff --git a/tests/testthat/test-misc.R b/tests/testthat/test-misc.R index 4aef57f..d27b823 100644 --- a/tests/testthat/test-misc.R +++ b/tests/testthat/test-misc.R @@ -1,6 +1,7 @@ test_that("`names0` fails if `num` is less than 1", { num <- 0 - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, names0(num) ) }) diff --git a/tests/testthat/test-pca-fit.R b/tests/testthat/test-pca-fit.R index ace00bf..8901c7a 100644 --- a/tests/testthat/test-pca-fit.R +++ b/tests/testthat/test-pca-fit.R @@ -18,13 +18,15 @@ test_that("`new_apd_pca` arguments are assigned correctly", { }) test_that("pcs is provided", { - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, new_apd_pca(blueprint = hardhat::default_xy_blueprint()) ) }) test_that("`new_apd_pca` fails when blueprint is numeric", { - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, new_apd_pca(pcs = 1, blueprint = 1) ) }) @@ -58,7 +60,8 @@ test_that("pcs matches `prcomp` output for the data frame method", { expected$x <- NULL # Data frame method - expect_equal(ignore_attr = TRUE, + expect_equal( + ignore_attr = TRUE, apd_pca(mtcars)$pcs, expected ) @@ -69,7 +72,8 @@ test_that("pcs matches `prcomp` output for the formula method", { expected$x <- NULL # Formula method - expect_equal(ignore_attr = TRUE, + expect_equal( + ignore_attr = TRUE, apd_pca(~., mtcars)$pcs, expected ) @@ -81,7 +85,8 @@ test_that("pcs matches `prcomp` output for the recipe method", { # Recipe method rec <- recipes::recipe(~., mtcars) - expect_equal(ignore_attr = TRUE, + expect_equal( + ignore_attr = TRUE, apd_pca(rec, data = mtcars)$pcs, expected ) @@ -92,7 +97,8 @@ test_that("pcs matches `prcomp` output for the matrix method", { expected$x <- NULL # Matrix method - expect_equal(ignore_attr = TRUE, + expect_equal( + ignore_attr = TRUE, apd_pca(as.matrix(mtcars))$pcs, expected ) diff --git a/tests/testthat/test-pca-score.R b/tests/testthat/test-pca-score.R index 3a20844..8a12a00 100644 --- a/tests/testthat/test-pca-score.R +++ b/tests/testthat/test-pca-score.R @@ -1,12 +1,14 @@ test_that("`score_apd_pca_numeric` fails when model has no pcs argument", { - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, score_apd_pca_numeric(mtcars, mtcars) ) }) test_that("`score` fails when predictors only contain factors", { model <- apd_pca(~., iris) - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, score(model, iris$Species) ) }) @@ -14,7 +16,8 @@ test_that("`score` fails when predictors only contain factors", { test_that("`score` fails when predictors are vectors", { object <- iris - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, score(object) ) }) @@ -31,7 +34,8 @@ test_that("`score_apd_pca_numeric` pcs output matches `stats::predict` output", dplyr::select(dplyr::matches("^PC\\d+$")) # Data frame method - expect_equal(ignore_attr = TRUE, + expect_equal( + ignore_attr = TRUE, actual_output, expected ) @@ -49,7 +53,8 @@ test_that("`score` pcs output matches `stats::predict` output", { dplyr::select(dplyr::matches("^PC\\d+$")) # Data frame method - expect_equal(ignore_attr = TRUE, + expect_equal( + ignore_attr = TRUE, actual_output, expected ) @@ -67,7 +72,8 @@ test_that("`score_apd_pca_bridge` output is correct", { dplyr::select(dplyr::matches("^PC\\d+$")) # Data frame method - expect_equal(ignore_attr = TRUE, + expect_equal( + ignore_attr = TRUE, actual_output, expected ) diff --git a/tests/testthat/test-plot.R b/tests/testthat/test-plot.R index f0d94e0..924b705 100644 --- a/tests/testthat/test-plot.R +++ b/tests/testthat/test-plot.R @@ -1,3 +1,8 @@ +get_labs <- function(x) x$labels +if ("get_labs" %in% getNamespaceExports("ggplot2")) { + get_labs <- ggplot2::get_labs +} + test_that("output of autoplot.apd_pca is correct when no options are provided", { ad <- apd_pca(mtcars) ad_plot <- ggplot2::autoplot(ad) @@ -6,8 +11,9 @@ test_that("output of autoplot.apd_pca is correct when no options are provided", tidyr::gather(component, value, -percentile) expect_equal(ad_plot$data, pctls) - expect_equal(ad_plot$labels$x, "abs(value)") - expect_equal(ad_plot$labels$y, "percentile") + labs <- get_labs(ad_plot) + expect_equal(labs$x, "abs(value)") + expect_equal(labs$y, "percentile") }) test_that("output of autoplot.apd_pca is correct when options=matches are provided", { @@ -19,8 +25,9 @@ test_that("output of autoplot.apd_pca is correct when options=matches are provid tidyr::gather(component, value, -percentile) expect_equal(ad_plot$data, pctls) - expect_equal(ad_plot$labels$x, "abs(value)") - expect_equal(ad_plot$labels$y, "percentile") + labs <- get_labs(ad_plot) + expect_equal(labs$x, "abs(value)") + expect_equal(labs$y, "percentile") }) test_that("output of autoplot.apd_pca is correct when options=distance are provided", { @@ -32,6 +39,7 @@ test_that("output of autoplot.apd_pca is correct when options=distance are provi tidyr::gather(component, value, -percentile) expect_equal(ad_plot$data, pctls) - expect_equal(ad_plot$labels$x, "abs(value)") - expect_equal(ad_plot$labels$y, "percentile") + labs <- get_labs(ad_plot) + expect_equal(labs$x, "abs(value)") + expect_equal(labs$y, "percentile") }) diff --git a/tests/testthat/test-similarity.R b/tests/testthat/test-similarity.R index 08b0788..d6eb8e0 100644 --- a/tests/testthat/test-similarity.R +++ b/tests/testthat/test-similarity.R @@ -114,10 +114,12 @@ test_that("matrix method - quantile similarity", { # ------------------------------------------------------------------------------ test_that("bad args", { - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, apd_similarity(tr_x, quantile = 2) ) - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, apd_similarity(tr_x_sp) ) }) @@ -143,16 +145,18 @@ test_that("plot output", { # ------------------------------------------------------------------------------ test_that("apd_similarity fails when quantile is neither NA nor a number in [0, 1]", { - - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, apd_similarity(tr_x, quantile = -1) ) - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, apd_similarity(tr_x, quantile = 3) ) - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, apd_similarity(tr_x, quantile = "la") ) }) @@ -183,7 +187,8 @@ test_that("apd_similarity fails when all the variables have zero variance", { ) bad_data <- as.data.frame(bad_data) - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, apd_similarity(bad_data) ) }) @@ -199,7 +204,8 @@ test_that("apd_similarity fails data is not binary", { ) bad_data <- as.data.frame(bad_data) - expect_snapshot(error = TRUE, + expect_snapshot( + error = TRUE, apd_similarity(bad_data) ) }) diff --git a/vignettes/binary-data.Rmd b/vignettes/binary-data.Rmd index 27b3fc1..17634db 100644 --- a/vignettes/binary-data.Rmd +++ b/vignettes/binary-data.Rmd @@ -68,7 +68,8 @@ jacc_sim As we can see below, this is a fairly diverse training set: -```{r jac-plot, fig.width=5, fig.height=5.2, out.width = '50%', fig.align='center'} +```{r jac-plot} +#| fig-alt: "Empirical cumulative distribution chart. Mean similarity along the x-axis, Cumulative Probability along the why axis. Reading from left to right, values stay close to 0 from x = 0 to x = 0.25, from x = 0.25 to x = 0.4 there is a near-linear upwards trend to about y = 0.70. After that y = 1." library(ggplot2) # Plot the empirical cumulative distribution function for the training set diff --git a/vignettes/continuous-data.Rmd b/vignettes/continuous-data.Rmd index ff8f47b..89de9bd 100644 --- a/vignettes/continuous-data.Rmd +++ b/vignettes/continuous-data.Rmd @@ -71,10 +71,10 @@ library(dplyr) ames_cols <- intersect(names(ames), names(ames_new)) -training_data <- - ames %>% +training_data <- + ames %>% # For consistency, only analyze the data on new properties - dplyr::select(one_of(ames_cols)) %>% + dplyr::select(one_of(ames_cols)) %>% mutate( # There is a new neighborhood in ames_new Neighborhood = as.character(Neighborhood), @@ -83,10 +83,10 @@ training_data <- training_recipe <- - recipe( ~ ., data = training_data) %>% - step_dummy(all_nominal()) %>% + recipe(~., data = training_data) %>% + step_dummy(all_nominal()) %>% # Remove variables that have the same value for every data point. - step_zv(all_predictors()) %>% + step_zv(all_predictors()) %>% # Transform variables to be distributed as Gaussian-like as possible. step_YeoJohnson(all_numeric()) %>% # Normalize numeric data to have a mean of zero and @@ -133,8 +133,8 @@ ames_pca Plotting the distribution function for the PCA scores is also helpful: -```{r autoplot, fig.align='center'} - +```{r autoplot} +#| fig-alt: "Faceted line chart. abs(value) along the x-axis, percentile along the y-axis. The facets are distance, followed by PC 1 through 12. All lines go up fairly fast." library(ggplot2) autoplot(ames_pca) ``` @@ -161,9 +161,10 @@ Notice how the samples, displayed in red, are fairly dissimilar to the training set in the first component: ```{r, echo = FALSE} +#| fig-alt: "Histogram chart. PC001 along the x-axis, count along the y-axis. A vertical red line is placed inside the distribution." training_scores <- score(ames_pca, training_data) -ggplot(training_scores, aes(x = PC001)) + - geom_histogram(col = "white", binwidth = .5) + +ggplot(training_scores, aes(x = PC001)) + + geom_histogram(col = "white", binwidth = .5) + geom_vline(xintercept = pca_score$PC001, col = "red") ``` @@ -181,8 +182,9 @@ These three houses are extreme in the most influential variable (year built) sin they were new homes. The also tend to have fairly large garages: ```{r, echo = FALSE} -ggplot(training_data, aes(x = Garage_Area )) + - geom_histogram(col = "white", binwidth = 50) + +#| fig-alt: "Histogram chart. Garage_Area along the x-axis, count along the y-axis. Two red vertical lines are places. One on the edge of the distribution, another outside the distribution." +ggplot(training_data, aes(x = Garage_Area)) + + geom_histogram(col = "white", binwidth = 50) + geom_vline(xintercept = ames_new$Garage_Area, col = "red") ``` @@ -219,8 +221,8 @@ Two caveats for using the hat values: Let us apply `apd_hat_values` modeling function to our data (while ensuring that there are no linear dependencies): ```{r} -non_singular_recipe <- - training_recipe %>% +non_singular_recipe <- + training_recipe %>% step_lincomb(all_predictors()) # Recipe interface @@ -229,7 +231,5 @@ ames_hat <- apd_hat_values(non_singular_recipe, training_data) ```{r reset_options} - options(prev_options) - ```