diff --git a/.babelrc b/.babelrc index 203e65d1..d47d462d 100644 --- a/.babelrc +++ b/.babelrc @@ -1,15 +1,18 @@ { "presets": [ - ["env", { - "targets": { - "browsers": ["last 2 versions", "ie >= 9"] + [ + "env", + { + "targets": { + "browsers": ["last 2 versions", "ie >= 9"] + } } - }], + ], "stage-3" ], "env": { "test": { "plugins": ["babel-plugin-rewire"] - }, + } } } diff --git a/.eslintignore b/.eslintignore index ec9ea4f0..0ee30a26 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,4 +1,4 @@ coverage/ dist/ -docs/ +docs/dist dist-es5-module/ diff --git a/.gitignore b/.gitignore index 92d88c4f..b7fa5640 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ docs/build docs/.sass-cache/ dist-es5-module/ yarn.lock +tmp diff --git a/docs-src/configuration-help.md b/docs-src/configuration-help.md deleted file mode 100644 index 30355613..00000000 --- a/docs-src/configuration-help.md +++ /dev/null @@ -1,79 +0,0 @@ ---- -title: Customize my DocSearch ---- - -## What content do we recommend to index? - -### Code blocks - -We **do not recommend** indexing **code tags** since code blocks are most likely -very similar and redundant from one page to another. -You can exclude code blocks by adding their matching selectors to `selectors_exclude`. - -A good practice would be to emphasize the meaningful underlying part of it -thanks to a dedicated class, which you will want to add to the `text` selector -in your configuration file. - -For example, in this code snippet, you can exclude the code but the parameters of the function: -``` - -function(something useful to search for) -... - -``` - -### Table of contents - -The elements of the table of contents only *target* but do not provide content. -They are merely a step on the way to reaching relevant content. As a result, they are -almost always in a different place from the payload. This is why we consider the -table of contents an obstacle for DocSearch to find the coveted information. - -We therefore **do not recommend** indexing the elements of the table of contents; their matching -selectors should be added to `selectors_exclude`. - -## How are my DocSearch records ranked? - -DocSearch empowers the Algolia ranking strategy. The formula is completely -based on [the tie-breaking approach](https://www.algolia.com/doc/guides/ranking/ranking-formula/#tie-breaking-approach). - -The special feature of DocSearch's ranking resides in [the custom ranking](https://www.algolia.com/doc/guides/ranking/custom-ranking/): - -We have defined 3 main weight indicators for every record. These values are -ordered by importance following the tie-breaking approach: -1. `page_rank`: this value, equal to `0` by default, can be set from the -`start_urls` object. It can be customized in order to boost or restrain some -records depending on **their webpage's URL**. It will need to match a **specific -regular expression pattern**. - -**Example:** - ```json -{ - "index_name": "example", - "start_urls": [ - { - "url": "http://example.com/docs/api/v1\\.[0-9]", - "page_rank": 1 - } - ] -} -``` -2. `level`: this value depends on the `level` of the record. A record's level is -its **deepest level attribute not null**. `text` records have a weight of 0. -3. `position`: This value is the position of the matching element within every -picked up element along the original HTML flow. The **sooner** the record appears, -the **higher** it will be ranked. - -You can override the way these elements are impacting the search thanks to `custom_settings`. - - **Example:** - - ```json -"custom_settings": { - "customRanking": [ - "asc(weight.position)", - "desc(weight.page_rank)", - "desc(weight.level)" - ] -} - ``` \ No newline at end of file diff --git a/docs-src/crawler-config.md b/docs-src/crawler-config.md deleted file mode 100644 index d3556718..00000000 --- a/docs-src/crawler-config.md +++ /dev/null @@ -1,422 +0,0 @@ ---- -layout: two-columns -title: Make the most of your configuration ---- - -## Introduction - -The DocSearch scraper will use a configuration file specifying: - - the Algolia index name that will store the records resulting from the crawling - - the URLs it needs to crawl - - the URLs it shouldn't crawl - - the (hierarchical) CSS selectors to use to extract the relevant content from your webpages - - the CSS selectors to skip - - An optional sitemap URL that will be crawled and then scraped - - additional options you might provide to fine-tune the scraping - -## How it works - -Once you run the DocSearch scraper on a specific configuration, it will: - - crawl all the URLs you specified (from the `start_urls` or the `sitemap`) - - follow all the hyperlinks mentioned in the page, and continue the crawling there - - stop the crawling as soon as you've reached a URL that is not specified in your configuration or affiliated to a start url - - extract the content of every single crawled page following the logic you defined using the CSS selectors - - push the resulting records to the Algolia index you configured - -## Configuration format - -A configuration file looks like: - -```json -{ - "index_name": "stripe", - "start_urls": [ - "https://stripe.com/docs" - ], - "stop_urls": [ - "https://stripe.com/docs/api" - ], - "selectors": { - "lvl0": "#content header h1", - "lvl1": "#content article h1", - "lvl2": "#content section h3", - "lvl3": "#content section h4", - "lvl4": "#content section h5", - "lvl5": "#content section h6", - "text": "#content header p,#content section p,#content section ol" - }, - "selectors_exclude": [ - ".method-list", - "aside.note" - ], - // additional options - [...] -} -``` - -It must be **a valid JSON file** - -## DocSearch options - -### `index_name` _Mandatory_ - -Name of the Algolia index where all the data will be pushed. - -**On our own infrastructure, this name must be equal to the configuration file name** - -We mostly attribute it on our own regarding plenty of underlying factors. The `apiKey` that we provide is generated with a restriction on the `index_name`. Changing the `index_name` would require to ask for a new key. Thus if you want to **change the name**, please **submit a new configuration**, we will generate a new key accordingly. - -### `start_urls` _Mandatory_ -You can pass either a string or an array of urls. The crawler will go to each -page in order, following every link it finds on the page. It will only stop if -the domain is outside of the `allowed_domains` or if the link is blacklisted in -`stop_urls`. - -Note that it currently does not follow *301* redirects. - -This parameter also behaves as a [regular expression](https://en.wikipedia.org/wiki/Regular_expression). If you don't use a sitemap, you must define at least one reachable URL (HTTP 20x). Otherwise the scraping will fail. - -You can build a more advanced URL. You will need to use a JSON object with a `variables` attribute. This attribute is an array of variables that will be injected into the URLs: - -**Example:** -```json -{ - "url": "http://example.com/docs/(?P.*?)/(?P.*?)/", - "variables": { - "version": [ - "latest", - "3.3", - [...] - ], - "lang": [ - "en", - "fr", - [...] - ] -} -``` -The whole pattern `(?P.*?)` will be replaced by the value assigned in the related key `version`. - -The variable name is not fixed. Please note that those variables will behave as -[`attributesForFaceting`](https://www.algolia.com/doc/api-reference/api-parameters/attributesForFaceting/) which may help you [restrain the scope of the search from the snippet](https://www.algolia.com/doc/guides/searching/faceting/). - -Thus you can limit the scope of the search to the records from the pages encompassed by `http://example.com/docs/en/latest/*` thanks to the following snippet: -```js - -``` - -In order to promote some pages, you can set the `page_rank` attribute (default: `0`, can be a positive or negative integer). - -Finally, If your website contains different parts and layouts, you can define specific `selectors` for each part and apply them using `selectors_key`: - -**Example:** -```json -{ - "index_name": "example", - "start_urls": [ - "http://example.com/docs/latest/", - { - "url": "http://example.com/docs/concepts/", - "page_rank": 1, - "selectors_key": "concepts" - } - ], - "selectors": { - "default": { - "lvl0": ".docSearch-content h1", - "lvl1": ".docSearch-content h2", - "lvl2": ".docSearch-content h3", - "lvl3": ".docSearch-content h4", - "lvl4": ".docSearch-content h5", - "text": ".docSearch-content p, .docSearch-content li" - }, - "concepts": { - "lvl0": ".docSearch-header h2", - "lvl1": ".docSearch-content h1", - "lvl2": ".docSearch-content h2", - "lvl3": ".docSearch-content h3", - "lvl4": ".docSearch-content h5", - "text": ".docSearch-content p" - } - } - [...] -} -``` - -#### `start_urls.tags` - -Tags will be apllied to every record from the matchin matched pages, i.e., its URL is matchin the `url`. These `tags` will [be processed as `attributesForFaceting`](https://www.algolia.com/doc/api-reference/api-parameters/attributesForFaceting/) . If you want further detail, [check the original documentation](https://www.algolia.com/doc/api-reference/api-parameters/facetFilters/). -We do recommend to use `tags` if you want [to refine the scope of your search](https://www.algolia.com/doc/guides/searching/faceting/#faceting-overview). - -From your search UI, you will need to use the following input: -```js -algoliaOptions: { 'facetFilters': ["tags:$VALUE"] }, -``` - -Default not used. Must be an array. - - -**Example:** - - From the config: -```json -"start_urls": [ - { - "url": "http://example.com/docs/concepts/", - "selectors_key": "concepts" - } - ``` - - From the search UI: - ```js - algoliaOptions: { 'facetFilters': ["tags:concepts"] }, - ``` -### `scrape_start_urls` - -This boolean let you decide if you want to extract the content of the starting pages. - -Default is `false` - -### `stop_urls` _Optional_ - -This array can be used to blacklist URLs. The crawler will stop on these and -will not consider their content. Likewise, if a link within a crawled webpage -targets such pages, the crawler will not follow the link. -You can use a regular expression as well as plain urls. - -Note: It is sometimes needed to add `http://www.example.com/index.html` pages to -the `stop_urls` list if you set `http://www.example.com` as a `start_urls`, to -avoid duplicated content. - -### `selectors` _Mandatory_ - -This object contains all the CSS selectors that will be used to create the -record hierarchy. It can contains up to 6 levels (`lvl0`, `lvl1`, `lvl2`, `lvl3`, `lvl4`, -`lvl5`) and `text`. - -A default config would be to target the page `title` or `h1` as `lvl0`, the `h2` -as `lvl1` and `h3` as `lvl2`. `text` is usually any `p` of text. - -We recommend making use of at least the three first levels for better relevancy. - -### Global selectors _Optional_ - -It's possible to make a selector global which means that all records from the page will have -this value. This is useful when you have a title that is in the right sidebar and -the sidebar is placed after the content in the DOM. - -```json -"selectors": { - "lvl0": { - "selector": "#content header h1", - "global": true - } -} -``` - -### Xpath selector _Optional_ - -By default, `selectors` are considered to be [css selectors](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors) but you can specify that a selector is an [XPath one](https://developer.mozilla.org/en-US/docs/Web/XPath). -This is useful when you want to do more complex selection like selecting the parent of a target. - -```json -"selectors": { - "lvl0": { - "selector": "//li[@class=\"chapter active done\"]/../../a", - "type": "xpath" - } -} -``` - -### Default value _Optional_ - -You have the possibility to add a default value which will be used if the selector doesn't match anything. - -```json -"selectors": { - "lvl0": { - "selector": "#content article h1", - "default_value": "Documentation" - } -} -``` - -### `selectors_exclude` _Optional_ - -By default, the `selectors` search is applied page-wide. If there are some parts -of the page that you do not want to include (e.g. a table of content, a sidebar or a footer), -you can add them to the `selectors_exclude` key. - -### Sitemap crawling _Optional_ - -Our crawler offers you to crawl a site by discovering the URLs using Sitemaps. Thus, you can define the direct URL(s) to your sitemap XML file, `sitemap_urls`. In order to parse it, you should establish regex(s), `sitemap_urls_regex`, which will match the URLs to crawl. Otherwise it will use the `start_urls` pattern in order to match the expected URLs. - -For sites that use Sitemap index files that point to other sitemap files, all those sitemaps will be followed. - -### `sitemap_urls` _Optional_ -A list of urls pointing to the sitemaps (or sitemap index) you want to crawl. Must be provided if you want docsearch to discover your via sitemaps. - -### `sitemap_urls_regexs` _Optional_ -A list of regular expressions that will be applied to each URL from the sitemap. If one of the patterns match a URL, this link will be scraped. If no regular expression is defined, the start_urls will be taken as a pattern. - -### `force_sitemap_urls_crawling` _Optional_ -Specifies if the matched URLs should not respect the same rules as the crawled hyperlink. If set to true, each URL will be scraped even if it does comply with the `start_urls` or `stop_urls`. Default is `force_sitemap_urls_crawling` set to `false` - -**Example:** -```json -{ - [...] - "sitemap_urls": [ - "https://www.mySite.com/sitemap.xml" - ], - "sitemap_urls_regexs": [ - "/doc/" - ], - "force_sitemap_urls_crawling": true, - [...] -} -``` -Given this configuration, every webpage of the sitemap whose URL contains '/doc/' will be scraped even if they don't comply with `start_urls` or `stop_urls`. - -### `allowed_domains` _Optional_ - -You can pass an array of strings. This is the whitelist of -domains the crawler will browse. If a link targets a page that is not in the -whitelist, the crawler will not follow it. - -Default is the domain of the first elements in the `start_urls`. - -### `min_indexed_level` _Optional_ - -Lets you define the minimum level at which you want a record to be indexed. For -example, with a `min_indexed_level: 1`, you will only index records that have at -least a `lvl0` and a `lvl1` field. - -This is especially useful when the documentation is split into several pages and -all pages duplicate the main title or introduction (see [this issue][https://github.com/algolia/docsearch-configs/issues/83]). -With `min_indexed_level`, you can ignore the duplicated title. - -Default is `0` - -### `only_content_level` _Optional_ - -When `only_content_level` is set to `true`, we only index builded records which match the `text` selectors. Every other record will be skipped. This parameter is more flexible than `min_indexed_level`. Once `only_content_level` is used, `min_indexed_level` becomes pointless. - -Default is `false` - -### `js_render` _Optional_ - -The HTML code that we crawl is sometimes generated using Javascript. In those -cases, the `js_render` option must be set to `true`. It will enable our -internal proxy (Selenium) to render pages before crawling them. - -We highly recommend avoiding client-side rendering. It mainly decreases [the performance of your website](https://medium.com/walmartlabs/the-benefits-of-server-side-rendering-over-client-side-rendering-5d07ff2cefe8). - -Default is `false` - -### `js_wait` _Optional_ - -When `js_render` is set to `true`, the `js_wait` parameter lets you change the default waiting time (in seconds) to render the -webpage with the Selenium emulator. - -Default is `0`s - -### `use_anchors` _Optional_ - -The `use_anchors` needs to be set to True for a javascript doc when the hash is -used to route the query. Internally, this will disable the canonicalize feature that -is removing the hash from the url. - -This parameter is optional and is set to `false` by default. - -### `strip_chars` _Optional_ - -A list of characters to remove from the indexed text. - -You can also override the default `strip_chars` per level - -```json -"selectors": { - "lvl0": { - "selector": "#content article h1", - "strip_chars": " .,;:" - } -} -``` - -### `nb_hits` _Mandatory_ - -Each time the configuration is locally run, this attribute is set to the number of records indexed. - -This attribute is used for purposed monitoring. We keep a track of its evolution in order to detect main changes. -Default is `0`. - -### `custom_settings` _Optional_ - -This object is [any custom Algolia settings](https://www.algolia.com/doc/api-client/settings/#the-scope-of-settings-and-parameters) you would like to pass to the index -settings. You will [look under the hood of algolia](https://www.algolia.com/doc/). - -### `nb_hits_max` _Optional_ - -The number of maximum records allowed for the whole indexing. If the scrapping is bigger, it will fail. - -This value is not meant to be set from anyone except DocSearch maintainer. - -Default is `600 000` (arbitrary, might change) - -## Possible issues - -### Duplicated content - -It could happen that the crawled website returned duplicated data. Most of the time, this is because the crawled pages got the same urls with two different schemes. - -If we have URLs like `http://website.com/page` and `http://website.com/page/` (notice the second one ends with `/`), the scraper will consider them as different. This can be fixed by adding a regex to the `stop_urls` in the `config.json`: - -```json -"stop_urls": [ - "/$" -] -``` - -In this attribute, you can also list the pages you want to skip: - -```json -"stop_urls": [ - "http://website.com/page/" -] -``` - -### Anchors - -The scraper will also consider pages with anchors as different pages. Make sure you remove any hash sign from the urls that you put in the stop & start URLs: - -*Bad:* - -```json -"stop_urls": [ - "http://website.com/page/#foo" -] -``` - -*Good:* - -```json -"stop_urls": [ - "/$" -] -``` - -Or : - -```json -"stop_urls": [ - "http://website.com/page/" -] -``` diff --git a/docs-src/crawler.md b/docs-src/crawler.md deleted file mode 100644 index 72a13717..00000000 --- a/docs-src/crawler.md +++ /dev/null @@ -1,175 +0,0 @@ ---- -layout: two-columns -title: DocSearch on your own infrastructure ---- - -In the regular use of DocSearch, you don't have to bother, we **handle the whole stack**. - -In some specific use cases, you may want to look under the hood and DIY. -This is welcome with DocSearch since every tool is open source. -DocSearch is composed of 3 different projects: -* [The front-end of DocSearch](https://github.com/algolia/docsearch) -* [The scraper](https://github.com/algolia/docsearch-scraper), which browses & indexes web pages -* [The configuration repo](https://github.com/algolia/docsearch-configs) for the scraper. - -## The DocSearch backend: [our scraper](https://github.com/algolia/docsearch-scraper): - -This project is a collection of submodules, each one in its own directory: -* cli: A command line tool to manage DocSearch. Run `./docsearch` and follow the steps -* deployer: Tool used by Algolia to deploy the configuration in our Apache Mesos infrastructure -* doctor: A monitoring/repair tool to check if the indices built by the scraper are in good shape -* playground: An HTML page to easily test DocSearch indices -* scraper: The core of the scraper. It reads the configuration file, fetches the web pages and indexes them in Algolia. - -## Install - -The DocSearch scraper is based on [Scrapy](https://scrapy.org), a famous python-based web scraper. Because it might need some JavaScript to render the pages it crawls, the scraper is also depending on [selenium](http://www.seleniumhq.org). - -To ease the setup process, a Docker container is provided to help you run the scraper. - -### Environment: - -- Install `python` & `pip` - - `brew install python # will install pip` - - `apt-get install python` - - Or any other way -- `git clone git@github.com:algolia/docsearch-scraper.git` -- `cd docsearch-scraper` -- `pip install --user -r requirements.txt` - -### With docker: - -- Build the underlying Docker image: `./docsearch docker:build` - -## Configure DocSearch - -You need to create an [Algolia account](https://www.algolia.com/users/sign_up) to get the `APPLICATION_ID` and (admin) `API_KEY` credentials the scraper will use to create the underlying indices. - -Create a file named `.env` file at the root of the project containing the following keys: - -``` -APPLICATION_ID= -API_KEY= -``` - -And run the CLI to see the available commands: - -```sh -$ ./docsearch -Docsearch CLI - -Usage: - ./docsearch command [options] [arguments] - -Options: - --help Display help message - -Available commands: - bootstrap Bootstrap a docsearch config - run Run a config - playground Launch the playground - docker - docker:build Build the scraper images (dev, prod, test) - docker:run Run a config using docker - test Run tests -``` - -## Use DocSearch - -### Create a config - -To use DocSearch, the first thing you need is to create a crawler config. For more details about configs, check out [our configuration repo](https://github.com/algolia/docsearch-configs), you'll have a list of options you can use and a lot of live and working examples. - -### Crawl the website - -#### With docker: - -```sh -$ ./docsearch docker:run /path/to/your/config -``` - -#### Without docker - -```sh -$ ./docsearch run /path/to/your/config -``` - -### Try it with our playground - -You can open the included **Playground** to test your DocSearch index. - -```sh -$ ./docsearch playground -``` - -Enter your credentials and the index name mentioned in the crawler config file, and try the search! - -### Integrate DocSearch to your website - -To add the DocSearch dropdown menu to your website, add the following snippet to your website: - -```html - - - -``` - -And you are good to go! - -### Specify your own appId - -If you are running the scraper on your own, you will need to tell the widget about your Algolia application ID via the `appId` parameter. - -```javascript - var search = docsearch({ - appId: '', // the application ID containing your DocSearch data - ... // other parameters as above - }); -``` - -If Algolia is handling the crawling of your site, you do not need to specify `appId`. - -## Admin task - -If you are an Algolia employee and want to manage a DocSearch account, -you'll need to add the following variables in your `.env` file: - -``` -WEBSITE_USERNAME= -WEBSITE_PASSWORD= -SLACK_HOOK= -SCHEDULER_USERNAME= -SCHEDULER_PASSWORD= -DEPLOY_KEY= -``` - -The cli will then have more commands for you to run. - -For some actions like deploying you might need to use different credentials than the ones in the _.env_ file. -To do this you need to override them when running the cli tool: - -```sh -APPLICATION_ID= API_KEY= ./docsearch deploy:configs -``` - -## Run the tests - -### With docker: - -```sh -$ ./docsearch test -``` - -### Without docker: - -```sh -$ pip install pytest -$ API_KEY='test' APPLICATION_ID='test' python -m pytest -``` diff --git a/docs/.babelrc b/docs/.babelrc new file mode 100644 index 00000000..70b17e63 --- /dev/null +++ b/docs/.babelrc @@ -0,0 +1,5 @@ +{ + "presets": [["@babel/preset-env", { "targets": { "node": 6 } }]], + "plugins": ["@babel/plugin-proposal-object-rest-spread"], + "comments": false +} diff --git a/docs/Gemfile b/docs/Gemfile deleted file mode 100644 index 8809e7e3..00000000 --- a/docs/Gemfile +++ /dev/null @@ -1,39 +0,0 @@ -# If you do not have OpenSSL installed, change -# the following line to use 'http://' -source 'https://rubygems.org' - -# For faster file watcher updates on Windows: -gem 'wdm', '~> 0.1.0', platforms: [:mswin, :mingw] - -# Windows does not come with time zone data -gem 'tzinfo-data', platforms: [:mswin, :mingw, :jruby] - -gem 'rake' - -# Middleman Gems -gem 'middleman', '>= 4.0.0' -gem 'middleman-livereload' -gem 'middleman-syntax' -gem 'middleman-autoprefixer' -gem 'middleman-s3_sync', github: 'fredjean/middleman-s3_sync', ref: '8c4e57a' -gem 'middleman-minify-html' -gem 'sprockets', '4.0.0.beta4' -gem 'middleman-sprockets' -gem 'sprockets-es6' -gem 'redcarpet', '>= 3.3.4' -gem 'nokogiri' -gem 'sassc' -gem 'kramdown', '>= 1.12.0' -gem 'pry-byebug' -gem 'rb-readline' -gem 'mime-types' -gem 'highlight', :require => 'simplabs/highlight' # TODO: Replace with rouge -gem 'htmlentities' -gem 'better_errors' -gem 'binding_of_caller' -gem 'octokit' -gem 'google-api-client', '0.8.6' -gem 'algoliasearch' -gem 'middleman-vcs-time' -gem 'hashie', '3.4.6' -gem 'haml', '4.0.7' diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock deleted file mode 100644 index b1fcb1ba..00000000 --- a/docs/Gemfile.lock +++ /dev/null @@ -1,293 +0,0 @@ -GIT - remote: git://github.com/fredjean/middleman-s3_sync.git - revision: 8c4e57a67048a3bafa4529c8f46184d33996e52b - ref: 8c4e57a - specs: - middleman-s3_sync (4.0.3) - ansi (~> 1.5.0) - fog-aws (>= 0.1.1) - map - middleman-cli - middleman-core (>= 4.0.0) - mime-types (~> 3.1) - parallel - ruby-progressbar - unf - -GEM - remote: https://rubygems.org/ - specs: - activesupport (5.0.6) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (~> 0.7) - minitest (~> 5.1) - tzinfo (~> 1.1) - addressable (2.5.2) - public_suffix (>= 2.0.2, < 4.0) - algoliasearch (1.16.0) - httpclient (~> 2.8.3) - json (>= 1.5.1) - ansi (1.5.0) - autoparse (0.3.3) - addressable (>= 2.3.1) - extlib (>= 0.9.15) - multi_json (>= 1.0.0) - autoprefixer-rails (7.1.5) - execjs - babel-source (5.8.35) - babel-transpiler (0.7.0) - babel-source (>= 4.0, < 6) - execjs (~> 2.0) - backports (3.9.1) - better_errors (2.3.0) - coderay (>= 1.0.0) - erubi (>= 1.0.0) - rack (>= 0.9.0) - binding_of_caller (0.7.2) - debug_inspector (>= 0.0.1) - builder (3.2.3) - byebug (9.1.0) - coderay (1.1.2) - coffee-script (2.4.1) - coffee-script-source - execjs - coffee-script-source (1.12.2) - compass-import-once (1.0.5) - sass (>= 3.2, < 3.5) - concurrent-ruby (1.0.5) - contracts (0.13.0) - debug_inspector (0.0.3) - dotenv (2.2.1) - em-websocket (0.5.1) - eventmachine (>= 0.12.9) - http_parser.rb (~> 0.6.0) - erubi (1.6.1) - erubis (2.7.0) - eventmachine (1.2.5) - excon (0.59.0) - execjs (2.7.0) - extlib (0.9.16) - faraday (0.13.1) - multipart-post (>= 1.2, < 3) - fast_blank (1.0.0) - fastimage (2.1.0) - ffi (1.9.18) - fog-aws (1.4.1) - fog-core (~> 1.38) - fog-json (~> 1.0) - fog-xml (~> 0.1) - ipaddress (~> 0.8) - fog-core (1.45.0) - builder - excon (~> 0.58) - formatador (~> 0.2) - fog-json (1.0.2) - fog-core (~> 1.0) - multi_json (~> 1.10) - fog-xml (0.1.3) - fog-core - nokogiri (>= 1.5.11, < 2.0.0) - formatador (0.2.5) - google-api-client (0.8.6) - activesupport (>= 3.2) - addressable (~> 2.3) - autoparse (~> 0.3) - extlib (~> 0.9) - faraday (~> 0.9) - googleauth (~> 0.3) - launchy (~> 2.4) - multi_json (~> 1.10) - retriable (~> 1.4) - signet (~> 0.6) - googleauth (0.5.3) - faraday (~> 0.12) - jwt (~> 1.4) - logging (~> 2.0) - memoist (~> 0.12) - multi_json (~> 1.11) - os (~> 0.9) - signet (~> 0.7) - haml (4.0.7) - tilt - hamster (3.0.0) - concurrent-ruby (~> 1.0) - hashie (3.4.6) - highlight (2.0.0) - htmlcompressor (0.2.0) - htmlentities (4.3.4) - http_parser.rb (0.6.0) - httpclient (2.8.3) - i18n (0.7.0) - ipaddress (0.8.3) - json (2.1.0) - jwt (1.5.6) - kramdown (1.15.0) - launchy (2.4.3) - addressable (~> 2.3) - listen (3.0.8) - rb-fsevent (~> 0.9, >= 0.9.4) - rb-inotify (~> 0.9, >= 0.9.7) - little-plugger (1.1.4) - logging (2.2.2) - little-plugger (~> 1.1) - multi_json (~> 1.10) - map (6.6.0) - memoist (0.16.0) - method_source (0.9.0) - middleman (4.2.1) - coffee-script (~> 2.2) - compass-import-once (= 1.0.5) - haml (>= 4.0.5) - kramdown (~> 1.2) - middleman-cli (= 4.2.1) - middleman-core (= 4.2.1) - sass (>= 3.4.0, < 4.0) - middleman-autoprefixer (2.8.0) - autoprefixer-rails (>= 7.0.1, < 8.0.0) - middleman-core (>= 3.3.3) - middleman-cli (4.2.1) - thor (>= 0.17.0, < 2.0) - middleman-core (4.2.1) - activesupport (>= 4.2, < 5.1) - addressable (~> 2.3) - backports (~> 3.6) - bundler (~> 1.1) - contracts (~> 0.13.0) - dotenv - erubis - execjs (~> 2.0) - fast_blank - fastimage (~> 2.0) - hamster (~> 3.0) - hashie (~> 3.4) - i18n (~> 0.7.0) - listen (~> 3.0.0) - memoist (~> 0.14) - padrino-helpers (~> 0.13.0) - parallel - rack (>= 1.4.5, < 3) - sass (>= 3.4) - servolux - tilt (~> 2.0) - uglifier (~> 3.0) - middleman-livereload (3.4.6) - em-websocket (~> 0.5.1) - middleman-core (>= 3.3) - rack-livereload (~> 0.3.15) - middleman-minify-html (3.4.1) - htmlcompressor (~> 0.2.0) - middleman-core (>= 3.2) - middleman-sprockets (4.1.1) - middleman-core (~> 4.0) - sprockets (>= 3.0) - middleman-syntax (3.0.0) - middleman-core (>= 3.2) - rouge (~> 2.0) - middleman-vcs-time (0.0.5) - middleman-core (~> 4.0) - mime-types (3.1) - mime-types-data (~> 3.2015) - mime-types-data (3.2016.0521) - mini_portile2 (2.3.0) - minitest (5.10.3) - multi_json (1.12.2) - multipart-post (2.0.0) - nokogiri (1.8.1) - mini_portile2 (~> 2.3.0) - octokit (4.7.0) - sawyer (~> 0.8.0, >= 0.5.3) - os (0.9.6) - padrino-helpers (0.13.3.4) - i18n (~> 0.6, >= 0.6.7) - padrino-support (= 0.13.3.4) - tilt (>= 1.4.1, < 3) - padrino-support (0.13.3.4) - activesupport (>= 3.1) - parallel (1.12.0) - pry (0.11.1) - coderay (~> 1.1.0) - method_source (~> 0.9.0) - pry-byebug (3.5.0) - byebug (~> 9.1) - pry (~> 0.10) - public_suffix (3.0.0) - rack (2.0.3) - rack-livereload (0.3.16) - rack - rake (12.1.0) - rb-fsevent (0.10.2) - rb-inotify (0.9.10) - ffi (>= 0.5.0, < 2) - rb-readline (0.5.5) - redcarpet (3.4.0) - retriable (1.4.1) - rouge (2.2.1) - ruby-progressbar (1.9.0) - sass (3.4.25) - sassc (1.11.4) - bundler - ffi (~> 1.9.6) - sass (>= 3.3.0) - sawyer (0.8.1) - addressable (>= 2.3.5, < 2.6) - faraday (~> 0.8, < 1.0) - servolux (0.13.0) - signet (0.7.3) - addressable (~> 2.3) - faraday (~> 0.9) - jwt (~> 1.5) - multi_json (~> 1.10) - sprockets (4.0.0.beta4) - concurrent-ruby (~> 1.0) - rack (> 1, < 3) - sprockets-es6 (0.9.2) - babel-source (>= 5.8.11) - babel-transpiler - sprockets (>= 3.0.0) - thor (0.20.0) - thread_safe (0.3.6) - tilt (2.0.8) - tzinfo (1.2.3) - thread_safe (~> 0.1) - uglifier (3.2.0) - execjs (>= 0.3.0, < 3) - unf (0.1.4) - unf_ext - unf_ext (0.0.7.4) - -PLATFORMS - ruby - -DEPENDENCIES - algoliasearch - better_errors - binding_of_caller - google-api-client (= 0.8.6) - haml (= 4.0.7) - hashie (= 3.4.6) - highlight - htmlentities - kramdown (>= 1.12.0) - middleman (>= 4.0.0) - middleman-autoprefixer - middleman-livereload - middleman-minify-html - middleman-s3_sync! - middleman-sprockets - middleman-syntax - middleman-vcs-time - mime-types - nokogiri - octokit - pry-byebug - rake - rb-readline - redcarpet (>= 3.3.4) - sassc - sprockets (= 4.0.0.beta4) - sprockets-es6 - tzinfo-data - wdm (~> 0.1.0) - -BUNDLED WITH - 1.15.1 diff --git a/docs/Makefile b/docs/Makefile deleted file mode 100644 index d53b3d20..00000000 --- a/docs/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -all: install - bundle exec middleman server - -install: - bundle install - -build: - npm install - rm -rf build - bundle exec middleman build - -.PHONY: build diff --git a/docs/Rakefile b/docs/Rakefile deleted file mode 100644 index 8f0f0141..00000000 --- a/docs/Rakefile +++ /dev/null @@ -1,50 +0,0 @@ -require 'dotenv' -require 'yaml' -require_relative './lib/google_analytics_downloader.rb' - -Dotenv.load('.env') - -task :build do - sh "STAGE=#{ENV['STAGE'] || 'beta'} bundle exec middleman build" -end - -task :s3_sync do - sh "STAGE=#{ENV['STAGE'] || 'beta'} bundle exec middleman s3_sync" -end - -task :purge_cache do - stage = ENV['STAGE'] || 'beta' - # if stage == 'production' - sh <<-SHELL - curl -X DELETE "https://api.cloudflare.com/client/v4/zones/#{ENV['CLOUDFLARE_ZONE']}/purge_cache" \ - -H "X-Auth-Email: #{ENV['CLOUDFLARE_AUTH_EMAIL']}" \ - -H "X-Auth-Key: #{ENV['CLOUDFLARE_AUTH_KEY']}" \ - -H "Content-Type: application/json" \ - --data '{"tags":["algoliaweb-doc--#{stage}"]}' - SHELL - # else - # puts "Not in production, not purging cache" - # end -end - -task :deploy do - Rake::Task[:build].invoke - Rake::Task[:s3_sync].invoke - Rake::Task[:purge_cache].invoke -end - -task :production do - ENV['STAGE'] = 'production' -end - -task :beta do - ENV['STAGE'] = 'beta' -end - -task :download_google_analytics_data do - file = File.expand_path(File.join(__FILE__, '..', 'app_data', 'google_analytics.yml')) - File.open(file, 'w') do |f| - f << GoogleAnalyticsDownloader.fetch.to_yaml - end -end - diff --git a/docs/algolia-aerial/README.md b/docs/algolia-aerial/README.md deleted file mode 100644 index b6b6e3d5..00000000 --- a/docs/algolia-aerial/README.md +++ /dev/null @@ -1,20 +0,0 @@ -# algolia-aerial -Aerial.css package - -## Definition -This project aims to provide a coherent and unified design system for algolia employees. -This design system is also known as Aerial. - -## Documentation -Go to https://aerialcss.algolia.com to read the full documentation - -## Usage - -To start using aerial.css, simply do `npm install algolia-aerial` or `yarn add algolia-aerial` - -then go to your main css / sass file, and add : - -```css -@import './node_modules/algolia-aerial/dist/aerial.css'; -``` - diff --git a/docs/algolia-aerial/package.json b/docs/algolia-aerial/package.json deleted file mode 100644 index 47f45b4c..00000000 --- a/docs/algolia-aerial/package.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "scripts": { - "start": "webpack --config webpack.config.js && yarn optimize", - "optimize": "cleancss dist/aerial-source.css -o dist/aerial.css && yarn done", - "done": "echo '✨ Bundle done ✅' && du -h dist/aerial-source.css && du -h dist/aerial.css && yarn pj-version", - "pj-version": "npm --loglevel silent run vars", - "vars": "env | grep npm_package_version" - }, - "devDependencies": { - "extract-text-webpack-plugin": "3.0.2", - "node-sass": "4.9.3", - "sass-loader": "7.1.0", - "webpack": "3.12.0", - "webpack-auto-inject-version": "1.1.0", - "webpack-livereload-plugin": "2.1.1" - }, - "name": "algolia-aerial", - "version": "1.2.6", - "description": "algolia-aerial package", - "main": "webpack.config.js", - "author": "Lucas Bonomi <@LukyVj> (http://lucasbonomi.com)", - "license": "ISC", - "repository": { - "type": "git", - "url": "git+ssh://github.com/algolia/algolia-aerial.git" - }, - "dependencies": { - "clean-css-cli": "^4.1.6", - "css-loader": "^1.0.0", - "file-loader": "^1.0.0", - "style-loader": "^0.22.0", - "url-loader": "^1.0.0" - } -} diff --git a/docs/algolia-aerial/src/stylesheet/aerial.sass b/docs/algolia-aerial/src/stylesheet/aerial.sass deleted file mode 100644 index 2797fbfa..00000000 --- a/docs/algolia-aerial/src/stylesheet/aerial.sass +++ /dev/null @@ -1,24 +0,0 @@ -/*! Aerial.css [AIV]v{version} - {date}[/AIV] */ -* - box-sizing: border-box - -@import 'modules/base' -@import 'modules/mixins' - -// AERIAL.CSS -@import 'partials/bootstrap' -@import 'partials/fonts' - -@import 'components/scaffolding' -@import 'components/buttons' -@import 'components/cards' -@import 'components/code' -@import 'components/type' -@import 'components/tables' -@import 'components/forms' -@import 'components/input-groups' -@import 'components/alerts' - - -@import 'partials/colors' -@import 'partials/helpers' \ No newline at end of file diff --git a/docs/algolia-aerial/src/stylesheet/components/_alerts.sass b/docs/algolia-aerial/src/stylesheet/components/_alerts.sass deleted file mode 100644 index fee6a564..00000000 --- a/docs/algolia-aerial/src/stylesheet/components/_alerts.sass +++ /dev/null @@ -1,30 +0,0 @@ -.alert - border-radius: 6px - padding: 16px 24px - -.alert.alert-danger - background-color: rgba(255,79,129,0.1) - border: solid 1px rgba(255,79,129,0.2) - color: #ff4f81 !important - -.alert.alert-danger p - color: #ff4f81 !important - -.alert.alert-info - background-color: rgba(0,174,255,0.1) - border: solid 1px rgba(0,174,255,0.2) - color: #00aeff !important - -.alert.alert-info a - color: #007ab3 !important - text-decoration: underline - -.alert.alert-warning - background-color: rgba(255,193,104,0.25) - border: solid 1px rgba(255,193,104,0.4) - color: #c57c14 !important - -.alert.alert-success - background-color: rgba($shamrock,0.1) - border: solid 1px rgba($shamrock, 0.4) - color: $shamrock !important \ No newline at end of file diff --git a/docs/algolia-aerial/src/stylesheet/components/_buttons.sass b/docs/algolia-aerial/src/stylesheet/components/_buttons.sass deleted file mode 100644 index dc0b2f76..00000000 --- a/docs/algolia-aerial/src/stylesheet/components/_buttons.sass +++ /dev/null @@ -1,219 +0,0 @@ -.btn - display: inline-block - // For input.btn - font-weight: $btn-font-weight - text-align: center - vertical-align: middle - touch-action: manipulation - cursor: pointer - background-image: none - // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 - border: 1px solid transparent - white-space: nowrap - +user-select(none) - padding: 0 20px - display: inline-block - border-radius: 50px - font-size: 16px - font-weight: 400 - height: 40px - line-height: 40px - border: none - box-sizing: border-box - position: relative - transition: background .2s, box-shadow .2s - - &:active, - &.active - outline: 0 - background-image: none - +box-shadow(inset 0 3px 5px rgba(0, 0, 0, 0.125)) - - &:focus, - &.focus - +tab-focus - &:hover, - &:focus, - &.focus - color: $btn-default-color - - &:hover, &:focus, &:active, &.active - outline: 0 !important - box-shadow: none - text-decoration: none - - &.disabled, - &[disabled], - fieldset[disabled] & - cursor: $cursor-disabled - pointer-events: none - // Future-proof disabling of clicks - +opacity(0.65) - +box-shadow(none) - - @media (max-width: $screen-sm) - font-size: 14px - - .icon:before - position: relative - top: 2px - - -.btn-static-default - border: 2px solid $tertiary-color - color: $text-color - background-color: transparent - line-height: 36px - &:hover, &:focus - color: $text-color - background-color: rgba($tertiary-color,.3) - - -.btn-static-primary - border: none - color: #fff - background-image: linear-gradient(284deg, $java, $shamrock) - &:hover, &:focus - color: white - background-image: linear-gradient(284deg, $java, $shamrock) - &:active, &.active - background-image: linear-gradient(284deg, darken($java, 4%), darken($shamrock, 4%)) - - &.btn-shadow - box-shadow: 0 2px 6px 0 rgba($shamrock, 0.4) - &:hover, &:focus - box-shadow: 0 4px 12px rgba($shamrock, 0.4) - - -.btn-static-secondary - border: none - color: #fff - background-image: linear-gradient(80deg, $algolia-blue, $royal-blue) - &:hover, &:focus - color: white - background-image: linear-gradient(80deg, $algolia-blue, $royal-blue) - &:active, &.active - background-image: linear-gradient(80deg, darken($algolia-blue, 4%), darken($royal-blue, 4%)) - &.btn-shadow - box-shadow: 0 2px 6px 0 rgba($royal-blue, 0.4) - &:hover, &:focus - box-shadow: 0 4px 12px rgba($royal-blue, 0.4) - - - -.btn-static-tertiary - border: none - color: #fff - background-image: linear-gradient(112deg, $radical-red, $bittersweet) - &:hover, &:focus - color: white - background-image: linear-gradient(112deg, $radical-red, $bittersweet) - &:active, &.active - background-image: linear-gradient(112deg, darken($radical-red, 4%), darken($bittersweet, 4%)) - &.btn-shadow - box-shadow: 0 2px 6px 0 rgba($bittersweet, 0.4) - &:hover, &:focus - box-shadow: 0 4px 12px rgba($bittersweet, 0.4) - -/*! This button is generated on build and colored with $theme-color. - Think about changing the color of it to fit to your needs.*/ -.btn-static-theme - border: none - color: $bunting - background-color: $theme-color - &:hover, &:focus - color: $deep-cove - background-color: darken($theme-color, 10%) - &:active, &.active - background-image: darken($theme-color, 10%) - &.btn-shadow - box-shadow: 0 2px 6px 0 rgba($koromiko, 0.4) - &:hover, &:focus - box-shadow: 0 4px 12px rgba($koromiko, 0.4) - - svg - width: 16px - height: 16px - vertical-align: middle - margin-left: 0.5em - - use - fill: $bunting - - -.btn-static-inverse - color: white - &:hover, &:focus, &:active, &.active - color: white - - - -.btn-static-dark - color: $white - background-color: $deep-cove - background-image: linear-gradient(283deg, $deep-cove, $bunting) - border-color: $deep-cove - &:hover, &:focus - color: $white - background-color: $bunting - border-color: $bunting - &.btn-shadow - box-shadow: 0 2px 6px 0 rgba($bunting, 0.4) - &:hover, &:focus - box-shadow: 0 4px 12px rgba($bunting, 0.4) - - &:active, &.active - background-image: linear-gradient(283deg, darken($deep-cove, 10%), darken($bunting, 10%)) - -.btn-static-white - color: $bunting - background-color: $white - border-color: $white - &:hover, &:focus - color: $bunting - - -.btn-static-enterprise - color: $white - background-color: $deep-cove - border: solid 2px $shamrock - line-height: 36px - - &:hover, &:focus - color: white - background-color: $shamrock - border-color: $shamrock - - -// Circles -.btn-circle - width: 42px - height: 42px - padding: 0 - line-height: 42px - - - -// Shadows -.btn-static-shadow-dark - box-shadow: 0 2px 6px 0 rgba($deep-cove, 0.5) - &:hover, &:focus - box-shadow: 0 4px 12px rgba($deep-cove, 0.5) - - -.btn-static-default, -.btn-static-primary, -.btn-static-secondary, -.btn-static-tertiary, -.btn-static-inverse, -.btn-static-dark, -.btn-static-enterprise - &:active, &.active, - &.btn-shadow:active, .btn-shadow.active, - &.btn-static-shadow-dark:active, .btn-static-shadow-dark.active - box-shadow: inset 0 0 4px 2px rgba(#050f2c, 0.3) - - -// Sizes -.btn-lg - min-width: 210px diff --git a/docs/algolia-aerial/src/stylesheet/components/_cards.sass b/docs/algolia-aerial/src/stylesheet/components/_cards.sass deleted file mode 100644 index 186a2003..00000000 --- a/docs/algolia-aerial/src/stylesheet/components/_cards.sass +++ /dev/null @@ -1,184 +0,0 @@ - -.al-card - background-color: $white - box-shadow: 0 2px 6px 0 rgba($deep-cove, 0.4) - padding: 40px 24px - position: relative - border-radius: 4px - - &.small-card - .card-title, - .card-icon, - .card-text - vertical-align: middle - - .card-title - color: $bunting - font-size: 16px - font-weight: 800 - padding: 0 - margin: 0 - opacity: 0.8 - margin-bottom: 8px - text-transform: none - - .card-icon svg - width: 72px - - .card-text - font-size: 16px - line-height: 24px - color: $bunting - opacity: 0.7 - - &.cover-card - height: 240px - margin: 0 auto 24px - width: 240px - border-radius: 5px - overflow: hidden - - .card-background - width: 100% - height: 100% - position: absolute - transition: transform 0.3s ease - top: 50% - left: 50% - transform: translate(-50%, -50%) - - &:after - position: absolute - display: block - content: '' - width: 100% - height: 100% - top: 0 - left: 0 - background: rgba($deep-cove, 0.5) - transition: opacity 0.3s ease - - .card-icon - position: absolute - z-index: 12 - top: 50% - left: 50% - transform: translate(-50%, -50%) - transition: transform 0.3s ease - -// Card border -.card-border, -.card-border-quote - position: relative - - .card-border-line - position: absolute - top: 0 - left: 0 - height: 5px - width: 100% - border-top-left-radius: 6px - border-top-right-radius: 6px - -.card-border - height: 100% - - -// Card border with media ( img, videos ) -.card-border-media - overflow: hidden - min-height: 200px - - .card-header - width: 100% - height: 100% - height: 228px - overflow: hidden - position: relative - - img - width: 100% - height: 100% - opacity: 0.8 - will-change: opacity, mix-blend-mode - border-top-left-radius: 6px - border-top-right-radius: 6px - - @supports (mix-blend-mode: soft-light) - mix-blend-mode: soft-light - transition: opacity 0.2s ease, mix-blend-mode 0.2s ease - - @supports (not (mix-blend-mode: soft-light)) - opacity: 0.6 - - @supports (not (object-fit: cover)) - height: auto - position: absolute - top: 50% - transform: translateY(-50%) - - @supports (object-fit: cover) - object-fit: cover - object-position: center center - - .card-separator - height: 5px - width: 100% - - - - &.card-border-media-effect - .card-header img - filter: grayscale(100%) - &:hover .card-header img - filter: grayscale(0) - @supports (mix-blend-mode: soft-light) - mix-blend-mode: unset - opacity: 1 - - -// Card border quotes -.card-border-quote - - .card-container - &:before - content: '' - display: block - width: 14px - height: 14px - background: transparent - position: absolute - left: 0 - right: 0 - margin: auto - bottom: -10px - border-radius: 100px - box-shadow: 0 4px 20px rgba($bunting,0.08), 0 2px 9px 0 rgba($bunting,0.07), 0 4px 18px rgba($bunting,0.07) - z-index: -1 - &:after - content: '' - display: block - width: 18px - height: 18px - background: #fff - position: absolute - left: 0 - right: 0 - margin: auto - bottom: -9px - transform: rotate(-45deg) - - - .quote-author - - .avatar - position: relative - width: 42px - height: 42px - border-radius: 100px - float: left - margin-right: 8px - .author-infos - width: calc(100% - 42px - 8px) - float: left - > span diff --git a/docs/algolia-aerial/src/stylesheet/components/_code.sass b/docs/algolia-aerial/src/stylesheet/components/_code.sass deleted file mode 100644 index d6d89641..00000000 --- a/docs/algolia-aerial/src/stylesheet/components/_code.sass +++ /dev/null @@ -1,45 +0,0 @@ -code, -kbd, -pre, -samp - font-family: $font-family-monospace - -code - padding: 2px 4px - font-size: 90% - color: $code-color - background-color: $code-bg - border-radius: $border-radius-base - -kbd - padding: 2px 4px - font-size: 90% - color: $kbd-color - background-color: $kbd-bg - border-radius: $border-radius-small - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25) - kbd - padding: 0 - font-size: 100% - font-weight: bold - box-shadow: none - -pre - display: block - padding: ($line-height-computed - 1) / 2 - margin: 0 0 $line-height-computed / 2 - font-size: $font-size-base - 1 - line-height: $line-height-base - word-break: break-all - word-wrap: break-word - color: $pre-color - background-color: $pre-bg - border: 1px solid $pre-border-color - border-radius: $border-radius-base - code - padding: 0 - font-size: inherit - color: inherit - white-space: pre-wrap - background-color: transparent - border-radius: 0 \ No newline at end of file diff --git a/docs/algolia-aerial/src/stylesheet/components/_forms.sass b/docs/algolia-aerial/src/stylesheet/components/_forms.sass deleted file mode 100644 index f6e8ef71..00000000 --- a/docs/algolia-aerial/src/stylesheet/components/_forms.sass +++ /dev/null @@ -1,110 +0,0 @@ -fieldset - padding: 0 - margin: 0 - border: 0 - min-width: 0 - -legend - display: block - width: 100% - padding: 0 - margin-bottom: $line-height-computed - font-size: $font-size-base * 1.5 - line-height: inherit - color: $legend-color - border: 0 - border-bottom: 1px solid $legend-border-color - -label - display: inline-block - max-width: 100% - margin-bottom: 5px - font-weight: bold - - -input[type="search"] - +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 - +tab-focus - -output - display: block - padding-top: $padding-base-vertical + 1 - font-size: $font-size-base - line-height: $line-height-base - color: $input-color - - -.form-control - display: block - width: 100% - height: $input-height-base - padding: $padding-base-vertical $padding-base-horizontal - font-size: $font-size-base - line-height: $line-height-base - color: $input-color - background-color: $input-bg - background-image: none - border: 1px solid $input-border - border-radius: $input-border-radius - +box-shadow(inset 0 1px 1px rgba(0, 0, 0, 0.075)) - +transition(border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s) - +form-control-focus - +placeholder - - &[disabled], - &[readonly], - fieldset[disabled] & - cursor: $cursor-disabled - background-color: $input-bg-disabled - opacity: 1 - -textarea.form-control - height: auto - - -input[type="search"] - -webkit-appearance: none - - -@media screen and (-webkit-min-device-pixel-ratio: 0) - input[type="date"], - input[type="time"], - input[type="datetime-local"], - input[type="month"] - line-height: $input-height-base - input[type="date"].input-sm, - input[type="time"].input-sm, - input[type="datetime-local"].input-sm, - input[type="month"].input-sm - line-height: $input-height-small - input[type="date"].input-lg, - input[type="time"].input-lg, - input[type="datetime-local"].input-lg, - input[type="month"].input-lg - line-height: $input-height-large - - -.form-group - margin-bottom: 15px - diff --git a/docs/algolia-aerial/src/stylesheet/components/_input-groups.scss b/docs/algolia-aerial/src/stylesheet/components/_input-groups.scss deleted file mode 100644 index 7a7c86b8..00000000 --- a/docs/algolia-aerial/src/stylesheet/components/_input-groups.scss +++ /dev/null @@ -1,144 +0,0 @@ - -.input-group .form-control { - height: 40px; - border-radius: 20px; -} -.input-group { - - display: table; - - - &[class*="col-"] { - float: none; - padding-left: 0; - padding-right: 0; - } - - .form-control { - position: relative; - z-index: 2; - - float: left; - - width: 100%; - margin-bottom: 0; - - &:focus { - z-index: 3; - } - } -} - -.input-group-lg > .form-control, -.input-group-lg > .input-group-addon, -.input-group-lg > .input-group-btn > .btn { - @extend .input-lg; -} -.input-group-sm > .form-control, -.input-group-sm > .input-group-addon, -.input-group-sm > .input-group-btn > .btn { - @extend .input-sm; -} - - -.input-group-addon, -.input-group-btn, -.input-group .form-control { - display: table-cell; - - &:not(:first-child):not(:last-child) { - border-radius: 0; - } -} -.input-group-addon, -.input-group-btn { - width: 1%; - white-space: nowrap; - -} - -.input-group-addon { - padding: $padding-base-vertical $padding-base-horizontal; - font-size: $font-size-base; - font-weight: normal; - line-height: 1; - color: $input-color; - text-align: center; - background-color: $input-group-addon-bg; - border: 1px solid $input-group-addon-border-color; - border-radius: $input-border-radius; - - &.input-sm { - padding: $padding-small-vertical $padding-small-horizontal; - font-size: $font-size-small; - border-radius: $input-border-radius-small; - } - &.input-lg { - padding: $padding-large-vertical $padding-large-horizontal; - font-size: $font-size-large; - border-radius: $input-border-radius-large; - } - - input[type="radio"], - 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 { - @include border-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 { - @include border-left-radius(0); -} -.input-group-addon:last-child { - border-left: 0; -} - -.input-group-btn { - position: relative; - font-size: 0; - white-space: nowrap; - display: block; - - > .btn { - position: relative; - + .btn { - margin-left: -1px; - } - &:hover, - &:focus, - &:active { - z-index: 2; - } - } - - &:first-child { - > .btn, - > .btn-group { - margin-right: -1px; - } - } - &:last-child { - > .btn, - > .btn-group { - z-index: 2; - margin-left: -1px; - } - } -} diff --git a/docs/algolia-aerial/src/stylesheet/components/_scaffolding.sass b/docs/algolia-aerial/src/stylesheet/components/_scaffolding.sass deleted file mode 100644 index ade8a57a..00000000 --- a/docs/algolia-aerial/src/stylesheet/components/_scaffolding.sass +++ /dev/null @@ -1,50 +0,0 @@ -* - +box-sizing(border-box) - -*:before, -*:after - +box-sizing(border-box) - - -html - font-size: 10px - -webkit-tap-highlight-color: rgba(0, 0, 0, 0) - -body - font-family: $font-family-base - font-size: $font-size-base - line-height: $line-height-base - color: $text-color - background-color: $body-bg - -input, -button, -select, -textarea - font-family: inherit - font-size: inherit - line-height: inherit - - -a - color: $link-color - text-decoration: none - &:hover, - &:focus - color: $link-hover-color - text-decoration: $link-hover-decoration - &:focus - +tab-focus - -figure - margin: 0 - -img - vertical-align: middle - -hr - margin-top: $line-height-computed - margin-bottom: $line-height-computed - border: 0 - border-top: 1px solid $hr-border - diff --git a/docs/algolia-aerial/src/stylesheet/components/_tables.sass b/docs/algolia-aerial/src/stylesheet/components/_tables.sass deleted file mode 100644 index ca4cf8d8..00000000 --- a/docs/algolia-aerial/src/stylesheet/components/_tables.sass +++ /dev/null @@ -1,46 +0,0 @@ -table - background-color: $table-bg - -caption - padding-top: $table-cell-padding - padding-bottom: $table-cell-padding - color: $text-muted - text-align: left - -th - text-align: left - - -.table - width: 100% - max-width: 100% - margin-bottom: $line-height-computed - - > thead, - > tbody, - > tfoot - > tr - > th, - > td - padding: $table-cell-padding - line-height: $line-height-base - vertical-align: top - border-top: 1px solid $table-border-color - - > thead > tr > th - vertical-align: bottom - border-bottom: 2px solid $table-border-color - - > caption + thead, - > colgroup + thead, - > thead:first-child - > tr:first-child - > th, - > td - border-top: 0 - - > tbody + tbody - border-top: 2px solid $table-border-color - - .table - background-color: $body-bg \ No newline at end of file diff --git a/docs/algolia-aerial/src/stylesheet/components/_type.sass b/docs/algolia-aerial/src/stylesheet/components/_type.sass deleted file mode 100644 index 75d00962..00000000 --- a/docs/algolia-aerial/src/stylesheet/components/_type.sass +++ /dev/null @@ -1,118 +0,0 @@ - - - -h1, h2, h3, h4, h5, h6, -.h1, .h2, .h3, .h4, .h5, .h6 - font-family: $headings-font-family - font-weight: $headings-font-weight - line-height: $headings-line-height - color: $headings-color - small, - .small - font-weight: normal - line-height: 1 - color: $headings-small-color - -h1, .h1, -h2, .h2, -h3, .h3 - margin-top: $line-height-computed - margin-bottom: $line-height-computed / 2 - small, - .small - font-size: 65% - -h4, .h4, -h5, .h5, -h6, .h6 - margin-top: $line-height-computed / 2 - margin-bottom: $line-height-computed / 2 - small, - .small - font-size: 75% - -h1, .h1 - font-size: $font-size-h1 - -h2, .h2 - font-size: $font-size-h2 - -h3, .h3 - font-size: $font-size-h3 - -h4, .h4 - font-size: $font-size-h4 - -h5, .h5 - font-size: $font-size-h5 - -h6, .h6 - font-size: $font-size-h6 - - -p - margin: 0 0 10px - - -small, -.small - font-size: floor(100% * $font-size-small / $font-size-base) - -mark, -.mark - background-color: $state-warning-bg - padding: .2em - - -ul, -ol - margin-top: 0 - margin-bottom: $line-height-computed / 2 - ul, - ol - margin-bottom: 0 - -dl - margin-top: 0 - margin-bottom: $line-height-computed - -dt, -dd - line-height: $line-height-base - -dt - font-weight: bold - -dd - margin-left: 0 - - -abbr[title], -abbr[data-original-title] - cursor: help - border-bottom: 1px dotted $abbr-border-color - -blockquote - padding: $line-height-computed / 2 $line-height-computed - margin: 0 0 $line-height-computed - font-size: $blockquote-font-size - border-left: 5px solid $blockquote-border-color - p, - ul, - ol - &:last-child - margin-bottom: 0 - footer, - small, - .small - display: block - font-size: 80% - line-height: $line-height-base - color: $blockquote-small-color - &:before - content: '\2014 \00A0' - -address - margin-bottom: $line-height-computed - font-style: normal - line-height: $line-height-base \ No newline at end of file diff --git a/docs/algolia-aerial/src/stylesheet/modules/_base.sass b/docs/algolia-aerial/src/stylesheet/modules/_base.sass deleted file mode 100644 index 12259835..00000000 --- a/docs/algolia-aerial/src/stylesheet/modules/_base.sass +++ /dev/null @@ -1,151 +0,0 @@ - -//fonts -$light: 300 -$regular: 400 -$medium: 500 -$bold: 600 - -//colors -$white: white -$black: black - -//V2 -$purple-heart: rgb(142,67,231) -$mulberry: rgb(184,69,146) -$radical-red: rgb(255,79,129) -$bittersweet: rgb(255,108,95) -$koromiko: rgb(255,193,104) -$shamrock: rgb(45,222,152) -$java: rgb(28,199,208) -$algolia-blue: rgb(0,174,255) -$royal-blue: rgb(51,105,231) - -$bunting: rgb(62,57,107) -$titan-white: rgb(248,250,255) -$logan: rgb(157,157,189) -$deep-cove: rgb(5,15,44) - -$port-gore: rgb(58, 69, 112) -$east-bay: rgb(73, 85, 136) -$portage: rgb(137, 148, 198) -$blue-bell: rgb(166, 176, 216) - -$ghost: rgb(196, 200, 216) -$athens-gray: rgb(238, 240, 247) - -$theme-color: #fecf50 - -$primary-color: $bunting -$secondary-color: $titan-white -$tertiary-color: $portage - -// BOOTSTRAP -$gray-darker: lighten(#000, 13.5%) -$gray-dark: lighten(#000, 20%) -$gray: lighten(#000, 33.5%) -$gray-light: lighten(#000, 46.7%) -$gray-lighter: lighten(#000, 93.5%) - -$brand-primary: $algolia-blue -$brand-secondary: #FA3870 -$brand-success: $shamrock - -$brand-info: $algolia-blue -$brand-warning: $koromiko -$brand-danger: $radical-red - -$font-size-base: 15px -$font-size-h1: 36px -$font-size-h2: 30px -$font-size-h3: 18px -$font-size-h4: 12px -$font-size-h5: 1em -$font-size-h6: 1em -$line-height-base: 1.6 - -$body-bg: $white -$text-color: $bunting - -$text-muted: $portage - -$border-radius-base: 3px -$border-radius-large: 3px -$border-radius-small: 3px - -$link-color: $brand-primary -$link-hover-color: darken($link-color, 15%) - -//fonts -$font-family-base: 'Montserrat', Helvetica, Arial, sans-serif -$headings-font-family: $font-family-base -$font-stack: $font-family-base -$paragraphs-font-family: 'Open Sans', helvetica, sans-serif -$headings-small-color: darken($tertiary-color,10%) - -//Buttons -$btn-font-weight: normal -//default -$btn-default-color: #777 -$btn-default-bg: $white -$btn-default-border: #ccc -//primary -$btn-primary-color: $white -$btn-primary-bg: $brand-primary -$btn-primary-border: darken($btn-primary-bg, 5%) -//success -$btn-success-color: $white -$btn-success-bg: $brand-success -$btn-success-border: darken($btn-success-bg, 5%) -//info -$btn-info-color: $white -$btn-info-bg: $brand-info -$btn-info-border: darken($btn-info-bg, 5%) -//warning -$btn-warning-color: $white -$btn-warning-bg: $brand-warning -$btn-warning-border: darken($btn-warning-bg, 5%) -//danger -$btn-danger-color: $white -$btn-danger-bg: $brand-danger -$btn-danger-border: darken($btn-danger-bg, 5%) -//link -$btn-link-disabled-color: $gray-light -$input-bg-disabled: $gray-lighter - -//Panels -$panel-bg: $white - -//** Border color for elements within panels -$panel-inner-border: lighten($tertiary-color,20%) -$panel-footer-bg: lighten($secondary-color, 10%) - -$panel-default-text: $gray-dark -$panel-default-border: $white -$panel-default-heading-bg: $white - -//forms -$input-group-addon-bg: lighten($secondary-color,3%) -$input-border: lighten($gray,30%) - -//tables -$table-border-color: $secondary-color -$table-bg-accent: lighten($secondary-color,5%) - -//tooltip -$tooltip-bg: $primary-color -$tooltip-opacity: 1 - -//popover -$popover-max-width: 300px - -//Cards -$card-border-transition: all 240ms ease-in-out - - -//code -$pre-bg: $bunting -$pre-color: #C2CCCC - - -// Searchboxes -$searchbox-landing: (input-width: 300px, input-height: 50px, border-width: 2px, border-radius: 25px, input-border-color: #cccccc, input-focus-border-color: #ff2e83, input-background: white, input-focus-background: white, font-size: 14px, placeholder-color: #bbbbbb, icon: sbx-icon-search-18, icon-size: 30px, icon-position: left, icon-color: #ff2e83, icon-background: white, icon-background-opacity: 0, icon-clear: sbx-icon-clear-5, icon-clear-size: 18px) diff --git a/docs/algolia-aerial/src/stylesheet/modules/_mixins.sass b/docs/algolia-aerial/src/stylesheet/modules/_mixins.sass deleted file mode 100644 index 7e3052f2..00000000 --- a/docs/algolia-aerial/src/stylesheet/modules/_mixins.sass +++ /dev/null @@ -1,230 +0,0 @@ - -//illus retina -@mixin at2x($path, $ext: "png", $w: auto, $h: auto) - background-image: url(image_path($path + "." + $ext)) - background-repeat: no-repeat - $at2x_path: $path + "@2x" + "." + $ext - @media all and (-webkit-min-device-pixel-ratio: 1.5), all and (-o-min-device-pixel-ratio: 3 / 2), all and (min--moz-device-pixel-ratio: 1.5), all and (min-device-pixel-ratio: 1.5) - background-image: url(image_path($at2x_path)) - background-size: $w $h - -@mixin text-truncate - overflow: hidden - text-overflow: ellipsis - white-space: nowrap - -//vertical alignment -@mixin vertical-align($position: relative) - transform: translateY(-50%) - position: $position - top: 50% - -@mixin horizontal-align($position) - position: $position - left: 50% - transform: translateX(-50%) - -@mixin center($position) - position: $position - left: 50% - top: 50% - transform: translate(-50%, -50%) - -// Responsive -// Responsive Breakpoints -@mixin big-min-mq - @media (min-width: $screen-lg) - @content - -@mixin big-mq - @media (max-width: $screen-lg) - @content - -@mixin medium-mq - @media (max-width: $screen-md) - @content - -@mixin small-mq - @media (max-width: $screen-sm) - @content - -@mixin mobile-mq - @media (max-width: $screen-xs) - @content - -// Placeholder -@mixin placeholder - &::-webkit-input-placeholder - @content - &:-moz-placeholder - @content - &::-moz-placeholder - @content - &:-ms-input-placeholder - @content - -//BEM helpers -@mixin block($block) - #{$block} - @content - -@mixin element($element) - &__#{$element} - @content - -@mixin modifier($modifier) - &--#{$modifier} - @content - - -@mixin diagonal($rotation, $background, $height, $pos: after) - &:#{$pos} - content: '' - display: block - position: absolute - width: 100% - height: $height - background: #{$background} - transform: skewY($rotation) - z-index: 0 - - @media (min-width: $screen-lg) - transform: skewY($rotation/2) - - @content - -@mixin clearfix() - &:before, - &:after - content: " " - display: table - - &:after - clear: both - - -@function even-px($value) - @if type-of($value) == "number" - @if unitless($value) - $value: $value * 1px - @else if unit($value) == "em" - $value: $value / 1em * 16px - @else if unit($value) == "pts" - $value: $value * 1.3333 * 1px - @else if unit($value) == "%" - $value: $value * 16 / 100% * 1px - $value: round($value) - @if $value % 2 != 0 - $value: $value + 1 - @return $value - -=searchbox($font-size: 90%, $input-width: 350px, $input-height: $font-size * 2.4, $border-width: 1px, $border-radius: $input-height / 2, $input-border-color: #cccccc, $input-focus-border-color: #1ec9ea, $input-background: #f8f8f8, $input-focus-background: white, $placeholder-color: #aaaaaa, $icon: "sbx-icon-search-1", $icon-size: $input-height / 1.6, $icon-position: left, $icon-color: #888888, $icon-background: $input-focus-border-color, $icon-background-opacity: 0.1, $icon-clear: "sbx-icon-clear-1", $icon-clear-size: $font-size / 1.1) - display: inline-block - position: relative - width: $input-width - height: even-px($input-height) - white-space: nowrap - box-sizing: border-box - font-size: $font-size - &__wrapper - width: 100% - height: 100% - &__input - display: inline-block - transition: box-shadow .4s ease, background .4s ease - border: 0 - border-radius: even-px($border-radius) - box-shadow: inset 0 0 0 $border-width $input-border-color - background: $input-background - padding: 0 - padding-right: if($icon-position == "right", even-px($input-height) + even-px($icon-clear-size) + 8px, even-px($input-height * 0.8)) + if($icon-background-opacity == 0, 0, even-px($font-size)) - padding-left: if($icon-position == "right", even-px($font-size / 2) + even-px($border-radius / 2), even-px($input-height) + if($icon-background-opacity == 0, 0, even-px($font-size * 1.2))) - width: 100% - height: 100% - vertical-align: middle - white-space: normal - font-size: inherit - appearance: none - &::-webkit-search-decoration, - &::-webkit-search-cancel-button, - &::-webkit-search-results-button, - &::-webkit-search-results-decoration - display: none - &:hover - box-shadow: inset 0 0 0 $border-width darken($input-border-color, 10%) - &:focus, - &:active - outline: 0 - box-shadow: inset 0 0 0 $border-width $input-focus-border-color - background: $input-focus-background - &::placeholder - color: $placeholder-color - &__submit - position: absolute - top: 0 - @if $icon-position == "right" - right: 0 - left: inherit - @else - right: inherit - left: 0 - margin: 0 - border: 0 - border-radius: if($icon-position == "right", 0 $border-radius $border-radius 0, $border-radius 0 0 $border-radius) - background-color: rgba($icon-background, $icon-background-opacity) - padding: 0 - width: even-px($input-height) + if($icon-background-opacity == 0, 0, even-px($font-size / 2)) - height: 100% - vertical-align: middle - text-align: center - font-size: inherit - user-select: none - // Helper for vertical alignement of the icon - &::before - display: inline-block - margin-right: -4px - height: 100% - vertical-align: middle - content: '' - &:hover, - &:active - cursor: pointer - &:focus - outline: 0 - svg - width: even-px($icon-size) - height: even-px($icon-size) - vertical-align: middle - fill: $icon-color - &__reset - display: none - position: absolute - top: (even-px($input-height) - even-px($icon-clear-size)) / 2 - 4px - right: if($icon-position == "right", even-px($input-height) + if($icon-background-opacity == 0, 0, even-px($font-size)), (even-px($input-height) - even-px($icon-clear-size)) / 2 - 4px) - margin: 0 - border: 0 - background: none - cursor: pointer - padding: 0 - font-size: inherit - user-select: none - fill: rgba(black, 0.5) - &:focus - outline: 0 - svg - display: block - margin: 4px - width: even-px($icon-clear-size) - height: even-px($icon-clear-size) - &__input:valid ~ &__reset - display: block - animation-name: sbx-reset-in - animation-duration: .15s - @at-root - @keyframes sbx-reset-in - 0% - transform: translate3d(-20%, 0, 0) - opacity: 0 - 100% - transform: none - opacity: 1 diff --git a/docs/algolia-aerial/src/stylesheet/partials/_bootstrap.sass b/docs/algolia-aerial/src/stylesheet/partials/_bootstrap.sass deleted file mode 100644 index c6692dc9..00000000 --- a/docs/algolia-aerial/src/stylesheet/partials/_bootstrap.sass +++ /dev/null @@ -1,11 +0,0 @@ -@import "../modules/_base" - -// Core variables and mixins -@import "../vendors/bootstrap/variables" -@import "../vendors/bootstrap/mixins" -// Reset and dependencies -@import "../vendors/bootstrap/normalize" -// Core CSS -@import "../vendors/bootstrap/grid" -// Utility classes -@import "../vendors/bootstrap/responsive-utilities" diff --git a/docs/algolia-aerial/src/stylesheet/partials/_colors.sass b/docs/algolia-aerial/src/stylesheet/partials/_colors.sass deleted file mode 100644 index e48d7584..00000000 --- a/docs/algolia-aerial/src/stylesheet/partials/_colors.sass +++ /dev/null @@ -1,124 +0,0 @@ -/* foreground colors */ -.color-white - color: $white !important -.color-titan - color: $titan-white !important -.color-primary - color: $brand-primary !important -.color-secondary - color: $brand-secondary !important -.color-purple-heart - color: $purple-heart !important -.color-mulberry - color: $mulberry !important -.color-radical-red - color: $radical-red !important -.color-bittersweet - color: $bittersweet !important -.color-koromiko - color: $koromiko !important -.color-shamrock - color: $shamrock !important -.color-java - color: $java !important -.color-algolia-blue - color: $algolia-blue !important -.color-royal-blue - color: $royal-blue !important -.color-bunting - color: $bunting !important -.color-deep-cove - color: $deep-cove !important - -.color-port-gore - color: $port-gore !important -.color-east-bay - color: $east-bay !important -.color-portage - color: $portage !important -.color-blue-bell - color: $blue-bell !important -.color-ghost - color: $ghost !important -.color-athens-gray - color: $athens-gray !important -.color-logan - color: $logan !important - -.color-current - color: currentColor !important - - -.fill-dark - background-color: $primary-color !important -.fill-white - background-color: $white !important -.fill-titan - background-color: $titan-white !important -.fill-purple-heart - background-color: $purple-heart !important -.fill-mulberry - background-color: $mulberry !important -.fill-radical-red - background-color: $radical-red !important -.fill-bittersweet - background-color: $bittersweet !important -.fill-koromiko - background-color: $koromiko !important -.fill-shamrock - background-color: $shamrock !important -.fill-java - background-color: $java !important -.fill-algolia-blue - background-color: $algolia-blue !important -.fill-royal-blue - background-color: $royal-blue !important -.fill-deep-cove - background-color: $deep-cove !important -.fill-bunting - background-color: $bunting !important -.fill-port-gore - background-color: $port-gore !important -.fill-east-bay - background-color: $east-bay !important -.fill-portage - background-color: $portage !important -.fill-blue-bell - background-color: $blue-bell !important -.fill-ghost - background-color: $ghost !important -.fill-athens-gray - background-color: $athens-gray !important -.fill-logan - background-color: $logan !important - - -.gradient-primary, -.gradient-green - background-image: linear-gradient(320deg, $shamrock, mix($shamrock,$java)) !important - -.gradient-secondary, -.gradient-blue - background-image: linear-gradient(256deg, $algolia-blue, $royal-blue) !important - -.gradient-tertiary, -.gradient-pink - background-image: linear-gradient(256deg, $bittersweet, $radical-red) !important - -.gradient-orange - background-image: linear-gradient(256deg, $koromiko, $bittersweet) - -.gradient-purple - background-image: linear-gradient(269deg, #8e43e6, #b84592) - -.gradient-light-blue - background-image: linear-gradient(269deg, $algolia-blue, $java) - -.gradient-blue-purple - background-image: linear-gradient(103deg, $royal-blue, $purple-heart) - -.gradient-dark - background-image: linear-gradient(283deg, $deep-cove, $bunting) - -.gradient-white - background-image: linear-gradient(0deg, $titan-white, #ffffff) diff --git a/docs/algolia-aerial/src/stylesheet/partials/_fonts.sass b/docs/algolia-aerial/src/stylesheet/partials/_fonts.sass deleted file mode 100644 index 6b2ac040..00000000 --- a/docs/algolia-aerial/src/stylesheet/partials/_fonts.sass +++ /dev/null @@ -1,15 +0,0 @@ -@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700,800') -@import url('https://fonts.googleapis.com/css?family=Montserrat:300,400,500,700,900') - - -h1, h2, h3, h4 - font-family: $headings-font-family - - -/*! The paragraphs also use Montserrat on the website, except on the documentation and other exceptions */ -p - font-size: 15px - font-family: $headings-font-family - -strong - font-family: $headings-font-family \ No newline at end of file diff --git a/docs/algolia-aerial/src/stylesheet/partials/_helpers.sass b/docs/algolia-aerial/src/stylesheet/partials/_helpers.sass deleted file mode 100644 index 4b3231d2..00000000 --- a/docs/algolia-aerial/src/stylesheet/partials/_helpers.sass +++ /dev/null @@ -1,698 +0,0 @@ -/** - *spacer - */ -@mixin spacer - width: 100% - font-size: 0 - margin: 0 - padding: 0 - border: 0 - display: block - - -.spacer8 - +spacer - height: 8px -.spacer16 - +spacer - height: 16px -.spacer24 - +spacer - height: 24px -.spacer32 - +spacer - height: 32px -.spacer40 - +spacer - height: 40px -.spacer48 - +spacer - height: 48px -.spacer56 - +spacer - height: 56px -.spacer64 - +spacer - height: 64px -.spacer80 - +spacer - height: 80px -.spacer120 - +spacer - height: 120px - - -/** - *width - */ -.w100 - width: 100px -.w150 - width: 150px -.w200 - width: 200px -.w100p - width: 100% -.m100 - max-width: 100px -.m200 - max-width: 200px -.m300 - max-width: 300px -.m400 - max-width: 400px -.m500 - max-width: 500px -.m600 - max-width: 600px -.m700 - max-width: 700px -.m800 - max-width: 800px -.m900 - max-width: 900px -.m1000 - max-width: 1000px -.m1200 - max-width: 1200px -.m100p - max-width: 100% - -/** - *height - */ -.h80 - height: 80px -.h100 - height: 100px -.h200 - height: 200px -.h300 - height: 300px -.h400 - height: 400px -.h500 - height: 500px -.h600 - height: 600px -.h700 - height: 700px -.h800 - height: 800px -.hfull - height: 100% - -/** - * positions - */ -.pos-rel - position: relative -.pos-stc - position: static -.pos-abt - position: absolute -.pos-fix - position: fixed - -/** - * Indexing - */ -.z-1 - z-index: 1 -.z-2 - z-index: 2 -.z-3 - z-index: 3 -.z-4 - z-index: 4 -.z-5 - z-index: 5 -.z-10 - z-index: 10 -.z-20 - z-index: 20 -.z-100 - z-index: 100 - - -/** - *font size - */ -.text-heading - font-size: 56px - -.text-xxl - font-size: 40px - -.text-xl - font-size: 32px - -.text-lg - font-size: 24px - -.text-bg - font-size: 20px - -.text-regular - font-size: 15px - -.text-sm - font-size: 12px - -.text-xsm - font-size: 10px - -.text-xs - font-size: 8px - - -/** - *font weight - */ -.text-thin - font-weight: 300 -.text-normal - font-weight: 400 -.text-demi - font-weight: 500 -p.text-demi - font-weight: 600 -.text-bold - font-weight: 700 -.text-bolder - font-weight: 900 -p.text-bolder - font-weight: 800 - -/** - *borders - */ -.b-t - border-top: 1px solid $secondary-color -.b-r - border-right: 1px solid $secondary-color -.b-b - border-bottom: 1px solid $secondary-color -.b-l - border-left: 1px solid $secondary-color - -.b-n - border: none !important - - -/** - * Radius - */ -.radius6 - border-radius: 6px -.radius100p - border-radius: 100% - - -/** - *padding - */ -.padder - padding: 0 15px -.p-mini - padding: 5px -.p-small - padding: 10px -.p-large - padding: 20px -.p-xlarge - padding: 30px - -.p-t-mini - padding-top: 5px -.p-t-small - padding-top: 10px -.p-t-large - padding-top: 20px -.p-t-xlarge - padding-top: 30px - -.p-b-mini - padding-bottom: 5px -.p-b-small - padding-bottom: 10px -.p-b-large - padding-bottom: 20px -.p-b-xlarge - padding-bottom: 30px - -.p-l-small - padding-left: 10px -.p-l-large - padding-left: 20px -.p-l-xlarge - padding-left: 30px -.p-r-small - padding-right: 10px -.p-r-large - padding-right: 20px -.p-r-xlarge - padding-right: 30px -.p-l-xxlarge - padding-left: 60px -.p-r-xxlarge - padding-right: 60px - -.no-padding - padding: 0 !important -.no-p-l - padding-left: 0 -.no-p-r - padding-right: 0 -.no-p-t - padding-top: 0 !important -.no-p-b - padding-bottom: 0 - -/** - *margin - */ -.m-l-r-auto - margin-left: auto - margin-right: auto -.m-l - margin-left: 15px -.m-l-none - margin-left: 0 -.m-l-mini - margin-left: 5px -.m-l-small - margin-left: 10px -.m-l-large - margin-left: 20px -.m-l-n - margin-left: -15px -.m-l-n-mini - margin-left: -5px -.m-l-n-small - margin-left: -10px -.m-l-n-large - margin-left: -20px -.m-t - margin-top: 15px -.m-t-none - margin-top: 0 -.m-t-mini - margin-top: 5px -.m-t-small - margin-top: 10px -.m-t-large - margin-top: 20px -.m-t-n - margin-top: -15px -.m-t-n-xmini - margin-top: -1px -.m-t-n-mini - margin-top: -5px -.m-t-n-small - margin-top: -10px -.m-t-n-large - margin-top: -20px -.m-r - margin-right: 15px -.m-r-none - margin-right: 0 -.m-r-mini - margin-right: 5px -.m-r-small - margin-right: 10px -.m-r-large - margin-right: 20px -.m-r-n - margin-right: -15px -.m-r-n-mini - margin-right: -5px -.m-r-n-small - margin-right: -10px -.m-r-n-large - margin-right: -20px -.m-b - margin-bottom: 15px -.m-b-none - margin-bottom: 0 -.m-b-mini - margin-bottom: 5px -.m-b-small - margin-bottom: 10px -.m-b-large - margin-bottom: 20px -.m-b-xlarge - margin-bottom: 30px -.m-b-n - margin-bottom: -15px -.m-b-n-mini - margin-bottom: -5px -.m-b-n-small - margin-bottom: -10px -.m-b-n-large - margin-bottom: -20px - -.no-margin - margin: 0 !important - -/** - * text - */ -// Alignment -.text-left - text-align: left - -.text-right - text-align: right - -.text-center - text-align: center - -.text-justify - text-align: justify - -// Contextual colors -.text-muted - color: $text-muted -.vertical-align-middle - display: inline-block !important - vertical-align: middle !important -.vertical-align-bottom - display: inline-block !important - vertical-align: bottom !important -.text-ellipsis - white-space: nowrap - overflow: hidden - max-width: 100% - text-overflow: ellipsis -.text-break-word - word-wrap: break-word -.nowrap - word-wrap: nowrap - white-space: nowrap -.lower-case - text-transform: lowercase -.upper-case - text-transform: uppercase -.capital-case - text-transform: capitalize -.hidden-text - text-indent: -9999px - color: transparent - -/** - * Line height - */ -.line-h-regular - line-height: 1.5 - -.line-h-small - line-height: 1.2 - -/** - *line - */ -.line - width: 100% - height: 1px - margin: 10px 0 - font-size: 0 - overflow: hidden - border-width: 0 - background-color: $secondary-color -.line-dashed - border-style: dashed - background: transparent -.headline - border-bottom: 5px solid $black - margin-top: 0 - line-height: 45px - -.no-line - border-width: 0 -.no-border - border-color: transparent !important -.no-radius - border-radius: 0 -.block - display: block -.inline - display: inline-block -.pull-left - float: left -.pull-right - float: right -.pull-none - float: none -.pull-in - margin-right: -15px - margin-left: -15px -.line-v - border-left: 1px solid #dddddd - padding-left: 20px -.line-v-right - border-right: 1px solid #dddddd - padding-right: 20px - - -/** - * Flexbox - */ -.flex-container - display: flex - -.flex-dir-col - flex-flow: column wrap - &-reverse - flex-flow: column-reverse wrap - -.flex-dir-row - flex-flow: row wrap - &-reverse - flex-flow: row-reverse wrap - -/** - * Flex space setting - */ -.flex-space-around - justify-content: space-around - -.flex-space-between - justify-content: space-between - -.flex-align-center - align-items: center - -/** - * Flex item size - */ -.flex-it-4 - flex: 0 1 25% - -_:-ms-input-placeholder, :root .flex-it-4 - -ms-flex-preferred-size: 21% !important - -.flex-it-3 - flex: 0 1 33.33% - -_:-ms-input-placeholder, :root .flex-it-3 - -ms-flex-preferred-size: 29% !important - -.flex-it-2 - flex: 0 1 50% - -_:-ms-input-placeholder, :root .flex-it-2 - -ms-flex-preferred-size: 48% !important - @supports ( not ( mix-blend-mode: luminosity)) - flex: 0 1 49.95% - - -.flex-it-1 - flex: 0 1 100% - -// Responsive flex classes -@media (min-width: 1200px) - .flex-it-1-lg - flex: 0 1 100% - - .flex-it-2-lg - flex: 0 1 50% - _:-ms-input-placeholder, :root .flex-it-2-lg - -ms-flex-preferred-size: 48% !important - @supports ( not ( mix-blend-mode: luminosity)) - flex: 0 1 49.95% - - .flex-it-3-lg - flex: 0 1 33.33% - _:-ms-input-placeholder, :root .flex-it-3-lg - -ms-flex-preferred-size: 29% !important - - .flex-it-4-lg - flex: 0 1 25% - _:-ms-input-placeholder, :root .flex-it-4-lg - -ms-flex-preferred-size: 21% !important - -@media (max-width: 768px) - .flex-it-1-sm - flex: 0 1 100% - - .flex-it-2-sm - flex: 0 1 50% - _:-ms-input-placeholder, :root .flex-it-2-sm - -ms-flex-preferred-size: 48% !important - @supports ( not ( mix-blend-mode: luminosity)) - flex: 0 1 49.95% - - .flex-it-3-sm - flex: 0 1 33.33% - _:-ms-input-placeholder, :root .flex-it-3-sm - -ms-flex-preferred-size: 29% !important - - .flex-it-4-sm - flex: 0 1 25% - _:-ms-input-placeholder, :root .flex-it-4-sm - -ms-flex-preferred-size: 21% !important - -/** - * others - */ -.unscroll - overflow: hidden !important - -.clickable - cursor: pointer - -.rotate-45 - transform: rotate(45deg) - -.content-box - box-sizing: content-box - -.faded - opacity: .3 - -.op0 - opacity: 0 - -.line-through - text-decoration: line-through - -.no-decoration - text-decoration: none - - -/** - * Centering - */ -.v-center - position: absolute - top: 50% - transform: translateY(-50%) - -.h-center - position: absolute - left: 50% - transform: translateX(-50%) - -.vh-center - position: absolute - top: 50% - left: 50% - transform: translate(-50%,-50%) - - -/** - * Hidden utilities - */ -.hidden-sm - @media (max-width: $screen-sm) - display: none !important - -.visible-sm - @media (max-width: $screen-sm) - display: block !important - -.hidden - display: none !important - visibility: hidden !important - -/** - * CSS for and - */ -sub, sup - font-size: 50% - line-height: 0 - position: relative - vertical-align: baseline - -sup - top: -0.7em - -sub - bottom: -0.25em - -[ng\:cloak], [ng-cloak], .ng-cloak - display: none !important - - - -/** - * Lists - */ -.list-none - list-style: none - -/** - * Clearfix - */ -.cf:before, -.cf:after - content: " " - display: table - - -.cf:after - clear: both - -/** - * For IE 6/7 only - * Include this rule to trigger hasLayout and contain floats. - */ -.cf - *zoom: 1 - - -/** - * Shadows - */ - -.elevation0 - box-shadow: 0 5px 15px 0 rgba(112, 128, 175, 0.2) - -.elevation1 - box-shadow: 0 10px 40px 0 rgba($bunting,0.07), 0 2px 9px 0 rgba($bunting,0.06) - -.elevation2 - box-shadow: 0 16px 32px 0 rgba($bunting, 0.2) - -// Placeholders -%elevation1 - box-shadow: 0 10px 40px 0 rgba($bunting,0.07), 0 2px 9px 0 rgba($bunting,0.06) - -/** - * For inputs - */ -.apn - -webkit-appearance: none - -moz-appearance: none - appearance: none - -.otn - outline: none - -/** - * To use with gradient for text - */ -.gradient-text - -webkit-background-clip: text - -webkit-text-fill-color: transparent \ No newline at end of file diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_grid.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_grid.scss deleted file mode 100755 index b15ca27b..00000000 --- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_grid.scss +++ /dev/null @@ -1,84 +0,0 @@ -// -// Grid system -// -------------------------------------------------- - - -// Container widths -// -// Set the container width, and override it for fixed navbars in media queries. - -.container { - @include container-fixed; - - @media (min-width: $screen-sm-min) { - width: $container-sm; - } - @media (min-width: $screen-md-min) { - width: $container-md; - } - @media (min-width: $screen-lg-min) { - width: $container-lg; - } -} - - -// Fluid container -// -// Utilizes the mixin meant for fixed width containers, but without any defined -// width for fluid, full width layouts. - -.container-fluid { - @include container-fixed; -} - - -// Row -// -// Rows contain and clear the floats of your columns. - -.row { - @include make-row; -} - - -// Columns -// -// Common styles for small and large grid columns - -@include make-grid-columns; - - -// Extra small grid -// -// Columns, offsets, pushes, and pulls for extra small devices like -// smartphones. - -@include make-grid(xs); - - -// Small grid -// -// Columns, offsets, pushes, and pulls for the small device range, from phones -// to tablets. - -@media (min-width: $screen-sm-min) { - @include make-grid(sm); -} - - -// Medium grid -// -// Columns, offsets, pushes, and pulls for the desktop device range. - -@media (min-width: $screen-md-min) { - @include make-grid(md); -} - - -// Large grid -// -// Columns, offsets, pushes, and pulls for the large desktop device range. - -@media (min-width: $screen-lg-min) { - @include make-grid(lg); -} diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_mixins.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_mixins.scss deleted file mode 100755 index b565f013..00000000 --- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_mixins.scss +++ /dev/null @@ -1,39 +0,0 @@ -// Mixins -// -------------------------------------------------- - -// Utilities -@import "mixins/hide-text"; -@import "mixins/opacity"; -@import "mixins/image"; -@import "mixins/labels"; -@import "mixins/reset-filter"; -@import "mixins/resize"; -@import "mixins/responsive-visibility"; -@import "mixins/size"; -@import "mixins/tab-focus"; -@import "mixins/text-emphasis"; -@import "mixins/text-overflow"; -@import "mixins/vendor-prefixes"; - -// Components -@import "mixins/alerts"; -@import "mixins/buttons"; -@import "mixins/panels"; -@import "mixins/pagination"; -@import "mixins/list-group"; -@import "mixins/nav-divider"; -@import "mixins/forms"; -@import "mixins/progress-bar"; -@import "mixins/table-row"; - -// Skins -@import "mixins/background-variant"; -@import "mixins/border-radius"; -@import "mixins/gradients"; - -// Layout -@import "mixins/clearfix"; -@import "mixins/center-block"; -@import "mixins/nav-vertical-align"; -@import "mixins/grid-framework"; -@import "mixins/grid"; diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_normalize.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_normalize.scss deleted file mode 100755 index 62a085a4..00000000 --- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_normalize.scss +++ /dev/null @@ -1,427 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ - -// -// 1. Set default font family to sans-serif. -// 2. Prevent iOS text size adjust after orientation change, without disabling -// user zoom. -// - -html { - font-family: sans-serif; // 1 - -ms-text-size-adjust: 100%; // 2 - -webkit-text-size-adjust: 100%; // 2 -} - -// -// Remove default margin. -// - -body { - margin: 0; -} - -// HTML5 display definitions -// ========================================================================== - -// -// Correct `block` display not defined for any HTML5 element in IE 8/9. -// Correct `block` display not defined for `details` or `summary` in IE 10/11 -// and Firefox. -// Correct `block` display not defined for `main` in IE 11. -// - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} - -// -// 1. Correct `inline-block` display not defined in IE 8/9. -// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. -// - -audio, -canvas, -progress, -video { - display: inline-block; // 1 - vertical-align: baseline; // 2 -} - -// -// Prevent modern browsers from displaying `audio` without controls. -// Remove excess height in iOS 5 devices. -// - -audio:not([controls]) { - display: none; - height: 0; -} - -// -// Address `[hidden]` styling not present in IE 8/9/10. -// Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. -// - -[hidden], -template { - display: none; -} - -// Links -// ========================================================================== - -// -// Remove the gray background color from active links in IE 10. -// - -a { - background-color: transparent; -} - -// -// Improve readability when focused and also mouse hovered in all browsers. -// - -a:active, -a:hover { - outline: 0; -} - -// Text-level semantics -// ========================================================================== - -// -// Address styling not present in IE 8/9/10/11, Safari, and Chrome. -// - -abbr[title] { - border-bottom: 1px dotted; -} - -// -// Address style set to `bolder` in Firefox 4+, Safari, and Chrome. -// - -b, -strong { - font-weight: bold; -} - -// -// Address styling not present in Safari and Chrome. -// - -dfn { - font-style: italic; -} - -// -// Address variable `h1` font-size and margin within `section` and `article` -// contexts in Firefox 4+, Safari, and Chrome. -// - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -// -// Address styling not present in IE 8/9. -// - -mark { - background: #ff0; - color: #000; -} - -// -// Address inconsistent and variable font size in all browsers. -// - -small { - font-size: 80%; -} - -// -// Prevent `sub` and `sup` affecting `line-height` in all browsers. -// - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -// Embedded content -// ========================================================================== - -// -// Remove border when inside `a` element in IE 8/9/10. -// - -img { - border: 0; -} - -// -// Correct overflow not hidden in IE 9/10/11. -// - -svg:not(:root) { - overflow: hidden; -} - -// Grouping content -// ========================================================================== - -// -// Address margin not present in IE 8/9 and Safari. -// - -figure { - margin: 1em 40px; -} - -// -// Address differences between Firefox and other browsers. -// - -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} - -// -// Contain overflow in all browsers. -// - -pre { - overflow: auto; -} - -// -// Address odd `em`-unit font size rendering in all browsers. -// - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -// Forms -// ========================================================================== - -// -// Known limitation: by default, Chrome and Safari on OS X allow very limited -// styling of `select`, unless a `border` property is set. -// - -// -// 1. Correct color not being inherited. -// Known issue: affects color of disabled elements. -// 2. Correct font properties not being inherited. -// 3. Address margins set differently in Firefox 4+, Safari, and Chrome. -// - -button, -input, -optgroup, -select, -textarea { - color: inherit; // 1 - font: inherit; // 2 - margin: 0; // 3 -} - -// -// Address `overflow` set to `hidden` in IE 8/9/10/11. -// - -button { - overflow: visible; -} - -// -// Address inconsistent `text-transform` inheritance for `button` and `select`. -// All other form control elements do not inherit `text-transform` values. -// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. -// Correct `select` style inheritance in Firefox. -// - -button, -select { - text-transform: none; -} - -// -// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` -// and `video` controls. -// 2. Correct inability to style clickable `input` types in iOS. -// 3. Improve usability and consistency of cursor style between image-type -// `input` and others. -// - -button, -html input[type="button"], // 1 -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; // 2 - cursor: pointer; // 3 -} - -// -// Re-set default cursor for disabled elements. -// - -button[disabled], -html input[disabled] { - cursor: default; -} - -// -// Remove inner padding and border in Firefox 4+. -// - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -// -// Address Firefox 4+ setting `line-height` on `input` using `!important` in -// the UA stylesheet. -// - -input { - line-height: normal; -} - -// -// It's recommended that you don't attempt to style these elements. -// Firefox's implementation doesn't respect box-sizing, padding, or width. -// -// 1. Address box sizing set to `content-box` in IE 8/9/10. -// 2. Remove excess padding in IE 8/9/10. -// - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; // 1 - padding: 0; // 2 -} - -// -// Fix the cursor style for Chrome's increment/decrement buttons. For certain -// `font-size` values of the `input`, it causes the cursor style of the -// decrement button to change from `default` to `text`. -// - -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -// -// 1. Address `appearance` set to `searchfield` in Safari and Chrome. -// 2. Address `box-sizing` set to `border-box` in Safari and Chrome -// (include `-moz` to future-proof). -// - -input[type="search"] { - -webkit-appearance: textfield; // 1 - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; // 2 - box-sizing: content-box; -} - -// -// Remove inner padding and search cancel button in Safari and Chrome on OS X. -// Safari (but not Chrome) clips the cancel button when the search input has -// padding (and `textfield` appearance). -// - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -// -// Define consistent border, margin, and padding. -// - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -// -// 1. Correct `color` not being inherited in IE 8/9/10/11. -// 2. Remove padding so people aren't caught out if they zero out fieldsets. -// - -legend { - border: 0; // 1 - padding: 0; // 2 -} - -// -// Remove default vertical scrollbar in IE 8/9/10/11. -// - -textarea { - overflow: auto; -} - -// -// Don't inherit the `font-weight` (applied by a rule above). -// NOTE: the default cannot safely be changed in Chrome and Safari on OS X. -// - -optgroup { - font-weight: bold; -} - -// Tables -// ========================================================================== - -// -// Remove most spacing between table cells. -// - -table { - border-collapse: collapse; - border-spacing: 0; -} - -td, -th { - padding: 0; -} diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_responsive-utilities.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_responsive-utilities.scss deleted file mode 100755 index 8d02aaa3..00000000 --- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_responsive-utilities.scss +++ /dev/null @@ -1,177 +0,0 @@ -// -// Responsive: Utility classes -// -------------------------------------------------- - - -// IE10 in Windows (Phone) 8 -// -// Support for responsive views via media queries is kind of borked in IE10, for -// Surface/desktop in split view and for Windows Phone 8. This particular fix -// must be accompanied by a snippet of JavaScript to sniff the user agent and -// apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at -// our Getting Started page for more information on this bug. -// -// For more information, see the following: -// -// Issue: https://github.com/twbs/bootstrap/issues/10497 -// Docs: http://getbootstrap.com/getting-started/#support-ie10-width -// Source: http://timkadlec.com/2013/01/windows-phone-8-and-device-width/ -// Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/ - -@-ms-viewport { - width: device-width; -} - - -// Visibility utilities -// Note: Deprecated .visible-xs, .visible-sm, .visible-md, and .visible-lg as of v3.2.0 - -@include responsive-invisibility('.visible-xs'); -@include responsive-invisibility('.visible-sm'); -@include responsive-invisibility('.visible-md'); -@include responsive-invisibility('.visible-lg'); - -.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: $screen-xs-max) { - @include responsive-visibility('.visible-xs'); -} -.visible-xs-block { - @media (max-width: $screen-xs-max) { - display: block !important; - } -} -.visible-xs-inline { - @media (max-width: $screen-xs-max) { - display: inline !important; - } -} -.visible-xs-inline-block { - @media (max-width: $screen-xs-max) { - display: inline-block !important; - } -} - -@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { - @include responsive-visibility('.visible-sm'); -} -.visible-sm-block { - @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { - display: block !important; - } -} -.visible-sm-inline { - @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { - display: inline !important; - } -} -.visible-sm-inline-block { - @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { - display: inline-block !important; - } -} - -@media (min-width: $screen-md-min) and (max-width: $screen-md-max) { - @include responsive-visibility('.visible-md'); -} -.visible-md-block { - @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { - display: block !important; - } -} -.visible-md-inline { - @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { - display: inline !important; - } -} -.visible-md-inline-block { - @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { - display: inline-block !important; - } -} - -@media (min-width: $screen-lg-min) { - @include responsive-visibility('.visible-lg'); -} -.visible-lg-block { - @media (min-width: $screen-lg-min) { - display: block !important; - } -} -.visible-lg-inline { - @media (min-width: $screen-lg-min) { - display: inline !important; - } -} -.visible-lg-inline-block { - @media (min-width: $screen-lg-min) { - display: inline-block !important; - } -} - -@media (max-width: $screen-xs-max) { - @include responsive-invisibility('.hidden-xs'); -} - -@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { - @include responsive-invisibility('.hidden-sm'); -} - -@media (min-width: $screen-md-min) and (max-width: $screen-md-max) { - @include responsive-invisibility('.hidden-md'); -} - -@media (min-width: $screen-lg-min) { - @include responsive-invisibility('.hidden-lg'); -} - - -// Print utilities -// -// Media queries are placed on the inside to be mixin-friendly. - -// Note: Deprecated .visible-print as of v3.2.0 - -@include responsive-invisibility('.visible-print'); - -@media print { - @include responsive-visibility('.visible-print'); -} -.visible-print-block { - display: none !important; - - @media print { - display: block !important; - } -} -.visible-print-inline { - display: none !important; - - @media print { - display: inline !important; - } -} -.visible-print-inline-block { - display: none !important; - - @media print { - display: inline-block !important; - } -} - -@media print { - @include responsive-invisibility('.hidden-print'); -} diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_variables.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_variables.scss deleted file mode 100755 index 7d190f26..00000000 --- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/_variables.scss +++ /dev/null @@ -1,864 +0,0 @@ -// When true, asset path helpers are used, otherwise the regular CSS `url()` is used. -// When there no function is defined, `fn('')` is parsed as string that equals the right hand side -// NB: in Sass 3.3 there is a native function: function-exists(twbs-font-path) -$bootstrap-sass-asset-helper: (twbs-font-path("") != unquote('twbs-font-path("")')) !default; - -// -// Variables -// -------------------------------------------------- - - -//== Colors -// -//## Gray and brand colors for use across Bootstrap. - -$gray-base: #000 !default; -$gray-darker: lighten($gray-base, 13.5%) !default; // #222 -$gray-dark: lighten($gray-base, 20%) !default; // #333 -$gray: lighten($gray-base, 33.5%) !default; // #555 -$gray-light: lighten($gray-base, 46.7%) !default; // #777 -$gray-lighter: lighten($gray-base, 93.5%) !default; // #eee - -$brand-primary: darken(#428bca, 6.5%) !default; -$brand-success: #5cb85c !default; -$brand-info: #5bc0de !default; -$brand-warning: #f0ad4e !default; -$brand-danger: #d9534f !default; - - -//== Scaffolding -// -//## Settings for some of the most global styles. - -//** Background color for ``. -$body-bg: #fff !default; -//** Global text color on ``. -$text-color: $gray-dark !default; - -//** Global textual link color. -$link-color: $brand-primary !default; -//** Link hover color set via `darken()` function. -$link-hover-color: darken($link-color, 15%) !default; -//** Link hover decoration. -$link-hover-decoration: underline !default; - - -//== Typography -// -//## Font, line-height, and color for body text, headings, and more. - -$font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif !default; -$font-family-serif: Georgia, "Times New Roman", Times, serif !default; -//** Default monospace fonts for ``, ``, and `
`.
-$font-family-monospace:   Menlo, Monaco, Consolas, "Courier New", monospace !default;
-$font-family-base:        $font-family-sans-serif !default;
-
-$font-size-base:          14px !default;
-$font-size-large:         ceil(($font-size-base * 1.25)) !default; // ~18px
-$font-size-small:         ceil(($font-size-base * 0.85)) !default; // ~12px
-
-$font-size-h1:            floor(($font-size-base * 2.6)) !default; // ~36px
-$font-size-h2:            floor(($font-size-base * 2.15)) !default; // ~30px
-$font-size-h3:            ceil(($font-size-base * 1.7)) !default; // ~24px
-$font-size-h4:            ceil(($font-size-base * 1.25)) !default; // ~18px
-$font-size-h5:            $font-size-base !default;
-$font-size-h6:            ceil(($font-size-base * 0.85)) !default; // ~12px
-
-//** Unit-less `line-height` for use in components like buttons.
-$line-height-base:        1.428571429 !default; // 20/14
-//** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.
-$line-height-computed:    floor(($font-size-base * $line-height-base)) !default; // ~20px
-
-//** By default, this inherits from the ``.
-$headings-font-family:    inherit !default;
-$headings-font-weight:    500 !default;
-$headings-line-height:    1.1 !default;
-$headings-color:          inherit !default;
-
-
-//== Iconography
-//
-//## Specify custom location and filename of the included Glyphicons icon font. Useful for those including Bootstrap via Bower.
-
-//** Load fonts from this directory.
-
-// [converter] Asset helpers such as Sprockets and Node.js Mincer do not resolve relative paths
-$icon-font-path: if($bootstrap-sass-asset-helper, "bootstrap/", "../fonts/bootstrap/") !default;
-
-//** File name for all font files.
-$icon-font-name:          "glyphicons-halflings-regular" !default;
-//** Element ID within SVG icon file.
-$icon-font-svg-id:        "glyphicons_halflingsregular" !default;
-
-
-//== Components
-//
-//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).
-
-$padding-base-vertical:     6px !default;
-$padding-base-horizontal:   12px !default;
-
-$padding-large-vertical:    10px !default;
-$padding-large-horizontal:  16px !default;
-
-$padding-small-vertical:    5px !default;
-$padding-small-horizontal:  10px !default;
-
-$padding-xs-vertical:       1px !default;
-$padding-xs-horizontal:     5px !default;
-
-$line-height-large:         1.33 !default;
-$line-height-small:         1.5 !default;
-
-$border-radius-base:        4px !default;
-$border-radius-large:       6px !default;
-$border-radius-small:       3px !default;
-
-//** Global color for active items (e.g., navs or dropdowns).
-$component-active-color:    #fff !default;
-//** Global background color for active items (e.g., navs or dropdowns).
-$component-active-bg:       $brand-primary !default;
-
-//** Width of the `border` for generating carets that indicator dropdowns.
-$caret-width-base:          4px !default;
-//** Carets increase slightly in size for larger components.
-$caret-width-large:         5px !default;
-
-
-//== Tables
-//
-//## Customizes the `.table` component with basic values, each used across all table variations.
-
-//** Padding for ``s and ``s.
-$table-cell-padding:            8px !default;
-//** Padding for cells in `.table-condensed`.
-$table-condensed-cell-padding:  5px !default;
-
-//** Default background color used for all tables.
-$table-bg:                      transparent !default;
-//** Background color used for `.table-striped`.
-$table-bg-accent:               #f9f9f9 !default;
-//** Background color used for `.table-hover`.
-$table-bg-hover:                #f5f5f5 !default;
-$table-bg-active:               $table-bg-hover !default;
-
-//** Border color for table and cell borders.
-$table-border-color:            #ddd !default;
-
-
-//== Buttons
-//
-//## For each of Bootstrap's buttons, define text, background and border color.
-
-$btn-font-weight:                normal !default;
-
-$btn-default-color:              #333 !default;
-$btn-default-bg:                 #fff !default;
-$btn-default-border:             #ccc !default;
-
-$btn-primary-color:              #fff !default;
-$btn-primary-bg:                 $brand-primary !default;
-$btn-primary-border:             darken($btn-primary-bg, 5%) !default;
-
-$btn-success-color:              #fff !default;
-$btn-success-bg:                 $brand-success !default;
-$btn-success-border:             darken($btn-success-bg, 5%) !default;
-
-$btn-info-color:                 #fff !default;
-$btn-info-bg:                    $brand-info !default;
-$btn-info-border:                darken($btn-info-bg, 5%) !default;
-
-$btn-warning-color:              #fff !default;
-$btn-warning-bg:                 $brand-warning !default;
-$btn-warning-border:             darken($btn-warning-bg, 5%) !default;
-
-$btn-danger-color:               #fff !default;
-$btn-danger-bg:                  $brand-danger !default;
-$btn-danger-border:              darken($btn-danger-bg, 5%) !default;
-
-$btn-link-disabled-color:        $gray-light !default;
-
-
-//== Forms
-//
-//##
-
-//** `` background color
-$input-bg:                       #fff !default;
-//** `` background color
-$input-bg-disabled:              $gray-lighter !default;
-
-//** Text color for ``s
-$input-color:                    $gray !default;
-//** `` border color
-$input-border:                   #ccc !default;
-
-// TODO: Rename `$input-border-radius` to `$input-border-radius-base` in v4
-//** Default `.form-control` border radius
-$input-border-radius:            $border-radius-base !default;
-//** Large `.form-control` border radius
-$input-border-radius-large:      $border-radius-large !default;
-//** Small `.form-control` border radius
-$input-border-radius-small:      $border-radius-small !default;
-
-//** Border color for inputs on focus
-$input-border-focus:             #66afe9 !default;
-
-//** Placeholder text color
-$input-color-placeholder:        #999 !default;
-
-//** Default `.form-control` height
-$input-height-base:              ($line-height-computed + ($padding-base-vertical * 2) + 2) !default;
-//** Large `.form-control` height
-$input-height-large:             (ceil($font-size-large * $line-height-large) + ($padding-large-vertical * 2) + 2) !default;
-//** Small `.form-control` height
-$input-height-small:             (floor($font-size-small * $line-height-small) + ($padding-small-vertical * 2) + 2) !default;
-
-$legend-color:                   $gray-dark !default;
-$legend-border-color:            #e5e5e5 !default;
-
-//** Background color for textual input addons
-$input-group-addon-bg:           $gray-lighter !default;
-//** Border color for textual input addons
-$input-group-addon-border-color: $input-border !default;
-
-//** Disabled cursor for form controls and buttons.
-$cursor-disabled:                not-allowed !default;
-
-
-//== Dropdowns
-//
-//## Dropdown menu container and contents.
-
-//** Background for the dropdown menu.
-$dropdown-bg:                    #fff !default;
-//** Dropdown menu `border-color`.
-$dropdown-border:                rgba(0,0,0,.15) !default;
-//** Dropdown menu `border-color` **for IE8**.
-$dropdown-fallback-border:       #ccc !default;
-//** Divider color for between dropdown items.
-$dropdown-divider-bg:            #e5e5e5 !default;
-
-//** Dropdown link text color.
-$dropdown-link-color:            $gray-dark !default;
-//** Hover color for dropdown links.
-$dropdown-link-hover-color:      darken($gray-dark, 5%) !default;
-//** Hover background for dropdown links.
-$dropdown-link-hover-bg:         #f5f5f5 !default;
-
-//** Active dropdown menu item text color.
-$dropdown-link-active-color:     $component-active-color !default;
-//** Active dropdown menu item background color.
-$dropdown-link-active-bg:        $component-active-bg !default;
-
-//** Disabled dropdown menu item background color.
-$dropdown-link-disabled-color:   $gray-light !default;
-
-//** Text color for headers within dropdown menus.
-$dropdown-header-color:          $gray-light !default;
-
-//** Deprecated `$dropdown-caret-color` as of v3.1.0
-$dropdown-caret-color:           #000 !default;
-
-
-//-- Z-index master list
-//
-// Warning: Avoid customizing these values. They're used for a bird's eye view
-// of components dependent on the z-axis and are designed to all work together.
-//
-// Note: These variables are not generated into the Customizer.
-
-$zindex-navbar:            1000 !default;
-$zindex-dropdown:          1000 !default;
-$zindex-popover:           1060 !default;
-$zindex-tooltip:           1070 !default;
-$zindex-navbar-fixed:      1030 !default;
-$zindex-modal:             1040 !default;
-
-
-//== Media queries breakpoints
-//
-//## Define the breakpoints at which your layout will change, adapting to different screen sizes.
-
-// Extra small screen / phone
-//** Deprecated `$screen-xs` as of v3.0.1
-$screen-xs:                  480px !default;
-//** Deprecated `$screen-xs-min` as of v3.2.0
-$screen-xs-min:              $screen-xs !default;
-//** Deprecated `$screen-phone` as of v3.0.1
-$screen-phone:               $screen-xs-min !default;
-
-// Small screen / tablet
-//** Deprecated `$screen-sm` as of v3.0.1
-$screen-sm:                  768px !default;
-$screen-sm-min:              $screen-sm !default;
-//** Deprecated `$screen-tablet` as of v3.0.1
-$screen-tablet:              $screen-sm-min !default;
-
-// Medium screen / desktop
-//** Deprecated `$screen-md` as of v3.0.1
-$screen-md:                  992px !default;
-$screen-md-min:              $screen-md !default;
-//** Deprecated `$screen-desktop` as of v3.0.1
-$screen-desktop:             $screen-md-min !default;
-
-// Large screen / wide desktop
-//** Deprecated `$screen-lg` as of v3.0.1
-$screen-lg:                  1200px !default;
-$screen-lg-min:              $screen-lg !default;
-//** Deprecated `$screen-lg-desktop` as of v3.0.1
-$screen-lg-desktop:          $screen-lg-min !default;
-
-// So media queries don't overlap when required, provide a maximum
-$screen-xs-max:              ($screen-sm-min - 1) !default;
-$screen-sm-max:              ($screen-md-min - 1) !default;
-$screen-md-max:              ($screen-lg-min - 1) !default;
-
-
-//== Grid system
-//
-//## Define your custom responsive grid.
-
-//** Number of columns in the grid.
-$grid-columns:              12 !default;
-//** Padding between columns. Gets divided in half for the left and right.
-$grid-gutter-width:         30px !default;
-// Navbar collapse
-//** Point at which the navbar becomes uncollapsed.
-$grid-float-breakpoint:     $screen-sm-min !default;
-//** Point at which the navbar begins collapsing.
-$grid-float-breakpoint-max: ($grid-float-breakpoint - 1) !default;
-
-
-//== Container sizes
-//
-//## Define the maximum width of `.container` for different screen sizes.
-
-// Small screen / tablet
-$container-tablet:             (720px + $grid-gutter-width) !default;
-//** For `$screen-sm-min` and up.
-$container-sm:                 $container-tablet !default;
-
-// Medium screen / desktop
-$container-desktop:            (940px + $grid-gutter-width) !default;
-//** For `$screen-md-min` and up.
-$container-md:                 $container-desktop !default;
-
-// Large screen / wide desktop
-$container-large-desktop:      (1140px + $grid-gutter-width) !default;
-//** For `$screen-lg-min` and up.
-$container-lg:                 $container-large-desktop !default;
-
-
-//== Navbar
-//
-//##
-
-// Basics of a navbar
-$navbar-height:                    50px !default;
-$navbar-margin-bottom:             $line-height-computed !default;
-$navbar-border-radius:             $border-radius-base !default;
-$navbar-padding-horizontal:        floor(($grid-gutter-width / 2)) !default;
-$navbar-padding-vertical:          (($navbar-height - $line-height-computed) / 2) !default;
-$navbar-collapse-max-height:       340px !default;
-
-$navbar-default-color:             #777 !default;
-$navbar-default-bg:                #f8f8f8 !default;
-$navbar-default-border:            darken($navbar-default-bg, 6.5%) !default;
-
-// Navbar links
-$navbar-default-link-color:                #777 !default;
-$navbar-default-link-hover-color:          #333 !default;
-$navbar-default-link-hover-bg:             transparent !default;
-$navbar-default-link-active-color:         #555 !default;
-$navbar-default-link-active-bg:            darken($navbar-default-bg, 6.5%) !default;
-$navbar-default-link-disabled-color:       #ccc !default;
-$navbar-default-link-disabled-bg:          transparent !default;
-
-// Navbar brand label
-$navbar-default-brand-color:               $navbar-default-link-color !default;
-$navbar-default-brand-hover-color:         darken($navbar-default-brand-color, 10%) !default;
-$navbar-default-brand-hover-bg:            transparent !default;
-
-// Navbar toggle
-$navbar-default-toggle-hover-bg:           #ddd !default;
-$navbar-default-toggle-icon-bar-bg:        #888 !default;
-$navbar-default-toggle-border-color:       #ddd !default;
-
-
-// Inverted navbar
-// Reset inverted navbar basics
-$navbar-inverse-color:                      lighten($gray-light, 15%) !default;
-$navbar-inverse-bg:                         #222 !default;
-$navbar-inverse-border:                     darken($navbar-inverse-bg, 10%) !default;
-
-// Inverted navbar links
-$navbar-inverse-link-color:                 lighten($gray-light, 15%) !default;
-$navbar-inverse-link-hover-color:           #fff !default;
-$navbar-inverse-link-hover-bg:              transparent !default;
-$navbar-inverse-link-active-color:          $navbar-inverse-link-hover-color !default;
-$navbar-inverse-link-active-bg:             darken($navbar-inverse-bg, 10%) !default;
-$navbar-inverse-link-disabled-color:        #444 !default;
-$navbar-inverse-link-disabled-bg:           transparent !default;
-
-// Inverted navbar brand label
-$navbar-inverse-brand-color:                $navbar-inverse-link-color !default;
-$navbar-inverse-brand-hover-color:          #fff !default;
-$navbar-inverse-brand-hover-bg:             transparent !default;
-
-// Inverted navbar toggle
-$navbar-inverse-toggle-hover-bg:            #333 !default;
-$navbar-inverse-toggle-icon-bar-bg:         #fff !default;
-$navbar-inverse-toggle-border-color:        #333 !default;
-
-
-//== Navs
-//
-//##
-
-//=== Shared nav styles
-$nav-link-padding:                          10px 15px !default;
-$nav-link-hover-bg:                         $gray-lighter !default;
-
-$nav-disabled-link-color:                   $gray-light !default;
-$nav-disabled-link-hover-color:             $gray-light !default;
-
-//== Tabs
-$nav-tabs-border-color:                     #ddd !default;
-
-$nav-tabs-link-hover-border-color:          $gray-lighter !default;
-
-$nav-tabs-active-link-hover-bg:             $body-bg !default;
-$nav-tabs-active-link-hover-color:          $gray !default;
-$nav-tabs-active-link-hover-border-color:   #ddd !default;
-
-$nav-tabs-justified-link-border-color:            #ddd !default;
-$nav-tabs-justified-active-link-border-color:     $body-bg !default;
-
-//== Pills
-$nav-pills-border-radius:                   $border-radius-base !default;
-$nav-pills-active-link-hover-bg:            $component-active-bg !default;
-$nav-pills-active-link-hover-color:         $component-active-color !default;
-
-
-//== Pagination
-//
-//##
-
-$pagination-color:                     $link-color !default;
-$pagination-bg:                        #fff !default;
-$pagination-border:                    #ddd !default;
-
-$pagination-hover-color:               $link-hover-color !default;
-$pagination-hover-bg:                  $gray-lighter !default;
-$pagination-hover-border:              #ddd !default;
-
-$pagination-active-color:              #fff !default;
-$pagination-active-bg:                 $brand-primary !default;
-$pagination-active-border:             $brand-primary !default;
-
-$pagination-disabled-color:            $gray-light !default;
-$pagination-disabled-bg:               #fff !default;
-$pagination-disabled-border:           #ddd !default;
-
-
-//== Pager
-//
-//##
-
-$pager-bg:                             $pagination-bg !default;
-$pager-border:                         $pagination-border !default;
-$pager-border-radius:                  15px !default;
-
-$pager-hover-bg:                       $pagination-hover-bg !default;
-
-$pager-active-bg:                      $pagination-active-bg !default;
-$pager-active-color:                   $pagination-active-color !default;
-
-$pager-disabled-color:                 $pagination-disabled-color !default;
-
-
-//== Jumbotron
-//
-//##
-
-$jumbotron-padding:              30px !default;
-$jumbotron-color:                inherit !default;
-$jumbotron-bg:                   $gray-lighter !default;
-$jumbotron-heading-color:        inherit !default;
-$jumbotron-font-size:            ceil(($font-size-base * 1.5)) !default;
-
-
-//== Form states and alerts
-//
-//## Define colors for form feedback states and, by default, alerts.
-
-$state-success-text:             #3c763d !default;
-$state-success-bg:               #dff0d8 !default;
-$state-success-border:           darken(adjust-hue($state-success-bg, -10), 5%) !default;
-
-$state-info-text:                #31708f !default;
-$state-info-bg:                  #d9edf7 !default;
-$state-info-border:              darken(adjust-hue($state-info-bg, -10), 7%) !default;
-
-$state-warning-text:             #8a6d3b !default;
-$state-warning-bg:               #fcf8e3 !default;
-$state-warning-border:           darken(adjust-hue($state-warning-bg, -10), 5%) !default;
-
-$state-danger-text:              #a94442 !default;
-$state-danger-bg:                #f2dede !default;
-$state-danger-border:            darken(adjust-hue($state-danger-bg, -10), 5%) !default;
-
-
-//== Tooltips
-//
-//##
-
-//** Tooltip max width
-$tooltip-max-width:           200px !default;
-//** Tooltip text color
-$tooltip-color:               #fff !default;
-//** Tooltip background color
-$tooltip-bg:                  #000 !default;
-$tooltip-opacity:             .9 !default;
-
-//** Tooltip arrow width
-$tooltip-arrow-width:         5px !default;
-//** Tooltip arrow color
-$tooltip-arrow-color:         $tooltip-bg !default;
-
-
-//== Popovers
-//
-//##
-
-//** Popover body background color
-$popover-bg:                          #fff !default;
-//** Popover maximum width
-$popover-max-width:                   276px !default;
-//** Popover border color
-$popover-border-color:                rgba(0,0,0,.2) !default;
-//** Popover fallback border color
-$popover-fallback-border-color:       #ccc !default;
-
-//** Popover title background color
-$popover-title-bg:                    darken($popover-bg, 3%) !default;
-
-//** Popover arrow width
-$popover-arrow-width:                 10px !default;
-//** Popover arrow color
-$popover-arrow-color:                 $popover-bg !default;
-
-//** Popover outer arrow width
-$popover-arrow-outer-width:           ($popover-arrow-width + 1) !default;
-//** Popover outer arrow color
-$popover-arrow-outer-color:           fade_in($popover-border-color, 0.05) !default;
-//** Popover outer arrow fallback color
-$popover-arrow-outer-fallback-color:  darken($popover-fallback-border-color, 20%) !default;
-
-
-//== Labels
-//
-//##
-
-//** Default label background color
-$label-default-bg:            $gray-light !default;
-//** Primary label background color
-$label-primary-bg:            $brand-primary !default;
-//** Success label background color
-$label-success-bg:            $brand-success !default;
-//** Info label background color
-$label-info-bg:               $brand-info !default;
-//** Warning label background color
-$label-warning-bg:            $brand-warning !default;
-//** Danger label background color
-$label-danger-bg:             $brand-danger !default;
-
-//** Default label text color
-$label-color:                 #fff !default;
-//** Default text color of a linked label
-$label-link-hover-color:      #fff !default;
-
-
-//== Modals
-//
-//##
-
-//** Padding applied to the modal body
-$modal-inner-padding:         15px !default;
-
-//** Padding applied to the modal title
-$modal-title-padding:         15px !default;
-//** Modal title line-height
-$modal-title-line-height:     $line-height-base !default;
-
-//** Background color of modal content area
-$modal-content-bg:                             #fff !default;
-//** Modal content border color
-$modal-content-border-color:                   rgba(0,0,0,.2) !default;
-//** Modal content border color **for IE8**
-$modal-content-fallback-border-color:          #999 !default;
-
-//** Modal backdrop background color
-$modal-backdrop-bg:           #000 !default;
-//** Modal backdrop opacity
-$modal-backdrop-opacity:      .5 !default;
-//** Modal header border color
-$modal-header-border-color:   #e5e5e5 !default;
-//** Modal footer border color
-$modal-footer-border-color:   $modal-header-border-color !default;
-
-$modal-lg:                    900px !default;
-$modal-md:                    600px !default;
-$modal-sm:                    300px !default;
-
-
-//== Alerts
-//
-//## Define alert colors, border radius, and padding.
-
-$alert-padding:               15px !default;
-$alert-border-radius:         $border-radius-base !default;
-$alert-link-font-weight:      bold !default;
-
-$alert-success-bg:            $state-success-bg !default;
-$alert-success-text:          $state-success-text !default;
-$alert-success-border:        $state-success-border !default;
-
-$alert-info-bg:               $state-info-bg !default;
-$alert-info-text:             $state-info-text !default;
-$alert-info-border:           $state-info-border !default;
-
-$alert-warning-bg:            $state-warning-bg !default;
-$alert-warning-text:          $state-warning-text !default;
-$alert-warning-border:        $state-warning-border !default;
-
-$alert-danger-bg:             $state-danger-bg !default;
-$alert-danger-text:           $state-danger-text !default;
-$alert-danger-border:         $state-danger-border !default;
-
-
-//== Progress bars
-//
-//##
-
-//** Background color of the whole progress component
-$progress-bg:                 #f5f5f5 !default;
-//** Progress bar text color
-$progress-bar-color:          #fff !default;
-//** Variable for setting rounded corners on progress bar.
-$progress-border-radius:      $border-radius-base !default;
-
-//** Default progress bar color
-$progress-bar-bg:             $brand-primary !default;
-//** Success progress bar color
-$progress-bar-success-bg:     $brand-success !default;
-//** Warning progress bar color
-$progress-bar-warning-bg:     $brand-warning !default;
-//** Danger progress bar color
-$progress-bar-danger-bg:      $brand-danger !default;
-//** Info progress bar color
-$progress-bar-info-bg:        $brand-info !default;
-
-
-//== List group
-//
-//##
-
-//** Background color on `.list-group-item`
-$list-group-bg:                 #fff !default;
-//** `.list-group-item` border color
-$list-group-border:             #ddd !default;
-//** List group border radius
-$list-group-border-radius:      $border-radius-base !default;
-
-//** Background color of single list items on hover
-$list-group-hover-bg:           #f5f5f5 !default;
-//** Text color of active list items
-$list-group-active-color:       $component-active-color !default;
-//** Background color of active list items
-$list-group-active-bg:          $component-active-bg !default;
-//** Border color of active list elements
-$list-group-active-border:      $list-group-active-bg !default;
-//** Text color for content within active list items
-$list-group-active-text-color:  lighten($list-group-active-bg, 40%) !default;
-
-//** Text color of disabled list items
-$list-group-disabled-color:      $gray-light !default;
-//** Background color of disabled list items
-$list-group-disabled-bg:         $gray-lighter !default;
-//** Text color for content within disabled list items
-$list-group-disabled-text-color: $list-group-disabled-color !default;
-
-$list-group-link-color:         #555 !default;
-$list-group-link-hover-color:   $list-group-link-color !default;
-$list-group-link-heading-color: #333 !default;
-
-
-//== Panels
-//
-//##
-
-$panel-bg:                    #fff !default;
-$panel-body-padding:          15px !default;
-$panel-heading-padding:       10px 15px !default;
-$panel-footer-padding:        $panel-heading-padding !default;
-$panel-border-radius:         $border-radius-base !default;
-
-//** Border color for elements within panels
-$panel-inner-border:          #ddd !default;
-$panel-footer-bg:             #f5f5f5 !default;
-
-$panel-default-text:          $gray-dark !default;
-$panel-default-border:        #ddd !default;
-$panel-default-heading-bg:    #f5f5f5 !default;
-
-$panel-primary-text:          #fff !default;
-$panel-primary-border:        $brand-primary !default;
-$panel-primary-heading-bg:    $brand-primary !default;
-
-$panel-success-text:          $state-success-text !default;
-$panel-success-border:        $state-success-border !default;
-$panel-success-heading-bg:    $state-success-bg !default;
-
-$panel-info-text:             $state-info-text !default;
-$panel-info-border:           $state-info-border !default;
-$panel-info-heading-bg:       $state-info-bg !default;
-
-$panel-warning-text:          $state-warning-text !default;
-$panel-warning-border:        $state-warning-border !default;
-$panel-warning-heading-bg:    $state-warning-bg !default;
-
-$panel-danger-text:           $state-danger-text !default;
-$panel-danger-border:         $state-danger-border !default;
-$panel-danger-heading-bg:     $state-danger-bg !default;
-
-
-//== Thumbnails
-//
-//##
-
-//** Padding around the thumbnail image
-$thumbnail-padding:           4px !default;
-//** Thumbnail background color
-$thumbnail-bg:                $body-bg !default;
-//** Thumbnail border color
-$thumbnail-border:            #ddd !default;
-//** Thumbnail border radius
-$thumbnail-border-radius:     $border-radius-base !default;
-
-//** Custom text color for thumbnail captions
-$thumbnail-caption-color:     $text-color !default;
-//** Padding around the thumbnail caption
-$thumbnail-caption-padding:   9px !default;
-
-
-//== Wells
-//
-//##
-
-$well-bg:                     #f5f5f5 !default;
-$well-border:                 darken($well-bg, 7%) !default;
-
-
-//== Badges
-//
-//##
-
-$badge-color:                 #fff !default;
-//** Linked badge text color on hover
-$badge-link-hover-color:      #fff !default;
-$badge-bg:                    $gray-light !default;
-
-//** Badge text color in active nav link
-$badge-active-color:          $link-color !default;
-//** Badge background color in active nav link
-$badge-active-bg:             #fff !default;
-
-$badge-font-weight:           bold !default;
-$badge-line-height:           1 !default;
-$badge-border-radius:         10px !default;
-
-
-//== Breadcrumbs
-//
-//##
-
-$breadcrumb-padding-vertical:   8px !default;
-$breadcrumb-padding-horizontal: 15px !default;
-//** Breadcrumb background color
-$breadcrumb-bg:                 #f5f5f5 !default;
-//** Breadcrumb text color
-$breadcrumb-color:              #ccc !default;
-//** Text color of current page in the breadcrumb
-$breadcrumb-active-color:       $gray-light !default;
-//** Textual separator for between breadcrumb elements
-$breadcrumb-separator:          "/" !default;
-
-
-//== Carousel
-//
-//##
-
-$carousel-text-shadow:                        0 1px 2px rgba(0,0,0,.6) !default;
-
-$carousel-control-color:                      #fff !default;
-$carousel-control-width:                      15% !default;
-$carousel-control-opacity:                    .5 !default;
-$carousel-control-font-size:                  20px !default;
-
-$carousel-indicator-active-bg:                #fff !default;
-$carousel-indicator-border-color:             #fff !default;
-
-$carousel-caption-color:                      #fff !default;
-
-
-//== Close
-//
-//##
-
-$close-font-weight:           bold !default;
-$close-color:                 #000 !default;
-$close-text-shadow:           0 1px 0 #fff !default;
-
-
-//== Code
-//
-//##
-
-$code-color:                  #c7254e !default;
-$code-bg:                     #f9f2f4 !default;
-
-$kbd-color:                   #fff !default;
-$kbd-bg:                      #333 !default;
-
-$pre-bg:                      #f5f5f5 !default;
-$pre-color:                   $gray-dark !default;
-$pre-border-color:            #ccc !default;
-$pre-scrollable-max-height:   340px !default;
-
-
-//== Type
-//
-//##
-
-//** Horizontal offset for forms and lists.
-$component-offset-horizontal: 180px !default;
-//** Text muted color
-$text-muted:                  $gray-light !default;
-//** Abbreviations and acronyms border color
-$abbr-border-color:           $gray-light !default;
-//** Headings small color
-$headings-small-color:        $gray-light !default;
-//** Blockquote small color
-$blockquote-small-color:      $gray-light !default;
-//** Blockquote font size
-$blockquote-font-size:        ($font-size-base * 1.25) !default;
-//** Blockquote border color
-$blockquote-border-color:     $gray-lighter !default;
-//** Page header border color
-$page-header-border-color:    $gray-lighter !default;
-//** Width of horizontal description list titles
-$dl-horizontal-offset:        $component-offset-horizontal !default;
-//** Horizontal line color.
-$hr-border:                   $gray-lighter !default;
diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_alerts.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_alerts.scss
deleted file mode 100755
index 3faf0b5a..00000000
--- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_alerts.scss
+++ /dev/null
@@ -1,14 +0,0 @@
-// Alerts
-
-@mixin alert-variant($background, $border, $text-color) {
-  background-color: $background;
-  border-color: $border;
-  color: $text-color;
-
-  hr {
-    border-top-color: darken($border, 5%);
-  }
-  .alert-link {
-    color: darken($text-color, 10%);
-  }
-}
diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_background-variant.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_background-variant.scss
deleted file mode 100755
index 4993bd2b..00000000
--- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_background-variant.scss
+++ /dev/null
@@ -1,11 +0,0 @@
-// Contextual backgrounds
-
-// [converter] $parent hack
-@mixin bg-variant($parent, $color) {
-  #{$parent} {
-    background-color: $color;
-  }
-  a#{$parent}:hover {
-    background-color: darken($color, 10%);
-  }
-}
diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_border-radius.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_border-radius.scss
deleted file mode 100755
index ce194998..00000000
--- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_border-radius.scss
+++ /dev/null
@@ -1,18 +0,0 @@
-// Single side border-radius
-
-@mixin border-top-radius($radius) {
-  border-top-right-radius: $radius;
-   border-top-left-radius: $radius;
-}
-@mixin border-right-radius($radius) {
-  border-bottom-right-radius: $radius;
-     border-top-right-radius: $radius;
-}
-@mixin border-bottom-radius($radius) {
-  border-bottom-right-radius: $radius;
-   border-bottom-left-radius: $radius;
-}
-@mixin border-left-radius($radius) {
-  border-bottom-left-radius: $radius;
-     border-top-left-radius: $radius;
-}
diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_buttons.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_buttons.scss
deleted file mode 100755
index 9efc0c8d..00000000
--- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_buttons.scss
+++ /dev/null
@@ -1,56 +0,0 @@
-// Button variants
-//
-// Easily pump out default styles, as well as :hover, :focus, :active,
-// and disabled options for all buttons
-
-@mixin button-variant($color, $background, $border) {
-  color: $color;
-  background-color: $background;
-  border-color: $border;
-
-  &:hover,
-  &:focus,
-  &.focus,
-  &:active,
-  &.active,
-  .open > &.dropdown-toggle {
-    color: $color;
-    background-color: darken($background, 10%);
-        border-color: darken($border, 12%);
-  }
-  &:active,
-  &.active,
-  .open > &.dropdown-toggle {
-    background-image: none;
-  }
-  &.disabled,
-  &[disabled],
-  fieldset[disabled] & {
-    &,
-    &:hover,
-    &:focus,
-    &.focus,
-    &:active,
-    &.active {
-      background-color: $background;
-          border-color: $border;
-
-      &.btn-primary {
-        color: #fff;
-      }
-    }
-  }
-
-  .badge {
-    color: $background;
-    background-color: $color;
-  }
-}
-
-// Button sizes
-@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
-  padding: $padding-vertical $padding-horizontal;
-  font-size: $font-size;
-  line-height: $line-height;
-  border-radius: $border-radius;
-}
diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_center-block.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_center-block.scss
deleted file mode 100755
index e06fb5e2..00000000
--- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_center-block.scss
+++ /dev/null
@@ -1,7 +0,0 @@
-// Center-align a block level element
-
-@mixin center-block() {
-  display: block;
-  margin-left: auto;
-  margin-right: auto;
-}
diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_clearfix.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_clearfix.scss
deleted file mode 100755
index dc3e2ab4..00000000
--- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_clearfix.scss
+++ /dev/null
@@ -1,22 +0,0 @@
-// Clearfix
-//
-// For modern browsers
-// 1. The space content is one way to avoid an Opera bug when the
-//    contenteditable attribute is included anywhere else in the document.
-//    Otherwise it causes space to appear at the top and bottom of elements
-//    that are clearfixed.
-// 2. The use of `table` rather than `block` is only necessary if using
-//    `:before` to contain the top-margins of child elements.
-//
-// Source: http://nicolasgallagher.com/micro-clearfix-hack/
-
-@mixin clearfix() {
-  &:before,
-  &:after {
-    content: " "; // 1
-    display: table; // 2
-  }
-  &:after {
-    clear: both;
-  }
-}
diff --git a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_forms.scss b/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_forms.scss
deleted file mode 100755
index 277aa5f8..00000000
--- a/docs/algolia-aerial/src/stylesheet/vendors/bootstrap/mixins/_forms.scss
+++ /dev/null
@@ -1,88 +0,0 @@
-// Form validation states
-//
-// Used in forms.less to generate the form validation CSS for warnings, errors,
-// and successes.
-
-@mixin form-control-validation($text-color: #555, $border-color: #ccc, $background-color: #f5f5f5) {
-  // Color the label and help text
-  .help-block,
-  .control-label,
-  .radio,
-  .checkbox,
-  .radio-inline,
-  .checkbox-inline,
-  &.radio label,
-  &.checkbox label,
-  &.radio-inline label,
-  &.checkbox-inline label  {
-    color: $text-color;
-  }
-  // Set the border and box shadow on specific inputs to match
-  .form-control {
-    border-color: $border-color;
-    @include box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work
-    &:focus {
-      border-color: darken($border-color, 10%);
-      $shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten($border-color, 20%);
-      @include box-shadow($shadow);
-    }
-  }
-  // Set validation states also for addons
-  .input-group-addon {
-    color: $text-color;
-    border-color: $border-color;
-    background-color: $background-color;
-  }
-  // Optional feedback icon
-  .form-control-feedback {
-    color: $text-color;
-  }
-}
-
-
-// Form control focus state
-//
-// Generate a customized focus state and for any input with the specified color,
-// which defaults to the `$input-border-focus` variable.
-//
-// We highly encourage you to not customize the default value, but instead use
-// this to tweak colors on an as-needed basis. This aesthetic change is based on
-// WebKit's default styles, but applicable to a wider range of browsers. Its
-// usability and accessibility should be taken into account with any change.
-//
-// Example usage: change the default blue border and shadow to white for better
-// contrast against a dark gray background.
-@mixin form-control-focus($color: $input-border-focus) {
-  $color-rgba: rgba(red($color), green($color), blue($color), .6);
-  &:focus {
-    border-color: $color;
-    outline: 0;
-    @include box-shadow(inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px $color-rgba);
-  }
-}
-
-// Form control sizing
-//
-// Relative text size, padding, and border-radii changes for form controls. For
-// horizontal sizing, wrap controls in the predefined grid classes. `
-          
-          
-        
-      
-    `;
-}
-
-const renderRightList = (sideList) => {
-  if(!sideList.length) return;
-  let markup = "
    " - - markup += sideList.reduce((prev,next) => renderRightListItem(prev,next),""); - markup += "
" - - return markup; -} - -const renderRightListItem = (prev, data) => { - if(data.image){ - return prev += ` -
  • - - ${data.image} - ${ renderGlyph(data) } - - ${renderSubList(data.dropdownItems)} -
  • `; - } else { - return prev += ` -
  • - - ${data.name} - ${ renderGlyph(data) } - - ${renderSubList(data.dropdownItems)} -
  • ` - } -} - -const renderGlyph = (data) => { - if(data.dropdownItems && data.dropdownItems.length){ - return '' - } else { - return ""; - } -} - -const renderSubList = (subList) => { - if(!subList || !subList.length) return ""; - let markup = "
      "; - markup += subList.reduce((prev,next) => renderSubListItem(prev,next),""); - markup += "
    "; - - return markup; -} - -const renderSubListItem = (prev, data) => { - return prev += ` -
  • - ${data.name} -
  • - ` -} - -const renderMobileMenu = (sideList) => { - if(!sideList.length) return; - let markup = "
      " - markup += sideList.reduce((prev,next) => renderMobileMenuItem(prev,next),""); - markup += "
    " - return markup; -} - -const renderMobileMenuItem = (prev, data) => { - if(data.image){ - return prev += ` -
  • - - ${data.image} - ${data.name ? data.name : ""} - -
  • `; - } else { - return prev += ` -
  • - - ${data.name} - -
  • ` - } -} - -module.exports = function(paramData = {}, assetParams = {}){ - const d = merge(data, paramData); - const a = merge(assets, assetParams); - return ` - - `; -} diff --git a/docs/algolia-frontend-components/components/communityHeader/communityHeader.js b/docs/algolia-frontend-components/components/communityHeader/communityHeader.js deleted file mode 100755 index fb9963a0..00000000 --- a/docs/algolia-frontend-components/components/communityHeader/communityHeader.js +++ /dev/null @@ -1,280 +0,0 @@ -/** - * Main header function with docsearch - * @param {Object} docSearch config - */ - -class communityHeader { - - constructor(docSearchCredentials, docSearch) { - this.docSearchCredentials = docSearchCredentials; - this.docSearch = docSearch || null; - - this.menuState = { - isOpen: false, - isOpenMobile: false - } - - this.INIT_VAL = { - WIDTH: 490, - HEIGHT: 360 - } - - this.disableTransitionTimeout; - - this.searchIcon = document.querySelector('#search'); - this.cancelIcon = document.querySelector('#cancel'); - this.searchInputContainer = document.querySelector('.algc-search__input'); - this.searchContainer = this.searchInputContainer ? this.searchInputContainer.parentNode : null; - this.navRoot = document.querySelector('.algc-dropdownroot'); - this.dropdownRoot = document.querySelector('.algc-navigation__dropdown-holder'); - this.navItems = document.querySelectorAll('a[data-enabledropdown="true"]'); - this.navContainer = document.querySelector('.algc-dropdownroot__dropdowncontainer'); - this.menuContainer = document.querySelector('.algc-navigation__container'); - this.navBg = document.querySelector('.algc-dropdownroot__dropdownbg'); - this.navArrow = document.querySelector('.algc-dropdownroot__dropdownarrow'); - this.dropDownContainer = document.querySelector('.algc-dropdownroot__dropdowncontainer'); - this.menuTriggers = document.querySelectorAll('[data-enabledropdown="true"]'); - this.mobileMenuButton = document.querySelector('.algc-openmobile '); - this.mobileMenu = document.querySelector('.algc-mobilemenu'); - this.subList = document.querySelectorAll('.algc-menu--sublistlink'); - this.subListHolders = [...this.subList].map(node => node.parentNode); - this.menuDropdowns = {}; - - [].forEach.call(document.querySelectorAll('[data-dropdown-content]'), (item) => { - this.menuDropdowns[item.dataset.dropdownContent] = { - parent: item.parentNode, - content: item - } - }); - - this.shouldInitDocSearch = this.shouldInitDocSearch.bind(this); - this.docSearchInit = this.checkDocSearch(docSearch); - this.enableDocSearch = this.verifyDocSearchParams(docSearchCredentials); - this.hasDocSearchRendered = document.querySelector('.algc-navigation .algc-search__input--docsearch'); - this.triggerMenu = this.triggerMenu.bind(this); - this.shouldTriggerMenu = this.shouldTriggerMenu.bind(this); - this.closeMenu = this.closeMenu.bind(this); - this.toggleMobileMenu = this.toggleMobileMenu.bind(this); - this.docSearchToggling = this.docSearchToggling.bind(this); - this.initDocSearchStrategy = this.initDocSearchStrategy.bind(this); - this.openSublist = this.openSublist.bind(this); - this.closeSubLists = this.closeSubLists.bind(this); - this.bindListeners = this.bindListeners.bind(this); - - this.calculatePosition = this.calculatePosition.bind(this); - - this.verifyDocSearchParams(); - this.shouldInitDocSearch(); - this.initDocSearchStrategy(); - this.bindListeners(); - } - - calculatePosition(sourceNode) { - const box = sourceNode.getBoundingClientRect(); - const realWidth = sourceNode.offsetWidth; - const realHeight = sourceNode.offsetHeight; - - return { - left: box.left, - top: box.top, - width: box.width, - height: box.height, - realWidth: realWidth, - realHeight: realHeight, - center: box.left + box.width / 2 - } - } - - shouldInitDocSearch() { - if (!this.enableDocSearch && this.hasDocSearchRendered) { - throw new Error('You need to pass docSearch: { apiKey, indexName, inputSelector } to communityHeader function in order to initialise docSearch'); - } - } - - checkDocSearch(docSearch = false) { - if (docSearch) return docSearch; - - if (typeof window.docsearch === "function" || typeof docsearch === "function") { - return docsearch; - } - } - - verifyDocSearchParams(docSearchCredentials) { - return (docSearchCredentials && - docSearchCredentials.apiKey && - docSearchCredentials.indexName && - docSearchCredentials.inputSelector) ? true : false; - } - - triggerMenu(event) { - - const dropdown = event.target.dataset.dropdown; - const newTarget = this.menuDropdowns[dropdown].content; - const newContent = this.menuDropdowns[dropdown].parent; - - const navItem = this.calculatePosition(event.target); - const newTargetCoordinates = this.calculatePosition(newTarget); - const menuContainerOffset = this.calculatePosition(this.menuContainer); - let leftDistance; - - const scaleFactors = { - X: newTargetCoordinates.realWidth / this.INIT_VAL.WIDTH, - Y: newTargetCoordinates.realHeight / this.INIT_VAL.HEIGHT - } - - leftDistance = (navItem.center - menuContainerOffset.left) + "px"; - - if(menuContainerOffset.left < 20){ - leftDistance = "calc(50% - 36px)" - } - - this.navBg.style.cssText = ` - transform: translateX(${leftDistance}) scale(${scaleFactors.X}, ${scaleFactors.Y})`; - - this.navArrow.style.cssText = ` - transform: translateX(${leftDistance}) rotate(45deg)`; - - this.dropDownContainer.style.cssText = ` - transform: translateX(${leftDistance}); - width: ${newTargetCoordinates.realWidth}px; - height: ${newTargetCoordinates.realHeight + 10}px;`; - - this.dropdownRoot.style.pointerEvents = "auto"; - - Object.keys(this.menuDropdowns).forEach(key => { - if (key === dropdown) { - this.menuDropdowns[key].parent.classList.add('active'); - } else { - this.menuDropdowns[key].parent.classList.remove('active'); - } - }) - - if (!this.menuState.isOpen) { - setTimeout(() => { - this.navRoot.className = "algc-dropdownroot activeDropdown"; - }, 50); - } - - window.clearTimeout(this.disableTransitionTimeout); - this.menuState.isOpen = true; - } - - shouldTriggerMenu(event) { - if(this.menuState.isOpen) { - this.triggerMenu(event); - } else { - this.triggerMenuTimeout = setTimeout(()=>{ - this.triggerMenu(event); - }, 200); - } - } - - closeMenu(event) { - window.clearTimeout(this.triggerMenuTimeout); - this.menuState.isOpen = false; - this.disableTransitionTimeout = setTimeout(() => { - this.dropdownRoot.style.pointerEvents = "none"; - this.navRoot.className = "algc-dropdownroot notransition" - }, 50); - } - - toggleMobileMenu(event) { - this.mobileMenuButton.classList.toggle('algc-openmobile--open'); - this.mobileMenu.classList.toggle('algc-mobilemenu--open'); - } - - // Search - docSearchToggling() { - this.searchInput = document.querySelector(this.docSearchCredentials.inputSelector); - const openSearchInput = () => { - this.searchContainer.classList.add('open'); - this.searchInput.focus(); - } - - const closeSearchInput = () => { - this.searchInput.blur(); - this.searchContainer.classList.remove('open'); - } - - const emptySearchInput = () => { - if (this.searchInput.value !== '') { - this.searchInput.value = ''; - } else { - closeSearchInput(); - } - } - this.searchInput.setAttribute('value', ''); - this.searchIcon.addEventListener('click', openSearchInput); - this.cancelIcon.addEventListener('click', emptySearchInput); - }; - - initDocSearch() { - this.docSearchToggling(); - this.docSearchInit(this.docSearchCredentials); - } - - initDocSearchStrategy() { - if (this.enableDocSearch && typeof this.docSearchInit === "function") { - this.initDocSearch(); - - } else if (this.docSearch === "lazy") { - - const docSearchScript = document.createElement('script'); - docSearchScript.type = 'text/javascript'; - docSearchScript.async = true; - document.body.appendChild(docSearchScript); - - docSearchScript.onload = () => { - this.docSearchInit = docsearch; - this.initDocSearch(); - }; - - docSearchScript.src = "https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"; - } - } - - openSublist(node) { - const parent = node.parentNode; - this.subListHolders.forEach(holder => { - if (holder === parent && !parent.classList.contains('open')) { - holder.classList.add('open'); - } else { - holder.classList.remove('open'); - } - }) - } - - closeSubLists(event) { - this.subListHolders.forEach(holder => holder.classList.remove('open')); - } - - bindListeners() { - var that = this; - this.subList.forEach(link => { - link.addEventListener('click', function(event){ - event.preventDefault(); - event.stopPropagation(); - that.openSublist(this); - }); - }); - - this.menuTriggers.forEach(item => { - item.addEventListener('mouseenter', this.shouldTriggerMenu); - item.addEventListener('focus', this.triggerMenu); - }); - - this.navItems.forEach(item => { - item.addEventListener('mouseleave', this.closeMenu); - }); - - this.navContainer.addEventListener('mouseenter', () => { - clearTimeout(this.disableTransitionTimeout); - }); - - this.mobileMenuButton.addEventListener('click', this.toggleMobileMenu); - document.addEventListener('click', this.closeSubLists); - document.querySelector('.algc-dropdownroot__dropdowncontainer').addEventListener('mouseleave', this.closeMenu); - } -} - -module.exports = communityHeader diff --git a/docs/algolia-frontend-components/components/communityHeader/communityHeader.scss b/docs/algolia-frontend-components/components/communityHeader/communityHeader.scss deleted file mode 100755 index 014e1524..00000000 --- a/docs/algolia-frontend-components/components/communityHeader/communityHeader.scss +++ /dev/null @@ -1,957 +0,0 @@ -@import "./../../stylesheets/_variables.scss"; -@import "./../../stylesheets/_functions.scss"; -@import "./../../stylesheets/_mixins.scss"; - -$nav-height: 56px; -$nav-z-index: 50; -$nav-background: $deep-cove; -$nav-background-medium: mix($nav-background, #fff, 96%); -$nav-background-light: mix($nav-background, #fff, 92%); - -.algc-navigation { - top: 0; - left: 0; - width: 100%; - color: #fff; - padding: 0 1em; - z-index: $z-top; - position: fixed; - perspective: 2000px; - transform-style: preserve-3d; - background: $nav-background; - font-size: 1em; - will-change: transform; - - @media (max-width: $breakpoint-sm){ - padding: 0 .5em; - } - - .algc-mainmenu { - position: relative; - } - - .algc-navigation__container{ - margin: 0 auto; - max-width: $container-max-width; - } - - a { - text-decoration: none; - } -} - -.algc-navigation__brands { - height: $nav-height; - margin: 0; - padding: 0; - list-style-type: none; - float: left; - font-weight: $light; - display: flex; - align-items:center; - z-index: $z-1; - position: relative; - - a { - text-decoration: none; - color: $white; - - &:hover { - color: $white; - } - } - - &:hover, - &:visited { - color: white; - } - - img,svg { - max-width: none; - vertical-align: middle; - } - - @media (max-width: $breakpoint-md) { - font-size: .8em; - } - - .algc-navigation__li { - float: left; - text-align: center; - min-height: 33px; - display: flex; - align-items: center; - - @media (min-width: $breakpoint-md) and (max-width: $breakpoint-lg) { - - &:nth-child(2) { - padding-left: 0; - - img,svg { - margin-left: 0px; - } - - .algc-arrowseparator { - margin-left: 4px; - } - } - } - - @media (max-width: $breakpoint-lg) { - - &:nth-child(2) { - a { padding-left: 0; } - .algc-arrowseparator { display: none; } - } - } - - @media (max-width: $breakpoint-sm) { - - &:nth-child(2) { - width: 30px; - overflow: hidden; - } - } - } - - a { - position: relative; - display: block; - padding-right: 12px; - - @media (max-width: $breakpoint-lg) { - padding: 0 1.2em; - } - - @media (max-width: $breakpoint-sm) { - padding: 0 .8em - } - } - - .algc-navigation__li--algolia { - - a { - padding-left: 0; - } - - .algolia-logo { - width: auto; - height: 23px; - } - - @media (max-width: $breakpoint-lg) { - display: none; - } - } - - .algc-navigation__li--community { - - a { - height: 33px; - } - - .algolia-community-logo{ - width: auto; - height: 30px; - } - } -} - -//--------------------------- -// Dropdown starts here -//--------------------------- -.algc-navigation__dropdown-holder { - position: absolute; - top: $nav-height - 14px; - left: 25px; - max-width: 490px; - width: 100%; - height: 800px; - -webkit-perspective: 500px; - perspective: 500px; - pointer-events: none; - font-size: 1.2em; - - @media (max-width: $breakpoint-sm) { - left:0; - max-width: 100%; - } -} - -.algc-dropdownroot { - top: 4px; - width: 100%; - position: absolute; - opacity: 0; - transform-origin: 50% -50px; - transition-property: transform, opacity; - transition-duration: .25s; - will-change: transform, opacity; - pointer-events: none; - z-index: $z-top; - transform: rotateX(-15deg) translate(-50%, 0%); - - &.notransition { - - .algc-dropdownroot__dropdowncontainer, - .algc-dropdownroot__dropdownbg, - .algc-dropdownroot__section, - .algc-dropdownroot__dropdownarrow { - transition: none; - } - } - - &.activeDropdown { - opacity: 1; - transform: translate(-50%, 0); - pointer-events: all; - - .algc-dropdownroot__dropdownbg { - opacity: 1; - transform: none; - transform-origin: 50% 0; - } - } - - .algc-dropdownroot__dropdownbg { - left: 0; - top: 10px; - box-shadow: 0 50px 100px rgba(50, 50, 93, .1), 0 15px 35px rgba(50, 50, 93, .15), 0 5px 15px rgba(0, 0, 0, .1); - border-radius: 4px; - transform-origin: 50% 0; - background-color: #FFF; - transition-property: transform, opacity; - transition-duration: .25s; - position: absolute; - width: 490px; - height: 360px; - will-change: transform, opacity; - } - - .algc-dropdownroot__dropdownarrow { - left: 50%; - top: 6px; - background-color: #FFF; - box-shadow: -3px -3px 5px rgba(82, 95, 127, .04); - will-change: transform, opacity; - transition-property: transform, opacity; - transition-duration: .25s; - transform: rotate(45deg) translate(-50%, 0); - position: absolute; - width: 12px; - height: 12px; - border-radius: 2px; - pointer-events: none; - } - - .algc-dropdownroot__dropdowncontainer { - margin: 0 auto; - position: relative; - overflow: hidden; - will-change: transform, width, height; - transition-property: transform, width, height; - transition-duration: .25s; - } - - @media (max-width: $breakpoint-sm){ - - transform: translate(0,0) rotateX(-15deg); - - &.activeDropdown { - transform: rotateX(0deg) translate(0,0) !important; - } - - .algc-dropdownroot__dropdownbg { - width: 100%; - } - - .algc-dropdownroot__widelist { - width: 100%; - } - - .algc-dropdownroot__content { - width: 100% !important; - } - - .algc-dropdownroot__section { - width:100%; - } - - .algc-dropdownroot__dropdowncontainer { - width: 100% !important; - max-width: 100%; - transform: translate(0,0) !important; - } - } -} - - -.algc-dropdownroot__section { - position: absolute; - left: 0; - top: 0; - opacity: 0; - will-change: transform, opacity; - transition-property: transform, opacity; - transition-duration: .25s; - - &.active { - opacity: 1; - transform: translateX(0); - z-index: $z-1 - } - - &.right { - transform: translateX(150px); - } - - &.left { - transform: translateX(-150px); - } - - .algc-dropdownroot__content { - position: absolute; - top: 10px; - left: 0; - background: #fff; - border-radius: 4px; - overflow: hidden; - } -} - -.algc-dropdownroot__widelist { - display: flex; - flex-wrap: wrap; - list-style-type: none; - padding: 0; - width: 450px; - padding: em(10) em(20); - margin: 0; - background-color: $titan-white; - - li { - flex: 50%; - border-radius: 3px; - margin: .5em auto; - - a { - display: flex; - flex-wrap: wrap; - flex-direction: row; - align-items: center; - color: #333333; - background-color: $titan-white; - border-radius: 4px; - transition: background 160ms ease; - - &:hover { - color: darken(#333333, 10%); - background-color: $athens-gray; - } - } - - h4 { - text-align: center; - text-align: left; - margin: 0; - font-size: $text-sm; - } - - .item-icon { - width: 42px; - height: 42px; - margin: 8px; - border-radius: 4px; - text-align:center; - position: relative; - - img, - svg { - max-width: 60%; - transition: transform 0.2s ease 0.15s; - } - } - - svg, - img { - position: absolute; - left: 50%; - top:50%; - max-width: 32px; - width: 100%; - height: auto; - transform: translate(-50%,-50%); - } - } -} - -.algc-dropdownroot__footer { - text-align: center; - font-size: $text-sm; - transition: filter 0.2s ease, opacity 0.2s ease; - will-change: filter, opacity; - - a { - padding: .8em 0; - display: block; - color: $nav-background; - opacity: 0.8; - - &:hover { - opacity: 1; - } - } - - img, - svg { - vertical-align: middle; - } -} - -.algc-dropdownroot__links { - - list-style-type: none; - padding: em(10) em(20); - display: flex; - flex-wrap: wrap; - width: 290px; - margin: 0; - - li { - box-sizing: border-box; - display: flex; - align-items: center; - flex: 1 0 50%; - padding: em(10) em(10); - - p { - margin: 0; - } - - img, - svg { - margin-right: 5px; - height: 20px; - width: 20px; - } - } -} - -.algc-navigation__menu { - float: right; - height: $nav-height; - line-height: $nav-height; - font-weight: $light; - z-index: $z-2; - - .algc-menu__list { - list-style-type: none; - padding: 0; - margin: 0; - width: auto; - float: left; - position: relative; - z-index: $z-1; - - a { - text-decoration: none; - color: $white; - } - - @media (max-width: $breakpoint-md) { - display: none; - } - - &__item { - position: relative; - height: $nav-height; - line-height: $nav-height; - display: inline-block; - float: left; - - img, - svg { - height: $text-lg; - width: auto; - } - - a { - padding: 0 .5em 0 .5em; - display: flex; - align-items: center; - height: 100%; - } - } - - .algc-glyph { - margin-left: 1em; - font-size: .4em; - } - - .algc-menu__list__item.algc-menu--hassublist.open { - - .algc-menu__sublist { - opacity: 1; - transform: translate(0, 0); - pointer-events: auto; - transition: .25s; - } - } - } - - .algc-menu__sublist { - pointer-events: none; - padding: 0; - position: absolute; - right: 0; - top:100%; - background-color: white; - list-style-type: none; - background-color: #FFF; - border-radius: 3px; - box-shadow: 0 1px 4px 0 rgba(31, 59, 93, 0.5); - font-size: 14px; - opacity:0; - transition: .14s; - transform: translate(0, 6px); - will-change: opacity, transform; - text-align: left; - - &:before{ - content: ""; - position: absolute; - right: 16px; - top: -4px; - height: 12px; - width: 12px; - border-radius: 3px; - transform: rotate(45deg); - background-color: #FFF; - } - - li:not(:last-child) { - border-bottom: solid 1px #eee; - } - - li a { - text-transform: none; - margin: 0; - width: 100%; - border: none; - display: block; - padding: 1em 2em; - clear: both; - font-weight: normal; - line-height: 1.42857; - color: #333333; - white-space: nowrap; - font-size: 1em; - - &:hover { - color: darken(#333333, 10%); - background-color: #f9f9f9; - } - } - } -} - -.algc-mobilemenu{ - display: block; - position: fixed; - top: 0; - right: 0; - width: 100%; - max-width: 200px; - padding: 64px $text-sm 0 $text-sm; - height: 100vh; - background-color: $deep-cove; - text-align: right; - font-weight: $light; - transform: translate(100%, 0); - transition: transform 140ms ease-out, - opacity 140ms 100ms ease-out; - opacity: 0; - will-change: transform; - - a { - color: $white; - } - - &:before{ - width:100%; - height:100vh; - position: absolute; - content: ""; - left:0; - top: 0; - box-shadow: 0 0 36px 3px rgba(0, 0, 0, 0.2); - z-index: $z--1; - } - - &:after { - width: 100%; - height: 100%; - max-height: 40px; - bottom:0; - left:0; - position: fixed; - content: ""; - background-image: -webkit-linear-gradient(bottom, transparent 0%,rgba(5,15,44,1) 100%); - } - - &--open { - opacity: 1; - transition: 360ms cubic-bezier(0.19, 1, 0.22, 1); - transform: translate(0, 0); - } - - @media (min-width: $breakpoint-md) { - display: none; - } - - .algc-mobilemenulist { - list-style-type: none; - padding: 0 0 40px 0; - margin-bottom: 0; - position: absolute; - top:74px; - right:0; - width: 100%; - height: 100%; - overflow: auto; - } - - .algc-mobilemenu__item { - line-height: 2.6; - position: relative; - - &:after { - bottom: 0; - width:100%; - height: 1px; - position: absolute; - content: ""; - display: block; - background: linear-gradient(76deg, rgba(28,199,208,0.01) 0%,rgba(28,199,208,0) 18%, rgba(28,199,208,0.49) 46%,rgba(80,191,221,.7) 93%,rgba(125,185,232,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ - } - - &:last-child { - - &:after { - background-color: trasparent; - } - } - } - - a { - padding: 0 $text-xs; - display: flex; - align-items: center; - justify-content: flex-end; - } - - img, svg { - height: 1em; - margin-right: .4em; - } -} - -// Docsearch input -.algc-menu__search { - width: auto; - padding: 0 12px; - height: $nav-height; - display: inline-block; - float: left; - font-size: $text-sm; - - &--holder { - position: relative; - width: 32px; - height: $nav-height; - } - - .algc-search__input { - - button { - appearance: none; - border: none; - background: transparent; - position: absolute; - z-index: $z-1; - top: 50%; - bottom: 0; - margin: 0; - outline: none; - display: none; - width: 1.6em; - height: 1.6em; - transition: transform 0.28s ease; - transform: translate(0,-50%); - cursor: pointer; - transform: translate(0,-50%); - - img, - svg { - top: 0; - bottom: 0; - left: 0; - right: 0; - width: 100%; - height: auto; - max-width: 16px; - max-height: $nav-height; - vertical-align: middle; - position: absolute; - margin: auto; - pointer-events: all; - transition: opacity 0.28s ease 0.15s; - - @media (max-width: $breakpoint-sm) { - margin-top: 2px; - } - - use { - fill: #fff - } - } - - &#search { - z-index: $z-2; - display: block; - } - - &#cancel { - z-index: $z-1; - display: block; - pointer-events: none; - opacity: 0; - right: -.35em; - transition: 40ms ease; - transform: translate(0, -40%) scale(.7); - - img, - svg { - width: 12px; - top: 50%; - transform: translate(0,-50%); - } - } - } - - // DOCSEARCH RELATED - input[type=search] { - padding: 0; - margin: 0 0 0 2.4em; - appearance: none; - background: transparent; - width: 32px; - max-height: 32px; - border: 1px solid transparent; - position: relative; - left: 0; - z-index: $z-1; - cursor: pointer; - transition: background 0.28s ease, transform 0.28s ease, width 0.28s ease; - padding: 8px; - outline: none; - font-weight: $light; - border-radius: 3px; - padding-left: 1.8em; - color: #fff; - line-height: 1.3em; - padding-right: 1.4em; - } - } - - &--holder.open { - // DOCSEARCH RELATED - input[type="search"] { - background-color: rgba(white, 0.2); - width: 300px; - transform: translate(-300px); - outline: none; - cursor: auto; - - #searchbox { - background-color: inherit !important; - } - - @media (max-width: $breakpoint-xl){ - transform: translate(-180px); - width: 180px; - } - - @media (max-width: $breakpoint-md) and (orientation: landscape) { - transform: translate(-240px); - width: 240px; - } - - @media (max-width: $breakpoint-sm) { - transform: translate(-140px); - width: 140px; - } - - @media (max-width: 370px) { - transform: translate(-110px); - width: 110px; - } - - @include placeholder { - color: rgba(#ffffff, 0.3); - } - } - - button#search { - transform: translate(calc(-300px + 4em), -50%); - - @media (max-width: 1180px){ - transform: translate(calc(-180px + 4em), -50%); - } - - @media (max-width: $breakpoint-md) and (orientation: landscape) { - transform: translate(calc(-240px + 4em), -50%); - } - - @media (max-width: $breakpoint-sm) { - transform: translate(calc(-140px + 4em), -50%); - } - - @media (max-width: 370px) { - transform: translate(calc(-110px + 4em), -50%) - } - } - - button#cancel { - transition: 300ms 300ms ease; - pointer-events: auto; - opacity: 1; - } - } -} - -.algolia-autocomplete { - position: inherit !important; - display: initial !important; - - input#searchbox, - input[type="search"] { - vertical-align: middle !important; - -webkit-appearance: none; - appearance: none; - font-size: 16px; - - @media (min-width: $breakpoint-sm) { - margin-top: -2px; - } - } - - .ds-dropdown-menu { - top: $nav-height - 10px !important; - left: -438px !important; - right: inherit !important; - line-height: 26px !important; - font-size: $text-lg; - - @media (max-width: $breakpoint-sm) { - margin-top: 0; - top: $nav-height !important; - left:0 !important; - right:0 !important; - width: 100% !important; - position:fixed !important; - min-width: 0 !important; - border-radius: 0; - - &:before { - display: none; - } - - [class^=ds-dataset-] { - border-radius: 0; - border-left: 0; - border-right: 0; - border-top: 0; - } - - .algolia-docsearch-suggestion--subcategory-column { - white-space: nowrap; - text-overflow: ellipsis; - padding-right: 14px; - overflow: hidden; - } - } - } -} - -.algc-openmobile { - height: 40px; - width: 40px; - vertical-align: middle; - position: relative; - z-index: $z-1; - cursor: pointer; - z-index: $z-3; - background-color: $deep-cove; - border: none; - - &:focus { - outline: none; - } - - @media (min-width: $breakpoint-md) { - display: none; - } - - span { - height: 2px; - width: 62%; - top:50%; - left: 50%; - transform: translate(-50%, -50%); - transition: 140ms ease-out; - background-color: rgba($white, .88); - position: absolute; - - &:before, - &:after { - content: ""; - width: 100%; - height: 2px; - background-color: inherit; - position: absolute; - transition: 130ms ease-out; - transform: translate(-50%,-50%); - } - - &:before { - transform-origin: left center; - margin-top: -4px; - } - - &:after{ - transform-origin: left center; - margin-top: 6px; - } - } - - &--open { - - span { - transition: 130ms ease-out; - transform: translate(-70%,-50%); - - &:before, - &:after{ - transition: 130ms ease-out; - transform: translate(-20%,-50%); - } - } - } -} - -.algc-arrowseparator { - height: 33px; - margin-right: 16px; -} - diff --git a/docs/algolia-frontend-components/images/algolia-community-dark.svg b/docs/algolia-frontend-components/images/algolia-community-dark.svg deleted file mode 100755 index 7d4996c9..00000000 --- a/docs/algolia-frontend-components/images/algolia-community-dark.svg +++ /dev/null @@ -1,11 +0,0 @@ - diff --git a/docs/algolia-frontend-components/images/algolia-logo-darkbg.svg b/docs/algolia-frontend-components/images/algolia-logo-darkbg.svg deleted file mode 100755 index 157aedf6..00000000 --- a/docs/algolia-frontend-components/images/algolia-logo-darkbg.svg +++ /dev/null @@ -1,15 +0,0 @@ - diff --git a/docs/algolia-frontend-components/images/icon-separator.svg b/docs/algolia-frontend-components/images/icon-separator.svg deleted file mode 100755 index 254d4fee..00000000 --- a/docs/algolia-frontend-components/images/icon-separator.svg +++ /dev/null @@ -1,4 +0,0 @@ - - menu with dropdown - - diff --git a/docs/algolia-frontend-components/images/instantsearch-android.svg b/docs/algolia-frontend-components/images/instantsearch-android.svg deleted file mode 100644 index 404d9c1e..00000000 --- a/docs/algolia-frontend-components/images/instantsearch-android.svg +++ /dev/null @@ -1 +0,0 @@ -InstantSearch Android \ No newline at end of file diff --git a/docs/algolia-frontend-components/images/react-instantsearch.svg b/docs/algolia-frontend-components/images/react-instantsearch.svg deleted file mode 100644 index d4b84c2b..00000000 --- a/docs/algolia-frontend-components/images/react-instantsearch.svg +++ /dev/null @@ -1 +0,0 @@ -React InstantSearch \ No newline at end of file diff --git a/docs/algolia-frontend-components/images/search-close-icon.svg b/docs/algolia-frontend-components/images/search-close-icon.svg deleted file mode 100755 index 6537d6e4..00000000 --- a/docs/algolia-frontend-components/images/search-close-icon.svg +++ /dev/null @@ -1,4 +0,0 @@ - - Close search input - - diff --git a/docs/algolia-frontend-components/images/search-icon.svg b/docs/algolia-frontend-components/images/search-icon.svg deleted file mode 100755 index 5cc1c1d1..00000000 --- a/docs/algolia-frontend-components/images/search-icon.svg +++ /dev/null @@ -1,4 +0,0 @@ - - Open search input - - diff --git a/docs/algolia-frontend-components/images/shopify.svg b/docs/algolia-frontend-components/images/shopify.svg deleted file mode 100644 index 89a5f0c5..00000000 --- a/docs/algolia-frontend-components/images/shopify.svg +++ /dev/null @@ -1 +0,0 @@ -Algolia Shopify integration \ No newline at end of file diff --git a/docs/algolia-frontend-components/images/wordpress.svg b/docs/algolia-frontend-components/images/wordpress.svg deleted file mode 100644 index 15814d3f..00000000 --- a/docs/algolia-frontend-components/images/wordpress.svg +++ /dev/null @@ -1 +0,0 @@ -icon-wordpress \ No newline at end of file diff --git a/docs/algolia-frontend-components/index.js b/docs/algolia-frontend-components/index.js deleted file mode 100755 index 9bf27f94..00000000 --- a/docs/algolia-frontend-components/index.js +++ /dev/null @@ -1,5 +0,0 @@ -const htmlRender = { - communityHeader: require('./components/communityHeader/communityHeader.html.js') -} - -module.exports = htmlRender; diff --git a/docs/algolia-frontend-components/javascripts.js b/docs/algolia-frontend-components/javascripts.js deleted file mode 100755 index 7971fdbb..00000000 --- a/docs/algolia-frontend-components/javascripts.js +++ /dev/null @@ -1,5 +0,0 @@ -const javascripts = { - communityHeader: require('./components/communityHeader/communityHeader.js') -} - -module.exports = javascripts; \ No newline at end of file diff --git a/docs/algolia-frontend-components/package.json b/docs/algolia-frontend-components/package.json deleted file mode 100644 index 7b4806d8..00000000 --- a/docs/algolia-frontend-components/package.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "name": "algolia-frontend-components", - "version": "0.0.34", - "description": "Algolia components", - "main": "index.js", - "scripts": { - "clean": "rm -rf dist", - "watch": "node build/development.js --erb", - "build": "npm run clean --silent && node build/build.js --silent", - "build:erb": "npm run clean --silent && node build/build.js --erb", - "serve": "webpack-dev-server --config build/serve.js" - }, - "author": "Jonas Badalic", - "license": "ISC", - "dependencies": { - "babel-cli": "^6.23.0", - "babel-core": "^6.23.1", - "babel-polyfill": "^6.23.0", - "babel-preset-env": "^1.1.9", - "babel-preset-es2015": "^6.22.0", - "chalk": "^2.0.0", - "deepmerge": "^2.0.0", - "glob": "^7.1.1", - "node-sass": "^4.5.0", - "path": "^0.12.7", - "progress": "^2.0.0", - "webpack": "^2.2.1", - "webpack-dev-server": "^3.0.0" - }, - "devDependencies": { - "babel-loader": "7.1.5", - "css-loader": "1.0.0", - "extract-loader": "2.0.1", - "file-loader": "1.1.11", - "html-loader": "0.5.5", - "html-webpack-plugin": "3.2.0", - "json-loader": "0.5.7", - "raw-loader": "0.5.1", - "sass-loader": "7.1.0", - "style-loader": "0.22.1", - "url-loader": "1.1.1" - } -} diff --git a/docs/algolia-frontend-components/stylesheets/_base.scss b/docs/algolia-frontend-components/stylesheets/_base.scss deleted file mode 100755 index 6109d7b0..00000000 --- a/docs/algolia-frontend-components/stylesheets/_base.scss +++ /dev/null @@ -1,6 +0,0 @@ -* { - box-sizing: border-box; -} -body { - margin: 0; -} \ No newline at end of file diff --git a/docs/algolia-frontend-components/stylesheets/_functions.scss b/docs/algolia-frontend-components/stylesheets/_functions.scss deleted file mode 100755 index fb723a1a..00000000 --- a/docs/algolia-frontend-components/stylesheets/_functions.scss +++ /dev/null @@ -1,15 +0,0 @@ - -@function str-replace($string, $search, $replace: '') { - $index: str-index($string, $search); - @if $index { - @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace); - } - @return $string; -} - -@function em($pixels, $context: $browser-context) { - @return #{$pixels/$context}em; -} - - - diff --git a/docs/algolia-frontend-components/stylesheets/_mixins.scss b/docs/algolia-frontend-components/stylesheets/_mixins.scss deleted file mode 100755 index 689b99e1..00000000 --- a/docs/algolia-frontend-components/stylesheets/_mixins.scss +++ /dev/null @@ -1,29 +0,0 @@ - -@mixin arrowSeparatorLeft($color, $stroke: false) { - &:before { - content: ''; - display: block; - position: absolute; - z-index: 10; - height: 110%; - width: 40px; - top: -5%; - left: -6px; - - @if $stroke != false { - background: url("data:image/svg+xml;utf8,Rectangle")no-repeat; - } @else { - background: url("data:image/svg+xml;utf8,Rectangle")no-repeat; - } - } -} - -@mixin placeholder { - $placeholders: ":-webkit-input" ":-moz" "-moz" "-ms-input"; - @each $placeholder in $placeholders { - &:#{$placeholder}-placeholder { - @content; - } - } -} - diff --git a/docs/algolia-frontend-components/stylesheets/_variables.scss b/docs/algolia-frontend-components/stylesheets/_variables.scss deleted file mode 100755 index 6e4c9f5c..00000000 --- a/docs/algolia-frontend-components/stylesheets/_variables.scss +++ /dev/null @@ -1,158 +0,0 @@ - -// font sizes -$text-xxl: 3.125em; -$text-xl : 2em; -$text-lg : 1.25em; -$text-sm : .75em; -$text-xs : .625em; - -// breakpoints -$breakpoint-xl: 1200px; -$breakpoint-lg: 992px; -$breakpoint-md: 768px; -$breakpoint-sm: 576px; -$breakpoint-xs: 576px; - -// z-index layers -$z--1: -10; -$z-1: 10; -$z-2: 50; -$z-3: 100; -$z-top: 9999; - -//containers -$container-max-width: 1160px; - -//fonts; -$browser-context: 16; -$light: 300; -$regular: 400; -$bold: 600; - -//colors; -$white: white; -$black: black; - -//V2; -$purple-heart: rgb(142, 67, 231); -$mulberry: rgb(184, 69, 146); -$radical-red: rgb(255, 79, 129); -$bittersweet: rgb(255, 108, 95); -$koromiko: rgb(255, 193, 104); -$shamrock: rgb(45, 222, 152); -$java: rgb(28, 199, 208); -$algolia-blue: rgb(0, 174, 255); -$royal-blue: rgb(51, 105, 231); -$bunting: rgb(24, 35, 89); -$titan-white: rgb(247, 247, 255); -$logan: rgb(157, 157, 189); -$deep-cove: rgb(5, 15, 44); -$highlight-color: #f6624e; -$cabaret: #E7486B; -$rouge: #9C4274; -$sea-green: #13C4A5; -$blue-green: #10A4B8; -$violet: #8A63B3; -$chambray: #3B5295; -$sunset-orange: #F6624E; -$saffron-mango: #FDBD57; -$red-pink: #fb366e; -$plum: #65133a; -$light-navy: #184a80; -$primary-color: $bunting; -$secondary-color: $titan-white; -$tertiary-color: $logan; -$athens-gray: #EEF0F7; -$titan-white: #F7F7FF; -$portage: #8995C7; - -$cloudy-blue: #c4c8d7; -$cloudy-blue-2: #a6b0d8; -$cloudy-blue-3: #8995C7; -$summertime: mix($radical-red, $bittersweet, 50%); - -//header; -$header-height: 60px; -//BootStrap; -$gray-darker: lighten(#000, 13.5%); -/* #222 */ -$gray-dark: lighten(#000, 20%); -/* #333 */ - -$gray: lighten(#000, 33.5%); -/* #555 */ - -$gray-light: lighten(#000, 46.7%); -/* #777 */ - -$gray-lighter: lighten(#000, 93.5%); -/* #eee */ - -$brand-primary: $algolia-blue; -$brand-secondary: #FA3870; -$brand-success: $shamrock; -$brand-info: $algolia-blue; -$brand-warning: $koromiko; -$brand-danger: $radical-red; -$body-bg: $white; -$text-color: $bunting; -$text-muted: $logan; -$border-radius-base: 3px; -$border-radius-large: 3px; -$border-radius-small: 3px; -$link-color: $brand-primary; -$link-hover-color: darken($link-color, 15%); -//fonts; -$font-family-base: "Open Sans", Helvetica,Arial,sans-serif; -$headings-font-family: Raleway, "Times New Roman",Times,serif; -$headings-font-weight: $light; -$headings-small-color: darken($tertiary-color, 10%); -//Buttons; -$btn-font-weight: normal; -//default; -$btn-default-color: #777; -$btn-default-bg: $white; -$btn-default-border: #ccc; -//primary; -$btn-primary-color: $white; -$btn-primary-bg: $brand-primary; -$btn-primary-border: darken($btn-primary-bg, 5%); -//success; -$btn-success-color: $white; -$btn-success-bg: $brand-success; -$btn-success-border: darken($btn-success-bg, 5%); -//info; -$btn-info-color: $white; -$btn-info-bg: $brand-info; -$btn-info-border: darken($btn-info-bg, 5%); -//warning; -$btn-warning-color: $white; -$btn-warning-bg: $brand-warning; -$btn-warning-border: darken($btn-warning-bg, 5%); -//danger; -$btn-danger-color: $white; -$btn-danger-bg: $brand-danger; -$btn-danger-border: darken($btn-danger-bg, 5%); -//link; -$btn-link-disabled-color: $gray-light; -$input-bg-disabled: $gray-lighter; -//Panels; -$panel-bg: $white; -//** Border color for elements within panels; -$panel-inner-border: lighten($tertiary-color, 20%); -$panel-footer-bg: lighten($secondary-color, 10%); -$panel-default-text: $gray-dark; -$panel-default-border: $white; -$panel-default-heading-bg: $white; -//forms; -$input-group-addon-bg: lighten($secondary-color, 3%); -$input-border: lighten($gray, 30%); -//tables; -$table-border-color: $secondary-color; -$table-bg-accent: lighten($secondary-color, 5%); -//tooltip; -$tooltip-bg: $primary-color; -$tooltip-opacity: 1; -//code; -$pre-bg: $bunting; -$pre-color: #C2CCCC; diff --git a/docs/app_data/config.yml b/docs/app_data/config.yml deleted file mode 100644 index 2835e015..00000000 --- a/docs/app_data/config.yml +++ /dev/null @@ -1,9 +0,0 @@ -# OpenGraph / Twitter -title: DocSearch -description: "Algolia DocSearch is the easiest way to add search to your documentation. Just send us your URL, and we'll send you the implementation code." -tagline: DocSearch -card_image: https://community.algolia.com/docsearch/assets/images/docsearch-social.png -twitter_username: algolia -github_username: algolia -baseurl: /docsearch -host: https://community.algolia.com \ No newline at end of file diff --git a/docs/app_data/docs.yml b/docs/app_data/docs.yml deleted file mode 100644 index 28fbfc85..00000000 --- a/docs/app_data/docs.yml +++ /dev/null @@ -1,2 +0,0 @@ -unslug: - docsearch: DocSearch \ No newline at end of file diff --git a/docs/app_data/google_analytics.yml b/docs/app_data/google_analytics.yml deleted file mode 100644 index 23810825..00000000 --- a/docs/app_data/google_analytics.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -doc: 13599 diff --git a/docs/app_data/redirects.yml b/docs/app_data/redirects.yml deleted file mode 100644 index ee23a907..00000000 --- a/docs/app_data/redirects.yml +++ /dev/null @@ -1,2 +0,0 @@ -- from: /documentation/index.html - to: documentation/docsearch/introduction/ diff --git a/docs/app_data/showcase.yml b/docs/app_data/showcase.yml deleted file mode 100644 index 515f499f..00000000 --- a/docs/app_data/showcase.yml +++ /dev/null @@ -1,94 +0,0 @@ -- name: Stripe - url: "https://stripe.com/docs" - gif: "assets/images/showcase/example-stripe.gif" - logo: "assets/images/showcase/logo-stripe.png" - -- name: Bootstrap - url: "https://getbootstrap.com/docs/4.0" - gif: "assets/images/showcase/example-bootstrap.gif" - logo: "assets/images/showcase/logo-bootstrap.png" - -- name: Vue - url: "http://vuejs.org/guide/" - gif: "assets/images/showcase/example-vuejs.gif" - logo: "assets/images/showcase/logo-vuejs.png" - -- name: React - url: "https://reactjs.org" - gif: "assets/images/showcase/example-react.gif" - logo: "assets/images/showcase/logo-react.png" - -- name: React Native - url: "https://facebook.github.io/react-native/" - gif: "assets/images/showcase/example-reactnative.gif" - logo: "assets/images/showcase/logo-react.png" - -- name: Docusaurus - url: "https://docusaurus.io/" - gif: "assets/images/showcase/example-docusaurus.gif" - logo: "assets/images/showcase/logo-docusaurus.png" - -- name: Cordova - url: "http://cordova.apache.org/" - gif: "assets/images/showcase/example-cordova.gif" - logo: "assets/images/showcase/logo-cordova.png" - -- name: Babel.js - url: "https://babeljs.io/" - gif: "assets/images/showcase/example-babel.gif" - logo: "assets/images/showcase/logo-babel.png" - -- name: Apiary - url: "http://help.apiary.io/" - gif: "assets/images/showcase/example-apiary.gif" - logo: "assets/images/showcase/logo-apiary.png" - -- name: Flow - url: "https://flow.org/en/docs/" - gif: "assets/images/showcase/example-flow.gif" - logo: "assets/images/showcase/logo-flow.png" - -- name: Moment.js - url: "https://momentjs.com/docs/" - gif: "assets/images/showcase/example-momentjs.gif" - logo: "assets/images/showcase/logo-momentjs.png" - -- name: Ant Design - url: "https://ant.design/docs/react/introduce" - gif: "assets/images/showcase/example-ant-design.gif" - logo: "assets/images/showcase/logo-ant-design.png" - -- name: Gitlab - url: "https://docs.gitlab.com/" - gif: "assets/images/showcase/example-gitlab.gif" - logo: "assets/images/showcase/logo-gitlab.png" - -- name: Symfony - url: "https://symfony.com/doc/current/" - gif: "assets/images/showcase/example-symfony.gif" - logo: "assets/images/showcase/logo-symfony.png" - -- name: PM2 - url: "http://pm2.keymetrics.io/docs/usage/cluster-mode/" - gif: "assets/images/showcase/example-pm2.gif" - logo: "assets/images/showcase/logo-pm2.png" - -- name: Hugo - url: "http://gohugo.io/documentation/" - gif: "assets/images/showcase/example-hugo.gif" - logo: "assets/images/showcase/logo-hugo.png" - -- name: fastlane - url: "https://docs.fastlane.tools/" - gif: "assets/images/showcase/example-fastlane.gif" - logo: "assets/images/showcase/logo-fastlane.png" - -- name: Jekyll - url: "https://jekyllrb.com/" - gif: "assets/images/showcase/example-jekyll.gif" - logo: "assets/images/showcase/logo-jekyll.png" - -- name: Gatsby - url: "https://www.gatsbyjs.org/" - gif: "assets/images/showcase/example-gatsby.gif" - logo: "assets/images/showcase/logo-gatsby.png" diff --git a/docs-src/_data.json b/docs/config.json similarity index 98% rename from docs-src/_data.json rename to docs/config.json index 72783132..6d66cc6c 100644 --- a/docs-src/_data.json +++ b/docs/config.json @@ -4,6 +4,8 @@ "description": "The easiest way to add search to your documentation", "url": "https://community.algolia.com/docsearch" }, + "placeholders": { + }, "sidebar": [ { "title": "Essentials", diff --git a/docs/config.rb b/docs/config.rb deleted file mode 100644 index 487910ab..00000000 --- a/docs/config.rb +++ /dev/null @@ -1,85 +0,0 @@ -require 'better_errors' -require 'extensions/custom_extension' -require 'lib/php_code_blocks' -require 'sprockets/es6' -require 'lib/hash_ostruct' - -activate :custom_extension - -set :css_dir, 'doc/assets/stylesheets' -set :js_dir, 'doc/assets/javascripts' -set :images_dir, 'doc/assets/images' - -ignore 'doc/assets/javascripts/vendors/*.js' -ignore 'doc/assets/stylesheets/vendors/**/*' -ignore 'templates/*' -ignore 'layouts/*' -ignore 'partials/*' -ignore '**.yml' - -page '/documentation/*', layout: 'page' - -#app.logger.level = :debug -redirects = [] - -config[:stage] = ENV['STAGE'] || 'develop' - -config[:google_tag_mangager_id] = case config[:stage] - when 'beta' - 'GTM-K4DF9Q' - when 'production' - 'GTM-N8JP8G' - else - 'GTM-K4DF9Q' -end - -activate :vcs_time -activate :syntax -activate :sprockets do |s| - s.supported_output_extensions = ['.js', '.es6'] - s.expose_middleman_helpers = true -end - -set(:port, 4569) -set :haml, { :ugly => true, :format => :html5 } -set :markdown_engine, :kramdown -set :markdown, parse_block_html: true, fenced_code_blocks: true, input: 'GFM', with_toc_data: true, smartypants: true, hard_wrap: false -set :show_exceptions, false - -activate :directory_indexes - -configure :server do - set :debug_assets, true - #activate :livereload - use BetterErrors::Middleware - BetterErrors.application_root = __dir__ -end - -# Build-specific configuration -configure :build do - activate :minify_css - activate :minify_javascript - #activate :asset_hash - activate :minify_html - activate :autoprefixer - activate :gzip -end - -# Legacy Redirects -app_data.redirects.each do |redirect| - redirects.push({ from: redirect.from, to: redirect.to }) -end - - -ready do - redirects.each do |r| - proxy r[:from][1..-1], 'templates/redirect.html', locals: {url: r[:to]}, ignore: true, layout: nil - end - - proxy '/_redirects', 'templates/redirects', locals: {redirects: redirects}, ignore: true - - sitemap.ensure_resource_list_updated! - app.sitemap.ensure_resource_list_updated! - - app_data.set_auto_reload_files(app.config[:stage] != 'production') -end \ No newline at end of file diff --git a/docs/config.ru b/docs/config.ru deleted file mode 100644 index b1d13a54..00000000 --- a/docs/config.ru +++ /dev/null @@ -1,13 +0,0 @@ -require 'middleman-core/load_paths' -::Middleman.setup_load_paths - -require 'middleman-core' -require 'middleman-core/rack' - -require 'fileutils' -FileUtils.mkdir('log') unless File.exist?('log') -::Middleman::Logger.singleton("log/#{ENV['RACK_ENV']}.log") - -app = ::Middleman::Application.new - -run ::Middleman::Rack.new(app).to_app diff --git a/docs/extensions/custom_extension.rb b/docs/extensions/custom_extension.rb deleted file mode 100644 index 81d00072..00000000 --- a/docs/extensions/custom_extension.rb +++ /dev/null @@ -1,76 +0,0 @@ -require 'lib/sitemap_tree' -require 'lib/data_store' - -class CustomExtension < Middleman::Extension - expose_to_config :unslug - expose_to_template :unslug - - expose_to_template :sitemap_tree - expose_to_config :sitemap_tree - expose_to_template :app_data - expose_to_config :app_data - expose_to_application :app_data - - def app_data - @@app_data - end - - def sitemap_tree - @@sitemap_tree - end - - def initialize(app, options_hash={}, &block) - @@sitemap_tree = SitemapTree.new(nil) - @@app_data = DataStore.new - super - end - - def manipulate_resource_list(resources) - all_resources = [] - - resources = resources.sort do |a,b| - if a.file_descriptor.nil? - -1 - elsif b.file_descriptor.nil? - 1 - else - a.file_descriptor.full_path.to_s <=> b.file_descriptor.full_path.to_s - end - end - - resources.each do |resource| - if resource.instance_of?(Middleman::Sitemap::Extensions::RedirectResource) or resource.path.include?('.yml') - all_resources.push(resource) - next - end - - resource.destination_path = resource.destination_path.gsub(/\/[0-9]+?-/, '/') - resource.add_metadata({locals: {render_toc: true}}) - - data_file = resource.file_descriptor.full_path.to_s.gsub(/([^\.]+?)\..*?$/, '\1.yml') - - if File.exist?(data_file) and data_file != resource.file_descriptor.full_path.to_s - data = DataStoreFile.new(data_file, File.basename(data_file), File.basename(data_file, 'yml'), nil) - - resource.add_metadata({locals: {guide_snippet: data, snippet_file: Pathname(data_file).relative_path_from(app.source_dir)}}) - end - - resource.add_metadata({page: {popularity: (app_data.google_analytics[resource.destination_path.gsub('/index.html', '').gsub('.html', '')] || 0)}}) - - @@sitemap_tree.add(resource) - all_resources.push(resource) - end - - all_resources - end - - def unslug(slug) - if not app_data.docs.unslug[slug].nil? - app_data.docs.unslug[slug] - else - slug.gsub('-', ' ').capitalize - end - end -end - -::Middleman::Extensions.register(:custom_extension, CustomExtension) \ No newline at end of file diff --git a/docs/ga.p12 b/docs/ga.p12 deleted file mode 100644 index 87bf9ff1..00000000 Binary files a/docs/ga.p12 and /dev/null differ diff --git a/docs/helpers/render_helper.rb b/docs/helpers/render_helper.rb deleted file mode 100644 index 2fc47c75..00000000 --- a/docs/helpers/render_helper.rb +++ /dev/null @@ -1,264 +0,0 @@ -require 'erubis' - -module RenderHelper - def get_current_language() - if respond_to?(:current_page) - current_page.metadata[:locals][:language] - else - nil - end - end - - def echo(str, template_data = nil) - if str.nil? - return "" - end - - language = (template_data and template_data[:language]) ? template_data[:language] : get_current_language - - if respond_to?(:current_page) - current_page.metadata[:locals].keys.each do |key| - singleton_class.send(:define_method, key) { current_page.metadata[:locals][key] } - end - end - - if (not template_data.nil?) and template_data - template_data.each do |key, value| - singleton_class.send(:define_method, key) { value } - - if [:method_snippet_obj, :parameter_snippet_obj].include?(key) and not value.nil? - if key == :method_snippet_obj - link = edit_link("/data/api_methods/#{value['method_key']}/#{value['method_key']}_snippet.yml", 'this snippet') - end - if key == :parameter_snippet_obj - link = edit_link("/data/parameters/#{value['param_key']}.yml", 'this snippet') - end - - singleton_class.send(:define_method, '_snippet') { value } - - value.to_h.keys.each do |snippet_key| - singleton_class.send(:define_method, snippet_key) { value[snippet_key] } - end - end - end - end - - template = Erubis::Eruby.new(str) - res = template.result(binding) - end - - def render_current_page(options) - if config[:stage] == 'develop' - current_page.render({layout: 'raw'}, options) - else - @@page_content ||= {} - @@page_content[current_page.destination_path] ||= current_page.render({layout: 'raw'}, options) - @@page_content[current_page.destination_path] - end - end - - def snippet(name, force_tabs=false) - snippet = nil - - if name.instance_of?(String) - snippet = current_page.metadata[:locals][:guide_snippet] - if snippet - edit_link = edit_link("/source/#{current_page.metadata[:locals][:snippet_file]}", 'snippet') - if snippet[name.to_sym] - snippet = snippet[name.to_sym] - end - else - snippet = name - return "
    \n\n#{echo snippet}\n\n
    " - end - else - snippet = name - edit_link = edit_link(snippet.github_link) - end - - language = get_current_language - - if snippet - if language and not force_tabs - if snippet[language.code.to_sym] - "
    #{edit_link}\n\n#{echo snippet[language.code.to_sym]}\n\n
    " - else - raise("snippet #{name} in #{language.code} not found for #{current_page.destination_path}") - end - else - ordered_languages = [:php, :ruby, :javascript, :python, :swift, :android, :csharp, :java, :go, :scala] - languages = snippet.keys - languages.delete(:rest_example) - languages.delete(:method_key) - languages.delete(:java1) - - languages.sort_by!{|x| i = ordered_languages.index(x); i.nil? ? 1000: i} - - out = [] - out << "
    #{edit_link}" - out << "" - out << "
    " - out << "
    " - out << '' - out << '
    ' - out << '
    ' - languages.each_with_index do |language_code, i| - if snippet[language_code.to_sym].strip.length > 0 - out << "
    #{snippet[language_code.to_sym].gsub(/```(.+?)$/, "```\\1*")}
    " - end - end - out << '
    ' - out << '
    ' - - out.join("\n") - end - else - raise("snippet #{name} not found for #{current_page.destination_path}") - end - end - - def haml(template_path, locals) - Middleman::Renderers::HamlTemplate.new(template_path).render(self, locals) - end - - def markdown(content) - Tilt['markdown'].new(nil, 1, { - parse_block_html: true, fenced_code_blocks: true, input: 'GFM', with_toc_data: true, smartypants: true, hard_wrap: false - }) { echo(content) }.render(self) - end - - def render_readme_section(template_path, language) - content = Middleman::Renderers::ERb::Template.new(template_path).render(self, {language: language}) - - if template_path == 'source/doc/tutorials/1-getting-started/quick-start-with-the-api-client.html.md.erb' - content = content.gsub(/
    .*?<\/section>(.*)
    .*?<\/section>/smu, '\1') - end - content.gsub(//smu, '') - .gsub(/(\-\-\-.+?\-\-\-)/m, '') - .gsub(/(([^\n]+\n)+)\{\:(.*\s+)?\.alert-info(\s+.*)?\}/, '**Note:** \1') # render `alert-info` with "Note:" prefix - .gsub(/(([^\n]+\n)+)\{\:(.*\s+)?\.alert-warning(\s+.*)?\}/, '**Warning:** \1') # render `alert-warning` with "Warning:" prefix - .gsub(/(([^\n]+\n)+)\{\:(.*\s+)?\.alert-danger(\s+.*)?\}/, '**Caution:** \1') # render `alert-danger` with "Caution:" prefix - .gsub(/(\{\:.+?\})/, '') # catch-all case to remove any remaining Inline Attribute Lists (IAL) - .gsub(/(\{\#.+?\})/, '') - .gsub(/<\/?section>/, '') - .gsub(//, '') - .gsub(/<\/div>/, '') - .gsub(//, '') - .gsub(/<\/section>/, '') - .gsub(/\n{2,}/, "\n\n") - .gsub(/\[(.+?)\]\((\/doc\/.+?)\)/, '[\1](https://www.algolia.com\2)') - end - - def frontend(language) - ['android', 'javascript', 'swift'].include?(language.code) - end - - def backend(language) - ['csharp', 'go', 'java1', 'java', 'javascript', 'php', 'python', 'ruby', 'scala'].include?(language.code) - end - - def framework(language) - ['rails', 'laravel', 'symfony', 'django'].include?(language.code) - end - - def parameters_dir_got_scope(param_dir, scope) - param_dir.keys.each do |parameter_name| - parameter = param_dir[parameter_name] - if parameter.scope.include?(scope) - return true - end - end - false - end - - def fetch_parameter(name) - unless name.is_a? String - return name - end - - app_data.parameters.each do |key, group| - group.each do |param_key, param| - if param.name == name || param.name == "#{name} (deprecated)" - return param - end - end - end - - raise("Did not find param #{name}") - end - - def parameter_toc(parameter_name) - param = fetch_parameter parameter_name - "- #{parameter_link(parameter_name)} `#{param.scope.join('`, `')}`" - end - - def parameter_link_html(param) - "/doc/api-reference/api-parameters/#{param.name}/" - end - - def parameter_link(parameter_name) - param = fetch_parameter parameter_name - name = param.name - - "[#{name}](#{parameter_link_html(param)})" - end - - def anchorize(string) - if string.nil? - "NOT FOUND ANCHOR" - else - string.gsub(/\s/, "-").gsub(/[()\/",`'&<>\.]/, "").downcase - end - end - - def generate_id(str) - id = (str || '').gsub(/\s/, "-").gsub(/[()\/",`']/, "").downcase - @ids ||= {} - @ids[id] ||= 0 - @ids[id] += 1 - @ids[id] == 1 ? id : "#{id}-#{@ids[id]}" - end - - def method_toc(method_name) - api_method = app_data.api_methods.flatten.select{|api_method| api_method.base_file_name == method_name}.first - - - if api_method.nil? - raise "issue generating name for #{method_name}" - end - - "[#{api_method.name}](/doc/api-reference/api-methods/#{api_method.base_file_name.gsub('_', '-')}/)" - end - - def edit_link(file, ressource_name='', classes='') - if current_page and not current_page.metadata[:locals][:readme].nil? and current_page.metadata[:locals][:readme] - '' - else - out = [] - out << "" - out.join('') - end - end -end diff --git a/docs/helpers/svg_helper.rb b/docs/helpers/svg_helper.rb deleted file mode 100644 index 535d5931..00000000 --- a/docs/helpers/svg_helper.rb +++ /dev/null @@ -1,25 +0,0 @@ -module SvgHelper - def inline_svg(path, message=nil) - @svg ||= {} - - return @svg[path] if @svg[path] - - if File.exist?("source/docsearch/assets/images/#{path}") - full_path = "source/docsearch/assets/images/#{path}" - - @svg[path] = File.open(full_path, "rb") do |file| - file.read - end - else - message = "Could not find SVG file @ #{path}" if message.nil? - if config[:stage] == 'develop' - p(message) - else - raise message - end - end - - @svg[path] - end -end - diff --git a/docs/helpers/toc_helper.rb b/docs/helpers/toc_helper.rb deleted file mode 100644 index 0fed06b2..00000000 --- a/docs/helpers/toc_helper.rb +++ /dev/null @@ -1,104 +0,0 @@ -module TocHelper - def build_toc(content, path) - @@toc ||= {} - return @@toc[content] if @@toc[content] - - doc = Nokogiri::HTML(content) - h1 = [] - toc = [] - (doc / 'h1, h2, h3, h4').each do |h_node| - h = { - level: h_node.name[1].to_i, - value: h_node.children.map { |child| child.to_s }.join.gsub(/(\{\#.+?\})/, ''), - anchor: h_node['id'], - path: path.gsub(/\/index\.html/, ''), - children: [] - } - if toc.empty? - toc << h - next - end - while toc.size > 0 && h[:level] <= toc.last[:level] - tmp = toc.pop - h1 << tmp if tmp[:level] == 1 - end - if toc.empty? - toc << h - else - toc.last[:children] << h - toc << h - end - end - @@toc[content] = h1 + toc.select { |h| h[:level] == 1 } - end - - def get_h3s_toc(node) - node.css('h3').map do |c_node| - { - level: c_node.name[1].to_i, - value: c_node.children.map { |child| child.to_s }.join, - anchor: c_node['id'] - } - end - end - - def get_guide_toc(page_content) - doc = Nokogiri::HTML(page_content) - toc = [] - (doc / 'h2').each do |h_node| - full_toc_section = h_node.ancestors('.full-toc').first - h = { - level: h_node.name[1].to_i, - value: h_node.children.map { |child| child.to_s }.join, - anchor: h_node['id'], - children: full_toc_section ? get_h3s_toc(full_toc_section) : [] - } - toc.push(h) - end - toc - end - - def get_api_client_toc(language) - is_readme = (not current_page.metadata[:locals][:readme].nil? and current_page.metadata[:locals][:readme]) - - @@api_clients_toc ||= {} - return @@api_clients_toc[language.code] if @@api_clients_toc[language.code] and not is_readme - - tocs = [] - - if is_readme and (backend(language) or frontend(language)) and not language.code == 'java1' - markdown_content = current_page.render({}, {render_toc: false, readme: is_readme, language: language}).gsub('# ', '') - rendered_content = Tilt['markdown'].new { markdown_content}.render(self) - tocs << build_toc(rendered_content, current_page.path) - else - sitemap.resources.each do |page| - if page.path.include? "doc/api-client/#{language.code}/" and ((not /\/parameters\/.+?$/.match(page.path)) or /\/parameters\/index\.html$/.match(page.path)) - rendered_content = page.render({layout: 'raw'}, {render_toc: false, readme: is_readme, language: language}) - tocs << build_toc(rendered_content, page.path) - end - end - end - - toc_flatten = tocs.flatten - - unless is_readme - @@api_clients_toc[language.code] = toc_flatten - end - - toc_flatten - end - - def get_single_page_guide_toc(page_content, page) - build_toc(page_content, page.path) - end - - def get_titles_for_page(page_content, tag) - doc = Nokogiri::HTML(page_content) - (doc / tag).map do |h_node| - { - value: h_node.children.map { |child| child.to_s }.join, - anchor: h_node['id'] - } - end - end -end diff --git a/docs/lib/data_store.rb b/docs/lib/data_store.rb deleted file mode 100644 index 6098a1be..00000000 --- a/docs/lib/data_store.rb +++ /dev/null @@ -1,127 +0,0 @@ -require 'pathname' -class DataStoreFile - attr_accessor :path, :file_name, :base_file_name, :parent, :github_path, :position - - def initialize(path, file_name, base_file_name, parent) - @path = path - @github_path = @path.gsub(Dir.pwd, '') - @file_name = file_name - @base_file_name = base_file_name - @parent = parent - @data = YAML.load_file(@path).to_ostruct(@github_path) - @@i ||= 0 - @position = @@i - @@i = @@i + 1 - end - - def method_missing(method_id, *arguments, &block) # We define this method to be able to forward to the actual data - @data.public_send(method_id, *arguments, &block) - end - - def current_path - @path - end - - def refresh - if @parent.get_auto_reload_files # make sure we don't refresh at build time - @data = YAML.load_file(@path).to_ostruct(@github_path) - end - end - - def to_s - "" - end -end - -class DataStore - attr_reader :base_file_name, :current_path, :parent - - def initialize(current_path=nil, base_file_name=nil, parent=nil) - if current_path.nil? - @current_path = Dir.pwd + '/app_data' - else - @current_path = current_path - end - @cache = {} - @parent = parent - @base_file_name = base_file_name - @@auto_reload_files = false - - - load_dir # will preload everything at startup - end - - def load_dir - Dir.entries(@current_path).sort_by{|file| file}.each do |file| - if file == '.' or file == '..' - next - end - - file_path = @current_path + '/' + file - - # remove numbers and first '-' from the filename so we can - # - generate nice urls - # - omit the number when accessing the object - base_file_name = file.gsub(/[0-9]*+-?(.+)/, '\1') - - if File.file?(file_path) - method_name = File.basename(base_file_name, File.extname(file)) - @cache[method_name.to_s] = DataStoreFile.new(file_path, file, method_name, self) - elsif File.directory?(file_path) - d = DataStore.new(file_path, base_file_name, self) - @cache[base_file_name] = d - end - end - end - - def get_auto_reload_files - @@auto_reload_files - end - - def set_auto_reload_files(is_auto_releoad) - @@auto_reload_files = is_auto_releoad - end - - def flatten - elements = [] - - @cache.sort_by{|k, v| v.current_path }.each do |k, v| - if v.instance_of?(DataStoreFile) - v.refresh - elements.push(v) - else - elements.push(*v.flatten) - end - end - - elements - end - - def method_missing(method_id, *arguments, &block) - method_name = method_id - - # Make sure we are able to access data files with an array syntax - if method_id == :[] - method_name = arguments[0].to_sym - end - - if @cache.has_key?(method_name.to_s) - if @@auto_reload_files and @cache[method_name.to_s].instance_of?(DataStoreFile) - @cache[method_name.to_s].refresh - end - - return @cache[method_name.to_s] - end - - # Make sure we forward the access to the data - if @cache.respond_to?(method_name) - return @cache.public_send(method_name, &block) - end - - raise('Not found: ' + @current_path + '/' + method_name.to_s + '.yml') - end - - def to_s - "" - end -end \ No newline at end of file diff --git a/docs/lib/google_analytics_downloader.rb b/docs/lib/google_analytics_downloader.rb deleted file mode 100644 index ea0278b8..00000000 --- a/docs/lib/google_analytics_downloader.rb +++ /dev/null @@ -1,41 +0,0 @@ -require 'google/api_client' - -GA_P12 = File.expand_path(File.join(__FILE__, '..', '..', 'ga.p12')) - -class GoogleAnalyticsDownloader - - def self.fetch - client = Google::APIClient.new - - client.authorization = Signet::OAuth2::Client.new( - :token_credential_uri => 'https://accounts.google.com/o/oauth2/token', - :audience => 'https://accounts.google.com/o/oauth2/token', - :scope => 'https://www.googleapis.com/auth/analytics.readonly', - :issuer => "13001872082-jvmq5jsb2clnsh64879genqijvgg2k41@developer.gserviceaccount.com", - :signing_key => Google::APIClient::PKCS12.load_key(GA_P12, 'notasecret') - ).tap { |auth| auth.fetch_access_token! } - - api_method = client.discovered_api('analytics', 'v3').data.ga.get - - result = client.execute(:api_method => api_method, :parameters => { - 'ids' => 'ga:106545591', - 'start-date' => (Date.today - 30).strftime('%Y-%m-%d'), - 'end-date' => Date.today.strftime('%Y-%m-%d'), - 'dimensions' => 'ga:pagePath', - 'metrics' => 'ga:pageViews', - 'samplingLevel' => 'HIGHER_PRECISION', - "max_results" => 1000, - 'filters' => 'ga:pagePath=~www.algolia.com/doc/*;ga:pageViews>10' - }) - stats = {} - - result.data.rows.each do |row| - path = row[0].gsub(/.*?algolia\.com\/doc\/(.*?)$/, 'doc/\1').split(/[?#]/).first.gsub('index.html', '').gsub(/\/$/, '') - stats[path] ||= 0 - stats[path] += row[1].to_i - end - - stats - end - -end diff --git a/docs/lib/hash_ostruct.rb b/docs/lib/hash_ostruct.rb deleted file mode 100644 index 2240a5dd..00000000 --- a/docs/lib/hash_ostruct.rb +++ /dev/null @@ -1,56 +0,0 @@ -require 'ostruct' - -class CustomStruct < OpenStruct - def initialize(hash, path) - @path = path - super(hash) - end - - def github_link - @path - end - - - # OpenStruct does not allow to call hash methods so we forward them if it exists - # This also means that we are not able to have keys named like hash methods - def method_missing(method_id, *arguments, &block) - if to_h.respond_to?(method_id) - to_h.public_send(method_id, &block) - else - super(method_id, *arguments) - end - end -end - -class Hash - @path = nil - # Recursively converts a Hash and all nested Hashes to - def to_ostruct(path) - @path = path - arr = map do |k, v| - case v - when Hash - [k, v.to_ostruct(@path)] - when Array - [k, v.map { |el| el.respond_to?(:to_ostruct) ? el.to_ostruct(@path) : el }] - else - [k, v] - end - end - CustomStruct.new(Hash[arr], @path) - end -end - -class Array - @path = nil - def to_ostruct(path) - @path = path - map do |item| - if item.respond_to? :to_ostruct - item.to_ostruct(@path) - else - item - end - end - end -end \ No newline at end of file diff --git a/docs/lib/php_code_blocks.rb b/docs/lib/php_code_blocks.rb deleted file mode 100644 index ae926d92..00000000 --- a/docs/lib/php_code_blocks.rb +++ /dev/null @@ -1,59 +0,0 @@ -require 'middleman-syntax/formatters' - -module Middleman - module Syntax - module Highlighter - mattr_accessor :options - - # A helper module for highlighting code - def self.highlight(code, language=nil, opts={}) - tabbed = false - - if language and language[-1] == '*' - language = language.gsub('*', '') - tabbed = true - end - - if language == 'php' - code = "' - s << '' - s << '
    ' - s << '
    ' - s << '' - s << '
    ' - s << '
    ' - end - s << formatter.format(lexer.lex(code, lexer_options)) - if language and not tabbed - s << '
    ' - s << '' - end - s - end - end - end -end - diff --git a/docs/lib/sitemap_tree.rb b/docs/lib/sitemap_tree.rb deleted file mode 100644 index b730105d..00000000 --- a/docs/lib/sitemap_tree.rb +++ /dev/null @@ -1,170 +0,0 @@ -class SitemapTree - def initialize(url_part) - @parent = nil - @children = [] - @val = nil - @url_part = url_part - @@urls ||= {} - @position = nil - @url = nil - end - - def final_url(url) - url.gsub('/index.html', '').gsub('.html', '') - end - - def get_final_url - "/#{final_url(@url)}/" - end - - def from_resource(resource) - @@urls[self.final_url(resource.destination_path).to_sym] - end - - def from_url(url) - @@urls[url.to_sym] - end - - def get_url - @url - end - - def set_url(url) - @url = url - end - - def add(resource) - if resource.destination_path.end_with?('.js') or resource.destination_path.end_with?('.css') - return - end - url = self.final_url(resource.destination_path) - parts = url.split('/') - used_parts = [] - self.add_parts(parts, used_parts, resource) - end - - def ancestor(part, level=0) - ancestors = [self] - ancestor = self - - while (not ancestor.nil?) and ancestor.get_url_part != part - ancestor = ancestor.get_parent - ancestors.unshift(ancestor) - end - - if (not ancestor.nil?) and ancestor.get_url_part == part - ancestors[level] - else - nil - end - end - - def get_position - @position - end - - def set_position(position) - @position = position - end - - def flatten(take=false) - resources = [] - - if take and not @val.nil? and (@children.length == 0 || (@val.metadata[:page][:languages] and @val.metadata[:page][:languages].length > 0)) - resources.push(self) - end - - self.get_children.each do |child| - resources = resources + child.flatten(true) - end - - resources - end - - def add_parts(parts, used_parts, val) - if (parts.length) <= 0 - @val = val - return - end - - current_part = parts.shift - used_parts.push(current_part) - child = @children.select{|child| child.get_url_part == current_part} - child = child.length > 0 ? child[0] : nil - - if child.nil? - child = SitemapTree.new(current_part) - child.set_parent(self) - url = used_parts.join('/') - child.set_url(url) - @@urls[url.to_sym] = child - child.set_position(@children.length) - @children.push(child) - end - - child.add_parts(parts, used_parts, val) - end - - def find(parts) - if parts.length <= 0 - return self - end - - current_part = parts.shift - child = @children.select{|child| child.get_url_part == current_part} - - if child.length > 0 - child[0].find(parts) - else - nil - end - end - - def siblings - @parent.get_children - end - - def set_val(val) - @val = val - end - - def get_val - @val - end - - def get_url_part - @url_part - end - - def set_parent(parent) - @parent = parent - end - - def get_children - @children - end - - def get_pages - @children.select{|c| c.get_val} - end - - def get_parent - @parent - end - - def pretty_print (space) - spaces = space >= 0 ? " " * space : '' - - if @url_part - print(spaces + @url_part + "\n") - end - - if @val - print(spaces + " -> r\n") - end - - @children.each do |child| - child.pretty_print(space + 1) - end - end -end \ No newline at end of file diff --git a/docs/link_checker.rb b/docs/link_checker.rb deleted file mode 100644 index ccdaaf18..00000000 --- a/docs/link_checker.rb +++ /dev/null @@ -1,79 +0,0 @@ -require 'nokogiri' - -require 'find' - -html = [] -Find.find('build') do |path| - html << path if path =~ /.*\.html$/ -end - -files = {} -links = [] -anchors = [] - -html.each do |page| - content = File.read(page) - files[page] = Nokogiri::HTML(content) - - (files[page] / 'a, link').each do |link| - href = link['href'].gsub(/http(s)?:\/\/(www\.)?algolia\.com\/doc\//, '/doc/') - .gsub(/\/$/, '') - .gsub(/\/#/, '#') - - if href.start_with?('javascript:', 'http://', 'https://', 'mailto:', '//') or href.end_with?('.css', '.ico', 'png') or href == '#' - next - end - - if href.start_with?('doc', '/doc') - parts = href.split('#') - link = "build#{parts[0]}/index.html" - anchor = parts.size >= 2 ? "##{parts[1]}": nil - links.push({link: link, from: page}) - - unless anchor.nil? - anchors.push({link: link, anchor: anchor, from: page}) - end - elsif href.start_with?('#') - anchors.push({link: page, anchor: href, from: page}) - end - end -end - -errors_count_links = 0 -errors_count_anchors = 0 - -links = links.uniq{ |x| "#{x[:link]}"} - -links.each do |link| - unless File.file?(link[:link]) - errors_count_links += 1 - print "[ERROR] Did not find #{link[:link]} included in page #{link[:from]}\n" - end -end - -anchors = anchors.uniq{ |x| "#{x[:link]}#{x[:anchor]}"} - -anchors.each do |anchor| - if files[anchor[:link]].nil? - errors_count_links += 1 - print "[ERROR] Did not find #{anchor[:anchor]} included in page #{anchor[:from]}\n" - next - end - - begin - matching_anchors = files[anchor[:link]].css(anchor[:anchor]) - rescue Nokogiri::CSS::SyntaxError - matching_anchors = [] - end - - if matching_anchors.size <= 0 - errors_count_anchors += 1 - print "[ERROR] Did not find #{anchor[:anchor]} included in page #{anchor[:from]}\n" - end -end - -print "Checked #{links.size} links and #{anchors.size} anchors. #{errors_count_links} bad link. #{errors_count_anchors} bad anchors\n" - -if errors_count_anchors + errors_count_links > 0 - exit(1) -end \ No newline at end of file diff --git a/docs/optimiseFonts.js b/docs/optimiseFonts.js deleted file mode 100644 index ce71e771..00000000 --- a/docs/optimiseFonts.js +++ /dev/null @@ -1,58 +0,0 @@ -const fs = require('fs'), - path = require('path'), - glob = require('glob'), - ttf2woff2 = require('ttf2woff2'), - ttf2woff = require('ttf2woff/index.js'), - crypto = require('crypto'); - -const last = (arr) => { - return arr[arr.length-1]; -} - -const files = glob.sync(path.resolve(__dirname, 'source/doc/assets/fonts/*.ttf')); -const replaceFontNameRegexp = /^@.*\{[^{]+?\}/gm; - -const fileMap = files.reduce((p,f) => { - - const name = last(f.split('/')).replace('.ttf',''); - const woffName = f.replace('.ttf', '.woff'); - - const ttfBuffer = fs.readFileSync(f); - const woffBuffer = fs.readFileSync(woffName); - - const woff2 = ttf2woff2(ttfBuffer); - - const woffHash = crypto.createHash('md5').update(woffBuffer).digest('hex'); - const ttfHash = crypto.createHash('md5').update(ttfBuffer).digest('hex') - - const woff2Encode = new Buffer(woff2).toString('base64'); - // const woffEncode = new Buffer(woff).toString('base64'); - - const cssFontFamily = `@font-face { - font-family: '${name}'; - src: url('data:application/font-woff2;charset=utf-8;base64, ${woff2Encode}') format('woff2'), - url('../../fonts/${name}.woff?${woffHash}') format('woff'), - url('../../fonts/${name}.ttf?${ttfHash}') format('truetype'); - font-weight: normal; - font-style: normal; -}` - - const key = f.split('-')[1] === 'brands' ? 'source/doc/assets/stylesheets/_brands.scss' : 'source/doc/assets/stylesheets/vendors/_icons.scss'; - p[key] = cssFontFamily; - - return p; -},{}); - -// Write stylesheet -Object.keys(fileMap).forEach(key => { - console.log(key) - fs.readFile(key, 'utf-8', (err, data) => { - if(err) throw new Error(`Error when reading ${key}`) - - const replacedContent = data.replace(replaceFontNameRegexp, fileMap[key]); - - fs.writeFileSync(key, replacedContent, 'utf8', function (err) { - if (err) throw new Error(`Error when writing file ${key}`); - }); - }); -}) \ No newline at end of file diff --git a/docs/package.json b/docs/package.json index 610cb135..8d288a8a 100644 --- a/docs/package.json +++ b/docs/package.json @@ -1,6 +1,60 @@ { + "license": "MIT", + "description": "DocSearch documentation", + "scripts": { + "build": "NODE_ENV=production babel-node ./scripts/build.js", + "lint": "./scripts/lint", + "serve": "babel-node ./scripts/serve.js", + "deploy": "./scripts/deploy", + "precommit": "yarn lint" + }, + "devDependencies": { + "@babel/cli": "^7.0.0-beta.51", + "@babel/core": "^7.0.0-beta.51", + "@babel/node": "^7.0.0-beta.51", + "@babel/plugin-proposal-object-rest-spread": "^7.0.0-beta.51", + "@babel/preset-env": "^7.0.0-beta.51", + "@fullhuman/postcss-purgecss": "^1.0.1", + "autoprefixer": "^8.6.4", + "babel-core": "^7.0.0-bridge.0", + "babel-eslint": "^8.2.3", + "babel-plugin-dynamic-import-node-sync": "^2.0.1", + "chalk": "^2.4.1", + "cheerio": "^1.0.0-rc.2", + "chokidar": "^2.0.4", + "cpx": "^1.5.0", + "eslint": "4.19.1", + "eslint-config-algolia": "^13.1.0", + "eslint-config-prettier": "^2.9.0", + "eslint-plugin-import": "^2.11.0", + "eslint-plugin-prettier": "^2.6.0", + "front-matter": "^2.3.0", + "fs-extra": "^7.0.0", + "glob": "^7.1.2", + "husky": "^0.14.3", + "inquirer": "^6.0.0", + "live-server": "^1.2.0", + "lodash": "^4.17.10", + "markdown-it": "^8.4.1", + "markdown-it-anchor": "^5.0.2", + "markdown-it-highlightjs": "^3.0.0", + "normalize.css": "^8.0.0", + "p-all": "^1.0.0", + "p-each-series": "^1.0.0", + "p-map": "^1.2.0", + "pify": "^3.0.0", + "postcss": "^6.0.23", + "postcss-clean": "^1.1.0", + "postcss-import": "^11.1.0", + "postcss-nested": "^3.0.0", + "prettier": "1.9.2", + "pug": "^2.0.3", + "puppeteer": "^1.6.1", + "stylelint": "^9.3.0", + "stylelint-csstree-validator": "^1.3.0", + "tailwindcss": "^0.6.1" + }, + "peerDependencies": {}, "dependencies": { - "algolia-aerial": "1.5.3", - "algolia-frontend-components": "0.0.35" } } diff --git a/scripts/docs/build.js b/docs/scripts/build.js similarity index 62% rename from scripts/docs/build.js rename to docs/scripts/build.js index a33a6ee7..c0dfbb04 100644 --- a/scripts/docs/build.js +++ b/docs/scripts/build.js @@ -1,7 +1,7 @@ -import markdown from './markdown'; -import css from './css'; -import js from './js'; -import assets from './assets'; +import markdown from './lib/markdown'; +import css from './lib/css'; +import js from './lib/js'; +import assets from './lib/assets'; import pAll from 'p-all'; (async function() { diff --git a/scripts/docs/assets.js b/docs/scripts/lib/assets.js similarity index 69% rename from scripts/docs/assets.js rename to docs/scripts/lib/assets.js index 771927e9..ae624b01 100644 --- a/scripts/docs/assets.js +++ b/docs/scripts/lib/assets.js @@ -6,10 +6,10 @@ const sourcePattern = './src/**/*.{gif,png,ico,html,svg,woff}'; export default { async run() { - return await copy(sourcePattern, './docs'); + return await copy(sourcePattern, './dist'); }, watch() { - cpx.watch(sourcePattern, './docs'); + cpx.watch(sourcePattern, './dist'); }, }; diff --git a/scripts/docs/css.js b/docs/scripts/lib/css.js similarity index 80% rename from scripts/docs/css.js rename to docs/scripts/lib/css.js index dd4c566b..50be5ad3 100644 --- a/scripts/docs/css.js +++ b/docs/scripts/lib/css.js @@ -30,8 +30,9 @@ export default { } plugins.push( postcssPurge({ - content: [`./docs/${pathLevel}/*.html`], - whitelistPatterns: [/^ais-/, /^ats-/], + content: [`./dist/${pathLevel}/*.html`], + // Always keep InstantSearch, TalkSearch and DocSearch classes + whitelistPatterns: [/^ais-/, /^ats-/, /^ds-/], }) ); @@ -59,7 +60,7 @@ export default { async compile(source) { const rawContent = await helper.readFile(source); const relativePath = path.relative('./src', source); - const destination = `./docs/${relativePath}`; + const destination = `./dist/${relativePath}`; // Use a local tailwind file if one is found const dirname = path.dirname(source); @@ -78,7 +79,7 @@ export default { // Compile all css files async run() { - const cssFiles = await helper.getFiles('{style.css,demos/[^_]*/style.css}'); + const cssFiles = await helper.getFiles('style.css'); await pEach(cssFiles, async filepath => { await this.compile(filepath); @@ -95,15 +96,6 @@ export default { helper.watch('./src/_styles/*.css', () => { this.compile('./src/style.css'); }); - // Rebuild demo when tailwind config of a demo is changed - helper.watch('./src/demos/[^_]*/tailwind.config.js', tailwindPath => { - const cssPath = `${path.dirname(tailwindPath)}/style.css`; - this.compile(cssPath); - }); - // Rebuild demo when style of a demo is changed - helper.watch('./src/demos/[^_]*/style.css', filepath => { - this.compile(filepath); - }); // Rebuild all files when main tailwind config is changed helper.watch('./tailwind.config.js', () => { this.run(); diff --git a/scripts/docs/helper.js b/docs/scripts/lib/helper.js similarity index 87% rename from scripts/docs/helper.js rename to docs/scripts/lib/helper.js index a607f862..1df81640 100644 --- a/scripts/docs/helper.js +++ b/docs/scripts/lib/helper.js @@ -1,15 +1,14 @@ -import fs from 'fs'; +import fs from 'fs-extra'; import _ from 'lodash'; import pify from 'pify'; import _glob from 'glob'; import path from 'path'; -import _mkdirp from 'mkdirp'; import chalk from 'chalk'; import chokidar from 'chokidar'; const glob = pify(_glob); -const mkdirp = pify(_mkdirp); const readFile = pify(fs.readFile); const writeFile = pify(fs.writeFile); +const mkdirp = pify(fs.mkdirp); export default { // Read a file and return its content as a string @@ -20,9 +19,9 @@ export default { async readJson(filepath) { return JSON.parse(await this.readFile(filepath)); }, - // Return the site global data - async siteData() { - return await this.readJson('./src/_data.json'); + // Return the site global config + async siteConfig() { + return await this.readJson('./config.json'); }, // Write a file to disk async writeFile(filepath, content) { diff --git a/scripts/docs/js.js b/docs/scripts/lib/js.js similarity index 56% rename from scripts/docs/js.js rename to docs/scripts/lib/js.js index 6f0f19ec..cb21ce16 100644 --- a/scripts/docs/js.js +++ b/docs/scripts/lib/js.js @@ -1,37 +1,15 @@ import helper from './helper'; import _ from 'lodash'; import path from 'path'; -import * as babel from '@babel/core'; +import * as babel from 'babel-core'; import pMap from 'p-map'; export default { - // Replace all "include: ./path/to/file.js" with the actual content of the - // file - async includeTemplates(initialContent) { - const lines = _.split(initialContent, '\n'); - - const newContent = await pMap(lines, async line => { - // Skip lines without a template - if (!_.startsWith(line, '// include: ')) { - return line; - } - - const filename = line.split(': ')[1]; - const templateContent = await helper.readFile( - `./src/demos/_includes/${filename}` - ); - - return templateContent; - }); - - return newContent.join('\n'); - }, - // Interpolate placeholders async interpolatePlaceholders(initialContent) { let content = initialContent; - const siteData = await helper.siteData(); - _.each(siteData.config, (value, key) => { + const siteConfig = await helper.siteConfig(); + _.each(siteConfig.placeholders, (value, key) => { content = _.replace(content, new RegExp(`{{${key}}}`, 'g'), value); }); @@ -53,7 +31,7 @@ export default { async compile(filepath) { const relativePath = path.relative('./src', filepath); - const destination = `./docs/${relativePath}`; + const destination = `./dist/${relativePath}`; let content = await helper.readFile(filepath); content = await this.includeTemplates(content); content = await this.interpolatePlaceholders(content); @@ -64,7 +42,7 @@ export default { async run() { // Compile JavaScript files - const jsFiles = await helper.getFiles('demos/[^_]*/search.js'); + const jsFiles = await helper.getFiles('*.js'); await pMap(jsFiles, async filepath => { await this.compile(filepath); }); @@ -72,13 +50,8 @@ export default { // Listen to changes in js files and rewrite them watch() { - // Update HTML on each markdown change - helper.watch('./src/demos/**/search.js', filepath => { + helper.watch('./src/*.js', filepath => { this.compile(filepath); }); - // Rebuild everything when an include changes - helper.watch(['./src/demos/_includes/*.js'], () => { - this.run(); - }); }, }; diff --git a/scripts/docs/markdown.js b/docs/scripts/lib/markdown.js similarity index 81% rename from scripts/docs/markdown.js rename to docs/scripts/lib/markdown.js index 86843045..42dfcff8 100644 --- a/scripts/docs/markdown.js +++ b/docs/scripts/lib/markdown.js @@ -33,22 +33,22 @@ export default { // Build a markdown file to an html file async compile(filepath) { - const siteData = await helper.siteData(); + const siteConfig = await helper.siteConfig(); const currentUrl = path.relative( './src', _.replace(filepath, '.md', '.html') ); - const destination = `./docs/${currentUrl}`; + const destination = `./dist/${currentUrl}`; // Read file, and extract front-matter from raw text const rawContent = await helper.readFile(filepath); const parsed = frontMatter(rawContent); - const fileData = parsed.attributes; - const pageData = _.merge({}, siteData, fileData); + const fileConfig = parsed.attributes; + const pageConfig = _.merge({}, siteConfig, fileConfig); - // Update {{config}} placeholders + // Update {{placeholders}} let markdownBody = parsed.body; - _.each(pageData.config, (value, key) => { + _.each(pageConfig.placeholders, (value, key) => { markdownBody = _.replace( markdownBody, new RegExp(`{{${key}}}`, 'g'), @@ -61,7 +61,7 @@ export default { // Add the hierarchy of headings to the matching link in the sidebar const headings = this.getHeadings(htmlBody); - const sidebar = _.clone(pageData.sidebar); + const sidebar = _.clone(pageConfig.sidebar); _.each(sidebar, category => { _.each(category.pages, page => { const linkBasename = path.basename(page.url, '.html'); @@ -72,22 +72,22 @@ export default { }); // Init layout - const layoutName = fileData.layout; + const layoutName = fileConfig.layout; const layoutFile = `./src/_layouts/${layoutName}.pug`; const layoutContent = await helper.readFile(layoutFile); const pugCompile = pug.compile(layoutContent, { filename: layoutFile }); // Compile layout - const compileData = { - ...pageData, + const compileConfig = { + ...pageConfig, sidebar, current: { url: currentUrl, content: htmlBody, - ...fileData, + ...fileConfig, }, }; - const htmlContent = pugCompile(compileData); + const htmlContent = pugCompile(compileConfig); // Save to disk await helper.writeFile(destination, htmlContent); @@ -95,7 +95,7 @@ export default { async run() { // Convert markdown to HTML - const markdownFiles = await helper.getFiles('{*.md,demos/[^_]*/*.md}'); + const markdownFiles = await helper.getFiles('*.md'); await pMap(markdownFiles, async filepath => { await this.compile(filepath); }); @@ -107,13 +107,13 @@ export default { helper.watch('./src/*.md', filepath => { this.compile(filepath); }); - // Rebuild everything when a layout, include or data changes + // Rebuild everything when a layout, include or config changes helper.watch( [ './src/_layouts/*.pug', './src/_includes/*.pug', './src/_mixins/*.pug', - './src/_data.json', + './config.json', ], () => { this.run(); diff --git a/docs/scripts/lint b/docs/scripts/lint new file mode 100755 index 00000000..6445f85b --- /dev/null +++ b/docs/scripts/lint @@ -0,0 +1,4 @@ +#!/usr/bin/env sh +set -e + +eslint ./scripts/**/*.js ./src/*.js ./*.js diff --git a/scripts/docs/serve.js b/docs/scripts/serve.js similarity index 58% rename from scripts/docs/serve.js rename to docs/scripts/serve.js index ca35c69f..5110780b 100644 --- a/scripts/docs/serve.js +++ b/docs/scripts/serve.js @@ -1,8 +1,8 @@ -import markdown from './markdown'; +import markdown from './lib/markdown'; import _ from 'lodash'; -import css from './css'; -import js from './js'; -import assets from './assets'; +import css from './lib/css'; +import js from './lib/js'; +import assets from './lib/assets'; import liveServer from 'live-server'; import pAll from 'p-all'; @@ -22,13 +22,13 @@ import pAll from 'p-all'; assets.watch(); liveServer.start({ - root: './docs', - open: '/talksearch/', + root: './dist', + open: '/docsearch/', port: 8082, middleware: [ - // Redirect /talksearch to the root (mimicking GitHub pages) + // Redirect subdirectory to the root (mimicking GitHub pages) function(req, res, next) { - req.url = _.replace(req.url, /^\/talksearch/, ''); // eslint-disable-line no-param-reassign + req.url = _.replace(req.url, /^\/docsearch/, ''); // eslint-disable-line no-param-reassign next(); }, ], diff --git a/docs/source/404.html.haml b/docs/source/404.html.haml deleted file mode 100644 index 5e11abd9..00000000 --- a/docs/source/404.html.haml +++ /dev/null @@ -1,10 +0,0 @@ ---- -layout: 404.html ---- - -.panel-header.text-center.color-white - .relative-container-illus-alien - .spacer32 - %h1.color-bunting Error 404 - %h2.text-muted The page you requested was not found. - .spacer64 \ No newline at end of file diff --git a/docs/source/assets/fonts/algolia-website-iconfont.eot b/docs/source/assets/fonts/algolia-website-iconfont.eot deleted file mode 100755 index 4df743db..00000000 Binary files a/docs/source/assets/fonts/algolia-website-iconfont.eot and /dev/null differ diff --git a/docs/source/assets/fonts/algolia-website-iconfont.svg b/docs/source/assets/fonts/algolia-website-iconfont.svg deleted file mode 100755 index fe590110..00000000 --- a/docs/source/assets/fonts/algolia-website-iconfont.svg +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - -{ - "fontFamily": "algolia-website-iconfont", - "majorVersion": 1, - "minorVersion": 0, - "description": "Font generated by IcoMoon.", - "version": "Version 1.0", - "fontId": "algolia-website-iconfont", - "psName": "algolia-website-iconfont", - "subFamily": "Regular", - "fullName": "algolia-website-iconfont" -} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/source/assets/fonts/algolia-website-iconfont.ttf b/docs/source/assets/fonts/algolia-website-iconfont.ttf deleted file mode 100755 index ae39a9e0..00000000 Binary files a/docs/source/assets/fonts/algolia-website-iconfont.ttf and /dev/null differ diff --git a/docs/source/assets/fonts/algolia-website-iconfont.woff b/docs/source/assets/fonts/algolia-website-iconfont.woff deleted file mode 100755 index cf9a4be3..00000000 Binary files a/docs/source/assets/fonts/algolia-website-iconfont.woff and /dev/null differ diff --git a/docs/source/assets/images/algolia-logo.svg b/docs/source/assets/images/algolia-logo.svg deleted file mode 100644 index a3fdbd54..00000000 --- a/docs/source/assets/images/algolia-logo.svg +++ /dev/null @@ -1 +0,0 @@ -algolia-logoCreated with Sketch. \ No newline at end of file diff --git a/docs/source/assets/images/background_footer.svg b/docs/source/assets/images/background_footer.svg deleted file mode 100644 index 6277cd39..00000000 --- a/docs/source/assets/images/background_footer.svg +++ /dev/null @@ -1,46 +0,0 @@ - - - - footer copy - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/source/assets/images/bootstrap-docsearch.gif b/docs/source/assets/images/bootstrap-docsearch.gif deleted file mode 100644 index dd450b1a..00000000 Binary files a/docs/source/assets/images/bootstrap-docsearch.gif and /dev/null differ diff --git a/docs/source/assets/images/community-badge.svg b/docs/source/assets/images/community-badge.svg deleted file mode 100644 index 5412365d..00000000 --- a/docs/source/assets/images/community-badge.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/source/assets/images/default-colorscheme.png b/docs/source/assets/images/default-colorscheme.png deleted file mode 100644 index 1f0094c1..00000000 Binary files a/docs/source/assets/images/default-colorscheme.png and /dev/null differ diff --git a/docs/source/assets/images/docsearch-logo-horizontal_dark.svg b/docs/source/assets/images/docsearch-logo-horizontal_dark.svg deleted file mode 100644 index dfb62ed2..00000000 --- a/docs/source/assets/images/docsearch-logo-horizontal_dark.svg +++ /dev/null @@ -1 +0,0 @@ -Docsearch-logo-horizontal \ No newline at end of file diff --git a/docs/source/assets/images/docsearch-logo-horizontal_light.svg b/docs/source/assets/images/docsearch-logo-horizontal_light.svg deleted file mode 100644 index f1a731d6..00000000 --- a/docs/source/assets/images/docsearch-logo-horizontal_light.svg +++ /dev/null @@ -1 +0,0 @@ -Asset 4 \ No newline at end of file diff --git a/docs/source/assets/images/docsearch-logo-vertical_dark.svg b/docs/source/assets/images/docsearch-logo-vertical_dark.svg deleted file mode 100644 index c3e736de..00000000 --- a/docs/source/assets/images/docsearch-logo-vertical_dark.svg +++ /dev/null @@ -1 +0,0 @@ -Docsearch-logo-vertical \ No newline at end of file diff --git a/docs/source/assets/images/docsearch-logo-vertical_light.svg b/docs/source/assets/images/docsearch-logo-vertical_light.svg deleted file mode 100644 index 3a0fe576..00000000 --- a/docs/source/assets/images/docsearch-logo-vertical_light.svg +++ /dev/null @@ -1 +0,0 @@ -Asset 3 \ No newline at end of file diff --git a/docs/source/assets/images/docsearch-social.png b/docs/source/assets/images/docsearch-social.png deleted file mode 100644 index 2dc7a5fa..00000000 Binary files a/docs/source/assets/images/docsearch-social.png and /dev/null differ diff --git a/docs/source/assets/images/favicon.ico b/docs/source/assets/images/favicon.ico deleted file mode 100644 index 22115f83..00000000 Binary files a/docs/source/assets/images/favicon.ico and /dev/null differ diff --git a/docs/source/assets/images/favicon.png b/docs/source/assets/images/favicon.png deleted file mode 100644 index c2c56ee9..00000000 Binary files a/docs/source/assets/images/favicon.png and /dev/null differ diff --git a/docs/source/assets/images/header-bg.jpg b/docs/source/assets/images/header-bg.jpg deleted file mode 100644 index 48d9109a..00000000 Binary files a/docs/source/assets/images/header-bg.jpg and /dev/null differ diff --git a/docs/source/assets/images/icon-arrow-pipe.svg b/docs/source/assets/images/icon-arrow-pipe.svg deleted file mode 100644 index cac4d0bf..00000000 --- a/docs/source/assets/images/icon-arrow-pipe.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - Shape - Created with Sketch. - - - - - \ No newline at end of file diff --git a/docs/source/assets/images/icon-github.svg b/docs/source/assets/images/icon-github.svg deleted file mode 100644 index ac68f17a..00000000 --- a/docs/source/assets/images/icon-github.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - Shape - Created with Sketch. - - - - - \ No newline at end of file diff --git a/docs/source/assets/images/icon-heart-dark.svg b/docs/source/assets/images/icon-heart-dark.svg deleted file mode 100644 index d8db7215..00000000 --- a/docs/source/assets/images/icon-heart-dark.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - Shape - Created with Sketch. - - - - - \ No newline at end of file diff --git a/docs/source/assets/images/icon-heart-light.svg b/docs/source/assets/images/icon-heart-light.svg deleted file mode 100644 index 43208861..00000000 --- a/docs/source/assets/images/icon-heart-light.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - Shape - Created with Sketch. - - - - - \ No newline at end of file diff --git a/docs/source/assets/images/icon-page-doc.svg b/docs/source/assets/images/icon-page-doc.svg deleted file mode 100644 index 65e0c3e3..00000000 --- a/docs/source/assets/images/icon-page-doc.svg +++ /dev/null @@ -1 +0,0 @@ -icon-page-docCreated with sketchtool. \ No newline at end of file diff --git a/docs/source/assets/images/icon-search-white.svg b/docs/source/assets/images/icon-search-white.svg deleted file mode 100644 index 841cb334..00000000 --- a/docs/source/assets/images/icon-search-white.svg +++ /dev/null @@ -1 +0,0 @@ -Icons/Search \ No newline at end of file diff --git a/docs/source/assets/images/illus-howitworks.jpg b/docs/source/assets/images/illus-howitworks.jpg deleted file mode 100644 index 4c5ffb62..00000000 Binary files a/docs/source/assets/images/illus-howitworks.jpg and /dev/null differ diff --git a/docs/source/assets/images/illus-howitworks.svg b/docs/source/assets/images/illus-howitworks.svg deleted file mode 100644 index 118ed41d..00000000 --- a/docs/source/assets/images/illus-howitworks.svg +++ /dev/null @@ -1,135 +0,0 @@ - - - - illus-howitworks - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ? - - - - - - - - - - - - - - - - - - - - - - - - - ? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/source/assets/images/illus-index.svg b/docs/source/assets/images/illus-index.svg deleted file mode 100644 index 6300eeef..00000000 --- a/docs/source/assets/images/illus-index.svg +++ /dev/null @@ -1 +0,0 @@ -illus-indexCreated with Sketch. \ No newline at end of file diff --git a/docs/source/assets/images/logo-algolia-dark.png b/docs/source/assets/images/logo-algolia-dark.png deleted file mode 100644 index 39834473..00000000 Binary files a/docs/source/assets/images/logo-algolia-dark.png and /dev/null differ diff --git a/docs/source/assets/images/logo-community-inline-dark.svg b/docs/source/assets/images/logo-community-inline-dark.svg deleted file mode 100644 index acd79a82..00000000 --- a/docs/source/assets/images/logo-community-inline-dark.svg +++ /dev/null @@ -1,50 +0,0 @@ - - - - logos/logo-community-inline-dark - Created with sketchtool. - - - - - - - - \ No newline at end of file diff --git a/docs/source/assets/images/logo-community.svg b/docs/source/assets/images/logo-community.svg deleted file mode 100644 index 1e607551..00000000 --- a/docs/source/assets/images/logo-community.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - logo/algolia-community/mark-sm - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/source/assets/images/logo-docsearch.svg b/docs/source/assets/images/logo-docsearch.svg deleted file mode 100644 index 4ac27849..00000000 --- a/docs/source/assets/images/logo-docsearch.svg +++ /dev/null @@ -1 +0,0 @@ -logo-docsearch + logo-docsearch copyCreated with Sketch. \ No newline at end of file diff --git a/docs/source/assets/images/mask.png b/docs/source/assets/images/mask.png deleted file mode 100644 index dd816169..00000000 Binary files a/docs/source/assets/images/mask.png and /dev/null differ diff --git a/docs/source/assets/images/screens/screen_akka.png b/docs/source/assets/images/screens/screen_akka.png deleted file mode 100644 index f010367c..00000000 Binary files a/docs/source/assets/images/screens/screen_akka.png and /dev/null differ diff --git a/docs/source/assets/images/screens/screen_bootstrap.png b/docs/source/assets/images/screens/screen_bootstrap.png deleted file mode 100644 index 24f1bf99..00000000 Binary files a/docs/source/assets/images/screens/screen_bootstrap.png and /dev/null differ diff --git a/docs/source/assets/images/screens/screen_laravel.png b/docs/source/assets/images/screens/screen_laravel.png deleted file mode 100644 index 3cb66546..00000000 Binary files a/docs/source/assets/images/screens/screen_laravel.png and /dev/null differ diff --git a/docs/source/assets/images/screens/screen_middleman.png b/docs/source/assets/images/screens/screen_middleman.png deleted file mode 100644 index 3ef2b3bc..00000000 Binary files a/docs/source/assets/images/screens/screen_middleman.png and /dev/null differ diff --git a/docs/source/assets/images/screens/screen_react.png b/docs/source/assets/images/screens/screen_react.png deleted file mode 100644 index 4aee9676..00000000 Binary files a/docs/source/assets/images/screens/screen_react.png and /dev/null differ diff --git a/docs/source/assets/images/screens/screen_stripe.png b/docs/source/assets/images/screens/screen_stripe.png deleted file mode 100644 index c1579a23..00000000 Binary files a/docs/source/assets/images/screens/screen_stripe.png and /dev/null differ diff --git a/docs/source/assets/images/screens/screen_vue.png b/docs/source/assets/images/screens/screen_vue.png deleted file mode 100644 index 3e951510..00000000 Binary files a/docs/source/assets/images/screens/screen_vue.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-ant-design.gif b/docs/source/assets/images/showcase/example-ant-design.gif deleted file mode 100644 index 4da07e46..00000000 Binary files a/docs/source/assets/images/showcase/example-ant-design.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-apiary.gif b/docs/source/assets/images/showcase/example-apiary.gif deleted file mode 100644 index 0c5cf416..00000000 Binary files a/docs/source/assets/images/showcase/example-apiary.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-apiplatform.gif b/docs/source/assets/images/showcase/example-apiplatform.gif deleted file mode 100644 index 1c1673f2..00000000 Binary files a/docs/source/assets/images/showcase/example-apiplatform.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-babel.gif b/docs/source/assets/images/showcase/example-babel.gif deleted file mode 100644 index 241b4488..00000000 Binary files a/docs/source/assets/images/showcase/example-babel.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-batch.gif b/docs/source/assets/images/showcase/example-batch.gif deleted file mode 100644 index e7c86810..00000000 Binary files a/docs/source/assets/images/showcase/example-batch.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-bootstrap.gif b/docs/source/assets/images/showcase/example-bootstrap.gif deleted file mode 100644 index 76d470f2..00000000 Binary files a/docs/source/assets/images/showcase/example-bootstrap.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-cordova.gif b/docs/source/assets/images/showcase/example-cordova.gif deleted file mode 100644 index 890cea3f..00000000 Binary files a/docs/source/assets/images/showcase/example-cordova.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-docusaurus.gif b/docs/source/assets/images/showcase/example-docusaurus.gif deleted file mode 100644 index a050d6b9..00000000 Binary files a/docs/source/assets/images/showcase/example-docusaurus.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-echo.gif b/docs/source/assets/images/showcase/example-echo.gif deleted file mode 100644 index 3c460c2a..00000000 Binary files a/docs/source/assets/images/showcase/example-echo.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-eslint.gif b/docs/source/assets/images/showcase/example-eslint.gif deleted file mode 100644 index d8913e27..00000000 Binary files a/docs/source/assets/images/showcase/example-eslint.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-fastlane.gif b/docs/source/assets/images/showcase/example-fastlane.gif deleted file mode 100644 index f4442d1f..00000000 Binary files a/docs/source/assets/images/showcase/example-fastlane.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-flow.gif b/docs/source/assets/images/showcase/example-flow.gif deleted file mode 100644 index 32465a28..00000000 Binary files a/docs/source/assets/images/showcase/example-flow.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-gatsby.gif b/docs/source/assets/images/showcase/example-gatsby.gif deleted file mode 100644 index 6dc94fd5..00000000 Binary files a/docs/source/assets/images/showcase/example-gatsby.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-gitlab.gif b/docs/source/assets/images/showcase/example-gitlab.gif deleted file mode 100644 index 8e5c1eb3..00000000 Binary files a/docs/source/assets/images/showcase/example-gitlab.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-hugo.gif b/docs/source/assets/images/showcase/example-hugo.gif deleted file mode 100644 index 569affae..00000000 Binary files a/docs/source/assets/images/showcase/example-hugo.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-influxdata.gif b/docs/source/assets/images/showcase/example-influxdata.gif deleted file mode 100644 index 8fe24f33..00000000 Binary files a/docs/source/assets/images/showcase/example-influxdata.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-jekyll.gif b/docs/source/assets/images/showcase/example-jekyll.gif deleted file mode 100644 index 3100ab91..00000000 Binary files a/docs/source/assets/images/showcase/example-jekyll.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-mailjet.gif b/docs/source/assets/images/showcase/example-mailjet.gif deleted file mode 100644 index 2666b718..00000000 Binary files a/docs/source/assets/images/showcase/example-mailjet.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-marionettejs.gif b/docs/source/assets/images/showcase/example-marionettejs.gif deleted file mode 100644 index 80b09970..00000000 Binary files a/docs/source/assets/images/showcase/example-marionettejs.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-momentjs.gif b/docs/source/assets/images/showcase/example-momentjs.gif deleted file mode 100644 index 3b74174a..00000000 Binary files a/docs/source/assets/images/showcase/example-momentjs.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-pm2.gif b/docs/source/assets/images/showcase/example-pm2.gif deleted file mode 100644 index fdb95581..00000000 Binary files a/docs/source/assets/images/showcase/example-pm2.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-quill.gif b/docs/source/assets/images/showcase/example-quill.gif deleted file mode 100644 index f1b7f777..00000000 Binary files a/docs/source/assets/images/showcase/example-quill.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-react.gif b/docs/source/assets/images/showcase/example-react.gif deleted file mode 100644 index a3fa153b..00000000 Binary files a/docs/source/assets/images/showcase/example-react.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-reactnative.gif b/docs/source/assets/images/showcase/example-reactnative.gif deleted file mode 100644 index a72d6b62..00000000 Binary files a/docs/source/assets/images/showcase/example-reactnative.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-scala.gif b/docs/source/assets/images/showcase/example-scala.gif deleted file mode 100644 index 4148730a..00000000 Binary files a/docs/source/assets/images/showcase/example-scala.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-serge.gif b/docs/source/assets/images/showcase/example-serge.gif deleted file mode 100644 index 5ef16c5a..00000000 Binary files a/docs/source/assets/images/showcase/example-serge.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-serge.png b/docs/source/assets/images/showcase/example-serge.png deleted file mode 100644 index 1eca185d..00000000 Binary files a/docs/source/assets/images/showcase/example-serge.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-stripe.gif b/docs/source/assets/images/showcase/example-stripe.gif deleted file mode 100644 index a94e863a..00000000 Binary files a/docs/source/assets/images/showcase/example-stripe.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-symfony.gif b/docs/source/assets/images/showcase/example-symfony.gif deleted file mode 100644 index 074a5a74..00000000 Binary files a/docs/source/assets/images/showcase/example-symfony.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/example-vuejs.gif b/docs/source/assets/images/showcase/example-vuejs.gif deleted file mode 100644 index 5ada6ce5..00000000 Binary files a/docs/source/assets/images/showcase/example-vuejs.gif and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-ant-design.png b/docs/source/assets/images/showcase/logo-ant-design.png deleted file mode 100644 index 55527370..00000000 Binary files a/docs/source/assets/images/showcase/logo-ant-design.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-apiary.png b/docs/source/assets/images/showcase/logo-apiary.png deleted file mode 100644 index a48c4635..00000000 Binary files a/docs/source/assets/images/showcase/logo-apiary.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-apiplatform.svg b/docs/source/assets/images/showcase/logo-apiplatform.svg deleted file mode 100644 index 3d525307..00000000 --- a/docs/source/assets/images/showcase/logo-apiplatform.svg +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/source/assets/images/showcase/logo-babel.png b/docs/source/assets/images/showcase/logo-babel.png deleted file mode 100644 index 048a1845..00000000 Binary files a/docs/source/assets/images/showcase/logo-babel.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-batch.png b/docs/source/assets/images/showcase/logo-batch.png deleted file mode 100644 index f3e49491..00000000 Binary files a/docs/source/assets/images/showcase/logo-batch.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-batch.svg b/docs/source/assets/images/showcase/logo-batch.svg deleted file mode 100644 index b23936be..00000000 --- a/docs/source/assets/images/showcase/logo-batch.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - logo-batch - Created with Sketch. - - - - - - - \ No newline at end of file diff --git a/docs/source/assets/images/showcase/logo-bootstrap.png b/docs/source/assets/images/showcase/logo-bootstrap.png deleted file mode 100644 index 89341649..00000000 Binary files a/docs/source/assets/images/showcase/logo-bootstrap.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-cordova.png b/docs/source/assets/images/showcase/logo-cordova.png deleted file mode 100644 index e1cd0e61..00000000 Binary files a/docs/source/assets/images/showcase/logo-cordova.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-docusaurus.png b/docs/source/assets/images/showcase/logo-docusaurus.png deleted file mode 100644 index a1089af4..00000000 Binary files a/docs/source/assets/images/showcase/logo-docusaurus.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-echo.png b/docs/source/assets/images/showcase/logo-echo.png deleted file mode 100644 index 1285160a..00000000 Binary files a/docs/source/assets/images/showcase/logo-echo.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-eslint.png b/docs/source/assets/images/showcase/logo-eslint.png deleted file mode 100644 index 355678cb..00000000 Binary files a/docs/source/assets/images/showcase/logo-eslint.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-fastlane.png b/docs/source/assets/images/showcase/logo-fastlane.png deleted file mode 100644 index 87bf036f..00000000 Binary files a/docs/source/assets/images/showcase/logo-fastlane.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-flow.png b/docs/source/assets/images/showcase/logo-flow.png deleted file mode 100644 index 0fd06a3f..00000000 Binary files a/docs/source/assets/images/showcase/logo-flow.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-gatsby.png b/docs/source/assets/images/showcase/logo-gatsby.png deleted file mode 100644 index 904c5cc8..00000000 Binary files a/docs/source/assets/images/showcase/logo-gatsby.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-gitlab.png b/docs/source/assets/images/showcase/logo-gitlab.png deleted file mode 100644 index 7da5f23e..00000000 Binary files a/docs/source/assets/images/showcase/logo-gitlab.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-hugo.png b/docs/source/assets/images/showcase/logo-hugo.png deleted file mode 100644 index 50e23ce1..00000000 Binary files a/docs/source/assets/images/showcase/logo-hugo.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-influxdata.png b/docs/source/assets/images/showcase/logo-influxdata.png deleted file mode 100644 index 90601e5c..00000000 Binary files a/docs/source/assets/images/showcase/logo-influxdata.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-jekyll.png b/docs/source/assets/images/showcase/logo-jekyll.png deleted file mode 100644 index 858504cb..00000000 Binary files a/docs/source/assets/images/showcase/logo-jekyll.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-mailjet.png b/docs/source/assets/images/showcase/logo-mailjet.png deleted file mode 100644 index b0f559e4..00000000 Binary files a/docs/source/assets/images/showcase/logo-mailjet.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-marionettejs.png b/docs/source/assets/images/showcase/logo-marionettejs.png deleted file mode 100644 index 35faff57..00000000 Binary files a/docs/source/assets/images/showcase/logo-marionettejs.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-momentjs.png b/docs/source/assets/images/showcase/logo-momentjs.png deleted file mode 100644 index 4e8de3a0..00000000 Binary files a/docs/source/assets/images/showcase/logo-momentjs.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-pm2.png b/docs/source/assets/images/showcase/logo-pm2.png deleted file mode 100644 index ebe8a220..00000000 Binary files a/docs/source/assets/images/showcase/logo-pm2.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-quill.png b/docs/source/assets/images/showcase/logo-quill.png deleted file mode 100644 index 016e9a2c..00000000 Binary files a/docs/source/assets/images/showcase/logo-quill.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-quill.svg b/docs/source/assets/images/showcase/logo-quill.svg deleted file mode 100644 index a6929748..00000000 --- a/docs/source/assets/images/showcase/logo-quill.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/source/assets/images/showcase/logo-react.png b/docs/source/assets/images/showcase/logo-react.png deleted file mode 100644 index 6ed18692..00000000 Binary files a/docs/source/assets/images/showcase/logo-react.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-scala.png b/docs/source/assets/images/showcase/logo-scala.png deleted file mode 100644 index a24cbe8f..00000000 Binary files a/docs/source/assets/images/showcase/logo-scala.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-serge.svg b/docs/source/assets/images/showcase/logo-serge.svg deleted file mode 100644 index d7ff5f58..00000000 --- a/docs/source/assets/images/showcase/logo-serge.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - diff --git a/docs/source/assets/images/showcase/logo-stripe.png b/docs/source/assets/images/showcase/logo-stripe.png deleted file mode 100644 index 86e555ce..00000000 Binary files a/docs/source/assets/images/showcase/logo-stripe.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-symfony.png b/docs/source/assets/images/showcase/logo-symfony.png deleted file mode 100644 index d465183d..00000000 Binary files a/docs/source/assets/images/showcase/logo-symfony.png and /dev/null differ diff --git a/docs/source/assets/images/showcase/logo-vuejs.png b/docs/source/assets/images/showcase/logo-vuejs.png deleted file mode 100644 index 5a82e283..00000000 Binary files a/docs/source/assets/images/showcase/logo-vuejs.png and /dev/null differ diff --git a/docs/source/assets/javascripts/bootstrap.min.js b/docs/source/assets/javascripts/bootstrap.min.js deleted file mode 100755 index 3b89ee4f..00000000 --- a/docs/source/assets/javascripts/bootstrap.min.js +++ /dev/null @@ -1,11 +0,0 @@ -/*! - * Bootstrap v3.3.5 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ - -/*! - * Generated using the Bootstrap Customizer (http://getbootstrap.com/customize/?id=8e378749f2f2055043e1) - * Config saved to config.json and https://gist.github.com/8e378749f2f2055043e1 - */ -if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(t){"use strict";var e=t.fn.jquery.split(" ")[0].split(".");if(e[0]<2&&e[1]<9||1==e[0]&&9==e[1]&&e[2]<1)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher")}(jQuery),+function(t){"use strict";function e(e){var a,n=e.attr("data-target")||(a=e.attr("href"))&&a.replace(/.*(?=#[^\s]+$)/,"");return t(n)}function a(e){return this.each(function(){var a=t(this),i=a.data("bs.collapse"),s=t.extend({},n.DEFAULTS,a.data(),"object"==typeof e&&e);!i&&s.toggle&&/show|hide/.test(e)&&(s.toggle=!1),i||a.data("bs.collapse",i=new n(this,s)),"string"==typeof e&&i[e]()})}var n=function(e,a){this.$element=t(e),this.options=t.extend({},n.DEFAULTS,a),this.$trigger=t('[data-toggle="collapse"][href="#'+e.id+'"],[data-toggle="collapse"][data-target="#'+e.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};n.VERSION="3.3.5",n.TRANSITION_DURATION=350,n.DEFAULTS={toggle:!0},n.prototype.dimension=function(){var t=this.$element.hasClass("width");return t?"width":"height"},n.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var e,i=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(i&&i.length&&(e=i.data("bs.collapse"),e&&e.transitioning))){var s=t.Event("show.bs.collapse");if(this.$element.trigger(s),!s.isDefaultPrevented()){i&&i.length&&(a.call(i,"hide"),e||i.data("bs.collapse",null));var o=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[o](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var r=function(){this.$element.removeClass("collapsing").addClass("collapse in")[o](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!t.support.transition)return r.call(this);var l=t.camelCase(["scroll",o].join("-"));this.$element.one("bsTransitionEnd",t.proxy(r,this)).emulateTransitionEnd(n.TRANSITION_DURATION)[o](this.$element[0][l])}}}},n.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var e=t.Event("hide.bs.collapse");if(this.$element.trigger(e),!e.isDefaultPrevented()){var a=this.dimension();this.$element[a](this.$element[a]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var i=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return t.support.transition?void this.$element[a](0).one("bsTransitionEnd",t.proxy(i,this)).emulateTransitionEnd(n.TRANSITION_DURATION):i.call(this)}}},n.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},n.prototype.getParent=function(){return t(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(t.proxy(function(a,n){var i=t(n);this.addAriaAndCollapsedClass(e(i),i)},this)).end()},n.prototype.addAriaAndCollapsedClass=function(t,e){var a=t.hasClass("in");t.attr("aria-expanded",a),e.toggleClass("collapsed",!a).attr("aria-expanded",a)};var i=t.fn.collapse;t.fn.collapse=a,t.fn.collapse.Constructor=n,t.fn.collapse.noConflict=function(){return t.fn.collapse=i,this},t(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(n){var i=t(this);i.attr("data-target")||n.preventDefault();var s=e(i),o=s.data("bs.collapse"),r=o?"toggle":i.data();a.call(s,r)})}(jQuery); \ No newline at end of file diff --git a/docs/source/assets/javascripts/communityHeader.js b/docs/source/assets/javascripts/communityHeader.js deleted file mode 100644 index 9c81534c..00000000 --- a/docs/source/assets/javascripts/communityHeader.js +++ /dev/null @@ -1,317 +0,0 @@ -'use strict'; - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -/** - * Main header function with docsearch - * @param {Object} docSearch config - */ - -var communityHeader = function () { - function communityHeader(docSearchCredentials, docSearch) { - var _this = this; - - _classCallCheck(this, communityHeader); - - this.docSearchCredentials = docSearchCredentials; - this.docSearch = docSearch || null; - - this.menuState = { - isOpen: false, - isOpenMobile: false - }; - - this.INIT_VAL = { - WIDTH: 490, - HEIGHT: 360 - }; - - this.disableTransitionTimeout; - - this.searchIcon = document.querySelector('#search'); - this.cancelIcon = document.querySelector('#cancel'); - this.searchInputContainer = document.querySelector('.algc-search__input'); - this.searchContainer = this.searchInputContainer ? this.searchInputContainer.parentNode : null; - this.navRoot = document.querySelector('.algc-dropdownroot'); - this.dropdownRoot = document.querySelector('.algc-navigation__dropdown-holder'); - this.navItems = document.querySelectorAll('a[data-enabledropdown="true"]'); - this.navContainer = document.querySelector('.algc-dropdownroot__dropdowncontainer'); - this.menuContainer = document.querySelector('.algc-navigation__container'); - this.navBg = document.querySelector('.algc-dropdownroot__dropdownbg'); - this.navArrow = document.querySelector('.algc-dropdownroot__dropdownarrow'); - this.dropDownContainer = document.querySelector('.algc-dropdownroot__dropdowncontainer'); - this.menuTriggers = document.querySelectorAll('[data-enabledropdown="true"]'); - this.mobileMenuButton = document.querySelector('.algc-openmobile '); - this.mobileMenu = document.querySelector('.algc-mobilemenu'); - this.subList = document.querySelectorAll('.algc-menu--sublistlink'); - this.subListHolders = [].concat(_toConsumableArray(this.subList)).map(function (node) { - return node.parentNode; - }); - this.menuDropdowns = {}; - - [].forEach.call(document.querySelectorAll('[data-dropdown-content]'), function (item) { - _this.menuDropdowns[item.dataset.dropdownContent] = { - parent: item.parentNode, - content: item - }; - }); - - this.shouldInitDocSearch = this.shouldInitDocSearch.bind(this); - this.docSearchInit = this.checkDocSearch(docSearch); - this.enableDocSearch = this.verifyDocSearchParams(docSearchCredentials); - this.hasDocSearchRendered = document.querySelector('.algc-navigation .algc-search__input--docsearch'); - this.triggerMenu = this.triggerMenu.bind(this); - this.shouldTriggerMenu = this.shouldTriggerMenu.bind(this); - this.closeMenu = this.closeMenu.bind(this); - this.toggleMobileMenu = this.toggleMobileMenu.bind(this); - this.docSearchToggling = this.docSearchToggling.bind(this); - this.initDocSearchStrategy = this.initDocSearchStrategy.bind(this); - this.openSublist = this.openSublist.bind(this); - this.closeSubLists = this.closeSubLists.bind(this); - this.bindListeners = this.bindListeners.bind(this); - - this.calculatePosition = this.calculatePosition.bind(this); - - this.verifyDocSearchParams(); - this.shouldInitDocSearch(); - this.initDocSearchStrategy(); - this.bindListeners(); - } - - _createClass(communityHeader, [{ - key: 'calculatePosition', - value: function calculatePosition(sourceNode) { - var box = sourceNode.getBoundingClientRect(); - var realWidth = sourceNode.offsetWidth; - var realHeight = sourceNode.offsetHeight; - - return { - left: box.left, - top: box.top, - width: box.width, - height: box.height, - realWidth: realWidth, - realHeight: realHeight, - center: box.left + box.width / 2 - }; - } - }, { - key: 'shouldInitDocSearch', - value: function shouldInitDocSearch() { - if (!this.enableDocSearch && this.hasDocSearchRendered) { - throw new Error('You need to pass docSearch: { apiKey, indexName, inputSelector } to communityHeader function in order to initialise docSearch'); - } - } - }, { - key: 'checkDocSearch', - value: function checkDocSearch() { - var docSearch = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; - - if (docSearch) return docSearch; - - if (typeof window.docsearch === "function" || typeof docsearch === "function") { - return docsearch; - } - } - }, { - key: 'verifyDocSearchParams', - value: function verifyDocSearchParams(docSearchCredentials) { - return docSearchCredentials && docSearchCredentials.apiKey && docSearchCredentials.indexName && docSearchCredentials.inputSelector ? true : false; - } - }, { - key: 'triggerMenu', - value: function triggerMenu(event) { - var _this2 = this; - - var dropdown = event.target.dataset.dropdown; - var newTarget = this.menuDropdowns[dropdown].content; - var newContent = this.menuDropdowns[dropdown].parent; - - var navItem = this.calculatePosition(event.target); - var newTargetCoordinates = this.calculatePosition(newTarget); - var menuContainerOffset = this.calculatePosition(this.menuContainer); - var leftDistance = void 0; - - var scaleFactors = { - X: newTargetCoordinates.realWidth / this.INIT_VAL.WIDTH, - Y: newTargetCoordinates.realHeight / this.INIT_VAL.HEIGHT - }; - - leftDistance = navItem.center - menuContainerOffset.left + "px"; - - if (menuContainerOffset.left < 20) { - leftDistance = "calc(50% - 36px)"; - } - - this.navBg.style.cssText = '\n transform: translateX(' + leftDistance + ') scale(' + scaleFactors.X + ', ' + scaleFactors.Y + ')'; - - this.navArrow.style.cssText = '\n transform: translateX(' + leftDistance + ') rotate(45deg)'; - - this.dropDownContainer.style.cssText = '\n transform: translateX(' + leftDistance + ');\n width: ' + newTargetCoordinates.realWidth + 'px;\n height: ' + (newTargetCoordinates.realHeight + 10) + 'px;'; - - this.dropdownRoot.style.pointerEvents = "auto"; - - Object.keys(this.menuDropdowns).forEach(function (key) { - if (key === dropdown) { - _this2.menuDropdowns[key].parent.classList.add('active'); - } else { - _this2.menuDropdowns[key].parent.classList.remove('active'); - } - }); - - if (!this.menuState.isOpen) { - setTimeout(function () { - _this2.navRoot.className = "algc-dropdownroot activeDropdown"; - }, 50); - } - - window.clearTimeout(this.disableTransitionTimeout); - this.menuState.isOpen = true; - } - }, { - key: 'shouldTriggerMenu', - value: function shouldTriggerMenu(event) { - var _this3 = this; - - if (this.menuState.isOpen) { - this.triggerMenu(event); - } else { - this.triggerMenuTimeout = setTimeout(function () { - _this3.triggerMenu(event); - }, 200); - } - } - }, { - key: 'closeMenu', - value: function closeMenu(event) { - var _this4 = this; - - window.clearTimeout(this.triggerMenuTimeout); - this.menuState.isOpen = false; - this.disableTransitionTimeout = setTimeout(function () { - _this4.dropdownRoot.style.pointerEvents = "none"; - _this4.navRoot.className = "algc-dropdownroot notransition"; - }, 50); - } - }, { - key: 'toggleMobileMenu', - value: function toggleMobileMenu(event) { - this.mobileMenuButton.classList.toggle('algc-openmobile--open'); - this.mobileMenu.classList.toggle('algc-mobilemenu--open'); - } - - // Search - - }, { - key: 'docSearchToggling', - value: function docSearchToggling() { - var _this5 = this; - - this.searchInput = document.querySelector(this.docSearchCredentials.inputSelector); - var openSearchInput = function openSearchInput() { - _this5.searchContainer.classList.add('open'); - _this5.searchInput.focus(); - }; - - var closeSearchInput = function closeSearchInput() { - _this5.searchInput.blur(); - _this5.searchContainer.classList.remove('open'); - }; - - var emptySearchInput = function emptySearchInput() { - if (_this5.searchInput.value !== '') { - _this5.searchInput.value = ''; - } else { - closeSearchInput(); - } - }; - this.searchInput.setAttribute('value', ''); - this.searchIcon.addEventListener('click', openSearchInput); - this.cancelIcon.addEventListener('click', emptySearchInput); - } - }, { - key: 'initDocSearch', - value: function initDocSearch() { - this.docSearchToggling(); - this.docSearchInit(this.docSearchCredentials); - } - }, { - key: 'initDocSearchStrategy', - value: function initDocSearchStrategy() { - var _this6 = this; - - if (this.enableDocSearch && typeof this.docSearchInit === "function") { - this.initDocSearch(); - } else if (this.docSearch === "lazy") { - - var docSearchScript = document.createElement('script'); - docSearchScript.type = 'text/javascript'; - docSearchScript.async = true; - document.body.appendChild(docSearchScript); - - docSearchScript.onload = function () { - _this6.docSearchInit = docsearch; - _this6.initDocSearch(); - }; - - docSearchScript.src = "https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"; - } - } - }, { - key: 'openSublist', - value: function openSublist(node) { - var parent = node.parentNode; - this.subListHolders.forEach(function (holder) { - if (holder === parent && !parent.classList.contains('open')) { - holder.classList.add('open'); - } else { - holder.classList.remove('open'); - } - }); - } - }, { - key: 'closeSubLists', - value: function closeSubLists(event) { - this.subListHolders.forEach(function (holder) { - return holder.classList.remove('open'); - }); - } - }, { - key: 'bindListeners', - value: function bindListeners() { - var _this7 = this; - - var that = this; - this.subList.forEach(function (link) { - link.addEventListener('click', function (event) { - event.preventDefault(); - event.stopPropagation(); - that.openSublist(this); - }); - }); - - this.menuTriggers.forEach(function (item) { - item.addEventListener('mouseenter', _this7.shouldTriggerMenu); - item.addEventListener('focus', _this7.triggerMenu); - }); - - this.navItems.forEach(function (item) { - item.addEventListener('mouseleave', _this7.closeMenu); - }); - - this.navContainer.addEventListener('mouseenter', function () { - clearTimeout(_this7.disableTransitionTimeout); - }); - - this.mobileMenuButton.addEventListener('click', this.toggleMobileMenu); - document.addEventListener('click', this.closeSubLists); - document.querySelector('.algc-dropdownroot__dropdowncontainer').addEventListener('mouseleave', this.closeMenu); - } - }]); - - return communityHeader; -}(); \ No newline at end of file diff --git a/docs/source/assets/javascripts/components/copy-link.es6 b/docs/source/assets/javascripts/components/copy-link.es6 deleted file mode 100644 index 8760157c..00000000 --- a/docs/source/assets/javascripts/components/copy-link.es6 +++ /dev/null @@ -1,30 +0,0 @@ -const copy_links = [...document.querySelectorAll('.copy-link')]; - -copy_links.forEach(function (link) { - link.addEventListener('click', function (e) { - e.preventDefault(); - - return false; - }); -}); - -const clipboard = new Clipboard('.copy-link', { - text: function(trigger) { - const wrapper = $(trigger).closest('.snippet-wrapper'); - const current_snippet = wrapper.find('.tab-pane.active pre'); - - return current_snippet.text().replace('0&&void 0!==arguments[0]?arguments[0]:{};this.action=t.action,this.emitter=t.emitter,this.target=t.target,this.text=t.text,this.trigger=t.trigger,this.selectedText=""}},{key:"initSelection",value:function e(){this.text?this.selectFake():this.target&&this.selectTarget()}},{key:"selectFake",value:function e(){var t=this,n="rtl"==document.documentElement.getAttribute("dir");this.removeFake(),this.fakeHandlerCallback=function(){return t.removeFake()},this.fakeHandler=document.body.addEventListener("click",this.fakeHandlerCallback)||!0,this.fakeElem=document.createElement("textarea"),this.fakeElem.style.fontSize="12pt",this.fakeElem.style.border="0",this.fakeElem.style.padding="0",this.fakeElem.style.margin="0",this.fakeElem.style.position="absolute",this.fakeElem.style[n?"right":"left"]="-9999px";var o=window.pageYOffset||document.documentElement.scrollTop;this.fakeElem.style.top=o+"px",this.fakeElem.setAttribute("readonly",""),this.fakeElem.value=this.text,document.body.appendChild(this.fakeElem),this.selectedText=(0,i.default)(this.fakeElem),this.copyText()}},{key:"removeFake",value:function e(){this.fakeHandler&&(document.body.removeEventListener("click",this.fakeHandlerCallback),this.fakeHandler=null,this.fakeHandlerCallback=null),this.fakeElem&&(document.body.removeChild(this.fakeElem),this.fakeElem=null)}},{key:"selectTarget",value:function e(){this.selectedText=(0,i.default)(this.target),this.copyText()}},{key:"copyText",value:function e(){var t=void 0;try{t=document.execCommand(this.action)}catch(e){t=!1}this.handleResult(t)}},{key:"handleResult",value:function e(t){this.emitter.emit(t?"success":"error",{action:this.action,text:this.selectedText,trigger:this.trigger,clearSelection:this.clearSelection.bind(this)})}},{key:"clearSelection",value:function e(){this.target&&this.target.blur(),window.getSelection().removeAllRanges()}},{key:"destroy",value:function e(){this.removeFake()}},{key:"action",set:function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"copy";if(this._action=t,"copy"!==this._action&&"cut"!==this._action)throw new Error('Invalid "action" value, use either "copy" or "cut"')},get:function e(){return this._action}},{key:"target",set:function e(t){if(void 0!==t){if(!t||"object"!==("undefined"==typeof t?"undefined":r(t))||1!==t.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===this.action&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===this.action&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');this._target=t}},get:function e(){return this._target}}]),e}();e.exports=c})},{select:5}],8:[function(t,n,o){!function(i,r){if("function"==typeof e&&e.amd)e(["module","./clipboard-action","tiny-emitter","good-listener"],r);else if("undefined"!=typeof o)r(n,t("./clipboard-action"),t("tiny-emitter"),t("good-listener"));else{var a={exports:{}};r(a,i.clipboardAction,i.tinyEmitter,i.goodListener),i.clipboard=a.exports}}(this,function(e,t,n,o){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function c(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function l(e,t){var n="data-clipboard-"+e;if(t.hasAttribute(n))return t.getAttribute(n)}var u=i(t),s=i(n),f=i(o),d=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText}},{key:"listenClick",value:function e(t){var n=this;this.listener=(0,f.default)(t,"click",function(e){return n.onClick(e)})}},{key:"onClick",value:function e(t){var n=t.delegateTarget||t.currentTarget;this.clipboardAction&&(this.clipboardAction=null),this.clipboardAction=new u.default({action:this.action(n),target:this.target(n),text:this.text(n),trigger:n,emitter:this})}},{key:"defaultAction",value:function e(t){return l("action",t)}},{key:"defaultTarget",value:function e(t){var n=l("target",t);if(n)return document.querySelector(n)}},{key:"defaultText",value:function e(t){return l("text",t)}},{key:"destroy",value:function e(){this.listener.destroy(),this.clipboardAction&&(this.clipboardAction.destroy(),this.clipboardAction=null)}}],[{key:"isSupported",value:function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["copy","cut"],n="string"==typeof t?[t]:t,o=!!document.queryCommandSupported;return n.forEach(function(e){o=o&&!!document.queryCommandSupported(e)}),o}}]),t}(s.default);e.exports=h})},{"./clipboard-action":7,"good-listener":4,"tiny-emitter":6}]},{},[8])(8)}); \ No newline at end of file diff --git a/docs/source/assets/stylesheets/_base.scss b/docs/source/assets/stylesheets/_base.scss deleted file mode 100644 index f1c5bcae..00000000 --- a/docs/source/assets/stylesheets/_base.scss +++ /dev/null @@ -1,46 +0,0 @@ -// Algolia's UI-Component : -// ------------------------ -// -// VARIABLES -// --------- - -// Breakpoints -$bp-huge: 2000px; -$bp-big: 1440px; -$bp-medium: 960px; -$bp-small: 768px; - -// Dimensions -$max-container-width: 940px; -$navigation-height: 50px; -$margin: 16px; -$anchor-offset: 100px; - - -// Fonts -$font-name: "Raleway"; -$font-fallback: Helvetica Neue, helvetica; -$font-settings: $font-name, $font-fallback; - -$font-family-sans-serif: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; -$font-size-base: 16px; - -$headings-font-family: "Raleway"; -$headings-font-weight: 300; - -// Colors -$red-pink: #fb366e; -$steel: #788795; -$black: #0a1724; -$white-75: rgba(white, 0.75); -$brand-primary: #1d96c7; -$text-color: rgba(black, 0.75); -$community-color: #674492; -$success-color: #58d158; -$gray-light: #f3f3f3; -$dark-blue: #0d1d30; -$light-blue: lighten($dark-blue, 70%); -$secondary-color: green; - - - diff --git a/docs/source/assets/stylesheets/_docsearch.scss b/docs/source/assets/stylesheets/_docsearch.scss deleted file mode 100644 index 28aa6791..00000000 --- a/docs/source/assets/stylesheets/_docsearch.scss +++ /dev/null @@ -1,31 +0,0 @@ -@import "docsearch/docsearch", - "docsearch/dropdown", - "docsearch/searchbox"; - - -@include searchbox($searchbox-config...); -@include dropdown($dropdown-config...); - -.ds-dropdown-menu { - background: #fff; - border-radius: 4px; - min-width: 420px; - padding: 0 8px; - margin-top: 16px; - box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.2), 0 2px 3px 0 rgba(0, 0, 0, 0.1); - - &:before { - display: block; - position: absolute; - content: ''; - width: 14px; - height: 14px; - background: #FFFFFF; - z-index: 1000; - top: -7px; - border-top: 1px solid #D9D9D9; - border-right: 1px solid #D9D9D9; - transform: rotate(-45deg); - border-radius: 2px; - } -} diff --git a/docs/source/assets/stylesheets/_documentation.scss b/docs/source/assets/stylesheets/_documentation.scss deleted file mode 100644 index 50a8d29e..00000000 --- a/docs/source/assets/stylesheets/_documentation.scss +++ /dev/null @@ -1,60 +0,0 @@ -.documentation { - p, ul li, ol li { - font-size: 15px; - color: $east-bay - - img { - max-width: 100%; - } - } - - ol li { - color: $royal-blue; - font-family: $paragraphs-font-family; - font-weight: 600 - } - - h2 { - font-weight: 500; - font-size: 30px - } - - h3 { - font-size: 18px; - font-weight: 500; - } - - .main-content { - padding-bottom: 120px - } - - .main-content { - width: calc(100% - 300px); - position: relative; - margin-left: 300px; - margin-top: 56px; - min-height: calc(100vh - 250px); - - @media (max-width: 768px) { - width: 100%; - margin-left: 0; - } - } -} - -.about .main-content { - min-height: 100vh -} -pre { - display: block; - padding: 1em; - background-color: $titan-white; - border-radius: 6px; - white-space: pre; - color: $east-bay -} - -[style*="background-color:hsla(0,100%,50%,0.05)"], -[style*="background-color:hsla(0,0%,0%,0.07)"] { - background: transparent !important -} diff --git a/docs/source/assets/stylesheets/_fonts.scss b/docs/source/assets/stylesheets/_fonts.scss deleted file mode 100644 index ead2b9da..00000000 --- a/docs/source/assets/stylesheets/_fonts.scss +++ /dev/null @@ -1,245 +0,0 @@ -@font-face { - font-family: 'algolia-website-iconfont'; - src: url('../fonts/algolia-website-iconfont.eot?t6m9v3'); - src: url('../fonts/algolia-website-iconfont.eot?t6m9v3#iefix') format('embedded-opentype'), - url('../fonts/algolia-website-iconfont.ttf?t6m9v3') format('truetype'), - url('../fonts/algolia-website-iconfont.woff?t6m9v3') format('woff'), - url('../fonts/algolia-website-iconfont.svg?t6m9v3#algolia-website-iconfont') format('svg'); - font-weight: normal; - font-style: normal; -} - -[class^="icon-"], [class*=" icon-"] { - /* use !important to prevent issues with browser extensions that change fonts */ - font-family: 'algolia-website-iconfont' !important; - speak: none; - font-style: normal; - font-weight: normal; - font-variant: normal; - text-transform: none; - line-height: 1; - - /* Better Font Rendering =========== */ - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -.icon-arrow-left:before { - content: "\e906"; -} -.icon-arrow-right:before { - content: "\e907"; -} -.icon-quote:before { - content: "\e948"; -} -.icon-play:before { - content: "\e947"; -} -.icon-blog:before { - content: "\e900"; -} -.icon-stories:before { - content: "\e901"; -} -.icon-add:before { - content: "\e902"; -} -.icon-algolia-mark:before { - content: "\e903"; -} -.icon-analytics:before { - content: "\e904"; -} -.icon-android:before { - content: "\e905"; -} -.icon-calendar:before { - content: "\e908"; -} -.icon-caret-down:before { - content: "\e909"; -} -.icon-caret-left:before { - content: "\e90a"; -} -.icon-caret-right:before { - content: "\e90b"; -} -.icon-caret-top:before { - content: "\e90c"; -} -.icon-cart:before { - content: "\e90d"; -} -.icon-check-circle:before { - content: "\e90e"; -} -.icon-check:before { - content: "\e90f"; -} -.icon-clear:before { - content: "\e910"; -} -.icon-clock:before { - content: "\e911"; -} -.icon-close:before { - content: "\e912"; -} -.icon-code:before { - content: "\e913"; -} -.icon-comment:before { - content: "\e914"; -} -.icon-copy:before { - content: "\e915"; -} -.icon-docs:before { - content: "\e916"; -} -.icon-download:before { - content: "\e917"; -} -.icon-dribbble:before { - content: "\e918"; -} -.icon-email:before { - content: "\e919"; -} -.icon-facebook:before { - content: "\e91a"; -} -.icon-facet:before { - content: "\e91b"; -} -.icon-fav:before { - content: "\e91c"; -} -.icon-file:before { - content: "\e91d"; -} -.icon-filters:before { - content: "\e91e"; -} -.icon-geo-unknow:before { - content: "\e91f"; -} -.icon-geoloc:before { - content: "\e920"; -} -.icon-github:before { - content: "\e921"; -} -.icon-heart:before { - content: "\e922"; -} -.icon-heroku:before { - content: "\e923"; -} -.icon-highlight:before { - content: "\e924"; -} -.icon-home:before { - content: "\e925"; -} -.icon-hot:before { - content: "\e926"; -} -.icon-index:before { - content: "\e927"; -} -.icon-infinite:before { - content: "\e928"; -} -.icon-medium:before { - content: "\e929"; -} -.icon-ios:before { - content: "\e92a"; -} -.icon-jsfiddle:before { - content: "\e92b"; -} -.icon-link:before { - content: "\e92c"; -} -.icon-linkedin:before { - content: "\e92d"; -} -.icon-lock:before { - content: "\e92e"; -} -.icon-logout:before { - content: "\e92f"; -} -.icon-magento:before { - content: "\e930"; -} -.icon-instagram:before { - content: "\e931"; -} -.icon-menu:before { - content: "\e932"; -} -.icon-more:before { - content: "\e933"; -} -.icon-move:before { - content: "\e934"; -} -.icon-offline:before { - content: "\e935"; -} -.icon-opensource:before { - content: "\e936"; -} -.icon-pdf:before { - content: "\e937"; -} -.icon-quotes:before { - content: "\e938"; -} -.icon-ranking:before { - content: "\e939"; -} -.icon-refresh:before { - content: "\e93a"; -} -.icon-scissors:before { - content: "\e93b"; -} -.icon-search:before { - content: "\e93c"; -} -.icon-select:before { - content: "\e93d"; -} -.icon-support:before { - content: "\e93e"; -} -.icon-sync:before { - content: "\e93f"; -} -.icon-transition:before { - content: "\e940"; -} -.icon-twitter:before { - content: "\e941"; -} -.icon-typo:before { - content: "\e942"; -} -.icon-wordpress:before { - content: "\e943"; -} -.icon-youtube:before { - content: "\e944"; -} -.icon-zap:before { - content: "\e945"; -} -.icon-zendesk:before { - content: "\e946"; -} \ No newline at end of file diff --git a/docs/source/assets/stylesheets/_footer.sass b/docs/source/assets/stylesheets/_footer.sass deleted file mode 100644 index c661249b..00000000 --- a/docs/source/assets/stylesheets/_footer.sass +++ /dev/null @@ -1,117 +0,0 @@ -$footer-shade-1: #2E2A51 -$footer-shade-2: #1F1C3F -$footer-shade-3: #12102E - - -#footer - position: relative - - - @include diagonal(-4deg, $footer-shade-2, 130px, after) - bottom: 120px - left: 0 - - .credits - text-align: center - position: relative - background-color: $footer-shade-3 - color: $portage - z-index: 99 - line-height: 40px - @include diagonal(-2deg, $footer-shade-3, 80px, before) - top: -40px - left: 0 - - @media (max-width: $screen-md) - margin-top: 40px - - h4 - line-height: 40px - border-bottom: solid 1px rgba($portage,.5) - - .footer-nav - li - line-height: 1.7em - a - color: $portage - font-size: .9em - &:hover - color: $algolia-blue - text-decoration: none - - .network-links - margin: 0 - padding: 0 - li - display: inline-block - padding: 0 - margin: 0 - text-align: center - margin: .5em .2em .5em 0 - .btn - color: $portage - width: 38px - line-height: 40px - max-height: 38px - font-size: 24px - padding: 0 - border: solid 1px rgba($portage,.4) - &:hover - color: white - - .newsletter-signup - position: relative - - .mc-signupmessage - width: 100% - height: 100% - background-color: $white - position: absolute - z-index: 1 - display: none - pointer-events: none - opacity: 0 - transition: 400ms ease-in-out - - svg - width: 15px - margin-left: 4px - vertical-align: middle - - .form-control - border-radius: 20px - line-height: 40px - padding: 0 16px - height: 40px - border: none - width: 230px - - @media (max-width: $screen-md) - width: 180px !important - - &--success - .mc-signupmessage - animation: fadeIn 200ms ease-in-out forwards - display: block - -@keyframes fadeIn - from - opacity: 0 - to - opacity: 1 - -.search-icon, -.arrow-icon - margin-left: 1em - width: 22px - height: 42px - vertical-align: middle - - @media (max-width: $screen-sm) - display: none - - -.arrow-icon - width: 16px - use - fill: $bunting \ No newline at end of file diff --git a/docs/source/assets/stylesheets/_forms.scss b/docs/source/assets/stylesheets/_forms.scss deleted file mode 100644 index e2af894f..00000000 --- a/docs/source/assets/stylesheets/_forms.scss +++ /dev/null @@ -1,11 +0,0 @@ -.input-group-addon, -.form-control { - border-color: rgba(157, 157, 189, 0.37) !important -} - - -input.form-control { - @include placeholder { - color: $logan !important; - } -} \ No newline at end of file diff --git a/docs/source/assets/stylesheets/_helper.scss b/docs/source/assets/stylesheets/_helper.scss deleted file mode 100644 index 929bf69d..00000000 --- a/docs/source/assets/stylesheets/_helper.scss +++ /dev/null @@ -1,317 +0,0 @@ -//spacer -@mixin spacer { - width: 100%; - font-size: 0; - margin: 0; - padding: 0; - border: 0; - display: block; } - -.spacer5 { - @include spacer; - height: 5px; } -.spacer10 { - @include spacer; - height: 10px; } -.spacer15 { - @include spacer; - height: 15px; } -.spacer20 { - @include spacer; - height: 20px; } -.spacer25 { - @include spacer; - height: 25px; } -.spacer30 { - @include spacer; - height: 30px; } -.spacer35 { - @include spacer; - height: 35px; } -.spacer40 { - @include spacer; - height: 40px; } -.spacer45 { - @include spacer; - height: 45px; } -.spacer50 { - @include spacer; - height: 50px; } -.spacer60 { - @include spacer; - height: 60px; } -.spacer80 { - @include spacer; - height: 80px; } -.spacer100 { - @include spacer; - height: 100px; } -.spacer200 { - @include spacer; - height: 200px; } - -//width -.w100 { - width: 100px; } -.w150 { - width: 150px; } -.w200 { - width: 200px; } -.m100 { - max-width: 100px; } -.m200 { - max-width: 200px; } -.m300 { - max-width: 300px; } -.m400 { - max-width: 400px; } -.m500 { - max-width: 500px; } -.m600 { - max-width: 600px; } -.m700 { - max-width: 700px; } -.m800 { - max-width: 800px; } -.m900 { - max-width: 900px; } -.m1000 { - max-width: 1000px; } -.m1200 { - max-width: 1200px; } -.m100p { - max-width: 100%; } - -//height -.h100 { - height: 100px; } -.h200 { - height: 200px; } -.h300 { - height: 300px; } -.h500 { - height: 500px; } -.hfull { - height: 100%; } - -// positions -.pos-rel { - position: relative; } -.pos-stc { - position: static; } -.pos-abt { - position: absolute; } - - -//font size -.text-xxl { - font-size: 50px; } -.text-xl { - font-size: 32px; } -.text-lg { - font-size: 20px; } -.text-sm { - font-size: 12px; } -.text-xs { - font-size: 10px; } - -// pull -.pull-in { - margin-left: -15px; - margin-right: -15px; } -.pull-out { - margin: -15px; } - -//borders -.b-t { - border-top: 1px solid $secondary-color; } -.b-r { - border-right: 1px solid $secondary-color; } -.b-b { - border-bottom: 1px solid $secondary-color; } -.b-l { - border-left: 1px solid $secondary-color; } - -//padding -.padder { - padding: 0 15px; } -.p-small { - padding: 10px; } -.p-large { - padding: 20px; } -.p-xlarge { - padding: 30px; } -.p-l-large { - padding-left: 20px; } -.p-l-xlarge { - padding-left: 30px; } -.p-r-large { - padding-right: 20px; } -.p-r-xlarge { - padding-right: 30px; } -.p-l-xxlarge { - padding-left: 60px; } -.p-r-xxlarge { - padding-right: 60px; } - -//margin -.m-l-r-auto { - margin-left: auto; - margin-right: auto; } -.m-l { - margin-left: 15px; } -.m-l-none { - margin-left: 0; } -.m-l-mini { - margin-left: 5px; } -.m-l-small { - margin-left: 10px; } -.m-l-large { - margin-left: 20px; } -.m-l-n { - margin-left: -15px; } -.m-l-n-mini { - margin-left: -5px; } -.m-l-n-small { - margin-left: -10px; } -.m-l-n-large { - margin-left: -20px; } -.m-t { - margin-top: 15px; } -.m-t-none { - margin-top: 0; } -.m-t-mini { - margin-top: 5px; } -.m-t-small { - margin-top: 10px; } -.m-t-large { - margin-top: 20px; } -.m-t-n { - margin-top: -15px; } -.m-t-n-xmini { - margin-top: -1px; } -.m-t-n-mini { - margin-top: -5px; } -.m-t-n-small { - margin-top: -10px; } -.m-t-n-large { - margin-top: -20px; } -.m-r { - margin-right: 15px; } -.m-r-none { - margin-right: 0; } -.m-r-mini { - margin-right: 5px; } -.m-r-small { - margin-right: 10px; } -.m-r-large { - margin-right: 20px; } -.m-r-n { - margin-right: -15px; } -.m-r-n-mini { - margin-right: -5px; } -.m-r-n-small { - margin-right: -10px; } -.m-r-n-large { - margin-right: -20px; } -.m-b { - margin-bottom: 15px; } -.m-b-none { - margin-bottom: 0; } -.m-b-mini { - margin-bottom: 5px; } -.m-b-small { - margin-bottom: 10px; } -.m-b-large { - margin-bottom: 20px; } -.m-b-n { - margin-bottom: -15px; } -.m-b-n-mini { - margin-bottom: -5px; } -.m-b-n-small { - margin-bottom: -10px; } -.m-b-n-large { - margin-bottom: -20px; } - -// text -.text-justify { - text-align: justify; } -.vertical-align-middle { - display: inline-block !important; - vertical-align: middle !important; } -.text-ellipsis { - white-space: nowrap; - overflow: hidden; - max-width: 100%; - text-overflow: ellipsis; } -.text-break-word { - word-wrap: break-word; } -.nowrap { - word-wrap: nowrap; - white-space: nowrap; } - -//line -.line { - width: 100%; - height: 1px; - margin: 10px 0; - font-size: 0; - overflow: hidden; - border-width: 0; - background-color: $secondary-color; } -.line-dashed { - border-style: dashed; - background: transparent; } - -.no-line { - border-width: 0; } -.no-border { - border-color: transparent !important; } -.no-radius { - border-radius: 0; } -.block { - display: block; } -.inline { - display: inline-block; } -.pull-none { - float: none; } - -.line-v { - border-left: 1px solid #dddddd; - padding-left: 20px; } -.line-v-right { - border-right: 1px solid #dddddd; - padding-right: 20px; } - - -// others -.clickable { - cursor: pointer; } - -.content-box { - @include box-sizing(content-box); } - -.faded { - opacity: .3; } - -// CSS for and -sub, sup { - font-size: 50%; - line-height: 0; - position: relative; - vertical-align: baseline; } - -sup { - top: -0.7em; } - -sub { - bottom: -0.25em; } - -[ng\:cloak], [ng-cloak], .ng-cloak { - display: none !important; } - -.text-white { - color: #FFFFFF; } - -.bg-white { - background-color: white; } diff --git a/docs/source/assets/stylesheets/_mixin.scss b/docs/source/assets/stylesheets/_mixin.scss deleted file mode 100644 index 251bb0d4..00000000 --- a/docs/source/assets/stylesheets/_mixin.scss +++ /dev/null @@ -1,24 +0,0 @@ -@mixin position($top: null, $right: null, $bottom: null, $left: null) { - top: $top; - right: $right; - bottom: $bottom; - left: $left; } - -@mixin keyframes($animation-name) { - @-webkit-keyframes #{$animation-name} { - @content; } - @-moz-keyframes #{$animation-name} { - @content; } - @-ms-keyframes #{$animation-name} { - @content; } - @-o-keyframes #{$animation-name} { - @content; } - @keyframes #{$animation-name} { - @content; } } - -@mixin placeholder { - &::-webkit-input-placeholder {@content} - &:-moz-placeholder {@content} - &::-moz-placeholder {@content} - &:-ms-input-placeholder {@content} -} \ No newline at end of file diff --git a/docs/source/assets/stylesheets/_navigation.scss b/docs/source/assets/stylesheets/_navigation.scss deleted file mode 100644 index 12eecd62..00000000 --- a/docs/source/assets/stylesheets/_navigation.scss +++ /dev/null @@ -1,26 +0,0 @@ -.algc-navigation { - a { - -webkit-font-smoothing: unset; - &:hover { - text-decoration: none; - } - } - - input:not(#searchbox) { - display: none; - - } -} - -.algc-dropdownroot__widelist li h4 { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - width: 70%; - display: block; -} - -.algc-menu__search--holder.open input[type="search"] { - background-color: rgba(255, 255, 255, 0.2) !important; -} - diff --git a/docs/source/assets/stylesheets/_page.scss b/docs/source/assets/stylesheets/_page.scss deleted file mode 100644 index 1b1d1d22..00000000 --- a/docs/source/assets/stylesheets/_page.scss +++ /dev/null @@ -1,244 +0,0 @@ -* { - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -// Hero -.jumbotron .col-md-7 { - .demo-screen { - position: absolute; - right: 1em; - } - #demo-screens { - opacity: 0; - transform: translateY(100px); - transition: opacity 0.3s ease, transform 0.3s ease; - will-change: opacity, transform; - } -} - -body.ready .col-md-7 #demo-screens { - opacity: 1; - transform: translateY(0) -} - - -@media (max-width: $screen-md) { - .col-md-7 { - height: 500px; - } - - .jumbotron .col-md-7 { - .demo-screen { - position: relative; - right: 0; - } - } - - .col-md-5 { - margin-bottom: 120px; - } - - .col-md-12 header { - img { - max-width: 100%; - } - } -} - -@media (max-width: $screen-md) { - .jumbotron.h800 { - height: auto; - } - .col-md-7 { - height: auto; - } -} - -// Join form -.join-form { - max-width: 440px; - @media (max-width: $screen-md) { - max-width: 100%; - } - @media (max-width: $screen-sm) { - top: 120px; - } -} -.join-form .input-group-addon { - vertical-align: middle; -} -.input-group .form-control { - border-radius: 3px -} - -// Section Why -#section_why { - &:before, - &:after { - content: ''; - display: block; - position: absolute; - width: 100%; - height: 300px; - background: #fff; - transform: skewY(-3deg); - z-index: 0; - top: -100px; - } - - &:after { - top: inherit; - bottom: -100px; - } - - - @media (max-width: $screen-md) { - text-align: center; - - } -} - - -// Showcase - -#section_examples h3 { - opacity: 0.75; -} - -.showcase .logo { - max-height: 40px -} - -.showcase .screen-wrapper { - height: 180px; -} - -.showcase img { - height: auto; -} - -.showcase .screen-wrapper:hover .screen-mask { - display: none; -} - -.showcase .screen-mask { - top: 0; - left: 0; - width: 100%; - height: 100%; - object-fit: cover; - object-position: center; -} - -.showcase .col-md-4, -.showcase .col-md-8 { - height: 60px; - line-height: 40px; -} - -.showcase p { - white-space: nowrap; - overflow: hidden; - max-width: 100%; - text-overflow: ellipsis; -} - -.showcase.you { - - .placeholder-screen { - width: 100%; - height: 100%; - border: dotted 2px #a0b4d1 - } -} - -@media ( max-width: $screen-sm ) { - .showcase .h300 { - height: auto; - } - .showcase .col-md-8 { - height: auto; - } - .showcase .col-sm-12 { - display: block !important; - text-align: center; - - .logo { - margin-top: 1em; - } - } -} - - - -// Section How -#section_how { - &:before, - &:after { - content: ''; - display: block; - position: absolute; - width: 100%; - height: 300px; - background: #fff; - transform: skewY(-3deg); - z-index: 1; - top: -100px; - } - - &:after { - top: inherit; - bottom: -100px; - } -} - -.how-it-works-number { - display: block; - height: 32px; - width: 30px; - float: left; - font-size: 50px; - line-height: 0.8; - font-weight: 400; -} - - - -// Section Get started -#section_get-started { - - header p { - opacity: 0.75; - } - - .join-form { - color: #fff !important; - background-image: linear-gradient(283deg, #050f2c, #3e396b); - - } - - .join-form { - h3, label { - color: #fff !important - } - - p { - color: rgba(white, 0.75) !important - } - - .btn { - background-image: linear-gradient(256deg, #ff6c5f, #ff4f81) !important; - - } - } -} - - - -// Responsive -@media (max-width: $screen-md) { - p { - padding: 0 1em; - } -} \ No newline at end of file diff --git a/docs/source/assets/stylesheets/_searchbar.scss b/docs/source/assets/stylesheets/_searchbar.scss deleted file mode 100644 index 49ae7242..00000000 --- a/docs/source/assets/stylesheets/_searchbar.scss +++ /dev/null @@ -1,202 +0,0 @@ -$custom:( - input-width: 190px, - input-height: 36px, - border-width: 2px, - border-radius: 18px, - input-border-color: darken(#1D96C7,10%), - input-focus-border-color: #1D96C7, - input-background: #091724, - input-focus-background: #091724, - font-size: 13px, - placeholder-color: #AAAAAA, - icon-size: 16px, - icon-position: left, - icon-color: #1D96C7, - icon-background: #FFFFFF, - icon-background-opacity: 0, - icon-clear-size: 12px, -); - -@mixin searchbox( - $input-width: 500px, - $input-height: 40px, - $border-width: 1px, - $border-radius: 3px, - $input-border-color: #ccc, - $input-focus-border-color: darken($input-border-color, 15%), - $input-background: #fff, - $input-focus-background: $input-background, - $font-size: 14px, - $placeholder-color: #aaa, - $icon-size: 18px, - $icon-position: right, - $icon-color: #fff, - $icon-background: #3e82f7, - $icon-background-opacity: 1, - $icon-clear-size: 12px, - $font-family: "Open Sans" -) { - display: inline-block; - position: relative; - height: $input-height; - white-space: nowrap; - box-sizing: border-box; - - &__input { - display: inline-block; - transition: box-shadow .4s ease, background .4s ease; - border: 0; - border-radius: $border-radius; - box-shadow: inset 0 0 0 $border-width $input-border-color; - background: $input-background; - padding: 0; - height: 100%; - width: $input-height; - vertical-align: middle; - white-space: normal; - font-size: $font-size; - appearance: none; - font-family: $font-family; - opacity: .5; - color: transparent; - - &::-webkit-input-placeholder{ - color: transparent; - } - &::placeholder{ - color: transparent; - } - - &::-webkit-search-decoration, - &::-webkit-search-cancel-button, - &::-webkit-search-results-button, - &::-webkit-search-results-decoration { - display: none; - } - - &:hover { - box-shadow: inset 0 0 0 $border-width darken($input-border-color, 10%); - } - - &:focus, - &:active, - &.filled { - outline: 0; - padding-right: if($icon-position == 'right', $input-height, 0) + $icon-clear-size * 2 + 8px; - padding-left: if($icon-position == 'right', $font-size, $input-height + if($icon-background-opacity == 0, 0, 8px)); - width: 100%; - box-shadow: inset 0 0 0 $border-width $input-focus-border-color; - background: $input-focus-background; - opacity: 1; - color: white; - &::-webkit-input-placeholder{ - color: #777; - } - &::placeholder{ - color: #777; - } - // color: white; - } - } - - &__submit { - position: absolute; - top: 0; - pointer-events: none; - #{$icon-position}: 0; - margin: 0; - border: 0; - border-radius: if($icon-position == 'right', 0 $border-radius $border-radius 0, $border-radius 0 0 $border-radius); - background-color: rgba($icon-background, $icon-background-opacity); - padding: 0; - width: $input-height; - height: 100%; - vertical-align: middle; - text-align: center; - user-select: none; - - // Helper for vertical alignment of the icon - &::before { - display: inline-block; - margin-right: -4px; - height: 100%; - vertical-align: middle; - content: ''; - } - - &:hover, - &:active { - cursor: pointer; - } - - &:focus { - outline: 0; - } - - svg { - width: $icon-size; - height: $icon-size; - vertical-align: middle; - fill: $icon-color; - } - } - - &__reset { - position: absolute; - top: ($input-height - $icon-clear-size) / 2 - 4px; - right: if($icon-position == 'right', 8px + $input-height, ($input-height - $icon-clear-size) / 2) - 4px; - margin: 0; - border: 0; - background: none; - cursor: pointer; - padding: 0; - user-select: none; - - &.hide{ - display: none; - } - - &:focus { - outline: 0; - } - - svg { - display: block; - margin: 4px; - width: $icon-clear-size; - height: $icon-clear-size; - fill: $icon-color; - } - } - - &__input:valid ~ &__reset { - display: block; - animation-name: sbx-reset-in; - animation-duration: .15s; - } - - @keyframes sbx-reset-in { - from { - transform: translate3d(-20%, 0, 0); - opacity: 0; - } - - to { - transform: none; - opacity: 1; - } - } -} - -.sbx-custom{ - @include searchbox($custom...); -} - -.site-header .navbar .navbar-nav > li.searchbar-wrapper { - margin: 0; - padding: 0 -} - -.algolia-autocomplete { - display: inline !important; -} diff --git a/docs/source/assets/stylesheets/_sidebar.scss b/docs/source/assets/stylesheets/_sidebar.scss deleted file mode 100644 index 4f0b7a72..00000000 --- a/docs/source/assets/stylesheets/_sidebar.scss +++ /dev/null @@ -1,11 +0,0 @@ -.documentation { - aside { - top: 56px; - padding-top: 38px; - border-right-color: $ghost; - - @media (max-width: 768px) { - display: none - } - } -} \ No newline at end of file diff --git a/docs/source/assets/stylesheets/_syntax-highlighting.scss b/docs/source/assets/stylesheets/_syntax-highlighting.scss deleted file mode 100644 index cf6414e8..00000000 --- a/docs/source/assets/stylesheets/_syntax-highlighting.scss +++ /dev/null @@ -1,78 +0,0 @@ -/* Solarized Dark - -For use with Jekyll and Pygments - -http://ethanschoonover.com/solarized - -SOLARIZED HEX ROLE ---------- -------- ------------------------------------------ -base03 #002b36 background -base01 #586e75 comments / secondary content -base1 #93a1a1 body text / default code / primary content -orange #cb4b16 constants -red #dc322f regex, special keywords -blue #268bd2 reserved keywords -cyan #2aa198 strings, numbers -green #859900 operators, other keywords -*/ - -.highlight .hll { background-color: #49483e } -.highlight { /*background: #272822;*/ color: #f8f8f2 } -.highlight .c { color: #75715e } /* Comment */ -.highlight .err { color: #960050; background-color: #1e0010 } /* Error */ -.highlight .k { color: #66d9ef } /* Keyword */ -.highlight .l { color: #ae81ff } /* Literal */ -.highlight .n { color: #f8f8f2 } /* Name */ -.highlight .o { color: #f92672 } /* Operator */ -.highlight .p { color: #f8f8f2 } /* Punctuation */ -.highlight .cm { color: #75715e } /* Comment.Multiline */ -.highlight .cp { color: #75715e } /* Comment.Preproc */ -.highlight .c1 { color: #75715e } /* Comment.Single */ -.highlight .cs { color: #75715e } /* Comment.Special */ -.highlight .ge { font-style: italic } /* Generic.Emph */ -.highlight .gs { font-weight: bold } /* Generic.Strong */ -.highlight .kc { color: #66d9ef } /* Keyword.Constant */ -.highlight .kd { color: #66d9ef } /* Keyword.Declaration */ -.highlight .kn { color: #f92672 } /* Keyword.Namespace */ -.highlight .kp { color: #66d9ef } /* Keyword.Pseudo */ -.highlight .kr { color: #66d9ef } /* Keyword.Reserved */ -.highlight .kt { color: #66d9ef } /* Keyword.Type */ -.highlight .ld { color: #e6db74 } /* Literal.Date */ -.highlight .m { color: #ae81ff } /* Literal.Number */ -.highlight .s { color: #e6db74 } /* Literal.String */ -.highlight .na { color: #a6e22e } /* Name.Attribute */ -.highlight .nb { color: #f8f8f2 } /* Name.Builtin */ -.highlight .nc { color: #a6e22e } /* Name.Class */ -.highlight .no { color: #66d9ef } /* Name.Constant */ -.highlight .nd { color: #a6e22e } /* Name.Decorator */ -.highlight .ni { color: #f8f8f2 } /* Name.Entity */ -.highlight .ne { color: #a6e22e } /* Name.Exception */ -.highlight .nf { color: #a6e22e } /* Name.Function */ -.highlight .nl { color: #f8f8f2 } /* Name.Label */ -.highlight .nn { color: #f8f8f2 } /* Name.Namespace */ -.highlight .nx { color: #a6e22e } /* Name.Other */ -.highlight .py { color: #f8f8f2 } /* Name.Property */ -.highlight .nt { color: #f92672 } /* Name.Tag */ -.highlight .nv { color: #f8f8f2 } /* Name.Variable */ -.highlight .ow { color: #f92672 } /* Operator.Word */ -.highlight .w { color: #f8f8f2 } /* Text.Whitespace */ -.highlight .mf { color: #ae81ff } /* Literal.Number.Float */ -.highlight .mh { color: #ae81ff } /* Literal.Number.Hex */ -.highlight .mi { color: #ae81ff } /* Literal.Number.Integer */ -.highlight .mo { color: #ae81ff } /* Literal.Number.Oct */ -.highlight .sb { color: #e6db74 } /* Literal.String.Backtick */ -.highlight .sc { color: #e6db74 } /* Literal.String.Char */ -.highlight .sd { color: #e6db74 } /* Literal.String.Doc */ -.highlight .s2 { color: #e6db74 } /* Literal.String.Double */ -.highlight .se { color: #ae81ff } /* Literal.String.Escape */ -.highlight .sh { color: #e6db74 } /* Literal.String.Heredoc */ -.highlight .si { color: #e6db74 } /* Literal.String.Interpol */ -.highlight .sx { color: #e6db74 } /* Literal.String.Other */ -.highlight .sr { color: #e6db74 } /* Literal.String.Regex */ -.highlight .s1 { color: #e6db74 } /* Literal.String.Single */ -.highlight .ss { color: #e6db74 } /* Literal.String.Symbol */ -.highlight .bp { color: #f8f8f2 } /* Name.Builtin.Pseudo */ -.highlight .vc { color: #f8f8f2 } /* Name.Variable.Class */ -.highlight .vg { color: #f8f8f2 } /* Name.Variable.Global */ -.highlight .vi { color: #f8f8f2 } /* Name.Variable.Instance */ -.highlight .il { color: #ae81ff } /* Literal.Number.Integer.Long */ \ No newline at end of file diff --git a/docs/source/assets/stylesheets/bootstrap/_alerts.scss b/docs/source/assets/stylesheets/bootstrap/_alerts.scss deleted file mode 100644 index 7d1e1fdd..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_alerts.scss +++ /dev/null @@ -1,73 +0,0 @@ -// -// Alerts -// -------------------------------------------------- - - -// Base styles -// ------------------------- - -.alert { - padding: $alert-padding; - margin-bottom: $line-height-computed; - border: 1px solid transparent; - border-radius: $alert-border-radius; - - // Headings for larger alerts - h4 { - margin-top: 0; - // Specified for the h4 to prevent conflicts of changing $headings-color - color: inherit; - } - - // Provide class for links that match alerts - .alert-link { - font-weight: $alert-link-font-weight; - } - - // Improve alignment and spacing of inner content - > p, - > ul { - margin-bottom: 0; - } - - > p + p { - margin-top: 5px; - } -} - -// Dismissible alerts -// -// Expand the right padding and account for the close button's positioning. - -.alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0. -.alert-dismissible { - padding-right: ($alert-padding + 20); - - // Adjust close link position - .close { - position: relative; - top: -2px; - right: -21px; - color: inherit; - } -} - -// Alternate styles -// -// Generate contextual modifier classes for colorizing the alert. - -.alert-success { - @include alert-variant($alert-success-bg, $alert-success-border, $alert-success-text); -} - -.alert-info { - @include alert-variant($alert-info-bg, $alert-info-border, $alert-info-text); -} - -.alert-warning { - @include alert-variant($alert-warning-bg, $alert-warning-border, $alert-warning-text); -} - -.alert-danger { - @include alert-variant($alert-danger-bg, $alert-danger-border, $alert-danger-text); -} diff --git a/docs/source/assets/stylesheets/bootstrap/_badges.scss b/docs/source/assets/stylesheets/bootstrap/_badges.scss deleted file mode 100644 index 70002e08..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_badges.scss +++ /dev/null @@ -1,68 +0,0 @@ -// -// Badges -// -------------------------------------------------- - - -// Base class -.badge { - display: inline-block; - min-width: 10px; - padding: 3px 7px; - font-size: $font-size-small; - font-weight: $badge-font-weight; - color: $badge-color; - line-height: $badge-line-height; - vertical-align: middle; - white-space: nowrap; - text-align: center; - background-color: $badge-bg; - border-radius: $badge-border-radius; - - // Empty badges collapse automatically (not available in IE8) - &:empty { - display: none; - } - - // Quick fix for badges in buttons - .btn & { - position: relative; - top: -1px; - } - - .btn-xs &, - .btn-group-xs > .btn & { - top: 0; - padding: 1px 5px; - } - - // [converter] extracted a& to a.badge - - // Account for badges in navs - .list-group-item.active > &, - .nav-pills > .active > a > & { - color: $badge-active-color; - background-color: $badge-active-bg; - } - - .list-group-item > & { - float: right; - } - - .list-group-item > & + & { - margin-right: 5px; - } - - .nav-pills > li > a > & { - margin-left: 3px; - } -} - -// Hover state, but only for links -a.badge { - &:hover, - &:focus { - color: $badge-link-hover-color; - text-decoration: none; - cursor: pointer; - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_breadcrumbs.scss b/docs/source/assets/stylesheets/bootstrap/_breadcrumbs.scss deleted file mode 100644 index 3641e333..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_breadcrumbs.scss +++ /dev/null @@ -1,26 +0,0 @@ -// -// Breadcrumbs -// -------------------------------------------------- - - -.breadcrumb { - padding: $breadcrumb-padding-vertical $breadcrumb-padding-horizontal; - margin-bottom: $line-height-computed; - list-style: none; - background-color: $breadcrumb-bg; - border-radius: $border-radius-base; - - > li { - display: inline-block; - - + li:before { - content: "#{$breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space - padding: 0 5px; - color: $breadcrumb-color; - } - } - - > .active { - color: $breadcrumb-active-color; - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_button-groups.scss b/docs/source/assets/stylesheets/bootstrap/_button-groups.scss deleted file mode 100644 index 43d235c4..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_button-groups.scss +++ /dev/null @@ -1,244 +0,0 @@ -// -// Button groups -// -------------------------------------------------- - -// Make the div behave like a button -.btn-group, -.btn-group-vertical { - position: relative; - display: inline-block; - vertical-align: middle; // match .btn alignment given font-size hack above - > .btn { - position: relative; - float: left; - // Bring the "active" button to the front - &:hover, - &:focus, - &:active, - &.active { - z-index: 2; - } - } -} - -// Prevent double borders when buttons are next to each other -.btn-group { - .btn + .btn, - .btn + .btn-group, - .btn-group + .btn, - .btn-group + .btn-group { - margin-left: -1px; - } -} - -// Optional: Group multiple button groups together for a toolbar -.btn-toolbar { - margin-left: -5px; // Offset the first child's margin - @include clearfix; - - .btn, - .btn-group, - .input-group { - float: left; - } - > .btn, - > .btn-group, - > .input-group { - margin-left: 5px; - } -} - -.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { - border-radius: 0; -} - -// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match -.btn-group > .btn:first-child { - margin-left: 0; - &:not(:last-child):not(.dropdown-toggle) { - @include border-right-radius(0); - } -} -// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it -.btn-group > .btn:last-child:not(:first-child), -.btn-group > .dropdown-toggle:not(:first-child) { - @include border-left-radius(0); -} - -// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group) -.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, - > .dropdown-toggle { - @include border-right-radius(0); - } -} -.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { - @include border-left-radius(0); -} - -// On active and open, don't show outline -.btn-group .dropdown-toggle:active, -.btn-group.open .dropdown-toggle { - outline: 0; -} - - -// Sizing -// -// Remix the default button sizing classes into new ones for easier manipulation. - -.btn-group-xs > .btn { @extend .btn-xs; } -.btn-group-sm > .btn { @extend .btn-sm; } -.btn-group-lg > .btn { @extend .btn-lg; } - - -// Split button dropdowns -// ---------------------- - -// Give the line between buttons some depth -.btn-group > .btn + .dropdown-toggle { - padding-left: 8px; - padding-right: 8px; -} -.btn-group > .btn-lg + .dropdown-toggle { - padding-left: 12px; - padding-right: 12px; -} - -// The clickable button for toggling the menu -// Remove the gradient and set the same inset shadow as the :active state -.btn-group.open .dropdown-toggle { - @include box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); - - // Show no shadow for `.btn-link` since it has no other button styles. - &.btn-link { - @include box-shadow(none); - } -} - - -// Reposition the caret -.btn .caret { - margin-left: 0; -} -// Carets in other button sizes -.btn-lg .caret { - border-width: $caret-width-large $caret-width-large 0; - border-bottom-width: 0; -} -// Upside down carets for .dropup -.dropup .btn-lg .caret { - border-width: 0 $caret-width-large $caret-width-large; -} - - -// Vertical button groups -// ---------------------- - -.btn-group-vertical { - > .btn, - > .btn-group, - > .btn-group > .btn { - display: block; - float: none; - width: 100%; - max-width: 100%; - } - - // Clear floats so dropdown menus can be properly placed - > .btn-group { - @include clearfix; - > .btn { - float: none; - } - } - - > .btn + .btn, - > .btn + .btn-group, - > .btn-group + .btn, - > .btn-group + .btn-group { - margin-top: -1px; - margin-left: 0; - } -} - -.btn-group-vertical > .btn { - &:not(:first-child):not(:last-child) { - border-radius: 0; - } - &:first-child:not(:last-child) { - border-top-right-radius: $btn-border-radius-base; - @include border-bottom-radius(0); - } - &:last-child:not(:first-child) { - border-bottom-left-radius: $btn-border-radius-base; - @include border-top-radius(0); - } -} -.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, - > .dropdown-toggle { - @include border-bottom-radius(0); - } -} -.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { - @include border-top-radius(0); -} - - -// Justified button groups -// ---------------------- - -.btn-group-justified { - display: table; - width: 100%; - table-layout: fixed; - border-collapse: separate; - > .btn, - > .btn-group { - float: none; - display: table-cell; - width: 1%; - } - > .btn-group .btn { - width: 100%; - } - - > .btn-group .dropdown-menu { - left: auto; - } -} - - -// Checkbox and radio options -// -// In order to support the browser's form validation feedback, powered by the -// `required` attribute, we have to "hide" the inputs via `clip`. We cannot use -// `display: none;` or `visibility: hidden;` as that also hides the popover. -// Simply visually hiding the inputs via `opacity` would leave them clickable in -// certain cases which is prevented by using `clip` and `pointer-events`. -// This way, we ensure a DOM element is visible to position the popover from. -// -// See https://github.com/twbs/bootstrap/pull/12794 and -// https://github.com/twbs/bootstrap/pull/14559 for more information. - -[data-toggle="buttons"] { - > .btn, - > .btn-group > .btn { - input[type="radio"], - input[type="checkbox"] { - position: absolute; - clip: rect(0,0,0,0); - pointer-events: none; - } - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_buttons.scss b/docs/source/assets/stylesheets/bootstrap/_buttons.scss deleted file mode 100644 index 6452b709..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_buttons.scss +++ /dev/null @@ -1,168 +0,0 @@ -// -// Buttons -// -------------------------------------------------- - - -// Base styles -// -------------------------------------------------- - -.btn { - display: inline-block; - margin-bottom: 0; // For input.btn - font-weight: $btn-font-weight; - text-align: center; - vertical-align: middle; - touch-action: manipulation; - cursor: pointer; - background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 - border: 1px solid transparent; - white-space: nowrap; - @include button-size($padding-base-vertical, $padding-base-horizontal, $font-size-base, $line-height-base, $btn-border-radius-base); - @include user-select(none); - - &, - &:active, - &.active { - &:focus, - &.focus { - @include tab-focus; - } - } - - &:hover, - &:focus, - &.focus { - color: $btn-default-color; - text-decoration: none; - } - - &:active, - &.active { - outline: 0; - background-image: none; - @include box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); - } - - &.disabled, - &[disabled], - fieldset[disabled] & { - cursor: $cursor-disabled; - @include opacity(.65); - @include box-shadow(none); - } - - // [converter] extracted a& to a.btn -} - -a.btn { - &.disabled, - fieldset[disabled] & { - pointer-events: none; // Future-proof disabling of clicks on `` elements - } -} - - -// Alternate buttons -// -------------------------------------------------- - -.btn-default { - @include button-variant($btn-default-color, $btn-default-bg, $btn-default-border); -} -.btn-primary { - @include button-variant($btn-primary-color, $btn-primary-bg, $btn-primary-border); -} -// Success appears as green -.btn-success { - @include button-variant($btn-success-color, $btn-success-bg, $btn-success-border); -} -// Info appears as blue-green -.btn-info { - @include button-variant($btn-info-color, $btn-info-bg, $btn-info-border); -} -// Warning appears as orange -.btn-warning { - @include button-variant($btn-warning-color, $btn-warning-bg, $btn-warning-border); -} -// Danger and error appear as red -.btn-danger { - @include button-variant($btn-danger-color, $btn-danger-bg, $btn-danger-border); -} - - -// Link buttons -// ------------------------- - -// Make a button look and behave like a link -.btn-link { - color: $link-color; - font-weight: normal; - border-radius: 0; - - &, - &:active, - &.active, - &[disabled], - fieldset[disabled] & { - background-color: transparent; - @include box-shadow(none); - } - &, - &:hover, - &:focus, - &:active { - border-color: transparent; - } - &:hover, - &:focus { - color: $link-hover-color; - text-decoration: $link-hover-decoration; - background-color: transparent; - } - &[disabled], - fieldset[disabled] & { - &:hover, - &:focus { - color: $btn-link-disabled-color; - text-decoration: none; - } - } -} - - -// Button Sizes -// -------------------------------------------------- - -.btn-lg { - // line-height: ensure even-numbered height of button next to large input - @include button-size($padding-large-vertical, $padding-large-horizontal, $font-size-large, $line-height-large, $btn-border-radius-large); -} -.btn-sm { - // line-height: ensure proper height of button next to small input - @include button-size($padding-small-vertical, $padding-small-horizontal, $font-size-small, $line-height-small, $btn-border-radius-small); -} -.btn-xs { - @include button-size($padding-xs-vertical, $padding-xs-horizontal, $font-size-small, $line-height-small, $btn-border-radius-small); -} - - -// Block button -// -------------------------------------------------- - -.btn-block { - display: block; - width: 100%; -} - -// Vertically space out multiple block buttons -.btn-block + .btn-block { - margin-top: 5px; -} - -// Specificity overrides -input[type="submit"], -input[type="reset"], -input[type="button"] { - &.btn-block { - width: 100%; - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_carousel.scss b/docs/source/assets/stylesheets/bootstrap/_carousel.scss deleted file mode 100644 index f7006780..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_carousel.scss +++ /dev/null @@ -1,269 +0,0 @@ -// -// Carousel -// -------------------------------------------------- - - -// Wrapper for the slide container and indicators -.carousel { - position: relative; -} - -.carousel-inner { - position: relative; - overflow: hidden; - width: 100%; - - > .item { - display: none; - position: relative; - @include transition(.6s ease-in-out left); - - // Account for jankitude on images - > img, - > a > img { - @include img-responsive; - line-height: 1; - } - - // WebKit CSS3 transforms for supported devices - @media all and (transform-3d), (-webkit-transform-3d) { - @include transition-transform(0.6s ease-in-out); - @include backface-visibility(hidden); - @include perspective(1000px); - - &.next, - &.active.right { - @include translate3d(100%, 0, 0); - left: 0; - } - &.prev, - &.active.left { - @include translate3d(-100%, 0, 0); - left: 0; - } - &.next.left, - &.prev.right, - &.active { - @include translate3d(0, 0, 0); - left: 0; - } - } - } - - > .active, - > .next, - > .prev { - display: block; - } - - > .active { - left: 0; - } - - > .next, - > .prev { - position: absolute; - top: 0; - width: 100%; - } - - > .next { - left: 100%; - } - > .prev { - left: -100%; - } - > .next.left, - > .prev.right { - left: 0; - } - - > .active.left { - left: -100%; - } - > .active.right { - left: 100%; - } - -} - -// Left/right controls for nav -// --------------------------- - -.carousel-control { - position: absolute; - top: 0; - left: 0; - bottom: 0; - width: $carousel-control-width; - @include opacity($carousel-control-opacity); - font-size: $carousel-control-font-size; - color: $carousel-control-color; - text-align: center; - text-shadow: $carousel-text-shadow; - // We can't have this transition here because WebKit cancels the carousel - // animation if you trip this while in the middle of another animation. - - // Set gradients for backgrounds - &.left { - @include gradient-horizontal($start-color: rgba(0,0,0,.5), $end-color: rgba(0,0,0,.0001)); - } - &.right { - left: auto; - right: 0; - @include gradient-horizontal($start-color: rgba(0,0,0,.0001), $end-color: rgba(0,0,0,.5)); - } - - // Hover/focus state - &:hover, - &:focus { - outline: 0; - color: $carousel-control-color; - text-decoration: none; - @include opacity(.9); - } - - // Toggles - .icon-prev, - .icon-next, - .glyphicon-chevron-left, - .glyphicon-chevron-right { - position: absolute; - top: 50%; - margin-top: -10px; - z-index: 5; - display: inline-block; - } - .icon-prev, - .glyphicon-chevron-left { - left: 50%; - margin-left: -10px; - } - .icon-next, - .glyphicon-chevron-right { - right: 50%; - margin-right: -10px; - } - .icon-prev, - .icon-next { - width: 20px; - height: 20px; - line-height: 1; - font-family: serif; - } - - - .icon-prev { - &:before { - content: '\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039) - } - } - .icon-next { - &:before { - content: '\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A) - } - } -} - -// Optional indicator pips -// -// Add an unordered list with the following class and add a list item for each -// slide your carousel holds. - -.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; - - li { - display: inline-block; - width: 10px; - height: 10px; - margin: 1px; - text-indent: -999px; - border: 1px solid $carousel-indicator-border-color; - border-radius: 10px; - cursor: pointer; - - // IE8-9 hack for event handling - // - // Internet Explorer 8-9 does not support clicks on elements without a set - // `background-color`. We cannot use `filter` since that's not viewed as a - // background color by the browser. Thus, a hack is needed. - // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Internet_Explorer - // - // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we - // set alpha transparency for the best results possible. - background-color: #000 \9; // IE8 - background-color: rgba(0,0,0,0); // IE9 - } - .active { - margin: 0; - width: 12px; - height: 12px; - background-color: $carousel-indicator-active-bg; - } -} - -// Optional captions -// ----------------------------- -// Hidden by default for smaller viewports -.carousel-caption { - position: absolute; - left: 15%; - right: 15%; - bottom: 20px; - z-index: 10; - padding-top: 20px; - padding-bottom: 20px; - color: $carousel-caption-color; - text-align: center; - text-shadow: $carousel-text-shadow; - & .btn { - text-shadow: none; // No shadow for button elements in carousel-caption - } -} - - -// Scale up controls for tablets and up -@media screen and (min-width: $screen-sm-min) { - - // Scale up the controls a smidge - .carousel-control { - .glyphicon-chevron-left, - .glyphicon-chevron-right, - .icon-prev, - .icon-next { - width: 30px; - height: 30px; - margin-top: -15px; - font-size: 30px; - } - .glyphicon-chevron-left, - .icon-prev { - margin-left: -15px; - } - .glyphicon-chevron-right, - .icon-next { - margin-right: -15px; - } - } - - // Show and left align the captions - .carousel-caption { - left: 20%; - right: 20%; - padding-bottom: 30px; - } - - // Move up the indicators - .carousel-indicators { - bottom: 20px; - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_close.scss b/docs/source/assets/stylesheets/bootstrap/_close.scss deleted file mode 100644 index 3b74d8a9..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_close.scss +++ /dev/null @@ -1,36 +0,0 @@ -// -// Close icons -// -------------------------------------------------- - - -.close { - float: right; - font-size: ($font-size-base * 1.5); - font-weight: $close-font-weight; - line-height: 1; - color: $close-color; - text-shadow: $close-text-shadow; - @include opacity(.2); - - &:hover, - &:focus { - color: $close-color; - text-decoration: none; - cursor: pointer; - @include opacity(.5); - } - - // [converter] extracted button& to button.close -} - -// Additional properties for button version -// iOS requires the button element instead of an anchor tag. -// If you want the anchor version, it requires `href="#"`. -// See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile -button.close { - padding: 0; - cursor: pointer; - background: transparent; - border: 0; - -webkit-appearance: none; -} diff --git a/docs/source/assets/stylesheets/bootstrap/_code.scss b/docs/source/assets/stylesheets/bootstrap/_code.scss deleted file mode 100644 index caa5f063..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_code.scss +++ /dev/null @@ -1,69 +0,0 @@ -// -// Code (inline and block) -// -------------------------------------------------- - - -// Inline and block code styles -code, -kbd, -pre, -samp { - font-family: $font-family-monospace; -} - -// Inline code -code { - padding: 2px 4px; - font-size: 90%; - color: $code-color; - background-color: $code-bg; - border-radius: $border-radius-base; -} - -// User input typically entered via keyboard -kbd { - padding: 2px 4px; - font-size: 90%; - color: $kbd-color; - background-color: $kbd-bg; - border-radius: $border-radius-small; - box-shadow: inset 0 -1px 0 rgba(0,0,0,.25); - - kbd { - padding: 0; - font-size: 100%; - font-weight: bold; - box-shadow: none; - } -} - -// Blocks of code -pre { - display: block; - padding: (($line-height-computed - 1) / 2); - margin: 0 0 ($line-height-computed / 2); - font-size: ($font-size-base - 1); // 14px to 13px - line-height: $line-height-base; - word-break: break-all; - word-wrap: break-word; - color: $pre-color; - background-color: $pre-bg; - border: 1px solid $pre-border-color; - border-radius: $border-radius-base; - - // Account for some code outputs that place code tags in pre tags - code { - padding: 0; - font-size: inherit; - color: inherit; - white-space: pre-wrap; - background-color: transparent; - border-radius: 0; - } -} - -// Enable scrollable blocks of code -.pre-scrollable { - max-height: $pre-scrollable-max-height; - overflow-y: scroll; -} diff --git a/docs/source/assets/stylesheets/bootstrap/_component-animations.scss b/docs/source/assets/stylesheets/bootstrap/_component-animations.scss deleted file mode 100644 index ca3b43ca..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_component-animations.scss +++ /dev/null @@ -1,37 +0,0 @@ -// -// Component animations -// -------------------------------------------------- - -// Heads up! -// -// We don't use the `.opacity()` mixin here since it causes a bug with text -// fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552. - -.fade { - opacity: 0; - @include transition(opacity .15s linear); - &.in { - opacity: 1; - } -} - -.collapse { - display: none; - - &.in { display: block; } - // [converter] extracted tr&.in to tr.collapse.in - // [converter] extracted tbody&.in to tbody.collapse.in -} - -tr.collapse.in { display: table-row; } - -tbody.collapse.in { display: table-row-group; } - -.collapsing { - position: relative; - height: 0; - overflow: hidden; - @include transition-property(height, visibility); - @include transition-duration(.35s); - @include transition-timing-function(ease); -} diff --git a/docs/source/assets/stylesheets/bootstrap/_dropdowns.scss b/docs/source/assets/stylesheets/bootstrap/_dropdowns.scss deleted file mode 100644 index aac84597..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_dropdowns.scss +++ /dev/null @@ -1,216 +0,0 @@ -// -// Dropdown menus -// -------------------------------------------------- - - -// Dropdown arrow/caret -.caret { - display: inline-block; - width: 0; - height: 0; - margin-left: 2px; - vertical-align: middle; - border-top: $caret-width-base dashed; - border-top: $caret-width-base solid \9; // IE8 - border-right: $caret-width-base solid transparent; - border-left: $caret-width-base solid transparent; -} - -// The dropdown wrapper (div) -.dropup, -.dropdown { - position: relative; -} - -// Prevent the focus on the dropdown toggle when closing dropdowns -.dropdown-toggle:focus { - outline: 0; -} - -// The dropdown menu (ul) -.dropdown-menu { - position: absolute; - top: 100%; - left: 0; - z-index: $zindex-dropdown; - display: none; // none by default, but block on "open" of the menu - float: left; - min-width: 160px; - padding: 5px 0; - margin: 2px 0 0; // override default ul - list-style: none; - font-size: $font-size-base; - text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer) - background-color: $dropdown-bg; - border: 1px solid $dropdown-fallback-border; // IE8 fallback - border: 1px solid $dropdown-border; - border-radius: $border-radius-base; - @include box-shadow(0 6px 12px rgba(0,0,0,.175)); - background-clip: padding-box; - - // Aligns the dropdown menu to right - // - // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]` - &.pull-right { - right: 0; - left: auto; - } - - // Dividers (basically an hr) within the dropdown - .divider { - @include nav-divider($dropdown-divider-bg); - } - - // Links within the dropdown menu - > li > a { - display: block; - padding: 3px 20px; - clear: both; - font-weight: normal; - line-height: $line-height-base; - color: $dropdown-link-color; - white-space: nowrap; // prevent links from randomly breaking onto new lines - } -} - -// Hover/Focus state -.dropdown-menu > li > a { - &:hover, - &:focus { - text-decoration: none; - color: $dropdown-link-hover-color; - background-color: $dropdown-link-hover-bg; - } -} - -// Active state -.dropdown-menu > .active > a { - &, - &:hover, - &:focus { - color: $dropdown-link-active-color; - text-decoration: none; - outline: 0; - background-color: $dropdown-link-active-bg; - } -} - -// Disabled state -// -// Gray out text and ensure the hover/focus state remains gray - -.dropdown-menu > .disabled > a { - &, - &:hover, - &:focus { - color: $dropdown-link-disabled-color; - } - - // Nuke hover/focus effects - &:hover, - &:focus { - text-decoration: none; - background-color: transparent; - background-image: none; // Remove CSS gradient - @include reset-filter; - cursor: $cursor-disabled; - } -} - -// Open state for the dropdown -.open { - // Show the menu - > .dropdown-menu { - display: block; - } - - // Remove the outline when :focus is triggered - > a { - outline: 0; - } -} - -// Menu positioning -// -// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown -// menu with the parent. -.dropdown-menu-right { - left: auto; // Reset the default from `.dropdown-menu` - right: 0; -} -// With v3, we enabled auto-flipping if you have a dropdown within a right -// aligned nav component. To enable the undoing of that, we provide an override -// to restore the default dropdown menu alignment. -// -// This is only for left-aligning a dropdown menu within a `.navbar-right` or -// `.pull-right` nav component. -.dropdown-menu-left { - left: 0; - right: auto; -} - -// Dropdown section headers -.dropdown-header { - display: block; - padding: 3px 20px; - font-size: $font-size-small; - line-height: $line-height-base; - color: $dropdown-header-color; - white-space: nowrap; // as with > li > a -} - -// Backdrop to catch body clicks on mobile, etc. -.dropdown-backdrop { - position: fixed; - left: 0; - right: 0; - bottom: 0; - top: 0; - z-index: ($zindex-dropdown - 10); -} - -// Right aligned dropdowns -.pull-right > .dropdown-menu { - right: 0; - left: auto; -} - -// Allow for dropdowns to go bottom up (aka, dropup-menu) -// -// Just add .dropup after the standard .dropdown class and you're set, bro. -// TODO: abstract this so that the navbar fixed styles are not placed here? - -.dropup, -.navbar-fixed-bottom .dropdown { - // Reverse the caret - .caret { - border-top: 0; - border-bottom: $caret-width-base dashed; - border-bottom: $caret-width-base solid \9; // IE8 - content: ""; - } - // Different positioning for bottom up menu - .dropdown-menu { - top: auto; - bottom: 100%; - margin-bottom: 2px; - } -} - - -// Component alignment -// -// Reiterate per navbar.less and the modified component alignment there. - -@media (min-width: $grid-float-breakpoint) { - .navbar-right { - .dropdown-menu { - right: 0; left: auto; - } - // Necessary for overrides of the default right aligned menu. - // Will remove come v4 in all likelihood. - .dropdown-menu-left { - left: 0; right: auto; - } - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_forms.scss b/docs/source/assets/stylesheets/bootstrap/_forms.scss deleted file mode 100644 index de4befdb..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_forms.scss +++ /dev/null @@ -1,611 +0,0 @@ -// -// Forms -// -------------------------------------------------- - - -// Normalize non-controls -// -// Restyle and baseline non-control form elements. - -fieldset { - padding: 0; - margin: 0; - border: 0; - // Chrome and Firefox set a `min-width: min-content;` on fieldsets, - // so we reset that to ensure it behaves more like a standard block element. - // See https://github.com/twbs/bootstrap/issues/12359. - min-width: 0; -} - -legend { - display: block; - width: 100%; - padding: 0; - margin-bottom: $line-height-computed; - font-size: ($font-size-base * 1.5); - line-height: inherit; - color: $legend-color; - border: 0; - border-bottom: 1px solid $legend-border-color; -} - -label { - display: inline-block; - max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141) - margin-bottom: 5px; - font-weight: bold; -} - - -// Normalize form controls -// -// While most of our form styles require extra classes, some basic normalization -// is required to ensure optimum display with or without those classes to better -// address browser inconsistencies. - -// Override content-box in Normalize (* isn't specific enough) -input[type="search"] { - @include box-sizing(border-box); -} - -// Position radios and checkboxes better -input[type="radio"], -input[type="checkbox"] { - margin: 4px 0 0; - margin-top: 1px \9; // IE8-9 - line-height: normal; -} - -input[type="file"] { - display: block; -} - -// Make range inputs behave like textual form controls -input[type="range"] { - display: block; - width: 100%; -} - -// Make multiple select elements height not fixed -select[multiple], -select[size] { - height: auto; -} - -// Focus for file, radio, and checkbox -input[type="file"]:focus, -input[type="radio"]:focus, -input[type="checkbox"]:focus { - @include tab-focus; -} - -// Adjust output element -output { - display: block; - padding-top: ($padding-base-vertical + 1); - font-size: $font-size-base; - line-height: $line-height-base; - color: $input-color; -} - - -// Common form controls -// -// Shared size and type resets for form controls. Apply `.form-control` to any -// of the following form controls: -// -// select -// textarea -// input[type="text"] -// input[type="password"] -// input[type="datetime"] -// input[type="datetime-local"] -// input[type="date"] -// input[type="month"] -// input[type="time"] -// input[type="week"] -// input[type="number"] -// input[type="email"] -// input[type="url"] -// input[type="search"] -// input[type="tel"] -// input[type="color"] - -.form-control { - display: block; - width: 100%; - height: $input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border) - padding: $padding-base-vertical $padding-base-horizontal; - font-size: $font-size-base; - line-height: $line-height-base; - color: $input-color; - background-color: $input-bg; - background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 - border: 1px solid $input-border; - border-radius: $input-border-radius; // Note: This has no effect on s in CSS. - @include box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); - @include transition(border-color ease-in-out .15s, box-shadow ease-in-out .15s); - - // Customize the `:focus` state to imitate native WebKit styles. - @include form-control-focus; - - // Placeholder - @include placeholder; - - // Disabled and read-only inputs - // - // HTML5 says that controls under a fieldset > legend:first-child won't be - // disabled if the fieldset is disabled. Due to implementation difficulty, we - // don't honor that edge case; we style them as disabled anyway. - &[disabled], - &[readonly], - fieldset[disabled] & { - background-color: $input-bg-disabled; - opacity: 1; // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655 - } - - &[disabled], - fieldset[disabled] & { - cursor: $cursor-disabled; - } - - // [converter] extracted textarea& to textarea.form-control -} - -// Reset height for `textarea`s -textarea.form-control { - height: auto; -} - - -// Search inputs in iOS -// -// This overrides the extra rounded corners on search inputs in iOS so that our -// `.form-control` class can properly style them. Note that this cannot simply -// be added to `.form-control` as it's not specific enough. For details, see -// https://github.com/twbs/bootstrap/issues/11586. - -input[type="search"] { - -webkit-appearance: none; -} - - -// Special styles for iOS temporal inputs -// -// In Mobile Safari, setting `display: block` on temporal inputs causes the -// text within the input to become vertically misaligned. As a workaround, we -// set a pixel line-height that matches the given height of the input, but only -// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848 -// -// Note that as of 8.3, iOS doesn't support `datetime` or `week`. - -@media screen and (-webkit-min-device-pixel-ratio: 0) { - input[type="date"], - input[type="time"], - input[type="datetime-local"], - input[type="month"] { - &.form-control { - line-height: $input-height-base; - } - - &.input-sm, - .input-group-sm & { - line-height: $input-height-small; - } - - &.input-lg, - .input-group-lg & { - line-height: $input-height-large; - } - } -} - - -// Form groups -// -// Designed to help with the organization and spacing of vertical forms. For -// horizontal forms, use the predefined grid classes. - -.form-group { - margin-bottom: $form-group-margin-bottom; -} - - -// Checkboxes and radios -// -// Indent the labels to position radios/checkboxes as hanging controls. - -.radio, -.checkbox { - position: relative; - display: block; - margin-top: 10px; - margin-bottom: 10px; - - label { - min-height: $line-height-computed; // Ensure the input doesn't jump when there is no text - 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; // Move up sibling radios or checkboxes for tighter spacing -} - -// Radios and checkboxes on same line -.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; // space out consecutive inline controls -} - -// Apply same disabled cursor tweak as for inputs -// Some special care is needed because Star - -@at-root { - // Import the fonts - @font-face { - font-family: 'Glyphicons Halflings'; - src: url(if($bootstrap-sass-asset-helper, twbs-font-path('#{$icon-font-path}#{$icon-font-name}.eot'), '#{$icon-font-path}#{$icon-font-name}.eot')); - src: url(if($bootstrap-sass-asset-helper, twbs-font-path('#{$icon-font-path}#{$icon-font-name}.eot?#iefix'), '#{$icon-font-path}#{$icon-font-name}.eot?#iefix')) format('embedded-opentype'), - url(if($bootstrap-sass-asset-helper, twbs-font-path('#{$icon-font-path}#{$icon-font-name}.woff2'), '#{$icon-font-path}#{$icon-font-name}.woff2')) format('woff2'), - url(if($bootstrap-sass-asset-helper, twbs-font-path('#{$icon-font-path}#{$icon-font-name}.woff'), '#{$icon-font-path}#{$icon-font-name}.woff')) format('woff'), - url(if($bootstrap-sass-asset-helper, twbs-font-path('#{$icon-font-path}#{$icon-font-name}.ttf'), '#{$icon-font-path}#{$icon-font-name}.ttf')) format('truetype'), - url(if($bootstrap-sass-asset-helper, twbs-font-path('#{$icon-font-path}#{$icon-font-name}.svg##{$icon-font-svg-id}'), '#{$icon-font-path}#{$icon-font-name}.svg##{$icon-font-svg-id}')) format('svg'); - } -} - -// Catchall baseclass -.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; -} - -// Individual icons -.glyphicon-asterisk { &:before { content: "\2a"; } } -.glyphicon-plus { &:before { content: "\2b"; } } -.glyphicon-euro, -.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"; } } -// The following 2 Glyphicons are omitted for the time being because -// they currently use Unicode codepoints that are outside the -// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle -// non-BMP codepoints in CSS string escapes, and thus can't display these two icons. -// Notably, the bug affects some older versions of the Android Browser. -// More info: https://github.com/twbs/bootstrap/issues/10106 -// .glyphicon-door { &:before { content: "\1f6aa"; } } -// .glyphicon-key { &:before { content: "\1f511"; } } -.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"; } } diff --git a/docs/source/assets/stylesheets/bootstrap/_grid.scss b/docs/source/assets/stylesheets/bootstrap/_grid.scss deleted file mode 100644 index b15ca27b..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_grid.scss +++ /dev/null @@ -1,84 +0,0 @@ -// -// Grid system -// -------------------------------------------------- - - -// Container widths -// -// Set the container width, and override it for fixed navbars in media queries. - -.container { - @include container-fixed; - - @media (min-width: $screen-sm-min) { - width: $container-sm; - } - @media (min-width: $screen-md-min) { - width: $container-md; - } - @media (min-width: $screen-lg-min) { - width: $container-lg; - } -} - - -// Fluid container -// -// Utilizes the mixin meant for fixed width containers, but without any defined -// width for fluid, full width layouts. - -.container-fluid { - @include container-fixed; -} - - -// Row -// -// Rows contain and clear the floats of your columns. - -.row { - @include make-row; -} - - -// Columns -// -// Common styles for small and large grid columns - -@include make-grid-columns; - - -// Extra small grid -// -// Columns, offsets, pushes, and pulls for extra small devices like -// smartphones. - -@include make-grid(xs); - - -// Small grid -// -// Columns, offsets, pushes, and pulls for the small device range, from phones -// to tablets. - -@media (min-width: $screen-sm-min) { - @include make-grid(sm); -} - - -// Medium grid -// -// Columns, offsets, pushes, and pulls for the desktop device range. - -@media (min-width: $screen-md-min) { - @include make-grid(md); -} - - -// Large grid -// -// Columns, offsets, pushes, and pulls for the large desktop device range. - -@media (min-width: $screen-lg-min) { - @include make-grid(lg); -} diff --git a/docs/source/assets/stylesheets/bootstrap/_input-groups.scss b/docs/source/assets/stylesheets/bootstrap/_input-groups.scss deleted file mode 100644 index 12f0c428..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_input-groups.scss +++ /dev/null @@ -1,167 +0,0 @@ -// -// Input groups -// -------------------------------------------------- - -// Base styles -// ------------------------- -.input-group { - position: relative; // For dropdowns - display: table; - border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table - - // Undo padding and float of grid classes - &[class*="col-"] { - float: none; - padding-left: 0; - padding-right: 0; - } - - .form-control { - // Ensure that the input is always above the *appended* addon button for - // proper border colors. - position: relative; - z-index: 2; - - // IE9 fubars the placeholder attribute in text inputs and the arrows on - // select elements in input groups. To fix it, we float the input. Details: - // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855 - float: left; - - width: 100%; - margin-bottom: 0; - } -} - -// Sizing options -// -// Remix the default form control sizing classes into new ones for easier -// manipulation. - -.input-group-lg > .form-control, -.input-group-lg > .input-group-addon, -.input-group-lg > .input-group-btn > .btn { - @extend .input-lg; -} -.input-group-sm > .form-control, -.input-group-sm > .input-group-addon, -.input-group-sm > .input-group-btn > .btn { - @extend .input-sm; -} - - -// Display as table-cell -// ------------------------- -.input-group-addon, -.input-group-btn, -.input-group .form-control { - display: table-cell; - - &:not(:first-child):not(:last-child) { - border-radius: 0; - } -} -// Addon and addon wrapper for buttons -.input-group-addon, -.input-group-btn { - width: 1%; - white-space: nowrap; - vertical-align: middle; // Match the inputs -} - -// Text input groups -// ------------------------- -.input-group-addon { - padding: $padding-base-vertical $padding-base-horizontal; - font-size: $font-size-base; - font-weight: normal; - line-height: 1; - color: $input-color; - text-align: center; - background-color: $input-group-addon-bg; - border: 1px solid $input-group-addon-border-color; - border-radius: $border-radius-base; - - // Sizing - &.input-sm { - padding: $padding-small-vertical $padding-small-horizontal; - font-size: $font-size-small; - border-radius: $border-radius-small; - } - &.input-lg { - padding: $padding-large-vertical $padding-large-horizontal; - font-size: $font-size-large; - border-radius: $border-radius-large; - } - - // Nuke default margins from checkboxes and radios to vertically center within. - input[type="radio"], - input[type="checkbox"] { - margin-top: 0; - } -} - -// Reset rounded corners -.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 { - @include border-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 { - @include border-left-radius(0); -} -.input-group-addon:last-child { - border-left: 0; -} - -// Button input groups -// ------------------------- -.input-group-btn { - position: relative; - // Jankily prevent input button groups from wrapping with `white-space` and - // `font-size` in combination with `inline-block` on buttons. - font-size: 0; - white-space: nowrap; - - // Negative margin for spacing, position for bringing hovered/focused/actived - // element above the siblings. - > .btn { - position: relative; - + .btn { - margin-left: -1px; - } - // Bring the "active" button to the front - &:hover, - &:focus, - &:active { - z-index: 2; - } - } - - // Negative margin to only have a 1px border between the two - &:first-child { - > .btn, - > .btn-group { - margin-right: -1px; - } - } - &:last-child { - > .btn, - > .btn-group { - z-index: 2; - margin-left: -1px; - } - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_jumbotron.scss b/docs/source/assets/stylesheets/bootstrap/_jumbotron.scss deleted file mode 100644 index 439d23de..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_jumbotron.scss +++ /dev/null @@ -1,52 +0,0 @@ -// -// Jumbotron -// -------------------------------------------------- - - -.jumbotron { - padding-top: $jumbotron-padding; - padding-bottom: $jumbotron-padding; - margin-bottom: $jumbotron-padding; - color: $jumbotron-color; - background-color: $jumbotron-bg; - - h1, - .h1 { - color: $jumbotron-heading-color; - } - - p { - margin-bottom: ($jumbotron-padding / 2); - font-size: $jumbotron-font-size; - font-weight: 200; - } - - > hr { - border-top-color: darken($jumbotron-bg, 10%); - } - - .container &, - .container-fluid & { - border-radius: $border-radius-large; // Only round corners at higher resolutions if contained in a container - } - - .container { - max-width: 100%; - } - - @media screen and (min-width: $screen-sm-min) { - padding-top: ($jumbotron-padding * 1.6); - padding-bottom: ($jumbotron-padding * 1.6); - - .container &, - .container-fluid & { - padding-left: ($jumbotron-padding * 2); - padding-right: ($jumbotron-padding * 2); - } - - h1, - .h1 { - font-size: $jumbotron-heading-font-size; - } - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_labels.scss b/docs/source/assets/stylesheets/bootstrap/_labels.scss deleted file mode 100644 index 42ed6ea1..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_labels.scss +++ /dev/null @@ -1,66 +0,0 @@ -// -// Labels -// -------------------------------------------------- - -.label { - display: inline; - padding: .2em .6em .3em; - font-size: 75%; - font-weight: bold; - line-height: 1; - color: $label-color; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: .25em; - - // [converter] extracted a& to a.label - - // Empty labels collapse automatically (not available in IE8) - &:empty { - display: none; - } - - // Quick fix for labels in buttons - .btn & { - position: relative; - top: -1px; - } -} - -// Add hover effects, but only for links -a.label { - &:hover, - &:focus { - color: $label-link-hover-color; - text-decoration: none; - cursor: pointer; - } -} - -// Colors -// Contextual variations (linked labels get darker on :hover) - -.label-default { - @include label-variant($label-default-bg); -} - -.label-primary { - @include label-variant($label-primary-bg); -} - -.label-success { - @include label-variant($label-success-bg); -} - -.label-info { - @include label-variant($label-info-bg); -} - -.label-warning { - @include label-variant($label-warning-bg); -} - -.label-danger { - @include label-variant($label-danger-bg); -} diff --git a/docs/source/assets/stylesheets/bootstrap/_list-group.scss b/docs/source/assets/stylesheets/bootstrap/_list-group.scss deleted file mode 100644 index 7cb83aab..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_list-group.scss +++ /dev/null @@ -1,130 +0,0 @@ -// -// List groups -// -------------------------------------------------- - - -// Base class -// -// Easily usable on
      ,
        , or
        . - -.list-group { - // No need to set list-style: none; since .list-group-item is block level - margin-bottom: 20px; - padding-left: 0; // reset padding because ul and ol -} - - -// Individual list items -// -// Use on `li`s or `div`s within the `.list-group` parent. - -.list-group-item { - position: relative; - display: block; - padding: 10px 15px; - // Place the border on the list items and negative margin up for better styling - margin-bottom: -1px; - background-color: $list-group-bg; - border: 1px solid $list-group-border; - - // Round the first and last items - &:first-child { - @include border-top-radius($list-group-border-radius); - } - &:last-child { - margin-bottom: 0; - @include border-bottom-radius($list-group-border-radius); - } -} - - -// Interactive list items -// -// Use anchor or button elements instead of `li`s or `div`s to create interactive items. -// Includes an extra `.active` modifier class for showing selected items. - -a.list-group-item, -button.list-group-item { - color: $list-group-link-color; - - .list-group-item-heading { - color: $list-group-link-heading-color; - } - - // Hover state - &:hover, - &:focus { - text-decoration: none; - color: $list-group-link-hover-color; - background-color: $list-group-hover-bg; - } -} - -button.list-group-item { - width: 100%; - text-align: left; -} - -.list-group-item { - // Disabled state - &.disabled, - &.disabled:hover, - &.disabled:focus { - background-color: $list-group-disabled-bg; - color: $list-group-disabled-color; - cursor: $cursor-disabled; - - // Force color to inherit for custom content - .list-group-item-heading { - color: inherit; - } - .list-group-item-text { - color: $list-group-disabled-text-color; - } - } - - // Active class on item itself, not parent - &.active, - &.active:hover, - &.active:focus { - z-index: 2; // Place active items above their siblings for proper border styling - color: $list-group-active-color; - background-color: $list-group-active-bg; - border-color: $list-group-active-border; - - // Force color to inherit for custom content - .list-group-item-heading, - .list-group-item-heading > small, - .list-group-item-heading > .small { - color: inherit; - } - .list-group-item-text { - color: $list-group-active-text-color; - } - } -} - - -// Contextual variants -// -// Add modifier classes to change text and background color on individual items. -// Organizationally, this must come after the `:hover` states. - -@include list-group-item-variant(success, $state-success-bg, $state-success-text); -@include list-group-item-variant(info, $state-info-bg, $state-info-text); -@include list-group-item-variant(warning, $state-warning-bg, $state-warning-text); -@include list-group-item-variant(danger, $state-danger-bg, $state-danger-text); - - -// Custom content options -// -// Extra classes for creating well-formatted content within `.list-group-item`s. - -.list-group-item-heading { - margin-top: 0; - margin-bottom: 5px; -} -.list-group-item-text { - margin-bottom: 0; - line-height: 1.3; -} diff --git a/docs/source/assets/stylesheets/bootstrap/_media.scss b/docs/source/assets/stylesheets/bootstrap/_media.scss deleted file mode 100644 index 8c835e86..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_media.scss +++ /dev/null @@ -1,66 +0,0 @@ -.media { - // Proper spacing between instances of .media - margin-top: 15px; - - &:first-child { - margin-top: 0; - } -} - -.media, -.media-body { - zoom: 1; - overflow: hidden; -} - -.media-body { - width: 10000px; -} - -.media-object { - display: block; - - // Fix collapse in webkit from max-width: 100% and display: table-cell. - &.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; -} - -// Reset margins on headings for tighter default spacing -.media-heading { - margin-top: 0; - margin-bottom: 5px; -} - -// Media list variation -// -// Undo default ul/ol styles -.media-list { - padding-left: 0; - list-style: none; -} diff --git a/docs/source/assets/stylesheets/bootstrap/_mixins.scss b/docs/source/assets/stylesheets/bootstrap/_mixins.scss deleted file mode 100644 index 78cd5aa0..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_mixins.scss +++ /dev/null @@ -1,40 +0,0 @@ -// Mixins -// -------------------------------------------------- - -// Utilities -@import "mixins/hide-text"; -@import "mixins/opacity"; -@import "mixins/image"; -@import "mixins/labels"; -@import "mixins/reset-filter"; -@import "mixins/resize"; -@import "mixins/responsive-visibility"; -@import "mixins/size"; -@import "mixins/tab-focus"; -@import "mixins/reset-text"; -@import "mixins/text-emphasis"; -@import "mixins/text-overflow"; -@import "mixins/vendor-prefixes"; - -// Components -@import "mixins/alerts"; -@import "mixins/buttons"; -@import "mixins/panels"; -@import "mixins/pagination"; -@import "mixins/list-group"; -@import "mixins/nav-divider"; -@import "mixins/forms"; -@import "mixins/progress-bar"; -@import "mixins/table-row"; - -// Skins -@import "mixins/background-variant"; -@import "mixins/border-radius"; -@import "mixins/gradients"; - -// Layout -@import "mixins/clearfix"; -@import "mixins/center-block"; -@import "mixins/nav-vertical-align"; -@import "mixins/grid-framework"; -@import "mixins/grid"; diff --git a/docs/source/assets/stylesheets/bootstrap/_modals.scss b/docs/source/assets/stylesheets/bootstrap/_modals.scss deleted file mode 100644 index 837558e9..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_modals.scss +++ /dev/null @@ -1,150 +0,0 @@ -// -// Modals -// -------------------------------------------------- - -// .modal-open - body class for killing the scroll -// .modal - container to scroll within -// .modal-dialog - positioning shell for the actual modal -// .modal-content - actual modal w/ bg and corners and shit - -// Kill the scroll on the body -.modal-open { - overflow: hidden; -} - -// Container that the modal scrolls within -.modal { - display: none; - overflow: hidden; - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: $zindex-modal; - -webkit-overflow-scrolling: touch; - - // Prevent Chrome on Windows from adding a focus outline. For details, see - // https://github.com/twbs/bootstrap/pull/10951. - outline: 0; - - // When fading in the modal, animate it to slide down - &.fade .modal-dialog { - @include translate(0, -25%); - @include transition-transform(0.3s ease-out); - } - &.in .modal-dialog { @include translate(0, 0) } -} -.modal-open .modal { - overflow-x: hidden; - overflow-y: auto; -} - -// Shell div to position the modal with bottom padding -.modal-dialog { - position: relative; - width: auto; - margin: 10px; -} - -// Actual modal -.modal-content { - position: relative; - background-color: $modal-content-bg; - border: 1px solid $modal-content-fallback-border-color; //old browsers fallback (ie8 etc) - border: 1px solid $modal-content-border-color; - border-radius: $border-radius-large; - @include box-shadow(0 3px 9px rgba(0,0,0,.5)); - background-clip: padding-box; - // Remove focus outline from opened modal - outline: 0; -} - -// Modal background -.modal-backdrop { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: $zindex-modal-background; - background-color: $modal-backdrop-bg; - // Fade for backdrop - &.fade { @include opacity(0); } - &.in { @include opacity($modal-backdrop-opacity); } -} - -// Modal header -// Top section of the modal w/ title and dismiss -.modal-header { - padding: $modal-title-padding; - border-bottom: 1px solid $modal-header-border-color; - min-height: ($modal-title-padding + $modal-title-line-height); -} -// Close icon -.modal-header .close { - margin-top: -2px; -} - -// Title text within header -.modal-title { - margin: 0; - line-height: $modal-title-line-height; -} - -// Modal body -// Where all modal content resides (sibling of .modal-header and .modal-footer) -.modal-body { - position: relative; - padding: $modal-inner-padding; -} - -// Footer (for actions) -.modal-footer { - padding: $modal-inner-padding; - text-align: right; // right align buttons - border-top: 1px solid $modal-footer-border-color; - @include clearfix; // clear it in case folks use .pull-* classes on buttons - - // Properly space out buttons - .btn + .btn { - margin-left: 5px; - margin-bottom: 0; // account for input[type="submit"] which gets the bottom margin like all other inputs - } - // but override that for button groups - .btn-group .btn + .btn { - margin-left: -1px; - } - // and override it for block buttons as well - .btn-block + .btn-block { - margin-left: 0; - } -} - -// Measure scrollbar width for padding body during modal show/hide -.modal-scrollbar-measure { - position: absolute; - top: -9999px; - width: 50px; - height: 50px; - overflow: scroll; -} - -// Scale up the modal -@media (min-width: $screen-sm-min) { - // Automatically set modal's width for larger viewports - .modal-dialog { - width: $modal-md; - margin: 30px auto; - } - .modal-content { - @include box-shadow(0 5px 15px rgba(0,0,0,.5)); - } - - // Modal sizes - .modal-sm { width: $modal-sm; } -} - -@media (min-width: $screen-md-min) { - .modal-lg { width: $modal-lg; } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_navbar.scss b/docs/source/assets/stylesheets/bootstrap/_navbar.scss deleted file mode 100644 index 11e5c01c..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_navbar.scss +++ /dev/null @@ -1,662 +0,0 @@ -// -// Navbars -// -------------------------------------------------- - - -// Wrapper and base class -// -// Provide a static navbar from which we expand to create full-width, fixed, and -// other navbar variations. - -.navbar { - position: relative; - min-height: $navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode) - margin-bottom: $navbar-margin-bottom; - border: 1px solid transparent; - - // Prevent floats from breaking the navbar - @include clearfix; - - @media (min-width: $grid-float-breakpoint) { - border-radius: $navbar-border-radius; - } -} - - -// Navbar heading -// -// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy -// styling of responsive aspects. - -.navbar-header { - @include clearfix; - - @media (min-width: $grid-float-breakpoint) { - float: left; - } -} - - -// Navbar collapse (body) -// -// Group your navbar content into this for easy collapsing and expanding across -// various device sizes. By default, this content is collapsed when <768px, but -// will expand past that for a horizontal display. -// -// To start (on mobile devices) the navbar links, forms, and buttons are stacked -// vertically and include a `max-height` to overflow in case you have too much -// content for the user's viewport. - -.navbar-collapse { - overflow-x: visible; - padding-right: $navbar-padding-horizontal; - padding-left: $navbar-padding-horizontal; - border-top: 1px solid transparent; - box-shadow: inset 0 1px 0 rgba(255,255,255,.1); - @include clearfix; - -webkit-overflow-scrolling: touch; - - &.in { - overflow-y: auto; - } - - @media (min-width: $grid-float-breakpoint) { - width: auto; - border-top: 0; - box-shadow: none; - - &.collapse { - display: block !important; - height: auto !important; - padding-bottom: 0; // Override default setting - overflow: visible !important; - } - - &.in { - overflow-y: visible; - } - - // Undo the collapse side padding for navbars with containers to ensure - // alignment of right-aligned contents. - .navbar-fixed-top &, - .navbar-static-top &, - .navbar-fixed-bottom & { - padding-left: 0; - padding-right: 0; - } - } -} - -.navbar-fixed-top, -.navbar-fixed-bottom { - .navbar-collapse { - max-height: $navbar-collapse-max-height; - - @media (max-device-width: $screen-xs-min) and (orientation: landscape) { - max-height: 200px; - } - } -} - - -// Both navbar header and collapse -// -// When a container is present, change the behavior of the header and collapse. - -.container, -.container-fluid { - > .navbar-header, - > .navbar-collapse { - margin-right: -$navbar-padding-horizontal; - margin-left: -$navbar-padding-horizontal; - - @media (min-width: $grid-float-breakpoint) { - margin-right: 0; - margin-left: 0; - } - } -} - - -// -// Navbar alignment options -// -// Display the navbar across the entirety of the page or fixed it to the top or -// bottom of the page. - -// Static top (unfixed, but 100% wide) navbar -.navbar-static-top { - z-index: $zindex-navbar; - border-width: 0 0 1px; - - @media (min-width: $grid-float-breakpoint) { - border-radius: 0; - } -} - -// Fix the top/bottom navbars when screen real estate supports it -.navbar-fixed-top, -.navbar-fixed-bottom { - position: fixed; - right: 0; - left: 0; - z-index: $zindex-navbar-fixed; - - // Undo the rounded corners - @media (min-width: $grid-float-breakpoint) { - border-radius: 0; - } -} -.navbar-fixed-top { - top: 0; - border-width: 0 0 1px; -} -.navbar-fixed-bottom { - bottom: 0; - margin-bottom: 0; // override .navbar defaults - border-width: 1px 0 0; -} - - -// Brand/project name - -.navbar-brand { - float: left; - padding: $navbar-padding-vertical $navbar-padding-horizontal; - font-size: $font-size-large; - line-height: $line-height-computed; - height: $navbar-height; - - &:hover, - &:focus { - text-decoration: none; - } - - > img { - display: block; - } - - @media (min-width: $grid-float-breakpoint) { - .navbar > .container &, - .navbar > .container-fluid & { - margin-left: -$navbar-padding-horizontal; - } - } -} - - -// Navbar toggle -// -// Custom button for toggling the `.navbar-collapse`, powered by the collapse -// JavaScript plugin. - -.navbar-toggle { - position: relative; - float: right; - margin-right: $navbar-padding-horizontal; - padding: 9px 10px; - @include navbar-vertical-align(34px); - background-color: transparent; - background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 - border: 1px solid transparent; - border-radius: $border-radius-base; - - // We remove the `outline` here, but later compensate by attaching `:hover` - // styles to `:focus`. - &:focus { - outline: 0; - } - - // Bars - .icon-bar { - display: block; - width: 22px; - height: 2px; - border-radius: 1px; - } - .icon-bar + .icon-bar { - margin-top: 4px; - } - - @media (min-width: $grid-float-breakpoint) { - display: none; - } -} - - -// Navbar nav links -// -// Builds on top of the `.nav` components with its own modifier class to make -// the nav the full height of the horizontal nav (above 768px). - -.navbar-nav { - margin: ($navbar-padding-vertical / 2) (-$navbar-padding-horizontal); - - > li > a { - padding-top: 10px; - padding-bottom: 10px; - line-height: $line-height-computed; - } - - @media (max-width: $grid-float-breakpoint-max) { - // Dropdowns get custom display when collapsed - .open .dropdown-menu { - position: static; - float: none; - width: auto; - margin-top: 0; - background-color: transparent; - border: 0; - box-shadow: none; - > li > a, - .dropdown-header { - padding: 5px 15px 5px 25px; - } - > li > a { - line-height: $line-height-computed; - &:hover, - &:focus { - background-image: none; - } - } - } - } - - // Uncollapse the nav - @media (min-width: $grid-float-breakpoint) { - float: left; - margin: 0; - - > li { - float: left; - > a { - padding-top: $navbar-padding-vertical; - padding-bottom: $navbar-padding-vertical; - } - } - } -} - - -// Navbar form -// -// Extension of the `.form-inline` with some extra flavor for optimum display in -// our navbars. - -.navbar-form { - margin-left: -$navbar-padding-horizontal; - margin-right: -$navbar-padding-horizontal; - padding: 10px $navbar-padding-horizontal; - border-top: 1px solid transparent; - border-bottom: 1px solid transparent; - $shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1); - @include box-shadow($shadow); - - // Mixin behavior for optimum display - @include form-inline; - - .form-group { - @media (max-width: $grid-float-breakpoint-max) { - margin-bottom: 5px; - - &:last-child { - margin-bottom: 0; - } - } - } - - // Vertically center in expanded, horizontal navbar - @include navbar-vertical-align($input-height-base); - - // Undo 100% width for pull classes - @media (min-width: $grid-float-breakpoint) { - width: auto; - border: 0; - margin-left: 0; - margin-right: 0; - padding-top: 0; - padding-bottom: 0; - @include box-shadow(none); - } -} - - -// Dropdown menus - -// Menu position and menu carets -.navbar-nav > li > .dropdown-menu { - margin-top: 0; - @include border-top-radius(0); -} -// Menu position and menu caret support for dropups via extra dropup class -.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { - margin-bottom: 0; - @include border-top-radius($navbar-border-radius); - @include border-bottom-radius(0); -} - - -// Buttons in navbars -// -// Vertically center a button within a navbar (when *not* in a form). - -.navbar-btn { - @include navbar-vertical-align($input-height-base); - - &.btn-sm { - @include navbar-vertical-align($input-height-small); - } - &.btn-xs { - @include navbar-vertical-align(22); - } -} - - -// Text in navbars -// -// Add a class to make any element properly align itself vertically within the navbars. - -.navbar-text { - @include navbar-vertical-align($line-height-computed); - - @media (min-width: $grid-float-breakpoint) { - float: left; - margin-left: $navbar-padding-horizontal; - margin-right: $navbar-padding-horizontal; - } -} - - -// Component alignment -// -// Repurpose the pull utilities as their own navbar utilities to avoid specificity -// issues with parents and chaining. Only do this when the navbar is uncollapsed -// though so that navbar contents properly stack and align in mobile. -// -// Declared after the navbar components to ensure more specificity on the margins. - -@media (min-width: $grid-float-breakpoint) { - .navbar-left { - float: left !important; - } - .navbar-right { - float: right !important; - margin-right: -$navbar-padding-horizontal; - - ~ .navbar-right { - margin-right: 0; - } - } -} - - -// Alternate navbars -// -------------------------------------------------- - -// Default navbar -.navbar-default { - background-color: $navbar-default-bg; - border-color: $navbar-default-border; - - .navbar-brand { - color: $navbar-default-brand-color; - &:hover, - &:focus { - color: $navbar-default-brand-hover-color; - background-color: $navbar-default-brand-hover-bg; - } - } - - .navbar-text { - color: $navbar-default-color; - } - - .navbar-nav { - > li > a { - color: $navbar-default-link-color; - - &:hover, - &:focus { - color: $navbar-default-link-hover-color; - background-color: $navbar-default-link-hover-bg; - } - } - > .active > a { - &, - &:hover, - &:focus { - color: $navbar-default-link-active-color; - background-color: $navbar-default-link-active-bg; - } - } - > .disabled > a { - &, - &:hover, - &:focus { - color: $navbar-default-link-disabled-color; - background-color: $navbar-default-link-disabled-bg; - } - } - } - - .navbar-toggle { - border-color: $navbar-default-toggle-border-color; - &:hover, - &:focus { - background-color: $navbar-default-toggle-hover-bg; - } - .icon-bar { - background-color: $navbar-default-toggle-icon-bar-bg; - } - } - - .navbar-collapse, - .navbar-form { - border-color: $navbar-default-border; - } - - // Dropdown menu items - .navbar-nav { - // Remove background color from open dropdown - > .open > a { - &, - &:hover, - &:focus { - background-color: $navbar-default-link-active-bg; - color: $navbar-default-link-active-color; - } - } - - @media (max-width: $grid-float-breakpoint-max) { - // Dropdowns get custom display when collapsed - .open .dropdown-menu { - > li > a { - color: $navbar-default-link-color; - &:hover, - &:focus { - color: $navbar-default-link-hover-color; - background-color: $navbar-default-link-hover-bg; - } - } - > .active > a { - &, - &:hover, - &:focus { - color: $navbar-default-link-active-color; - background-color: $navbar-default-link-active-bg; - } - } - > .disabled > a { - &, - &:hover, - &:focus { - color: $navbar-default-link-disabled-color; - background-color: $navbar-default-link-disabled-bg; - } - } - } - } - } - - - // Links in navbars - // - // Add a class to ensure links outside the navbar nav are colored correctly. - - .navbar-link { - color: $navbar-default-link-color; - &:hover { - color: $navbar-default-link-hover-color; - } - } - - .btn-link { - color: $navbar-default-link-color; - &:hover, - &:focus { - color: $navbar-default-link-hover-color; - } - &[disabled], - fieldset[disabled] & { - &:hover, - &:focus { - color: $navbar-default-link-disabled-color; - } - } - } -} - -// Inverse navbar - -.navbar-inverse { - background-color: $navbar-inverse-bg; - border-color: $navbar-inverse-border; - - .navbar-brand { - color: $navbar-inverse-brand-color; - &:hover, - &:focus { - color: $navbar-inverse-brand-hover-color; - background-color: $navbar-inverse-brand-hover-bg; - } - } - - .navbar-text { - color: $navbar-inverse-color; - } - - .navbar-nav { - > li > a { - color: $navbar-inverse-link-color; - - &:hover, - &:focus { - color: $navbar-inverse-link-hover-color; - background-color: $navbar-inverse-link-hover-bg; - } - } - > .active > a { - &, - &:hover, - &:focus { - color: $navbar-inverse-link-active-color; - background-color: $navbar-inverse-link-active-bg; - } - } - > .disabled > a { - &, - &:hover, - &:focus { - color: $navbar-inverse-link-disabled-color; - background-color: $navbar-inverse-link-disabled-bg; - } - } - } - - // Darken the responsive nav toggle - .navbar-toggle { - border-color: $navbar-inverse-toggle-border-color; - &:hover, - &:focus { - background-color: $navbar-inverse-toggle-hover-bg; - } - .icon-bar { - background-color: $navbar-inverse-toggle-icon-bar-bg; - } - } - - .navbar-collapse, - .navbar-form { - border-color: darken($navbar-inverse-bg, 7%); - } - - // Dropdowns - .navbar-nav { - > .open > a { - &, - &:hover, - &:focus { - background-color: $navbar-inverse-link-active-bg; - color: $navbar-inverse-link-active-color; - } - } - - @media (max-width: $grid-float-breakpoint-max) { - // Dropdowns get custom display - .open .dropdown-menu { - > .dropdown-header { - border-color: $navbar-inverse-border; - } - .divider { - background-color: $navbar-inverse-border; - } - > li > a { - color: $navbar-inverse-link-color; - &:hover, - &:focus { - color: $navbar-inverse-link-hover-color; - background-color: $navbar-inverse-link-hover-bg; - } - } - > .active > a { - &, - &:hover, - &:focus { - color: $navbar-inverse-link-active-color; - background-color: $navbar-inverse-link-active-bg; - } - } - > .disabled > a { - &, - &:hover, - &:focus { - color: $navbar-inverse-link-disabled-color; - background-color: $navbar-inverse-link-disabled-bg; - } - } - } - } - } - - .navbar-link { - color: $navbar-inverse-link-color; - &:hover { - color: $navbar-inverse-link-hover-color; - } - } - - .btn-link { - color: $navbar-inverse-link-color; - &:hover, - &:focus { - color: $navbar-inverse-link-hover-color; - } - &[disabled], - fieldset[disabled] & { - &:hover, - &:focus { - color: $navbar-inverse-link-disabled-color; - } - } - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_navs.scss b/docs/source/assets/stylesheets/bootstrap/_navs.scss deleted file mode 100644 index 9d369f30..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_navs.scss +++ /dev/null @@ -1,242 +0,0 @@ -// -// Navs -// -------------------------------------------------- - - -// Base class -// -------------------------------------------------- - -.nav { - margin-bottom: 0; - padding-left: 0; // Override default ul/ol - list-style: none; - @include clearfix; - - > li { - position: relative; - display: block; - - > a { - position: relative; - display: block; - padding: $nav-link-padding; - &:hover, - &:focus { - text-decoration: none; - background-color: $nav-link-hover-bg; - } - } - - // Disabled state sets text to gray and nukes hover/tab effects - &.disabled > a { - color: $nav-disabled-link-color; - - &:hover, - &:focus { - color: $nav-disabled-link-hover-color; - text-decoration: none; - background-color: transparent; - cursor: $cursor-disabled; - } - } - } - - // Open dropdowns - .open > a { - &, - &:hover, - &:focus { - background-color: $nav-link-hover-bg; - border-color: $link-color; - } - } - - // Nav dividers (deprecated with v3.0.1) - // - // This should have been removed in v3 with the dropping of `.nav-list`, but - // we missed it. We don't currently support this anywhere, but in the interest - // of maintaining backward compatibility in case you use it, it's deprecated. - .nav-divider { - @include nav-divider; - } - - // Prevent IE8 from misplacing imgs - // - // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989 - > li > a > img { - max-width: none; - } -} - - -// Tabs -// ------------------------- - -// Give the tabs something to sit on -.nav-tabs { - border-bottom: 1px solid $nav-tabs-border-color; - > li { - float: left; - // Make the list-items overlay the bottom border - margin-bottom: -1px; - - // Actual tabs (as links) - > a { - margin-right: 2px; - line-height: $line-height-base; - border: 1px solid transparent; - border-radius: $border-radius-base $border-radius-base 0 0; - &:hover { - border-color: $nav-tabs-link-hover-border-color $nav-tabs-link-hover-border-color $nav-tabs-border-color; - } - } - - // Active state, and its :hover to override normal :hover - &.active > a { - &, - &:hover, - &:focus { - color: $nav-tabs-active-link-hover-color; - background-color: $nav-tabs-active-link-hover-bg; - border: 1px solid $nav-tabs-active-link-hover-border-color; - border-bottom-color: transparent; - cursor: default; - } - } - } - // pulling this in mainly for less shorthand - &.nav-justified { - @extend .nav-justified; - @extend .nav-tabs-justified; - } -} - - -// Pills -// ------------------------- -.nav-pills { - > li { - float: left; - - // Links rendered as pills - > a { - border-radius: $nav-pills-border-radius; - } - + li { - margin-left: 2px; - } - - // Active state - &.active > a { - &, - &:hover, - &:focus { - color: $nav-pills-active-link-hover-color; - background-color: $nav-pills-active-link-hover-bg; - } - } - } -} - - -// Stacked pills -.nav-stacked { - > li { - float: none; - + li { - margin-top: 2px; - margin-left: 0; // no need for this gap between nav items - } - } -} - - -// Nav variations -// -------------------------------------------------- - -// Justified nav links -// ------------------------- - -.nav-justified { - width: 100%; - - > li { - float: none; - > a { - text-align: center; - margin-bottom: 5px; - } - } - - > .dropdown .dropdown-menu { - top: auto; - left: auto; - } - - @media (min-width: $screen-sm-min) { - > li { - display: table-cell; - width: 1%; - > a { - margin-bottom: 0; - } - } - } -} - -// Move borders to anchors instead of bottom of list -// -// Mixin for adding on top the shared `.nav-justified` styles for our tabs -.nav-tabs-justified { - border-bottom: 0; - - > li > a { - // Override margin from .nav-tabs - margin-right: 0; - border-radius: $border-radius-base; - } - - > .active > a, - > .active > a:hover, - > .active > a:focus { - border: 1px solid $nav-tabs-justified-link-border-color; - } - - @media (min-width: $screen-sm-min) { - > li > a { - border-bottom: 1px solid $nav-tabs-justified-link-border-color; - border-radius: $border-radius-base $border-radius-base 0 0; - } - > .active > a, - > .active > a:hover, - > .active > a:focus { - border-bottom-color: $nav-tabs-justified-active-link-border-color; - } - } -} - - -// Tabbable tabs -// ------------------------- - -// Hide tabbable panes to start, show them when `.active` -.tab-content { - > .tab-pane { - display: none; - } - > .active { - display: block; - } -} - - -// Dropdowns -// ------------------------- - -// Specific dropdowns -.nav-tabs .dropdown-menu { - // make dropdown border overlap tab border - margin-top: -1px; - // Remove the top rounded corners here since there is a hard edge above the menu - @include border-top-radius(0); -} diff --git a/docs/source/assets/stylesheets/bootstrap/_normalize.scss b/docs/source/assets/stylesheets/bootstrap/_normalize.scss deleted file mode 100644 index 9dddf73a..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_normalize.scss +++ /dev/null @@ -1,424 +0,0 @@ -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ - -// -// 1. Set default font family to sans-serif. -// 2. Prevent iOS and IE text size adjust after device orientation change, -// without disabling user zoom. -// - -html { - font-family: sans-serif; // 1 - -ms-text-size-adjust: 100%; // 2 - -webkit-text-size-adjust: 100%; // 2 -} - -// -// Remove default margin. -// - -body { - margin: 0; -} - -// HTML5 display definitions -// ========================================================================== - -// -// Correct `block` display not defined for any HTML5 element in IE 8/9. -// Correct `block` display not defined for `details` or `summary` in IE 10/11 -// and Firefox. -// Correct `block` display not defined for `main` in IE 11. -// - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} - -// -// 1. Correct `inline-block` display not defined in IE 8/9. -// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. -// - -audio, -canvas, -progress, -video { - display: inline-block; // 1 - vertical-align: baseline; // 2 -} - -// -// Prevent modern browsers from displaying `audio` without controls. -// Remove excess height in iOS 5 devices. -// - -audio:not([controls]) { - display: none; - height: 0; -} - -// -// Address `[hidden]` styling not present in IE 8/9/10. -// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22. -// - -[hidden], -template { - display: none; -} - -// Links -// ========================================================================== - -// -// Remove the gray background color from active links in IE 10. -// - -a { - background-color: transparent; -} - -// -// Improve readability of focused elements when they are also in an -// active/hover state. -// - -a:active, -a:hover { - outline: 0; -} - -// Text-level semantics -// ========================================================================== - -// -// Address styling not present in IE 8/9/10/11, Safari, and Chrome. -// - -abbr[title] { - border-bottom: 1px dotted; -} - -// -// Address style set to `bolder` in Firefox 4+, Safari, and Chrome. -// - -b, -strong { - font-weight: bold; -} - -// -// Address styling not present in Safari and Chrome. -// - -dfn { - font-style: italic; -} - -// -// Address variable `h1` font-size and margin within `section` and `article` -// contexts in Firefox 4+, Safari, and Chrome. -// - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -// -// Address styling not present in IE 8/9. -// - -mark { - background: #ff0; - color: #000; -} - -// -// Address inconsistent and variable font size in all browsers. -// - -small { - font-size: 80%; -} - -// -// Prevent `sub` and `sup` affecting `line-height` in all browsers. -// - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -// Embedded content -// ========================================================================== - -// -// Remove border when inside `a` element in IE 8/9/10. -// - -img { - border: 0; -} - -// -// Correct overflow not hidden in IE 9/10/11. -// - -svg:not(:root) { - overflow: hidden; -} - -// Grouping content -// ========================================================================== - -// -// Address margin not present in IE 8/9 and Safari. -// - -figure { - margin: 1em 40px; -} - -// -// Address differences between Firefox and other browsers. -// - -hr { - box-sizing: content-box; - height: 0; -} - -// -// Contain overflow in all browsers. -// - -pre { - overflow: auto; -} - -// -// Address odd `em`-unit font size rendering in all browsers. -// - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -// Forms -// ========================================================================== - -// -// Known limitation: by default, Chrome and Safari on OS X allow very limited -// styling of `select`, unless a `border` property is set. -// - -// -// 1. Correct color not being inherited. -// Known issue: affects color of disabled elements. -// 2. Correct font properties not being inherited. -// 3. Address margins set differently in Firefox 4+, Safari, and Chrome. -// - -button, -input, -optgroup, -select, -textarea { - color: inherit; // 1 - font: inherit; // 2 - margin: 0; // 3 -} - -// -// Address `overflow` set to `hidden` in IE 8/9/10/11. -// - -button { - overflow: visible; -} - -// -// Address inconsistent `text-transform` inheritance for `button` and `select`. -// All other form control elements do not inherit `text-transform` values. -// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. -// Correct `select` style inheritance in Firefox. -// - -button, -select { - text-transform: none; -} - -// -// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` -// and `video` controls. -// 2. Correct inability to style clickable `input` types in iOS. -// 3. Improve usability and consistency of cursor style between image-type -// `input` and others. -// - -button, -html input[type="button"], // 1 -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; // 2 - cursor: pointer; // 3 -} - -// -// Re-set default cursor for disabled elements. -// - -button[disabled], -html input[disabled] { - cursor: default; -} - -// -// Remove inner padding and border in Firefox 4+. -// - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -// -// Address Firefox 4+ setting `line-height` on `input` using `!important` in -// the UA stylesheet. -// - -input { - line-height: normal; -} - -// -// It's recommended that you don't attempt to style these elements. -// Firefox's implementation doesn't respect box-sizing, padding, or width. -// -// 1. Address box sizing set to `content-box` in IE 8/9/10. -// 2. Remove excess padding in IE 8/9/10. -// - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; // 1 - padding: 0; // 2 -} - -// -// Fix the cursor style for Chrome's increment/decrement buttons. For certain -// `font-size` values of the `input`, it causes the cursor style of the -// decrement button to change from `default` to `text`. -// - -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -// -// 1. Address `appearance` set to `searchfield` in Safari and Chrome. -// 2. Address `box-sizing` set to `border-box` in Safari and Chrome. -// - -input[type="search"] { - -webkit-appearance: textfield; // 1 - box-sizing: content-box; //2 -} - -// -// Remove inner padding and search cancel button in Safari and Chrome on OS X. -// Safari (but not Chrome) clips the cancel button when the search input has -// padding (and `textfield` appearance). -// - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -// -// Define consistent border, margin, and padding. -// - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -// -// 1. Correct `color` not being inherited in IE 8/9/10/11. -// 2. Remove padding so people aren't caught out if they zero out fieldsets. -// - -legend { - border: 0; // 1 - padding: 0; // 2 -} - -// -// Remove default vertical scrollbar in IE 8/9/10/11. -// - -textarea { - overflow: auto; -} - -// -// Don't inherit the `font-weight` (applied by a rule above). -// NOTE: the default cannot safely be changed in Chrome and Safari on OS X. -// - -optgroup { - font-weight: bold; -} - -// Tables -// ========================================================================== - -// -// Remove most spacing between table cells. -// - -table { - border-collapse: collapse; - border-spacing: 0; -} - -td, -th { - padding: 0; -} diff --git a/docs/source/assets/stylesheets/bootstrap/_pager.scss b/docs/source/assets/stylesheets/bootstrap/_pager.scss deleted file mode 100644 index c2342174..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_pager.scss +++ /dev/null @@ -1,54 +0,0 @@ -// -// Pager pagination -// -------------------------------------------------- - - -.pager { - padding-left: 0; - margin: $line-height-computed 0; - list-style: none; - text-align: center; - @include clearfix; - li { - display: inline; - > a, - > span { - display: inline-block; - padding: 5px 14px; - background-color: $pager-bg; - border: 1px solid $pager-border; - border-radius: $pager-border-radius; - } - - > a:hover, - > a:focus { - text-decoration: none; - background-color: $pager-hover-bg; - } - } - - .next { - > a, - > span { - float: right; - } - } - - .previous { - > a, - > span { - float: left; - } - } - - .disabled { - > a, - > a:hover, - > a:focus, - > span { - color: $pager-disabled-color; - background-color: $pager-bg; - cursor: $cursor-disabled; - } - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_pagination.scss b/docs/source/assets/stylesheets/bootstrap/_pagination.scss deleted file mode 100644 index fb23f913..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_pagination.scss +++ /dev/null @@ -1,89 +0,0 @@ -// -// Pagination (multiple pages) -// -------------------------------------------------- -.pagination { - display: inline-block; - padding-left: 0; - margin: $line-height-computed 0; - border-radius: $border-radius-base; - - > li { - display: inline; // Remove list-style and block-level defaults - > a, - > span { - position: relative; - float: left; // Collapse white-space - padding: $padding-base-vertical $padding-base-horizontal; - line-height: $line-height-base; - text-decoration: none; - color: $pagination-color; - background-color: $pagination-bg; - border: 1px solid $pagination-border; - margin-left: -1px; - } - &:first-child { - > a, - > span { - margin-left: 0; - @include border-left-radius($border-radius-base); - } - } - &:last-child { - > a, - > span { - @include border-right-radius($border-radius-base); - } - } - } - - > li > a, - > li > span { - &:hover, - &:focus { - z-index: 3; - color: $pagination-hover-color; - background-color: $pagination-hover-bg; - border-color: $pagination-hover-border; - } - } - - > .active > a, - > .active > span { - &, - &:hover, - &:focus { - z-index: 2; - color: $pagination-active-color; - background-color: $pagination-active-bg; - border-color: $pagination-active-border; - cursor: default; - } - } - - > .disabled { - > span, - > span:hover, - > span:focus, - > a, - > a:hover, - > a:focus { - color: $pagination-disabled-color; - background-color: $pagination-disabled-bg; - border-color: $pagination-disabled-border; - cursor: $cursor-disabled; - } - } -} - -// Sizing -// -------------------------------------------------- - -// Large -.pagination-lg { - @include pagination-size($padding-large-vertical, $padding-large-horizontal, $font-size-large, $line-height-large, $border-radius-large); -} - -// Small -.pagination-sm { - @include pagination-size($padding-small-vertical, $padding-small-horizontal, $font-size-small, $line-height-small, $border-radius-small); -} diff --git a/docs/source/assets/stylesheets/bootstrap/_panels.scss b/docs/source/assets/stylesheets/bootstrap/_panels.scss deleted file mode 100644 index be9410f5..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_panels.scss +++ /dev/null @@ -1,271 +0,0 @@ -// -// Panels -// -------------------------------------------------- - - -// Base class -.panel { - margin-bottom: $line-height-computed; - background-color: $panel-bg; - border: 1px solid transparent; - border-radius: $panel-border-radius; - @include box-shadow(0 1px 1px rgba(0,0,0,.05)); -} - -// Panel contents -.panel-body { - padding: $panel-body-padding; - @include clearfix; -} - -// Optional heading -.panel-heading { - padding: $panel-heading-padding; - border-bottom: 1px solid transparent; - @include border-top-radius(($panel-border-radius - 1)); - - > .dropdown .dropdown-toggle { - color: inherit; - } -} - -// Within heading, strip any `h*` tag of its default margins for spacing. -.panel-title { - margin-top: 0; - margin-bottom: 0; - font-size: ceil(($font-size-base * 1.125)); - color: inherit; - - > a, - > small, - > .small, - > small > a, - > .small > a { - color: inherit; - } -} - -// Optional footer (stays gray in every modifier class) -.panel-footer { - padding: $panel-footer-padding; - background-color: $panel-footer-bg; - border-top: 1px solid $panel-inner-border; - @include border-bottom-radius(($panel-border-radius - 1)); -} - - -// List groups in panels -// -// By default, space out list group content from panel headings to account for -// any kind of custom content between the two. - -.panel { - > .list-group, - > .panel-collapse > .list-group { - margin-bottom: 0; - - .list-group-item { - border-width: 1px 0; - border-radius: 0; - } - - // Add border top radius for first one - &:first-child { - .list-group-item:first-child { - border-top: 0; - @include border-top-radius(($panel-border-radius - 1)); - } - } - - // Add border bottom radius for last one - &:last-child { - .list-group-item:last-child { - border-bottom: 0; - @include border-bottom-radius(($panel-border-radius - 1)); - } - } - } - > .panel-heading + .panel-collapse > .list-group { - .list-group-item:first-child { - @include border-top-radius(0); - } - } -} -// Collapse space between when there's no additional content. -.panel-heading + .list-group { - .list-group-item:first-child { - border-top-width: 0; - } -} -.list-group + .panel-footer { - border-top-width: 0; -} - -// Tables in panels -// -// Place a non-bordered `.table` within a panel (not within a `.panel-body`) and -// watch it go full width. - -.panel { - > .table, - > .table-responsive > .table, - > .panel-collapse > .table { - margin-bottom: 0; - - caption { - padding-left: $panel-body-padding; - padding-right: $panel-body-padding; - } - } - // Add border top radius for first one - > .table:first-child, - > .table-responsive:first-child > .table:first-child { - @include border-top-radius(($panel-border-radius - 1)); - - > thead:first-child, - > tbody:first-child { - > tr:first-child { - border-top-left-radius: ($panel-border-radius - 1); - border-top-right-radius: ($panel-border-radius - 1); - - td:first-child, - th:first-child { - border-top-left-radius: ($panel-border-radius - 1); - } - td:last-child, - th:last-child { - border-top-right-radius: ($panel-border-radius - 1); - } - } - } - } - // Add border bottom radius for last one - > .table:last-child, - > .table-responsive:last-child > .table:last-child { - @include border-bottom-radius(($panel-border-radius - 1)); - - > tbody:last-child, - > tfoot:last-child { - > tr:last-child { - border-bottom-left-radius: ($panel-border-radius - 1); - border-bottom-right-radius: ($panel-border-radius - 1); - - td:first-child, - th:first-child { - border-bottom-left-radius: ($panel-border-radius - 1); - } - td:last-child, - th:last-child { - border-bottom-right-radius: ($panel-border-radius - 1); - } - } - } - } - > .panel-body + .table, - > .panel-body + .table-responsive, - > .table + .panel-body, - > .table-responsive + .panel-body { - border-top: 1px solid $table-border-color; - } - > .table > tbody:first-child > tr:first-child th, - > .table > tbody:first-child > tr:first-child td { - border-top: 0; - } - > .table-bordered, - > .table-responsive > .table-bordered { - border: 0; - > thead, - > tbody, - > tfoot { - > tr { - > th:first-child, - > td:first-child { - border-left: 0; - } - > th:last-child, - > td:last-child { - border-right: 0; - } - } - } - > thead, - > tbody { - > tr:first-child { - > td, - > th { - border-bottom: 0; - } - } - } - > tbody, - > tfoot { - > tr:last-child { - > td, - > th { - border-bottom: 0; - } - } - } - } - > .table-responsive { - border: 0; - margin-bottom: 0; - } -} - - -// Collapsable panels (aka, accordion) -// -// Wrap a series of panels in `.panel-group` to turn them into an accordion with -// the help of our collapse JavaScript plugin. - -.panel-group { - margin-bottom: $line-height-computed; - - // Tighten up margin so it's only between panels - .panel { - margin-bottom: 0; - border-radius: $panel-border-radius; - - + .panel { - margin-top: 5px; - } - } - - .panel-heading { - border-bottom: 0; - - + .panel-collapse > .panel-body, - + .panel-collapse > .list-group { - border-top: 1px solid $panel-inner-border; - } - } - - .panel-footer { - border-top: 0; - + .panel-collapse .panel-body { - border-bottom: 1px solid $panel-inner-border; - } - } -} - - -// Contextual variations -.panel-default { - @include panel-variant($panel-default-border, $panel-default-text, $panel-default-heading-bg, $panel-default-border); -} -.panel-primary { - @include panel-variant($panel-primary-border, $panel-primary-text, $panel-primary-heading-bg, $panel-primary-border); -} -.panel-success { - @include panel-variant($panel-success-border, $panel-success-text, $panel-success-heading-bg, $panel-success-border); -} -.panel-info { - @include panel-variant($panel-info-border, $panel-info-text, $panel-info-heading-bg, $panel-info-border); -} -.panel-warning { - @include panel-variant($panel-warning-border, $panel-warning-text, $panel-warning-heading-bg, $panel-warning-border); -} -.panel-danger { - @include panel-variant($panel-danger-border, $panel-danger-text, $panel-danger-heading-bg, $panel-danger-border); -} diff --git a/docs/source/assets/stylesheets/bootstrap/_popovers.scss b/docs/source/assets/stylesheets/bootstrap/_popovers.scss deleted file mode 100644 index 9b90a2e9..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_popovers.scss +++ /dev/null @@ -1,131 +0,0 @@ -// -// Popovers -// -------------------------------------------------- - - -.popover { - position: absolute; - top: 0; - left: 0; - z-index: $zindex-popover; - display: none; - max-width: $popover-max-width; - padding: 1px; - // Our parent element can be arbitrary since popovers are by default inserted as a sibling of their target element. - // So reset our font and text properties to avoid inheriting weird values. - @include reset-text; - font-size: $font-size-base; - - background-color: $popover-bg; - background-clip: padding-box; - border: 1px solid $popover-fallback-border-color; - border: 1px solid $popover-border-color; - border-radius: $border-radius-large; - @include box-shadow(0 5px 10px rgba(0,0,0,.2)); - - // Offset the popover to account for the popover arrow - &.top { margin-top: -$popover-arrow-width; } - &.right { margin-left: $popover-arrow-width; } - &.bottom { margin-top: $popover-arrow-width; } - &.left { margin-left: -$popover-arrow-width; } -} - -.popover-title { - margin: 0; // reset heading margin - padding: 8px 14px; - font-size: $font-size-base; - background-color: $popover-title-bg; - border-bottom: 1px solid darken($popover-title-bg, 5%); - border-radius: ($border-radius-large - 1) ($border-radius-large - 1) 0 0; -} - -.popover-content { - padding: 9px 14px; -} - -// Arrows -// -// .arrow is outer, .arrow:after is inner - -.popover > .arrow { - &, - &:after { - position: absolute; - display: block; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; - } -} -.popover > .arrow { - border-width: $popover-arrow-outer-width; -} -.popover > .arrow:after { - border-width: $popover-arrow-width; - content: ""; -} - -.popover { - &.top > .arrow { - left: 50%; - margin-left: -$popover-arrow-outer-width; - border-bottom-width: 0; - border-top-color: $popover-arrow-outer-fallback-color; // IE8 fallback - border-top-color: $popover-arrow-outer-color; - bottom: -$popover-arrow-outer-width; - &:after { - content: " "; - bottom: 1px; - margin-left: -$popover-arrow-width; - border-bottom-width: 0; - border-top-color: $popover-arrow-color; - } - } - &.right > .arrow { - top: 50%; - left: -$popover-arrow-outer-width; - margin-top: -$popover-arrow-outer-width; - border-left-width: 0; - border-right-color: $popover-arrow-outer-fallback-color; // IE8 fallback - border-right-color: $popover-arrow-outer-color; - &:after { - content: " "; - left: 1px; - bottom: -$popover-arrow-width; - border-left-width: 0; - border-right-color: $popover-arrow-color; - } - } - &.bottom > .arrow { - left: 50%; - margin-left: -$popover-arrow-outer-width; - border-top-width: 0; - border-bottom-color: $popover-arrow-outer-fallback-color; // IE8 fallback - border-bottom-color: $popover-arrow-outer-color; - top: -$popover-arrow-outer-width; - &:after { - content: " "; - top: 1px; - margin-left: -$popover-arrow-width; - border-top-width: 0; - border-bottom-color: $popover-arrow-color; - } - } - - &.left > .arrow { - top: 50%; - right: -$popover-arrow-outer-width; - margin-top: -$popover-arrow-outer-width; - border-right-width: 0; - border-left-color: $popover-arrow-outer-fallback-color; // IE8 fallback - border-left-color: $popover-arrow-outer-color; - &:after { - content: " "; - right: 1px; - border-right-width: 0; - border-left-color: $popover-arrow-color; - bottom: -$popover-arrow-width; - } - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_print.scss b/docs/source/assets/stylesheets/bootstrap/_print.scss deleted file mode 100644 index 66e54ab4..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_print.scss +++ /dev/null @@ -1,101 +0,0 @@ -/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ - -// ========================================================================== -// Print styles. -// Inlined to avoid the additional HTTP request: h5bp.com/r -// ========================================================================== - -@media print { - *, - *:before, - *:after { - background: transparent !important; - color: #000 !important; // Black prints faster: h5bp.com/s - 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) ")"; - } - - // Don't show links that are fragment identifiers, - // or use the `javascript:` pseudo protocol - a[href^="#"]:after, - a[href^="javascript:"]:after { - content: ""; - } - - pre, - blockquote { - border: 1px solid #999; - page-break-inside: avoid; - } - - thead { - display: table-header-group; // h5bp.com/t - } - - tr, - img { - page-break-inside: avoid; - } - - img { - max-width: 100% !important; - } - - p, - h2, - h3 { - orphans: 3; - widows: 3; - } - - h2, - h3 { - page-break-after: avoid; - } - - // Bootstrap specific changes start - - // Bootstrap components - .navbar { - display: none; - } - .btn, - .dropup > .btn { - > .caret { - border-top-color: #000 !important; - } - } - .label { - border: 1px solid #000; - } - - .table { - border-collapse: collapse !important; - - td, - th { - background-color: #fff !important; - } - } - .table-bordered { - th, - td { - border: 1px solid #ddd !important; - } - } - - // Bootstrap specific changes end -} diff --git a/docs/source/assets/stylesheets/bootstrap/_progress-bars.scss b/docs/source/assets/stylesheets/bootstrap/_progress-bars.scss deleted file mode 100644 index 343df632..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_progress-bars.scss +++ /dev/null @@ -1,87 +0,0 @@ -// -// Progress bars -// -------------------------------------------------- - - -// Bar animations -// ------------------------- - -// WebKit -@-webkit-keyframes progress-bar-stripes { - from { background-position: 40px 0; } - to { background-position: 0 0; } -} - -// Spec and IE10+ -@keyframes progress-bar-stripes { - from { background-position: 40px 0; } - to { background-position: 0 0; } -} - - -// Bar itself -// ------------------------- - -// Outer container -.progress { - overflow: hidden; - height: $line-height-computed; - margin-bottom: $line-height-computed; - background-color: $progress-bg; - border-radius: $progress-border-radius; - @include box-shadow(inset 0 1px 2px rgba(0,0,0,.1)); -} - -// Bar of progress -.progress-bar { - float: left; - width: 0%; - height: 100%; - font-size: $font-size-small; - line-height: $line-height-computed; - color: $progress-bar-color; - text-align: center; - background-color: $progress-bar-bg; - @include box-shadow(inset 0 -1px 0 rgba(0,0,0,.15)); - @include transition(width .6s ease); -} - -// Striped bars -// -// `.progress-striped .progress-bar` is deprecated as of v3.2.0 in favor of the -// `.progress-bar-striped` class, which you just add to an existing -// `.progress-bar`. -.progress-striped .progress-bar, -.progress-bar-striped { - @include gradient-striped; - background-size: 40px 40px; -} - -// Call animation for the active one -// -// `.progress.active .progress-bar` is deprecated as of v3.2.0 in favor of the -// `.progress-bar.active` approach. -.progress.active .progress-bar, -.progress-bar.active { - @include animation(progress-bar-stripes 2s linear infinite); -} - - -// Variations -// ------------------------- - -.progress-bar-success { - @include progress-bar-variant($progress-bar-success-bg); -} - -.progress-bar-info { - @include progress-bar-variant($progress-bar-info-bg); -} - -.progress-bar-warning { - @include progress-bar-variant($progress-bar-warning-bg); -} - -.progress-bar-danger { - @include progress-bar-variant($progress-bar-danger-bg); -} diff --git a/docs/source/assets/stylesheets/bootstrap/_responsive-embed.scss b/docs/source/assets/stylesheets/bootstrap/_responsive-embed.scss deleted file mode 100644 index 080a5118..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_responsive-embed.scss +++ /dev/null @@ -1,35 +0,0 @@ -// Embeds responsive -// -// Credit: Nicolas Gallagher and SUIT CSS. - -.embed-responsive { - position: relative; - display: block; - height: 0; - padding: 0; - overflow: hidden; - - .embed-responsive-item, - iframe, - embed, - object, - video { - position: absolute; - top: 0; - left: 0; - bottom: 0; - height: 100%; - width: 100%; - border: 0; - } -} - -// Modifier class for 16:9 aspect ratio -.embed-responsive-16by9 { - padding-bottom: 56.25%; -} - -// Modifier class for 4:3 aspect ratio -.embed-responsive-4by3 { - padding-bottom: 75%; -} diff --git a/docs/source/assets/stylesheets/bootstrap/_responsive-utilities.scss b/docs/source/assets/stylesheets/bootstrap/_responsive-utilities.scss deleted file mode 100644 index f3f0c839..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_responsive-utilities.scss +++ /dev/null @@ -1,179 +0,0 @@ -// -// Responsive: Utility classes -// -------------------------------------------------- - - -// IE10 in Windows (Phone) 8 -// -// Support for responsive views via media queries is kind of borked in IE10, for -// Surface/desktop in split view and for Windows Phone 8. This particular fix -// must be accompanied by a snippet of JavaScript to sniff the user agent and -// apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at -// our Getting Started page for more information on this bug. -// -// For more information, see the following: -// -// Issue: https://github.com/twbs/bootstrap/issues/10497 -// Docs: http://getbootstrap.com/getting-started/#support-ie10-width -// Source: http://timkadlec.com/2013/01/windows-phone-8-and-device-width/ -// Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/ - -@at-root { - @-ms-viewport { - width: device-width; - } -} - - -// Visibility utilities -// Note: Deprecated .visible-xs, .visible-sm, .visible-md, and .visible-lg as of v3.2.0 - -@include responsive-invisibility('.visible-xs'); -@include responsive-invisibility('.visible-sm'); -@include responsive-invisibility('.visible-md'); -@include responsive-invisibility('.visible-lg'); - -.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: $screen-xs-max) { - @include responsive-visibility('.visible-xs'); -} -.visible-xs-block { - @media (max-width: $screen-xs-max) { - display: block !important; - } -} -.visible-xs-inline { - @media (max-width: $screen-xs-max) { - display: inline !important; - } -} -.visible-xs-inline-block { - @media (max-width: $screen-xs-max) { - display: inline-block !important; - } -} - -@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { - @include responsive-visibility('.visible-sm'); -} -.visible-sm-block { - @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { - display: block !important; - } -} -.visible-sm-inline { - @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { - display: inline !important; - } -} -.visible-sm-inline-block { - @media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { - display: inline-block !important; - } -} - -@media (min-width: $screen-md-min) and (max-width: $screen-md-max) { - @include responsive-visibility('.visible-md'); -} -.visible-md-block { - @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { - display: block !important; - } -} -.visible-md-inline { - @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { - display: inline !important; - } -} -.visible-md-inline-block { - @media (min-width: $screen-md-min) and (max-width: $screen-md-max) { - display: inline-block !important; - } -} - -@media (min-width: $screen-lg-min) { - @include responsive-visibility('.visible-lg'); -} -.visible-lg-block { - @media (min-width: $screen-lg-min) { - display: block !important; - } -} -.visible-lg-inline { - @media (min-width: $screen-lg-min) { - display: inline !important; - } -} -.visible-lg-inline-block { - @media (min-width: $screen-lg-min) { - display: inline-block !important; - } -} - -@media (max-width: $screen-xs-max) { - @include responsive-invisibility('.hidden-xs'); -} - -@media (min-width: $screen-sm-min) and (max-width: $screen-sm-max) { - @include responsive-invisibility('.hidden-sm'); -} - -@media (min-width: $screen-md-min) and (max-width: $screen-md-max) { - @include responsive-invisibility('.hidden-md'); -} - -@media (min-width: $screen-lg-min) { - @include responsive-invisibility('.hidden-lg'); -} - - -// Print utilities -// -// Media queries are placed on the inside to be mixin-friendly. - -// Note: Deprecated .visible-print as of v3.2.0 - -@include responsive-invisibility('.visible-print'); - -@media print { - @include responsive-visibility('.visible-print'); -} -.visible-print-block { - display: none !important; - - @media print { - display: block !important; - } -} -.visible-print-inline { - display: none !important; - - @media print { - display: inline !important; - } -} -.visible-print-inline-block { - display: none !important; - - @media print { - display: inline-block !important; - } -} - -@media print { - @include responsive-invisibility('.hidden-print'); -} diff --git a/docs/source/assets/stylesheets/bootstrap/_scaffolding.scss b/docs/source/assets/stylesheets/bootstrap/_scaffolding.scss deleted file mode 100644 index 83adb5dd..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_scaffolding.scss +++ /dev/null @@ -1,161 +0,0 @@ -// -// Scaffolding -// -------------------------------------------------- - - -// Reset the box-sizing -// -// Heads up! This reset may cause conflicts with some third-party widgets. -// For recommendations on resolving such conflicts, see -// http://getbootstrap.com/getting-started/#third-box-sizing -* { - @include box-sizing(border-box); -} -*:before, -*:after { - @include box-sizing(border-box); -} - - -// Body reset - -html { - font-size: 10px; - -webkit-tap-highlight-color: rgba(0,0,0,0); -} - -body { - font-family: $font-family-base; - font-size: $font-size-base; - line-height: $line-height-base; - color: $text-color; - background-color: $body-bg; -} - -// Reset fonts for relevant elements -input, -button, -select, -textarea { - font-family: inherit; - font-size: inherit; - line-height: inherit; -} - - -// Links - -a { - color: $link-color; - text-decoration: none; - - &:hover, - &:focus { - color: $link-hover-color; - text-decoration: $link-hover-decoration; - } - - &:focus { - @include tab-focus; - } -} - - -// Figures -// -// We reset this here because previously Normalize had no `figure` margins. This -// ensures we don't break anyone's use of the element. - -figure { - margin: 0; -} - - -// Images - -img { - vertical-align: middle; -} - -// Responsive images (ensure images don't scale beyond their parents) -.img-responsive { - @include img-responsive; -} - -// Rounded corners -.img-rounded { - border-radius: $border-radius-large; -} - -// Image thumbnails -// -// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`. -.img-thumbnail { - padding: $thumbnail-padding; - line-height: $line-height-base; - background-color: $thumbnail-bg; - border: 1px solid $thumbnail-border; - border-radius: $thumbnail-border-radius; - @include transition(all .2s ease-in-out); - - // Keep them at most 100% wide - @include img-responsive(inline-block); -} - -// Perfect circle -.img-circle { - border-radius: 50%; // set radius in percents -} - - -// Horizontal rules - -hr { - margin-top: $line-height-computed; - margin-bottom: $line-height-computed; - border: 0; - border-top: 1px solid $hr-border; -} - - -// Only display content to screen readers -// -// See: http://a11yproject.com/posts/how-to-hide-content/ - -.sr-only { - position: absolute; - width: 1px; - height: 1px; - margin: -1px; - padding: 0; - overflow: hidden; - clip: rect(0,0,0,0); - border: 0; -} - -// Use in conjunction with .sr-only to only display content when it's focused. -// Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 -// Credit: HTML5 Boilerplate - -.sr-only-focusable { - &:active, - &:focus { - position: static; - width: auto; - height: auto; - margin: 0; - overflow: visible; - clip: auto; - } -} - - -// iOS "clickable elements" fix for role="button" -// -// Fixes "clickability" issue (and more generally, the firing of events such as focus as well) -// for traditionally non-focusable elements with role="button" -// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile - -[role="button"] { - cursor: pointer; -} diff --git a/docs/source/assets/stylesheets/bootstrap/_tables.scss b/docs/source/assets/stylesheets/bootstrap/_tables.scss deleted file mode 100644 index affcc58c..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_tables.scss +++ /dev/null @@ -1,234 +0,0 @@ -// -// Tables -// -------------------------------------------------- - - -table { - background-color: $table-bg; -} -caption { - padding-top: $table-cell-padding; - padding-bottom: $table-cell-padding; - color: $text-muted; - text-align: left; -} -th { - text-align: left; -} - - -// Baseline styles - -.table { - width: 100%; - max-width: 100%; - margin-bottom: $line-height-computed; - // Cells - > thead, - > tbody, - > tfoot { - > tr { - > th, - > td { - padding: $table-cell-padding; - line-height: $line-height-base; - vertical-align: top; - border-top: 1px solid $table-border-color; - } - } - } - // Bottom align for column headings - > thead > tr > th { - vertical-align: bottom; - border-bottom: 2px solid $table-border-color; - } - // Remove top border from thead by default - > caption + thead, - > colgroup + thead, - > thead:first-child { - > tr:first-child { - > th, - > td { - border-top: 0; - } - } - } - // Account for multiple tbody instances - > tbody + tbody { - border-top: 2px solid $table-border-color; - } - - // Nesting - .table { - background-color: $body-bg; - } -} - - -// Condensed table w/ half padding - -.table-condensed { - > thead, - > tbody, - > tfoot { - > tr { - > th, - > td { - padding: $table-condensed-cell-padding; - } - } - } -} - - -// Bordered version -// -// Add borders all around the table and between all the columns. - -.table-bordered { - border: 1px solid $table-border-color; - > thead, - > tbody, - > tfoot { - > tr { - > th, - > td { - border: 1px solid $table-border-color; - } - } - } - > thead > tr { - > th, - > td { - border-bottom-width: 2px; - } - } -} - - -// Zebra-striping -// -// Default zebra-stripe styles (alternating gray and transparent backgrounds) - -.table-striped { - > tbody > tr:nth-of-type(odd) { - background-color: $table-bg-accent; - } -} - - -// Hover effect -// -// Placed here since it has to come after the potential zebra striping - -.table-hover { - > tbody > tr:hover { - background-color: $table-bg-hover; - } -} - - -// Table cell sizing -// -// Reset default table behavior - -table col[class*="col-"] { - position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623) - float: none; - display: table-column; -} -table { - td, - th { - &[class*="col-"] { - position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623) - float: none; - display: table-cell; - } - } -} - - -// Table backgrounds -// -// Exact selectors below required to override `.table-striped` and prevent -// inheritance to nested tables. - -// Generate the contextual variants -@include table-row-variant('active', $table-bg-active); -@include table-row-variant('success', $state-success-bg); -@include table-row-variant('info', $state-info-bg); -@include table-row-variant('warning', $state-warning-bg); -@include table-row-variant('danger', $state-danger-bg); - - -// Responsive tables -// -// Wrap your tables in `.table-responsive` and we'll make them mobile friendly -// by enabling horizontal scrolling. Only applies <768px. Everything above that -// will display normally. - -.table-responsive { - overflow-x: auto; - min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837) - - @media screen and (max-width: $screen-xs-max) { - width: 100%; - margin-bottom: ($line-height-computed * 0.75); - overflow-y: hidden; - -ms-overflow-style: -ms-autohiding-scrollbar; - border: 1px solid $table-border-color; - - // Tighten up spacing - > .table { - margin-bottom: 0; - - // Ensure the content doesn't wrap - > thead, - > tbody, - > tfoot { - > tr { - > th, - > td { - white-space: nowrap; - } - } - } - } - - // Special overrides for the bordered tables - > .table-bordered { - border: 0; - - // Nuke the appropriate borders so that the parent can handle them - > thead, - > tbody, - > tfoot { - > tr { - > th:first-child, - > td:first-child { - border-left: 0; - } - > th:last-child, - > td:last-child { - border-right: 0; - } - } - } - - // Only nuke the last row's bottom-border in `tbody` and `tfoot` since - // chances are there will be only one `tr` in a `thead` and that would - // remove the border altogether. - > tbody, - > tfoot { - > tr:last-child { - > th, - > td { - border-bottom: 0; - } - } - } - - } - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_theme.scss b/docs/source/assets/stylesheets/bootstrap/_theme.scss deleted file mode 100644 index df571ea7..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_theme.scss +++ /dev/null @@ -1,291 +0,0 @@ -/*! - * Bootstrap v3.3.5 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ - -// -// Load core variables and mixins -// -------------------------------------------------- - -@import "variables"; -@import "mixins"; - - -// -// Buttons -// -------------------------------------------------- - -// Common styles -.btn-default, -.btn-primary, -.btn-success, -.btn-info, -.btn-warning, -.btn-danger { - text-shadow: 0 -1px 0 rgba(0,0,0,.2); - $shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075); - @include box-shadow($shadow); - - // Reset the shadow - &:active, - &.active { - @include box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); - } - - &.disabled, - &[disabled], - fieldset[disabled] & { - @include box-shadow(none); - } - - .badge { - text-shadow: none; - } -} - -// Mixin for generating new styles -@mixin btn-styles($btn-color: #555) { - @include gradient-vertical($start-color: $btn-color, $end-color: darken($btn-color, 12%)); - @include reset-filter; // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620 - background-repeat: repeat-x; - border-color: darken($btn-color, 14%); - - &:hover, - &:focus { - background-color: darken($btn-color, 12%); - background-position: 0 -15px; - } - - &:active, - &.active { - background-color: darken($btn-color, 12%); - border-color: darken($btn-color, 14%); - } - - &.disabled, - &[disabled], - fieldset[disabled] & { - &, - &:hover, - &:focus, - &.focus, - &:active, - &.active { - background-color: darken($btn-color, 12%); - background-image: none; - } - } -} - -// Common styles -.btn { - // Remove the gradient for the pressed/active state - &:active, - &.active { - background-image: none; - } -} - -// Apply the mixin to the buttons -.btn-default { @include btn-styles($btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; } -.btn-primary { @include btn-styles($btn-primary-bg); } -.btn-success { @include btn-styles($btn-success-bg); } -.btn-info { @include btn-styles($btn-info-bg); } -.btn-warning { @include btn-styles($btn-warning-bg); } -.btn-danger { @include btn-styles($btn-danger-bg); } - - -// -// Images -// -------------------------------------------------- - -.thumbnail, -.img-thumbnail { - @include box-shadow(0 1px 2px rgba(0,0,0,.075)); -} - - -// -// Dropdowns -// -------------------------------------------------- - -.dropdown-menu > li > a:hover, -.dropdown-menu > li > a:focus { - @include gradient-vertical($start-color: $dropdown-link-hover-bg, $end-color: darken($dropdown-link-hover-bg, 5%)); - background-color: darken($dropdown-link-hover-bg, 5%); -} -.dropdown-menu > .active > a, -.dropdown-menu > .active > a:hover, -.dropdown-menu > .active > a:focus { - @include gradient-vertical($start-color: $dropdown-link-active-bg, $end-color: darken($dropdown-link-active-bg, 5%)); - background-color: darken($dropdown-link-active-bg, 5%); -} - - -// -// Navbar -// -------------------------------------------------- - -// Default navbar -.navbar-default { - @include gradient-vertical($start-color: lighten($navbar-default-bg, 10%), $end-color: $navbar-default-bg); - @include reset-filter; // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered - border-radius: $navbar-border-radius; - $shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075); - @include box-shadow($shadow); - - .navbar-nav > .open > a, - .navbar-nav > .active > a { - @include gradient-vertical($start-color: darken($navbar-default-link-active-bg, 5%), $end-color: darken($navbar-default-link-active-bg, 2%)); - @include box-shadow(inset 0 3px 9px rgba(0,0,0,.075)); - } -} -.navbar-brand, -.navbar-nav > li > a { - text-shadow: 0 1px 0 rgba(255,255,255,.25); -} - -// Inverted navbar -.navbar-inverse { - @include gradient-vertical($start-color: lighten($navbar-inverse-bg, 10%), $end-color: $navbar-inverse-bg); - @include reset-filter; // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257 - border-radius: $navbar-border-radius; - .navbar-nav > .open > a, - .navbar-nav > .active > a { - @include gradient-vertical($start-color: $navbar-inverse-link-active-bg, $end-color: lighten($navbar-inverse-link-active-bg, 2.5%)); - @include box-shadow(inset 0 3px 9px rgba(0,0,0,.25)); - } - - .navbar-brand, - .navbar-nav > li > a { - text-shadow: 0 -1px 0 rgba(0,0,0,.25); - } -} - -// Undo rounded corners in static and fixed navbars -.navbar-static-top, -.navbar-fixed-top, -.navbar-fixed-bottom { - border-radius: 0; -} - -// Fix active state of dropdown items in collapsed mode -@media (max-width: $grid-float-breakpoint-max) { - .navbar .navbar-nav .open .dropdown-menu > .active > a { - &, - &:hover, - &:focus { - color: #fff; - @include gradient-vertical($start-color: $dropdown-link-active-bg, $end-color: darken($dropdown-link-active-bg, 5%)); - } - } -} - - -// -// Alerts -// -------------------------------------------------- - -// Common styles -.alert { - text-shadow: 0 1px 0 rgba(255,255,255,.2); - $shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05); - @include box-shadow($shadow); -} - -// Mixin for generating new styles -@mixin alert-styles($color) { - @include gradient-vertical($start-color: $color, $end-color: darken($color, 7.5%)); - border-color: darken($color, 15%); -} - -// Apply the mixin to the alerts -.alert-success { @include alert-styles($alert-success-bg); } -.alert-info { @include alert-styles($alert-info-bg); } -.alert-warning { @include alert-styles($alert-warning-bg); } -.alert-danger { @include alert-styles($alert-danger-bg); } - - -// -// Progress bars -// -------------------------------------------------- - -// Give the progress background some depth -.progress { - @include gradient-vertical($start-color: darken($progress-bg, 4%), $end-color: $progress-bg) -} - -// Mixin for generating new styles -@mixin progress-bar-styles($color) { - @include gradient-vertical($start-color: $color, $end-color: darken($color, 10%)); -} - -// Apply the mixin to the progress bars -.progress-bar { @include progress-bar-styles($progress-bar-bg); } -.progress-bar-success { @include progress-bar-styles($progress-bar-success-bg); } -.progress-bar-info { @include progress-bar-styles($progress-bar-info-bg); } -.progress-bar-warning { @include progress-bar-styles($progress-bar-warning-bg); } -.progress-bar-danger { @include progress-bar-styles($progress-bar-danger-bg); } - -// Reset the striped class because our mixins don't do multiple gradients and -// the above custom styles override the new `.progress-bar-striped` in v3.2.0. -.progress-bar-striped { - @include gradient-striped; -} - - -// -// List groups -// -------------------------------------------------- - -.list-group { - border-radius: $border-radius-base; - @include box-shadow(0 1px 2px rgba(0,0,0,.075)); -} -.list-group-item.active, -.list-group-item.active:hover, -.list-group-item.active:focus { - text-shadow: 0 -1px 0 darken($list-group-active-bg, 10%); - @include gradient-vertical($start-color: $list-group-active-bg, $end-color: darken($list-group-active-bg, 7.5%)); - border-color: darken($list-group-active-border, 7.5%); - - .badge { - text-shadow: none; - } -} - - -// -// Panels -// -------------------------------------------------- - -// Common styles -.panel { - @include box-shadow(0 1px 2px rgba(0,0,0,.05)); -} - -// Mixin for generating new styles -@mixin panel-heading-styles($color) { - @include gradient-vertical($start-color: $color, $end-color: darken($color, 5%)); -} - -// Apply the mixin to the panel headings only -.panel-default > .panel-heading { @include panel-heading-styles($panel-default-heading-bg); } -.panel-primary > .panel-heading { @include panel-heading-styles($panel-primary-heading-bg); } -.panel-success > .panel-heading { @include panel-heading-styles($panel-success-heading-bg); } -.panel-info > .panel-heading { @include panel-heading-styles($panel-info-heading-bg); } -.panel-warning > .panel-heading { @include panel-heading-styles($panel-warning-heading-bg); } -.panel-danger > .panel-heading { @include panel-heading-styles($panel-danger-heading-bg); } - - -// -// Wells -// -------------------------------------------------- - -.well { - @include gradient-vertical($start-color: darken($well-bg, 5%), $end-color: $well-bg); - border-color: darken($well-bg, 10%); - $shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1); - @include box-shadow($shadow); -} diff --git a/docs/source/assets/stylesheets/bootstrap/_thumbnails.scss b/docs/source/assets/stylesheets/bootstrap/_thumbnails.scss deleted file mode 100644 index da0e1e76..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_thumbnails.scss +++ /dev/null @@ -1,38 +0,0 @@ -// -// Thumbnails -// -------------------------------------------------- - - -// Mixin and adjust the regular image class -.thumbnail { - display: block; - padding: $thumbnail-padding; - margin-bottom: $line-height-computed; - line-height: $line-height-base; - background-color: $thumbnail-bg; - border: 1px solid $thumbnail-border; - border-radius: $thumbnail-border-radius; - @include transition(border .2s ease-in-out); - - > img, - a > img { - @include img-responsive; - margin-left: auto; - margin-right: auto; - } - - // [converter] extracted a&:hover, a&:focus, a&.active to a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active - - // Image captions - .caption { - padding: $thumbnail-caption-padding; - color: $thumbnail-caption-color; - } -} - -// Add a hover state for linked versions only -a.thumbnail:hover, -a.thumbnail:focus, -a.thumbnail.active { - border-color: $link-color; -} diff --git a/docs/source/assets/stylesheets/bootstrap/_tooltip.scss b/docs/source/assets/stylesheets/bootstrap/_tooltip.scss deleted file mode 100644 index f0c16582..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_tooltip.scss +++ /dev/null @@ -1,101 +0,0 @@ -// -// Tooltips -// -------------------------------------------------- - - -// Base class -.tooltip { - position: absolute; - z-index: $zindex-tooltip; - display: block; - // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element. - // So reset our font and text properties to avoid inheriting weird values. - @include reset-text; - font-size: $font-size-small; - - @include opacity(0); - - &.in { @include opacity($tooltip-opacity); } - &.top { margin-top: -3px; padding: $tooltip-arrow-width 0; } - &.right { margin-left: 3px; padding: 0 $tooltip-arrow-width; } - &.bottom { margin-top: 3px; padding: $tooltip-arrow-width 0; } - &.left { margin-left: -3px; padding: 0 $tooltip-arrow-width; } -} - -// Wrapper for the tooltip content -.tooltip-inner { - max-width: $tooltip-max-width; - padding: 3px 8px; - color: $tooltip-color; - text-align: center; - background-color: $tooltip-bg; - border-radius: $border-radius-base; -} - -// Arrows -.tooltip-arrow { - position: absolute; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; -} -// Note: Deprecated .top-left, .top-right, .bottom-left, and .bottom-right as of v3.3.1 -.tooltip { - &.top .tooltip-arrow { - bottom: 0; - left: 50%; - margin-left: -$tooltip-arrow-width; - border-width: $tooltip-arrow-width $tooltip-arrow-width 0; - border-top-color: $tooltip-arrow-color; - } - &.top-left .tooltip-arrow { - bottom: 0; - right: $tooltip-arrow-width; - margin-bottom: -$tooltip-arrow-width; - border-width: $tooltip-arrow-width $tooltip-arrow-width 0; - border-top-color: $tooltip-arrow-color; - } - &.top-right .tooltip-arrow { - bottom: 0; - left: $tooltip-arrow-width; - margin-bottom: -$tooltip-arrow-width; - border-width: $tooltip-arrow-width $tooltip-arrow-width 0; - border-top-color: $tooltip-arrow-color; - } - &.right .tooltip-arrow { - top: 50%; - left: 0; - margin-top: -$tooltip-arrow-width; - border-width: $tooltip-arrow-width $tooltip-arrow-width $tooltip-arrow-width 0; - border-right-color: $tooltip-arrow-color; - } - &.left .tooltip-arrow { - top: 50%; - right: 0; - margin-top: -$tooltip-arrow-width; - border-width: $tooltip-arrow-width 0 $tooltip-arrow-width $tooltip-arrow-width; - border-left-color: $tooltip-arrow-color; - } - &.bottom .tooltip-arrow { - top: 0; - left: 50%; - margin-left: -$tooltip-arrow-width; - border-width: 0 $tooltip-arrow-width $tooltip-arrow-width; - border-bottom-color: $tooltip-arrow-color; - } - &.bottom-left .tooltip-arrow { - top: 0; - right: $tooltip-arrow-width; - margin-top: -$tooltip-arrow-width; - border-width: 0 $tooltip-arrow-width $tooltip-arrow-width; - border-bottom-color: $tooltip-arrow-color; - } - &.bottom-right .tooltip-arrow { - top: 0; - left: $tooltip-arrow-width; - margin-top: -$tooltip-arrow-width; - border-width: 0 $tooltip-arrow-width $tooltip-arrow-width; - border-bottom-color: $tooltip-arrow-color; - } -} diff --git a/docs/source/assets/stylesheets/bootstrap/_type.scss b/docs/source/assets/stylesheets/bootstrap/_type.scss deleted file mode 100644 index a39a6158..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_type.scss +++ /dev/null @@ -1,298 +0,0 @@ -// -// Typography -// -------------------------------------------------- - - -// Headings -// ------------------------- - -h1, h2, h3, h4, h5, h6, -.h1, .h2, .h3, .h4, .h5, .h6 { - font-family: $headings-font-family; - font-weight: $headings-font-weight; - line-height: $headings-line-height; - color: $headings-color; - - small, - .small { - font-weight: normal; - line-height: 1; - color: $headings-small-color; - } -} - -h1, .h1, -h2, .h2, -h3, .h3 { - margin-top: $line-height-computed; - margin-bottom: ($line-height-computed / 2); - - small, - .small { - font-size: 65%; - } -} -h4, .h4, -h5, .h5, -h6, .h6 { - margin-top: ($line-height-computed / 2); - margin-bottom: ($line-height-computed / 2); - - small, - .small { - font-size: 75%; - } -} - -h1, .h1 { font-size: $font-size-h1; } -h2, .h2 { font-size: $font-size-h2; } -h3, .h3 { font-size: $font-size-h3; } -h4, .h4 { font-size: $font-size-h4; } -h5, .h5 { font-size: $font-size-h5; } -h6, .h6 { font-size: $font-size-h6; } - - -// Body text -// ------------------------- - -p { - margin: 0 0 ($line-height-computed / 2); -} - -.lead { - margin-bottom: $line-height-computed; - font-size: floor(($font-size-base * 1.15)); - font-weight: 300; - line-height: 1.4; - - @media (min-width: $screen-sm-min) { - font-size: ($font-size-base * 1.5); - } -} - - -// Emphasis & misc -// ------------------------- - -// Ex: (12px small font / 14px base font) * 100% = about 85% -small, -.small { - font-size: floor((100% * $font-size-small / $font-size-base)); -} - -mark, -.mark { - background-color: $state-warning-bg; - padding: .2em; -} - -// Alignment -.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; } - -// Transformation -.text-lowercase { text-transform: lowercase; } -.text-uppercase { text-transform: uppercase; } -.text-capitalize { text-transform: capitalize; } - -// Contextual colors -.text-muted { - color: $text-muted; -} - -@include text-emphasis-variant('.text-primary', $brand-primary); - -@include text-emphasis-variant('.text-success', $state-success-text); - -@include text-emphasis-variant('.text-info', $state-info-text); - -@include text-emphasis-variant('.text-warning', $state-warning-text); - -@include text-emphasis-variant('.text-danger', $state-danger-text); - -// Contextual backgrounds -// For now we'll leave these alongside the text classes until v4 when we can -// safely shift things around (per SemVer rules). -.bg-primary { - // Given the contrast here, this is the only class to have its color inverted - // automatically. - color: #fff; -} -@include bg-variant('.bg-primary', $brand-primary); - -@include bg-variant('.bg-success', $state-success-bg); - -@include bg-variant('.bg-info', $state-info-bg); - -@include bg-variant('.bg-warning', $state-warning-bg); - -@include bg-variant('.bg-danger', $state-danger-bg); - - -// Page header -// ------------------------- - -.page-header { - padding-bottom: (($line-height-computed / 2) - 1); - margin: ($line-height-computed * 2) 0 $line-height-computed; - border-bottom: 1px solid $page-header-border-color; -} - - -// Lists -// ------------------------- - -// Unordered and Ordered lists -ul, -ol { - margin-top: 0; - margin-bottom: ($line-height-computed / 2); - ul, - ol { - margin-bottom: 0; - } -} - -// List options - -// [converter] extracted from `.list-unstyled` for libsass compatibility -@mixin list-unstyled { - padding-left: 0; - list-style: none; -} -// [converter] extracted as `@mixin list-unstyled` for libsass compatibility -.list-unstyled { - @include list-unstyled; -} - - -// Inline turns list items into inline-block -.list-inline { - @include list-unstyled; - margin-left: -5px; - - > li { - display: inline-block; - padding-left: 5px; - padding-right: 5px; - } -} - -// Description Lists -dl { - margin-top: 0; // Remove browser default - margin-bottom: $line-height-computed; -} -dt, -dd { - line-height: $line-height-base; -} -dt { - font-weight: bold; -} -dd { - margin-left: 0; // Undo browser default -} - -// Horizontal description lists -// -// Defaults to being stacked without any of the below styles applied, until the -// grid breakpoint is reached (default of ~768px). - -.dl-horizontal { - dd { - @include clearfix; // Clear the floated `dt` if an empty `dd` is present - } - - @media (min-width: $grid-float-breakpoint) { - dt { - float: left; - width: ($dl-horizontal-offset - 20); - clear: left; - text-align: right; - @include text-overflow; - } - dd { - margin-left: $dl-horizontal-offset; - } - } -} - - -// Misc -// ------------------------- - -// Abbreviations and acronyms -abbr[title], -// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257 -abbr[data-original-title] { - cursor: help; - border-bottom: 1px dotted $abbr-border-color; -} -.initialism { - font-size: 90%; - @extend .text-uppercase; -} - -// Blockquotes -blockquote { - padding: ($line-height-computed / 2) $line-height-computed; - margin: 0 0 $line-height-computed; - font-size: $blockquote-font-size; - border-left: 5px solid $blockquote-border-color; - - p, - ul, - ol { - &:last-child { - margin-bottom: 0; - } - } - - // Note: Deprecated small and .small as of v3.1.0 - // Context: https://github.com/twbs/bootstrap/issues/11660 - footer, - small, - .small { - display: block; - font-size: 80%; // back to default font-size - line-height: $line-height-base; - color: $blockquote-small-color; - - &:before { - content: '\2014 \00A0'; // em dash, nbsp - } - } -} - -// Opposite alignment of blockquote -// -// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0. -.blockquote-reverse, -blockquote.pull-right { - padding-right: 15px; - padding-left: 0; - border-right: 5px solid $blockquote-border-color; - border-left: 0; - text-align: right; - - // Account for citation - footer, - small, - .small { - &:before { content: ''; } - &:after { - content: '\00A0 \2014'; // nbsp, em dash - } - } -} - -// Addresses -address { - margin-bottom: $line-height-computed; - font-style: normal; - line-height: $line-height-base; -} diff --git a/docs/source/assets/stylesheets/bootstrap/_utilities.scss b/docs/source/assets/stylesheets/bootstrap/_utilities.scss deleted file mode 100644 index 8c99c716..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_utilities.scss +++ /dev/null @@ -1,55 +0,0 @@ -// -// Utility classes -// -------------------------------------------------- - - -// Floats -// ------------------------- - -.clearfix { - @include clearfix; -} -.center-block { - @include center-block; -} -.pull-right { - float: right !important; -} -.pull-left { - float: left !important; -} - - -// Toggling content -// ------------------------- - -// Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1 -.hide { - display: none !important; -} -.show { - display: block !important; -} -.invisible { - visibility: hidden; -} -.text-hide { - @include text-hide; -} - - -// Hide from screenreaders and browsers -// -// Credit: HTML5 Boilerplate - -.hidden { - display: none !important; -} - - -// For Affix plugin -// ------------------------- - -.affix { - position: fixed; -} diff --git a/docs/source/assets/stylesheets/bootstrap/_variables.scss b/docs/source/assets/stylesheets/bootstrap/_variables.scss deleted file mode 100644 index bf9373b9..00000000 --- a/docs/source/assets/stylesheets/bootstrap/_variables.scss +++ /dev/null @@ -1,872 +0,0 @@ -$bootstrap-sass-asset-helper: false !default; -// -// Variables -// -------------------------------------------------- - - -//== Colors -// -//## Gray and brand colors for use across Bootstrap. - -$gray-base: #000 !default; -$gray-darker: lighten($gray-base, 13.5%) !default; // #222 -$gray-dark: lighten($gray-base, 20%) !default; // #333 -$gray: lighten($gray-base, 33.5%) !default; // #555 -$gray-light: lighten($gray-base, 46.7%) !default; // #777 -$gray-lighter: lighten($gray-base, 93.5%) !default; // #eee - -$brand-primary: darken(#428bca, 6.5%) !default; // #337ab7 -$brand-success: #5cb85c !default; -$brand-info: #5bc0de !default; -$brand-warning: #f0ad4e !default; -$brand-danger: #d9534f !default; - - -//== Scaffolding -// -//## Settings for some of the most global styles. - -//** Background color for ``. -$body-bg: #fff !default; -//** Global text color on ``. -$text-color: $gray-dark !default; - -//** Global textual link color. -$link-color: $brand-primary !default; -//** Link hover color set via `darken()` function. -$link-hover-color: darken($link-color, 15%) !default; -//** Link hover decoration. -$link-hover-decoration: underline !default; - - -//== Typography -// -//## Font, line-height, and color for body text, headings, and more. - -$font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif !default; -$font-family-serif: Georgia, "Times New Roman", Times, serif !default; -//** Default monospace fonts for ``, ``, and `
        `.
        -$font-family-monospace:   Menlo, Monaco, Consolas, "Courier New", monospace !default;
        -$font-family-base:        $font-family-sans-serif !default;
        -
        -$font-size-base:          14px !default;
        -$font-size-large:         ceil(($font-size-base * 1.25)) !default; // ~18px
        -$font-size-small:         ceil(($font-size-base * 0.85)) !default; // ~12px
        -
        -$font-size-h1:            floor(($font-size-base * 2.6)) !default; // ~36px
        -$font-size-h2:            floor(($font-size-base * 2.15)) !default; // ~30px
        -$font-size-h3:            ceil(($font-size-base * 1.7)) !default; // ~24px
        -$font-size-h4:            ceil(($font-size-base * 1.25)) !default; // ~18px
        -$font-size-h5:            $font-size-base !default;
        -$font-size-h6:            ceil(($font-size-base * 0.85)) !default; // ~12px
        -
        -//** Unit-less `line-height` for use in components like buttons.
        -$line-height-base:        1.428571429 !default; // 20/14
        -//** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.
        -$line-height-computed:    floor(($font-size-base * $line-height-base)) !default; // ~20px
        -
        -//** By default, this inherits from the ``.
        -$headings-font-family:    inherit !default;
        -$headings-font-weight:    500 !default;
        -$headings-line-height:    1.1 !default;
        -$headings-color:          inherit !default;
        -
        -
        -//== Iconography
        -//
        -//## Specify custom location and filename of the included Glyphicons icon font. Useful for those including Bootstrap via Bower.
        -
        -//** Load fonts from this directory.
        -
        -// [converter] If $bootstrap-sass-asset-helper if used, provide path relative to the assets load path.
        -// [converter] This is because some asset helpers, such as Sprockets, do not work with file-relative paths.
        -$icon-font-path: if($bootstrap-sass-asset-helper, "bootstrap/", "../fonts/bootstrap/") !default;
        -
        -//** File name for all font files.
        -$icon-font-name:          "glyphicons-halflings-regular" !default;
        -//** Element ID within SVG icon file.
        -$icon-font-svg-id:        "glyphicons_halflingsregular" !default;
        -
        -
        -//== Components
        -//
        -//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).
        -
        -$padding-base-vertical:     6px !default;
        -$padding-base-horizontal:   12px !default;
        -
        -$padding-large-vertical:    10px !default;
        -$padding-large-horizontal:  16px !default;
        -
        -$padding-small-vertical:    5px !default;
        -$padding-small-horizontal:  10px !default;
        -
        -$padding-xs-vertical:       1px !default;
        -$padding-xs-horizontal:     5px !default;
        -
        -$line-height-large:         1.3333333 !default; // extra decimals for Win 8.1 Chrome
        -$line-height-small:         1.5 !default;
        -
        -$border-radius-base:        4px !default;
        -$border-radius-large:       6px !default;
        -$border-radius-small:       3px !default;
        -
        -//** Global color for active items (e.g., navs or dropdowns).
        -$component-active-color:    #fff !default;
        -//** Global background color for active items (e.g., navs or dropdowns).
        -$component-active-bg:       $brand-primary !default;
        -
        -//** Width of the `border` for generating carets that indicator dropdowns.
        -$caret-width-base:          4px !default;
        -//** Carets increase slightly in size for larger components.
        -$caret-width-large:         5px !default;
        -
        -
        -//== Tables
        -//
        -//## Customizes the `.table` component with basic values, each used across all table variations.
        -
        -//** Padding for ``s and ``s.
        -$table-cell-padding:            8px !default;
        -//** Padding for cells in `.table-condensed`.
        -$table-condensed-cell-padding:  5px !default;
        -
        -//** Default background color used for all tables.
        -$table-bg:                      transparent !default;
        -//** Background color used for `.table-striped`.
        -$table-bg-accent:               #f9f9f9 !default;
        -//** Background color used for `.table-hover`.
        -$table-bg-hover:                #f5f5f5 !default;
        -$table-bg-active:               $table-bg-hover !default;
        -
        -//** Border color for table and cell borders.
        -$table-border-color:            #ddd !default;
        -
        -
        -//== Buttons
        -//
        -//## For each of Bootstrap's buttons, define text, background and border color.
        -
        -$btn-font-weight:                normal !default;
        -
        -$btn-default-color:              #333 !default;
        -$btn-default-bg:                 #fff !default;
        -$btn-default-border:             #ccc !default;
        -
        -$btn-primary-color:              #fff !default;
        -$btn-primary-bg:                 $brand-primary !default;
        -$btn-primary-border:             darken($btn-primary-bg, 5%) !default;
        -
        -$btn-success-color:              #fff !default;
        -$btn-success-bg:                 $brand-success !default;
        -$btn-success-border:             darken($btn-success-bg, 5%) !default;
        -
        -$btn-info-color:                 #fff !default;
        -$btn-info-bg:                    $brand-info !default;
        -$btn-info-border:                darken($btn-info-bg, 5%) !default;
        -
        -$btn-warning-color:              #fff !default;
        -$btn-warning-bg:                 $brand-warning !default;
        -$btn-warning-border:             darken($btn-warning-bg, 5%) !default;
        -
        -$btn-danger-color:               #fff !default;
        -$btn-danger-bg:                  $brand-danger !default;
        -$btn-danger-border:              darken($btn-danger-bg, 5%) !default;
        -
        -$btn-link-disabled-color:        $gray-light !default;
        -
        -// Allows for customizing button radius independently from global border radius
        -$btn-border-radius-base:         $border-radius-base !default;
        -$btn-border-radius-large:        $border-radius-large !default;
        -$btn-border-radius-small:        $border-radius-small !default;
        -
        -
        -//== Forms
        -//
        -//##
        -
        -//** `` background color
        -$input-bg:                       #fff !default;
        -//** `` background color
        -$input-bg-disabled:              $gray-lighter !default;
        -
        -//** Text color for ``s
        -$input-color:                    $gray !default;
        -//** `` border color
        -$input-border:                   #ccc !default;
        -
        -// TODO: Rename `$input-border-radius` to `$input-border-radius-base` in v4
        -//** Default `.form-control` border radius
        -// This has no effect on ``s in CSS.
        -$input-border-radius:            $border-radius-base !default;
        -//** Large `.form-control` border radius
        -$input-border-radius-large:      $border-radius-large !default;
        -//** Small `.form-control` border radius
        -$input-border-radius-small:      $border-radius-small !default;
        -
        -//** Border color for inputs on focus
        -$input-border-focus:             #66afe9 !default;
        -
        -//** Placeholder text color
        -$input-color-placeholder:        #999 !default;
        -
        -//** Default `.form-control` height
        -$input-height-base:              ($line-height-computed + ($padding-base-vertical * 2) + 2) !default;
        -//** Large `.form-control` height
        -$input-height-large:             (ceil($font-size-large * $line-height-large) + ($padding-large-vertical * 2) + 2) !default;
        -//** Small `.form-control` height
        -$input-height-small:             (floor($font-size-small * $line-height-small) + ($padding-small-vertical * 2) + 2) !default;
        -
        -//** `.form-group` margin
        -$form-group-margin-bottom:       15px !default;
        -
        -$legend-color:                   $gray-dark !default;
        -$legend-border-color:            #e5e5e5 !default;
        -
        -//** Background color for textual input addons
        -$input-group-addon-bg:           $gray-lighter !default;
        -//** Border color for textual input addons
        -$input-group-addon-border-color: $input-border !default;
        -
        -//** Disabled cursor for form controls and buttons.
        -$cursor-disabled:                not-allowed !default;
        -
        -
        -//== Dropdowns
        -//
        -//## Dropdown menu container and contents.
        -
        -//** Background for the dropdown menu.
        -$dropdown-bg:                    #fff !default;
        -//** Dropdown menu `border-color`.
        -$dropdown-border:                rgba(0,0,0,.15) !default;
        -//** Dropdown menu `border-color` **for IE8**.
        -$dropdown-fallback-border:       #ccc !default;
        -//** Divider color for between dropdown items.
        -$dropdown-divider-bg:            #e5e5e5 !default;
        -
        -//** Dropdown link text color.
        -$dropdown-link-color:            $gray-dark !default;
        -//** Hover color for dropdown links.
        -$dropdown-link-hover-color:      darken($gray-dark, 5%) !default;
        -//** Hover background for dropdown links.
        -$dropdown-link-hover-bg:         #f5f5f5 !default;
        -
        -//** Active dropdown menu item text color.
        -$dropdown-link-active-color:     $component-active-color !default;
        -//** Active dropdown menu item background color.
        -$dropdown-link-active-bg:        $component-active-bg !default;
        -
        -//** Disabled dropdown menu item background color.
        -$dropdown-link-disabled-color:   $gray-light !default;
        -
        -//** Text color for headers within dropdown menus.
        -$dropdown-header-color:          $gray-light !default;
        -
        -//** Deprecated `$dropdown-caret-color` as of v3.1.0
        -$dropdown-caret-color:           #000 !default;
        -
        -
        -//-- Z-index master list
        -//
        -// Warning: Avoid customizing these values. They're used for a bird's eye view
        -// of components dependent on the z-axis and are designed to all work together.
        -//
        -// Note: These variables are not generated into the Customizer.
        -
        -$zindex-navbar:            1000 !default;
        -$zindex-dropdown:          1000 !default;
        -$zindex-popover:           1060 !default;
        -$zindex-tooltip:           1070 !default;
        -$zindex-navbar-fixed:      1030 !default;
        -$zindex-modal-background:  1040 !default;
        -$zindex-modal:             1050 !default;
        -
        -
        -//== Media queries breakpoints
        -//
        -//## Define the breakpoints at which your layout will change, adapting to different screen sizes.
        -
        -// Extra small screen / phone
        -//** Deprecated `$screen-xs` as of v3.0.1
        -$screen-xs:                  480px !default;
        -//** Deprecated `$screen-xs-min` as of v3.2.0
        -$screen-xs-min:              $screen-xs !default;
        -//** Deprecated `$screen-phone` as of v3.0.1
        -$screen-phone:               $screen-xs-min !default;
        -
        -// Small screen / tablet
        -//** Deprecated `$screen-sm` as of v3.0.1
        -$screen-sm:                  768px !default;
        -$screen-sm-min:              $screen-sm !default;
        -//** Deprecated `$screen-tablet` as of v3.0.1
        -$screen-tablet:              $screen-sm-min !default;
        -
        -// Medium screen / desktop
        -//** Deprecated `$screen-md` as of v3.0.1
        -$screen-md:                  992px !default;
        -$screen-md-min:              $screen-md !default;
        -//** Deprecated `$screen-desktop` as of v3.0.1
        -$screen-desktop:             $screen-md-min !default;
        -
        -// Large screen / wide desktop
        -//** Deprecated `$screen-lg` as of v3.0.1
        -$screen-lg:                  1200px !default;
        -$screen-lg-min:              $screen-lg !default;
        -//** Deprecated `$screen-lg-desktop` as of v3.0.1
        -$screen-lg-desktop:          $screen-lg-min !default;
        -
        -// So media queries don't overlap when required, provide a maximum
        -$screen-xs-max:              ($screen-sm-min - 1) !default;
        -$screen-sm-max:              ($screen-md-min - 1) !default;
        -$screen-md-max:              ($screen-lg-min - 1) !default;
        -
        -
        -//== Grid system
        -//
        -//## Define your custom responsive grid.
        -
        -//** Number of columns in the grid.
        -$grid-columns:              12 !default;
        -//** Padding between columns. Gets divided in half for the left and right.
        -$grid-gutter-width:         30px !default;
        -// Navbar collapse
        -//** Point at which the navbar becomes uncollapsed.
        -$grid-float-breakpoint:     $screen-sm-min !default;
        -//** Point at which the navbar begins collapsing.
        -$grid-float-breakpoint-max: ($grid-float-breakpoint - 1) !default;
        -
        -
        -//== Container sizes
        -//
        -//## Define the maximum width of `.container` for different screen sizes.
        -
        -// Small screen / tablet
        -$container-tablet:             (720px + $grid-gutter-width) !default;
        -//** For `$screen-sm-min` and up.
        -$container-sm:                 $container-tablet !default;
        -
        -// Medium screen / desktop
        -$container-desktop:            (940px + $grid-gutter-width) !default;
        -//** For `$screen-md-min` and up.
        -$container-md:                 $container-desktop !default;
        -
        -// Large screen / wide desktop
        -$container-large-desktop:      (1140px + $grid-gutter-width) !default;
        -//** For `$screen-lg-min` and up.
        -$container-lg:                 $container-large-desktop !default;
        -
        -
        -//== Navbar
        -//
        -//##
        -
        -// Basics of a navbar
        -$navbar-height:                    50px !default;
        -$navbar-margin-bottom:             $line-height-computed !default;
        -$navbar-border-radius:             $border-radius-base !default;
        -$navbar-padding-horizontal:        floor(($grid-gutter-width / 2)) !default;
        -$navbar-padding-vertical:          (($navbar-height - $line-height-computed) / 2) !default;
        -$navbar-collapse-max-height:       340px !default;
        -
        -$navbar-default-color:             #777 !default;
        -$navbar-default-bg:                #f8f8f8 !default;
        -$navbar-default-border:            darken($navbar-default-bg, 6.5%) !default;
        -
        -// Navbar links
        -$navbar-default-link-color:                #777 !default;
        -$navbar-default-link-hover-color:          #333 !default;
        -$navbar-default-link-hover-bg:             transparent !default;
        -$navbar-default-link-active-color:         #555 !default;
        -$navbar-default-link-active-bg:            darken($navbar-default-bg, 6.5%) !default;
        -$navbar-default-link-disabled-color:       #ccc !default;
        -$navbar-default-link-disabled-bg:          transparent !default;
        -
        -// Navbar brand label
        -$navbar-default-brand-color:               $navbar-default-link-color !default;
        -$navbar-default-brand-hover-color:         darken($navbar-default-brand-color, 10%) !default;
        -$navbar-default-brand-hover-bg:            transparent !default;
        -
        -// Navbar toggle
        -$navbar-default-toggle-hover-bg:           #ddd !default;
        -$navbar-default-toggle-icon-bar-bg:        #888 !default;
        -$navbar-default-toggle-border-color:       #ddd !default;
        -
        -
        -//=== Inverted navbar
        -// Reset inverted navbar basics
        -$navbar-inverse-color:                      lighten($gray-light, 15%) !default;
        -$navbar-inverse-bg:                         #222 !default;
        -$navbar-inverse-border:                     darken($navbar-inverse-bg, 10%) !default;
        -
        -// Inverted navbar links
        -$navbar-inverse-link-color:                 lighten($gray-light, 15%) !default;
        -$navbar-inverse-link-hover-color:           #fff !default;
        -$navbar-inverse-link-hover-bg:              transparent !default;
        -$navbar-inverse-link-active-color:          $navbar-inverse-link-hover-color !default;
        -$navbar-inverse-link-active-bg:             darken($navbar-inverse-bg, 10%) !default;
        -$navbar-inverse-link-disabled-color:        #444 !default;
        -$navbar-inverse-link-disabled-bg:           transparent !default;
        -
        -// Inverted navbar brand label
        -$navbar-inverse-brand-color:                $navbar-inverse-link-color !default;
        -$navbar-inverse-brand-hover-color:          #fff !default;
        -$navbar-inverse-brand-hover-bg:             transparent !default;
        -
        -// Inverted navbar toggle
        -$navbar-inverse-toggle-hover-bg:            #333 !default;
        -$navbar-inverse-toggle-icon-bar-bg:         #fff !default;
        -$navbar-inverse-toggle-border-color:        #333 !default;
        -
        -
        -//== Navs
        -//
        -//##
        -
        -//=== Shared nav styles
        -$nav-link-padding:                          10px 15px !default;
        -$nav-link-hover-bg:                         $gray-lighter !default;
        -
        -$nav-disabled-link-color:                   $gray-light !default;
        -$nav-disabled-link-hover-color:             $gray-light !default;
        -
        -//== Tabs
        -$nav-tabs-border-color:                     #ddd !default;
        -
        -$nav-tabs-link-hover-border-color:          $gray-lighter !default;
        -
        -$nav-tabs-active-link-hover-bg:             $body-bg !default;
        -$nav-tabs-active-link-hover-color:          $gray !default;
        -$nav-tabs-active-link-hover-border-color:   #ddd !default;
        -
        -$nav-tabs-justified-link-border-color:            #ddd !default;
        -$nav-tabs-justified-active-link-border-color:     $body-bg !default;
        -
        -//== Pills
        -$nav-pills-border-radius:                   $border-radius-base !default;
        -$nav-pills-active-link-hover-bg:            $component-active-bg !default;
        -$nav-pills-active-link-hover-color:         $component-active-color !default;
        -
        -
        -//== Pagination
        -//
        -//##
        -
        -$pagination-color:                     $link-color !default;
        -$pagination-bg:                        #fff !default;
        -$pagination-border:                    #ddd !default;
        -
        -$pagination-hover-color:               $link-hover-color !default;
        -$pagination-hover-bg:                  $gray-lighter !default;
        -$pagination-hover-border:              #ddd !default;
        -
        -$pagination-active-color:              #fff !default;
        -$pagination-active-bg:                 $brand-primary !default;
        -$pagination-active-border:             $brand-primary !default;
        -
        -$pagination-disabled-color:            $gray-light !default;
        -$pagination-disabled-bg:               #fff !default;
        -$pagination-disabled-border:           #ddd !default;
        -
        -
        -//== Pager
        -//
        -//##
        -
        -$pager-bg:                             $pagination-bg !default;
        -$pager-border:                         $pagination-border !default;
        -$pager-border-radius:                  15px !default;
        -
        -$pager-hover-bg:                       $pagination-hover-bg !default;
        -
        -$pager-active-bg:                      $pagination-active-bg !default;
        -$pager-active-color:                   $pagination-active-color !default;
        -
        -$pager-disabled-color:                 $pagination-disabled-color !default;
        -
        -
        -//== Jumbotron
        -//
        -//##
        -
        -$jumbotron-padding:              30px !default;
        -$jumbotron-color:                inherit !default;
        -$jumbotron-bg:                   $gray-lighter !default;
        -$jumbotron-heading-color:        inherit !default;
        -$jumbotron-font-size:            ceil(($font-size-base * 1.5)) !default;
        -$jumbotron-heading-font-size:    ceil(($font-size-base * 4.5)) !default;
        -
        -
        -//== Form states and alerts
        -//
        -//## Define colors for form feedback states and, by default, alerts.
        -
        -$state-success-text:             #3c763d !default;
        -$state-success-bg:               #dff0d8 !default;
        -$state-success-border:           darken(adjust-hue($state-success-bg, -10), 5%) !default;
        -
        -$state-info-text:                #31708f !default;
        -$state-info-bg:                  #d9edf7 !default;
        -$state-info-border:              darken(adjust-hue($state-info-bg, -10), 7%) !default;
        -
        -$state-warning-text:             #8a6d3b !default;
        -$state-warning-bg:               #fcf8e3 !default;
        -$state-warning-border:           darken(adjust-hue($state-warning-bg, -10), 5%) !default;
        -
        -$state-danger-text:              #a94442 !default;
        -$state-danger-bg:                #f2dede !default;
        -$state-danger-border:            darken(adjust-hue($state-danger-bg, -10), 5%) !default;
        -
        -
        -//== Tooltips
        -//
        -//##
        -
        -//** Tooltip max width
        -$tooltip-max-width:           200px !default;
        -//** Tooltip text color
        -$tooltip-color:               #fff !default;
        -//** Tooltip background color
        -$tooltip-bg:                  #000 !default;
        -$tooltip-opacity:             .9 !default;
        -
        -//** Tooltip arrow width
        -$tooltip-arrow-width:         5px !default;
        -//** Tooltip arrow color
        -$tooltip-arrow-color:         $tooltip-bg !default;
        -
        -
        -//== Popovers
        -//
        -//##
        -
        -//** Popover body background color
        -$popover-bg:                          #fff !default;
        -//** Popover maximum width
        -$popover-max-width:                   276px !default;
        -//** Popover border color
        -$popover-border-color:                rgba(0,0,0,.2) !default;
        -//** Popover fallback border color
        -$popover-fallback-border-color:       #ccc !default;
        -
        -//** Popover title background color
        -$popover-title-bg:                    darken($popover-bg, 3%) !default;
        -
        -//** Popover arrow width
        -$popover-arrow-width:                 10px !default;
        -//** Popover arrow color
        -$popover-arrow-color:                 $popover-bg !default;
        -
        -//** Popover outer arrow width
        -$popover-arrow-outer-width:           ($popover-arrow-width + 1) !default;
        -//** Popover outer arrow color
        -$popover-arrow-outer-color:           fade_in($popover-border-color, 0.05) !default;
        -//** Popover outer arrow fallback color
        -$popover-arrow-outer-fallback-color:  darken($popover-fallback-border-color, 20%) !default;
        -
        -
        -//== Labels
        -//
        -//##
        -
        -//** Default label background color
        -$label-default-bg:            $gray-light !default;
        -//** Primary label background color
        -$label-primary-bg:            $brand-primary !default;
        -//** Success label background color
        -$label-success-bg:            $brand-success !default;
        -//** Info label background color
        -$label-info-bg:               $brand-info !default;
        -//** Warning label background color
        -$label-warning-bg:            $brand-warning !default;
        -//** Danger label background color
        -$label-danger-bg:             $brand-danger !default;
        -
        -//** Default label text color
        -$label-color:                 #fff !default;
        -//** Default text color of a linked label
        -$label-link-hover-color:      #fff !default;
        -
        -
        -//== Modals
        -//
        -//##
        -
        -//** Padding applied to the modal body
        -$modal-inner-padding:         15px !default;
        -
        -//** Padding applied to the modal title
        -$modal-title-padding:         15px !default;
        -//** Modal title line-height
        -$modal-title-line-height:     $line-height-base !default;
        -
        -//** Background color of modal content area
        -$modal-content-bg:                             #fff !default;
        -//** Modal content border color
        -$modal-content-border-color:                   rgba(0,0,0,.2) !default;
        -//** Modal content border color **for IE8**
        -$modal-content-fallback-border-color:          #999 !default;
        -
        -//** Modal backdrop background color
        -$modal-backdrop-bg:           #000 !default;
        -//** Modal backdrop opacity
        -$modal-backdrop-opacity:      .5 !default;
        -//** Modal header border color
        -$modal-header-border-color:   #e5e5e5 !default;
        -//** Modal footer border color
        -$modal-footer-border-color:   $modal-header-border-color !default;
        -
        -$modal-lg:                    900px !default;
        -$modal-md:                    600px !default;
        -$modal-sm:                    300px !default;
        -
        -
        -//== Alerts
        -//
        -//## Define alert colors, border radius, and padding.
        -
        -$alert-padding:               15px !default;
        -$alert-border-radius:         $border-radius-base !default;
        -$alert-link-font-weight:      bold !default;
        -
        -$alert-success-bg:            $state-success-bg !default;
        -$alert-success-text:          $state-success-text !default;
        -$alert-success-border:        $state-success-border !default;
        -
        -$alert-info-bg:               $state-info-bg !default;
        -$alert-info-text:             $state-info-text !default;
        -$alert-info-border:           $state-info-border !default;
        -
        -$alert-warning-bg:            $state-warning-bg !default;
        -$alert-warning-text:          $state-warning-text !default;
        -$alert-warning-border:        $state-warning-border !default;
        -
        -$alert-danger-bg:             $state-danger-bg !default;
        -$alert-danger-text:           $state-danger-text !default;
        -$alert-danger-border:         $state-danger-border !default;
        -
        -
        -//== Progress bars
        -//
        -//##
        -
        -//** Background color of the whole progress component
        -$progress-bg:                 #f5f5f5 !default;
        -//** Progress bar text color
        -$progress-bar-color:          #fff !default;
        -//** Variable for setting rounded corners on progress bar.
        -$progress-border-radius:      $border-radius-base !default;
        -
        -//** Default progress bar color
        -$progress-bar-bg:             $brand-primary !default;
        -//** Success progress bar color
        -$progress-bar-success-bg:     $brand-success !default;
        -//** Warning progress bar color
        -$progress-bar-warning-bg:     $brand-warning !default;
        -//** Danger progress bar color
        -$progress-bar-danger-bg:      $brand-danger !default;
        -//** Info progress bar color
        -$progress-bar-info-bg:        $brand-info !default;
        -
        -
        -//== List group
        -//
        -//##
        -
        -//** Background color on `.list-group-item`
        -$list-group-bg:                 #fff !default;
        -//** `.list-group-item` border color
        -$list-group-border:             #ddd !default;
        -//** List group border radius
        -$list-group-border-radius:      $border-radius-base !default;
        -
        -//** Background color of single list items on hover
        -$list-group-hover-bg:           #f5f5f5 !default;
        -//** Text color of active list items
        -$list-group-active-color:       $component-active-color !default;
        -//** Background color of active list items
        -$list-group-active-bg:          $component-active-bg !default;
        -//** Border color of active list elements
        -$list-group-active-border:      $list-group-active-bg !default;
        -//** Text color for content within active list items
        -$list-group-active-text-color:  lighten($list-group-active-bg, 40%) !default;
        -
        -//** Text color of disabled list items
        -$list-group-disabled-color:      $gray-light !default;
        -//** Background color of disabled list items
        -$list-group-disabled-bg:         $gray-lighter !default;
        -//** Text color for content within disabled list items
        -$list-group-disabled-text-color: $list-group-disabled-color !default;
        -
        -$list-group-link-color:         #555 !default;
        -$list-group-link-hover-color:   $list-group-link-color !default;
        -$list-group-link-heading-color: #333 !default;
        -
        -
        -//== Panels
        -//
        -//##
        -
        -$panel-bg:                    #fff !default;
        -$panel-body-padding:          15px !default;
        -$panel-heading-padding:       10px 15px !default;
        -$panel-footer-padding:        $panel-heading-padding !default;
        -$panel-border-radius:         $border-radius-base !default;
        -
        -//** Border color for elements within panels
        -$panel-inner-border:          #ddd !default;
        -$panel-footer-bg:             #f5f5f5 !default;
        -
        -$panel-default-text:          $gray-dark !default;
        -$panel-default-border:        #ddd !default;
        -$panel-default-heading-bg:    #f5f5f5 !default;
        -
        -$panel-primary-text:          #fff !default;
        -$panel-primary-border:        $brand-primary !default;
        -$panel-primary-heading-bg:    $brand-primary !default;
        -
        -$panel-success-text:          $state-success-text !default;
        -$panel-success-border:        $state-success-border !default;
        -$panel-success-heading-bg:    $state-success-bg !default;
        -
        -$panel-info-text:             $state-info-text !default;
        -$panel-info-border:           $state-info-border !default;
        -$panel-info-heading-bg:       $state-info-bg !default;
        -
        -$panel-warning-text:          $state-warning-text !default;
        -$panel-warning-border:        $state-warning-border !default;
        -$panel-warning-heading-bg:    $state-warning-bg !default;
        -
        -$panel-danger-text:           $state-danger-text !default;
        -$panel-danger-border:         $state-danger-border !default;
        -$panel-danger-heading-bg:     $state-danger-bg !default;
        -
        -
        -//== Thumbnails
        -//
        -//##
        -
        -//** Padding around the thumbnail image
        -$thumbnail-padding:           4px !default;
        -//** Thumbnail background color
        -$thumbnail-bg:                $body-bg !default;
        -//** Thumbnail border color
        -$thumbnail-border:            #ddd !default;
        -//** Thumbnail border radius
        -$thumbnail-border-radius:     $border-radius-base !default;
        -
        -//** Custom text color for thumbnail captions
        -$thumbnail-caption-color:     $text-color !default;
        -//** Padding around the thumbnail caption
        -$thumbnail-caption-padding:   9px !default;
        -
        -
        -//== Wells
        -//
        -//##
        -
        -$well-bg:                     #f5f5f5 !default;
        -$well-border:                 darken($well-bg, 7%) !default;
        -
        -
        -//== Badges
        -//
        -//##
        -
        -$badge-color:                 #fff !default;
        -//** Linked badge text color on hover
        -$badge-link-hover-color:      #fff !default;
        -$badge-bg:                    $gray-light !default;
        -
        -//** Badge text color in active nav link
        -$badge-active-color:          $link-color !default;
        -//** Badge background color in active nav link
        -$badge-active-bg:             #fff !default;
        -
        -$badge-font-weight:           bold !default;
        -$badge-line-height:           1 !default;
        -$badge-border-radius:         10px !default;
        -
        -
        -//== Breadcrumbs
        -//
        -//##
        -
        -$breadcrumb-padding-vertical:   8px !default;
        -$breadcrumb-padding-horizontal: 15px !default;
        -//** Breadcrumb background color
        -$breadcrumb-bg:                 #f5f5f5 !default;
        -//** Breadcrumb text color
        -$breadcrumb-color:              #ccc !default;
        -//** Text color of current page in the breadcrumb
        -$breadcrumb-active-color:       $gray-light !default;
        -//** Textual separator for between breadcrumb elements
        -$breadcrumb-separator:          "/" !default;
        -
        -
        -//== Carousel
        -//
        -//##
        -
        -$carousel-text-shadow:                        0 1px 2px rgba(0,0,0,.6) !default;
        -
        -$carousel-control-color:                      #fff !default;
        -$carousel-control-width:                      15% !default;
        -$carousel-control-opacity:                    .5 !default;
        -$carousel-control-font-size:                  20px !default;
        -
        -$carousel-indicator-active-bg:                #fff !default;
        -$carousel-indicator-border-color:             #fff !default;
        -
        -$carousel-caption-color:                      #fff !default;
        -
        -
        -//== Close
        -//
        -//##
        -
        -$close-font-weight:           bold !default;
        -$close-color:                 #000 !default;
        -$close-text-shadow:           0 1px 0 #fff !default;
        -
        -
        -//== Code
        -//
        -//##
        -
        -$code-color:                  #c7254e !default;
        -$code-bg:                     #f9f2f4 !default;
        -
        -$kbd-color:                   #fff !default;
        -$kbd-bg:                      #333 !default;
        -
        -$pre-bg:                      #f5f5f5 !default;
        -$pre-color:                   $gray-dark !default;
        -$pre-border-color:            #ccc !default;
        -$pre-scrollable-max-height:   340px !default;
        -
        -
        -//== Type
        -//
        -//##
        -
        -//** Horizontal offset for forms and lists.
        -$component-offset-horizontal: 180px !default;
        -//** Text muted color
        -$text-muted:                  $gray-light !default;
        -//** Abbreviations and acronyms border color
        -$abbr-border-color:           $gray-light !default;
        -//** Headings small color
        -$headings-small-color:        $gray-light !default;
        -//** Blockquote small color
        -$blockquote-small-color:      $gray-light !default;
        -//** Blockquote font size
        -$blockquote-font-size:        ($font-size-base * 1.25) !default;
        -//** Blockquote border color
        -$blockquote-border-color:     $gray-lighter !default;
        -//** Page header border color
        -$page-header-border-color:    $gray-lighter !default;
        -//** Width of horizontal description list titles
        -$dl-horizontal-offset:        $component-offset-horizontal !default;
        -//** Horizontal line color.
        -$hr-border:                   $gray-lighter !default;
        diff --git a/docs/source/assets/stylesheets/bootstrap/_wells.scss b/docs/source/assets/stylesheets/bootstrap/_wells.scss
        deleted file mode 100644
        index b8657118..00000000
        --- a/docs/source/assets/stylesheets/bootstrap/_wells.scss
        +++ /dev/null
        @@ -1,29 +0,0 @@
        -//
        -// Wells
        -// --------------------------------------------------
        -
        -
        -// Base class
        -.well {
        -  min-height: 20px;
        -  padding: 19px;
        -  margin-bottom: 20px;
        -  background-color: $well-bg;
        -  border: 1px solid $well-border;
        -  border-radius: $border-radius-base;
        -  @include box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
        -  blockquote {
        -    border-color: #ddd;
        -    border-color: rgba(0,0,0,.15);
        -  }
        -}
        -
        -// Sizes
        -.well-lg {
        -  padding: 24px;
        -  border-radius: $border-radius-large;
        -}
        -.well-sm {
        -  padding: 9px;
        -  border-radius: $border-radius-small;
        -}
        diff --git a/docs/source/assets/stylesheets/bootstrap/mixins/_alerts.scss b/docs/source/assets/stylesheets/bootstrap/mixins/_alerts.scss
        deleted file mode 100644
        index 3faf0b5a..00000000
        --- a/docs/source/assets/stylesheets/bootstrap/mixins/_alerts.scss
        +++ /dev/null
        @@ -1,14 +0,0 @@
        -// Alerts
        -
        -@mixin alert-variant($background, $border, $text-color) {
        -  background-color: $background;
        -  border-color: $border;
        -  color: $text-color;
        -
        -  hr {
        -    border-top-color: darken($border, 5%);
        -  }
        -  .alert-link {
        -    color: darken($text-color, 10%);
        -  }
        -}
        diff --git a/docs/source/assets/stylesheets/bootstrap/mixins/_background-variant.scss b/docs/source/assets/stylesheets/bootstrap/mixins/_background-variant.scss
        deleted file mode 100644
        index 4c7769e1..00000000
        --- a/docs/source/assets/stylesheets/bootstrap/mixins/_background-variant.scss
        +++ /dev/null
        @@ -1,12 +0,0 @@
        -// Contextual backgrounds
        -
        -// [converter] $parent hack
        -@mixin bg-variant($parent, $color) {
        -  #{$parent} {
        -    background-color: $color;
        -  }
        -  a#{$parent}:hover,
        -  a#{$parent}:focus {
        -    background-color: darken($color, 10%);
        -  }
        -}
        diff --git a/docs/source/assets/stylesheets/bootstrap/mixins/_border-radius.scss b/docs/source/assets/stylesheets/bootstrap/mixins/_border-radius.scss
        deleted file mode 100644
        index ce194998..00000000
        --- a/docs/source/assets/stylesheets/bootstrap/mixins/_border-radius.scss
        +++ /dev/null
        @@ -1,18 +0,0 @@
        -// Single side border-radius
        -
        -@mixin border-top-radius($radius) {
        -  border-top-right-radius: $radius;
        -   border-top-left-radius: $radius;
        -}
        -@mixin border-right-radius($radius) {
        -  border-bottom-right-radius: $radius;
        -     border-top-right-radius: $radius;
        -}
        -@mixin border-bottom-radius($radius) {
        -  border-bottom-right-radius: $radius;
        -   border-bottom-left-radius: $radius;
        -}
        -@mixin border-left-radius($radius) {
        -  border-bottom-left-radius: $radius;
        -     border-top-left-radius: $radius;
        -}
        diff --git a/docs/source/assets/stylesheets/bootstrap/mixins/_buttons.scss b/docs/source/assets/stylesheets/bootstrap/mixins/_buttons.scss
        deleted file mode 100644
        index ad311873..00000000
        --- a/docs/source/assets/stylesheets/bootstrap/mixins/_buttons.scss
        +++ /dev/null
        @@ -1,68 +0,0 @@
        -// Button variants
        -//
        -// Easily pump out default styles, as well as :hover, :focus, :active,
        -// and disabled options for all buttons
        -
        -@mixin button-variant($color, $background, $border) {
        -  color: $color;
        -  background-color: $background;
        -  border-color: $border;
        -
        -  &:focus,
        -  &.focus {
        -    color: $color;
        -    background-color: darken($background, 10%);
        -        border-color: darken($border, 25%);
        -  }
        -  &:hover {
        -    color: $color;
        -    background-color: darken($background, 10%);
        -        border-color: darken($border, 12%);
        -  }
        -  &:active,
        -  &.active,
        -  .open > &.dropdown-toggle {
        -    color: $color;
        -    background-color: darken($background, 10%);
        -        border-color: darken($border, 12%);
        -
        -    &:hover,
        -    &:focus,
        -    &.focus {
        -      color: $color;
        -      background-color: darken($background, 17%);
        -          border-color: darken($border, 25%);
        -    }
        -  }
        -  &:active,
        -  &.active,
        -  .open > &.dropdown-toggle {
        -    background-image: none;
        -  }
        -  &.disabled,
        -  &[disabled],
        -  fieldset[disabled] & {
        -    &,
        -    &:hover,
        -    &:focus,
        -    &.focus,
        -    &:active,
        -    &.active {
        -      background-color: $background;
        -          border-color: $border;
        -    }
        -  }
        -
        -  .badge {
        -    color: $background;
        -    background-color: $color;
        -  }
        -}
        -
        -// Button sizes
        -@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
        -  padding: $padding-vertical $padding-horizontal;
        -  font-size: $font-size;
        -  line-height: $line-height;
        -  border-radius: $border-radius;
        -}
        diff --git a/docs/source/assets/stylesheets/bootstrap/mixins/_center-block.scss b/docs/source/assets/stylesheets/bootstrap/mixins/_center-block.scss
        deleted file mode 100644
        index e06fb5e2..00000000
        --- a/docs/source/assets/stylesheets/bootstrap/mixins/_center-block.scss
        +++ /dev/null
        @@ -1,7 +0,0 @@
        -// Center-align a block level element
        -
        -@mixin center-block() {
        -  display: block;
        -  margin-left: auto;
        -  margin-right: auto;
        -}
        diff --git a/docs/source/assets/stylesheets/bootstrap/mixins/_clearfix.scss b/docs/source/assets/stylesheets/bootstrap/mixins/_clearfix.scss
        deleted file mode 100644
        index dc3e2ab4..00000000
        --- a/docs/source/assets/stylesheets/bootstrap/mixins/_clearfix.scss
        +++ /dev/null
        @@ -1,22 +0,0 @@
        -// Clearfix
        -//
        -// For modern browsers
        -// 1. The space content is one way to avoid an Opera bug when the
        -//    contenteditable attribute is included anywhere else in the document.
        -//    Otherwise it causes space to appear at the top and bottom of elements
        -//    that are clearfixed.
        -// 2. The use of `table` rather than `block` is only necessary if using
        -//    `:before` to contain the top-margins of child elements.
        -//
        -// Source: http://nicolasgallagher.com/micro-clearfix-hack/
        -
        -@mixin clearfix() {
        -  &:before,
        -  &:after {
        -    content: " "; // 1
        -    display: table; // 2
        -  }
        -  &:after {
        -    clear: both;
        -  }
        -}
        diff --git a/docs/source/assets/stylesheets/bootstrap/mixins/_forms.scss b/docs/source/assets/stylesheets/bootstrap/mixins/_forms.scss
        deleted file mode 100644
        index 277aa5f8..00000000
        --- a/docs/source/assets/stylesheets/bootstrap/mixins/_forms.scss
        +++ /dev/null
        @@ -1,88 +0,0 @@
        -// Form validation states
        -//
        -// Used in forms.less to generate the form validation CSS for warnings, errors,
        -// and successes.
        -
        -@mixin form-control-validation($text-color: #555, $border-color: #ccc, $background-color: #f5f5f5) {
        -  // Color the label and help text
        -  .help-block,
        -  .control-label,
        -  .radio,
        -  .checkbox,
        -  .radio-inline,
        -  .checkbox-inline,
        -  &.radio label,
        -  &.checkbox label,
        -  &.radio-inline label,
        -  &.checkbox-inline label  {
        -    color: $text-color;
        -  }
        -  // Set the border and box shadow on specific inputs to match
        -  .form-control {
        -    border-color: $border-color;
        -    @include box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work
        -    &:focus {
        -      border-color: darken($border-color, 10%);
        -      $shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten($border-color, 20%);
        -      @include box-shadow($shadow);
        -    }
        -  }
        -  // Set validation states also for addons
        -  .input-group-addon {
        -    color: $text-color;
        -    border-color: $border-color;
        -    background-color: $background-color;
        -  }
        -  // Optional feedback icon
        -  .form-control-feedback {
        -    color: $text-color;
        -  }
        -}
        -
        -
        -// Form control focus state
        -//
        -// Generate a customized focus state and for any input with the specified color,
        -// which defaults to the `$input-border-focus` variable.
        -//
        -// We highly encourage you to not customize the default value, but instead use
        -// this to tweak colors on an as-needed basis. This aesthetic change is based on
        -// WebKit's default styles, but applicable to a wider range of browsers. Its
        -// usability and accessibility should be taken into account with any change.
        -//
        -// Example usage: change the default blue border and shadow to white for better
        -// contrast against a dark gray background.
        -@mixin form-control-focus($color: $input-border-focus) {
        -  $color-rgba: rgba(red($color), green($color), blue($color), .6);
        -  &:focus {
        -    border-color: $color;
        -    outline: 0;
        -    @include box-shadow(inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px $color-rgba);
        -  }
        -}
        -
        -// Form control sizing
        -//
        -// Relative text size, padding, and border-radii changes for form controls. For
        -// horizontal sizing, wrap controls in the predefined grid classes. `
        -          
        -          
        -        
        - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/source/partials/join-form.haml b/docs/source/partials/join-form.haml deleted file mode 100644 index 8e3b7eff..00000000 --- a/docs/source/partials/join-form.haml +++ /dev/null @@ -1,47 +0,0 @@ -%form.join-form.join-form-fill.gradient-white.pos-rel.z-10.p-xlarge.p-l-xxlarge.p-r-xxlarge.radius6.elevation1.m-l-r-auto - %header.text-center - %h3.color-bunting.text-demi.no-margin.text-lg Get Started. It’s FREE! - .spacer32 - %label.color-bunting.text-normal{:for => "url"} Website - .input-group - %span.input-group-addon - %i.icon.icon-link.color-bunting - %input.form-control{type: 'text', placeholder: 'https://website.com/doc', name: 'url'} - %p.text-sm.color-east-bay.m-t-small - We’ll crawl the documentation pages of your website and index them on Algolia. - Refer to - %a{href: "https://community.algolia.com/docsearch/documentation/docsearch-FAQ/customize-configuration-file/", class:"clickable"} the projects we support - .spacer16 - %label.color-bunting.text-normal{:for => "email"} Email - .input-group - %span.input-group-addon - %i.icon.icon-email.color-bunting - %input.form-control{type: 'email', placeholder: 'you@example.org', name: 'email'} - %p.text-sm.color-east-bay.m-t-small We’ll email you the code you need to integrate the search into your documentation. - .spacer16 - %p.checkbox.text-center - %label - %input{type: 'checkbox', name: 'owner'} - %span I'm the owner of that website - .row - .form-group.pos-rel.p-small - %div - %p - Refer to - %a{href: "https://www.algolia.com/policies/terms", class:"clickable"} Algolia's Privacy Policy - for more information on how we use and protect your data - .text-center - %button.btn.btn-static-primary.w100p{type: 'submit'} - Join the program - -%form.join-form.join-form-validated.gradient-white.pos-rel.z-10.p-xlarge.p-l-xxlarge.p-r-xxlarge.radius6.elevation1.m-l-r-auto.hidden - %h3 Thank you ! - .spacer20 - %p.text-sm - %b - We'll review your request shortly, - after making sure your website is eligible to DocSearch. - %p.text-sm - This is a manual process and can take some time. - %p.text-sm We'll then email you the code you need to integrate on your website - .spacer20 diff --git a/docs/source/partials/marketing.html.erb b/docs/source/partials/marketing.html.erb deleted file mode 100644 index 6a40f799..00000000 --- a/docs/source/partials/marketing.html.erb +++ /dev/null @@ -1,10 +0,0 @@ -<% if config[:stage] == 'production' %> - - - -<% end %> diff --git a/docs/source/partials/newsletter-mc.haml b/docs/source/partials/newsletter-mc.haml deleted file mode 100644 index e272f6ab..00000000 --- a/docs/source/partials/newsletter-mc.haml +++ /dev/null @@ -1,20 +0,0 @@ - -#mc_embed_signup - %form{action: '//algolia.us3.list-manage.com/subscribe/post?u=f7b8acc6ec97794a08484ca9b&id=285b80e148', method: 'post', id: 'mc-embedded-subscribe-form' name: 'mc-embedded-subscribe-form' class: 'validate' novalidate: true} - #mc_embed_signup_scroll - %h3 - Sign up for our newsletter - .spacer20 - .input-group - .input-group-addon#sizing-addon1 - %i.fa.fa-envelope-o - %input.form-control#mce-EMAIL{type: 'email', value:'', name: 'EMAIL', placeholder: 'Email Address'} - %span.input-group-btn - %input#mc-embedded-subscribe.btn.btn-primary{type: 'submit' value: 'Subscribe' name: 'subscribe'} - #mce-responses.clear - .response#mce-error-response - .response#mce-success-response{style: 'display:none'} - - %div{style: 'position: absolute; left: -5000px;'} - %input{type: 'text', name: 'b_f7b8acc6ec97794a08484ca9b_285b80e148', tabindex: '-1', value:''} - diff --git a/docs/source/sitemap.xml.erb b/docs/source/sitemap.xml.erb deleted file mode 100644 index ecb166b0..00000000 --- a/docs/source/sitemap.xml.erb +++ /dev/null @@ -1,10 +0,0 @@ - - -<% sitemap_tree.flatten.each do |page| %> - <% if page.get_val.destination_path.include?('.html') %> - - <%= "#{app_data.config.host}/#{page.get_val.destination_path.gsub(/index\.html$/, '')}" %> - - <% end %> -<% end %> - diff --git a/docs/source/templates/redirect.html.erb b/docs/source/templates/redirect.html.erb deleted file mode 100644 index 63b7b5e6..00000000 --- a/docs/source/templates/redirect.html.erb +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/docs/source/templates/redirects.erb b/docs/source/templates/redirects.erb deleted file mode 100644 index 4df5c70a..00000000 --- a/docs/source/templates/redirects.erb +++ /dev/null @@ -1,3 +0,0 @@ -<% redirects.each do |r| %> -<%= r[:from].gsub(/(.+)\/index\.html/, '\1').gsub('index.html', '') %> <%= "#{r[:to].gsub('/index.html', '').gsub(/\/$/, '')}/" %> -<% end %> \ No newline at end of file diff --git a/docs-src/_includes/header.pug b/docs/src/_includes/header.pug similarity index 100% rename from docs-src/_includes/header.pug rename to docs/src/_includes/header.pug diff --git a/docs-src/_includes/tag-manager-noscript.pug b/docs/src/_includes/tag-manager-noscript.pug similarity index 100% rename from docs-src/_includes/tag-manager-noscript.pug rename to docs/src/_includes/tag-manager-noscript.pug diff --git a/docs-src/_includes/tag-manager.pug b/docs/src/_includes/tag-manager.pug similarity index 100% rename from docs-src/_includes/tag-manager.pug rename to docs/src/_includes/tag-manager.pug diff --git a/docs-src/_layouts/homepage.pug b/docs/src/_layouts/homepage.pug similarity index 71% rename from docs-src/_layouts/homepage.pug rename to docs/src/_layouts/homepage.pug index a0a2d630..cee3cf54 100644 --- a/docs-src/_layouts/homepage.pug +++ b/docs/src/_layouts/homepage.pug @@ -33,20 +33,5 @@ block content .text-solstice.text-5.normal.pb-2 Demos - include ../_mixins/demo.pug - .max-w-lg.m-auto.pb-4 - .flex.flrw - +demo('dotconferences', 'dotConferences') - +demo('saastr', 'Saastr') - +demo('googleio', 'Google I/O') - +demo('usi', 'USI') - +demo('chatbot-summit', 'Chatbot Summit', 'demos/chatbot-summit/logo-alternate.png') - +demo('takeoffconference', 'TakeOff Conf') - .fln.w-100.sm_w-50.md_w-33.p-1.h-5.flex.flrnw - a.c-card.fla.flex.flcnw.p-05.text-telluric(href="mailto:talksearch@algolia.com") - .fla.text-solstice.text-5.normal.flex.flrnw.flc.bold You? - .p-1 Send us an email at - .text-nebula talksearch@algolia.com - |if you'd like to be on that list diff --git a/docs-src/_layouts/main.pug b/docs/src/_layouts/main.pug similarity index 100% rename from docs-src/_layouts/main.pug rename to docs/src/_layouts/main.pug diff --git a/docs-src/_layouts/two-columns.pug b/docs/src/_layouts/two-columns.pug similarity index 100% rename from docs-src/_layouts/two-columns.pug rename to docs/src/_layouts/two-columns.pug diff --git a/docs-src/_styles/components.css b/docs/src/_styles/components.css similarity index 100% rename from docs-src/_styles/components.css rename to docs/src/_styles/components.css diff --git a/docs-src/_styles/debug.css b/docs/src/_styles/debug.css similarity index 100% rename from docs-src/_styles/debug.css rename to docs/src/_styles/debug.css diff --git a/docs-src/_styles/docsearch.css b/docs/src/_styles/docsearch.css similarity index 100% rename from docs-src/_styles/docsearch.css rename to docs/src/_styles/docsearch.css diff --git a/docs-src/_styles/fonts.css b/docs/src/_styles/fonts.css similarity index 100% rename from docs-src/_styles/fonts.css rename to docs/src/_styles/fonts.css diff --git a/docs-src/_styles/highlight.css b/docs/src/_styles/highlight.css similarity index 100% rename from docs-src/_styles/highlight.css rename to docs/src/_styles/highlight.css diff --git a/docs-src/_styles/tailwind.css b/docs/src/_styles/tailwind.css similarity index 100% rename from docs-src/_styles/tailwind.css rename to docs/src/_styles/tailwind.css diff --git a/docs-src/assets/algolia-logo.svg b/docs/src/assets/algolia-logo.svg similarity index 100% rename from docs-src/assets/algolia-logo.svg rename to docs/src/assets/algolia-logo.svg diff --git a/docs-src/assets/arrow-separator.svg b/docs/src/assets/arrow-separator.svg similarity index 100% rename from docs-src/assets/arrow-separator.svg rename to docs/src/assets/arrow-separator.svg diff --git a/docs-src/assets/community-logo.svg b/docs/src/assets/community-logo.svg similarity index 100% rename from docs-src/assets/community-logo.svg rename to docs/src/assets/community-logo.svg diff --git a/docs-src/assets/github-logo.svg b/docs/src/assets/github-logo.svg similarity index 100% rename from docs-src/assets/github-logo.svg rename to docs/src/assets/github-logo.svg diff --git a/docs-src/assets/logo-small.png b/docs/src/assets/logo-small.png similarity index 100% rename from docs-src/assets/logo-small.png rename to docs/src/assets/logo-small.png diff --git a/docs-src/assets/magnifying-glass.svg b/docs/src/assets/magnifying-glass.svg similarity index 100% rename from docs-src/assets/magnifying-glass.svg rename to docs/src/assets/magnifying-glass.svg diff --git a/docs-src/assets/react-icon.svg b/docs/src/assets/react-icon.svg similarity index 100% rename from docs-src/assets/react-icon.svg rename to docs/src/assets/react-icon.svg diff --git a/docs/source/documentation/2-docsearch-scraper/2-config-options.html.md.erb b/docs/src/config-file.md similarity index 99% rename from docs/source/documentation/2-docsearch-scraper/2-config-options.html.md.erb rename to docs/src/config-file.md index 3bdeb022..e686c94f 100644 --- a/docs/source/documentation/2-docsearch-scraper/2-config-options.html.md.erb +++ b/docs/src/config-file.md @@ -1,4 +1,5 @@ --- +layout: two-columns title: Make the most of your configuration --- diff --git a/docs/source/documentation/2-docsearch-scraper/1-overview.html.md.erb b/docs/src/docker.md similarity index 99% rename from docs/source/documentation/2-docsearch-scraper/1-overview.html.md.erb rename to docs/src/docker.md index fd4b97af..9de5d9d7 100644 --- a/docs/source/documentation/2-docsearch-scraper/1-overview.html.md.erb +++ b/docs/src/docker.md @@ -1,4 +1,5 @@ --- +layout: two-columns title: DocSearch on your own infrastructure --- @@ -150,4 +151,4 @@ If you are running the scraper on your own, you will need to tell the widget abo }); ``` -If Algolia is handling the crawling of your site, you do not need to specify `appId`. \ No newline at end of file +If Algolia is handling the crawling of your site, you do not need to specify `appId`. diff --git a/docs-src/dropdown-configuration.md b/docs/src/events.md similarity index 100% rename from docs-src/dropdown-configuration.md rename to docs/src/events.md diff --git a/docs-src/faq2.md b/docs/src/faq.md similarity index 99% rename from docs-src/faq2.md rename to docs/src/faq.md index 04c52a41..e2ad4db8 100644 --- a/docs-src/faq2.md +++ b/docs/src/faq.md @@ -1,4 +1,5 @@ --- +layout: two-columns title: Global wonderings --- diff --git a/docs-src/favicon.ico b/docs/src/favicon.ico similarity index 100% rename from docs-src/favicon.ico rename to docs/src/favicon.ico diff --git a/docs-src/how-it-works.md b/docs/src/how-it-works.md similarity index 100% rename from docs-src/how-it-works.md rename to docs/src/how-it-works.md diff --git a/docs-src/index.md b/docs/src/index.md similarity index 100% rename from docs-src/index.md rename to docs/src/index.md diff --git a/docs-src/qualification.md b/docs/src/qualification.md similarity index 99% rename from docs-src/qualification.md rename to docs/src/qualification.md index a711eb1a..aab350ae 100644 --- a/docs-src/qualification.md +++ b/docs/src/qualification.md @@ -1,4 +1,5 @@ --- +layout: two-columns title: Does my project qualify? --- diff --git a/docs-src/style.css b/docs/src/style.css similarity index 99% rename from docs-src/style.css rename to docs/src/style.css index 7702a8c4..1e25599e 100644 --- a/docs-src/style.css +++ b/docs/src/style.css @@ -113,3 +113,4 @@ code { 50px 0 0 rgba(236, 139, 99, 0.5); } } + diff --git a/docs-src/styling.md b/docs/src/styling.md similarity index 100% rename from docs-src/styling.md rename to docs/src/styling.md diff --git a/docs-src/tips.md b/docs/src/tips.md similarity index 98% rename from docs-src/tips.md rename to docs/src/tips.md index 32ce90bc..3ee81ade 100644 --- a/docs-src/tips.md +++ b/docs/src/tips.md @@ -87,7 +87,9 @@ this precise page will be scraped, crawled and so forth. This **de facto discovery** is really practical but not exhaustive enough. If for any reason, a webpage could not be referenced from another covered one, the scope of the search will be imperfect. -For those reasons we highly recommend that you use a **Sitemap** (#). + +For those reasons we highly recommend that you use a [**Sitemap**](https://www.sitemaps.org/). + This lists every page of your web site and will be used as the **main source of truth** and it will define the roadmap of our scraping. Beside this exhaustivity, using a sitemap introduces a significant performance improvement for our scraper. diff --git a/docs-src/what-is-docsearch.md b/docs/src/what-is-docsearch.md similarity index 100% rename from docs-src/what-is-docsearch.md rename to docs/src/what-is-docsearch.md diff --git a/docs/tailwind.config.js b/docs/tailwind.config.js new file mode 100644 index 00000000..07fbd793 --- /dev/null +++ b/docs/tailwind.config.js @@ -0,0 +1,516 @@ +/* eslint-disable import/no-commonjs */ +/* Note: this file is used for styling the documentation website, not the javascript + * dropdown. */ +const _ = require('lodash'); +const algoliaColors = { + moon: '#f5f5fa', + proton: '#c5c9e0', + nova: '#848ab8', + telluric: '#5d6494', // Text + solstice: '#3a416f', // Headers + cosmos: '#21243d', + nebula: '#5468ff', // links + + 'neptune-2': '#3A46A1', + 'neptune-1': '#5560B5', + neptune: '#707BCC', + 'neptune--1': '#8D97E3', + 'neptune--2': '#A6B0F9', + + 'mercury-2': '#008FBA', + 'mercury-1': '#2DA7CB', + mercury: '#5BBFDD', + 'mercury--1': '#88d6ee', + 'mercury--2': '#b5eeff', + + 'jupiter-2': '#3ab2bd', + 'jupiter-1': '#61c5c8', + jupiter: '#89d9d3', + 'jupiter--1': '#b0ecde', + 'jupiter--2': '#d7ffe9', + + 'saturn-2': '#ec8b63', + 'saturn-1': '#f3a57e', + saturn: '#f8be9a', + 'saturn--1': '#fcd7b7', + 'saturn--2': '#fdf1d4', + + 'mars-2': '#ed5a6a', + 'mars-1': '#f27885', + mars: '#f695a0', + 'mars--1': '#fbb3ba', + 'mars--2': '#ffd0d5', + + 'venus-2': '#ae3e88', + 'venus-1': '#d44fa4', + venus: '#ea71bc', + 'venus--1': '#f89ad3', + 'venus--2': '#ffcae9', +}; +const colors = { + ...algoliaColors, + transparent: 'transparent', + inherit: 'inherit', + 'white-pure': '#FFF', + 'black-pure': '#000', + white: algoliaColors.moon, + black: algoliaColors.cosmos, + grey: algoliaColors.proton, + 'grey-1': algoliaColors.nova, + 'grey-2': algoliaColors.telluric, + 'grey-3': algoliaColors.solstice, + + red: algoliaColors.mars, + orange: algoliaColors.saturn, + yellow: algoliaColors['saturn--2'], + green: algoliaColors.jupiter, + teal: algoliaColors.mercury, + blue: algoliaColors.nebula, + indigo: algoliaColors.neptune, + purple: algoliaColors['venus-2'], + pink: algoliaColors.venus, + + // Alpha + 'black-10': 'rgba(0, 0, 0, .10)', + 'black-25': 'rgba(0, 0, 0, .25)', + 'black-50': 'rgba(0, 0, 0, .50)', + 'black-65': 'rgba(0, 0, 0, .65)', + 'black-75': 'rgba(0, 0, 0, .75)', + 'black-90': 'rgba(0, 0, 0, .90)', + 'white-10': 'rgba(255, 255, 255, .10)', + 'white-25': 'rgba(255, 255, 255, .25)', + 'white-50': 'rgba(255, 255, 255, .50)', + 'white-65': 'rgba(255, 255, 255, .65)', + 'white-75': 'rgba(255, 255, 255, .75)', + 'white-90': 'rgba(255, 255, 255, .90)', +}; + +const dimensionScale = { + auto: 'auto', + '0': '0', + '1': '1rem', + '1x': '1.5rem', + '2': '2rem', + '2x': '3rem', + '3': '4rem', + '3x': '6rem', + '4': '8rem', + '4x': '12rem', + '5': '16rem', + '10': '10%', + '20': '20%', + '25': '25%', + '30': '30%', + '33': 'calc(100% / 3)', + '40': '40%', + '50': '50%', + '60': '60%', + '66': 'calc(100% / 1.5)', + '70': '70%', + '75': '75%', + '80': '80%', + '90': '90%', + '100': '100%', + sm: '576px', + md: '768px', + lg: '992px', + xl: '1200px', +}; + +const widthScale = { + ...dimensionScale, + '100vw': '100vw', +}; +const heightScale = { + ...dimensionScale, + '100vh': '100vh', +}; + +const spacingScale = { + '0': '0', + '0x': '.25rem', + '05': '.5rem', + '05x': '.75rem', + '1': '1rem', + '1x': '1.5rem', + '2': '2rem', + '2x': '3rem', + '3': '4rem', + '3x': '6rem', + '4': '8rem', + '4x': '12rem', + '5': '16rem', + '10': '10%', + '20': '20%', + '25': '25%', + '30': '30%', + '33': 'calc(100% / 3)', + '40': '40%', + '50': '50%', + '60': '60%', + '66': 'calc(100% / 1.5)', + '70': '70%', + '75': '75%', + '80': '80%', + '90': '90%', + '100': '100%', +}; +const marginScale = { + ...spacingScale, + auto: 'auto', +}; + +const fontScale = { + '-2': '0.75rem', + '-1': '0.875rem', + '0': '0px', + '1': '1rem', // 16px + '2': '1.125rem', // 18px + '3': '1.25rem', // 20px + '4': '1.5rem', // 24px + '5': '1.875rem', // 30px + '6': '2.25rem', // 36px + '7': '3rem', // 48px + '8': '3.5rem', // 56px +}; + +const fontWeights = { + hairline: 100, + thin: 200, + light: 300, + normal: 400, + medium: 500, + semibold: 600, + bold: 700, + extrabold: 800, + black: 900, +}; + +const borderRadius = { + '0': '0', + '1': '.125rem', + '2': '.25rem', + '3': '.5rem', + auto: '6px', + '100': '9999px', +}; + +const zIndex = { + auto: 'auto', + '-2': -20, + '-1': -10, + '0': 0, + '1': 10, + '2': 20, + '3': 30, + '4': 40, + '5': 50, +}; + +const opacity = { + '0': '0', + '15': '.15', + '25': '.25', + '50': '.5', + '75': '.75', + '100': '1', +}; + +// Use font-weight without prefixes (.bold, .thin, etc) +const customFontWeight = _.reduce(fontWeights, (result, value, key) => + _.assign(result, { + [`${key}`]: { fontWeight: value }, + }) +); +const customUtilities = { + 'text-outline': { + 'text-shadow': + '-1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000', + }, + 'bg-blur': { + filter: 'blur(10px)', + }, +}; +const customFlexbox = { + flrnw: { + flexDirection: 'row', + }, + flrw: { + flexDirection: 'row', + flexWrap: 'wrap', + }, + flcnw: { + flexDirection: 'column', + }, + flcw: { + flexDirection: 'column', + flexWrap: 'wrap', + }, + fln: { + flex: 'none', + }, + fla: { + flex: '1 1 auto', + minWidth: 0, + minHeight: 0, + }, + flccv: { + justifyContent: 'center', + }, + flcch: { + alignItems: 'center', + }, + flrcv: { + alignItems: 'center', + }, + flrch: { + justifyContent: 'center', + }, + flc: { + alignItems: 'center', + justifyContent: 'center', + }, + flral: { + justifyContent: 'flex-start', + }, + flrar: { + justifyContent: 'flex-end', + }, + flcat: { + justifyContent: 'flex-start', + }, + flcab: { + justifyContent: 'flex-end', + }, + flspa: { + justifyContent: 'space-around', + }, + flspb: { + justifyContent: 'space-between', + }, +}; +// Use the spacing scale for top/right/bottom/let positioning +const customPositions = _.reduce( + spacingScale, + (result, value, key) => + _.assign(result, { + [`top-${key}`]: { top: value }, + [`right-${key}`]: { top: value }, + [`bottom-${key}`]: { top: value }, + [`left-${key}`]: { top: value }, + }), + {} +); +// Add calculated height and width with cropped parts, like .h-100vh-3 +const customCroppedVhVw = _.reduce( + dimensionScale, + (result, value, key) => { + // Only do it for simple scale and half/scales + const isSimpleScale = key.length === 1; + const isHalfScale = key.length === 2 && key[1] === 'x'; + if (!(isSimpleScale || isHalfScale)) { + return result; + } + return _.assign(result, { + [`h-100vh-${key}`]: { height: `calc(100vh - ${value})` }, + [`w-100vw-${key}`]: { width: `calc(100vw - ${value})` }, + }); + }, + {} +); + +function addCustomClasses(customClasses) { + return ({ addUtilities }) => { + const prefixedClasses = _.mapKeys(customClasses, (value, key) => `.${key}`); + addUtilities(prefixedClasses); + }; +} + +const plugins = [ + addCustomClasses(customFontWeight), + addCustomClasses(customFlexbox), + addCustomClasses(customUtilities), + addCustomClasses(customPositions), + addCustomClasses(customCroppedVhVw), +]; + +module.exports = { + textSizes: fontScale, + fontWeights, + width: widthScale, + minWidth: widthScale, + maxWidth: widthScale, + + height: heightScale, + minHeight: heightScale, + maxHeight: heightScale, + + padding: spacingScale, + + margin: marginScale, + negativeMargin: marginScale, + + colors, + zIndex, + opacity, + borderRadius, + + plugins, + screens: { + sm: '576px', + md: '768px', + lg: '992px', + xl: '1200px', + print: { raw: 'print' }, + }, + textColors: colors, + backgroundColors: colors, + borderWidths: { + default: '1px', + '0': '0', + '1': '2px', + '2': '4px', + '3': '8px', + }, + borderColors: global.Object.assign({ default: colors['grey-light'] }, colors), + fonts: { + sans: [ + 'system-ui', + 'BlinkMacSystemFont', + '-apple-system', + 'Segoe UI', + 'Roboto', + 'Oxygen', + 'Ubuntu', + 'Cantarell', + 'Fira Sans', + 'Droid Sans', + 'Helvetica Neue', + 'sans-serif', + ], + serif: [ + 'Constantia', + 'Lucida Bright', + 'Lucidabright', + 'Lucida Serif', + 'Lucida', + 'DejaVu Serif', + 'Bitstream Vera Serif', + 'Liberation Serif', + 'Georgia', + 'serif', + ], + mono: [ + 'Menlo', + 'Monaco', + 'Consolas', + 'Liberation Mono', + 'Courier New', + 'monospace', + ], + }, + // Line-height + leading: { + '0': '0', + '01': 1, + '1': 1.25, + '2': 1.5, + '3': 2, + }, + // Letter-spacing + tracking: { + tight: '-0.05em', + normal: '0', + wide: '0.05em', + poppins: '1.5px', + }, + shadows: { + button: + '0 7px 14px -3px rgba(45, 35, 66, 0.3), 0 2px 4px 0 rgba(45, 35, 66, 0.4), inset 0 -2px 0 0 #cfd1e3', + 'button-up': + '0 11px 16px -3px rgba(45, 35, 66, 0.3), 0 4px 5px 0 rgba(45, 35, 66, 0.4), inset 0 -2px 0 0 #cfd1e3', + 'button-down': + 'inset 0 2px 0 1px rgba(132, 138, 184, 0.11), inset 0 2px 9px 0 rgba(93, 100, 148, 0.5), inset 0 -1px 0 1px #fff', + + 'button-primary': + '0 7px 14px -3px rgba(45, 35, 66, 0.3), 0 2px 4px 0 rgba(45, 35, 66, 0.4), inset 0 -2px 0 0 #4b58ba;', + 'button-primary-up': + '0 11px 16px -3px rgba(45, 35, 66, 0.3), 0 4px 5px 0 rgba(45, 35, 66, 0.4), inset 0 -2px 0 0 #4b58ba;', + 'button-primary-down': + 'inset 0 2px 0 1px rgba(132, 138, 184, 0.11), inset 0 2px 9px 0 rgba(93, 100, 148, 0.5), inset 0 -1px 0 1px #5468ff;', + + '1': + '0 5px 15px 0 rgba(37, 44, 97, 0.15), 0 2px 4px 0 rgba(93, 100, 148, 0.2)', + none: 'none', + }, + svgFill: { + current: 'currentColor', + }, + svgStroke: { + current: 'currentColor', + }, + + modules: { + appearance: ['responsive'], + backgroundAttachment: ['responsive'], + backgroundColors: ['responsive', 'hover', 'focus'], + backgroundPosition: ['responsive'], + backgroundRepeat: ['responsive'], + backgroundSize: ['responsive'], + borderColors: ['responsive', 'hover'], + borderRadius: ['responsive'], + borderStyle: ['responsive'], + borderWidths: ['responsive'], + cursor: ['responsive'], + display: ['responsive'], + flexbox: ['responsive'], + float: ['responsive'], + fonts: ['responsive'], + fontWeights: ['responsive', 'hover'], + height: ['responsive'], + leading: ['responsive'], + lists: ['responsive'], + margin: ['responsive'], + maxHeight: ['responsive'], + maxWidth: ['responsive'], + minHeight: ['responsive'], + minWidth: ['responsive'], + negativeMargin: ['responsive'], + opacity: ['responsive'], + overflow: ['responsive'], + padding: ['responsive'], + pointerEvents: ['responsive'], + position: ['responsive'], + resize: ['responsive'], + shadows: ['responsive', 'hover'], + svgFill: [], + svgStroke: [], + textAlign: ['responsive'], + textColors: ['responsive', 'hover'], + textSizes: ['responsive'], + textStyle: ['responsive', 'hover'], + tracking: ['responsive'], + userSelect: ['responsive'], + verticalAlign: ['responsive'], + visibility: ['responsive'], + whitespace: ['responsive'], + width: ['responsive'], + zIndex: ['responsive'], + }, + + /* + |----------------------------------------------------------------------------- + | Advanced Options https://tailwindcss.com/docs/configuration#options + |----------------------------------------------------------------------------- + | + | Here is where you can tweak advanced configuration options. We recommend + | leaving these options alone unless you absolutely need to change them. + | + */ + + options: { + prefix: '', + important: false, + separator: '_', + }, +}; diff --git a/docs/update-aerial.sh b/docs/update-aerial.sh deleted file mode 100755 index 7ccab058..00000000 --- a/docs/update-aerial.sh +++ /dev/null @@ -1,4 +0,0 @@ -rm -rf source/assets/stylesheets/algolia-frontend-components/ -rm -rf source/assets/stylesheets/algolia-aerial/ -cp -R node_modules/algolia-frontend-components . -cp -R node_modules/algolia-aerial . \ No newline at end of file diff --git a/package.json b/package.json index cb71d681..beab9d63 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,9 @@ "lint:fix": "npm run lint -- --fix", "test": "./scripts/test", "test:watch": "jest --watch", - "docs:build": "NODE_ENV=production babel-node ./scripts/docs/build.js" + "docs:build": "cd ./docs && yarn build", + "docs:serve": "cd ./docs && yarn serve", + "docs:lint": "cd ./docs && yarn lint" }, "files": [ "dist/" diff --git a/scripts/build-docs b/scripts/build-docs deleted file mode 100755 index ba361006..00000000 --- a/scripts/build-docs +++ /dev/null @@ -1,38 +0,0 @@ -#! /bin/bash - -set -o nounset -set -o errexit - -readonly SOURCE=README.md -readonly OUTPUT=docs/documentation.md - -readonly START_DOC_TAG="" -readonly END_DOC_TAG="" - -readonly START_LINKS_TAG="" -readonly END_LINKS_TAG="" - -function escape_regex { - echo "$1" | sed -e 's/[]\/\!$*.^|[]/\\&/g' -} - -function extract { - sed -n "/^\s*$(escape_regex "$1")\s*$/,/^\s*$(escape_regex "$2")\s*$/p" \ - | sed '$d' \ - | sed -n '2,$p' -} - -function main { - rm -rf $OUTPUT && touch $OUTPUT - - echo "---" >> $OUTPUT - echo "layout: page" >> $OUTPUT - echo "title: Documentation" >> $OUTPUT - echo "permalink: /documentation/" >> $OUTPUT - echo "---" >> $OUTPUT - - cat $SOURCE | extract "$START_DOC_TAG" "$END_DOC_TAG" >> $OUTPUT - cat $SOURCE | extract "$START_LINKS_TAG" "$END_LINKS_TAG" >> $OUTPUT -} - -main diff --git a/scripts/dev-docs b/scripts/dev-docs deleted file mode 100755 index 374c0a90..00000000 --- a/scripts/dev-docs +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/env bash - -set -ev # exit when error - -cd docs && \ -bundle install && \ -npm install && \ -node communityHeader.js && \ -bundle exec guard -i & \ -npm run dev & \ -wait diff --git a/scripts/docs/screenshots.js b/scripts/docs/screenshots.js deleted file mode 100644 index 4b125b03..00000000 --- a/scripts/docs/screenshots.js +++ /dev/null @@ -1,59 +0,0 @@ -import pify from 'pify'; -import _ from 'lodash'; -import _glob from 'glob'; -import path from 'path'; -import fs from 'fs-extra'; -import liveServer from 'live-server'; -import puppeteer from 'puppeteer'; -import pEach from 'p-each-series'; -const glob = pify(_glob); - -(async function() { - // Geting the list of demo folders that don't have an og_image - const demos = _.compact( - _.map(await glob('./src/demos/[^_]*/index.md'), filepath => { - const dirname = path.dirname(filepath); - const imagePath = `${dirname}/og_image.png`; - if (fs.existsSync(imagePath)) { - return null; - } - return path.basename(dirname); - }) - ); - - if (_.isEmpty(demos)) { - return; - } - - liveServer.start({ - root: './docs', - open: false, - port: 8082, - }); - - const browser = await puppeteer.launch(); - await pEach(demos, async demo => { - const page = await browser.newPage(); - page.setViewport({ width: 1600, height: 900 }); - await page.goto(`http://127.0.0.1:8082/demos/${demo}/`); - - // Wait for the whole InstantSearch to load - let waitForRender = true; - while (waitForRender) { - const renderDiv = await page.evaluate(() => - document.getElementById('firstRender') - ); - waitForRender = !renderDiv; - } - - const srcPath = `./src/demos/${demo}/og_image.png`; - const docsPath = `./docs/demos/${demo}/og_image.png`; - await page.screenshot({ - path: srcPath, - }); - - await fs.copy(srcPath, docsPath); - }); - await browser.close(); - process.exit(0); // eslint-disable-line no-process-exit -})(); diff --git a/scripts/lint b/scripts/lint index 1cd60d67..987bce7f 100755 --- a/scripts/lint +++ b/scripts/lint @@ -1,4 +1,4 @@ #!/usr/bin/env sh set -e -eslint ./scripts/docs ./src/ +eslint ./src ./*.js diff --git a/scripts/test b/scripts/test index b0f673ad..63f3b5d5 100755 --- a/scripts/test +++ b/scripts/test @@ -1,4 +1,4 @@ #!/usr/bin/env sh set -e -jest --no-cache ./src +jest --no-cache ./src/lib/__tests__/utils-test.js